藍緑日記

検証したものとかを置いておきます

ガチャの確率とその試行回数についての話

前置き

世の中には確率が溢れかえってます。宝くじが当たる確率だとかガチャでSSRが出る確率だとかポケモンで色違いが出る確率だとか……

日常生活において確率は大体「中身が減るタイプ」と「中身が減らないタイプ」の2つのタイプに分けて考えることができます。前者はくじ引き、後者はスマホゲーのガチャとかが代表的な例ですね。そしてこの中身が減らないタイプの確率。少し調べた人ならわかると思いますが、非常に厄介です。当たる確率が1%のガチャを100回引いても出ない時があるのですから。たぶん経験があるんじゃないでしょうか。

この記事では、そういう目にあった人*1が割り切れるように、もしくはこれからそういうことに挑戦する*2人が覚悟を持てるようになれるかもしれない、確率と試行回数の話を書いていきます。それでもってそういうのは1枚出るまでに、みたいなことしか書いていないので、2枚以上についても書いていきたいと思います。端的に言うなら、

  • なんとか%のガチャを!
  • 何回引けば!
  • 何%の確率で!
  • 何枚引けるのか!

みたいなことです。これについてそこそこ需要はありそうなのに詳しく解説してる記事が探しても無いので自分で書こうってのもあります。

あとこれは素人が書いているものなので、正しいことを書いているつもりではいますが、滅茶苦茶間違いがあるかもしれません。先に謝っておきます。

基本的なこと

まずは太字で書いてあることについて考えてみましょう。1%というのは分数で表すなら \frac{1}{100}ですので、100回やれば 100\times\frac{1}{100}=1という計算式を思い浮かべて、なんか一回は当たりそうな気がしてきます。しかし掛け算で求められるのは期待値です。これはざっくり言うのであれば「1億回やったら約100万回当たったから大体100回に1回は当たるな」という話でしかないので、100回、200回程度の話をするのであればそこまで信用できない数値です。

出現確率を知りたいのなら、単なる乗算ではなく累乗で考えなければなりません。出現する確率を求めたいのなら、全体の確率である1から、出現しない確率である99%を100回かけたものを引く必要があります。

これを計算すると、 1-(\frac{99}{100})^{100}\fallingdotseq0.63397となります。要するに約63.4%の確率で当たるということになります。

裏を返せば、約36.6%の確率で外れます。*3つまりおよそ3人に1人、100人に37人は100回引いても当たらないということになります。恐ろしいですね。

というかこの話は非常に有名で、「1 確率」でGoogle検索をかけて一番上にあるページにこの話に近い物が乗っていますし、その他にも適当に検索すれば似たような話はゴロゴロ出てきます。これに関連したよく知られていることとして、確率 \frac{1}{n}で起こる出来事を n回行っても起こらない確率はほぼ \frac{1}{2.7183…}になるというのがあります。導出過程は「1/nをn回試行」とかで検索すると多分出てくるのでそっちに任せます。*4

このいきなり出てきた2.7183…という数字ですが、これはネイピア数、または自然対数の底と呼ばれる定数であり、基本的にeという記号で表されます。詳しくはwikipediaとか自然対数の底って書いてあるところをクリックしたら出るページを見てください。特に断りのない限りここからはネイピア数eと表すことにします。

実用的な話

100回引いて当たらない確率が36.6%になるのは分かりました。では、何回引けば当たらない確率が50%に、または5%に、または1%になるのでしょうか?

Wolfram|AlphaやPhotomathなんかの計算アプリやサイトを使えば一発でわかりますし、何ならガチャの確率を計算するツールなんてものは少し調べるだけでも 大量に見つかります。ですが、目当てのガチャを引こうとするたびにサイトへ飛んで、出る確率と試行回数を入力して計算して……ってなんか少し面倒じゃないですか?その時間も惜しいから、簡単に計算できるなんとなくの目安的なものが欲しいな、なんてことを思う時があると思います。というかそもそもガチャを引く時にサイト開く余裕なんて持ってないですしね。

というわけで予め目安を計算しておきました。分母に4.6を掛けると1%の確率で当たらなくなるまでにかかる試行回数の目安になります。1%のガチャだったら460回引けば100人に99人は当たるわけです。ちなみに4を掛けると1.8%の確率で当たらなくなるまでの、3を掛けると5%の確率で当たらなくなるまでの試行回数となるので、小数の計算が面倒な人はこちらを使ってもいいと思います。ちなみに50%の確率で当たらなくなるまでには0.7を掛けるといいです。

「答えは分かったけど、その値はどこから出てきたの?」という人のために簡単な計算過程を載せておきます。高校で数学を学んだ人向けです。分からない人は飛ばしてくれてかまいません。

計算過程(この項は飛ばしても大丈夫です)

なぜ分母にある数値を掛けることで求められるのでしょうか。上の項でも説明したとおり、 \frac{1}{n}の確率で起こる事象は n回行ってもほぼ \frac{1}{e}で起こりません。これは数式で\displaystyle\lim_{n \to \infty}(\frac{1}{n})^n=\frac{1}{e}とも表せます。つまり \frac{1}{e}の2乗は大体分母の2倍の試行回数を、3乗は3倍の試行回数を表すことになります。つまり \frac{1}{e}を何乗すれば0.01や0.05などの値(要するに1%や5%)になるかを計算するということは、分母の何倍試行回数を積めば0.01や0.05の値になるかを計算することと同じことになるのです。つまり確率をp,何倍やるかの部分をxとして以下の式を計算すればいいわけです。

 (\frac{1}{e})^x=p(1)

ではp=0.01として (\frac{1}{e})^x=0.01を例に実際に計算していきましょう。両辺の自然対数をとります。

-x=\ln{0.01}

あとは\ln{0.01}Google電卓なりCASIOの高精度計算サイトなりで計算すれば答えを求められます。というか式を見れば分かるように、求めたい確率をpとして\ln{p}を計算すると、その絶対値が分母の大体何倍試行を行うと当たらない確率がpになるかになります。

厳密な話(ここも飛ばして大丈夫です)

数学で極限を学習した人であれば分かるのですが、実はこの\displaystyle\lim_{n \to \infty}(\frac{1}{n})^n=\frac{1}{e}という式、要するにnが大きくなれば大きくなるほど右辺の値に近づくというだけで、右辺の値になることはありません。なので計算結果と実際に必要な数には多少のズレが生じます。それでも出現しない確率は正確に計算するよりも少なくなる*5ため、それが問題になることはほとんど無いと思います。

それでも正確な値を知っておきたいという人もいると思うので計算方法を書いておいます。と言ってもやることは簡単で、分母をnとおいて、(1)の式の左辺を (\frac{1}{e})^nから (\frac{n-1}{n})^nxに変更するだけです。これも両辺の常用対数をとれば以下の式が得られます。

nx\ln{(\frac{n-1}{n})}=\ln{p}

これをnについて解けば、

x=\frac{\ln{p}}{n\ln{(\frac{n-1}{n})}}

これに分母nと確率pを代入すれば正確な値が求まります。こんな数式計算するなら普通に計算ツール使ったほうがいいと思います

応用編(ここも飛ばして(ry)

ここまでの話は目当てのものが一枚以上当たることに限ってのものでした。では二枚、三枚以上の場合はどうなるでしょうか。

一応断っておきますが「\frac{1}{x}を2回かけて(\frac{1}{x})^2!」みたいな話ではないです。それで求められるのは「\frac{1}{x}を二連続で起こすのに必要な試行回数」です。

二枚以上、というか任意の枚数をkとしたときにk枚以上当てる確率を計算するのはちょっと勝手が違ってきます。今までなら

(全体の確率)-(当たらない確率)

を計算すればそれでよかったのですが、k枚以上当たる確率を考える場合、k-1枚ちょうど当たる確率までを全て取り除く必要があるため、

(全体の確率)-{(当たらない確率)+(1枚ちょうど当たる確率)+(2枚ちょうど当たる確率)+…(k-2枚ちょうど当たる確率)+(k-1枚ちょうど当たる確率)}

のように、k-1までのちょうど当たる確率をそれぞれ計算する必要が出てきます。もっとも試行回数n、確率\frac{1}{n}のものがk枚ちょうど当たる確率自体は

{}_n\mathrm{C} _k(\frac{1}{n})^k(\frac{n-1}{n})^{n-k}

で計算出来ますし、なんなら{}_n\mathrm{C} _k = \frac{{}_n\mathrm{P}_k}{k!}なので

\frac{{}_n\mathrm{P}_k}{k!}(\frac{1}{n})^k(\frac{n-1}{n})^{n-k}

を計算することで求められます。

一応求めることは出来るんですが、正直面倒というか、よく考えたらスマホゲームのガチャって、同じキャラが欲しいときは多くても5枚くらいだと思うので、今回は2~5回当てる時のことを考えていきたいと思います。

先に結論だけ書いておきます。目当てのものがでる確率の分母に、以下の表から欲しい枚数と出現可能性に応じた値をかけることで目安になります。1%で当たるものが4枚欲しい場合、95%の確率で当てたいときには776回分、99%の確率で当てたいときは1010回分用意すればいいですし、3%で当たるものを5枚欲しい場合、95%の確率で当てたいなら305回分、99%の確率で当てたいときは390回分用意すればいいことになります。

要するに期待値的には10枚以上出てもおかしくない回数でも、運が悪いと期待値の半分以下しか出ないということですね。泣くしかない。

 分母nの何倍か 当たる確率
50% 95% 99%
欲しい枚数  2  1.68 4.75 6.64
 3  2.68 6.3 8.41
 4  3.68 7.76 10.1
 5  4.68 9.16 11.7

導出過程については、ただひたすら極限を求めていただけなので省略します。ちなみにk枚当たる確率は、分母nが十分大きいとき、試行回数をnxとすると、

\displaystyle1-\sum_{i=0}^{k-1} \frac{x^i}{i!e^x}

という式で近似できるみたいです。*610枚引きたい時とかにどうぞ。

分かりづらいと思ったら以下の式を見てください。k=5として、上式を展開したものです。

1-(\frac{1}{e^x}+\frac{x}{e^x}+\frac{x^2}{2e^x}+\frac{x^3}{6e^x}+\frac{x^4}{24e^x})

ちなみにWolfram|Alphaに入力するときはこう。

(1/e)^x+x/(e^x)+(x^2)/(2*e^x)+(x^3)/(6*e^x)+(x^4)/(24*e^x)=(適当な値)

……なんか面倒ですね。

というわけでまとめに移りましょう。

まとめ(忙しい人はここを見よう!)

以下は確率1%のとき、欲しい枚数と当たる確率に応じた試行回数の目安です。これを欲しいキャラの確率[%]で割るとその確率のときの試行回数の目安となります。

 試行回数(1%)[回] この確率で当たる
50% 80% 95% 99%
欲しい枚数 1 70 161 300 461
2 168 300 475 664
3 268 428 630 841
4 368 552 776 1005
5 468 673 916 1161

もっと簡単に求めたい場合は以下の表を用いてください。これに確率の分母をかけると試行回数になります。小数点以下は全て切り上げて使用してください。

 分母の何倍か この確率で当たる
50% 80% 95% 99%
欲しい枚数 1 0.7 1.6 3 4.6
2 1.7 3 4.8 6.6
3 2.7 4.3 6.3 8.4
4 3.7 5.5 7.8 10
5 4.7 6.7 9.2 11.7

一応分からない人のために分母の早見表を載せておきます。これの10倍の確率を求めたい場合は分母の値を\frac{1}{10}にし、\frac{1}{10}の確率を求めたい場合は分母の値を10倍してください。それ以外は、確率をp[%]として\frac{100}{p}で計算出来ます。

確率[%] 分母 確率[%] 分母
10 10 5 20
9.5 10.6 4.5 22.3
9 11.2 4 25
8.5 11.8 3.5 28.6
8 12.5 3 33.4
7.5 13.4 2.5 40
7 14.3 2 50
6.5 15.4 1.5 66.7
6 16.7 1 100
5.5 18.2 0.1 1000


具体例として、よくうちのブログではFGOに関する記事を書いているので、それに関する例をいくつか見ておきます。

  • 単独PU中の星4(1.5%)は2,130個(781連分に相当する‌*7‌)石を消費することでほぼ確実に宝具5にできる。運がよければ870個(319連分に相当)で5枚出ることもある
  • PU中の星5(0.8%)は240個(88連分)石があれば50%の確率で当たり、宝具5を狙う場合は3,990個(1,463連分)の石があればほぼ確実に当たる。でも8割の人は2,280個(836連分)消費している間に宝具5が完成している。
  • カレイドスコープ(イベント時のガチャで0.052%、ストーリーガチャで0.173%)はイベントのガチャを8,844回、ストーリーガチャを2,651回回す間に1枚くらいは出る。
  • アンリマユ(1/8,192(0.01%)?)を出したいなら700万(35,000回分)くらいのフレンドポイントが必要。でも大体120万(6,000回分)ポイント分のガチャを回していたら出ることもある。

星5の宝具5って軽い気持ちで狙うものじゃないですね……

ここまでいろいろ書いてきたんですが、どれだけ石とかを用意しても出ないときは出ないです。それだけは覚えておいて欲しいです。当たらなくても「まあ当たるかは五分五分だったし……」とか、「99%当たるはずだったのに レアケースすぎて宝くじ当たるんじゃないか」とか、要するに重く考えずに引くのがいいガチャとのつきあい方なんじゃないでしょうか。リアルマネーがかかってるとそうそう出来ないことですが……

もっと簡潔に
  • 確率の分母の3倍(1%なら300回)引ける準備をしとけば大体1~2枚は手に入る
  • 10倍用意すれば4~5枚をほぼ確実に手に入れられる
  • 無理なら8倍くらいでもなんとかなる
  • というかなんとかなる場合の方が多い
  • なんとかならなかったら宝くじを買おう
  • 0.8%を5回引くのは地獄だと思う
さらに簡潔に!(これだけ見ればいいと思う)

これだけ用意すればあなたはほぼ大勝利できます!!

100/(当てたいキャラが出る確率)[%]*(1+2*(欲しい枚数))[回]

おわりに

これ書いてて思ったんですが、2枚以上当たる確率とか計算するのめちゃくちゃしんどいですね。法則を割り出すために数時間Wolfram|Alphaとにらめっこすることもありましたし、計算ミスのせいで1時間棒にふることもありました。誰もネタにしないわけだ。

今回こうやって記事に出来たので、だれかの役に立っていると幸いです。

参考にしたものとか

Wolfram|Alpha 超便利な計算ツール

イクナガツールズのガチャ確率計算機 主に数値の正確さを確認するために使用 なかなか使いやすいですこれ使うんだったらこの記事の存在意義無くなりそう

*1:所謂爆死

*2:所謂PU

*3:もっと正確に言うなら36.603……%

*4:ざっくり言うと、eの定義をうまく利用することで求められます。

*5:0.99^461≒0.00972354……<0.01

*6:この式をxについて解こうとすると、乗積対数関数の解析接続というよく分からないものが出てきました。正直難易度が高すぎるので省略します。

*7:FGOのガチャは10回目に追加で1回引くことができるため、30個の石で11連分のガチャができる