Information Technology Reference
In-Depth Information
/
a
sqrt
a
/
sqrt
a
b
b
b
/
sqrt
b
b
b
b
b
/
a
sqrt
a
sqrt
sqrt
b
/
b
b
b
a
/
b
b
b
b
Figure 1.9. Tree crossover in genetic programming. The arrows indicate the
crossover points.
grafting of trees and, like these, has a very limited power. This kind of tree
crossover was also devised because its implementation in LISP is trivial
and the parse trees it creates are always legal LISP programs.
The mutation operator in GP also differs from biological point mutation in
order to guarantee the creation of syntactically correct LISP programs. The
mutation operator selects a node in the parse tree and replaces the branch
underneath by a new randomly generated branch (Figure 1.10). Notice that
the overall shape of the tree is not greatly changed by this kind of mutation,
especially if lower nodes are preferentially chosen as mutation targets.
Permutation is the third operator used in GP and the most conservative of
the three. During permutation, the arguments of a randomly chosen function
 
Search WWH ::




Custom Search