Soft Control (AT 3, RMA) 12. Vorlesung Stochastische Optimierung Differential Evolution
12. Vorlesung im Aufbau der Vorlesung 1. Einführung Soft Control: Definition und Abgrenzung, Grundlagen "intelligenter" Systeme 2. Wissensrepräsentation und Wissensverarbeitung (Symbolische KI) Anwendung: Expertensysteme 3. Fuzzy-Systeme: Umgang mit unscharfem Wissen Anwendung: Fuzzy-Control 4. Konnektionistische Systeme: Neuronale Netze Anwendung: Identifikation und neuronale Regler 5. Stochastische Optimierung (Genetische Algorithmen Simulated Annealing, Differential Evolution) Anwendung: Optimierung 1. Genetische Algorithmen 2. Simulated Annealing 3. Differential Evolution 6. Zusammenfassung & Literaturhinweise 315
Differential Evolution: Einführung Differential Evolution (DE) gehört, wie auch genetische Algorithmen, zu den Populations-basierten Optimierungsverfahren DE hat kein natürliches Vorbild DE wurde 1996 von Storn und Price vorgestellt R. Storn, R. and K. Price, K. Differential Evolution - A Simple and Efficient Heuristic for Global Optimization over Continuous Spaces, Journal of Global Optimization, 11, (1997) pp. 341 359. Verfahren kann direkt auf Minimum- und Maximum-Probleme angewandt werden (siehe GA nur Maximum-Probleme) Anwendungsgebiet Optimierung in mehrdimensionalen Suchräumen mit Gleitkommazahlen z.b. Reglerauslegung 316
Differential Evolution: Grundidee DE dient zur Suche eines Optimums in einem mehrdimensionalen kontinuierlichem Such-Raum Eine Lösung (x, potenzielles Optimum) wird durch einen Vektor mit der Dimension (D) des Suchraums beschreiben x1 x2 x x D Die Elemente des Vektors sind Fließkommazahlen: Der Suchraum wird mit mehreren Lösungen (Vektoren, Individuen) gleichzeitig durchsucht (Populations-basiert) Die Menge der Lösungen heißt Population (p), mit N Individuen p D x 1 2, x,, x N x i, Die Güte einer Lösung wird durch eine Funktion beschrieben f ( x) : D : Gütefunktional, Fitness-Funktion x i 317
Differential Evolution: Grundalgorithmus 1/2 Initialisierung Mutation Rekombination Selektion Initialisierung Initiale Population erzeugen (z.b. Zufallslösungen) Mutation Eine neue zufällige Lösung durch Änderung einer bestehenden Lösung der alten Generation erzeugen Rekombination Zwei Lösungen zu einer neuen Lösung vereinen Selektion Lösung für neue Generation ermitteln 318
Differential Evolution: Grundalgorithmus 2/2 4 Vektoren der alten Generation 3 Vektoren (zufällig gewählt, x r1,x r2,x r3 ) Jeder Vektor der alten Generation ist genau einmal dieser Vektor 1 Vektor (x) Mutation Rekombination 1 Donator-Vektor (v) 1 Versuchs-Vektor (u) Selektion Neuer Vektor (x + ) Neue Generation 319
Differential Evolution: Mutation Für jeden Vektor x der alten Generation bestimme zusätzlich drei Vektoren aus der alten Generation (x r1,x r2,x r3 ), sodass gilt: x x r1 x r2 x r3 Bestimme den Donator-Vektor (v) als Linear-Kombination von x r1,x r2,x r3 v x F ( x x ), F 0,2 r1 * r2 r3 Anschauliche Interpretation Erstelle eine neue Lösung auf Basis von x r1 aus der Differenz von x r2 und x r3 Verstärke Heterogenität der Lösungen v F*(x r2 -x r3) x r1 x r3 x r2 x r2 -x r3 x und v bilden gemeinsam das Elternpaar für die Rekombination 320
Differential Evolution: Rekombination Erzeuge einen Versuchs-Vektor (u) durch Mischen der Elemente von x und v Die Mischung der Element von x und v erfolgt zufallsgesteuert x,v,u sind Vektoren der Dimension D x x x 1 2 D v v, v u u, u CR ist die Cross-Over-Rate: CR 0,1 j ist eine ganzzahlige Zufallszahl: j 1, D r i ist eine reelle Zufallszahl: 0,1 u i vi,falls ri xi,sonst x und u bilden Konkurrenten bei der Selektion 1 2 D r i 1 2 D CR oder i j j sorgt dafür, dass sich x und u in mindestens einem Element unterscheiden CR ist ein Parameter des Optimierungsverfahrens 321
Differential Evolution: Selektion Wähle einen der beiden Vektoren x, u für die neue Generation aus Auswahl erfolgt ausschließlich auf Basis der Güte (Fitness) eines Individuums (Vektor) Nur das bessere der beiden Individuen wird in die neue Generation übernommen Kein Abhängigkeit von Zufallsgrößen bei der Selektion x u, falls f(u) x, sonst Minimierung f(x) f: zu optimierendes Gütefunktional (Fitness-Funktion) Bei gleicher Güte wird das durch Mutation und Rekombination entstandene Individuum in die neue Generation übernommen Verstärke Heterogenität über Generationen hinweg Selektion in DE hat impliziten Elitismus u, falls f(u) x, sonst Nur bessere oder gleichgute Individuen bilden die neue Generation x Maximierung f(x) 322
Differential Evolution: Anwendungsbeispiel Ackleys Funktion f ( x 2-dimensonale kontinuierliche Funktion mit mehreren lokalen Minima und einem globalen Minimum bei (0,0) 1, x 2 ) 20 e 20* e 0,2* 0.5*( x 2 1 x 2 2 ) e 0.5*(cos(2* * x 1 ) cos(2* * x 2 )) Optimierungsproblem: Minimiere f(x 1,x 2 ) 323
Differential Evolution: Anwendungsbeispiel (Initialisierung) Parameter für Optimierung 20 Individuen CR: 50% F: 0,8 Initialpopulation Minimum: 4,355 324
Differential Evolution: Anwendungsbeispiel (1. neue Generation) Minimum: 4,355 325
Differential Evolution: Anwendungsbeispiel (2. neue Generation) Minimum: 4,355 326
Differential Evolution: Anwendungsbeispiel (3. neue Generation) Minimum: 3,866 327
Differential Evolution: Anwendungsbeispiel (4. neue Generation) Minimum: 1,664 328
Differential Evolution: Anwendungsbeispiel (5. neue Generation) Minimum: 1,664 329
Differential Evolution: Anwendungsbeispiel (15. neue Generation) Minimum: 0,348 330
Differential Evolution: Anwendungsbeispiel (50. neue Generation) Minimum: 0,001 331
Differential Evolution: Anwendungsbeispiel (50. neue Generation) Minimum: 0,001 332
Zusammenfassung 12. VL: Vergleich stochastischer Optimierungsverfahren Genetische Algorithmen und Genetische Programmierung Optimierung durch Mutation und Auslese nach dem Vorbild der Evolution in biologischen Systemen Paralleles Durchsuchen des Suchraums Gut geeignet für neue Rechnerstrukturen mit Multi-Core-Prozessoren Bei Fließkommazahlen hoher Aufwand für Codierung der Lösung Simulated Annealing Optimierungsverfahren inspiriert durch Entstehung von Gitterstrukturen in Kristallen Nur eine Lösung wird zum Absuchen verwendet Keine Geschwindigkeitsvorteile durch Multi-Core-Prozessoren Besonderheit: temporäre Verschlechterung wird als Verbesserung aufgefasst Differential Evolution Künstliches Populations-basiertes Optimierungsverfahren Gut geeignet für neue Rechnerstrukturen mit Multi-Core-Prozessoren Verfahren zur Optimierung von Fließkommazahlen 333
Literatur (ergänzend/weiterführend) 1/2 Kapitel 1 bzw. ganze Vorlesung: Allgemeines zu Methoden der KI Götz, Güntzer (Hrsg.): Handbuch der künstlichen Intelligenz. Oldenbourg Verlag, 2000. "Umfassendes Nachschlagewerk für Interessierte. King R.E.: Computational Intelligence in Control Engineering. Marcel Dekker, 1999 "Sehr schöne Übersicht zu Soft-Control. Kapitel 2: Expertensysteme Polke, M.: Prozeßleittechnik. Oldenbourg Verlag, 1994. "Einige Ideen für die Anwendung in der Leittechnik in Kapitel 13. Ahrens, W.; Scheurlen, H.-J.; Spohr, G.-U.: Informationsorientierte Leittechnik. Oldenbourg Verlag, 1997. "Einführung in XPS für leittechnische Aufgaben (und etwas Fuzzy) in Kapitel 9. Lunze, J.: Künstliche Intelligenz für Ingenieure I und II. Oldenbourg Verlag, 1994/1995. "Sehr Ausführliche Behandlung von XPS. 334
Literatur (ergänzend/weiterführend) 2/2 Kapitel 3: Fuzzy Kiendl, H.: Fuzzy Control methodenorientiert. Oldenbourg Verlag, 1997. "Ausführliche Darstellung mit kurzer Einführung in die Regelungstechnik und sehr sehr ausführlichem Beispiel. Kapitel 4: Neuro Zakharian, S.; Ladewiw-Riebler, P.; Thoer, S.: Neuronale Netze für Ingenieure. Vieweg Verlag, 1998. "Kompakte und gut verständliche Darstellung mir Anwendungen in der Regelungstechnik." Kapitel 5: Genetische Algorithmen Goley, D.A.: An Introduction to Genetic Algorithms for Scientists and Engineers. World Scientific Publishing, 1999. "Sehr ausfürliche Darstellung." Fleming, P.J.; Purshouse, R.C.: Genetic algorithms in control systems engineering. IFAC PROFESSIONAL BRIEF. "Sehr gute Übersicht. 335
Danksagung Vielen Dank für Ihr Interesse während des Semesters 336