AI Programmer: Autonomously Creating Software Programs Using Genetic Algorithms
Kory Becker, Justin Gottschlich

TL;DR
AI Programmer is a novel system that autonomously generates complete software programs using genetic algorithms and a constrained programming language, requiring minimal human input and demonstrating effective performance on standard CPUs.
Contribution
It introduces a unique system design combining genetic algorithms with a specialized programming language and interpreter for autonomous software generation.
Findings
Successfully generates functional software with minimal human guidance
Demonstrates efficient performance on mainstream CPUs
Employs innovative genome construction and elimination techniques
Abstract
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…
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.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsEvolutionary Algorithms and Applications · Metaheuristic Optimization Algorithms Research · Machine Learning and Data Classification
MethodsGenetic Algorithms
