見出し画像

ミリオンキャスティング振り返り〜ホラーテーマの親愛度(仮)を添えて〜


1.はじめに

ミリオンライブPの皆様、ミリオンキャスティングお疲れ様でした。
これを書いてる段階ではまだ第二回戦があるため全てが終わったわけではないですが、時間が経ちすぎる前に第一回戦の振り返りを形として残しておきたいなと思い筆をとりました。
自分はホラーテーマをメインに動いていたので特に同テーマで楽しく苦しい1ヶ月をご一緒した各Pの皆様には陣営を問わず感謝しております、ありがとうございました。



2.今回の取り組み、分速とペア票が知りたくて

TC(前回投票イベント)から大きく変わったのはやはりペア票の存在でしょう。
1人が盤面に与える影響が純粋に2倍になりうまく使えば自陣の票を倍にすることも可能な強力なシステムです。
勝敗を問わずこれの活用に成功した陣営が大きく票を伸ばしたのは皆様も感じられたのではないかと思います。



ところで皆様もご存知であろうMILLION C@STING!!! ランキング bot @imas_ml_td_bは30分おきに得票数を公開しています。
ランキングbotはmatsurihi.me様によって運用されており、その元になるデータはhttps://mltd.matsurihi.me/election/で30秒単位で更新され続けています。
サイトで取得され、更新されているデータを30分毎に発表するのがランキングbotということですね。

配役ごとに上位10名の得票数が更新され続けるマジでめちゃくちゃすごいサイト、天才。

それを見ていた知人から「各陣営の1分間の投票数を取得できれば、同数の投票数が2つの陣営で観測された場合ペア投票が行われていることを推測することができるのではないか」という発案があり、面白いアイデアだと思い今回はこれに注力することに。 結果的には2/4〜2/28までの期間、2分おきにホラーテーマ5役の上位3名の名前と数値を取得することになりました。

またこの場でデータを取得させて頂いたmatsurihi.me様に最大の感謝を述べさせていただきます。色々事例を調べ負荷をかけすぎてはいない……と思ってやっていたのですが不勉強なためご負担をかけていたら申し訳ないです。



3.解析について、エクセルってすごい、でも計算式がゴリラ、スプレッドシートが重すぎる

①最初のデータ

元になる抽出後データ、キャラ名、得票数、取得時間が羅列される。

見ての通りこの状態では使いものにならないのでまず並び替えに都合のいい関数を探すところからスタート。詳細は省きますが抽出のやり方やスプレッドシートの行数のベストな増やし方などで数日無駄にあくせくしました。

②並び替え後データ

キャラ別に時間ごとの総得票数が並ぶように、右側では分速が出る。

filter,countif,indirect(結果的に不要だった)を使って並び替えに成功、B列に時刻、その後Cからキャラ別に得票数が時間ごとに並ぶようになりました。これをつかって右側で分間の得票数の可視化ができ、当初の目的を一つ達成しました。後々何度も感じますがエクセルは調べると素人でも大体なんでもできるようになっててやっぱりすごいソフトなんですね。

取得していたのは15キャラ分ですが、スプレッドシートが100万セル?の上限がありセルと計算量、表示負荷を節約するために並び替えシート以降の分析シートでは表示キャラを選抜しました。所恵美、宮尾美也なども表示していましたが終盤どんどん表示負荷が上がったため整理対象に。

③ペア票の抽出方法

同時刻に近似した得票を得ている場合数字が表示されるペア票シート、精度はぼちぼち

ペア票と推測されるものだけを並び替えシートから抽出、ペア票の推測と集計、分析は今回の肝になる部分ですね。それだけに試行錯誤が最も多くなった部分だったと思います。

1.赤線部のように瑞希=歌織、まつり=貴音の様な同時刻の同数票を取得できるように→1票でも他の人が同タイミングで票を入れると無効になる問題

2.幅を持たせ、緑線部のように1,2票差でもペア判定にする→青線部のように春香50票、まつり50票、桃子100票の時に春香とまつりがペアになる問題に気づく、これは結構致命的な課題でした

3.課題解決のため、まつり100票=春香50票+このみ50票が成立した場合、まつりと春香、まつりとこのみをペア判定にすることに成功

4.逆側でもペア判定にしないといけないのでこのみ50票=まつり100票-春香50票が成り立つ時このみとまつりをペア判定にする仕様も導入

5.春香0票、このみ100票、まつり100票、のときに春香とこのみ、春香とまつりペア判定が成立してしまうので主体が0の場合はペア判定を行わない仕様に

6.以上の関係をa=b+c、a=b-c、a≠0として
a(まつり)=b(このみ)+c(春香)、a=b+d〜h(その他全員)など主要キャラ全てに対して計算を行う
aは主体としてブロックで固定、bはブロック内の列で固定し、cは式内で全て計算を行うように

式にすると

=IF('閲覧用'!L4=0,0,IF(OR( '閲覧用'!$L4='閲覧用'!L4+'閲覧用'!$L4, '閲覧用'!$L4='閲覧用'!L4+'閲覧用'!$M4, '閲覧用'!$L4='閲覧用'!L4+'閲覧用'!$N4, '閲覧用'!$L4='閲覧用'!L4+'閲覧用'!$O4, '閲覧用'!$L4='閲覧用'!L4+'閲覧用'!$P4, '閲覧用'!$L4='閲覧用'!L4+'閲覧用'!$Q4, '閲覧用'!$L4='閲覧用'!L4+'閲覧用'!$R4, '閲覧用'!$L4='閲覧用'!L4+'閲覧用'!$S4, '閲覧用'!$L4='閲覧用'!L4+'閲覧用'!$T4), '閲覧用'!L4,IF(OR( '閲覧用'!$L4='閲覧用'!L4-'閲覧用'!$L4, '閲覧用'!$L4='閲覧用'!L4-'閲覧用'!$M4, '閲覧用'!$L4='閲覧用'!L4-'閲覧用'!$N4, '閲覧用'!$L4='閲覧用'!L4-'閲覧用'!$O4, '閲覧用'!$L4='閲覧用'!L4-'閲覧用'!$P4, '閲覧用'!$L4='閲覧用'!L4-'閲覧用'!$Q4, '閲覧用'!$L4='閲覧用'!L4-'閲覧用'!$R4, '閲覧用'!$L4='閲覧用'!L4-'閲覧用'!$S4, '閲覧用'!$L4='閲覧用'!L4-'閲覧用'!$T4), '閲覧用'!$L4,IF(ABS('閲覧用'!$L4-'閲覧用'!L4)<=1,'閲覧用'!L4,""))))

何度見ても式が馬鹿すぎますね……

ゴリラが書いたのかな?
誰かもっといい式考えてほしいです。

この式や見た目をわかりやすくするために使った条件付き書式、グラフなどのせいで後半になるにつれスプレッドシートの負荷が爆発的に上がっていきました。なにかを修正するたびにフリーズを繰り返しだしたため最終的には式を消して値をペーストし直す作業などを行いました。

並んでいる数字の列を何をもってペア票であると定義し、それをどのような関数を用いて式として抽出、反映するかは多分に想像力を必要とするものでやっていてとても面白い部分でした。いい勉強になったと思います。



4.得られたこと、上手くいったりできなかったり

①抽出できたペア票まとめ

ペア票であると推定されたものの総計と相関

ということで出来上がったのが上の表です。縦で見ていただくといいと思います。例えば瑞希は桃子と14万票、春香と17万票、貴音と11万票のペア票が観測されています。ペア票の合計と思われる表は56万票です。

……なんか票数少なくない?

はい、残念ながらかなり不完全です。ペア票の合計が総合計票の15%程度にしか達していません。

理由は簡単で4陣営以上の相関関係が式に入っていないからです。
単純に言うと一斉投票を追うことが難しかったですね。一斉投票中はペア票を陣営ごとに分解できないのは大きな課題でした。
前述した式を4陣営以上に拡大することも考えましたが式の量が数十倍、数百倍単位で増加するのが容易に想像できたことと、必要とするセル数も足りなくなる可能性があり断念しました。
ただ統計学に詳しくはないのですが、すべての一斉を排除しているなら一定の傾向性を測るには十分だろうという判断もありました。

対抗陣営でペア票が存在していることも残念な要素です、偶然票数が揃っているのを拾ってしまうため敵同士に若干仲良さがでています。あと右上と左下で数値が同数になっていないのは前述の式で1票差を許容している誤差が反映されたものだと思われます。

おまけ



②陣営別親愛度(仮)


陣営別ペア票/ペア票総計を%にしたもの(仮)

そこで親愛度を作成しました。
特定のキャラの陣営別のペア票を、キャラが持つペア票の合計で割っています。具体的に言うと瑞希と桃子は14万/56万なので瑞希視点で25%の親愛度があるといえます。
桃子のペア票は43万観測されているため、桃子視点では14万/44万で32%の親愛度があります。

ただあくまで票共有率でしかないため、例えば千早の66%の春香との親愛度が千早→春香なのか春香→千早の結果なのかはわかりません。票を出しても出されても票共有率は上がっていくので数値的に得になっているのがどちらかは不明です。不明で良かったかもしれません。

③全陣営のペア得票予想とグラフ

取得ペア票の割合を現実の総得票数に合致するようにさせた予測数値

取得したペア票は現実の15%程度なので100%になるように数値を倍加させたら現実に行われた投票の数値に近づくんじゃない?という予測数値とグラフですね。ちょっとそれっぽさがでて満足しています。

これは全投票にペア相手がいると仮定した理想状態での予想で、現実にはソロ投票をつづけた人もかなりいると考えられますので、これまで以上に確度の低い遊びと思っていただければ。

④期間を通した親愛度の変化

これは考察ですが、こうやって図示すると瑞希-春香が終盤にかけてつながったこと、まつり-このみが序盤から強力に存在することなど、もともと目立っていた事実が確認できるとともに、まつり-歌織が意外と太かったり、桃子が姿勢を変えないことなど目立たなかったことも見えるような気がしますね。

序盤は総得票が少なく一人が親愛度に与える影響が後半より多いので乱高下していて段々中盤以降落ち着いていく形になっています。多分。



5.スプレッドシート

作成したシートは↑から見れるようにしておくので興味のある方はどうぞ。
ダウンロード、コピー、私的利用、式の改変や公開など特にデータの扱いに制限はありませんが、matsurihi.meを利用したデータのためそちらのサイトに記載されたポリシー内での利用をお願いいたします。

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