Wykład 6 Metody Monte Carlo Zmienne losowe i ich rozkłady Metody Monte Carlo Najszerzej: są to metody oparte na wykorzystaniu liczb losowych do rozwiązania określonego problemu obliczeniowego. Prawdopodobieństwo (definicja Laplace’a) N A P A lim n N 0 P A 1 A – zdarzenie (np. szóstka w rzucie kostką). N(A) – liczba prób, w których wystąpiło zdarzenie A. N – liczba wszystkich prób. Prawdopodobieństwo warunkowe i niezależność zdarzeń P(A|B)=P(AB)/P(B) P(AB)=P(A|B)P(B) Zdarzenia A i B są niezależne jeżeli P(A|B)=P(A) czyli P(AB)=P(A)P(B) A|B A B Niektóre właściwości prawdopodobieństwa Zdarzenie przeciwne P A P A 1 Przestrzeń wszystkich zdarzeń P E 1 Dla zdarzeń niezależnych P A B C ... P A PB PC ... Całkowite prawdopodobieństwo danego zdarzenia PB P Ai PB | Ai i E A1 A2 ... An Zmienne losowe i ich rozkłady Zmienna losowa: liczba przyporządkowana zdarzeniu. Każda funkcja zmiennej losowej jest też zmienną losową. Przykłady: •Liczba oczek w rzucie kostką •Wynik odczytu temperatury Dystrybuanta zmiennej losowej: F x P y x Gęstość prawdopodobieństwa zmiennej losowej: dPx f x dx dystrybuanta prawdopodobieństwo Rozkład prawdopodobieństwa i dystrybuanta rozkładu prawdopodobieństwa liczby oczek w pojedynczym rzucie kostką symetryczną liczba oczek liczba oczek Momenty rozkładu Dla zmiennych ciągłych: n E ({x}) x i Px x i E{x} x̂ i 1 xf x dx n i 1 EH ( x ) H x i Px x i EHx Hx f x dx Jeżeli H(x)=(x-xc)n to E{H(X)} nazywa się n-tym momentem x względem c; jeżeli c= x̂ to E jest n-tym momentem centralnym, mn({x}). Użyteczne momenty centralne Wariancja 2 x m 2 x x x̂ f x dx 2 Skrzywienie m 3 x 1 3 x x̂ f x dx x 3 / 2 3 m 2 x x Kurtoza m 4 x 1 4 x x̂ f x dx 3 x 2 3 4 m 2 x x Ilustracja momentów rozkładów Obliczanie momentów centralnych zbioru punktów 1 n x̂ x i n i 1 2 n n 1 1 2 2 2 x i x̂ n xi xi n 1 i 1 n 1 i 1 i 1 n n x i 1 i (n 1)3 n x̂ 3 x i 1 x̂ 4 i (n 1) 4 3 Przykłady momentów centralnych paru rozkładów Mediana i kwantyle f(x) 1.0 xq Fx q f x dx q 0.5 0.2 x0.2 x0.5 mediana x Rozkład dwóch zmiennych i kowariancja 10 Ex x̂ 01 Ey ŷ E y ŷ y m 20 E x x̂ 2 x 2 m 02 2 2 m11 Ex x̂ y ŷ covx , y covx , y x , y x y Rozkład normalny f x ; m , x m 2 1 exp 2 2 2 x2 1 f u;1,0 exp 2 2 x m Fx; m, erf U = zmienna stadardyzowana Wielowymiarowy rozkład normalny f ( x1 , x2 ,..., xn ) f ( x ) 1 n n det( A) exp aij xi mi x j m j n/2 2 2 i 1 j 1 det( A) 1 T exp x m A x m n/2 2 2 Centralne twierdzenie graniczne Jeżeli x jest zmienną losową o wartości średniej a i wariancji b2, to zmienna n 1 lim xi n n i 1 Ma rozkład normalny o wartości średniej a i wariancji b2/n. Rozkład Boltzmanna Ei exp k BT Pi Ei i exp k T B kB (stała Boltzmanna) = 1.3810-23 J/K NAkB = R (uniwersalna stała gazowa) = 8.3143 J/(molK) q – położenia; p – pędy; w(E) – gęstość stanów o energii E Początki: prawdopodobnie starożytność Pierwsze udokumentowane użycie: G. Comte de Buffon (1777) obliczenia całki przez rzucanie igły na poziomą płaszczyznę pokrytą równoległymi liniami prostymi. Pierwsze zastosowanie na wielką skalę: J. von Neumann, S. Ulam, N. Metropolis, R.P. Feynman i in. (lata 1940-te; projekt Manhattan) obliczenia rozpraszania i absorpcji neutronów. Nazwa ,,Monte Carlo” została wymyślona jako kryptonim dla tego typu rachunków i odpowiednich metod matematycznych. Zgrubny podział metod Monte Carlo Metoda von Neumanna Metoda Metropolisa (łańcuchów Markowa) Ilustracja różnicy między metodą von Neumanna a metodą Metropolisa. Pomiar średniej głębokości Nilu Metoda von Neumanna Obszar w którym chcemy policzyć wielkość uśrednioną pokrywamy siatką punktów i dla każdego z nich obliczamy gęstość prawdopodobieństwa oraz wielkość, którą chcemy uśrednić: N A Ai Pi V i 1 Np. dla rozkładu Boltzmanna: Ei Ai exp kT i 1 A N Ei exp kT i 1 N Przykład zastosowania podejścia von Neumanna do obliczania liczby 1 S S 1 2 N tot 1 4 N lim n 2 Metoda Metropolisa (łańcuchy Markowa) 1. Bierzemy startową konfigurację układu daną współrzędnymi (x10,y10,z10,…,xn0,yn0,zn0); tej konfiguracji odpowiada energia E0. 2. Zaburzamy losowo wybraną współrzędną, np. xi0 or xi (mała wartość). 3. Obliczamy energię nowej konfiguracji i oznaczamy ją jako E1. 4. Jeżeli E1<E0 to nową konfigurację akceptujemy traktując jako nową konfigurację startową i przechodzimy do punktu 1; w przeciwnym przypadku przechodzimy do punktu 5. 5. Wykonujemy test Metropolisa: a) Generujemy liczbę losową y z przedziału (0,1). b) Jeżeli exp[-(E1-E0)/kT]>y, (k jest stałą Boltzmanna) akceptujemy nową konfigurację, w przeciwnym przypadku przechodzimy do punktu 2 ze starą konfiguracją. Konfiguracja Xo, energia Eo Zaburz konfigurację Xo: X1 = Xo + X Oblicz nową energię (E1) NIE E1<Eo ? NIE Wylosuj Y z U(0,1) Oblicz W=exp[-(E1-Eo)/kT] W>Y? TAK Xo=X1, Eo=E1 TAK E1 E0 Akceptacja z prawdopodobieństwem exp[-(E2-E1)/kBT] Bezwzględna akceptacja E1 Obliczanie średnich metodą Monte Carlo Średnia wielkości A 1 A N N A i 1 i Indeks i przebiega przez wszystkie kroki Monte Carlo, również te gdzie nowa konfiguracja nie została zaakceptowana. Tak więc jeżeli jakaś konfiguracja ma bardzo niską energię i nie chce przejść w alternatywną, będzie liczona wielokrotnie. Reprezentacja przestrzeni w metodach Monte Carlo • Siatkowa (dyskretna). Centra oddziaływań mogą być tylko w węzłach sieci o określonej topologii. • Ciągła. Centra oddziaływań mogą przyjąć dowolne położenie w przestrzeni trójwymiarowej. Zastosowania metody Metropolisa w chemii obliczeniowej • Wyznaczanie wielkości mechanicznych i termodynamicznych (gęstość, średnia energia, pojemność cieplna, przewodnictwo, współczynniki wirialne). • Symulacje przemian fazowych. • Symulacje właściwości polimerów. • Symulacje zwijania białek i innych biopolimerów. • Symulacje wiązania ligandów z receptorami oraz szacowanie energii swobodnej tego procesu (projektowanie leków). • Symulacje reakcji chemicznych. Przykład trajektorii zwijania Sample MC trajectory of a good folder; Model 1a prostego siatkowego moselu polimeru metodą Monte Carlo Ścieżka zwijania białka G znaleziona metodą Monte Carlo z wykorzystaniem siatkowego modelu białka Kmiecik i Koliński, Biophys. J., 94, 726-736 (2008)