NAME

  Mutation - BitFlip mutation, changes several bits, depending on the probability


SYNOPSIS

  my $op = new GPMutation (0.5 ); #Create from scratch


Base Class

OpBase


DESCRIPTION

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

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'', a bitstring, really. Can be applied only to victims with the _str instance variable; but it checks before application that both operands are of type BinaryIndi.

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

asXML

Prints as XML, following the EvoSpec 0.2 XML specification. Should be called from derived classes, not by itself.


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: 2002/02/01 09:39:58 $ 
  $Header: /cvsroot/opeal/opeal/GPMutation.pm,v 1.2 2002/02/01 09:39:58 jmerelo Exp $ 
  $Author: jmerelo $ 
  $Revision: 1.2 $