BlizzardとDeepMindが『StarCraft II』を利用した機械学習の研究用ツールを公開。目標は打倒プロゲーマー
Blizzard Entertainment(以下、Blizzard)とDeepMind Technologies(以下、DeepMind)は8月9日、『StarCraft II』を利用した機械学習の研究用ツール(総称SC2LE=StarCraft II Learning Environment)を公開した。同分野における両社の提携は、2016年11月のBlizzCon 2016にて発表されたものだ(関連記事)。
Blizzardが公開した「StarCraft II Machine Learning API」は、スクリプトまたは機械学習ベースのbot、リプレイデータの分析、ツール・アシストのソフトウェア開発に必要な機能を提供。匿名化された人間同士の対戦データも数万件単位で用意される。DeepMindからは、オープンソースのPythonコンポーネント「PySC2」が公開されており、ゲーム内の各要素(ユニットタイプ、体力、視界等)をレイヤー分けした「Feature layer」インターフェイスによる強化学習研究が可能となっている。
「Feature layer」は、ゲーム内の各要素を細かく分解することで、強化学習エージェントにとって学習しやすい環境をつくり出す役割を担っている。将来的には人間と同じ土俵で戦うべく、人間プレイヤーが目にするものと同じRGBピクセルでの学習環境が提供される予定だ。また研究用ツールには通常のゲームモードだけでなく、採掘やカメラ移動といったゲームの一要素に特化した検証用ミニゲームのサンプルが含まれており、個別タスクのパフォーマンスを測ることが可能。もちろん、ツール利用者が研究用のミニゲームを独自に開発することも歓迎されている。
Google傘下でAI研究を進めているDeepMindのミッションは、AIの可能性を広げ、研究の成果をエネルギーや医療分野(DeepMind Health)といった現実社会における問題解決に活かすこと。ディープラーニングと強化学習を組み合わせた「Deep Reinforcement Learning」に力を入れており、過去にはAtari 2600のゲームにて人間以上のスコアを叩き出した学習アルゴリズム「DQN(Deep Q-Network)」、世界で初めてプロ棋士に勝利した「Alpha Go」などで結果を出している。DeepMindの機械学習技術は、データセンターの冷却設備最適化を目的としたAI開発にも応用され、Google社のデータセンターにて冷却電力の削減に成功している。
DeepMindが機械学習の研究材料としてゲームに注目し続けている理由としては、勝敗やスコアといった成果を図るための指標が明確であることはもちろんのこと、プレイヤー人口が多い作品であればあるほど大量の観測用データを確保しやすいというメリットが挙げられる。作品によっては、長時間の鍛錬を重ねたエキスパートとの比較が可能となるほか、学習環境の制御しやすさ、スケールのしやすさも利点のひとつとなっている。
数多あるゲームのなかでも『StarCraft II』が選ばれた理由には、まずAtari作品や囲碁とは比べものにならない複雑な情報処理が求められるRTSであることが挙げられる。また『StarCraft』はe-Sportsのパイオニアとなった人気シリーズ。プレイヤー人口が多く、新しい対戦データがコンスタントに手に入る。強化学習の研究に適した環境が整っているのだ。
囲碁や将棋とは違い、一度に得られる情報量がカメラの視界により制限されること、戦場の霧(Fog of War)による不確定要素が存在することなど、不確実性を考慮した問題解決が求められることから、本作での研究成果は、現実社会における難解なシチュエーションの改善・解決に役立てられると期待されている。ただし、複雑な局面の把握と素早い判断、長期的な視野を持った戦略立て、1億通り以上にもおよぶ行動の選択肢など、DeepMindが過去に挑戦したゲームとは比べものにならないチャレンジが待っており、Blizzard/DeepMindが実施したテストでは、ゲームに実装されている最低レベルのAI相手にも苦戦。時間切れによる引き分けに持ち込むのがやっとであった(公式サイトのリリースペーパー参照)。
上の動画のように、ゲーム内の特定要素だけを抜き出したミニゲームでは、ある程度は効率良く動けており、中級レベルの人間プレイヤーと同等、もしくはそれ以上の成績を残せている。それでもハイランクのプレイヤーには及ばないケースが目立ち、比較的簡単な処理ですらプロレベルに達するのは難しいというテスト結果が出ている。なお補足として、人間プレイヤーと同等の条件を保てるよう、エージェントの処理能力は180APM(Actions Per Minute = 1分間あたりの操作量)相当に制限されている。参考として人間プレイヤーは30から300APM、プロプレイヤーは500APM以上で操作できる。
『StarCraft II』を使った研究の長期目標はプロゲーマーを相手に勝利すること。そのゴールを実現するためにも、Blizzard/DeepMindは、エージェントを実戦に放り込むだけでなく、人間同士のプレイデータを観測させることで、ルールの把握、行動順序のモデル形成、プレイヤーの行動予測を強化することを推奨している。両社によるテスト結果から、プロゲーマーのレベルに達するまでには長い道のりが残されていると推測できるが、研究用ツールが一般公開されたいま、ブレイクスルーにより研究が進展する可能性は大きく広まったといえるだろう。