🔍 点击查看模拟演示 (prisonerenvelope.html)
囚徒与信封问题
第一节:问题交代
有 7 个囚犯面临生死考验。房间里有 7 个信封,外部编号为 1 到 7,内部随机放入了写有 1 到 7 编号的卡片(打乱形成一个随机置换)。
生存规则:
1. 每个囚犯依次进入房间,最多可打开 4 个信封。
2. 如果找到了写有自己编号的卡片,则该囚犯过关。
3. 只有 7 个人全部找回自己的卡片,全员才能获释;只要有一人失败,全员处决。
4. 囚犯之间不能交流,且必须将信封恢复原状。
第二节:随机盲选的困境
如果囚犯们没有策略,只是在 7 个信封中随机挑选 4 个打开,结果会怎样?
- 单个囚犯找回自己编号的概率是:\( \frac{4}{7} \)。
- 因为每个人是独立随机选择的,7 个人全部成功的概率就是:
\[ P = \left(\frac{4}{7}\right)^7 \]
通过计算可知:
全员生还率仅约为 1.53%
这是一个极低的概率,依靠运气几乎注定失败。
第三节:绝妙的策略(置换循环)
囚犯们可以通过置换群的循环分解原理,将生还概率大幅提升。
策略步骤:
- 囚犯 \( i \) 进入房间后,先打开编号为 \( i \) 的信封。
- 如果信封内卡片编号是 \( j \)(\( j \neq i \)),他下一次就去打开编号为 \( j \) 的信封。
- 以此类推,顺着数字的指引形成一个“圈(Cycle)”,直到找到自己的编号或用完 4 次机会。
概率计算:
这个策略成功的核心在于:信封与卡片的对应关系构成了一个置换。所有囚犯都能找到自己卡片的充要条件是:这个随机置换中不存在长度大于 4 的圈。
由于总数是 7,存在长度为 5、6、7 的圈是互斥事件。根据置换群性质,包含长度为 \( k \) 的圈的概率为 \( \frac{1}{k} \)。
失败(存在长圈)的概率为:
\[ P(\text{失败}) = \frac{1}{5} + \frac{1}{6} + \frac{1}{7} = \frac{107}{210} \]
因此,采用此策略的全员成功概率为:
\[ P(\text{成功}) = 1 - \frac{107}{210} = \frac{103}{210} \]
全员生还率飙升至约 49.05%
第四节:简要提示推广
这个数学问题可以推广到 \( n \) 个囚犯,每人允许打开 \( m = \frac{n}{2} \) 个信封的一般情况。
全员成功的通用概率公式为:
\[ P_n = 1 - \left( \frac{1}{\frac{n}{2}+1} + \frac{1}{\frac{n}{2}+2} + \dots + \frac{1}{n} \right) \]
当 \( n \) 趋于无穷大时,括号内的部分实际上是调和级数的一部分,它会逼近于定值:
\[ \lim_{n \to \infty} P_n = 1 - \ln(2) \approx 30.68\% \]
结论:
即便囚犯人数增加到 100 甚至 1,000,000 人,只要采用“置换循环”策略,全员生还的概率都会稳定在 30.68% 左右,这展现了数学规律在对抗直觉时的强大力量。