algonote

機械学習とか

AlphaShadowverseを作って1億ゲットしたかった

シャドバについて調べました。

f:id:hiromichinomata:20190208064328p:plain:w200

Shadowverseとは

ShadowverseはCygamesに配信されているデジタルカードゲーム。eスポーツが盛んで昨年(2018)の大会の優勝賞金は1億あった。今年も同様にWorld Grand Prizeで1M$の賞金が予定されている

一般的なeスポーツのイメージはストリートファイターのようなある程度瞬発性を要求されるゲームだと思う。実際、日本eスポーツ連合(JeSU)がeスポーツのプロライセンスを発行しているがそういったゲームがほとんど。

対してShadowverseはカードゲーム、1ターン内の時間に制限があるが、筋力はほぼ要求されず、囲碁・将棋に近い。

囲碁や将棋の世界ではプログラムがプロに勝っており、仮に人間より強いAlphaShadowverseを作ることができればヒカルの碁のように現代人より強い練習相手を確保できる。

簡単なルール解説

f:id:hiromichinomata:20190208064328p:plain

事前に

  1. メインのキャラクターを選択
  2. デッキを構築

ルールは簡単にいうと

  • 相手の体力をゼロにしたら勝ち
  • 各ターンごとに使えるコストが増える。マナカードなどはない。
  • 場に出したターンは召喚酔い
  • 進化があり、進化すると即座に場のモンスターに攻撃できる
  • 進化には進化権の行使が必要で先手2個、後手3個
  • 場に出せるカードは5枚まで(ハースストーンは7枚)
  • 攻撃する側が攻撃する相手を選べる(MTGは受ける側がブロックするか選べる)

ここがつらいよShadowverse

以下つらみ

  • シミュレータがない

同じカードゲームであるMagic: The Gatheringでは公式で運営に損害を与えない範囲でツールの開発を許可しておりオープンソースなシミュレータが存在する。対するシャドウバースにはそういったものがなく、そこから作らないといけない。

  • 棋譜がない

コンピュータ囲碁、将棋の世界ではプロ棋士の棋譜が容易に手に入るが、シャドウバースでは簡単に手に入らない。Serdowverse Logでデッキの戦績などはみれるが粒度としてはあらい。リプレイ機能はあるので画像認識できれば情報取ることは可能ではある。

  • 理想のデッキで練習するには課金が必要

日本のeスポーツには法律上の制限があり、出演者から出場料をとると賭博にあたり刑罰、顧客を誘引するための"景品"とみなされると賞金は10万までとなる。

Shadowverseでは出場料をとらず、大会onlyでカード選択の制限を外すことで回避しているが、大会以外で練習するためには当然カードを集めるために課金が必要であり、上位プレイヤーはある程度つぎこんでいる。

  • 物理では実現できないことがおきる

相手の場のカードを弱いカードに強制変換するスペル、山札にレアカードを追加するスペル、山札を強力なカードだけ入ったアポカリプスデッキに変換するカードなどがある。物理的なカードゲームでは実現できないこともデジタルではやり放題。機会学習の観点で言えばとある特異点で一気に評価値が変わるイメージ。

成金して王手をさしたら歩に変えられて周りの敵は全員飛車角になっていた。

  • スタン落ちのはやさ

トレーディングカードゲームの大会では今までに出された全てのカードを使えるルールの他に、直近何シリーズのカードのみに制限されたルールでプレイされることも多い。シャドウバースではローテーションがこれにあたり、大会ルールは基本これの模様。

シャドウバースは3ヶ月に一度、新しいカードシリーズが出ており、直近5シリーズが使えるためカード寿命は1.25年。ハースストーンでは2年MTGも約2年

  • 運営の都合でパラメーターが変わる

ゲーム調整のためか"上方修正"の名の下に同一カードのパラメーターが変わる。せっかくシミュレーションしたのにプレイする頃にはカードの値が変わってた。

  • 組み合わせの多さ

f:id:hiromichinomata:20190208081218p:plain

物理カードゲームとは違い、プレイヤーはデッキ構築に全てのカードを使えない。各ヒーローそれぞれが選べるカードグループに制限がある。また特殊効果もそれぞれ違う。

  • 画像だけからだと評価値の計算が困難

DQNなどの手法ではプレイ画像そのものを入力として強化学習のモデルに入れている。単なる迷路探索ならそれでもよいが、カードの中には今まで自分の受けた回数分、相手のプレイヤーにダメージを与えるカードなどもあり、緻密な計算は画像からだと難しそう。

所感

Shadowverse Pro Leagueの選手は最低月収30万円、優秀なチームには年間2000万円追加で払われる。スポンサーになるのはてっきりIT企業ばかりかと思っていたが、老舗企業も多い。

囲碁・将棋でプログラムが強くなりすぎた結果か、将棋電王戦も2017/11月に終了しており、人間 vs AIという文脈では飽和気味。直近ではDeepMindが(TCGでないが)カードゲーム用の検証環境を出しており、電王Shadowverseとか面白そうだなと思いました。