The Perl and Raku Conference 2025: Greenville, South Carolina - June 27-29 Learn more

NAME

Algorithm::Evolutionary::Op::Bitflip - BitFlip mutation

SYNOPSIS

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

Base Class

Algorithm::Evolutionary::Op::Base

DESCRIPTION

Mutation operator for a GA; changes a single bit in the bitstring; does not need a rate

METHODS

new

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.

create

Creates a new 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 BitString.

Copyright

This file is released under the GPL. See the LICENSE file included in this distribution,
CVS Info: $Date: 2008/02/12 17:49:38 $
$Header: /cvsroot/opeal/Algorithm-Evolutionary/lib/Algorithm/Evolutionary/Op/Bitflip.pm,v 1.1.1.1 2008/02/12 17:49:38 jmerelo Exp $
$Author: jmerelo $
$Revision: 1.1.1.1 $
$Name $