K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

36
KOMBINATORISCHE OPTIMIERUNG MIT AMEISENSYSTEMEN Daniel Schiller

Transcript of K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Page 1: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

KOMBINATORISCHE OPTIMIERUNG MIT AMEISENSYSTEMEN

Daniel Schiller

Page 2: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

INHALT

Kombinatorische Optimierungsprobleme

Heuristiken & Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Hausaufgabe

Zusammenfassung & Fragen?

Page 3: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Lösungsraum durch Ganzzahligkeitsbedingung eingeschränkt

klassisches „Aufsuchen“ des Optimums entlang des Polyeders nicht möglich

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 4: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Lösungsverschlechterung

Zeitaufwand oft nicht polynomiell von Problemgröße abhängig

schwer zu lösen

oft fehlen effiziente exakte Lösungsverfahren

Heuristiken

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 5: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Heuristik

„(auf)finden, entdecken“

mit begrenztem Wissen eine gute Lösung in angemessener Zeit finden

problemspezifisches Wissen nutzen

Optimalität nicht garantiert

Metaheuristik

Rahmenwerk aus allgemeineren algorithmischen Regeln zur Erzeugung einer spezifischen Heuristik

Ausgestaltung indivduell

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 6: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Natürliche Algorithmen

Vorgänge oder Prinzipien der Natur werden nachgebildet

neue Lösungsstrategien für Probleme abgeleitet

effizientere Verfahren gesucht

oft allgemeingültiger

nicht problemspezifisch

Beispiele:

Simulated Annealing,

Genetischer Algorithmus,

Sintflutalgorithmus,

Ameisensysteme

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 7: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Reale Ameisenkolonien

Ameisen sind einfache Individuen

begrenzte Leistungsfähigkeit

Kolonien bewältigen komplexe Probleme

hier: Aufbau eines effizienten (kurzen) Transportnetzwerks zwischen Nest und Futterstellen

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 8: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Ameisenexperiment 1

einfache Umgebung

Ameisen schwärmen aus

jede Ameise sucht individuell nach einem Weg

Beobachtung: Ameisen finde den kurzen Weg als

Lösung

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 9: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Erklärung

jede Ameise trifft individuelle Entscheidung

Zufall

jede Ameise markiert ihren Weg (ihre Lösung) mit Pheromonspur

Pheromonspur beeinflusst Zufallsentscheidung der Nachfolger

nach einer Zeit T sind mehr Ameisen auf kurzen Wegen gelaufen

stärkere Spur auf diesen Wegen

mehr Ameisen folgen diesen Wegen

Lösung der Kolonie konvergiert

nicht alle Ameisen folgen den stark markierten Wegen

Erkundung

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 10: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Ameisenexperiment 2

dynamische Änderung der Umgebung

neue optimale Lösung

Beobachtung: Ameisen verlassen erste Lösung oft

nicht

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 11: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Identifizierte Eigenschaften

jede Ameisen entscheidet individuell

Markierung macht individuelle Entscheidung den Nachfolgern bekannt

Kolonie erwirbt Wissen über Umgebung

Mehrheit folgt einer Lösung

Konvergenz in eine Lösung

Konvergenz in lokalen Optima möglich

Verlassen einer Lösung nur schwer möglich

globales Optimum nicht garantiert

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 12: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Bewertung

Ameisen sind einfache Individuen einfach zu simulieren

hohe Leistungsfähigkeit in komplexen Umgebungen Erfolgspotential

Schwarmintelligenz

allgemeine einfache Voraussetzungen geringe Problemspezifik

algorithmische Umsetzung am Computer

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 13: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Ant Colony Optimization

Elemente graphische Repräsentation des

Problems

Ameisenkolonie

Pheromonspur

Zeit

algorithmische Besonderheit diskrete Zeitschritte

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 14: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Graph

Knoten Orte

Aufträge

Gegenstände

Kanten mögliche Beziehungen zwischen den

Knoten

Wege der Ameisen

bewertet mit Kosten/Entfernungen

Pheromonmatrix τij

Heuristikmatrix ηij

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 15: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Ameisen

Individuen mit Verhaltensregeln laufe durch das Netz

probalistische Entscheidung über Weg

Nebenbedingungen

bauen Lösung

individuelles Gedächtnis Weg

Länge

Bewertung der eigenen Lösung

Markierung der eigenen Lösung

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 16: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Pheromonspur

Stärke der Markierung triff Aussage über Qualität & Häufigkeit Kante Teil eines kurzen Wegs

Kante Teil eines oft genutzten Wegs

Aussage über Vorteilhaftigkeit des Wegs

Verdunstung Verlassen einer Lösung ermöglichen

vorzeitige Konvergenz verhindern

stärkere Erkundung

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 17: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Entscheidung der Ameise

von wo komme ich? wo darf ich nicht mehr hin?

was sehe ich?

wie riecht es?

Zufallsentscheidung

?

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 18: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Simulation der Zufallsentscheidung

Berechnung der Wahrscheinlichkeiten Längen d der offenen Wege

lokale Informationen

ηij=1/dij : Kehrwert der Länge von Weg ij

Pheromonspuren auf offenen Wegen

Wissen der Kolonie aus Erkundung

τij,h : Pheromonspur auf Weg ij

α,β : Gewichtungs-/Steuerparameter

„Würfeln“ Zufallsexperiment

pij =

α

Σ

(τij

(η ij)α(τij

(η ij)

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 19: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Pheromonspuraktualisierung nach jeder Iteration h

auf jedem Wegstück ij

Verdunstung der alten Spur/Lösung Verdunstungsrate ρ lässt Spur langsam

schwächer werden

Markierung der neuen Spur/Lösung jede Ameise legt eine neue Spur

ihre Weglänge Dk bestimmt Stärke

Qualität der eigenen Lösung

τij,h+1

= τij,h(1-ρ)

+ 1/D1

+1/D2

+…+1/Dk

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 20: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Verhalten des Algorithmus

Koloniegröße vorgegebene Rechenzeit

viele Ameisen breite Erkundung

wenige Ameisen viele Iterationen

Pheromonspur / Verdunstungsrate großes ρ Wahrscheinlichkeit neue

Lösungen zu finden

kleines ρ schnelle Konvergenz auf eine Lösung

Gewichtungsparameter α,β α<β heuristische Information betont

α>β iterierte Information betont

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 21: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Abwandlungen

Elitäre Ameisen beste Ameisen markieren stärker

Begrenzung der Pheromonspur Obergrenze (max)

gute Lösungen nicht zu stark gewichtet

Wirkung von Anfangszufällen begrenzt

Untergrenze (min)

schlechte Lösungen bleiben erhalten

gegen zu frühes Einschränken

Senken der Pheromonspur direkte Nachfolger werden zum

Erkunden anderer Wege angeregt

. . .

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 22: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Anwendungen

TSP

Vehicle-Routing

Zuordnung

Ablaufplanung

Rucksackprobleme

Proteinfaltung

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 23: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Maschinenbelegung

Auftrag

Vorgang

Maschinen

Dauern bekannt und fest

keine Unterbrechung

Ziel: Reihenfolge der Aufträge/Vorgänge mit

minimalen Kosten/Zeit

Besonderheiten: absolute Position von Aufträgen in der

Reihenfolge wichtig

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 24: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Single Machine Total Tardiness

eine Maschine

n Jobs mit Dauern di und End-Fristen fi

Ziel: Anordnung der Jobs, die summierte

„Fristüberschreitung“ minimiert

Graph: Knoten

n Positionen

n Jobs

Kanten mögliche Zuordnungen Job Position

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 25: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Beispiel Graph

n=3 Positionen + n=3 Jobs Fristen fj

Dauern dj

Kanten

Lösungskonstruktion Ameisen ordnen die Jobs den

Positionen der Reihe nach zu

Nebenbedingungen alle Jobs müssen zugeordnet

werden

Pheromonspur τij

Vorteilhaftigkeit Job j an Position i zu setzen

Aktualisierung nach jedem Durchlauf

3

3

7

2

3

3

Page 26: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Ameise 1 im ersten Durchlauf

wählt zufällig

3

3

7

2

3

3

Job Zeit Überschreitung1 2 0

2 5 2

3 8 1

3

Page 27: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Ameise 2 im ersten Durchlauf

wählt zufällig

3

3

7

2

3

3

Job Zeit Überschreitung2 3 0

3 6 0

1 8 5

5

Page 28: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Ameise 3 im ersten Durchlauf

wählt zufällig

3

3

7

2

3

3

Job Zeit Überschreitung1 2 0

3 5 0

1 8 5

5

Page 29: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Pheromonspuren abhängig von

Überschreitung

je kleiner desto stärker

neue Ausgangslage beim nächsten Durchlauf

Ameise

Überschreitung

Spur

1 3 6

2 5 4

3 5 4

Page 30: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Ameise 1 im zweiten Durchlauf

3

3

7

2

3

3

Job Zeit Überschreitung1 2 0

3 5 0

2 8 5

5

Page 31: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Ameise 2 im zweiten Durchlauf

3

3

7

2

3

3

Job Zeit Überschreitung1 2 0

2 5 2

3 8 1

3

Page 32: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Ameise 3 im zweiten Durchlauf

3

3

7

2

3

3

Job Zeit Überschreitung3 3 0

2 6 3

1 8 5

8

Page 33: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Pheromonspuren

Ameise

Überschreitung

Spur

1 5 4

2 3 6

3 8 1

Page 34: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Cluster im Tarifraum finden ähnliche Elemente gruppieren unterschiedliche Elemente separieren

Ameisen und Clusteranalyse Objekte (Haltestellen)

frei „auf Fläche“ Distanzmatrix zu allen Haltestellen

als Maß für Ähnlichkeit/Unterschied Ameisen

laufen frei auf Fläche leere Ameisen wollen Objekte aufnehmen beladene Ameisen wollen Objekte ablegen Wahrscheinlichkeit der Aufnahme/Ablage

wir durch Unterschied/Ähnlichkeit zu Nachbarn bestimmt

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe

Page 35: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.
Page 36: K OMBINATORISCHE O PTIMIERUNG MIT A MEISENSYSTEMEN Daniel Schiller.

Zusammenfassung allg. Prinzipien

einfache Umsetzung

breite Anwendung

vielfältige Ausgestaltung

oft leistungsfähig

Fragen?

Kombinatorische Optimierungsprobleme

Heuristiken &

Metaheuristiken

Natürliche Algorithmen

Ameisensysteme

Beispiel

Zusammenfassung &

Fragen?

Hausaufgabe