イベント
[CEDEC 2011]AIに命を。「ぽかぽかアイルー村」のアフォーダンス指向によるAI事例と「ARMORED CORE V」の三次元的な移動経路検索
このセッションでは,PSP用ソフト「モンハン日記 ぽかぽかアイルー村」(以下,アイルー村)と,「ARMORED CORE V」(PS3/Xbox 360)以下,ACV)のAIに,どんな工夫が凝らされているのかが解説された。
アイルー1匹当たり1500行のAI
フロム・ソフトウェア制作二部,並木幸介氏 |
本作は人気キャラクターであるアイルーが,狩りや採集などを行い,村を発展させながら仲間を増やしていくという内容のゲーム。いかに多くのアイルーで賑わっているところを見せられるか,というのを目標に掲げるところから開発がスタートしたという。
本作でAIの出番となるのは狩りの場面だ。アイルーはモンスターや新しいアイテムなどに遭遇すると,プレイヤーに行動内容を提案する。これをプレイヤーが選択するとアイルーが行動し,ゲームが進行していくという流れだ。
AIは「アイルーがどんな提案を出すか」に関わっており,アイルーの個性と周辺状況によって提案内容が変化する。「長期的な戦略は求められないものの,アイルーのバリエーションと多様性をどう実現するかが問題だった」と並木氏は語る。
アイルーのAIは,職業の個性が反映されたものになっており,「探検家」なら採掘,「釣り師」なら釣りといったような提案をする。また,遭遇したアイテムやモンスターによって提案内容が変わるため,判断材料はかなりの量になるそうだ。
当初はIF文(条件分岐。もし〜なら?という条件にあうかどうかを判定する)でAIを記述したものの,アイルー1匹あたり1500行もの構文が必要になったという。
ここで問題が発生した。アイルーのAIはゲームバランスに関わる部分であるため,高クオリティのものが求められる。1人でまかなえる量ではないため,複数人のプログラマを投入せざるを得ないが,誰もが高クオリティの調整ができるわけではない。また,アイルー村は少人数で進めるプロジェクトだっために,AI専属のプログラマーを配置するということは難しかったという。並木氏がいう「状況とアイルーの種類のかけ算による,組み合わせの爆発」により,開発コストの莫大な増加が予測されたのだ。
アイテムに選択肢を埋め込む「アフォーダンス指向」
そこで導入されたのがアフォーダンス指向だ。アフォーダンスとは,かなり大雑把に説明すると,「環境は人間に対して自身をどう扱うかの情報を与えている(人間は無意識に物体をどう扱うかについて解析している)」とする考え方で,「ザ・シムズ3」「HALO」などでも採用されている。
通常はAIが環境を調べて行動を決定するが,それに対してアイルー村のアフォーダンス指向は,環境側がAIに対し行動を示唆するのだ。つまり,画面上のモンスターやアイテムに「アイルーはどんなことができるか」というデータ(選択肢)が埋め込まれている。例えばキノコなら「食べる」「採集する」「投げる」「捨てる」といった具合だ。
表現を変えてみよう。通常のAIなら,アイルー自身が“周囲に何が存在していて,そのアイテムではどんな行為が可能かを調べる”のに対し,アフォーダンス指向では,キノコがアイルーに対し“自分を食べますか? 採集しますか? 投げますか? 捨てますか?”と提案する。キノコに対して不可能な「虫取り」「木を蹴る」「催眠術」などの選択肢は最初から含まれていないため,無駄を省けるわけだ。
アフォーダンス指向にしたことでアイルー側が持つAIプログラム量は平均すると1匹当たり180パターンになり,かなりシュリンクできたそうだ。さらにプログラムの量は減ったが,1500行のAIと同じ動作をするという。
実際には,アイルー村は通常のAIとアフォーダンス指向の組み合わせになっており,「提案テーブル」に設定されている提案に対し,「アフォーダンステーブル」が影響を与えることで,プレイヤーに対する最終的な提案が決定されるという。
「提案テーブル」はアイルーの個性を表し,ハンターなら「攻撃したい」,探検家なら「採掘したい」といった行動の優先度が高くなっている。一方の「アフォーダンステーブル」には,アイテムやモンスターに対しての選択肢と影響値がまとめられているのだ。
そして「提案テーブル」の優先度に「アフォーダンステーブル」の影響値が加えられ,最も高いものがプレイヤーに提案される。また,「提案テーブル」は,アイルーの職業に応じて行動を提案するため,アイルーごとの個性が表現できているという。
並木氏は「アフォーダンス指向のAIにより,肥大化する条件分岐を制御しつつ,個性的で多様な振る舞いが表現できた」と「アイルー村」での試みを総括した。
三次元的な移動経路検索の実現と軽量化
フロム・ソフトウェア技術部,岡村信幸氏 |
パス検索とは,キャラクターが目的地に行くためにどんな経路を通るかを検索するというもので,状況に合わせた移動を実現してくれる。
ACVの戦闘コンセプトは「地形を有効に利用した戦術」であり,前作よりも複雑になった地形を移動するため,障害物を避けるようなパス検索が求められた。これはACVのAIの中でも「とくに重要」(岡村氏)な部分だそうだ。
パス検索のためには,キャラクターが移動できる範囲を示す地図が必要になる。それは例えるなら,通れる道路だけを記した地図のようなものだ。だが,ACVでは通常用いられるナビゲーションメッシュ(キャラクターの移動できる範囲を示した地図)では不十分だった。というのも,本作のキャラクターはジャンプなどで立体的に動くうえに,障害物の開口部をすり抜けるようなこともあるからだ。
そこで用いられたのが三次元AABBによるナビゲーショングラフだ。AABBとは「Axis-Aligned Bounding Box(軸平行境界ボックス)」のことで,3D空間の座標軸と平行な直方体,つまり,3D空間のマップを直方体で区切っていくことで,立体的かつ複雑な地形に対応。地上と空中のそれぞれにAABBによるナビゲーショングラフを作ったことで,三次元的な経路を求められるようになったという。
AABBをノード(交点,節)とすることにより,簡易的に通路(地形の中で通行可能な範囲)の繋がりが示される。2006年にフロム・ソフトウェアが開発したXbox 360用ソフト「クロムハウンズ」では長距離パス検索の処理が重かったという経験を踏まえ,さらに軽量化した上位層グラフ構造を作り,問題に対応したという。
最後に岡村氏は,「フロム・ソフトウェアにはAI好きの人が多く,AIをゲームデザインに取り入れるような風土がある。AIを効率的に作るという方向性も考えており,できるだけ人の作業が発生しないようにしている」と社風とAIデザインの方向性を語り,講演を締めた。
- 関連タイトル:
モンハン日記 ぽかぽかアイルー村
- 関連タイトル:
ARMORED CORE V
- 関連タイトル:
ARMORED CORE V
- この記事のURL:
キーワード
(C)CAPCOM CO., LTD. 2010 ALL RIGHTS RESERVED.
(C)2011 NBGI (C)1997-2011 FromSoftware, Inc. All rights reserved.
(C)2011 NBGI (C)1997-2011 FromSoftware, Inc. All rights reserved.