SMCGP2: self modifying cartesian genetic programming in two dimensions

Self Modifying Cartesian Genetic Programming is a general purpose, graph-based, developmental form of Cartesian Genetic Programming. Using a combination of computational functions and special functions that can modify the phenotype at runtime, it has been employed to find general solutions to certain Boolean circuits and mathematical problems. In the present work, a new version, of SMCGP is proposed and demonstrated. Compared to the original SMCGP both the representation and the function set have been simplified. However, the new representation is also two-dimensional and it allows evolution and development to have more ways to solve a given problem. Under most situations we show that the new method makes the evolution of solutions to even parity and binary addition faster than with previous version of SMCGP.

[1]  Nguyen Xuan Hoai,et al.  Developmental Evaluation in Genetic Programming: A Position Paper , 2007, 2007 Frontiers in the Convergence of Bioscience and Information Technologies.

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

[3]  Julian Francis Miller,et al.  Evolution and Acquisition of Modules in Cartesian Genetic Programming , 2004, EuroGP.

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

[5]  Riccardo Poli,et al.  Solving High-Order Boolean Parity Problems with Smooth Uniform Crossover, Sub-Machine Code GP and Demes , 2000, Genetic Programming and Evolvable Machines.

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

[7]  J. Miller An empirical study of the efficiency of learning boolean functions using a Cartesian Genetic Programming approach , 1999 .

[8]  Peter J. Bentley,et al.  Development brings scalability to hardware evolution , 2005, 2005 NASA/DoD Conference on Evolvable Hardware (EH'05).

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

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

[11]  Julian Francis Miller,et al.  SMCGP2: finding algorithms that approximate numerical constants using quaternions and complex numbers , 2011, GECCO '11.

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

[13]  Julian Francis Miller,et al.  Developments in Cartesian Genetic Programming: self-modifying CGP , 2010, Genetic Programming and Evolvable Machines.

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

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