Genetische Algorithmen Prof. Dr. Ottmar Beucher Dezember 2001
Genetische Algorithmen 1 Optimierungsaufgaben Ein einfaches Beispiel Prinzipielle Formulierung Lösungsansätze Genetische Algorithmen Anwendungen Zusammenfassung Inhalt
Genetische Algorithmen 1 Optimierungsaufgaben Lösungsansätze Hill-Climbing Verfahren Monte-Carlo-Verfahren Evolutionsstrategie Genetische Algorithmen Anwendungen Zusammenfassung Inhalt
Genetische Algorithmen 1 Optimierungsaufgaben Lösungsansätze Genetische Algorithmen Inhalt Mechanismen der natürlichen Evolution Der Genetische Code Mathematische Formalisierung Der Fundamentalsatz für Genetische Algorithmen Anwendungen Zusammenfassung
Genetische Algorithmen 1 Optimierungsaufgaben Lösungsansätze Genetische Algorithmen Anwendungen Inhalt Standortoptimierung bei Funksendern Statistische Modellierung von Last/Drehzahl-Daten Zusammenfassung
Genetische Algorithmen 1 Inhalt Optimierungsaufgaben Lösungsansätze Genetische Algorithmen Anwendungen Zusammenfassung
Genetische Algorithmen 2 Optimierungsaufgaben - Ein einfaches Beispiel Regressionsgerade: Finde die Gerade, die am besten zu den gemessenen Daten passt!
Genetische Algorithmen 2 Optimierungsaufgaben - Ein einfaches Beispiel Regressionsgerade: Finde die Gerade, die am besten zu den gemessenen Daten passt!
Genetische Algorithmen 2 Optimierungsaufgaben - Ein einfaches Beispiel Am besten heißt: Abstände der Messwerte sind optimal(=minimal) zur Geraden.
Genetische Algorithmen 2 Optimierungsaufgaben - Ein einfaches Beispiel Finde Parameter a, b, so dass der Abstand a x + b Messwerte optimal wird.
Genetische Algorithmen 3 Optimierungsaufgaben - Ein einfaches Beispiel Gegeben N Paare von Messwerten: (x 1, y 1 ), (x 2, y 2 ), (x 3, y 3 ),, (x N, y N ) Bekannt: linearer Zusammenhang f a,b (x) = a x + b Fehlermaß: (â, ˆb) = N (y k f a,b (x k )) 2 k=1 Gesucht Parameter â, ˆb mit: (â, ˆb) = min (a, b) a,b R
Genetische Algorithmen 4 Optimierungsaufgaben - Prinzipielle Formulierung F : U R n R Zielfunktion Gesucht x 0 U mit F ( x 0 ) = max x U F ( x) Maximum (Optimum) gegebenenfalls mit den Nebenbedingungen G( x 0 ) = 0 (G( x 0 ) 0)
Genetische Algorithmen 5 Prinzip: Lösungsansatz - Hill-Climbing Iteration in Richtung stärkster Steigung Nutze Information über grad F (analytisch, numerisch) Vorteile: Nutzt Informationen über Zielfunktion F Schneller Algorithmus Konvergenzanalyse (Iterationsdauer, Fehlerabschätzung) oft möglich Nachteile: Konvergenz zu lokalen Optima Nicht universell verwendbar
Genetische Algorithmen 6 Prinzip: Lösungsansatz - Monte-Carlo Sucht Zielfunktion unsystematisch ab Suchpunkte mit Zufallsgenerator erzeugt Vorteile: Universell verwendbar Benötigt keinerlei Zusatzinformationen über Zielfunktion F Suboptimale Lösungen können verlassen werden Nachteile: Sehr rechenaufwändig Keine Konvergenztheorie, keine Konvergenzsicherheit Keine Fehlerabschätzungen, keine à-priori-abschätzungen
Genetische Algorithmen 7 Prinzip: Lösungsansatz - Evolutionsstrategie Optimierung den Mechanismen der Evolution nachgebildet Suchpunkte mit stochastischen (genetischen) Operatoren erzeugt Vorteile: Nutzt Informationen über Zielfunktion F und stochastische Suche Universell verwendbar Mittlerer Rechenaufwand (vgl. mit Monte-Carlo-Methoden) Anwendung auf zeitvariate Zielfunktionen möglich Nachteile: Wenig Konvergenztheorie, keine absolute Konvergenzsicherheit wenig à-priori-abschätzungen, unklare Parameterwahl
Genetische Algorithmen 8 Mechanismen der natürlichen Evolution Eine Population von Individuen mit unterschiedlichen Merkmalen...
Genetische Algorithmen 8 Mechanismen der natürlichen Evolution... wird durch Umwelteinflüsse einem Selektionsdruck ausgesetzt.
Genetische Algorithmen 8 Mechanismen der natürlichen Evolution Fitte Individuen verbreiten (mehrfach) ihre Erbanlagen durch Kreuzung.
Genetische Algorithmen 8 Mechanismen der natürlichen Evolution Einige wenige Individuen erhalten mutationsbedingt neue Eigenschaften.
Genetische Algorithmen 8 Mechanismen der natürlichen Evolution Die neue Population wird dem Selektionsdruck ausgesetzt.
Genetische Algorithmen 8 Mechanismen der natürlichen Evolution Die (i.a. besser angepasste) neue Population:
Genetische Algorithmen 9 Mechanismen der natürlichen Evolution Der evolutionäre Optimierungsprozess ist durch drei zufallsbehaftete Basismechanismen gekennzeichnet: Selektion Kreuzung Mutation Diese Basismechanismen werden in der mathematischen Formalisierung des Evolutionsprozesses zu Genetischen Algorithmen zu stochastischen Operatoren.
Genetische Algorithmen 10 Der Genetische Code Gene Triplets 4-Basen-Alphabet
Genetische Algorithmen 11 Mathematische Formalisierung - Codierung Chromosom Gene U C A G Vereinfachung Vereinfachung Triplets Vereinfachung Binäre Strings Gene:{0, 1} Binäres Alphabet
Genetische Algorithmen 12 Mathematische Formalisierung - Optimierungsaufgabe Zielfunktion muss auf Binärstrings formuliert werden (Codierung), und wird interpretiert als Fitness der Binärstrings ( Individuen ) F : U {0, 1} n R Fitnessfunktion Gesucht x 0 U mit F ( x 0 ) = max x U F ( x) (maximale Fitness ) gegebenenfalls mit den Nebenbedingungen.
Genetische Algorithmen 13 Mathematische Formalisierung - Selektion Stochastischer Operator (z.b. Roulette-Rad) Population 0 1 0 0 0 0 1 0 0 1 1 1 0 0 0 1 1 0 1 1 Mating-Pool 1 1 0 1 1 1 1 0 1 1 1 1 0 0 0 0 1 0 0 0 Fitnessproportionale Selektion
Genetische Algorithmen 14 Mathematische Formalisierung - Kreuzung (Crossover) Mating-Pool 1 1 0 1 1 1 1 0 1 1 1 1 0 0 0 0 1 0 0 0 Stochastischer Operator Kreuzung (mit Wahrscheinlichkeit p c ) 1 1 0 1 1 0 1 0 0 0 1 1 0 0 0 1 1 0 1 1 Population nach Kreuzung 1 1 0 0 0 0 1 0 1 1 1 1 0 1 1 1 1 0 0 0
Genetische Algorithmen 15 Mathematische Formalisierung - Mutation Stochastischer Operator Mutation (mit i.a. kleiner Wahrscheinlichkeit) 1 1 0 0 0 0 1 01 1 1 1 1 0 1 1 10 1 0 0 0
Genetische Algorithmen 16 Fundamentalsatz - Der Begriff des Schemas Schema als Hyperfläche (-würfel) in [0, 1] n : Beispiel: 1 1 0 0 0 1 1 0 1 0 1 1 0 0 1 1 1 0 1 1 0 1 0 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 1 1 1 1 0 0 0 1 1 0 0 1 1 1 0 1 0 1 1 0 1 1 0 1 0 0 0 0 1 0 0 1 Schemata: 1 0 1 0 0 0 1 0 0 0 0 1 0 0 1
Genetische Algorithmen 17 Fundamentalsatz - Schema-Transfer bei Selektion p j = f j N i=1 f i = f j N f p(h) = j H = 1 f 1 N p j = j H j H f j f j N f M M H = N p(h) = 1 f j H f j
Genetische Algorithmen 18 Schema-Transfer bei Selektion M M H = M H 1 f 1 M H j H f j = M H fh f Übergang in den Mating-Pool für die n-te Generation: M M H (n + 1) = M H(n) fh f ( [fh ] ) k Fazit: (anfangs) exponentieller Selektionsdruck überdurchschnittliche Schemata. f für
Genetische Algorithmen 19 Fundamentalsatz - Schema-Transfer bei Kreuzung Beispiel: 1 0 + + + + + oder auch: + + + + + 1 0 1 0 + + + + + +1 0 + 1 + + + Schemata können zerstört werden, Kurze Schemata (δ(h) klein) haben bessere Überlebenschance, Schema-Individuen können neu entstehen.
Genetische Algorithmen 20 Fundamentalsatz - Schema-Transfer bei Mutation Beispiel 1 0 0 0 Schemata können (mit Mutationswahrscheinlichkeit) zerstört werden, Schemata mit wenig Bit (o(h) klein) haben bessere Überlebenschance, Schema-Individuen können neu entstehen.
Genetische Algorithmen 21 Fundamentalsatz - Das Schema-Theorem Satz: Ist H ein Schema mit der definierenden Länge δ(h) und mit der Ordnung o(h) in einem binär codierten (klassischen) Genetischen Algorithmus mit Kreuzungs-Wahrscheinlichkeit p c und Mutations- Wahrscheinlichkeit p m. Sei weiter P H (n) der relative Anteil der zum Schema H gehörenden Individuen in einer Population zum Iterationszeitpunkt n. Dann gilt: P H (n + 1) P H (n) f H(n) f(n) ( 1 p c δ(h) ) N 1 o(h)p m
Genetische Algorithmen 22 Fundamentalsatz - Beispiel
Genetische Algorithmen 22 Fundamentalsatz - Beispiel
Genetische Algorithmen 23 Anwendungen - Standortoptimierung Problem: Sehr sehr viele lokale Optima Riesige Datenmenge (1-10 Mio Gitterpunkte) Sehr aufwendige Zielfunktionsberechnung Geringe Antwortzeiten gefordert Fazit: Ausleuchtung eines Geländes Kein gradientenbasiertes Verfahren (lokale Optima) Kein Monte-Carlo-Verfahren (Aufwand) Lösung: Genetischer Algorithmus (10-100 Tsd Gitterpunkte) Hybridverfahren (GA plus Hill-Climbing)
Genetische Algorithmen 23 Anwendungen - Standortoptimierung Problem: Sehr sehr viele lokale Optima Riesige Datenmenge (1-10 Mio Gitterpunkte) Sehr aufwendige Zielfunktionsberechnung Geringe Antwortzeiten gefordert Fazit: Optimale Ausleuchtung eines Geländes Kein gradientenbasiertes Verfahren (lokale Optima) Kein Monte-Carlo-Verfahren (Aufwand) Lösung: Genetischer Algorithmus (10-100 Tsd Gitterpunkte) Hybridverfahren (GA plus Hill-Climbing)
Genetische Algorithmen 23 Anwendungen - Standortoptimierung Problem: Sehr sehr viele lokale Optima Riesige Datenmenge (1-10 Mio Gitterpunkte) Sehr aufwendige Zielfunktionsberechnung Geringe Antwortzeiten gefordert Fazit: Ausleuchtungsfunktion (Zielfunktion) Kein gradientenbasiertes Verfahren (lokale Optima) Kein Monte-Carlo-Verfahren (Aufwand) Lösung: Genetischer Algorithmus (10-100 Tsd Gitterpunkte) Hybridverfahren (GA plus Hill-Climbing)
Genetische Algorithmen 24 Anwendungen - Statistische Modellierung Drehzahl/Last-Messdaten (Landstraße) Aufgabe: Entwurf einer 2-dimensionalen parametrischen Verteilung Problem: Optimierung (Anpassung) von 12 Modellparametern Abschnittsweise Definition Lösung: Genetischer Algorithmus f(x, y) = f y (x) f(y x), f y (x) = e (Φ a(x)+φm(x)+φe(x)) x [0, 100]% Φ a (x) = χ [0,x a) (x) (α 1 µ 1 x), Φ e (x) = χ [x e,100] (x) (α 2 + µ 2 (x 100)) Φ m (x) = χ [x a,xe] (x) (δ + u(x m x)λ 1 (x x m ) + u(x x m )λ 2 (x m x))
Genetische Algorithmen 25 Zusammenfassung Genetische Algorithmen - neues Prinzip der Optimierung nach dem Vorbild der Natur Vorteile Universelle Einsetzbarkeit Einsetzbarkeit für große Probleme Einsetzbarkeit für zeitvariate Umgebungen Nachteile wenige theoretische Grundlagen keine gesicherte Konvergenz zum globalen Optimum Unklare Parameterwahl