J. J. Merelo-Guervós > Algorithm-Evolutionary-0.78 > Algorithm::Evolutionary::Op::Creator

Download:
Algorithm-Evolutionary-0.78.tar.gz

Dependencies

Annotate this POD

CPAN RT

Open  0
View/Report Bugs
Module Version: 3.1   Source   Latest Release: Algorithm-Evolutionary-0.79_2

NAME ^

Algorithm::Evolutionary::Op::Creator - Operator that generates groups of individuals, of the intended class

SYNOPSIS ^

    my $op = new Algorithm::Evolutionary::Op::Creator; #Creates empty op, with rate

    my $xmlStr=<<EOC;
    <op name='Creator' type='nullary'>
      <param name='number' value='20' />
      <param name='class' value='BitString' />
      <param name='options'>
        <param name='length' value='320 />
      </param>
    </op>
    EOC

    my $ref = XMLin($xmlStr); #This step is not really needed; only if it's going to be manipulated by another object
    my $op = Algorithm::Evolutionary::Op::Base->fromXML( $ref ); #Takes a hash of parsed XML and turns it into an operator    

    print $op->asXML(); #print its back in XML shape

    my $op2 = new Algorithm::Evolutionary::Op::Creator( 20, 'String', { chars => [a..j], length => '10' });

    my @pop;
    $op2->apply( \@pop ); #Generates population

DESCRIPTION ^

Base class for operators applied to Individuals and Populations and all the rest

METHODS ^

new( $number_of_individuals, $class_to_generate, $options_hash )

Takes a hash with specific parameters for each subclass, creates the object, and leaves subclass-specific assignments to subclasses

apply( $population_hash )

Generates the population according to the parameters passed in the ctor

asXML()

Serializes the object as an XML nodeset

set( $params_hash )

Sets the instance variables of the object, which, so far, should be a bit "raw". Usually called from the base class

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

  CVS Info: $Date: 2009/09/14 16:36:38 $ 
  $Header: /cvsroot/opeal/Algorithm-Evolutionary/lib/Algorithm/Evolutionary/Op/Creator.pm,v 3.1 2009/09/14 16:36:38 jmerelo Exp $ 
  $Author: jmerelo $ 
  $Revision: 3.1 $
  $Name $
syntax highlighting: