Na FreeHostingu Endora běží desítky tisíc webů. Přidejte se ještě dnes!

Vytvořit web zdarma

Na FreeHostingu Endora běží desítky tisíc webů. Přidejte se ještě dnes!

Vytvořit web zdarma
2015
01.20

硬币中的不可思议

本文作者:方弦

硬币除了可以买东西,也可以用来解决各种争端。据说,遇到不可调解的分歧的时候,为了作出决定,人们的首选是猜拳,其次是抛硬币。足球场上开球方的决定,习惯上也是用硬币决定的。除此之外,硬币作为垂手可得的小道具,也能玩出各种花样的小游戏。对于这些小游戏,你又知道多少呢?

硬币正反不一样

如果硬币两面是完全一样的,显然掷出正面或者反面的可能性是均等的。我们常说,正反面出现的概率都是0.5。那么,这里的“概率”是什么意思呢?

如果我们不停地投掷硬币,并记录下每次的结果,我们会发现正面出现的数量大约是全部的一半。投掷的次数越多,“出现正面”所占的比例就越接近0.5。这就是概率的含义:如果在许多次独立的试验中,某个特定的事件发生的比例会逐渐趋近一个特定的数值,那么这个数值就被称为这个特定事件的概率。

我们可能觉得掷硬币时,正反面出现的概率是一样的,其实不然。由于设计的原因,硬币正反面的花纹是不一样的,从而也导致了重心与中心的微小偏差。以人民币一元硬币来说,正面是代表面额的1字,反面是菊花,重心稍微偏向反面;欧元就更麻烦了,不同的铸币厂会铸出不同的背面花纹,重心偏向也因这些花纹而异。由于重心有偏向,所以掷硬币时,正反面出现的概率也会有些偏差。幸好花纹导致的概率偏差非常非常小,在日常生活中往往可以忽略不计。

Euro_coins_version_II_big1

【欧元硬币图案一览】

尽管可以忽略不计,但有没有办法修正这个偏差呢?换句话说,能不能找到一个方法,让有偏差的硬币产生无偏差的结果呢?

假设某枚硬币掷出正面的概率是p,我们用以下的方法产生抛硬币的结果:掷两次硬币,如果两次的结果相反的话,取后掷出的为结果;否则重新掷两次。更具体地说,如果结果是“反正”的话,那就当作掷出了正面,如果是“正反”的话,那就当作反面,如果是“正正”或者“反反”的话,那就重新再来。这样的话,在一次尝试中,结果为正面和反面的概率都是p(1-p),结果是完全公平的。

正反抵消不容易

掷100次硬币,正面和反面相差多少次呢?1000次呢?10000次呢?现实中的硬币,掷出正反面的概率略有偏差,但差别之小可以看作相同。你可能会觉得,掷出正面和反面的数目有很大概率是相等的。但事实如何?

虽然根据概率论中的大数定律,正反面出现次数的比应该很接近1,但这不代表正反面数目刚好抵消的概率很大。打个不太恰当的比方,地铁相对来说是很准时的,但是要它一天提前或者延误的时间刚好抵消的话,还是相当困难的。尽管得到正面和反面的概率相同,但是要它们恰好相互抵消,这也需要一点运气。稍稍用点数学知识可以知道,抛2n次硬币,恰好有n次正面n次反面的概率大概是 1/\sqrt{n\pi} 。当n越来越大,这个概率越来越趋近0。也就是说,虽然正反面出现的概率相同,但是它们恰好相等的概率会随着抛硬币的总次数变低,最后越来越接近0。

所以说,在表达数学问题时,一定要用精确的语言。意思上一点点微小的变动,也会产生截然不同的结果。我们说投掷硬币时出现正面的概率是0.5,说的是在许许多多次投掷后,结果中正面所占的比例会非常接近0.5,投掷次数越多,比例越接近0.5。但这并不是说比例会非常凑巧地稳稳停在0.5。实际上,在很多情况下,这个比例会不停地在0.5周围浮动,但浮动的幅度会越来越小,也会越来越靠近0.5。某几次投掷之后正面恰好占一半,这种情况发生的机会反而很小。

谁先谁后轻松选

如果你跟你的小伙伴一起玩游戏要决定谁先谁后的话,抛个硬币是个很好的解决方案。但是如果小伙伴不止一位的话,单靠硬币可能就不太容易解决问题了。如果要从四个人里公平地挑出一个,掷两次硬币,将四种不同的结果(正正、正反、反正、反反)分别指派给每个人,掷出哪种结果就选哪个人,这种方法还是挺方便的。但如果只有三个人呢?

三个人的时候,有一种比较显而易见的解决方法:同样掷两次硬币,将正正、正反、反正三种结果指派给三个人,如果掷出的结果是指定的结果之一,那么就选出对应的人;否则,如果运气不好掷出“反反”的话就重新开始另一轮硬币的投掷。显然这种方法保证了公平性,因为在每轮掷硬币中,每种结果出现的概率是相同的。但会不会运气不好,一连好几轮都掷出“反反”,需要重新开始?

我们可以算一算。每一轮掷出“反反”重新开始的概率恰好是1/4,而n轮都出现如此情况的概率是1/4的n次方,当n越来越大的时候,这个概率很快地会变得越来越小。直观看来,一轮不能决出结果的概率也不高,所以大概不需要拖上很长时间。更严格的计算表明,用这种方案从三个人中选出一个,平均只需要投掷8/3次硬币就能完成,算上来大约比两次多一点点,说明这种方法还是很有效的。

实际上,这种方法可以推广到任意人数,而且也能证明,平均需要投掷硬币的次数一定不会太多,随着人数增长,平均投掷次数也会增长,但是要缓慢得多。

尼姆游戏有乾坤

硬币除了能解决分歧,还能用来玩玩游戏。其中一种游戏非常有名,叫“尼姆游戏”。这个游戏的玩法很简单,先将硬币分成几堆,然后两个人轮流取硬币,每次取硬币只能从同一堆中取出,枚数不限,但至少要取一枚,取走最后一枚硬币的就是赢家。

jpilpv

尼姆游戏很流行的一个版本,图片转载自这里

比如说,甲乙二人玩这个游戏,开局有三堆硬币,分别有3、5、7枚。甲先取走第二堆中的4枚,每堆剩下3、1、7枚,接下来乙取走第三堆的所有硬币,剩下的就分别是3、1、0枚。接下来甲只要取走第一堆中的2枚,留给乙的就是各自有一枚硬币的两堆。这时,乙只能取走其中一堆,而甲只需要拿走剩下的一堆就能获胜。

从这个例子能看出来,尼姆游戏中没有运气的成分,每位玩家都能看清整个局势,而玩家能采取的行动也是一样的,区别只是在于一位先攻而另一位后守。在博弈论这一研究游戏取胜策略的数学分支中,这样的游戏被称为无偏博弈。也正是博弈论中的一个定理,赋予了尼姆游戏一个非常特殊的地位:任意给定一个无偏博弈,它都对应一个推广了的尼姆游戏的特例。可以说,尼姆游戏中包含了所有的无偏博弈,比如象棋、围棋等,尽管这些更为复杂的游戏,它们对应的尼姆游戏特例中可能有很多堆硬币,每堆硬币可能会很多,甚至有无穷枚,需要用更为抽象的“序数”来描述。

让我们回到普通的尼姆游戏中。在之前的例子中,如果甲乙双方都依照最好的策略来玩尼姆游戏,哪一方将会胜出,而胜者需要采取怎么样的策略?这个问题就留给小读者们思考了。给个提示:最优策略与二进制有关,如果只有两堆硬币的话,获胜者与策略都比较明显,如果有三堆甚至更多的硬币的话,从简单的情况开始,试验一下,再观察一下,将每堆的数量用二进制写出来,到底满足什么样的条件,先走者会胜利呢?

硬币阵列需策略

另一种与尼姆游戏很相似的硬币游戏叫“大嘴巴”,英语里叫“Chomp”。尼姆游戏的战场是一堆硬币,而“大嘴巴”的战场则是排成长方形阵列的硬币。规则与尼姆游戏非常类似:一开始桌面上摆放着m×n的长方形硬币阵列(比如说5×7),两人轮流取硬币,每次指定桌面上剩下的硬币之一,然后将这枚硬币以及它右下方的所有硬币都取走(包括正右方与正下方),阵列左上方的硬币是特殊硬币,谁拿到手谁就输掉整场游戏。

QQ20150119-1

【3 × 5的大嘴巴游戏过程举例,图片出自维基百科

虽然“大嘴巴”与尼姆游戏非常相似,但它们的性质相当不同。对于尼姆游戏而言,在不同的开局中,能取胜的玩家也不同,有的是先手必胜,有的是后手必胜,而且策略很容易算出来。但对于“大嘴巴”而言,除了一开始只放一枚硬币的开局,对于所有开局来说,都是先手必胜。虽然证明并不复杂,但并没有给出具体的获胜策略。要知道具体的获胜策略,目前还只能借助计算机的力量。所以,比起尼姆游戏,“大嘴巴”更有趣更复杂,更适合跟朋友一起玩。

叫上你的小伙伴,拿上一把硬币,立刻探索一下简单游戏的朴素乐趣吧!

关于

本文是果壳网《超好玩硬币游戏,你都会玩吗?》的扩展,已发表于《十万个为什么》杂志2014年12期



暂无回复

添加回复
回到顶部

无觅相关文章插件,快速提升流量