DeepAI AI Chat
Log In Sign Up

Functional Code Building Genetic Programming

by   Edward Pantridge, et al.
Amherst College
Hamilton College

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 functional variant of CBGP compared to other contemporary GP program synthesis methods.


page 1

page 2

page 3

page 4


Code Building Genetic Programming

In recent years the field of genetic programming has made significant ad...

Using Traceless Genetic Programming for Solving Multiobjective Optimization Problems

Traceless Genetic Programming (TGP) is a Genetic Programming (GP) varian...

HOTGP – Higher-Order Typed Genetic Programming

Program synthesis is the process of generating a computer program follow...

Genetic Programming with Local Scoring

We present new techniques for synthesizing programs through sequences of...

Constraint-Based Type-Directed Program Synthesis

We explore an approach to type-directed program synthesis rooted in cons...

Data types as a more ergonomic frontend for Grammar-Guided Genetic Programming

Genetic Programming (GP) is an heuristic method that can be applied to m...

Faster Genetic Programming GPquick via multicore and Advanced Vector Extensions

We evolve floating point Sextic polynomial populations of genetic progra...