[关闭]
@Jnxixixi 2018-12-30T17:41:28.000000Z 字数 2427 阅读 693

Monty Hall问题的理论解释及验证

1 蒙提霍尔问题的由来

蒙特霍尔问题亦称为三门问题(英文:Monty Hall problem),是一个源自博弈论的数学游戏问题,大致出自美国的电视游戏节目Let's Make a Deal。问题的名字来自该节目的主持人蒙蒂·霍尔。

这个游戏的玩法是:参赛者会看见三扇关闭了的门,其中一扇的后面有一辆汽车或者是奖品,选中后面有车的那扇门就可以赢得该汽车或奖品,而另外两扇门后面则各藏有一只山羊。当参赛者选定了一扇门,但未去开启它的时候,知道门后情形的节目主持人会开启剩下两扇门的其中一扇,露出其中一只山羊。主持人其后会问参赛者要不要换另一扇仍然关上的门。问题是:换另一扇门会否增加参赛者赢得汽车的机会率?如果严格按照上述的条件的话,答案是会。—换门的话,赢得汽车的机率是2/3。

这条问题亦被叫做蒙提霍尔悖论:虽然该问题的答案在逻辑上并不自相矛盾,但十分违反直觉。这问题曾引起一阵热烈的讨论。

2 思考,推导与程序实现}

2.1 起因

有幸在第十六周的课上作为志愿者参与到了著名的“三门问题”的讨论中来,在讲台上略经思考,我便匆匆做出了如下判断,并自以为正确,“主持人开关门这一动作并不影响会影响最终选择,反正都是在两扇门里选一个,既然主持人这么好心,排除了一只羊, 那么选择到羊和车的概率就肯定是1/2没错了。”殊不知此时的我再一次在讲台上“想当然耳”,认真地说出了错误答案,实在是羞愧。下课后我拿起纸笔,参照基本的贝叶斯公式,在纸上认真的推导了一下整个计算过程。最终得出了正确的答案,“当然要换”,如果参赛者相比于羊,更倾向于开走一辆免费的汽车。

2.2 数学推导过程

贝叶斯公式如下:


由于本实验含有三个事件,故三事件(暂用A,B,C表示)贝叶斯公式如下:

定义符号:
:车在号门后
:参赛者选择了第号门
:主持人打开第i号门\现在假定,参赛者选择一号门。在这一条件下,主持人在车辆分别位于1,2,3号门时打开3号门的概率如以下三式所示:



易知,若参赛者不改变原来的选择,则获得汽车概率为(已假定参赛者选择一号门),现在主持人打开3号门,门内是山羊,此时车在2号门内的概率与参赛者更改选择获得汽车的概率等同,即“车在2号门内”与“参赛者更改选择获得汽车”是同一事件,可用下式表示:

其中


可得结果

即更改选择获得汽车的概率为

2.3 多门问题的简单推导和说明

设想,当门为四个时,门后有一辆车和三只羊,那么仿照式(6)写出如下公式:


其中,


可得结果

即在有四扇门,一车三羊的情况下,按照原先制定的游戏规则,参赛者更改选项赢得车的概率为.

三门情况下更改选项赢得车的概率为,四门情况下概率为,这样美丽的概率数字不禁让我联想,N门情况下赢得车的概率是否就是呢?
其实不难想通,如老师课上所说,在一万扇门的情况下,随机开一扇门获得车的概率仅仅为。“哦,原来这并不是一个可以忽略主持人开门动作的概率游戏”(内心OS)。下一节中,我会通过几行Python代码对这个问题进行模拟,从统计的角度来验证我的猜测是否正确。
以下是python代码的运行结果,
此处输入图片的描述
以下是实现代码

  1. # -*- coding: utf-8 -*-
  2. """
  3. Created on Mon Dec 31 01:33:07 2018
  4. @author: XJwang
  5. """
  6. from random import*
  7. t=100000 #设定试验次数为十万次
  8. first_choice=0
  9. change_choice=0
  10. print('请输入门的个数:');
  11. k = int(input());
  12. for i in range(1,t+1): #循环一万次
  13. m=1 #观众选择一号门
  14. n=randint(1,k) #随机生成1-k代表藏有汽车的门号,
  15. #每一个概率都为1/3
  16. if m==n: #不换门,即第一次
  17. first_choice+=1
  18. else: #换门
  19. change_choice+=1
  20. print("保持,中奖几率为:{:.6f},更改,中奖几率为:{:6f}".format(first_choice/t,change_choice/t))

可见,模拟出的概率可以验证第二节中提出的假设。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注