モリカトロン株式会社運営「エンターテインメント×AI」の最新情報をお届けするサイトです。

TAG LIST
機械学習ディープラーニングCGCGへの扉GANニューラルネットワークモリカトロンAIラボインタビュー強化学習三宅陽一郎CEDEC2019QAスクウェア・エニックス音楽CEDEC2020ゲームAIデバッグ深層学習シナリオGDC 2019不完全情報ゲームボードゲームAIと倫理VFX映画SIGGRAPH遺伝的アルゴリズムVRメタAIキャラクターAIロボットファッションルールベースビヘイビア・ツリーグーグルNVIDIADeepMind月刊エンタメAIニュースJSAI2020人工知能学会イベントレポートOpenAI敵対的生成ネットワークガイスター畳み込みニューラルネットワークtoioGDC SummerモリカトロンマルチエージェントナビゲーションAI小説AlphaZeroマイクロソフト中島秀之アートGoogle自動生成研究ディープフェイクDARPACNNメタデータTensorFlow本間翔太CM倫理Amadeus Code音声認識eSports眞鍋和子シーマン齊藤陽介お知らせ水野勇太サルでもわかる人工知能ワークショップ知識表現IGDAどうぶつしょうぎマシンラーニングクラウド完全情報ゲーム藤澤仁長谷洋平宮路洋一HTN階層型タスクネットワークソニーStyleGANプロシージャルスポーツフェイクニュースGPUALife人工生命オルタナティヴ・マシンサウンドスケープASBSぱいどんTEZUKA2020AI美空ひばり手塚治虫汎用人工知能Electronic ArtsFacebookマーケティングApex LegendsNinjaゲームTENTUPLAYMARVEL Future Fightタイムラプスバスキアブロックチェーン通しプレイ階層型強化学習WANNOpenAI Five竹内将馬淵浩希岡島学映像セリア・ホデントUXピクサー認知科学ゲームデザインAdobeLUMINOUS ENGINELuminous Productionsパターン・ランゲージ作曲ちょまどビッグデータ中嶋謙互MicrosoftMicrosoft Azureアストロノーカキャリア模倣学習テストプレイナラティブFPSマルコフ決定過程eスポーツスタンフォード大学パラメータ設計テニスバランス調整レコメンドシステム対話型エージェント協調フィルタリング人狼知能Amazon軍事AlphaDogfight TrialsエージェントシミュレーションゲームプレイAIStarCraft IIFuture of Life InstituteIntelロボティクスLAIKARotomationPyTorchドラゴンクエストライバルズ不確定ゲームDota 2モンテカルロ木探索DQNソーシャルゲームEmbeddingGTC2020NVIDIA MAXINE淡路滋ビデオ会議グリムノーツバンダイナムコスタジオゴティエ・ボエダBLUE PROTOCOLGautier Boeda階層的クラスタリングaiboJuliusSIETPRGUnityバーチャル・ヒューマン・エージェントtoio SDK for Unityクーガー田中章愛石井敦銭起揚茂谷保伯森川幸人成沢理恵マジック・リープMagic Leap Oneノンファンジブルトークン里井大輝GEMS COMPANY初音ミク転移学習デバッギングアニメーションリップシンキングUbisoftUbisoft La Forge北尾まどか将棋ナップサック問題ジェイ・コウガミ音楽ストリーミングSpotifyReplica Studioamuse5Gクラウドゲーミング和田洋一Stadia対話エンジン斎藤由多加シーマン人工知能研究所ゴブレット・ゴブラーズSIGGRAPH 2019ARAIりんなアップルiPhoneカメラAIGraph環世界予期知能ウェイポイントパス検索ドラゴンクエストPAIR画像認識アルスエレクトロニカ2019DeNA逆転オセロニア奥村エルネスト純齋藤精一高橋智隆ロボユニ泉幸典ロボコレ2019ぎゅわんぶらあ自己中心派意思決定モデルウロチョロス理化学研究所教育SIGGRAPH ASIALEFT ALIVE長谷川誠Baby Xロバート・ダウニー・Jr.YouTubeSFThe Age of A.I.レコメンデーションテンセントMOBA人事研修mynet.ai人工音声プレイ動画NBAドローン群知能ウィル・ライトシムシティシムピープルレベルデザインSporeデノイズ画像処理CPUGMAITRPGウィザードリィAI Dungeon西川善司サムライスピリッツゼビウスストリートファイター栗原聡山野辺一記大里飛鳥マンガ13フェイズ構造手塚眞不気味の谷Oculus Quest生体情報写真照明山崎陽斗立木創太松井俊浩スパーシャルAIGPT-3GameGANパックマンソサエティ5.0SIGGRAPH 2020DIB-R3D広告

【GDCSummer】多様なプレイスタイルを学習し、FPSを人間のようにテストプレイするAIの育て方

2020.9.23ゲーム

【GDCSummer】多様なプレイスタイルを学習し、FPSを人間のようにテストプレイするAIの育て方

ゲーム開発にはテストプレイとバランス調整が欠かせません。近年、多くの企業が人工知能を用いたテストプレイの自動化を検証していますが、ゲームの複雑さや開発規模が増すにつれてスケーラビリティには限界が生じます。また、特定の行動を重視したゲームプレイをAIにテストさせるのは、決して容易ではありません。製品の品質管理をAIが担うためには、ゲーム内で人間のように振る舞えるエージェントが必要不可欠なのです。

8月4日から8月6日までオンライン開催されたGDC Summerにて、Electronic ArtsのAI研究者Igor Borovikov氏による、「Imitation Learning: Building Practical Agents to Test and Explore a First-Person Shooter」(模倣学習:FPSのテストプレイに役立つエージェントの構築)というセッションを取材しました。

このセッションでは、開発途中のFPSタイトルをAIにテストプレイさせることを想定して、攻撃重視やステルス重視といったプレイスタイルの導入を、強化学習と模倣学習による手法で技術検証しています。

強化学習と模倣学習を組み合わせたアプローチ

ビデオゲームにおけるキャラクターの意思決定は、強化学習におけるマルコフ決定過程で定式化できます。マルコフ決定過程は、状態遷移が確率的に生じる動的システムにおける確率モデルであり、遷移後の状態と報酬は直前の状態と行動のみに依存します。すなわち、エージェントが行動を選択するたびに環境は確率的に状態遷移し、その都度エージェントは環境から確率的に報酬を得ます。これらの確率を決定するのが、マルコフ決定過程です。

しかし、強化学習だけでは人間のように振る舞う自動プレイエージェントは実現できません。ゲーム開発の現場では、高速で反復できる処理能力が求められます。ビルドが変わるたびに数日から数週間を学習に費やしていては使い物になりません。また、学習の計算コストにも現実的な数字が求められます。何よりも、強化学習にプレイスタイルという制約を組み込むには、かなり繊細な報酬設計が必要になるため一筋縄では行きません。

一方で、模倣学習にもいくつかの課題があります。まず、仕様変更のたびにデモンストレーションを作り直さなければならないため、どうしてもリソースコストが大幅に増加してしまいます。また、ゲームプレイにおけるすべての性質をカバーできるとは限りません。くわえて、人間のデモンストレーションを模倣したエージェントに人間より優れたパフォーマンスを期待することはできません。

そこで今回の検証では、後述するマルコフアンサンブルによりデモンストレーションからベースモデルを構築し、観測不可能な状態における未定義の行動はヒューリスティクスを介して指定。マルコフアンサンブルとヒューリスティクスの統合モデルを使ってエージェントにゲームプレイを学習させるというアプローチが取られています。これをディープニューラルネットワークやビヘイビア・ツリーを用いて最適化することで実用化を目指します。

多様なプレイスタイルをいかに学習させるか

一般的なFPSタイトルでは、「前方に走る」「伏せる」「身を隠す」のような一連の行動が、キャラクターの状態やプレイスタイルに応じた確率で、「回復アイテムを使う」「武器を変える」「休む」といった異なる次の行動につながります。この時、それぞれの確率を決定して、次の行動を予想するためにマルコフモデルが使われます。

マルコフモデルは単一の行動に対しては効果的ですが、現実には多様な状態に対応しなければならず、そのすべてが観測できるとは限りません。また、デモンストレーションではカバーしきれていない行動もあるかもしれません。こうした課題を解決するために、検証ではスタイルを決定するNグラム、記録された状態の量子化、デモンストレーションの順序という3次元のアンサンブルモデルを構築しています。

デモンストレーションとなるエピソードは、記録されたNグラムの状態と行動の連続で構成されています。それぞれのマルコフモデルが各状態における遷移確率を定義します。ここでは、マルコフモデルのNグラムが高順位になるほど、特定のプレイスタイルをより忠実に実行できることを示しています。たとえば、「スコープを覗く」「撃つ」「伏せる」「グレネードを投げる」「位置を変える」といった一連の動作を正確に実行できるわけです。

前述した量子化とは、連続的な変数を離散化することを指します。信号処理や画像処理においては、信号の大きさを離散的な値で近似的に表す際に使われます。FPSではキャラクターの速度やターゲットまでの距離が連続的な変数に該当します。そこで距離という連続的な変数を、「遠すぎて何もできない」「スナイパーライフルが使える」「近接武器が使える」といった具合に離散的な値に変換する必要があるのです。なお、どの程度もとの状態に近似しているかは、量子化の閾値によって定義します。

すべての順位と量子化におけるマルコフモデルを組み合わせることで、2次元のマトリクスが形成されます。マトリクスの縦軸はマルコフモデルの順位、横軸は量子化の閾値を示しており、一番左上がもっとも忠実度が高いマルコフモデルとなります。ここにデモンストレーションを時系列順に指定することで、3次元からなるマルコフアンサンブルが構築されます。なお、エージェントの学習途中でプレイヤーに操作権限を移行すれば、デモンストレーションを修正しながらインタラクティブに学習させることも可能だということです。

このセッションでは、流し台の中をスプーンが移動しながら家庭用品と戦うというシンプルなゲームを用いて、マルコフアンサンブルにおけるエージェントの学習が検証されました。スプーンが他の家庭用品に接触すると戦闘状態になり、食べ物に接触すると消費して体力を回復できるという最低限のメカニクスのみが実装されています。それぞれのマルコフモデルは10秒間隔で更新されます。このサンプルはFPSではないものの、マルコフモデルにおけるエージェントの挙動を描写するには十分な役割を果たしています。

人間のような振る舞いをどう定義するか

人間とAIを隔てる大きな溝のひとつに、ゲームジャンルに応じた直感的な知識があります。例えば、人間がアクションゲームをプレイする際、破壊したり飛び越えたりできない壁に延々とぶつかり続けるといった支離滅裂な行動は取りません。このように人間は可視化された情報をもとに直感的な判断を下せるため、人間によるデモンストレーションは不完全だといえます。このデモンストレーションからAIが人間のように目標や報酬を推定することは至難の業です。そこで避けて通れないのが知識工学です。

観測不可能な状態における未定義の行動をヒューリスティクスで指定する例として、残り体力や残弾数をもとにウェイポイントを選択するという手法が挙げられます。例えば、デス数に対するキル数の比率を最大化したい場合、残り体力と残弾数が多い時は敵をウェイポイントに設定し、反対に瀕死状態の時は回復アイテムをウェイポイントに設定することで、エージェントは生存率を維持しつつもアグレッシブな行動を選択するようになります。

このように、マルコフアンサンブルによって定義されたスタイルだけでは通用しない状態においては、知識工学に基づいたヒューリスティクスが非常に役立ちます。これがマルコフアンサンブルとヒューリスティクスの統合モデルです。残された課題は、線形的に増加していく計算コストを最適化する方法です。

これには、マルコフアンサンブルとヒューリスティクスを統合するためのディープニューラルネットワーク(DNN)を構築する手法と、デモンストレーションのデータをビヘイビア・ツリーへ圧縮変換する手法があります。後者はDNNと異なり、人間によって改変できるという利点があります。また、データ構造がもともとツリーの性質を持っていることも有利な点といえるでしょう。実際の変換プロセスは、今後の研究課題だということでした。

Writer:Ritsuko Kawai / 河合律子

RELATED ARTICLE関連記事

【CEDEC2019】汎用型ボードゲームAIの開発に向けたモリカトロンの挑戦

2019.9.17ゲーム

【CEDEC2019】汎用型ボードゲームAIの開発に向けたモリカトロンの挑戦

ゲームAIは5年後にどこに向かうのか?:若手ゲームAIエンジニア座談会(前編)

2020.2.05ゲーム

ゲームAIは5年後にどこに向かうのか?:若手ゲームAIエンジニア座談会(前編)

パックマンだけではない。GANを使ったゲーム開発事例を紹介

2020.6.26ゲーム

パックマンだけではない。GANを使ったゲーム開発事例を紹介

RANKING注目の記事はこちら