Elternklasse: cIndividualSelection
Die Klasse cIndividualSelectionWeel
implementiert eine Methode bereit, um ein Individuum nach der weel-selection Auswahlmethode auszuwählen.
Sie wird von der Klasse cIndividualSelection
(siehe Abschnitt 70 auf Seite ) abgeleitet.
Von der Klasse cIndividualSelectionWeel
werden die Individuen mit der weel-selection Auswahlmethode ausgewählt. Dabei hat jedes Individuum eine Auswahlwahrscheinlichkeit die proportional zu seiner Gesamtfitness ist und die Summe der Gesamtfitness aller Individuen steht für die Wahrscheinlichkeit .
Die schlechtest mögliche Fitness von Individuen wird durch die Methode getWorstCaseFitness()
des entsprechenden Fitnessalgorithmus (siehe 64 auf Seite ) zur jeweiligen Fitness ermittelt.
Von der Fitness aller Individuen wird der Wert der schlechtest mögliche Fitness abgezogen, um einen Nullpunkt zu erhalten. Bei Individuen deren Auswahlwahrscheinlichkeit dann kleiner als durch die Anzahl der zur Auswahl stehenden Individuen (
) durch ist, wird die Auswahlwahrscheinlichkeit auf diesen Wert gesetzt. (
; if then ) So dass jedes Individuum eine Auswahlwahrscheinlichkeit ungleich hat.
Existiert kein Fitnessalgorithmus oder schlechtest mögliche Fitness zur Fitness, wird deren Auswahlwahrscheinlichkeit auf gesetzt.
Die schlechtest mögliche Fitness kann dabei durchaus von Individuen unterschritten werden. Sie dient in cIndividualSelectionWeel
nur zum Festlegen eines Nullpunktes für die Fitnesswerte, um die weel-selection ausführen zu können.