The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Algorithm::Evolutionary::Experiment - Class for setting up an experiment with algorithms and population

SYNOPSIS

  use Algorithm::Evolutionary::Experiment;
  my $popSize = 20;
  my $indiType = 'BitString';
  my $indiSize = 64;
  
  #Algorithm might be anything of type Op
  my $ex = new Algorithm::Evolutionary::Experiment $popSize, $indiType, $indiSize, $algorithm; 

DESCRIPTION

This class contains (as instance variables) an algorithm and a population, and applies one to the other. Can be serialized using XML, and can read an XML description of the experiment.

METHODS

new( $pop_size, $type_of_individual, $individual_size )

Creates a new experiment. An Experiment has two parts: the population and the algorithm. The population is created from a set of parameters: popSize, indiType and indiSize, and an array of algorithms that will be applied sequentially. Alternatively, if only operators are passed as an argument, it is understood as an array of algorithms (including, probably, initialization of the population).

go

Applies the different operators in the order that they appear; returns the population as a ref-to-array.

SEE ALSO

Algorithm::Evolutionary::Run , another option for setting up experiments, which is the one you should rather use, as XML support is going to be deprecated (some day).

Copyright

  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