【回答編】はてな民に確率の問題を出してみよう

この記事は「はてな民に確率の問題を出してみよう」の回答編です。
まずは、そちらをご覧ください。

思ったよりも多くの方が答えていたので、少しビビりぎみですが頑張って回答編を書きますね。

問1の解答

この問題はモンティホール問題」と呼ばれ、非常に有名な問題です。
マリリン・ボス・サヴァントというIQが228(!!)の女性が解いた事で知られています。


彼女の解答からすれば、


司会者が自動車のドアがどれかを知っているならば、彼はドアを変更するべき。
自動車が当たる確率は、変更した場合が2/3、変更しなかった場合が1/3


となります。
これを同僚に話したところ


「おまえ俺を騙そうとしてんだろ、どっちも同じ確率だよ」


と信じれくれません、どんだけ信用ないんだろうな自分、ちょっと悲しくなりました。
そこで私の補足説明を


「扉を選びなおして「外れ」となるパターンは、1/3の確率で最初に選んだ扉が「自動車の扉」のときだけ。
逆に2/3の確率で最初に「外れの扉」を選んだ場合は、選びなおすと必ず当たるんだよ」


と、ビシィィと解りやすい説明を言ったつもりなんですが、納得しない様子。
どんだけ信用が(ry


なので「ネコでもわかるモンティホールジレンマ」を見せました(手抜き)
文章で説明するより、何倍もわかりやすくFlashで解説してくれるので、彼もしぶしぶ納得したようです。


↓非常にわかりやすい解説ページ
ネコでもわかるモンティホールジレンマ


問1の答:
自動車が当たる確率は、扉を変えた場合は2/3、変えなかった場合は1/3。
扉を変えた方が当たる確率が2倍に跳ね上がるので、扉を変えるBが正解。

問2の解答

まず結論から言いますと、答えは「C:両方とも同じ確率で、どちらも1/2」です。
これを同僚に言ったところ、


「司会者だろうが地震だろうが、起きた現象は同じだろうがぁぁぁ!!
意思があるかないかで、確率が変わっちゃうの?!
なにそれ??オカルトなの?」


ついにキレた、こえぇ!!
でも実際の話、彼の疑問はその通りですよね。
「問1と問2の違いは何なのか?起きた現象は全く同じじゃないか!」ってね。


実は、この2つの問題は似て非なるもので別物です。
彼が言ったように「意思があるかないかで、確率が変わるの?」という事が実際に起こっています。
(厳密に言えば確率が変わるのではなく、全く別問題に摩り替っており確率を比べる事が無意味)


問1は「全てを知る司会者による必然的な数字のトリック問題」であるのに対し、問2の場合は「まったくの偶然による条件付確率問題」にすり替わります。

条件付き確率ってなんだ?

「条件付き確率」とは、一昔前に2chで流行ったコピペが判りやすいです。

昔の某大学の入試問題で

ジョーカーを除いたトランプ52枚の中から1枚のカードを抜き出し、
表を見ないで箱の中にしまった。
そして、残りのカードをよく切ってから3枚抜き出したところ、
3枚ともダイヤであった。

このとき、箱の中のカードがダイヤである確率はいくらか。


答えが1/4ってのは納得出来ない!
10/49だろ!!


これは「条件付き確率」の問題であり、答えは10/49が正解となります。
情報が増える事により、既に引いてあるカードの確率も変わってしまうのです。
問題を以下のように変えると、最初に引いた1/4の確率のカードが0%に変化するのが判ると思います。

ジョーカーを除いたトランプ52枚の中から1枚のカードを抜き出し、
表を見ないで箱の中にしまった。
そして、残りのカードをよく切ってから13枚抜き出したところ、
13枚ともダイヤであった。

このとき、箱の中のカードがダイヤである確率はいくらか。

問2に話を戻します

ハズレの扉が司会者か地震かによって開かれた場合、最初にプレイヤーが選んだ扉の確率を考えてみましょう。


問1の場合、司会者の必然的支配下で扉が選択されたので、最初の扉が当たる確率は1/3のままです。
問2の場合、地震により偶然に空いてしまった場合はトランプの問題と同じく、最初の扉が当たる確率は1/3から1/2に変化します。
最初に選んだ扉の確率が1/2ですので、もう一方の扉も当然1/2の確率ですよね。
よって、両方の扉のは同じ1/2の確率となります。
(ゲームが無効になる確率を考えている人もいましたが、問題は「ゲームが無効にならなかった状況下」での確率です)


いくら説明しても半信半疑だと思いますので、実際にプログラムを組んで実験してみましょう。
これならば純然とした事実として受け入れられるかもしれません。
以下、地震によるモンティホール問題を100万回試行するプログラムをPythonで組んでみました。

#coding:utf-8
import random

N = 100000  #総試行回数

#count ... 試行回数カウント
#a     ... 選択しなおした場合の成功回数
#b     ... 選択しなおさなかった場合の成功回数
count = a = b = 0

while N > count:
    doors = [False]*3

    #3つの扉の内、ランダムで1つ当たりのドアを仕込む
    doors[random.randint(0,2)] = True
    #プレイヤーがランダムに1つ扉を選ぶ
    pchoice = random.randint(0,2)
    #地震がランダムに1つ扉を選ぶ
    qchoice = random.randint(0,2)

    #地震が選んだ扉が自動車、またはプレイヤーと同じ扉なら無効
    if doors[qchoice] or pchoice == qchoice:
        continue

    count += 1
    if doors[pchoice]:
        a += 1  #扉を選びなおさずに当たった場合
    else:
        b += 1  #扉を選びなおして当たった場合

#結果表示
print "a:",float(a)/float(count)*100.,"%"
print "b:",float(b)/float(count)*100.,"%"

実行結果は以下の通りです。
何回かやっても約50%に収束すると思います。

#1回目
a: 50.179 %
b: 49.821 %
#2回目
a: 49.91 %
b: 50.09 %
#3回目
a: 49.907 %
b: 50.093 %
#4回目
a: 49.86 %
b: 50.14 %
#5回目
a: 50.262 %
b: 49.738 %

これを見た同僚は、メタパニでも喰らったかのようでした、


「でも同じシチュエーションなら、間違いなく扉を選びなおすし・・・
でも、この結果は何が影響を与えている?あれ?もしや神?!
えーと、おれがおまえで、おまえがおれで・・・」


ははは、ジャイアンかお前は。
有名なモンティホール問題も、こうして見ると別の問題が出てきて、非常に奥が深い問題ですね。
1990年当時、数ある数学者がこの問題に騙されてたのも、こういう要因があった事も大きかったと思います。

はてな民の反応は・・・?

いや、本当に回答が来てよかった・・・
これで回答が来なかったら「我はメシア、明日世界を粛清する」というエントリーをあげるところでした。


はてブを見ると正解の人が多いですね、やっぱ、はてな民はリテラシたけぇ!!
はてブにも挙がっていますが、これはベイズの定理」を用いる事によって簡単に解くことができます。
でも、今回は「ベイズの定理」は取り上げません。
なぜかって?次のブログネタが「ベイズの定理」だから・・・、それではまたの機会に!!


P.S
数学説明で間違っている部分があったらご指摘ください。
たぶん、あっているはず・・・だと思いたい・・・


おまけ:モンティホール問題の補講 - Pashango’s Blog