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

TAG LIST
CG機械学習CGへの扉ディープラーニング安藤幸央GAN月刊エンタメAIニュース河合律子OpenAI音楽ニューラルネットワーク強化学習三宅陽一郎NVIDIA吉本幸記人工知能学会FacebookQA敵対的生成ネットワークスクウェア・エニックス森川幸人モリカトロンAIラボインタビュー自然言語処理ルールベースDeepMindキャラクターAIシナリオGoogleGPT-3大内孝子AIと倫理映画NFTグーグルStyleGAN自動生成倫理デバッグゲームプレイAIメタAICEDEC2019アートプロシージャルSIGGRAPH遺伝的アルゴリズムDALL-E深層学習マイクロソフトビヘイビア・ツリーCEDEC2021CEDEC2020ゲームAI不完全情報ゲームVRナビゲーションAI畳み込みニューラルネットワークCLIPロボットDALL-E2ディープフェイクGDC 2021JSAI2022VFXメタバースGDC 2019マルチエージェントボードゲームNPC画像生成テキスト画像生成懐ゲーから辿るゲームAI技術史CNNデジタルツインテストプレイモリカトロンUnityAIアート小説ファッション鴫原盛之HTN階層型タスクネットワークJSAI2020TensorFlowBERTAdobeMicrosoftイベントレポート対話型エージェントCEDEC2022著作権水野勇太アニメーションガイスターStyleGAN2toioソニーJSAI2021スポーツ研究シムピープルマンガ汎用人工知能マーケティングGDC SummerインタビューバーチャルヒューマンブロックチェーンMidjourneyアストロノーカNVIDIA OmniverseeスポーツAmazonロボティクスeSportsDQNBLUE PROTOCOLシーマンMinecraftアバターUbisoftGenvid TechnologiesAlphaZeroTransformerGPT-2カメラ環世界中島秀之哲学理化学研究所DARPAドローンシムシティバイアスMCS-AI動的連携モデルTEZUKA2020AI美空ひばり手塚治虫スパーシャルAIElectronic ArtsメタデータLEFT 4 DEAD通しプレイOpenAI Five本間翔太CMピクサープラチナエッグイーサリアム作曲ボエダ・ゴティエビッグデータ中嶋謙互Amadeus Codeデータ分析Microsoft AzureキャリアナラティブアーケードゲームOmniverse ReplicatorWCCFレコメンドシステムNVIDIA DRIVE SimWORLD CLUB Champion FootballNVIDIA Isaac Simセガ柏田知大軍事サイバーエージェント田邊雅彦トレーディングカードトレカ音声認識PyTorchStable Diffusion眞鍋和子バンダイナムコスタジオaibo合成音声Meta齊藤陽介マインクラフトお知らせチャットボットサルでもわかる人工知能VAEOmniverseリップシンキングUbisoft La Forge自動運転車ワークショップメタ知識表現ウォッチドッグス レギオンIGDAどうぶつしょうぎEpic Gamesジェイ・コウガミ音楽ストリーミングMIT徳井直生マシンラーニング5GRival Peakクラウド対話エンジン斎藤由多加リトル・コンピュータ・ピープルコンピューティショナル・フォトグラフィーゴブレット・ゴブラーズ絵画AIりんなシミュレーション完全情報ゲーム坂本洋典釜屋憲彦ウェイポイントパス検索対談藤澤仁生物学GTC 2022画像認識GTC2022StyleCLIPDeNA長谷洋平masumi toyota宮路洋一OpenSeaGDC 2022教育TextWorldSIGGRAPH ASIAMagentaSFELYZA PencilGTC2021CycleGANデータマイニングNetHackはこだて未来大学フェイクニュースエージェントRPGSIGGRAPH 2022AIボイスアクターNVIDIA CanvasImagenGPUALifeZork人工生命オルタナティヴ・マシンサウンドスケープASBS栗原聡モーションキャプチャーぱいどんテキスト生成ナビゲーションメッシュ松井俊浩バンダイナムコ研究所ELYZAフルコトELYZA DIGEST3D音声合成西成活裕Apex LegendsELIZA群衆マネジメントNinjaコンピュータRPGライブビジネスアップルタウン物語新型コロナKELDIC周済涛メロディ言語清田陽司ゲームTENTUPLAYサイバネティックスMARVEL Future FightAstro人工知能史タイムラプスEgo4DAI哲学マップバスキア星新一日経イノベーション・ラボStyleGAN-XL敵対的強化学習StyleGAN3階層型強化学習GOSU Data LabGANimatorWANNGOSU Voice AssistantVoLux-GAN竹内将SenpAI.GGProjected GANMobalyticsSelf-Distilled StyleGAN馬淵浩希Cygamesニューラルレンダリング岡島学AWS SagemakerPLATO映像セリア・ホデント形態素解析frame.ioUXAWS LambdaFoodly誤字検出森山和道認知科学中川友紀子ゲームデザインSentencePieceアールティLUMINOUS ENGINELuminous ProductionsBlenderBot 3パターン・ランゲージ竹村也哉Meta AIちょまどマーク・ザッカーバーグGOAPWACULAdobe MAX 2021自動翻訳MILE模倣学習AIライティングOmniverse AvatarAIのべりすとFPSNVIDIA RivaQuillBotマルコフ決定過程NVIDIA MegatronCopysmithNVIDIA MerlinJasperスタンフォード大学NVIDIA Metropolisパラメータ設計テニスバランス調整協調フィルタリング人狼知能テキサス大学AlphaDogfight TrialsAI Messenger VoicebotエージェントシミュレーションOpenAI CodexStarCraft IIHyperStyleMax CooperFuture of Life InstituteRendering with StyleメディアアートIntelDisney類家利直LAIKADisneyリサーチヴィトゲンシュタインRotomationGauGAN論理哲学論考GauGAN2京都芸術大学ドラゴンクエストライバルズ画像言語表現モデル不確定ゲームSIGGRAPH ASIA 2021PromptBaseDota 2モンテカルロ木探索ディズニーリサーチMitsuba2バンダイナムコネクサスソーシャルゲームEmbeddingワイツマン科学研究所ユーザーレビューGTC2020CG衣装mimicNVIDIA MAXINEVRファッションBaidu淡路滋ビデオ会議ArtflowERNIE-ViLGグリムノーツEponym古文書ゴティエ・ボエダ音声クローニング凸版印刷Gautier Boeda階層的クラスタリングGopherAI-OCR画像判定JuliusSIE鑑定ラベル付けTPRGOxia Palus大澤博隆バーチャル・ヒューマン・エージェントtoio SDK for UnityArt RecognitionSFプロトタイピングクーガー田中章愛実況パワフルサッカー石井敦銭起揚NHC 2021桃太郎電鉄茂谷保伯池田利夫桃鉄GDMC新刊案内パワサカマーベル・シネマティック・ユニバースコナミデジタルエンタテインメント成沢理恵MITメディアラボMCU岩倉宏介アベンジャーズPPOマジック・リープDigital DomainMachine Learning Project CanvasMagic Leap OneMagendaMasquerade2.0国立情報学研究所ノンファンジブルトークンDDSPフェイシャルキャプチャー石川冬樹サッカーモリカトロン開発者インタビュースパコン里井大輝Kaggle宮本茂則スーパーコンピュータバスケットボール山田暉松岡 聡Assassin’s Creed OriginsAI会話ジェネレーターTSUBAME 1.0Sea of ThievesTSUBAME 2.0GEMS COMPANYmonoAI technologyLSTMABCIモリカトロンAIソリューション富岳初音ミクOculusコード生成AISociety 5.0転移学習テストAlphaCode夏の電脳甲子園Baldur's Gate 3CodeforcesCandy Crush Saga自己増強型AISIGGRAPH ASIA 2020COLMAPADOPデバッギングBigGANGANverse3DMaterialGANRNNグランツーリスモSPORTReBeLグランツーリスモ・ソフィーGTソフィーVolvoFIAグランツーリスモチャンピオンシップRival PrakDGX A100VTuberユービーアイソフトWebcam VTuber星新一賞北尾まどかHALO市場分析将棋メタルギアソリッドVフォートナイトFSMRobloxナップサック問題Live Nation汎用言語モデルWeb3.0AIOpsSpotifyスマートコントラクトReplica StudioAWSamuseChitrakarQosmo巡回セールスマン問題ジョルダン曲線メディアMuZero政治クラウドゲーミングがんばれ森川君2号和田洋一リアリティ番組Stadiaジョンソン裕子MILEsNightCafeインタラクティブ・ストリーミングLuis Ruizインタラクティブ・メディアポケモンCodexシーマン人工知能研究所東京工業大学Ludo博報堂ラップSIGGRAPH 2019ArtEmisZ世代AIラッパーシステムARrinnaGROVERプラスリンクス ~キミと繋がる想い~FAIRSTCチート検出Style Transfer ConversationオンラインカジノRCPアップルRealFlowRinna Character PlatformiPhoneデジタルヒューマンDeep FluidsSoul MachinesMeInGameAmeliaAIGraphブレイン・コンピュータ・インタフェースバーチャルキャラクターBCIGateboxLearning from VideoANIMAK予期知能逢妻ヒカリセコムユクスキュルバーチャル警備システムカント損保ジャパン上原利之ドラゴンクエストエージェントアーキテクチャアッパーグラウンドPAIROCTOPATH TRAVELER西木康智OCTOPATH TRAVELER 大陸の覇者Siemensアルスエレクトロニカ2019品質保証StyleRigAutodesk逆転オセロニアBentley Systemsワールドシミュレーター奥村エルネスト純いただきストリートH100齋藤精一大森田不可止COBOL高橋智隆DGX H100ロボユニザナックDGX SuperPOD泉幸典仁井谷正充クラウドコンピューティングロボコレ2019Instant NeRFartonomousbitGANsぎゅわんぶらあ自己中心派Azure Machine Learning意思決定モデル脱出ゲームHybrid Reward Architectureコミュニティ管理ウロチョロスSuper PhoenixSNSProject Malmoオンラインゲーム気候変動Project PaidiaEarth-2Project Lookoutマックス・プランク気象研究所Watch Forビョルン・スティーブンスBing気象モデルLEFT ALIVE気象シミュレーション長谷川誠ジミ・ヘンドリックス環境問題Baby Xカート・コバーンエコロジーロバート・ダウニー・Jr.エイミー・ワインハウスSDGsYouTubeダフト・パンクメモリスタGlenn MarshallThe Age of A.I.Story2Hallucination音声変換レコメンデーションJukebox松尾豊Veap JapanEAPテンセントSIFT福井千春DCGAN医療MOBADANNCEメンタルケア人事ハーバード大学Edgar Handy研修デューク大学Netflixmynet.aiローグライクゲーム東京大学東京理科大学人工音声NeurIPS 2021産業技術総合研究所リザバーコンピューティングプレイ動画ヒップホップキャラクターモーションソニーマーケティングサイレント映画もじぱNBA環境音暗号通貨現代アートFUZZLEAlteration粒子群最適化法進化差分法オープンワールド群知能下川大樹AIFAウィル・ライト高津芳希P2E大石真史BEiTStyleGAN-NADAレベルデザインDETRゲームエンジンSporeUnreal Engineデノイズ南カリフォルニア大学Unity for Industry画像処理SentropyGLIDECPUDiscordAvatarCLIPSynthetic DataCALMプログラミングサム・アルトマンソースコード生成LaMDAGMAIシチズンデベロッパーSonanticTRPGGitHubCohereウィザードリィMCN-AI連携モデルマジック:ザ・ギャザリングAI DungeonUrzas.ai介護西川善司並木幸介Kikiサムライスピリッツ森寅嘉Zoetic AIゼビウスSIGGRAPH 2021ペットストリートファイター半導体Digital Dream LabsTopaz Video Enhance AICozmoDLSSタカラトミー山野辺一記NetEaseLOVOT大里飛鳥DynamixyzMOFLINRomiU-Netミクシィ13フェイズ構造アドベンチャーゲームユニロボットADVユニボXLandGatoAGI手塚眞DEATH STRANDINGマルチモーダル不気味の谷Eric Johnson汎用強化学習AIデザインOculus Questコジマプロダクションロンドン芸術大学生体情報デシマエンジンGoogle BrainインディーゲームSound Control写真高橋ミレイSYNTH SUPER照明Maxim PeterKarl SimsJoshua RomoffArtnomeハイパースケープICONATE山崎陽斗深層強化学習立木創太松原仁浜中雅俊ミライ小町武田英明テスラ福井健策GameGANパックマンTesla BotNEDOTesla AI DayWikipediaソサエティ5.0SphereSIGGRAPH 2020バズグラフXaver 1000ニュースタンテキ養蜂東芝BeewiseDIB-R倉田宜典フィンテック投資韻律射影MILIZE広告韻律転移三菱UFJ信託銀行

【CEDEC2019】人工知能が敵キャラを育てる! ディープラーニングを使った次世代のゲームAI開発

2019.9.19ゲーム

【CEDEC2019】人工知能が敵キャラを育てる! ディープラーニングを使った次世代のゲームAI開発

9月4日から9月6日までパシフィコ横浜で開催されたCEDEC 2019では、ゲーム開発現場におけるAI技術の応用例や活用法に関するセッションが目白押しでした。今回は、その中からLuminous Productionsの「「強い」を作るだけが能じゃない!ディープラーニングで3Dアクションゲームの敵AIを作ってみた」というセッションを取材しました。

登壇者は、株式会社Luminous Productions所属で、スクウェア・エニックスの『FINAL FANTASY XV』(以下、FFXV)で仲間AIや写真AIを担当したプログラマーの上段達弘氏。講演では、3Dアクションゲームにおける敵キャラクターAIを低コストで制作するために、ディープラーニングを活用して『FFXV』風のバトルにおける戦い方をAIに自ら学習させる技術検証が披露されました。

AIを開発してくれるAI作り

従来のキャラクターAIの開発には、主にスクリプトやパラメータテーブルが使われてきました。『FFXV』ではLuminous Engineの「AIGraph」というツールを使用することで、エンジニア以外のスタッフも柔軟にキャラクターAIを作成できたとのこと。しかし、この方法では仲間やモンスターの数だけAIを作成することになるので、キャラクターが増えるほど開発コストが跳ね上がってしまいます。そこで、ディープラーニングを使って「AIを開発してくれるAIを作ろう」という発想にいたったそうです。

一方で、ゲームのキャラクターAIは将棋や囲碁のAIとは違い、ただ強ければいいわけではありません。たまにわざとスキを作ったり、一定の攻略パターンを用意したり、少しムダな動きを加えたりと、キャラクターに合わせた個性を演出することで“ゲーム的なAI”を作る必要があります。そのためにはAIが学習するだけでなく、ゲームプランナーが学習の方向性を決められ、かつ後からAIの挙動を調整できる仕組みが重要になってくるとのことでした。

ディープラーニングとは、多層のニューラルネットワークを使った機械学習の手法を指します。近年、画像認識や音声認識をはじめ、囲碁や将棋で人類を凌駕したコンピュータプログラム「AlphaZero」など、幅広い領域で応用されています。ニューラルネットワークは入力層、中間層、出力層から構成されており、この層が多いほど表現力が増していきます。そして、多層からなるモデルをディープニューラルネットワークと呼びます。

今回の技術検証では、シミュレーションによる強化学習を通じてAIにバトルを覚えさせていました。強化学習とは、AIの行動に報酬を設定し、一連の行動を通じて得られる報酬が最大になるように学習させる手法です。主にエージェントに正解を教えられないケースで用いられています。ある状態である行動を取った場合の価値を「Q値」、シミュレーションによってQ値を更新していくアルゴリズムを「Q学習」と呼びます。そして、Q学習をディープニューラルネットワークで実装したものが、「Deep Q-Network(DQN)」です。なお、Q値は特定の瞬間に得られる報酬に限らず、将来的にもらえそうな報酬も加味して計算されます。

AIの調教にはアメとムチが必要

シミュレーションの中でAIは、どんな状況でどの行動を選んだら、どれだけの報酬が得られたかを記録します。このデータを蓄積してニューラルネットワークを更新し、それぞれの状況における各行動の価値を修正していくという仕組みです。ちなみに、AIは原則的に価値がもっとも高い行動を選択しますが、シミュレーションでは行動に多様性を持たせるためにランダムな行動も織り交ぜているそうです。

このようにしてAIは効率的な戦い方を学んでいきます。一方で、不自然に見えないAIのクオリティを担保するには、さらなる工夫が求められます。今回の検証の中では、報酬獲得の効率だけを追求した結果、遠距離からひたすら飛び道具によるワンパターンな攻撃を繰り出すだけという、悪い意味で“勘のいい”AIが生まれた例が紹介されました。

これを解決するために、プラス報酬の条件を細分化したり、逆にマイナス報酬を導入したりと、アメとムチのような工夫を施してみたそうです。たとえば、「与えたダメージに応じてプラス報酬を変える」「相手の攻撃を避けられたらプラス報酬を与える」「敵に一定距離以上近づいたらプラス報酬」「敵との距離を一定に維持できたらプラス報酬」「連続で同じ行動を繰り返したらプラス報酬を与えない」といった具合。

反対にマイナス報酬の導入では、「受けたダメージに応じてマイナス報酬を与える」「攻撃を空振りしたらマイナス報酬を与える」「理想的な距離から離れたらマイナス報酬を与える」など。こうした工夫はAIの学習を劇的に改善してくれただけでなく、キャラクターのバトルスタイルに変化をもたらすことにも役立ったようです。また、複数キャラクターと一緒に戦っているシチュエーションでは、仲間が攻撃中は報酬をあげないという攻撃権を学習させることで、寄ってたかって攻撃するような混沌とした状況を回避できたということです。

このプロセスは敵AIだけでなく、プレイヤー操作の学習にも応用できます。今回の技術検証では、「攻撃ボタンを押しっぱなしで攻撃し、左スティックとの組み合わせでバリエーションが変化」や「防御ボタンを押しっぱなしで回避し、ダメージ時にタイミング良く防御ボタンで回復」など、プレイヤー側のパッド操作を学習させたそうです。これはプレイヤーの自動制御に活用できるほか、対戦型ゲームのAI作りに応用できる可能性もあるとのこと。講演の中では、前述した敵キャラクターのAIと、プレイヤー操作を学習したAIとの対戦デモが披露されました。

AIの学習結果を改ざんする仕組み

ここまでで、キャラクターに合わせた個性を演出することで“ゲーム的なAI”を作るという、1つ目の課題はクリアできたようです。しかし、これだけでは人間にとって思い通りのAIを作れるわけではありません。報酬の値を調整したり、必要に応じて入力を追加したりすることで、学習の方向性はある程度コントロールできますが、学習の結果がゲームプランナーの希望に沿うものでなかった場合、学習をやり直すしかないからです。しかも、学習をやり直したところで、必ずしも思い通りの結果にたどり着くとは限りません。

そこで学習した結果を改ざんできる仕組みとして、「価値の後調整システム」を作ったそうです。通称、ムチ打ちシステムと呼ばれるこの手法を使えば、時間がかかる再学習が不要です。たとえば、近距離における特定の技の使用頻度を上げたい場合、「敵との距離が3m以下なら技Aの価値を1点プラスする」のような指示を出すことで、ニューラルネットワークそのものを改変することなく、接近戦で技Aを使いやすくなるのだそうです。反対に、特定の技の使用頻度を抑制したい時にも、同様の調整が可能です。

学習プロセスをまとめると、アクションをリストアップしてから報酬パラメータを設定し、シミュレーションを実行。その結果を基に価値を調整していくという流れです。シミュレーションのログが蓄積したら、ニューラルネットワークを更新します。その後、新しいネットワークで再びシミュレーションを実行。この学習イテレーションを十数回繰り返すことで、適度な学習効果が見えてくるとのことでした。所要時間は最適化していない状態で、およそ5時間から7時間程度。一晩寝て待てば、それなりに賢いAIが誕生するというわけです。

ディープラーニングならではの課題

ディープラーニングを使った次世代のゲームAI作りにも、もちろんデメリットはあるようです。まず、同じ条件下でのシミュレーションでも毎回同じ結果が得られるとは限らないということ。しかも、そのまま学習を進めて挙動が改善する保証はありません。そのため、学習後に評価フェーズを挟むことで評価ログとバックアップを残し、後から任意の状態に復元できるようにしておくことが重要だそうです。

次に、多様な環境や異なる敵に対応するには、すべての可能性に対してそれぞれのシミュレーションが必要になること。AIはシミュレーション経験なしに新しい環境へ対応することはできません。たとえば、平地での戦いしか経験したことがないAIを高低差の激しい地形に放り込んでも、それまでの経験を生かすことは難しいというわけです。結果、あらゆる状況を想定してシミュレーションを実行することになるので、学習に要する時間が莫大に膨れ上がってしまうこともありえます。

さらに、学習AIには完全なパターン行動は難しいという特徴があります。たとえば、攻撃Aの後に必ず攻撃Bを出して欲しくても、AIの挙動は確率的に決定されるため必ずしも保証されないというわけです。これに対する解決策としては、学習行動を1つの状態として管理するという方法が提案されました。つまり、「AIGraph」のようなツールを使う場合にDQNによる学習行動を1つのノードとして扱い、特別な行動はその外に実装することで遷移させるというハイブリッド構造です。

最後に、バトルのシミュレーションを実行するには、必ず対戦する相手のAIも必要になるということです。敵キャラクターの動きを学習させるには、プレイヤーAIを別に用意しなければいけません。特に、学習結果のクオリティは相手AIの挙動によって変化するので、両者のAIを同時に学習させることは現実的ではないということでした。結果、シミュレーション用の相手AIを作る手間は必ず発生してしまいます。

CEDEC 2019 AI関連セッションレポート

AIりんなのボイストレーニングが示す、情動的で人間的な機械学習とは?

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

中島秀之氏 基調講演:環境との相互作用を取り込む予期知能が、機械学習の課題を解決に導く

Writer: Ritsuko Kawai / 河合律子

 

RELATED ARTICLE関連記事

【CEDEC2019】DeNAのゲームAI開発に見る”AIを活かす組織”とは?

2019.10.24ゲーム

【CEDEC2019】DeNAのゲームAI開発に見る"AIを活かす組織"とは?

にわかレベルだったゲームプレイAIは、いかにして熟練プレイヤーになったか?

2020.4.30ゲーム

にわかレベルだったゲームプレイAIは、いかにして熟練プレイヤーになったか?

【GDC 2019】ジレンマを生成し人の心を動かすメタAI

2019.4.18ゲーム

【GDC 2019】ジレンマを生成し人の心を動かすメタAI

RANKING注目の記事はこちら