以前頭の体操で書きました、AKBのCDを何枚買えばポスターがコンプリートできるか、という問題の解答編です。
一見難しい問題でも、整理してExcelを使ったりプログラムを書いたりすれば、力技で解けることがあります。
応用すれば、ネットゲームのガチャガチャの悪徳性?も解析できそうです。
はじめに
AKB48のCD販売にて、「CD一枚につきポスターが一枚ランダムに付いてきて、44種類全部そろえると特別特典」というキャンペーンがありました。
「CD44枚買って一発で揃える確率」は計算機があれば容易に出せますが、本稿では「何枚か買った時のコンプリートの確率」を求めます。(コンプリート、コンプ:全種類そろうこと。)
ポスターコンプ問題とは?
本章は、2014年8月の「頭の体操」からのコピペです。
発端
Wikipediaの、AKB48のページの2011年1月21日の版の「独占禁止法違反騒動」の節をご参照下さい。
まとめますと、「CDに44種類のポスターがランダムについてきて、これを全種類揃えると特別イベントに参加できる、という企画をしたところが独占禁止法に抵触するということで取り止めになった」、とのことです。(48種類でないのですね。)
上記記事では、「1回も同じポスターが出ることなく全44種のポスターが揃う確率は、計算上で77京1468兆8909億1789万4000分の1」とのことです。
これは恐らく単純に、1/44!の計算値だと思います。多倍長整数演算のシステムがあれば計算できなくもありません。
そして「1回も同じポスターが出ることなく全44種のポスターが揃う確率」という問いの立て方も意味がないような気がします。
問い
そこで以下の様な問いを立てました。
- CDを何枚まで買えば、全44種類のポスターが揃う確率が50%になるか?
(薬剤におけるED50と同じ考え方です。)
ただしポスターは無限にあり、各ポスターの、CDに付属する確率は等しく1/44とします。もちろん他の購入者との交換は考えません。
問題の考察
以上の問いを立てたのが、2014年8月。
この記事の元は2015年の8月にできていたのですが、図を書いたパワーポイントのファイルがWindows10へのアップデートを機に壊れてしまって、今になっての記事になりました。
確率過程で考える
問題を確率過程で考えると、解けそうな気がしてきます。
下は、壊れたファイルに残っていた確率過程の図です。
図に丸で表されているSkは、ポスターがk種類そろった状態です。S0がまだポスターがない状態、S1がポスター1種類そろった状態。STがポスター全種類そろったコンプリートの状態です。AKBのポスター問題ではT=44です。(以降、暗黙にT=44です。)
図の矢印が状態遷移ですが、右への矢印が新しいポスターが出た場合、ループの矢印がすでに持っているポスターの同じものがでた場合です。
矢印に書いた式が、遷移の確率です。
ここに、状態Skから、新しいポスターが出て次の状態Sk+1に遷移する確率をpkとすると、pkは下になります。
最初の1枚は誰しも新しいポスターなのでp0=1。43種類持っているときに最後の1種類を引く確率p43=1/44。
ここで、n枚CDを買ってポスターを引いた時に、状態Skにいるときの確率をPk,nとします。これはExcelで作れば計算できそうなので、44種類そろった状態の確率P44,nを追っかければ問いは解けそうですね。
期待値
ここで図を見直すと、状態Skから状態Sk+1に遷移するためのCDの枚数の期待値は、確率の逆数、つまり1/pkです。
それが直列ですので、和で簡単に求まることに気づきます。
ということで、ポスター44種類コンプリートの期待値は次のようになります。
計算すると、期待値はおよそ192.4になります。
数学的な定義は置いといて、大体192枚CDを買えばポスターがコンプリートが半々と期待してもよいかな~、という感じです。
Excelでの計算
期待値が簡単に出たのでそれで良いように思いますが、最初の思いつき通り、Excelで作ってみます。
シートの作成
Excelシートのイメージは以下になります。
列が状態(ポスターの種類数)、行が買ったCDの枚数です。セルは、その枚数の時に、その状態にある確率になります。(行の和は1になるはず。)
初期値である0枚の行は、P0,0=1、その他は0ですね。そして一枚引いた後は必ず状態S1になりますので、P0,n=0(n>0)になります。つまり、左上のセルが1で、最初の行のそれ以外のセルは0、最左の列のそれ以降は0です。
後のセルは、矢印のような計算を展開します。P1,1の計算式だけをしっかり作って、そのセルを右に引っ張ってコピペし、次にその行を下に引っ張ってコピペすれば完成です。時にCD1000枚くらいまで引っ張ります。
シートの右側、STの列が、CD枚数に対応したポスターコンプリートの確率になります。
一応Excelのファイルも上げておきますので、興味のある方はご覧ください。
結果
Excelで計算した結果、以下のグラフのようになりました。
セルを見ると、183枚買った時点で50%を越えています。
ということで、最初の問い「CDを何枚まで買えば、全44種類のポスターが揃う確率が50%になるか?
」の答えは183枚、となります。
さらには、70%を越えるのは211枚、80%は231枚、90%は263枚です。
報道される、総選挙に大人買いするファンの方のCD購入枚数と比べると、そう悪徳でもないような気がします。(まあ報道されるのは1000枚以上買うファンなんですが…。)
確率分布も見てみましょう。
セルで見ると、確率分布のピークは166枚買った時点です。
言い換えると、「コンプリートした人が、それぞれの買ったCDの枚数を報告した時に、一番多いのは166枚買った人。」
期待値の検算
ここで、最初の期待値192.4が不安になりましたので、Excelシートで期待値の検算してみました。
数式にするとこんな感じ。
括弧の中は、確率分布の値です。
そして実際にはn=∞まで計算できませんから、とりあえず展開したn=1000までです。1000の行が、1000を掛けても十分小さいことだけ確認してから、SUMPRODUCT関数で計算すると、大体192.4になりました。
複雑な問題が簡単に求められる「数学スゲェ!」って感じと、複雑な計算をしてくれるので数学が苦手でもなんとかなる「Excelスゲェ!」って感じです。
射幸性の意味
こういったコンプリートものの射幸性は、コンプリートに近づくにつれ確率が下がることにあることは想像がつきます。
単純に、現在42種類持っているときに新しいポスターが出る確率は2/44、そして43種類になって最後の一枚が出る確率が1/44と半分になり、期待値も倍になります。
これを、もうちょっと詳しくしてみると以下のグラフになります。
線が、現在持っているポスターの種類数になります。
その時に、CDをまとめ買いした時の枚数ごとの、新しいポスターがでる確率が求められます。
例えば確率が50%の横線で見ると、41種類のときは10枚、42種類のときは15枚、43枚のときは30枚のまとめ買いをすると、新しいポスターを引いている確率が50%、ということがわかります。
コンプリートが近づくほど買うCDの枚数が多くなることはもちろんですが、グラフの立ち上がりも平らになっていくので、はまってしまうと長い戦いになりそうです。
(射幸心って独占禁止法だったかなあ?)
ガチャ問題
AKBのポスターコンプ問題は、Excelを使って解くことができました。
これを、ネットゲームのガチャガチャ(以下、ガチャ)のコンプ問題に拡張してみましょう。
AKBのポスターの場合は「各ポスターの出る確率は等しい」としましたので、状態数は少なくて済みました。ガチャの場合は、そろえる必要のあるレアアイテムの出現確率は異なります。
ですので、ありうる状態は「持っているレアアイテムの種類の組み合わせ全て」とします。状態数は以下の式で求められます。
ここに、Tはレアアイテムの数です。レアアイテムが5個の時状態数は、まったく揃っていないときから、全てそろった時まで、32の状態があります。
レアアイテムが5個の時の状態遷移図を描くと以下のようになります。
小さくて見にくいですが、丸の中のSの下付き文字(a,b,c,d,e)が各レアアイテムを表します。丸はそれらを持っている状態です。
そして各矢印が、次の状態への遷移になります。その確率は各レアアイテムの出現率です。(元の状態に留まるループの矢印は省略しています。)当然ですが、ある状態から出ていく矢印の数は、レアアイテムが揃うごとに、5,4,3,2,1、と減っていきます。
ポスター問題のExcelと同様に、この状態遷移をプログラムに実装し、ガチャを引いた回数ごとの各状態にいる確率を計算したとします。コンプの状態Sabcdeにある確率を、ガチャを引いた回数ごとに並べれば、ポスター問題と同様の確率の変化と確率分布を得ることができます。
これをExcelでやるのは大変なので、プログラムを書くことになりそうですね。
実際にこの作業をするのはネットゲームの提供側の責任ですが、もし提供者の責任追及に使いたい方はやってみて下さい。
まとめ
AKB48のポスター44種類のコンプリート問題を考えました。
その結果、ポスターコンプリートのための購入すべきCDの枚数は、確率分布のピークでは166枚、確率50%では183枚、期待値では192.4枚でした。
一見難しそうな問題でも、Excelを使ったりプログラムを組んだりすれば、数学が苦手でも実用的なレベルでの解を得ることができるかもしれません。(嗚呼、それが「数値計算法」。)
これは、ガチャガチャのコンプリート確率問題にも適応できそうです。