TadaoYamaokaの日記

山岡忠夫Homeで公開しているプログラムの開発ネタを中心に書いていきます。

AlphaStarの論文を読む その4

続きです。

前回までで論文の本文を紹介しました。
今回からMethodsを読んでいきます。本文と内容の重複もあります。
ほぼだらだらと訳しただけです。

ゲームとインターフェイス

ゲーム環境

  • StarCraftは、SF世界で行われるリアルタイム戦略ゲーム
  • 1998年にBlizzard EntertainmentStarCraftをリリースして以来、数千万ドルの賞金のある強力な競技コミュニティが存在
  • StarCraft IIの最も一般的な競技設定は1対1で、各プレイヤーは3つの利用可能な種族、Terran、Protoss、およびZergから1つを選択
  • プレイヤーは小さな基地と少数の労働者ユニットから始め、リソースを集めて追加のユニットや建物を建設し、敵を偵察し、新しい技術を研究する
  • プレイヤーはすべての建物を失うと敗北する

AIと人間の公平性

  • リアルタイムゲームの人間とコンピューターの対戦の公平性の概念は広く受け入れられていない
  • 対戦条件、インターフェース、カメラビュー、アクションレート制限、遅延は、プロのStarCraft IIプレイヤーとBlizzardと協議して開発された
  • AlphaStarのプレイ条件は、プロプレイヤーが承認したもの(プロ選手の声明を参照)

(抄訳)
AlphaStarには優れた正確な制御機能がありますが、超人間的な感覚はありません。人間が理論的に達成できないレベルではありません。
人間よりもいくつかの面で優れており、他の面でも悪化していますが、もちろんAlphaStarと人間のプレイヤーの間には避けられない違いがあります。
StarCraftの「本物の」ゲームをプレイしており、非現実的な機能を備えているためにバランスが完全に失われないように、非常に公平に感じます。 カメラの表示が制限されているため、マルチタスクを実行するときに常にすべてを同時に捕捉できるとは限らないため、その側面も非常に公平で人間らしく感じられます。

  • エージェントの各ステップで、方策は観測o_tを受け取り、ゲームインターフェイスを介して行動a_tを行う
  • エージェントステップごとに数ゲームタイムステップ(それぞれ45ミリ秒)が存在する場合がある

カメラビュー

  • 人間は、マップの一部だけを表示する画面を通じてStarCraftをプレイする。マップ全体の高レベルのビューも表示する。
  • エージェントは、同様のカメラのようなインターフェイスを介してゲームと対話する
  • これにより、自然に注意の経済性が課される
  • そのため、エージェントは完全に表示して対話する領域を選択する
  • エージェントは、行動としてカメラを移動できる
  • カメラの外側の敵ユニットには特定の情報が隠されており、エージェントは特定の行動(建物の建築など)についてのみカメラ内をターゲットできる
  • AlphaStarは、カメラの外側で人間よりも正確に位置をターゲットにできるが、ターゲットの位置(256x256グリッド)はカメラの内側と外側で同じように扱われるため、AlphaStarの位置の精度は低い
  • エージェントはユニットのセットを任意の場所で選択することができるが、人間のコントロールグループの使用程柔軟性がない
  • 実際には、エージェントはこれらの追加機能を活用していないようである
  • アブレーション図3Hは、このカメラビューを使用するとパフォーマンスが低下することを示している

APMの制限

  • 人間には、実行できる1分あたりのアクション数(APM)が物理的に制限がある
  • エージェントには、APMの制限を強制する監視レイヤーがある
  • これにより、行動の優先順位付けが必要になる経済性が導入される
  • エージェントは、5秒のウィンドウごとに重複しないアクションの実行に最大22の制限がある
  • 行動とゲームで測定されるAPM間の変換は簡単ではなく、エージェントの行動は人間の行動と比較するのは困難
  • コンピューターはステップごとに異なるアクションを正確に実行できる

f:id:TadaoYamaoka:20191103220842p:plain:w250

遅延

  • 人間には、新しい情報に反応する速さが制限がある
  • AlphaStarには2つの遅延源がある
  • 第一に、(訓練ではない)リアルタイム評価では、AlphaStarには、フレームが観測されてから、レイテンシ、観測処理、および推論のために行動が実行されるまでに約110ミリ秒の遅延がある
  • 第二に、エージェントは次を観測するタイミングを事前に決定するため(平均370ミリ秒、場合によっては数秒)、予期しない状況に遅れて反応する場合がある

f:id:TadaoYamaoka:20191103220814p:plain:w250

感想

個人的には技術的な内容の方に興味がありますが、対戦条件や、反応速度でのAIのアドバンテージに対する公平性について、AIが人間を超えたかという点では関心が深い部分だと思います。

関連研究

リアルタイム戦略(RTS)ゲーム
  • リアルタイム戦略(RTS)ゲームは、ゲーム理論ドメインの複雑さで知られている
  • RTSゲームの多くの副次的な問題、例えばマイクロ管理、基本経済、またはビルドオーダーの最適化は、多くの場合小規模な環境で詳細に研究されている
  • 課題の複合さのために、StarCraftドメインは研究課題として取り上げられた
  • StarCraft:Brood Warには、活発なAI研究コミュニティがあり、ほとんどのボットは、ルールベースのヒューリスティックと、探索、データ駆動型ビルド順序選択、シミュレーションなどの他のAI技術を組み合わせている
  • ゲーム内のユニットを制御するための強化学習も研究されており、ユニットおよび建物の建築を学習するための模倣学習が提案されている
  • 最近では、将来のゲームの状態を予測するためにディープラーニングが使用されている
  • StarCraft IIも同様に、パブリックAPIのリリース以降、アクティブなボットコミュニティがある
  • StarCraftのボットはプロのプレイヤーや上位の一般プレイヤーを倒せなかった
  • 最も成功したボットは、毎分何万もの行動を実行したり、マップ全体を一度に表示したりする超人的な機能を使用していた
  • これらの機能により、人間との比較が難しくなり、特定の戦略が無意味になる
  • 最新のアプローチのいくつかは、強化学習を使用して、手作りの高レベルのアクション、または機械学習コンポーネントを徐々に置き換えるルールベースのシステムで、ゲーム全体をプレイする
  • 対照的に、AlphaStarは、不完全なモデルによる探索ベースの方法の難しさを回避するStarCraft IIをプレイするためのモデルフリーのエンドツーエンドの学習アプローチを提案する
  • これは、StarCraftといくつかの課題を共有するすべてのドメインに適用できる
  • Dota 2は、StarCraftなどのRTSゲームの複雑さ(不完全情報や長期性など)を共有する最新の競争力のあるチームゲーム
  • 最近、OpenAI FiveはプロのDota 2プレイヤーと99.4%のオンラインプレイヤーのチームを破った
  • OpenAI Fiveのヒーローユニットは、手作りの報酬に基づいてスケールアップされたバージョンのPPOと一緒に訓練されたエージェントのチームによって制御される
  • ただし、AlphaStarとは異なり、一部のゲームルールは簡素化され、プレイヤーはヒーローのサブセットに制限され、エージェントはゲームの特定の側面にハードコードされたサブシステムを使用し、エージェントはカメラビューを制限しなかった
感想

OpenAI FiveもAlphaStarと同じくRTSに取り組んでいるAIです。
StarCraftは1vs1ですが、Dota2は、5vs5のチームプレーでStarCraftとは異なる難しさがありそうです。
PPOも方策勾配法を安定させる手法で、使っている技術もAlphaStarと類似しています。

模倣学習
  • AlphaStarは、強化学習と組み合わせた模倣学習に依存している
  • AlphaStarのトレーニングパイプラインと同様に、初期のAlphaGoは、人間のゲームからの教師付き学習によって方策ネットワークを初期化し、その後、モンテカルロツリー探索で事前確率として使用された
  • AlphaStarの統計zと同様に、他の研究では、人間の好みから報酬関数を訓練し、それを使用して強化学習や人間の介入から得られた目標を導いている
リーグ