« テスト駆動開発はユニット・テストを駄目にする? | トップページ | JDK API リファレンスのEclipseヘルプ化 »

2008年2月16日 (土)

モンティ・ホール問題

モンティ・ホール問題(Monty Hall problem)というのは、確率の読み物では、必ずといっていいほど、取り上げられる問題のようですね。

この問題は「Let's Make a Deal」(1960年代〜1970年代に人気を博した)というクイズ番組で、よくあった場面として紹介されているが、今日のクイズ番組でもまだ見られる状況である。「Let's Make a Deal」の司会者はモンティ・ホールで、問題の名前の由来となっている。

クイズ番組の筋書きとして、問題は次のように進行する。まず、モンティが解答者に3つのカーテンを見せる。モンティはそれぞれのカーテンの後ろに何があるかを知っていて、そのうちの1つに新車(当たりの商品)が隠されていることを説明する。残り2つのカーテンは 無価値の商品 (モンティは zonks と呼ぶ)である。ロバや巨大なロッキングチェアのようなものや、まったく役に立たないようなものがZonkとして用意されている。モンティは解答者にカーテンから1つを選ばせ、解答者はカーテンに隠されたものを獲得する。仮に、カーテンAを選んだとすると、モンティは選ばれなかったカーテン(例:カーテンB)を開けて、それがZonkだったことを示す。ここでモンティは、出場者が最初に選んだカーテンAを、最後に残ったカーテンCに変更してもよいと言うが、変更すべきだろうか?

Bruce Frey 著, 西沢 直木 訳, 『Statistics Hacks』, オライリー・ジャパン, p.152

最初に選択したものを変更しない場合、当たりを得る確率が 1/3(約33%) となり、変更した場合には、 2/3(約67%) となります。つまり、”変更すべきである”というのが答えとなります。直観的には納得し難い答えですよね。実際、この問題がとりあげられた当時、哲学者・数学者によって、相当数の反論があったとか。

私もどうも不思議の感が捨てきれないので、実際に試してみることにしました。以下のRubyプログラムは、このゲームを10万回実行して、最初に選択したものを変更しない場合の当たり数、および変更した場合の当たり数を出力します。

# monty_hall.rb
first_count = 0 second_count = 0 doors = [0, 1, 2] (1 .. 100000).each do |i|
  hit = rand(3)
  first_sel = rand(3)
  other_doors = doors - [first_sel]
  door_open = other_doors - [hit]
  door_open.delete_at(rand(2)) if door_open.size > 1
  second_sel = (other_doors - door_open)[0]

  first_count += 1 if first_sel == hit
  second_count += 1 if second_sel == hit
end puts "#{first_count}:#{second_count}"

以下が実行結果です。

>ruby monty_hall.rb
33365:66635

実際に試してみても、ちゃんと 33% と 67% になりますね。でもやっぱり不思議。

・・・

Statistics Hacks ―統計の基本と世界を測るテクニック Book Statistics Hacks ―統計の基本と世界を測るテクニック

著者:Bruce Frey
販売元:オライリー・ジャパン
Amazon.co.jpで詳細を確認する


 

|

« テスト駆動開発はユニット・テストを駄目にする? | トップページ | JDK API リファレンスのEclipseヘルプ化 »

コメント

不思議ですかね? 変更をするを選ぶ場合、選択が正解だった場合は不正解に、選択が不正解だった場合は正解になります. つまり、誤答率が正答率に摩り替わるわけです.

投稿: しーやん | 2008年2月16日 (土) 08時18分

しーやん さん、コメントありがとうございます。

差し引きで考えれば、そうなるのはわかるんですけどね。最初の選択が正解の確率が 1/3 のままで動かないのは明らかで、差し引けば残りが 2/3 になるのも明らかということで。

たぶん、”不思議”のポイントは、初めから2つの選択肢がある場合との違いでしょうか。モンティが正解を知っていることによって、期待値が解答者にとって、イーブンより有利になる理由ですね。Wikipedia には、この点について色々説明が載っているのですが、自分のなかでうまく消化しきれない感じです。

投稿: ron | 2008年2月16日 (土) 15時06分

 モンティ・ホール問題とは、結局のところ“フレーミング効果”の問題ではないでしょうか?
 つまり、「最初に『これが“当たりだ”』と思うドアを選んでから、さらに決断を変えるかどうか」と考えた時点で罠にはまっているわけで、「最初に選んだドアを変えるかどうか」という、戦術論の問題と考えればいいわけです。
 “変えない”戦術を選んだ場合、最初に“当たり”を選べば100%勝ち。“変える”戦術を選んだ場合、最初に“外れ”を選べば100%勝ち。
 したがって、“変えない”戦術を選んだ場合の当たり確率は三分の一、“変える”戦術を選んだ場合の当たり確率は三分の二。

 一度「これが“当たり”だ!」と思っちゃうと、選択を変えることに抵抗があって、それがバイアスになっているのだと思います。“説明”が難しいのは、そのバイアスを除去するのが難しいから、ということであると。
 その意味で、「一度選んだもの(=素直に受け取ると、“当たり”だと思ったもの)を変える」という説明は「結果としては正しいけれど、説明としては×」であり、「先に“外れ”を選んでおいて変える」という説明がマルだと思います。

投稿: Mr.Moto | 2008年11月17日 (月) 22時33分

Mr.Moto さん、コメントありがとうございます。

“フレーミング効果”というのは初めて知りました。勉強になります。

>「先に“外れ”を選んでおいて変える」

上の しーやん さんのおっしゃる、「誤答率が正答率に摩り替わる」に近いですね。これはこれでうまい説明だと思っていますhappy01

思うに、「当たりだと思うバイアス」というよりは、選択肢が3つから2つに”変わった”と”錯覚”する、という感じです。この問題で想定されている、典型的な誤答は、二分の一 のはずですから。条件付確率の”錯覚”に近いように思っています。

投稿: ron | 2008年11月20日 (木) 00時14分

 「フレーミング効果」については友野典男『行動経済学 ― 経済は「感情」で動いている』光文社新書によくまとまった解説がありますが、心理学のほうでは「同じ絵が老婆の横顔にも若い女性が向こうを向いた姿にも見える」という例が有名だと思います。

 モンティ・ホール問題に関していうと、“単にプライドの問題”という解釈もできます。
 「選択を(残された、自分が選ばなかったただ一個のドアに)変える」というのは、じつは「最初の選択が外れているほうに賭ける」と同義なわけです。ですから、三枚のうちの一枚のドアを選んだ時点で、第三者に「こいつが選んだドアが当たっている方に賭けるか? それとも外れに賭けるか?」と質問すれば、「外れに賭ける」というのが当然の選択になります。
 あとは、「間違ったドアを選んだ間抜け」になるリスクと「せっかく当たりのドアを選んだのに、別のドアを選んだ間抜け」になるリスクのせめぎ合いっつー事になるわけですが (^_^!)、後者のリスクのほうが倍以上高く評価され、逆に「確率の低い選択をした間抜け」となるリスクっていうのは実感しにくいせいか高く評価されないのかも知れません。

 こう考えると、「TVのクイズ番組」という前提と、「想定される視聴者像」(こういうのを「参照グループ」と呼ぶと『行動経済学 ―』の p.290 にあります)が、強いバイアスを生んでいるのかも知れません。
 『「選択は正しかったが、結果は外れだった」というのを、番組を見ていた人の大多数は納得してくれないだろう(同時に、納得させることも相当に困難だろう)』と思ったら、「結果はどうあれ、“正しそうだ”と判断されそうな選択肢を選ぶ」というのはありそうな気がします。

 ただ、そうなると政治家が政策を選ぶときにも「実効性は薄いけれど、得票に結びつきやすい政策を選ぶ」とかいうことになりそうだし……バイアスの原因や、それを解消する方法についても、考えたいところではあります。

投稿: Mr.Moto | 2008年11月20日 (木) 21時11分

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/80472/10536505

この記事へのトラックバック一覧です: モンティ・ホール問題:

« テスト駆動開発はユニット・テストを駄目にする? | トップページ | JDK API リファレンスのEclipseヘルプ化 »