360 likes | 519 Views
Kombinatorische Optimierung mit Ameisensystemen. Daniel Schiller. Inhalt. Kombinatorische Optimierungsprobleme Heuristiken & Metaheuristiken Natürliche Algorithmen Ameisensysteme Beispiel Hausaufgabe Zusammenfassung & Fragen?. Lösungsraum durch Ganzzahligkeitsbedingung eingeschränkt
E N D
Kombinatorische Optimierung mit Ameisensystemen Daniel Schiller
Inhalt • Kombinatorische Optimierungsprobleme • Heuristiken & Metaheuristiken • Natürliche Algorithmen • Ameisensysteme • Beispiel • Hausaufgabe • Zusammenfassung & Fragen?
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 Hausaufgabe Zusammenfassung & Fragen?
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 Hausaufgabe Zusammenfassung & Fragen?
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 Hausaufgabe Zusammenfassung & Fragen?
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: SimulatedAnnealing, Genetischer Algorithmus, Sintflutalgorithmus, Ameisensysteme Kombinatorische Optimierungsprobleme Heuristiken & Metaheuristiken Natürliche Algorithmen Ameisensysteme Beispiel Hausaufgabe Zusammenfassung & Fragen?
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 Hausaufgabe Zusammenfassung & Fragen?
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 Hausaufgabe Zusammenfassung & Fragen?
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 Hausaufgabe Zusammenfassung & Fragen?
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 Hausaufgabe Zusammenfassung & Fragen?
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 Hausaufgabe Zusammenfassung & Fragen?
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 Hausaufgabe Zusammenfassung & Fragen?
AntColonyOptimization • Elemente • graphische Repräsentation des Problems • Ameisenkolonie • Pheromonspur • Zeit • algorithmische Besonderheit • diskrete Zeitschritte Kombinatorische Optimierungsprobleme Heuristiken & Metaheuristiken Natürliche Algorithmen Ameisensysteme Beispiel Hausaufgabe Zusammenfassung & Fragen?
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 Hausaufgabe Zusammenfassung & Fragen?
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 Hausaufgabe Zusammenfassung & Fragen?
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 Hausaufgabe Zusammenfassung & Fragen?
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 Hausaufgabe ? Zusammenfassung & Fragen?
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 Kombinatorische Optimierungsprobleme Heuristiken & Metaheuristiken Natürliche Algorithmen Ameisensysteme Beispiel Hausaufgabe Zusammenfassung & Fragen? α β (η ij) (τij) pij = Σ α β (η ij) (τij)
Pheromonspuraktualisierung • nach jeder Iteration h • auf jedem Wegstückij • 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ängeDk bestimmt Stärke Qualität der eigenen Lösung Kombinatorische Optimierungsprobleme Heuristiken & Metaheuristiken Natürliche Algorithmen Ameisensysteme Beispiel Hausaufgabe Zusammenfassung & Fragen? τij,h+1= τij,h(1-ρ) + 1/D1 +1/D2 +…+1/Dk
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 Hausaufgabe Zusammenfassung & Fragen?
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 Hausaufgabe Zusammenfassung & Fragen?
Anwendungen • TSP • Vehicle-Routing • Zuordnung • Ablaufplanung • Rucksackprobleme • Proteinfaltung Kombinatorische Optimierungsprobleme Heuristiken & Metaheuristiken Natürliche Algorithmen Ameisensysteme Beispiel Hausaufgabe Zusammenfassung & Fragen?
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 Hausaufgabe Zusammenfassung & Fragen?
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 Hausaufgabe Zusammenfassung & Fragen?
3 2 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 3
3 2 Ameise 1 im ersten Durchlauf • wählt zufällig 3 3 Job Zeit Überschreitung 1 2 0 7 2 5 2 3 3 8 1 3
3 2 Ameise 2 im ersten Durchlauf • wählt zufällig 3 3 Job Zeit Überschreitung 2 3 0 7 3 6 0 3 1 8 5 5
3 2 Ameise 3 im ersten Durchlauf • wählt zufällig 3 3 Job Zeit Überschreitung 1 2 0 7 3 5 0 3 1 8 5 5
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
3 2 Ameise 1 im zweiten Durchlauf 3 3 Job Zeit Überschreitung 7 1 2 0 3 3 5 0 2 8 5 5
3 2 Ameise 2 im zweiten Durchlauf 3 3 Job Zeit Überschreitung 7 1 2 0 3 2 5 2 3 8 1 3
3 2 Ameise 3 im zweiten Durchlauf 3 3 Job Zeit Überschreitung 7 3 3 0 3 2 6 3 1 8 5 8
Pheromonspuren Ameise Überschreitung Spur 1 5 4 2 3 6 3 8 1
Cluster im Tarifraum finden • ähnliche Elemente gruppieren • unterschiedliche Elemente separieren • Ameisen und Clusteranalyse • Objekte (Haltestellen) • frei „auf Fläche“ • Distanzmatrix zu allen Haltestellenals 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 Hausaufgabe Zusammenfassung & Fragen?
Zusammenfassung • allg. Prinzipien • einfache Umsetzung • breite Anwendung • vielfältige Ausgestaltung • oft leistungsfähig • Fragen? Kombinatorische Optimierungsprobleme Heuristiken & Metaheuristiken Natürliche Algorithmen Ameisensysteme Beispiel Hausaufgabe Zusammenfassung & Fragen?