上振れ/下振れ確率論Ⅰ(単位2)

当記事はこの記事は「SBL Advent Calender」の12月21日の記事になります。リンク→https://adventar.org/calendars/6477
ですが、なんと完成しておりません!(すまん)
来週までには完成させる予定なのでその時にまた来てください・・・。
(追記:12月28日、完成)

「BBLは運ゲーである。」

というのは少々言い過ぎと思う方もいらっしゃると思いますが、少なくとも運の一面があること、ときに運に大きく左右されることがあることは、否定し難いものとして理解頂けるものと思います。
初期値、成長型、練習の値のブレ、BBLならグキや小AP、競馬や投資も当てはまりますし、果ては一試合における結果においても・・・・・・。
ゲーム内の実に多くのことが、「自分ではどうしようもないこと」=「運」によって左右されます。
我々はその運を意図的に操ることはできません。しかし、運についての情報が全く無いという訳ではありません。それこそが「確率」と「統計」であります。
本論においては、「上振れ/下振れ確率論Ⅰ」と称し、主にBBL(SBL)における「上振れ/下振れ」について、確率的な観点から話していこうと思います。

注意1:
著者は根っからの理系人間であり、そのため多少の数学的な要素、及び専門用語が含まれる。できるだけ理解しやすいような解説を心がけているものの、どうしても難しいと感じる部分もあるかもしれません。また、その逆に、分かりやすさ優先によって厳密性に欠ける部分もあるかもしれません。その辺は許してください。


【乱数と人間の心理の話】


乱数とはランダムな数のことであり、ゲームにおいて運要素を決定づけるものと考えてよいでしょう。(真の)乱数には「無作為性(ランダムである)」「予測不可能性(次の値が予測できない)」「再現不可能性(再現できない)」という特徴があります。もっとも、コンピュータにおいては乱数を確定的な計算(プログラム)によって導くため、真の乱数ではない(擬似乱数)であることがほとんどです(注1)。
とはいえ、擬似乱数であったとしても赤天狗がわざわざ「質の悪い疑似乱数生成器(注2)」でも使わない限り、我々にとってはランダムに見えると思います。
ここで厄介なのは、むしろ「人間の心理」の方です。あなたはゲーム(BBLに限らず)をやっていて「偏っている」「誰か(運営)によって操作されている」と思ったことはありませんか?
BBLで言えば、やたらイマイチが多い、なんか下振ればっかり引く、好きでない成長型が続く、逆にやたら集中しまくる、やたら衰えが緩やかである・・・など。
ゲームをやればやるほど「本当にランダムなのか?」と疑いたくなるような事象に出会うことがあると思います。
これは我々の考える「ランダム」と実際に起こる「ランダム」にいささかの乖離があることが原因です。
我々は、どうしても「ランダム」=「完全にバラけている」と判断しがちです。それは、たとえば
・早熟が何連続で続いたりすれば、さすがに次は早熟は出ないだろう
・不思議な水に何連敗もしていれば、さすがに次は成功するだろう
・ここのところ下振れ(上振れ)が続いたから、そろそろ上振れ(下振れ)するだろう
などが挙げられます。しかし、実際のランダムというのは以前の結果に全く依存しません。つまり、何度も早熟を引く人であっても、全く早熟を引いていない人であっても、次に早熟を引く確率は同じという訳です。
さらに言えば、人間の記憶(認知)の部分もあると考えられます。多くの(我々の考える)ランダム(っぽい)結果は特に変哲もないため印象に残りにくく、我々が「偏っている」と感じるような結果は印象に残りやすい(特に低確率パターンであったり、相当に損(得)をするような結果である場合はなおのこと)。

私は「確率は残酷だ」と思います。確率は忖度してくれないのです。「早熟をたくさん引いたから次は2強にしてあげよう」みたいな慈悲がありません。ただ逆に「2強をたくさん引いたから次は早熟な」のような意地悪もないわけですが。確率はただ静かに佇んでいるだけなのです。その確率を見てやいのやいのと騒いでるのは我々人間の方なのです。

ちなみに、例えば「前回出た成長型は出ないようにする」とか「前年度(まで)の能力とそれに対する成績に応じて、今年度の能力に補正をかける」みたいなことを行うことで、システムの面から恣意性を設けて確率的な要素を減らすことは可能ではあります。もっともこれらは結局運営である赤天狗がするかしないかの話なので、我々にどうこうできる話ではないかもしれませんが・・・。

【大数の法則】


この法則を聞いたことはある方はどれぐらいいらっしゃるのでしょうか?
大数の法則は確率論・統計学における基本定理の一つとされています(注3)。
ざっくり語ると、大数の法則とは「(独立同一分布において)、十分に大きな試行回数を取れば、試行の平均(「標本平均」と呼ぶ)は、真の平均(「母平均」と呼ぶ)に限りなく近づく」という意味です。
ただ、我々の行う試行回数程度で、標本平均が母平均にほぼ一致するまで近づくことはないでしょう。しかしながら「回数を重ねれば、標本平均は母平均に近づく」ということ自体を主張することは可能です。
ここで、キーとなるのは以下の3つです。

・試行回数
・標本平均と母平均との誤差
・その誤差で収まる確率

例えば
・「標本平均と母平均との誤差が±1%以内で収まる確率が95%以上になるためにはどれくらいの試行回数が必要か?」
・「試行回数10回のとき、標本平均と母平均との誤差をいくつにすれば、その誤差以内に収まる確率が95%以上になるのか?」
・「試行回数10回のとき、標本平均と母平均との誤差±1%以内で収まる確率は何%か?」

といったことを考えることができます。

たとえば、不思議な水を10回行うこととしましょう。ただし不思議な水の成功確率は50%とします

0回成功:0.10%
1回成功:0.98%
2回成功:4.39%
3回成功:11.72%
4回成功:20.51%
5回成功:24.61%
6回成功:20.51%
7回成功:11.72%
8回成功:4.39%
9回成功:0.98%
10回成功:0.10%


ここで、許容する誤差が±10%未満である場合、その誤差内で収まるのは「5回成功」のみになるので確率は24.61%になってしまいます。
許容する誤差が±10%である場合は、その誤差内で収まるのは「4~6回成功」になるので確率は65.63%に上昇します。
同様に20%ならば89.06%、30%なら97.85%になります。ただ、さすがに誤差±30%は大きすぎますし、かといって誤差±10%を切ると、収まる確率はたったの24.61%しかないことになってしまいます。
試行回数が10回だとこんなもんです。これが100回になるとどうでしょうか?

結論だけ申し上げますと、誤差±5%なら72.87%、誤差±10%なら96.48%になります。10回のときに比べ、格段に収まる確率が上昇した(誤差±5%以内:24.61%→72.87%、誤差±10%以内:65.63%→96.48%)ことがおわかり頂けることでしょう。

私が本論において伝えたいことは、試行回数に対する「標本平均と母平均との誤差」と「その誤差に収まる確率」を体感で知ってもらいたいというのがあります。
つまり、「不思議な水が10回だと誤差も大きくなってしまうけど、100回やれば、大多数(95%以上)は成功回数が40~60回で収まるんやなー」というのを知ってもらいたかったのです。

【上振れと下振れ】

それでは本番の「上振れ」と「下振れ」について考察していきましょう。といっても、先程の【大数の法則】で示したものを一般的に論じることで表現いたします。
たとえば、自分の能力、周りの環境(打高か打低か、打順の巡りと得点圏の環境)を鑑みて、3割ぐらいは打てるだろうと考えたとします。

誤差は全体で5%まで許容します。二項分布においては対称性がありますので、実際は上位2.5%と下位2.5%に分かれることになります。

画像1

さて、図の橙の線が上振れライン、青の線が下振れライン、赤の点線が3割になります。最初は大きく誤差があり、すぐに収束方向に向いますが、徐々に収束のスピードは落ちていき、500打数の時点においても上振れ(下振れ)ラインは3割の線とそこそこ離れている事がわかります。

ちなみに100打数ごとで見ていくと、
100打数:.210~.390(±.090)
200打数:.240~.360(±.060)
300打数:.250~.350(±.050)
400打数:.255~.345(±.045)
500打数:.260~.340(±.040)

となります。つまり、100打数だと1割近く、500打数あっても3割±4分ぐらいずれることを意味します。
であるので、去年3割ぐらいの打者が、今年の2~30試合とかで2割ちょいしか打てなかったとしても、単なる「下振れ」である可能性があるということになります。
逆に、自分は3割くらい打てると思ったけど、最終成績が2割5分くらいだった場合は、「上振れ」や「下振れ」よりもその「3割」という仮定を疑ってみるのが良いかもしれませんね。


ついでに2割、2割5分、3割5分、4割のときも同様に掲載しておきます。特徴としては上振れや下振れのズレは分散に影響するため、5割に近づくにつれズレは大きくなる傾向があります。

【2割】

画像2

【2割5分】

画像3

【3割5分】

画像4

【4割】

画像5

【まとめ】

以上、上振れと下振れについてでした。本当はもっとたくさん書くこと(計画段階ではおそらく仮説検定とかその辺も組み込む予定だった)もありましたが、そもそも間に合ってないので、この辺でやめときます・・・・・・。
そういうのはまた機会があれば・・・という感じにしますね。
それではお疲れさまでした。


(注1)
一応、ハードウェア乱数生成器(熱のノイズなどの物理的なランダム性を乱数として組み込む)を用いれば真の乱数を生成することは可能ではあります。もっとも時間がかかるため速報性が求められるゲームではまず使われませんが。
(注2)
古典的な線形合同法などにおいては偶数・奇数が交互に出るケースもあるそうです。実際「カルドセプトサーガ」というゲームで問題になったらしい。(参考:https://w.atwiki.jp/gcmatome/pages/2574.html )
本論においては赤天狗を(一応)信頼して、実用に耐えるレベルの乱数生成器を用いていると仮定します。
(注3)
ってwikipediaで言ってた。

この記事が気に入ったらサポートをしてみませんか?