一个由不可以总司令想到的有趣概率/期望题。
题面
一套卷子上有 $n$ 道判断题。你不知道它们的答案,但是你知道存在一个常数 $p \in [0, 1]$,对任意一道题,它的答案是“正确”的概率为 $p$。
你决定采用一种策略来答题:选择一个常数 $p’ \in [0, 1]$,对于任意一道题,你以 $p’$ 的概率选择“正确”。
求问:
- 若要使得期望做对题数最多,应该选择怎样的 $p’$?期望做对题数是多少?
- 若要使得期望全对概率最大,应当选择怎样的 $p’$?期望全对概率是多大?
解答
这是一个非常棒的问题!它涉及了期望、概率和优化策略,我们来一步步分解它。
首先,我们来明确一下变量和事件:
- $n$: 题目的总数。
- $p$: 任意一道题的真实答案是“正确”的概率。
- $1-p$: 任意一道题的真实答案是“错误”的概率。
- $p’$: 你回答任意一道题为“正确”的概率。
- $1-p’$: 你回答任意一道题为“错误”的概率。
你的回答策略和你不知道的真实答案是相互独立的。
1) 使得期望做对题数最多
我们要计算做对题数的期望值,并找到使这个期望值最大的 $p’$。
计算单题做对的概率
首先,我们考虑只做对一道题的概率。有两种情况可以做对一道题:
- 题目的真实答案是“正确”(概率为 $p$),你也回答“正确”(概率为 $p’$)。这件事情发生的概率是 $p \cdot p’$。
- 题目的真实答案是“错误”(概率为 $1-p$),你也回答“错误”(概率为 $1-p’$)。这件事情发生的概率是 $(1-p) \cdot (1-p’)$。
由于这两种情况是互斥的,所以做对任意一道题的概率 $P(\text{单题正确})$ 是两者之和: $P(\text{单题正确}) = p p’ + (1-p)(1-p’)$
计算期望做对题数
设 $X$ 为你做对的总题数。$X$ 可以看作是 $n$ 个独立的伯努利试验的和,其中每次试验“成功”(即做对题)的概率为 $P(\text{单题正确})$。
根据期望的线性性质,总期望做对题数 $E[X]$ 就是单题做对的期望乘以题目总数 $n$。而单题做对的期望就是单题做对的概率。 $E[X] = n \cdot P(\text{单题正确})$ $E[X] = n \cdot [p p’ + (1-p)(1-p’)]$
优化 $p’$
我们的目标是选择一个 $p’ \in [0, 1]$,使得 $E[X]$ 最大。我们可以把 $E[X]$ 看作是关于 $p’$ 的函数 $f(p’)$: $f(p’) = n \cdot [p p’ + 1 - p - p’ + p p’]$ $f(p’) = n \cdot [(2p - 1)p’ + (1-p)]$
这是一个关于 $p’$ 的线性函数,其斜率为 $n(2p-1)$。线性函数在闭区间上的最大值一定在区间的端点处取得。
当 $2p - 1 > 0$ (即 $p > 1/2$): 斜率为正,函数是增函数。为了使 $f(p’)$ 最大,我们应该取 $p’$ 的最大值,即 $p’ = 1$。
直观解释:如果“正确”答案本身出现的概率就大于一半,那么你最稳妥的策略就是全部猜“正确”。当 $2p - 1 < 0$ (即 $p < 1/2$): 斜率为负,函数是减函数。为了使 $f(p’)$ 最大,我们应该取 $p’$ 的最小值,即 $p’ = 0$。
直观解释:如果“错误”答案本身出现的概率大于一半,那么你就应该全部猜“错误”。当 $2p - 1 = 0$ (即 $p = 1/2$): 斜率为零,函数是常数函数。$f(p’) = n \cdot (1 - 1/2) = n/2$。此时任何 $p’ \in [0, 1]$ 的选择都会得到相同的期望值。
直观解释:如果“正确”和“错误”的概率完全一样,那么你怎么猜,期望值都是对一半。
结论与期望值
- 若 $p > 1/2$,应选择 $p’=1$。最大期望做对题数是 $n \cdot [p \cdot 1 + (1-p) \cdot 0] = np$。
- 若 $p < 1/2$,应选择 $p’=0$。最大期望做对题数是 $n \cdot [p \cdot 0 + (1-p) \cdot 1] = n(1-p)$。
- 若 $p = 1/2$,可选择任意 $p’ \in [0, 1]$。最大期望做对题数是 $n/2$。
我们可以把这个结果统一写成:最大期望做对题数是 $n \cdot \max(p, 1-p)$。
2) 使得期望全对概率最大
我们要计算 $n$ 道题全部做对的概率,并找到使这个概率最大的 $p’$。
计算全对的概率
由于每道题的作答过程是相互独立的,所以全部答对的概率是单题答对概率的 $n$ 次方。 $P(\text{全对}) = [P(\text{单题正确})]^n$ $P(\text{全对}) = [p p’ + (1-p)(1-p’)]^n$
优化 $p’$
我们的目标是选择一个 $p’ \in [0, 1]$,使得 $P(\text{全对})$ 最大。 设函数 $g(x) = x^n$。在 $x \ge 0$ 的区间上,$g(x)$ 是一个单调递增函数。因此,要最大化 $[P(\text{单题正确})]^n$,我们只需要最大化它的底数 $P(\text{单题正确})$ 即可。
这个问题就转化为了最大化 $P(\text{单题正确}) = p p’ + (1-p)(1-p’)$。
这正是我们在第一问中解决的优化问题!因此,最优的 $p’$ 选择和第一问完全一样。
结论与概率值
- 若 $p > 1/2$,应选择 $p’=1$。
- 若 $p < 1/2$,应选择 $p’=0$。
- 若 $p = 1/2$,可选择任意 $p’ \in [0, 1]$。
最大全对概率
我们把最优的 $p’$ 带入,计算单题做对的概率的最大值:
- 若 $p > 1/2$,选择 $p’=1$,单题做对概率为 $p \cdot 1 + (1-p) \cdot 0 = p$。
- 若 $p < 1/2$,选择 $p’=0$,单题做对概率为 $p \cdot 0 + (1-p) \cdot 1 = 1-p$。
- 若 $p = 1/2$,单题做对概率为 $1/2 \cdot p’ + 1/2 \cdot (1-p’) = 1/2$。
这可以统一写成 $\max(p, 1-p)$。
所以,最大全对概率是 $[\max(p, 1-p)]^n$。
总结
| 目标 | 最佳策略 $p'$ | 最大值 |
|---|---|---|
| 期望做对题数最多 | 若 $p > 1/2$,选 $p’=1$(全猜“正确”)若 $p < 1/2$,选 $p’=0$(全猜“错误”)若 $p = 1/2$,任选 $p’ \in [0, 1]$ | $n \cdot \max(p, 1-p)$ |
| 全对概率最大 | 若 $p > 1/2$,选 $p’=1$(全猜“正确”)若 $p < 1/2$,选 $p’=0$ (全猜“错误”)若 $p = 1/2$,任选 $p’ \in [0, 1]$ | $[\max(p, 1-p)]^n$ |
这个结果非常直观:无论你是想最大化期望对题数,还是最大化全对的概率,你的最佳策略都是一样的:找出概率更高的那个选项,然后死磕到底。