AIPLNov 2, 2022

Synthesizing Programs with Continuous Optimization

arXiv:2211.00828v23 citationsh-index: 19
Originality Incremental advance
AI Analysis

This addresses the problem of efficient automatic software generation for developers, though it is incremental as it builds on existing optimization methods.

The paper tackles program synthesis by reformulating it as a continuous optimization problem and uses an evolutionary strategy to solve it, resulting in GENESYS synthesizing 28% more programs of length 10 within a fixed time budget compared to existing schemes.

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 and use a state-of-the-art evolutionary approach, known as Covariance Matrix Adaptation Evolution Strategy to solve the problem. We then propose a mapping scheme to convert the continuous formulation into actual programs. We compare our system, called GENESYS, with several recent program synthesis techniques (in both discrete and continuous domains) and show 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.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes