A Genetic Programming Tutorial

Genetic programming is a technique to automatically discover computer programs using principles of Darwinian evolution. This chapter introduces the basics of genetic programming. To make the material more suitable for beginners, these are illustrated with an extensive example. In addition, the chapter touches upon some of the more advanced variants of genetic programming as well as its theoretical foundations. Numerous pointers to further reading, software tools and Web sites are also provided.

[1]  Jim Thomas,et al.  Proceedings of the First Annual Conference on Restoration of Coastal Vegetation in Florida : May 4, 1974, Hillsborough Community College, Tampa, Florida , 1974 .

[2]  A. M. Turing,et al.  Computing Machinery and Intelligence , 1950, The Philosophy of Artificial Intelligence.

[3]  Arthur L. Samuel,et al.  AI, Where It Has Been and Where It Is Going , 1983, IJCAI.

[4]  David E. Goldberg,et al.  Genetic Algorithms in Search Optimization and Machine Learning , 1988 .

[5]  John R. Koza,et al.  Hierarchical Genetic Algorithms Operating on Populations of Computer Programs , 1989, IJCAI.

[6]  John R. Koza,et al.  Genetic programming: a paradigm for genetically breeding populations of computer programs to solve problems , 1990 .

[7]  John R. Koza,et al.  Genetic Programming: The Movie , 1992 .

[8]  John H. Holland,et al.  Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence , 1992 .

[9]  John R. Koza,et al.  Genetic programming - on the programming of computers by means of natural selection , 1993, Complex adaptive systems.

[10]  Ben H. Jansen,et al.  Nonlinear Dynamical Analysis of the EEG: Proceedings of the Second Annual Conference , 1993 .

[11]  Una-May O'Reilly,et al.  Genetic Programming II: Automatic Discovery of Reusable Programs. , 1994, Artificial Life.

[12]  Darrell Whitley,et al.  A genetic algorithm tutorial , 1994, Statistics and Computing.

[13]  John R. Koza,et al.  Genetic programming II (videotape): the next generation , 1994 .

[14]  John R. Koza,et al.  Architecture-Altering Operations for Evolving the Architecture of a Multi-Part Program in Genetic Programming , 1994 .

[15]  J. K. Kinnear,et al.  Advances in Genetic Programming , 1994 .

[16]  John R. Koza,et al.  Gene Duplication to Enable Genetic Programming to Concurrently Evolve Both the Architecture and Work-Performing Steps of a Computer Program , 1995, IJCAI.

[17]  T. M. English Proceedings of the third annual conference on evolutionary programming: A.V. Sebald and L.J. Fogel, River Edge, NJ: World Scientific, ISBN 981-02-1810-9, 371 pages, hardbound, $78 , 1995 .

[18]  Vladan Babovic,et al.  Emergence, evolution, intelligence: hydroinformatics , 1996 .

[19]  Wolfgang Banzhaf,et al.  Genetic Programming: An Introduction , 1997 .

[20]  Peter Nordin,et al.  Evolutionary program induction of binary machine code and its applications , 1997 .

[21]  Tobias Blickle,et al.  Theory of evolutionary algorithms and application to system synthesis , 1997 .

[22]  Christopher R. Stephens,et al.  Effective Degrees of Freedom in Genetic Algorithms and the Block Hypothesis , 1997, ICGA.

[23]  Christian Jacob,et al.  Principia Evolvica - simulierte Evolution mit Mathematica , 1997 .

[24]  Vidroha Debroy,et al.  Genetic Programming , 1998, Lecture Notes in Computer Science.

[25]  Riccardo Poli,et al.  Schema Theory for Genetic Programming with One-Point Crossover and Point Mutation , 1997, Evolutionary Computation.

[26]  Astro Teller,et al.  Evolving Team Darwin United , 1998, RoboCup.

[27]  Lee Spector,et al.  Genetic programming for quantum computers , 1998 .

[28]  Sean Luke,et al.  Genetic Programming Produced Competitive Soccer Softbot Teams for RoboCup97 , 1998 .

[29]  Wolfgang Banzhaf Genetic Programming, First European Workshop, EuroGP'98, Paris, France, April 14-15, 1998, Proceedings , 1998, EuroGP.

[30]  William B. Langdon,et al.  Genetic Programming and Data Structures: Genetic Programming + Data Structures = Automatic Programming! , 1998 .

[31]  John R. Koza Genetic Programming III - Darwinian Invention and Problem Solving , 1999, Evolutionary Computation.

[32]  Riccardo Poli Genetic programming : Second European Workshop, EuroGP '99, Göteborg, Sweden, May 26-27, 1999 : proceedings , 1999 .

[33]  浅田 稔,et al.  RoboCup-98 : Robot Soccer World Cup II , 1999 .

[34]  Christopher R. Stephens,et al.  Schemata Evolution and Building Blocks , 1999, Evolutionary Computation.

[35]  Lee Spector,et al.  Quantum computing applications of genetic programming , 1999 .

[36]  Riccardo Poli Genetic programming : European Conference, EuroGP 2000, Edinburgh, Scotland, UK, April 15-16, 2000 : proceedings , 2000 .

[37]  L. Darrell Whitley,et al.  GECCO-2000 : proceedings of the Genetic and Evolutionary Computation Conference : a joint meeting of the ninth International Conference on Genetic Algorithms (ICGA-2000) and the fifth Annual Genetic Programming Conference (GP-2000), July 10-12, 2000, Las Vegas, Nevada , 2000 .

[38]  Kwong-Sak Leung,et al.  Data Mining Using Grammar Based Genetic Programming and Applications , 2000 .

[39]  Conor Ryan,et al.  Automatic Re-engineering of Software Using Genetic Programming , 1999, Genetic Programming Series.

[40]  L. Spector,et al.  Quantum circuits for OR and AND of ORs , 2000 .

[41]  Nikolay I. Nikolaev,et al.  Genetic Programming and Data Structures: Genetic Programming+Data Structures=Automatic Programming , 2001, Softw. Focus.

[42]  Christian Jacob,et al.  Illustrating Evolutionary Computation with Mathematica , 2001 .

[43]  Riccardo Poli,et al.  Exact Schema Theorems for GP with One-Point and Standard Crossover Operating on Linear Structures and Their Application to the Study of the Evolution of Size , 2001, EuroGP.

[44]  Riccardo Poli,et al.  Foundations of Genetic Programming , 1999, Springer Berlin Heidelberg.

[45]  Riccardo Poli,et al.  General Schema Theory for Genetic Programming with Subtree-Swapping Crossover: Part I , 2003, Evolutionary Computation.

[46]  John R. Koza,et al.  Genetic Programming IV: Routine Human-Competitive Machine Intelligence , 2003 .

[47]  Riccardo Poli,et al.  General Schema Theory for Genetic Programming with Subtree-Swapping Crossover: Part II , 2003, Evolutionary Computation.