6点法

昨日の日記で、
「Lv6ファーストブロウのスキル倍率は1.35」「筋力9,10,11で
スキル加算値は、9.52, 9.80, 10.06」と書いた。

これらの値は、ブログに書いていない多くの測定結果から得たもの。
けれど、今日は逆に「なるべく少ないデータで、上の数値についての説得力のある証拠をそろえる」方法を考えてみる。

以前述べた「境界テスト」の応用で、6パターンの測定で、証拠をそろえることが出来そう。それはこんな感じ。

Step1

まずは、4つのデータから、筋力10の場合に、スキル倍率Sa=1.35を立証してみる。

考え方としては
「攻撃力高め&四捨五入でギリギリ上げられるもの」
「攻撃力低め&四捨五入でギリギリ下げられるもの」
「攻撃力高め&四捨五入でギリギリ下げられるもの」
「攻撃力低め&四捨五入でギリギリ上げられるもの」
という4タイプのデータを用意する。

筋力10、基礎攻撃力71、スキル攻撃力上昇50の場合にやってみたのがこれ。

指輪 攻撃力増 攻撃力 スキ攻予測値 スキ攻実測値
+4.0 50% 126.0 255.5 256
+8.5 -55% 40.068 139.4918 139
+6.0 65% 142.296 277.4996 277
+1.0 -65% 28.224 123.5024 124

予想値の四捨五入が実測値に一致していることが確かめられる。さらに1つめと2つめから
Sa*1.12*((71+4.0)*1.50+50)+Sb >= 255.5
Sa*1.12*((71+8.5)*0.45+50)+Sb < 139.5
という不等式が分かり、引き算すると
Sa*85.932 > 85.932
となる。ここからこんな式が出る。
Sa > 1.3499045757110273
同じように3つめと4つめの結果から
Sa*1.12*((71+6.0)*1.65+50)+Sb < 277.5
Sa*1.12*((71+1.0)*0.35+50)+Sb >=123.5
が分かり、引き算すると
Sa*114.072 < 154.0
となる。ここから
Sa < 1.3500245459008344
となる。
まとめると
1.349904 < Sa < 1.350025
と出る。なので、有効数字5桁の精度で Sa=1.35と言ってよさそう。

Step 2

次にSa=1.35と仮定して、Sb=9.8となる証拠をそろえてみたい。

さっきと同じく「四捨五入でギリギリ上がるもの」「四捨五入でギリギリ下がるもの」を用意して

指輪 攻撃力増 攻撃力 スキ攻予測値 スキ攻実測値
+4.0 50% 126.0 255.5 256
+6.0 65% 142.296 277.4996 277

1つめのデータから

1.35*1.12*((71+4.0)*1.5+50)+Sb >=255.5

という式が出て

Sb >= 9.8

と分かる。2つめのデータから

1.35*1.12*((71+6.0)*1.65+50)+Sb < 277.5

という式が分かり

Sb < 9.8004

と分かる。なので

9.8 <= Sb < 9.8004

となり、これで Sb=9.8と言ってよさそう。

まとめ

4つのデータからSaの値を決め、さらに2つのデータからSbの値を決められる。
なので、6つのデータでSa,Sbを決められると言える。この方法で、今回どちらも有効数字5桁相当の証拠をそろえることが出来た。