透明少女の水色革命

TOPRSS
トップ 201002
 

▼EXCELの乱数を使って円周率πを求める

昨日に続いて、EXCEL乱数シリーズ
と言っても、今回で最終回ですが。
 今回は円周率π(パイ)を求めます。
こちらは比較的有名な方法なので、
 ネットで検索したら他にいろいろ載ってるかもしれません。
 まず、下のような半径1の円(の4分の1)と 1辺の長さが1の正方形を考えます。
 
図1


このように、正方形の中にランダム(無作為)に点を打つために、
 乱数を利用してたくさんの点を打ち、 その中からオレンジの
円の中にある確率を求めればπが求まるわけです。

図2


2つの乱数X、Yは、正方形の中の任意の点A(X,Y)の座標を表します。
この点がオレンジ色の円の中にあるかどうかはその右の行で判定します。
ここで、オレンジ色の円の半径は1です。
つまり、円周上のどの点からも原点(0,0)までの距離が1ということです。
また、X^2+Y^2は点A(X,Y)から原点までの距離の2乗を表します(三平方の定理)。
これが1より小さければ、その点は円の内部にあるということになります。
(1の2乗は1なので、距離そのもので考えても距離の2乗で考えても同じことです)
ここではIF関数を使って、その判定をしています。
さらにCOUNTIF関数でD列の1,048,575個のサンプルの中から
円の内部にある(値が0になっている)ものの数を数え、
その数を全サンプル数で割ります。
そうするとランダムに打った点Aがオレンジ色の円の内部にある確率Pが求められ、
それがπ/4に等しいことが図1でわかっていますので、
このPを4倍した値がπに相当するわけです。
こうして求められたπは3.144519・・・となり、本来のπ=3.141592・・・に
そこそこ近い値が求められたことがわかります。

▼EXCELの乱数を使って自然対数の底eを求める

大学院(会計専門職)時代に統計の授業の先生が
EXCELの乱数発生機能を使ってπ(パイ)やeを求めるという話をしていて、
その時は答えを教えてもらえなかったので
仕事の暇なときに会社のPCで考えてみました。
πはヒントを出してくれたのを覚えていたので
比較的すんなりと求められましたが、
eはちょっと苦戦しました。
πはとりあえずまた今度紹介するとして、
今回はeの求め方を紹介したいと思います。

まず、eというのは、2.71828・・・・という無限に続く不思議な数で
ネイピア数とも言います。

πとeどちらにも共通するのは、乱数と面積を上手く利用することです。
下の図はy=e^x=exp(x)(と書きます)のグラフです。
御覧のとおり、exp(0)=1、exp(1)=eですので、
色の付いた長方形の面積はeとなります。
そこから黄緑色の部分の面積を引いたオレンジ色の部分の面積は下記のように1になります。
今回はy=exp(x)のグラフのこのような性質を利用します。

図1


まず第一関門クリアです。
オレンジ色の部分が1となるように問題を定立すればよいことがわかりました。

しかしここで第2関門。
図1では定積分の考え方を用いて黄緑色の部分の面積を求めましたが、
私はEXCELを使って定積分をする方法を知りません。
ここで、乱数が活躍するというわけです。
その前に、下の図2をご覧ください。

図2


このように縦の区切りをどんどん多くしていけば、
黄緑色の部分の面積に近似することができます。
これを乱数を使ってやります。

図3


乱数は「=rand()」と入力すると出てきます。
0以上1以下の何かしらの数がランダムに出てくるということです。
これをxと置いて、任意の定数aに対して、a^xを求めます。
このD列とE列を1,048,576行目(EXCEL2007の場合)までコピーします。
図2でx軸の0から1までの間を1,048,575等分(1行目を除くため1,048,576-1)した場合を考えるわけです。
1,048,575個に細分化された黄緑色の部分の1つの面積は、
縦の長さがa^xで、横の長さは1/1,048,575なので
a^x/1,048,575となります。
乱数xは0以上1以下のすべての実数が同じ確率で出てきますので、
これらをすべて足せば黄緑色の部分になるはず、というわけです。
こうして求めたオレンジ色の部分の面積が図3のセルH5です。
これが1になるようにaを定めてやれば、その値がeというわけです。
ここまでくればあと1歩。
「データ」→「What-If分析」→「ゴールシーク」
という機能を使って図3のように入力すれば
EXCEL様が勝手にeを求めてくださいます。
こうしても求めたeは2.7186…と出てきました。
本来の値とまあまあ近いことがお分かりいただけると思います。

ただ、このやり方は「ゴールシーク」という
ちょっと卑怯な技を使うので、もっと綺麗な方法がないかなって思うところです。
 


01 | 2010/02 | 03
- 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 - - - - - -

にほんブログ村 自転車ブログへ にほんブログ村 自転車ブログ ロードバイクへ にほんブログ村 自転車ブログ ロングライドへ にほんブログ村 自転車ブログ ポタリングへ
↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑
ランキングに参加しています。
ぜひポチっとして行って下さい!


こっちはクリックしないで! ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
絶対押すなよ!やんちゃ爆弾