AI Programmer: Autonomously Creating Software Programs Using Genetic Algorithms
arXiv:1709.05703
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 mainstream CPUs.
Cited by in corpus (7)
- Neural Program Synthesis with Priority Queue Training
- Artificial Intelligence for Interstellar Travel
- A Zero-Positive Learning Approach for Diagnosing Software Performance Regressions
- MISIM: A Neural Code Semantics Similarity System Using the Context-Aware Semantics Structure
- The Three Pillars of Machine Programming
- Learning Fitness Functions for Machine Programming
- Why We Do Not Evolve Software? Analysis of Evolutionary Algorithms