NAME

Algorithm::Evolutionary::Op::TreeMutation - GP-like mutation operator for trees

SYNOPSIS

my $op = new Algorithm::Evolutionary::Op::TreeMutation (0.5 ); #Create from scratch

Base Class

Algorithm::Evolutionary::Op::Base

DESCRIPTION

Mutation operator for a genetic programming, mutates tree nodes with a certain probability

METHODS

new

Creates a new mutation operator with an application rate. Rate defaults to 0.1.

create

Creates a new mutation operator with an application rate. Rate defaults to 0.5.

Called create to distinguish from the classwide ctor, new. It just makes simpler to create a Mutation Operator

apply

Applies mutation operator to a "Chromosome", but it checks before application that both operands are of type Algorithm::Evolutionary::Individual::Tree.

mutate

Callback routine called from apply; decides on mutation application, and applies it. If appliable, substitutes a node by other with the same arity. Builds a lists of nodes before, to speed up operation

Copyright

This file is released under the GPL. See the LICENSE file included in this distribution,
or go to http://www.fsf.org/licenses/gpl.txt

CVS Info: $Date: 2009/07/28 11:30:56 $ 
$Header: /cvsroot/opeal/Algorithm-Evolutionary/lib/Algorithm/Evolutionary/Op/TreeMutation.pm,v 3.1 2009/07/28 11:30:56 jmerelo Exp $ 
$Author: jmerelo $ 
$Revision: 3.1 $