Abstract

This paper describes how simulated annealing can be used to synthesize software implementations. Simulated annealing is a strategy for solving combinatorial optimization problems. The challenge here is to effectively cast the many implementation decisions (e.g., data structures, algorithms, data flow) inherent in implementing software systems as an optimization problem. This paper presents RT-Syn, a software synthesis architecture targeting real-time software. Real-time software is characterized by a set of tasks, each with individual hard timing deadlines. RT-Syn represents implementation decisions in terms of their timing and space costs and then uses simulated annealing to minimize the cost of the implementation until the individual hard timing deadlines are met. Producing a satisficing implementation rather than an absolute optimal implementation results in tractable annealing run times. We present experimental results covering the synthesis of real-time software tasks that meet the desired execution characteristics. These results illustrate the effectiveness of the simulated annealing approach in searching the software implementation space and the belief that simulated annealing approaches have much to offer to automated software engineering.

Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.