GENESYS: A novel evolutionary program synthesis tool with continuous optimization - Mandal, Shantanu; Anderson, Todd A; Turek, Javier; Gottschlich, Justin; Muzahid, Abdullah (ACM transactions on probabilistic machine learning, 2025)
Automatic software generation based on some specification is known as program synthesis. Most existing approaches formulate program synthesis as a search problem with discrete parameters. In this paper, we present a novel formulation of program synthesis as a continuous optimization problem using an evolutionary approach, known as Covariance Matrix Adaptation Evolution Strategy. We then propose several mapping schemes to convert the continuous formulation into actual programs and propose different restart policies for the evolutionary approach. This is the first work that demonstrates the feasibility of continuous approach in synthesizing complex programs, not just simple toy programs. We compare our system, Genesys , to several recent program synthesis techniques (in both discrete and continuous domains). We find that Genesys  synthesizes more programs within a fixed time budget than those existing schemes. For example, for programs of length 10, Genesys  synthesizes 28% more programs than those existing schemes within the same time budget.