Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Metody Monte Carlo.

Podobne prezentacje


Prezentacja na temat: "Metody Monte Carlo."— Zapis prezentacji:

1 Metody Monte Carlo

2 Literatura R.Wit, Metody Monte Carlo Wykłady, Wydawnictwo Politechniki Częstochowskiej, Częstochowa 2004 N.P. Buslenko, D.I. Golenko,…,Metoda Monte Carlo, Pwn, Warszawa 1967 S.M. Jermakow, Metoda Monte Carlo i zagadnienia pokrewne, PWN, Warszawa 1976 D.W. Heermann, Podstawy symulacji komputerowych w fizyce, WNT, Warszawa 1997

3 definicja Nicolas Metropolis, Stanisław Ulam The Monte Carlo Methods, 1949 Metoda Monte Carlo (MC) – dowolna technika rozwiązująca problem wykorzystując liczby losowe Kluczowa rola – programowy generator liczb losowych Ruletka Kostka do gry Moneta Losowania kul z urny

4 Definicja J.H. Haltona , 1970 MC polega na przedstawieniu rozwiązania postawionego problemu w postaci parametru pewnej hipotetycznej populacji i używaniu losowej sekwencji liczb do tworzenia próbki tej populacji, na podstawie której można dokonać statystycznego oszacowania wartości badanego parametru

5 F – rozwiązanie problemu Oszacowanie MC wyniku F:
liczba, zbiór liczb, wartość logiczna – decyzja Oszacowanie MC wyniku F: {r1,r2,….,rn} - liczby losowe użyte w rozwiązaniu

6 Zastosowanie MC Problemy deterministyczne
(wprowadzenie losowości) Całkowanie Znajdowanie pól i objętości Obliczanie liczby π bezpośrednia symulacja – badanie rzeczywistej populacji Problemy probabilistyczne/stochastyczne Symulacje procesów zależnych od zmiennych losowych bezpośrednia symulacja

7 MC – całkowanie problem deterministyczny -> problem stochastyczny
Wartość średnia Oszacowanie całki: losowy wybór n punktów xi z <a;b> o rozkładzie równomiernym

8 Prawo wielkich liczb prawo wielkich liczb: xi - zmienne losowe
μ(x) – funkcja gęstości prawdopodobieństwa ε >0 . niezależnie od wyboru szerokości przedziału wokół wartości oczekiwanej, prawdopodobieństwo dla dużych n będzie dowolnie bliskie 1.

9 Mocne prawo wielkich liczb
przy wystarczająco dużej próbce losowej oszacowanie MC zbiega się do poprawnej wartości

10 Prawo wielkich liczb Częstość występowania zdarzenia w n próbach jest zbieżna do prawdopodobieństwa tego zdarzenia, gdy n dąży do nieskończoności zwiększając liczbę doświadczeń opartych na zdarzeniach losowych, możemy oczekiwać rozkładu wyników coraz lepiej odpowiadającego rozkładowi prawdopodobieństw zdarzeń przykład: przeprowadzając wielką liczbę rzutów symetryczną monetą, możemy oczekiwać że stosunek liczby "wyrzuconych" orłów do liczby wszystkich rzutów będzie bliski 0,5 (wartości prawdop.); tym większe są na to szanse im większa jest liczba rzutów

11 Wyznaczenie liczby π Pole figury : x2+y2≤1 k=0; P=4;
for (i=1; i<=n; i++) { losuj punkt (x, y) z kwadratu opisanego na kole: (-1, -1); (-1, 1); (1, 1); (1, -1); if (x2+y2 <=1) k++; } pi=k/n*P;

12 Prelokacja – metoda stochastyczna
Siatka 2D Węzeł zapełniony z prawdopodobieństwem p є [0; 1] pusty z prawdopodobieństwem (1-p) Klaster – zbiór zapełnionych węzłów, z których każdy jest połączony z przynajmniej jednym sąsiednim (4 sąsiadów) zapełnionym węzłem Dla p>=pc (próg prelokacji) wystąpi klaster nieskończony (łączący każdy lub min. 1 brzeg siatki z brzegiem przeciwnym)

13 prelokacja 1

14 określenie progu prelokacji – symulacja MC
Analityczne wyrażenie na pc – dla siatki 2D i nieskończeniewymiarowej Metoda stochastyczna ?? Dla każdego p wielokrotne uruchomienie podprogramu for(i=0;i<n;i++) for(j=0;j<n;j++) R=random(); // losuj liczbę R є[0,1]o rozkładzie równomiernym if(R<p) L[i][j]=1; else L[i][j]=0; sprawdź, czy istnieje klaster prelokacji; Uśrednienie wyników

15 problemy symulacji MC Zależność wyników od rozmiaru sieci
Mniejsza sieć – mniejsza wartość pc Skończone małe sieci – wartość progu relokacji – rozmyta, trudna do oszacowania Wybór odpowiedniej liczby próbek Generator losowych liczb

16 Liczby Fibonacciego fib(0)=1 fib(1)=1
fib(n)=fib(n-1) + fib(n-2) dla n>=2 fib(4) fib(1) fib(2) fib(3) fib(0) procedure fib(x) if(x<2) then (wynik:=1) else (wynik:=fib(x-1)+fib(x-2)

17 Liczby Fibonacciego Pierwsza próba modelowania wzrostu populacji
1202 Leonardo z Pizy „Książka o liczydle” Para królików dojrzała po urodzeniu Co kwartał – para potomstwa Króliki nie umierają i nie uciekają Proces rozmnażania zaczyna się od jednej pary Wzór Bineta złoty podział odcinka

18 Liczby Fibonacciego Zastosowanie – generowanie liczb losowych
Nierealistyczne założenia modelu Nierealistyczne przewidywania w czasie Użyteczny aparat matematyczny

19 Równanie logistyczne Model Verhulsta 1845 Model populacji – liczebność
gdzie: xn – unormowana liczebność populacji w kroku n (0;1> r – współczynnik przyjmujący wartości z przedziału <0; 4>, opisuje liczebność kolonii pewnych osobników unormowaną w stosunku do maksymalnej liczby elementów, mogących rozwijać się w zadanym środowisku.

20 Równanie logistyczne r<=1 x*=0 – punkt stabilny rozwiązania; iteracje kończą się w x*=0 bifurkacje 1<r<=3 x*=1-1/r - punkt stabilny r>3 – dwa punkty stabilne 4 punkty stabilne 8 … chaos Równanie logistyczne – jako generator liczb losowych

21

22

23

24 Symulowane odprężanie
Przykładem stochastycznej metody Monte-Carlo - algorytm symulowanego odprężania oparty na doświadczeniach, związanych z oziębianiem materiałów Powolne ochładzanie może doprowadzić do uzyskania struktury kryształu, o minimalnej wartości energetycznej Zgodnie z zasadami mechaniki statystycznej, układ zmierzając do stanu minimalnej energii, poprzez jej fluktuację, zależną od temperatury, może zwiększać swoją energię o Ep z prawdopodobieństwem p, określonym wzorem:

25 Symulowane odprężanie
gdzie: T – temperatura układu, k - stała Boltzmanna,

26 Symulowane odprężanie
Przy wyższych temperaturach układ „przegląda” ogromną liczbę stanów pokrywającą równomiernie dziedzinę rozwiązań. Wraz z oziębianiem układu, przejścia do stanu o wyższej energii są coraz rzadsze i rozwiązania poszukuje się w coraz węższych obszarach rozwiązań Akceptacja zmian, które przynoszą „gorsze rozwiązanie”, umożliwia algorytmowi wyjście z lokalnych minimów. Dzięki tym własnościom schemat Metropolisa został wykorzystany w poszukiwaniu minimum globalnego wielowymiarowych funkcji kryterium przez Kirkpatrick’a. Ze względu na sposób przeszukiwania, obejmujący duży obszar rozwiązań, jest on szczególnie efektywny w rozwiązywaniu zadań kombinatorycznych. Na nim opiera się także działanie maszyn Boltzmanna.

27 Schemat Metropolisa procedure SM;{ i=początkowe rozwiązanie;
T=T0 ; (wysoka wartość „temperatury początkowej”) oblicz Ei; (wartość „energii”); repeat { wygeneruj nowe rozwiązanie j (operator sąsiedztwa) oblicz Ej; if (Ej < Ei) then i=j; else if (random[0,1) < exp (- (Ej - Ei)/T)) then i=j; T=T-T; } until warunek stopu;}

28 Problemy statystyczne symulacji MC
Generowanie ciągu liczb losowych o zadanym rozkładzie opisującym zmienną losową statystyczna analiza modelu statystyczna analiza wyników Podstawowe znaczenie - liczby losowe z rozkładu jednostajnego – można uzyskać liczby losowe o dowolnym rozkładzie

29 Generatory liczb losowych
Liczby statystycznie niezależne O rozkładzie jednostajnym W ciągu o określonej długości – brak powtarzania Duża szybkość generowania Minimalne wymagania na PAO

30 Kongruencja – przystawalność liniowy generator liczb pseudolosowych
a ≡ b (mod m) => a-b=k*m; kєZ ni+1 =[ a · ni + b ] (mod m); n,a,b,m – liczby całkowite >=0 a - mnożnik – duża liczba pierwsza; a mod 8 = 5 m/100 < a < m - √m w systemie dwójkowym nieoczywisty szablon b – stała dodatkowa; b=0 – generator multiplikatywny b/m ≈ ½ - √3/6 n0- wartość początkowa – liczba nieparzysta m=231-1 ni < m ni/m - <0;1>

31 Generator Fibonacciego
ni=(ni-1 + ni-2) mod m - addytywny okres < 2m-1 – zbyt mało Prosty Przesunięta metoda Fibonacciego ni=(ni-r + ni-s + c) mod m; r>=s – przesunięcia c – bit przeniesienia c= 0 gdy ni-r + ni-s <= m c=1 gdy ni-r + ni-s > m

32 Testy sprawdzające losowość wygenerowanych liczb
Marshall – „fałszywy charakter losowości wygenerowanej sekwencji nie wpływa na obliczenia MC

33 Zadanie optymalizacyjne
min(x,y)F(x,y) G(x,y)=y – h(x)=0 Szukane – min F(x,y) – funkcja celu; y=h(x) – ograniczenia F(x,y)=(x-4)2 + y2 G(x,y)=(x-2)2 + y2 -1 = 0 Szukane: minimum odległości punktu (4, 0) od punktu (x,y) znajdującego się na okręgu o promieniu 1, o środku w punkcie (2, 0) Rozwiązanie: (3,0)

34 (4,0) (2,0)

35 Algorytm MC Wylosuj liczbę losową yi z rozkładem równomiernym na przedziale (-1; 1) yi=2(zi-0.5); 0<zi<1 Oblicz xi(1) i xi(2) z G(x,y)=0 /równanie okręgu Wybierz parę (xi,yi), dla której wartość funkcji celu F(x,y) jest mniejsza Wygeneruj yi+1, oblicz xi+1(1) i xi+1(2), wybierz lepsza parę Jeśli F(xi,yi) < F(xi+1,yi+1) pozostaw do dalszych obliczeń parę (xi,yi), w przeciwnym wypadku parę (xi+1,yi+1) Przejdź do kroku pierwszego

36 Szukanie minimum funkcji algorytm MC
N >= Nmax START N = 0 Losuj x0 Wynik = x0 M = f(x0) Losuj x N++ f(x) < M M = f(x) Wynik = x STOP N T T N

37 Zagadnienia optymalizacyjne
Wielomodalna funkcja celu Deterministyczne procedury często odnajdują minima lokalne Są dobrze opisane Wymagane założenia (ciągłość,..) Zawarte w bibliotekach numerycznych Metody wielostartowe Różne punkty startowe Deterministyczna procedura

38 Zagadnienia optymalizacyjne
Strategie poszukiwań Punkt startowy -> rozwiązanie; kolejny punkt startowy -> rozwiązanie Jeśli rozwiązania podobne -> rozrzut punktów wokół znalezionego minimum Jeśli różne -> kolejny punkt startowy,…zmiana procedury optymalizacyjnej,… Na początku równomierne rozrzucenie n punktów startowych po przestrzeni poszukiwań n procesów minimalizacyjnych Kosztowne Z każdego punktu – przypadkowy kierunek poszukiwań (przeszukiwanie jednowymiarowe) Efektem – klastry ( zbiory punktów, które prowadzą do wspólnego minimum) Środki ciężkości klastów – punkty startowe dla dokładnych procedur minimalizacyjnych

39 podsumowanie Zakres stosowania MC – bardzo szeroki
Modelowanie procesów rzeczywistych Eksperymenty komputerowe Modele deterministyczne i probabilistyczne Wymagają najlepszych generatorów liczb losowych

40 koniec

41 Gra w życie automat komórkowy
1011 – liczba neuronów w organizmie liczba galaktyk we wszechświecie 6 * 1023 liczba Avogadra Otoczenie - duże zespoły wzajemnie oddziałujących elementów zmierzających do stanu równowagi Uproszczenia w symulacjach komputerowych charakter oddziaływań Ograniczenie oddziaływań do sąsiadów Gra w życie J.H. Conway 2D; periodyczne warunki brzegowe Elementy populacji – osobnicy – w węzłach siatki Reguły przetrwania, śmierci, generowania nowych osobników

42 Gra w życie - reguły Dla każdego elementu populacji:
if ( 2<=liczba_sąsiadów<=3 ) element przeżywa 1 generację if ( liczba_sąsiadów >=4 ) element umiera //przeludnienie if ( liczba_sąsiadów <=1 ) element umiera //izolacja Dla każdego pustego pola: if ( liczba_sąsiadów = 3 ) tworzy się nowy element populacji w tym polu

43 Gra w życie reguły Życie i śmierć zachodzą równocześnie Przesłanki
Nie istnieje konfiguracja pierwotna, dla której można udowodnić, że rośnie ona w sposób nieograniczony Powinny istnieć konfiguracje pierwotne prowadzące do wzrostu bez granic znikające tworzące stabilną konfigurację wchodzące w nieskończone oscylacje

44 Gra w życie reguły - zastosowania
Model formowania opinii społecznej „warszawski” „wrocławski” Symulacja rozchodzenia się choroby zakaźnej Model Isinga CA + GA Badanie gęstości upakowania kulek w polach

45 Model formowania opinii społecznej
Stany: tak, nie si,j = -1 lub 1 Wartość początkowa – np. 80% populacji – tak; 20% - nie Opinie rozrzucone losowo Przeprowadzenie rund dyskusyjnych – wymiana z innymi członkami populacji (sąsiedzi –odległość emocjonalna), siła przekonywania Fi,j – siła przekonywania Dynamika układu – opisana regułą większości S=f0,0s0,0(t) + f0,1s0,1(t) + f1,0s1,0(t) + f0,-1s0,-1(t) + f-1, 0s-1,0(t) 0,0 0,1 1,0 -1,0 0,-1 S0,0 = +1, jeśli S>=0 S0,0 = -1, jeśli S<0

46 Model formowania opinii społecznej
Inny sposób wyboru sąsiadów , np. losowy, dla zadanego zasięgu, proporcjonalny do odległości Szumy Znając dynamikę zmian pojedynczego osobnika – obserwacja zmian rozkładu opinii Tworzenie grup wokół przywódców (osoby o mocnym wpływie) Tworzenie wałów ochronnych (słabsi osobnicy za murem osobników silniejszych) Rozwój „grup oporu”

47 Model wrocławski Bazuje na obserwacji zachowań stadnych
Jedna silnie skorelowana (to samo zdanie na pewien temat) para potrafi narzucić swoje zdanie sąsiadom Jeśli para ma różne zdania – otoczenie nie zmienia poglądów

48 Rozchodzenie się choroby zakaźnej
Obszar N x N; rozmieszczenie osobników w polach Periodyczne warunki brzegowe lub nie Szczepienie – wśród losowo wybranej grupy 1 losowo wybrany niezaszczepiony osobnik – źródłem chorob V=liczba_osób_zaszczepionych/liczność_populacji Nz – liczba osób niezaszczepionych Zk- liczba osób zakażonych (spośród Nz) I – wskaźnik infekcji I=Zk/Nz < 1 I(V) – funkcja malejąca Istnieje Vc – wskaźnik infekcji gwałtownie maleje

49 Model Isinga Badanie magnetycznych własności ciał
N spinów w węzłach siatki 2D Spiny oddziałują z sąsiadami i zewnętrznym polem magnetycznym Stany spinów: dół -1; góra 1 Cel – minimum energii układu Metoda Metropolisa

50 prelokacja Symulacja pożaru lasu
Szybkość i kierunek wiatru Wilgotność powietrza i poszycia Odległość między drzewami Istnienie i rozmiary przecinek Rozmieszczenie ognisk zapalnych Pudełko z kulkami przewodnikami i izolatorami umieszczonymi w dwóch przeciwnych ściankach; po przyłożeniu napięcia – prąd popłynie jeśli utworzy się prelokujący klaster (przy powolnym wzroście liczby przewodników - gwałtowne przejście do stanu przewodnictwa) Poszukiwanie ropy naftowej, wody – cechy porowatych skał

51 Algorytm prelokacji węzłowej
Tablica zajętości Wypełniona losowo z prawdopodobieństwem p „1” lub „0” Wektor pamięci ME Etykiety – kolejne liczby całkowite (numer klastra) Przeglądanie tablicy zajętości wierszami, nadając etykiety elementom zajętym; elementowi, który ma sąsiadów (po lewej stronie i powyżej (i-1,j); (i,j-1) przyporządkowana jest najniższa z etykiet sąsiadów (y) Ustawienie wektora pamięci ME(x)=y; x,y – etykiety; x>y Uzgadnianie kilkustopniowe – zastąpienie etykiet z wektora ME ( od największej wartości ) x->y

52 Etykietowanie elementów -sąsiedztwo
1 2 3 Element badany sąsiedzi

53 prelokacja 1 1 2 3 4 5 6 7 8 ME(3)=2 ME(6)=4 ME(4)=3 6 -> 4
3 -> 2 4 -> 3 1 2 5 7 8 1 2 3 4 5 7 8 1 2 3 5 7 8

54 Kropla spadająca na wietrze
Kropla przesuwa się między węzłami sieci pod wpływem siły ciężkości i wiatru Cel – określenie średniej wartości dryftu (xk-x0) Parametry symulacji: x0, y0 – punkt początkowy δ x = δy – odległości między współrzędnymi węzłów p1, p2, p3, p4 - prawdopodobieństwa ruchu w 4 kierunkach p1+ p2+ p3+ p4 = 1 Liczba symulacji Kryterium stopu pojedynczej symulacji – yk= 0

55 Kropla spadająca na wietrze
Reguły poruszania się po sieci (xi,yi) : Wylosuj r rzeczywiste є(0,1) if (r <= p1) (xi,yj) -> (xi+1,yi) → if (r >= p1 && r < p1+p2 ) (xi,yi) -> (xi,yi-1) ↑ if (r >= p1+p2 && r < p1+p2 +p3 ) (xi,yj) -> (xi-1,yi) ← if (r >= p1+p2+p3 && r < 1 ) (xi,yj) -> (xi,yi+1) ↓

56 Kropla spadająca na wietrze
y0 yk =0 x0 xk

57 Ruchy Browna Brown 1827, Einstein 1905, Smoluchowski 1906
Ruchy małych cząstek zawiesiny w sieci Wyznaczenie położenia cząstki zawiesiny w chwili t=0, Δt, 2Δt, 3Δt,…. oraz Δxi, Δyi Badanie średniej wartości kwadratu przesunięcia wraz z upływem czasu (liczba kroków)

58 Ruchy Browna śr_wartość_kwadratu_x(liczba kroków)- zależność liniowa
śr_wartość_kwadratu_y(liczba kroków)- zależność liniowa

59 Ruchy Browna Nachylenie prostej
Dla gazów - 2D; D – współczynnik dyfuzji D=kT/(6πηr) k - stała Boltzmanna T – temperatura η współczynnik lepkości r – promień cząstki

60 podsumowanie Zakres stosowania MC – bardzo szeroki
Modelowanie procesów rzeczywistych Eksperymenty komputerowe Modele deterministyczne i probabilistyczne Wymagają najlepszych generatorów liczb losowych


Pobierz ppt "Metody Monte Carlo."

Podobne prezentacje


Reklamy Google