NAME
Algorithm::Evolutionary::Op::GaussianMutation - Changes numeric chromosome components following the gaussian distribution
SYNOPSIS
my $xmlStr4=<<EOC; # From XML
<op name='GaussianMutation' type='unary' rate='1'>
<param name='avg' value='0' />
<param name='stddev' value='0.1' />
</op>
EOC
my $ref4 = XMLin($xmlStr4);
my $op4 = Algorithm::Evolutionary::Op::Base->fromXML( $ref4 );
print $op4->asXML(), "\n";
my $op = new Algorithm::Evolutionary::Op::GaussianMutation( 0, 0.05) # With average 0, and 0.05 standard deviation
Base Class
Algorithm::Evolutionary::Op::Base
DESCRIPTION
Mutation operator for a GA: applies gaussian mutation to a number
new( [$average = 0] [, $standard deviation = 1] [, $rate = 1 ]
Creates a new mutation operator with an application rate. Rate defaults to 1.
create
Creates a new mutation operator with an application rate. Rate defaults to 0.1.
Called create to distinguish from the classwide ctor, new. It just makes simpler to create a Mutation Operator
apply( $chromosome )
Applies mutation operator to a "Chromosome", a vector of stuff, really. Can be applied only to victims with the _array
instance variable; but it checks before application that both operands are of type Algorithm::Evolutionary::Individual::Vector.
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/24 08:46:59 $
$Header: /cvsroot/opeal/Algorithm-Evolutionary/lib/Algorithm/Evolutionary/Op/GaussianMutation.pm,v 3.0 2009/07/24 08:46:59 jmerelo Exp $
$Author: jmerelo $
$Revision: 3.0 $
$Name $