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

TAG LIST
ディープラーニング機械学習CGCGへの扉安藤幸央GANニューラルネットワーク月刊エンタメAIニュース強化学習三宅陽一郎モリカトロンAIラボインタビュー敵対的生成ネットワーク音楽OpenAIQAスクウェア・エニックスシナリオNVIDIAデバッグCEDEC2019河合律子プロシージャルDeepMind人工知能学会FacebookキャラクターAIルールベースビヘイビア・ツリーGoogleCEDEC2020ゲームAI映画SIGGRAPH遺伝的アルゴリズム不完全情報ゲームメタAIナビゲーションAI畳み込みニューラルネットワーク深層学習マイクロソフトAIと倫理グーグルGDC 2021GDC 2019マルチエージェントVR森川幸人ボードゲーム自然言語処理ロボットStyleGAN自動生成GPT-3CNNVFXモリカトロンゲームプレイAIファッションHTN階層型タスクネットワークJSAI2020Microsoftイベントレポート水野勇太アニメーションガイスターNPCCLIPアートtoio吉本幸記JSAI2021スポーツディープフェイク汎用人工知能TensorFlowGDC SummerテストプレイeSportsBLUE PROTOCOL小説DALL-EStyleGAN2AlphaZeroカメラ環世界中島秀之懐ゲーから辿るゲームAI技術史研究DARPAドローンAI美空ひばり手塚治虫メタデータ通しプレイOpenAI Five本間翔太CM倫理ピクサーAdobe作曲中嶋謙互Amadeus CodeMicrosoft Azureキャリアeスポーツ音声認識PyTorchDQN眞鍋和子バンダイナムコスタジオシーマンUnity齊藤陽介マインクラフトお知らせAIアートサルでもわかる人工知能VAEUbisoftUbisoft La ForgeワークショップGenvid Technologies知識表現ウォッチドッグス レギオンIGDAどうぶつしょうぎジェイ・コウガミ音楽ストリーミングマシンラーニングクラウドコンピューティショナル・フォトグラフィーGPT-2完全情報ゲーム坂本洋典釜屋憲彦ウェイポイントパス検索藤澤仁生物学画像認識NFT長谷洋平鴫原盛之masumi toyota宮路洋一SIGGRAPH ASIAソニーCycleGANフェイクニュースシムピープルGPUALife人工生命オルタナティヴ・マシンサウンドスケープASBSマンガぱいどんTEZUKA2020ナビゲーションメッシュ松井俊浩スパーシャルAIElectronic ArtsマーケティングApex LegendsNinjaゲームTENTUPLAYMARVEL Future Fightタイムラプスバスキアブロックチェーン階層型強化学習WANN竹内将馬淵浩希岡島学映像セリア・ホデントUX認知科学ゲームデザインLUMINOUS ENGINELuminous Productionsパターン・ランゲージちょまどビッグデータアストロノーカ模倣学習ナラティブFPSマルコフ決定過程スタンフォード大学パラメータ設計テニスバランス調整レコメンドシステム対話型エージェント協調フィルタリング人狼知能Amazon軍事AlphaDogfight TrialsエージェントシミュレーションStarCraft IIFuture of Life InstituteIntelロボティクスLAIKARotomationドラゴンクエストライバルズ不確定ゲームDota 2モンテカルロ木探索ソーシャルゲームEmbeddingGTC2020NVIDIA MAXINE淡路滋ビデオ会議グリムノーツゴティエ・ボエダGautier Boeda階層的クラスタリングaiboJuliusSIETPRGバーチャル・ヒューマン・エージェントtoio SDK for Unityクーガー田中章愛石井敦銭起揚茂谷保伯MinecraftGDMC成沢理恵MITメディアラボ著作権マジック・リープMagic Leap OneMagendaノンファンジブルトークンDDSPサッカー里井大輝KaggleバスケットボールAssassin’s Creed OriginsSea of ThievesGEMS COMPANYmonoAI technologyアバター初音ミクOculus転移学習テストBaldur's Gate 3Candy Crush SagaSIGGRAPH ASIA 2020デバッギングBigGANMaterialGANリップシンキングRNNReBeL自動運転車VolvoRival Prakユービーアイソフト北尾まどかHALO将棋メタルギアソリッドVFSMナップサック問題汎用言語モデルSpotifyMITReplica StudioamuseChitrakar巡回セールスマン問題ジョルダン曲線5GMuZeroクラウドゲーミングRival Peak和田洋一リアリティ番組Stadiaジョンソン裕子MILEs対話エンジンインタラクティブ・ストリーミング斎藤由多加インタラクティブ・メディアリトル・コンピュータ・ピープルシーマン人工知能研究所Ludoゴブレット・ゴブラーズTransformerSIGGRAPH 2019ArtEmis絵画ARGROVERFAIRAIりんなチート検出オンラインカジノアップルRealFlowiPhoneシミュレーションDeep FluidsMeInGameAIGraphブレイン・コンピュータ・インタフェースBCILearning from Video予期知能ユクスキュルカント哲学ドラゴンクエストエージェントアーキテクチャPAIROCTOPATH TRAVELER西木康智OCTOPATH TRAVELER 大陸の覇者アルスエレクトロニカ2019StyleCLIPDeNAStyleRig逆転オセロニア奥村エルネスト純いただきストリート齋藤精一大森田不可止高橋智隆ロボユニザナック泉幸典仁井谷正充ロボコレ2019ぎゅわんぶらあ自己中心派Azure Machine Learning意思決定モデル脱出ゲームHybrid Reward ArchitectureウロチョロスSuper Phoenix理化学研究所Project Malmo教育TextWorldProject PaidiaProject LookoutWatch ForBingLEFT ALIVE長谷川誠ジミ・ヘンドリックスBaby Xカート・コバーンロバート・ダウニー・Jr.エイミー・ワインハウスMagentaYouTubeダフト・パンクSFGlenn MarshallThe Age of A.I.Story2HallucinationレコメンデーションJukeboxGTC2021テンセントSIFTDCGANMOBADANNCE人事ハーバード大学研修デューク大学mynet.aiローグライクゲームNetHack人工音声NeurIPS 2021はこだて未来大学プレイ動画ヒップホップサイレント映画NBA環境音現代アートエージェント粒子群最適化法進化差分法群知能下川大樹ウィル・ライト高津芳希シムシティ大石真史BEiTレベルデザインDETRSporeAIボイスアクターデノイズ南カリフォルニア大学画像処理NVIDIA CanvasSentropyCPUDiscordZorkCALMプログラミングソースコード生成GMAIシチズンデベロッパーTRPGGitHubウィザードリィMCN-AI連携モデルAI DungeonMCS-AI動的連携モデル西川善司並木幸介サムライスピリッツ森寅嘉ゼビウスSIGGRAPH 2021ストリートファイター半導体Topaz Video Enhance AI栗原聡DLSS山野辺一記NetEase大里飛鳥DynamixyzモーションキャプチャーU-Net13フェイズ構造アドベンチャーゲームADVXLandAGI手塚眞DEATH STRANDING不気味の谷Eric JohnsonOculus Questコジマプロダクション生体情報デシマエンジンインディーゲーム写真高橋ミレイ照明Maxim PeterJoshua Romoffハイパースケープ山崎陽斗深層強化学習立木創太CEDEC2021バンダイナムコ研究所ミライ小町GameGANパックマンソサエティ5.0SIGGRAPH 2020DIB-R3D広告

【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関連記事

AI時代の死生観とアイデンティティはどこへ向かうのか?:藤澤仁氏×森川幸人氏対談(後編)

2019.10.11ゲーム

AI時代の死生観とアイデンティティはどこへ向かうのか?:藤澤仁氏×森川幸人氏対談...

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

2020.4.30ゲーム

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

ゲームプレイAIに対する新たな挑戦「NetHackチャレンジ」とは何か?

2021.6.23ゲーム

ゲームプレイAIに対する新たな挑戦「NetHackチャレンジ」とは何か?

RANKING注目の記事はこちら