Recent Developments in Program Synthesis with Evolutionary Algorithms
The automatic generation of computer programs is one of the main applications with practical relevance in the field of evolutionary computation. With program synthesis techniques not only software developers could be supported in their everyday work but even users without any programming knowledge could be empowered to automate repetitive tasks and implement their own new functionality. In recent years, many novel program synthesis approaches based on evolutionary algorithms have been proposed and evaluated on common benchmark problems. Therefore, we identify in this work the relevant evolutionary program synthesis approaches and provide an in-depth analysis of their performance. The most influential approaches we identify are stack-based, grammar-guided, as well as linear genetic programming. Further, we find that these approaches perform well on benchmark problems if there is a simple mapping from the given input to the correct output. On problems where this mapping is complex, e.g., if the problem consists of several sub-problems or requires iteration/recursion for a correct solution, results tend to be worse. Consequently, for future work, we encourage researchers not only to use a program's output for assessing the quality of a solution but also the way towards a solution (e.g., correctly solved sub-problems).
Code (0)
등록된 구현이 없습니다.
Tasks
Evolutionary AlgorithmsProgram SynthesisSimilar Papers 제목 키워드 기반
Scaling Neural Program Synthesis with Distribution-based Search
We consider the problem of automatically constructing computer programs from input-output examples. We investigate how to augment probabilistic and neural program synthesis methods with new search algorithms, proposing a…
Program SynthesisEpigenetic opportunities for Evolutionary Computation
Evolutionary Computation is a group of biologically inspired algorithms used to solve complex optimisation problems. It can be split into Evolutionary Algorithms, which take inspiration from genetic inheritance, and Swar…
Evolutionary AlgorithmsThe Extended Evolutionary Synthesis Facilitates Evolutionary Models of Culture Change
The Extended Evolutionary Synthesis (EES) is beginning to fulfill the whole promise of Darwinian insight through its extension of evolutionary understanding from the biological domain to include cultural information evol…
Cultural Vocal Bursts Intensity PredictionA Review on Bilevel Optimization: From Classical to Evolutionary Approaches and Applications
Bilevel optimization is defined as a mathematical program, where an optimization problem contains another optimization problem as a constraint. These problems have received significant attention from the mathematical pro…
Bilevel OptimizationEvolutionary AlgorithmsQuantum-inspired evolutionary algorithms: a survey and empirical study
Quantum-inspired evolutionary algorithms, one of the three main research areas related to the complex interaction between quantum computing and evolutionary algorithms, are receiving renewed attention. A quantum-inspired…
Evolutionary AlgorithmsSurvey