Trees | Index | Help |
---|
Package Bio :: Package GA :: Package Selection :: Module RouletteWheel :: Class RouletteWheelSelection |
|
AbstractSelection
--+
|
RouletteWheelSelection
Roulette wheel selection proportional to individuals fitness.
The implements a roulette wheel selector that selects individuals from the population, and performs mutation and crossover on the selected individuals.Method Summary | |
---|---|
Initialize the selector. | |
Perform selection on the population based using a Roulette model. | |
Set up the roulette wheel based on the fitnesses. | |
Inherited from AbstractSelection | |
Perform mutation and crossover on the two organisms. |
Method Details |
---|
__init__(self,
mutator,
crossover,
repairer=None)
|
select(self, population)Perform selection on the population based using a Roulette model. Arguments: o population -- A population of organisms on which we will perform selection. The individuals are assumed to have fitness values which are due to their current genome. |
_set_up_wheel(self, population)Set up the roulette wheel based on the fitnesses. This creates a fitness proportional 'wheel' that will be used for selecting based on random numbers. Returns: o A dictionary where the keys are the 'high' value that an individual will be selected. The low value is determined by the previous key in a sorted list of keys. For instance, if we have a sorted list of keys like: [.1, .3, .7, 1] Then the individual whose key is .1 will be selected if a number between 0 and .1 is chosen, the individual whose key is .3 will be selected if the number is between .1 and .3, and so on. The values of the dictionary are the organism instances. |
Trees | Index | Help |
---|
Generated by Epydoc 2.1 on Mon Aug 27 16:13:13 2007 | http://epydoc.sf.net |