kafortの日記

kafortの日記

ロードバイクを手にした乗り鉄の雑な旅行記とメモ書き

ゆるキャン△ラッピング自動販売機と確率統計

 kafortです、先週末トヨキャン△でゆるキャン△聖地巡礼をしてきたのでその記事…ではなく、途中で立ち寄ったラッキードリンクショップの記事です。

f:id:kafort:20190417021005j:plain

 

はじめに

 ゆるキャン△ラッピング自動販売機とは、実際にアニメで出てくる自販機を模したもので、現在この自販機で飲み物を買って当選するとランダムでペットボトルカバーが5種類の中から一つもらえるようになっている。

  当選確率もそれなりに低く(常幸院の住職さん曰く5%くらい)、5種類の中からランダムということでコンプリートするのが難しいのはいうまでもない。難しいのはすぐ分かったが、一体どれほど難しいか気になってしまったので計算していこうと思う。私は高校大学の確率は好きだったが得意ではないので、間違っていたら指摘お願いします。

前提条件

 このキャンペーンのそれぞれの確率は公表されていないので、以下のような仮定のもとで話を進める。

・1本飲み物を買ったとき、いずれかのペットボトルカバーが当選する確率は1/20=5 [%] (住職さんの感覚より)

・購入した飲み物の金額は当選確率に影響しない

・当選した場合のペットボトルカバーの種類は全て等しい割合で排出される。(つまり飲み物を買ったとき、特定のペットボトルカバーが当選する確率は1%,以下p_s)

 

期待値

 コンプリートするための期待値はいわゆるコンプガチャ問題の際に様々なブログでも取り上げられていたので詳細は省く。

 確率pで起こる事象がおこるための期待値は1/pであるので、k本コンプリートする場合の購入する飲み物の期待値は

\displaystyle 20 \times k \sum_{l=1}^k\left(\frac{1}{l} \right)

5本コンプリートする場合の購入する飲み物の期待値は

\displaystyle 20 \times 5 \left(\frac{1}{1}+\frac{1}{2} +\frac{1}{3} +\frac{1}{4} +\frac{1}{5} \right)=\frac{685}{3} \approx228

  ペットボトルカバーをコンプリートすると平均228本購入することになり、一本100円とすると自販機は22800円の売上を得ることになる。

 

最頻値・中央値

 あくまで期待値は平均の話であり、下限が決まっていて上限がない場合*1、中央値が有効である。これを計算しようとするとn番目でコンプリートする確率を求める必要があるが、これが求まると最頻値も同時に求まるので計算してみる。

 しかし、これは手計算では到底無理なので超高機能電卓、MATLAB*2を使う。ちょうどMATLABの講義を受けて使いたくなっただけかもしれない。

 まず、1個のペットボトルカバーを当選することを考える。 n_1番目に初めて当選する場合で、この確率 P_1(n_1)は、

\displaystyle P_1(n_1)=(1-p_s)^{n_1-1}4p_s=\left(\frac{95}{100} \right)^{n_1-1}\times\frac{5}{100}

 

次に2種類のペットボトルカバーを当てることを考える。

  n_1回目に1種類目のペットボトルカバーが当選し、 n_2回目に2種類目のペットボトルカバーが当選する確率は

\displaystyle P_1(n_1)(1-p_s)^{n_2-n_1-1}4p_s

 また、 n_2回目に2種類目のペットボトルカバーが当選する確率は、 n_1を1~ n_2-1までの総和をとって

\displaystyle \sum_{n_1=1}^{n_2-1} P_1(n_1)(1-p_s)^{n_2-n_1-1}4p_s
\displaystyle=\left(5\times \left(\frac{24}{25} \right)^{n_2} \right)/24 -\left (4\times \left(\frac{24}{25} \right)^{n_2}\left(\frac{95}{96}\right)^{n_2}\right)/19

 

 さらに、k種類のペットボトルカバーを当てることについて考えると、

\displaystyle P_k(n_k)=\sum_{n_{k-1}=1}^{n_k-1} P_{k-1}(n_{k-1})(1-(5-k+1)p_s)^{n_k-n_{k-1}-1}(5-k+1)p_s

と確率漸化式が得られるので、k種類のペットボトルカバーをn番目で当たるときの確率 P_k(n_k)を算出できる。この確率を下図に示す。

f:id:kafort:20190417004750j:plain

ここからk種類のペットボトルカバーが当たる最頻値が得られる。

 また、 P_k(n_k) n_k=1から n_k=n_kまでの総和をとることでk種類のペットボトルカバーがn番目までに当たる確率が得られる。この確率を下図に示す。

f:id:kafort:20190417011929j:plain

 これらのグラフとy=0.5の交点からk種類のペットボトルカバーが当たる中央値が得られる。

 

結論

 以上から、k種類のペットボトルカバーを当てるための購入回数の期待値、最頻値、中央値が得られる。これらを以下の表に示す。これらは回数なので1本当りの金額(\100~)を掛ければ金額が出る。

  1種類 2種類 3種類 4種類 5種類
期待値 20 45 78 128 228
最頻値 1 23 52 92 161
中央値 14 38 69 116 205

  いずれも種類kが増えるにつれて難易度が加速度的に上がっていくのがわかる。やはりガチャは闇である。

f:id:kafort:20190417025647p:plain

5種類揃える場合(k=5)

 この分布は正規分布とはかけ離れているので表からも分かる通り、代表値にどれを選ぶかで印象が大きく変わる。運が良かったか悪かったかは中央値の205より大きいか小さいかでしょうか。

 

 

おまけ

 nが大きくなればk種類のペットボトルカバーを揃えられる確率も大きくなり、1に近づくものの1にはならないので、500本買っても1000本買っても当たらない可能性が0ではない。

 500本買って揃わない確率は3.24%、1000本買って揃わない確率は0.021%である。自動販売機には1台あたり500~1000本程度収容できる*3ので、1台の自動販売機を満杯から在庫を切らすまで買ってもこれだけの確率で揃わないのである。

 逆に、71本買って揃う確率は3.22%、22本買って揃う確率は0.021%である。

 確率統計楽しい✌('ω')✌

*1:年収など

*2:もっとすごいことができるらしいですが私が使いこなせていないだけ

*3:http://www.energy-co.jp/vendingmachinekind.html