Ioana A. Cosma and Ludger Evers, Markov Chains and Monte Carlo Methods
http://users.aims.ac.za/~ioana/notes.pdf
CC-by-nc-sa 2.5
http://creativecommons.org/licenses/by-nc-sa/2.5/za/legalcode
2.1 What are Monte Carlo Methods?
- Stochastic integration
積分をシミュレーションで近似する - Monte Carlo tests
p値をシミュレーションで近似する - Markov Chain Monte Carlo(MCMC)
興味有る分布に収束するMarkov chainを構成する
2.2 Introductory examples
Example 2.1 (A raindrop experiment for computing π)
πをMonte Carloによって推測する. ある雨粒が落ちる位置の確率変数を,x軸X,y軸Yとする. ある正方形R=[−1,1]×[−1,1]に一様に雨粒が落ちると仮定して,その中の単位円にも一様に雨粒が落ちる. X,Yがiidでuniformally distribution ,U[−1,1]に従うとする.
P(drop within circle)=area of the unit circearea of the square=∫∫x2+y2≤11dxdy∫∫−1≤x,y≤11dxdy=π/4
これはπ=4⋅P(drop within circle)と同じ.
n個のraindropに対して,単位円に落ちる個数のr.v.をZとするとZはbinomialである.つまり
Z∼B(n,p), p=P(drop within circle)
pを最尤法での推定値はˆp=Z/n. よってˆπ=4ˆp=4⋅Zn.
law of large numbersによって,ˆπがほとんど必ずπに収束する. 中心極限定理によって,例えばn=100としてZ∼B(100,p)とすれば,Z∼N(100p,100p(1−p))で近似できる. よってˆp=ˆZ/100∼(p,p(1−p)/100)であって,pの95%信頼区間は
[0.77−1.96√0.77(1−0.77)100,0.77+1.96√0.77(1−0.77)100]=[0.6875,0.8525]
さらにπの95%信頼区間は[2.750,3.410].
以上やってきたことは
- πをある期待値として表現した
- 代数的な表現を,それのsample approximationに書き換えた. そのsample approximationが収束することを大数の法則で保証し,CLTによって収束の測度を議論した.
Example 2.2 (Monte Carlo Integration)
∫10f(x)dx with f(x)=127(−65536x8+262144x7−409600x6+311296x5−114688x4+16384x3)
をMonte Carlo integrationすることを考える.f([0,1])=[0,1]だから,[0,1]上のfのグラフは[0,1]×[0,1]に収まる. またraindrop experimentを考える. f(x)=∫f01dtだから
∫10f(x)dx=∫10∫f(x)01dtdx=∫∫{(x,t):t≤f(x)}1dtdx=∫∫{(x,t):t≤f(x)1dtdx∫∫0≤x,t≤11dtdx
分子はf(x)≤yのグラフの面積で,分母は[0,1]×[0,1]の面積である. n個の雨粒を落としてf(x)≤yに落ちる確率がˆpnなとき,(1−2α)信頼区間は
[^pn−z1−α√^pn(1−^pn)n,^pn+z1−α√^pn(1−^pn)n]
だから,収束の早さはOP(n−1/2). 一方Riemann積分の速度はO(n−1).
Monte Carloの場合の収束の早さは次元に依存しない一方で,他の決定論的な積分評価の場合は次元の増加とともに収束が遅くなっていくので,高次元な関数の積分でMonte Carloは威力を発揮する.
Example 2.3 (Buffon’s needle)
3本の間隔δの平行な直線で平面が区切られていて,長さl<δの針を落とすとき,その針が直線と交わる確率はどれほどだろうか?
解答 (Buffon, 1777)
針が直線との角度θで着地したとき,針が直線と交わる⇔針の一端と直線の距離がlsinθ以下(fig. 2.5(a)). したがって
P(intersect|θ)=lsinθδ
さらにθは[0,π)上一様分布していると仮定すると
P(intersect)=∫π0P(intersect|θ)⋅1πdθ=∫π0lsinθδ1πdθ=lπδ∫π0sinθdθ=2lπδ
Lazzarini,1901はl=2.5cm,d=3cmの場合に,1808本の針を使ってπ∼3.14159292035を算出した. これは非常に良い近似である. 力学的にMonte Carlo法を行うのは非常に時間がかかるが,電子計算機の到来によってこの欠点は克服された. しかし,例からわかるように,それぞれの実験での確率変数の現れがたしかにもとの分布から生成されていなければならないので,乱数の生成が重要になってくる.
2.4 Pseudo-random numbers
ここではU[0,1]の現れを生成するpseudo-random number generator(RNG)を考える. これには以下の性質が必要である.
- RNGの生成する値は独立である
- RNGの生成する値は[0,1]にまんべんなく分布する
以下にlinear congruential generator(線形合同法)の概要を述べる. linear congruential generatorは上で述べた性質をあまり満たしていないので実践すべきではない.
Algorithm 2.1 (Conguruential pseudo-RNG)
- M∈N,c∈N0,Z0∈{1,...,M−1}を選ぶ
- i=1,2,...に
Zi=(aZi−1+c)modM,Xi=Zi/Mとする.これは明らかに決定論的なアルゴリズムで,それぞれのパラメータを一致させれば完全に一致する出力をおこなう. また, 生成される値{Xi}は,(Xnk+1,...,Xn(k+1)−1)をn次元空間の点と考えることで,n次元立方体のテント見ることが出来る. これらの点は有限の-しばしばごく小さい数の-超平面に乗っていて,したがってまんべんなく分布していると見ることができない(fig. 2.6, fig. 2.7).
![]()
よりよいpseudo-RNGには,例えばMarsaglia and Zaman(1991)やMatsumoto and Nishimura(1998)がある.
0 件のコメント:
コメントを投稿