Generische Algorithmen

Hintergrund

Generische Algorithmen (GA), oft auch als evolutionäre Algorithmen bezeichnet,  bilden die Entwicklungsmethoden der Natur ab. Durch ständige Mutation, Vermehrung und Selektion wird der Algorithmus langsam optimiert und nähert sich einer Lösung an.

Einsatzgebiet

In der modernen Wissenschaft gibt es immer noch Probleme, die zwar theoretisch gelöst werden können, aber praktisch zu viel Rechenzeit (Jahrzehnte!) benötigen. Beispiel
Auch Lösungswege, die z.Z. noch unbekannt sind, können durch GA aufgezeigt und entwickelt werden. Beispiel
Optimierung von Prozessen, die aus einer Kombination der beiden oberen Beispiele bestehen. Beispiel

Funktionsweise "Zufall"

Dem Zufall eine Chance geben. Die Evolution in der Natur ist eine geschickte Auswahl und Kombination von einzelnen Individuen, die sich durch Zufall geringfügig ändern (mutieren).
Was sich in der Natur von Anfang an bewährt hat, wird seit dem letzten Jahrzehnt auch in der Informatik eingesetzt. Wie in der Natur wird dazu eine Population von von Individuen (möglichen Lösungen) erzeugt. Durch komplexe mathematische Verfahren wird aus dieser Population eine neue berechnet. Dieser Vorgang wiederholt sich so lange, bis ein Optimum gefunden ist oder eine Lösung herauskommt, die in der Praxis ausreicht.

Geschichte

Die Grundlagen für die Entwicklung der GA sind schon früh geschaffen worden. Alles basiert auf Beobachtungen der Natur und deren Umsetzung.
Am Anfang des 19.Jahrhunderts wurde erstmals über die Evolution in der Natur nachgedacht. Man erkannte, dass Lebewesen sich langsam an die Gegebenheiten in der Natur anpassen. Eines der bekanntesten Werke veröffentlichte Charles Darwin 1859 (On the Origin of Species) und gab damit dem Darwinismus seinen Namen. Auf dieser Grundlage entwickelte sich die Genetik mit ihren Kenntnissen um die Vorgänge in der DNA. Diese Vorgänge werden als mathematische Modelle in den Computerprogrammen umgesetzt. Je genauer diese Umsetzung ist, desto besser werden auch die Ergebnisse. Eines ist jedoch immer zu beachten: Es wird meistens eine Lösung gefunden, die nahe am Optimum liegt. Allein durch die ständige Mutation wird dieses jedoch nie absolut erreicht!