Metody Obliczeniowe w Nauce i Technice 15. Obliczanie całek metodami Monte Carlo Marian Bubak Department of Computer Science AGH University of Science and Technology Krakow, Poland bubak@agh.edu.pl dice.cyfronet.pl Contributors Maciej Trzebiński Mikołaj Biel
Outline 1 Przegląd zastosowań 2 Dlaczego MC i całki? 3 Całkowanie metodą orzeł-reszka 4 Metoda podstawowa 5 Metoda średniej ważonej (importance sampling) 6 Literatura
Przegląd zastosowań Przegląd zastosowań Obliczanie całek, W fizyce - MC to uśrednianie względem zespołu; stosowana zamiast rozwiązywania deterministycznych równań ruchu (co jest uśrednianiem względem czasu); przestrzeń fazowa jest b. wielowymiarowa, Rozwiązywanie równań różniczkowych cząstkowych - przez wprowadzenie błądzenia przypadkowego, Symulacje typu transport promieniowania, Symulacje typu systemy obsługi masowej
Dlaczego MC i całki? Dlaczego MC i całki? a) X - zmienna losowa ciągła, wartości z (a, b) zgodnie z rozkładem f (x) g - ustalona funkcja y = g(x) - zmienna losowa Wart. oczekiwana Y : E{Y } = E{g(x)} = b a g(x)f (x)dx ( )
Dlaczego MC i całki? Dlaczego MC i całki? b) chcemy obliczyć całkę: I = b a h(x)dx niech f : f (x) > 0 dla x (a, b), b a f (x)dx = 1 f (x) - gęstość rozkładu pewnej zmiennej losowej przyjmującej wartości z (a, b) I = b h(x) a f (x) f (x)dx = b a g(x)f (x)dx całka postaci ( ) Obliczanie całki można zawsze przedstawić jako zagadnienie obliczania wartości oczekiwanej pewnej zmiennej losowej ciągłej. (suma szeregu - zmienna losowa dyskretna)
Całkowanie metodą orzeł-reszka Całkowanie metodą orzeł-reszka Szukamy I = 1 0 f (x)dx; 0 f (x) 1 (X, Y ) - dwuwymiarowa zmienna losowa o rozkładzie równomiernym na kwadracie: (0 x 1, 0 y 1) Prawdopodobieństwo, że (X, Y ) przyjmie wartość z zakreskowanej części rysunku jest równe tej powierzchni, czyli wartości całki I.
Całkowanie metodą orzeł-reszka Metoda N - eksperymentów: obserwacji (X, Y ) M - liczba eksperymentów, w których (X, Y ) poniżej f (x) Jeżeli obserwacje niezależne - to M ma rozkład dwumianowy P{M = m} = ( N m ) I m (1 I ) N m
Całkowanie metodą orzeł-reszka Metoda Zadanie: oszacowanie Î = M N wariancja S 2 (Î ) = 1 N Metoda: prosta, ( ) M N 1 M N łatwe uogólnienie na n-d mało efektywna
Metoda podstawowa Metoda podstawowa I = b a f (x)dx = b a h(x)g(x)dx = E{Y } g(x) - gęstość pewnej zmiennej losowej X (a, b) Np.: Y = h(x) I = (b a) b a f (x) dx, P - rozkład równomierny na (a, b) b a }{{} dp
Metoda podstawowa Metoda podstawowa Bez utraty ogólności wystarczy rozpatrywać: I = 1 0 f (x)dx = E{Y } Y = f (X ), przy czym X - zmienna losowa o rozkładzie równomiernym (0, 1) Oszacowanie E{X } - średnia z N niezależnych obserwacji: Î = 1 N n f (x i ) i=1 ( )
Metoda podstawowa Metoda podstawowa - procedura Procedura 1) wylosować x 1, x 2,..., x N wg rozkładu równomiernego na (0, 1) 2) obliczyć f (x 1 ), f (x 2 ),..., f (x N ) 3) średnia ( )
Metoda podstawowa Metoda podstawowa - wariancja Wariancja σ 2 (Î ) = σ 2 1 [ n ] f (x i ) = 1 N N N 2 σ 2 [f (x i )] = i=1 i=1 1 N σ2 [f (x)] = 1 [ 1 ] f 2 (x)dx I 2 N 0 Estymator wariancji σ 2 (Î ) = 1 N 2 f ; 2 f = 1 N 1 N [f (x i ) Î ]2 σ 2 (Î 2 ) σ 2 (Î 2 ) > 0 1 - orzeł/reszka; 2 - podstawowa i=1
Metoda średniej ważonej (importance sampling) Metoda średniej ważonej f (x) = const. - w met. podstawowej - poj. punkt to wynik dokładny stąd: f (x) - gładkie - liczba losowań - mała Met. średniej ważonej - g(x) - ciągła, x [0, 1]: 1) g(x) > 0, x [0, 1] 2) 1 0 g(x)dx = 1 3) f (x) g(x), x (0, 1) - znacznie gładsza niż f (x) 4) g(x) - dana prostym wzorem analitycznym 1, 2 - precyzyjne 3, 4 - rozmyte } warunki
Metoda średniej ważonej (importance sampling) Metoda średniej ważonej - dygresja Dygresja - sugestia, co do dobrego g(x) X - zmienna losowa, G(x) - dystrybuanta X; G(x) = P(X < x) niech G(x) - funkcja ściśle rosnąca: P[G(x) < G(x )] = P(x < x ) = G (x) }{{}}{{}}{{} η η η wniosek: Jeżeli zmienna losowa X ma ściśle rosnącą dystrybuantę G(x), to G(x) ma rozkład równomierny na (0, 1)
Metoda średniej ważonej (importance sampling) Metoda średniej ważonej - dygresja Dygresja - sugestia, co do dobrego g(x)... stąd - sposób obliczania I = 1 0 f (x)dx: 1 g 1 (x) > 0-1-sza propozycja, 2 dobór stałej - g(x) = αg 1 (x); α 1 0 g 1(x)dx = 1 3 analitycznie: G(x) = x 0 g(x )dx 4 losujemy z rozkładem równomiernym: y 1 (0, 1), i = 1,..., N 5 rozwiązujemy G(x i ) = y i x i, i = 1,..., N 6 przybliżona wartość całki: I 1 N Ni=1 f (x i )
Metoda średniej ważonej (importance sampling) Metoda średniej ważonej - dygresja Dygresja - sugestia, co do dobrego g(x)
Literatura Literatura I R. Zieliński Metody Monte Carlo WNT, 1970 S.M. Jermakow Metoda Monte Carlo i zagadnienia pokrewne PWN 1976 J.M. Hammersley, D.C. Handscomb Monte Carlo Methods 1964 J. Spanier, E.M. Gelbard Monte Carlo principles and transport problems Addison - Wesley, 1969
Literatura Literatura II K. Binder (Ed.) Monte Carlo Methods in Statistical Physics Springer - Verlag, 1979 K. Binder (Ed.) Applications of the MC Methods in Statistical Physics Springer - Verlag, 1984 K. Binder Applications of the MC Methods in Statistical Physics; Topics in Current Physics Springer - Verlag, 1987
Literatura Literatura III D.E. Knuth The Art of Computer Programming, vol. 2: Seminumerical Algorithms Addison - Wesley, 1981 M.H. Kalos, P.A. Whitlock Monte Carlo Methods Wiley, New York, 1986 P. Bratley, B.L. Fox, E.L. Schrage A Guide to Simulation Springer Verlag, New York, 1983