A Survey of Self Modifying Cartesian Genetic Programming

Self-Modifying Cartesian Genetic Programming (SMCGP) is a general purpose, graph-based, developmental form of Cartesian Genetic Programming. In addition to the usual computational functions found in CGP, SMCGP includes functions that can modify the evolved program at run time. This means that programs can be iterated to produce an infinite sequence of phenotypes from a single evolved genotype. Here, we discuss the results of using SMCGP on a variety of different problems, and see that SMCGP is able to solve tasks that require scalability and plasticity. We demonstrate how SMCGP is able to produce results that would be impossible for conventional, static Genetic Programming techniques.

[1]  Man Leung Wong,et al.  Evolving recursive programs by using adaptive grammar based genetic programming , 2006, Genet. Program. Evolvable Mach..

[2]  Julian Francis Miller,et al.  The Advantages of Landscape Neutrality in Digital Circuit Evolution , 2000, ICES.

[3]  Gul Muhammad Khan,et al.  Coevolution of intelligent agents using cartesian genetic programming , 2007, GECCO '07.

[4]  Hod Lipson Proceedings of the 9th annual conference on Genetic and evolutionary computation , 2007 .

[5]  Lee Spector,et al.  Genetic Programming and Autoconstructive Evolution with the Push Programming Language , 2002, Genetic Programming and Evolvable Machines.

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

[7]  Lee Spector,et al.  Ontogenetic programming , 1996 .

[8]  John R. Koza,et al.  A genetic approach to the truck backer upper problem and the inter-twined spiral problem , 1992, [Proceedings 1992] IJCNN International Joint Conference on Neural Networks.

[9]  Julian Francis Miller,et al.  Evolving Developmental Programs for Adaptation, Morphogenesis, and Self-Repair , 2003, ECAL.

[10]  Julian Francis Miller,et al.  Self-modifying cartesian genetic programming , 2007, GECCO '07.

[11]  Peter J. Angeline,et al.  Evolving Recursive Functions for the Even-Parity Problem Using Genetic Programming , 1996 .

[12]  Julian Francis Miller,et al.  Cartesian genetic programming , 2010, GECCO.

[13]  Risto Miikkulainen,et al.  Evolving Neural Networks through Augmenting Topologies , 2002, Evolutionary Computation.

[14]  Julian Francis Miller,et al.  A Developmental Method for Growing Graphs and Circuits , 2003, ICES.

[15]  Julian Francis Miller,et al.  Self-modifying cartesian genetic programming , 2007, GECCO '07.

[16]  Julian Francis Miller,et al.  Self modifying Cartesian Genetic Programming: Parity , 2009, 2009 IEEE Congress on Evolutionary Computation.

[17]  Julian Francis Miller,et al.  Evolving a Self-Repairing, Self-Regulating, French Flag Organism , 2004, GECCO.

[18]  Julian Francis Miller,et al.  Neutrality and the Evolvability of Boolean Function Landscape , 2001, EuroGP.

[19]  J. Miller,et al.  15 – Evolving the program for a cell: from French flags to Boolean circuits , 2003 .

[20]  Peter J. Bentley,et al.  On growth, form and computers , 2003 .

[21]  Julian Francis Miller,et al.  Self modifying cartesian genetic programming: finding algorithms that calculate pi and e to arbitrary precision , 2010, GECCO '10.

[22]  Lorenz Huelsbergen,et al.  Finding General Solutions to the Parity Problem by Evolving Machine-Language Representations , 2002 .

[23]  Julian Francis Miller,et al.  Evolution, development and learning using self-modifying cartesian genetic programming , 2009, GECCO '09.

[24]  Julian Francis Miller,et al.  Self Modifying Cartesian Genetic Programming: Fibonacci, Squares, Regression and Summing , 2009, EuroGP.

[25]  Julian F. Miller,et al.  The Challenge of Complexity , 2004 .

[26]  Julian Francis Miller,et al.  Redundancy and computational efficiency in Cartesian genetic programming , 2006, IEEE Transactions on Evolutionary Computation.

[27]  Terence Soule,et al.  Genetic Programming: Theory and Practice , 2003 .