杭州群游科技网站做的魔域,个人网站首页内容,网站建设小结,流程优化一、说明 我最近对与概率有关的问题产生了兴趣。我偶然读到了弗雷德里克莫斯特勒#xff08;Frederick Mosteller#xff09;的《概率论中的五十个具有挑战性的问题与解决方案》#xff09;一书。我认为创建一个系列来讨论这些可能作为面试问题出现的迷人问题会很有趣。每篇… 一、说明 我最近对与概率有关的问题产生了兴趣。我偶然读到了弗雷德里克·莫斯特勒Frederick Mosteller的《概率论中的五十个具有挑战性的问题与解决方案》一书。我认为创建一个系列来讨论这些可能作为面试问题出现的迷人问题会很有趣。每篇文章只有 1 个问题使其成为一个总共有 50 个部分的系列。让我们潜入并激活我们的脑细胞 图片由作者使用 DALL-E 3 提供。 Chuck-a-Luck 是一种赌博游戏经常在嘉年华会和赌场玩。玩家可以投注数字 1、2、3、4、5、6 中的任何一个。掷三个骰子。如果玩家的号码出现在骰子的一、二、三上他将分别获得他原始赌注的一倍、两倍或三倍加上他自己的钱;否则他将失去股份。 问题玩家每单位赌注的预期损失是多少 实际上玩家可以在几个数字上分配赌注但每个这样的赌注都可以被视为一个单独的赌注。 二、问题分析 合乎逻辑的方法是在六个数字中的每一个上放置一个单位赌注导致玩家总共下注 6 个单位。有三种不同的可能情况1三个骰子上的所有数字都不同2骰子上的两个数字完全相同3三个骰子上的所有数字都相同。让我们分别考虑每种情况。 情况1三个骰子上的所有数字都不同。 在这种情况下您从三个中奖号码中赢了三个单位但从三个输号码中损失了三个单位。因此损失为 0 3–3。有多少种不同的方法可以得到三个不同的数字它是 6 x 5 x 4 120 种方式。掷三个骰子的总可能结果是 6 x 6 x 6 216。 因此在所有数字都不同的情况下预期损失为 0 * 120/216 0。 情况2骰子上的两个数字完全相同。 在这种情况下您赢得了三个单位因为您从相同的数字中获得两个单位从单个不同的数字中获得一个单位。但是您从四个 6-2 失败数字中的四个单位中输掉。因此每单位赌注的损失为 1/6 4/6–3/6。有多少种不同的方法可以得到两个相同的数字它是 6 x 5 x 3 90 种方式。 因此在两个数字完全相同的情况下预期损失为 1/6 * 90/216 15/216。 情况3三个骰子上的所有数字都相同。 在这种情况下您赢得了三个单位因为您从相同的数字中获得三个单位。但是您从五个 6-1 个失败数字中的五个单位中输掉了。因此每单位赌注的损失为 2/6 5/6–3/6。有多少种不同的方法可以得到两个相同的数字它只是 6 种方式。 因此在所有三个数字都相同的情况下预期损失为 2/6 * 6/216 1/108。 要计算玩家每单位赌注的预期损失只需将所有三种情况的预期损失相加即可。 结合所有三种情况玩家每单位赌注的预期损失为 0 15/216 1/108 0.079。 三、替代解决方案 另一种方法是假设玩家只在一个数字上放置一个单位赌注。有四种不同的可能情况1玩家的号码没有出现在三个骰子中的任何一个上2玩家的号码出现在一个骰子上3玩家的号码出现在两个骰子上4玩家的号码出现在所有三个骰子上。让我们分别考虑每种情况。 情况1玩家的号码没有出现在三个骰子中的任何一个上。 发生这种情况的概率是 5/6³ 125/216。 情况2玩家的号码出现在一个骰子上。 发生这种情况的概率是 1/6 * 5/6² * 3C1 25/72。 情况3玩家的号码出现在两个骰子上。 发生这种情况的概率是 1/6² * 5/6 * 3C2 5/72。 情况4玩家的号码出现在所有三个骰子上。 发生这种情况的概率为 1/6³ * 3C3 1/216。 通过将概率乘以每种情况的损失我们得到与之前相同的结果如下图所示。 每单位股份的预期损失。 Python 代码 import numpy as npn_trials 10000000
choice np.random.randint(1,7, size (n_trials,1))
rolls np.random.randint(1,7, size (n_trials, 3))
count np.sum(choicerolls, axis1)
mean_loss (np.sum(count0) (-1)*np.sum(count))/n_trials
print(fExpected loss per unit stake: {mean_loss:.3f})# Output:
# Expected loss per unit stake: 0.079 这就是这个运气问题的全部内容。欢迎任何反馈或问题该代码可在我的 Github 上找到。请继续关注本系列的下一部分:)