next up previous contents index
Next: Schnittstellenbeschreibung Up: Implementation des genetische Algorithmus Previous: getClassName   Contents   Index


Weel-selection auswählen eines zu löschenden Individuums mit cSelectIndividualToDeleteWeel

Elternklasse: cSelectIndividualToDelete


Die Klasse cSelectIndividualToDeleteWeel stellt eine Methode bereit, um ein Individuum auszuwählen, das gelöscht werden soll. Sie wird von der Klasse cSelectIndividualToDelete abgeleitet.

Wenn im Algorithmus nur noch ein Individuum vorhanden ist, wird dies niemals ausgewählt. Da der Algorithmus immer mindestens ein Individuum enthalten sollte.

Von der Klasse cSelectIndividualToDeleteWeel werden die Individuen mit der weel-selection Auswahlmethode ausgewählt. Dabei hat jedes Individuum eine Auswahlwahrscheinlichkeit die umgekehrt proportional zu seiner Gesamtfitness ist und die Wahrscheinlichkeiten aller Individuen summiert sich zu $1$ .

Die best mögliche Fitness von Individuen wird durch die Methode getBestFitness() des entsprechenden Fitnessalgorithmus (siehe 64 auf Seite [*]) zur jeweiligen Fitness ermittelt. Von der best mögliche Fitness wird jeweils der Wert Fitness aller Individuen abgezogen, um einen Nullpunkt zu erhalten. Bei Individuen deren Auswahlwahrscheinlichkeit $p$ dann kleiner als $1$ durch die Anzahl der zur Auswahl stehenden Individuen ( $\sharp Individuen$) durch $1024$ ist, wird die Auswahlwahrscheinlichkeit auf diesen Wert gesetzt. ( $p_{Min}=1/(\sharp Individuen * 1024)$; if $p < p_{Min}$ then $p=p_{Min}$) So dass jedes Individuum eine Auswahlwahrscheinlichkeit ungleich $0$ hat. Existiert kein Fitnessalgorithmus oder best mögliche Fitness zur Fitness, wird deren Auswahlwahrscheinlichkeit auf $p_{Min}$ gesetzt.

Die best mögliche Fitness kann dabei durchaus von Individuen überschritten werden. Sie dient in cSelectIndividualToDeleteWeel nur zum Festlegen eines Nullpunktes für die Fitnesswerte, um die weel-selection ausführen zu können.



Subsections
next up previous contents index
Next: Schnittstellenbeschreibung Up: Implementation des genetische Algorithmus Previous: getClassName   Contents   Index
Betti Österholz 2013-02-13