isnt( $result, $indi, "Differs from 1");
isnt( $result, $other_indi, "Differs from 2");
$ux = new Algorithm::Evolutionary::Op::Uniform_Crossover 0.1;
$result = $ux->apply( $indi, $other_indi);
isnt(
$result, $indi, "Differs from 1");
isnt( $result, $other_indi, "Differs from 2");
tring->fromString( $str_2 );
$q->apply( $indi, $indi_2 );
isnt( $indi->{'_str'}, $str, $indi->{'_str'}." differs from ". $str);
isnt( $indi_2->{'_str'}, $str_2, $indi_2->{'_str'}." differs from
tring->fromString( $str_2 );
$q->apply( $indi, $indi_2 );
isnt( $indi->{'_str'}, $str, $indi->{'_str'}." differs from ". $str);
isnt( $indi_2->{'_str'}, $str_2, $indi_2->{'_str'}." differs from
$str_2 = $indi_2->{'_str'};
$q->apply( $indi, $indi_2 );
isnt( $indi->{'_str'}, $str, $indi->{'_str'}." differs from ". $str);
isnt( $indi_2->{'_str'}, $str_2, $indi_2->{'_str'}." differs from
$str_2 = $indi_2->{'_str'};
$q->apply( $indi, $indi_2 );
isnt( $indi->{'_str'}, $str, $indi->{'_str'}." differs from ". $str);
isnt( $indi_2->{'_str'}, $str_2, $indi_2->{'_str'}." differs from
{
isnt( $result->Atom($i), $indi->Atom($i),
$result->Atom($i)." differs from ". $indi->Atom($i));
isnt( $result->Atom($i) > $indi->{'_rangeend'}, 1, 'Within upper bounds');
isnt( $resu
'Algorithm::Evolutionary::Op::Gene_Boundary_Crossover' );
isnt( $gx->apply($indi, $indi2), $indi, "Testing gene boundary crossover" );
isnt( $gx->apply($indi, $indi2), $indi2, "Testing gene boundary
crossover 2" );
$gx = new Algorithm::Evolutionary::Op::Gene_Boundary_Crossover 1, $bits/2;
isnt( $gx->apply($indi, $indi2), $indi, "Testing gene boundary crossover 3" );
tionary::Op::String_Mutation' );
my $result;
for ( 1..100 ) {
$result = $sm->apply( $indi );
isnt( $result->{'_str'}, $indi->{'_str'},
$result->{'_str'}." differs from ". $indi->{'_str'});
}
rithm::Evolutionary::Op::String_Mutation' );
for ( 1..100 ) {
$result = $sm->apply( $indi );
isnt( $result->{'_str'}, $indi->{'_str'},
$result->{'_str'}." differs from ". $indi->{'_str'});
}
Algorithm::Evolutionary::Op::String_Mutation;
for ( 1..100 ) {
$result = $sm->apply( $indi );
isnt( $result->{'_str'}, $indi->{'_str'},
$result->{'_str'}." differs from ". $indi->{'_str'});
}
'_str'};
my $result = $q->apply( $indi, $indi_2 );
isnt( $indi->{'_str'}, $result->{'_str'}, $result->{'_str'}." differs from ". $str);
isnt( $indi_2->{'_str'}, $result->{'_str'}, $result->{'_st
$pop[$i]->{'_str'} eq $pop[$i+1]->{'_str'};
my $result = $q->apply( $pop[$i], $pop[$i+1] );
isnt( $pop[$i]->{'_str'}, $result->{'_str'}, $result->{'_str'}." differs from ". $pop[$i]->{'_str'});
ts;
for ( 0..$population_size ) {
my $random_bitstring = random_bitstring( $number_of_bits );
isnt( $random_bitstring, $last_bitstring, "New random bitstring" );
$last_bitstring = $random_bitstr
0..$population_size ) {
my @random_number_array = random_number_array( $size, $min, $range );
isnt( $random_number_array[0], $last_number_array[0], "New random number array" );
@last_number_arra
:Individual::String->fromString( $s );
for ( 1..100 ) {
$result = $sm->apply( $indi );
isnt( $result->{'_str'}, $indi->{'_str'},
$result->{'_str'}." differs from ". $indi->{'_str'});
ual::String->fromString( join('',@chars) );
for ( 1..100 ) {
$result = $sm->apply( $indi );
isnt( $result->{'_str'}, $indi->{'_str'},
$result->{'_str'}." differs from ". $indi->{'_str'});
}
d
ithm::Evolutionary::Op::Bitflip' );
my $indi2 = $bf->apply($indi);
isnt( $indi2->Chrom(), $indi->Chrom(), "Testing bitflip" );
isnt( $bf->apply($indi2)->Chrom(), $indi2->Chrom(), "Testing bitflip aga
dp->{'_cache'};
isa_ok( $nm, 'Algorithm::Evolutionary::Op::Novelty_Mutation' );
for ( $i = 0; $i < $units; $i++ ) {
isnt( $nm->apply($population[$i]), $population[$i], "Testing individual $i" );
}
::Evolutionary::Op::Combined' );
my $result;
for ( 1..100 ) {
$result = $c->apply( $indi );
isnt( $result->{'_str'}, $indi->{'_str'},
$result->{'_str'}." differs from ". $indi->{'_str'});
}