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

TAG LIST
CGCGへの扉安藤幸央機械学習ディープラーニング月刊エンタメAIニュース河合律子GANOpenAI音楽NVIDIA吉本幸記ニューラルネットワーク強化学習Google生成系AI三宅陽一郎QA人工知能学会GPT-3Stable Diffusion自然言語処理グーグルDeepMindFacebook森川幸人シナリオ大内孝子マイクロソフトChatGPT敵対的生成ネットワークルールベースアート映画キャラクターAIスクウェア・エニックスモリカトロンAIラボインタビューAIと倫理SIGGRAPHゲームプレイAI大規模言語モデル倫理デバッグNFTDALL-E2StyleGANプロシージャル遺伝的アルゴリズムモリカトロン著作権画像生成自動生成テストプレイメタAI画像生成AINPCテキスト画像生成ロボット深層学習ファッションCEDEC2019ディープフェイクVFXMidjourneyデジタルツインボードゲームDALL-ECLIPビヘイビア・ツリーCEDEC2021LLMCEDEC2020ゲームAIメタバース不完全情報ゲームVRナビゲーションAI畳み込みニューラルネットワークGDC 2021マンガJSAI2022AdobeNVIDIA OmniverseGDC 2019マルチエージェントCEDEC2022AIアート小説Stability AI懐ゲーから辿るゲームAI技術史toioジェネレーティブAIスポーツCNNBERT作曲MicrosoftUnityMinecraftアニメーションOmniverseメタJSAI2023鴫原盛之HTN階層型タスクネットワークソニー栗原聡手塚治虫汎用人工知能JSAI2020GTC2023TensorFlowインタビューバーチャルヒューマンイベントレポート対話型エージェントAmazonロボティクスDQNMeta水野勇太アバター3DCGUbisoftGenvid TechnologiesガイスターStyleGAN2デジタルヒューマンGTC2022教育音楽生成AIJSAI2021研究シムピープルMCS-AI動的連携モデルモーションキャプチャーElectronic ArtsNeRFマーケティングメタデータGDC SummerブロックチェーンCMMicrosoft Azureアストロノーカキャリア模倣学習eスポーツスタンフォード大学アーケードゲームテニスサイバーエージェントトレーディングカード音声認識メディアアートeSportsBLUE PROTOCOLシーマンaibo合成音声チャットボットAWS徳井直生斎藤由多加AlphaZeroTransformerGPT-2rinnaAIりんなカメラ環世界中島秀之PaLM哲学ベリサーブPlayable!理化学研究所SIGGRAPH ASIASFNetflix東京大学はこだて未来大学現代アートエージェントDARPAドローンシムシティImagenZorkバイアスプロンプトGPT-4ASBSアドベンチャーゲームTEZUKA2020CEDEC2023AI美空ひばりテキスト生成マルチモーダルバンダイナムコ研究所スパーシャルAI3DLEFT 4 DEADイーロン・マスク通しプレイOpenAI FiveStable Diffusion XL本間翔太CygamesAudio2Faceピクサープラチナエッグイーサリアムボエダ・ゴティエビッグデータ中嶋謙互Amadeus Codeデータ分析MILEナラティブNVIDIA RivaOmniverse ReplicatorWCCFレコメンドシステムNVIDIA DRIVE SimWORLD CLUB Champion FootballNVIDIA Isaac Simセガ柏田知大軍事田邊雅彦トレカMax CooperGPT類家利直PyTorchChatGPT4眞鍋和子バンダイナムコスタジオ大澤博隆SFプロトタイピング齊藤陽介マインクラフトお知らせMagic Leap OneTencentバスケットボールサルでもわかる人工知能text-to-3DVAEDreamFusionブラック・ジャックリップシンキングUbisoft La Forge自動運転車ワークショップ知識表現ウォッチドッグス レギオンIGDA秋期GTC2022市場分析どうぶつしょうぎEpic GamesRobloxジェイ・コウガミ音楽ストリーミングMITAIロボ「迷キュー」に挑戦野々下裕子マシンラーニング5GMuZeroRival Peakpixivクラウド対話エンジン3Dスキャンリトル・コンピュータ・ピープルCodexシーマン人工知能研究所コンピューティショナル・フォトグラフィーPreferred Networksゴブレット・ゴブラーズ絵画ARMicrosoft DesignerイラストシミュレーションSoul Machines柿沼太一完全情報ゲームELSI坂本洋典釜屋憲彦ウェイポイントパス検索対談藤澤仁生物学GTC 2022画像認識GPT-3.5ハリウッドSiemensストライキStyleCLIPDeNA長谷洋平クラウドコンピューティングmasumi toyotaIBM宮路洋一OpenSeaGDC 2022SNSGen-1TextWorldEarth-2BingMagenta音声生成AIELYZA PencilScenarioSIGGRAPH2023テキスト画像生成AI松尾豊AIピカソGTC2021AI素材.comCycleGANテンセントAIQVE ONEデータマイニングNetHackBardキャラクターモーションControlNetNBAフェイクニュースRPG法律SIGGRAPH 2022世界モデルレベルデザインAIボイスアクターNVIDIA CanvasGPUALife人工生命オルタナティヴ・マシンサウンドスケープLaMDATRPGマジック:ザ・ギャザリングAI Dungeonぱいどん手塚眞不気味の谷ナビゲーションメッシュインディーゲーム高橋ミレイ深層強化学習松原仁松井俊浩武田英明ELYZAフルコトNEDOELYZA DIGEST建築音声合成広告西成活裕Apex LegendsELIZA群衆マネジメントライブポートレイトNinjaコンピュータRPGライブビジネスWonder Studioアップルタウン物語新型コロナ土木KELDIC周済涛BIMメロディ言語清田陽司インフラゲームTENTUPLAYサイバネティックスMARVEL Future FightAstro人工知能史Amazon BedrockタイムラプスEgo4DAI哲学マップバスキア星新一X.AI日経イノベーション・ラボStyleGAN-XLX Corp.敵対的強化学習StyleGAN3Twitter階層型強化学習GOSU Data LabGANimatorXホールディングスWANNGOSU Voice AssistantVoLux-GANMagi竹内将SenpAI.GGProjected GANMobalyticsSelf-Distilled StyleGANSDXL馬淵浩希ニューラルレンダリングRTFKT岡島学AWS SagemakerPLATONIKE映像セリア・ホデント形態素解析frame.ioClone XUXAWS LambdaFoodly村上隆誤字検出森山和道認知科学中川友紀子Digital MarkゲームデザインSentencePieceアールティSnapchatLUMINOUS ENGINEクリエイターコミュニティLuminous ProductionsBlenderBot 3バーチャルペットパターン・ランゲージ竹村也哉Meta AINVIDIA NeMo Serviceちょまどマーク・ザッカーバーグヴァネッサ・ローザGOAPWACULVanessa A RosaAdobe MAX 2021陶芸自動翻訳Play.ht音声AIAIライティングLiDAROmniverse AvatarAIのべりすとPolycamFPSQuillBotdeforumマルコフ決定過程NVIDIA MegatronCopysmith動画生成AINVIDIA MerlinJasperハーベストNVIDIA MetropolisForGamesパラメータ設計ゲームマーケットバランス調整岡野翔太協調フィルタリング郡山喜彦人狼知能テキサス大学ジェフリー・ヒントンGoogle I/O 2023AlphaDogfight TrialsAI Messenger VoicebotGoogle I/OエージェントシミュレーションOpenAI Codex武蔵野美術大学StarCraft IIHyperStyleBingAIFuture of Life InstituteRendering with StyleIntelDisneyFireflyLAIKADisneyリサーチヴィトゲンシュタインPhotoshopRotomationGauGAN論理哲学論考LightroomGauGAN2京都芸術大学Canvaドラゴンクエストライバルズ画像言語表現モデル不確定ゲームSIGGRAPH ASIA 2021PromptBaseBOOTHDota 2モンテカルロ木探索ディズニーリサーチpixivFANBOXMitsuba2バンダイナムコネクサス虎の穴ソーシャルゲームEmbeddingワイツマン科学研究所ユーザーレビューFantiaGTC2020CG衣装mimicとらのあなNVIDIA MAXINEVRファッションBaidu集英社淡路滋ビデオ会議ArtflowERNIE-ViLG少年ジャンプ+グリムノーツEponym古文書ComicCopilotゴティエ・ボエダ音声クローニング凸版印刷コミコパGautier Boeda階層的クラスタリングGopherAI-OCRゲームマスター画像判定Inowrld AIJuliusSIE鑑定ラベル付けMODTPRGOxia PalusGhostwriterバーチャル・ヒューマン・エージェントtoio SDK for UnityArt RecognitionSkyrimクーガー田中章愛実況パワフルサッカースカイリム石井敦銭起揚NHC 2021桃太郎電鉄RPGツクールMZ茂谷保伯池田利夫桃鉄ChatGPT_APIMZGDMC新刊案内パワサカダンジョンズ&ドラゴンズマーベル・シネマティック・ユニバースコナミデジタルエンタテインメントOracle RPG成沢理恵MITメディアラボMCU岩倉宏介深津貴之アベンジャーズPPOxVASynthマジック・リープDigital DomainMachine Learning Project CanvasLaser-NVMagendaMasquerade2.0国立情報学研究所ノンファンジブルトークンDDSPフェイシャルキャプチャー石川冬樹MERFサッカーモリカトロン開発者インタビュースパコンAlibaba里井大輝Kaggle宮本茂則スーパーコンピュータVQRF山田暉松岡 聡nvdiffrecAssassin’s Creed OriginsAI会話ジェネレーターTSUBAME 1.0NeRFMeshingSea of ThievesTSUBAME 2.0LERFGEMS COMPANYmonoAI technologyLSTMABCIマスタリングモリカトロンAIソリューション富岳TikTok初音ミクOculusコード生成AISociety 5.0リアム・ギャラガー転移学習テストAlphaCode夏の電脳甲子園グライムスBaldur's Gate 3Codeforces座談会BoomyCandy Crush Saga自己増強型AItext-to-imageジョン・レジェンドSIGGRAPH ASIA 2020COLMAPザ・ウィークエンドADOPNVIDIA GET3DドレイクデバッギングBigGANGANverse3DTEZUKA2023MaterialGANRNNグランツーリスモSPORTAI絵師エッジワークスReBeLグランツーリスモ・ソフィーUGC日本音楽作家団体協議会GTソフィーPGCFCAVolvoFIAグランツーリスモチャンピオンシップVoiceboxNovelAIさくらインターネットRival PrakDGX A100NovelAI DiffusionVTuberぷよぷよユービーアイソフトWebcam VTuberモーションデータ立教大学星新一賞大阪公立大学北尾まどかHALOポーズ推定TCG将棋メタルギアソリッドVフォートナイトメッシュ生成KLabFSMメルセデス・ベンツQRコードMagic Leap囲碁ナップサック問題Live NationEpyllionデンソー汎用言語モデルWeb3.0マシュー・ボールデンソーウェーブAIOpsムーアの法則原昌宏Spotifyスマートコントラクト日本機械学会Replica Studioロボティクス・メカトロニクス講演会amuseChitrakarQosmoAdobe MAX 2022トヨタ自動車巡回セールスマン問題Adobe MAXかんばん方式ジョルダン曲線メディアAdobe Research村井源政治Galacticaプロット生成クラウドゲーミングがんばれ森川君2号オムロン サイニックエックス和田洋一リアリティ番組映像解析FastGANStadiaジョンソン裕子セキュリティ4コママンガMILEsNightCafe東芝デジタルソリューションズ電気通信大学インタラクティブ・ストリーミングLuis RuizSATLYS 映像解析AI稲葉通将インタラクティブ・メディアポケモン橋本敦史PFN 3D ScanElevenLabs東京工業大学HeyGenLudo博報堂After EffectsラップPFN 4D Scan絵本SIGGRAPH 2019ArtEmisZ世代DreamUp出版AIラッパーシステムDeviantArtAmmaar ReshiWaifu DiffusionStoriesGROVERプラスリンクス ~キミと繋がる想い~元素法典StoryBirdFAIRSTCNovel AIVersedチート検出Style Transfer ConversationOpen AIProlificDreamerオンラインカジノRCPUnity SentisアップルRealFlowRinna Character PlatformUnity MuseiPhoneCALACaleb WardDeep Fluids宮田龍MeInGameAmelia清河幸子AIGraphブレイン・コンピュータ・インタフェースバーチャルキャラクター西中美和BCIGateboxアフォーダンス安野貴博Learning from VideoANIMAKPaLM-SayCan斧田小夜予期知能逢妻ヒカリ宮本道人セコムGitHub CopilotLLaMA 2ユクスキュルバーチャル警備システムCode as PoliciesLLaMAカント損保ジャパンCaPHugging FaceCM3leon上原利之Stable DoodleドラゴンクエストエージェントアーキテクチャアッパーグラウンドコリジョンチェックT2I-AdapterPAIROCTOPATH TRAVELERxAI西木康智OCTOPATH TRAVELER 大陸の覇者山口情報芸術センター[YCAM]アルスエレクトロニカ2019品質保証YCAM日本マネジメント総合研究所StyleRigAutodeskアンラーニング・ランゲージVoyager逆転オセロニアBentley Systemsカイル・マクドナルドLily Hughes-Robinsonワールドシミュレーターローレン・リー・マッカーシーColossal Cave Adventure奥村エルネスト純いただきストリートH100鎖国[Walled Garden]​​プロジェクトAdventureGPT齋藤精一大森田不可止COBOLSIGGRAPH ASIA 2022リリー・ヒューズ=ロビンソン高橋智隆DGX H100VToonifyBabyAGIロボユニザナックDGX SuperPODControlVAEGPT-3.5 Turbo泉幸典仁井谷正充変分オートエンコーダーカーリングロボコレ2019Instant NeRFフォトグラメトリウィンブルドンartonomous回帰型ニューラルネットワークbitGANsDeepJoin戦術分析ぎゅわんぶらあ自己中心派Azure Machine LearningAzure OpenAI Serviceパフォーマンス測定意思決定モデル脱出ゲームDeepLIoTHybrid Reward Architectureコミュニティ管理DeepL WriteProFitXウロチョロスSuper PhoenixWatsonxProject MalmoオンラインゲームAthletica気候変動コーチングProject Paidiaシンギュラリティ北見工業大学Project Lookoutマックス・プランク気象研究所レイ・カーツワイル北見カーリングホールWatch Forビョルン・スティーブンスヴァーナー・ヴィンジ画像解析気象モデルRunway ResearchじりつくんLEFT ALIVE気象シミュレーションMake-A-VideoNTT Sportict長谷川誠ジミ・ヘンドリックス環境問題PhenakiAIカメラBaby Xカート・コバーンエコロジーDreamixSTADIUM TUBEロバート・ダウニー・Jr.エイミー・ワインハウスSDGsText-to-ImageモデルPixelllot S3ソフトバンクYouTubeダフト・パンクメモリスタAIスマートコーチGlenn MarshallThe Age of A.I.Story2Hallucination音声変換LatitudeレコメンデーションJukeboxDreamboothVeap Japanヤン・ルカンEAPneoAIPerfusionSIFT福井千春DreamIconニューラル物理学DCGAN医療mign毛髪MOBADANNCEメンタルケアstudiffuse荒牧英治人事ハーバード大学Edgar HandyAndreessen Horowitz中ザワヒデキ研修デューク大学大屋雄裕QA Tech Night中川裕志mynet.aiローグライクゲーム松木晋祐Adreeseen Horowitz東京理科大学下田純也NVIDIA Avatar Cloud Engine人工音声NeurIPS 2021産業技術総合研究所桑野範久Replica StudiosリザバーコンピューティングSmart NPCsプレイ動画ヒップホップ対話型AIモデルRoblox StudioソニーマーケティングPromethean AIサイレント映画もじぱnote音源分離環境音暗号通貨note AIアシスタントMusiioFUZZLEKetchupEndelAlterationAI Newsユニバーサルミュージック粒子群最適化法Art Selfie進化差分法オープンワールドArt TransferSonar群知能下川大樹AIFAPet PortraitsSonar+Dウィル・ライト高津芳希P2EBlob OperaWeb3大石真史クリムトDolby AtmosBEiTStyleGAN-NADASonar Music FestivalDETRゲームエンジンDreamerV3ライゾマティクスSporeUnreal Engineクリティックネットワーク真鍋大度デノイズ南カリフォルニア大学Unity for Industryアクターネットワーク花井裕也画像処理DMLabRitchie HawtinSentropyGLIDEControl SuiteErica SynthCPUDiscordAvatarCLIPAtari 100kUfuk Barış MutluSynthetic DataAtari 200MJapanese InstructBLIP AlphaCALMYann LeCun日本新聞協会プログラミングサム・アルトマン鈴木雅大AIいらすとやソースコード生成コンセプトアートAI PicassoGMAIシチズンデベロッパーSonanticColie WertzEmposyGitHubCohereリドリー・スコットAIタレントウィザードリィMCN-AI連携モデル絵コンテAIタレントエージェンシーUrzas.aiストーリーボードmodi.ai介護大阪大学BitSummit西川善司並木幸介KikiBlenderBitSummit Let’s Go!!サムライスピリッツ森寅嘉Zoetic AIRed RamゼビウスSIGGRAPH 2021ペットマーダーミステリーストリートファイター半導体Digital Dream LabsPaLM APIデジタルレプリカTopaz Video Enhance AICozmoMakerSuiteGOT7DLSSタカラトミーSkebsynthesia山野辺一記NetEaseLOVOTDreambooth-Stable-DiffusionHumanRF大里飛鳥DynamixyzMOFLINゲーム背景Actors-HQRomiGoogle EarthSAG-AFTRAU-NetミクシィGEPPETTO AIWGA13フェイズ構造ユニロボットStable Diffusion web UIチャーリー・ブルッカーADVユニボPoint-EXLandGatoアパレル岡野原大輔AGIAI model自己教師あり学習DEATH STRANDINGAI ModelsIn-Context Learning(ICL)Eric Johnson汎用強化学習AIZMO.AILoRAデザインMOBBY’SファインチューニングOculus Questコジマプロダクションロンドン芸術大学モビーディックグランツーリスモ生体情報デシマエンジンGoogle Brainダイビング量子コンピュータSound Controlアウトドアqubit写真SYNTH SUPERAIスキャニングIBM Quantum System 2照明Maxim PeterKarl Sims自動採寸北野宏明Joshua RomoffArtnome3DLOOKダリオ・ヒルハイパースケープICONATESizerジェン・スン・フアン山崎陽斗ワコールHuggingFace立木創太スニーカーStable Audio浜中雅俊UNSTREET宗教ミライ小町Newelse仏教テスラ福井健策CheckGoodsコカ・コーラGameGAN二次流通食品パックマンTesla Bot中古市場Coca‑Cola Y3000 Zero SugarTesla AI DayWikipediaDupe KillerCopilot Copyright Commitmentソサエティ5.0Sphere偽ブランドテラバースSIGGRAPH 2020バズグラフXaver 1000配信京都大学ニュースタンテキ養蜂立福寛東芝Beewiseソニー・ピクチャーズ アニメーション音声解析DIB-R倉田宜典フィンテック感情分析投資Fosters+Partners韻律射影MILIZEZaha Hadid Architects韻律転移三菱UFJ信託銀行

【CEDEC2020】オンラインゲーム『BLUE PROTOCOL』で敵AIにパーティを組ませる方法

2020.10.19ゲーム

【CEDEC2020】オンラインゲーム『BLUE PROTOCOL』で敵AIにパーティを組ませる方法

オンラインゲームをプレイしたことがある人なら、誰しもパーティ内で役割分担しながら強大な敵キャラクターに立ち向かったことがあるでしょう。それではプレイヤーと同様にパーティを組んで、それぞれの役割を全うしながら戦術的に行動する敵キャラクターはどうでしょう。人工知能技術によって自律性を得たキャラクターAIが次に目指すのは、AI同士で集団を形成して意思疎通しながら合理的に行動する協調性です。

9月2日から9月4日までオンライン開催された国内最大のコンピュータエンターテインメント業界向け技術交流会「CEDEC 2020」にて、バンダイナムコスタジオの長谷洋平氏による「BLUE PROTOCOLのパーティバトルを支える集団制御AI」というセッションを取材しました。同セッションでは、広大なゲーム空間に分散する複数のキャラクターを集団として制御するためのAI技術を紹介しています。

『BLUE PROTOCOL』は、バンダイナムコスタジオが開発中のオンラインアクションRPGです。「プレイヤーパーティvsエネミーパーティ」による集団戦闘が最大の特徴で、すべての敵キャラクターがプレイヤー同様にパーティを組んでいるように振る舞います。これによりプレイヤーに敵キャラクターの意図を感じさせ、対人戦のような戦術的なバトルを演出しています。また、戦闘への途中参戦や途中離脱も自由で、その場に居合わせたプレイヤー同士のゆるい共闘も可能だということです。

このようなゲームデザインを実現するには、いかなる状況下でもパーティとして破綻しないように敵キャラクターを動かさなければいけません。また、複数のプレイヤーが同じ空間を共有するオンラインゲームでは、多人数でのプレイに対応できるだけの敵キャラクターの数が必要です。そのため、フィールド全体におけるマネジメント処理の負荷軽減という課題は避けられません。

どこからどこまでをパーティと捉えるか

『BLUE PROTOCOL』のAIは階層構造を成しています。最上部の「AI Director」がフィールドの状況分析やスポーニング制御といったコンテンツ全体の統括を担い、その下で「Faction Coordinator」が各勢力を管理します。ここではサブグループの作成やメンバーのアサインなどが行われます。次に「Combat Coordinator」が攻撃権管理やロールアサインといった役割を果たし、最後に「Character」が挙動を制御するという仕組みです。

広大な空間に分散しているプレイヤーたちはパーティを組んでいることもあれば、それぞれ野良で共闘している可能性もあります。つまり、それぞれの戦闘単位を表す明確な基準は存在しません。そのため「AI Director」は動的にプレイヤー集団を見つけて、同じ集団を狙っている敵同士でひとつのパーティを構成しようとします。

プレイヤー集団の分析には、階層的クラスタリングという手法が使われています。これはデータの類似度をもとにグルーピングする方法で、事前にクラスター数を決定する必要がないのが利点です。ほかの手法にくらべて計算量が増すのが欠点ですが、『BLUE PROTOCOL』では各フレームにおけるステップ数に上限を設けることで負荷を分散しているということでした。

敵キャラクターが感知したプレイヤーはターゲットリストに格納され、それぞれにクラスター情報が割り振られます。この時、基本的にプレイヤー側のクラスターひとつにつき、エネミー側のパーティがひとつ生成されます。ターゲット候補となるクラスターが複数ある場合は、距離や敵意といった変数から最適なアサイン先が決定されます。

パーティ形成の流れをまとめると、「AI Director」がフィールドの状況を分析して敵キャラクターをスポーンさせます。それぞれの敵キャラクターは所属勢力に応じた「Faction Coordinator」にアサインされ、ここで各々のコンテキスト情報をもとに「Combat Coordinator」が作成されます。なお、偵察行動といった戦闘以外のシチュエーションを想定したグループも、この段階で同様に作られるということです。

ログイン中のプレイヤー数やフィールドの状況によって、クラスター情報は常に更新されます。その都度、「Faction Coordinator」はすべての敵キャラクターを対象に再アサインをリクエストするため、クラスターの増減に応じて各グループの構成も変化していきます。例えば、戦闘中のプレイヤーが敵パーティの現在位置から離れるにつれて敵パーティが2つに分割されることもあれば、移動中にプレイヤーが攻撃した個別の敵キャラクターが現在交戦中の敵パーティに組み込まれることもあるというわけです。

キャラクターの思考をどう制御するか

「Character」のエージェントアーキテクチャは、センサーやクエリーで周囲の空間の情報を集める「Perception」、それらの情報をもとに次の行動を決定する「Brain」、進行方向の計算やアニメーションの制御を担う「Action」で構成されています。このうち「Brain」は、さらに「Utility System」「HTN Planning」「Behavior Tree」で構成され、それぞれが「何をすべきか」「どのようにすべきか」「具体的な方法」を決定しています。

HTNは階層型タスクネットワークの略で、「HTN Planning」は行動による状態の変化を考慮した上で、一連の行動を事前に計画する技術です。抽象的なタスクをより具体的なタスクへ分割することで、必要な行動とその順序を見つけるために使われます。たとえば、「朝支度」というタスクは、まず「起きる」「着替える」「朝食」「家を出る」というサブタスクへ分解され、さらに「朝食」は「準備」「食べる」といった具合に細分化されます。それ以上分割できない最下層のタスクには、実行による状態変化が設定されています。

これら階層型の思考ルーチンは「ドメイン」と呼ばれ、ドメインの外側から計画に制約を課すのが「プリファレンス」です。これには必ず満たすべき条件を意味する「ハード制約」と、可能な限り満たしてほしい条件を意味する「ソフト制約」があり、それぞれの計画はプリファレンスが満たされた数によって評価されます。このように、好みに基づいた計画を立てる技術を「Preference-based Planning」といいます。同一のドメインを再利用しつつ、好みに応じて異なるプランを作成できるのが特徴です。

プリファレンスにも、「プリコンディションプリファレンス」「ゴールプリファレンス」「トラジェクトリープリファレンス」といった複数の種類があります。「プリコンディションプリファレンス」は、タスク実行前の状態に対する制約を指します。たとえば、朝食の「準備」というタスクが「ご飯を炊く」と「パンを焼く」という2通りのタスクに分割された場合、お米とパンの所持数によって実行タスクを決定するようなケースで使われます。

「ゴールプリファレンス」は、プラン形成時の最終状態に対する制約です。朝食の準備を例に挙げると、ご飯もしくはパンを食べた後に生じる洗い物の数によって「ご飯を炊く」か「パンを焼く」か決定するような状況で用いられます。「トラジェクトリープリファレンス」は、プラン全体における条件の時間的な変化に対する制約を意味します。たとえば、「起きる」というタスクの次に「着替える」と「朝食」のどちらを優先するかを指定したい時に有効です。

『BLUE PROTOCOL』では、「HTN Planning」のサブドメインとプリファレンスのセットを「タクティカルスキル」と定義しています。ここには攻撃や移動、待機といったあらゆる行動がスキルとして実装されています。これらのサブドメインを組み合わせることで、キャラクターの思考ルーチンが形成されているというわけです。例えば攻撃アクションなら、「近接攻撃」や「間接攻撃」といった詳細な攻撃方法をサブドメインのテンプレートとして定義しておき、それらをどういう状況で使ってほしいかという条件をプリファレンスで指定するという仕組みです。

最適な戦略と戦術はいかに導き出されるか

「パーティvsパーティ」の戦術的なバトルを実現するためには、キャラクターの役割分担が欠かせません。『BLUE PROTOCOL』では、すべてのキャラクターにアタッカーやヒーラー、ディフェンダーといったロールがアサインされており、ロールに応じたタクティカルスキルによって行動の優先度が変化します。しかし、これだけでは常にパーティとして理にかなった行動を取ってくれるとは限りません。

各キャラクターがバラバラに動いてしまうとパーティとしてまとまりがないばかりか、複数のヒーラーが同じ対象を回復したり、複数のディフェンダーが1体のヒーラーを守ったりと、行動が重複してしまう可能性もあります。また、ロールが偏った場合、ヒーラー同士が互いを回復し続けるようなループに陥ってしまったり、1体だけ生き残ったヒーラーがひたすら逃げ続けたりと、何の面白みもない戦闘になってしまうかもしれません。

こうした状況を回避するために一翼を担っているのが「Combat Coordinator」です。前述した「Character」と同様に、「Combat Coordinator」も「Perception」「Brain」「Action」のエージェントアーキテクチャによって構成されています。一方、物理的な身体があるわけではないのでセンサーはなく、クエリーのみを用いて戦略立案に必要な情報や、パーティメンバーの共有情報を収集します。なお、戦闘における大局的な判断には、マップ全体のナビゲーションメッシュから行動の影響度を計算する「Influence Map」が使用されています。

「Combat Coordinator」における「Brain」の部分では、「Utility System」が戦略を立案し、「HTN Planning」が戦術を決定、そして「Behavior Tree」が命令を下します。「Utility System」は環境やメンバーの情報から算出したスコアを比較することで、変化していく状況に応じた最善の戦略を決定します。

たとえば、「牽制する」という戦略はプレイヤー集団とエネミーパーティの距離によってスコアが決定されます。また、「取り囲む」という戦略は、エネミーパーティのサイズがプレイヤー集団を上回っていることを条件に、プレイヤー集団に対するクラスタリングの内包率によってスコアが算出されます。このスコアが更新されるたび、パーティはより効果的な戦略へ切り替えて行動できるというわけです。

戦略の決定時には、戦略ごとに設定されているタスクが「Utility System」から「HTN Planning」へ渡されます。ここでメンバーへのロールアサインやプランニングに必要な変数の計算をとおして、パーティメンバーの戦術が構築されます。ロールアサインでは、ヒーラーしかいないような極端に偏ったパーティ編成を避けるために、コーディネーターが必要としているロールが優先的に割り当てられます。なお、キャラクターにはあらかじめ希望ロールが設定されており、必要ロールと希望ロールがマッチするようにアサインされます。

ここでの戦術とは、メンバーや攻撃権といった限られたリソースの運用効率を最大化するための割り当て方を指しています。「HTN Planning」を使うことでリソースの変化をシミュレートできるほか、プリファレンスを用いたアルゴリズムによって最善の選択肢を効率的に探索できるという利点もあります。この時、「攻撃」「防衛」「範囲バフ」といった各戦術はタクティカルスキルとして実装されており、そこから各メンバーが戦術の候補をあげます。これをもとに「Combat Coordinator」がプランニングして命令を下すという流れです。

どうやってAI同士で効率的に意思疎通するか

このように集団行動を前提に複数のキャラクターを動かすには、キャラクターとコーディネーターの間、あるいはキャラクター同士の間におけるコミュニケーション手段が重要になってきます。前者ならターゲットリストの伝達、後者ならヒーラーへの救援要請などが例に挙げられます。こうした伝達情報やリクエストのパラメータは複数の値を持つことが多く、その内容しだいでは複雑になりがちです。

『BLUE PROTOCOL』では、キャラクターからコーディネーターへの情報伝達に用いる「ブラックボード」と、双方向のコミュニケーションに使用される「メッセージング」に加えて、新たに「タプルスペース」を導入しているそうです。タプルスペースとは、 主に分散コンピューティングのプロセス間通信に使われる処理方式で、タプルという値の組を格納したブラックボードの一種です。データストアと通信を兼ねており、複数の値の組を扱えるという利点があります。タプル取得時には、条件を指定したフィルタリングも可能です。

ピンチに陥ったキャラクターがヒーラーに助けを求める際は、まず「Combat Coordinator」内のタプルスペースに救援要請のタプルを追加します。するとタプルスペースから通知を受け取ったヒーラーは、救援要請を出したキャラクターとの距離などをもとに算出した評価値をタプルスペースへ返します。これらの情報をもとにコーディネーターがプランニングし、救援要請に向かうキャラクターに命令を実行するという仕組みです。

バンダイナムコスタジオは「CEDEC 2019 」にて、「BLUE PROTOCOLの個性豊かなキャラクターを動かす意思決定システム」というセッションを発表しており、その際はキャラクターAIのエージェントアーキテクチャにフォーカスしていました。今回のセッションは、階層的クラスタリングとコーディネーターによる戦闘管理によって、それらキャラクターAIにパーティとして意図を持った振る舞いを追求するものでした。『BLUE PROTOCOL』は2020年4月にクローズドベータテストが実施されており、集団制御AIの実用例としてすでに一定の成功を収めているといえるでしょう。

Writer:Ritsuko Kawai / 河合律子

RELATED ARTICLE関連記事

【CEDEC2021】NPCとのインタラクティブな対話を実現するGOAPと感情生成パイプライン

2021.11.12ゲーム

【CEDEC2021】NPCとのインタラクティブな対話を実現するGOAPと感情生...

より柔軟な学びを目指して。人間の評価を組み込んだDeepMind開発のゲームプレイAI

2023.1.30ゲーム

より柔軟な学びを目指して。人間の評価を組み込んだDeepMind開発のゲームプレ...

発想より技術が先行する時代におけるゲームAIの役割:『ゲームAI技術入門』刊行記念特別対談レポート(後編)

2019.11.20ゲーム

発想より技術が先行する時代におけるゲームAIの役割:『ゲームAI技術入門』刊行記...

RANKING注目の記事はこちら