NEWS

“CEDEC 2020” 講演者インタビュー特集
第3回 ~次世代ゲームAIを支えるパス探索システム~衝突回避コストを軽減する多段階多階層3D空間パス探索

2020年9月にオンラインで開催された「CEDEC2020」(コンピュータエンターテインメントデベロッパーズカンファレンス2020)のセッションに、Luminous Productions のメンバーが登壇いたしました。それぞれの講演内容をより詳細に、クリエイターの想いとともにご紹介していきます。

Facebook Share Twiiter Share Linkedin Share Reddit Share Tumblr Share

■「~次世代ゲームAIを支えるパス探索システム~衝突回避コストを軽減する多段階多階層3D空間パス探索」の講演者

まずは、今回の講演について簡単に概要をご説明いただけますでしょうか。

蔡氏 :今回は講演というよりは講義に近い内容で、3D空間中のパス探索の実装に必要なものをゼロから全て簡単に紹介しました。また、回避や混雑時にどのような機能を実装したのか、そのやり方も紹介しました。

今回のテーマになったきっかけや経緯を伺えますか?

蔡氏 :これまでは2Dでのパス探索が主でしたが、空中の物体に対しては3D空間移動も必要だと思っていました。そんな時CEDECの応募があり、上司からやってみたらと声をかけられたのがきっかけです。 NPCやエネミーといった、ユーザーが操作するキャラクター以外のものの移動は、どのようなパス探索システムが実装されているか次第で見栄えに差がでますよね。2D探索のみの場合、地上に存在しているものにしか反応できず、非現実的な見栄えになってしまうので、3D空間で、より人間のような移動ができるパスを生成したいと思っていました。

パス探索はゲーム自体のクオリティアップに繋がるので、大事な部分ですよね。

蔡氏 :特にオープンワールドのゲームである場合、地上を歩くだけではなく、様々な地形での移動や、様々な生態のエネミーが混在していたりするので、今後も重要になってくる部分だと思います。

今回蔡さんが取り組まれた中で、挑戦的だと思う部分はありましたか?

蔡氏 :一般的に3Dパス探索は簡易的な実装のみに留まっているケースも多いです。つまり、最短しか考えず、最短距離で移動するというものですね。しかし今回の実装の中では、全体的なパスプランを構築しました。あるものが移動する時、別のもののパスは事前に避けて、全体的に良いパスをプランニングする、というものです。例えば、飛行機の例が分かりやすいかもしれません。飛行機はレーダーで他の機体を意識し、ぶつからないよう最初からパス選択をしますよね。今回はそういう感じです。

そうするとアルゴリズム的にも高度になってくると思いますが、そのあたりの苦労はありましたか?

蔡氏 :そうですね、私はもともとゲーム業界ではなく、電子デバイス業界の出身です。電子デバイスの中には沢山の回路があり、回路の中にパスというか、電流の回線が置いてあります。1枚のCPUの中に何千以上の回線がある。私のもともとの専門分野はそこでしたので、今回はそこからの技術を借りて実装してみました。 違う業界ですが、目的は同じで、他と譲りながらルートを作るんです。細かい要件と解決方法はちょっと違いますけどね。

どちらも、ぶつからないよう最適化されたルートを通るようにしなくてはいけないということですよね?

蔡氏 :問題をシンプル化したら、回路の中もゲームの中もみんな自分にとって最適なパスが一番良いですよね。でも複数同時に走っている以上、個別の最適パスが良いわけではない。「全体的に良い結果」が一番良いです。でものその場合、何を「全体的に良い」とするのか、その定義が必要になってきます。今回の講演では、その全体的な評価の方法も紹介しました。

評価の仕方を変えれば、異なる場面でも対応できるようになるのでしょうか?

蔡氏 :はい。例えば、全員最短距離を移動させたい場合は、「最短が一番良い」という評価にすることで、それぞれが自己中に最短距離を移動します。全体的に譲り合って欲しい時は、そういう評価にすることで、みんな余裕がでます。その評価の数式がとても大事です。

その評価値はある程度決められているのでしょうか?それとも試行錯誤して、実験しながら出したのでしょうか?

蔡氏 :沢山の実験や検証が必要でした。なので、我々のテストパターンは、何千個ものマップを作って何千体もの人を移動させ、どんな画面になるか、どこでぶつかって、どこまでのパスの長さになるかを実験し、評価の数値を決めていきました。

とても汎用性のありそうな研究ですよね。

蔡氏 :そうですね、ゲームではありませんが、例えば地図アプリも同じ技術ですね。一斉にマップを読み込んで、最短パスの計算や回避もできますからね。

他にも今回の研究で大変だったことはありますか?

蔡氏 :前述の通り、私のもともとの研究領域は電子回路で、今回はゲーム。それぞれ要件が違うのが難しかったです。回路は回線が被ったらショートするのでダメですが、ゲームは被ってもいい。被るタイミングさえずらせば、同じ交差点を通過しても大丈夫ですよね。そうしたちょっとした要件の変化、構造の設計を調整するのに時間がかかりました。

研究は蔡さんお一人で進めたのですか?

蔡氏 :過去のCEDECやGDCの講演の論文を見ながら、皆さんがどうやってきたのかを参考にしながら進めました。また、Luminous Productions(以下LP)のスタッフにも様々な経験があるので、問題点や、どういったものが必要とされているのか、将来的に実装する場合どうしたいか等といった意見も聞きながらやりました。

■ゲーム業界における「AI」の今と昔、パス探索のこれから

蔡さんはAIを使ったパス探索についてはどう考えますか?

蔡氏 :個人的な感想ですが、少し前ゲーム業界での「AI」という言葉は、「人がやっていないことすべて」を指していましたが、現在は「機械学習」のことを指していますよね。そういう意味では、今回の研究は昔の「AI」で、私が決めたアルゴリズムに則っています。機械学習を用いた場合、何十万回と試行錯誤し、どんどん人間のようなパス探索ができるようになっていくので、個人的には後者の方が良いと思いますし、それが主流になっていくのではないかなと思います。 最短のパスを組むだけでAIを組むのはもったいないですが、例えば今回設定した評価のように、「全体的に良いパス」とする場合は、今使っているアルゴリズム的にも限界があります。そこをAIに任せるのは良い選択だと思います。

「機械学習」を用いたパス探索は近く実現すると思いますか?

蔡氏 :AIの進歩は早いので、何かの発表で一気に昔のアルゴリズムを超えていく可能性は大いにあると思います。 そしてそれが大手ゲームメーカーから生まれる可能性もあると思います。 ゲームのスケールが大きければ大きいほど、会社のリソースが多いほど、そういう研究ができるチームがあればあるほど良いですからね。また、ゲームはどんどん現実世界に近づいていっているので、現実世界のツールがどんどん使えるようになってきています。なので、地図アプリのようにゲーム以外の分野で使われているような技術が入ってくる、ということもありえると思います。

今後この研究についてはどのように発展させていきたいですか?

蔡氏 :今回は基本的な部分しかやれなかったので、もう少し応用していきたいですね。 講演内でも触れましたが、2Dと3Dの繋がりの部分です。例えば、「走りながら飛ぶ」「走っている最中に水中にもぐる」等。パスの中で色々なフェーズがあり、そういうところも自然に見せられたらいいなと思います。更にリッチなパス探索ができるようになり、それを実際に実装できれば、理想的ですね。

理想は実現可能そうでしょうか?

蔡氏 :ルミナス・エンジンは自分たちでツールを作っているので、個人的には実現できると思っています。今回のような挑戦も、エンジン開発とゲーム開発の両方をやっているLPだからできたことなので、こうした環境は貴重です。また、LP内にはレンダリング技術やQA技術など、様々な領域のエキスパートがいるので、皆でその技術を集約していけば、すごいものが作れると感じています。その中で今回の研究も役立っていけば嬉しいですね。

最後に、講演の視聴者や当インタビューをご覧になっている方に伝えたいことはありますか?

蔡氏 :パス探索は、皆さんと一緒に作っていきたいと思っています。 他業界では、ある人の論文結果を継承し合って、皆一緒に進歩していくことがありますが、ゲーム業界は特殊で、個人個人で独立した講演が多いと思います。今回の講演で私は、1つの定義と基準を提案したと思っていますので、是非、同じ要件で違う実装方法を試し、さらに良い結果を出す方が出てきてくれたら嬉しいですし、それが自分の次へのモチベーションにもなります。私のいた電子業界では、各領域でそうしたパフォーマンスと性能を競い合えるカンファレンスが毎年あるんですね。なので、パスの長さや混雑の程度、計算速度を評価の1つにし、それを共有することで競い合う場ができるといいなと思います。

講演資料(pdf)のダウンロードはこちら

Facebook Share Twiiter Share Linkedin Share Reddit Share Tumblr Share
NEWS一覧はこちら