Genetic programming

bankpottstownΤεχνίτη Νοημοσύνη και Ρομποτική

23 Οκτ 2013 (πριν από 4 χρόνια και 8 μήνες)

120 εμφανίσεις

Genetic programming

Genetic programming

) is an automated methodology inspired by
biological evolution

to find
computer programs

that best perform a user
defined task. It is therefore a particular
machine learning

technique that uses a
evolutionary algorithm

to optimize a population of computer programs according
to a
fitness landscape

determined by a program's ability to perform a given computational task. The first
experiments with GP were reported by
Stephen F. Smith

(1980) a
Nichael L. Cramer

(1985), as
described in the famous book
Genetic Programming: On the Programming of Computers by Means of
Natural Selection

John Koza


Computer programs in GP can be written in a variety of
programming languages
. In the early (and
ional) implementations of GP, program instructions and data values were organized in
, thus favoring the use of languages that naturally embody such a structure
(an important
example pioneered by Koza is
). Other forms of GP have been suggested and successfully
implemented, such as the simpler
linear representation

which suits the more traditional

[see, for example, Banzhaf
et al.

(1998)]. The commercial GP software
, for
example, uses
linear genetic programming

combined with
machine code

language to achieve better
performance. Differently, the

uses an internal representation similar to
linear genetic

to ge
nerate programs that fully exploit the syntax of a given assembly language.

GP is very computationally intensive and so in the 1990s it was mainly used to solve relatively simple
problems. However, more recently, thanks to various improvements in GP techno
logy and to the well
exponential growth in CPU power
, GP has started delivering a number of outstanding results. At
the time of writing, nearly 40

results have been gathered, in areas such as
, electronic design, game playing, sorting, searching and many more. These results include the
replication or infringement of several post
2000 inventions, and the production of two patentable
new inventions.

Developing a theory for
GP has been very difficult and so in the 1990s genetic programming was
considered a sort of pariah amongst the various techniques of search. However, after a series of
breakthroughs in the early 2000s, the theory of GP has had a formidable and rapid develo
pment. So much
so that it has been possible to build exact probabilistic models of GP (schema theories and
Markov chain

models) and to show that GP is more general than, and in fac
t includes,
genetic algorithms

Genetic Programming techniques have now been applied to
evolvable hardware

as well as computer

Genetic Programming

is the technique of evolving a genetic programming system using genetic
programming itself. Critics have argued that it is theoretically impossible, but more research is needed