Ameisenkolonien (1) Idee: Reale Ameisen:

Ähnliche Dokumente
Ameisenkolonien (2) Ameisenkolonien (1)

Betriebliche Optimierung

Dynamisches Routing in der Logistik

Gabriella Kókai: Computational Intelligence Lehrstuhl für Informatik 2

Ant Colony Optimization (ACO)

Ameisenalgorithmen Dynamische Fahrzeugnavigation

Konstruktions-Verbesserungsheuristiken. Iterierte lokale Suche (ILS)

Verbesserungsheuristiken

Ameisenalgorithmen in der Verkehrssimulation

11. Übung zu Algorithmen I 6. Juli 2016

Ameisenalgorithmen auf rekonfigurierbaren Rechensystemen Tübingen, 29. April Ameisenalgorithmen auf rekonfigurierbaren Rechensystemen

Bisher: Suche durch Lösungsveränderung Neuer Begriff: Nachbarschaft einer Lösung

AMEISENSYSTEME. Arno Klein

09. Übung zu Algorithmen I 12. Juli 2017

Schwarmintelligenz. Lydia Pintscher Seminar Organic Computing Universität Karlsruhe

Deterministisch vs. Zufallsgesteuert

Betriebliche Optimierung

Intelligente Systeme

Klassifikation von Heuristiken. Meta-Heuristiken. Problembezogen: Problemspezifische Heuristiken Problemunabhängige Heuristiken

8.1 Einleitung. Grundlagen der Künstlichen Intelligenz. 8.1 Einleitung. 8.2 Lokale Suchverfahren. 8.3 Zusammenfassung. Suchprobleme: Überblick

Heuristische Verfahren

x x x x Repräsentation von Lösungen (2) Repräsentation von Lösungen (1)

Repräsentation von Lösungen (1)

Überblick. Motivation. Kap. 7.6 Verbesserungsheuristiken. Nachbarschaft einer Lösung Einfache lokale Suche

Kap. 7.6 Verbesserungsheuristiken (letzte VO)

Anwendung von Schwarmintelligenz auf ein Mehrkriterienoptimierungsproblem mit Nebenbedingungen

Die Theorie der Toleranzen und deren Anwendung auf das Traveling Salesman Problem

Heuristiken und exakte Algorithmen für das verallgemeinerte Traveling Salesman Problem. Gerold Jäger

1 Heuristiken für das Traveling Salesman Problem

Wissensbasierte Systeme. Kombinatorische Explosion und die Notwendigkeit Heuristischer Suche. Heuristiken und ihre Eigenschaften

Investitionsentscheidungen bei mehrfachen Zielsetzungen und künstliche Ameisen

Grundlagen Theoretischer Informatik 3 SoSe 2012 in Trier. Henning Fernau Universität Trier

5. Lokale Suchverfahren. Beispiel TSP: k-change Nachbarschaft. Nachbarschaft. k-opt Algorithmus

Grundlagen der Künstlichen Intelligenz

Seminararbeit: K-Opt und die Lin-Kernighan-Heuristik für das allgemeine TSP

Ant Colony Optimization (ACO)

PG 431 Metaheuristiken

Local Search Algorithmen 1

Studienarbeit. Ameisen und kombinatorische Optimierung

Das Traveling Salesman Problem und das Assignment Problem zweiter Ordnung. Gerold Jäger

Algorithmische Methoden für schwere Optimierungsprobleme

F A C H H O C H S C H U L E

Visualisierung von Graphen

t r r P t 3 r q t t t st r2 t s t t

Vorlesung Datenstrukturen

Daniel Radeloff Matr.# Ameisenalgorithmen. -Seminararbeit- Proseminar Adaptive Systeme PD Dr. R. Brause

Algorithmische Methoden für schwere Optimierungsprobleme

Algorithmen und Datenstrukturen 2 VU 3.0 Nachtragstest SS Oktober 2016

Kapitel ML: X (Fortsetzung)

Betriebswirtschaftliche Optimierung

Swarm Intelligence in der dynamischen Tourenplanung

Proportional Symbol Maps

14. Schwarmbasierte Optimierungsverfahren FEURO UZZY

Datenstrukturen und Algorithmen

14. Schwarmbasierte Optimierungsverfahren

lineare Programmierung

Formale Grundlagen der Informatik F3: Berechenbarkeit un

Hawkes Prozesse Grundlagen

Verteilte Systeme. Graphenalgorithmen. Secure Identity Research Group

Hidden-Markov-Modelle

Exkurs Modelle und Algorithmen

Konstruktive Heuristiken

Evolutionäre Algorithmen Metaheuristiken und verwandte Optimierungsverfahren II/II

Betriebliche Optimierung

Gliederung. Kapitel 4. Lokale Suchverfahren. Meta-Heuristiken. Simulated Annealing. Lokale Suchverfahren. Optimierungsalgorithmen

Populationsbasierte Suche. Evolutionäre Algorithmen (1)

Intelligente Systeme. Einführung. Christian Moewes

Intelligente Systeme

WS 2009/10. Diskrete Strukturen

Algorithmische Graphentheorie

Einführung in Heuristische Suche

Randomisierte Algorithmen

Das Problem des Handlungsreisenden

Grundlagen Theoretischer Informatik 3 SoSe 2010 in Trier. Henning Fernau Universität Trier

Wintersemester 2004/ Februar 2005

Randomisierte Datenstrukturen

Seminar: Data Mining. Referat: Andere Möglichkeiten des Data Mining in verteilten Systemen. Ein Vortrag von Mathias Rohde. 11.

Simulation einer selbstorganisierenden Fertigungssteuerung auf Basis der Ant-Colony-Optimierung

Intelligente Systeme

Algorithmen und Datenstrukturen Tutorium Übungsaufgaben

Rechenzeit für A. Sei t B die Rechenzeit eines Algo für B. Seien p,q,r monotone Polynome ( +).

Map Matching. Problem: GPS-Punkte der Trajektorie weisen einen relativ großen Abstand zueinander auf.

Lernmodul 7 Algorithmus von Dijkstra

Hochschule Darmstadt

Algo&Komp. - Wichtige Begriffe Mattia Bergomi Woche 6 7

SIMULATED ANNEALING IM RAHMEN DES PS VIRTUAL LAB MARTIN PFEIFFER. Simulated Annealing Virtual Lab 1 /42

Routing A lgorithmen Algorithmen Begriffe, Definitionen Wegewahl Verkehrslenkung

1 Einleitung Definitionen, Begriffe Grundsätzliche Vorgehensweise... 3

Synthese Eingebetteter Systeme. Übung 6

Hybrid Optimization Methods for Warehouse Logistics and the Reconstruction of Destroyed Paper Documents

Intelligente Systeme

Intelligente Systeme

Traversierung 1 / 16. P.F. Stadler & S. Will (Bioinf, Uni LE) ADS 2, V3 23. April / 16

Theoretische Informatik 1

Graphentheorie. Eulersche Graphen. Eulersche Graphen. Eulersche Graphen. Rainer Schrader. 14. November Gliederung.

Optimale Produktliniengestaltung mit Genetischen Algorithmen

Auswahl und Implementierung eines Ameisenalgorithmus zur Steuerung von Patienten im Planspiel INVENT

Algorithmische Methoden zur Netzwerkanalyse

Theoretische Informatik. Exkurs: Komplexität von Optimierungsproblemen. Optimierungsprobleme. Optimierungsprobleme. Exkurs Optimierungsprobleme

Transkript:

Ameisenkolonien (1) Idee: Von M. Dorigo, 1992 Verhalten von Ameisen bei der Futtersuche Ameisen hinterlassen Pheromon-Spur (Chem. Substanz) Pfade mit hoher Pheromon-Konzentration werden bevorzugt Indirekte Kommunikation durch Pheromone Ameisen lösen kollektiv das Problem des kürzesten Pfades Reale Ameisen: Idee basierend auf Experimenten von Goss et al. 1989 mit argentinischen Ameisen Folie 198

Ameisenkolonien (2) Kürzeste Pfade: Kollektives Finden des kürzesten Pfades vom Futter zum Nest bei vorhanden sein eines Hindernisses Nest Nahrung 1 2 Nest 3 Folie 199 Nest Nahrung Hindernis Nahrung Hindernis Nest 4 Nahrung Hindernis

Ameisenkolonien (3) Historische Entwicklung: Ant System AS (M. Dorigo, 1992) Ant Colony System ACS (M. Dorigo und L. M. Gambardella, 1997) Ant Colony Optimization Meta-Heuristic ACO (Dorigo und DiCaro, 1999) AS und ACS: Ursprünglich entwickelt fürs TSP Übertragen auf viele weitere COP Folie 200

Ant System fürs TSP Ant Sytem fürs TSP: Ameisen konstruieren Touren Kanten mit höherer Pheromon-Konzentration t werden mit höherer Wahrscheinlichkeit gewählt v? t(s,v) t(s,u) u s t(s,r) r t(s,t) t Jede Ameise hinterlegt Pheromonspur nachdem Tour komplett ist Hinterlegte Pheromonmenge ist umgekehrt proportional zur Länge der Tour der Ameise Duftspur verflüchtigt sich mit der Zeit Folie 201

Ant Sytem - Übergangsregel Ant System fürs TSP: Ameisen sind Tour-Konstruktoren: Jede Ameise erzeugt eine Tour Wahrscheinlichkeit für Ameise k von Stadt r nach s zu gehen: β τ(r,s) η(r,s), wenn s J () r β k p ( rs, ) = τ(r,u) η(r,u) k u Jk ( r) 0, sonst τ :Pheromon-Konzentration η(, rs) = 1/ drs (, ): Heuristische Information J(): r Menge der noch nicht besuchten Städte k Folie 202

Ant System Update-Regel Globale Lernregel: Pheromon-Update: τ(, rs) (1 α) τ(,) rs + τ (,) rs τ k k = 1 1, wenn( rs, ) T (,) rs = Lk 0, sonst m k k T L k k :Tour von Ameise k :Länge der Tour von Ameise k α :Verflüchtigung der Pheromone Folie 203

Ant Colony System Übergangsregel State Transition Rule: Pseudo-zufälliger Zustandsübergang: argmax u J {(, ) (, ) }, wenn k r τ ru η ru q q s = S, sonst β ( ) 0 q :Zufallsvariable gleichverteilt in [0,1] q 0 :Explorationsparameter S: Zufallsvariable nach p (, rs) aus AS k Folie 204

Ant Colony System Update-Regeln (1) Globale Lernregel: ACS Global Update Rule: τ(,) rs (1 α) τ(,) rs + α τ(,) rs 1, wenn( rs, ) T τ(, rs) = Lbest 0, sonst best T L best best :Tour der besten Ameise :Länge der besten Tour α :Verflüchtigung der Pheromone Folie 205

Ant Colony System Update-Regeln (2) Lokale Lernregel: ACS Local Update Rule: τ(,) rs (1 ρ) τ(, rs) + ρ τ(, rs) τ(, rs) = γ max τ( sz, ) (Variante 1) 0 z J k ( s) τ(, rs) = τ (Variante 2) τ (, rs) = 0 (Variante 3) ρ :Parameter (0,1] γ :Q-Learning Parameter [0,1) τ 0 :Initialer Pheromonlevel Folie 206

ACS - Pseudocode Procedure ACS-TSP; begin Initialisierung; repeat Jede Ameise wird in einem Startknoten positioniert repeat foreach Ameise do Ameise wendet Zustandsübergangsregel an Ameise wendet lokale Update-Regel an endforeach; until Lösungen komplett; Globale Update-Regel wird angewendet until Ende-kriterium; end; Folie 207

ACS - Parameterwahl Parameter: Einfluss der heuristischen Information β=2 Exploration q 0 =0.9 Pheromon-Evaporation α=ρ=0.1 Initialer Pheromonwert τ 0 = 1/(n L nn ) L nn : Länge der Lösung der Nearest-Neighbor-Heuristik Anzahl Ameisen: m=10 Folie 208

ACS - Varianten Ergebnisse eines Vergleichs: ACS mit lokalem Update besser als ohne Lokales Update: Variante 1 und 2 besser als Variante 3 Heuristische Information wichtig β>0 Igonorieren der Pheromonwerte schlechte Performance ACS im Vergleich zu anderen Meta-Heuristiken relativ schlecht Verwendung lokaler Suche ACS + 3-opt (TSP): 3-opt lokale Suche vor globalem Update Ergebnisse deutlich besser, aber schlechter als MA (1st International Contest on Evolutionary Optimization) Folie 209

Min-Max Ant System Idee: Von Stützle und Hoos, 1997 Verbesserung des AS Unterschiede zu AS: Nur beste Ameise (global Beste oder Iterationsbeste) darf Pheromonspur aktualisieren Pheromonwerte werden auf ein Intervall [τ min,τ max ] festgelegt Pheromonwerte werden mit τ max initialisiert Verwendung von lokaler Suche Folie 210

Fast Ant System FANT: (QAP) Von Taillard und Gambardella, 1997 Nur eine Ameise Lokale Suche nach Konstruktion einer Lösung Pheromone verflüchtigen sich nicht Pheromonwerte werden mit 1 initialisiert Pheromon-Update: τ τ + r τ + r τ gb ij ij ij ij τ τ ij gb ij : 1, wenn (, ij) Element der aktuellen Lösung ist : 1, wenn (, ij) Element der besten Lösung ist rr, : Parameter Folie 211

Ant Colony Optimization ACO Meta-Heuristik: Von Dorigo und DiCaro, 1999 Verallgemeinerung des ACS Framework erlaubt Integration von lokaler Suche Anwendung: Diskrete Optimierungsprobleme (kombinatorische Optimierungsprobleme) mit bestimmten Eigenschaften Problemdarstellung als Graph, Wahl einer Lösungskomponente wird durch Kante im Graph dargestellt Folie 212

ACO Optimierungsprobleme (1) Voraussetzungen: Endliche Menge C von Komponenten C={c 1,c 2,...,c n } Endliche Menge L von möglichen Verbindungen/Übergängen zwischen den Elementen von C, L={l ij (i,j) C x C}, L n 2 Für jedes l ij L Verbindungkosten J ij (l ij,t), möglicherweise zeitabhängig Eine endliche Menge von Nebenbedingungen Ω(L,C,t) Folie 213

ACO Optimierungsprobleme (2) Weitere Voraussetzungen: Die Zustände des Problems ausgedrückt als Sequenzen s=<c i,c j,...,c k > über den Elementen von C, S sei die Menge aller möglichen Sequenzen und S* die Menge der gültigen Sequenzen bezüglich Ω(L,C,t) Eine Nachbarschaftsstruktur, d.h. s 1 und s 2 sind Nachbarn, wenn s 1 =<...,c 1 > und s 2 =<s 1,c 2 > S, c 1, c 2 C und l c1,c2 L Eine Lösung x S* mit einer Kostenfunktion f(x,l,t) abhängig von den Kosten l ij der Lösung Folie 214

ACO Problembespiele (1) Aufgabe: Pfad im Graphen G=(C,L) Beispiel TSP: C : Menge der Städte / Knoten L : Menge der Verbindungen / Kanten Verbindungkosten J ij (l ij,t) = d ij Ω(L,C,t) : Jede Stadt darf nur einmal besucht werden Die Zustände des Problems: Städtefolge s=<c i,c j,...,c k > Eine Nachbarschaftsstruktur: alle Städte sind benachbart Lösung x S*: gültige Tour Kostenfunktion f(x,l,t): Tourlänge Folie 215

ACO Problembespiele (2) Beispiel binäres Problem: Schrittweises Festlegen der Bits von links nach rechts Graph: S 0 1 0 1 0 1 0 1 0 1 E Lösung: 0 1 1 0 0 Folie 216

ACO - Datenstrukturen Gedächtnis M: Jede Ameise hat ein Gedächtnis Wichtig für Erzeugung gültiger Lösungen Verwendet zur Evaluation einer Lösung Benötigt zum Rückverfolgen des Pfades Routing-Tabelle A: Gewichtet Kanten im Graph durch Kombination der Pheromonkonzentration und der heuristischen Information Benötigt zur Berechnung der Zustandsübergangswahrscheinlichkeiten Folie 217

ACO - Pseudocode procedure ACO; begin repeat schedule antsgenerationandactivity(); pheromoneevaporation(); daemonactions(); end schedule; until Ende-kriterium; end; procedure antsgenerationandactivity; begin repeat schedulecreationnewant(); newactiveant(); until noresources(); end; procedure newactiveant; begin initializeant(); M = updateantmemory(); repeat A = readlocalantroutingtable(); P = computetransitionprobabilities(a,m,ω); nextstate = applyantdecisionpolicy(p, Ω); movetonextstate(nextstate); if (onlinestepbysteppheromoneupdate()) depositpheromoneonvisitedarc(); updateantroutingtable(); end if; M = updateinternalstate(); until currentstate == targetstate; if (onlinedelayedpheromoneupdate()) foreach arc in x do depositpheromoneonvisitedarc(); updateantroutingtable(); end foreach; endif; end; Folie 218

QAP: ACO und andere Meta-Heuristiken QAP: Vergleich Meta-Heuristiken Zahlen: Abweichung von besten Lösung in % Instanz MA-1 MA-2 Ro-TS Re-TS FANT MMAS SA t/sec tai60a 1.314 1.597 1.313 0.794 2.577 1.159 3.199 90 tai80a 1.106 1.305 1.023 0.482 2.525 0.768 3.298 180 tai100a 1.089 1.252 0.909 0.385 2.569 0.728 1.848 300 sko100a 0.096 0.127 0.191 0.397 0.474 0.195 2.942 300 tai60b 0.000 0.000 1.898 0.929 0.213 0.075 1.760 90 tai80b 0.191 0.004 2.929 1.602 0.821 0.718 5.092 180 tai100b 0.076 0.038 2.373 1.469 0.360 0.328 6.696 300 tai150b 0.361 0.397 2.851 1.775 1.176 1.167 3.787 600 tho150 0.151 0.202 0.548 0.488 0.765 0.395 2.939 600 tai256c 0.070 0.099 0.326 0.266 0.273 0.067 0.370 1200 Ro-TS, Re-TS: Robust/Reactive Tabu Search FANT, MMAS: Ant Colony Optimization: Fast Ant System, Min-Max Ant System SA: Simulated Annealing Folie 219