TR-H-0126 :1994.2.7

Sung-Bae Cho, Thomas S. Ray

An Evolutionary Approach to Program Transformation and Synthesis

Abstract:Efficiency is a problem in automatic programming—both in the programs produced and in the synthesis process itself. This paper presents a framework for using evolutionary mechanisms to guide program synthesis. A particular implementation of the framework, called Tierra, is described. Given a naive program and some limits on system resources, Tierra generates mutated programs and evolution proceeds by natural selection as the programs compete for CPU time and memory space. By applying the evolutionary mechanisms, Tierra has guided the automatic implementation of an efficient self-replicating program. The system is under continuing development, it is viewed more as a research tool than a prototype programming assistant, however, the performance of the system at present gives some hope for the ultimate feasibility of such systems.