Blog JIKOMAN blog

モンティー・ホール問題

モンティー・ホール問題なるものをご存じでしょうか。

モンティ・ホール英語版)(Monty Hall, 本名:Monte Halperin)が司会者を務めるアメリカのゲームショー番組、「Let’s make a deal英語版[1]」の中で行われたゲームに関する論争に由来する。一種の心理トリックになっており、確率論から導かれる結果を説明されても、なお納得しない者が少なくないことから、ジレンマあるいはパラドックスとも称される。「直感で正しいと思える解答と、論理的に正しい解答が異なる問題」の適例とされる。

wikipediaより抜粋

ゲーム内容をサラッと説明すると、

1.プレイヤーは、当たりが一つだけランダムに入ってる3つの扉から一つ選びます。

2.司会者は残りの扉から外れのものを一つ開けプレヤーに教えます。(例えば当たりが1に入っていてプレイヤーが3を選んだなら司会者はもう一つの外れの扉、つまり2を開けます。)

3.プレイヤーはその後、最初に選択した扉を変えるかそのまま、のどっちかを選びます

4.けっかはっぴょーーーーー。

と、まぁこんな感じでゲームショーは進んでいくらしいです。

んで、本題はここから。

最初に選択した扉を変えたら当たる確率が2倍上がるらしい。

実際、ピンときません。

ぱっと考えれば、「最初当たる確率は3分の1なのはわかるとして、当たりが入ってる扉は変わってないんだから変化ねーべ。」ってなります。もうちょっと考えると、司会者が外れの扉を開いたら、外れの扉と当たりの扉で2分の1だろ!ってなります。自分はなりました

知ったきっかけ

むかーし、「今でしょ(ドヤァ)」でおなじみの林先生の番組でモンティーホールを扱っていて、その中でマリリン・ボス・サバント というIQが世界一高い女性が自身のコラムで読者に上記のようなことを答えたと紹介していました。そして頭のいい人たちの間でそれはすごい論争が起こったそうな。 最後にプログラムを書いてみて100万回試してみた結果,マリリンは正しかったと林先生が付け加えていました。

当時は「へぇ。プログラミングすごい」としか思いませんでしたし、自分がそんなこと習う将来なんて全く頭になかった。

それがどうでしょう。今じゃコンピューターサイエンス専攻してプログラミング習っているんですよ。

んで、

今回、c++という言語をつかい、 

このゲームの流れを100万回繰り返して、「最初の選択を変えた場合」と「変えなかった場合」の当たった数の合計、また確率をだすプログラムを書きました

やってみると、想像してた2.5倍時間かかったけど、ウンコードだけど、

ちゃんと動きました。

結果から言うと

上が変えなかった場合の、当たった回数の合計と確率
下が同様に当たった数の合計と確率。

なんと、本当に二倍ではありませんか。

ちなみに1億回繰り返すと小数第2位まで確定します。回数が増えれば数が正確になるのは当たり前だけど、やっぱりちゃんとこうやって過程と結果を見ると、「はぇ~」って感心します。

こんな感じで夏休みはバイト以外することなくて、忘れないために、そして自己満のためにこんなことをして過ごしてます。

なのでオチもくそもありません。

だって自己満ブログですから。

ps.

えぇ?なんでそうなるのと気持ちが悪い人達用に解説します。

林先生の番組ではドアを3つから100万に増やして解説していたけど、なんか意味わからなかったから、自分がわかりやすかったものをシェアします。

まず、扉を変更しなければ確率は3分の1ですが、

ゲームの性質上、扉を変更したときにあたりを引くためには、最初に選択した扉がハズレである必要がある。(ハズレの扉を最初に選んだら、司会者はもう一つの残りのハズレの扉を選ばなければいけない。結果残りの3つ目の扉にはあたりが待てるわけです。)

よって、外れを引く確率を計算すればオッケーってことです。

3つの扉のうちハズレは2つなので3分の2です。

おぉ。3分の1の2倍は3分の2なのでそういうことです。

扉を変えると確率が2倍になります!

voilà!!!!!

again, 自己満ブログなのでこれでも意味わからなかったら自分で調べてください。