Grundlagen: Optimierungsverfahren: Unterschied zwischen den Versionen

Aus OptiYummy
Zur Navigation springenZur Suche springen
Zeile 161: Zeile 161:
===== Basisalgorithmus =====
===== Basisalgorithmus =====


Diese Schreibweise wurde von H.-P. Schwefel in seiner Dissertation 1975 eingeführt:
     +
     +
  (µ  λ) - '''Basisalgorithmus der Evolutionsstrategie'''
  (µ  λ) - '''Basisalgorithmus der Evolutionsstrategie'''
     ,
     ,


Diese Schreibweise wurde von H.-P. Schwefel in seiner Dissertation 1975 eingeführt:
: '''''µ''''' Eltern erzeugen in willkürlicher Folge
* µ Eltern erzeugen in willkürlicher Folge
: '''''λ''''' mutierte Nachkommen.
* λ mutierte Nachkommen.
:'''''Komma:'''''
:'''''Komma:'''''
:* die Eltern sterben sofort nach der "Fortpflanzung"
:* die Eltern sterben sofort nach der "Fortpflanzung"

Version vom 5. Februar 2014, 10:01 Uhr

Globale Suchverfahren

Zielstellung

Die Zielstellung für globale Suchverfahren der Optimierung besteht darin, innerhalb eines vorgegebenen Suchraums den absoluten Extremwert (das globale Optimum) zu finden. Bei der Anwendung innerhalb eines Entwurfsprozesses entspricht dies der absolut besten Lösung. D.h., es existiert keine Lösung, welche der idealen Lösung näher kommt:

  • Leider gibt es keine mathematischen oder numerischen Methoden, welche für Suchräume mit mehr als 2-3 Entwurfsparametern das Finden der absolut besten Lösung garantieren können. Findet man einen Extremwert auf Gütefunktion, so weiß man praktisch nie, ob es nicht doch noch eine bessere Lösung gibt.
  • Deshalb setzt man globale Suchverfahren innerhalb von Entwurfsprozessen meist "nur" zu Analysezwecken ein. Man verschafft sich damit einen "Überblick" über die Zielfunktion im einen zuvor definierten Suchraum:
    • Innerhalb des Suchraums wird die Oberfläche der Zielfunktion in Form einzelner Abtastpunkte berechnet.
    • Man sollte versuchen, daraus die Eigenschaften der Zielfunktion zu erkennen:
      1. Vorhandensein lokaler Optima, Unstetigkeitsstellen,
      2. mögliche Position des globalen Optimums,
      3. sinnvolle Veränderung der Suchraums (Grenzen der Entwurfsparameter verschieben, erweitern oder einengen).
      4. sinnvolle Positionen von Startpunkten für lokale Suchverfahren.
  • Ziel dieser Analyse ist das Ermitteln geeigneter Startpunkte für lokale Suchverfahren in einem sinnvoll definierten Suchraum.


Bei der globalen Analyse der Zielfunktion hat man mit diversen Problemen zu kämpfen:

  • Der menschliche Blick auf mehrdimensionale Räume ist sehr eingeschränkt. So versagt bei mehr als 2 Entwurfsparametern recht schnell unsere Vorstellung.
  • Man kann immer nur endlich viele ausgewählte Punkte des Suchraums berechnen und muss die Zielfunktion dann hinein interpolieren. Sind die Abstände zwischen den Punkten zu groß, gehen die Details dazwischen natürlich verloren.

Systematische Suche (Rastersuche)

Die N Achsen der Entwurfsparameter werden innerhalb des Suchraums in gleichmäßige Abstände geteilt. Die Schnittpunkte der Rasterlinien definieren die Abtastpunkte auf der Oberfläche der Zielfunktion.

In der statistischen Versuchsplanung (design of experiments = DoE) ist dieses Verfahren auch als vollständiger Versuchsplan (full factorial design) bekannt:

.
  • Im obigen Beispiel wurde für einen Elektromagneten die Zykluszeit in Abhängigkeit vom Ankerdurchmesser und der Rückholfeder untersucht.
  • Das Verfahren der Rastersuche wird meist als Analyse-Werkzeug für die Eigenschaften einer Zielfunktion benutzt, um die Grundlage für den Einsatz lokaler Suchverfahren zu schaffen.
  • Verfügt man über ein hinreichend schnell rechnendes Modell in einem kleinen Suchraum, kann man mit der Rastersuche natürlich auch iterativ recht schnell das mögliche Gebiet des globalen Optimums eingrenzen und dort sogar die exakte Position der bestmöglichen Lösung ermitteln:
    1. Voraussetzung ist eine Zielfunktion,welche in großen Bereichen monoton ist und Optima in ausgeprägten breiten Tälern aufweist.
    2. Unter dieser Voraussetzung gilt dann unabhängig von der Anzahl der Entwurfsparameter, dass man wahrscheinlich ein Optimum umschlossen hat, wenn der beste Abtastwert kein Randpunkt ist.
  • Im Beispiel müsste man den Suchraum zu höheren Federkonstanten hin verschieben, um das globale Optimum zu umfassen.


Im obigen Diagramm wird nur die Gütefunktion "Zykluszeit" dargestellt, welche möglichst klein werden soll:

  • Bei der Suche nach dem globalen Optimum muss man berücksichtigen, dass sich im abgetasteten Suchraum nur zulässige Lösungen befinden, wo keine Restriktionen für den Magnetantrieb verletzt werden (Wert der anhand der Restriktionen gebildeten Straf-Funktion = 0).
  • Damit existiert zusätzlich zu den Werten der Gütefunktion für jeden Abtastpunkt mit dem Wert der Straf-Funtion eine Information, ob die für das Modell definierten Restriktionen eingehalten werden (ja/nein bzw. Grad der Verletzungsgrad).
  • Der betrachtete Magnetantrieb soll mindestens eine Zykluszeit von 3,4 ms erreichen und seinen Bewegungsvorgang komplett ausführen:
    .


Monte-Carlo-Simulation

Oft kann infolge langsamer Modelle oder einer Vielzahl von Entwurfsparametern mittels Rastersuche keine sinnvolle Analyse der Zielfunktion erfolgen. Die erforderliche Berechnungszeit für die notwendige Anzahl Stützstellen wäre einfach zu groß:

  • Dann helfen zufällige Stützstellen (Monte-Carlo-Simulation) zumindest bei der Suche nach geeigneten Startpunkten für die lokale Suche:
.
  • Das Beispiel zeigt für den Magnetantrieb die Werte der Straffunktion in Abhängigkeit von Federkonstante und Ankerdurchmesser:
    • Der Stern * kennzeichnet die beste "erwürfelte" Lösung (Startpunkt für lokale Suche).
    • Die Ziffern repräsentieren den Wertebereich der Straffunktion.
    • Die anderen Symbole markieren Restriktionsverletzungen (z.B. u=überhöhte Spulenspannung / #=Mehrfach-Verletzungen))


Lokale Suchverfahren

Die Mehrzahl der verfügbaren Optimierungsverfahren sind Verfahren zur lokalen Suche:

  • Lokale Suchverfahren sollen ausgehend von einem Startpunkt (Anfangslösung) möglichst das globale Optimum finden. In der Praxis wird jedoch nur ein lokales Minimum gefunden, welches vom Startpunkt aus durch schrittweise verbesserung der Lösung erreicht werden kann.
  • Das folgende Bild zeigt den möglichen Pfad eines lokalen Suchverfahrens auf der Zielfunktion "Zykluszeit" des Magnetantriebes:
.
  • Es erfolgt im Beispiel eine stetige Verbesserung der Zykluszeit entlang des "steilsten Abstiegs", bis die Lösung nicht mehr alle Forderungen erfüllt.
  • Dann tastet sich das lokale Suchverfahren entlang der Restriktionsgrenze auf der Zielfunktion, bis keine bessere Lösung entlang dieser Grenze gefunden werden kann.

Zur Suche optimaler Lösungen für ein Entwurfsproblem eignen sich nur Methoden, welche keine analytische Ableitung der Zielfunktion benötigen:

  • Die Zielfunktion in Entwurfsproblemen ist im Normalfall nicht als geschlossene Funktion gegeben. Sie ergibt sich nur punktuell durch Simulation einer konkreten Lösung im Suchraum der Entwurfsparameter.
  • Eventuell vom Suchverfahren benötigte 1.Ableitungen können an einem Punkt im Suchraum näherungsweise durch Abtastung als Differenzenquotient gewonnen werden.
  • Besonders effektiv sind Verfahren, welche wie im Beispiel ausgehend vom Startpunkt sich in Richtung des steilsten Abstiegs bewegen.
  • Lokale Suchverfahren enden zwangsläufig, wenn sie auf dem Weg "nach Unten" eine Mulde erreicht haben. Ursache ist das "blinde" Abtasten einzelner Punkte der Oberfläche in der näheren Umgebung mit dem Ziel, beim nächsten Schritt etwas tiefer zu kommen. Deshalb sollte der Startpunkt im Bereich eines vermuteten globalen Optimums liegen.
  • Klassische lokale Suchverfahren bewegen sich nur abwärts. Modernere Verfahren erlauben mit gewissen Wahrscheinlichkeiten auch eine Verschlechterung der Lösung, um aus kleineren Mulden wieder herauszufinden.


Abtastung der Zielfunktion mit Schrittweitenregelung (Beispiel "Hooke-Jeeves-Verfahren"):

  • Die Steigung der Zielfunktion am Punkt der aktuell erreichten Lösung wird über kleine Tastschritte ermittelt. Die genutzte Tastschrittweite muss dabei der Oberfläche der Zielfunktion angepasst sein.
  • In Richtung des ermittelten steilsten Abstiegs wird anschließend ein größerer Schritt ausgeführt:
.
  • Die Tastschritte werden gleichzeitig zur Verbesserung der Lösung genutzt. Beim Tastzyklus wird von einem Startvektor aus nacheinander in jede Koordinatenrichtung ein diskreter Suchzyklus durchgeführt. Führt dabei der Tastschritt in einer Richtung nicht zum Erfolg (Verbesserung des Gütewertes), so wird zusätzlich die entgegen gesetzte Richtung abgetastet.
  • Nach einem Tastphase erfolgt die Extrapolation. In Richtung des ermittelten steilsten Abstieges wird ein größerer Schritt ausgeführt. Ein erneuter Extrapolationsschritt ist immer doppelt so groß wie der vorherige, solange dabei eine Verbesserung des Zielfunktionswertes erreicht wird. Schießt das Verfahren über den tiefsten Punkt hinaus oder in einen verbotenen Bereich, erfolgt eine schrittweise Verringerung der Extrapolationsschrittweite.
  • Das Hooke-Jeeves-Verfahren regelt die anfängliche Tastschrittweite herunter, wenn längere Zeit keine Verbesserung des Zielfunktionswertes mehr erreicht werden konnte. Meist gelangt dann diese Schrittweite in Größenordnungen der stochastischen Rauigkeiten der Zielfunktion und das Optimierungsverfahren bleibt hängen, weil die partiellen Ableitungen total verfälscht werden (die reale Steigung wird nicht mehr erkannt).


Optimierung nach biologischem Vorbild

Einfuehrung

Die natürliche Evolution der Lebewesen hat erstaunliche Lösungen für das Funktionieren von Organismen in unterschiedlichsten ökologischen Nischen hervorgebracht. Die einzelnen Arten von Lebewesen stellen offensichtlich optimierte Lösungen für das Überleben in ihrer jeweiligen Umwelt dar.

Schon sehr früh haben Menschen begonnen, "Lösungen" der Natur auf die Technik zu übertragen. Das älteste dokumentierte Beispiel der systematischen Übertragung solcher Natur-Phänomene auf technische Objekte ist Leonardo da Vincis Idee, den Vogelflug auf Flugapparate zu übertragen. Seit ca. 1/2 Jahrhundert fasst man solche Bestrebungen unter dem Begriff Bionik zusammen.

Die sogenannten evolutionären Algorithmen sind eine Klasse von Optimierungsverfahren, deren Funktionsweise von der Evolution der Lebewesen inspiriert wurde. Ausgangspunkt für die Entwicklung von evolutionären Algorithmen ist eine Abstraktion der realen natürlichen Evolution auf das Grundprinzip ihrer Wirkungsweise.


Grundprinzip:

  • Evolutionäre Algorithmen erzeugen aus einer Elterngeneration (von Parametersätzen) durch die genetischen Prozeduren (Mutation, Rekombination) eine Kindergeneration. Eine Teilmenge der Kinder wird nach Fitness-Selektion (anhand des Verhaltens) zur neuen Elterngeneration.
  • Die Parameter der genetischen Prozeduren sind selbst Bestandteil der Optimierung (Mutationsraten, Art der Rekombination).
  • Voraussetzung der Anwendung evolutionärer Verfahren auf ein System (z.B. Zielfunktion) ist, dass dieses eine hinreichende Kausalität zwischen Ursachen (Parameteränderungen) und Wirkungen (Verhaltensänderungen) vermittelt.


Analogiebeziehungen "Natur - Technik":

  1. Individuum: Anstatt eines lebenden Organismus wird von den evolutionären Algorithmen ein numerisches Modell des zu optimierenden Objektes benutzt.
  2. Population: Die Vielzahl von Individuen einer Art wird durch unterschiedliche Parametersätze eines numerischen Modells abgebildet.
  3. Genotyp: Der genetische Code eines Individuums (ATGC-Basen in DNA bzw. RNA) wird durch den binären Code des Modells repräsentiert (Modell-Parameter und -Algorithmen).
  4. Phänotyp: Das einzelne Individuum entsteht auf der Basis von Strukturbildungsprozessen ausgehend vom Genotyp in einer geeigneten Umgebung. Das konkrete Modellverhalten als Analogie zum Phänotyp entsteht im Prozess der Simulation des parametrisierten Modells in einer geeigneten Hard- und Software-Umgebung.
  5. Fortpflanzung: die Erzeugung von Kind-Genotypen mittels Rekombination und Mutation wird abgebildet durch Varianten-Generierung mittels genetischer Operatoren angewandt auf die Optimierungsvariablen als Teilmenge eines Parametersatzes.
  6. Selektion: In der Natur erfolgt die Selektion anhand des Fortpflanzungserfolges (Fitness) der Kind-Phänotypen. Dies entspricht der Varianten-Reduktion auf Basis der für die unterschiedlichen Parametersätze berechneten Zielfunktionswerte.


Genetische Algorithmen und Evolutionsstrategien


Die Entwicklung universeller Optimierungsverfahren nach dem Grundprinzip der natürlichen Evolution verlief seit den 1960-er Jahren in den USA und Deutschland in zwei unterschiedliche Richtungen:


1. Genetische Algorithmen (GA)

Dieser Typ von evolutionären Algorithmen wurde bekannt durch die Arbeiten der US-Amerikaner Holland und Goldberg. Die GA versuchen das biologische Vorbild möglichst 1:1 nachzubilden:

  1. Das Bit ist in Analogie zu den Nuklein-Basen die grundlegende Einheit für das Wirken der genetischen Operatoren:
    • Problematisch ist die Aufbereitung des Modells und seiner Parameter zur Erzielung einer hinreichend starken Kausalität zwischen Parameter- und Verhaltensänderung.
    • So ist z.B. die klassische binäre Codierung von reellen Zahlen als Gleitkommazahlen mit Exponent und Mantisse sehr ungünstig, da Änderungen von Bits im Exponenten unverhältnismäßig große Auswirkungen auf den Wert der Zahl besitzen.
  2. Mutation bewirkt das "Umklappen" von Bits in der Problem-Repräsentation entsprechend vorgegebener Wahrscheinlichkeiten:
    • Nachgebildet wird damit die Ursache von Mutationen im Sinne des Austauschs von Nuklein-Basen im Genotyp:
    • Die Veränderung einzelner Bit kann in Abhängigkeit von der Bit-Position in der Problem-Repräsentation zu extrem unterschiedlichen Verhaltensänderungen des Modells führen (von praktisch unmerklich bis katastrophal).
    • Die extremen Verhaltensänderungen ermöglichen freie Sprünge innerhalb des Suchraums. Damit können mit geringer Wahrscheinlichkeit auch Lösungen gefunden werden, welche durch stetige Verbesserung einer vorhandenen Lösung nicht erreichbar sind.
    • Anwendungsschwerpunkt der GA ist deshalb die Strukturoptimierung (ein Bit verkörpert z.B. eine Relation zwischen zwei Komponenten).
  3. Rekombination erfolgt nach dem Schema der Natur (dominant bzw. rezessiv).


2. Evolutionsstrategien(ES)

Dieser Typ von evolutionären Algorithmen wurde vor allem durch die Arbeiten von Schwefel und Rechenberg an der TU Berlin entwickelt. Die ES versucht, die Wirkung der natürlichen Evolution auf einem höheren Abstraktionsniveau nachzubilden, als die GA:

  1. Die reelle Zahl ist die grundlegende Einheit für das Wirken der genetischen Operatoren:
    • Geometrisch-stoffliche Parameter technischer Objekte können meist problemlos in Form reeller Zahlen repräsentiert werden.
    • Das ist günstig für eine starken Kausalität zwischen Parameter- und Verhaltensänderung.
    • Anwendungsschwerpunkt der ES ist deshalb die Parameteroptimierung für vorgegebene Systemstrukturen.
  2. Mutation bewirkt eine Zufallswahl aus einer Verteilungsfunktion um den aktuellen Wert der reell-wertigen Optimierungsvariablen:
    • Die durch Mutation erzeugten Parametersätze der Kindergeneration befinden sich auf der Zielfunktion immer in der Nähe der Elterngeneration (Diffusion anstatt Fluktuation).
    • ES finden im Unterschied zu GA ausgehend von einer Anfangslösung nur Optima, welche überwiegend durch kontinuierliche Verbesserungen erreichbar sind. Die ES kann deshalb meist nicht den gesamten Suchraum erkunden.
  3. Rekombination bewirkt eine gewichtete Mittelwertbildung aus beteiligten Optimierungsvariablen. Die kombinierten Parameter der Kinder liegen mit ihren Werten zwischen denen der an der Rekombination beteiligten Eltern.


Grundlagen zu den Evolutionsstrategien (ES)

Anwendungsbereich

Im Weiteren wird hier nur die ES vertieft betrachtet, weil Sie für ingenieurtechnische Optimierungen im Vergleich zu den genetischen Algorithmen (GA) einfacher und anschaulicher zu nutzen ist:

  • Da die ES eine direkte Problem-Präsentation in Form z.B. der reellen Zahlen benutzt, entfällt eine aufwändige Transformation für die Parameter-Optimierung bei vergebener Struktur des zu optimierenden Systems.
  • Der Optimierungsfortschritt ist für den menschlichen Beobachter als Driften einer Lösungsmenge auf der Zielfunktion zum Optimum nachvollziehbar, da chaotische Fluktuationen der Lösungen nicht stattfinden bzw. schnell eliminiert werden.

Die ES wurden ursprünglich entwickelt für die Optimierung mit verrauschter Zielfunktion bei Messungen am realen Objekt:

  • Damit bewältigen die ES auch das Rauschen numerischer Modelle infolge Rundungs- und Approximationsfehler der numerischen Lösung.
  • Die ES konvergieren über vereinzelte Unstetigkeitsstellen hinweg, wenn global im Suchraum hinreichend starke Kausalität besteht (ähnliche Ursachen führen zu ähnlichen Wirkungen).
  • Sie sind einsetzbar in Suchräumen, bei denen auf Grund der Mächtigkeit (Zahl der Optimierungsvariablen) klassische Verfahren versagen.

Auch ES können keine Wunder vollbringen und besitzen Grenzen bei der Anwendung:

  • Zielfunktionen mit vielen lokalen Optima verhindern meist das Finden des globalen Optimums.
  • Ist die Kausalität zu schwach, "zerfällt" die Lösung, indem es zu keiner Konvergenz kommt.
  • Bei wenigen Optimierungsvariablen und hinreichend glatten (nicht verrauschten) Zielfunktionen ohne Unstetigkeitsstellen sind klassische Gradienten- und Abtastverfahren besser geeignet. Es lohnt sich deshalb, Aufwand in die Realisierung einer "glatten" Zielfunktion zu investieren!


Notation von Evolutionsstrategien

Basisalgorithmus

Diese Schreibweise wurde von H.-P. Schwefel in seiner Dissertation 1975 eingeführt:

   +
(µ   λ) - Basisalgorithmus der Evolutionsstrategie
   ,
µ Eltern erzeugen in willkürlicher Folge
λ mutierte Nachkommen.
Komma:
  • die Eltern sterben sofort nach der "Fortpflanzung"
  • nur Nachkommen werden nach der Selektion zu Eltern einer neuen Generation.
  • der erreichte Zielfunktionswert kann sich dadurch auch verschlechtern
Plus:
  • auch die Eltern nehmen gleichberechtigt mit den Nachkommen an der Selektion für die nächste Generation teil.
  • es können theoretisch (und praktisch) unsterbliche Eltern entstehen.

Beispiele: (1+1)-ES :
einfachste Evolutionsstrategie mit 1 Elter und 1 Kind;
der Bessere von Beiden wird zum Elter der nächsten Generation. (1,7)-ES :
1 Elter und 7 Kinder;
von den 7 Kindern wird das Beste zum Elter der nächsten Generation.



===>>> Dieses Kapitel wird zur Zeit erarbeitet !!! <<<===


Vorläufige weitere Gliederung:

Optimierung nach biologischem Vorbild