求公平6面骰子首次集齐所有偶数或所有奇数所需的平均投掷次数
求公平6面骰子首次集齐所有偶数或所有奇数所需的平均投掷次数
嘿,你的模拟结果7.3完全正确,对应的精确分数是73/10(也就是7.3)。咱们用状态期望的方法一步步拆解开推导:
首先,我们定义状态为(e, o),其中e是已经收集到的不同偶数数量(0、1、2、3),o是已经收集到的不同奇数数量(0、1、2、3)。游戏结束的条件是e=3(集齐所有偶数)或者o=3(集齐所有奇数),这两种状态的期望步数都是0(游戏已经结束)。我们的目标是求初始状态(0,0)的期望步数E(0,0)。
利用对称性,E(e,o)=E(o,e),这能帮我们省不少计算量:
- 初始状态(0,0)
每次掷骰子,有1/2概率得到新偶数(进入状态(1,0)),1/2概率得到新奇数(进入状态(0,1))。因为E(1,0)=E(0,1),所以方程可以简化为:
E(0,0) = 1 + E(1,0)
- 状态(1,0)
此时已收集1个偶数、0个奇数:
- 1/6概率掷到已有的那个偶数,状态不变;
- 1/3概率掷到新的偶数,进入状态(2,0);
- 1/2概率掷到任意奇数,进入状态(1,1)。
整理后得到方程:
5E(1,0) = 6 + 2E(2,0) + 3E(1,1)
- 状态(2,0)
此时已收集2个偶数、0个奇数:
- 1/3概率掷到已有的偶数,状态不变;
- 1/6概率掷到最后一个偶数,游戏结束(期望为0);
- 1/2概率掷到任意奇数,进入状态(2,1)。
整理后得到方程:
4E(2,0) = 6 + 3E(2,1)
- 状态(1,1)
此时已收集1个偶数、1个奇数:
- 1/3概率掷到已有的偶数或奇数,状态不变;
- 1/3概率掷到新的偶数,进入状态(2,1);
- 1/3概率掷到新的奇数,进入状态(1,2)(由对称性
E(1,2)=E(2,1))。
整理后得到方程:
E(1,1) = 3/2 + E(2,1)
- 状态(2,1)
此时已收集2个偶数、1个奇数:
- 1/2概率掷到已有的偶数或奇数,状态不变;
- 1/6概率掷到最后一个偶数,游戏结束;
- 1/3概率掷到新的奇数,进入状态(2,2)。
整理后得到方程:
3E(2,1) = 6 + 2E(2,2)
- 状态(2,2)
此时已收集2个偶数、2个奇数:
- 2/3概率掷到已有的偶数或奇数,状态不变;
- 1/3概率掷到最后一个偶数或奇数,游戏结束。
整理后直接得到:
E(2,2) = 3
接下来从最底层状态往上代入求解:
- 把
E(2,2)=3代入状态(2,1)的方程,得到E(2,1)=4; - 把
E(2,1)=4代入状态(1,1)的方程,得到E(1,1)=11/2=5.5; - 把
E(2,1)=4代入状态(2,0)的方程,得到E(2,0)=9/2=4.5; - 把
E(2,0)和E(1,1)代入状态(1,0)的方程,得到E(1,0)=63/10=6.3; - 最后代入初始状态的方程,得到
E(0,0)=1 + 63/10=73/10=7.3。
这样就得到了精确解:平均需要73/10次(也就是7.3次)投掷来结束游戏。
备注:内容来源于stack exchange,提问作者Imperator
相关产品推荐
相关产品推荐

