search.cpan.org is shutting down
J. J. Merelo-Guervós > Algorithm-Evolutionary-0.79_1 > Algorithm::Evolutionary::Op::Easy_MO

Algorithm-Evolutionary-0.79_1.tar.gz

Dependencies

Annotate this POD

# CPAN RT

 Open 0
View/Report Bugs
Module Version: 3.6   Source   Latest Release: Algorithm-Evolutionary-0.80

# NAME

Algorithm::Evolutionary::Op::Easy_MO - Multiobjecttive evolutionary algorithm, single generation, with variable operators

# 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 Class

Algorithm::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

# METHODS

## new( \$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.

Algorithm::Evolutionary::Op::CanonicalGA. Algorithm::Evolutionary::Op::FullAlgorithm. Algorithm::Evolutionary::Op::Easy for the scalar version of this code.

```  This file is released under the GPL. See the LICENSE file included in this distribution,

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 \$```
syntax highlighting: