Exploring Distributed Peer-to-Peer Co-evolutionary Genetic Programming of Finite State Automata

Document Type


Publication Date



Computer Sciences | Physical Sciences and Mathematics


Chris Lusena, Computer Science


Genetic Programming is a branch of Artificial Intelligence which uses evolutionary theory to automatically write programs. As of 2003, only 8 people have managed to produce human-level quality programs through Genetic Programming, none of which has produced a program which competes directly and favorably with human-made programs in a head-to-head contest. My Genetic Programming project has evolved a simulated ant brain (a finite state automata machine) which competes, and wins, against other ants in the international programming contest called Ant Wars. In this contest artificial ants battle for food and survival in virtual worlds. This paper will center around the main ideas of Genetic Programming and how I was able to harness the power of evolution in order to automatically give rise to complex programs and sophisticated Ant Wars strategies.