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

TAG LIST
CG機械学習ディープラーニングCGへの扉安藤幸央GAN月刊エンタメAIニュース河合律子ニューラルネットワークOpenAINVIDIA強化学習三宅陽一郎音楽FacebookQAスクウェア・エニックス森川幸人モリカトロンAIラボインタビュー敵対的生成ネットワークDeepMindルールベースキャラクターAIシナリオGPT-3自然言語処理NFTGoogleグーグル自動生成映画デバッグCEDEC2019吉本幸記StyleGANプロシージャル人工知能学会遺伝的アルゴリズムメタAI深層学習マイクロソフトアートビヘイビア・ツリーCEDEC2021大内孝子CEDEC2020ゲームAISIGGRAPH不完全情報ゲームゲームプレイAIVRナビゲーションAI畳み込みニューラルネットワークDALL-ECLIPロボットAIと倫理ディープフェイクGDC 2021VFXメタバースGDC 2019マルチエージェントボードゲームNPCCNNデジタルツインモリカトロンUnityAIアートファッションHTN階層型タスクネットワークDALL-E2JSAI2020TensorFlowMicrosoftイベントレポートテストプレイ水野勇太小説アニメーションガイスターStyleGAN2懐ゲーから辿るゲームAI技術史toioソニーJSAI2021スポーツ研究シムピープル汎用人工知能GDC Summerバーチャルヒューマンブロックチェーン倫理BERTAdobeアストロノーカNVIDIA Omniverseeスポーツ対話型エージェントAmazoneSportsBLUE PROTOCOLシーマンUbisoft画像生成テキスト画像生成AlphaZeroTransformerGPT-2カメラ環世界中島秀之鴫原盛之DARPAドローンシムシティAI美空ひばり手塚治虫Electronic ArtsメタデータLEFT 4 DEADインタビュー通しプレイOpenAI Five本間翔太CMピクサープラチナエッグイーサリアム作曲ビッグデータ中嶋謙互Amadeus CodeMicrosoft AzureキャリアナラティブOmniverse ReplicatorレコメンドシステムNVIDIA DRIVE SimNVIDIA Isaac Simサイバーエージェント音声認識ロボティクスPyTorchDQN眞鍋和子バンダイナムコスタジオaibo合成音声Minecraft齊藤陽介マインクラフトお知らせチャットボットアバターサルでもわかる人工知能VAEOmniverseUbisoft La Forge自動運転車ワークショップGenvid Technologiesメタ知識表現ウォッチドッグス レギオンIGDAどうぶつしょうぎEpic Gamesジェイ・コウガミ音楽ストリーミング徳井直生マシンラーニングクラウド対話エンジン斎藤由多加リトル・コンピュータ・ピープルコンピューティショナル・フォトグラフィーゴブレット・ゴブラーズ絵画AIりんなシミュレーション完全情報ゲーム坂本洋典釜屋憲彦ウェイポイントパス検索対談藤澤仁生物学GTC 2022画像認識GTC2022StyleCLIPDeNA長谷洋平masumi toyota宮路洋一OpenSeaGDC 2022教育TextWorldSIGGRAPH ASIAGTC2021CycleGANNetHackフェイクニュースエージェントAIボイスアクターNVIDIA CanvasImagenGPUALifeZork人工生命オルタナティヴ・マシンサウンドスケープMCS-AI動的連携モデルASBSマンガモーションキャプチャーぱいどんTEZUKA2020ナビゲーションメッシュ松井俊浩バンダイナムコ研究所スパーシャルAIELYZAELYZA DIGEST3D音声合成マーケティングApex LegendsELIZANinjaコンピュータRPGアップルタウン物語KELDICメロディ言語ゲームTENTUPLAYMARVEL Future FightAstroタイムラプスEgo4Dバスキア日経イノベーション・ラボ敵対的強化学習階層型強化学習GOSU Data LabWANNGOSU Voice Assistant竹内将SenpAI.GGMobalytics馬淵浩希Cygames岡島学AWS Sagemaker映像セリア・ホデント形態素解析UXAWS Lambda誤字検出認知科学ゲームデザインSentencePieceLUMINOUS ENGINELuminous Productionsパターン・ランゲージ竹村也哉ちょまどボエダ・ゴティエGOAPAdobe MAX 2021模倣学習Omniverse AvatarFPSNVIDIA Rivaマルコフ決定過程NVIDIA MegatronNVIDIA Merlinスタンフォード大学NVIDIA Metropolisパラメータ設計テニスバランス調整協調フィルタリング人狼知能テキサス大学軍事AlphaDogfight TrialsAI Messenger VoicebotエージェントシミュレーションOpenAI CodexStarCraft IIHyperStyleFuture of Life InstituteRendering with StyleIntelDisneyLAIKADisneyリサーチRotomationGauGANGauGAN2ドラゴンクエストライバルズ画像言語表現モデル不確定ゲームSIGGRAPH ASIA 2021Dota 2モンテカルロ木探索ディズニーリサーチMitsuba2ソーシャルゲームEmbeddingワイツマン科学研究所GTC2020CG衣装NVIDIA MAXINEVRファッション淡路滋ビデオ会議ArtflowグリムノーツEponymゴティエ・ボエダ音声クローニングGautier Boeda階層的クラスタリングGopherJuliusSIE鑑定TPRGOxia Palusバーチャル・ヒューマン・エージェントtoio SDK for UnityArt Recognitionクーガー田中章愛Meta石井敦銭起揚NHC 2021茂谷保伯池田利夫GDMC新刊案内マーベル・シネマティック・ユニバース成沢理恵MITメディアラボMCU著作権アベンジャーズマジック・リープDigital DomainMagic Leap OneMagendaMasquerade2.0ノンファンジブルトークンDDSPフェイシャルキャプチャーサッカーモリカトロン開発者インタビュー里井大輝Kaggle宮本茂則バスケットボール山田暉Assassin’s Creed OriginsAI会話ジェネレーターSea of ThievesGEMS COMPANYmonoAI technologyLSTMモリカトロンAIソリューション初音ミクOculusコード生成AI転移学習テストAlphaCodeBaldur's Gate 3CodeforcesCandy Crush Saga自己増強型AISIGGRAPH ASIA 2020COLMAPADOPデバッギングBigGANGANverse3DMaterialGANリップシンキングRNNグランツーリスモSPORTReBeLグランツーリスモ・ソフィーGTソフィーVolvoFIAグランツーリスモチャンピオンシップRival PrakDGX A100VTuberユービーアイソフトWebcam VTuber星新一賞北尾まどかHALO市場分析将棋メタルギアソリッドVフォートナイトFSMRobloxナップサック問題Live Nation汎用言語モデルWeb3.0AIOpsSpotifyMITスマートコントラクトReplica StudioAWSamuseChitrakarQosmo巡回セールスマン問題ジョルダン曲線メディア5GMuZero政治クラウドゲーミングRival Peakがんばれ森川君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 PhoenixSNS理化学研究所Project Malmoオンラインゲーム気候変動Project PaidiaEarth-2Project Lookoutマックス・プランク気象研究所Watch Forビョルン・スティーブンスBing気象モデルLEFT ALIVE気象シミュレーション長谷川誠ジミ・ヘンドリックス環境問題Baby Xカート・コバーンエコロジーロバート・ダウニー・Jr.エイミー・ワインハウスSDGsMagentaYouTubeダフト・パンクメモリスタSFGlenn MarshallELYZA PencilThe Age of A.I.Story2Hallucination音声変換レコメンデーションJukebox松尾豊Veap JapanEAPテンセントSIFT福井千春DCGAN医療MOBADANNCEメンタルケア人事ハーバード大学Edgar Handy研修デューク大学Netflixデータマイニングmynet.aiローグライクゲーム東京大学東京理科大学人工音声NeurIPS 2021産業技術総合研究所はこだて未来大学リザバーコンピューティングプレイ動画ヒップホップキャラクターモーションソニーマーケティングサイレント映画もじぱNBA環境音暗号通貨現代アートFUZZLEAlteration粒子群最適化法RPG進化差分法オープンワールド群知能下川大樹AIFAウィル・ライト高津芳希P2E大石真史SIGGRAPH 2022BEiTStyleGAN-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 AICozmo栗原聡DLSSタカラトミー山野辺一記NetEaseLOVOT大里飛鳥DynamixyzMOFLINRomiU-Netミクシィ13フェイズ構造アドベンチャーゲームユニロボットADVユニボXLandGatoAGIテキスト生成手塚眞DEATH STRANDINGマルチモーダル不気味の谷Eric Johnson汎用強化学習AIOculus Questコジマプロダクション生体情報デシマエンジンインディーゲーム写真高橋ミレイ照明Maxim PeterJoshua Romoffハイパースケープ山崎陽斗深層強化学習立木創太ミライ小町テスラGameGANパックマンTesla BotTesla AI Dayソサエティ5.0SIGGRAPH 2020バズグラフニュースタンテキ東芝DIB-R倉田宜典韻律射影広告韻律転移

【GDC 2021】NPCの高度なインタラクションを可能とした『ウォッチドッグス レギオン』のグループビヘイビア

2021.8.17ゲーム

【GDC 2021】NPCの高度なインタラクションを可能とした『ウォッチドッグス レギオン』のグループビヘイビア

8月19日から23日まで開催されたGDC 2021では「グループAIビヘイビアのための『ウォッチドッグス レギオン』のアーキテクチャ」と題されたビデオセッションが行われました。このセッションでは、『ウォッチドッグス レギオン』においてNPCの高度なインタラクションを実現する仕組みであるグループビヘイビアが解説されました。以下では、グループビヘイビアとこれに柔軟性をもたらすブランチについてまとめます。

ゲームにおけるインタラクションの諸段階

『ウォッチドッグス レギオン』の最大の特徴は、「誰でもプレイできる(Play as anyone)」にあります。オープンワールド型の同ゲームに登場するNPCは通常は世界の一部として独自の個性を持って生活していますが、仲間に加えることでプレイ可能なキャラクターとなります。こうしたゲームデザインを実現するためには、NPCを駆動させるAIが世界と高度にインタラクション(相互作用)しなければなりません。

同ゲームのAIインタラクションがいかに高度であるかを知るには、オープンワールド型ゲーム一般に見られるインタラクションを段階別に振り返るとわかります。インタラクションの第一段階は、アニメーションです。ゲームのなかで歩いている人や流れている川がこの段階に該当します。この段階では厳密にはインタラクションは発生しておらず、生き生きとした景色にとどまっています。

第二段階が、同期したアニメーションです。あるNPCに話しかけると身振り手振りを交えて答えてくれるような状況が、この段階に該当します。この段階ではNPCはプレイヤーの行動に反応しているだけであり、自分が置かれたコンテクストを理解していません。それゆえ、この段階のNPCは何らかの目標に向かって行動を起こすこともありません。

第三段階が、同ゲームを革新的なものとするグループビヘイビアです。この段階のNPCは、自分が置かれたコンテクストを理解しています。それゆえ、何らかのアクションが生じれば、コンテクストに沿ったリアクションを返します。例えば、同ゲームにおける敵対組織「アルビオン」の警備員に拘束されたNPCの市民は、プレイヤーが警備員の気をひくと、その隙に逃げ出そうとします。

以上の段階別に見たリアクションを図式化すると、以下のようになります。

グループビヘイビアの基本構造

グループビヘイビアの実装にあたっては、ミドルアウトと呼ばれるアプローチが採用されました。このアプローチはNPCの基本行動はスクリプトで定義するが、NPCの置かれたコンテクストによって柔軟にリアクションすることもできる、というものです。一貫性と柔軟性が両立するグループビヘイビアは、コンテクストとの関係が異なる以下のような3つの構成要素から成り立っています(以下の画像も参照)。

  1. アクション:「歩く」、「話す」のような振舞いの最小単位。これら自体にコンテクストを形成する意味合いは少ない。
  2. ビヘイビア:何らかの目的のために複数のアクションをリンクさせたもの。
  3. ストラテジー:何らかの目的のために複数のビヘイビアをリンクさせたもの。NPCが置かれたコンテクストの基盤を成す。

アクションには、さらにNPCの全身を使って表現するフルボディ・アクションとこのアクションに重なって表示されるセカンダリー・アクションがあります。後者は、例えば話している時の口の動きのようなものが該当します。アクションが連なるビヘイビアの構造は、有向かつ循環的なグラフで表現できます。このグラフは、アクションが実行される順序とアクション完了時の状況を表しています。

複数のアクションが連なって単一のビヘイビアが実行されるには、アクション相互が緊密につながっている必要があります。アクションを緊密につなげる処理には、トリガーとタイマーが使われています。これらの処理を使うと、あるアクションの完了が次のアクションの実行タイミングとなったり、あるアクションが完了してから数秒経過したら次のアクションが実行されたりする、というようなビヘイビアの細かな演出が可能となります。

アクションの接続を管理するために、コンテナアクションと呼ばれるものも実装されまています。これは、完了したアクションの状態と次に起こるアクションの状態を定義したものです。コンテナアクションがあることによって、例えば不自然なフルボディ・アクションのつながりが回避されます。

接続されるのはアクションだけではなく、ビヘイビアとストラテジーも連鎖します。こうしたコンテクストとの関係が異なる3つの構成要素の接続によって、NPCの振舞いに一貫性を持たせるのです。

ストラテジーの具体化と割り当て

NPCが置かれたコンテクストを定義するストラテジーは、これ自体は「戦う」「逃げる」のように抽象的なもので実行するには具体化する必要があります。ストラテジーの具体化は、NPCの個性を表現する処理とも言えます。例えば、武術の心得のあるNPCであるならば、「戦う」というストラテジーを実行すると、武術を駆使します。

ところで、グループビヘイビアの基盤となるストラテジーは、どのようにNPCに割り当てられるのでしょうか。『ウォッチドッグス レギオン』では、以下のような3つの方法でストラテジーが割り当てられます(以下の画像も参照)。

  1. スポーンポイントへの到達:特定の場所に行くことによって、特定のストラテジーが割り当てられる。例えば、地下鉄の駅に接近すると、敵対組織のNPCがIDチェックを求めてくる。
  2. ダイナミック・グループビヘイビア・マネージャーによる評価:ゲームワールド内で一定の状況が生じたと評価されたら、ストラテジーが割り当てられる。例えば、敵対組織の警備員と市民が道で出会うと、警備員は市民にIDチェックを求める。
  3. ミッションの達成:ミッションを遂行するために、特定のストラテジーが割り当てられる。

ブランチの決定と実行

以上ではグループビヘイビアが、さまざまなコンテクストに対してNPCの振舞いに一貫性を持たせる仕組みを解説しました。グループビヘイビアには一貫性だけではなく、さまざまなアクションに対応できる柔軟性も求められます。リアクションの柔軟性を実現する仕組みが、ブランチです。これは、各ストラテジーに複数設定されているリアクションのリストと言えるものです(下の画像参照)。ブランチが設定されていることによって同じストラテジーに従っていても、コンテクストによって最終的な行動が変わります。

特定のブランチが選ばれる際には、リアクションマトリクスが使われています(下の画像参照)。『ウォッチドッグス レギオン』では、ゲームワールドからNPCが受ける(銃声のような)刺激が最大で400種類にのぼり、NPCの気分や敵対組織の状況などブランチを決定づける要因も40種類ほどあります。こうした刺激や要因がリアクションマトリクスを使って集計してNPCが置かれているコンテクストを明らかにしたうえで、そのコンテクストに相応しいブランチが決定されるのです。

決定されたブランチは、直ちに実行されるわけではありません。ブランチはコンテクストに応じて、以下のような4種類の処理のうちのどれかが適用されます(以下の画像も参照)。

  1. 無視:ブランチが、現状のストラテジーから見て優先度が低いために無視される処理。
  2. ブランチ&リターン:現状のストラテジーを一時中断してブランチを実行後、ストラテジーを再開する処理。つまり、ブランチを割り込み処理として実行する。
  3. ハードベイル:現状のストラテジーを強制終了して、ブランチを実行する処理。例えば、銃撃への反撃を定めたブランチは、直ちに実行される。
  4. ソフトベイル:現状のストラテジーを終了してから、ブランチを実行する処理。

ブランチの実行方法に以上のような4種類を設けたのは、ブランチがストラテジーの一貫性を壊すことなく実行されるようにするためです。

ブランチデータベースの参照

ブランチはストラテジーのなかに設定されたリアクションですが、ビヘイビアに対しても設定できます。こうしたブランチは、ブロックブランチと呼ばれます。例えば、銃を所持したNPCが接近した時には、検知した脅威に対する警戒に相当するブランチが生じます。このブランチ自体はストラテジーのように行動を方向づけるものではなく、ビヘイビアに関わるものです。

ブランチはさまざまなストラテジーやビヘイビアにおいて繰り返し使われるため、容易に再利用できるのが望ましいです。こうした理由から、特定の機能ごとに整理されたデータベースブランチが作られました。

データベースブランチがあると、特定のアクションに対して実行されるべきブランチを参照することが容易になります。『ウォッチドッグス レギオン』では前述したリアクションマトリクスにもとづいたブランチの決定に加えて、データベースブランチを参照して決定する処理も実装されています。この参照処理では、具体的なビヘイビアを定義するブランチから抽象的なそれにむかって参照します。こうした参照処理は、以下のような手順で実行されます(以下の画像も参照)。

  • 特定のビヘイビアに関するブランチを定義したカスタムブロックブランチの参照
  • さまざまなビヘイビアに適用できるブランチを定義したブロックデータベースブランチの参照
  • 特定のストラテジーに関するブランチを定義したカスタムストラテジーブランチの参照
  • さまざまなストラテジーに適用できるブランチを定義したストラテジーデータベースブランチの参照

ブランチデータベースの参照処理において具体性が優先されるのは、具体的なブランチほどコンテクストにマッチすると考えられるからです。

コンテクストの劇的変化に対応するグループブラックボード

敵対組織のメンバーによる拘束のようなコンテクストが劇的に変化する場合、選択可能なブランチも大きく変化します。こうしたコンテクストの劇的変化に対応するために、ブランチにコンテクスト劇的変化の条件を設定したうえで、その条件が満たされた場合に生じるブランチの変化を管理するグループブラックボードと命名された機能を実装しました。この機能はコンテクストの変化をある種の値の変化として管理して、そうした値が閾値を超えた場合にブランチを変化させます。同機能が管理する値の種類とコンテクストの変化例には、代表的なものとして以下のような3種類があります(以下の画像も参照)。

  1. 真/偽:二値的に管理できるコンテクストの変化を管理。例えば、NPCが気絶しているかどうかを管理する。
  2. 数値:特定のイベントが生じた回数を管理。例えば、敵対組織のメンバーが2回警告したら、戦闘に突入するコンテクストを管理できる。
  3. エンティティID:特定のストラテジーにおいて特別に管理されるべきオブジェクトを管理。例えば、暗殺を遂行するストラテジーにおける暗殺対象の状態を管理する。

以上の解説をまとめると、『ウォッチドッグス レギオン』ではNPCの高度なインタラクションを実現するためにグループビヘイビアと呼ばれるNPCの振舞いを定義する仕組みを実装しました。この仕組みは、アクション、ビヘイビア、そしてストラテジーというコンテクストとの関連性が異なる3要素から構成されることによって、変化し続けるゲームワールド内でNPCの振舞いに一貫性をもたらします。そして、ブランチを設定することによって、NPCが柔軟にリアクションすることを可能としました。こうした一貫性と柔軟性を両立させたグループビヘイビアは、『ウォッチドッグス レギオン』というひとつのゲームを超えて、さまざまなオープンワールド型のアクションゲームのNPC設計思想に有益なヒントを与えてくれるのではないでしょうか。

Writer:吉本幸記

RELATED ARTICLE関連記事

「今日のメシどうする?」問題から学ぶ、階層型タスクネットワーク

2019.12.20ゲーム

「今日のメシどうする?」問題から学ぶ、階層型タスクネットワーク

時代を先取りし過ぎた『がんばれ森川君2号』『アストロノーカ』のゲームAIはどのようにして開発されたのか?:懐ゲーから辿るゲームAI技術史vol.4

2022.3.22ゲーム

時代を先取りし過ぎた『がんばれ森川君2号』『アストロノーカ』のゲームAIはどのよ...

20年前に遺伝的アルゴリズムを初めて組み込んだ農業ゲーム『アストロノーカ』が蒔いた種

2019.4.17ゲーム

20年前に遺伝的アルゴリズムを初めて組み込んだ農業ゲーム『アストロノーカ』が蒔い...

RANKING注目の記事はこちら