Title: Ant Colony Optimization
1Ant Colony Optimization
Virtuelle Ameisen als Software-Agentenzur
Bewältigung komplexer Probleme
2Optimierung mit Ameisen
Dokument-Version 1.2
Autor Marc BuféDiese Vortragsfolien entstanden
im Rahmen des SeminarsSoftcomputing im
Sommersemester 2000 an der Fakultät Informatik,
Universität Stuttgart, GermanyFolien,
Ausarbeitung und Algorithmus sind zu finden
unter http//fly.to/airport
3Natur als Vorbild
- Ameisen
- Kolonien
- Koordination
- Kooperation
- Schwarmintelligenz
4Futtersuche in Natura
Nutzung Tour A-B-C-D-E steigt, A-B-H-D-E fällt -
mit Zeit
5Mehragent-System
Wie in die Informatik übertragen?
- Ameise ltgt Ein Agent
- Kolonie ltgt Alle Agenten
- Bewertung von Teillösungen
- Kooperation
- Verflüchtigung
6Futtersuche im Graphen
Zwecks Übersichtlichkeit hier nur 2 mögl. Wege
berücksichtigt!
A
B
C
D
E
F
7Futtersuche mit Agenten
15
15
20
10
15
15
10
20
8Erweiterungen
- Markierung abhängig von Weglänge
- Hintergrundspeicher
- Umgebungswissen
- Daemon
9Sub-optimale Lösungen
- Gründe hierfür
- zu langsame Verflüchtigung
- ungeeignete Parameterwahl
- zu wenige Ameisen
10Parameterwahl
a Gewichtung für Markierungb Gewichtung für
Knotennähe
Oliver30, NCMAX2500
? Sehr gute Lösungen? Keine StagnationØ
Stagnation
11Ant-System (AS) Modelle
a Gewichtung für Markierungb Gewichtung für
Knotennäher Verflüchtigungsfaktor
Ergebnis für 10 gemittelte DurchläufeOliver30,
NCMAX 5000
12Ant-Cycle auf TSP
- Tabu List
- Random Walk
- Prioritäten
- Rücklauf und längenabhängige Bewertung
5
1
4
1
1
3
2
13Tabu List
n Anzahl Städte Eine Tourm Anzahl
Ameisenk Index einer Ameises Zeiger in
TabuList (momentane Stadt)
Für jede Iteration innerhalb eines
Ant-CycleTrage für jede Ameise k die besuchte
Stadt ein
For k 1 to m do insert town of ant k in
Tabuk(s) od
14Random Walk Prioritäten
i,j Kante zwischen Knoten i,jnij
1/Distanz(i,j)a Gewichtung für Markierungenb
Gewichtung für Knotennähe
allowedk für k auf i erlaubte adjazente
unbesuchte Städte
Aus Ant-Routing-Table
Ãœbergangswahrscheinlichkeit von Stadt i nach j
für Ameise k
15Rücklauf und Bewertung
i,j Kante zwischen Knoten i,jtij (t)
Markierung zur Zeit tr Verflüchtigung je
(t,tn)
Q/Lk Const/Tourlänge Ameise k
Mit Tabu List,Ant-Routing-Table
Mark_delta Summe der Markierungen für alle
Ameisen k,die Kante (i,j) passiert haben
Markierung nach Tour Verflüchtigung Mark_alt
Mark_delta
1610-Cities-Problem CCA0
AS-Markierungsverteilung nach Start und nach 100
Zyklen
17Oliver30 Problem
Zyklen 342Länge 420
a 1b 5r 0.5
18Kantenbesuche je Knoten
Typische Läufe mit Ant-Cycle auf Oliver30
Guter Lauf
Stagnationsverhalten (a5, b2)
19Vergleich ACO vs EA
20Zusammenfassung
- Kombination von Teillösungen
- Positive Rückkopplungsschleife
- Vergessen fördert Exploration
- Selbstadaption - ohne Reinitialisierung!
- Geeignet für (A)TSP, Routing...
21Mehr Ameisen
- Marco Dorigo IRIDIA, Université Libre de
Bruxelles - Spektrum der Wissenschaft Ausgabe 05/2000
- Ant Cam http//www.discovery.com/cams/ant/antm
ain.html