Pobierz

Transkrypt

Pobierz
Podstawy teoretyczne
algorytmów
metaheurystycznych
Andrzej Jaszkiewicz
Iteracyjna poprawa
Wygeneruj i oceń początkową populację X
Powtarzaj
Na podstawie populacji X oraz jej ocen
wygeneruj i oceń populację X’
Z X X’ wybierz nową populację X
Do momentu spełnienia warunków stopu
Iteracyjna poprawa z pamięcią
Intensyfikacja i dywersyfikacja
Zainicjuj pamięć M
Wygeneruj i oceń początkową populację X
Uaktualnij M na podstawie X
Powtarzaj
Na podstawie populacji X, jej ocen oraz pamięci
M wygeneruj i oceń populację X’
Uaktualnij M na podstawie X’
Z X X’ wybierz nową populację X
Do momentu spełnienia warunków stopu
Zainicjuj pamięć M
Wygeneruj i oceń początkową populację X
Uaktualnij M na podstawie X
Powtarzaj
Na podstawie populacji X, jej ocen oraz pamięci
M wygeneruj i oceń populację X’
Uaktualnij M na podstawie X’
Z X X’ wybierz nową populację X
Do momentu spełnienia warunków stopu
Metaheurystyki jako szkielety
algorytmów
Zastosuj operator generowania
rozwiązań początkowych
Zainicjuj pamięć M
Wygeneruj i oceń początkową populację X
Uaktualnij M na podstawie X
Zastosuj operatory konstruowania
Nowych rozwiązań
Powtarzaj
Na podstawie populacji X, jej ocen oraz pamięci
M wygeneruj i oceń populację X’
Uaktualnij M na podstawie X’
Z X X’ wybierz nową populację X
Do momentu spełnienia warunków stopu
Twierdzenie „No free lunch” (nic
za darmo)

Model wyroczni
Rozwiązanie,
np. ciąg 0 i 1
Wyrocznia
nieznana
funkcja f(x)
Wartość f(x)
1
Programistyczna interpretacja
modelu wyroczni
Optymalizacja funkcji zawartej w
wyroczni
double function (TVector Solution) {
// Nieznana implementacja
...
}
Rozwiązanie,
np. ciąg 0 i 1
Wyrocznia
nieznana
funkcja f(x)
Wartość f(x)
Algorytm A
Założenia twierdzenia NFL
Przestrzeń rozwiązań jest skończona (np. wektor 0
i 1 o stałej długości).
Liczba możliwych wartości funkcji jest skończona.
Wyrocznia działa deterministycznie zwracając
wynik pewnej funkcji.
1.
2.
3.

Twierdzenie „No free lunch”

Z 1, 2 i 3 wynika, że liczba funkcji, które mogą
znajdować się w wyroczni jest skończona.
Każda z możliwych funkcji ma równe
prawdopodobieństwo wystąpienia w wyroczni !!!
Nie posiadamy, żadnej dodatkowej wiedzy na
temat funkcji f(x).
Algorytm A generuje rozwiązania bez powtórzeń.
4.
5.
6.
Algorytm A jako reguła
generowania nowych rozwiązań
Sensowna miara jakości


Każda miara bazująca na wartościach wszystkich
rozwiązań wygenerowanych przez algorytm A.
Np.:




najlepsze wygenerowane rozwiązanie,
średnia wartość N najlepszych rozwiązań,
średnia wartość wygenerowanych rozwiązań,
Każdy algorytm A zastosowany do
optymalizacji funkcji zawartej w wyroczni
w zadanej liczbie iteracji da tę samą
wartość oczekiwaną dowolnej sensownej
miary jakości uzyskanych rozwiązań.

Rozwiązanie wygenerowane w i-tej iteracji:
xi = A(x1,f(x1), x2,f(x2),..., xi-1,f(xi-1))
ale nie:


średnia wartość rozwiązań w aktualnej populacji,
średnia wartość rozwiązań w końcowej populacji.
2
Intuicyjny „dowód”


Dwie zmienne binarne x1 i x2. Rozwiązanie to
wektor [x1, x2].
Funkcja celu przejmuje tylko dwie wartości 0 i 1.
Wszystkie możliwe funkcje celu
x1 x2
f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
1
0
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
x1=[0,0]
f(x1)=0
x2=[1,0] f(x1)=0
Metaheurystyki a maszynowe
uczenie na bazie twierdzenia
NFL
 Analogie






Jakie założenia twierdzenia NFL
mogą nie być spełnione w praktyce?




Cel: ML - klasyfikacja, MH - generowanie
ML: założenie opis dyskryminujący, MH chyba nie istotne
MH - uporządkowanie wartość funkcji celu

Wiedza nt. problemu może być
zawarta w operatorach





Generowania rozwiązań początkowych
Sąsiedztwa
Rekombinacji
Konstrukcji rozwiązań z wykorzystaniem pamięci
Konkretny problem może nie dopuszczać wszystkich
funkcji
Prawdopodobieństwo wystąpienia poszczególnych funkcji
nie musi być równe
Konkretny problem może nie
dopuszczać wszystkich funkcji
Algorytm A jako reguła generowania nowych rozwiązań
xi = A(x1,f(x1), x2,f(x2),..., xi-1,f(xi-1))
Nowe rozwiązania są generowane przez operatory:

Wiedza nt. problemu może być zawarta w operatorach
Każda z możliwych funkcji ma równe
prawdopodobieństwo wystąpienia w wyroczni !!!

Różnice

Nie posiadamy, żadnej dodatkowej wiedzy na temat
funkcji f(x).

rozwiązania - obiekty, przypadki
wygenerowane rozwiązania - przypadki uczące
wartość funkcji celu - klasa decyzyjna
reguła/algorytm - mechanizm klasyfikacji
wiedza - wiedza

Przykład
f(x1, x2) = w1 x1  w2 x2
w1 , w2 {0,1}
w1=0,
w2=0
w1=0,
w2=1
w1=1,
w2=0
w1=1,
w2=1
x1 x2
f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
1
0
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
3
Prawdopodobieństwo
wystąpienia poszczególnych
funkcji nie musi być równe

P(w1=1) = 0.8, P(w2=1) = 0.8

P(f = f1) = 0.04
P(f = f4) = 0.16
P(f = f6) = 0.16
P(f = f8) = 0.64



Czym są metaheurystyki?

Szybkość generowania rozwiązań

Twierdzenie NFL odnosi się od liczby
wygenerowanych rozwiązań a nie do czasu.
Rola operatorów




Eksperyment Boese Kahng i Muddu
(1994) dla problemu komiwojażera




Metaheurystyki to algorytmy działające na
problemach spełniających pewne założenia
(mających pewne cechy) często spotykane w
„praktyce”
Szkielet algorytmu metaheurystyki nie odwołuje się do
reprezentacji rozwiązań – odwołują się do niej tylko
operatory
Cechy problemów, które powodują, że nadają się one
do stosowania metaheurystyk zależą więc od
operatorów, a nie od samego problemu
Operatory są bardzo ważne !
Czy dla każdego problemu da się zdefiniować właściwy zestaw
operatorów?
Symetryczny problem
komiwojażera - TSP
Instancje o rozmiarach 100 i 500 miast
2500 „losowych” optimów lokalnych uzyskanych za
pomocą lokalnego przeszukiwania w wersji zachłannej
Miara podobieństwa rozwiązań – liczba wspólnych
łuków
Badanie relacji pomiędzy wzajemnym podobieństwem
optimów lokalnych a ich jakością
4
Przykładowe lokalne optimum
Inne lokalne optimum
Porównanie rozwiązań
Wspólne łuki w obu
rozwiązaniach
Wyniki dla 100 miast
Wyniki dla 500 miast
5
Inne obserwacje




Średnia spodziewana odległość dwóch losowych
rozwiązań to N-2 (dwa wspólne łuki)
Dla stu miast maksymalna odległość to 48 (52
wspólne łuki)
Wszystkie optima lokalne są zawarte w „kuli” o
średnicy 48. Kula to obejmuje 1/1059 rozwiązań
Dla 500 miast: średnica „kuli” 243, 1/10468
rozwiązań
Globalna wypukłość instancji (problemu?) korelacja jakość-odległość


Chociaż jednocześnie


Globalnie wypukła funkcja jednej
zmiennej ciągłej







Wiele rozwiązań podobnych do dobrych może mieć złą
wartość funkcji celu
Globalna wypukłość zależy od sposobu pomiaru
podobieństwa rozwiązań
Globalna wypukłość w innych
problemach

Jak globalna wypukłość tłumaczy
działanie metaheurystyk
Instancja jest globalnie wypukła jeżeli jakość rozwiązań
jest pozytywnie skorelowana z ich wzajemną
odległością
Dobre rozwiązania są do siebie podobne
Problem podziału grafu Boese Kahng i Muddu (1994)
Problem kwadratowego przydziału Merz, Freisleben
(2000)
Problem marszrutyzacji pojazdów Jaszkiewicz,
Kominek (2000, 2003)
Problem marszrutyzacji pojazdów Kubiak (2004)
...
Intuicyjnie oczywista dla wielu problemów
Problemy „globalnie płaskie”
Symulowane wyżarzanie, przeszukiwanie tabu –
model podrzucania piłeczki
Operatory rekombinacji – konstrukcja nowych
rozwiązań łączących cechy (a więc podobnych
do) rodziców

Podobieństwo nie gwarantuje jednak wysokiej
jakości – przydatna może być lokalna poprawa
6
Twierdzenie o schematach
Hollanda
Fitness distance correlation FDC



Podejście podobne do testowania globalnej
wypukłości
Odległość od optimum globalnego
Oryginalnie zakładano kodowanie 0-1

Występowanie wspólnego schematu w
krzyżowanych rozwiązaniach świadczy o ich
podobieństwie
010010111
011010101
 01*0101*1 – wspólny schemat


Entropia w zbiorze optimów
lokalnych

Miara entropii
Cechy lokalne

Efektywność lokalnego przeszukiwania



Dla TSP lokalne optimum osiąga się w średnio N
iteracjach, gdzie N to liczba miast
Głębokość i szerokość optimów lokalnych
Różne klasy instancji:
Losowe jednorodne
Nielosowe jednorodne
 Rzeczywiste


Ruggedness (chropowatość) –
współczynnik autokorelacji
Operatory sąsiedztwa dla
problemu komiwojażera

Wymiana dwóch miast


Rozwiązania sąsiednie różnią się czterema łukami

Wymiana dwóch łuków

Średnia różnica wartości sąsiednich rozwiązań
jest więc większa w pierwszym przypadku

Niezależność od skalowania funkcji celu
Rozwiązania sąsiednie różnią się dwoma łukami
7
Współczynnik autokorelacji a
rozmiar sąsiedztwa

Operator wymiany trzech łuków dla problemu
komiwojażera
Co daje metaheurystykom wiedza
o omówionych cechach
problemów?
 Znaczenie kodowania, sąsiedztwa, rekombinacji

Metody motywowane globalną wypukłością:
Adaptive multi-start local search
Heuristic concentration
 GRASP




Operatory rekombinacji
zachowujące dystans


Zachowywanie dystansu = zachowywanie
wspólnych cech rodziców
Potomek zawiera wszystkie cechy wspólne u
obu rodziców. Reszta jest uzupełniana losowo
lub heurstycznie.
Operatory rekombinacji zachowujące dystans
Dobór sąsiedztwa o niskim współczynniku
autokorelacji
Kiedy warto stosować
metaheurystyki?


Globalna struktura, trendy
Lokalny charakter funkcji
Obszar, z którego
generowany jest potomek
Rodzice
Metaheurystyki w praktyce

Uzyskanie w praktyce dobrych wyników przy
zastosowaniu metaheurystyk nie jest ani
oczywiste, ani łatwe
Naukowe i inżynierskie podejście do
adaptacji metaheurystyk do konkretnego
problemu
O rany!. Problem
optymalizacji. Co
by tu wymyślić?
Problem
optymalizacji.
Do pracy.
Najlepsze adaptacje metaheurystyk dla klasycznych
(prostych w definicji problemów) bazują na
wynikach nawet kilkudziesięciu lat badań (np. TSP)
 Algorytmy bazujące na metaheurystykach muszą być
konkurencyjne dla innych metod np. solverów
programowania matematycznego

8
Systematyczna/inżynierska
konstrukcji efektywnych algorytmów
optymalizacji




Case study – zarządzanie
satelitami obserwacyjnymi
Skonstruuj efektywną metodę lokalnego
przeszukiwania
Sformułuj hipotezy co do istotnych cech rozwiązań
Wykonaj testy korelacji jakość-odległość dla różnych
miar podobieństwa – różnych cech rozwiązań
Jeżeli obserwujesz korelację dla pewnych cech, to
zaprojektuj operator rekombinacji zachowujący
istotne cechy rodziców i zastosuj hybrydowy
algorytm ewolucyjny
Opis problemu





Zamówienia – zbiory zdjęć
Zdjęcia zwykłe – wymagane jedno ujęcie
Zdjęcia stereo (3D) – wymagane dwa ujęcia
Dane zdjęcie można wykonać na dwa sposoby
(ujęcia) w zależności od kierunku ruchu kamery
Zysk z realizacji zlecenia zależy w sposób
nieliniowy od zrealizowanej powierzchni
zlecenia
Opis problemu



Dla każdego ujęcia istnieje najwcześniejszy i
najpóźniejszy czas rozpoczęcia wynikający z pola
widzenia satelity – okno czasowe
Każdego ujęcie ma czas realizacji
Przełączanie się pomiędzy ujęciami zajmuje
znaczący czas zależny od ich położenia
Analogie z klasycznymi
problemami
Cel

Wybrać zdjęcia (ujęcia) i ustalić plan ich realizacji
maksymalizujący zysk

Problem plecakowy – wybór zdjęć


Bardziej skomplikowane ograniczenia i obliczanie
funkcji celu
Szeregowanie zadań – szeregowanie zadań na
jednej maszynie z czasami przełączania i
oknami czasowymi
Celem (bezpośrednim) nie jest minimalizacja
czasu realizacji
 Nie wszystkie zadania muszą być zrealizowane,
większość nie jest

9
Analogie z klasycznymi
problemami

Problem komiwojażera– zadania to miasta, czasy
przełączania to czasy przejazdu pomiędzy miastami



Analogie z innymi problemami
Nie wszystkie zadania muszą być zrealizowane, większość
nie jest
Dochodzą czasy realizacji zdjęć
Nie wszystkie zadania muszą być zrealizowane, większość
nie jest
Zasada propagowania ograniczeń
czasowych
Kodowanie rozwiązania

Problem planowania wycieczki - zadania to
odwiedzane miejsca, czasy przełączania to czasy
przejazdu, czasy realizacji zdjęć do czasy pobytu,
okna czasowe – dla atrakcji czasowych
Marszrutyzacja pojazdów (vehicle routing) – zadania to
miasta, czasy przełączania to czasy przejazdu
pomiędzy miastami, czasy realizacji zdjęć do czasy
załadunku/rozładunku, okna czasowe
załadunku/rozładunku



Uporządkowana lista (sekwencja) wybranych
ujęć
Wynikają z tego okna czasowe czasu
rozpoczęcia
Oryginalne okna
czasowe
Czas realizacji
i przełączenia
Czas
Okna czasowe
Czas
Konstrukcja rozwiązania
początkowego







Specjalizowana heurystyka zachłanna motywowana
heurystykami dla problemu plecakowego
W danym kroku wstawiane jest jedno ujęcie
Wybierane jest ujęcie i miejsce o najlepszym stosunku wzrostu
zysku do zajętego czasu
Zajęty czas uwzględnia realizację ujęcia i czasy przełączania
Przybliżone (liniowe) obliczanie zysku
Okna czasowe pozwalają zredukować zakres przeszukiwań
Pewna liczba początkowych ujęć jest wstawiana losowo
Wstawianie ujęcia
Czas
Czas
10
Lokalna optymalizacja



Trudny problem!
Ruch – wstawienie ujęcia w najlepszym, tj. dającym
największy wzrost zysku, miejscu połączone z
usunięciem niezbędnych ujęć
Zysk jest obliczany dokładnie
Okna czasowe pozwalają zredukować zakres
przeszukiwań

Proste rozszerzenia lokalnego przeszukiwania –
przeszukiwanie tabu i lokalne przeszukiwanie ze
zmiennym sąsiedztwem (variable neighborhood
search) nie dają zauważalnej poprawy wyników

... lub słabe sąsiedztwo
Czas
Hipotezy co do istotnych cech

Wybrane ujęcia

Zamówienia wybrane do realizacji –
zrealizowana powierzchnia
A
B
A

B
E
C
E
J
C
J
Hipotezy co do istotnych cech

K
K
A
D
F
E
C
B
A
D
F
E
C
B
A
D
F
E
C
B
Pary sąsiednich ujęć
A

B
E
C
J
B
E
C
J
K
A
D
F
E
C
B
Okna czasowe rozpoczęcia – odległość
pomiędzy punktami centralnymi
Kolejność par ujęć
A
K
Okna w rozwiązaniu 1
Okna w rozwiązaniu 2
A
B
A
B
Czas
Pierwsze podejście
Dla danego rozwiązania średnia odległość od
wszystkich lepszych rozwiązań
Ujęcia
Łuki
0.7
0.4
0.3
0.2
1
0.98
0.2
0.15
0.1
0.96
0.94
0.92
0.9
0.88
0.05
0.1
Dla danego rozwiązania średnia odległość
pomiędzy wszystkimi nie gorszymi
rozwiązaniami
1.02
0.25
0.5
Podobieństwo
Podobieństwo
0.6

Sekwencje
0.3
Podobieństwo

Drugie podejście
0.86
0
0
0.84
6.00E+08 6.50E+08 7.00E+08 7.50E+08 8.00E+08 8.50E+08 9.00E+08
6.00E+08 6.50E+08 7.00E+08 7.50E+08 8.00E+08 8.50E+08
9.00E+08
6.00E+08
6.50E+08 7.00E+08 7.50E+08 8.00E+08 8.50E+08 9.00E+08
Zysk
Zysk
Zysk
11
Przykładowe wyniki – jedna
instancja
0.6
0.5
7
16000
6
14000
12000
5
0.4
10000
4
0.3
8000
3
0.2
6000
2
0.1
1
0
0
6.00E+08
7.00E+08
8.00E+08
9.00E+08
Ujęcia
0.07
4000
2000
0
6.00E+08
7.00E+08
8.00E+08
9.00E+08
Zamówienia – zrealizowana
powierzchnia
0.965
0.96
0.955
0.95
0.945
0.94
0.935
0.93
0.925
0.92
0.06
0.05
0.04
0.03
0.02
0.01
0
6.00E+08 7.00E+08 8.00E+08 9.00E+08
Łuki
Sekwencje
Selected
acquisitions
Zamówienia – procent realizacji
0.1
0.09
0.08
0.07
0.06
0.05
0.04
0.03
0.02
0.01
0
6.00E+08 7.00E+08 8.00E+08 9.00E+08
Instance
code
6.00E+08 7.00E+08 8.00E+08 9.00E+08
2_13_111
4_17_186
3_25_22
2_15_170
2_26_96
2_27_22
0.972
0.929
0.933
0.927
0.902
0.885
Requests
selected for
realization
(normalized
surface)
Requests
selected for
realization
(surface)
Pairs
of
consecutive
selected
acquisitions
Sequences of
pairs
of
selected
acquisitions
0.952
-0.119
0.848
0.945
0.920
0.933
0.978
-0.276
0.959
0.946
0.887
0.845
0.936
0.855
0.918
0.937
0.866
0.603
0.981
0.775
0.907
0.978
0.874
0.942
Wielokrotne lokalne
przeszukiwanie
Operator rekombinacji powinien zachowywać
wspólne
+ wspólne ujęcia
+ wspólne sekwencje
+ wspólne łuki
Operator rekombinacji i
hybrydowy algorytm ewolucyjny





Znacząca poprawa wyników w stosunku do lokalnego
przeszukiwania mimo małego prawdopodobieństwa poprawy
rozwiązania w danym kroku
Długi czas obliczeń dla dużych instancji
Duży rozrzut wyników dla dużych instancji
+ okna czasowe
GLS
operator D
GLS
operator C
+ okna czasowe
Rozwiązanie jest uzupełniane poprzez heurystykę
wstawiania ujęć
Lokalna optymalizacja jest uruchamiana z
prawdopodobieństwem 2.5%
Wspólne łuki nie mogą być rozrywane
Algorytm z pełną elitarnością
Obserwacje:
GLS
operator A
GLS
operator B
Używany
w konkursie

0.965
0.922
0.875
0.938
0.781
0.713
Seria operatorów rekombinacji na bazie
heurystyki dla rozwiązań początkowych
Ujęcia (zapewnia zachowanie zamówień)
 Sekwencje
 Łuki
 Okna czasowe (tj. ograniczać je)

0.966
0.212
0.853
0.930
0.824
0.561
6.00E+08 7.00E+08 8.00E+08 9.00E+08


Starting time
windows
Starting time
(normalized windows
distances)
(distances)
Okna czasowe znormalizowane
Wnioski

Korelacje
GLS
operator E
+ wspólne sekwencje i łuki
Usprawnienie lokalnego
przeszukiwania




Ograniczona liczba przeglądanych ruchów
Rozważane jest wstawienie wszystkich ujęć, które
występowały w przynajmniej jednym rodzicu
Wstawienie pozostałych ujęć jest rozważane z
prawdopodobieństwem 10%
Obserwacje



Zadowalający czas obliczeń
Duży rozrzut wyników dla dużych instancji
Niewielka poprawa rozrzutu wyników przy zwiększaniu
rozmiaru populacji
12
Model wyspowy populacji
Wyniki konkursu – operator C
Team
1 (best)
2
3
4
5 (Author)
6
7
8
9
10
11
Populacja 1
Najlepsze
rozwiązanie
Najlepsze
rozwiązanie
Populacja 3
Populacja 2
Najlepsze rozwiązanie
Obserwacje
Zadowalający czas obliczeń
Mniejszy rozrzut wyników przy braku poprawy najlepszych
wyników
Porównanie operatorów
Wielokrotne lokalne
przeszukiwanie
21.68 (1.811)
4500
4000
3500
+ wspólne ujęcia
+ wspólne sekwencje
GLS
operator B
29.84 (0.783)
GLS
operator A
26.44 (1.488)
2500
2000
1500
+ okna czasowe



353
369
385
385
337
369
321
353
305
289
273
257
241
225
209
193
177
161
145
97
129
81
113
65
1
49
GLS
operator D
28.62 (1.067)
9.50E+08
9.00E+08
8.50E+08
8.00E+08
Źródło problemu – fabryki Renault
Zbiór rozróżnialnych pojazdów do ustawienia w
sekwencji
Pojazd = id + kolor + własności binarne
Ograniczenie twarde: maksymalna długość ciągłej
podsekwencji jednego koloru
Ograniczenia miękkie: konieczne wyrównywanie
proporcji pojazdów o danych własnościach w sekwencji
Cel: minimalizacja kosztów lakierowania i montażu
Uwaga: pojazdy daje się pogrupować!
7.50E+08
337
321
305
289
273
257
241
225
209
193
177
161
145
129
113
97
81
7.00E+08
65
+ wspólne sekwencje i łuki
49
GLS
operator E
30.19 (0.749)
Ustawianie pojazdów na linii montażu
– ROADEF challenge 2005

500
33
+ okna czasowe

1000
17
+ wspólne łuki

3000
0
GLS
operator C
29.96 (0.723)

Czas i jakość wyników lokalnego
przeszukiwania
1

33

17

Evaluation
31.76
30.84
30.28
30.1
29.91
29.88
29.84
29.69
29.22
29.08
23.56
Idea wyrównywania proporcji
(ograniczenia miękkie)
RC1 :
N
1

D
3
13
Hipotezy co do istotnych cech


Przykładowe wyniki: wspólne pozycje
Przypisanie indeksów grup do określonych
pozycji w sekwencji
Występowanie indeksów grup pojazdów w
takich samych podsekwencjach
Przykładowe wyniki: wspólne sekwencje
Wnioski


Krzyżowanie zachowujące
losowo wspólne sekwencje
Nie warto zachowywać wspólnych pozycji
(brak korelacji z jakością)
Warto zachowywać wspólne podsekwencje
Wyniki obliczeń
14
Specyficzny problem
marszrutyzacji pojazdów (vehicle
routing)
700
Badane miary odległości (cechy)


600
500
Base
Dumping sites
400
Route of vehicle 1
300

Route of vehicle 2
Route of vehicle 3
200

100
Procent wspólnych łuków
Procent wierzchołków przydzielonych do tych
samych pojazdów
Procent łuków przydzielonych do tych samych
pojazdów
Procent par wierzchołków przydzielonych
razem do jednej trasy
0
0
100
200
300
400
500
600
34
32
30
28
26
24
22
20
380000
430000
480000
530000
6.5
6
5.5
5
4.5
4
3.5
380000
430000
430000
480000
530000
Cost
480000
530000
The percentage of common pairs
of sectors assigned together
The percentage of common
assignments of arcs to vehicles
Cost
2.3
2.1
1.9
1.7
1.5
1.3
1.1
0.9
0.7
380000
Wyniki
Cost [-]
The percentage of common
sector assignments to
vehicles
The percentage of common
arcs
Wyniki graficznie
160000
150000
SA
140000
130000
EA
120000
110000
GLS2
MSLS
GLS
GLS3
100000
90000
26
24
22
80000
70000
20
18
16
14
12
380000
Cost
0
430000
480000
530000
20
40
60
80
100
120
140
CPU Time [s]
Cost
Czas i jakość wyników lokalnego
przeszukiwania
Vehicle routing problem for an
electronic market
CPU Time [ms]
2000
1500
1000
500
0
0
200
400
600
Iteration [-]
Quality [-]
2500
2000
1500
1000
500
0
0
100
200
300
400
500
600
Iteration [-]
15
Hypotheses about significant
features





Exemplary results
100
40
90
35
80
30
70
25
60
50
20
40
15
30
10
20
Pairs of orders served within one route
Assignment of orders to vehicles
Orders served
Assignment of pairs of orders to vehicles
Orders carried together (for some time)
5
10
0
0
4000
5000
6000
7000
8000
9000
10000
11000
12000
Pairs of orders served within one route
4000
5000
6000
7000
8000
9000
10000
11000
12000
Assignment of orders to vehicles
30
45
40
25
35
20
30
25
15
20
15
10
10
5
5
0
0
4000
5000
6000
7000
8000
9000
10000
11000
12000
Orders served
4000
5000
6000
7000
8000
9000
10000
11000
12000
Assignment of pairs of orders to vehicles
14
12
10
8
6
4
2
Orders carried together
0
4000
Correlations
Instance
PTP
PTC
USP
PPC
PWP
SL_50_1000
0,64
0,45
0,89
-0,27
0,47
SL_50_500
0,37
0,65
0,93
0,49
0,80
SL_50_200
0,43
0,57
0,58
0,35
0,60
SL_50_100
0,70
0,50
0,38
0,46
0,79
SL_20_1000
0,66
0,58
0,79
0,10
0,56
SL_20_500
0,42
0,78
0,90
0,52
0,63
SL_20_200
0,55
0,72
0,89
0,62
0,78
SL_20_100
0,66
0,48
0,52
0,56
0,61
PL_50_1000
0,67
0,49
0,74
0,65
0,72
PL_50_500
0,67
0,71
0,79
0,65
0,69
PL_50_200
0,62
0,54
0,61
0,66
0,64
PL_50_100
0,58
0,55
0,50
0,41
0,84
PL_20_1000
0,54
0,76
0,81
0,75
0,78
PL_20_500
0,55
0,73
0,79
0,63
0,77
PL_20_200
0,87
0,77
0,76
0,88
0,85
PL_20_100
0,88
0,74
0,78
0,90
0,91
Average
0,61
0,63
0,73
0,52
0,72
5000
6000
7000
8000
Operatory rekombinacji można projektować
systematycznie, a nie metodą prób i błędów
Mniej, krótsze i łatwiejsze w implementacji
eksperymenty obliczeniowe
 Rozumiemy dlaczego nasz algorytm działa (lub nie
działa)
10000
11000
12000
Series of recombination operators based on
the construction heuristic
Multiple start local
search
10315(285)
+ common orders
GLS
operator A
12521(339)
+ common assignment
of orders to vehicles
+ common pairs of orders
served within one route
GLS
operator B
12716(335)
GLS
operator D
12590(394)
GLS
operator E
12675(401)
+ common pairs of orders
served within one route
+ common assignment
of orders to vehicles
Ocena algorytmów
metaheurystycznych
Podsumowanie


Cost [-]

9000
Dwukryterialność oceny - jakość vs. czas
SA
MSLS
EA
GLS
GLS2
GLS3
160000
150000
140000
130000
120000
110000
100000
90000
80000
70000
0
20
40
60
80
100
120
140
CPU Time [s]
16

Ocena algorytmów przy
wielkości problemu dążącej do
nieskończoności
Rozrzut wyników danego algorytmu często
maleje wraz ze wzrostem wielkości problemu

Ocena algorytmów przy
wielkości problemu dążącej do
nieskończoności
Przy wzroście wielkości instancji maleje do zera
prawdopodobieństwo uzyskania różnej
kolejności dwóch algorytmów
Ranking na płaszczyźnie czaswielkość problemu

Najlepszy algorytm dla danego czasu i wielkości
Wielkość
A
B
A
B
Path relinking

Przejście ścieżki pomiędzy dwoma rozwiązaniami
f
Brak
C
A
B
Czas
Rozwiązanie A
Metoda Probe

Rodzaj rekombinacji?
Ustal pewne elementy wspólne dla obu rozwiązań
 Ustal pewne elementy różne u obu rozwiązań
 Ustal pozostałe elementy stosując odpowiedni
algorytm (np. dokładny lub specjalizowaną
heurystykę)
 Uruchom lokalne przeszukiwanie

Rozwiązanie B
Metoda atraktorów



Znajdź zbiór optimów lokalnych
Znajdź zbiór wszystkich elementów (atraktor)
występujących w optimach lokalnych (np. łuków
występujących w lokalnych optimach dla TSP)
Wykonaj pełen przegląd rozwiązań możliwych
dla danego atraktora
17

Podobne dokumenty