新闻资讯 一手资讯 新游前瞻 游戏测评 游戏攻略 娱乐八卦 硬件周边 H5新闻 产业新闻
Z 您现在的位置:首页 > 明日方舟 > 正文

《明日方舟》【情报】以数学分析方舟抽卡出货这件事

2021-04-04 09:22:40来源:巴哈姆特发布:heckt0217 (檸檬辣椒咖哩碰)

heckt0217 (柠檬辣椒咖哩碰) #1 2021-03-26 16:07:58
本人第一次发文,难免疏漏或错误,请不吝提出指正
回复及发言请保持理智,或服用理智萃取液后再行观看
板规#3的部分,目前未在板上发现从相同角度分析卡池机率的文

本文欢迎以任何方式传播,传群组、社团、梗图、记忆、背诵皆可,不必注明出处
――一切都是为了拯救更多的生命。
还有钱包。我的钱包。
正文开始
==============================================================================
这文的目的在于分析抽到某特定加倍干员(1张六星)的抽数期望值,可以用作屯抽参考、对现有加倍角的强度和机会成本分析,还有根本上了解明日 quot;歪 quot;舟的本质

先说结论:
解说一下这串数字的意义
表格中,所有的数字单位都是 quot;抽 quot;。单up指的是单六星加倍卡池,如台服现行的「雪落晨心」早露池,三服的42卡池等;限定是半年一次的双六星一限定卡池,如「生五金」、「遗愿焰火」、「月隐晦明」等,我简称为限定池, 的则是长驻角双up轮替,我简称为毒池。
回到上面那张图,可以从期望值那列直接看过去,四捨五入得到各卡池的期望值
单up池不歪,出单up角:95抽
毒池两只都没有,不歪,出up角:一样95抽
毒池只想出其中一只up角:189抽
限定池不歪,出up角:68抽
限定池只想出其中一只up角:135抽
(取自萌娘百科)

(烘焙王 基德)

这是理想的结果,大数法则下的结论。
实世界则会在我们引入常态分布后露出 獠牙

假设各个平行时空的Dr.运气(欧非程度)符合常态分布
→这句话好有喜感我怎幺想到的?
抽单up卡池,68%的Dr.在17~172抽的区间内中奖收工(一个标準差)
95%的Dr.在249抽内中奖收工(两个标準差)
99.7%的Dr.在326抽内中奖收工,哭晕在厕所
的按上表以此类推~

顺便科普一下各卡池的机率,在六星总共2%的机率下,单up加倍角50%,毒池两加倍角分50%,限定池两加倍角分70%,所以...
不要再在双up抽没有的干员了!超毒的好吗,留着抽限定池都能强娶了!
机率上来看啦(茶
双up如果俩干员都没有,跟单up机率上一样,倒是可以安心服用

接下来,让我们再更进一步

0.绪论

前面的数据来的莫名其妙,也没说计算过程,谁敢信?
所以,容我一步步推导
我的机率模型有一个前提,三个假设
前提:抽卡以(A)、(B)两事件分析,(A)事件为「99抽内出六星的抽数期望值
(B)事件为「该卡池出我要的up干员机率
假设1.卡池优待「10抽内必出五星以上」,触发时之机率为六星:五星=0.02:0.98
→六星机率与一般普通抽相同
假设2.A,B两事件
→合理的假设......吗不如说现在默哀大于心死
假设3.双up机率平分
→从大课及数据来看应该正确,不过自由的角不说谁也不知道,我是阿 gt; gt; gt; gt; gt; gt; gt; gt;年

根据假设,总期望值为 quot;A发生且B发生 quot;的期望值,计为EXP(A∩B)=EXP(A)*EXP(B)
============================================================================
先从(A)下手
各抽机率大概算国高中生程度?写个程式,拉拉excel就能解决,我就不算了

把抽数n乘上机率,得各抽分布,如下图
Sum n*p(n) = EXP(n)得期望值
Var(n) = n^2*p(n) - EXP^2(n)得变异数、标準差
这可以用来预测所谓的保底。
左边座标直轴对应长条图,右边座标直轴对应累计概率点,因为都是机率,没有单位
座标横轴对应抽数,单位是 quot;抽 quot;,往上对应长条图是「在这第n抽出六星的机率」,绿点是「到第n抽为止,累计的机率

期望值34.59455494→约35抽
标準差20.92940986
回忆刚刚的无限宇宙Dr.抽卡模型,Dr.们符合常态分布
68%的Dr.在57抽内抽到6星
95%的Dr.在65抽内抽到6星
99.7%的Dr.在71抽内抽内抽到6星
其中,最没用,最有诈欺性的数据是期望值,让我举个例子:一个班级十人,五个高材生,五个小天使。某次考试,五个高材生都考100, 人都考0分,班平均50低于60分,全班留校察看。
这事例没啥意义,只是想说明极端值的影响。
有算过方舟机率的大概知道,第1抽出6星跟第52抽出6星的机率接近,都是0.02左右,可以说是高于 抽。在第1抽的机率高于2~49抽的情况下,平均值易被影响,意义不大。中位数或可成为较好的平均数。
上图中的长条图也可得知,保底在51~65抽触发的机率高于 抽。

理智耗尽,有空继续。

改变一个人,要令他相信,然后将 信仰摧毁,什幺都挽救不了这样的失败者......这世上不该有所谓 quot;命运 quot;
----塔露拉

看较旧的 29 则留言

白嫖都是狗: 03-30 18:27

就像line群有人限定抽到保底直接用换的,也有像我这样送的十连直接出的,都 是 命

男孩子比较舒服: 前天 11:09

红色月亮: 6 小时前

虽然是正解,不过火有点大

t1026257240 (水之江五月) #2 2021-03-26 16:53:31
heckt0217 (柠檬辣椒咖哩碰) #3 2021-03-26 22:32:48
排版,伤眼抱歉,之后会再编辑
首先,感谢各位的阅读,感谢xdtroll及ye两位的疑问,我可能叙述的不够清楚,那我们把帐算完。

方舟抽卡机制:前50抽0.02,50抽内未出六星,每抽增加0.02机率。

第一抽机率:0.02
第二抽机率:0.98*0.02?
不,0.02
第三抽,第四抽,第五抽....直到第50抽,机率都是0.02
在51抽机率上涨之前,每抽 ,不分彼此,0.02

但,我有99抽,抽到1张6星后停止,我会在哪抽抽中?
自此,1张卡“1”的机率,散布在99抽中
第1抽完成的机率:0.02
第2抽完成:0.98*0.02
第二抽包含第一抽失败的机率及 quot;第2抽 quot;抽中的机率
第3抽完成:0.98^2*0.02
第50抽前,含50抽,第n抽的机率为0.98^(n-1)*0.02
目前,哪抽的机率最高?
一样0.02
哪抽成功的机率最高?
第1抽,因为1 gt;0.98,而乘越多0.98,值越小
之后的抽先不谈,重点是
我还没开始抽。
本屑博只在脑中模拟而已。
因为抽了之后,袋子开了,白光来了,成功机率最高的0.02不见了,变成0与1,有与没有
而第二抽,不,现在要叫做下一抽,一样0.02,一样成功率最高, 着你

一个慌神,你发现你仍在罗德岛舰不知名的高台上,背对着你的秘书,开始思考50抽后的世界。

0.02是个有趣的数字
50抽*0.02理应为1
我应该有只六星干员的
哪里出了什幺状况?

51抽后,机率增加,成功机率也增加
51抽的机率是0.04
在第51抽成功的机率是(1-“50抽失败的机率”)*“51抽成功的机率”
可依此类推,碍于 数据、功能,我生不出数据给你,只能请您高抬贵手,打开excel算算看

上面的疑问,你的答案是?
如果你学过微积分,你可以积分1~50抽的面积;如果你打开了excel,你可以用sum做到一样的事

待补

这个数字是
卡池的设计,让你抽到50抽后的可能性大于50抽内结束,保底重製,50抽开抽前,你的确拥有1只六星的期望值,但当你抽了一抽没中,败给了0.02的魔王后,你便不再拥有1只六星的期望值,而是49抽,0.98只六星,接下来
你可能成功了,在某次攻克了0.02的魔王,以勇者或封弊者的名号被传颂着
又或者,失败50次后的你一无所有,灰头土脸的回到家乡。想起父亲遗言中那传说的圣剑,思考要不要去宝地一次
嘛,至少保底的传说不是假的。

再来,是上一篇文的核心概念,期望值
我该期待第几抽出六星?
看了解释,再回去看上面的公式,或许就能理解也说不定...



未完成,收工,下次再见

看较旧的 3 则留言

xdtroll: 03-27 02:56 编辑

所以你的计算’1‘只的机率应该是没错的,但实际上计算机率应该不会这样计算,我猜,不太懂。是这样理解吗?

Timtseng: 03-27 10:11

弱弱的问一下,不连续函数不能积吧,只能用sum

Karkaros: 03-28 14:40 编辑

[timtseng:Timtseng] 或者是说离散函数的积分本来就是加法,回归原本黎曼和的定义

NO3EYES (NO3EYES) #4 2021-03-27 16:50:02
xdtroll
应该说楼主把抽中六星这件事分成「1抽中」~「99抽中」。其中每个「x抽中」都是不一样的事件,但是这99个事件会 share 掉机率和,因为你在一百抽内一定会中奖所以只是分成99种状况讨论。
而主楼说的
「1抽中」六星的机率是因为一抽中0.02
「52抽中」这件事的机率则是0.98^50×0.96×0.06大约为0.02才这幺说的
再者期望值的定义是事件数字×机率再将所有状况总和而来,所以算式是

「1抽中」的1乘以机率0.02 加上
「2抽中」的2乘以机率0.98×0.02加上
....
「99抽中」的99乘以这件事的机率
的总和才是期望值(我没验算过是否与主楼一样只是楼主讲的符合逻辑就相信他XD)

原本想在三楼留言的不小心打太多
楼主的计算蛮清晰的推个
西格纳尔: 03-28 15:30

嘛……对 他把相关事件跟 事件混带着算期望值了,事实上陆服大佬早就算过普池六星期望值是35抽

西格纳尔: 03-28 15:32 编辑

我自己是只做保底机率回归,用机率去推连续抽卡出货率而已,没去算抽数期望值(因为我懒),但结论上来说,跟陆服的结果完全一致。

xdtroll: 03-28 16:40

唔,大概懂了,感谢说明

h86625 (诗怀雅的小白脸) #5 2021-03-28 12:19:47
请问94从哪算来的
a117034130a (五十块的好兄弟) #6 2021-03-29 17:26:02
单up是50%
一个六星期望值在33抽-35抽之间
单up出当期六星期望值不应该在68左右吗
AlfaZinc2 (Alfa) #7 2021-03-29 23:50:54

此文章已由原作者(AlfaZinc2)删除

AlfaZinc2 (Alfa) #8 2021-03-29 23:53:11
若要计算「在第 n 抽时,才抽到所有要抽的六星角色」之机率分布 (n 为正整数,範围从 1 到无限大),这问题本身不容易直接处理,因此我决定先将此机率分布拆解成数个较容易计算出来的机率分布,再将其经由某些运算,叠加成欲求的机率分布

关于「在第 n 抽时,才抽到所有要抽的六星角色」之机率分布,事实上可以被看做 ∑「抽到第 i 个六星时,才抽到所有要抽的六星角色」的机率 *「抽第 n 抽时,才抽到第 i 个六星」之机率分布,其中 i 的範围是从 1 到无限大,n 的範围则随着 i 的不同而有不同,当 i = 1 时,n 的範围是从 1 到 99,当 i = 2 时,n 的範围是从 1 到 198,以此类推 (n 的範围之所以有上界,是因为方舟的卡池有六星保底机制)。根据上面的式子,若能求出 i 在各值时「抽到第 i 个六星时,才抽到所有要抽的六星角色」的机率与「抽第 n 抽时,才抽到第 i 个六星」的机率分布,即可计算出「在第 n 抽时,才抽到所有要抽的六星角色」之机率分布

然而在实际计算时,由于 i 的範围没有上界,因此需要计算出无限多个机率分布,才有办法计算出欲求的机率分布,但这是不可能的,所以需要设定一个 i 的计算上限来 计算量,使得计算变成可行。好消息是当 i 大于一定值后,其所生成之机率分布的面积将趋近于 0,也就是说在实际计算时,可以将 i 大于一定值的状况省略

接下来就是实作的部分了,这边以双 up 卡池两个 up 六星都要抽到的情况当作範例,下面是 MATLAB 程式码

close all; clear; clc;
p= #91;0.25 0.25 #93;; %目标机率占六星总机率的比例
n=length(p);
up_bound=1000; %作图时的上限
m=30; %六星的最大抽取数
k=1:m;
y0=zeros(1,m);
for i=1:n
x=sum(Combination(p,i),2);
y0=y0+(-1)^(i+1)*sum(x.*(1-x).^(k-1),1);
endfor
figure(1)
plot(k,y0, #039;ob #039;)
%print -dpng #039;01.png #039;

y1= #91; #93;;
for i=1:99
if i lt;=50
p=0.02*0.98^(i-1);
y1= #91;y1 p #93;;
else
p=0.02*(i-49);
for j=1:i-51
p=p*(0.98-0.02*j);
endfor
p=p*0.98^50;
y1= #91;y1 p #93;;
endif
endfor
figure(2)
plot(1:99,y1, #039;- #039;)
hold on
%print -dpng #039;02-1.png #039;

Y0=zeros(1,99*m);
Y0(1:99)=y1*y0(1);
y2=y1;
for i=2:m
M=y1 #039;*y2;
y2=zeros(1,98*i+1);
for j=1:99
y2(j:j+98*(i-1))=y2(j:j+98*(i-1))+M(j,:);
endfor
Y0(i:99*i)=Y0(i:99*i)+y2*y0(i);
figure(2)
plot(i:99*i,y2, #039;- #039;)
endfor
%print -dpng #039;02-2.png #039;

figure(3)
plot(1:min(up_bound,99*m),Y0(1:min(up_bound,99*m)), #039;-b #039;)
hold on
%print -dpng #039;03-1.png #039;

Y1=zeros(1,99*m);
for i=1:99*m
Y1(i)=sum(Y0(1:i));
endfor
figure(4)
plot(1:min(up_bound,99*m),Y1(1:min(up_bound,99*m)), #039;-b #039;)
hold on
%print -dpng #039;04-1.png #039;

然后是程式的执行结果

「抽到第 i 个六星时,才抽到所有要抽的六星角色」的机率分布
「抽第 n 抽时,才抽到第 i 个六星」的机率分布,最左边的图形是 i = 1 时的机率分布,向右依次是 i = 2、3、4、... 时的机率分布
「在第 n 抽时,才抽到所有要抽的六星角色」的机率分布
下面是在各种状况下,各机率分布的一些统计量
我这边需要说明一下,由于程式计算出的机率分布与实际的机率分布间会有些微差异,因此这些计算出的统计量也会与实际的统计量有些微差异

我还另外做了一个抽卡模拟器,生成了一千万笔随机样本,用这些样本去估计机率分布函数在各点的值,下面是部分程式码

y0= #91; #93;;
l=length(p2);
for i=1:n
C=0; %总抽卡数
G=0; %连续未抽到六星的次数
cop=zeros(1,l); %是否抽到指定的六星
while min(cop)==0
C=C+1;
G=G+1;
r=rand(1);
if G lt;=50 r lt;p1
for j=1:l
if r gt;=p1*sum(p2(1:j-1)) r lt;p1*sum(p2(1:j))
cop(j)=1;
break
endif
endfor
G=0;
elseif G gt;50 r lt;p1+0.02*(G-50)
for j=1:l
if r gt;=(p1+0.02*(G-50))*sum(p2(1:j-1)) r lt;(p1+0.02*(G-50))*sum(p2(1:j))
cop(j)=1;
break
endif
endfor
G=0;
endif
endwhile
y0= #91;y0 C #93;;
endfor

以及样本估计出的机率分布

看较旧的 2 则留言

乐路: 03-30 14:36

你这好看多了,一楼我看了半天(量词)还是看不懂

乐路: 03-30 14:41

应用上,跟我理解的差不多:大部分的人35抽出货;单吊1pu三次出货内中(约100抽);双PU毕业184抽内。换句话说抽超过的人已经脸黑,最好停止留待下次再抽,以免影响游戏体验

Alfa: 03-30 14:51

[bill770513:乐路] 感谢,不过我这边没有去计算期望值、中位数、标準差之类的统计量,我之后再补上好了,要先等我下班回家w

yingru (夏意) #9 2021-03-30 00:41:52
【 】自己写的DC抽卡机器人

这是我半年多以前写的碗糕


我本来是还想要写个全图鉴模拟啦,不过弄完算1000次抽抽的指令之后就耍废了。
然后1楼你跑去算的那个不是期望值,而是分布中位。
我上面这个平均抽数才是期望值。
shawbshawb: 03-30 12:34

EXP是期望值没错~

乐路: 03-30 13:15

[shawb:shawbshawb]到底是要纯数统的EXP还是机会成本分析的EV?一楼已经搞混了

kilito8254 (Kirito) #10 2021-03-30 17:45:28
「以数学分析方舟抽卡出货这件事」的留言: 算这个也没用
「玄学抽卡」的留言: 讚啦
难怪会有这种文 = gt;「史特尔特大爆死的玻璃心半新手玩家的诉苦」

看较旧的 7 则留言

KAStill: 03-30 22:36 编辑

[kilito8254:Kirito]好这样我懂你意思了,存抽确实有用没错,我还满常课的所以没想到存抽,我都是加码W

乐路: 前天 10:43 编辑

说 的,我是台服开服玩家,一开始就锁定要抽阿(不用怀疑)所以一直存抽,中间大概只用掉50抽吧,结果年池是梭哈162抽才毕业的,如果我不存那就课定了

乐路: 前天 10:44 编辑

然后发现无课不容易存抽,接下来目标是W,首储优惠我都还没用掉,但开始课小月卡存,导致我煌、风笛、莱恩哈特通通不敢抽,最多就10抽试手气而已

最新礼包

Copyright © 2017-2018 www.thisisdb.com All rights reserved DB游戏网 版权所有

备案号:蜀ICP备15007551号-2 DB游戏网

DB游戏网手机版