タマニチェンコさんのブログ

最新一覧へ

« 前へ147件目 / 全240件次へ »

モンティ・ホール問題

数学の本を読んでいたら、モンティ・ホール問題というものが紹介されていました。
ちょっと、直感的にわかりにくかったので、プログラムを書いて実験して見ました。


win = 0
100000.times{
a = Array.new(3) # 2 box
ra = Array.new # for Second Game
b = (rand 3)
a[b] = "car" # BINGO!
choice = 0
if a[choice] == "car" # BINGO!
ra << a[0]
x = rand(2) # Randum open
ra << a[1 + x]
else
ra << a[0]
ra << a[b]
end
choice = 0 # Change the choice
# choice = 1 # Same
# choice = rand(2) # Randum choice
win += 1 if ra[choice]
}
puts (win * 1.0) / 10000


Rubyのプログラムです。これを実行すると、約0.66という結果が出ます。まさに2/3でした。

驚愕の結果です。

ですが、よくよく考えて見ると、実は、確率の問題ではなく論理思考の問題なんだと思いました。
この問題、よく考えて見ると、最初に正解を選んでいた場合、必ず失敗し、最初に不正解を選んだ場合は、必ず成功します。ということは、最初に不正解選ぶ可能性が、正解を選ぶ可能性にすり変わる…というのが、タネあかしのようです。
つまり、最初にハズレ(ヤギ)を選んだ場合、ホストは[ヤギ、車]と残っているうちのヤギを必ずあけてしまうので、残りは必ず車になります。
逆に、最初に正解を選ぶと、[ヤギ、ヤギ]なので必ずヤギが残ります。
最初に選んだ選択肢を必ず変更することによって、「最初にヤギを選べば絶対に勝てる」という風にゲームのルールが変わってしまいました。最初にヤギを選ぶ可能性は2/3なので、66%の確率で勝てると言うわけです。


余談ですが、プログラムのコメントしている部分ですが、「変更しない」ケースは、33%、ランダムに変更するケースでは50%の勝率となりました。
  • 関連銘柄:

    ---
  • 通貨ペア:

  • 経済指標:

  • コモディティ:

  • CFD:

  • タグ:

    ---
登録日時:2008/05/19(20:49)

 通報する

コメントを書く

コメントを投稿するには、ログイン(無料会員登録)が必要です。