平成27年10月25日
[流れ星]
第326回数学的な応募解答
<解答募集期間:9月27日〜10月25日>
[モンティ・ホール問題]
先日「にいばりZ12」さんから投稿された「モンティ・ホール問題」です。
3つのドアがあって2つが山羊1つが新車(ディーラーの方からはすべて見えています。且つプレーヤーは山羊より新車をほしがっています)が入っています。
次の順序でゲームを進めます
プレーヤーは3つのドアのどれかを選びその中にある賞品を得られます。
@プレーヤーが先ずドアの1つを選びます。
Aプレーヤーが選んだドア以外の2つのドアからディーラーが山羊を開きます。
(新車は1つしかないので、プレーヤーが山羊を選んだ時(プレーヤーは知っている)残りの新車と山羊の内山羊の方を開きます。またプレーヤーが新車を選んだ時残りの山羊2の内どちらかの山羊のドアを開きます。)
Bディーラーは、プレーヤーに対し@で選んだドアを変えるかどうかの選択権を与えます。
問題は、変えた方がいいか否かというものです。
<水の流れ:この答えは皆さんで考えてください。では、一般化した問題を作成しました。>
n個のドアがあって、ドアーの奥には新車がa台、山羊(ディーラーの方からはすべて見えています。且つプレーヤーは山羊より新車をほしがっています)がb匹置いてあります。ただし、a+b=n、nは3以上、bは2以上とする。
次の順序でゲームを進めます
プレーヤーはn個のドアのどれかを選びその中にある賞品を得られます。
選択肢1:プレーヤーが先ずドアの1つを選びます。
選択肢2:プレーヤーが選んだドア以外の(n−1)個のドアからディーラーが山羊を開きます。
で、ディーラーは、プレーヤーに対し選択肢1で選んだドアを変えるかどうかの選択権を与えます。
問題は、変えた方がいいか否かというものです。
具体的には、選択肢1または選択肢2のとき、それぞれ新車を得る確率をa、bで表し、大小を比較してくだだい。
追加問題
両面とも表の硬貨1枚と両面とも裏の硬貨1枚と普通の表と裏の硬貨1枚、計3枚の硬貨が袋に入っている。その中から硬貨を1枚無作為に取り出し投げたところ、表が出た。その硬貨の反対側の面が表である確率を求めよ。
NO1「uchinyan」
09/27 13時35分 受信 更新 10/25
最初に,新車を選ぶ確率は a/(a + b),山羊を選ぶ確率は
b/(a + b),です。
次に,変えた場合に新車を選ぶ確率は,
最初に新車を選んだとき,a/(a + b) * (a - 1)/(a + b - 2) = a(a -
1)/(a + b)(a + b - 2),
最初に山羊を選んだとき,b/(a + b) * a/(a + b - 2) = ab/(a + b)(a +
b - 2),
そこで,この場合の確率は,a(a + b - 1)/(a + b)(a + b - 2),です。
これより,
変えた場合の確率 - 変えない場合の確率
= a(a + b - 1)/(a + b)(a + b - 2) - a/(a + b)
= a/(a + b)(a + b - 2) > 0
そこで,変えた方がよい,となります。
ちなみに,モンティ・ホール問題の場合は,a = 1,b = 2,より,1/3 と 2/3 で,
確率が2倍に跳ね上がりますね。
追加問題
最終的に表が出たということは,
表表 の硬貨のどちらかの表か,表裏 の硬貨の表が出たことになります。
これは 3 通りで,このうち表の反対側が表なのは 2 通りなので,
確率は 2/3 です。
もう少し形式的にやると,
表が出る確率 = 1/3 * 1 + 1/3 * 0 + 1/3 * 1/2 = 1/2,
このうち,表の反対側が表なのは,1/3 * 1 = 1/3,なので,
表が出た場合に反対側が表となる条件付き確率 = (1/3)/(1/2) = 2/3,
これが求めるものです。
(感想)
モンティ・ホール問題はそれなりに有名な問題です。
確か少し前の小中学生の全国学力テストに類題が出題されたということで話題になったと思います。
もっとも,私自身がこの問題を知ったのは40歳を過ぎてからです。
直感的に考えて,最初は 1/3,その後はチャラにしても 1/2
で大きいので,当然有利だろう,
でもわざわざ問題にするくらいだから何か引っかけがあって同じになったりする?,
と思ったものです。解説を読んで予想どうりだったものの2倍になるとは思いませんでした。
その後,いろいろな人の意見を聞いて混乱したりもしましたが,結局は上記のような議論でいいと思います。
追加問題は条件付き確率ですね。ベイズの定理の応用といってもいいでしょう。
今は算数では確率はないと思いますが,「確からしさ」とか言っていたころに,
類題を算数として解いたような気がします。
NO2「早起きのおじさん」 09/27 21時31分 受信 更新 10/25
<感想:この問題は自分自身も何回か考えたことがあります。最初は不思議な気がしました。
一番単純な場合、ドアを変えれば、確率が2倍になるなんて・・・という感じです。
1回目に当たる確率は1/3、1回目に外れる確率は2/3。
しかし、外れているときに、ドアを変えれば必ず当たるのです。>
●モンティ・ホール問題
プレーヤーが1回目に新車を得る確率をp1とします。
プレーヤーがドアを変えたとき新車を得る確率をp2とします。
は明らかです。
p2について調べます。
・1回目に新車を当てている場合、新車も山羊も1ずつ減るので、
新車はa−1、山羊はb−1
・1回目に山羊を当てている場合、新車は減らずに山羊が2減るので、
新車はa、山羊はb−2
ここで、p2/p1を調べます。
さて、p2/p1の表をつくってみます。
式の成り立ちから当然ですが、ドアを変える方が新車の当たる確率が大きくなります。
●追加問題
両面が表というのはちょっと変な感じがします。
両面とも表面の図案になっているとすべきと思います。
それはともかく解答します。
3枚のコインを次のように表します。
表をH、裏をTとします。
両面とも同じ場合に、区別する意味で1, 2を添え字にします。
(H1,H2)、(T1,T2)、(H,T)
1枚目に表が出た場合その裏を書き出すと、
・H1 → H2
・H2 → H1
・H → T
の3つの場合があります。
だから、1枚目に表が出てその反対側が表である確率は、2/3になります。
NO3「浜田明巳」
10/01 18時14分 受信 更新 10/25
一般化した問題を解く.
プレーヤーが最初に新車のドアを選ぶ確率は,a/n.
ディーラーが山羊のドアを開けた後,プレーヤーが新車のドアを選ぶ確率は,a/(n−1).
a/n<a/(n−1)であるから,他のドアの方が新車である確率は高い.
変更すべきである.
エクセルのマクロを使い,乱数で実験してみた.
山羊の方が極端に多い場合,変更しない方がいい場合もあるが,概ね変更した方がよいと出た.
Option Explicit
Const shikoukaisuu As Long = 5000 '試行回数
Const shinsha_max As Integer = 10 '新車の数の最大値
Const yagi_max As Integer = 20 '山羊の数の最大値
Sub Macro1()
Randomize Timer
Dim kaisuu As Long
Dim shinsha As Integer, yagi As Integer
Dim a(shinsha_max + yagi_max) As Integer
Dim b As Integer, c As Integer, d As Integer
Dim p(shinsha_max + yagi_max) As Double
Dim q(shinsha_max + yagi_max) As Integer
Dim deta As Integer
Dim gyou As Integer
Dim j As Integer, jj As Integer
Call del(1)
For shinsha = 1 To shinsha_max
For yagi = 2 To yagi_max
gyou = ((yagi_max - 1) * (shinsha - 1) +
(yagi - 1)) * 4 - 3
Cells(gyou, 1).Value = "新車" & strr(shinsha) & "台"
Cells(gyou, 2).Value = "山羊" & strr(yagi) & "匹"
Range("A" &
strr(gyou)).Select
For j = 1 To 3
Cells(gyou + j - 1, 3).Value =
0
Cells(gyou + j - 1, 4).Value =
0
Cells(gyou + j - 1, 5).Value =
"=C" & strr(gyou + j - 1) & "/D" & strr(gyou +
j - 1)
Select Case j
Case 1 :
Cells(gyou, 6).Value = "変更して良かった"
Case 2 :
Cells(gyou + 1, 6).Value = "変更しても同じ"
Case Else :
Cells(gyou + 2, 6).Value = "変更して悪かった"
End Select
Next j
For kaisuu = 1 To shikoukaisuu
For j = 1 To shinsha + yagi :
a(j) = 0 : Next j
For j = 1 To shinsha + yagi :
p(j) = Rnd() : q(j) = j : Next j
For j = 1 To shinsha + yagi -
1
For jj = j + 1 To
shinsha + yagi
If
p(j) < p(jj) Then
p(0) = p(j) : p(j) = p(jj) : p(jj) = p(0)
q(0) = q(j) : q(j) = q(jj) : q(jj) = q(0)
End If
Next jj
Next j
For j = 1 To shinsha : a(q(j))
= 1 : Next j '新車のドア
b = Int(Rnd() * (shinsha +
yagi)) + 1 'プレーヤーが最初に選んだドア
deta = 0
While deta = 0
c = Int(Rnd() *
(shinsha + yagi)) + 1 'ディーラーが選んだドア
If b <> c
And a(c) = 0 Then
deta =
1
End If
Wend
deta = 0
While deta = 0
d = Int(Rnd() *
(shinsha + yagi)) + 1 '変更先のドア
If b <> d
And c <> d Then
deta =
1
End If
Wend
For j = gyou To gyou + 2
Cells(j, 4).Value
= Cells(j, 4).Value + 1
Next j
If a(b) = 0 And a(d) = 1 Then
Cells(gyou, 3).Value
= Cells(gyou, 3).Value + 1
ElseIf a(b) = a(d) Then
Cells(gyou + 1,
3).Value = Cells(gyou + 1, 3).Value + 1
Else
Cells(gyou + 2,
3).Value = Cells(gyou + 2, 3).Value + 1
End If
Next kaisuu
If Cells(gyou, 5).Value > Cells(gyou +
2, 5).Value Then
Cells(gyou, 7).Value = "○"
ElseIf Cells(gyou, 5).Value <
Cells(gyou + 2, 5).Value Then
Cells(gyou + 2, 7).Value =
"○"
End If
Next yagi
Next shinsha
End Sub
Private Function strr(ByVal n As Integer) As String
strr = Right(Str(n), Len(Str(n)) - 1)
End Function
Sub del(ByVal x As Integer)
Columns("G:G").Select
Range("G140").Activate
Selection.ClearContents
End Sub
追加問題について
両面とも表の硬貨の表を0,裏を1,両面とも裏の硬貨の表を2,裏を3,普通の硬貨の表を4,裏を5とする.
投げて出たものをaで表す.
a=0,1,2,3,4,5となるのは,同程度に確かである.
表が出たとき,a=0,1,4となり,このとき,a=0,1である確率を求めればよい.
求める確率は,2/3である.
NO4「二度漬け白菜」 10/18 15時13分 受信
更新 10/25
オリジナルのモンティ・ホール問題と
一般化されたモンティ・ホール問題の両方とも,
プレーヤーはドアを選びなおすほうが賢明である.(答)
一般化されたモンティ・ホール問題において,a=1, b=2 とすれば
オリジナルのモンティ・ホール問題になるので,以下では
一般化されたモンティ・ホール問題について考えます.
一般化されたモンティ・ホール問題については
以下のように考えて答えを得ました.
2つの事象A,Bに対して,
事象Aが起こったという条件のもとで事象Bの起こる確率を P(B|A) と書く.
プレーヤーの一回目の選択が車であるという事象と山羊であるという事象
をそれぞれ Fc,Fg とする.
また,プレーヤーがドアを選びなおす場合,その二回目の選択が車である
という事象と山羊であるという事象をそれぞれ Sc,Sg とする.
2つの確率 P(Fc) と P(Sc) の大小を比較してみる.
P(Fc)=a/n.
P(Sc)
=P(Sc∩(Fc∪Fg))
=P((Sc∩Fc)∪(Sc∩Fg))
=P(Sc∩Fc) + P(Sc∩Fg)
=P(Fc)*P(Sc|Fc) + P(Fg)*P(Sc|Fg)
=(a/n)*((a-1)/(n-2)) + (b/n)*(a/(n-2))
=(a/n)*(n-1)/(n-2)
=((n-1)/(n-2))*P(Fc).
(n-1)/(n-2)>1 であるので,P(Sc)>P(Fc).
よって,プレーヤーはドアを選びなおすほうがいい.
追加問題:
硬貨の反対側の面が表である確率は 2/3. (答)
両面が表の硬貨を C1,
両面が裏の硬貨を C2,
普通の表と裏の硬貨を C3 とする.
事象A1,A2,A3,Bを次のように定義する.
Ai:これら3枚の硬貨の中から,Ciを取り出すという事象 (i=1,2,3)
B:取り出した硬貨を投げたとき,表が出るという事象
求めたい確率は P(A1|B).
ベイズの定理より,
P(A1|B)=P(A1)*P(B|A1)/P(B).
ここで,
P(A1)=1/3,P(B|A1)=1.
さらに,
P(B)
=P(B∩(A1∪A2∪A3)
=P(B∩A1)+P(B∩A2)+P(B∩A3)
=P(A1)*P(B|A1)+P(A2)*P(B|A2)+P(A3)*P(B|A3)
=(1/3)*(1) + (1/3)*(0) + (1/3)*(1/2)
=1/2.
よって,P(A1|B)=(1/3)*(1)/(1/2)=2/3.
---------------------------------------------------
モンティ・ホール問題には様々なアレンジがあるようですね.
例えば,ピーター・ボーマンという哲学者が2005年に発表した
論文の中には,挑戦者が2人存在するモンティ・ホール問題
が取り上げられているそうです.
次のような問題です.
(問題)
3枚の同一の扉があり,1枚には車,2枚には山羊が隠れている.
挑戦者は2人で,それぞれが最初に扉を選ぶ.
それぞれの挑戦者は別に挑戦者がいることは知っているが,
相手がどの扉を選んだかはどちらも知らない.
モンティは挑戦者それぞれが選んだ扉を知っていて,また車の
ありかも知って いる.そこでモンティは次の手順に従って扉を
1枚開く.
どちらの挑戦者も同じ扉を選んでいたら,モンティは残った2枚
の扉から車がある扉を開けないようにして1枚を開ける.選択の
余地がある場合にはランダムに選んで開く.2人の挑戦者が異な
る扉を選んでいたら,残った扉に何があろうとそれを開く.
モンティが開けた扉に車があれば,両方の挑戦者の当たりとする.
あなたはこのゲームの一方の挑戦者だとして,最初に扉を選んだ
後,モンティが山羊の扉を開けるのを見た.もう1人の挑戦者は
扉をランダムに選ぶものとする.選択の機会を与えられたら変え
たほうがいいか?
皆さん、問題や質問に答えてください。一部でも構いませんから、解答とペンネームを添えて、メールで送ってください。待っています。