Manche Probleme sind zu komplex, um sie sinnvoll mit numerischen Optimierungen lösen zu können. In einer Reihe von Fällen könnten evolutionäre Algorithmen Abhilfe leisten.

Foto: Getty Images / iStock / non-esclusive

Möchte man einen neuen Windpark mit hunderten Windrädern anlegen – nach welchen Kriterien ordnet man die Anlagen genau an, um insgesamt die maximale Stromausbeute zu erzielen? Vorhandene Windströmungen sollen optimal genutzt, die gegenseitige Beeinflussung der einzelnen Windkraftanlagen gleichzeitig minimiert werden. Aus Sicht der Mathematik ist das ein nicht einfach zu lösendes Optimierungsproblem.

Denn es gibt wohl kaum eine große, optimale Lösung, die sich weit von allen anderen absetzt. Viel wahrscheinlicher lassen sich inmitten eines Meeres an unbrauchbaren Lösungen auch eine Menge Konstellationen finden, die durchaus gut sind. Doch wie herausfinden, welche dieser vielleicht ganz passablen Lösungen nun wirklich die beste ist?

Im Projekt "Evolutionary Global Optimization in Highly Multimodal Landscapes", das vom Wissenschaftsfonds FWF unterstützt wird, versuchen Wissenschafter der FH Vorarlberg bei Optimierungsproblemen dieser Art neue Wege zu gehen. Hans-Georg Beyer, Projektleiter und Forschungsprofessor im Bereich Computational Intelligence, möchte mit seinem Team die Anwendbarkeit sogenannter Evolutionsstrategien verbessern.

Vereinfacht gesagt wird dabei – nach dem Vorbild der Evolution in der Natur – über mehrere Generationen von gezielt gesetzten Berechnungsschritten nach einem besten Ergebnis gesucht, wobei nicht zufriedenstellende Lösungen in jeder dieser Generationen ausgesiebt werden.

Irreführende Lösungen

Konventionelle Optimierungsverfahren sind bei Problemstellungen wie jenem im Windpark-Beispiel oft überfordert. Klassische numerische Optimierungen, bei denen man immer wieder neue Lösungen des Problems generiert, bis man sich an eine ausreichend gute Variante herangetastet hat, führen hier leicht in die Irre, sagt Beyer. Immerhin kann man nie mit Sicherheit wissen, ob man nun tatsächlich das globale Optimum gefunden hat – also den besten Wert der ganzen Suchlandschaft – oder nur eines der vielen lokalen Optima, passable Lösungen, die lediglich besser sind als jene in ihrem näheren Umfeld.

"Man kann sich den Suchraum, in dem ein optimales Ergebnis gefunden werden soll, wie ein zerklüftetes Gebirge vorstellen", vergleicht Beyer. "In diesem Gebirge möchte man den höchsten Berg identifizieren, obwohl keine Landkarte zur Verfügung steht." Wo soll man also anfangen, die Höhe zu bestimmen?

Wählt man einfach einen beliebigen Punkt aus, landet man auf einem zufälligen Berghang. "Numerische Methoden, die auf eine sogenannte gradientenbasierte Strategie zurückgreifen, würden einfach nach dem steilsten Anstieg suchen, um den Berggipfel zu erreichen. Damit hat man aber nur ein lokales Optimum identifiziert, und man kann nicht sagen, ob andere Berge nicht noch höher sind."

Millionen von Individualberechnungen

Letztendlich nutzt auch die evolutionäre Optimierung eine Annäherungsmethode, wobei hier aber berücksichtigt wird, dass es viele Berggipfel im Suchraum gibt. Ein zufällig gewählter Ausgangspunkt erzeugt eine Reihe von "Nachkommen" – weitere Punkte mit einem gewissen durchschnittlichen Abstand zur "Elterngeneration", sagt Beyer.

Die Werte dieser Nachkommen werden verglichen, um die besten Ergebnisse herauszufiltern, wobei diese nun erneut weitere, mutierte Rechenpunkte generieren. Komplexe Optimierungsaufgaben dieser Art würden Millionen dieser Individualberechnungen und eine Vielzahl von Rechengenerationen beinhalten. Bei guten Voraussetzungen kann diese Näherungsmethode letztendlich zum globalen Optimum vordringen – und so den höchsten Gipfel des Gebirges identifizieren.

Die Frage, wie diese guten Voraussetzungen aussehen, ist letztendlich Inhalt des Forschungsprojekts. Beyer und Kollegen wollen die evolutionären Algorithmen in immer komplexeren Suchräumen erproben. "Wir wollen die zu testenden ,Problemlandschaften‘ zunehmend verzerren, also unregelmäßiger und zufälliger gestalten", sagt Beyer. "Eine Hoffnung ist, eine Art Klassifizierung zu finden – zu erkennen, welche Problemklassen mit evolutionären Algorithmen gut optimierbar sind und welche nicht."

Proteine und Antennen

Nicht nur die Positionierung von Windrädern, auch optimierte Finanzportfolios, Proteinfaltungen oder Atomstrukturen lassen sich mit den von der Natur abgeschauten Algorithmen berechnen, zählt Beyer auf. Selbst die Antennenstruktur einer Nasa-Satellitenmission wurde bereits auf diese Art optimiert.

Angesichts der Rechenzeiten, die bei derartigen Aufgaben schnell ausufern, hat die Methode einen großen Vorteil, betont Beyer: "Die Berechnung mithilfe von Evolutionsstrategien kann sehr leicht parallelisiert – also auf viele Rechenkerne aufgeteilt – werden und eignet sich so beispielsweise auch gut für eine Auslagerung in die Cloud." (Alois Pumhösel, 20.11.2021)