The evolution of size in variable length representations

In many cases, a program's length increases during artificial evolution. This is known as "bloat", "fluff" or "increasing structural complexity". We show that bloat is not specific to genetic programming and suggest it is inherent in search techniques with discrete variable-length representations using simple static evaluation functions. We investigate the bloating characteristics of three non-population-based and one population-based search technique using a novel mutation operator. An artificial ant following the Santa Fe trail problem is solved by simulated annealing, hill climbing, strict hill climbing and population-based searching using two variants of the the new subtree-based mutation operator. As predicted, bloat is observed when using unbiased mutation and is absent in simulated annealing and in both hill climbers when using the length-neutral mutation; however, bloat occurs with both mutations when using a population. We conclude that there are two causes of bloat: (1) search operators with no length bias tend to sample bigger trees, and (2) competition within populations favours longer programs, as they can usually reproduce more accurately.

[1]  Walter Alden Tackett,et al.  Genetic Programming for Feature Discovery and Image Discrimination , 1993, ICGA.

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

[3]  L. Altenberg The evolution of evolvability in genetic programming , 1994 .

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

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

[6]  L. Alonso,et al.  Random Generation of Trees , 1995, Springer US.

[7]  William B. Langdon Evolving Data Structures with Genetic Programming , 1995, ICGA.

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

[9]  Hitoshi Iba,et al.  Random Tree Generation for Genetic Programming , 1996, PPSN.

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

[11]  P. Nordin,et al.  Explicitly defined introns and destructive crossover in genetic programming , 1996 .

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

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

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

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

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

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