近年コンピュータの発達により、コンピュータを用いて数学の問題を解くという時代になった。
四色問題がコンピュータの活躍により解決されたことは、四半世紀経った今でも鮮烈な記憶と
して残っている。このページでアプローチするモンテカルロ法は、解析的には解けない問題に
対して、ランダムな実験を多数回繰り返し、その結果をもとに近似的に答を求めようとする方
法である。
定積分の計算で、被積分関数の不定積分が容易に分からないとき、近似計算により、定積
分の値を求めることになるが、次の2つの公式が知られている。
台形公式 この公式は、曲線の一部をその両端を結ぶ線分によって |
![]() |
シンプソン(Simpson)の公式
関数F(X)は、区間[a,b] で連続とする。この区間を 2n 等分して、分点を小さい方から
順に、a=X0,X1,X2,・・・,X2n−1,X2n=b とし、YK=F(XK)、h=(b−a)/2n とする。
このとき、
この公式は、X軸上の等間隔hの3点X2K−2、X2K−1、X2K をとり、これに対応する曲線上
の3点を通る放物線を考え、曲線の下の面積をいくつかの放物線の面積の和で近似するも
のである。
例 | ![]() |
の値を、台形公式、シンプソンの公式を用いて求めてみよう。 |
区間[0,1] を10等分すると、h=0.1
このとき、Y0=1、Y1=0.9900990、Y2=0.9615385
Y3=0.9174312、Y4=0.8620690
Y5=0.8000000、Y6=0.7352941
Y7=0.6711409、Y8=0.6097561
Y9=0.5524862 、Y10=0.5
従って、台形公式を用いれば、 A≒0.7849815
シンプソンの公式を用いれば、 A≒0.7853982
因みに、正しく定積分の計算をすれば、A=π/4≒0.7853982 である。
この定積分近似計算の第3の方法として、モンテカルロ・シミュレーションという方法がある。
![]() |
上記例の関数を用いて説明することにする。 左図は、区間[0,1] における関数F(X)のグラフを表す。定積 分の値Aを求めることは、左図の網目状の部分の面積を求め ることである。今一組の乱数(α,β)を発生させ、F(α)≧β となるかどうかを判定する。何組かの乱数をとり、その総数を Nとする。このうち、上記不等式を満たすものの個数を r とす れば、全体の面積が1なので、比の値 r/N は定積分の近似 値を与える。Nの値を十分大きくとれば、よりよい近似値となる はずである。 |
乱数を発生させるには、乱数表を用いたり、乱数さいころを用いればよい。乱数さいころは、
正20面体で、各面に0〜9の数字が2つずつ書かれ、均等に数字が出るように作られている
ものである。
ここでは、表計算ソフトExcel のRAND関数を用いて乱数を発生させ、実験してみよう。
セルA1に =RAND()、セルB1に =1/(1+A1*A1)、セルC1に =RAND() を入力し、
不等式を満たすかどうかの判定として、セルD1に =IF(+B1−C1>=0,1,0) を入力す
る。セルA1、B1、C1、D1を1〜10000行までコピーする。
不等式を満たすものの個数計算用として、セルE1に =SUM(D1:D10000) を入力する。
10回試行を行ったところ、次の結果を得た。
7790、7943、7840、7828、7925、7871、7844、7855、7787、7839
この標本平均は、7852.2 となる。
従って、7852.2/10000=0.78522 が求める定積分の近似値となる。
上記のシミュレーションでは、10000行までに留めたが、これをもうすこし大きくとれば、実際
値に、より近づくものと期待される。
(参考文献:木下栄蔵 著 好奇心の数学(電気書院)
大槻富之助 著 数Vの研究(旺文社))