抽卡概率与期望指计算

如题所述

第1个回答  2022-06-28
跟一个朋友讨论了抽卡概率和期望的问题,平时也不怎么研究“数学问题”,突然来这么一下,也是有点懵逼。之后搜到了这篇帖子https://bbs.nga.cn/read.php?tid=20203748&rand=359,有了些灵感。有几个数值不知道怎么算出来的,也是探索了一段时间,弄懂之后感觉还是挺简单的。记录一下,给像我一样“愚蠢”的有缘人一些灵感。

朋友的想法是,打造装备,每次成功概率递增,计算打造成功的期望。

以图片1中的数据为例,A列就是强化装备的次数,B列就是某次强化装备时的概率(系统设定的),C列就是某次强化装备时的实际概率(条件概率),D列就是强化次数对应的期望,E列就是强化20次的总期望,也就是按照这种概率,玩家强化装备成功的平均次数为5.29次。

实际概率的算法,比如第二次成功的概率不是10%,因为它的成功建立在第一次的失败上,所以是(1-5%)*10%。同样的第三次成功的概率建立在第一次和第二次都失败的基础上,所以是(1-5%)*(1-10%)*15%。以此类推,根据设定的概率得到20次分别对应的实际概率。

期望的算法,则是 次数*其对应的实际概率。总期望就是对各个次数对应的期望的累加。这种算法一定要保证,所有事件(次数)的实际概率的总和为1。如果不为1,简单的累加就不是真实的期望。这里我一开始没想明白,下面用个例子解释一下。

图片2中的事例和数据是比较好理解的,跟图1中的差不多,只不过图2中的概率是恒定不变的,计算起来容易一点。

需要注意的是,计算S人物中奖期望值里,前99抽的概率*抽数都是一样的,代入公式,第100抽的不一样了。第100抽的概率是(1-0.015)^99,并没有像1到99抽那样乘以0.015,是因为,第100抽必定会出,所以应该是(1-0.015)^99*100%。

其次,平均花费的计算困扰了我很久,也是一开始没想明白的地方。

图3是我用excel模拟的10抽内的数据。因为之前计算100抽的期望就是把各个次数的期望相加,就是M列,但是数据对不上,而且也很不合理。经过多次推敲,终于得到10抽内平均花费是5.735的数据。就是用sum(M1:M10)/sum(K1:K10). 因为,平均抽卡数 = 总抽卡数/总人数。

如果总人数是1的话,前10抽的人数就是1*14.027%。K列代表的是实际概率,可以理解为其对应的抽卡次数对应的人数概率。比如,有0.015的玩家抽了1次就抽到了。有0.014775的玩家抽了2次抽到了。所以 0.015*1得到人数,1得到抽卡次数,0.015*1*1得到,这0.015的人抽了几张卡。 0.01477*1得到人数,1得到抽卡次数,0.01477*1*2得到,这0.01477的人抽了几张卡。以此类推。所以,M这列的总和,代表的是,前10抽抽到卡的这些人抽卡的总数。然后总抽卡数/总人数=0.754/0.1402 = 5.375。剩下的几个平均花费也是这么算。图二中46抽内的平均花费应该是算错了的。
相似回答