『FINAL FANTASY XV』開発者が語る:ゲームという場が育む人工知能

  • 21,711

  • author 高橋ミレイ
『FINAL FANTASY XV』開発者が語る:ゲームという場が育む人工知能
Image: ©2016 SQUARE ENIX CO., LTD. All Rights Reserved. MAIN CHARACTER DESIGN: TETSUYA NOMURA

AIと人間は遊び友達になれる。ゲームという仮想空間の中でなら。

いまAIが大きく注目されるきっかけとなったものの1つに、ゲームがあるのではないでしょうか。将棋や囲碁といったゲームで、AIが人間のトッププレイヤーたちを打ち負かしたことが、「いまのAIってすごい」という認識につながったように記憶しています。

囲碁AIの「AlphaGo」はGoogleによるAI研究の一環として生み出されたものですが、AlphaGoがニュースになる以前から、ビデオゲーム業界もまたAIの発展に取り組んでいました。その目的は「人間に勝つこと」ではなく、「プレイヤーである人間を楽しませること」です。

2016年11月に発売された『ファイナルファンタジーXV』(以降FF15)は、仮想環境の中で生きているように振る舞うキャラクターの実現を目指してAI開発が進められ、その技術がふんだんに投入されているのだとか。

ff15_interview
中央奥より三宅陽一郎さん、上段達弘さん、白神陽嗣さん。左端はインタビュアーの高橋ミレイ。
Photo: 大塚敬太

でも、そもそもゲーム内のAIはいったいどのような存在なのでしょうか? 『FF15』のゲームAI開発に携わったスクウェア・エニックスの三宅陽一郎さん、上段達弘*さんと白神陽嗣*さんにお話をうかがいました。

*上段さんと白神さんは、『FF15』開発時はスクウェア・エニックスに所属。現在はスクウェア・エニックスグループの株式会社Luminous Productionsに所属されています。

キャラにプレイヤーと同じ視点を持たせるためにAIが使われ始めた

ff15_miyake
Photo: 大塚敬太

── 最初に、ゲーム内でAIはどのような役割を果たしているかおうかがいできれば。

三宅ゲーム内にはいろんな役割を持ったAIがたくさんいますが、メインとなるのはキャラクターの頭脳たる「キャラクターAI」です。かつてはゲーム制作者が「このキャラはこう動け」と一挙一動まで動きを設定していましたが、3Dゲームが普及してからは、キャラそのものにAIで知能を持たせる方法が台頭してきました。

── 3Dゲームだと、どうしてAIが必要になるのでしょう?

三宅:2Dのゲーム画面は俯瞰視点のものがほとんどで、扉の向こうが部屋なのか通路なのか、プレイヤーもコンピューターもわかった状態でプレイするのが普通でした。ところが、3Dグラフィックスの進歩でプレイヤーの視点がゲーム世界に入り込めるようになると、プレイヤーは扉を開けるまで向こうに何があるのかわからなくなります。でも、コンピューターは相変わらずゲームの中で起きていることすべてを把握できてしまいますし、それがプレイヤーに伝わってしまうと違和感を覚えます。そこで、プレイヤーと同じ視点で周囲を把握し、考えてキャラを動かすAIの必要性が出てきました

ほかにも、キャラクターAIなど他のAIを制御する「メタAI」がいます。ゲーム内では、このメタAIが映画監督のように指示を出し、その中で役者のようにキャラクターAIたちがそれぞれの役割を演じます。メタAIとひとくくりにしてはいますが、実際は脚本を管理するAIやバトルシーンを管理するAIなど、さまざまな機能を持つAIたちの総称です

最後にキャラの移動を補助する「ナビゲーションAI」があります。最近のゲームはオープンワールド(ゲームの世界を自由に移動できる)作品が増えていますが、AIたちが複雑な地形で迷わないよう案内し、スムーズに移動させるためのAIです。

このようにゲームのAIは、キャラクターAI、メタAI、ナビゲーションAIの大きく分けて3種類のAIが、お互いに支えあうことで成り立っています

ゲームのAIが持つ「おもてなし」マインド

ff15_shirakami
Photo: 大塚敬太

白神:今回のゲームのコンセプトのひとつが「仲間との旅」なので、その部分に一番ユーザーが心を震わされるような体験になるように、AIを使ってアプローチしています。たとえば戦闘シーンにおいて、イグニスというキャラクターは主人公のノクト(プレイヤー)を守るためにいるので、ノクトがピンチになるとすぐに戻ってきて守ってくれます。グラディオラスっていうキャラクターはどんどん敵を倒すのが役割なので、ちょっと離れたところで戦うことが多いです。あとプロンプトっていうキャラクターは射撃が得意なので、動きまわりながら敵を攻撃していきます。そういった個性づけを、ステート・ベースという仕組みでやっています。

ff15_AI_state_machine
Image: スクウェア・エニックス

上段:これは簡易的な図ですが、AIたちが「攻撃」と「待機」という2種類のフェーズ(段階)を行ったり来たりしている場面を表しています。さらに攻撃フェーズの中にもさまざまな状態があって、「敵が近くにいるので攻撃する」とか「残り体力が少ないから攻撃はやめる」など、状態とその遷移条件がたくさん設定されています。このようにステート(状態)でキャラクターの動きを表す方法をステート・マシンと言います。

白神:「どうなったら次の状態に移りますか?」っていうのがどんどん階層的にぶら下がっているんですね。ただ、AIの行動を全部ステート・ベースで決めると組み合わせが爆発的に増えてしまうので、一部の行動はビヘイビア・ツリーという仕組みでAIに判断させています。

ff15_AI_Behavior_Tree
攻撃フェーズ内に組み込まれているビヘイビア・ツリー。移動する→攻撃する→銃を使うor魔法を使う...という行動の流れがツリー状に並んでおり、優先順位に応じて行動が判断されていく。
Image: スクウェア・エニックス

── ゲーム内でプレイヤーとAIが同等に扱われる瞬間はあるのでしょうか?

白神:対等かと言われると難しい面もありますけども、主人公たちを襲うモンスターはとくにプレイヤーと仲間のAIキャラクターを区別しません。とはいえ『FF15』はエンターテイメントですから、AIはプレイヤーをもり立てる役割や機能を持っています。その役割を果たそうとする時は、最優先で敵の攻撃からプレイヤーをかばうなど、急におもてなしAIとしての顔を見せ始めます。そこがAIの中でもすごくゲームに特化している部分ですね。

── つまり空気を読んだ接待プレイができるということですね。そのさじ加減のコントロールは、どうやっているのでしょうか?

上段:戦闘シーンでは、仲間が敵へのとどめを横取りしないように、仲間の攻撃ではあまりとどめを刺さないような設定になっています。あと、プレイヤーが相手している敵にはなるべく近づかず、戦いの邪魔をしないよう、仲間のキャラクターAIが認識しています。

三宅:プレイヤーとAIのやり取りがあるゲームはたくさんありますが、『FF15』のように同じAIたちとずっと一緒に旅をするゲームはほとんどないです。というのも、仲間のキャラクターAIが知性を持っているように見せるのは、敵のAIよりも格段に難しい。敵は戦闘で倒されるまでの短時間だけ知能を持っているように振る舞えばいいんですが、仲間はゲームの最初から最後まで、何十時間もずっと一緒にいます。また、背中を預ける存在でもあるので、プレイヤーが求める知能の水準も高くなるわけです。『FF15』の開発では、そこにチャレンジするために、AIの開発にかなりのリソースが集約されました。

監督のメタAIが指示し、役者のキャラクターAIが判断する

ff15_jordan
Photo: 大塚敬太

上段:実際に『FF15』でAIをどう使っているのか、例をいくつかお見せします。

side10_11
左:AIが動作している状態。画面中央にいるプレイヤーキャラが近づくと、奥の3人は独自に判断して道を空けてくれます。
右:AIをOFFにした状態。通路の奥で棒立ちになっており、近づいてもびくとも動かず通路を塞いでしまっています。
Image: ©2016 SQUARE ENIX CO., LTD. All Rights Reserved. MAIN CHARACTER DESIGN: TETSUYA NOMURA

上段:ゲームには、シナリオの進行の都合でキャラクターのAIをスイッチOFFして、あらかじめ設定した動きをさせたい場面がたくさんありますが、OFFしてしまうと問題も起きます。たとえば、狭い道で仲間のAIを止めると、動きの固まった仲間が邪魔になって通れません。こういう時は、レベルAIというメタAIが「このへんにいてね」とキャラクターAIに指示する=キャラクターAIのフェーズを「待機」モードにする、という形で解決しています。

── なるほど。「このへんにいて」というのがメタAIの指示で、その場にとどまりつつもプレイヤーに道を譲ってくれるのは、個別のキャラクターAIの判断なんですね。

上段:そうです。バトル中もメタAIが仕事をしています。プレイヤーがピンチになった時、仲間のうち誰か1人が助けに来るのですが、この時メタAIが「じゃあ、プロンプトが助けに行け」という命令を出しています。このメタAIがいないと、全員が個別に判断した結果、全員が一斉にプレイヤーを助けに来てしまいます。

三宅:複数人がいっせいに助けて回復がかぶっちゃう、なんていうのはオンラインRPGなどでたまにみる光景なので、リアルといえばリアルですけどね(笑)。でもAIがやるとちょっとおバカに見えてしまう。そこでメタAIにチームワークを担当させています。

ff15_talk
Image: ©2016 SQUARE ENIX CO., LTD. All Rights Reserved. MAIN CHARACTER DESIGN: TETSUYA NOMURA

上段:こちらは会話のシーンです。デバッグ用なので記号が出ていますね。キャラクターの横に見えている青い丸が、「今この人が話しているから、こっちを見てくださいね」という印です。

── セリフと一緒に動きの指示も出しているということですね。

上段:そうですね。脚本AIが指示する内容は、「今はあなたが話者だよ」とか「この人に注目してください」「このセリフをしゃべってください」ということなんですけど、それを受け取ったキャラクターAIが「今走っているから、走りながら話す演技をしよう」と自分で判断します。

ゲームは未来のAIを開発する実験場にもなっている

── ゲームで開発されたAIたちは、ゲーム以外にも応用できるものなのでしょうか? できるとしたら、どのような形が考えられますか?

三宅実はゲームのAIは、ロボットの技術がベースになっているものが多いんです。センサーで環境を認識して意志決定をするアーキテクチャは、もともとロボット技術者が作りました。でも今はちょっと逆転現象が起きつつあって、ゲームで培った技術を現実のロボットに応用するという取り組みがされつつあります。

先ほどちょっと名前が出たビヘイビア・ツリーは、『Halo 2』(2004年、マイクロソフト)というゲームで開発された技術ですが、これが現在ロボット開発に使われていたりするんですね。メタAIも、もともとはロボカップ(技術開発のためのロボットを使った競技大会。サッカーなどの種目で競う)でコートの上からサッカーチームを監視するAIから来ています。でも、今は逆にメタAIをリアルの世界でサービスに応用したいというお話が、ゲーム業界以外の企業から来ます。たとえば、デパートのフロントですね。ロボットにサービスを提供させる時、上から見ているAIが「このお客さんは別に迷っていないのでスルーでいい。あのお客さんはきょろきょろしているから、3番のロボットが行って道案内をしてこい」と指示をするイメージです。

──ゲームAIがロボット発祥というのは始めて知りました! ゲームAIを現実に持ってくるとき、課題などはあるのでしょうか?

上段:現実世界との一番の違いは、ゲームの場合、世界のいろんな情報がすぐに取れちゃうんですね。世界のすべてがデータ化されているので、メタAIは世界をほぼ完璧に把握できます。いっぽう現実世界だと、そう簡単に情報を拾えないので、その壁をどう越えるかがハードルだと思います。逆にそこさえ越えられれば、ロボット間のコミュニケーションなども、ロボットの上にいるメタAIが指示してくれればよいので、いろんな応用が利くと思います。

白神:僕は違う視点から1つ。仮にゲーム内と同じように情報を得られる空間が現実にあって、AIが自由に動き回れるとしても、個別のAIは生きる目的を自分から見いだすことはできないのではないか?と思っています。なので、メタAIがAIたちに目的を与えることができれば、その限られた枠の中で最適な行動を取らせることで、AIを現実世界になじませられる可能性があると思っています。

三宅:リアルタイムでインタラクティブな身体を持てるAIって、ロボットとゲームキャラくらいではないしょうか。ゲームは、身体をバーチャル空間でシミュレーションしているわけです。ロボットの研究はハードウェアの開発がすごく大変なので、頭脳の部分で思い切ったことはできていませんでした。お茶をくんで持っていくだけでも大変ですから。一方、ゲームの中のAIたちは、難しいアクションもできるので、いわば仮想空間での巨大なAIの実験所みたいになっているわけです。

これから、ゲーム内のシミュレーションで培った技術を現実に移転する例が出てくるかもしれません。まだ私たちから売り込みに行くことはありませんが、コラボレーションの機会があれば、ぜひチャレンジしたいと思っています。


Image: スクウェア・エニックス ©2016 SQUARE ENIX CO., LTD. All Rights Reserved. MAIN CHARACTER DESIGN: TETSUYA NOMURA
Photo: 大塚敬太
Source:FINAL FANTASY XV, 人工知能の作り方 ――「おもしろい」ゲームAIはいかにして動くのか

(高橋ミレイ)

PlayStationは株式会社ソニー・インタラクティブエンタテインメントの商標または登録商標です。
HALOはMicrosoft Corporationの商標または登録商標です。
その他掲載されている会社名、商品名は、各社の商標または登録商標です。

いつかの未来じゃなく2018年のいま、AIが私たちに何をしてくれているのか、いまのAIを見てみましょう。

    あわせて読みたい

    powered by