5. Metody stochastyczne (symulowane wyżarzanie, algorytmy genetyczne) -> metody Monte Carlo

Podobne dokumenty
Optymalizacja (minimalizacja) funkcji. Plan wykładu: 1. Sformułowanie problemu, funkcja celu. 2. Metody bezgradientowe

KADD Minimalizacja funkcji

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

WYKŁAD 9 METODY ZMIENNEJ METRYKI

ZADANIA OPTYMALIZCJI BEZ OGRANICZEŃ

1 Równania nieliniowe

KADD Minimalizacja funkcji

Metody numeryczne I Równania nieliniowe

Wprowadzenie Metoda bisekcji Metoda regula falsi Metoda siecznych Metoda stycznych RÓWNANIA NIELINIOWE

Optymalizacja ciągła

IX. Rachunek różniczkowy funkcji wielu zmiennych. 1. Funkcja dwóch i trzech zmiennych - pojęcia podstawowe. - funkcja dwóch zmiennych,

Optymalizacja ciągła

1 Metody rozwiązywania równań nieliniowych. Postawienie problemu

ROZWIĄZYWANIE RÓWNAŃ NIELINIOWYCH

Optymalizacja ciągła

Rozwiązywanie równań nieliniowych i ich układów. Wyznaczanie zer wielomianów.

Metody Numeryczne Optymalizacja. Wojciech Szewczuk

Rozwiązywanie równań nieliniowych

Metody Rozmyte i Algorytmy Ewolucyjne

Metody numeryczne II

Układy równań nieliniowych (wielowymiarowa metoda Newtona-Raphsona) f(x) = 0, gdzie. dla n=2 np.

Całkowanie numeryczne przy użyciu kwadratur

Matematyka stosowana i metody numeryczne

KADD Metoda najmniejszych kwadratów funkcje nieliniowe

Funkcje dwóch zmiennych

II. FUNKCJE WIELU ZMIENNYCH

Definicja pochodnej cząstkowej

METODY ROZWIĄZYWANIA RÓWNAŃ NIELINIOWYCH

Iteracyjne rozwiązywanie równań

METODY NUMERYCZNE. Wykład 4. Numeryczne rozwiązywanie równań nieliniowych z jedną niewiadomą. prof. dr hab.inż. Katarzyna Zakrzewska

Metody numeryczne II

Przegląd metod optymalizacji wielowymiarowej. Funkcja testowa. Funkcja testowa. Notes. Notes. Notes. Notes. Tomasz M. Gwizdałła

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

1 Funkcje dwóch zmiennych podstawowe pojęcia

SZTUCZNA INTELIGENCJA

Wstęp do metod numerycznych 11. Minimalizacja: funkcje wielu zmiennych. P. F. Góra

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Uczenie sieci typu MLP

METODY NUMERYCZNE. Wykład 4. Numeryczne rozwiązywanie równań nieliniowych z jedną niewiadomą. Rozwiązywanie równań nieliniowych z jedną niewiadomą

VIII. Zastosowanie rachunku różniczkowego do badania funkcji. 1. Twierdzenia o wartości średniej. Monotoniczność funkcji.

1 Pochodne wyższych rzędów

Programowanie nieliniowe. Badania operacyjne Wykład 3 Metoda Lagrange a

Wybrane metody przybliżonego. wyznaczania rozwiązań (pierwiastków) równań nieliniowych

1.3. Optymalizacja geometrii czasteczki

Wstęp do metod numerycznych Rozwiazywanie równań algebraicznych. P. F. Góra

Zrównoleglona optymalizacja stochastyczna na dużych zbiorach danych

Z52: Algebra liniowa Zagadnienie: Zastosowania algebry liniowej Zadanie: Operatory różniczkowania, zagadnienie brzegowe.

RÓWNANIA NIELINIOWE Maciej Patan

Metoda gradientu prostego

Metody numeryczne. Równania nieliniowe. Janusz Szwabiński.

Komputerowa Analiza Danych Doświadczalnych

Elementy metod numerycznych

Optymalizacja ciągła

Metody iteracyjne rozwiązywania układów równań liniowych (5.3) Normy wektorów i macierzy (5.3.1) Niech. x i. i =1

Wykład z Technologii Informacyjnych. Piotr Mika

W naukach technicznych większość rozpatrywanych wielkości możemy zapisać w jednej z trzech postaci: skalara, wektora oraz tensora.

Rozwiązywanie równań nieliniowych i ich układów. Wyznaczanie zer wielomianów.

Aproksymacja. funkcji: ,a 2. ,...,a m. - są funkcjami bazowymi m+1 wymiarowej podprzestrzeni liniowej X m+1

13. Funkcje wielu zmiennych pochodne, gradient, Jacobian, ekstrema lokalne.

Matematyka II. Bezpieczeństwo jądrowe i ochrona radiologiczna Semestr letni 2018/2019 wykład 13 (27 maja)

Programowanie celowe #1

Zastosowania pochodnych

Metody rozwiązywania równań nieliniowych

Rachunek różniczkowy funkcji dwóch zmiennych

Metody numeryczne rozwiązywania równań różniczkowych

Wstęp do metod numerycznych 9a. Układy równań algebraicznych. P. F. Góra

Metoda Karusha-Kuhna-Tuckera

1 Pochodne wyższych rzędów

Wykład Matematyka A, I rok, egzamin ustny w sem. letnim r. ak. 2002/2003. Każdy zdający losuje jedno pytanie teoretyczne i jedno praktyczne.

Interpolacja. Marcin Orchel. Drugi przypadek szczególny to interpolacja trygonometryczna

3. Interpolacja. Interpolacja w sensie Lagrange'a (3.1) Dana jest funkcja y= f x określona i ciągła w przedziale [a ;b], która

Wstęp do metod numerycznych 9. Minimalizacja: funkcje jednej zmiennej. P. F. Góra

Funkcje dwóch zmiennych

METODY NUMERYCZNE. Wykład 3. Plan. Aproksymacja Interpolacja wielomianowa Przykłady. dr hab.inż. Katarzyna Zakrzewska, prof.agh. Met.Numer.

Rozwiązywanie równań nieliniowych i ich układów. Wyznaczanie zer wielomianów.

Pochodne cząstkowe i ich zastosowanie. Ekstrema lokalne funkcji

2. ZASTOSOWANIA POCHODNYCH. (a) f(x) = ln 3 x ln x, (b) f(x) = e2x x 2 2.

Metody numeryczne. materiały do wykładu dla studentów

Metody Numeryczne w Budowie Samolotów/Śmigłowców Wykład I

Zagadnienia - równania nieliniowe

Metody systemowe i decyzyjne w informatyce

9. BADANIE PRZEBIEGU ZMIENNOŚCI FUNKCJI

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

jeśli nie jest spełnione kryterium zatrzymania, to nowym punktem roboczym x(t+1) staje i następuje przejście do 1)

RÓŻNICZKOWANIE FUNKCJI WIELU ZMIENNYCH: rachunek pochodnych dla funkcji wektorowych. Pochodne cząstkowe funkcji rzeczywistej wielu zmiennych

Metody numeryczne Wykład 7

Kolejny krok iteracji polega na tym, że przechodzimy do następnego wierzchołka, znajdującego się na jednej krawędzi z odnalezionym już punktem, w

ANALIZA MATEMATYCZNA Z ELEMENTAMI STATYSTYKI MATEMATYCZNEJ

Zaawansowane metody numeryczne

SIMR 2016/2017, Analiza 2, wykład 1, Przestrzeń wektorowa

Elementy Modelowania Matematycznego

Prawdopodobieństwo i statystyka

PODSTAWY AUTOMATYKI. MATLAB - komputerowe środowisko obliczeń naukowoinżynierskich - podstawowe operacje na liczbach i macierzach.

Metoda określania pozycji wodnicy statków na podstawie pomiarów odległości statku od głowic laserowych

Rozdział 1 PROGRAMOWANIE LINIOWE

9. Podstawowe narzędzia matematyczne analiz przestrzennych

x y

Wstęp do metod numerycznych 12. Minimalizacja: funkcje wielu zmiennych. P. F. Góra

Metody numeryczne Wykład 4

Ekstrema globalne funkcji

Transkrypt:

Optymalizacja (minimalizacja) funkcji Plan wykładu: 1. Sformułowanie problemu, funkcja celu 2. Metody bezgradientowe a) metoda złotego podziału b) metoda sympleks c) metoda interpolacji Powell'a 3. Metody gradientowe a) metoda największego spadku b) metoda gradientów sprzężonych c) metoda Newtona 4. Minimalizacja z ograniczeniami: metoda funkcji kary zewnętrznej i wewnętrznej. 5. Metody stochastyczne (symulowane wyżarzanie, algorytmy genetyczne) -> metody Monte Carlo

Sformułowanie problemu, definicje pomocnicze Zadaniem optymalizacji jest poszukiwanie minimum lub maksimum funkcji (wielu zmiennych). W praktyce problem sprowadza się do poszukiwania minimum czyli takiego punktu dla którego zachodzi z warunkami Funkcje: f(x),g(x), h(x) są funkcjami skalarnymi. f(x) funkcja celu, celem jest znalezienie jej minimum (optymalizacja) g(x) i h(x) - funkcje określające warunki jakie musi spełniać rozwiązanie (więzy) ograniczają przestrzeń dopuszczalnych rozwiązań 2

Przykład Problem jednowymiarowy Problem dwuwymiarowy 3

minimum Rys. Przykład poszukiwania minimum z nałożonymi warunkami na rozwiązanie Trzy przypadki: 1) Problem bez więzów oraz dla g(x)>0 minimum znajdujemy dla f(x)=0 2) Jeśli warunkiem jest g(x)=0 to minimum znajduje się w punkcie takim że f(x)=12 3) Jeśli warunkiem jest g(x)<0 to rozwiązanie znajdziemy w pobliżu punktu w którym f(x)=12 4

Gradient funkcji wektor gradientu Dla funkcji celu definiujemy funkcję wektorową będącą gradientem funkcji Uwaga: gradient skierowany jest zawsze w stronę narastających wartości 5

Hesjan (macierz Hessego) Dla funkcji celu definiujemy macierz (hesjan) której elementami są jej drugie pochodne cząstkowe Macierz H(x) jest symetryczna implikacje numeryczne. 6

Minimum lokalne, minimum globalne oraz punkt siodłowy funkcji celu a) punkt x* stanowi minimum globalne funkcji jeśli b) punkt x* stanowi minimum lokalne funkcji jeśli c) punkt jest punktem siodłowym funkcji jeśli 7

Minima lokalne Rys. Minima lokalne i minimum globalne Rys. Punkt siodłowy funkcji (kontur 2d) Rys. Punkt siodłowy w 3D 8

Metoda złotego podziału (metoda jednowymiarowa, niegradientowa) 1) Wstępnie wyznaczamy przedział [a,b] w którym spodziewamy się minimum wartości funkcji 2) W przedziale [a,b] wyznaczamy dwa punkty l1 i l2 3) Jeśli to zmieniamy granice przedziału na [a,l2] Rys. Wyznaczanie kolejnych przybliżeń w metodzie złotego podziału 4) Jeśli to zmieniamy granice przedziału na [l1,b] 5) Proces podziału prowadzimy iteracyjnie aż do spełnienia warunku a jako przybliżenie minimum możemy przyjąć Pozostaje tylko kwestia jak wyznaczyć punkty tak aby wybór był optymalny tzn. chcemy wykonać jak najmniejszą ilość podziałów. 9

Punktem wyjścia jest zależność (złota proporcja/podział) Uzależniamy b od a Na podstawie rysunku możemy zapisać drugą relację po wstawieniu do równania otrzymujemy 10

Otrzymaliśmy dwie zależności po wstawieniu ich do równania wyjściowego dostajemy równanie kwadratowe na r i znajdujemy jego pierwiastki (dodatni - zachowujemy) (ujemny - odrzucamy) Po wyborze r=r1 możemy określić wartości l1 i l2 zakładając ponadto, że oba punkty powinny być symetryczne względem krańców przedziału 11

Metoda interpolacji kwadratowej Powell'a Przez trzy punkty: l1,l2,l3 prowadzimy wielomian 2 stopnia gdzie: F(l0) - wartość funkcji F[l0,l1] iloraz różnicowy 1 rzędu, F[l0,l1,l2] iloraz różnicowy 2 rzędu Rys. Wyznaczanie przybliżonego rozwiązania w metodzie Powell'a. Narzucamy warunek zerowania się pochodnej (spodziewamy się minimum) rozwiązując to równanie ze względu na λ otrzymamy Aby znaleziony punkt był rzeczywistym minimum, iloraz (F[l0,l1,l2]) musi spełniać warunek 12

Algorytm interpolacji Powell a: 1) Wybierz l0 i oblicz F[l0+h]<F[l0], F[l0+2h]<F[l0+h] (ewentualnie zmień znak: -h, jeśli nierówności nie są spełnione) 2) Wyznacz lm i sprawdź czy jest minimum 3) Jeśli odrzuć najdalej położony od lm punkt i ponownie wykonaj obliczenia z pkt. 2. ln najbliżej położony punkt względem lm Punkt lm akceptujemy jako minimum jeśli 13

Metoda sympleks (Neldera-Meada) Rozwiązania poszukujemy iteracyjnie dążąc do znalezienia minimum fukcji poprzez obliczanie jej wartości w ściśle określonych punktach. Do wyznaczenia kierunków poszukiwań oraz punktów, w których oblicza się wartości funkcji wykorzystuje się obiekt zwany sympleksem. Sympleks jest to n-wymiarowy obiekt, stanowiący najmniejszy zbiór wypukły zawierający punkty będące jego wierzchołkami. Wierzchołki sympleksu tworzą tylko takie punkty, dla których zbiór wektorów jest liniowo niezależny (punkty nie są współliniowe). Przykład. Sympleksy w 2 i w 3 wymiarach 14

Sposób postępowania w jednej iteracji 1. wybieramy zestaw N+1 punktów startowych (N liczba wymiarów), np. w postaci wektory di możemy przyjąć jako wersory układu kartezjańskiego Położenie p0 wybieramy arbitralnie, wartości li zależą od rozpatrywanego problemu. 2. Dla wszystkich wierzchołków obliczamy ciąg i szukamy dwóch punktów odpowiednio dla największej i najmniejszej wartości funkcji 3. Wyznaczamy środek ciężkości wierzchołków z wyłączeniem punktu pmax 15

4. Odbicie Wyznaczamy punkt podb leżący na linii łączacej środek ciężkości i wierzchołek pmax i jeśli zachodzi warunek to odbicie akceptujemy. W nowym sympleksie wierzchołek pmax zostaje zastąpiony przez podb. 5. Ekspansja Po odbiciu sprawdzamy też czy zachodzi warunek Jeśli tak to kierunek poszukiwań jest dobry i wtedy zamiast podb wyznaczamy 16

Jeśli to wierzchołki nowego sympleksu tworzą poprzednie za wyjątkiem wierzchołka pmax który zastępujemy pe. W przeciwnym wypadku wierzchołek pmax zastępujemy podb 6. Zawężenie Jeśli to należy wykonać tzw. zawężenie sympleksu. Wyznaczamy nowe przybliżenie 17

Jeśli zachodzi warunek Przykład zawężenia. to wierzchołek pmax zastępujemy pz. 7. Redukcja Jeśli Przykład redukcji sympleksu. dokonujemy redukcji sympleksu Przy sprawdzaniu warunków akceptacji nowego wierzchołka sympleksu sprawdzamy też warunek stopu jako kryterium stopu przyjmując Metoda sympleks jest mało efektywna, nierzadko potrzeba dużej liczby iteracji w celu znalezienia minimum funcji nie wyamaga jednak liczenia pochodnych. 18

Kierunkowe metody poszukiwania minimum funkcji Pochodna kierunkowa funkcji celu Różniczkę zupełną funkcji celu (skalar) możemy zdefiniować jako iloczyn skalarny wektorów Jeśli wektor u wyznacza kierunek prostej łączącej punkty x i x' to są one ze sobą powiązane Natomiast dla bardzo małych zmian wartości l możemy zapisać Na prostej łączącej (ustalone punkty) x i x' wartość funkcji celu zależna będzie od nowej zmiennej (λ) Liczmy różniczkę zupełną dla funkcji celu zależnej od l 19

Możemy teraz wyrazić pochodną kierunkową funkcji celu w punkcie x dla kierunku u następująco Jeśli korzystamy z pochodnej kierunkowej, to musimy ją wyliczać w każdej iteracji. Jak wykorzystać pochodną kierunkową do znalezienia minimum funkcji? Startując z określonego punktu x0 poszukujemy kolejnego przybliżenia tj. x1 w kierunku spadku wartości funkcji. W ten sposób wyznaczamy ciąg kolejnych przybliżeń poszukiwanego minimum. Procedurę iteracyjną przerywamy, gdy spełniony jest jeden z warunków (warunek STOPU): a) b) (najczęściej stosowany) (problematyczny w zastosowaniu jak rozumieć 0???) c) lub w kolejnych iteracjach rośnie wartość normy co oznacza brak zbieżności algorytm trzeba zrestartować i/lub zmienić parametry iteracji 20

Metoda największego spadku Korzystamy z pochodnej kierunkowej funkcji w punkcie x' Wektor kierunkowy u ma długość równą 1 Korzystamy z nierówności Schwartza Rys. Gradient funkcji i kierunek poszukiwań w metodzie największego spadku. Jeśli wektor kierunkowy wybierzemy w postaci to będzie on wskazywał kierunek największego spadku. Pochodna kierunkowa osiąga wtedy najmniejszą wartość: 21

Algorytm metody największego spadku: 1) Wybierz x0 2) Iteracyjnie obliczaj 3) Warunki zakończenia obliczeń Metoda największego spadku może być mało wydajna, jeśli kontur wartości funkcji celu jest wydłużony (elipsa). Pojawiają się wówczas częste zmiany kierunków poszukiwań zigzag. 22

Przykład. Gradient możemy obliczyć analitycznie 23

Metoda największego spadku z optymalizacją parametru l Kierunki poszukiwań w dwóch kolejnych iteracjach są ortogonalne. Jest to duży problem w przypadku, gdy funkcja ma wydłużony kształt w jednym z kierunków (poziomice funkcji są równoległe w szerokim zakresie). Tylko 41 iteracji ale mamy zygzak. 24

Metoda sprzężonego gradientu (CG) Metoda jest wydajna i dostarcza rozwiązania w skończonej liczbie kroków dla problemu w postaci Dwa wektory są wzajemnie sprzężone jeśli gdzie: A jest macierzą dodatniookreśloną Jeśli ciąg wektorów tworzą wektory wzajemnie sprzężone, to stanowią one bazę w przestrzeni R n i wówczas każdy wektor można rozwinąć w tej bazie 25

Algorytm CG Fletchera-Reevsa 1) Wybieramy punkt startowy x0 i obliczamy iteracyjnie przy czym kierunek poszukiwań wybieramy jako: a) i=0 b) i=1,2,3..,n 2) Wartość li wyznaczamy identycznie jak w metodzie największego spadku. Generowane wektory ui wyznaczają bazę A-ortogonalną. Natomiast parametr bi silnie ogranicza zmiany kierunku poszukiwania rozwiązania w kolejnej iteracji (eliminuje zygzak ). 26

Przykład. Metoda CG Tylko 13 iteracji dzieki brakowi zygzaku 27

Metoda Newtona poszukiwania minimum funkcji kwadratowej w R n Funkcję kwadratową definiujemy następująco gdzie: A jest pewną macierzą kwadratową oraz Jeśli macierz A jest symetryczna to wówczas zachodzi oraz (hesjan) Jeśli A jest dodatniookreślona to rozwiązanie można łatwo znaleźć, ponieważ (macierz dodatniookreślona jest niesobliwa i można ją odwrócić) 28

W metodzie Newtona zakładamy gdzie: xi przybliżone rozwiązanie w i-tej iteracji Korzystając z rozwinięcia funkcji w szereg Taylora możemy zapisać Jeśli pominiemy wyrazy rzędu d 2 to W i-tej iteracji poprawiamy rozwiązanie, tj. i ostatecznie Oczekujemy, że metoda Newtona będzie pracować również dla innych funkcji niż kwadratowe tj. gdy badaną funkcję celu można lokalnie przybliżyć funkcją kwadratową. Wadą metody jest konieczność wyznaczania hesjanu w każdym punkcie. Gdy ta staje się osobliwa wówczas metoda przestaje działać co może być spowodowane np. występowaniem błędów numerycznych. 29

Przypadek szczególny - zastosujmy schemat do funkcji kwadratowej W pierwszej iteracji dostajemy czyli - zbieżność do minimum uzyskujemy w jednym kroku. Ale metoda ma wady: 1) Metoda nie zawsze jest zbieżna nawet w pobliżu minimum 2) Wymaga znalezienia A-1 w każdej iteracji (problem z liczeniem pochodnych, jeśli nie analitycznie to numerycznie wówczas w sposób przybliżony) 30

Przykład. Hesjan (pochodne) liczony analitycznie - zaleta. Czy jest dodatniookreślony? To zależy od wektora (x,y) bo współczynniki nie są stałe. Rys. Metoda Newtona w połączeniu z metodą złotego podziału użytą w każdej iteracji. Tylko 8 iteracji jak dotąd najmniej. 31

Metoda funkcji kary Jeśli ograniczamy przestrzeń dopuszczalnych rozwiązań czyli nakładamy warunki np. lub to mamy do czynienia z problemem z ograniczeniami (więzami). Ograniczenia te chcemy wbudować w nasz algorytm w taki sposób aby znów problem stał się problemem bez ograniczeń bez konieczności sprawdzania warunków. Metoda funkcji kary zewnętrznej Stosujemy zmodyfikowaną funkcję celu gdzie: S(x) jest funkcją kary, a ci współczynnikiem rosnącym w kolejnych iteracjach 32

Prosty przykład funkcji kary zewnętrznej Jeśli spełniony jest pierwszy warunek to pierwsza suma się zeruje. Podobnie jest dla drugiego przypadku. Wtedy czyli brak kary w przestrzeni rozwiązań dopuszczalnych. W pozostałym obszarze (na zewnątrz), wartość funkcji celu rośnie w kolejnych iteracjach a więc nie znajdziemy tam minimum. Zmodyfikowana funkcja celu może nie być różniczkowalna ze względu na funkcję max() w definicji funkcji kary co eliminuje metody gradientowe przy poszukiwaniu minimum. Sposób postępowania przy uzyciu kary zewnętrznej: 1) wybieramy punkt startowy x0 2) określamy ci oraz modyfikujemy funkcję celu 3) znajdujemy rozwiązanie x* przy użyciu wybranej metody 4) sprawdzamy przyjęty warunek stopu jak w metodzie bez ograniczeń 5) jeśli warunek stopu nie jest spełniony to wykonujemy kolejną iterację przyjmując 33

Metoda funkcji kary wewnętrznej Zakładamy że warunki ograniczające mają postać Funkcja kary wewnętrznej przyjmuje wartości dodatnie wewnątrz obszaru rozwiązań dopuszczalnych, a jej wartość gwałtownie rośnie przy zbliżaniu się do brzegu (bariera). W każdej iteracji modyfikujemy funkcję celu wprowadzając funkcję kary S(x) z warunkiem dla współczynnika ci Własności funkcji kary wewnętrznej: a) b) jeśli dla ciągu przybliżeń spełniony jest warunek oraz dla określonego j to 34

Przykłady funkcji barierowych w metodzie kary wewnętrznej: Sposób postępowania: 1) wybieramy punkt startowy x0 2) określamy ci oraz modyfikujemy funkcję celu 3) znajdujemy rozwiązanie x* przy użyciu wybranej metody 4) sprawdzamy przyjęty warunek stopu oraz dodatkowo sprawdzamy zgodność z warunkami ograniczającymi 5) jeśli warunki stopu nie są spełnione to wykonujemy kolejną iterację przyjmując 35

Metoda symulowanego wyżarzania (jedna z metod Monte Carlo, metoda stochastyczna) 2) akceptujemy tylko kroki z P=1 co si4 stanie? 1) start Prawdopodobieństwo akceptacji gorszego rozwiązania szukane minimum globalne f(x- x)>f(x) niekorzystna sytuacja ale akceptujemy z P <1 kolejne kroki 1 f(x+ x)<f(x) 2 34 znaleziono minimum lokalne (akceptujemy P=1) zależy silnie od parametru T (w fizyce jest to temperatura). T duże: wartość wykładnika bliska zeru (P 1) 3) akceptujemy kroki z P=1 oraz P<1 i zmieniamy (obnivamy) temperatur4 T małe: wykładnik jest dużą ujemną liczbą (P 0) 2 w kolejnych iteracjach obnivamy temperatur4 (ma e przemieszczenia) 6 4 1 pocz+tek symulacji wysoka temperatura (duve przemieszczenia) 2 3 7 5 8 9 10 11 P(x)=exp(-x) 1.5 P(x)=exp(-x/0.5) 1 f(xi+ x)>f(xi) f(xi+ x)<f(xi ) maj+c szcz4kcie za N-tym wywo aniem algorytmu znajdziemy minimum globalne (ale nie zawsze tak jest) ->P=1 0.5 0 ->P<1 0 0 2 2 4 4 36

Najprostszy algorytm symulowanego wyżarzania - iteracyjny Start: wybieramy punkt startowy x0 i określamy wartość funkcji celu f(x0) dla naszego wędrowca oraz ustalamy temperaturę T i ilość kroków M jaką ma wykonać 1) losujemy przemieszczenie Dx generatorem liczb pseudolosowych i określamy f(x i+dx) 2) akceptujemy nowe położenie z prawdopodobieństwem P=1 jeśli w przeciwnym wypadku określamy prawodopodobieństwo i losujemy liczbę nowe położenie akceptujemy (z prawdopodobieństwem P) jeśli spełniona jest relacja 3) co M iteracji obniżamy temperaturę np. co efektywnie zmniejsza pradowpodobieństwo akceptacji położenia o wyższej funkcji kosztu Kroki 1-3 powtarzamy M razy dla każdego wędrowca. Symulację możemy wykonać dla N wędrowców równolegle są niezależni. Po jej zakończeniu wyszukujemy wędrowca o najniższej funkcji celu. 37

Przykład. Szukamy minimum globalnego funkcji celu Wynik dla pojedynczego wywołania algorytmu (jeden wędrowiec) kropki to kolejne położenia. Dla każdego przypadku - start z tego samego punku. Temperatura za duża - zbyt duży krok, (wędrowiec odwiedza maksima) Temperatura średnia (wędrowiec omija maksima przemieszcza się dolinami) Temperatura niska (wędrowiec bardzo szybko lokalizuje się w minimum) 38

Wyniki dla M=200 wędrowców i temperatury obniżanej co 100 iteracji (T new=told/2) Metodę łatwo zrównoleglić. Jedno ze znalezionych minimów to minimum globalne. 39