![]() |
![]()
| ![]() |
![]()
NAMEAlgorithm::Evolutionary::Run - Class for setting up an experiment with algorithms and population SYNOPSISuse Algorithm::Evolutionary::Run; my $algorithm = new Algorithm::Evolutionary::Run 'conf.yaml'; #or my $conf = { 'fitness' => { 'class' => 'MMDP' }, 'crossover' => { 'priority' => '3', 'points' => '2' }, 'max_generations' => '1000', 'mutation' => { 'priority' => '2', 'rate' => '0.1' }, 'length' => '120', 'max_fitness' => '20', 'pop_size' => '1024', 'selection_rate' => '0.1' }; my $algorithm = new Algorithm::Evolutionary::Run $conf; #Run it to the end $algorithm->run(); #Print results $algorithm->results(); #A single step $algorithm->step(); DESCRIPTIONThis is a no-fuss class to have everything needed to run an
algorithm
METHODSnew( $algorithm_description )Creates the whole stuff needed to run an algorithm. Can be called
from a hash with t
population_size( $new_size )Resets the population size to the $new_size. It does not do anything to the actual population, just resests the number. You should do a "reset_population" afterwards. reset_population()Resets population, creating a new one; resets fitness counter to 0 step()Runs a single step of the algorithm, that is, a single generation run()Applies the different operators in the order that they appear; returns the population as a ref-to-array. random_member()Returns a random guy from the population results()Returns results in a hash that contains the best, total time so
far
evaluated_population()Returns the portion of population that has been evaluated (all but the new ones) compute_average_distance( $individual )Computes the average hamming distance to the population compute_min_distance( $individual )Computes the average hamming distance to the population 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
|