Uniform Subtree Mutation

The traditional genetic programming crossover and mutation operators have the property that they tend to affect smaller and smaller fractions of a solution tree as the tree grows larger. It is generally thought that this property contributes to the 'code bloat' problem, in which evolving solution trees rapidly become unmanageably large, and researchers have investigated alternate operators designed to avoid this effect. We introduce one such operator, called uniform subtree mutation (USM), and investigate its performance--alone and in combination with traditional crossover--on six standard problems. We measure its behavior usingb oth computational effort and size effort, a variation that takes tree size into account. Our tests show that genetic programming using pure USM reduces evolved tree sizes dramatically, compared to crossover, but does impact solution quality somewhat. In some cases, however, a combination of USM and crossover yielded both smaller trees and superior performance, as measured both by size effort and traditional metrics.

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

[2]  Riccardo Poli,et al.  A Schema Theory Analysis of the Evolution of Size in Genetic Programming with Linear Representations , 2001, EuroGP.

[3]  Riccardo Poli,et al.  Smooth Uniform Crossover with Smooth Point Mutation in Genetic Programming: A Preliminary Study , 1999, EuroGP.

[4]  William B. Langdon,et al.  Size fair and homologous tree genetic programming crossovers , 1999 .

[5]  Annie S. Wu,et al.  A Survey of Intron Research in Genetics , 1996, PPSN.

[6]  John R. Koza,et al.  Genetic programming 2 - automatic discovery of reusable programs , 1994, Complex Adaptive Systems.

[7]  S. Luke,et al.  A Comparison of Crossover and Mutation in Genetic Programming , 1997 .

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

[9]  Anikó Ekárt,et al.  Selection Based on the Pareto Nondomination Criterion for Controlling Code Growth in Genetic Programming , 2001, Genetic Programming and Evolvable Machines.

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

[11]  Kumar Chellapilla,et al.  Evolving computer programs without subtree crossover , 1997, IEEE Trans. Evol. Comput..

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

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

[14]  Riccardo Poli,et al.  Some Steps Towards a Form of Parallel Distributed Genetic Programming , 1996 .

[15]  Anikó Ekárt CONTROLLING CODE GROWTH IN GENETIC PROGRAMMING BY MUTATION , 1999 .

[16]  Mark J. Willis,et al.  Using a tree structured genetic algorithm to perform symbolic regression , 1995 .

[17]  William B. Langdon,et al.  Genetic Programming Bloat without Semantics , 2000, PPSN.

[18]  F. Ayala,et al.  The enigma of intron origins , 1999, Cellular and Molecular Life Sciences CMLS.