GaussianMutation - Changes numeric chromosome components following the gaussian distribution
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 = OpBase->fromXML( $ref4 ); print $op4->asXML(), "\n";
my $op = new GaussianMutation( 0, 0.05) # With average 0, and 0.05 standard deviation
Mutation operator for a GA: applies gaussian mutation to a number
Creates a new mutation operator with an application rate. Rate defaults to 0.1.
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
Sets the instance variables. Takes a ref-to-hash as input
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 VectorIndi.
Prints as XML, following the EvoSpec 0.2 XML specification. Should be called from derived classes, not by itself.
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: 2001/10/25 12:33:11 $ $Header: /cvsroot/opeal/opeal/GaussianMutation.pm,v 1.3 2001/10/25 12:33:11 jmerelo Exp $ $Author: jmerelo $ $Revision: 1.3 $