1. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
強化学習を利用した
自律型GameAIの取り組み
高速自動プレイによるステージ設計支援
February 10, 2017
Ryosuke Mashiko, Eiji Sekiya
AI System Dept.
DeNA Co., Ltd.
2. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
概要
前半
⁃ 強化学習について
⁃ 強化学習の最先端
後半
⁃ FINAL FANTASY Record Keeperでの取り組み
2
3. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
自己紹介
関谷 英爾
AIシステム部
⁃ AI関連の開発および分析基盤開発運用するチーム
略歴
⁃ 新卒3年目
• VerticaやHadoop等の分析基盤運用
• 機械学習のサービス応用
3
4. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
AIシステム部
Data Engineering
⁃ 社内のアナリストの分析サポートおよびそのためのツール開発
分散基盤
⁃ Hadoopなどのログ収集基盤開発・運用
AI/データサービス
⁃ 機械学習などを用いたサービス応用
4
5. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
AI/データサービス
最新動向を把握
⁃ 国際学会への参加
⁃ 論文のキャッチアップ
⁃ 社内勉強会の実施
注力
⁃ Computer Vision
⁃ 自然言語処理
⁃ 強化学習
5
6. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
概要
前半
⁃ 強化学習について
⁃ 強化学習の最先端
後半
⁃ FINAL FANTASY Record Keeperでの取り組み
6
7. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
強化学習の活用例
7
ロボットのピッキング作業
⁃ 上手くものを拾えるように手の動かし方を学習
自動運転
⁃ 事故を起こさないような運転方法を学習
囲碁AI
⁃ 勝てるような手を学習
8. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
強化学習
環境情報(入力)から取るべき行動(出力)を学ぶ
行動を繰り返し行うことで良い(報酬が高くなる)行動を学んで
いく
8
状態の観測
報酬
行動
エージェント環境
10. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
Deep Learning × 強化学習 (DQN)
強化学習に画像認識で培ったDeepLearningの技術を用いた
⁃ 画像情報を与えて試行錯誤をすれば取るべき行動を学べる
ようになった
⁃ 状態の特徴を人の手で作り込む必要がなくなった
10
状態(画像)の観測
報酬
行動
エージェント
(Deep Learning)
環境
11. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
Deep Learning × 強化学習(DQN)
2014年にDeepMindのV.Mnihらが出した論文
⁃ Playing Atari with Deep Reinforcement Learning
⁃ Atari 2600のゲームをクリアしたという論文
Atari 2600って?
⁃ 米国atari社が出した家庭用ゲーム機
• Pong, Space Invaders, Enduro, etc.
• DQNでDeepMindがSpace Invadersを学習させた動画
⁃ https://www.youtube.com/watch?v=W2CAghUiofY
11
12. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
AlphaGO
DeepMind社によって開発された囲碁プログラム
2015年10月に初めてプロ棋士を破ったことで有名
年末年始には囲碁がインターネット対戦できる「野狐囲碁」と
「東洋囲碁」で匿名で参加し全勝
理論の特徴
⁃ DeepLearningを用いた
⁃ 教師あり学習でプロ棋士の手を学習
⁃ コンピュータ同士による対戦で強化学習
⁃ モンテカルロ木探索による最善手の探索
12
13. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
概要
前半
⁃ 強化学習について
⁃ 強化学習の最先端
後半
⁃ FINAL FANTASY Record Keeperでの取り組み
13
15. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
15
機械学習のトップカンファレンスの1つ
NIPSの参加者数
指数関数的に増加
(引用: https://media.nips.cc/Conferences/2016/NIPS-2016-Conference-Book.pdf)
16. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
16
その中でも「強化学習」は
最も注目されている領域の1つ
17. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
NIPS 2016
Deep Learning関連の研究が多い
今年の注目領域
⁃ GAN
⁃ 強化学習
Best Paper
⁃ A. Tamarらの「Value Iteration Networks」
⁃ 強化学習に関する研究が選ばれた
強化学習に関する大きな二つの発表
⁃ DeepMind Lab
⁃ OpenAI Universe
⁃ 共通点
• シミュレーション環境の構築の難しさや共通の問題を世界で取り組み競える
ようにシミュレーション環境を提供
17
18. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
DeepMind Lab
AlphaGoで有名なDeepMindが公開したフレームワーク
⁃ https://www.youtube.com/watch?v=M40rN7afngY
FirstPersonViewの問題が対象
⁃ 3D空間を観察(入力)
⁃ 3D空間内での行動(出力)
2Dではなく、3D空間を観察し行動
⁃ ロボティクスの分野での応用も考えられる
18
19. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
OpenAI Universe
AI技術のOpen化に取り組んでいるOpenAIが公開したフレームワーク
ブラウザタスクを一般化して取り扱えるように
⁃ ブラウザを観察(入力)
⁃ キーボード操作(出力)
様々なブラウザタスクが学習できる対象
⁃ Gameのプレイだけでなく、スクロールや文字入力も
19
引用: https://openai.com/assets/blog/universe/interface-
725abed463ba2b83d4a68fd08d1818fed900a939cb9c4b9eb1bac07952b4fe61.png
20. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
強化学習を用いてDeNAでどのようなことが可能か?
様々なサービスのテストの自動化
⁃ QA工数の削減
リッチなNPC(Non Player Character)戦
⁃ 電脳戦
⁃ マルチプレイ通信断後のプレイ引き継ぎ
ステージ設計支援
⁃ プランナーの工数削減
20
FINAL FANTASY Record Keeperにおける
高速自動プレイによるステージ設計支援
21. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
21
FINAL FANTASY Record Keeper
における自律型AI活用事例
23. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
アジェンダ
FFRKのバトルとは
ゲームの流れ
画面構成
AI設計
どのようなAIがあればよいか?
AIの学習アルゴリズム
探索的アプローチ
ニューラルネットによるアプローチ
23
24. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
FINAL FANTASY Record Keeper (FFRK)
株式会社スクウェア・エニックスとの共同開発
2014-09-25 リリース
リリース後1年半で1000万ダウンロード
FINAL FANTASYの歴代タイトルにおけるバトルをアプリ上で追体験
24
39. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
アルゴリズム
探索的アプローチ
Monte Carlo Tree Search
ニューラルネットを用いたアプローチ
NEAT
AI学習結果の解説
Q-learning
39
40. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
アルゴリズム
探索的アプローチ
Monte Carlo Tree Search
ニューラルネットを用いたアプローチ
NEAT
AI学習結果の解説
Q-learning
40
41. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
探索的アプローチ
現在取りうる行動をそれぞれ試行して算出した行動価値を元に、次の最
適行動を決定する手法
一般的に、全ての行動パターンを十分探索すれば最適解が得られるが、
現実的には効率的に探索範囲を削減する必要がある。
41
ターン1(初期状態)
ターン2
どのアクションを選択し
たらよいか、実際に行動
してみて評価する
ターン3
42. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
Monte Carlo 法
今回、より効率的に試行を割り振るMonte Carlo Tree Search(
MCTS)を実装して評価
42
①初期行動を選択後
②選択行動後は、ランダムに行動を
選択して終了まで行動する(プレイ
アウト)
③終了時の状態を選択行動の評価値
とする
① 〜 ③を可能限り多く試行する
探索ターン
バトル終了
43. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
MCTSの評価
Pros
⁃ 実装がシンプル
⁃ 評価関数も定義しやすい
• 最終的な勝敗(1[勝ち] or 0[負け])をスコアとする場合が多い
• 実際には 0〜1の間で連続したスコアとなるように調整している。
⁃ (ニューラルネットによるアプローチと比べ)事前の学習が不要
Cons
⁃ ターン毎に毎回探索する必要があり、現状の環境では実利用可能な
レベルでの応答性は達成できなかった。
• 1ターン行動推薦の度に1分半程度かかる
⁃ プレイアウトの影響で、長期戦や勝ち筋の少ないバトルで苦戦
43
イフリート戦勝率 0%
44. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
アルゴリズム
探索的アプローチ
モンテカルロ木探索
ニューラルネットを用いたアプローチ
NEAT
Q-learning
44
67. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
まとめ
AIによるゲームの自動プレイは実際に可能、というところまできている
対応できていない高度なバトル・戦術については引き続き改善予定
学習したAIを実際に業務に活用していくフェーズ
67
68. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
実サービス向け学習環境構成
68
Learning API Server
学習用インスタン
ス
Jenkins
ジョブ ジョブ ジョブ
学習用インスタン
ス
学習用インスタン
スAMI
FFRK Development Tool
Memcached
学習済みモデルを
S3
バトルID、バトル情報
行動レコメンデーション
学習フェーズ AI利用フェーズ
S3
Recommendation API Server
69. Copyright (C) DeNA Co.,Ltd. All Rights Reserved.
最後に、これからゲームへのAI活用をすすめる上で
途中からAIを利用しようとするとそれなりに工数がかかる
特に、AIの学習には膨大な試行回数が必要になるケースが多いので
、ゲームを高速で試行できるようなシミュレータの実装は必須
ゲームの設計段階でどこまでAIを利用するかきちんと定義し、それに合
わせてシミュレーターやデータ形式を用意しておくのが吉。
69
DQNは画像認識などで培ったDeepLearningの技術を強化学習に応用した理論です。
DeepLearningを用いることで、例えば環境の変化を画像として把握し試行錯誤することで取るべき行動を学べるようになりました。
それまでがどうったかというと、学習に必要な環境の特徴を人手で作り込んでエージェントに伝える必要がありました。
Deep Learningを用いてより1次情報に近い部分をほぼそのまま用いて学習できるようになったのが大きな進展です。