
In der Praxis gilt es häufig, aus einer Menge von Alternativen die gemäß eines Gütekriteriums beste auszuwählen. Die Aufgabe, eine optimale Lösung zu finden, tritt bei einer Vielzahl interessanter Problemstellungen, wie Maschinenbelegungsproblemen, Routingproblemen in Netzen, Packungsproblemen, Anlagenauslegungsproblemen usw., auf. Aufgrund der meist hohen Irregularitäten (Nicht-Differenzierbarkeit, Nicht-Konvexität, Multimodalität usw.) sind die Voraussetzungen für den Einsatz klassischer Optimierverfahren oft nicht erfüllt. Für zahlreiche Optimierprobleme sind die zugehörigen Entscheidungsprobleme bereits NP-vollständig. Wenn für diese Aufgabenstellungen keine problemspezifischen Heuristiken oder entsprechende Approximationsverfahren bekannt sind, gilt es auch hier, eine allgemeinere Art der Suche zu finden.
In den Fällen, in denen klassische Optimierverfahren nicht zum Einsatz kommen können bzw. keine effizienten deterministischen Spezialverfahren oder keine speziellen Heuristiken vorliegen, benötigt man Optimierverfahren, die einen Kompromiss zwischen volumen- und pfadorientierter Suche im Raum der Entscheidungsvariablen darstellen.
Evolutionäre Algorithmen sind ein erfolgreiches Beispiel für derartige Optimierverfahren. Sie orientieren sich am Vorbild der natürlichen Evolution, welche über einen Zeitraum von ,,nur`` etwa 4 Milliarden Jahren hinweg zur Entwicklung der ca. 3,8 Milliarden Nukleotidbasen umfassenden menschlichen DNS geführt hat. Evolutionäre Algorithmen arbeiten auf einer Population von Individuen, welche Suchpunkte im Raum der Entscheidungsvariablen darstellen -- entweder direkt oder über Codierungsstufen. Der Übergang von einer Generation zur nächsten erfolgt durch den Austausch von genetischem Material zwischen Individuen (Rekombination), d.h. Neukombination von Teillösungen, durch ungerichtete zufällige Abwandlung von Individuen (Mutation), d.h. mehr oder weniger große Zufallssprünge im Suchraum, und durch die Hinzunahme einer Selektionsregel, die auf die so erzeugten neuen Individuen anzuwenden ist.
Die Selektion erfolgt gemäß dem Gütekriterium (Fitness) durch Auswertung der als potentielle Lösungen des Optimierproblems aufzufassenden Individuen. Nach der (stark vereinfachenden, wörtlich genommen sogar falschen) Regel ,,survival of the fittest`` werden bei jedem Selektionsschritt die besseren Individuen beibehalten, die dann zu Eltern der Folgegeneration werden, während die schlechteren Individuen keine Nachkommen produzieren dürfen, oder die mittlere Nachkommenzahl ist proportional zur elterlichen Fitness. Mutation und Rekombination sind im Algorithmus meist Prozesse mit nichtdeterministischen Komponenten, während Selektion sowohl streng deterministisch als auch probabilistisch modelliert werden kann. Im Laufe des Evolutionsprozesses steigt so die durchschnittliche Qualität der Individuen an und ermöglicht das Auffinden einer guten, oft sogar der global optimalen Lösung des Problems.
Die bekanntesten Vertreter dieser Klasse von Evolutionären Algorithmen (EA) sind die in den USA entwickelten Genetischen Algorithmen (GA, John Holland, Ann Arbor, Michigan) und das Evolutionäre Programmieren (EP, Lawrence Fogel, San Diego, California) sowie die in Deutschland entwickelten Evolutionsstrategien (ES, Ingo Rechenberg und Hans-Paul Schwefel, Berlin). Heute, mehr als 30 Jahre nach den ersten Arbeiten auf diesem Gebiet, gehört Evolutionary Computation (EC) zusammen mit Neural Computation und Fuzzy Computation zum übergreifenden Themengebiet ,,Computational Intelligence`` bzw. ,,Natural Computation``.
