DPS予想2
2日前の日記で、総ダメージの予想値を予め計算しておき、実際の実験と比較するというのを書いた。その計算部分について書いてみる。
総ダメージの予想値の計算法
チェインをセイントスマッシュ(以下SS)のみセットしていたので、通常攻撃が一定間隔で出て、その間にSSが挟まったり、無かったりという感じになる。
その場合SSの出る回数は、統計学用語で言うところの「二項分布」というものになる。
それで、ウィキの途中よく分からない部分は飛ばして下の方を見ると「95%信頼区間」と言うのがある。「95%の確率でその範囲に収まります」という意味らしい。
なので、この式を使ってプログラムを書いてみるとこんな感じ
sec=2*60 # 実験時間 (sec) d1=113 # 通常攻撃ダメ d2=263*2 # SSダメ q=0.15*1.3 # SS 発動率 sp=0 # 攻撃速度上昇 n= (sec/(1.3*13/16/(1+sp*0.01))).to_i e=Math::sqrt(q*(1-q)/n) tmin95=(d1+(d2-d1)*(q-2*e))*n tmax95=(d1+(d2-d1)*(q+2*e))*n dmin95=tmin95/sec dmax95=tmax95/sec print "総ダメ95%信頼区間: #{tmin95.to_i} - #{tmax95.to_i}"