Upload
misty
View
41
Download
1
Embed Size (px)
DESCRIPTION
Zastosowanie sieci neuronowych do rozwiązywania problemu komiwojażera. K.-S. Leung, H.-D. Jin, Z.-B.Xu, „An expanding self-organizing neural network for the traveling salesman problem”, Neurocomputing, vol. 62, pp 267-292, Dec. 2004. Rafał Kuciński. Problem komiwojażera (TSP). - PowerPoint PPT Presentation
Citation preview
Zastosowanie sieci neuronowych do rozwiązywania
problemu komiwojażera
K.-S. Leung, H.-D. Jin, Z.-B.Xu,„An expanding self-organizing neural network for the
traveling salesman problem”,Neurocomputing, vol. 62, pp 267-292, Dec. 2004
Rafał Kuciński
Problem komiwojażera (TSP)
• Definicja ogólna
• Euklidesowy problem komiwojażera (ETSP)
• Poszukiwanie algorytmów przybliżonych ze względu na NP-zupełność
• Przybliżenie z dokładnością (1+1/c) można uzyskać w czasie O(n(logn)O(c))
• Zastosowania
Stosowane sieci neuronowe do rozwiązywania TSP
• Sieci Hopfielda – dobre wyniki tylko w przypadku problemów o niewielkich rozmiarach
• Samoorganizujące się mapy Kohonena (SOM) – niewielka złożoność obliczeniowa i dość dobre wyniki (ale jednak gorsze od innych metod przybliżonych SA, TS, GA)
Strategie poprawy jakości wyników generowanych przez SOM dla TSP
• Sieci o zmiennej strukturze – dynamiczne wstawianie/usuwanie neuronów (KNIES, FLEXMAP)
• Poprawa kryterium rywalizacji – ograniczanie zbyt częstych zwycięstw, opieranie się nie tylko na odległości
• Poprawa reguły uczącej – oprócz przybliżania zwycięzcy rozpraszanie pozostałych (KNIES), wprowadzenie „elastycznej siły” w celu zminimalizowania wielkości wynikowego pierścienia (CEN)
Budowa SOM dla TSP
• p neuronów wejściowych – ich stan jest reprezentowany przez wektor
M tworzących pierścień neuronów wyjściowych
Wektory te rozpatrujemy w dwóch przestrzeniach
x1k
xpk
w1j
j
M
wpj
1
Proces uczenia
• Wprowadzanie danych wejściowych• Wyłanianie zwycięzcy zgodnie z metryką
euklidesową• Uaktualnianie wag zwycięzcy i sąsiadów
zgodnie z regułą (podstawową)
Warianty: normalizacja, „elastyczna siła”, ESOM
Uzyskiwane rozwiązanie
• Formowanie się mapy sąsiedztwa
• Wynikowa trasa odtworzona z niej ma na celu z danego miasta odwiedzanie miasta położonego najbliżej
• Gwarantuje to spełnienie wystarczającego warunku dla najkrótszej trasy, jednak nie jest on osiągalny we wszystkich przypadkach TSP
Wypukła otoczka a TSP
• Uwzględnienie warunku koniecznego dla optymalnej trasy
• W optymalnej trasie miasta tworzące wypukłą otoczkę znajdują się w takiej samej kolejności jak na otoczce
• Własność wypukłej otoczki była już wcześniej uwzględniana w CEN, ale była wyznaczana dodatkowym algorytmem
Expanding Self-Organizing Map (ESOM)
• Przyciągnie zwycięskiego neuronu w kierunku miasta w celu utworzenia mapy odwzorowującej sąsiedztwo miast
• Wypychanie neuronu na zewnątrz w celu utworzenia wypukłej otoczki
Algorytm dla ESOM1. Przekształć współrzędne miast tak, aby znajdowały się one w
obrębie okręgu CR (R<=1) o środku w punkcie (0,0)
2. Przypisz losowe wartości wektorom wj (wewnątrz CR) oraz przypisz t = 0
3. Losowo wybierz miasto i wprowadź jego współrzędne do warstwy wejściowej
4. Znajdź wygrywający neuron m(t) zgodnie z metryką euklidesową
5. Uaktualnij wagi neuronu m(t) i jego sąsiadów wg formuły
Algorytm c.d.
6. Uaktualnij σ(t) i η(t) zgodnie z przyjętym schematem zmniejszania; t = t+1; jeśli nie koniec idź do 3.
7. Oblicz wartość aktywacji każdego miasta wg formuły
8. Posortuj miasta zgodnie z wartością aktywacji, otrzymując rozwiązanie
Współczynnik rozszerzający
βj(t) odzwierciedla własność wypukłej otoczki
Współczynnik cj rośnie wraz ze wzrostem βj(t) – największą wartość przyjmuje dla miast na wypukłej otoczce; jednocześnie jest bliski swojemu minimum 1, kiedy wektor wagowy znajduje się blisko miasta
Poprawność ESOM
• Jeżeli przyjmiemy R<sqrt(7)/4, to rozwiązania generowane przez ESOM są zbieżne do rozwiązania posiadającego własność zachowania sąsiedztwa wtw gdy dotyczy to także SOM
• Brak formalnego dowodu, że ESOM generuje rozwiązania zachowujące własność wypukłej otoczki, ale analiza trendu i wyniki eksperymentów potwierdzają ten fakt
Złożoność
• W kroku 1, 2, 7 i 8 każde miasto jest przeglądane co najwyżej dwa razy – O(n)
• Liczba iteracji pomiędzy krokiem 3 a 6 wynosi O(n)
• W każdej iteracji krok 4 potrzebuje czasu O(n) na wyłonienie zwycięzcy, a w kroku 5 używanych jest co najwyżej n neuronów
• Całkowita złożoność: O(n2)
Implementacja
• Promień R=0.6• Liczba neuronów wyjściowych M równa liczbie
miast n• 100 cykli treningowych (100n iteracji)• Parametr uczenia η: początkowo 0.8 liniowo
maleje do 0 w ostatniej iteracji• Szerokość σ(t) początkowo ustawiona na
6.2+0.037n maleje liniowo do 1 przez pierwsze 65% iteracji i pozostaje równa 1 przez pozostałe 35%
Eksperymenty obliczeniowe
• 1. Porównanie ESOM z SOM Budinicha i SA (podstawową wersją)
• 18 syntetycznych TSP o rozmiarze od 50 do 2400 miast (wewnątrz kwadratu jednostkowego) - teoretyczne ograniczenie dolne: 0.765sqrt(n)
• Przykłady z TSPLIB
2. Porównanie ESOM z rozszerzonymi wersjami SOM
Budinicha i CEN
• Rozwiązania poprawiane za pomocą heurystyki NII (na bazie 2-Opt)
• Testy na 5 przykładach z TSPLIB
• CEN wolniejsza ze względu na dodatkowy czas potrzebny do wyznaczenia wypukłej otoczki
3. Porównanie ESOM z KNIES
• Sieć KNIES do tej pory była uznawana za dającą najlepsze wyniki dla TSP
• Na 15 przykładów z TSPLIB okazuje się być lepsza od ESOM tylko w dwóch przypadkach
• Jest bardziej skomplikowana przez co obliczenia zajmują więcej czasu
Dziękuję za uwagę