Gene Expression Programming: A New Adaptive Algorithm for Solving Problems
Cândida Ferreira
Electronic mail and web addresses:
candidaf@gene-expressionprogramming.com;
https://www.gene-expression-programming.com.
Present address: Gepsoft, 37 The Ridings, Bristol BS13 8NU, UK.
Departamento de Ciências Agrárias,
Universidade dos Açores,
9701-851 Terra-Chã
Angra do Heroísmo, Portugal
Abstract
Gene expression programming, a genotype/phenotype genetic algorithm (linear and ramified), is presented here for the first time as a new technique for the creation of computer programs. Gene expression programming uses character linear chromosomes composed of genes structurally organized in a head and a tail. The chromosomes function as a genome and are subjected to modification by means of mutation, transposition, root transposition, gene transposition, gene recombination, and one- and two-point recombination. The chromosomes encode expression trees which are the object of selection. The creation of these separate entities (genome and expression tree) with distinct functions allows the algorithm to perform with high efficiency that greatly surpasses existing adaptive techniques. The suite of problems chosen to illustrate the power and versatility of gene expression programming includes symbolic regression, sequence induction with and without constant creation, block stacking, cellular automata rules for the density-classification problem, and two problems of boolean concept learning: the 11-multiplexer and the GP rule problem.