The evolution of size and shape

The phenomenon of growth in program size in genetic programming populations has been widely reported. In a variety of experiments and static analysis we test the standard protective code explanation and find it to be incomplete. We suggest bloat is primarily due to distribution of fitness in the space of possible programs and because of this, in the absence of bias, it is in general inherent in any search technique using a variable length representation. We investigate the fitness landscape produced by program tree-based genetic operators when acting upon points in the search space. We show bloat in common operators is primarily due to the exponential shape of the underlying search space. Nevertheless we demonstrate new operators with considerably reduced bloating characteristics. We also describe mechanisms whereby bloat arises and relate these back to the shape of the search space. Finally we show our simple random walk entropy increasing model is able to predict the shape of evolved programs.

[1]  P. Ross,et al.  An adverse interaction between crossover and restricted tree depth in genetic programming , 1996 .

[2]  Byoung-Tak Zhang,et al.  Balancing Accuracy and Parsimony in Genetic Programming , 1995, Evolutionary Computation.

[3]  WB Langdon Evolving Data Structures Using Genetic Programming , 1995 .

[4]  ProgrammingJustinian P. RoscaComputer Analysis of Complexity Drift in Genetic , 1997 .

[5]  Kenneth A. De Jong,et al.  Are Genetic Algorithms Function Optimizers? , 1992, PPSN.

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

[7]  Hitoshi Iba,et al.  Genetic programming using a minimum description length principle , 1994 .

[8]  George R. Price,et al.  Selection and Covariance , 1970, Nature.

[9]  Riccardo Poli,et al.  Boolean Functions Fitness Spaces , 1999, EuroGP.

[10]  Philippe Flajolet,et al.  The Average Height of Binary Trees and Other Simple Trees , 1982, J. Comput. Syst. Sci..

[11]  Peter J. Angeline,et al.  Explicitly Defined Introns and Destructive Crossover in Genetic Programming , 1996 .

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

[13]  Nicholas Freitag McPhee,et al.  Accurate Replication in Genetic Programming , 1995, ICGA.

[14]  F. Oppacher,et al.  Hybridized crossover-based search techniques for program discovery , 1995, Proceedings of 1995 IEEE International Conference on Evolutionary Computation.

[15]  Lothar Thiele,et al.  Genetic Programming and Redundancy , 1994 .

[16]  F. Sanger,et al.  Sequence and organization of the human mitochondrial genome , 1981, Nature.

[17]  Peter Nordin,et al.  Introns in Nature and in Simulated Structure Evolution , 1997, BCEC.

[18]  W. Langdon The evolution of size in variable length representations , 1998, 1998 IEEE International Conference on Evolutionary Computation Proceedings. IEEE World Congress on Computational Intelligence (Cat. No.98TH8360).

[19]  Terence Soule,et al.  Removal bias: a new cause of code growth in tree based evolutionary programming , 1998, 1998 IEEE International Conference on Evolutionary Computation Proceedings. IEEE World Congress on Computational Intelligence (Cat. No.98TH8360).

[20]  Tobias Blickle,et al.  Evolving Compact Solutions in Genetic Programming: A Case Study , 1996, PPSN.

[21]  Peter J. Angeline,et al.  Genetic programming and emergent intelligence , 1994 .

[22]  D. Mindell Fundamentals of molecular evolution , 1991 .

[23]  P. Murphy,et al.  Sequence and organization of the human N-formyl peptide receptor-encoding gene. , 1993, Gene.

[24]  William B. Langdon,et al.  Fitness Causes Bloat: Simulated Annealing, Hill Climbing and Populations , 1997 .

[25]  Riccardo Poli,et al.  Fitness Causes Bloat: Mutation , 1997, EuroGP.

[26]  W. Langdon An Analysis of the MAX Problem in Genetic Programming , 1997 .

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

[28]  Terence Soule,et al.  Code growth in genetic programming , 1996 .

[29]  Riccardo Poli,et al.  On the Search Properties of Different Crossover Operators in Genetic Programming , 2001 .

[30]  J. Mattick,et al.  Introns: evolution and function. , 1994, Current opinion in genetics & development.

[31]  Riccardo Poli,et al.  Why Ants are Hard , 1998 .

[32]  Riccardo Poli,et al.  Fitness Causes Bloat , 1998 .

[33]  Peter Nordin,et al.  Complexity Compression and Evolution , 1995, ICGA.

[34]  T. Soule,et al.  Code Size and Depth Flows in Genetic Programming , 1997 .

[35]  Riccardo Poli,et al.  Why “Building Blocks” Don’t Work on Parity Problems , 1998 .

[36]  Riccardo Poli,et al.  Genetic Programming Bloat with Dynamic Fitness , 1998, EuroGP.