Hearthstone環境考察

使用率をまとめたり環境予測をしたりします。Hearthstoneに関連するトピックをゲーム理論や統計学の視点から取り上げ…たりもできればいいですね…

環境予測に関する説明

今自分が試みている環境予測の方法に関して説明をします。数理モデル全般に触れたことのない人を対象としています。

 


○モチベーション
そもそも予測をする理由は何か、という話です。

「強いデッキ」「弱いデッキ」というのは、実際に触れてみたり配信を見たりすると大体分かります。HSReplayやvBAddict等の統計サイトを用いれば、勝率や相性も一目瞭然です。

強さと相性が分かれば、「次はこのデッキが増えて、それに対応してこのデッキも増えてくるだろう」という予想も、なんとなくできると思います。
ただ、この予想は直感的なもので、データによる根拠があるわけではありません。

もし、プレイヤーが使うデッキを選ぶ基準に何かしらの法則があるとすれば、その法則をもとに将来どういうデッキが使われるのか予測できると思います。
ここでの予測は、法則という根拠があるので、直感的な予想より信憑性が高いはずです。


今回の試みは、そういった「法則に基づいた予測」をしよう、という動機で行っています。

 


○分析枠組み
今回の予測では、ゲーム理論という経済学のフレームワークを用います。

「ゲーム」とは所謂ゲームに限らず、複数人で競う状況の殆どを指します。例えば、企業間の価格競争をゲームとして定義することもできます。
当然、ハースストーンもゲームに該当します。

一口にゲーム理論と言っても様々な理論があります。今回は「進化ゲーム」というものを用います。
進化ゲームとは、時間経過に応じて戦略のとり方がどのように変化するか、を重点的に分析する枠組みです。遺伝や淘汰といった現象の説明として、生物学への応用例が多いです。


今回の試みは、「進化ゲームの枠組みを用いて、ハースストーンにおけるデッキ使用率の変化を分析する」というものになります。

 


○モデルに関して
モデルは、法則を数式で表したものです。どのような分析も、モデルに基づいてなされます。

モデルはその言葉が示す通り、現実世界の模型です。ただしあくまで模型であり、現実世界と比べると多くの要素が捨象されます。
要するに、現実の重要な点だけを抜き出して、簡素な数式で表したものをモデルと呼びます。


モデルを作る上では沢山の「仮定」がなされます。
モデルの式に意味を持たせるために、仮定は重要です。一方で、仮定によって分析結果が実際と異なるものになることもあります。

今回の予測で用いるモデルにおいて、以下のような仮定を置きます(抜けがあるかもしれません)。

 

1.プレイヤーは無数に存在します。
 ―2万人以上のプレイヤー、50万回程度のマッチをデータとして用いるので、無数と言って良いと思います。
2.プレイヤーは、既存のデッキタイプの中から1つを選択し、ランダムに選ばれた相手と戦います。
 ―このため、分析時になかったデッキタイプが新しく生まれた場合は分析結果が崩れます。
3.プレイヤーは十分洗練されています。
 ―常に合理的な選択を行うという、非常に強い仮定です。これは自分のデッキに拘らず強いデッキを選択する、プレイミスを行わない、といったことを含みます。非現実的ですが、この仮定を置かないと分析の意味が失われます。モデルの能力の限界です。
4.プレイヤーは平均勝率の最大化を目指します。
 ―ラダーを駆け上がるには、勝率が最も高いデッキを使うべきです。当然、分析にはラダー戦のデータを用います。
5.プレイヤーは、いつでも好きなデッキを使えます。
 ―勝つためには課金も惜しまないという仮定です。
6.毎期、各デッキは

(そのデッキ使用者の割合) * (そのデッキの平均勝率 - 全プレイヤーの勝率の平均)

だけ使用率が変動します。
 ―デッキの勝率が全てのプレイヤーの平均勝率より高ければ高いほど、そのデッキの使用者が増えるという仮定です。
 ―当然、勝率の低いデッキの使用率は下がります。

 


○データに関して
統計に関して不勉強かつデータの扱いに不慣れなので、非常によくない使い方をしている可能性があります。

 

データはHSReplay.net(https://hsreplay.net/)が公開しているものの中で、「過去1日」の「レジェンド~ランク5」までのマッチアップのデータを用います。

HSReplayを用いる理由は、サンプルサイズの大きさとデータ取得のしやすさです。
また、メタの移り変わりは早いため、収集できる最も短いスパンである過去1日のデータを用います。

「ある程度デッキを使いこなせ、より高いランクを目指すモチベーションがある」プレイヤーの集団として、レジェンドランクからランク5にいるプレイヤーを対象としています。
レジェンドやランク5の底にいるプレイヤーは上で挙げた仮定に反する行動をとることがあり得ます。本来であればレジェンド中位~上位、ランク1~4のマッチのみを対象とするのが望ましいですが、データの量が著しく減る(1日のマッチ数が最も多いのは圧倒的にランク5です)ため、ランク5までを対象にしています。

対戦相手もDeck Trackerを使っているとは限らないため、デッキAのBに対する勝率とデッキBのAに対する勝率が対応しない場合があります。本来であれば統合して真の勝率を計算すべきですが、データの扱いと計算が非常に大変な点、そこまで大きな影響を与える差異ではない点からそのまま扱います。

使用率の分布は、対象とするランク帯全てにおいて均一であると仮定します。つまりレジェンドとランク5の使用率も均一、レジェンド上位と下位の使用率も均一だと仮定しています。これは非常に不正確な仮定ですが、データをモデルで利用する際にこう考える必要があります。
今回の分析で最も重要なデータはマッチごとの勝率であるため、可能な限り正確な相性を知るために分布の正確性を捨象しています。

マッチアップごとの勝率にはデータ不足による欠損が多く見られますが、そのマッチの勝率は50%と仮定します。これも非常に不正確な仮定ですが、
・データが不足するほど稀なマッチであれば、大勢に影響を与えることはない
・データが不足するほど使用率の低いデッキが伸びることは考えにくい
という理由でこのような措置をとっています。本当は改善すべきです。


まとめると、

 

f:id:ta9e2hs:20180518162738p:plain

 

 

 

 

 

 

 

後日、補足説明を行うかもしれません。