Ameisenkolonien (2) Ameisenkolonien (1)

Ähnliche Dokumente
Ameisenkolonien (1) Idee: Reale Ameisen:

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

AMEISENSYSTEME. Arno Klein

Dynamisches Routing in der Logistik

Betriebliche Optimierung

Ant Colony Optimization (ACO)

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

Ameisenalgorithmen Dynamische Fahrzeugnavigation

Verbesserungsheuristiken

11. Übung zu Algorithmen I 6. Juli 2016

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

Schwarmintelligenz. Lydia Pintscher Seminar Organic Computing Universität Karlsruhe

Konstruktions-Verbesserungsheuristiken. Iterierte lokale Suche (ILS)

09. Übung zu Algorithmen I 12. Juli 2017

Ameisenalgorithmen in der Verkehrssimulation

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

Intelligente Systeme

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

Heuristische Verfahren

Deterministisch vs. Zufallsgesteuert

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

Betriebliche Optimierung

Repräsentation von Lösungen (1)

Investitionsentscheidungen bei mehrfachen Zielsetzungen und künstliche Ameisen

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

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

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

Kap. 7.6 Verbesserungsheuristiken (letzte VO)

Kapitel ML: X (Fortsetzung)

Studienarbeit. Ameisen und kombinatorische Optimierung

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

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

Anwendung von Schwarmintelligenz auf ein Mehrkriterienoptimierungsproblem mit Nebenbedingungen

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

Visualisierung von Graphen

Swarm Intelligence in der dynamischen Tourenplanung

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

Evolutionäre Algorithmen Metaheuristiken und verwandte Optimierungsverfahren II/II

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

Local Search Algorithmen 1

Hidden-Markov-Modelle

Intelligente Systeme

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

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

Betriebswirtschaftliche Optimierung

Grundlagen der Künstlichen Intelligenz

Algorithmische Methoden für schwere Optimierungsprobleme

Ant Colony Optimization (ACO)

14. Schwarmbasierte Optimierungsverfahren FEURO UZZY

lineare Programmierung

1 Heuristiken für das Traveling Salesman Problem

14. Schwarmbasierte Optimierungsverfahren

Exkurs Modelle und Algorithmen

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

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

Betriebliche Optimierung

Intelligente Systeme. Einführung. Christian Moewes

Hochschule Darmstadt

Intelligente Systeme

Sequenzierung mit Ant-Colony-Systemen am Beispiel Querverteil-Wagen

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

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

Genetische Algorithmen von der Evolution lernen

Formale Grundlagen der Informatik F3: Berechenbarkeit un

3 Überlagerungen und Quotienten

Intelligente Systeme

1 Monomiale Ideale und monomiale Moduln

Das Problem des Handlungsreisenden

Algorithmische Methoden für schwere Optimierungsprobleme

Randomisierte Datenstrukturen

Voronoi-Diagramme. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK

Wissensentdeckung in Datenbanken

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

Ablaufplanung bei Werkstattfertigung

Algorithmen und Datenstrukturen Tutorium Übungsaufgaben

Intelligente Systeme

Adaptive Systeme. Prof. Dr.-Ing. Heinz-Georg Fehn Prof. Dr. rer. nat. Nikolaus Wulff

Hidden Markov Models

Hawkes Prozesse Grundlagen

Synthese Eingebetteter Systeme. Übung 6

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

PG 431 Metaheuristiken

Verteilte Systeme. Graphenalgorithmen. Secure Identity Research Group

Randomisierte Algorithmen

Theoretische Grundlagen der Informatik

Algorithmische Methoden zur Netzwerkanalyse

Algorithmen und Datenstrukturen 2 VU 3.0 Nachtragstest SS Oktober 2016

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

Lernmodul 7 Algorithmus von Dijkstra

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

Intelligente Systeme

Basen. Inhaltsverzeichnis

Anwendungen des Fréchet-Abstandes Das Constrained Free Space Diagram zur Analyse von Körperbewegungen

Einführung in Heuristische Suche

Kap. 7 Optimierung. Überblick. Optimierung: Einführung. Motivation. Beispiele für Optimierungsprobleme. Rundreiseprobleme (TSP)

Approximationsalgorithmen

Beschleunigung von kräftebasierten Graphzeichenalgorithmen mittels wohlseparierten Paardekompositionen

2. Entsprechende Listen P i von Vorgängern von i 3. for i := 1 to n do. (ii) S i = Knoten 2 + 1}

Transkript:

Ameisenolonien () Idee: Von M. Dorigo, 992 Verhalten von Ameisen bei der Futtersuche Ameisen hinterlassen Pheromon-Spur (Chem. Substanz) Pfade mit hoher Pheromon-Konzentration werden bevorzugt Indirete Kommuniation durch Pheromone Ameisen lösen olletiv das Problem des ürzesten Pfades Reale Ameisen: Idee basierend auf Experimenten von Goss et al. 989 mit argentinischen Ameisen Ameisenolonien (2) Kürzeste Pfade: Kolletives Finden des ürzesten Pfades vom Futter zum bei vorhanden sein eines Hindernisses 2 Hindernis 3 4 Hindernis Hindernis Folie 98 Folie 99 Ameisenolonien (3) Historische Entwiclung: Ant System AS (M. Dorigo, 992) Ant Colony System ACS (M. Dorigo und L. M. Gambardella, 997) Ant Colony Optimization Meta-Heuristic ACO (Dorigo und DiCaro, 999) AS und ACS: Ursprünglich entwicelt fürs TSP Übertragen auf viele weitere COP Ant System fürs TSP Ant Sytem fürs TSP: Ameisen onstruieren Touren Kanten mit höherer Pheromon-Konzentration t werden mit höherer Wahrscheinlicheit gewählt? s t(s,r) t(s,v) Jede Ameise hinterlegt Pheromonspur nachdem Tour omplett ist Hinterlegte Pheromonmenge ist umgeehrt proportional zur Länge der Tour der Ameise Duftspur verflüchtigt sich mit der Zeit v t(s,u) r t(s,t) u t Folie 2 Folie 2

Ant Sytem - Übergangsregel Ant System fürs TSP: Ameisen sind Tour-Konstrutoren: Jede Ameise erzeugt eine Tour Wahrscheinlicheit für Ameise von Stadt r nach s zu gehen: β τ(r,s) η(r,s), wenn s J () r β prs (, ) = τ(r,u) η(r,u) u J () r, sonst τ :Pheromon-Konzentration η(,) rs = / drs (, ): Heuristische Information J(): r Menge der noch nicht besuchten Städte Ant System Update-Regel Globale Lernregel: Pheromon-Update: τ(,) rs ( α) τ( rs, ) + τ (,) rs =, wenn( rs,) T τ ( rs, ) = L, sonst T :Tour von Ameise L :Länge der Tour von Ameise α :Verflüchtigung der Pheromone m Folie 22 Folie 23 Ant Colony System Übergangsregel State Transition Rule: Pseudo-zufälliger Zustandsübergang: argmax u J r{ ( ru, ) ( ru, ) }, wenn q q s = S, sonst β ( ) τ η q :Zufallsvariable gleichverteilt in [,] q :Explorationsparameter S: Zufallsvariable nach p( rs,) aus AS Ant Colony System Update-Regeln () Globale Lernregel: ACS Global Update Rule: τ(,) rs ( α) τ(,) rs + α τ(,) rs, wenn(, rs ) T τ ( rs, ) = Lbest, sonst T L best best :Tour der besten Ameise :Länge der besten Tour best α :Verflüchtigung der Pheromone Folie 24 Folie 25 2

Ant Colony System Update-Regeln (2) ACS - Pseudocode Loale Lernregel: ACS Local Update Rule: τ(,) rs ( ρ) τ(,) rs + ρ τ( rs, ) τ(,) rs = γ max τ( sz, ) (Variante ) z J ( s) τ(,) rs= τ (Variante 2) τ(,) rs= (Variante 3) ρ :Parameter (,] γ :Q-Learning Parameter [,) τ :Initialer Pheromonlevel Procedure ACS-TSP; Initialisierung; Jede Ameise wird in einem Startnoten positioniert foreach Ameise do Ameise wendet Zustandsübergangsregel an Ameise wendet loale Update-Regel an endforeach ; until Lösungen omplett; Globale Update-Regel wird angewendet until Ende-riterium ; Folie 26 Folie 27 ACS - Parameterwahl Parameter: Einfluss der heuristischen Information β=2 Exploration q =.9 Pheromon-Evaporation α=ρ=. Initialer Pheromonwert τ = /(n L nn ) L nn : Länge der Lösung der Nearest-Neighbor-Heuristi Anzahl Ameisen: m= ACS - Varianten Ergebnisse eines Vergleichs: ACS mit loalem Update besser als ohne Loales Update: Variante und 2 besser als Variante 3 Heuristische Information wichtig β> Igonorieren der Pheromonwerte schlechte Performance ACS im Vergleich zu anderen Meta-Heuristien relativ schlecht Verwendung loaler Suche ACS + 3-opt (TSP): 3-opt loale Suche vor globalem Update Ergebnisse deutlich besser, aber schlechter als MA (st International Contest on Evolutionary Optimization) Folie 28 Folie 29 3

Min-Max Ant System Idee: Von Stützle und Hoos, 997 Verbesserung des AS Unterschiede zu AS: Nur beste Ameise (global Beste oder Iterationsbeste) darf Pheromonspur atualisieren Pheromonwerte werden auf ein Intervall [τ min,τ max ] festgelegt Pheromonwerte werden mit τ max initialisiert Verwendung von loaler Suche Fast Ant System FANT: (QAP) Von Taillard und Gambardella, 997 Nur eine Ameise Loale Suche nach Konstrution einer Lösung Pheromone verflüchtigen sich nicht Pheromonwerte werden mit initialisiert Pheromon-Update: gb τ τ + r τ + r τ ij ij ij ij τ :, wenn (, ij) Element der atuellen Lösung ist ij gb τij :, wenn (, ij) Element der besten Lösung ist rr, : Parameter Folie 2 Folie 2 Ant Colony Optimization ACO Meta-Heuristi: Von Dorigo und DiCaro, 999 Verallgemeinerung des ACS Framewor erlaubt Integration von loaler Suche Anwendung: Disrete Optimierungsprobleme (ombinatorische Optimierungsprobleme) mit bestimmten Eigenschaften Problemdarstellung als Graph, Wahl einer Lösungsomponente wird durch Kante im Graph dargestellt ACO Optimierungsprobleme () Voraussetzungen: Endliche Menge C von Komponenten C={c,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 Verbindungosten J ij (l ij,t), möglicherweise zeitabhängig Eine endliche Menge von Nebenbedingungen Ω(L,C,t) Folie 22 Folie 23 4

ACO Optimierungsprobleme (2) ACO Problembespiele () Weitere Voraussetzungen: Die Zustände des Problems ausgedrüct als Sequenzen s=<c i,c j,...,c > ü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 Nachbarschaftsstrutur, d.h. s und s 2 sind Nachbarn, wenn s =<...,c > und s 2 =<s,c 2 > S, c, c 2 C und l c,c2 L Eine Lösung x S* mit einer Kostenfuntion f(x,l,t) abhängig von den Kosten l ij der Lösung Aufgabe: Pfad im Graphen G=(C,L) Beispiel TSP: C : Menge der Städte / Knoten L : Menge der Verbindungen / Kanten Verbindungosten 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 > Eine Nachbarschaftsstrutur: alle Städte sind benachbart Lösung x S*: gültige Tour Kostenfuntion f(x,l,t): Tourlänge Folie 24 Folie 25 ACO Problembespiele (2) ACO - Datenstruturen Beispiel binäres Problem: Schrittweises Festlegen der Bits von lins nach rechts Graph: S Lösung: E 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ücverfolgen des Pfades Routing-Tabelle A: Gewichtet Kanten im Graph durch Kombination der Pheromononzentration und der heuristischen Information Benötigt zur Berechnung der Zustandsübergangswahrscheinlicheiten Folie 26 Folie 27 5

ACO - Pseudocode QAP: ACO und andere Meta-Heuristien procedure ACO; schedule antsgenerationandactivity(); pheromoneevaporation(); daemonactions(); end schedule; until Ende-riterium; procedure antsgenerationandactivity; schedulecreationnewant(); newactiveant(); until noresources(); procedure newactiveant; initializeant(); M = updateantmemory(); 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; QAP: Vergleich Meta-Heuristien Zahlen: Abweichung von besten Lösung in % Instanz MA- MA-2 Ro-TS Re-TS FANT MMAS SA t/sec tai6a.34.597.33.794 2.577.59 3.99 9 tai8a.6.35.23.482 2.525.768 3.298 8 taia.89.252.99.385 2.569.728.848 3 soa.96.27.9.397.474.95 2.942 3 tai6b...898.929.23.75.76 9 tai8b.9.4 2.929.62.82.78 5.92 8 taib.76.38 2.373.469.36.328 6.696 3 tai5b.36.397 2.85.775.76.67 3.787 6 tho5.5.22.548.488.765.395 2.939 6 tai256c.7.99.326.266.273.67.37 2 Ro-TS, Re-TS: Robust/Reactive Tabu Search FANT, MMAS: Ant Colony Optimization: Fast Ant System, Min-Max Ant System SA: Simulated Annealing Folie 28 Folie 29 6