「誕生日のパラドックス」を実証する


この記事の所要時間: 230秒 〜 330秒程度(1521文字)


確率には、人間の直感と合わないものがある。学校の確率の授業で登場する「誕生日の問題」などはその典型だろう。質問の仕方はいろいろで、例えば「何人集まると、その中に同じ誕生日の人がいる確率が5割を超えるのか」。1年365日を2で割って182人や183人という答えが出たり、山勘で50人、100人という答えが出たりするが、この質問の正解はたったの23人。この正解が直感で思い浮かぶ人数と較べてあまりに小さいため、「誕生日のパラドックス」と呼ばれることもあるようだ。
 
さて、この直感に合わない確率を数式で説明するのは簡単だが、確率が苦手な人はそれでも納得しないらしい。そこで、腕試しがてらいたずらに実証してみよう。何人集まったら同じ誕生日の人が出現するのか、実際に試してみるのだ。
 

誕生日

credit: Gil-Dekel via pixabay

 


誕生日をランダムに発生させて・・・


「実証してみよう」とは言っても、実際にたくさんの人を集めるのは不可能。何らかの誕生日リストがあれば擬似的な試算もできるだろうが、残念ながら手元にそういうデータはない。今回の実証で使用するのは、以前にもこのブログで紹介した「モンテカルロ法」だ(参考:力ずくで確率を算出するモンテカルロ法の魔力)。乱数を使ったシミュレーションにより確率や近似値を計算するモンテカルロ法は、直感による勘違いを正すのに持って来いだろう。何せ、起きたことが見えるのが強い。
 
具体的には、100人分の誕生日をランダムに発生させて、同じ誕生日の組み合わせが何人目で出現するかを「実際に」試した。プログラムは書けないので、今回もツールはエクセルを使用。RANDBETWEEN関数でテストの対象となるデータをつくり、COUNTIF関数で同じもの探しをして(これはもっとスマートな方法がある筈)、VLOOKUP関数でその日付を拾った。つくったファイルはコレで、その外見は次のような感じになる。薄い赤で網掛けしたセルが、最初に一致した誕生日だ。少ない人数で一致が発生していることも見て取れる。

「誕生日のパラドックス」をモンテカルロ法でシミュレーションすると・・・

 


10,000回分のデータを取ると・・・


さて、上でダウンロードできるようにしたファイルは10回分のテスト用だが、実際には1,000回分のワークシートをつくり、それを10回試行した。つまり、10,000回分のデータを取った訳だ。
 
結果はと言えば、ほぼ予想通り。同じ誕生日の組み合わせが何人目で出現するかをグラフにすると、以下のようになった。10,000回ではテスト回数がまだまだ足りず凸凹が残るものの、20回〜22回あたりにピークがあるのはわかるだろう。

同じ誕生日の組み合わせが何人目で出現するか(10,000回テスト)

 
結果を表にして累積%を見れば、23回で50%を突破。確率計算で求めた結果と見事一致した。ちなみに、同じ誕生日の組み合わせがもっとも出現しなかったときでも、「89人目」で条件をクリアした。

同じ誕生日の組み合わせが何人目で出現するか(10,000回テスト)

 


モンテカルロ法のススメ


今回の「誕生日のパラドックス」の例でもわかるように、モンテカルロ法を使うと確率の計算結果が「見える化」できる。「だからどうした?」と言えばその通りなのだが、直感に合わない確率を納得するためになかなか有効なアプローチではないだろうか。この方法は万人向けではないものの、自分でやってみなければ納得いかない人にはぴったりだ。好事家に限ったこととなるかも知れないが、モンテカルロ法を使っていろいろ試すことをオススメしたい。

  1. コメントはまだありません。

  1. トラックバックはまだありません。

This blog is kept spam free by WP-SpamFree.