模式的等待时间与反直觉概率
著名概率学家 Feller 在他的名著 “An introduction to probability and its applications” 中提到了这样一个实验:
问题: 重复抛掷一枚均匀的硬币,用 H
代表正面向上,T
代表背面向上,一直到连续出现 6 次
H
为止。这里连续 6 个 H
组成的模式记作
HHHHHH
,所需要抛掷硬币的次数叫做等待时间。等待时间是一个随机变量,最小值是
6,最大值可以是无限。Feller 问:等待时间的期望是多少?
这个问题可以用 Markov 链来解,但是非常繁琐。香港中文大学李硕彦教授在他的论文 (Li 1980) 中用离散鞅的知识给出了一个简洁而巧妙的解法,本文就来介绍他的方法。
鞅和赌博序列
我们用 HTHT
这个模式为例子,来演示如何求出它的平均等待时间。
假设有一个赌徒,怀里揣着 1 元钱来到一家赌场,他的目标是赌中
HTHT
这个序列。
第一天,他押上这 1 元钱,赌第一次掷硬币的结果是
H
。如果他赌错了就得空手走人,而赌对的话则可以赢得 2 元 (资金翻番) 并留在赌场。第二天,他押上全部的 2 元,赌第二次掷硬币的结果是
T
。跟以前一样,赌错了空手走人,赌对了的话则资金翻番变成 4 元并留在赌场。第三天,他押上全部的 4 元,赌第三次掷硬币的结果是
H
。赌错了空手走人,赌对了的话则资金翻番变成 8 元并留在赌场。第四天,他押上全部的 8 元,赌第四次掷硬币的结果是
T
。赌错了空手走人,赌对了资金翻番变成 16 元,赌局结束。
这个赌局很像电视节目里的闯关游戏,赌局一共有 4 关,赌徒要一关一关的闯,中间任何一关输了都要空手走人。
赌局对赌徒和庄家来讲都是公平的:大家在期望的意义下都是不赔不赚。每一天,赌徒都以 1/2 的概率输光赌本,也以 1/2 的概率将赌本翻番。
现在假设有一个赌博团伙,他们每天都派一个人到赌场赌博,每个赌徒的赌局与上面的描述相同,不同的赌徒的赌局互相独立。我们用
设 HTHT
的等待时间,则
Doob
可料停时定理. 设
,- 存在常数
使得 对任何 都几乎处处成立。
则
因此在我们的问题中
显然
H | T | H | T |
我们仔细分析一下当第
- 第
天来的赌徒是那个闯关成功的幸运儿,他有 16 元; - 第
和第 天来的两个赌徒由于赌的是H
但结果是T
,所以他们当天就走人了; - 第
天来的赌徒连续赌对了HT
,他还有 4 元。
因此赌徒们总共有
这里第 HTHT
的前缀
HT
,但是由于 HT
恰好也是 HTHT
的后缀,因此他也能赢到钱!
这个推理完全适用于一般的情形:设 T
和 H
组成的模式,我们计算它的全部既是前缀又是后缀的子序列的长度,设为
回到开头的例子:HHHHHH
的每一个前缀都同时是它的后缀,因此它的平均等待时间为
把上面的方法稍作修改,还可以用来计算
多个模式的等待时间与获胜概率
假设同时有多个模式
为此先给一个定义:
定义.
设
我们要证明这样一个引理 :
引理.
如果已知掷硬币的结果是以模式
引理的证明:仍然是采用赌博序列的方法,每天来的赌徒赌的是模式
接下来叙述并证明一个一般的结论:
定理.
设
在证明定理之前,先说说怎样根据定理的结论来计算
有了
定理的证明:我们有
Penney 游戏
Penney 游戏是两个玩家 Bob 和 Alice
的博弈游戏,它以掷硬币为工具:游戏开始前,两人各自选择一个长度为 3 的由
H
和 T
组成的模式,比如说 Bob 选择
HHH
,Alice 选择
THH
,然后掷硬币直到其中一人选择的模式首先出现,先出现的一方获胜。
Penney 游戏有一个独特之处:
假设 Bob 先选择他的序列,则不论 Bob 怎样选,Alice 总可以「针锋相对」地选一个合适的序列,使得自己的获胜概率更高。总而言之,Penney 游戏是所谓的「后发制人,先发者制于人」。
这个有点类似于我们都熟悉的「剪子,石头,布」游戏。在 Penney 游戏中,各种策略循环相克,维基百科 中给出了各种情形下二人的获胜概率之比。在这个例子中,Alice 的获胜概率为 7/8。
Penney 游戏是非传递博弈的典型例子:策略
在只有两个模式
推论.
设
还有更不可思议的事情
我们已经介绍了怎样计算一个模式的平均等待时间,以及多个模式同时「赛跑」时各自的获胜概率。我们现在来看看
THTH
和 HTHH
比赛的结果如何。
首先不难算出 THTH
的平均等待时间是 20,HTHH
的平均等待时间是 18,也就是说 THTH
跑的慢一些,HTHH
跑的快一些,这是不是意味着让它俩赛跑的话,HTHH
获胜的概率更大呢?
答案是否定的,这其实是一个一面倒的竞赛:
看起来慢一些的模式
THTH
,其与HTHH
的胜算之比为 9 比 5,即平均每 14 场赛跑,THTH
会赢 9 场,而貌似快一些的HTHH
倒只赢 5 场。
为什么会出现这种反直觉的现象呢?其实「跑得慢」和「赢得多」并不矛盾。我们随便看一个由
H
和 T
组成的随机序列:
HHTHTHHTHTHHTTTHHTHHHHTTHHTTHTTHTHHTHHTHHTHHHHTTHTTTTTTHTTHTHTTHHTHHHHHHTTHTHHTHTHHTTTTTHTTHHHHHHTHHHTTTHTTTHTTTHHHTHHTHTHTTTHTTHTTHTHHTHHTTHTHHHTTHH …
其中分别用红色和绿色标记了模式 THTH
和 HTHH
的出现的位置。注意到任何绿色 H
后面连续的三个字符中绝对不会出现红色 H
,而大约一半的红色的
H
后面紧跟一个绿色的
H
。所以从一个随机序列中任选一点作为起点开始比赛,那么在
THTH
先撞线的比赛中,第二个撞线的绿色 HTHH
往往会只落后一个身位,但是在绿色 HTHH
先撞线的比赛中,红色的 THTH
至少要落后四个身位以上。
用足球来类比,领先一个身位就好比取得一个净胜球。THTH
击败 HTHH
的方法类似「一比零主义」:THTH
一半的赢球是靠一比零拿下的,而且每次输球都要输四个以上的球,所以总净胜球为负(平均等待时间长)。但由于赢的场数多,积分反而领先。