AI Programmer: Autonomously Creating Software Programs Using Genetic Algorithms
This addresses the challenge of autonomous software creation for developers and researchers, though it appears incremental as it builds on existing genetic algorithm methods with specific enhancements.
The paper tackles the problem of automatically generating full software programs with minimal human guidance by introducing AI Programmer, a system that uses genetic algorithms and a constrained programming language, achieving functional program generation as demonstrated in experiments.
In this paper, we present the first-of-its-kind machine learning (ML) system, called AI Programmer, that can automatically generate full software programs requiring only minimal human guidance. At its core, AI Programmer uses genetic algorithms (GA) coupled with a tightly constrained programming language that minimizes the overhead of its ML search space. Part of AI Programmer's novelty stems from (i) its unique system design, including an embedded, hand-crafted interpreter for efficiency and security and (ii) its augmentation of GAs to include instruction-gene randomization bindings and programming language-specific genome construction and elimination techniques. We provide a detailed examination of AI Programmer's system design, several examples detailing how the system works, and experimental data demonstrating its software generation capabilities and performance using only mainstream CPUs.