「モンテカルロ法をはじめよう」

私は、まだPythonの初心者だ。上達するには、どんどんプログラムコードを書かないといけない。いまは、Matplotlibパッケージでいろんなグラフを描いている。先日まではNumpyで線形代数を復習していた。

「とりあえず、これを見てくれ」

そう言って彼は図面を広げた。その図面がこれだ。

N=100

「この図を見て、なにか気付くことはあるだろうか?」 彼は、ニコニコして私の反応を待っている。私は、何かしゃべらなくてはと思い、口にした。

「まず―――」

N=200
N=300
N=500
N=1000

まず、

  • 赤と青で点が塗り分けられていること。
  • そのルールは緑色の曲線の下の点は赤、上の点は青となっている。
  • 図の上の二つの数字は同じほどだ。
  • 緑色の曲線は、関数f(x)であること。

…このくらいかな」

彼は言った。「素晴らしいところに気付いた。一つ言っておくと、この点はランダムに打たれている。もし、ランダムに打たれる点の数をすごく増やせばどうなるだろう?この図で、曲線の上が青に塗りつぶされ、曲線の下が赤に塗りつぶされるだろう。そうして赤の点の数を数えたら、なにが分かるだろうか」と。

私はすぐさま答える。「曲線f(x)の下の部分だ。もう少し詳しく言うなら、曲線f(x)とx軸に囲まれる面積だ。つまり、xが0から2πまでの∫f(x)dxだろう」。自分で言って自分で気づくなんて、数学を学ぶときによくあることだ。今日も私は、「彼」にやられた。

投稿者: lute369

生きている限り、学ぶこと。それが私のすることです。 Dum spiro,disco.

コメントを残す