前一阵去了趟天堂超市,一个夏天未曾行动,略显生疏。和妹子们温习了下喝酒经典无趣项目——摇骰子,趁闲思忖,不过概率游戏罢了,遂作此拙文,略析一二。
游戏规则
若干人参与游戏,每人若干骰子,约定点数 1 百搭。随机摇匀,按序进行。第1位玩家赌全场至少有几个点数几(点数必须大于1),第2位玩家选择信还是不信。如果信,开盘,看第1位位玩家赌的是否正确,正确,第2位玩家输,错误,第1位玩家输。如果不信,第2位玩家继续赌全场有几个点数几(数量和点数必须至少有一个大于前一个人,且数量不能小于前一个人),依此类推。
实际上,在每轮博弈中,每个点数出现的概率相同(2~6),减去自己手中已知的骰子之后,这个游戏可以简化为:
计算
n个骰子出现x个同一点数的概率
比如我们一共 4 个人,每人 5 个骰子,某一轮我上家妹子赌 9 个 六,我手上是 1 个 六,1 个 一,于是,这轮就成了计算除了我的骰子以外共 3*5=15 个骰子出现 9-1-1=7 个 六 和 一 的概率。
建模
设共 n 个骰子,n 个骰子取 x 个,共有组合数为:
记有 x 个同一点数的概率为 p(n, x),则有推导:
推导一
在点数 1 百搭的情况下,对于一个骰子,某一点数(2~6)出现概率为 (1+1)/6,即 1/3,不出现的概率即为 2/3,则有:
推导二
n 个骰子有序排列,共有 6^n 种组合,点数 1 和某点数共有 2^x 种组合,剩余点数共有 4^(n-x) 种组合,则有:
二者殊途同归,择一即可。
最终公式
但是实际上,某点数次数为 x 或以上都算猜对,实际要计算的是 x 的分布函数,即总概率:
数据观察
令 n=5,则有
| x | p | F |
|---|---|---|
| 5 | 0.41% | 0.41% |
| 4 | 4.12% | 4.53% |
| 3 | 16.46% | 20.99% |
| 2 | 32.92% | 53.91% |
| 1 | 32.92% | 86.83% |
| 0 | 13.17% | 100% |
可见,对于一个人来讲,摇出两个相同点数和摇不出相同点数的概率最大,接近三分之一,而如果赌一个人手上有至少两个相同点数,赢率略超 50%。但如果继续,赌有至少三个相同,赢率将迅速跌至 20%。显然,每人手上有两个相同点数是这个游戏获胜的临界点。
以上 n=5 的案例适用于二人 solo 局,如果人数不止二人,n 取对应数字即可。对此,我特地写了一个小程序,来方便大家实战使用数学学习。
小程序使用路径:大根实验室 -> 概率计算器
实战
通过以上分析显然知道,猜的点数并不影响赢的概率(点数 2 并不比点数 6 更容易摇出来),游戏的关键点在于猜的点数的数量,尤其是上面分析的临界点,谁先到达临界点,谁的获胜概率更高。而点数则可以作为迅速推近临界点的手段——如果愿意,你可以第一次就叫点数 6 的临界点。
以下通过不同场景作演练:
二人 solo 局
根据程序分析显示,数量 2 作为临界点,赢面基本五五开,但是下一个数量 3,赢面迅速下降至 21%,所以在数量 3 上的玩家,必须开。
实际应用来讲,比如你手上有 3 个六,如果是你先手,直接猜 5 个六(3+2=5),那么对面只有选择开,否则他继续猜任何数字任何点数,你都可以以较大的赢面开了。
反之亦然,如果对面先手直接 5 个六,而你手上有 3 个六,已经到达临界值 2(5-3=2),那么你也只有开了。
多人混战局
多人局和二人局在数学理论上是一样的,但是多人局的关键不在于抢占临界点了,而在于避免风险,即避免开盘,因为只要开盘,哪怕是 99% 的赢面,都有 1% 的可能会输,毕竟赢了又没有奖励,输了却要喝酒。所以,把这个好机会留给别人吧!
以4人局为例。
临界点为 5,那么你可以选择猜 4,这样下家选择开你的时候,赢面很小,如果不开你的话,下次再到你的时候,你的上家至少得是 7,赢面只有 20%,开之。
实际应用,比如你手上有 3 个六,如果是你先手,直接猜 7 个六(3+4=7),这样下家开你,你有 79% 的概率获胜,完全不虚;如果对面不开你,而且大家都很谨慎地加码,那么下次再到你的时候,你的上家至少是 10 个六,赢面只有 20%,果断开他。当然最好的情况是还没轮到你,就已经被别人开了。
总结
通过以上分析,可以看到这个游戏的核心对战策略大致如此。但是在实际操作过程中,还会遇到诸如谎报心理、赌徒心理等其他方面的干扰,与本文无关,不多做讨论。