to get the file

Transkrypt

to get the file
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Plan
Literatura
Obliczenia Naturalne - Algorytmy Mrówkowe
cz. 4
Paweł Paduch
Politechnika Świętokrzyska
5 czerwca 2014
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
1 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Plan
Literatura
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
Plan wykładu
1
Wstęp
Plan
Literatura
2
HC-ACO
Wstęp
Aktualizacja feromonu
Interpretacja graficzna
Konstruowanie rozwiązania
3
AS-LBT
Krótki opis
Algorytm
Zalecane parametry
4
Podsumowanie
Podsumowanie
5
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
2 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Plan
Literatura
Literatura
Marco Dorigo, Thomas Stützle - Ant Colony Optimization.
Bradford Company, Scituate, MA, USA, 2004
HAS-SOP Home Page http://www.idsia.ch//˜luca/has-sop.html
Christian Blum, Marco Dorigo - Hcaco: the hyper-cube
framework for ant colony optimization. in Proc.
MIC’2001—Metaheuristics Int. Conf, strony 399–403, 2001
Tony White, Simon Kaegi, Terri Oda - Revisiting elitism in ant
colony optimization. GECCO’03: Proceedings of the 2003
international conference on Genetic and evolutionary
computation, strony 122–133, Berlin, Heidelberg, 2003.
Springer-Verlag.
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
3 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Plan
Literatura
Literatura
Çela, E. - The quadratic assignment problem: theory and
algorithms. Combinatorial optimization. Kluwer Academic
Publishers, 1998.
Vittorio Maniezzo, Alberto Colorni, Marco Dorigo. - The ant
system applied to the quadratic assignment, IEEE, 1994
Vittorio Maniezzo. - Exact and approximate nondeterministic
tree-search procedures for the quadratic assignment problem.
INFORMS J. on Computing,11:358–369, April 1999
Thomas Stützle. - Max-min ant system for quadratic
assignment problems, 1997.
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
4 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Plan
Literatura
Literatura
Thomas Stützle, Holger H. Hoos. - Max-min ant system, 2000.
Gambardella L.M., Taillard E.D., Dorigo M. - Ant colonies for
the quadratic assignment problem. Journal of the Operational
Research Society, 50:167–176(10), 1 February 1999.
Thomas Stützle, Marco Dorigo. - ACO algorithms for the
quadratic assignment problem, strony 33–50. McGraw-Hill
Ltd., UK, Maidenhead, UK, England, 1999
K. I. Aardal, C. P. M. van Hoesel, A. M. C. A. Koster, C.
Mannino, A. Sassano. - Models and solution techniques for the
frequency assignment problem. Berlin, Germany,2001
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
5 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wstęp
Aktualizacja feromonu
Interpretacja graficzna
Konstruowanie rozwiązania
System hipersześcienny
Hipersześcienny system dla ACO (ang. Hyper Cube Ant Colony
Optimization - HC-ACO) został wprowadzony przez Blum, Roli
i Dorigo w celu automatycznego przeskalowywania wartości
feromonowej tak, by były one w przedziale [0, 1]. Było to
podyktowane przez sformułowanie wielu optymalizacyjnych
problemów kombinatorycznych, których rozwiązanie może być
reprezentowane przez binarne wektory.
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
6 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wstęp
Aktualizacja feromonu
Interpretacja graficzna
Konstruowanie rozwiązania
System hipersześcienny
Zmienne decyzyjne, które mogą przyjmować wartości {1, 0},
zazwyczaj odpowiadają składnikom rozwiązania, gdyż są one
używane przez mrówki do jego budowy. Rozwiązanie problemu
odpowiada jednemu z narożników n–wymiarowego hipersześcianu,
gdzie n jest liczbą zmiennych decyzyjnych.
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
7 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wstęp
Aktualizacja feromonu
Interpretacja graficzna
Konstruowanie rozwiązania
Wstęp
Jednym ze sposobów tworzenia kresu dolnego dla rozważanego
problemu jest pozwolenie na wybieranie przez każdą zmienną
wartości rzeczywistych z przedziału [0, 1]. W takim przypadku zbiór
możliwych rozwiązań Srx zawiera wszystkie wektory ~v ∈ Rn będące
wypukłymi kombinacjami binarnych wektorów ~x ∈ Bn :
~v ∈ Srx ⇔ ~v =
X
γi · ~xi ,
γi ∈ [0, 1],
X
γi = 1.
(1)
~
vi ∈Bn
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
8 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wstęp
Aktualizacja feromonu
Interpretacja graficzna
Konstruowanie rozwiązania
Aktualizacja feromonu
Gdy wartości feromonowe znormalizujemy by mieściły się
w przedziale [0, 1], wtedy związek z ACO staje się wyraźniejszy.
W tym przypadku, wektor feromonowy ~τ = (τ1 , ..., τn ) odpowiada
punktowi w Se (wypukłej otoczce przestrzeni rozwiązań S). Gdy ~τ
jest wektorem binarnym, odpowiada to rozwiązaniu problemu.
W przypadku TSP zmienna decyzyjna xij może odpowiadać
krawędzi (i, j) i mieć wartość xij = 1, gdy krawędź (i, j) jest użyta
lub xij = 0 gdy tak nie jest. W takim przypadku, wartość
feromonowa jest związana z każdą zmienną decyzyjną, a to już jest
bardzo bliskie sposobu rozwiązywania TSP za pomocą algorytmów
ACO.
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
9 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wstęp
Aktualizacja feromonu
Interpretacja graficzna
Konstruowanie rozwiązania
Aktualizacja feromonu
By utrzymać wartość feromonu w przedziale [0, 1] jego
uaktualnienie trzeba wykonać według poniższej reguły:
τij ← (1 − ρ)τij + ρ
m
X
∆τijk ,
(2)
k=1
gdzie
∆τijk =

 Pm1/C k
h=1
 0,
(1/C h )
, jeżeli krawędź (i, j) jest użyta przez mrówkę k
w innym przypadku.
(3)
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
10 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wstęp
Aktualizacja feromonu
Interpretacja graficzna
Konstruowanie rozwiązania
Interpretacja graficzna
Nowy wektor może być zinterpretowany jako przesunięcie starego
wektora feromonowego w kierunku średniej ważonej rozwiązań
użytych do uaktualnienia śladu feromonowego. Załóżmy, że zbiór
możliwych rozwiązań zawiera 3 wektory (0,0,0), (1,1,0) i (0,1,1),
wtedy feromonowy wektor ~τ przesuwa się w obszarze poszarzonego
trójkąta rozpiętego pomiędzy trzema możliwymi rozwiązaniami.
Dwa rozwiązania (0,0,0) i (1,1,0) zostały wygenerowane przez
mrówki i użyte do uaktualnienia feromonu. ~τ będzie przesunięty
w kierunku średniej ważonej d~ dwóch rozwiązań.
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
11 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wstęp
Aktualizacja feromonu
Interpretacja graficzna
Konstruowanie rozwiązania
Interpretacja graficzna
Na rysunku widać też, że rozwiązanie (0,0,0) jest lepszej jakości
niż (1,0,0) i dlatego przesunięcie jest bliżej niego.
(0,1,1)
(1,1,1)
(1,0,1)
(0,0,1)


Rozwiązanie
mrówki 2
(1,1,0)
d
(1,0,0)
(0,0,0)
Paweł Paduch
Rozwiązanie
mrówki 1
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
12 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wstęp
Aktualizacja feromonu
Interpretacja graficzna
Konstruowanie rozwiązania
Konstruowanie rozwiązania
Konstruowanie rozwiązania rozpoczyna się poprzez wylosowanie (z
jednakowym prawdopodobieństwem) jednego połączenia pomiędzy
miastami. Następnie w n − 1 krokach dodawane są do częściowego
rozwiązania s p (ang. partial solution) kolejne możliwe połączenia
(składniki rozwiązania ci,xi ∈ J(s p ), J(s p ) określa zbiór możliwych
składników rozwiązania, które mrówki mogą dodać do bieżącego
częściowego rozwiązania s p . Wybór kolejnego składnika
rozwiązania dokonywany jest za pomocą tzw. prawdopodobieństwa
przejścia (ang. transition probabilities) określonym przez funkcję
zwaną regułą przejścia stanu (ang. state transition rule).
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
13 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wstęp
Aktualizacja feromonu
Interpretacja graficzna
Konstruowanie rozwiązania
Konstruowanie rozwiązania
Reguła przejścia stanu jest funkcją feromonu oraz ewentualnie
dodatkowych wartości (np. długości krawędzi). W AS reguła
przejścia stanu określa prawdopodobieństwo dodania do bieżącego
częściowego rozwiązania s p możliwego składnika rozwiązania
ci,xi ∈ J(s p ), jako stosunek wartości feromonu τi,xi (dla składnika
ci,xi ) do sumy wartości feromonu dla wszystkich możliwych
składników rozwiązania.
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
14 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Krótki opis
Algorytm
Zalecane parametry
Ant System Local Best Tour
Tony White, Simon Kaegi oraz Terri Oda przedstawili w swojej
pracy Revisiting Elitism in Ant Colony Optimization modyfikację
algorytmu EAS. W systemie mrówkowym była potrzeba globalnego
obserwatora, który by stwierdził, która z tras jest najlepsza. Główną
ideą AS-LBT jest pozbycie się tego globalnego obserwatora.
Zamiast tego każda z mrówek pamięta najlepszą z tras, którą
znalazła do tej pory i używa jej zamiast elitarnego rozwiązania.
Wygląda to tak, jakby skala problemu została zredukowana do
poziomu pojedynczej mrówki, która ma indywidualną kopie
systemu mrówkowego używającego jednej elitarnej mrówki.
Efektywność tego rozwiązania jest bardzo zbliżona do EAS
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
15 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Krótki opis
Algorytm
Zalecane parametry
Algorytm
Algorytm jest bardzo podobny do EAS. Też składa się z dwóch
głównych części, inicjalizacji i głównej pętli. Różnica polega na
dodaniu Lokalnego Wyszukiwania, oraz zastąpieniu elitarnych
mrówek lokalnymi najlepszymi mrówkami.
Inicjalizacja
Wczytaj początkowe wartości parametrów
Ustaw początkową wartość feromonu na krawędziach
Rozmieść mrówki w losowych miastach
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
16 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Krótki opis
Algorytm
Zalecane parametry
Algorytm
Główna pętla
1
Konstruowanie rozwiązania
Mrówki wybierają trasę zgodnie z prawdopodobieństwem
danym wzorem jak w przypadku AS.
Szanse na wybranie kolejnej krawędzi zależą od ilości
feromonu τ i heurystyki η.
Kolejne miasta wybierane z puli miast nieodwiedzonych, aż
będzie ona pusta.
2
3
4
Zaimplementowane Lokalne Wyszukiwanie - w AS
oryginalnie nie stosowano.
Aktualizacja najlepszej trasy - każda mrówka wylicza długość
otrzymanej trasy i w razie poprawienia wyniku zapamiętuje ją.
Aktualizacja feromonu
Odparuj
Nanieś feromon przez wszystkie mrówki jak w AS cycle.
Dodatkowo nanieś feromon przez wszystkie mrówki jak w
AS cycle (ale na ich lokalne najlepsze trasy).
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
17 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Krótki opis
Algorytm
Zalecane parametry
Zalecane parametry
W AS-LBT zalecane są następujące parametry:
α=1
β=5
ρ = 0, 5
m = n, gdzie m liczba mrówek a n liczba miast
τ0 = 10−6
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
18 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Podsumowanie
AS
Zalety
+ dobra dokumentacja
+ prostota
+ intuicyjność
Wady
- stosunkowo słabe wyniki w porównaniu z następcami
Cechy szczególne
wszystkie mrówki nanoszą feromon
3 sposoby nanoszenia feromonu
QAS (ilościowy) - feromon nanoszony po każdym kroku, stała
ilość
DAS (gęstościowy) - feromon nanoszony po każdym kroku,
ilość zależna od długości krawędzi
CAS (cykliczny) - feromon nanoszony dopiero gdy wszystkie
mrówki znajdą rozwiązanie, ilość zależna od długości trasy
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
19 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Podsumowanie
EAS
Zalety
+ w porównaniu do AS lepsze rezultaty osiągnięte w mniejszej
liczbie iteracji
Wady
- potrzeba pamiętania najlepszej trasy
- dodatkowy parametr określający liczbę elitarnych mrówek
Cechy szczególne
na najlepszą trasę od początku działania algorytmu nanoszona
jest dodatkowa ilość feromonu
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
20 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Podsumowanie
ANT-Q
Zalety
+ bardzo dobre rezultaty
+ feromon jest odparowywany tylko na krawędziach, które były
użyte przez mrówki, przyspiesza to algorytm
Wady
- znaczny poziom komplikacji w aktualizacji feromonu
- aktualizacja feromonu przez wszystkie mrówki w każdym kroku
jest kosztowna
- algorytm został zaniechany na rzecz jego następcy
Cechy szczególne
feromon aktualizowany jest tylko na krawędziach, gdzie
poruszają się mrówki
po znalezieniu trasy przez wszystkie mrówki wyliczane jest
opóźnione wzmocnienie i feromon jest aktualizowany na
najkrótszej trasie od początku działania algorytmu Tgb lub na
najkrótszej trasie w danej iteracji Tib
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
21 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Podsumowanie
ACS
Zalety
+ bardzo dobre rezultaty
+ feromon jest odparowywany tylko na krawędziach, które były
użyte przez mrówki
+ nieznaczne uproszczenie w stosunku do ANT-Q
+ dobra dokumentacja
Wady
- nadal dość duży poziom komplikacji
- aktualizacja feromonu przez wszystkie mrówki w każdym kroku
jest kosztowna
Cechy szczególne
jeden z lepszych algorytmów mrówkowych
odparowywanie tylko na krawędziach użytych przez mrówki
dodatkowe wzmocnienie feromonu na najlepszej trasie
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
22 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Podsumowanie
MMAS
Zalety
+ bardzo dobre rezultaty
+ dobra dokumentacja
+ tylko jedna mrówka nanosi feromon
Wady
- potrzeba restartowania algorytmu gdy dojdzie do stagnacji
Cechy szczególne
wprowadzenie limitów dolnych i górnych na poziom feromonu
restartowanie algorytmu
inicjacja maksymalną ilością feromonu τmax
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
23 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Podsumowanie
ASrank
Zalety
+ wyniki nieco lepsze niż EAS
Wady
- nieco większy stopień komplikacji niż EAS
- potrzeba sortowania wyników by utworzyć rankingi
Cechy szczególne
feromon aktualizowany jak w EAS
dodatkowo kilka najlepszych mrówek aktualizuje feromon
w ilościach zależnych od miejsca w rankingu
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
24 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Podsumowanie
ANTS
Zalety
+ obliczanie prawdopodobieństwa wyboru następnego miasta jest
dużo mniej kosztowne niż AS
Wady
- duży stopień komplikacji
- pierwotnie nie był zaprojektowany do TSP
- potrzeba liczenia dolnej granicy
Cechy szczególne
modyfikacja w sposobie liczenia prawdopodobieństwa
modyfikacja w sposobie aktualizacji feromonu (brak parametru
parowania) lepsze rozwiązania od średniej dodają feromon,
gorsze odejmują
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
25 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Podsumowanie
BWAS
Zalety
+ do kilkuset miast bardzo dobre wyniki, nawet lepsze niż ACS
Wady
- spory poziom komplikacji
Cechy szczególne
najgorsza bieżąca ścieżka powoduje odparowanie feromonu
najlepsza globalna ścieżka powoduje dodanie feromonu
restartowanie jak w MMAS
wprowadzono element mutacji
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
26 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Podsumowanie
HC-ACO
Zalety
+ można rozwiązywać wiele problemów kombinatorycznych,
których rozwiązanie może być reprezentowane przez binarne
wektory
Wady
- duży stopień komplikacji
Cechy szczególne
wartość feromonowa przeskalowana do przedziału [0, 1]
rozwiązania leżą w narożnikach hipersześcianu
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
27 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Podsumowanie
AS-LBT
Zalety
+
+
+
+
jakość rozwiązania lepsza od EAS
możliwość łatwego rozproszenia
mniej parametrów niż EAS
prostota
Wady
- dość uboga dokumentacja
Cechy szczególne
algorytm bazuje na EAS
pozbycie się globalnego obserwatora pamiętającego najlepszą
trasę
każda mrówka pamięta swoją najlepszą trasę
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
28 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
Pierwsze zastosowania
Aby sprawdzić przydatność nowych algorytmów
metaheurystycznych trzeba zaimplementować je do rozwiązania
wielu problemów i porównać z innymi algorytmami. Tak stało się
też z algorytmami mrówkowymi. Jednym z najlepszych narzędzi do
testowania rozwiązań problemów NP-trudnych jest zadanie
komiwojażera (TSP). Z czasem pojawiały się kolejne zastosowania.
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
29 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
Główne obszary zastosowań
Obecnie można mówić już o dziesiątkach zastosowań, które można
pogrupować według następujących kategorii:
Problemy wyznaczania trasy (ang. routing problems)
Problemy przydziału (ang. assignment problems)
Problemy harmonogramowania (ang. scheduling problems)
Problemy sumy podzbioru (ang. subset problem)
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
30 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
Wyznaczanie optymalnej trasy
W problemie wyznaczania trasy:
mamy jednego lub wielu agentów,
określony zbiór lokacji,
każdy agent musi odwiedzić wszystkie lokacje w odpowiedniej
kolejności.
Ogólny problem polega na znalezieniu takiej kolejności,
by trasa pomiędzy kolejnymi lokacjami była minimalna.
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
31 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
Wyznaczanie optymalnej trasy
Do zagadnienia wyznaczania trasy można zaliczyć takie problemy
jak:
Problem sekwencyjnego porządkowania
Problem marszrutyzacji
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
32 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
Problem sekwencyjnego porządkowania
Jest to problem asymetrycznego TSP różniący się tym, że zamiast
cyklu Hamiltona mamy znaleźć ścieżkę Hamiltona (z węzła 1 do n)
oraz, że brane są pod uwagę ograniczenia pierwszeństwa. Takie
ograniczenia wymagają, by pewny węzeł i był zawsze odwiedzony
przed węzłem j.
Adaptacją algorytmu mrówkowego ACO do problemu
sekwencyjnego porządkowania jest HAS-SOP (ang. Hybrid Ant
System - Sequential Ordering Problem) zaprezentowaną przez
Gambardella i Dorigo w 1997 roku 1 .
1
L. M. Gambardella, M. Dorigo. Has-sop: Hybrid ant system for the
sequential ordering problem, 1997.
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
33 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
Problem sekwencyjnego porządkowania
Główną ideą algorytmu HAS-SOP było zastosowanie lokalnego
szukania (ang. local search). Jest to specyficzna procedura 3-opt
zwana SOP-3-exchange, która może sobie poradzić z wieloma
ograniczeniami pierwszeństwa bez jednoczesnego zwiększania
złożoności obliczeniowej. Wyniki uzyskane za pomocą HAS-SOP
były znacznie lepsze od dotychczasowego algorytmu genetycznego
MPO/AI specjalnie zaprojektowanego rozwiązywania zadań
sekwencyjnego porządkowania. HAS-SOP jest obecnie najlepszym
algorytm dla SOP 2
2
Luca Maria Gambardella, Marco Dorigo. An ant colony system hybridized
with a new local search for the sequential ordering problem. INFORMS J. on
Computing, 12:237–255, July 2000
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
34 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
Problem marszrutyzacji
Poblem wyznaczania trasy pojazdu (ang. Vehicle Routing Problem
- VRP)3 jest problemem zarządzania dystrybucją, taką jak np.
w firmach kurierskich. Polega on na wyznaczeniu optymalnych tras
dla określonej liczby pojazdów, których zadaniem jest obsłużenie
zbioru klientów. Taką optymalizację należy wykonać przy pewnych
ograniczeniach.
3
P. Toth, D. Vigo. The vehicle routing problem. SIAM monographs on
discrete mathematics and applications. Society for Industrial and Applied
Mathematics, 2002
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
35 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
Problem marszrutyzacji
W klasycznym zagadnieniu VRP mamy następujące założenia:
drogi łączące poszczególnych klientów tworzą graf
nieskierowany,
koszt dotarcia od klienta i do klienta j jest dany (np.
w postaci czasu),
do obsłużenia jest n klientów,
każdy klient obsługiwany jest przez jeden pojazd,
jeden pojazd może obsługiwać wielu klientów,
trasa każdego pojazdu zaczyna się i kończy w bazie,
dodatkowym założeniem może być ograniczona ładowność
pojazdu, problem CVRP (ang. Capacitated VRP),
można założyć, że określony klient może być obsłużony
w ścisłych oknach czasowych VRPTW (ang. VRP Time
Window ).
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
36 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
Problem marszrutyzacji
Celem jest znalezienie zbioru tras takich by zminimalizować czas
oczekiwania klientów. Do rozwiązania CVRP zaadoptowano
algorytm ASrank (ASrank − CVRP) 4 udoskonalony przez
Reimanna, Stummera i Doernera (ASrank − CVRPsav )5 .
4
Bernd Bullnheimer, Richard F. Hartl, Christine Strauss. An improved ant
system algorithm for the vehicle routing problem. Annals of Operations
Research, 89:319–328, 1999.
5
Marc Reimann, Michael Stummer, Karl Doerner. A savings based ant
system for the vehicle routing problem. Proceedings of the Genetic and
Evolutionary Computation Conference, GECCO ’02, strony 1317–1326, San
Francisco, CA, USA, 2002. Morgan Kaufmann Publishers Inc.
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
37 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
Problem marszrutyzacji
W przypadku VRPTW funkcja celu jest nieco inna.
Minimalizujemy liczbę ciężarówek i sumaryczny czas jazdy. Przy
czym preferowana jest mniejsza liczba pojazdów niż minimalny
całkowity czas podróży. Obecnie najlepszym algorytmem
mrówkowym zastosowanym do rozwiązania tego problemu jest
MACS-VRPTW 6 , gdzie MACS oznacza (ang. Multiple ACS).
6
L. M. Gambardella, E. Taillard, G. Agazzi. Macs-vrptw: A multiple ant
colony system for vehicle routing problems with time windows, 1999.
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
38 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
Problem marszrutyzacji
W MACS użyte są dwie równolegle pracujące, oddziałujące na
siebie kolonie mrówek (ACS-VEI i ACS-TIME).
Kolonia ACS-VEI
minimalizuje liczbę pojazdów (tras),
stara się znaleźć możliwe rozwiązanie dla vmin − 1
Jeżeli to się uda oba algorytmy są restartowane i zaczynają
z nowym vmin .
kolonia ACS-TIME
stara się dla danej liczby pojazdów zminimalizować sumaryczny
czas podróży.
startuje z vmin pojazdami,
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
39 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
Problemy przydziału
Problem przydziału polega na przypisaniu jednostek (obiektów,
zadań, itp.) do pewnej liczby zasobów (miejsca, agenci, itp.)
z zastrzeżeniem pewnych ograniczeń.
Przypisanie może być ogólnie reprezentowane jako mapowanie
zbioru I na zbiór J , gdzie każde przypisanie ma jakiś koszt.
Funkcją celu jest minimalizacja sumarycznych kosztów.
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
40 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
ACO w problemie przydziału
W celu zaimplementowania ACO do rozwiązania problemu
przydziału, trzeba przenieść problem do grafu konstrukcyjnego
GC = (C , L), gdzie C jest zbiorem komponentów (zwykle zawiera
wszystkie elementy i wszystkie zasoby), L jest zbiorem połączeń,
które w pełni łączą graf.
Mamy dwa typy decyzyjne.
kolejność elementów w jakich będą one układane
do których zasobów przypisać kolejne elementy.
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
41 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
ACO w problemie przydziału
Ślad feromonowy τij jak i decyzja heurystyczna ηij , mogą być
skojarzone z obydwoma typami i są związane z parą (i, j), gdzie
i jest elementem a j jest zasobem. Jednak w większości
przypadków ślad feromonowy wykorzystuje się jedynie do
kojarzenia elementów z zasobami, kolejność zaś jest ustanawiana
w sposób heurystyczny lub zupełnie losowy
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
42 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
Kwadratowe zagadnienie przydziału
Pierwsze sformułowanie zadania przydziału kwadratowego (ang.
Quadratic Assignment Problem - QAP) zostało sformułowane
w 1957 roku gdy Koopmans i Beckmann wyprowadzili
matematyczny model przydziału ekonomicznych aktywności do
zbioru lokacji. Obecnie QAP ma wiele praktycznych zastosowań
jak:
harmonogramowanie,
projektowanie rozmieszczenia układów elektronicznych na
płytkach drukowanych,
alokacja zadań w przetwarzaniu równoległym i rozproszonym,
statystyka i analiza danych,
projektowanie paneli kontrolnych, klawiatur,
rozmieszczenie budynków.
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
43 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
Sformułowanie problemu
Matematycznie problem można przedstawić za pomocą dwóch
macierzy A = [aij ] oraz B = [brs ], obie o rozmiarach nxn, gdzie aij
jest odległością pomiędzy punktami i oraz j, brs jest kosztem
przewozu pomiędzy zadaniem r i s. W takim wypadku funkcją celu
jest opisana poniższą zależnością:
f (π) =
n X
n
X
bij aπi πj ,
(4)
i=1 j=1
gdzie πi jest lokalizacją obiektu i w bieżącym rozwiązaniu
π ∈ S(n), S(n) - jest zbiorem permutacji zbioru {1, 2, ..., n}.
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
44 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
Cel
Celem QAS jest znalezienie przypisania obiektów do lokalizacji tak,
by funkcja celu była jak najmniejsza. bij aπi πj oznacza koszt wkładu
jednoczesnego przydziału obiektu i do lokalizacji πi i obiektu j do
lokalizacji πj .
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
45 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
Przykłady algorytmów
Do algorytmów mrówkowych, którym z powodzeniem udało się
podołać kwadratowemu zagadnieniu przydziału należą:
AS jako AS-QAP
ANTS jako ANTS-QAP
MMAS jako MMAS-QAP
Hybrid AS (HAS)
FANT (Fast Ant System)
Zarówno HAS jak i FANT są jedynie inspirowane systemami
mrówkowymi i w znacznym stopniu odstępują od głównego
aspektu metaheurystycznych struktur ACO.
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
46 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
Uogólnione zagadnienie przydziału
W uogólnionym problemie przydziału (ang. Generalized
Assignment Problem - GAP), zbiór zadań musi być przydzielony do
zbioru agentów w taki sposób, by koszt funkcji przydziału był
minimalny. Każdy agent j ma ograniczoną pojemność zasobów aj ,
a każde zadanie i przypisane do agenta j zabiera bij z jego
zasobów. Dodatkowo jest wprowadzony koszt dij przydziału
zadania i do agenta j. Jednym z pierwszych algorytmów
mrówkowych zastosowanych do rozwiązania GAP był MMAS-GAP
wzorowany na MMAS 7
7
Helena Ramalhinho Louren¸co, Daniel Serra. Adaptive approach heuristics
for the generalized assignment problem. Raport instytutowy, Economic Working
Papers Series No.304, Universitat Pompeu Fabra, Dept. of Economics and
Management, 1998
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
47 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
Kolorowanie Grafów
Jednym z pierwszych problemów przydziału bazujących na ACO
był problem kolorowania grafów (ang. Graph Coloring Problem GCP). Dla danego grafu nieskierowanego G = (N, A) należy
wyznaczyć minimalną liczbę kolorów przypisanych do węzłów
w taki sposób, by wszystkie pary sąsiadujących ze sobą węzłów
miały różne kolory. Zagadnienie to próbowali rozwiązać Costa
i Hertz 8 używając do tego AS. Wydajność algorytmu w jego
podstawowej wersji była dość słaba, o wiele lepsze były rozwiązania
hybrydowe albo tabu search. Jednak zastosowanie bardziej
zaawansowanych ACO niż AS w połączeniu z przeszukiwaniem
lokalnym powinno dać lepsze wyniki
8
D. Costa, A. Hertz. Ants can colour graphs. The Journal of the
Operational Research Society, 48(3):295–305, 1997
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
48 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
Problem przydziału częstotliwości
Problem przydziału częstotliwości (ang. Frequency Assignment
Problem - FAP) polega na przydzieleniu częstotliwości radiowych
do nadajników na pewnym obszarze tak, by nie zakłócały się
wzajemnie. Pasmo częstotliwości powinno mieć jak najmniejszą
szerokość. Istnieje bardzo wiele wariantów tego problemu. Jedną
z bardziej skutecznych adaptacji algorytmu mrówkowego uzyskali
Maniezzo i Carbonaro 9 stosując algorytm ANTS.
9
Vittorio Maniezzo, Antonella Carbonaro. An ants heuristic for the frequency
assignment problem. Future Gener. Comput. Syst., 16:927–935, June 2000
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
49 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
Pytania
?
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
50 z 51
Wstęp
HC-ACO
AS-LBT
Podsumowanie
Zastosowania
Wyznaczanie optymalnej trasy
Problemy przydziału
koniec
Dziękuję Państwu za uwagę.
Paweł Paduch
Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4
51 z 51