Using simulated annealing to synthesize resource-bounded software

作者:Tobiah E. Smith, Dorothy E. Setliff

摘要

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.

论文关键词:software synthesis, simulated annealing, real time systems

论文评审过程:

论文官网地址:https://doi.org/10.1007/BF00872288