Information Technology Reference
In-Depth Information
(e) Organismen und Gattungen mit hohen Fitness-Werten reproduzieren sich, d. h., sie erzeu-
gen Nachfolgergenerationen . Diese sind dann die Populationen für die nächste Anwen-
dung der Schritte (b) - (e). 1
3.2 Genetische Algorithmen (GA)
Wenn man gegenwärtig von evolutionären Algorithmen (EA) spricht, dann sind vor allem die
Genetischen Algorithmen (GA) sowie die Evolutionsstrategien (ES) gemeint. Als weitere be-
kannte Formen lassen sich noch nennen das Verfahren der evolutionären Programmierung , das
vor allem von Fogel entwickelt wurde, sowie die von Koza (1992) eingeführte genetische Pro-
grammierung. Obwohl sich in manchen Anwendungsbereichen die Verwendung der beiden
letzteren Verfahren durchaus empfehlen kann, bieten beide nichts grundsätzlich Neues: Die
evolutionäre Programmierung lässt sich als eine Variante zu den Evolutionsstrategien auffassen
und entsprechend ähnelt die genetische Programmierung dem GA bzw. verwendet GA.
Das Prinzip des GA ist von John Holland (1975) entwickelt worden; GA sind zurzeit die weit-
aus gebräuchlichsten evolutionären Algorithmen. Der sog. Standard-GA lässt sich sehr einfach
durch einen Pseudocode darstellen:
(a) Generiere eine Zufallspopulation von „Chromosomen“, d. h. von Vektoren oder „Strings“,
bestehend aus Symbolen; im einfachsten Fall sind dies binär codierte Strings.
(b) Bewerte die einzelnen Elemente der Population - die Chromosomen - gemäß der jeweils
vorgegebenen Bewertungs- bzw. Fitnessfunktion.
(c) Selektiere „Eltern“, d. h. Paare oder größere Subpopulationen, nach einem festgelegten
Verfahren („ Heiratsschema “) und erzeuge Nachkommen durch Rekombination ( Cross-
over ).
(d) Mutiere die Nachkommen; d. h., variiere per Zufall einzelne Symbole.
(e) Ersetze die Elterngeneration durch die Nachkommengeneration gemäß dem jeweiligen
Ersetzungsschema .
(f) Wende Schritte (b) - (e) auf die Nachkommengeneration an.
(g) Wiederhole diese Schritte, bis entweder die Bewertung zufrieden stellend ist oder andere
Abbruchbedingungen erfüllt sind.
An einem einfachen Beispiel kann man sich die prinzipielle Operationsweise des GA demnach
so vorstellen: Gegeben seien vier 5-dimensionale Vektoren in Form binärer Strings; dies seien
a) (1,0,1,1,0); b) (0,0,0,0,0); c) (1,1,1,1,1); d) (0,1,0,1,0).
Eine einfache Bewertungsfunktion wäre z. B. die, die den Wert nach der Anzahl der 1-Kompo-
nenten bemisst; die Werte W(x) wären dann W(a) = 3, W(b) = 0, W(c) = 5 und W(d) = 2. Die
Reihenfolge nach Werten ist dann c, a, d, b.
1
Eine Einordnung der evolutionären Algorithmen und von Simulated Annealing in den allgemeinen
Kontext mathematischer Optimierungsverfahren findet sich u. a. bei Salamon et al. 2002.
Search WWH ::




Custom Search