Content deleted Content added
m crossover -> crossover (genetic algorithm) |
No edit summary |
||
Line 1:
'''Genetic programming''' ('''GP''') is a subfield of [[evolutionary computation]]
Genetic programming uses methods which are similar to [[genetic algorithm]]s (GA), but is based on programs which perform tasks whose results can then be evaluated to deliver a fitness function similar to GAs. Instead of using pools of parameter lists to be evaluated by some evaluation procedure, GP uses pools of programs which are to be run to perform the required task. A technical difference between GAs and GPs is that GAs use list structures, often of fixed size, to store their data, while GPs use tree structures which can vary in size and shape for each program used in the program pools.
The application of a tree representation (and required genetic operators) for using genetic algorithms to generate programs was first described in 1985 by Cramer. Koza, though he did
So far GPs have successfully solved
Unfortunately, due to the lack of solid theory regarding the performance of genetic programming vs. traditional search methods (such as [[hill climbing]]), genetic programming remains a sort of pariah amongst the various techniques of search. While genetic programming has achieved results that are as good as and sometimes better than human-generated results, more work needs to be done on the theory in order to bring the technique into more widespread use.
|