Metody Monte Carlo potrafią pokonać przekleństwo wymiaru, mają jednak również swoje wady. Najważniejsze z nich to:
(i) niepewność wyniku (który ma charakter probablistyczny),
(ii) stosunkowo wolna zbieżność (praktycznie ),
(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 są w istocie deterministyczne. Dlatego, wybierając punkty deterministycznie, ale tak, aby w jakiś sposób ,,udawały” i ,,uśredniały” wybór losowy, powinniśmy dostać metodę deterministyczną o zbieżności co najmniej . A przy okazji usunęlibyśmy dwie z wymienionych wad Monte Carlo.
Takie intuicyjne myślenie wydaje się nie mieć racjonalnych podstaw, bo przecież metody deterministyczne podlegają przekleństwu wymiaru. Pamiętajmy jednak, że twierdzenie 13.4 o przekleństwie zachodzi w klasie funkcji różniczkowalnych razy po każdej zmiennej. Zwróciliśmy na to uwagę już na początku rozdziału 14. Dlatego zasadne jest poszukiwanie pozytywnych rozwiązań dla funkcji o innej regularności.
Quasi-Monte Carlo jest deterministycznym odpowiednikiem klasycznej metody Monte Carlo dla aproksymacji całek na kostkach,
Metoda quasi-Monte Carlo polega na przybliżeniu średnią arytmetyczną,
gdzie są pewnymi szczególnymi punktami w wybranymi w sposób deterministyczny.
Przez długi czas od swojego powstania uważano, że metody quasi-Monte Carlo są efektywne jedynie dla całek o niskich wymiarach. Dopiero pod koniec lat 90-tych ubiegłego wieku zauważono, że dają istotnie lepsze wyniki niż Monte Carlo w obliczaniu wartości niektórych instrumentów finansowych. Obecnie quasi-Monte Carlo jest powszchnie uznaną i bardzo popularną metodą, której znaczenie trudno przecenić mimo, że dotychczas nie udało się znaleźć pełnego teoretycznego wytłumaczenia jej efektywności.
Rozważania na temat quasi-Monte Carlo zaczniemy od zdefiniowania pojęcia dyskrepancji, które odgrywa fundamentalną rolę w analizie efektywności tych metod.
Dla niech
oznacza wymiarowy prostokąt w , ,,zakotwiczony” w zerze. Zakładamy przy tym, że .
Dyskrepancją (z gwiazdką) danego zbioru punktów , , nazywamy wielkość
gdzie
a oznacza liczbę elementów zbioru .
Ponieważ jest -wymiarową objętością prostokąta , dyskrepancja pokazuje jak dobrze danych punktów aproksymuje objętości tych prostokątów. Równoważnie, oznaczając przez funkcję charakterystyczną prostokąta mamy
Stąd dyskrepancję można również interpretować jako maksymalny błąd aproksymacji funkcji charakterystycznych prostokątów przez odpowiedni algorytm quasi-Monte Carlo.
Pojęcie dyskrepancji zilustrujemy najpierw na przykładzie jednowymiarowym . Nietrudno pokazać, że dla dowolnych
(15.1) |
Rzeczywiście, jako funkcja ma na każdym z przedziałów , , , pochodną równą , oraz przyjmuje zero dla . Zatem, jeśli dyskrepancja byłaby mniejsza od to mielibyśmy
a stąd
Otrzymujemy sprzeczność, bo dla
Z dowodu wynika, że równość w (15.1) zachodzi jedynie dla równomiernego rozmieszczenia punktów,
W tym przypadku algorytm redukuje się do zasady punktu środkowego.
Z punktu widzenia praktycznych obliczeń dobrze byłoby mieć ciąg nieskończony
i konstruować kolejne aproksymacje używając początkowych wyrazów tego ciągu. Ciekawe, że wtedy zbieżność nie może być zachowana. Dokładniej, można pokazać istnienie takiego, że dla każdego ciągu nierówność
zachodzi dla nieskończenie wielu .
Analiza dyskrepancji w wymiarach just dużo bardziej skomplikowana. Na razie ograniczymy się do zauważenia, że siatka równomierna jest fatalnym wyborem. Dokładniej, niech
będzie równomiernym rozkładem punktów w . Rozpatrzenie prostokąta
wystarcza, aby się przekonać, że wtedy dyskrepancja wynosi co najmniej .
Jeśli jest funkcją różniczkowalną to dla każdego mamy
(15.2) |
Wzór ten uogólnimy na przypadek funkcji wielu zmiennych w następujący sposób.
Najpierw wprowadzimy kilka niezbędnych oznaczeń. Dla podzbioru indeksów ,
niech , gdzie jest liczbą elementów w . Niech dalej będzie wektorem powstałym z wektora poprzez usunięcie współrzędnych z , a wektorem, którego -ta współrzędna wynosi dla oraz wynosi dla . Na przykład, jeśli i to dla mamy i .
W końcu, niech
będzie skrótowym zapisem odpowiedniej pochodnej mieszanej funkcji .
Jeśli funkcja ma ciągłe pochodne cząstkowe mieszane dla wszystkich to
(15.3) |
().
Dowód przeprowadzimy przez indukcję względem . Dla równość (15.3) jest równoważna (15.2). Niech więc . Stosując założenie indukcyjne do z ustaloną ostatnią współrzędną mamy
gdzie sumowanie jest po wszystkich . Stosując dalej wzór (15.2) ze względu na odpowiednio do i dostajemy
Teraz wystarczy porównać otrzymaną formułę do prawej strony (15.3). Drugi składnik odpowiada , trzeci składnik podzbiorom do których nie należy , a czwarty podzbiorom takim, że i .
∎Zauważmy, że rozwijając i zgodnie ze wzorem (15.3) mamy
Ponieważ wartość funkcji charakterystycznej odcinka w punkcie jest równa wartości funkcji charakterystycznej odcinka w punkcie to
Stąd otrzymujemy następującą formułę Zaremby na błąd quasi-Monte Carlo:
(15.4) |
Oznaczmy przez klasę funkcji , których pochodne mieszane istnieją i są ciągłe dla wszystkich .
Wahaniem (w sensie Hardy-Krause) funkcji nazywamy wielkość
Zauważmy, że dla ,
jest wahaniem funkcji w klasycznym sensie. Następujące bardzo ważne oszacowanie błędu metody quasi-Monte Carlo nosi nazwę nierówności Koksmy-Hlawki.
Jeśli to błąd metody quasi-Monte Carlo
dla aproksymacji całki szacuje się przez
W nierówności Koksmy-Hlawki czynnik błędu zależny jedynie od funkcji jest oddzielony od czynnika błędu zależnego od wyboru punktów. O ile nie mamy wpływu na wahanie funkcji, możemy starać się wybrać punkty tak, aby zminimalizować ich dyskrepancję. Zasadnicze pytanie brzmi: jak mała może być dyskrepacja? W szczególności, czy można wybrać nieskończony ciąg punktów tak, że oparte na nim algorytmy quasi-Monte Carlo pokonują przekleństwo wymiaru w klasie ?
Na miejscu jest teraz uwaga, że dzięki obecności pochodnych mieszanych rozumowanie analogiczne do tego z dowodu twierdzenia 13.4 prowadzi w klasie funkcji z jedynie do oszacowania z dołu błędu przez (a nie ).
Okazuje się, że pełne odpowiedzi na zadane pytania nie są znane. Najlepsze ciągi nieskończone spełniają nierówność
gdzie nie zależy od .
Wydaje się więc, że w klasie metody quasi-Monte Carlo dają istotnie lepsze wyniki od Monte Carlo, bo błąd nie tylko jest deterministyczny, ale też dla zbiega do zera dużo szybciej, tzn. błąd jest rzędu dla dowolnego w przypadku quasi-Monte Carlo, oraz w przypadku Monte Carlo. Nie do końca jest to prawdą. Zauważmy bowiem, że w praktycznych obliczeniach wnioski asymptotyczne nie mają zastosowania, gdy wymiar jest bardzo duży. Wtedy czynnik może mieć istotne znaczenie i wręcz sprawiać, że nierówność Koksmy-Hlawki staje się bezużyteczna. Dodatkowo, dobre oszacowanie jest wyjątkowe trudne.
A jednak metody quasi-Monte Carlo są z powodzeniem stosowane w praktyce obliczeniowej nawet dla dużych wymiarów . 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 odpowiadających tym założeniom przestrzeniach zachodzą dużo mocniejsze odpowiedniki nierówności Koksmy-Hlawki.
Ciąg nieskończony nazywamy ciągem o niskiej dyskrepancji jeśli istnieje taka, że dla wszystkich
Istnieje bardzo dużo efektywnych konstrukcji ciągów punktów o niskiej dyskrepancji. Teraz poznamy jedynie kilka najbardziej popularnych z nich.
Niech będzie ustaloną liczbą naturalną. Wtedy dowolną liczbę naturalną można jednoznacznie przedstawić w postaci
gdzie i tylko dla skończonej liczby indeksów mamy . Mówiąc inaczej, są kolejnymi cyframi rozwinięcia liczby w bazie . Wykorzystując powyższe rozwinięcie funkcję radykalnej odwrotności definujemy jako
Na przykład, dla bazy mamy , czyli .
Kolejne wartości radykalnej odwrotności,
tworzą jednowymiarowy ciąg Van der Corputa. Dla kolejne punkty ciągu wynoszą więc
Ciąg Van der Corputa jest ciągiem o niskiej dyskrepancji dla dowolnie dobranej bazy , tzn. dyskrepancja początkowych wyrazów szacuje się z góry przez . Zauważmy jednak, że dla , , dostajemy równomierne rozmieszczenie punktów, tzn. tworzą one zbiór , którego dyskrepancja wynosi . Stąd, pożądane są raczej mniejsze bazy ; im większe tym rzadziej ze względu na osiągana jest dyskrepancja proporcjonalna do .
Jednowymiarowy ciąg Van der Corputa jest podstawą konstrukcji wielu ciągów w wyższych wymiarach . Jedna z nich prowadzi do ciągu Haltona , którego -ty punkt wynosi
Liczby są tu danymi bazami. Od razu zauważamy, że wybór nie jest dobry, bo prowadzi do siatki równomiernej w , zob. rozdział 15.2. Jeśli jednak są liczbami pierwszymi to jest już ciągiem o niskiej dyskrepancji.
Minusem konstrukcji Haltona jest to, że dla dużych wymiarów bazy też są 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 tą samą bazą .
Ideę konstrukcji ciągu Sobol'a przedstawimy najpierw zakładając . Niech
będzie wektorem kolejnych bitów w rozwinięciu dwójkowym liczby ,
Wtedy
gdzie
a jest specjalnie dobraną macierzą o elementach i , zwaną macierzą generującą. (Zauważmy, że jeśli jest identycznością to otrzymany ciąg jest ciągiem Van der Corputa.)
Oznaczając możemy równoważnie zapisać
gdzie jest operacją XOR, czyli dodawaniem bitów modulo ,
Dla , kolejne współrzędne punktu wyliczane są według powyższej recepty, ale używając różnych macierzy generujących . I właśnie problem wyboru macierzy generujących tak, aby otrzymać ciąg o niskiej dyskrepancji jest istotą konstrukcji Sobol'a. Dodajmy, że jest to problem wysoce nietrywialny.
Dla definiujemy -prostokąt w jako
gdzie , , . Na przykład, jeśli i to przedziały i są -prostokątami, ale nie jest nim . Zauważmy, że objętość -prostokąta wynosi .
Niech i . Siecią w bazie nazywamy zbiór punktów w o własności, że w każdym -prostokącie o objętości znajduje się dokładnie punktów tego zbioru.
Mówiąc inaczej, sieć dokładnie pokazuje objętości -prostokątów poprzez iloraz liczby punktów, które należą do prostokąta do liczby wszystkich punktów.
Ciąg nieskończony w nazywamy ciągiem w bazie jeśli dla wszystkich i segment
jest siecią w bazie .
Następujące twierdzenie jest podstawą wielu konstrukcji ciągów o niskiej dyskrepancji.
Każdy ciąg w bazie jest ciągiem o niskiej dyskrepancji.
Pokazanie konkretnych konstrukcji ciągów wykracza poza ramy tego wykładu. Powiemy tylko, że szczególne wybory macierzy generujących w konstrukcji Sobol'a prowadzą do ciągów . Inne konstrukcje należą do Faure'a, Niederreitera, Tezuki i in.
Treść automatycznie generowana z plików źródłowych LaTeXa za pomocą oprogramowania wykorzystującego LaTeXML.
strona główna | webmaster | o portalu | pomoc
© Wydział Matematyki, Informatyki i Mechaniki UW, 2009-2010. Niniejsze materiały są udostępnione bezpłatnie na licencji Creative Commons Uznanie autorstwa-Użycie niekomercyjne-Bez utworów zależnych 3.0 Polska.
Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego.
Projekt współfinansowany przez Ministerstwo Nauki i Szkolnictwa Wyższego i przez Uniwersytet Warszawski.