$30 off During Our Annual Pro Sale. View Details »

ターン制コマンドバトルにおける強化学習効率化

 ターン制コマンドバトルにおける強化学習効率化

「第42回ゲーム情報学研究会」で発表された資料です。
https://www.ipsj.or.jp/kenkyukai/event/gi42.html

gree_tech

August 05, 2019
Tweet

More Decks by gree_tech

Other Decks in Technology

Transcript

  1. Copyright © GREE, Inc. All Rights Reserved. • 基本プレイ無料が多い •

    追加コンテンツが主な収益源 • 複数の追加コンテンツを並行して開発 背景:スマートフォンゲームの開発 2 設計 開発 調整 リリース 2週間 設計 開発 調整 リリース 設計 開発 調整 リリース 設計 開発 調整 リリース 設計 開発 調整 設計 開発 設計 … … … …
  2. Copyright © GREE, Inc. All Rights Reserved. • コンテンツの楽しさを担保する •

    調整項目はゲームによって様々 • マーカーの間隔 • クリアに必要な手数 • 敵や味方の強さ • 調整とテストプレイを3回以上繰り返す • 3日程度しか使えない 背景:バランス調整 3 バランス調整の効率化が必要 ➢ たたかう どうぐ にげる HP:9/10 MP:5/5 ミミック Lv. 5
  3. Copyright © GREE, Inc. All Rights Reserved. Exploring Game Space

    Using Survival Analysis Isaksen et al., 2015 • Flappy Bird • 人間をモデル化したAI Human-Like Playtesting with Deep Learning Stefan Freyr et al., 2016 • Candy Crash • プレイヤの行動ログから学習させたAI Exploring Gameplay With AI Agents Mesentier Silva et al., 2018 • The Sims • A*アルゴリズムで探索するAI 背景:テストプレイAIによる効率化 4
  4. Copyright © GREE, Inc. All Rights Reserved. • ターン制コマンドバトル •

    ターンごとに行動を選択する • 行動が表形式のデータで表される • 要望 • 最適なプレイ時のハイスコアを知りたい • 制約 • シミュレータは1ターン戻すなどができない 背景:社内で運用中のゲームの場合 5 ➢ たたかう どうぐ にげる HP:9/10 MP:5/5 ミミック Lv. 5 強化学習によるゲームプレイAIの学習を検討
  5. Copyright © GREE, Inc. All Rights Reserved. • 状態を観測し行動を決定する問題を解く方法 •

    環境から得られる報酬を最大化する • 行動価値 • ある状態である行動を取ったときの期待報酬 • Q学習 • 行動を反復して行動価値を最適化する • 行動価値関数は状態x行動の表で実現 • Deep Q-Network (DQN) • 行動価値関数をニューラルネットワークで近似 強化学習 6 環境 状態 報酬 行動 状態 価値1 … 価値n ニューラルネットワーク
  6. Copyright © GREE, Inc. All Rights Reserved. 課題 7 •

    強化学習には膨大な時間と計算リソースが必要 AI 実時間 セルフプレイ AlphaGo Zero 3日間 490万局 AlphaStar 1週間 200年 OpenAI Five 10ヶ月 45000年 • バランス調整に使える時間は3日程度 強化学習の効率化が必要
  7. Copyright © GREE, Inc. All Rights Reserved. • DQNは汎用的な強化学習手法 •

    ゲームの特徴を活かせば効率化ができる可能性 • 状態だけでなく行動の意味を考慮して価値を評価する • 事前に特徴を学習しておく 強化学習効率化の着目点 8
  8. Copyright © GREE, Inc. All Rights Reserved. Deep Reinforcement Learning

    with a Natural Language Action Space He et al., 2016 ゲームの強化学習効率化に関する先行研究 9 • テキストゲームの強化学習効率化 • 状態が自然言語で表される • 行動を自然言語で入力する • Deep Reinforcement Relevance Network (DRRN) • 状態だけでなく行動の意味も行動価値関数に入力 • 状態と行動をそれぞれ埋め込む あなたは川のそばにいます > 南へ行く 川は5cm程の隙間に流れ込んでいます > 隙間へ行く 隙間は狭すぎて入れません
  9. Copyright © GREE, Inc. All Rights Reserved. 目的・提案手法 10 目的

    • ターン制コマンドバトルの強化学習効率化 • Pokémon Showdownを対象 提案手法 • 行動の意味を考慮して行動価値を評価する • 行動の特徴を事前に学習しておく
  10. Copyright © GREE, Inc. All Rights Reserved. • 2017年にAI大会開催 •

    Computational Intelligence and Games 2017 • 2人対戦ターン制コマンドバトル • 6体のポケモンでチームを構成 • ターン毎に行動を1つ選択する • 行動の選択肢は2種類あり最大9個 • 技 • ポケモン交代 • 相手ポケモンの体力をすべて0にすると勝利 Pokémon Showdown 11
  11. Copyright © GREE, Inc. All Rights Reserved. 1. 強化学習の前に行動の特徴を学習 2.

    事前に埋め込んだ行動を使って強化学習 提案手法の概要 12 ターン制 コマンドバトル 行動の意味評価 状態 行動 報酬 強化学習Agent 行動の埋め込み マスタデータ Step1 Step2
  12. Copyright © GREE, Inc. All Rights Reserved. マスタデータ • ゲーム内のパラメータの元データ

    行動の埋め込み 13 技 威力 命中率 物理 ノーマル ほのお たいあたり 35 95% True True False ひのこ 40 100% False False True 0.3 0.6 0.9 0.1 0.5 0.4 0.1 0.1 AutoEncoder
  13. Copyright © GREE, Inc. All Rights Reserved. AutoEncoder • 入力のブール値は0/1に変換

    • 損失関数は平均二乗誤差 • 確率的勾配降下法で最適化 • 2種類用意 • 技の埋め込み • 交代ポケモンの埋め込み • DRRNと異なり、強化学習前に埋め込む 行動の埋め込みの詳細 14 技 交代ポケモン AE move AE switch m emb s emb
  14. Copyright © GREE, Inc. All Rights Reserved. 提案手法 15 DQN

    行動を一括評価 行動を個別に評価 State Act 1 … Act n V Act1 … V Actn 価値関数 … 価値関数 V Act1 State Act 1 価値関数 V Actn State Act n 個別評価することで純粋な行動価値を求める 行動の意味を考慮した行動価値
  15. Copyright © GREE, Inc. All Rights Reserved. 比較手法 実験設定 16

    埋め込み表現なし 埋め込み表現あり 行動の一括評価 DQN AE 行動の個別評価 PA-DQN AE+PA-DQN 実験方法 • チームを構成するポケモンはランダムに選択 • 100ステップの学習ごとに100回の対戦で評価 • サンプル提供されている多層パーセプトロンAIと対戦
  16. Copyright © GREE, Inc. All Rights Reserved. • 状態の多様性が低くなる •

    DQNは技の並び順が違うだけで全く別の状態とみなす • 個別に評価することで同じような状態が表れやすくなる • 行動の正確な価値を評価可能 • DQNは他の選択肢によって行動の価値が影響される • コマンドバトルでは他の選択肢で行動の価値は変わらないはず 考察:行動の個別評価の効果 21
  17. Copyright © GREE, Inc. All Rights Reserved. • わずかな性能低下 •

    自然言語と異なり、既に表形式のデータで意味が表されている • 重要な属性を無視してしまったのではないか 考察:行動の埋め込みの効果 22
  18. Copyright © GREE, Inc. All Rights Reserved. まとめ • 行動の個別評価で学習ステップ数を75%以上削減

    • 行動の埋め込みで学習ステップ数をさらに40%削減 課題 • ドメイン知識を活用した埋め込み • 複数のキャラクタの行動を選択するゲームへ適用 まとめ・課題 23