本周的Riddler经典是关于掷硬币的问题。原始问题的文本很长,所以我将在这里进行解释:
有$n$名囚犯,每个人都可以使用随机数生成器(生成以$[0,1]$为单位的统一随机数)和一枚公平的硬币。如果每个囚犯愿意,他们都有机会掷硬币一次。如果所有轻弹硬币上来了头,所有囚犯都被释放了。但是,如果有任何被翻转的硬币出现在尾巴上,或者根本没有硬币被翻转,囚犯就不会被释放。如果囚犯无法以任何方式交流,也不知道谁在抛硬币,他们如何才能最大限度地获得释放?
这是我的解决方案:
[显示解决方案]
这个问题是一种平衡行为。如果有$k$的囚犯掷硬币,获释的机会是
\[
\mathrm{Prob}(\text{winif}k\text{coins are flipted})=\begin{cases}0&k=0\\frac{1}{2^k}&k=1,2,\dots,n\end{casesneneneep
\]最好的情况是,如果$k=1$囚犯掷硬币,而其他人没有,确保释放的最大可能性为1/2$。但是囚犯们应该如何决定谁掷硬币呢?如果他们被允许提前沟通,他们可以选出一个人来掷硬币。但由于囚犯无法沟通,因此无法提前计划!
由于每个囚犯都可以使用随机数生成器,他们可以用它来决定是否应该投掷硬币。以下是策略。我们必须决定阈值$t$。每个囚犯都会询问他们的随机数生成器,如果他们得到的数字小于$t$,他们就会掷硬币。$t$越大,囚犯越有可能掷硬币。因此,在确保至少有一名囚犯翻转硬币和确保没有太多囚犯翻转硬币之间存在权衡。让我们找出$t$的最佳选择。
让我们称囚犯获释的概率为$f_n(t)$。这取决于他们选择的阈值。现在,
\开始{align*}
f_n(t)&=\sum_{k=1}^n\frac{1}{2^k}\mathrm{Prob}(\text{有}k\text{flips})\\
&=\sum_{k=1}^n\frac{1}{2^k}\binom{n}{k} t吨^k(1-t)^{n-k}\\
&=\sum_{k=1}^n\binom{n}{k}\左(\frac{t}{2}\右)^k(1-t)^{n-k}\\
&=(1-\tfrac{1}{2} t吨)^n-(1-t)^n
\在最后一步中,我们使用了二项式定理计算总和。所以我们的目标是在[0,1]$中找到使$f_n(t)$最小化的$t\。以下是不同$n$值的函数外观:
正如预期的那样,有一个理想的阈值$t$,它使获胜概率最大化。然而,最大值取决于$n$,即囚犯人数。为了找到最大值,我们可以使用微积分:将$f_n(t)$的导数设置为零:
\[
\压裂{\mathrm{d} f_n(f_n)(t) }{\mathrm{d} 吨}=n(1-t)^{n-1}-\tfrac{1}{2} n个(1-\tfrac{1}{2} t吨)^{n-1}=0
\]求解最佳阈值$t$,我们得到:
$\显示样式
文本{opt}=1-\frac{1}{2^{n/(n-1)}-1}
$
作为$n$的函数,$t_\text{opt}$是每个囚犯应该使用的阈值。如果他们的随机数生成器产生的值小于阈值,他们应该翻转硬币。否则,他们不应该这样做。正如预期的那样,在$n到infty$、$t_text{opt}到0$的限制内,因为随着囚犯数量的增加,我们希望每个囚犯都不太可能掷硬币。作为近似,$t_text{opt}$的一阶渐近展开式为
\[
t_\text{opt}=\frac{2\log(2)}{n}+O\左(\frac{1}{n^2}\右)\近似\frac{1.386}{n{
\]因此,这可以作为一种快速接近阈值的方法(以防囚犯无法使用计算器!)。
假设囚犯使用这种策略,获胜的概率如何?这相当于评估$f_n(t_\text{opt})$。这样,我们可以获得:
$\显示样式
\textrm{Prob}(\text{win})=\frac{1}{\左(2^{n/(n-1)}-1\右)^{n-1}}
$
下表比较了不同$n$值的最佳阈值和相应的获胜概率:
囚犯人数 |
阈值$t_text{opt}$ |
自由概率 |
1 |
1 |
0.5 |
2 |
0.666667 |
0.333333 |
三 |
0.453082 |
0.299119 |
4 |
0.342037 |
0.284842 |
5 |
0.274529 |
0.277001 |
10 |
0.13802 |
0.262709 |
50 |
0.0277034 |
0.252429 |
100 |
0.0138574 |
0.251208 |
因此,当$n=1$时,单独的囚犯每次都会翻转,获胜的概率是$\frac{1}{2}$。如果有两个囚犯,每个囚犯应该在同一时间掷$\frac{2}{3}$,获胜的概率为$\frac{1}{3{$。作为$n\to\infty$,阈值如上所述变为零,我们还可以验证获胜的概率趋向于极限中的$\frac{1}{4}$。
因此,该策略确保所有囚犯获释的概率始终至少为25%。唯一需要注意的是,为了计算要使用的阈值,囚犯必须知道玩游戏的囚犯总数$n$。