AI::Genetic::OpSelection - A class that implements various
selection operators.
This package implements a few selection mechanisms that can be
used in user-defined strategies. The methods in this class are to be called
as static class methods, rather than instance methods, which means you must
call them as such:
AI::Genetic::OpSelection::MethodName(arguments)
The following selection operators are defined:
- Roulette
Wheel
- Here, the probability of an individual being selected is proportional to
its fitness score. The following methods are defined:
- initWheel(population)
- This method initializes the roulette wheel. It expects an anonymous list
of individuals, as returned by the people() method as
described in "CLASS METHODS" in AI::Genetic. This must be
called only once.
- roulette(?N?)
- This method selects N individuals. N defaults to 2. Note
that the same individual can be selected multiple times.
- rouletteUnique(?N?)
- This method selects N unique individuals. N defaults to 2.
Any individual can be selected only once per call to this method.
- Tournament
- Here, N individuals are randomly selected, and the fittest one of
them is returned. The following method is defined:
- tournament(?N?)
- N defaults to 2. Note that only one individual is returned per call
to this method.
- Random
- Here, N individuals are randomly selected and returned. The
following method is defined:
- Fittest
- Here, the fittest N individuals of the whole population are
returned. The following method is defined:
Written by Ala Qumsieh aqumsieh@cpan.org.
(c) 2003,2004 Ala Qumsieh. All rights reserved. This module is
distributed under the same terms as Perl itself.