Gene expression programming
From Wikipedia, the free encyclopedia
Gene Expression Programming (GEP) is an evolutionary algorithm that evolves populations of computer programs in order to solve a user defined problem. GEP has similarities, but is distinct to, the evolutionary computational method of Genetic Programming. In Genetic Programming the individuals comprising a population are typically symbolic expression trees. However, the individuals comprising a population of GEP are encoded as linear chromosomes which are expressed or translated into expression trees. Thus, in GEP, the genotype (the linear chromosomes) and the phenotype (the expression trees) are different entities (both structurally and functionally) that work together to form a trial solution to the user defined problem.
As an analogue to nature, the linear chromosomes consist of the "genetic material" that is passed on with modification to the next generation (iteration of the algorithm). Therefore, in GEP, all the genetic modifications take place in the chromosomes, and only the chromosomes are transmitted in the process of reproduction. After reproduction, the new chromosomes are expressed forming the body or expression trees (ETs).
The ETs are themselves computer programs evolved to solve a particular problem and are selected according to their capabilities in solving the problem at hand. After repeated iteration, populations of such computer programs can discover new traits and become better adapted to a particular selection environment (for instance, a set of experimental results). The desired endpoint of the algorithm is that a good solution has been evolved by the evolutionary process.
Due to the genotype/phenotype representation and to the multigenic organization of GEP chromosomes, it has been claimed by Cândida Ferreira that GEP surpasses the traditional Genetic Programming approach for a number of benchmark problems by a factor of 100 to 10,000.
For further details of GEP see GEP paper (published in Complex Systems, written by Cândida Ferreira where the algorithm is described and applied to a set of problems including symbolic regression, Boolean concept learning, and cellular automata.
[edit] Further reading
- Ferreira, Cândida. Gene Expression programming: mathematical modeling by an artificial intelligence. Springer-Verlag: 2006. ISBN 3-540-32796-7.
- Ferreira, C. Gene Expression Programming: Mathematical Modeling by an Artificial Intelligence. Angra do Heroismo, Portugal: 2002. ISBN 9729589054. Online version