Slide 1

Slide 1 text

強化学習のビジネス活用の現場 〜ゲーム領域を中心に〜 Jun Ernesto Okumura @ 白金鉱業Meetup Vol.11 https://www.photo-ac.com/main/detail/168109

Slide 2

Slide 2 text

奥村 エルネスト 純 @pacocat ※ Applying AI in Games @ GDC2019 https://www.slideshare.net/juneokumura/applying-ai-in-games-gdc2019 ● データアナリスト ○ ゲーム、オートモーティブ ● AI研究開発エンジニア / PdM / チームリード ○ ゲームAI・強化学習の案件推進※ ● AI案件の推進 ● データ利活用のための組織開発 ● 強化学習 Career Interest

Slide 3

Slide 3 text

その他の活動 ● 執筆・翻訳 ○ 『データサイエンティスト養成読本 ビジネス活用編』技術評論社 ○ Richard Sutton & Andrew Barto『Reinforcement Learning (2nd. edition)』 In Progress… ● コミュニティ活動 ○ 強化学習アーキテクチャ勉強会( https://rlarch.connpass.com/) ○ Data Analyst Meetup Tokyo(https://data-analyst.connpass.com/)

Slide 4

Slide 4 text

本日のトピック ● 強化学習研究におけるゲーム ● ゲームにおけるAI活用の方向性 ○ コンテンツとしての応用 ○ QA(品質保証)文脈での応用 ● ゲーム×強化学習の難しさ Disclaimer ● 強化学習は多くの分野で活用が期待されていますが、時間の都合上ゲーム事業に注力します ● ゲーム事例では、強化学習を使っていないものも多く紹介します ● 強化学習以外も含む、ゲーム ×AI事例に興味ある方は以下をご覧ください CEDEC2019: ゲームと機械学習の最前線 〜現状と未来を正しく捉えるために〜 https://speakerdeck.com/pacocat/cedec2019-gemutoji-jie-xue-xi-falsezui-qian-xian-xian-zhuang-towei-lai-wozheng-sikuzhuo-erutameni

Slide 5

Slide 5 text

強化学習とは ● 環境に対する試行錯誤とそのフィードバックからの自律的な学習 ● 必要なのは環境や報酬で、教師データは使わない 環境※ 例:ゲームのシミュレータ ① 状態の観測 ② 行動の選択 ③ 結果の観測 ④ 結果の評価と方策の改善 ※ MDP環境である必要がある

Slide 6

Slide 6 text

強化学習研究におけるゲーム ● ゲーム環境は強化学習アルゴリズムのテストベッドとして使われてきた ○ 再現性のあるシミュレータの存在 ○ 多様なドメインの存在 ○ 人間の意思決定能力との比較のしやすさ(キャッチーな分かりやすさ) ※1: ニューラルネットとTD(λ)法を使ったアルゴリズム 世界チャンピオンに匹敵する成績を出し強化学習が知られるきっかけに https://researcher.watson.ibm.com/researcher/view_page.php?id=6853 ※2: https://deepmind.com/research/case-studies/alphago-the-story-so-far TD-Gammon※ (1992) AlphaGo※ (2016)

Slide 7

Slide 7 text

強化学習研究におけるゲーム ● ゲーム環境は強化学習アルゴリズムのテストベッドとして使われてきた ○ 再現性のあるシミュレータの存在 ○ 多様なドメインの存在 ○ 人間の意思決定能力との比較のしやすさ(キャッチーな分かりやすさ) ※1: 50以上のアーケードゲームが利用できる環境 (Arcade Learning Environment)。 DQN(Deep Q-Network)アルゴリズムが人間と同等の成績を出したことで有名。 https://github.com/mgbellemare/Arcade-Learning-Environment ※2: Real Time Strategyゲームである『StarCraft II』の学習環境 https://deepmind.com/research/case-studies/alphago-the-story-so-far Atari 2600※1 (2013) StarCraft II※2 (2018)

Slide 8

Slide 8 text

ゲームタスクの傾向 ● 不完全情報や長期戦略を扱うタスクでも成功事例が生まれている ○ 深層学習、強化学習、モンテカルロ木探索、ゲーム理論、 … AlphaZero※1 @ Chess/Shogi/Go
 Pluribus※2 @Poker(No-limit Texas Hold’em)
 AlphaStar※3 @StarCraft II
 OpenAI Five※4 @Dota2
 ※1: https://deepmind.com/blog/article/alphazero-shedding-new-light-grand-games-chess-shogi-and-go ※2: https://ai.facebook.com/blog/pluribus-first-ai-to-beat-pros-in-6-player-poker/ ※3: https://deepmind.com/blog/article/alphastar-mastering-real-time-strategy-game-starcraft-ii ※4: https://openai.com/five/

Slide 9

Slide 9 text

ゲームにおけるAIの活用方向性※ 1 コンテンツとしての応用
 2 QA(品質保証)文脈での応用
 ● Human vs. AI / e-Sports(ゲーム外の指向) ● プレイヤー補助(ゲーム内の指向) ● エージェントの自動プレイによるテスト(正しく動作しているか) ● ゲームバランスの担保(おもしろく遊べるか) ※: 便宜的に分類していますが、実際のユースケースとしてはこれらを組み合わせている場合が多いです。   また、事例としては教師ありのものも含めます 。

Slide 10

Slide 10 text

コンテンツとしての応用:Human vs AI ● 『StarCraft II』(AlphaStar※1 by DeepMind) 『Dota2』(OpenAI Five※2 by OpenAI) ○ いずれもTop Tierプレイヤーに圧倒的勝利を収めている ○ StarCraft IIではゲーム内に対戦機能も実装予定 ※1: https://deepmind.com/blog/article/alphastar-mastering-real-time-strategy-game-starcraft-ii ※2: https://openai.com/five/

Slide 11

Slide 11 text

コンテンツとしての応用:Human vs AI ● Blade & Soul (NCSoft) ○ 世界大会でトッププレイヤー 3名と戦いBlind Matchで3勝4敗 ○ バトルスタイルの違いを報酬関数で表現しているのが特徴 ○ 対戦相手として様々な過去のエージェントをプールすることで汎化を目指している ※1: Chung & Rho (2019), Reinforcement Learning in Action: Creating Arena Battle AI for 'Blade & Soul', Game Developers Conference 2019 https://www.gdcvault.com/play/1026406/Reinforcement-Learning-in-Action-Creating

Slide 12

Slide 12 text

コンテンツとしての応用:Human vs AI ● Arena of Valor (Tencent) ○ 大局的な戦略とミクロな個別戦略を階層的に学習(ここでは教師あり学習) ○ プロチームにも勝利しており中国で話題を読んだ ※ Wu, B. (2019). Hierarchical Macro Strategy Model for MOBA Game AI. Proceedings of the AAAI Conference on Artificial Intelligence, 33(01), 1206-1213. https://aaai.org/ojs/index.php/AAAI/article/view/3915

Slide 13

Slide 13 text

コンテンツとしての応用:プレイヤー補助 ● 『逆転オセロニア』(DeNA) ○ 複数の強さ段階を選択して対戦できる「オセロニア道場」を導入 ○ 初心者のオンボーディングをサポートして事業メトリクスに好影響 ○ ルールベースでは記述できない複雑な戦略を DNNで表現できている ※ Hammoudi, Okumura, and Tanaka. (2019). Applying AI in Games with DeNA. Game Developers Conference 2019. https://www.slideshare.net/juneokumura/applying-ai-in-games-gdc2019

Slide 14

Slide 14 text

コンテンツとしての応用:プレイヤー補助 ● 『サムライスピリッツ』(SNK) ○ 特定のプレイヤーの挙動を学習して仮想対戦ができる「道場モード」を導入 ○ 教師あり学習が使われているが、強化学習も試されている ※ 泊 久信. (2019). ニューラルネットワークを用いた AIの格闘ゲームへの組み込み . Game Creators Conference 2019. https://bit.ly/gcc2019tomari

Slide 15

Slide 15 text

コンテンツとしての応用:プレイヤー補助 ● 『将棋ウォーズ※1』(HEROZ) ○ Ponanzaの推論結果を見ることができる ● 『ZENONZARD※2』(バンダイ) ○ AIの推論結果を使ったユーザーへのアドバイス ○ AIを育成する共闘要素 ● その他、国内外の事例は多数存在 ○ メタAIとしての活用も進んでいくかもしれない ※1: https://shogiwars.heroz.jp/ ※2: https://www.aicarddass.com/zenonzard/

Slide 16

Slide 16 text

コンテンツとしての応用:所感 ● 「人間よりも強いAI」が当たり前の存在に ○ 人間を超えるということに目新しさはなくなってきている ○ 現実のユーザーをどのように楽しませるか、マネタイズするかが焦点に ● DNNを使ったAIは着実に広まり始めている ○ プロダクションに載せるためのエコシステムの充実や知見共有が進捗 ○ 複雑なゲームではDNNの表現能力が役立つ場面が多い ○ コントロール余地が必要な場面では扱いづらい ● 強化学習の適用はこの文脈ではまだ限定的 ○ Super Humanを目指さなければ教師あり学習で十分な成績が出ることも ○ プレイスタイルのコントロールが必要な場面では報酬関数の調整が主流だが、 チューニングがとても大変

Slide 17

Slide 17 text

自動QA:エージェントの自動プレイによるテスト ● ゲームの複雑化・大規模化に伴いQAコストが肥大化 ○ 人間ではもはやテストできない規模に ● ゲームを効率的に回遊、バグ検知するエージェントへの期待が集まっている 北斗が如く:VRAM使用率の可視化
 コリジョン抜け検知
 BattlefieldV:自動テストによる
 クラッシュ検知など
 The Division:自動テストによる
 Stuck検知など
 ※1: 阪上. (2018). QAエンジニアってどんな仕事? ~ゲーム開発におけるテストの世界~ . SEGA tech blog http://techblog.sega.jp/entry/2018/08/27/100000 ※2: Gillberg. (2019). AI for Testing: The Development of Bots that Play 'Battlefield V'. Game Developer Conference 2019. https://www.gdcvault.com/play/1026308/AI-for-Testing-The-Development ※3: Paredes and Jones. (2019). Automated Testing: Using AI Controlled Players to Test 'The Division'. Game Developer Conference 2019. https://www.gdcvault.com/play/1026382/Automated-Testing-Using-AI-Controlled

Slide 18

Slide 18 text

自動QA:ゲームバランスの担保 ● ゲームバランスの調整ミスはビジネスを大きく毀損する可能性がある ● 基本は人力の検証が続いているが、自動化ニーズは強い ● 『D×2 新・女神転生 リベレーション』におけるクエスト難易度調整支援 
 ● 『D×2 新・女神転生 リベレーション』におけるマップ設計支援 
 ● 『コトダマン』におけるデッキ調整・報酬設定支援 
 Candy Crush Saga:教師あり学習で
 テスト工数が1週間→数分に
 遺伝的アルゴリズム、強化学習、ルールベース探索など、
 タイトルやケースに応じた技術の使い分けと運用
 ※1: Nodet (2019). Human-Like Playtesting with Deep Learning. Tech at King. https://medium.com/techking/human-like-playtesting-with-deep-learning-92adafffe921 ※2: 松田 剛. (2018). モバイルタイトルにおける横断的な機械学習によるレベルデザイン支援システムの構築と運用 . CEDEC 2018. https://cedec.cesa.or.jp/2018/session/detail/s5ab4926f6d350.htm https://gamebiz.jp/?p=218707l

Slide 19

Slide 19 text

自動QA:所感 ● ビジネスのインパクトとしては一番大きな領域 ○ QAコストは肥大化しており、ゲームのリッチ化と共に担保が難しい領域に来ている ● 教師データなしで人間のように振る舞うエージェントが求められている ○ リリース前にテストを行うため、教師データが手に入らないケースが多い ● テストカバレッジをどのように担保するかが大きな課題 ○ 既存のツリーベースの意思決定など、行動をコントロールしやすいモデルが好まれている ○ 強化学習がQA運用に乗っているサービスはほとんど聞かない ● 強化学習へのニーズはなくならないので、今後もトライアルが続くはず ○ 既存のゲームAI(ビヘイビアーツリーやステートマシン)では表現できないゲームがある ○ コントロール余地、解釈性、学習の低コスト化が進めばいずれ活用は進んでいく

Slide 20

Slide 20 text

ゲーム×強化学習の難しさ 1. [コンテンツとして] コントロール余地への要件水準が高い ○ 「人間らしくない動き」や「単調な戦略」への許容度 ○ お客様に届ける製品である以上、品質をコントロールできる必要性 ■ 「ここでは◯◯の技を使ってほしい」 etc... 2. [QAエージェントとして] テストカバレッジの担保が難しい ○ ルールを記述できる既存のルールベース AIのメリットを大きく超えにくい ○ バランス調整に使う場合「人間が手触りを確認」というプロセスをどう改良するかが課題 3. 探索をするための高速なシミュレータ or 並列システム が必要 ○ バトルロジックと描画ロジックを切り離す、などの運用を徹底する必要 ○ 常に最新のゲームロジックを反映する必要があり、メンテコストが大きくなりがち ○ プレイヤーに見えないところでバトルを高速に回す優先度を高くしにくい

Slide 21

Slide 21 text

ゲーム×強化学習の難しさ 4. 運用課題 ○ 強化学習エージェントの性能のモニタリングや再学習のスケジューリング ○ 環境が動的に変わるため、チューニングの継続が必要 5. アルゴリズムの課題 ○ アルゴリズムのテストベッドになっているタスクは実際に運用されているゲームとは異なる ○ ゲームごとに問題を深く理解してトライアル必要がある(今だと横にスケールしづらい) 6. パブリッシャーのデータ・シミュレータ公開の難しさ ○ 事業として運用しているので、 KPIの秘匿化やロジック公開のリスクを検討する必要がある ○ アカデミアとどのように win-winな関係を作っていくかは今後も課題

Slide 22

Slide 22 text

One More Thing.... ● 交通領域では強化学習が大規模プロダクションに導入されているものも多い ○ タクシーの配車アルゴリズム、信号機の制御、 … ● 他、医療/スポーツ/制御/教育/金融/広告などの領域で活用が模索されています ○ 時間の都合上、ゲーム領域にフォーカスさせていただきました mm https://speakerdeck.com/pacocat/reinforcement-learning-applications-in-taxi-dispatching-and-repositioning-domain