Algorithm::Evolutionary::Op::Bitflip - Bit-flip mutation
my $xmlStr2=<<EOC; #howMany should be integer <op name='Bitflip' type='unary' rate='0.5' > <param name='howMany' value='2' /> </op> EOC my $ref2 = XMLin($xmlStr2); my $op2 = Algorithm::Evolutionary::Op::Base->fromXML( $ref2 ); print $op2->asXML(), "\n*Arity ", $op->arity(), "\n"; my $op = new Algorithm::Evolutionary::Op::Bitflip 2; #Create from scratch with default rate
Mutation operator for a GA; changes a single bit in the bitstring; does not need a rate
Creates a new mutation operator with a bitflip application rate, which defaults to 0.5, and an operator application rate (general for all ops), which defaults to 1.
Creates a new mutation operator.
Applies mutation operator to a "Chromosome", a bitstring, really. Can be applied only to victims composed of [0,1] atoms, independently of representation; but it checks before application that the operand is of type BitString.
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: 2011/02/13 17:45:53 $ $Header: /media/Backup/Repos/opeal/opeal/Algorithm-Evolutionary/lib/Algorithm/Evolutionary/Op/Bitflip.pm,v 3.3 2011/02/13 17:45:53 jmerelo Exp $ $Author: jmerelo $ $Revision: 3.3 $ $Name $