ゲームAI

こそっとゲーム開発者でもないのに『ゲームAI連続セミナー「ゲームAIを読み解く」第3回』に参加してきました。

ゲームAIというのは以前からかなり興味を持っていて、
「実際には反射行動だが自立行動しているように見せる」
から
「完全に自立判断し自立行動する」
あたりまで色んな実装の可能性が存在すると思う。

以前は処理時間の関係上AIの思考時間というのは限られていたし、
表現も難しかったところがあるので軽視されていたところではあるかなと思うけれど、
表現方法が多彩になり処理時間にもそれなりの余裕がある現在ならばAIを組み込む事は面白い事だろうな、
と思わされる。


で、聴講に関しては「Chrome Hounds におけるチームAI」。
Chrome Houndsというのはフロムソフトウェア社のストラテジゲーム。「クロムハウンズ(Xbox360; SEGA Corporation / FromNetworks, Inc. / FromSoftware, Inc.)」
目玉なお話は「協調」。すなわちチーム戦においてAIが「個」ではなく「集団」としての知能を発揮できるか?
ということ。


基本的にチーム戦のゲームなのだが、何も考えないで個々が動くと各個撃破されて帰ってくるだけなので、どうしたらいいか? ということで実装されたもの。


で、挙げられた三つの技術。

  • チームAI……神の見えざる手によって個々に指示を与える。プレイヤ位置に近いが、プレイヤを模倣するわけではなく、裏のシステム的な情報、パラメタを利用し効率よく全体を操作する。
  • マルチエージェント……個々がそれなりの自立判断を持ち、各個役割を選択することでチーム内におけるポジショニング及び適時行動を取捨する。加えて「互いに情報をやりとりし連携」をとろうともする。
  • 群知能……反射的な知能だけを持ち、個の役割は既に定まっていてそれを己の判断によって変更できたりはしない。が、その反射的な知能の相互連携によって、組み合わせによっては違った役割を果たすこともある程度の知能。


との認識をしてみた。


頭が良すぎるAIよりも、どれだけらしく見せるか、がゲームの焦点なのかもなと思うところはある。
チートをしまくれば人間を完膚無きところまで叩きつぶせるシステムは簡単に構築できる。
正々堂々戦おうと思考すれば「単純なゲームでない限り」AIはまだ人間には勝てない。


AIの実装は昔から考えているところではあるけれども、うまくいかないなぁというところがある。
例えば「血縁関係」「因縁関係」などをAIに組み込んで各個エージェントの動きに取り入れたりできるんじゃないかなぁとか。
数値やフラグとしてそうしたものを築く事はできるけれども、そうではなくて、
自然に関係性が構築されていくAIとか。まぁ、夢想ですけど。


グループワークはスーパーマリオを使ったAIの表現の模索。
クリボー、ノコノコ、パタパタ、パックンフラワーを用いてどう連携させて、どう思考させていくか、を皆で話しあうといった内容。


まずは意見や認識の摺り合わせから始まって、
個々の性能をいじる(猛スピードで走るようになる、とか、炎を吐くようになる、とか、物量で攻める、とか)をすると幾らでもマリオを殺せるので、個々の性能を生かした感じで考えることに。


結果、伝達ツリーを構築するという話になった。

           クリボーA
     パックンA ノコノコA
           パタパタA
          
           クリボーB
チームAI パックンB ノコノコB
           パタパタB

           クリボーC
     パックンC ノコノコC
           パタパタC

パックンが上位層にいるのは「移動ができない」が「ファイヤマリオ以外には倒される危険性が殆どない」ため。(土管の上にいるノコノコを蹴ってあてれば死ぬけど)

なので、パックンが各種エリアの管理、保持を行い、マリオが出現した、突破した、といった状況に合わせてそのエリア内にいるキャラを適時移動させる。
各個反射的な能力を持つキャラも個々の連携をとり、ただうろうろするだけでなく、
クリボーがおとりとして配されているとするなら、ノコノコやパタパタは少し手前で待ち伏せ通知がきたら襲いかかる、といった感じで。
パタパタの上にノコノコがのる、とかできると良いんですが、それはやり過ぎ感も。


加えてチームAIがさらに大きな集団としての知を司り、最終的なバランシングを行う、といった感じ。
他のグループワークでも色々な意見がでていて、面白いなと思った。
こうした意見のやりとりはゲームっていうのは何かモチーフがあっても全く別のものができあがってしまう楽しみがあるなと思わされるところ。


AIはまだまだゲーム分野には取り入れられていないけれど、
なかなか面白い発想ではあると思う。
シューティングやアクションといったゲームは本来人間の手によってバランシングされてきたけれども、
AIが発達することによって、
「人によっても、始めるたびによっても攻略法が変わってくる未知のゲーム」
なんてものができるかもしれないからだ。


人間の相手をするだけではないAIというのも楽しみな路線ではある。