6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des...

32
6 Genetic Algorithms and Neuronal Networks

Transcript of 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des...

Page 1: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

6 Genetic Algorithms and Neuronal Networks

Page 2: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Praktikum KI SoSe 2005

Überblick

Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche nach einer „intelligenten“ Lösung Problemlösung mit Heuristiken Planung & Robotik Logik Expertensysteme Lernen

Page 3: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Einführung

Bisher Uninformierte Suche nach „einer Lösung“ Uninformierte Suche nach „der besten Lösung“ Suche nach der besten Lösung unter Verwendung von Heuristiken

Problem Der Suchraum ist oft sehr groß Die Suche nach der optimalen Lösung kann sehr lange dauern Die Suche nach der optimalen Lösung kann am Platzbedarf scheitern

Page 4: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Einführung

Idee: Suchverfahren nutzen, die möglichst effizient eine möglichst gute – wenn möglich die optimale – Lösung finden: Der Weg zur Lösung ist oft nicht von Interesse, es reicht oft aus, einen

Zustand zu finden, der den Kriterien für einen Zielzustand genügt, Beispiele:

Eine Konfiguration, so dass das 8-Damen Problem gelöst ist (sich keine Damen bedrohen)

Eine Reihenfolge von Städten, so dass der Traveling Salesman bei seiner Rundreise einen möglichst kurzen (den kürzesten) Weg zurücklegt

Beste = optimale Lösung in Bezug auf eine Zielfunktion gesucht

Page 5: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Lokale Suche

Der Pfad bzw. der bei der bisherigen Suche betrachtete Teil des Suchraumes werden nicht gespeichert

Ausgehend vom aktuellen Zustand = der aktuellen Position im Zustandraum wird nach einem „besseren Zustand“ gesucht

Ein Zustand z1 ist besser als Zustand z0, wenn der Zielfunktionswert für z1 größer ist, d.h. f(z1) > f(z0)

Z0Z1

f(z1)

f(z0)

Page 6: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Lokale Suche

Page 7: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Lokale Suche

Eigenschaften der Zielfunktion

lokalesMaximum

Ebene

globalesMaximum

Page 8: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Lokale Suche

Eigenschaften des Suchraumes Diskret

Anzahl der Nachfolger Kontinuierlich

Dimension des Raumes Richtung des Schrittes Schrittweite Differenzierbar

f(p)

f(n3)

f(n4)

f(n5)

f(n2)

f(n1)?

Page 9: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Lokale Suche

Diskrete Algorithmen bestimmen nur Richtung (Nachfolger)

Kontinuierliche Algorithmen bestimmen (meist) 1. Richtung

2. Schrittweite

Ideen, die Richtung auszuwählen, sind übertragbar I.A. vom diskreten in den kontinuierlichen Fall, ggf. mittels

Differenzierbarkeit Vom kontinuierlichen Fall in den diskreten, wenn keine höheren

Ableitung benutzt werden

Page 10: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Hill-Climbing Search

Speichert jeweils nur einen Zustand Bewegt sich nur in Richtung besserer Zustände Kann in lokalen Maxima „hängenbleiben“ Ebenen: stoppen / zyklisch wandern?

Page 11: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Hill-Climbing Search

Steepest ascend hill-climbing: wählt immer den Zustand mit der größten Verbesserung (steilstem Anstieg der Zielfunktion) als Nachfolgezustand

Stochastic hill-climbing: wählt zufällig einen möglichen Nachfolgezustand aus, für den der Zielfunktionswert größer ist (die Wahrscheinlichkeit kann an den Anstieg gekoppelt sein)

First-choice hill-climbing: der erste mögliche Nachfolgezustand mit einem besseren Funktionswert wird gewählt (es müssen nicht alle Nachfolgezustände generiert werden!)

Random-restart hill-climbing: mehrfache Wiederholung der gesamten Suche mit zufälligem Startzustand – größere Wahrscheinlichkeit, einen Zielfunktionswert nahe am Maximum zu erreichen

Page 12: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Hill-Climbing Search

Erfolg von hill-climbing Methoden hängt von Beschaffenheit der Zielfunktion ab (viele / wenige lokale Extrema …)

Größtes Problem der hill-climbing-Algorithmen: Lokale Maxima Lösungsmöglichkeiten:

Random-restart hill-climbing Random-restart hill-climbing in der Nähe der gefundenen Lösung

Page 13: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Simulated Annealing Search

Ziel: Durch kontrollierte Verschlechterung der Zielfunktion lokalen Maxima entrinnen

Hintergrund physikalisch: Annealing: erhitzen und langsames Abkühlen (tempern, härten) von,

z.B. Glass oder Metall – Ziel ist ein weniger brüchiges Material Idee: Teilchen bewegen sich bei hohen Temperaturen recht stark, durch

langsames Abkühlen finden die Teilchen nach und nach feste Positionen im Gitter

Die Geschwindigkeit beim Abkühlen hat großen Einfluß darauf, ob sich die Teilchen in einem möglichst regulären Gitter anordnen

Eine solche kristalline Struktur entspricht dem Zustand minimaler Energie des Materials

Zu schnelles Abkühlen bremst die Teilchenbewegung bevor sie einen Gitterpunkt erreichen können und führt zu (ungewünschtem) lokalem Minimum

Page 14: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Simulated Annealing Search

Teilchenbewegung bei hoher Temperatur

Page 15: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Simulated Annealing Search

Teilchenbewegung bei mittlerer Temperatur

Page 16: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Simulated Annealing Search

Teilchenbewegung bei niedriger Temperatur

Page 17: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Simulated Annealing Search

Die Energie des Nachfolgezustands unterliegt dabei der Boltzmann-Verteilung

P(E) ~ exp(-E/kT)mit: E = Energie des Zustandes k = Boltzmann Konstante (k = 1.380 6503 × 10-23 / ) T = Temperatur

D.h. die Wahrscheinlichkeit einen energiereichen Nachfolgezustand anzutreffen nimmt mit der Temperatur ab.

Page 18: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Simulated Annealing Search

Algorithmus: Wähle Nachfolgerkandidat K zufällig aus Bestimme anhand des aktuellen Zielfunktionswertes (ZFW) und

des ZFW des Kandidaten K eine Übergangswahrscheinlichkeit p(K)

Mit Wahrscheinlichkeit p(K) wechsle zu K Falls kein Übergang, so wähle neuen Nachfolgekandidaten K‘

zufällig aus Aus allen Nachfolgern Aus den verbleibenden Nachfolgern

Termination Falls kein Nachfolger mehr vorhanden Nach einer bestimmten Zeit / Iterationszahl Wenn keine starke Verbesserung mehr erfolgt Wenn der Benutzer abbricht …

Page 19: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Simulated Annealing Search

Metropolis et al. definieren für eine thermodynamische Simulation eine Funktion die dem Übergang von Energieniveau E1 nach Energieniveau E2 folgende Wahrscheinlichkeit zuweist:

D.h. Übergänge zu einem energieärmeren Zustand werden immer (mit Wahrscheinlichkeit 1) vollzogen, Übergänge zu einem energiereicheren Zustand nur mit einer von der Temperatur abhängigen Wahrscheinlichkeit entsprechend der Boltzmann-Verteilung.

12

12/)(

21

)(12

EE

EEeEp

kTEE

Page 20: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Simulated Annealing Search

Simulated Annealing benutzt die Metropolis-Funktion um einen Zustandsübergang zu bewerten

Ein besserer Zielfunktionswert entspricht dabei einem geringeren Energieniveau

D.h. bei der Suche nach dem maximalen Zielfunktionswert werden Nachfolgerzustände mit einem größeren Zielfunktionswert

immer gewählt (ggf. der Nachfolger mit dem besten ZF-Wert)-> up-hill

werden Übergänge zu einem Nachfolgerzustand mit kleinerem Zielfunktionswert mit einer temperaturabhängigen Wahrscheinlichkeit akzeptiert-> down-hill

Page 21: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Simulated Annealing Search

?

Page 22: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Simulated Annealing Search

?

?

?k T

EE

e

p12

1

Page 23: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Simulated Annealing Search

Der Algorithmus benötigt folgende Komponenten Eine Zustandsbeschreibung Eine „Nachfolgerfunktion“, d.h. eine Funktion, die den aktuellen Zustand

zufällig in einen neuen Zustand überführt (bei zu großen Änderungen gehen die „guten Eigenschaften“ des Zustandes verloren, die Suche wird stochastisch, bei zu kleinen Änderungen bleibt der Algorithmus evtl. in lokalen Maxima hängen)

Eine Zielfunktion, deren Wert optimiert (minimiert / maximiert werden soll)

Werte für die Kontrollparameter k und T und die Anzahl der Iterationen; T wird oft durch einen ‚annealing schedule‘ gesteuert und schrittweise verringert, wobei das Temperaturniveau jeweils für einige Iterationen konstant bleibt

Page 24: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Simulated Annealing Search

Für den Übergang zu Nachfolgerknoten mit einem schlechteren Zielfunktionswert: hängt die Übergangswahrscheinlichkeit von der Energiedifferenz ab –

sehr viel schlechtere Nachfolgerzustände sind „unwahrscheinlicher“ als nur etwas schlechtere (Term E2-E1)

hängt die Übergangswahrscheinlichkeit von der Temperatur ab – je geringer die Temperatur, um so geringer die Übergangswahrscheinlichkeit (Term kT)

Der Algorithmus terminiert „wahrscheinlich“, wenn die Temperatur „oft genug“ gesenkt wurde

Page 25: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Genetic Algorithms

Bisherige lokale Verfahren verwenden immer nur einen Nachfolgezustand

Kombination verschiedener Nachfolger teilweise auch viel versprechend

Erzeugter Kombinationszustand ist oftmals kein direkter Nachfolger

Kombination muss gültigen Zustand erzeugen

=> Genetische Algorithmen

Page 26: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Genetic Algorithms

Algorithmus in Anlehnung an die natürliche Auslese Statt einer (zufälligen) Generierung eines Nachfolgerzustandes zum

aktuellen Zustand werden zwei Elternzustände „gekreuzt“ und der entstandene Zustand eventuell „mutiert“

Terminologie Individuum: Zustandskodierung, meist als Binärstring Population: Menge von Individuen, die Ausgangspopulation besteht aus

zufällig erzeugten Individuen Fitness Funktion: Zielfunktion Reproduktion: erhalten von guten Individuen Kreuzung: zufällige Kombination aus den Binärstrings zweier

Individuen Mutation: zufällige Änderungen an einem Individuum (Kippen von Bits)

Page 27: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Genetic Algorithms

Ablauf des Algorithmus Bewertung der Fitness aller Individuen der aktuellen Population Berechnung der Wahrscheinlichkeit der Auswahl zur Reproduktion (z.B.

relative Fitness = f(t) / Summe f(ti) über alle i)

Wähle entsprechend der Reproduktionswahrscheinlichkeit Elternzustände aus und erzeuge durch Reproduktion, Kreuzung und Mutation

Page 28: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Genetic Algorithms

Beispiel: 8-Damen

Page 29: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Genetic Algorithms

Entscheidend: Zustandsbeschreibung Bsp: Travelling Salesman Problem

Liste der Städte in Reihenfolge des Besuchs Adjazenz-Liste

Stelle i in der Liste gibt an, welches der Nachfolger von i ist Ordinal-Represenation

Zwei Listen: Referenzliste und Tourliste Arbeite Tourliste sequenziell ab, nehme Element i aus aktueller

Referenzliste und lösche es => Referenzliste wird immer kleiner Matrix-Representation

Binäre nxn-Matrix, mij=1, wenn i vor j besucht wird

Permutationsdarstellung Liste binärer Permutationen (vertausche i und j), die sequenziell auf

Referenzliste angewandt wird

Page 30: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Genetic Algorithms

Jede Zustandsbeschreibung bedingt andere Definition von Cross-Over und Mutationen

Cross-Over eventuell mit Nachbearbeitungsschritt, um gültigen Zustand zu erzeugen

Bsp: TSP mit Liste der Städte in Reihenfolge des Besuchs:

(2,4|3,1)

-> (2,4,1,2) -> (2,4,1,3)

(4,3|1,2)

Page 31: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Genetic Algorithms

Fazit in AIMA:

„… At present it is not clear, whether the appeal of genetic algorithms arises from their performance or from their aesthetically pleasing origins in the theory of evolution. Much work remains to be done to identify the conditions under which genetic algorithms perform well.“

Page 32: 6 Genetic Algorithms and Neuronal Networks. Praktikum KI SoSe 2005 Überblick Organisation des Praktikums Einführung in die Künstliche Intelligenz Suche.

Fazit

Für alle vorgestellten Algorithmen kann nicht festgestellt werden, ob die gefundene Lösung ein globales Optimum ist

Je nach Beschaffenheit der Zielfunktion können hill-climbing, simulated annealing und genetic algorithms auch in sehr großen Zustandsräumen relativ schnell (ausreichend) gute Lösungen finden

Die Wahl geeigneter Repräsentationen der Zustände und geeigneter Zustandsüberführungsfunktionen kann schwierig sein

Die Parameter (Anzahl der restarts; k und T; Reproduktionparameter) können oft nur experimentell bestimmt werden