interpolacji Kwadratury interpolacyjne Kwadratury proste Kwadratury złożone Przekleństwo wymiaru...

Podobne dokumenty
Prawdopodobieństwo i statystyka

Dystrybucje, wiadomości wstępne (I)

Wyk lad 7 Baza i wymiar przestrzeni liniowej

Prawdopodobieństwo i statystyka

Dystrybucje. Marcin Orchel. 1 Wstęp Dystrybucje Pochodna dystrybucyjna Przestrzenie... 5

1 Wykład 3 Generatory liczb losowych o dowolnych rozkładach.

INTERPOLACJA I APROKSYMACJA FUNKCJI

Metody Rozmyte i Algorytmy Ewolucyjne

Jeśli wszystkie wartości, jakie może przyjmować zmienna można wypisać w postaci ciągu {x 1, x 2,...}, to mówimy, że jest to zmienna dyskretna.

Metody Numeryczne Wykład 4 Wykład 5. Interpolacja wielomianowa

Wykład 21 Funkcje mierzalne. Kostrukcja i własności całki wzglȩdem miary przeliczalnie addytywnej

Obliczenia naukowe Wykład nr 6

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

Wykłady... b i a i. i=1. m(d k ) inf

Informacja o przestrzeniach Hilberta

Układy równań i nierówności liniowych

Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych)

Redukcja wariancji w metodach Monte-Carlo

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

Przykład 1 W przypadku jednokrotnego rzutu kostką przestrzeń zdarzeń elementarnych

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

8 Całka stochastyczna względem semimartyngałów

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

Informacja o przestrzeniach Sobolewa

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

Statystyka i eksploracja danych

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

Wyk lad 11 1 Wektory i wartości w lasne

1 Wykład 4. Proste Prawa wielkich liczb, CTG i metody Monte Carlo

Wykład 9. Matematyka 3, semestr zimowy 2011/ listopada 2011

Normy wektorów i macierzy

Rozkłady i ich dystrybuanty 16 marca F X (t) = P (X < t) 0, gdy t 0, F X (t) = 1, gdy t > c, 0, gdy t x 1, 1, gdy t > x 2,

Metody numeryczne. Sformułowanie zagadnienia interpolacji

Rozdział 1. Wektory losowe. 1.1 Wektor losowy i jego rozkład

Ważne rozkłady i twierdzenia c.d.

B jest liniowo niezależny V = lin (B) 1. Układ pusty jest bazą przestrzeni trywialnej {θ}. a i v i = i I. b i v i, (a i b i ) v i = θ.

Biostatystyka, # 3 /Weterynaria I/

7 Twierdzenie Fubiniego

AM1.2 zadania 14. Zadania z numerami opatrzonymi gwiazdka

Prawdopodobieństwo i statystyka

RACHUNEK PRAWDOPODOBIEŃSTWA WYKŁAD 3.

Rachunek prawdopodobieństwa i statystyka

jest ciągiem elementów z przestrzeni B(R, R)

Rozwiązywanie równań nieliniowych

Rodzinę F złożoną z podzbiorów zbioru X będziemy nazywali ciałem zbiorów, gdy spełnione są dwa następujące warunki.

Całkowanie numeryczne przy użyciu kwadratur

Prawdopodobieństwo i statystyka

Janusz Adamowski METODY OBLICZENIOWE FIZYKI Kwantowa wariacyjna metoda Monte Carlo. Problem własny dla stanu podstawowego układu N cząstek

Wykład z analizy danych: powtórzenie zagadnień z rachunku prawdopodobieństwa

Indukcja. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak

Rachunek różniczkowy i całkowy w przestrzeniach R n

Komputerowa Analiza Danych Doświadczalnych

Metoda Monte Carlo. Jerzy Mycielski. grudzien Jerzy Mycielski () Metoda Monte Carlo grudzien / 10

F t+ := s>t. F s = F t.

Zadania do Rozdziału X

Matematyka dyskretna. Andrzej Łachwa, UJ, /15

Wyk lad 9 Podpierścienie, elementy odwracalne, dzielniki zera

Matematyka stosowana i metody numeryczne

Całka podwójna po prostokącie

Statystyka i opracowanie danych Podstawy wnioskowania statystycznego. Prawo wielkich liczb. Centralne twierdzenie graniczne. Estymacja i estymatory

Zadania o numerze 4 z zestawów licencjat 2014.

Zmienne losowe ciągłe i ich rozkłady

Wykład 10. Stwierdzenie 1. X spełnia warunek Borela wtedy i tylko wtedy, gdy każda scentrowana rodzina zbiorów domkniętych ma niepusty przekrój.

Zmienne losowe ciągłe i ich rozkłady

Wykłady ostatnie. Rodzinę P podzbiorów przestrzeni X nazywamy σ - algebrą, jeżeli dla A, B P (2) A B P, (3) A \ B P,

Rozdzia l 11. Przestrzenie Euklidesowe Definicja, iloczyn skalarny i norma. iloczynem skalarnym.

Układy stochastyczne

Metody probabilistyczne

Dlaczego nie wystarczają liczby wymierne

Stopę zbieżności ciagu zmiennych losowych a n, takiego, że E (a n ) < oznaczamy jako a n = o p (1) prawdopodobieństwa szybciej niż n α.

Wyk lad 7 Metoda eliminacji Gaussa. Wzory Cramera

Jednowymiarowa zmienna losowa

Metody numeryczne I Równania nieliniowe

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

Optymalizacja ciągła

Analiza funkcjonalna 1.

5. Całka nieoznaczona

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

W rachunku prawdopodobieństwa wyróżniamy dwie zasadnicze grupy rozkładów zmiennych losowych:

Literatura. Leitner R., Zacharski J., Zarys matematyki wyŝszej dla studentów, cz. III.

Teoria miary. WPPT/Matematyka, rok II. Wykład 5

Przykładami ciągów, które Czytelnik dobrze zna (a jeśli nie, to niniejszym poznaje), jest ciąg arytmetyczny:

Egzamin z Metod Numerycznych ZSI, Egzamin, Gr. A

VI. Równania różniczkowe liniowe wyższych rzędów

Optymalizacja ciągła

Prognozowanie i Symulacje. Wykład I. Matematyczne metody prognozowania

Wstęp do metod numerycznych Uwarunkowanie Eliminacja Gaussa. P. F. Góra

Wykład 3 Jednowymiarowe zmienne losowe

Programowanie liniowe

Przestrzeń probabilistyczna

Metoda rozdzielania zmiennych

Zmienne losowe i ich rozkłady. Momenty zmiennych losowych. Wrocław, 10 października 2014

Matematyka dyskretna. Andrzej Łachwa, UJ, /15

Wykład 6 Centralne Twierdzenie Graniczne. Rozkłady wielowymiarowe

Lista 6. Kamil Matuszewski 13 kwietnia D n =

Rozdział 1. Zmienne losowe, ich rozkłady i charakterystyki. 1.1 Definicja zmiennej losowej

3. Generacja liczb losowych o różnych rozkładach

Prawa wielkich liczb, centralne twierdzenia graniczne

6. Całka nieoznaczona

Transkrypt:

Spis treści 1 Kwadratury interpolacyjne w wielu wymiarach 3 1.1 Sformułowanie zadania................................. 3 1.2 Interpolacja na siatkach regularnych......................... 4 1.2.1 Postać wielomianu interpolacyjnego..................... 4 1.2.2 Bład interpolacji................................ 6 1.3 Kwadratury interpolacyjne.............................. 7 1.3.1 Kwadratury proste............................... 7 1.3.2 Kwadratury złożone.............................. 8 1.4 Przekleństwo wymiaru................................. 9 2 Metody Monte Carlo 11 2.1 Wst ep, metody niedeterministyczne......................... 11 2.2 Klasyczna metoda Monte Carlo............................ 11 2.2.1 Definicja i bład................................. 11 2.2.2 Całkowanie z waga............................... 13 2.3 Redukcja wariancji................................... 14 2.3.1 Losowanie warstwowe............................. 14 2.3.2 Funkcje kontrolne............................... 16 2.4 Generowanie liczb (pseudo-)losowych......................... 17 2.4.1 Liniowy generator kongruencyjny....................... 17 2.4.2 Odwracanie dystrybuanty i akceptuj albo odrzuć............. 18 2.4.3 Metoda Box-Muller dla rozkładu gaussowskiego............... 19 3 Metody quasi-monte Carlo 20 3.1 Co to sa metody quasi-monte Carlo?......................... 20 3.2 Dyskrepancja...................................... 21 3.3 Bład quasi-monte Carlo................................ 22 3.3.1 Formuła Zaremby............................... 22 3.3.2 ierówność Koksmy-Hlawki.......................... 24 3.4 Ciagi o niskiej dyskrepancji.............................. 25 3.4.1 Ciag Van der Corputa............................. 25 1

2/27 c I.azwisko1, I.azwisko2, Uniwersytet Warszawski, 2012. 3.4.2 Konstrukcje Haltona i Sobol a......................... 26 3.4.3 Sieci (t, m, d) i ciagi (t, d)........................... 27

Rozdział 1 Kwadratury interpolacyjne w wielu wymiarach 1.1 Sformułowanie zadania Ostatnie trzy wykłady poświ ecimy numerycznemu całkowaniu funkcji wielu zmiennych. Dokładniej, dla danej funkcji f : [0, 1] d R chcemy obliczyć (przybliżyć) wartość I d (f) = [0,1] d f( x) d x = 1 1 1 0 0 } 0 {{ } d f(x 1, x 2,..., x d ) dx 1 dx 2 dx d. Zakładamy, że powyższa całka istnieje. W ogólniejszym sformułowaniu, chcielibyśmy obliczyć całke z waga ω funkcji f : R d R, która jest postaci I d,ω (f) = f( x) ω( x) d x. Waga ω jest tutaj nieujemna i całkowalna. R d Zauważmy, że ograniczenie sie w ostatnim przypadku do R d nie zmniejsza ogólności, gdyż całke po dowolnym mierzalnym obszarze D R d można wymodelować przyjmujac, że waga ω( x) = 0 dla wszystkich x / D. Zadanie całkowania funkcji wielu zmiennych ma ogromne znaczenie praktyczne i dlatego warto znać skuteczne metody numeryczne jego rozwiazywania. Przyk?ad 1.1. Wycena obecnej wartości wielu instrumentów finansowych, w tym tzw. opcji, opiera sie na założeniu, że przyszłe ceny podlegaja losowym zmianom kolejnych odcinkach czasowych. Obecna wartość opcji obliczana jest jako wartość oczekiwana funkcji wypłaty. Odpowiada to obliczaniu całki oznaczonej funkcji d zmiennych, gdzie d jest liczba odciników czasowych. Jest to czesto całka ze standardowa d wymiarowa waga gaussowska postaci ( (2π) R d/2 f(ξ 1,..., ξ d ) exp 1 ) d 2 (ξ2 1 +, ξd) 2 dξ 1 dξ d, przy czym f jest (zwykle skomplikowana) funkcja wypłaty na końcu okresu, a ξ j reprezentuja czynniki losowe w kolejnych odcinkach czasu. Wymiar d może wynosić nawet kilka tysiecy. Z podstawowego wykładu z metod numerycznych każdy z nas wie jak numerycznie całkować funkcje jednej zmiennej. Stosowane metody w znakomitej wiekszości przypadków sprowadzaja 3

4/27 c I.azwisko1, I.azwisko2, Uniwersytet Warszawski, 2012. sie do scałkowania funkcji, która jest kawałkami wielomianem określonego stopnia interpolujacym funkcje podcałkowa. Pomysł ten może być uogólniony na przypadek funkcji wielu zmiennych. Aby jednak mówić o kwadraturach interpolacyjnych w wielu wymiarach, musimy najpierw zastanowić sie nad rozwiazywalności a odpowiedniego zadania interpolacyjnego. 1.2 Interpolacja na siatkach regularnych 1.2.1 Postać wielomianu interpolacyjnego iech a t 1 < t 2 < < t r b. Jeśli f jest funkcja jednej zmiennej, f : [a, b] R, to wielomian gdzie l j jest j-tym wielomianem Lagrange a, l j (x) = r p f (x) = f(t j ) l j (x), j=1 r j x t j t i t j, 1 j r, (przy czym l 1 1 dla r = 1) jest stopnia co najwyżej (r 1) i interpoluje f w punktach t j, tzn. przyjmuje w tych punktach te same wartości co f. W przypadku d 2 możemy podobnie zdefiniować wielowymiarowe wielomiany Lagrange a. W tym celu zakładamy, że na każdej współrz ednej dany jest przedział, a w nim układ r punktów a (k) t (k) 1 < t (k) 2 <... < t (k) r b (k), 1 k d. Oznaczajac przez l (k) j odpowiednie wielomiany Lagrange a jednej zmiennej dla k-tego podziału, definiujemy wielomiany Lagrange a d zmiennych jako l j1,...,j d (x 1,..., x d ) = l (1) j 1 (x 1 ) l (2) j 2 (x 2 ) l (d) j d (x d ) dla wszystkich 1 j k r, 1 k d. Dla skrócenia zapisu, bedziemy dalej używać zapisu wektorowego j = (j 1,..., j d ), a 1 j d bedzie oznaczać, że nierówności zachodza dla każdej współrzednej j k, 1 k d. Podobnie, t j = (t(1) j 1, t (2) j 2,..., t (d) j d ). Wielomiany l j należ a do przestrzeni Pd r wielomianów d zmiennych postaci p( x) = p(x 1,..., x d ) = 0 i r 1 a i xi 1 1 x i 2 2 x i d d, gdzie a i s a dowolnymi wsoółczynnikami rzeczywistymi. Zauważmy, że p Pd r wtedy i tylko wtedy gdy p jest wielomianem stopnia co najwyżej (r 1) ze wzgledu na każda zmienna x k. Lemat 1.1. Jeśli wielomian p P r d zeruje si e we wszystkich rd punktach t j, 1 j r, to p jest wielomianem zerowym. Dowód. Dowód przeprowadzimy przez indukcj e ze wzgl edu na wymiar d. Dla d = 1 lemat jest oczywiście prawdziwy, bo na podstawie zasadniczego twierdzenia algebry niezerowy wielomian stopnia co najwyżej (r 1) nie może mieć r różnych zer.

Korzystaj. ie kopiuj. ie rozpowszechniaj. 5/27 iech d 2. iech a j bed a współczynnikami wielomianu p. Dla ustalonej k zdefiniujmy wielomian p k Pd 1 r jako p k (x 1,..., x d 1) = p(x 1,..., x d 1, t (d) k ). Wielomian ten zeruje sie w r(d 1) punktach t i1,...,i d 1. Zapisujac go w postaci gdzie współczynniki p k (x 1,..., x d 1 ) = b (k) i 1,...,i d 1 = 0 i 1,...,i d 1 d 1 0 i d d 1 b (k) i 1,...,i d 1 x i 1 1 x i d 1 d 1, a i (t(d) k )i d, oraz stosujac założenie indukcyjne mamy, że b (k) i 1,...,i d 1 indeksów i 1,..., i d 1 wielomian jednej zmiennej d 1 i d =0 a i ti d = 0. A wi ec dla wszystkich wyborów To zaś wymusza a i = 0 dla wszystkich 0 i d 1 i w konsekwencji p 0. zeruje si e w r punktach t = t (d) s. Lemat 1.1 wykorzystamy do pokazania nastepuj acego twierdzenia. Twierdzenie 1.1. Wielomiany l j, 1 j r, tworza baze przestrzeni Pd r. W szczególności, dim(pd r) = rd. Dowód. Zauważmy, że podobnie jak w przypadku d = 1, { 1, jeśli l j (t i ) = i = j, 0, w przeciwnym przypadku. Stad, jeśli kombinacja liniowa p = j α j l j jest wielomianem zerowym to dla wszystkich i 0 = p(t i ) = j α j l j (t i ) = α i, czyli układ {l i : 1 i r} jest liniowo niezależny. Z drugiej strony, układ ten rozpina Pd r, bo dla dowolnego wielomianu p z tej przestrzeni mamy p = p(t j ) l j. (1.1) 1 j r Rzeczywiście, w przeciwnym przypadku różnica wielomianu p i prawej strony (1.1) byłaby niezerowym wielomianem w Pd r, który zeruje sie we wszystkich rd punktach t i. To zaś przczyłoby lematowi 1.1. Stad już jeden krok do nastepuj acego wniosku podsumowujacego nasze dotychczasowe rozważania. iech D = [a (1), b (1) ] [a (2), b (2) ] [a (d), b (d) ] bedzie d wymiarowym prostokatem. Wniosek 1.1. Dla dowolnej funkcji f : D R wielomian p f ( x) = f(t j ) l j ( j) 0 j r jest jedynym wielomianem w Pd r interpoluj acym f w punktach t j dla wszystkich 1 j r. p f (t j ) = f(t j ) tzn. takim, że

6/27 c I.azwisko1, I.azwisko2, Uniwersytet Warszawski, 2012. 1.2.2 Bład interpolacji Zastanówmy sie teraz jaki jest bład otrzymanej interpolacji. Dla uproszczenia bedziemy od teraz zakładać, że D jest kostka d wymiarowa, tzn. wszystkie krawedzie maja ta sama długość, która oznaczymy przez H, a wezły na każdej współrzednej gdzie t (k) j = a (k) + u j H, 1 j r, 0 u 1 < u 2 < < u r 1 jest pewna ustalona siatka na odcinku jednostkowym. W przypadku skalarnym, o ile funkcja f jest r-krotnie różniczkowalna w sposób ciagły, to f(x) p f (x) = (x t 1 )(x t 2 ) (x t r ) f (r) (ξ), r! przy czym ξ [a, b] zależy od x. Stad w szczególności mamy f(x) p f (x) (b a)r f (r), (1.2) r! gdzie f (r) = max a t b f (r) (t). Aby wyprowadzić formuł e na bład interpolacji w przypadku wielowymiarowym, b edziemy potrzebować pewnego prostego uogólnienia ostatniego wzoru. Załóżmy, że zamiast dokładnych wartości f(t i ) mamy jedynie wartości przybliżone y i takie, że bład y i f(t i ) δ, 1 i r. (1.3) iech dalej p f bedzie wielomianem stopnia co najwyżej (r 1) interpolujacym dane przybliżone y i w punktach t i. Ponieważ (p f p f ) jest wielomianem interpolujacym dane f(t j ) y j, na podstawie wzoru (1.1) mamy r p f (x) p f (x) δ l i (x) δ S r, gdzie S 1 = 1, a dla r 2 S r = max r r 0 z 1 i j=1 z u j u i u j. Stad i z formuły na bład interpolacji dla dokładnych danych otrzymujemy (b a)r f(x) p f (x) f(x) p f (x) + p f (x) p f (x) f (r) + δ S r. (1.4) r! Wprowadzimy jeszcze klase F r (D) funkcji f : D R, które w całej swojej dziedzinie sa r-krotnie różniczkowalne w sposób ciagły ze wzgledu na każda zmienna. Dla f F r (D) definiujemy { r f B r (f) = max r } f 1 i d,...,. x r 1 x r d Twierdzenie 1.2. iech D = [a (1), a (1) + H] [a (d), a (d) + H]. Jeśli f F r (D) to dla każdego x D bład interpolacji gdzie C 1,d = d, a dla r 2 f( x) p f ( x) Hr r! C r,d = Sd r 1 S r 1. C r,d B r (f),

Korzystaj. ie kopiuj. ie rozpowszechniaj. 7/27 Dowód. Rozpatrzymy tylko r 2 pozostawiajac przypadek r = 1 jako proste ćwiczenie. Dla d = 1 nierówność w tezie jest równoważna (1.2). Załóżmy wiec, że d 2. Ponieważ dla każdego ustalonego t (d) k wielomian (d 1) zmiennych p f (x 1,..., x d 1, t (d) k ) jest wielomianem interpolacyjnym dla funkcji (d 1) zmiennych f(x 1,..., x d 1, t (d) k ), na podstawie założenia indukcyjnego mamy f(x 1,..., x d 1, t (d) k ) p f (x 1,..., x d 1, t (d) k ( Hr S d 1 ) B r (f) r! r 1 S r 1 ). (1.5) Zauważmy, że dla ustalonych z kolei pierwszych (d 1) współrzednych x 1,..., x d 1 wielomian p f (x 1,..., x d 1, t) jest wielomianem jednej zmiennej t interpoluacym funkcje jednej zmiennej f(x 1,..., x d 1, t) w punktach t (d) k na podstawie danych zaburzonych na poziomie δ równym prawej stronie (1.5). Stad i z (1.4) ostatecznie otrzymujemy f( x) p f ( x) Hr r! = Hr r! = Hr r! B r (f) + δ S r ( B r (f) 1 + Sd 1 r 1 S r 1 ( ) S d B r (f) r 1. S r 1 S r ) 1.3 Kwadratury interpolacyjne 1.3.1 Kwadratury proste Jesteśmy już dobrze uzbrojeni w mechanizm interpolacyjny i możemy zdefiniować wielowymiarowe kwadratury interpolacyjne dla całkowania funkcji f : D R zdefiniowanych na kostce D = [a (1), a (1) + H] [a (d), a (d) + H]. Kwadratury te dane sa równościa Q r,d (f) = D p f ( x) d x, (1.6) gdzie p f Pd r jest wielomianem interpoluj acym f w punktach t j, 1 j r. Chociaż postać (1.6) kwadratury znakomicie nadaje sie do rozważań teoretycznych, nie jest jednak praktyczna ze wzgledu na obliczenia. Zauważmy, że Q r,d (f) = f(t j ) l j ( x) d x D j = H d f(t j ) j f(t j )l j ( x) d x = j d ( 1 k=1 0 ) l jk (u) du, gdzie l j jest j-tym wielomianem Lagrange a dla punktów u 1, u 2,..., u d. Stad, wprowadzajac oznaczenie a k = 1 0 l k (u) du, D

8/27 c I.azwisko1, I.azwisko2, Uniwersytet Warszawski, 2012. kwadrature interpolacyjna można zapisać w postaci Q r,d (f) = H d a j1 a j2 a jd f(t (1) j 1, t (2) j 2,..., t (d) j d ). 1 j 1,...,j d r Zauważmy, że a k sa współczynnikami jednowymiarowej kwadratury interpolacyjnej Q r (f) = rk=1 a k f(t k ) opartej na punktach u k, przybliżajacej całke 1 0 f(u) du. Mówi ac inaczej, zdefiniowana przez nas wielowymiarowa kwadratura interpolacyjna jest d-produktem tensorowym wybranej kwadratury jednowymiarowej. a koniec tego podrozdziału podamy oszacowanie błedu kwadratury Q r,d. Ponieważ ( f( x) d x Q r,d (f) = f( x) pf ( x) ) d x, D z twierdzenia 1.2 natychmiast otrzymujemy nastepuj acy wniosek. Wniosek 1.2. Jeśli f F r (D) to bład kwadratury interpolacyjnej Q r,d jest ograniczony przez Hr+d f( x) d x Q r,d (f) C r,d B r (f). r! 1.3.2 Kwadratury złożone D Podobnie jak w przypadku funkcji jednej zmiennej, definiujemy kwadratury złożone dla funkcji wielu zmiennych. Dla uproszczenia zakładamy, że całkujemy po kostce jednostkowej [0, 1] d. Dla danego n wprowadzamy podział kostki na n d podkostek [ i1 1 n, i ] [ 1 i2 1 n n, i ] [ 2 id 1 n n, i ] d, 1 i k n, 1 k d. n astepnie na każdej podkostce stosujemy prosta kwadrature interpolacyjna oparta na siatce regularnej składajacej sie z r d punktów. Skonstruowana w ten sposób kwadrature złożona oznaczymy przez Q (n) r,d. Przyk?ad 1.2. Jeśli bazowa kwadratura jednowymiarow D ( a + b Q 1 (f) = (b a) f 2 a jest reguła punktu środkowego, ), to wynikowa kwadratura złożona na [0, 1] d jest po prostu reguła prostokatów ( Q (n) 1 d r,d n) (f) = ( i1 1/2 f,, i ) d 1/2. n n 1 i 1,,...,i d n asze rozważania wieńczy twierdzenie o bł edzie kwadratury złożonej, które natychmiast wynika z wniosku 1.2 oraz sposobu konstrukcji kwadratury. Twierdzenie 1.3. Kwadratura złożona Q (n) r,d korzysta z co najwyżej = (r n) d wartości funkcji f. Jeśli f F r ([0, 1] d ) to jej bład ( ) f( x) d x Q (n) 1 r/d ( r r ) [0,1] d r,d (f) C r,d B r (f). r!

Korzystaj. ie kopiuj. ie rozpowszechniaj. 9/27 1.4 Przekleństwo wymiaru Złożone kwadratury interpolacyjne moga być z powodzeniem stosowane dla niskich wymiarów, powiedzmy d = 2, 3. Dla dużych wymiarów d maja one bowiem ta niepożadan a własność, że liczba wezłów rośnie wykładniczo szybko wraz z zageszczaniem siatki. awet jeśli weźmiemy po 2 punkty na każdej współrzednej to całkowita liczba punktów siatki regularnej wyniesie 2 d. Pamietamy, że w wielu praktycznych zastosowaniach d może siegać nawet kilku tysiecy. W takich przypadkach obliczenie wartości kwadratury jest zadaniem praktycznie niewykonalnym. To jednak nie koniec złych wiadomości. Przyjrzyjmy sie jeszcze błedowi złożonej kwadratury interpolacyjnej. Twierdzenie 1.3 mówi, że bład ten jest ograniczony z góry proporcjonalnie do r/d, gdzie jest liczba wszystkich użytych punktów. To drugi powód do niepokoju, uzasadniony poniższym przykładem. Przyk?ad 1.3. Załóżmy, że chcemy całkować funkcje 360 zmiennych i jako kwadrature bazowa stosujemy kwadrature Simpsona, dla której r = 4. Górne ograniczenie błedu sugeruje, że aby być pewnym wyniku z dokładnościa 10 2 to musimy obliczyć wartości funkcji w aż 10 180 punktach. Czy naprawde jest aż tak źle? Rzeczywiście jest tak źle, a nawet gorzej. Okazuje sie, że rzedu zbieżości r/d nie da sie poprawić w klasie funkcji F r ([0, 1] d ). Mówi o tym nastepuj ace twierdzenie. Twierdzenie 1.4. Istnieje c = c r,d > 0 o nastepuj acej własności. Dla dowolnej aproksymacji całki wykorzystujacej wartości funkcji można znaleźć funkcje f F r ([0, 1] d ) dla której B r (f) = 1, a bład aproksymacji całki wynosi co najmniej c r/d. Dowód. Załóżmy, że dana aproksymacja całki oblicza wartości funkcji w punktach t j, 1 j. Dowód twierdzenia polega na konstrukcji dwóch funkcji, f + i f, które zeruja sie we wszystkich t j (a tym samym ich całki sa aproksymowane ta sama liczba), dla których B r (f + ) = 1 = B r (f ), ale różnica całek (f + f )( t) d t 2c r/d, [0,1] d dla pewnej c niezależnej od f i d. Wtedy, przynajmniej dla jednej z tych funkcji bład aproksymacji całki wynosi co najmniej c r/d. Wybierzmy n taka, że n d > i skonstruujmy na [0, 1] d regularna siatke składajac a sie z n d kostek, każda o krawedzi długości h = 1/n. iech dalej φ : R R bedzie dowolna funkcja r-krotnie różniczkowalna w sposób ciagły spełniajac a nastepuj ace warunki: 1. φ(x) = 0 dla x / (0, 1), 2. φ (j) (0) = 0 = φ (j) (1) dla 0 j r, 3. 1 0 φ(t) dt =: a > 0. Każdej kostce K i := [(i 1 1)h, i 1 h] [(i d 1)h, i d h] naszej regularnej siatki przyporzadkujemy funkcje φ i (x 1,..., x d ) := h r d k=1 φ(x k /h i k ).

10/27 c I.azwisko1, I.azwisko2, Uniwersytet Warszawski, 2012. Zauważmy, że B r (φ i ) = 1 oraz K i φ i ( t) d t = a d h r+d. Jasne jest, że istnieje co najmniej n d multi-indeksów i (kostek) takich, że żaden z punktów t j nie należy do wnetrza K i. Oznaczmy zbiór takich indeksów przez S i zdefiniujmy funkcje f + := i S φ i, f := f +. Wtedy obie funkcje zeruja sie w t j, B r (f + ) = 1 = B r (f ), oraz f + ( t) d t = f ( t) d t (n d ) a d h r+d. [0,1] d [0,1] d Podstawiajac n = 1/d (1 + d/r) 1/d dostajemy ostatecznie [0,1] d f + ( t) d t c r/d, gdzie c = da d r2 r+d (1 + d/r) 1+r/d. Opisane zjawisko nosi nazw e przekleństwa wymiaru.

Rozdział 2 Metody Monte Carlo 2.1 Wst ep, metody niedeterministyczne Poprzedni wykład zakończyliśmy pesymistycznym twierdzeniem 1.4, że nie istnieja efektywne metody numerycznego całkowania funkcji wielu zmiennych, ponieważ ma miejsce zjawisko przekleństwa wymiaru. Zwróćmy jednak uwage na to, że fakt istnienia przekleństwa wymiaru stwierdziliśmy przy założeniach, że: (i) model obliczeniowy jest deterministyczny, (ii) funkcje podcałkowe sa r-krotnie różniczkowalne po każdej zmiennej. Można mieć nadziej e, że przekleństwo wymiaru zniknie, albo zostanie złagodzone, gdy przynajmniej jedno z tych założeń nie b edzie spełnione. Ten wykład poświecimy (klasycznej) metodzie Monte Carlo numerycznego całkowania, która jest przykładem metody niedeterministycznej, tzn. takiej, która oblicza wynik wykorzystujac zjawiska losowe. Chociaż może to brzmieć dziwnie, to właśnie niedeterministyczne zachowanie metody pozwala pokonać przekleństwo wymiaru. Opisana dalej klasyczna metoda Monte Carlo zwiazana jest ściśle ze Stanisławem Ulamem, uczniem Stefana Banacha i reprezentantem Lwowskiej Szkoły Matematycznej. Ulam zastosował metode Monte Carlo do obliczania skomplikowanych całek w ramach Manhattan Project w Los Alamos (USA), w czasie II Wojny Światowej. 2.2 Klasyczna metoda Monte Carlo 2.2.1 Definicja i bład Tak jak w poprzednim rozdziale chcemy obliczyć całke 1 1 1 I d (f) := f( x) d x = f(x 1, x 2,..., x d ) dx 1 dx 2 dx d. [0,1] d 0 0 0 }{{} d Zakładamy przy tym, że f : [0, 1] d R jest funkcja, której kwadrat jest całkowalny, f( x) 2 d x <. [0,1] d 11

12/27 c I.azwisko1, I.azwisko2, Uniwersytet Warszawski, 2012. Definicja 2.1. Klasyczna metoda Monte Carlo polega na przybliżeniu I d (f) średnia arytmetyczna wartości funkcji f w losowo wybranych punktach, tzn. MC d, (f) = MC d, (f; t 1, t 2,..., t ) := 1 f( t j ), gdzie t 1, t 2,..., t sa punktami wylosowanymi niezależnie od siebie, każdy zgodnie z rozkładem jednostajnym na [0, 1] d. Konsekwencja zastosowania losowości jest to, że przy różnych realizacjach metody otrzymujemy różne wyniki, w zależności od wyboru punktów t j. Wynik MC d, (f) jest wiec zmienna losowa, której wartość oczekiwana wynosi E (MC d, (f)) = MC d, (f; t 1,..., t ) d t 1 d t [0,1] d = 1 j=1 [0,1] d f( t) d t = I d (f). Ponieważ różnica I d (f) MC d, (f) jest też zmienna losowa, za bład metody Monte Carlo dla danej funkcji f przyjmiemy odchylenie standardowe, e(f; MC d, ) := E (I d (f) MC d, (f)) 2. Twierdzenie 2.1. Dla danej funkcji f bład metody Monte Carlo wynosi e(f; MC d, ) = σ(f), j=1 gdzie jest wariancja funkcji f. σ(f) := I d (f 2 ) I 2 d (f) Zanim przystapimy do dowodu zauważmy, że σ(f) jest dobrze zdefiniowana wielkościa, bowiem nierówność I d (f) I d (f 2 ) jest szczególnym przypadkiem znanej nierówności Schwarza dla całek. Dowód. Oznaczmy, dla uproszczenia, zmienna losowa X = MC d, (f). Wtedy E(X E(X)) 2 = E (X(X E(X)) E(X)(X E(X))) = E(X 2 ) E 2 (X). (2.1) Ponadto E(X 2 ) = E 1 2 f( t j ) 1 = j=1 2 E f 2 ( t j ) + f( t i )f( t j ) j=1 i j = 1 ( ) 2 I d (f 2 ) + ( 2 )Id(f) 2 = 1 ( I d(f 2 ) + 1 1 ) I 2 d(f), gdzie skorzystaliśmy z niezależności zmiennych losowych f(t i ) i f(t j ) dla i j. Stad i z (2.1) dostajemy e 2 (f; MC d, ) = E(X E(X)) 2 = 1 I d(f 2 ) + co kończy dowód. ( 1 1 ) I 2 d(f) Id(f) 2 = 1 ( ) I d (f 2 ) Id(f) 2,

Korzystaj. ie kopiuj. ie rozpowszechniaj. 13/27 Uwaga 2.1. Zauważmy, że w dowodzie pokazaliśmy przy okazji nierówność Schwarza posługujac sie narzedziami rachunku prawdopodobieństwa. Twierdzenie (2.1) mówi, że bład metody Monte Carlo jest proporcjonalny do 1/2 przy bardzo słabych wstepnych założeniach na funkcje (jedynie całkowalność kwadratu funkcji). Jest to istotna poprawa w porównaniu do błedu r/d dla metod deterministycznych. W szczególności ważne jest, że wykładnik 1/2 przy 1 jest niezależny od wymiaru d, a konsekwencja tego pokonanie przekleństwa wymiaru. Dziwnym może wydawać sie, że przekleństwo wymiaru można zlikwidować używajac metod niedeterministycznych (losowych). Jednak niczego nie ma za darmo. ależy pamietać, że jest to możliwe za cene niepewności wyniku. O ile bowiem metoda deterministyczna produkuje zawsze ten sam wynik, metoda niedeterministyczna (taka jak Monte Carlo) produkuje różne wyniki zależnie od konkretnych realizacji zmiennych losowych. Dlatego, mimo iż bład oczekiwany jest proporcjonalny do 1/2 to nie mamy całkowitej pewności, że przy konkretnej realizacji otrzymany wynik jest tego samego rzedu. Z tego punktu widzenia warto przytoczyć nastepuj ac a równość, która wynika z centralnego twierdzenia granicznego; mianowicie, dla dowolnych c 1 < c 2 mamy ( lim Prob c1 σ(f) I d (f) MC d, (f) c ) 2σ(f) = 1 2π c2 c 1 e t2 /2 dt, gdzie Prob oznacza prawdopodobieństwo wzgl edem rozkładu jednostajnego na [0, 1] d. 2.2.2 Całkowanie z waga Deterministyczne metody interpolacyjne z poprzedniego rozdziału można stosować jedynie do całkowania na d-wymiarowych prostokatach. Metoda Monte Carlo ma oprócz wymienionych również i ta zalete, że łatwo ja uogólnić na przypadek całkowania z waga. Dla przybliżenia wartości I d,ω (f) := f( x)ω( x) d x, gdzie ω( x) d x =: W <, R d R d możemy bowiem zastosować wzór MCd,(f) ω := W f( t j ), j=1 przy czym t 1,..., t sa tym razem punktami wybranymi losowo i niezależnie od siebie, zgodnie z rozkładem na R d o gestości ω/w. Adaptujac odpowiednio dowód twierdzenia 2.1 otrzymujemy nastepuj ace wyrażenie na bład uogólnionej metody Monte Carlo. Twierdzenie 2.2. iech I d,ω (f 2 ) = R d f 2 ( x)ω( x) d x <. Wtedy e(f; MC ω d,) = σ ω(f), gdzie σ ω (f) = W I d,ω (f 2 ) I 2 d,ω (f).

14/27 c I.azwisko1, I.azwisko2, Uniwersytet Warszawski, 2012. 2.3 Redukcja wariancji Zauważyliśmy, że zaleta metody Monte Carlo jest nie tylko jej prostota, ale również to, że bład średni wynosi σ ω (f) 1/2. aturalnym jest teraz pytanie, czy błedu tego nie można poprawić. Temu celowi służa metody redukcji wariancji, które polegaja w ogólności na redukcji czynnika σ ω (f). Spośród wielu technik redukcji wariancji skupimy uwage na dwóch: losowaniu warstwowemu oraz funkcjach kontrolnych. Dla uproszczenia bedziemy zakładać, że całkujemy z waga jednostkowa na kostce D = [0, 1] d. 2.3.1 Losowanie warstwowe Podzielmy obszar całkowania D na K rozłacznych podzbiorów D i tak, że K D = D i i zastosujmy Monte Carlo do całkowania po każdym D i, tzn. całke D f( x) d x przybliżymy wielkościa K MC d, (f) := MC (i) d, i (f), gdzie MC (i) d, i oraz = K i. jest metoda Monte Carlo zastosowana do całki I (i) d (f) := D i f( x) d x, 1 i K, Oznaczmy przez D i objetość d-wymiarowa podzbioru D i. Ponieważ zmienne losowe I (i) d (f) MC (i) d, i (f) sa parami niezależne dla 1 i K, na podstawie twierdzenia 2.2 mamy ( ( K ) 2 E (I d (f) MC d, (f)) 2) = E I (i) d (f) MC d, i (f) Przyjmijmy teraz, że = = K K ( E 1 ( i (I (i) d i = D i, 1 i K, (f) MC(i) d, i (f)) 2) D i I (i) d (f 2 ) (I (i) d (f))2). przy czym dla uproszczenia (ale bez utraty ogólności) zakładamy, że wielkości te sa całkowite. Wtedy otrzymujemy e(f, MC d, ) = 1 K Id (f 2 1 ) D i (I(i) d (f))2. (2.2) Bł ad tak zdefiniowanej metody MC d, nie jest wi ekszy od bł edu klasycznej metody MC d, z Twierdzenia 2.1.

Korzystaj. ie kopiuj. ie rozpowszechniaj. 15/27 Twierdzenie 2.3. Dla dowolnej funkcji f takiej, że I d (f 2 ) < mamy e(f, MC d, ) e(f, MC d, ), przy czym równość zachodzi tylko wtedy gdy iloraz I (i) d (f)/ D i jest stały, niezależnie od i. Dowód. Rzeczywiście, oznaczajac a i = D i, b i = I(i) d (f) Di, oraz wykorzystujac nierówność Schwarza dla ciagów mamy ( K ) 2 ( Id(f) 2 K ) ( K ) = a i b i a 2 i b 2 i = K b 2 i = K 1 D i (I(i) d (f))2, przy czym równość zachodzi tylko wtedy gdy wektory (a 1,..., a K ) T i (b 1,..., b K ) T sa liniowo zależne, co jest równoważne warunkowi w treści twierdzenia. Prawdziwość tezy pokazuje teraz porównanie wzorów na bł edy obu metod. Widzimy, że stosujac losowanie warstwowe z ustalonym podziałem na K podzbiory D i możemy co prawda zmiejszyć bład, ale szybkość zbieżności 1/2 pozostaje ta sama. A czy można poprawić zbieżność stosujac różne podziały dla różnych wartości? Okazuje sie, że tak, o ile założymy pewna regularność funkcji f. Aby to uzyskać, najpierw przekształcimy wzór (2.2) na bład metody MC d, do postaci gdzie e(f, MC d, ) = 1 K I (i) d ((f c i) 2 ). (2.3) c i := I(i) d (f), 1 i K. D i Załóżmy teraz, że f spełnia warunek Lipschitza ze stała L, f( x) f( y) L x y, x, y D. Wtedy istnieja x i D i takie, że f( x i ) = c i, a stad i z lipschitzowskości f mamy, że dla dowolnego x D i f( x) c i L x x i L diam (D i ), gdzie diam (D i ) := sup { x y : x, y D i } jest średnica zbioru D i w normie max. W konsekwencji, ze wzoru (2.3) dostajemy nastepuj ace oszacowanie błedu: e(f, MC d, ) L K D i diam 2 (D i ). Ustalmy teraz równomierny podział kostki D na K = podkostek D i, każda o kraw edzi długości 1/d (zakładamy, bez zmniejszenia ogólności, że 1/d jest całkowita) tak, że nasza

16/27 c I.azwisko1, I.azwisko2, Uniwersytet Warszawski, 2012. metoda aproksymuje całke na D i używajac tylko jednej wartości. Wtedy diam(d i ) = 1/d oraz e(f, MC d, ) L (1/2+1/d). Ostatecznie, otrzymany w ten sposób wariant losowania warstwowego jest zbieżny z wykładnikiem wi ekszym niż 1/2. Oczywiście, może to mieć praktyczne znaczenie jedynie dla małych wymiarów d, bowiem dla dużych d wykładnik 1/2 + 1/d jest właściwie równy 1/2. 2.3.2 Funkcje kontrolne Podobny efekt zwiekszenia szybkości zbieżności można uzyskać stosujac klasyczna Monte Carlo bezpośrednio do funkcji f g, gdzie g jest pewna specjalnie dobrana funkcja, zwana funkcja kontrolna. Rzeczywiście, przedstawmy f w postaci f = g + (f g). Wtedy co sugeruje zastosowanie nastepuj acej metody: I d (f) = I d (g) + I d (f g), MC d, (f) := I d (g) + MC d, (f g). Ponieważ I d (f) MC d, (f) = (I d (g) + I d (f g)) (I d (g) + MC d, (f g)) z twierdzenia 2.1 natychmiast wynika, że bład = I d (f g) MC d, (f g), e(f; MC d, ) = e(f g; MC d, ) = σ(f g). Pozostaje kwestia doboru funkcji g tak, aby istotnie zmniejszyć wariancje σ(f g). Weźmy najpierw funkcje schodkowa postaci g( x) = K c i 1 Di ( x), gdzie 1 Di ( x) = { 1 x Di, 0 x / D i,, 1 i K, jest funkcja charakterystyczna zbioru D i, a c i = f( x i ) dla dowolnych x i D i. Oczywiście, najlepiej byłoby wziać x i tak, aby c i = I (i) d (f)/ D i, ale jest to niemożliwe, bo nie znamy całek I (i) d (f). (Znajomość tych całek nie była konieczna w przypadku losowania warstwowego!) Wtedy dostajemy ten sam efekt jak dla MC d,, tzn. dla lipschitzowskiej f K σ 2 (f g) I d ((f g) 2 ) C 2 D i diam 2 (D i ) (2.4) i dla g odpowiadajacej równomiernemu podziałowi na podkostek otrzymujemy bład proporcjonalny do (1/2+1/d).

Korzystaj. ie kopiuj. ie rozpowszechniaj. 17/27 W ogólności, funkcje g należy w praktyce wybierać tak, aby dobrze aproksymowała funkcje f. Oczywiście, wybór ten musi bazować na informacji jaka posiadamy o f. a przykład, dla funkcji r-gładkich, tzn. dla f F r (D) można w ten sposób dostać jeszcze lepszy wykładnik. Rzeczywiście, niech g = g f bedzie kawałkami wielomianem stopnia najwyżej r 1 po każdej zmiennej interpolujacym f, dla równomiernego podziału kostki jednostkowej na 1/d podkostek. Z rozdziału 1 wiemy, że wtedy dla funkcji f F r (D) bład interpolacji jest postaci (zob. twierdzenie 1.2) f( x) g f ( x) C r,db r (f) r/d r! W konsekwencji, dla tak skonstruowanej metody dostajemy nastepuj acy bład oczekiwany. Twierdzenie 2.4. Dla f F r (D) mamy e(f; MC d, ) C r,db r (f) r! (1/2+r/d). Dodajmy, że MC d, jest w istocie metoda mieszana, gdyż używa wartości funkcji f obliczanych w punktach wybranych deterministycznie oraz w punktach wybranych losowo. Zbieżności (1/2+r/d) nie da sie już poprawić w klasie F r (D). Dokładniej, można pokazać nastepuj ace twierdzenie, które jest odpowiednikiem twierdzenia 1.4 dla algorytmów niedeterministycznych. Twierdzenie 2.5. Istnieje c > 0 o nastepuj acej własności: dla dowolnej (deterministycznej lub niedeterministycznej) aproksymacji całki wykorzystujacej wartości funkcji istnieje f F r ([0, 1] d ) dla której B r (f) = 1, a bład oczekiwany aproksymacji całki wynosi co najmniej c (1/2+r/d). 2.4 Generowanie liczb (pseudo-)losowych Dotychczas milczaco przyjmowaliśmy, że umiemy generować ciagi X 1, X 2, X 3,..., X n,... niezależnych liczb losowych zgodnie z danym rozkładem prawdopodobieństwa. ie jest to jednak zadanie trywialne. W praktyce obliczeniowej liczby losowe uzyskujemy przez zastosowanie specjalnych programów. Ponieważ komputer jest urzadzeniem deterministycznym, tak uzyskane ciagi nie sa idealnie losowe już choćby dlatego, że sa okresowe. Fakt ten wpływa na pogorszenie jakości wyniku i w szczególności powoduje, że ich użycie pozwala uzyskać jedynie kilka liczb znaczacych, przy czym im wiekszy wymiar d zadania tym gorsza graniczna dokładność. Z tych wzgledów mówimy raczej o generatorach liczb pseudo-losowych. Generowanie liczb pseudolosowych jest bardzo obszernym tematem, my tylko zwrócimy uwag e na podstawowe metody. 2.4.1 Liniowy generator kongruencyjny Liniowe generatory kongruencyjne służa generowaniu ciagów losowych U i o rozkładzie jednostajnym na odcinku [0, 1] i zdefiniowane sa w nastepuj acy prosty sposób. Startujemy z U 0 = x 0 i kolejno obliczamy dla i = 1, 2, 3,... { x i := (a x i 1 + c) mod m,. U i := x i /m,

18/27 c I.azwisko1, I.azwisko2, Uniwersytet Warszawski, 2012. Jakość takiego generatora zależy istotnie o wyboru liczb całkowitych a, b i m. W szczgólności pożadane jest, aby generator miał maksymalny okres m. Jeśli c 0 to warunkami dostatecznymi na to sa: (a) c i m sa wzglednie pierwsze, (b) jeśli p dzieli m to p dzieli a 1, (c) jeśli 4 dzieli m to 4 dzieli a 1. Dostep do dobrego generatora liczb losowych o rozkładnie jednostajnym U Unif([0, 1]) jest ważny również z tego wzgledu, że jest on zwykle podstawa dla konstrukcji generatorów ciagów o bardziej skomplikowanych rozkładach prawdopodobieństwa. 2.4.2 Odwracanie dystrybuanty i akceptuj albo odrzuć Jeśli znana jest dystrybuanta żadanego rozkładu, czyli funkcja F (x) := Prob(X x), oraz łatwo obliczyć jej odwrotność zdefiniowana jako F 1 (u) := inf{x : F (x) u}, to potrzebne ciagi losowe moga być wygenerowane według wzoru Rzeczywiście, mamy X := F 1 (U), U Unif([0, 1]). Prob(X x) = Prob(F 1 (U) x) = Prob(U F (x)) = F (x). a przykład, jeśli F (x) = 1 e x2 /2 to można zastosować wzór X = 2 ln(u). iestety, dla wielu rozkładów dystrybuanta nie może być dokładnie obliczona. Wtedy jakość metody zależy od jakości zastosowanej numerycznej aproksymacji funkcji F 1 (x). Inna uniwersalna metoda generowania liczb losowych o dowolnym rozkładzie na R, zwana akceptuj albo odrzuć, polega na wykorzystaniu istniejacego dobrego generatora liczb innego rozkładu na R. Dokładniej, załóżmy, że dysponujemy generatorem liczb losowych Y zgodnie z rozkładem o gestości g, a interesuja nas liczby X pochodzace z rozkładu o gestości f. Załóżmy ponadto, że f(x) c g(x) dla pewnej stałej c > 0. Wtedy możemy użyć nastepuj acego algorytmu: { repeat generuj Y zgodnie z g; generuj U Unif([0, 1]) until U f(y )/(cg(y )); return X := Y }

Korzystaj. ie kopiuj. ie rozpowszechniaj. 19/27 Aby pokazać poprawność takiego generatora zauważmy, że Prob(X A) = Prob( Y A : U f(y )/(cg(y )) ) = Prob( Y A, U f(y )/(cg(y )) ). P ( U f(y )/(cg(y )) ) Ponieważ dla a [0, 1] prawdopodobieństwo, że U a wynosi a to f(x) Prob(U f(y )/(cg(y )) ) = cg(x) g(x) dx = 1 c i w konsekwencji dostajemy Prob(X A) = c Prob(Y A, U f(y )/(cg(y )) ) f(x) = c A cg(x) A g(x) dx = f(x) dx. 2.4.3 Metoda Box-Muller dla rozkładu gaussowskiego ormalny rozkład gaussowski na R o funkcji g estości R g(t) = 1 2π e t2 /2 jest najcześciej stosowanym rozkładem niejednostajnym. Dla rozkładu gaussowskiego bardzo efektywne okazuja sie algorytmy bazujace na odwracaniu dystrybuanty. Używaja one dość skomplikowanych aproksymacji funkcji F 1. Prostsza i najbardziej popularna jest metoda Box-Muller. Generuje ona od razu dwie niezależne liczby Z 1 i Z 2 (albo, równoważnie, punkt (Z 1, Z 2 ) R 2 zgodnie z rozkładem normalnym w R 2 ), na podstawie dwóch liczb losowych o rozkładzie jednostajnym. Przedstawmy (x, y) R 2 we współrzednych biegunowych, { x = r cos ϕ, y = r sin ϕ, gdzie r [0, ) i ϕ [0, 2π). Metoda polega na wygenerowaniu zmiennych ϕ i r, a nastepnie zastosowaniu powyższego wzoru. Generowanie ϕ jest proste, bo ma rozkład jednostajny. Policzmy dystrybuante rokładu zmiennej r. Mamy Prob(r R) = 1 e (x2 +y2 )/2 d(x, y) = 1 2π R re r2 /2 drdϕ 2π x 2 +y 2 R 2 2π 0 0 = R re r2 /2 dr = e r2 /2 R 0 0 = 1 e R2 /2. Stad, stosujac metode odwracania dystrybuanty mamy R = 2 ln U, U Unif([0, 1]). Rachunki te prowadza do nastepuj acego generatora. { generuj U 1, U 2 Unif([0, 1]); R := 2 ln U 1 ; V := 2πU 2 ; Z 1 := R cos(v ); Z 2 := R sin(v ); return Z 1, Z 2 }

Rozdział 3 Metody quasi-monte Carlo 3.1 Co to sa metody quasi-monte Carlo? Metody Monte Carlo potrafia pokonać przekleństwo wymiaru, maja jednak również swoje wady. ajważniejsze z nich to: (i) niepewność wyniku (który ma charakter probablistyczny), (ii) stosunkowo wolna zbieżność (praktycznie 1/2 ), (iii) konieczność stosowania (niekiedy skomplikowanych) generatorów liczb losowych. Można powiedzieć, że skoro używamy z powodzeniem generatorów liczb pseudo-losowych, to implementacje Monte Carlo sa w istocie deterministyczne. Dlatego, wybierajac punkty deterministycznie, ale tak, aby w jakiś sposób udawały i uśredniały wybór losowy, powinniśmy dostać metode deterministyczna o zbieżności co najmniej 1/2. A przy okazji usunelibyśmy dwie z wymienionych wad Monte Carlo. Takie intuicyjne myślenie wydaje sie nie mieć racjonalnych podstaw, bo przecież metody deterministyczne podlegaja przekleństwu wymiaru. Pamietajmy jednak, że twierdzenie 1.4 o przekleństwie zachodzi w klasie F r (D) funkcji różniczkowalnych r razy po każdej zmiennej. Zwróciliśmy na to uwage już na poczatku rozdziału 2. Dlatego zasadne jest poszukiwanie pozytywnych rozwiazań dla funkcji o innej regularności. Quasi-Monte Carlo jest deterministycznym odpowiednikiem klasycznej metody Monte Carlo dla aproksymacji całek na kostkach, I d (f) := f( x) d x, D = [0, 1] d. D Definicja 3.1. Metoda quasi-monte Carlo polega na przybliżeniu I d (f) średnia arytmetyczna, QMC d, (f) = QMC d, ( t 1,..., t ) := 1 n f( t j ), j=1 gdzie t 1, t 2,..., t sa pewnymi szczególnymi punktami w D wybranymi w sposób deterministyczny. Przez długi czas od swojego powstania uważano, że metody quasi-monte Carlo sa efektywne jedynie dla całek o niskich wymiarach. Dopiero pod koniec lat 90-tych ubiegłego wieku zauważono, 20

Korzystaj. ie kopiuj. ie rozpowszechniaj. 21/27 że daja istotnie lepsze wyniki niż Monte Carlo w obliczaniu wartości niektórych instrumentów finansowych. Obecnie quasi-monte Carlo jest powszchnie uznana i bardzo popularna metoda, której znaczenie trudno przecenić mimo, że dotychczas nie udało sie znaleźć pełnego teoretycznego wytłumaczenia jej efektywności. 3.2 Dyskrepancja Rozważania na temat quasi-monte Carlo zaczniemy od zdefiniowania pojecia dyskrepancji, które odgrywa fundamentalna role w analizie efektywności tych metod. Dla x = [x 1,..., x d ] T D niech [ 0, x) := [0, x 1 ) [0, x d ) oznacza d wymiarowy prostokat w D, zakotwiczony w zerze. Zakładamy przy tym, że [ 0, 0) =. Definicja 3.2. Dyskrepancja (z gwiazdka) danego zbioru punktów t j [0, 1) d, 1 j, nazywamy wielkość DISC d( t 1,..., t ) = sup DISC d ( x; t 1,..., t ), x D gdzie { } DISC d ( x; t 1,..., t ) = x 1... x d # j : t j [ 0, x), a #A oznacza liczbe elementów zbioru A. Ponieważ x 1 x d jest d-wymiarowa objetości a prostokata [ 0, x), dyskrepancja pokazuje jak dobrze danych punktów aproksymuje objetości tych prostokatów. Równoważnie, oznaczajac przez 1 [ 0, x) funkcje charakterystyczn a prostokata [ 0, x) mamy D 1 [ 0, x) (t) dt = x 1 x d oraz 1 j=1 1 [ 0, x) ( t j ) = #{j : t j [ 0, x)}. Stad dyskrepancje można również interpretować jako maksymalny bład aproksymacji funkcji charakterystycznych prostokatów przez odpowiedni algorytm quasi-monte Carlo. Pojecie dyskrepancji zilustrujemy najpierw na przykładzie jednowymiarowym d = 1. ietrudno pokazać, że dla dowolnych t j DISC 1(t 1,..., t ) 1 2. (3.1) Rzeczywiście, DISC 1 (x; t 1,..., t ) jako funkcja x ma na każdym z przedziałów [0, t 1 ), [t j 1, t j ), 2 j, pochodna równa 1, oraz przyjmuje zero dla x = 0. Zatem, jeśli dyskrepancja byłaby mniejsza od 1/(2) to mielibyśmy t 1 < 1 2, t j t j 1 < 1, 2 j, a stad t = t 1 + (t j t j 1 ) < 1 2 + 1 = 1 1 2. j=2

22/27 c I.azwisko1, I.azwisko2, Uniwersytet Warszawski, 2012. Otrzymujemy sprzeczność, bo dla t < x < 1 1/(2) DISC 1 (x; t 1,..., t ) < ( 1 1 ) 1 = 1 2 2. Z dowodu wynika, że równość w (3.1) zachodzi jedynie dla równomiernego rozmieszczenia punktów, t j = j 1/2, 1 j. W tym przypadku algorytm QMC 1, redukuje sie do zasady punktu środkowego. Z punktu widzenia praktycznych obliczeń dobrze byłoby mieć ciag nieskończony t 1, t 2,..., t n,... [0, 1) i konstruować kolejne aproksymacje używajac poczatkowych wyrazów tego ciagu. Ciekawe, że wtedy zbieżność 1 nie może być zachowana. Dokładniej, można pokazać istnienie c > 0 takiego, że dla każdego ciagu nierówność zachodzi dla nieskończenie wielu. DISC 1(t 1,..., t ) c ln Analiza dyskrepancji w wymiarach d 2 just dużo bardziej skomplikowana. a razie ograniczymy si e do zauważenia, że siatka równomierna jest fatalnym wyborem. Dokładniej, niech t j1,...,j d = [t j 1,..., t j d ] T, 1 j i n, 1 i d, bedzie równomiernym rozkładem = n d punktów w D. Rozpatrzenie prostokata [0, 1 2n ) [0, 1) [0, 1) }{{} d 1 wystarcza, aby si e przekonać, że wtedy dyskrepancja wynosi co najmniej 1 2n = 1 2 1/d. 3.3 Bład quasi-monte Carlo 3.3.1 Formuła Zaremby Jeśli f : [0, 1] R jest funkcja różniczkowalna to dla każdego x mamy 1 1 f(x) = f(1) f (t) dt = f(1) 1 (x,1] (t) f (t) dt. (3.2) x 0 Wzór ten uogólnimy na przypadek funkcji wielu zmiennych w nastepuj acy sposób. ajpierw wprowadzimy kilka niezbednych oznaczeń. Dla podzbioru indeksów U, = U {1, 2,..., d}, niech D U = [0, 1] U, gdzie U jest liczb a elementów w U. iech dalej x U D U b edzie wektorem powstałym z wektora x = [x 1, x 2,..., x d ] T D poprzez usuni ecie współrz ednych x j z j / U, a ( x U ; 1) D wektorem, którego j-ta współrz edna wynosi x j dla j U oraz wynosi 1 dla j / U.

Korzystaj. ie kopiuj. ie rozpowszechniaj. 23/27 a przykład, jeśli d = 5 i U = {1, 4} to dla x = [x 1, x 2, x 3, x 4, x 5 ] T mamy x U = [x 1, x 4 ] T i ( x U ; 1) = [x 1, 1, 1, x 4, 1] T. W końcu, niech f U = U f j U u j b edzie skrótowym zapisem odpowiedniej pochodnej mieszanej funkcji f. Lemat 3.1. Jeśli funkcja f : D R ma ciagłe pochodne czastkowe mieszane f U U {1, 2,..., d} to dla wszystkich f( x) = f( 1) + U ( 1) U D U 1 ( xu, 1 U ] ( z U) f U( z U ; 1) d z U, x D (3.3) ( 1 = [1, 1,..., 1] R d ). Dowód. Dowód przeprowadzimy przez indukcje wzgledem d. Dla d = 1 równość (3.3) jest równoważna (3.2). iech wiec d 2. Stosujac założenie indukcyjne do f z ustalona ostatnia współrzedn a x d mamy f( x) = f( x {d} ; 1) + V ( 1) V D V 1 ( xv, 1 V ] ( z V ) f V ( z V, x d ; 1) d z V, gdzie sumowanie jest po wszystkich = V {1, 2,..., d 1}. Stosujac dalej wzór (3.2) ze wzgledu na x d odpowiednio do f( x {d} ; 1) i f V ( z V, x d ; 1) dostajemy ) f( x) = f( 1) 1 ( x{d}, 1 D {d} ] ( z {d} {d} f {d} ( ) z {d} ; 1 d z {d} +( 1) D V 1 ( xv, 1 V ] ( z V ) f V ( z V ; 1) d z V V + ) ( 1) V {d} 1 ( xv D {d}, 1 V {d} ] ( z V {d} V {d} V {d} f V {d} ( ) z V {d} ; 1 d z V {d}. Teraz wystarczy porównać otrzymana formułe do prawej strony (3.3). Drugi składnik odpowiada U = {d}, trzeci składnik podzbiorom U do których nie należy d, a czwarty podzbiorom U takim, że d U i U 2. Zauważmy, że rozwijajac f( x) i f( t j ) zgodnie ze wzorem (3.3) mamy f( x) d x = f( 1) + ( ) ( 1) U 1 ( xu, 1 D U D U D U ] ( z U) d x f U( z U ; 1) d z U, 1 j=1 f( t j ) = f( 1) + U ( 1) U D U 1 1 (( t j ) U, 1 U ] ( z U) f U( z U ; 1) d z U. j=1 Ponieważ wartość funkcji charakterystycznej odcinka ( a, b] w punkcie c jest równa wartości funkcji charakterystycznej odcinka [ 0, c) w punkcie a to D 1 ( xu, 1 U ] ( z U) d x = D U 1 [ 0 U, z U ) ( x U) d x U = z j, j U

24/27 c I.azwisko1, I.azwisko2, Uniwersytet Warszawski, 2012. 1 j=1 1 (( t j ) U, 1 U ] ( z U) = 1 } {j # : ( t j ) U [ 0 U, z U ) = 1 # {j : t j [ 0, ( z U ; 1))}. Stad otrzymujemy nastepuj ac a formułe Zaremby na bład quasi-monte Carlo: I d (f) QMC d, (f) = ) ( 1) U DISC d (( z U ; 1); t 1,..., t f U( z U D U ; 1) d z U. (3.4) U 3.3.2 ierówność Koksmy-Hlawki Oznaczmy przez V d (D) klase funkcji f : D R, których pochodne mieszane f U istniej a i sa ciagłe dla wszystkich U {1,..., d}. Definicja 3.3. Wahaniem (w sensie Hardy-Krause) funkcji f V d (D) nazywamy wielkość V d (f) := U D U f U( z U ; 1) d z U. Zauważmy, że dla d = 1, 1 k V 1 (f) = f (x) dx = sup f(z 0 j ) f(z j 1 ) : k 1, 0 = z 0 < z 1 <... < z k = 1 j=1 jest wahaniem funkcji w klasycznym sensie. astepuj ace bardzo ważne oszacowanie błedu metody quasi-monte Carlo nosi nazwe nierówności Koksmy-Hlawki. Twierdzenie 3.1. Jeśli f V d (D) to bład metody quasi-monte Carlo QMC d, (f) = 1 f( t j ) j=1 dla aproksymacji całki I d = D f( x) d x szacuje si e przez I d (f) QMC d, (f) DISC d( t 1,..., t ) V d (f). Dowód. ierówność wynika natychmiast z formuły Zaremby (3.4), bowiem I d (f) QMC d, (f) ) DISC d (( z U ; 1); t 1,..., t f U( z U ; 1) d z U U D U DISC d( t 1,..., t ) f U( z U ; 1) d z U. D U U W nierówności Koksmy-Hlawki czynnik błedu V d (f) zależny jedynie od funkcji jest oddzielony od czynnika błedu DISC d ( t 1,..., t ) zależnego od wyboru punktów. O ile nie mamy wpływu na wahanie funkcji, możemy starać sie wybrać punkty t j tak, aby zminimalizować ich dyskrepancje. Zasadnicze pytanie brzmi: jak mała może być dyskrepacja? W szczególności, czy można wybrać nieskończony ciag punktów tak, że oparte na nim algorytmy quasi-monte Carlo pokonuja przekleństwo wymiaru w klasie V d (D)?

Korzystaj. ie kopiuj. ie rozpowszechniaj. 25/27 a miejscu jest teraz uwaga, że dzi eki obecności pochodnych mieszanych rozumowanie analogiczne do tego z dowodu twierdzenia 1.4 prowadzi w klasie funkcji f V d (D) z V (f) 1 jedynie do oszacowania z dołu bł edu przez c 1 (a nie c r/d ). Okazuje sie, że pełne odpowiedzi na zadane pytania nie sa znane. ajlepsze ciagi nieskończone t 1, t 2,..., t n,... spełniaja nierówność DISC d ( t 1,..., t gdzie C d > 0 nie zależy od. ) ln d C d, = 1, 2, 3,..., Wydaje sie wiec, że w klasie V d (D) metody quasi-monte Carlo daja istotnie lepsze wyniki od Monte Carlo, bo bład nie tylko jest deterministyczny, ale też dla f V d (D) zbiega do zera dużo szybciej, tzn. bład jest rzedu 1+ɛ dla dowolnego ɛ > 0 w przypadku quasi-monte Carlo, oraz 1/2 w przypadku Monte Carlo. ie do końca jest to prawda. Zauważmy bowiem, że w praktycznych obliczeniach wnioski asymptotyczne nie maja zastosowania, gdy wymiar d jest bardzo duży. Wtedy czynnik C d ln d może mieć istotne znaczenie i wrecz sprawiać, że nierówność Koksmy-Hlawki staje sie bezużyteczna. Dodatkowo, dobre oszacowanie C d jest wyjatkowe trudne. A jednak metody quasi-monte Carlo sa z powodzeniem stosowane w praktyce obliczeniowej nawet dla dużych wymiarów d. Istnieje wiele hipotez tworzonych w celu wyjaśnienia tego pozornego paradoksu. Jedna z najbardziej popularnych i już dość dobrze uzasadnionych teoretycznie mówi, że w praktyce mamy co prawda do czynienia z funkcjami bardzo wielu zmiennych, ale istotnych jest jedynie kilka zmiennych albo grupy kilku zmiennych. Matematycznie oznacza to, że w odpowiadajacych tym założeniom przestrzeniach zachodza dużo mocniejsze odpowiedniki nierówności Koksmy-Hlawki. 3.4 Ciagi o niskiej dyskrepancji Definicja 3.4. Ciag nieskończony t 1, t 2, t 3,... nazywamy ciagem o niskiej dyskrepancji jeśli istnieje C d > 0 taka, że dla wszystkich DISC d ( t 1,..., t ) C d ln d. Istnieje bardzo dużo efektywnych konstrukcji ciagów punktów o niskiej dyskrepancji. Teraz poznamy jedynie kilka najbardziej popularnych z nich. 3.4.1 Ciag Van der Corputa iech b 2 bedzie ustalona liczba naturalna. Wtedy dowolna liczbe naturalna n można jednoznacznie przedstawić w postaci n = a j (n) b j, j=0 gdzie a j {0, 1,..., b 1} i tylko dla skończonej liczby indeksów j mamy a j 0. Mówiac inaczej, a j sa kolejnymi cyframi rozwiniecia liczby n w bazie b. Wykorzystujac powyższe rozwiniecie funkcje radykalnej odwrotności ψ b : {0, 1, 2,...} [0, 1) definujemy jako ψ b (n) := a j (n) b (j+1). j=1

26/27 c I.azwisko1, I.azwisko2, Uniwersytet Warszawski, 2012. a przykład, dla bazy b = 2 mamy 13 = 2 0 + 2 2 + 2 3 = (1101) 2, czyli ψ 2 (13) = 1 2 + 1 8 + 1 16 = 11 16. Kolejne wartości radykalnej odwrotności, ψ b (1), ψ b (2),..., ψ b (n),..., tworza jednowymiarowy ciag Van der Corputa. Dla b = 2 kolejne punkty ciagu wynosza wiec 1 2, 1 4, 3 4, 1 8, 5 8, 3 8, 7 8, 1 16, 9 16, 5 16, 13 16, 3 16, 11 16, 7 16, 15 16, 1 32, 17 32,... Ciag Van der Corputa jest ciagiem o niskiej dyskrepancji dla dowolnie dobranej bazy b, tzn. dyskrepancja poczatkowych wyrazów szacuje sie z góry przez C 1 ln /. Zauważmy jednak, że dla = b k 1, k 1, dostajemy równomierne rozmieszczenie punktów, tzn. tworza one zbiór {j/( + 1) : 1 j }, którego dyskrepancja wynosi ( + 1) 1. Stad, pożadane sa raczej mniejsze bazy b; im wieksze b tym rzadziej ze wzgledu na osiagana jest dyskrepancja proporcjonalna do 1/. 3.4.2 Konstrukcje Haltona i Sobol a Jednowymiarowy ciag Van der Corputa jest podstawa konstrukcji wielu ciagów w wyższych wymiarach d. Jedna z nich prowadzi do ciagu Haltona { h k } k 1, którego k-ty punkt wynosi hk = [ψ b1 (k), ψ b2 (k),..., ψ bd (k)] T. Liczby b 1,..., b d sa tu danymi bazami. Od razu zauważamy, że wybór b 1 = = b d nie jest dobry, bo prowadzi do siatki równomiernej w [0, 1) d, zob. rozdział 3.2. Jeśli jednak b i sa liczbami pierwszymi to { h k } k 1 jest już ciagiem o niskiej dyskrepancji. Minusem konstrukcji Haltona jest to, że dla dużych wymiarów d bazy b d też sa duże co, jak wcześniej zauważyliśmy, nie jest korzystne. Problemu tego unika bardziej skomplikowana konstrukcja Sobol a, gdzie na każdej zmiennej pracujemy z ta sama baza b = 2. Idee konstrukcji ciagu Sobol a { s k } k 1 przedstawimy najpierw zakładajac d = 1. iech a(k) = [a 0 (k),..., a r 1 (k)] T b edzie wektorem kolejnych bitów w rozwini eciu dwójkowym liczby k, Wtedy gdzie k = a 0 (k) + 2a 1 (k) + + 2 r 1 a r 1 (k). s k = y 1(k) 2 y 1 (k) y 2 (k). y r (k) + y 2(k) 4 = V + + y r(k) 2 r, a 0 (k) a 1 (k). a r 1 (k) mod 2, a V jest specjalnie dobrana macierza o elementach 0 i 1, zwana macierza generujac a. (Zauważmy, że jeśli V jest identycznościa to otrzymany ciag jest ciagiem Van der Corputa.) Oznaczajac V = [ v 1,..., v r ] możemy równoważnie zapisać y(k) = a 0 (k) v 1 a r 1 (k) v r,

Korzystaj. ie kopiuj. ie rozpowszechniaj. 27/27 gdzie jest operacja XOR, czyli dodawaniem bitów modulo 2, 0 0 = 0, 0 1 = 1, 1 0 = 1, 1 1 = 0. Dla d 2, kolejne współrzedne punktu s k wyliczane sa według powyższej recepty, ale używajac różnych macierzy generujacych V. I właśnie problem wyboru macierzy generujacych tak, aby otrzymać ciag o niskiej dyskrepancji jest istota konstrukcji Sobol a. Dodajmy, że jest to problem wysoce nietrywialny. 3.4.3 Sieci (t, m, d) i ciagi (t, d) Dla b 2 definiujemy b-prostokat w [0, 1) d jako [ a1 b j, a ) [ 1 1 ad 1 b j 1 b j, a ) d 1 d b j, d gdzie j i {0, 1, 2,...}, a i {0, 1,..., b ji 1 }, 1 i d. a przykład, jeśli d = 1 i b = 2 to przedziały [3/4, 1) i [3/4, 7/8) sa b-prostokatami, ale nie jest nim [5/8, 7/8). Zauważmy, że objetość b-prostokata wynosi b (j 1+ +j d ). Definicja 3.5. iech b 2 i 0 t m. Siecia (t, m, d) w bazie b nazywamy zbiór b m punktów w [0, 1) d o własności, że w każdym b-prostokacie o objetości b t m znajduje sie dokładnie b t punktów tego zbioru. Mówiac inaczej, sieć (t, m, d) dokładnie pokazuje objetości b-prostokatów poprzez iloraz b t /b m liczby punktów, które należa do prostokata do liczby wszystkich punktów. Definicja 3.6. Ciag nieskończony t 1, t 2,... w [0, 1) d nazywamy ciagiem (t, d) w bazie b jeśli dla wszystkich m > t i j = 0, 1, 2,... segment { } t i : jb m < i (j + 1)b m jest siecia (t, m, d) w bazie b. astepuj ace twierdzenie jest podstawa wielu konstrukcji ciagów o niskiej dyskrepancji. Twierdzenie 3.2. Każdy ciag (t, d) w bazie b jest ciagiem o niskiej dyskrepancji. Pokazanie konkretnych konstrukcji ciagów (t, d) wykracza poza ramy tego wykładu. Powiemy tylko, że szczególne wybory macierzy generujacych w konstrukcji Sobol a prowadza do ciagów (t, d). Inne konstrukcje należa do Faure a, iederreitera, Tezuki i in.