# AI Programmer: Autonomously Creating Software Programs Using Genetic Algorithms

arXiv: https://arxiv.org/abs/1709.05703 · HTML: https://mlsanity.com/paper/1709.05703/

## Key facts

- Cited by 3 papers in the map (data through 14 Oct 2026).
- First posted on arXiv 17 Sep 2017.

## Built on by (most cited first, 3 of 3)

- [Synthesizing Programs with Continuous Optimization](https://mlsanity.com/paper/2211.00828/) (2022)
- [Evolutionary Programmer: Autonomously Creating Path Planning Programs based on Evolutionary Algorithms](https://mlsanity.com/paper/2204.02970/) (2022)
- [Learning-Based Automatic Synthesis of Software Code and Configuration](https://mlsanity.com/paper/2305.15642/) (2023)

## Abstract (arXiv)

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.
