掷骰子的几率计算题

STEM版,合并数学,物理,化学,科学,工程,机械。不包括生物、医学相关,和计算机相关内容。

版主: verdeliteTheMatrix

回复
头像
YWY(夜未央)
论坛元老
论坛元老
2023-24年度十大优秀网友
帖子互动: 1302
帖子: 14133
注册时间: 2022年 7月 22日 17:25

Re: 掷骰子的几率计算题

帖子 YWY(夜未央) »

CalCat 写了: 2023年 1月 31日 00:59 那你前面说过,你的模拟结果是7:6, 不知道什么意思?
玩1300000把游戏,大概700000把以12结束,大概600000把以双连7结束,7:6的比例。这里的“把”,是一直投直到投出结果为一把。当然,每一把里,还可以谈一共投了几次。
持仓抄底锁利,你钱你定
看牛观猪喊熊,自娱自乐
股市变幻莫测,不作不死
赌途曲折无常,吃枣药丸
头像
CalCat(加州猫)楼主
著名点评
著名点评
帖子互动: 460
帖子: 4649
注册时间: 2022年 7月 23日 17:29

Re: 掷骰子的几率计算题

帖子 CalCat(加州猫)楼主 »

YWY 写了: 2023年 1月 31日 01:03 玩1300000把游戏,大概700000把以12结束,大概600000把以双连7结束,7:6的比例。这里的“把”,是一直投直到投出结果为一把。当然,每一把里,还可以谈一共投了几次。
你不就是我纠结的地方吗?如果几率的比例是7:6,那么平均投掷次数的比例应该是6:7才合理。难道我错的离谱了?
头像
(ヅ)
论坛支柱
论坛支柱
帖子互动: 544
帖子: 11677
注册时间: 2022年 8月 21日 14:20

Re: 掷骰子的几率计算题

帖子 (ヅ) »

CalCat 写了: 2023年 1月 31日 01:10 你不就是我纠结的地方吗?如果几率的比例是7:6,那么平均投掷次数的比例应该是6:7才合理。难道我错的离谱了?
投掷次数是计算absorbing markov chain的time until absorption

参考https://en.wikipedia.org/wiki/Discrete_phase-type_distribution
头像
CalCat(加州猫)楼主
著名点评
著名点评
帖子互动: 460
帖子: 4649
注册时间: 2022年 7月 23日 17:29

Re: 掷骰子的几率计算题

帖子 CalCat(加州猫)楼主 »

(ヅ) 写了: 2023年 1月 31日 01:14 投掷次数是计算absorbing markov chain的time until absorption

参考https://en.wikipedia.org/wiki/Discrete_phase-type_distribution
Thank you! I'll read it then go sleep. we finally have a conclusion. I'm glad.
meiyoumajia(没有马甲)
论坛元老
论坛元老
帖子互动: 56
帖子: 17338
注册时间: 2022年 7月 22日 15:16
来自: 宇宙

Re: 掷骰子的几率计算题

帖子 meiyoumajia(没有马甲) »

YWY 写了: 2023年 1月 30日 21:30 我上面的1435/36 = 39.861,是在投掷骰子时就排除和等于12的情形。而(据我的理解)你想要的是,玩N次(N非常大),每次直到出现12或双连7为止,这样你有N个数据点,每个数据点都有次数;然后分别加“不出现12”和“不出现双连7”的限定,找出两组子数据,求这两组子数据的平均长度。

先看总数据,设定就是一直投一直投,直到投出连续两次7或者一次12为止,谁先出现都算,出现了就不再投了,求投掷次数的平均值(期望值)。在此设定下,我得到E = 1512/78 = 19.384615384615,这是不加限定的平均次数。大家把把关,viewtopic.php?p=720205#p720205

如果上面的平均值对的话,那么分别加“不出现12”和“不出现双连7”的限定后的两组子数据,平均次数应该在19.384615附近,因为你要的两个平均值,用7/13和6/13加权平均的话,就应该得到19.384615。

大家一起讨论,我也在学习中。
楼主首先还是应该把他想要考虑的真实情况想清楚,否则我(像先前一样)得猜他想问的是什么。
也就是说必须尽量严谨些。

关于“之前不出现12”和“不让”的用法其实是会让人难理解的。但我最终还是搞清楚了想描述的是什么。

如我之前所说,概率描述的是很大数量的试验情况。
比如投13百万轮(从第一投到以7 7 或12 结束为1轮。1轮例:第一次7,然后 3, 最后12。),在时间顺序上“交替”/混杂出现以相互排斥的12 或 7 7结束的次数,依次差不多有7百万轮或六百万轮左右。
在这种整体实际情况下,谈论一个结束序列最好用“以x结束”,而对此序列不要用“之前y不出现”,以避免歧义。我之前就与YWY聊了几次,好像不是一会儿。后来我明白了意思,把那些讨论尽量删了。(也就是说,之前我只“认准”这种描述:x结束系列里不出现y。)

还有就是要检查pk的总和是否是1, 6/13, 或7/13。最后答案应该用weighted sum/(pk的总和)。

对以7 7 结束而不是以12结束的情况,我得出的是19+11/13。也就是19.84615384615
头像
CalCat(加州猫)楼主
著名点评
著名点评
帖子互动: 460
帖子: 4649
注册时间: 2022年 7月 23日 17:29

Re: 掷骰子的几率计算题

帖子 CalCat(加州猫)楼主 »

meiyoumajia 写了: 2023年 1月 31日 02:37 对以7 7 结束而不是以12结束的情况,我得出的是19+11/13。也就是19.84615384615
如果过程不长, 就贴个演算的详细过程。非常感谢你的帮助, 使得我的许多迷惑能够得到放置下来。
meiyoumajia(没有马甲)
论坛元老
论坛元老
帖子互动: 56
帖子: 17338
注册时间: 2022年 7月 22日 15:16
来自: 宇宙

Re: 掷骰子的几率计算题

帖子 meiyoumajia(没有马甲) »

CalCat 写了: 2023年 1月 31日 10:08 如果过程不长, 就贴个演算的详细过程。非常感谢你的帮助, 使得我的许多迷惑能够得到放置下来。
就像前面我对42那个结果列过的过程那样做。
但那个其实可以简化。按下面的方式,但我就不列了。

只列你要的这个:
利用p1 = 0
p2 = 1/36
p(k) = 6/36* 29/36* p(k-2) + 29/36*p(k-1), for k > 2
sum_all_Ks p(k) = 6/13

e- p1 - 2 p2
= 3*1/6*29/36 * p1 +
29/36 *1/6* (7*2 * + 8 )* p2 +
29/36 *1/6* (7*3 * + 8 )* p3 +
...+
29/36 *1/6* (7*(k-1) * + 8 )* p(k-1)
+ ...
=
29/36 * 1/6 * 3* p1 +
29/36 * 1/6*(7*(e - p1) + 8 * (6/13-p1))
=29/36 * 1/6*(7*e + 8 * 6/13)

13/6/36*e = 2 p2+ 29/36 * 1/6 * 8 * 6/13

13/6*e = 2 + 29* 1/6 * 8 *6/13
=19+11/13
meiyoumajia(没有马甲)
论坛元老
论坛元老
帖子互动: 56
帖子: 17338
注册时间: 2022年 7月 22日 15:16
来自: 宇宙

Re: 掷骰子的几率计算题

帖子 meiyoumajia(没有马甲) »

类似地可以算以12结束的情况

p1 = 1/36
p2 = 1/36 * 35/36
pk的总和是 7/13

13/7 * e = 18+ 90/91


而对相互排斥的或以第一个 7 7 或以 第一个 12结束,
e = 19+ 5/13
也就是YWY的结果
也是前面两个结果的权重值(这也验证了在推算过程中没有出错)。
meiyoumajia(没有马甲)
论坛元老
论坛元老
帖子互动: 56
帖子: 17338
注册时间: 2022年 7月 22日 15:16
来自: 宇宙

Re: 掷骰子的几率计算题

帖子 meiyoumajia(没有马甲) »

前两天算出了
只以7 7结束情况的平均次数是42。(相当于:前面那些以12结束的子系列中每个都要在那基础上“继续”到出现第一个7 7。)

现在算另外一种情况:不管7怎样,只以第一个12结束。

p1= 1/36
pk= p1* (35/36)^(k-1)

e= p1 + 2 p2 + ... + k p(k) + ...
=1/p1
= 36次

(做e和(35/36)e的比较可得)
上次由 meiyoumajia 在 2023年 1月 31日 14:02 修改。
meiyoumajia(没有马甲)
论坛元老
论坛元老
帖子互动: 56
帖子: 17338
注册时间: 2022年 7月 22日 15:16
来自: 宇宙

Re: 掷骰子的几率计算题

帖子 meiyoumajia(没有马甲) »

还有1个是每轮只投两次(第一次投两个dice,然后第二次也是最后一次投两个dice)。
以7 7结束平均需要做36轮。


这样下来,能够比较的几个可操作或者实际可出现的情况就都有了结果,可以做点比较。
meiyoumajia(没有马甲)
论坛元老
论坛元老
帖子互动: 56
帖子: 17338
注册时间: 2022年 7月 22日 15:16
来自: 宇宙

Re: 掷骰子的几率计算题

帖子 meiyoumajia(没有马甲) »

meiyoumajia 写了: 2023年 1月 31日 12:06 前两天算出了
只以7 7结束情况的平均次数是42。(相当于:前面那些以12结束的子系列中每个都要在那基础上“继续”到出现第一个7 7。)

现在算另外一种情况:不管7怎样,只以第一个12结束。

p1= 1/36
pk= p1* (35/36)^(k-1)

e= p1 + 2 p2 + ... + k p(k) + ...
= 1/p1
= 36次

(做e和(35/36)e的比较可得)
对前面的情况
求出p(k)的具体解析式后也可以算出那些答案,但是比YWY的用E的递推公式要麻烦。
方法应该与刚刚对以(不管7)第一次12出现时断投的演算相同,只不过要得到每个答案都应该有两个那样的求和项。
上次由 meiyoumajia 在 2023年 1月 31日 14:04 修改。
头像
(ヅ)
论坛支柱
论坛支柱
帖子互动: 544
帖子: 11677
注册时间: 2022年 8月 21日 14:20

Re: 掷骰子的几率计算题

帖子 (ヅ) »

meiyoumajia 写了: 2023年 1月 31日 12:06 前两天算出了
只以7 7结束情况的平均次数是42。(相当于:前面那些以12结束的子系列中每个都要在那基础上“继续”到出现第一个7 7。)

现在算另外一种情况:不管7怎样,只以第一个12结束。

p1= 1/36
pk= p1* (35/36)^(k-1)

e= p1 + 2 p2 + ... + k p(k) + ...
= 37次

(做e和(35/36)e的比较可得)
我昨天模拟结果是42和36。一会儿再试试
meiyoumajia(没有马甲)
论坛元老
论坛元老
帖子互动: 56
帖子: 17338
注册时间: 2022年 7月 22日 15:16
来自: 宇宙

Re: 掷骰子的几率计算题

帖子 meiyoumajia(没有马甲) »

(ヅ) 写了: 2023年 1月 31日 13:47 我昨天模拟结果是42和36。一会儿再试试
你是对的。
确实是36。

p1=1/36
r = 1- p1 = 35/36
e-r*e = p1*(1+r+r^2+...) = p1*1/(1-r)
e = p1/(1-r)^2 = 1/p1 = 36
很有趣
meiyoumajia(没有马甲)
论坛元老
论坛元老
帖子互动: 56
帖子: 17338
注册时间: 2022年 7月 22日 15:16
来自: 宇宙

Re: 掷骰子的几率计算题

帖子 meiyoumajia(没有马甲) »

meiyoumajia 写了: 2023年 1月 31日 14:03 你是对的。
确实是36。

p1=1/36
r = 1- p1 = 35/36
e-r*e = p1*(1+r+r^2+...) = p1*1/(1-r)
e = p1/(1-r)^2 = 1/p1 = 36
很有趣

e = 1/p对其它的任何
0 0 0 。。。1 (终结/结束的子事件与任何序列中任何其它子事件完全抵触而且完全互补)性质的问题
都成立

比如,以(不管任何其它dice_sum值,也就是从2到12之间除了7以外的10个数中的任何1个)第一个7结束
e = 1/(6/36) = 6

对三个dice一起投。。。也是
换成其它面体的dice,也是
换成扑克牌的某种情况,也是
头像
YWY(夜未央)
论坛元老
论坛元老
2023-24年度十大优秀网友
帖子互动: 1302
帖子: 14133
注册时间: 2022年 7月 22日 17:25

Re: 掷骰子的几率计算题

帖子 YWY(夜未央) »

YWY 写了: 2023年 1月 29日 11:52 你问了几个问题,但却没问“一直投掷两个骰子直到出现和为12”(不管之前7出现与否)的情况。这个情形下,p(n) = (1/36)(35/36)^{n-1} for all n > 0,投掷次数的期望值为E = 1p(1) + 2p(2) + ... = 36。不知这是不是你心念已久的结果。
meiyoumajia 写了: 2023年 1月 31日 14:40 e = 1/p对其它的任何
0 0 0 。。。1 (终结/结束的子事件与任何序列中任何其它子事件完全抵触而且完全互补)性质的问题
都成立

比如,以(不管任何其它dice_sum值,也就是从2到12之间除了7以外的10个数中的任何1个)第一个7结束
e = 1/(6/36) = 6

对三个dice一起投。。。也是
换成其它面体的dice,也是
换成扑克牌的某种情况,也是
这是geometric distribution p(i) = p (1-p)^{i-1},期望值是 E = 1/p。
持仓抄底锁利,你钱你定
看牛观猪喊熊,自娱自乐
股市变幻莫测,不作不死
赌途曲折无常,吃枣药丸
meiyoumajia(没有马甲)
论坛元老
论坛元老
帖子互动: 56
帖子: 17338
注册时间: 2022年 7月 22日 15:16
来自: 宇宙

Re: 掷骰子的几率计算题

帖子 meiyoumajia(没有马甲) »

meiyoumajia 写了: 2023年 1月 31日 12:06 前两天算出了
只以7 7结束情况的平均次数是42。(相当于:前面那些以12结束的子系列中每个都要在那基础上“继续”到出现第一个7 7。)
依此可以验证上述3个相关答案是自洽的。

L =
6/13 * (19+11/13)
+
7/13 * ((18+90/91) + L)

L = (19+11/13) + (7/13)/(6/13) * (18+90/91)
= 42
头像
(ヅ)
论坛支柱
论坛支柱
帖子互动: 544
帖子: 11677
注册时间: 2022年 8月 21日 14:20

Re: 掷骰子的几率计算题

帖子 (ヅ) »

这个题目应该是可以阐述成一个典型的DTMC,然后用标准解法就可以了

(俺学的不好)
头像
CalCat(加州猫)楼主
著名点评
著名点评
帖子互动: 460
帖子: 4649
注册时间: 2022年 7月 23日 17:29

Re: 掷骰子的几率计算题

帖子 CalCat(加州猫)楼主 »

meiyoumajia 写了: 2023年 1月 31日 11:31 就像前面我对42那个结果列过的过程那样做。
但那个其实可以简化。按下面的方式,但我就不列了。

只列你要的这个:
利用p1 = 0
p2 = 1/36
p(k) = 6/36* 29/36* p(k-2) + 29/36*p(k-1), for k > 2
sum_all_Ks p(k) = 6/13

e- p1 - 2 p2
= 3*1/6*29/36 * p1 +
29/36 *1/6* (7*2 * + 8 )* p2 +
29/36 *1/6* (7*3 * + 8 )* p3 +
...+
29/36 *1/6* (7*(k-1) * + 8 )* p(k-1)
+ ...
=
29/36 * 1/6 * 3* p1 +
29/36 * 1/6*(7*(e - p1) + 8 * (6/13-p1))
=29/36 * 1/6*(7*e + 8 * 6/13)

13/6/36*e = 2 p2+ 29/36 * 1/6 * 8 * 6/13

13/6*e = 2 + 29* 1/6 * 8 *6/13
=19+11/13
Excellent! Thank you.
头像
CalCat(加州猫)楼主
著名点评
著名点评
帖子互动: 460
帖子: 4649
注册时间: 2022年 7月 23日 17:29

Re: 掷骰子的几率计算题

帖子 CalCat(加州猫)楼主 »

(ヅ) 写了: 2023年 1月 31日 20:47 这个题目应该是可以阐述成一个典型的DTMC,然后用标准解法就可以了

(俺学的不好)
想从你那里再学习点编程技能, 好在我以后可以自己搞
模拟。 我的编程技能只有国内学过的Fortran, 现在想开始学点新的。你用的是什么方法? 让我先了解一下。
头像
(ヅ)
论坛支柱
论坛支柱
帖子互动: 544
帖子: 11677
注册时间: 2022年 8月 21日 14:20

Re: 掷骰子的几率计算题

帖子 (ヅ) »

CalCat 写了: 2023年 1月 31日 22:14 想从你那里再学习点编程技能, 好在我以后可以自己搞
模拟。 我的编程技能只有国内学过的Fortran, 现在想开始学点新的。你用的是什么方法? 让我先了解一下。
用你的google登录colab,把code copy paste进去跑一遍,看懂在干啥,然后改呗

这样可以迅速上手
回复

回到 “STEM”