![]() |
![]()
| ![]() |
![]()
NAMEAlgorithm::Evolutionary::Op::Easy_MO - Multiobjecttive
evolutionary algorithm, single generation, with
SYNOPSIS#Mutation and crossover. Default selection rate is 0.4 my $algo = new Algorithm::Evolutionary::Op::Easy_MO( $eval ); #Define an easy single-generation algorithm with predefined mutation and crossover my $m = new Algorithm::Evolutionary::Op::Bitflip; #Changes a single bit my $c = new Algorithm::Evolutionary::Op::Crossover; #Classical 2-point crossover my $generation = new Algorithm::Evolutionary::Op::Easy_MO( $rr, 0.2, [$m, $c] ); Base ClassAlgorithm::Evolutionary::Op::Base DESCRIPTION"Easy" to use, single generation of an evolutionary algorithm. Takes an arrayref of operators as input, or defines bitflip-mutation and 2-point crossover as default. The "apply" method applies a single iteration of the algorithm to the population it takes as input METHODSnew( $eval_func, [$selection_rate,] [$operators_arrayref] )Creates an algorithm that optimizes the handled fitness function and reference to an array of operators. If this reference is null, an array consisting of bitflip mutation and 2 point crossover is generated. Which, of course, might not what you need in case you don't have a binary chromosome. Take into account that in this case the fitness function should return a reference to array. set( $hashref, codehash, opshash )Sets the instance variables. Takes a ref-to-hash (for options), codehash (for fitness) and opshash (for operators) apply( $population )Applies the algorithm to the population; checks that it receives a ref-to-array as input, croaks if it does not. Returns a sorted, culled, evaluated population for next generation. SEE ALSOAlgorithm::Evolutionary::Op::CanonicalGA. Algorithm::Evolutionary::Op::FullAlgorithm. Algorithm::Evolutionary::Op::Easy for the scalar version of this code. CopyrightThis 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/14 06:55:36 $ $Header: /media/Backup/Repos/opeal/opeal/Algorithm-Evolutionary/lib/Algorithm/Evolutionary/Op/Easy_MO.pm,v 3.6 2011/02/14 06:55:36 jmerelo Exp $ $Author: jmerelo $ $Revision: 3.6 $ $Name $
|