Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Optymalizacja wg podejścia „kolonii mrówek” Mrówki zostawiają na swojej trasie szlak zapachowy (feromonowy). Pozostałe mrówki starają się go śledzić. Ręcznie.

Podobne prezentacje


Prezentacja na temat: "Optymalizacja wg podejścia „kolonii mrówek” Mrówki zostawiają na swojej trasie szlak zapachowy (feromonowy). Pozostałe mrówki starają się go śledzić. Ręcznie."— Zapis prezentacji:

1 Optymalizacja wg podejścia „kolonii mrówek” Mrówki zostawiają na swojej trasie szlak zapachowy (feromonowy). Pozostałe mrówki starają się go śledzić. Ręcznie położony szlak feromonowy: Ślad zapachowy: 1) wyznacza trasę między mrowiskiem a źródłem pożywienia 2) pozwala na jej optymalne wytyczenie 3) umożliwia adaptację do zmieniającego się środowiska Dodatnie sprzężenie zwrotne (najsilniejszy ślad na najkrótszej drodze). źródło rysunków: Eberhart,Shi,Kennedy: Swarm Intelligence Dorigo M, Gambardella LM BIOSYSTEMS

2 wstawiona przeszkoda ?? losowo na prawo/lewo Na krótszej drodze szlak feromonowy szybciej domknięty Dodatnie sprzężenie zwrotne Szlak feromonowy a reakcja na zmianę otoczenia Dorigo M, Gambardella LM BIOSYSTEMS

3 Algorytm kolonii mrówek dla problemu komiwojażera 1W metodzie: grupa przemieszczających się wędrowców symulujących zachowanie mrówek 2Preferowany szlak o największym nasileniu feromonu 3Wzrost feromonu na najkrótszej trasie 4Komunikacja między mrówkami przez szlak feromonowy 5Strategia najbliższego sąsiada włączona w algorytm (mrówki kierują się nie tylko feromonem, ale również starają się dostać do miast raczej bliżej niż dalej położonych) Założenia: Sztuczne mrówki potrafią więcej niż prawdziwe: (1) Pamiętają swoją trasę (2)Ustalają, która przeszła najkrótszą drogę

4 Miasta połączone w graf pełny: krawędź między wierzchołkami i oraz j opisana (1) długością d(i,j) stała, definiuje problem (2) natężeniem feromonu f(i,j) zmienia się w trakcie nauki Z długości (stałej) i feromonu (zmiennego) budujemy funkcję preferowanego ruchu: t(i,j) = f(i,j) / [d(i,j)]  im większe t(i,j) tym większe będzie pstwo przejścia z i do j  – parametr [znaczenie feromonu/długości krawędzi]  =0 tylko feromon, duże  tylko długość optymalne:  =2

5 Mrówki wykonują wiele obiegów przed każdym z nich są losowo rozmieszczane po miastach przykład:

6 Losujemy q z przedziału (0,1): jeśli q q 0 [eksploracja] miasto j jest losowane z rozkładem, w którym prawdopodobieństwo jest proporcjonalne do t(i,j) Wybór mrówki: jest w mieście i do którego miasta iść? i Tu nie pójdzie bo już była Każda krawędź opisana przez t(i,j) Parametr q 0 z przedziału (0,1). q 0 – jeśli wysokie mrówki bardziej skłonne korzystać z doświadczenia społeczności – jeśli niskie mrówki chętniej eksperymentują z nowymi trasami ? optymalne q0=0.9 mrówka kieruje się doświadczeniem zdobytym przez mrowisko, nawet gdy wybór miasta następuje przy użyciu generatora liczb losowych

7 Odkładanie feromonu na krawędziach : globalne i lokalne 1)Globalne: Ma preferować najkrótszy szlak. Następuje na całej trasie gdy mrówki wykonają pełen obieg i porównają długości swoich tras. f(i,j):=(1-  )f(i,j)+  dla wszystkich krawędzi (i,j) na najkrótszej trasie,  – długość najkrótszej trasy  – parametr z (0,1)  ostatni przebieg ignorowany  =1ignorowane doświadczenie z poprzednich przebiegów zazwyczaj optymalne około  =0.1 Najkrótsza w jednym obiegu: czerwona Feromon na każdej z krawędzi należącej do najkrótszej trasy zostaje zmieniony wg.

8 Odkładanie feromonu na krawędziach : globalne i lokalne 2)Lokalne (zniechęcające, wykonywane po każdym kroku) Ma zniechęcać mrówki w przed poruszaniem się po dokładnie tej samej trasie (w tym samym obiegu) tym samym stymulując pozostałe do poszukiwań. Następuje na krawędzi (i,j) po przejściu mrówki z i do j. Feromon na krawędzi (i,j): f(i,j):=(1-  )f(i,j)+  p p – parametr zniechęcający (p=ML, M-liczba miast, L-długość trasy wg. heurystyki najbliższego sąsiada) f(i,j):=(1-  )f(i,j)+  1) Globalne (zachęcające, wykonywane po każdym obiegu)  – długość najkrótszej trasy

9 Algorytm kolonii mrówek dla problemu komiwojażera wprowadzamy problem – graf pełny o N wierzchołkach. z długościami krawędzi d(i,j). Na krawędzi (i,j) ustawiamy początkowy poziom feromonu f(i,j)=1/[d(i,j)]  rozmieszczamy m mrówek w losowo wybranych miastach każda z mrówek przechodzi z miasta i do miasta j, którego jeszcze nie odwiedziła z pstwem q 0 miasto j jest wybierane tak aby t(i,j) max z pstwem 1-q 0 miasto wybierane jest losowo z rozkładem danym funkcją preferencji. przy przejściu mrówka odkłada feromon lokalnie (zniechęcająco) na krawędzi (i,j) powtarzamy N razy każda z mrówek kończy obieg po pełnym obiegu mrówki porównują swoje trasy. feromon jest odkładany globalnie po najkrótszej trasie (zachęcająco na wszystkich krawędziach trasy) powtarzamy dopóki długość trasy ulega skróceniu

10 Dobór parametru q 0 okres nauki (rozkład prawdopodobieństwa zmienia się z czasem) Eksploracja przydaje się żeby przyspieszyć zbieżność. Losowe tylko rozmieszczanie mrówek przed każdym obiegiem Wyniki kolejne miasto zawsze losowane

11 10 iteracja25 iteracja500 iteracja 20 miast PL południowo-wschodnia trasa optymalna – na niebiesko czerwone – krawędzie najbardziej preferowane [ max t(i,j) ] Społeczność uczy się najkrótszej trasy cd: Tylko 3 najbardziej preferowane krawędzie należą do trasy optymalnej. Przypadkowe zagęszczenie w okolicach Lublina i Świdnika Tylko 2 najbardziej preferowane krawędzie nie należą do trasy optymalnej: Przemyśl-Rzeszów, Katowice-Częstochowa Wszystkie najbardziej preferowane należą do trasy optymalnej

12 Optymalna liczba mrówek Okres nauki

13 Bartłomiej Urbaniec: 20 krawędzi o największej funkcji preferencji w kolejnych iteracjach 20 najczęściej używanych krawędzi parametry  =2, q0=0.2, m=10

14 Trasy mrówek w ostatniej iteracji (Bartłomiej Urbaniec)

15 Bartłomiej Urbaniec: Zastosowanie algorytmu dla problemu najkrótszej drogi (do problemu rozwiązywanego przez prawdziwe mrowisko – który stanowił inspirację dla stworzenia algorytmu) 1)wprowadzamy prostokątna siatkę punktów 2)punkty nie są łączone w graf pełny łączymy krawędziami tylko najbliższych sąsiadów punkt czerwony przeszkoda długość czerwonych krawędzi ustawiany nieskończona pozostałe d(i,j)=1 3) mrówka wybiera spośród (zazwyczaj) 4 możliwości ruchu 4) pozwalamy jej wracać do punktów już odwiedzonych 5) nakładamy ograniczenie na maksymalną liczbę kroków

16 1 obieg

17 Przewodnik do przeszukiwania losowego - inspiracje przyrodnicze Przyrodnicze (naturalne) algorytmy optymalizacji MC 1)teoria doboru naturalnego – algorytmy genetycze 2)wzrost i hodowla kryształów, metalurgia – algorytm symulowanego wygrzewania wygląd owada zoptymalizowany na drodze przypadkowego krzyżowania genów oraz mutacji z mechanizmem selekcji naturalnej

18 Stabilne formy węgla: każda – lokalne minimum energii +6e orbitale walencyjne 2p x,2p y,2p z -węgiel -tworzy kierunkowe wiązania kowalencyjne grafit diament E wiązania (funkcja struktury układu)=E wiązania (10 23 położeń atomów) E nieobsadzone miejsca na orbitalach atom węgla: grafitdiament

19 metoda Czochralskiego hodowli kryształów zarodek krystaliczny roztopiony materiał ciut powyżej temperatury topnienia Wzrost kryształów jako proces optymalizacji niska T wysoka T E wiązania (funkcja struktury układu)=E wiązania (10 23 położeń atomów)

20 metoda Czochralskiego wzrostu kryształów zarodek roztopiony materiał nieco powyżej temperatury topnienia zarodek wolno wyciągany roztopiony materiał stygnie i powoli krystalizuje jeśli odpowiednio wolno schładzany materiał krystalizuje w idealnej strukturze (o optymalnej energii wiązania) jeśli zarodek zbyt szybko wyciągnięty: kryształ będzie złej jakości – defekty [układ osiąga najbliższe minimum lokalne] Wzrost kryształów jako proces optymalizacji E wiązania ( funkcja struktury układu)=E wiązania ( położeń atomów)

21 Struktura krystaliczna i defekty: Defekty powodują naprężenia wewnętrzne. Kryształ z defektami jest twardy. przywrócenie idealnej struktury: wymaga pokonania bariery energetycznej dyslokacja krawędziowa położenie międzywęzłowe wakansja położenie atomu energia kryształu dla usunięcia defektów (usunięcia naprężeń i zmiany twardości metalu) kryształ nagrzewa się do wysokiej temperatury, potem powoli schładza. Bariera energetyczna pokonana dzięki energii dostarczonej w formie ciepła. [proces odwrotny do hartowania stali]

22 Symulowane wygrzewanie (simulated annealing) Kirkpatrick, Science praca wykonana w IBM przy optymalizacji fizycznego projektowania układów scalonych) Pomysł: optymalizacja funkcji wielu zmiennych naśladująca proces usuwania defektów z kryształu. usuwanie defektów: optymalizacja energii wiązania w funkcji położeń wielkiej liczby atomów. Idealne optimum osiągane, gdy układ powoli schładzany (tak aby zachowana chwilowo równowaga termiczna). Metoda z symulacji mechaniki statystycznej - układu o bardzo wielu stopniach swobody w równowadze termicznej z otoczeniem – algorytm Metropolisa. Kirkpatrick –algorytm Metropolisa do optymalizacji złożonych problemów

23 kontakt termiczny Zachowanie układów o dużej liczbie stopni swobody w równowadze termicznej ze zbiornikiem ciepła kilka informacji o równowadze termodynamicznej i temperaturze – przyda się dla również dla symulacji transportu ciepła (źródło: F. Reiff Mechanika Statystyczna)

24 układ otoczenie kontakt termiczny EoEo EuEu Zachowanie układów o dużej liczbie stopni swobody w równowadze termicznej ze zbiornikiem ciepła

25 układ otoczenie kontakt termiczny EoEo EuEu całość izolowana = układ zamknięty

26 układ otoczenie kontakt termiczny EoEo EuEu całość izolowana = układ zamknięty E c =E u +E o (zachowana)

27 układ otoczenie kontakt termiczny EoEo EuEu całość izolowana = układ zamknięty E c =E u +E o (zachowana) E c – niezależna od czasu

28 układ otoczenie kontakt termiczny EoEo EuEu za F. Reiff Mechanika Statystyczna całość izolowana = układ zamknięty E c =E u +E o (zachowana) E c – niezależna od czasu ale E c =E u (t)+E o (t) – układy wymieniają energię wymiana energii = w stanie równowagi [równe temperatury zbiorników] fluktuacje (uśredniające się do zera) = poza równowagą [różne temperatury] ukierunkowany transfer ciepła dla wyrównania temperatur (doprowadzenia do równowagi)

29 układ otoczenie kontakt termiczny EoEo EuEu za F. Reiff Mechanika Statystyczna całość izolowana = układ zamknięty E c =E u +E o (zachowana) dążenie do równowagi zimny gorący przekaz energii między układem „gorącym” i „zimnym” aż do osiągnięcia równowagi gorącyzimny (np. blok lodu) (np. garnek z wrzątkiem) stany mikroskopowe gorącego i zimnego zbiornika

30 równowaga (jedna z definicji): stan najbardziej prawdopodobny P(E u )=C  (E u )  ’(E c -E u ) pstwo, że układ zawiera energię E u (że podział energii E u,E o =E c -E u ) (inaczej: że układ w takim stanie makroskopowym, że u ma energię E u ) stan mikroskopowy o minimalnej energii – jeden stanów mikro o większej energii – znacznie więcej  (E) liczba stanów mikroskopowych układu (stan mikro – położenia i prędkości cząsteczek), dla której energia zgromadzona w układzie wynosi E mniejszy podukład większy założenie: każdy stan mikroskopowy jest równie prawdopodobny wtedy: pstwo, że realizowany dany stan makroskopowy = proporcjonalne do liczby stanów mikro odpowiadających danemu stanowi makro  (E) – funkcja silnie rosnąca z E (oraz z rozmiarem układu)

31 P(E u )=C  (E u )  ’(E c -E u ) transfer energii (w formie ciepła) między u a o aż do osiągnięcia równowagi stan równowagi: maksymalne prawdopodobieństwo. Możliwe fluktuacje wokół wartości najbardziej prawdopodobnej. E u  E  (E) – funkcja silnie rosnąca z E (oraz z rozmiarem układu)

32 P(E u )=C  (E u )  ’(E c -E u ) transfer energii (w formie ciepła) między u a o aż do osiągnięcia równowagi stan równowagi: maksymalne prawdopodobieństwo. Możliwe fluktuacje wokół wartości najbardziej prawdopodobnej. jeśli P max to również log P max: poniżej na tej folii log = ln E o =E c - E u w równowadze: E u w równowadze (stan najbardziej prawdopodobny): (def. temperatury) transfer ciepła – napędzany gradientem T i dążący do jej wyrównania  E d  (E) – funkcja silnie rosnąca z E (oraz z rozmiarem układu)

33 w równowadze: układ bardzo mały w porównaniu z otoczeniem, z którym znajduje się w równowadze termicznej pytanie: jakie jest prawdopodobieństwo, że układ ma energię E u : P(E u ) ? E u <

34 niska T- układ będzie przechowywał minimalną wartość energii jeśli T bliskie zeru: znajdziemy go tylko w stanie o najmniejszej energii granica wysokiego T: układ może znaleźć się z równym prawdopodobieństwem przechowywać dowolnie wysoką energię znalezienie układu w stanie o dużej energii jest prawdopodobne

35 Algorytm Metropolisa – symulacja układu, który fluktuuje termicznie w równowadze z otoczeniem (zbiornikiem ciepła) kolejne kroki czasowe – zmiany stanu mikroskopowego układu układ ma podlegać rozkładowi Boltzmana E N exp(-E/10) exp(-E) exp(-E*10)

36 Układ opisany zbiorem zmiennych X=(x 1,x 2,x 3,...,x N ) – punkt w wielowymiarowej przestrzeni chcemy zasymulować fluktuacje termiczne zmiennych, X 1  X 2  X 3  X 4  X 5  tak, żeby układ był w „równowadze” termicznej z otoczeniem o temperaturze T. prawdopodobieństwo tego, że na „ścieżce” fluktuacji pojawi się stan X ma być dane przez zadany z góry rozkład w(X), u nas: Boltzmana w(X)= Cexp(-E(X)/kT) Algorytm Metropolisa za S.Kooninem

37 układ jest w stanie X. Do jakiego stanu przejdzie? wybieramy losowo stan próbny X p z pewnego otoczenia stanu X X p :=X+(  x 1,  x 2,...,  x n ) –  x i losowane z przedziału [-d,d] z rozkładem równomiernym możliwości: 1) X p mniej prawdopodobne liczymy r=w(X p )/w(X) jeśli r  1 [ w(X p )  w(X) ] – akceptujemy stan próbny X:=X p jeśli r<1 [w(X p )

38 punkty na ścieżce wygenerowanej algorytmem M. istotnie podlegają rozkładowi pstwa w(X): wyobraźmy sobie, że mamy wielu wędrowców poruszających się zgodnie z algorytmem Metropolisa N(X) – aktualna liczba wędrowców w punkcie X zmiana liczby wędrowców w Y w wyniku migracji z i do punktu X  = N(X)P(X  Y) - N(Y)P(Y  X) XY w warunkach równowagi (bez zmian w średnim rozkładzie wędrowców N r (X) ) równowaga osiągana po odpowiednio dużej liczbie kroków algorytmu uwagę koncentrujemy na 2 stanach układu

39 N= wędrowców. rozkład w(x)=C exp(-50x 2 ) kropki: liczba wędrowców w przedziale x-dx/2, x+dx/2 dx=0.01 równowaga w schemacie Metropolisa start: rozkład równomierny niebieska linia łączy punkty dane

40 pozostaje pokazać, że N r (X) jest proporcjonalne do w(X) pstwo podjęcia próby (wylosowania Y jako p.próbnego) pstwo zaakceptowania próby losujemy punkty próbne z rozkładem równomiernym mamy 2 przypadki: w(X)>w(Y) : A(Y  X) = 1 A(X  Y) =w(Y)/w(X) w(X)

41 Algorytm symulowanego wyżarzania dla optymalizacji E(P) Wystartuj w punkcie P, ustaw wysoką „temperaturę” T Przesuń P losowo P’=P+dP Nowy punkt akceptowany (P:=P’) zawsze gdy lepszy E(P’) E(P) –prawdopodobieństwo zaakceptowania punktu gorszego P’ dane przez np. exp(-(E(P’)-E(P)) / kT) (rozkład Boltzmana) zmniejszyć T Koniec jeśli T=0 Losujemy liczbę losową q wg rozkładu równomiernego, jeśli q < exp (-(E(P’)-E(P)) / kT) P:=P’ Im niższe T, tym mniej chętnie akceptujemy przesunięcia w górę na skali energii Kirkpatrick – symulowane wygrzewanie w[E(X)]=Cexp(-E(X)/kT) alg. Metropolisa z modyfikacją rozkładu pstwa (T) w miarę działania algorytmu

42 Przykład 1: f(x)=sin(x)+x 2 /1000 w każdej T wykonywana pewna liczba losowań (przesunięcia z przedziału [-2,2]) Wysokie T – punkt P wędruje między minimami Niskie T – P uwięziony wokół jednego minimum Sposób zmiany temperatury: T=0.001 i 2 gdzie i spada od 100 do 1 W wysokiej T przeszukiwany szeroki zakres zmiennych. W niższej – algorytm bada dokładnie minimum, które może być globalne, jeśli schładzanie zostało odpowiednio wykonane. Techniczna uwaga: gdy zmieniamy T: najlepiej startować od najlepszego rozwiązania uzyskanego do tej pory.

43 T>5T<5 Zastosowanie S.A. Dla funkcji testowej de Jonga: Położenia P w kolejnych iteracjach: T<1 Przykład 2.

44 ścieżka (25 kroków) dla T=1 ścieżka (50 kroków) dla T=2 ścieżka (100 kroków) dla T=4 zawężanie zakresu przeszukiwań z temperaturą: generowane ścieżki

45 Przykład 3: Problem komiwojażera Generowanie P’ z P: P = [ ] Losujemy pierwsze i ostatnie miasto P’ = [ ] Losowo zmieniamy kolejność Sposób zmiany T długość P Najlepsze rozwiązanie Strategia schładzania a wynik końcowy zbyt szybkie schłodzenie [do najbliższego minimum lokalnego]

46 Przykład 4: klaster jonowy najprostsze przybliżenie: naładowane kule bilardowe (nie mogą się przenikać) r d dodatnio naładowane – współrzędne r 1,r 2,... ujemnie naładowane – współrzędne d 1,d 2,...

47 Przykład 4: klaster jonowy najprostsze przybliżenie: naładowane kule bilardowe (nie mogą się przenikać) r d dodatnio naładowane – współrzędne r 1,r 2,... ujemnie naładowane – współrzędne d 1,d 2,... potencjał oddziaływania: załóżmy że promienie jonowe są równe 1 oddziaływanie jonów o różnym znaku o tym samym znaku

48 r d fcja 20 zmiennych Weźmy 5 jonów dodatnich, pięc ujemnych, dwa wymiary konfiguracje z symulacji, strzałki pokazują wyniki dla obniżanej temperatury

49 ominięte minima lokalne minimum globalne

50 Przykład 5: najkrótsza droga na płaszczyźnie (kontinuum, nie graf) start meta wzniesienia: utrudnienia na trasie można je pokonać ale to kosztuje y x przeszkody środki przeszkód V(x,y)

51 poruszamy się po odcinkach prostych: liczba zakrętów = parametr rachunku funkcja kosztu: długość z definicji: całka z 1 wzdłuż trasy: całka liczona numerycznie rozwiązanie próbne = przesunięcie każdego z zakrętów w zakresie [-.5,.5]* T (zależna od T) schładzanie paraboliczne

52 wyniki: jeden zakręt

53 3 zakręty 2 zakręty !

54 algorytm Metropolisa położenia „wędrowca” jest zmienną losową podległą zadanemu rozkładowi w(x) Generacja liczb losowych o zadanym (ciągłym) rozkładzie prawdopodobieństwa generacja liczb losowych o zadanym rozkładzie przydatne dla symulacji MC, obliczania całek, rozwiązywanie równań różniczkowych, itd.

55 obliczenia całek MC 1)hit or miss generator o rozkładzie równomiernym f(x) losujemy x losujemy y odchylenie standardowe (cecha w) błąd wyznaczenia średniej: szacowanie błędu

56 obliczenia całek MC 1)hit or miss generator o rozkładzie równomiernym N (jedna sekwencja) wartość dokładna [1-exp(-1)] wartości plus minus   1/sqrt(N)

57 obliczenia całek MC 2) Metoda szacowania średniej generator o rozkładzie równomiernym f(x) losujemy x hit or miss średnia  1/sqrt(N) hom średnia

58 obliczenia całek MC 3)użycie niejednorodnego rozkładu pstwa g(x)  0 taka aby g(x) mogło być gęstością prawdopodobieństwa wtedy: I = g(x) dla zmiennej losowej x opisanej rozkładem g(x) jeśli g(x) tak wybrana, aby h(x) słabo zmienna w przedziale (a,b) - mamy szanse na niski błąd uwaga: jeśli h(x i )=const – błąd będzie 0 / N

59 Przykład liczenia całek z użyciem a. Metropolisa h(x)=sqrt(5*pi) cos(x)/C liczba kroków a.Metropolisa start – wędrowcy rozmieszczeni wg rozkładu równomiernego z przedziału [-5,5] czerwona kreska: = niebieska kreska: dokładna wartość całki (1.1355) -5 5 N=1000 wędrowców : amplituda fluktuacji maleje z N C (gdzie C bliskie jedynce)


Pobierz ppt "Optymalizacja wg podejścia „kolonii mrówek” Mrówki zostawiają na swojej trasie szlak zapachowy (feromonowy). Pozostałe mrówki starają się go śledzić. Ręcznie."

Podobne prezentacje


Reklamy Google