Human-Driven Genetic Programming for Program Synthesis: A Prototype
Thomas Helmuth, James Gunder Frazier, Yuhan Shi, Ahmed Farghali Abdelrehim · 2023
End users can benefit from automatic program synthesis in a variety of applications, many of which require the user to specify the program they would like to generate. Recent advances in genetic programming allow it to generate general purpose programs similar to those humans write, but require specifications in the form of extensive, labeled training data, a barrier to using it for user-driven synthesis. Here we describe the prototype of a human-driven genetic programming system that can be used to synthesize programs from scratch. In order to address the issue of extensive training data, we draw inspiration from counterexample-driven genetic programming, allowing the user to initially provide only a few training cases and asking the user to verify the correctness of potential solutions on automatically generated potential counterexample cases. We present anecdotal experiments showing that our prototype can solve a variety of easy program synthesis problems entirely based on user input.