从无限系列滚动中选择的骰子的平均值

机器算法验证 骰子
2022-03-27 00:09:29

如果我无限次掷一对骰子,并且总是选择两者中较高的值,那么最高值的预期平均值会超过 3.5 吗?

似乎一定是因为如果我掷一百万个骰子,并且每次都选择最高的值,那么每次掷骰子都可以得到 6 的可能性是压倒性的。因此,预期的平均值必须类似于 5.999999999999...

但是,我似乎无法弄清楚仅使用 2 个骰子的示例的预期值是多少。有人可以帮我找到一个号码吗?它会勉强超过3.5吗?这甚至是可以计算的吗?

4个回答

没有必要为此使用模拟,一般情况很容易分析。n是骰子的数量,X是掷n 个X骰子时的最大掷数n

由此得出 并且通常 for在 1 和 6 之间。因此我们可以得到

P(X1)=(16)n
P(Xk)=(k6)n
k
P(X=k)=P(xk)P(xk1)=(k6)n(k16)n.

所以我们可以写出封闭形式的概率分布。执行此操作,您将获得预期值 4.472222。n=2

我建议只通过简单的案例来查看答案。

掷两个骰子的可能结果会生成一个 6x6 矩阵:

[(1,1)(1,2)...(2,1)(2,2)...(3,1)(3,2)......]

总和的期望值为7。这种情况是因为卷是相同的独立图纸,因此可以将它们相加。掷出一个公平的立方体骰子的期望是 3.5。

但是你问的是最大化。现在让我们列举掷两个骰子的最大化。同样,它是一个 6x6 矩阵:

[12...22...33......]

计算期望值,如下所示:

E[x]=Σ(xP(x))=1/36(1)+1/36(2)+...+1/36(6)4.47

请注意,次骰子(在概率意义上)相当于掷一次骰子次。因此,对于滚动骰子,您可以看到矩阵如何变化以及由此产生的期望如何变化。nnn

也可以模拟实验。当枚举很困难(比如掷 3 个骰子)时,这种方法很有用。

# fix the seed for reproducibility
set.seed(123)

# simulate pair of dice
rolls = matrix(sample(1:6, 2000000, replace=T), ncol=2)

# compute expected value
mean(apply(rolls, 1, max))
[1] 4.471531

假设 36 种组合中的每一种都具有相等的概率,我们只需将 36 种组合中的每一种的值相加并除以 36 即可得到平均值:

  1. 1 种可能性:11
  2. 3 种可能性:12、21、22
  3. 5 种可能性:13、23、31、32、33
  4. 7 种可能性:14、24、34、41、42、43、44
  5. 9 种可能性:15、25、35、45、51、52、53、54、55
  6. 11 种可能性:16、26、36、46、56、61、62、63、64、65、66

(1*1 + 2*3 + 3*5 + 4*7 + 5*9 + 6*11) / 36 = 4.47222..