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

gree_tech
gree_techgree_tech
Copyright © GREE, Inc. All Rights Reserved.
ターン制コマンドバトルにおける
強化学習効率化
グリー株式会社
辻本貴昭 尾崎嘉彦 森田想平
Copyright © GREE, Inc. All Rights Reserved.
• 基本プレイ無料が多い
• 追加コンテンツが主な収益源
• 複数の追加コンテンツを並行して開発
背景:スマートフォンゲームの開発
2
設計 開発 調整 リリース
2週間
設計 開発 調整 リリース
設計 開発 調整 リリース
設計 開発 調整 リリース
設計 開発 調整
設計 開発
設計
…
…
…
…
Copyright © GREE, Inc. All Rights Reserved.
• コンテンツの楽しさを担保する
• 調整項目はゲームによって様々
• マーカーの間隔
• クリアに必要な手数
• 敵や味方の強さ
• 調整とテストプレイを3回以上繰り返す
• 3日程度しか使えない
背景:バランス調整
3
バランス調整の効率化が必要
➢ たたかう
どうぐ
にげる
HP:9/10
MP:5/5
ミミック
Lv. 5
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
Copyright © GREE, Inc. All Rights Reserved.
• ターン制コマンドバトル
• ターンごとに行動を選択する
• 行動が表形式のデータで表される
• 要望
• 最適なプレイ時のハイスコアを知りたい
• 制約
• シミュレータは1ターン戻すなどができない
背景:社内で運用中のゲームの場合
5
➢ たたかう
どうぐ
にげる
HP:9/10
MP:5/5
ミミック
Lv. 5
強化学習によるゲームプレイAIの学習を検討
Copyright © GREE, Inc. All Rights Reserved.
• 状態を観測し行動を決定する問題を解く方法
• 環境から得られる報酬を最大化する
• 行動価値
• ある状態である行動を取ったときの期待報酬
• Q学習
• 行動を反復して行動価値を最適化する
• 行動価値関数は状態x行動の表で実現
• Deep Q-Network (DQN)
• 行動価値関数をニューラルネットワークで近似
強化学習
6
環境
状態
報酬 行動
状態
価値1 … 価値n
ニューラルネットワーク
Copyright © GREE, Inc. All Rights Reserved.
課題
7
• 強化学習には膨大な時間と計算リソースが必要
AI 実時間 セルフプレイ
AlphaGo Zero 3日間 490万局
AlphaStar 1週間 200年
OpenAI Five 10ヶ月 45000年
• バランス調整に使える時間は3日程度
強化学習の効率化が必要
Copyright © GREE, Inc. All Rights Reserved.
• DQNは汎用的な強化学習手法
• ゲームの特徴を活かせば効率化ができる可能性
• 状態だけでなく行動の意味を考慮して価値を評価する
• 事前に特徴を学習しておく
強化学習効率化の着目点
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程の隙間に流れ込んでいます
> 隙間へ行く
隙間は狭すぎて入れません
Copyright © GREE, Inc. All Rights Reserved.
目的・提案手法
10
目的
• ターン制コマンドバトルの強化学習効率化
• Pokémon Showdownを対象
提案手法
• 行動の意味を考慮して行動価値を評価する
• 行動の特徴を事前に学習しておく
Copyright © GREE, Inc. All Rights Reserved.
• 2017年にAI大会開催
• Computational Intelligence and Games 2017
• 2人対戦ターン制コマンドバトル
• 6体のポケモンでチームを構成
• ターン毎に行動を1つ選択する
• 行動の選択肢は2種類あり最大9個
• 技
• ポケモン交代
• 相手ポケモンの体力をすべて0にすると勝利
Pokémon Showdown
11
Copyright © GREE, Inc. All Rights Reserved.
1. 強化学習の前に行動の特徴を学習
2. 事前に埋め込んだ行動を使って強化学習
提案手法の概要
12
ターン制
コマンドバトル
行動の意味評価
状態
行動
報酬 強化学習Agent
行動の埋め込みマスタデータStep1
Step2
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
Copyright © GREE, Inc. All Rights Reserved.
AutoEncoder
• 入力のブール値は0/1に変換
• 損失関数は平均二乗誤差
• 確率的勾配降下法で最適化
• 2種類用意
• 技の埋め込み
• 交代ポケモンの埋め込み
• DRRNと異なり、強化学習前に埋め込む
行動の埋め込みの詳細
14
技 交代ポケモン
AEmove AEswitch
memb semb
Copyright © GREE, Inc. All Rights Reserved.
提案手法
15
DQN
行動を一括評価 行動を個別に評価
State Act1 … Actn
VAct1
… VActn
価値関数
…
価値関数
VAct1
State Act1
価値関数
VActn
State Actn
個別評価することで純粋な行動価値を求める
行動の意味を考慮した行動価値
Copyright © GREE, Inc. All Rights Reserved.
比較手法
実験設定
16
埋め込み表現なし 埋め込み表現あり
行動の一括評価 DQN AE
行動の個別評価 PA-DQN AE+PA-DQN
実験方法
• チームを構成するポケモンはランダムに選択
• 100ステップの学習ごとに100回の対戦で評価
• サンプル提供されている多層パーセプトロンAIと対戦
Copyright © GREE, Inc. All Rights Reserved.
実験結果
17
一括
個別
Copyright © GREE, Inc. All Rights Reserved.
実験結果
18
一括
個別
性能向上開始
Copyright © GREE, Inc. All Rights Reserved.
実験結果
19
埋め込みによって学習初期の学習効率が向上
Copyright © GREE, Inc. All Rights Reserved.
実験結果
20
行動を埋め込むと最終的な性能は劣る
Copyright © GREE, Inc. All Rights Reserved.
• 状態の多様性が低くなる
• DQNは技の並び順が違うだけで全く別の状態とみなす
• 個別に評価することで同じような状態が表れやすくなる
• 行動の正確な価値を評価可能
• DQNは他の選択肢によって行動の価値が影響される
• コマンドバトルでは他の選択肢で行動の価値は変わらないはず
考察:行動の個別評価の効果
21
Copyright © GREE, Inc. All Rights Reserved.
• わずかな性能低下
• 自然言語と異なり、既に表形式のデータで意味が表されている
• 重要な属性を無視してしまったのではないか
考察:行動の埋め込みの効果
22
Copyright © GREE, Inc. All Rights Reserved.
まとめ
• 行動の個別評価で学習ステップ数を75%以上削減
• 行動の埋め込みで学習ステップ数をさらに40%削減
課題
• ドメイン知識を活用した埋め込み
• 複数のキャラクタの行動を選択するゲームへ適用
まとめ・課題
23
1 of 23

Recommended

インディーゲーム開発の現状と未来 2021 by
インディーゲーム開発の現状と未来 2021インディーゲーム開発の現状と未来 2021
インディーゲーム開発の現状と未来 2021Unity Technologies Japan K.K.
2.6K views43 slides
UE4ディープラーニングってやつでなんとかして!環境構築編(Python3+TensorFlow) by
UE4ディープラーニングってやつでなんとかして!環境構築編(Python3+TensorFlow) UE4ディープラーニングってやつでなんとかして!環境構築編(Python3+TensorFlow)
UE4ディープラーニングってやつでなんとかして!環境構築編(Python3+TensorFlow) エピック・ゲームズ・ジャパン Epic Games Japan
9.9K views31 slides
強化学習と逆強化学習を組み合わせた模倣学習 by
強化学習と逆強化学習を組み合わせた模倣学習強化学習と逆強化学習を組み合わせた模倣学習
強化学習と逆強化学習を組み合わせた模倣学習Eiji Uchibe
25.3K views48 slides
OSS強化学習向けゲーム環境の動向 by
OSS強化学習向けゲーム環境の動向OSS強化学習向けゲーム環境の動向
OSS強化学習向けゲーム環境の動向gree_tech
2.7K views54 slides
ポーカーAIの最新動向 20171031 by
ポーカーAIの最新動向 20171031ポーカーAIの最新動向 20171031
ポーカーAIの最新動向 20171031Jun Okumura
11.7K views43 slides
MVPパターンによる設計アプローチ「あなたのアプリ報連相できてますか」 by
MVPパターンによる設計アプローチ「あなたのアプリ報連相できてますか」MVPパターンによる設計アプローチ「あなたのアプリ報連相できてますか」
MVPパターンによる設計アプローチ「あなたのアプリ報連相できてますか」U-dai Yokoyama
18K views26 slides

More Related Content

What's hot

Machinationの紹介 by
Machinationの紹介Machinationの紹介
Machinationの紹介Kazuhisa Minato
12.4K views45 slides
カスタムSIで使ってみよう ~ OpenAI Gym を使った強化学習 by
カスタムSIで使ってみよう ~ OpenAI Gym を使った強化学習カスタムSIで使ってみよう ~ OpenAI Gym を使った強化学習
カスタムSIで使ってみよう ~ OpenAI Gym を使った強化学習Hori Tasuku
1.6K views86 slides
ピクサー USD 入門 新たなコンテンツパイプラインを構築する by
ピクサー USD 入門 新たなコンテンツパイプラインを構築するピクサー USD 入門 新たなコンテンツパイプラインを構築する
ピクサー USD 入門 新たなコンテンツパイプラインを構築するTakahito Tejima
36.5K views74 slides
強化学習アルゴリズムPPOの解説と実験 by
強化学習アルゴリズムPPOの解説と実験強化学習アルゴリズムPPOの解説と実験
強化学習アルゴリズムPPOの解説と実験克海 納谷
2.8K views22 slides
ゲームAIの基礎と事例 by
ゲームAIの基礎と事例ゲームAIの基礎と事例
ゲームAIの基礎と事例Tomoaki TSUCHIE
25.9K views57 slides

What's hot(20)

カスタムSIで使ってみよう ~ OpenAI Gym を使った強化学習 by Hori Tasuku
カスタムSIで使ってみよう ~ OpenAI Gym を使った強化学習カスタムSIで使ってみよう ~ OpenAI Gym を使った強化学習
カスタムSIで使ってみよう ~ OpenAI Gym を使った強化学習
Hori Tasuku1.6K views
ピクサー USD 入門 新たなコンテンツパイプラインを構築する by Takahito Tejima
ピクサー USD 入門 新たなコンテンツパイプラインを構築するピクサー USD 入門 新たなコンテンツパイプラインを構築する
ピクサー USD 入門 新たなコンテンツパイプラインを構築する
Takahito Tejima36.5K views
強化学習アルゴリズムPPOの解説と実験 by 克海 納谷
強化学習アルゴリズムPPOの解説と実験強化学習アルゴリズムPPOの解説と実験
強化学習アルゴリズムPPOの解説と実験
克海 納谷2.8K views
ゲームAIの基礎と事例 by Tomoaki TSUCHIE
ゲームAIの基礎と事例ゲームAIの基礎と事例
ゲームAIの基礎と事例
Tomoaki TSUCHIE25.9K views
ゲームAI・実装事例の紹介 by Koji Morikawa
ゲームAI・実装事例の紹介ゲームAI・実装事例の紹介
ゲームAI・実装事例の紹介
Koji Morikawa9K views
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning by Preferred Networks
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learningゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
Preferred Networks117.4K views
統計的因果推論への招待 -因果構造探索を中心に- by Shiga University, RIKEN
統計的因果推論への招待 -因果構造探索を中心に-統計的因果推論への招待 -因果構造探索を中心に-
統計的因果推論への招待 -因果構造探索を中心に-
Unity開発で使える設計の話+Zenjectの紹介 by torisoup
Unity開発で使える設計の話+Zenjectの紹介Unity開発で使える設計の話+Zenjectの紹介
Unity開発で使える設計の話+Zenjectの紹介
torisoup125.3K views
Minecraft による強化学習の実践 (MineRL) by Tusyoshi Matsuzaki
Minecraft による強化学習の実践 (MineRL)Minecraft による強化学習の実践 (MineRL)
Minecraft による強化学習の実践 (MineRL)
Tusyoshi Matsuzaki2.4K views
方策勾配型強化学習の基礎と応用 by Ryo Iwaki
方策勾配型強化学習の基礎と応用方策勾配型強化学習の基礎と応用
方策勾配型強化学習の基礎と応用
Ryo Iwaki18.1K views
ゲームの仕様書を書こうまとめ by Sugimoto Chizuru
ゲームの仕様書を書こうまとめゲームの仕様書を書こうまとめ
ゲームの仕様書を書こうまとめ
Sugimoto Chizuru65.6K views
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」 by Ken'ichi Matsui
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
Ken'ichi Matsui96.4K views
ゲームAI製作のためのワークショップ(III) by Youichiro Miyake
ゲームAI製作のためのワークショップ(III)ゲームAI製作のためのワークショップ(III)
ゲームAI製作のためのワークショップ(III)
Youichiro Miyake3.4K views
【Unity】 Behavior TreeでAIを作る by torisoup
 【Unity】 Behavior TreeでAIを作る 【Unity】 Behavior TreeでAIを作る
【Unity】 Behavior TreeでAIを作る
torisoup19.8K views
CVPR2018のPointCloudのCNN論文とSPLATNet by Takuya Minagawa
CVPR2018のPointCloudのCNN論文とSPLATNetCVPR2018のPointCloudのCNN論文とSPLATNet
CVPR2018のPointCloudのCNN論文とSPLATNet
Takuya Minagawa11.7K views
Unityではじめるオープンワールド制作 エンジニア編 by Unity Technologies Japan K.K.
Unityではじめるオープンワールド制作 エンジニア編Unityではじめるオープンワールド制作 エンジニア編
Unityではじめるオープンワールド制作 エンジニア編
ノンパラメトリックベイズを用いた逆強化学習 by Shota Ishikawa
ノンパラメトリックベイズを用いた逆強化学習ノンパラメトリックベイズを用いた逆強化学習
ノンパラメトリックベイズを用いた逆強化学習
Shota Ishikawa3.2K views

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

OSS強化学習フレームワークの比較 by
OSS強化学習フレームワークの比較OSS強化学習フレームワークの比較
OSS強化学習フレームワークの比較gree_tech
5.7K views40 slides
長期運用に耐えるための設計とリファクタリング(DeNA Games Tokyo) by
長期運用に耐えるための設計とリファクタリング(DeNA Games Tokyo)長期運用に耐えるための設計とリファクタリング(DeNA Games Tokyo)
長期運用に耐えるための設計とリファクタリング(DeNA Games Tokyo)DeNA Games Tokyo
419 views34 slides
DataEngConf NYC’18 セッションサマリー #2 by
DataEngConf NYC’18 セッションサマリー #2DataEngConf NYC’18 セッションサマリー #2
DataEngConf NYC’18 セッションサマリー #2gree_tech
3.6K views43 slides
Unity * スマートフォン開発で学んだこと by
Unity * スマートフォン開発で学んだことUnity * スマートフォン開発で学んだこと
Unity * スマートフォン開発で学んだことKatsutoshi Makino
15.6K views83 slides
A Deep Reinforcement Learning Chatbot by
A Deep Reinforcement Learning ChatbotA Deep Reinforcement Learning Chatbot
A Deep Reinforcement Learning ChatbotTakahiro Yoshinaga
2.5K views45 slides
[141004] cedec 2014 참관기 & 강연 리뷰 #1 by
[141004] cedec 2014 참관기 & 강연 리뷰 #1[141004] cedec 2014 참관기 & 강연 리뷰 #1
[141004] cedec 2014 참관기 & 강연 리뷰 #1MinGeun Park
1.8K views444 slides

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

OSS強化学習フレームワークの比較 by gree_tech
OSS強化学習フレームワークの比較OSS強化学習フレームワークの比較
OSS強化学習フレームワークの比較
gree_tech5.7K views
長期運用に耐えるための設計とリファクタリング(DeNA Games Tokyo) by DeNA Games Tokyo
長期運用に耐えるための設計とリファクタリング(DeNA Games Tokyo)長期運用に耐えるための設計とリファクタリング(DeNA Games Tokyo)
長期運用に耐えるための設計とリファクタリング(DeNA Games Tokyo)
DeNA Games Tokyo419 views
DataEngConf NYC’18 セッションサマリー #2 by gree_tech
DataEngConf NYC’18 セッションサマリー #2DataEngConf NYC’18 セッションサマリー #2
DataEngConf NYC’18 セッションサマリー #2
gree_tech3.6K views
Unity * スマートフォン開発で学んだこと by Katsutoshi Makino
Unity * スマートフォン開発で学んだことUnity * スマートフォン開発で学んだこと
Unity * スマートフォン開発で学んだこと
Katsutoshi Makino15.6K views
[141004] cedec 2014 참관기 & 강연 리뷰 #1 by MinGeun Park
[141004] cedec 2014 참관기 & 강연 리뷰 #1[141004] cedec 2014 참관기 & 강연 리뷰 #1
[141004] cedec 2014 참관기 & 강연 리뷰 #1
MinGeun Park1.8K views
ゲームバランス調整補助のための強化学習の効率化 by gree_tech
ゲームバランス調整補助のための強化学習の効率化ゲームバランス調整補助のための強化学習の効率化
ゲームバランス調整補助のための強化学習の効率化
gree_tech1.9K views
データに振り回されて失敗した あんなことやこんなこと ~ゲームのために必要な本当の ビジネス・アナリティクス~ by Daisuke Nogami
データに振り回されて失敗したあんなことやこんなこと~ゲームのために必要な本当のビジネス・アナリティクス~データに振り回されて失敗したあんなことやこんなこと~ゲームのために必要な本当のビジネス・アナリティクス~
データに振り回されて失敗した あんなことやこんなこと ~ゲームのために必要な本当の ビジネス・アナリティクス~
Daisuke Nogami44.5K views
[GREE Tech Talk #07] Unityカジュアルゲーム・ケーススタディ by gree_tech
[GREE Tech Talk #07] Unityカジュアルゲーム・ケーススタディ[GREE Tech Talk #07] Unityカジュアルゲーム・ケーススタディ
[GREE Tech Talk #07] Unityカジュアルゲーム・ケーススタディ
gree_tech13.4K views
運用中のゲームにAIを導入するには〜プロジェクト推進・ユースケース・運用〜 [DeNA TechCon 2019] by DeNA
運用中のゲームにAIを導入するには〜プロジェクト推進・ユースケース・運用〜 [DeNA TechCon 2019]運用中のゲームにAIを導入するには〜プロジェクト推進・ユースケース・運用〜 [DeNA TechCon 2019]
運用中のゲームにAIを導入するには〜プロジェクト推進・ユースケース・運用〜 [DeNA TechCon 2019]
DeNA2.3K views
ゲームデータDLとの戦い ~幻塔戦記グリフォン~ by Syougo Yoshino
ゲームデータDLとの戦い ~幻塔戦記グリフォン~ゲームデータDLとの戦い ~幻塔戦記グリフォン~
ゲームデータDLとの戦い ~幻塔戦記グリフォン~
Syougo Yoshino19.2K views
カンバンと朝会とわたくし by Drecom Co., Ltd.
カンバンと朝会とわたくしカンバンと朝会とわたくし
カンバンと朝会とわたくし
Drecom Co., Ltd.912 views
協業アプリ開発を推進するテクニカルコンサルタントの挑戦 〜『歌マクロス』を成功に導く技術支援〜 by DeNA
協業アプリ開発を推進するテクニカルコンサルタントの挑戦  〜『歌マクロス』を成功に導く技術支援〜協業アプリ開発を推進するテクニカルコンサルタントの挑戦  〜『歌マクロス』を成功に導く技術支援〜
協業アプリ開発を推進するテクニカルコンサルタントの挑戦 〜『歌マクロス』を成功に導く技術支援〜
DeNA31.8K views
ゲームインフラコンテナ実践導入 by Hiroki Tamiya
ゲームインフラコンテナ実践導入ゲームインフラコンテナ実践導入
ゲームインフラコンテナ実践導入
Hiroki Tamiya2.1K views
アジャイルナイトセミナー_2012年10月18日_Social Game x Agile Development by Go2GroupJapan
アジャイルナイトセミナー_2012年10月18日_Social Game x Agile Developmentアジャイルナイトセミナー_2012年10月18日_Social Game x Agile Development
アジャイルナイトセミナー_2012年10月18日_Social Game x Agile Development
Go2GroupJapan575 views
新次元ゲーム開発セミナー キーノート (Oct-18, 2012) by Daniel-Hiroyuki Haga
新次元ゲーム開発セミナー キーノート (Oct-18, 2012)新次元ゲーム開発セミナー キーノート (Oct-18, 2012)
新次元ゲーム開発セミナー キーノート (Oct-18, 2012)
強化学習を利用した自律型GameAIの取り組み ~高速自動プレイによるステージ設計支援~ #denatechcon by DeNA
強化学習を利用した自律型GameAIの取り組み ~高速自動プレイによるステージ設計支援~ #denatechcon強化学習を利用した自律型GameAIの取り組み ~高速自動プレイによるステージ設計支援~ #denatechcon
強化学習を利用した自律型GameAIの取り組み ~高速自動プレイによるステージ設計支援~ #denatechcon
DeNA7.6K views
DeNAの最新のマスタデータ管理システム Oyakata の全容 by sairoutine
DeNAの最新のマスタデータ管理システム Oyakata の全容DeNAの最新のマスタデータ管理システム Oyakata の全容
DeNAの最新のマスタデータ管理システム Oyakata の全容
sairoutine3.6K views
データに振り回されて失敗した あんなことやこんなこと+α  〜なぜ数字の手助けが必要になるのか、その理由と分析の実践例〜 by Daisuke Nogami
データに振り回されて失敗した あんなことやこんなこと+α  〜なぜ数字の手助けが必要になるのか、その理由と分析の実践例〜データに振り回されて失敗した あんなことやこんなこと+α  〜なぜ数字の手助けが必要になるのか、その理由と分析の実践例〜
データに振り回されて失敗した あんなことやこんなこと+α  〜なぜ数字の手助けが必要になるのか、その理由と分析の実践例〜
Daisuke Nogami4.6K views

More from gree_tech

アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜 by
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜gree_tech
725 views36 slides
GREE VR Studio Laboratory「XR-UX Devプロジェクト」の成果紹介 by
GREE VR Studio Laboratory「XR-UX Devプロジェクト」の成果紹介GREE VR Studio Laboratory「XR-UX Devプロジェクト」の成果紹介
GREE VR Studio Laboratory「XR-UX Devプロジェクト」の成果紹介gree_tech
229 views13 slides
REALITYアバターを様々なメタバースで活躍させてみた - GREE VR Studio Laboratory インターン研究成果発表 by
REALITYアバターを様々なメタバースで活躍させてみた - GREE VR Studio Laboratory インターン研究成果発表REALITYアバターを様々なメタバースで活躍させてみた - GREE VR Studio Laboratory インターン研究成果発表
REALITYアバターを様々なメタバースで活躍させてみた - GREE VR Studio Laboratory インターン研究成果発表gree_tech
1K views18 slides
アプリ起動時間高速化 ~推測するな、計測せよ~ by
アプリ起動時間高速化 ~推測するな、計測せよ~アプリ起動時間高速化 ~推測するな、計測せよ~
アプリ起動時間高速化 ~推測するな、計測せよ~gree_tech
1.9K views84 slides
長寿なゲーム事業におけるアプリビルドの効率化 by
長寿なゲーム事業におけるアプリビルドの効率化長寿なゲーム事業におけるアプリビルドの効率化
長寿なゲーム事業におけるアプリビルドの効率化gree_tech
347 views116 slides
Cloud Spanner をより便利にする運用支援ツールの紹介 by
Cloud Spanner をより便利にする運用支援ツールの紹介Cloud Spanner をより便利にする運用支援ツールの紹介
Cloud Spanner をより便利にする運用支援ツールの紹介gree_tech
685 views31 slides

More from gree_tech(20)

アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜 by gree_tech
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
gree_tech725 views
GREE VR Studio Laboratory「XR-UX Devプロジェクト」の成果紹介 by gree_tech
GREE VR Studio Laboratory「XR-UX Devプロジェクト」の成果紹介GREE VR Studio Laboratory「XR-UX Devプロジェクト」の成果紹介
GREE VR Studio Laboratory「XR-UX Devプロジェクト」の成果紹介
gree_tech229 views
REALITYアバターを様々なメタバースで活躍させてみた - GREE VR Studio Laboratory インターン研究成果発表 by gree_tech
REALITYアバターを様々なメタバースで活躍させてみた - GREE VR Studio Laboratory インターン研究成果発表REALITYアバターを様々なメタバースで活躍させてみた - GREE VR Studio Laboratory インターン研究成果発表
REALITYアバターを様々なメタバースで活躍させてみた - GREE VR Studio Laboratory インターン研究成果発表
gree_tech1K views
アプリ起動時間高速化 ~推測するな、計測せよ~ by gree_tech
アプリ起動時間高速化 ~推測するな、計測せよ~アプリ起動時間高速化 ~推測するな、計測せよ~
アプリ起動時間高速化 ~推測するな、計測せよ~
gree_tech1.9K views
長寿なゲーム事業におけるアプリビルドの効率化 by gree_tech
長寿なゲーム事業におけるアプリビルドの効率化長寿なゲーム事業におけるアプリビルドの効率化
長寿なゲーム事業におけるアプリビルドの効率化
gree_tech347 views
Cloud Spanner をより便利にする運用支援ツールの紹介 by gree_tech
Cloud Spanner をより便利にする運用支援ツールの紹介Cloud Spanner をより便利にする運用支援ツールの紹介
Cloud Spanner をより便利にする運用支援ツールの紹介
gree_tech685 views
WFSにおけるCloud SpannerとGKEを中心としたGCP導入事例の紹介 by gree_tech
WFSにおけるCloud SpannerとGKEを中心としたGCP導入事例の紹介WFSにおけるCloud SpannerとGKEを中心としたGCP導入事例の紹介
WFSにおけるCloud SpannerとGKEを中心としたGCP導入事例の紹介
gree_tech599 views
SINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現について by gree_tech
SINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現についてSINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現について
SINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現について
gree_tech626 views
海外展開と負荷試験 by gree_tech
海外展開と負荷試験海外展開と負荷試験
海外展開と負荷試験
gree_tech593 views
翻訳QAでのテスト自動化の取り組み by gree_tech
翻訳QAでのテスト自動化の取り組み翻訳QAでのテスト自動化の取り組み
翻訳QAでのテスト自動化の取り組み
gree_tech305 views
組み込み開発のテストとゲーム開発のテストの違い by gree_tech
組み込み開発のテストとゲーム開発のテストの違い組み込み開発のテストとゲーム開発のテストの違い
組み込み開発のテストとゲーム開発のテストの違い
gree_tech573 views
サーバーフレームワークに潜んでる脆弱性検知ツール紹介 by gree_tech
サーバーフレームワークに潜んでる脆弱性検知ツール紹介サーバーフレームワークに潜んでる脆弱性検知ツール紹介
サーバーフレームワークに潜んでる脆弱性検知ツール紹介
gree_tech209 views
データエンジニアとアナリストチーム兼務になった件について by gree_tech
データエンジニアとアナリストチーム兼務になった件についてデータエンジニアとアナリストチーム兼務になった件について
データエンジニアとアナリストチーム兼務になった件について
gree_tech308 views
シェアドサービスとしてのデータテクノロジー by gree_tech
シェアドサービスとしてのデータテクノロジーシェアドサービスとしてのデータテクノロジー
シェアドサービスとしてのデータテクノロジー
gree_tech432 views
「ドキュメント見つからない問題」をなんとかしたい - 横断検索エンジン導入の取り組みについて- by gree_tech
「ドキュメント見つからない問題」をなんとかしたい - 横断検索エンジン導入の取り組みについて-「ドキュメント見つからない問題」をなんとかしたい - 横断検索エンジン導入の取り組みについて-
「ドキュメント見つからない問題」をなんとかしたい - 横断検索エンジン導入の取り組みについて-
gree_tech1K views
「Atomic Design × Nuxt.js」コンポーネント毎に責務の範囲を明確にしたら幸せになった話 by gree_tech
「Atomic Design × Nuxt.js」コンポーネント毎に責務の範囲を明確にしたら幸せになった話「Atomic Design × Nuxt.js」コンポーネント毎に責務の範囲を明確にしたら幸せになった話
「Atomic Design × Nuxt.js」コンポーネント毎に責務の範囲を明確にしたら幸せになった話
gree_tech1.1K views
比較サイトの検索改善(SPA から SSR に変換) by gree_tech
比較サイトの検索改善(SPA から SSR に変換)比較サイトの検索改善(SPA から SSR に変換)
比較サイトの検索改善(SPA から SSR に変換)
gree_tech694 views
コードの自動修正によって実現する、機能開発を止めないフレームワーク移行 by gree_tech
コードの自動修正によって実現する、機能開発を止めないフレームワーク移行コードの自動修正によって実現する、機能開発を止めないフレームワーク移行
コードの自動修正によって実現する、機能開発を止めないフレームワーク移行
gree_tech2.9K views
「やんちゃ、足りてる?」〜ヤンマガWebで挑戦を続ける新入りエンジニア〜 by gree_tech
「やんちゃ、足りてる?」〜ヤンマガWebで挑戦を続ける新入りエンジニア〜「やんちゃ、足りてる?」〜ヤンマガWebで挑戦を続ける新入りエンジニア〜
「やんちゃ、足りてる?」〜ヤンマガWebで挑戦を続ける新入りエンジニア〜
gree_tech397 views
法人向けメタバースプラットフォームの開発の裏側をのぞいてみた(仮) by gree_tech
法人向けメタバースプラットフォームの開発の裏側をのぞいてみた(仮)法人向けメタバースプラットフォームの開発の裏側をのぞいてみた(仮)
法人向けメタバースプラットフォームの開発の裏側をのぞいてみた(仮)
gree_tech752 views

Recently uploaded

lt.pptx by
lt.pptxlt.pptx
lt.pptxtomochamarika
85 views13 slides
Najah Matsuo Self Introduction by
Najah Matsuo Self IntroductionNajah Matsuo Self Introduction
Najah Matsuo Self IntroductionNajahMatsuo
10 views29 slides
JISTA月例会2023年12月 書籍『3カ月で改善!システム障害対応実践ガイド』ご紹介+失敗学と障害対応と私 by
JISTA月例会2023年12月 書籍『3カ月で改善!システム障害対応実践ガイド』ご紹介+失敗学と障害対応と私JISTA月例会2023年12月 書籍『3カ月で改善!システム障害対応実践ガイド』ご紹介+失敗学と障害対応と私
JISTA月例会2023年12月 書籍『3カ月で改善!システム障害対応実践ガイド』ご紹介+失敗学と障害対応と私修治 松浦
195 views36 slides
onewedge_companyguide1 by
onewedge_companyguide1onewedge_companyguide1
onewedge_companyguide1ONEWEDGE1
32 views22 slides
how query cost affects search behavior translated in JP by
how query cost affects search behavior translated in JPhow query cost affects search behavior translated in JP
how query cost affects search behavior translated in JPTobioka Ken
10 views16 slides
システム概要.pdf by
システム概要.pdfシステム概要.pdf
システム概要.pdfTaira Shimizu
44 views1 slide

Recently uploaded(7)

Najah Matsuo Self Introduction by NajahMatsuo
Najah Matsuo Self IntroductionNajah Matsuo Self Introduction
Najah Matsuo Self Introduction
NajahMatsuo10 views
JISTA月例会2023年12月 書籍『3カ月で改善!システム障害対応実践ガイド』ご紹介+失敗学と障害対応と私 by 修治 松浦
JISTA月例会2023年12月 書籍『3カ月で改善!システム障害対応実践ガイド』ご紹介+失敗学と障害対応と私JISTA月例会2023年12月 書籍『3カ月で改善!システム障害対応実践ガイド』ご紹介+失敗学と障害対応と私
JISTA月例会2023年12月 書籍『3カ月で改善!システム障害対応実践ガイド』ご紹介+失敗学と障害対応と私
修治 松浦195 views
onewedge_companyguide1 by ONEWEDGE1
onewedge_companyguide1onewedge_companyguide1
onewedge_companyguide1
ONEWEDGE132 views
how query cost affects search behavior translated in JP by Tobioka Ken
how query cost affects search behavior translated in JPhow query cost affects search behavior translated in JP
how query cost affects search behavior translated in JP
Tobioka Ken10 views

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

  • 1. Copyright © GREE, Inc. All Rights Reserved. ターン制コマンドバトルにおける 強化学習効率化 グリー株式会社 辻本貴昭 尾崎嘉彦 森田想平
  • 2. Copyright © GREE, Inc. All Rights Reserved. • 基本プレイ無料が多い • 追加コンテンツが主な収益源 • 複数の追加コンテンツを並行して開発 背景:スマートフォンゲームの開発 2 設計 開発 調整 リリース 2週間 設計 開発 調整 リリース 設計 開発 調整 リリース 設計 開発 調整 リリース 設計 開発 調整 設計 開発 設計 … … … …
  • 3. Copyright © GREE, Inc. All Rights Reserved. • コンテンツの楽しさを担保する • 調整項目はゲームによって様々 • マーカーの間隔 • クリアに必要な手数 • 敵や味方の強さ • 調整とテストプレイを3回以上繰り返す • 3日程度しか使えない 背景:バランス調整 3 バランス調整の効率化が必要 ➢ たたかう どうぐ にげる HP:9/10 MP:5/5 ミミック Lv. 5
  • 4. 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
  • 5. Copyright © GREE, Inc. All Rights Reserved. • ターン制コマンドバトル • ターンごとに行動を選択する • 行動が表形式のデータで表される • 要望 • 最適なプレイ時のハイスコアを知りたい • 制約 • シミュレータは1ターン戻すなどができない 背景:社内で運用中のゲームの場合 5 ➢ たたかう どうぐ にげる HP:9/10 MP:5/5 ミミック Lv. 5 強化学習によるゲームプレイAIの学習を検討
  • 6. Copyright © GREE, Inc. All Rights Reserved. • 状態を観測し行動を決定する問題を解く方法 • 環境から得られる報酬を最大化する • 行動価値 • ある状態である行動を取ったときの期待報酬 • Q学習 • 行動を反復して行動価値を最適化する • 行動価値関数は状態x行動の表で実現 • Deep Q-Network (DQN) • 行動価値関数をニューラルネットワークで近似 強化学習 6 環境 状態 報酬 行動 状態 価値1 … 価値n ニューラルネットワーク
  • 7. Copyright © GREE, Inc. All Rights Reserved. 課題 7 • 強化学習には膨大な時間と計算リソースが必要 AI 実時間 セルフプレイ AlphaGo Zero 3日間 490万局 AlphaStar 1週間 200年 OpenAI Five 10ヶ月 45000年 • バランス調整に使える時間は3日程度 強化学習の効率化が必要
  • 8. Copyright © GREE, Inc. All Rights Reserved. • DQNは汎用的な強化学習手法 • ゲームの特徴を活かせば効率化ができる可能性 • 状態だけでなく行動の意味を考慮して価値を評価する • 事前に特徴を学習しておく 強化学習効率化の着目点 8
  • 9. 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程の隙間に流れ込んでいます > 隙間へ行く 隙間は狭すぎて入れません
  • 10. Copyright © GREE, Inc. All Rights Reserved. 目的・提案手法 10 目的 • ターン制コマンドバトルの強化学習効率化 • Pokémon Showdownを対象 提案手法 • 行動の意味を考慮して行動価値を評価する • 行動の特徴を事前に学習しておく
  • 11. Copyright © GREE, Inc. All Rights Reserved. • 2017年にAI大会開催 • Computational Intelligence and Games 2017 • 2人対戦ターン制コマンドバトル • 6体のポケモンでチームを構成 • ターン毎に行動を1つ選択する • 行動の選択肢は2種類あり最大9個 • 技 • ポケモン交代 • 相手ポケモンの体力をすべて0にすると勝利 Pokémon Showdown 11
  • 12. Copyright © GREE, Inc. All Rights Reserved. 1. 強化学習の前に行動の特徴を学習 2. 事前に埋め込んだ行動を使って強化学習 提案手法の概要 12 ターン制 コマンドバトル 行動の意味評価 状態 行動 報酬 強化学習Agent 行動の埋め込みマスタデータStep1 Step2
  • 13. 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
  • 14. Copyright © GREE, Inc. All Rights Reserved. AutoEncoder • 入力のブール値は0/1に変換 • 損失関数は平均二乗誤差 • 確率的勾配降下法で最適化 • 2種類用意 • 技の埋め込み • 交代ポケモンの埋め込み • DRRNと異なり、強化学習前に埋め込む 行動の埋め込みの詳細 14 技 交代ポケモン AEmove AEswitch memb semb
  • 15. Copyright © GREE, Inc. All Rights Reserved. 提案手法 15 DQN 行動を一括評価 行動を個別に評価 State Act1 … Actn VAct1 … VActn 価値関数 … 価値関数 VAct1 State Act1 価値関数 VActn State Actn 個別評価することで純粋な行動価値を求める 行動の意味を考慮した行動価値
  • 16. Copyright © GREE, Inc. All Rights Reserved. 比較手法 実験設定 16 埋め込み表現なし 埋め込み表現あり 行動の一括評価 DQN AE 行動の個別評価 PA-DQN AE+PA-DQN 実験方法 • チームを構成するポケモンはランダムに選択 • 100ステップの学習ごとに100回の対戦で評価 • サンプル提供されている多層パーセプトロンAIと対戦
  • 17. Copyright © GREE, Inc. All Rights Reserved. 実験結果 17 一括 個別
  • 18. Copyright © GREE, Inc. All Rights Reserved. 実験結果 18 一括 個別 性能向上開始
  • 19. Copyright © GREE, Inc. All Rights Reserved. 実験結果 19 埋め込みによって学習初期の学習効率が向上
  • 20. Copyright © GREE, Inc. All Rights Reserved. 実験結果 20 行動を埋め込むと最終的な性能は劣る
  • 21. Copyright © GREE, Inc. All Rights Reserved. • 状態の多様性が低くなる • DQNは技の並び順が違うだけで全く別の状態とみなす • 個別に評価することで同じような状態が表れやすくなる • 行動の正確な価値を評価可能 • DQNは他の選択肢によって行動の価値が影響される • コマンドバトルでは他の選択肢で行動の価値は変わらないはず 考察:行動の個別評価の効果 21
  • 22. Copyright © GREE, Inc. All Rights Reserved. • わずかな性能低下 • 自然言語と異なり、既に表形式のデータで意味が表されている • 重要な属性を無視してしまったのではないか 考察:行動の埋め込みの効果 22
  • 23. Copyright © GREE, Inc. All Rights Reserved. まとめ • 行動の個別評価で学習ステップ数を75%以上削減 • 行動の埋め込みで学習ステップ数をさらに40%削減 課題 • ドメイン知識を活用した埋め込み • 複数のキャラクタの行動を選択するゲームへ適用 まとめ・課題 23