Fundamente der Computational Intelligence (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl für Algorithm Engineering Wintersemester.

Slides:



Advertisements
Ähnliche Präsentationen
Genetische Algorithmen für die Variogrammanpassung
Advertisements

Genetische Algorithmen
Genetische Algorithmen
Ingo Rechenberg PowerPoint-Folien zur 6. Vorlesung Evolutionsstrategie I Handlungsregeln, die aus der nichtlinearen Theorie der (1 + 1) - ES folgen.
6. Vorlesung Evolutionsstrategie I
Vorlesung Biometrie für Studierende der Veterinärmedizin Begriff der Zufallsgröße Ergebnisse von Zufallsexperimenten werden als Zahlen dargestellt:
Praktische Optimierung
Einführung in die Informatik für Naturwissenschaftler und Ingenieure
Einführung in die Programmierung Wintersemester 2013/14 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Fundamente der Computational Intelligence (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl für Algorithm Engineering Wintersemester.
Ausgleichungsrechnung I
Einführung in die Programmierung Wintersemester 2012/13 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Fundamente der Computational Intelligence
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Programmierung
Einführung in die Programmierung Wintersemester 2011/12 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Mehrkriterielle Optimierung mit Metaheuristiken
Fundamente der Computational Intelligence
Fundamente der Computational Intelligence
Einführung in die Programmierung
Mehrkriterielle Optimierung mit Metaheuristiken
Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure
Einführung in die Informatik für Naturwissenschaftler und Ingenieure
Einführung in die Informatik für Naturwissenschaftler und Ingenieure
Praktische Optimierung
Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Programmierung Wintersemester 2009/10 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Fundamente der Computational Intelligence (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl für Algorithm Engineering Wintersemester.
Fundamente der Computational Intelligence (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl für Algorithm Engineering Wintersemester.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fakultät.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Praktische Optimierung
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fakultät.
Mehrkriterielle Optimierung mit Metaheuristiken
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Fundamente der Computational Intelligence (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl für Algorithm Engineering Wintersemester.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Programmierung Wintersemester 2009/10 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Praktische Optimierung
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fakultät.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Programmierung Wintersemester 2011/12 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Programmierung
Einführung in die Programmierung Wintersemester 2013/14 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Programmierung
Einführung in die Programmierung Wintersemester 2012/13 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Fundamente der Computational Intelligence (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl für Algorithm Engineering Wintersemester.
ANN - Simulator Rainer Trummer Ferdinand Schober Christian Spielberger.
Evolutionäre Algorithmen Rüdiger Brause
Praktische Optimierung
 Präsentation transkript:

Fundamente der Computational Intelligence (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl für Algorithm Engineering Wintersemester 2005/06

Rudolph: FCI (WS 2005/06) Kap. 3: Evolutionäre Algorithmen2 Kapitel 3: Evolutionäre Algorithmen Inhalt Grundlagen Optimierung Nachbarschaftssuche (1+1)-EA - Erwartete Laufzeit Counting Ones Leading Ones - Konvergenz Populationsbasierte EA EA im B n EA im R n

Rudolph: FCI (WS 2005/06) Kap. 3: Evolutionäre Algorithmen3 Kapitel 3: Evolutionäre Algorithmen Nachtrag: EP-Selektion (Beispiel für Verlust des Besten) = = 2 bei Minimierung, q = 2 Index1234 f(x) Rang4123 Siege0222 Sortierrang4321 Auswahl--++ Annahme: Sortierung nach Anzahl der Siege mit selection sort abhängig von Implementierung! Lösung: Bestem vorher q+1 Siege zuweisen!

Rudolph: FCI (WS 2005/06) Kap. 3: Evolutionäre Algorithmen4 Kapitel 3: Evolutionäre Algorithmen Initialisierung der Population repeat Reproduktionsselektion Rekombination Mutation Überlebensselektion until Abbruch Schematischer Ablauf eines Evolutionären Algorithmus GA ES EP x x x x - - x x - x x x - x x Heute: Keine Unterscheidung zwischen GA/ES/EP, da Übergänge fließend

Rudolph: FCI (WS 2005/06) Kap. 3: Evolutionäre Algorithmen5 Kapitel 3: Evolutionäre Algorithmen EA im R n Selektion: unabhängig von Representation Rekombination:k-Punkt-Crossover, Uniform Crossover funktioniert auf allen Produkträumen! zusätzlich: Intermediäre Rekombination z i = i x i + (1- i ) y i, i (0,1) i auf Verbindungslinie zwischen x und y sonst innerhalb des durch x und y definierten Hyperrechtecks auch: Varianten mit > 2 Eltern Mutation:additiv via Normalverteilung N(0, C), C Kovarianzmatrix häufig: C = 2 ¢ I n oder individuelle i auch: Cauchyverteilung (Levy flights) oder Mixturen notwendig: Anpassung von C bzw. i während Suche!

Rudolph: FCI (WS 2005/06) Kap. 3: Evolutionäre Algorithmen6 Kapitel 3: Evolutionäre Algorithmen Optimierung ohne Anpassen (reine Zufallssuche) f(x) = || x || 2 = xx min! wobei x S n (r) = { x R n : || x || r } Z k ist gleichverteilt in S n (r) X k+1 = Z k falls f(Z k ) < f(X k ), sonst X k+1 = X k V k = min { f(Z 1 ), f(Z 2 ), …, f(Z k ) } bester ZF-Wert bis Iteration k P{ || Z || x } = P{ Z S n (x) } = Vol( S n (x) ) / Vol( S n (r) ) = ( x / r ) n, 0 x r P{ || Z || 2 x } = P{ || Z || x 1/2 } = x n/2 / r n, 0 x r 2 P{ V k x } = 1 - ( 1 - P{ || Z || 2 x } ) k = 1 – ( 1 – x n/2 / r n ) k E[ V k ] r 2 (1 + 2/n ) k -2/n für große k

Rudolph: FCI (WS 2005/06) Kap. 3: Evolutionäre Algorithmen7 Kapitel 3: Evolutionäre Algorithmen Optimierung ohne Anpassen (lokal gleichverteilt) f(x) = || x || 2 = xx min! wobei x S n (r) = { x R n : || x || r } Z k ist gleichverteilt in [-r, r], n = 1 X k+1 = X k + Z k falls f(X k + Z k ) < f(X k ), sonst X k+1 = X k 0 r0 ab hier: wie reine Zufallssuche!

Rudolph: FCI (WS 2005/06) Kap. 3: Evolutionäre Algorithmen8 Kapitel 3: Evolutionäre Algorithmen (1+1)-EA mit Schrittweitenanpassung (1/5-Erfolgsregel, Rechenberg 1973) Idee: Wenn viele erfolgreiche Mutationen, dann Schrittweite zu klein. Wenn wenige erfolgreiche Mutationen, dann Schrittweite zu groß. Ansatz: Protokolliere erfolgreiche Mutationen in gewissem Zeitraum Wenn Anteil größer als gewisse Schranke (z. B. 1/5), dann Schrittweite erhöhen, sonst Schrittweite verringern bei infinitesimal kleinem Radius ist Erfolgsrate = 1/2

Rudolph: FCI (WS 2005/06) Kap. 3: Evolutionäre Algorithmen9 Kapitel 3: Evolutionäre Algorithmen Schrittweite? Normalverteilter Vektor Z = N(0, 2 I n ) hat zufällige Länge || Z || Man kann zeigen: E[ || Z || ] ( n – ½ ) ½ mit Varianz von etwa 2 / 2 Satz: X = (x 1, …, x n ) sphärisch verteilt gdw. X = r ¢ U, wobei r nicht negative Zufallsvariable, U n-dim. Zufallsvektor gleichverteilt auf Kugelrand und = im Sinne von gleich in Verteilung Definition: Zufallsvektor X = (x 1, …, x n ) sphärisch verteilt wenn X für jede orthonormale Matrix T die gleiche Verteilung wie TX besitzt (also rotationsinvariant ist).

Rudolph: FCI (WS 2005/06) Kap. 3: Evolutionäre Algorithmen10 Kapitel 3: Evolutionäre Algorithmen Wenn Zufallsschrittweite r wie n ( )-verteilt, dann X normalverteilt N(0, 2 I n ) Für große n: Normalverteilung verhält sich ähnlich wie Kugelrandverteilung! fast alle sphärischen Verteilungen verhalten sich für große n ähnlich! fast alle? alle mit finiter Varianz!

Rudolph: FCI (WS 2005/06) Kap. 3: Evolutionäre Algorithmen11 Kapitel 3: Evolutionäre Algorithmen Analyse (1, )-EA mit f(x) = || x || 2 || Y k || 2 = || X k + r k U k || 2 = (X k + r k U k ) (X k + r k U k ) = X k X k + 2r k X k U k +r k 2 U k U k = ||X k || 2 + 2r k X k U k + r k 2 ||U k || 2 = ||X k || 2 + 2X k U k + r k 2 = 1 da das zufällige Skalarprodukt xU die gleiche Verteilung hat wie ||x|| B, wobei Zufallsvariable B betaverteilt mit Parametern (n-1)/2 auf [-1, 1] ist, folgt || Y k ||2 = || X k || 2 + 2r k || X k || B + r k 2 da der (1, ) den besten Wert aus Versuchen selektiert, folgt || X k+1 || 2 = || X k || 2 + 2r k || X k || B 1: + r k 2

Rudolph: FCI (WS 2005/06) Kap. 3: Evolutionäre Algorithmen12 Kapitel 3: Evolutionäre Algorithmen || X k+1 || 2 = || X k || 2 + 2r k || X k || B 1: + r k 2 bedingte Erwartungswerte auf beiden Seiten E|| X k+1 || 2 = || X k || 2 + 2r k || X k || E[ B 1: + r k 2 Ansatz: r k = || X k || E|| X k+1 || 2 = || X k || || X k || 2 E[ B 1: + 2 || X k || 2 wg. Symmetrie von B folgt E[B 1: ] = - E[B : ] < 0 E|| X k+1 || 2 = || X k || || X k || 2 E[ B : + 2 || X k || 2 = || X k || 2 (1 – 2 E[B : ] + 2 ) Parabelscheitel bei * = E[B : ], also E|| X k+1 || 2 = || X k || 2 ( 1 – E[B : ] 2 )