Functional Code Building Genetic Programming
Edward Pantridge, Thomas Helmuth, Lee Spector

TL;DR
This paper formalizes Code Building Genetic Programming (CBGP) using type theory, demonstrating its ability to evolve type-safe programs in a functional language, and compares its performance with other GP methods.
Contribution
It provides a formal type-theoretic description of CBGP and benchmarks its search performance against other program synthesis techniques.
Findings
CBGP can evolve type-safe programs using a Hindley-Milner type system.
The functional variant of CBGP shows competitive search performance.
Formalization aids in understanding and improving GP-based program synthesis.
Abstract
General program synthesis has become an important application area for genetic programming (GP), and for artificial intelligence more generally. Code Building Genetic Programming (CBGP) is a recently introduced GP method for general program synthesis that leverages reflection and first class specifications to support the evolution of programs that may use arbitrary data types, polymorphism, and functions drawn from existing codebases. However, neither a formal description nor a thorough benchmarking of CBGP have yet been reported. In this work, we formalize the method of CBGP using algorithms from type theory. Specially, we show that a functional programming language and a Hindley-Milner type system can be used to evolve type-safe programs using the process abstractly described in the original CBGP paper. Furthermore, we perform a comprehensive analysis of the search performance of this…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
