AINESep 17, 2017

AI Programmer: Autonomously Creating Software Programs Using Genetic Algorithms

arXiv:1709.05703v131 citations
Originality Incremental advance
AI Analysis

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.

Code Implementations1 repo
Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes