Upgrade to Pro — share decks privately, control downloads, hide ads and more …

不完全情報ゲームにおけるAIの開発

 不完全情報ゲームにおけるAIの開発

2020年5月30日 日経学会2020年度春季大会の企画セッションでの発表資料です.
https://www.jeameetings.org/2020s/program1-3.html#pm1

Kenshi Abe

May 30, 2020
Tweet

More Decks by Kenshi Abe

Other Decks in Research

Transcript

  1. ⾃⼰紹介 ▪ 名前 – 阿部 拳之(あべ けんし) – @bakanaouji(ばかなおうじ) ▪

    経歴 – 東京⼯業⼤学総合理⼯学研究科知能システム科学専攻(〜2017年) ▪ 強化学習×進化計算をメインに研究 – 株式会社ハル研究所(2017年〜2018年) ▪ ゲームプログラマー – 株式会社サイバーエージェント AI事業本部 AILab(2018年〜) ▪ 強化学習・不完全情報ゲーム・⿇雀AIについて研究
  2. はじめに ▪ ⿇雀は多⼈数不完全情報ゲームの⼀つ ▪ 不完全情報ゲームは完全情報ゲームにない難しさが存在 – 情報が部分的にしか観測できない – モンテカルロ⽊探索のようなアルゴリズムが適⽤できない ▪

    特にポーカーを中⼼として完全情報ゲームと違ったアプローチが提案 ▪ 本発表では,不完全情報ゲームにおけるAI開発へのアプローチを花札・ ポーカーを実例にして紹介
  3. 花札「こいこい」 場札 ⼿札 ⼿札 ⼭札 合札 ▪ 12ヶ⽉×4=48枚の札を⽤いてプレイ 1. 札を「各プレイヤ」と「場」に配る

    2. ⽚⽅のプレイヤが⼿札を1枚出す – 場に同じ⽉の札があれば,その 札と出した札を取得 – そうでなければ場に追加 3. ⼭札から1枚めくって2と同様の処理 4. 取得した札で役が成⽴していれば, 「あがり」か「こいこい」を選択 – 「あがり」なら役の得点をも らって終了 – 「こいこい」ならゲーム続⾏ 5. ⼿番交代して2から繰り返し 合札
  4. ⼆⼈零和不完全情報ゲームにおける 最適な戦略 ▪ ナッシュ均衡 – どのプレイヤも⾃分の戦略を変更することによって,より⾼い得点を得るこ とができないような戦略の組み合わせ – 各プレイヤの戦略を! ,利得を!

    とすると,ナッシュ均衡戦略の組み合わせ ∗は以下の式を満たす ∀, ! ! ∗, #! ∗ = max $! "∈&! ! (! ', #! ∗ ) – 対称性があるゲームの場合,相⼿のどんな戦略にも負けない戦略 →花札も先⼿と後⼿を交互に繰り返せば対称的 ▪ ⼆⼈零和不完全情報ゲームではナッシュ均衡戦略を計算できれば負けなそう
  5. Counterfactual Regret Minimization ▪ 基本的な流れ – 「この⼿を取ったほうが良かった」という後悔 (regret) を元に戦略を更新 ▪

    Counterfactual Regret ! * , = #! $# (! +→- * , − ! *, ) – 「現在の戦略*を情報集合において⾏動を取るよう に変更したら,どれだけ利得が増えるのか」を定式化 ! " ⼿札 " Regret = +5 Regret = -2 何出したら良いかな︖ Regret Minimization in Games with Incomplete Information (2008) https://papers.nips.cc/paper/3306-regret-minimization-in-games-with-incomplete-information を出したほうが 良かった・・・
  6. Counterfactual Regret Minimization ▪ 基本的な流れ – 「この⼿を取ったほうが良かった」という後悔 (regret) を元に戦略を更新 ▪

    Counterfactual Regret ! * , = #! $# (! +→- * , − ! *, ) – 「現在の戦略*を情報集合において⾏動を取るよう に変更したら,どれだけ利得が増えるのか」を定式化 ! " ⼿札 " Regret = +5 Regret = -2 何出したら良いかな︖ が必ずへ向かうように振る舞い, それ以外が$に従った時にに到達する確率 においてを取るように変更した時の期待利得 から$に従った時の期待利得 Regret Minimization in Games with Incomplete Information (2008) https://papers.nips.cc/paper/3306-regret-minimization-in-games-with-incomplete-information を出したほうが 良かった・・・
  7. Counterfactual Regret Minimization ▪ これまでのregretの総和に基づいて,戦略を更新 – Cumulative Counterfactual Regret !

    . , = 5 */0 . ! *(, ) – 戦略の更新式 ! .10 , = max(! . , , 0) ∑ -∈2(+) max(! . , , 0) , 5 -∈2(+) max(! . , , 0) > 0 1 | | , ℎ をもっと出す ようにするぞ︕ を出したほうが 良かった・・・
  8. Counterfactual Regret Minimization ▪ = 1, ⋯ , までの戦略! *を平均化した戦略

    B ! .がナッシュ均衡戦略へと収束する ことが理論的に保証 – B ! . , = ∑#%& ' 6! (# + $#(+,-) ∑#%& ' 6! (# + – ただし,⼆⼈零和不完全情報ゲームのみ保証 – 三⼈以上では収束の保証はなし ▪ 実⽤的にも⾼速︕︕ ▪ それでも花札の情報集合数(> 10())は厳しい・・・ →そもそも戦略を保持するための容量が⾜りない →ゲームを抽象化 (abstraction) して,情報集合数を現実的なサイズまで減らす
  9. Abstraction ▪ ゲームを抽象化することによって情報集合数を削減 ▪ Abstractionの⽤い⽅ – 抽象化したゲームのナッシュ均衡戦略を計算→実際のプレイ時に⽤いる ▪ 花札のためのabstractionをいくつか考えてみました –

    各プレイヤの⾏動履歴を忘却する(History Abstraction) – 対称的な⽉を同形とみなす(Month Abstraction) – 取得できそうな札のみ観測する(Open Card Abstraction)
  10. History Abstraction ▪ 各プレイヤが取った⾏動を忘却 ▪ 現在の観測が同じなら,同⼀の 情報集合とみなす ⼿札 ⼿札 合札

    場札 ⼭札 ⼿札 ⼿札 合札 場札 ⼭札 現在の状況 ⼿札 ⼿札 合札 場札 ⼭札 ⼿札 ⼿札 合札 場札 ⼭札 現在の状況 同じ 情報集合
  11. 実験結果 ▪ CFRによって得た戦略を評価するために,ランダム/ルールベースプレイ ヤと100万回対戦 – ランダムプレイヤ︓いつでもランダムに⾏動決定 – ルールベースプレイヤ︓なるべく札を取れるように⼿札選択. ▪ ⼈⼯的なプレイヤに対しての平均得点

    – vs ルールベースプレイヤ︓+0.75点 – vs ランダムプレイヤ︓+1.50点 ▪ 平均得点が0より⼤きいので,⼈⼯的なプレイヤより強い︕︕ 解説ブログと実装コード https://cyberagent.ai/blog/research/2522/ https://qiita.com/bakanaouji/items/f70d7948931c96d94ef8 https://github.com/bakanaouji/cpp-cfr
  12. 三⼈以上の零和不完全情報ゲームの 難しさ < 00 ∗ , (0 ∗ > <

    0( ∗ , (( ∗ > < 00 ∗ , (( ∗ > ナッシュ均衡その1 ナッシュ均衡その2 これもナッシュ均衡 ▪ ナッシュ均衡はゲームに対して複数個存在 ▪ ⼆⼈零和ゲーム – 各プレイヤが独⽴にナッシュ均衡戦略を選択し たとしても,両プレイヤの戦略の組み合わせは ナッシュ均衡となる ▪ 三⼈以上の零和ゲーム – 各プレイヤが独⽴にナッシュ均衡戦略を選択し た場合,全プレイヤの戦略の組み合わせはナッ シュ均衡ではない可能性がある – ナッシュ均衡戦略に従っているのに戦略を変え たほうがメリットがある可能性がある →ナッシュ均衡戦略でも負ける可能性が・・・
  13. 三⼈以上の零和不完全情報ゲームの 難しさ < 00 ∗ , (0 ∗ , 80

    ∗ > < 0( ∗ , (( ∗ , 8( ∗ > < 00 ∗ , (( ∗ , 88 ∗ > ナッシュ均衡その1 ナッシュ均衡その2 < 08 ∗ , (8 ∗ , 88 ∗ > ナッシュ均衡その3 ナッシュ均衡︖︖ ▪ ナッシュ均衡はゲームに対して複数個存在 ▪ ⼆⼈零和ゲーム – 各プレイヤが独⽴にナッシュ均衡戦略を選択し たとしても,両プレイヤの戦略の組み合わせは ナッシュ均衡となる ▪ 三⼈以上の零和ゲーム – 各プレイヤが独⽴にナッシュ均衡戦略を選択し た場合,全プレイヤの戦略の組み合わせはナッ シュ均衡ではない可能性がある – ナッシュ均衡戦略に従っているのに戦略を変え たほうがメリットがある可能性がある →ナッシュ均衡戦略でも負ける可能性が・・・
  14. 三⼈以上の零和不完全情報ゲームの 難しさ ▪ 三⼈以上の零和ゲーム – CFRがナッシュ均衡に収束するかも保証されていない – そもそもナッシュ均衡戦略に従うのがいいのかすらも怪しい →では,どんな戦略に従うのが良いのか︖︖ ▪

    実⽤的には,三⼈以上の零和ゲーム(主にポーカー)にCFRを適⽤するだけで ある程度強い戦略はできるらしい – この実験的な事実を利⽤したのが2019年登場のポーカーAIのPluribus
  15. Pluribus ▪ 6⼈プレイヤのポーカー(Heads up No-limit Texas Hold’em)でプロを超えた ▪ ある程度の戦略をCFRによって計算しておき,それを実際のプレイ中に改善 ▪

    アルゴリズムの流れ 1. 予めCFRによってある程度の強さの戦略を計算しておく 2. 実際のプレイ中に遭遇したSubgameにおける戦略をCFRで計算 →その戦略に従ってプレイ ▪ プレイ中の戦略計算時には,深さ制限探索で探索するノード数を減少 – プレイヤの数が増えて状態数も膨⼤な数になるので,実際のプレイ中に戦 略の計算が終わらないことに対処 Superhuman AI for multiplayer poker (2019) https://science.sciencemag.org/content/early/2019/07/10/science.aay2400
  16. Depth Limited Search 1. ある深さのノード(葉ノード)に到達するまでは通 常と同様に探索 2. 葉ノードに到達したらノードのvalueを推定 – Monte

    Carlo Rolloutによって推定 – 予め計算しておいたk = 4個の戦略の中から戦略 を選択,葉ノード以降はその戦略に従って⾏動 ▪ ポーカーでよく使われるAbstractionを⽤いて計算 された戦略 ▪ 降りることに特化した戦略 ▪ コールすることに特化した戦略 ▪ レイズすることに特化した戦略 – ノードのvalueが戦略に依存したものであることを 近似的に表現 Fig. 4. Real-time search in Pluribus. The subgame sh nodes indicates that the player to act does not know w information subgame. Right: The transformed subga strategy. An initial chance node reaches each root nod reached in the previously-computed strategy profile (o time in the hand that real-time search is conducted). T which each player still in the hand chooses among k chooses. For simplicity, 2 k = in the figure. In Pluribu selection of a continuation strategy for that player f terminal node (whose value is estimated by rolling continuation strategies the players chose). Fig. 4. Real-time search in Pluribus. The subgame shows just two players for simplicity. A dashed line between nodes indicates that the player to act does not know which of the two nodes she is in. Left: The original imperfect- information subgame. Right: The transformed subgame that is searched in real time to determine a player’s
  17. Team Maxmin Equilibrium VS 利得関数!() 利得関数" () 利得関数# () 利得関数$()

    ただし! + " + # + $ = 0 ▪ 3⼈以上プレイヤが存在するゲームの解概念 ▪ プレイヤを「共通の利得関数を持つチーム」と 「敵対者(⼀⼈)」に分割したゲームを考える ▪ プレイヤを分割したゲームを「⼆⼈零和ゲー ム」としてみなして,ナッシュ均衡を計算 Team-Maxmin Equilibria (1997) https://www.sciencedirect.com/science/article/abs/pii/S0899825697905273
  18. Team Maxmin Equilibrium ▪ 3⼈以上プレイヤが存在するゲームの解概念 ▪ プレイヤを「共通の利得関数を持つチーム」と 「敵対者(⼀⼈)」に分割したゲームを考える ▪ プレイヤを分割したゲームを「⼆⼈零和ゲー

    ム」としてみなして,ナッシュ均衡を計算 VS 利得関数! + " + # () 利得関数$ () ただし! + " + # + $ = 0 結託 Team-Maxmin Equilibria (1997) https://www.sciencedirect.com/science/article/abs/pii/S0899825697905273
  19. Team Maxmin Equilibriumの問題点 ▪ 効率的な計算が困難 – 完全記憶でないため,CFRなどのアルゴリズ ムは収束保証がない – 巨⼤な展開型ゲームではまだまだ計算が困難

    ▪ 実際の多⼈数ゲームにおけるTeam Maxmin Equilibriumの有効性は未知 – 誰かが⼤損してでも⾃分を負かしにくる状況 は現実には起こりにくいのでは︖ – そこまで悪いケースまで考えなくても良さそ う︖ VS 利得−100 利得−10 利得55 利得55