三门问题的数学原理及模拟实验

三门问题是一个源自博弈论的数学游戏。三门问题的等价问题出现的很早,三囚犯问题至少在 1959 年马丁·加德纳的《数学游戏》专栏中就已有阐述。但是让三门问题真正引起广泛讨论的,当属美国的电视游戏节目 Let’s Make a Deal。因该节目的主持人名为蒙蒂·霍尔,故而该问题也称为「蒙蒂·霍尔问题」。问题的描述大致如下:

参赛者会看见三扇关闭了的门,其中一扇的后面有汽车,选中后面有汽车的那扇门就可以赢得该汽车,而另外两扇门后面则各藏有一只山羊。当参赛者选定了一扇门,但未去开启它的时候,节目主持人开启剩下两扇门的其中一扇,露出其中一只山羊。主持人其后会问参赛者要不要换另一扇仍然关上的门。问题是:换另一扇门会否增加参赛者赢得汽车的机会率?

三门问题引起了广泛的讨论。例如在果壳网知乎网上,你能找到大量相关讨论。

本文将尽可能清晰地对三门问题做完整讨论。

三门问题的概率表述

贝叶斯公式

贝叶斯公式,是关于条件概率的公式。假设有事件 $A$ 和事件 $B$,它们地位等同。贝叶斯公式可以根据给定事件 $A$ 时事件 $B$ 的条件概率 $P(B\mid A)$ 去计算给定事件 $B$ 时事件 $A$ 的条件概率 $P(A\mid B)$;或者反过来。贝叶斯公式的数学表示是:

$$P(A\mid B) = \frac{P(A) P(B\mid A)}{P(B)}.$$

其中,$P(A)$ 是事件 $A$ 的先验概率;$P(A\mid B)$ 是给定事件 $B$ 时事件 $A$ 的条件概率,在此一般称为后验概率;$P(B)$ 是事件 $B$ 的先验概率,在此一般称为边缘概率;$P(B\mid A)$ 是给定时间 $A$ 时事件 $B$ 的条件概率。

三门问题的概率建模

在三门问题中,若有以下定义:

  • 事件 $A$:参赛者选择的门后有汽车;
  • 事件 $B$:主持人选择的门后有汽车。

则,根据贝叶斯公式,有

$$P(A\mid \bar B) = \frac{P(A) P(\bar B\mid A)}{P(\bar B)}.$$

因此,问题转换为求解并判断后验概率 $P(A\mid \bar B)$:

  • 若 $P(A\mid \bar B) < \frac{1}{2}$,则答案是「是」;
  • 若 $P(A\mid \bar B) \geqslant \frac{1}{2}$,则答案是「否」。

考虑 $P(\bar B\mid A)$ 表示已知参赛者选择的门后有汽车时,主持人选择的门后无汽车的概率,因为已知三扇门后只有一台汽车,因此 $P(\bar B\mid A)\equiv 1$。又考虑到参赛者选择的门后有汽车的概率始终是 $P(A) = \frac{1}{3}$,因此问题实质上是要看边缘概率 $P(\bar B)$ 的值:

  • 若 $P(\bar B) > \frac{2}{3}$,则 $P(A\mid \bar B) < \frac{1}{2}$,答案是「是」;
  • 若 $P(\bar B) \leqslant \frac{2}{3}$,则 $P(A\mid \bar B) \geqslant \frac{1}{2}$,答案是「否」。

边缘概率 $P(\bar B)$ 之谜

两种答案

关于三门问题,两种答案争执已久。归纳起来,可以是:

  • 既然主持人排除了一个错误选项,那么原始问题就变成了二选一的新问题,此时选哪个都一样,中奖概率都是 $\frac{1}{2}$。因此答案是「否」。
  • 三扇门的中奖概率都是 $\frac{1}{3}$,参赛者选中的门的中奖概率自然也是 $\frac{1}{3}$;而主持人选择的门打开后,$\frac{1}{3}$ 就「跑到」另一扇门上去了,所以另一扇门的中奖概率是 $\frac{2}{3}$。因此答案是「是」。

暗藏的假设

根据贝叶斯公式,目标后验概率为 $P(A\mid \bar B) = \frac{1}{3P(\bar B)}$。因此,以上两种答案对应边缘概率 $P(\bar B)$ 分别是 $P(\bar B) = \frac{2}{3}$ 和 $P(\bar B) = 1$;这又对应了两种假设:

  • 主持人并不知道门后的情况,随机选择后恰好门后是羊;特别地,主持人不知道参赛者选择的门后的情况,因而主持人的选择没有带来新的信息量。即:$$P(\bar B) = P(\bar B\mid A)P(A) + P(\bar B\mid\bar A)P(\bar A) = 1\cdot\frac{1}{3} + \frac{1}{2}\cdot\frac{2}{3} = \frac{2}{3}.$$
  • 主持人知道门后的情况,因此选择的门后边必然是羊;特别地,主持人知道参赛者选择的门后的情况,因而主持人的选择带来了新的信息量。即:$P(\bar B) = 1$。

这两种假设即是长期持续的争论的直接原因,而其根源在于原始问题用模糊的语言玩了一个文字游戏。「节目主持人开启剩下两扇门的其中一扇」,并没有体现出主持人事先是否知道门后的情况;因而两种理解都算是可以接受的。这即是三门问题引起争论的原因,也是其陷阱所在。

破解谜题

尽管在原始问题中,有「文字游戏」的嫌疑,但由于「露出其中一只山羊」的保证,事实上主持人的选择就变成了确定性的结论,因而带来了信息量。以概率论的角度来描述,即是 $P(\bar B) = 1$。

因此,三门问题的答案,应当是「换另一扇门会增加参赛者赢得汽车的机会(概率从 $\frac{1}{3}$ 增加到 $\frac{2}{3}$)」。

回到小孩子的思维

行文至此,尽管已经从概率论的角度解答了原始问题,并给出了问题令人困惑的根本原因,但可能仍然有人拒绝这一反直觉的答案。为此,此处给出一个运用小孩子的思维的解法:枚举。

根据题目,参赛者需要在三扇门中进行选择,而门后共有一台汽车和两只羊。不妨将其设为汽车羊A羊B。那么,若参赛者在主持人展示一只羊之后更改选择,则获胜的概率为 $\frac{2}{3}$(失败的概率则是 $\frac{1}{3}$)。所有可能的情况枚举如下:

  • 当参赛者一开始选择汽车时($\frac{1}{3}$ 概率),不论主持人选择羊A 还是羊B,若参赛者更换选择,都不能赢得汽车
  • 当参赛者一开始选择羊A时($\frac{1}{3}$ 概率),主持人必然选择羊B,若参赛者更换选择,则必然赢得汽车
  • 当参赛者一开始选择羊B时($\frac{1}{3}$ 概率),主持人必然选择羊A,若参赛者更换选择,则必然赢得汽车

计算机模拟实验

所谓「实践是检验真理的唯一标准」,在给出了尽可能清晰的解答之后,本文也尝试用计算机模拟的方法,进行实践检验。

Python 代码(在此下载)读起来很容易,因此不做详细说明,而只给出简单的解释。对于参赛者的两种选择(在主持人打开一扇门后是否更改选择),代码分别进行了 10000 轮,每轮 1000 次的实验。而后,代码统计每轮 1000 次实验中,参赛者成功赢得汽车的频率;并将 10000 轮频率绘制成图展示。

以下是「不更改」的实验结果。不难发现,频率分布在 $\frac{1}{3}$ 左右,每轮实验的具体频率在它附近抖动。

三门问题中参赛者不更改选择时成功的频率折线图

三门问题中参赛者不更改选择时成功的频率分布图

以下是「更改」的实验结果。不难发现,频率分布在 $\frac{2}{3}$ 左右,每轮实验的具体频率在它附近抖动。

三门问题中参赛者更改选择时成功的频率折线图

三门问题中参赛者更改选择时成功的频率分布图

据此,计算机模拟实验的结果,与前文分析的结果相同。


您的鼓励是我写作最大的动力

俗话说,投资效率是最好的投资。 如果您感觉我的文章质量不错,读后收获很大,预计能为您提高 10% 的工作效率,不妨小额捐助我一下,让我有动力继续写出更多好文章。


撰写评论

写了这么多年博客,收到的优秀评论少之又少。在这个属于 SNS 的时代也并不缺少向作者反馈的渠道。因此,如果你希望撰写评论,请发邮件至我的邮箱并注明文章标题,我会挑选对读者有价值的评论附加到文章末尾。