Successfully reported this slideshow.
Your SlideShare is downloading. ×

最新の多様な深層強化学習モデルとその応用(第40回強化学習アーキテクチャ講演資料)

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad

Check these out next

1 of 105 Ad

最新の多様な深層強化学習モデルとその応用(第40回強化学習アーキテクチャ講演資料)

Download to read offline

第40回強化学習アーキテクチャの講演で私が使用した資料です.内発的報酬,マルチエージェント学習,ゲーム理論など,従来の深層強化学習とは異なった視点の手法についていくつか解説しています.

第40回強化学習アーキテクチャの講演で私が使用した資料です.内発的報酬,マルチエージェント学習,ゲーム理論など,従来の深層強化学習とは異なった視点の手法についていくつか解説しています.

Advertisement
Advertisement

More Related Content

Slideshows for you (20)

Recently uploaded (20)

Advertisement

最新の多様な深層強化学習モデルとその応用(第40回強化学習アーキテクチャ講演資料)

  1. 1. 第40回強化学習アーキテクチャ 最新の多様な深層強化学習モデルと その応用 東京大学 大学院工学系研究科 技術経営戦略学専攻 今井 翔太 Email:imais@weblab.t.u-tokyo.ac.jp 2019年7月2日(2020年9月修正公開) Twitter:えるエル@ImAI_Eruel
  2. 2. 本資料について  本資料は2019年7月に行われた強化学習アーキテクチャ勉強会で今井が使用したものを 自主公開版として一部修正したものです  新たにSlideShareで公開するにあたり,一部内容の修正(所属,手法の説明等)や表現 の変更を加えました Shota Imai | The University of Tokyo 2
  3. 3. 目次  内発的報酬(好奇心)による強化学習 - World Discovery Models - Social Influence as Intrinsic Motivation for Multi-Agent Deep Reinforcement Learning  マルチエージェント学習とゲーム理論,AlphaStarへの応用  OpenAI Five
  4. 4. 内発的報酬(好奇心)による 強化学習 Shota Imai | The University of Tokyo 4
  5. 5. 強化学習における外的報酬と内発的報酬 外発的報酬(Extrinsic Reward) - 環境で本来の目的を達成したときに獲得できる報酬𝑅 𝑒 内発的報酬(Intrinsic Reward) - 環境内で何らかの基準で,エージェント自身が勝手に生み出す報酬𝑅𝑖.探索ボーナス とも 最終的に受け取る報酬:𝑅 = 𝑅 𝑒 + 𝑅𝑖 エージェン ト 報酬 普通の強化学習 外的な報酬だけに頼った場合 でも,ランダム探索で現実的 な時間で学習可能 報酬がスパースな場合 ランダム探索では,いつまで たっても報酬到達しない →何らかの基準で内発的報酬 を生成し,探索に方向性,偏 りを与える 例)行ったことのない状態に 到達すると報酬生成 エージェント 報酬 5 報酬がスパースなタスクで はほとんどの場合0 報酬がスパースなタスクでも0になりにくく,外発 的報酬に代わって価値関数改善のきっかけとなる
  6. 6. 内発的報酬の例:カウントベースの内発的報酬  ある状態𝑠で選択した行動aの回数をカウントし,𝑛(𝑠, 𝑎)とする  𝑛(𝑠, 𝑎)に反比例して内発的報酬を与えると,𝑛(𝑠, 𝑎)が少ない (新規性が高い)状態遷移の 価値評価が高まる いままであまり選択しなかった行動を選択すると,内発的報酬は, 𝛽 𝑛(𝑠, 𝑎 𝑢𝑝) = 𝛽 1 𝛽 𝑛(𝑠, 𝑎𝑙𝑒𝑓𝑡) = 𝛽 2 と大きくなり,行動価値, 𝑄 𝑠, 𝑎 𝑢𝑝 や 𝑄 𝑠, 𝑎𝑙𝑒𝑓𝑡 は高く評価される 一方,今まで何度も選択した行動を選択すると,内発的報酬は, 𝛽 𝑛(𝑠, 𝑎 𝑑𝑜𝑤𝑛) = 𝛽 𝑛(𝑠, 𝑎 𝑟𝑖𝑔ℎ𝑡) = 𝛽 4 と小さくなり,行動価値, 𝑄 𝑠, 𝑎 𝑢𝑝 や 𝑄 𝑠, 𝑎𝑙𝑒𝑓𝑡 は低く評価される 内発的報酬𝑅𝑖𝑛 𝑛(𝑠, 𝑎 𝑟𝑖𝑔ℎ𝑡)=4𝑛(𝑠, 𝑎𝑙𝑒𝑓𝑡)=2 𝑛(𝑠, 𝑎 𝑑𝑜𝑤𝑛)=4 𝑛(𝑠, 𝑎 𝑢𝑝)=1 Shota Imai | The University of Tokyo 6
  7. 7. 内発的報酬の例  カウントベース - ある状態への訪問回数を明示的にカウント - カウントが少ないものは報酬大 - 探索空間が膨大すぎる場合は意味をなさない  疑似カウント - 探索空間が膨大すぎる場合に使用 - 状態を抽象化し,似た状態も含めて大体どれくらい訪問が集中しているか(密度)を推定し, 密度が小さいものに報酬大  予測誤差 - 探索しながら環境に対する予測モデル(ほとんどNN)を学習し,モデルの出力と実際の観測の 誤差により内発的報酬生成 - 予測誤差が大きい=十分な探索が行われていないと判断し,内発的報酬を多く割り当てる
  8. 8. 世界モデルによる内発的報酬を用いたノイズのある環境の探索 World Discovery Models [Azar, Poit +] 論文概要 環境内の正確な把握を行うために,オンラインで世界モデルを学習し,観 測から世界モデルが得た情報で内発的報酬生成 派手な名前だが,内容的には内発的報酬系の先行研究の堅実な発展という 感じ
  9. 9. 背景/既存の内発的報酬による探索の問題点  既存の内発的報酬による探索は,環境がfully observableだったり,遷移が決定的な場合 を想定していた  予測誤差による内発報酬で上記のような環境の探索を行うと,いわゆるNoisy-TVプロブ レムが起こることが知られている  本研究は上記のような環境でも安定した探索+学習が可能かつ,新しい指標として,環 境(世界)に対して自分が知っていることの表現獲得を指標
  10. 10. NoisyTV problem  Unity(ゲームエンジン)で作った強化学習環境に,次々と違う映像が映し出されるテレ ビを設置し,内発的報酬による探索をさせてみた →エージェントの動きが止まってしまう 理由 - 常に観測がランダム変化することで,予測器の学習が意味をなさず,TVを観測する状態に高 い報酬が生成されるため 環境内の無意味な情報を無視できる 特徴抽出が必要 Shota Imai | The University of Tokyo 10 エージェント視点 壁のTVに映し出される画像が高速で切り替わり続ける ↑常に変化 ↑どれだけ学習 しても予測でき ない
  11. 11. 提案手法/NDIGO (Neural Differential Information Gain Optimization) 世界モデルの表現から複数ステップ先の観測予測分布を用い,予測とのズレから 内発的報酬を生成する探索手法NDIGOを提案 世界モデル(World Model) 今までの遷移情報から得た表現を保持するRNN(GRU)と,その表現を用いて, kステップ先の観測𝑜𝑡+𝑘の確率分布 𝑝𝑡+𝑘|𝑡を出力するMLPからなる Reward Generator 世界モデルの出力から内発的報酬生成 RL Agent 実際に報酬を受け取って方策を学習する部分 (世界モデル的にはコントローラ).R2D2で学習 Evaluation 探索性能向上や方策改善とは直接関係ない. 世界モデルの内部表現の良さを評価する部分
  12. 12. NDIGO/世界モデル 各タイムステップkにおける観測の分布を出 力 各タイムステップにおける行動と, GRUの出力をMLPの入力とする
  13. 13. NDIGO/内発的報酬の生成 あるステップkのMLPの損失は,実際の観測𝑜𝑡+𝑘と出力分布 𝑝𝑡+𝑘|𝑡のクロスエントロピー誤 差を用いて計算 世界モデルの表現を学習するのに使用する損失は,上記の各損失の和 時刻t-1のときの世界モデルの表現から計算したt+Hの予測誤差と,時刻tの時の世界モデル の表現から計算したt+Hの予測誤差の差を内発的報酬とする. ※使用する世界モデルの表現の時刻にはズレがあるが,予測先の時刻は同じ  時刻tにおいて役に立たない(予測誤差を改善しない)観測𝑜𝑡があった場合には低い報酬を割り当てるため,Noisy-TVが生み出 す新しい観測でも環境に対する情報を何も改善しないような観測に対して低い報酬を割り当てる  PGと比べて,長期的な予測の改善に役立つ観測に報酬を割り当てる Shota Imai | The University of Tokyo 13 直観的には,1つの時間ステップでどれだけ予測 誤差を減らせたかを測り,予測誤差改善の大き かった時刻に大きい報酬を割り当てる 時刻t-1時の予測誤差 (1タイムステップ分だ け情報が少ないので大) 時刻t時の予測誤差 (1タイムステップ分だけ情 報が多いので少)
  14. 14. 内部状態の評価  探索中の世界モデル,方策改善とは関係なく,世界モデルの内部表現の良さを評価する 部分  時刻tのRNN(GRU)の出力𝑏𝑡を用いた現在の状態(partialな観測ではない)予測と,実際の 状態の予測誤差を見ている  この部分では,評価のためにfully-observableな状態を与えてしまっているため,この部 分の勾配情報は世界モデルの方に伝播しないようにする
  15. 15. 実験  実験設定 - Pycolabというライブラリから確率的に移動するオブジェクトが複数存在する環境5roomと mazeを使用 - エージェントの観測は自分を中心に5×5マス  ベースライン - PE (Prediction Error):通常の予測誤差 - PG (Prediction Gain):時間のあるネットワークの予測誤差の差 - ICM (Intrinsic Curiosity Module):順予測と逆モデルを用いた状態遷移間の行動を予測を使用し た報酬生成.私の別資料に解説あり (https://www.slideshare.net/ShotaImai3/curiosity-reinforcement-learning-238344056)  評価指標 - Discovery loss:世界モデルから得られる環境の状態予測と実際の環境のズレを測る 各オブジェクトの位置に対して計算可能 - First-visit time:1エピソードであるオブジェクトを観測するのに要したステップ数 - Visit counts:1エピソードであるオブジェクトを何度観測したか
  16. 16. 実験/環境解説  5room - 壁に囲まれた5の部屋からなるマップ - エージェントは各エピソードごとに中央の部屋で生成 - 各オブジェクトは部屋内のみに存在し,外へ出ない  Maze - 6つの部屋からなる,進行方向が一方向の環境 - エージェントは中央のルーム0で生成  環境内オブジェクト - Fixed:固定されて移動しないオブジェクト - Bouncing:縦方向に壁to壁の移動 - Brownian:4方向にランダム移動 - White noise:部屋内をランダムにワープ移動. →予測不可なので,無視すべき存在 - Movable:エージェントが同じセルにくると進行方向へ移動
  17. 17. 実験1 5roomでwhite noiseを無視して,fixedオブジェクトに関する情報を改善するように行動で きるか&正確にfixedの状態を推定できるか評価 • H=4のNDIGOエージェントがDiscovery loss小 →fixedの位置を正確に推定できている • fixedのvisit countが大→fixedに集中して行動 • White noiseのvisit countが小→white noiseを無視できている • Fixedのvisit timeが小→すぐにfixedを発見可能 • White noiseのvisit timeが大:white noiseに向かわない行動
  18. 18. オブジェクトの状態推定の改善  時間が進むごとに,fixed(赤色オブジェクト)の状態推定の正確さが増している  White noise (黄緑)は推定できないので,ずっとバラバラなまま
  19. 19. 実験2 実験1とあまり設定が変わらないので割愛
  20. 20. 実験3 動き回るbouncingオブジェクトの動きを把握して,boucingオブジェクトの状態を推定で きるか評価
  21. 21. 実験4 Brownianオブジェクトがある設定でエージェントがfixedオブジェクトの状態推定をに集中 するタスクで,H(どれだけ未来の出来事を考慮するか)の影響度合いを評価 BrownianオブジェクトはWhite noiseと違って隣接マスにしか移動しないため,動きを予 測できそうだが実際にはランダムなので予測不可 →Hを増やしてより未来の予測誤差を考慮すると,Brownianに集中しても意味がないこと が把握できている Shota Imai | The University of Tokyo 21
  22. 22. 実験5 迷路探索で,white noiseを無視しつつ部屋を探索し,fixed,movableオブジェクトの状態 を推定できるか評価 • Visit frequency大:どのエピソードでも多くの部屋に到達でき ている • First visit time小:少ないステップで多くの部屋に到達可
  23. 23. 結論・私見  複雑な環境で世界モデルを構築するのは現実的に不可能であり,本手法のように必要な 情報のみに集中して内部モデルを改善していく手法は重要  ただ,本手法は環境の「複雑性」が足りない気がしていて,例えばロボットが広大な3次 元空間を把握する場合に生かせるかは検討が必要  重要な情報を保持しながら世界モデルを構築するのはいいが,構築した世界モデルでな にができるか,が重要
  24. 24. 他のエージェントへの影響度に対して内発的報酬を与え て協調行動 Social Influence as Intrinsic Motivation for Multi-Agent Deep Reinforcement Learning [Jaques +](ICML2019) 論文概要  マルチエージェント強化学習で,エージェント間の協調行動を促すために内発的報酬を 導入  あるエージェント行動が別のエージェントに与えた影響を測り,影響度が高い行動に対 して高い内発的報酬を生成
  25. 25. マルチエージェント強化学習 (MARL Multi-Agent Reinforcement Learning) 環境内に複数のエージェント(マルチエージェント)がいる状態で各エー ジェントが学習を行う強化学習設定 ある状態のエージェントが行動した結果が決定的にならない(他のエー ジェントの影響を受ける)ため,普通の強化学習アルゴリズムではうまく 学習できない 大体競争的なもの,協調的なものに分けられる 協調行動のタスク例:複数エージェントによる捕獲 ゲーム • 視界が限られている複数エージェントが情報を交 換しながら,対象を捕獲するゲーム • 各エージェントがバラバラに追うのではなく,視 界の情報を他エージェントに伝えることでタスク 達成が容易に • 単一エージェントでもタスク達成は可能だが,時 間的に割り引くと獲得報酬は少なくなる • ↑の問題はSequential Social Dilemmas(SSD)とも
  26. 26. マルチエージェント強化学習における内発的報酬 普通のマルチエージェント強化学習  エージェント同士の行動の組合せが偶然効果を発揮し,良い結果が出たときのみに報酬 →偶然の発生に頼るしかなく,不安定 内発的報酬を導入すると・・・  あるエージェントが何かをしたときに他のエージェントに与えた影響が大きい場合に追 加報酬 →成功=報酬に到達する必要はないため,頻繁に起きる つまり,集団に対する影響が大きい行動を優先的に選択するようにすることで,目的を達 成しやすくしている 注意:決して”良い”行動に報酬を与えているわけではない!!
  27. 27. 内発的報酬を加えたエージェントの報酬 ある時刻𝑡におけるエージェント𝑘の報酬𝑟𝑡 𝑘 を以下の式で表す 𝐶𝑡 𝑘 が他のエージェントに影響を与える(行動の確率分布を大きく変える)ことに対する内 発的報酬となっている 外発的報酬 (本来の意味での報 酬) 内発的報酬(ある基準を満たして得る特殊な報 酬)
  28. 28. 内発的報酬の生成方式 記号定義 𝑝(𝑎 𝑡 𝑗 |𝑎 𝑡 𝑘 , 𝑠𝑡 𝑗 ):エージェントk(影響を与える側 インフルエンサー)がある時刻𝑡で行動𝑎 𝑡 𝑘 を選 択した場合に,エージェントjが状態𝑠𝑡 𝑗 で選択する行動𝑎 𝑡 𝑗 の分布 𝑝(𝑎 𝑡 𝑗 |𝑎 𝑡 ~𝑘 , 𝑠𝑡 𝑗 ):エージェントkがある時刻𝑡で行動𝑎 𝑡 𝑘 以外(Counterfactual action)を選択した 場合に,エージェントjが状態𝑠𝑡 𝑗 で選択する行動𝑎 𝑡 𝑗 の分布 𝑝(𝑎 𝑡 𝑗 |, 𝑠𝑡 𝑗 ):エージェント𝑗(影響を与えられる側 k以外の全エージェント)がエージェント𝑘 の影響を一切受けなかった時にエージェント𝑗が状態𝑠𝑡 𝑗 で選択する行動𝑎 𝑡 𝑗 の分布 以上の要素を考えると,エージェント𝑘の内発的報酬𝐶𝑡 𝑘 は以下の式で定義される エージェントkがある行動𝑎 𝑡 𝑘 を選ばなかった 場合(反事実 Counterfactual)を仮定し, 𝑎 𝑡 𝑘 とその他の行動が他の全エージェントjの 行動分布に与えた影響を比較して,𝑎 𝑡 𝑘 の影 響度に応じて報酬を生成 ↓周辺化
  29. 29. もうちょっと詳しく 実際にはエージェントの観測が部分観測の問題を想定しているため,状態 𝑠𝑡は,𝐿𝑆𝑇𝑀などの時系列処理機構を用いて過去の観測を含んだ表現𝑧𝑡で表す 最終的には,インフルエンサーのエージェントkの行 動と他のエージェントjの行動の相互情報量に帰着 実用的(実装上)にはエージェントkが別の行動をとってい た場合に他のエージェントに与えた影響は陽に表現できない ため,タスク中で得た行動履歴のサンプル平均を用いて近似 する
  30. 30. (一応)KLダイバージェンス  確率分布間の距離を測る指標  直観的には確率分布の形がどれくらい違うか,を測っている  𝐷 𝑘𝑙[確率分布1||確率分布2]のように表記する 時刻𝑡でエージェント𝑘が行動𝑎 𝑡 𝑘 を取ったとき エージェント𝑗が状態𝑠でとる行動𝑎 𝑡 𝑗 𝑎の選択 確率 時刻𝑡でエージェント𝑘が行動𝑎 𝑡 𝑘 以外(𝑎 𝑡 ~𝑘 )を 取ったときエージェント𝑗が状態𝑠でとる行動 𝑎 𝑡 𝑗 の選択確率 KLダイバージェンスで,確率分布間の 距離=エージェント𝑘の行動がエージェ ント𝑗に与えた影響を測る なお,確率分布間の距離尺度はKL ダイバージェンスに限らず,JSD (Jansen-Shannon Divergence)な
  31. 31. 実験タスク設定 前提条件:各エージェントの視覚は限られている Cleanup あるエージェントが川(画面内暗い青色)のゴミ(茶色)に対して一定範囲のお掃除ビー ムを出してゴミを消すと,マップ内にリンゴ(緑)が出現.エージェントがリンゴと同じ マスに行くと報酬獲得.あるエージェントが川の掃除をしつつ,各エージェントは他の エージェントが見えないものを率先して取ることが必要 Harvest エリア内のリンゴ(緑)を収穫ビームの範囲に入れると報酬を得る.リンゴは収穫後に生 えてくるが,生えてくる速度は近くのリンゴの量に比例する.エージェントが近くのリン ゴを取り合うと,みんな報酬を得られなくなってしまう Cleanup Harvest
  32. 32. 実験1/エージェントが明示的なコミュニケーション 機構を持たない場合 実験設定  エージェントは他のエージェントと一切やり取りせず,あくまで視界内の環境の画像の みを入力して独立に行動  先ほど説明した「偶然他のエージェントに影響を与えた行動」に内発的報酬を与えるこ とで,結果的に協調行動ができるか確認  エージェントの個々はそれぞれ自身の報酬の最大化を目指すが,タスクとしては、エー ジェント全員が得た報酬の総量をおおきくすることを目指す  エージェントのアーキテクチャは、LSTM,畳み込みレイヤを用いた深層強化学習手法 A3C 実験環境  Cleanup,Harvestという複数エージェントが環境内で協調して報酬を得るタスクで評価
  33. 33. 実験1/結果 縦軸が全エージェントの総獲得報酬量.横軸はステップ数(経過時間) Infuluenceが論文の提案手法 他の手法より最終的な獲得報酬量が大きくなっている=協力してタスクをこなせ るようになっている 獲得報酬が増え始めるまで時間がかかっているのがネック
  34. 34. 実験2/エージェントが明示的なコミュニケーション機構 を持つ場合 先ほどの実験では,各エージェントが自分の視界の画像の観測のみから行 動の影響を計算し,協調行動ができるよう学習 →明示的にコミュニケーションができる機構を導入した場合にどうなるか 実験 実験設定 エージェント𝑘はステップ毎にシンボル𝑚 𝑡 𝑘 を生成.各エージェントの生成 シンボルを集めて(𝑚 𝑡 0 , 𝑚 𝑡 1 , … 𝑚 𝑡 𝑁 )としたものをN体のエージェントNNの入 力の一部に 各エージェントはアーキテクチャ内にシンボル生成方策部𝜋 𝑚を持ち,こ の方策によって生成したシンボルが他のエージェントに与えた影響により 報酬生成(𝜋 𝑒は外発的報酬で自分の行動のみ制御)
  35. 35. 実験2/結果 非常に速い段階から協調が行われ,獲得報酬が増加し続ける →単に環境全体を入力とするよりも,コミュニケーション機構を持っ て, コミュニケーション手法を学習した方が 効率が良い
  36. 36. 実験3/各エージェントが他のエージェントの行動を モデリングできる場合 実験設定  各エージェントが他のエージェントの行動を入力して他のエージェントの行動の予測 𝑝(𝑎 𝑡+1|𝑎 𝑡, 𝑠𝑡 𝑘 )を出力する機構(LSTM)を持つ →MOA(Model of Other Agent)  つまり,各エージェントは自分の行動をした結果としての他のエージェントの行動を”想 像(妄想)”して,自分の影響力に応じて内発的報酬を得る
  37. 37. 実験結果 Cleanupではうまくいっているが,Harvestでは協調行動の開始が極端に 遅い
  38. 38. AlphaStar Shota Imai | The University of Tokyo 38
  39. 39. 関連する手法・論文 以下がAlphaStarの関連手法・論文 (有名な手法,手法名が論文名そのままのものは論文記載を割愛)  学習するニューラルネットのアーキテクチャ - ResNet - Transformer - LSTM - Pointer Networks  方策学習アルゴリズム - IMPALA 論文:IMPALA: Scalable Distributed Deep-RL with Importance Weighted Actor-Learner Architectures - Self Imitation Learning - Policy Distillation - Counterfactual Multi-Agent Policy Gradients(COMA)  マルチエージェント学習 - FTW(For The Win) agent 論文:Human-level performance in first-person multiplayer games with population-based deep reinforcement learning - PSRO(Policy-Space Response Oracles) 論文:A Unified Game-Theoretic Approach to Multiagent Reinforcement Learning - Nash Distribution 論文:Re-evaluating Evaluation Shota Imai | The University of Tokyo 39
  40. 40. AlphaStarの登場  2019年1月24日にDeepMindが生放送で,RTSゲーム「StarCraft2」でプロ級のプレイ ヤーを打倒可能なAIとして公開  SC2はAlphaGo系統が取り組んできた囲碁,将棋などのゲームと違い,ゲームがリアル タイム進行,不完全情報,極めて広大な行動空間を持つなどの特徴があり,人間のプロ 打倒はかなりのブレークスルー 開発者のOriol VinyalsとDavid Silver
  41. 41. AlphaStar/その強さ  SC2のプレイヤーで,世界最強レベルの「グランドマスター」と呼ばれる称号を持つ二 人,Team LiquidのスタープレイヤーであるTLO,MaNaと計10回対戦し全勝  今までも,SC2を対象としたBotなどが存在したが、世界レベルのプロに勝つのは初 TLO MaNa
  42. 42. AlphaStar/ざっくりとした説明  SC2をプレイするエージェントとなるニューラルネットワークを用意し,マルチエー ジェント設定の強化学習を行う  エージェントはLSTM,Transformer,ResNetなど,様々な手法を組み合わせたアーキ テクチャで学習を行う  エージェントは最初に人間のSC2プレイデータから模倣学習を行う  模倣学習後のエージェントから分岐したエージェント同士が自己対戦するAlphaStar Leagueを行い,多様な学習環境からSC2のプロに対抗可能なエージェントを生み出す
  43. 43. StarCraft2 Brizzard Enterainmentが開発したPCゲーム RTS(Real-time Strategy)というゲームジャンルに属するゲームで,プレ イヤーがゲームに関する全ての情報を観測できない不完全情報ゲーム RTSの特徴 - ゲームがリアルタイムで進行(ポケモンやドラクエのようなターン制ではない) - プレイヤーは第三者視点(俯瞰的視点)からステージ全体を見渡し,複数の戦闘手段を駆使し て対戦
  44. 44. SC2対戦の流れ 一般的には2プレイヤーによる1対1の戦争ゲーム プレイヤーは3つの種族から一つを選んで対戦する.各種族にはユニット の技や特性に大きな違いあり 極端な言い方をすれば,たくさん資源を集めて,素早く凄い建物を作って, その建物から強いユニットを生み出して,敵地に攻め込むゲーム プロトス ザーグ テラン 超テクノロジーを持つ超知的生命体 DeepMindのお気に入り 遺伝子操作,人体改造を行った人類 の末裔 進化した寄生生命体
  45. 45. StarCraft2/対戦画面 ミニマップ:対戦フィールド全体の地形図. 自分のユニットがいない部分は詳細を見れ ない ス ク リ ー ン | プ レ イ ヤ ー が 注 目 し て い る エ リ ア 基 本 的 に こ の 画 面 を 見 な が ら プ レ イ プレイヤーが選択可能な行動.現在選択して いるユニットのスキルや建造可能物が表示さ れる 獲 得 資 源 数 , ユ ニ ッ ト 生 産 数
  46. 46. SC2の要素  資源 建造物やユニットの製造の源となる.ミネラルとガスが存在する.これをワーカーと呼ばれる小型ユ ニットでマップから採取し,消費することで建造物やユニットを作成  建物 ユニットを生み出したり,ユニット能力の研究を行う施設.ミネラルを消費して作成され,一度作れ ば壊されるまでは稼働を続ける.建物建造には順番があり,下位の建物建造後でなければ上位の建物 は建造不可  ユニット SC2の対戦で,実際に戦闘を行う兵士,戦車,戦闘機,超生物など.特定の建造物からミネラルとガ スを消費して生み出される.上位の建造物からは上位のユニットが作成可能
  47. 47. 建物の建造順 上位の建物からは強いユニットを生み出せるが,上位の建物を作るためには下位の建物作 成の条件がある (例)プロトスの場合 Gateway Cybernetics Core Fleat Beacon Stargate 最初から建造できる生 産施設.小型の地上戦 力を建造可能 Gateway建造後に建造可 能.この施設がないと上 位施設が建造できない. ユニット生産はできない が,ユニット強化の研究 可能 Cybernetics Core建造後 に解禁.中~大型の空中 ユニットを建造できるよ うになる.大型空中ユ ニットの建造のためには, 他の研究施設の建造が必 要 Cybernetics Core建造後 に解禁.研究を行うこと でユニットの強化ができ る他,建造するだけで, Stargateの大型ユニット が解禁
  48. 48. テックツリー 建物がグレードアップすると,生み出されるユニットも強くなる.生産に 特殊な条件が必要なものも Gatewa y Cybernetics Core Fleat Beacon Stargate 生 産 生産 生産 Void Ray Carrier Zealot プロトスの基本歩兵 敵に近づいて直接攻撃 するのみ かなり強いプロトスの 主力空中ユニット.空 中から強力なレーザー 攻撃を行う SC2最強の強さを誇る大型空中ユニット.複数の小型戦闘 機を艦内に持ち,それらを射出して攻撃
  49. 49. MMR(Match Making Rating) プレイヤーの強さに応じて割り当てられる数字で,オンライン対戦時の マッチングで使用される 5000ちょっとより上がグランドマスターという最上位の称号を持つTLO は6549,MaNaは7468で,グランドマスターでも相当に強い,世界最強 レベルのプレイヤー(ASとの対戦ではTLOは得意種族を使用しなかったの で,もう少し低い)
  50. 50. PySC2  DeepMindが開発した,PythonでSC2のAPIを叩けるSC2の機械学習環境  AlphaStarはこの環境からSC2のデータを直接取得して学習・対戦 している (つまりプレイヤーと違って画面を見ながらのプレイではない) 論文: ”StarCraft II: A New Challenge for Reinforcement Learning” https://arxiv.org/pdf/1708.04782.pdf GitHub: https://github.com/deepmind/pysc2
  51. 51. Feature Layers PySC2経由で受け取れる,SC2内のゲーム要素集 通常のSC2のゲーム画面を抽象化した画像のみならず,画面内のユニット のHP,敵味方の区別,ユニットタイプなどを取得可
  52. 52. AlphaStar League 模倣学習後のエージェントから分岐増殖させつつエージェント(リーグ内 ではCompetitorと呼ばれる)同士で対戦・強化学習を行う 各イテレーションで,エージェントを元に別のエージェントがLeague内 に追加 され,多様性向上のため,過去のエージェントも方策更新を凍結し て残す
  53. 53. 模倣学習  SC2では,特に前半はほぼ必須な戦略(自分のベースの基地にワーカーで資源収集)が 存在  エージェントは膨大な探索空間でランダム探索すると,常識外の行動をしてしまう(前 半からワーカーがバラバラに散ってしまう)  この辺の「常識」や,ある程度確立された戦略を学ぶため,SC2プレイヤーのプレイ データを 用いて模倣学習(アルゴリズムは明言されていない)  模倣学習だけで、大体ゴールド~ダイヤモンド(中級者)相当に到達可能
  54. 54. AlphaStar League/もう少し詳しく  各イテレーションで,エージェントを元に 分岐した別のエージェントがLeague内に追 加され,多様性向上のため,過去のエージェントも方策更新を凍結して残す  各エージェントはAlphaStar League内で個別の目的をもっており, これによる多様性 を生み出している  AlphaStar League内では,SC2の強化学習によるエージェントのパラメータ更新だけで なく,ハイパーパラメータ,対戦のマッチング確率なども更新されていく  14日間AlphaStar Leagueを続けた後,後述の評価基準に従い, 人間のプロプレイヤー と戦うエージェント決定
  55. 55. AlphaStarエージェントの 学習アーキテクチャ MITでのHasabbisの講演のスライドから
  56. 56. Observations Spatial 先ほど説明したfeature layres.どのlayerを使用しているかは不明だが,普通に考えれば全 部使用 Economy 自軍の資源、手持ちユニットの充実度を指す.少し曖昧な表現なので具体的に何を入力し ているか不明 Units これまでに作成したユニットをリスト形式で渡している(はず)
  57. 57. Networks ResNet 画像処理最強だからとりあえずResNetを使用している感じ(特にResNetである必要はな いはず).feature layersを入力 Feed Forward 具体的なアーキテクチャは不明.Economyから特徴抽出をしていると思われる Transformer 系列情報の処理を行う.ここでは,SC2ユニットを要素としたリストを入力とし, ユニッ トの生産順を考慮した埋め込みを行っている
  58. 58. Core:Deep LSTM Core  複数のLSTMブロックで構成される深層ニューラルネット  開発者のVinyalsによると,3層,LSTMブロックが384個,7000万パラメータのものを 使用している  開発者のVinyals曰く,Transformerでunitの処理をしなくとも,LSTMの部分だけでなん とかなるらしい LSTM LSTM LSTM ・ ・ LSTM LSTM LSTM ・ ・ LSTM LSTM LSTM ・ ・ 入力 出力
  59. 59. Heads Function Heads PySC2の関数呼び出しを行う.建物作成,ユニット作成などの指示 Arguments Heads 上記の関数の引数を出力.具体的にどんな建物,ユニットを作るか等の指 定 この辺には恐らくPointer Networksが用いられている
  60. 60. Pointer Networks seq2seqの改良系.入力の変化に応じて出力も変化する場合に使用
  61. 61. 方策学習アルゴリズム AlphaStarのエージェントの方策学習には以下の手法を用いている  IMPALA  Policy Distillation  Self Imitation Learning  Counterfactual Multi-Agent Policy Gradients(COMA)
  62. 62. IMPALA 方策オフ型の分散深層強化学習アルゴリズム(経験を集める方策と学習方 策が違っていても大丈夫.Experience Replay使用可) 複数の環境を並列に動かし,各環境のActorの軌道を集め,集めた経験で 中央のMasterパラメータ(方策)を更新→Actorに同期…を繰り返す 本来,Masterと各Actorで方策が生じるため,Actorの方策で集めた軌道 では方策更新ができないが,V-trace(Importance Samplingに近い)と いう手法で効率的な学習可 Actor:それぞれの環境内で軌道(状態,行動,報酬の列) を生成し,LSTMの初期状態と共にLearnerに送 る.方策はLearnerと同期して更新 Learner:Actorが集めた軌道を用い,V-traceを使用し て方策更新.更新したパラメーターは各Actorに 送る
  63. 63. IMPALA for AlphaStar(イメージ) エージェント
  64. 64. Policy Distillation(方策蒸留)  蒸留 - あるニューラルネットの出力を別のニューラルネットで真似る手法 - 一般的には,大きなネットワークの出力を小さなネットワークで蒸留するモデル圧 縮で用いられる  深層強化学習でも似たような文脈で使用されるが,各エキスパートDQNの方策を一つの ネットワークに移して,最初からマルチタスク学習するよりも高性能なマルチタスク DQNを作成可  恐らくAlphaStar Leagueで新規エージェントを生成,または特別に良い方策を持った エージェントの出力を共有している 1対1で方策蒸留.AlphaStarの分岐図を見るとこちらを使用 (?) 複数のエキスパートDQNから一つのDQNに方策蒸留
  65. 65. Policy Distillation for AlphaStar たぶんこの辺で使用 (これは私の想像に過ぎないので注 意!)
  66. 66. Self Imitation Learning(SIL) エージェントの過去の行動で良かったものを再現できるように模倣学習を 行う(つまり自分自身の過去行動をデモンストレーションとして用いる) リプレイバッファに(状態,行動,収益)を保存し,学習中に推定値𝑉𝜃より も,過去の行動aをした場合の方が高い収益を得ていた場合(R>𝑉𝜃)に,過 去の行動aを選択しやすくなるよう方策更新 例えば,Montezuma’s Revengeの場合,左の鍵を取る→ 左のドアを開ける,という手順をこなす必要がある.鍵 を取るという行動については,明らかにいい行動である ため,ランダム要素が入る探索で地道に方策更新を目指 すよりも,過去に一度鍵を取る行動をしたら,その行動 を再生できるよう模倣学習した方が手っ取り早い.鍵を 取る行動を早期に学習すれば,ドアへ到達する確率が高 まる
  67. 67. SIL for AlphaStar そこまで特殊な使い方はしていないと思うので割愛
  68. 68. マルチエージェント学習 紹介手法/論文  FTW(For The Win) agent 論文:Human-level performance in first-person multiplayer games with population- based deep reinforcement learning  PSRO(Policy-Space Response Oracles)&DCH(Deep Cognitive Hierarchies) 論文:A Unified Game-Theoretic Approach to Multiagent Reinforcement Learning  Nash Distribution 論文:Re-evaluating Evaluation 先ほどまでのNNアーキテクチャや方策学習アルゴリズムと違い,あくまで「参考にし ている」くらいの言及なので,論文のアルゴリズムをそのまま使用しているかは微妙
  69. 69. 複数エージェントのゲームで自己の方策と集団に対する 学習の二重強化学習 Human-level performance in first-person multiplayer games with population-based deep reinforcement learning [Jaderberg+] 論文概要  一人称視点で,複数の敵エージェント,味方エージェントが存在するチーム対戦ゲーム における方策学習手法  学習過程を,エージェント個別の方策学習(エージェント自身の報酬和を最大化)する 内ループと,エージェント個別の方策の元でチーム勝率をあげるためのハイパラ学習を 行う外ループに分ける.この学習を行うエージェントをFTW(For The Win)エージェント と呼ぶ  学習環境としてQuake III ArenaのCTF(Capture the Flag)という環境を使うが,環境自体 はあまり重要ではなく,学習手法の概念が重要
  70. 70. (一応)学習環境解説  複数の障害物などから構成されるエリア内で,エージェント同士のチーム対抗戦を行う (この論文では2vs2を想定)  エリア内のどこにランダムに発生する旗を持って自チームの陣地内まで運べば得点が入 る  旗を持っているチームに対する妨害も可能で,この辺は自チームのエージェントとの協 力が効いてくる  各エージェントは自分のニューラルネットを持ち,学習された方策で操作される  各エージェントの視点は一人称視点(マップ全体は見れない)
  71. 71. エージェントの学習プロセス  それぞれ違うハイパラを持ったエージェント(論文では30体)がそれぞれ複数のプロセ スを作り,ゲーム内で得た経験から,それぞれ方策学習を行う(学習アルゴリズムは IMPALA)  各エージェントは,自分の獲得報酬(ゲーム内スコア)のみを意識した内ループの方策 学習と,チームの勝利を意識した外ループのハイパラ学習を行う 各プロセス, エージェント1&エージェント22 vs エージェント16&エージェント28 のようなチーム戦のゲームが行わ れ,それぞれのエージェントが学 習している
  72. 72. (一応)各エージェントの学習アーキテクチャ このゲーム用に作られたアーキテクチャなので,あまり重要ではないが一応
  73. 73. エージェントの目的関数 各エージェントは,自己の獲得スコアを意識した目的 関数𝐽𝑖𝑛𝑛𝑒𝑟と𝐽 𝑜𝑢𝑡𝑒𝑟を 最大化するよう学習を行う innnerループ ゲーム内スコアΡを報酬変換則𝑊𝑝で変換した報酬で強化学習を行う outerループ 現在の方策で所属チームの勝率が最大になるよう,報酬変換𝑊𝑝や学習率などのハイパラΦ の学習をPBT(Population Based Training)で行う このような学習を行うエージェントをFTW(For The Win)エージェントと呼ぶ
  74. 74. PBT(Population-Based Training) Population Based Training of Neural Networks [Jaderberg+](2017)  深層(強化)学習における,ハイパーパラメータ最適化の論文  それぞれ別のハイパラを設定したエージェントの学習プロセスを並列に走らせ,学習途 中の評価結果から良いハイパラを採用し別エージェントにも移す,ハイパラに摂動,ハ イパラの再サンプルを繰り返す  著者は,今ここで紹介してる論文Human-level~と同じJaderberg
  75. 75. PBTの詳細 各エージェントにそれ ぞれハイパラを設定し, 並列に学習開始 学習のある段階で,各エージェントの評価を行い,あ る基準より良かったエージェントのハイパラを別の エージェントにも設定(exploit) 良かったハイパラに対し てノイズを与える (explore)
  76. 76. 本論文の実験結果 この論文自体の実験結果は重要ではないが一応 ハイパラの 変化過程 FTW:提案手法 Self-play + RS:↓に加え,ゲーム内スコ アの報酬変換則を学習 Self-play:内ループの自己報酬最適化の み パフォーマンスはAgent Eloで測定 Elo(イロ)rating:本来はチェスで使用され る相対評価の実力指標.後で少し説明
  77. 77. FTWエージェント in AlphaStar  AlphaStarにおいても,AlphaStar League内で各エージェントが他のエージェントと 1vs1のSC2対戦プロセスを複数作りながら学習  他のエージェントとの関係を考慮したouterの部分の学習は,AlphaStar League内での総 合的な勝率を挙げる学習となると思われる  outerの学習対象は,ハイパラ,エージェントの好むゲーム内ユニット,特定の他エー ジェントに強い戦略など  innerは,SC2ゲーム内でただ単に相手に勝つための方策を学習(innerで個別の相手に対 して強くなってもリーグ内全体では勝率が上がらない) Shota Imai | The University of Tokyo 77 この部分が本論文の手法 FTWエージェントと関係が ある感じ
  78. 78. 参考:Bi-Level Reinforcement Learning ケンブリッジでの講演でDavid Silverが言及 AlphaStarの学習過程でループと内ループが存在する 外ループ:AlphaStar League内での勝率を挙げるために行う学習.各エージェントの好む ユニット,ゲーム内スコアの変換則等を学習PBT(Population Based Training)を用いる (と思う) 内ループ:こちらは,SC2のゲーム内での学習.外ループでの目的を元にゲーム内での方 策を学習 実際には,外ループの学習は遺 伝的アルゴリズムに近いはずな ので,二重”強化”学習と言って いいのかは微妙・・・
  79. 79. 余談/disentangleな内部表現の可視化  本論文は,マルチエージェント学習に関するものだが,複雑な状況把握と行動が要求さ れるゲームではエージェントのスキルがいい感じにdisentangleされた内部表現で獲得さ れているのでは?というお話が出てくる  DeepMindのAlphaStarブログの図に出てくる”Neural Network Activations”の部分はこれ と同じ可視化 この辺のことはJaderbargの動画https://www.youtube.com/watch?v=dltN4MxV1RIを見るとわかりやすい
  80. 80. マルチエージェント学習におけるゲーム理論的な視点か らの方策学習とメタ戦略 A Unified Game-Theoretic Approach to Multiagent Reinforcement Learning [Lanctot+](NIPS2017) 論文概要 複数の方策を持ったエージェントが同時に存在するマルチエージェント強 化学習(MARL)の一番簡単な形は,他のエージェントを無視して(環境の 一部とみなす)学習するInRL(Independent RL)だが,環境が非定常であ るため,うまく学習できない 複数の方策を持つプレイヤー同士のメタゲームを考え,方策の分布を表す 「メタ戦略」を計算,そのメタ戦略下における最適方策(オラクル)の導 出を繰り返すことで,良い方策の獲得を目指す
  81. 81. 予備知識 ゲーム理論基礎,純粋戦略ナッシュ均衡  プレイヤー1とプレイヤー2の戦略と利得の関係によって定義されるゲームを戦略ゲー ムといい,下のような利得行列で表される.以降,この戦略形ゲームに絡む話が出てく る  特にここではプレイヤー1と2の全ての戦略の組に対して(プレイヤー1の利得)=- (プレイヤー2の利得)となるゼロサムゲームを考える プレイヤー1の戦略:x1,y1 プレイヤー2の戦略:x2,y2 ナッシュ均衡:どのプレイヤーも,その戦略の組から自分一人だけが他のどんな戦略に変 えても,自分の利得が高くならないような戦略の組 利得行列(payoff matrix) x2 y2 x1 (4, -4) (1, -1) y1 (-3, 3) (-1, 1)       1 2 y1 -3 -1       1 2 x2 y2 x1 4 1 = ゼロサムゲームの場合はこう書いてもよ い 詳しい計算は省くが,ここでは(x1, y2) の組み合わせがナッシュ均衡 ここでは,お互いに一つの戦略を取り続 けることが最適となる純粋戦略ナッシュ 均衡
  82. 82. 予備知識 ゲーム理論/混合戦略ナッシュ均衡  先ほどの例では,各プレイヤーが一つの戦略を取り続けることがナッシュ均衡だったが, 利得の構成によっては,そうでない場合も  プレイヤーが複数の戦略を確率的に選ぶことがナッシュ均衡になる場合も→混合戦略 ナッシュ均衡 0 9       1 2 x2 y2 x1 4 1 y1 右の利得行列では,プレイヤー 1がx1を3/4, y1を1/4, プレイ ヤー2がx2を2/3,y2を1/3の確率 で選ぶ混合戦略をとる場合に ナッシュ均衡
  83. 83. DO(Double Oracle Algorithm)  2プレイヤーのゼロサムゲームで,ナッシュ均衡(混合戦略)を導出→その均衡下で最適 応答となる戦略を各プレイヤー追加→ナッシュ均衡導出・・・を繰り返し,最適応答が 改善されなくなるまで, 互いの戦略を改善し追加し合うアルゴリズム →後ほど紹介する,本論文の提案手法の原型アルゴリズム Shota Imai | The University of Tokyo 83
  84. 84. メタゲームとメタ戦略 メタゲーム 複数の方策(この方策は例えば囲碁AIなど対戦ゲームの方策)を持つプレイヤー同士が, 自分の方策と相手の方策を戦わせるゲームで,各プレイヤーはどの方策を選ぶのが最適 か?を考える メタ戦略(meta-strategy) プレイヤーが持つ方策の中から,どれくらいの確率でどの方策を選択するかの分布.先ほ ど説明した混合戦略の選択対象を方策にしたもの プレイヤー プレイヤー 方策 1-1 方策 1-2 方策 1-3 方策 2-3 方策 2-2 方策 2-1 VS プレイヤー1のメタ戦 略例(1/3, 1/6, 1/6) プレイヤー2のメタ戦略例 (1/2, 1/6, 1/3)
  85. 85. じゃんけんで例えると・・・ 混合ナッシュ均衡やメタ戦略はじゃんけんを考えるとわかりやすい  ジャンケンをする人間:プレイヤー  グー,チョキ,パー:3つの方策  メタ戦略:グー,チョキ,パーをそれぞれどれくらいの確率で選択するか →当然各1/3の確率が最適
  86. 86. PSRO(Policy-Space Response Oracles)  先ほどのDOを方策が複数存在するメタゲームに応用したもの ←各プレイヤーが持つ方策を初期化 ←上記の方策を実際に使用して,各方策の組み合わせで 各プレイヤーがどれくらいの利得を得るのか計算 ←各プレイヤーのメタ戦略(方策の選択確率の分 布)を,一様選択で初期化 n人のプレイヤーに関してループを回す. プレイヤーiは,自分以外の敵の方策を敵 のメタ戦略の分布からサンプリングし, それらを相手に現在の敵のメタ戦略下で 最適な方策𝜋𝑖 ′ を学習 ←各プレイヤーのループ後,学習した方策𝜋𝑖 ′ を,プレイヤーiの持つ方策に追加する ←全プレイヤーの最適方策学習後,各方策の組み合わせによる 利得を計算 ←追加された方策も考慮し,各プレイヤーのメタ戦略を更新 直感的には,複数の方策がある環境で,現 在の状況下での最適方策を生み出し合い, どんどん強い方策を生み出している
  87. 87. PSRO for AlphaStar  AlphaStar League内には,それぞれ別の方策を持ったエージェントが多数存在  AlphaStar League内に存在する方策を全て持つプレイヤー同士(つまり両方とも選択肢 となる方策は同じ)を考え,PSROで新しい方策を生んでいる(?)  具体的にどう使っているかは本体の論文を見ないとわからなさそう…
  88. 88. PSROの一般化 Open-ended Learning in Symmetric Zero-sum Games [Balduzzi+](ICML2019) 論文概要  先ほど紹介したPSROの一般系.先ほどのPSROを𝑃𝑆𝑅𝑂 𝑁として,戦略空間の構造を把握 する𝑃𝑆𝑅𝑂 𝑟𝑁というアルゴリズムを提案  常勝戦略が存在しないゲームでエージェント集団をセルフプレイで学習する場合に,集 団性能を向上させるように,各エージェントの強みを学習  ゲームの性質の定義(関数形式ゲーム),ゲームの分析に必要な概念・定理の導入を多く 行っている論文だが,ここでは提案アルゴリズムを集中的に紹介
  89. 89. 機械学習手法の評価法を評価 Re-evaluating Evaluation [Balduzzi+](NeurIPS2018) 論文概要  機械学習には様々なベンチマークが存在するが,どのベンチマークで評価すれば手法の 妥当性が示せるか?という問題は割と無視されがち(強化学習だと,Atariゲームの一部 ゲームで高スコアがどれくらい凄いのか)  論文では,エージェント(機械学習アルゴリズム)の評価を行うタスクについての検討 と,複数エージェントでエージェントVSエージェントの対戦ゲーム(囲碁やSC2等)を する場合に各エージェントの強さの評価をどうしたらいいか検討している  AlphaStar Leagueの最後で人間と戦うエージェントを選択する部分に関連  学習手法というよりは,エージェントの強さを評価する考え方の話 今 回 重 要 な の は こ ち ら
  90. 90. どこの話をしているか AlphaStar Leagueにおける最後のエージェント選択の お話 つまり,最終的に人間と戦うエージェントをどのように 選択するかの基準について 従来の手法でエージェントの実力を評価すると,正確に強いエー ジェントが選ばれなくなるため,別の選び方を提案している
  91. 91. 対戦ゲームの実力評価システム  囲碁などの対戦型ゲームで,各プレイヤーの強さをどう評価すればいいのか?というお 話(ポケモンだとレーティングバトル,スプラトゥーンだとウデマエシステムに近い 話)  50mのように競技の数値的記録を競う競技なら記録の絶対値で実力評価可能だが,囲碁 やポケモン,SC2のような対戦型ゲームではそのような絶対的指標はない  単なる勝率で実力を表すこともできるが,弱い対戦相手に無双している場合などは正確 に実力が評価できない Shota Imai | The University of Tokyo 91 複数プレイヤー間の相対評価で実力を表せる指標が必要
  92. 92. イロレーティング  対戦型の競技(2対2または,2チームの対戦)で,相対評価で実力を表すために用い られる指標  元々はチェスの実力を示すために使用されていた  数理的な背景まで話すと長くなるため割愛(Wikipediaなどでどうぞ)  とりあえず,イロという指標があって,今までの対戦型ゲームでは機能していた,とい うことを覚えていただければ レーティングについては この本が詳しい
  93. 93. イロレーティングの欠陥 準備  例えば,ジャンケンで出せる手が一つ(一つ以上でもいい)増える場合を考える  ここでは,チョキと同じく,パーに勝ってグーに負ける手が増えたとする(人差し指一 本だけ立てる手)  このとき,グーが勝てる手は2つ,パーが負ける手も2つになったが,だからといって グーが強くなって,パーが弱くなったと言えるか? →そんなことはない.(常識的に)ジャンケンをすれば,今まで通りチョキの効果を持つ 手が出てくる確率は三分の一で,ただ見た目が複数に増えただけ
  94. 94. イロレーティングの欠陥  イロレーティングでは,先ほどのじゃんけんの例のように,あるプレイヤー(エージェ ント)とまったく同じ強さのプレイヤーが現れると,レーティングが狂う Cのコピーを追加 元々のゲーム Cのコピーを追加したゲーム元々のゲー ム 表に書かれているのは勝率. A→B→C→A・・・の三すくみの 関係になっており,レーティン グ上は全員同じ強さ Aは勝てる相手が増えたのでレー トが上昇,Bは負ける相手が増え たのでレートが減少.不当に高 く/低く評価されてしまう AlphaStarの視点からだと,AlphaStar League内に同じような方策を持った エージェントが複数いた場合,イロレーティングによる評価を用いると正当な 評価ができない
  95. 95. 対戦型ゲームで求められる評価指標 本論文では,以下の3要素を評価指標に求められる 重要事項としている 1. Invariant:同じような実力を持つエージェントが集団に混ざっても正当に評価できる 2. Continuous:多少のデータ変更に対してロバスト 3. Interpretable:やっていることが直感的にわかる(?) Shota Imai | The University of Tokyo 95
  96. 96. 大まかな評価の流れ 1. プレイヤーが持つ各方策が別の方策と対戦した場合の勝率のロジット関数を計算し, このロジット関数を利得とするゲームの行列を作成 2. この行列をもとに,メタ戦略のナッシュ均衡の中で,メタ戦略のエントロピーを最大 化する一つの均衡「Max Entropy Nash Equilibrium(Maxent Nash)」を求める 3. Maxent Nashのメタ戦略に対してNash Averagingと呼ばれる操作を加え,最終的に得 られるNash Distributionという方策の分布から,最も強い方策を求める
  97. 97. 勝率のロジット関数を利得とする行列 先ほど出てきた勝率の表の勝率をロジット関数にする 𝑙𝑜𝑔𝑖𝑡 𝑝 = log 𝑝 1 − 𝑝 = log 𝑝 − log 1 − 𝑝 すると,先ほどのような勝率の行列は,以下のような反対称行列となる ※反対称行列:元の行列と,元の行列 を転置した行列を足すと0になるよう な行列  ここで,A, B, Cはそれぞれ別々の方策を表す  この反対称行列Aは,同じ方策A, B, Cを持ったプレイヤー同士 の対戦としてみることができ(先ほど説明したメタゲーム), 各プレイヤーは方策選択の分布を考える
  98. 98. Max Entropy Nash Equilibrium 先ほど求めた行列のゲームにおけるナッシュ均衡は複数あるが,ここではユニークなナッ シュ均衡として,メタ戦略のエントロピーが最大になるような(つまり,できるだけラン ダムに方策を選択するような)均衡を考える →Max Entropy Nash Equilibrium (Maxent Nash) なお,この均衡はソルバを使って求めるため,計算は省略 方策Aの選択確率:1/3 方策Bの選択確率:1/3 方策Cの選択確率:1/3 がMaxent Nash
  99. 99. Nash Averaging 先ほど求めたMaxent Nash(=na)と元のロジット関数の行列Aのドット積を とる操作「Nash Averaging」により,最終的な方策の評価の分布を得る ・(1/3, 1/3, 1/3)=(0, 0, 0) 今回評価している方策の組み合わせは,3すく みの関係にあるため,全部同じ強さとして0の 評価
  100. 100. 本当にこの方法でうまくいくのか 例えば,先ほど評価した方策の組み合わせにCとまったく同じ方策を新たに加え,A, B, C1, C2の評価をすると.・・・ Maxent Nashを求 める (1/3, 1/3, 1/6, 1/6) Maxent Nash Cが2つになり,C1, C2が追加された行列 ・ (1/3, 1/3, 1/6, 1/6) = (0, 0, 0, 0) Nash Averaging 余計なコピーが加わった後 も,Aが不当に弱くなった りBが不当に強くなったり せず,すべての評価が同じ なので,評価が正当
  101. 101. 方策評価例2 3すくみとは違い,方策の強さに偏りがある場合でも正当な評価ができるかどうか試して みる • 既に勝率をロジット関数にしたものの行列 • Aは全体的に強く,BはC1, C2に対して強い,C1, C2は全部に弱 く,同じ強さ →正当な評価であれば,Bは同じ方策C1, C2に対する強さが1つの方 策に対する強さとして評価され,Aが一番強くなるはず B A B C1 C2 A' 0 1.75 0.5 0.5 B -1.75 0 1.75 1.75 C1 -0.5 -1.75 0 0 C2 -0.5 -1.75 0 0 Maxent Nash を求める (1, 0, 0, 0) Maxent Nash ・ = (0, -1.75, -0.5, -0.5) Nash Averaging B A B C1 C2 A' 0 1.75 0.5 0.5 B -1.75 0 1.75 1.75 C1 -0.5 -1.75 0 0 C2 -0.5 -1.75 0 0 (1, 0, 0, 0) Nash Averagingを行うことで,正 当な評価がされている (BがC1, C2より弱いのは違和感 があるかもしれないが,これは, 一番強いAに対してBが非常に弱い ため)
  102. 102. Nash distribution for AlphaStar  前述の通り,AlphaStarLeagueにおける最後のエージェント選択に使用している  なお,論文内であまり正確な言及がなかったと思うが,たぶんNash Averagingの分布 を”Nash Distribution”と呼んでいる リーグ後半のエージェント(最終的には 600番台)の方が高い評価となっており, AlphaStarの学習手法で時間をかければか けるほど強いエージェントが生み出されて いることがわかる
  103. 103. OpenAI FiveとDota2 OpenAI が開発したOpenAI FiveというゲームAIも,「Dota2」という MOBAゲームで,世界的なプレイヤーに勝利している Dota2はRTSの中でも「MOBA(Multiplayer online battle arena)」という サブジャンルに属し,SC2とは違った要素が多数存在 DoTA2とSC2の大きな違い - Dota2は5vs5のチーム戦/SC2は(基本的に)1vs1 - Dota2ではプレイヤー(エージェント)一人が一つのゲーム内キャラ(ヒーロー)を操 作/SC2はプレイヤー(エージェント)が自軍全てのユニットを操作 ( OpenAI Fiveの名前も操作のNNを5つ使うことから) つまり,Dota2では,勝つために 操作主体が違うエージェント同士の協調プレイ が必要
  104. 104. 余談/OpenAI Fiveの技術 方策学習アルゴリズムはPPO(Proximal policy optimization) AlphaStarとは違い,最初に模倣学習はしない 現在の自分8:過去の自分2の割合のself-playで学習 エージェント個々の報酬とチームとしての報酬の重視具合を調整する “Team spirit”と呼ばれるハイパーパラメータを用いて,チームプレイをう まく学習 学習システム”Rapid”の構成 その他学習に関わる数字
  105. 105. OpenAI Fiveエージェントのアーキテクチャ

×