大和但馬屋日記

はてなダイアリーからの移行中

Forza5のAI「ドライバター」について

yms-zun2014-03-09

d:id:yms-zun:20140304のコメントでid:skobaさんに頂いた情報から。
伊集院光氏が「Forza5」に興味を示してゐるとのことで、その目の付け処が流石だなと感心した。

伝え聞いた機能としては、レースゲームやった時に、「カーブがヘタ」だったり、「ブレーキのタイミングが遅い」とか、「スピードを出す派、マメにブレーキかける派」みたいなことを蓄積していくんですよ。
アバター的な、"ドライバター"っていう架空の俺の乗ってるクルマを着くってくれるらしいの。それをネットに残したままスイッチ切っておくと、架空の俺が、他の人の架空のクルマとレースしてて、成績を残しておいたりするらしいんだけど。これをやってみたくて。

口と頭の悪い人はかういふのを見て「ステマ乙」とか言ふんだらうけど、この人ちやんと XBox Oneの入手の難しさについて触れてるからね。公式に入手できないものについてステマもヘつたくれもないし、MSJにそんな甲斐性がある訣もない。まあそれはともかく。
「Forza5」を非公式に入手した自分が遊んでゐてー番感じるのが、まさにこの「Drivatar」の面白さなのだ。
「Drivatar」についての前提知識は、この記事に詳しい。

Forza2」のDriavatrは自己学習型AIに発展しており、AI理論や機械推論の分野で定番のベイズ理論ベースの学習モデルを実装している。ベイズ学習モデルは大ざっぱに言うと「何が起こってから何が起こる」という連続的な確率事象に対して、事前に持っている確率データと、それまでに蓄積してきた知識モデルとを比較して、次に起こる事象を予測していくというもの。ベイズ学習モデルのAIの品質のポイントは「事前に持っておく確率データの品質」、「知識モデルの構築の品質」、「推論の品質」といった部分にある。
Forza2」チーム内では今作のDrivatarの学習AIはかなり満足しているらしく、制作者自身も予想しなかった、人間ぽいドライビングをするという。例えば、「Forza2」チーム内の実験では、プレーヤー車がAI車の後ろにぴったりとついて、スリップストリームから抜いていくことを繰り返してやるとと、これを嫌がる学習をして、ややコーナー手前で、フェイクブレーキを踏んだりするようになったという。これは面白い。
AIは1種類だとつまらないので「Forza2」では、事前にライバルとして登場する敵車ごとに「個性」という形で「揺らぎ」のパラメータを与えている。それは「スキル」、「積極性」、「慎重性」といったもの。「スキル」はどのくらい車やコースに慣れているかという運転の正確性に関わるパラメータ、「積極性」は群集状態となったときにライバルを抜いていこうとする意志の強さのパラメータ、「慎重性」は外界の状況変化に対してどのくらい影響されるか(どれくらい自分のペースを守れるか)のパラメータとなっていて、それらの度合いの組み合わせでドライバープロファイルとして実装されているという。

これは今となつては懐かしい、七年も前の「Forza2」に関する記事だ。「Forza4」までのDrivatarはある程度の個性を備へた自己学習型AIであり、コース上に現れるのはコースデータのローディング中に演算されて得た結果の反映であつた。彼らが獲得した個性は、「トップに立つと手がつけられないRossi」「実はRossiより手強い気がするMullar」「みんなのアイドルItoちゃん*1」等といつた形で存在してゐた。さらに作を追ふ毎に「低難度だとプレッシャー負けしてコースアウトする(3以降)」「やたらアグレッシブなラインをとる(4)」など全体の傾向も変化してきた。ただちよつと、「4」のAIは行儀が悪すぎたね。ニュルGPコースの第一セクターなんかは正直不愉快な感じだつた。
レースを演出しようとしたらさうなるのも仕方ないのかなと少々進化に行詰りを感じつつもあったところで、そんなAIが「5」になつてどう変つたかといふのが、まさに伊集院氏が惹かれた部分にある訣だ。
先の解説をもう一度引用するが

AIは1種類だとつまらないので「Forza2」では、事前にライバルとして登場する敵車ごとに「個性」という形で「揺らぎ」のパラメータを与えている。それは「スキル」、「積極性」、「慎重性」といったもの。「スキル」はどのくらい車やコースに慣れているかという運転の正確性に関わるパラメータ、「積極性」は群集状態となったときにライバルを抜いていこうとする意志の強さのパラメータ、「慎重性」は外界の状況変化に対してどのくらい影響されるか(どれくらい自分のペースを守れるか)のパラメータとなっていて、それらの度合いの組み合わせでドライバープロファイルとして実装されているという。

ここでいふ「揺らぎ」のパラメータの部分に伊集院氏の言ふところのレースゲームやった時に、「カーブがヘタ」だったり、「ブレーキのタイミングが遅い」とか、「スピードを出す派、マメにブレーキかける派」みたいなことを蓄積してクラウドサーバ上にデータべースとして持つておいて、自分以外のプレイヤーが遊んでゐる時に例へば「仮想空間上の俺(tajimaya)」として出現すると、まあさういふ具合。
これがね、よく出来てるんですわ。
一人用のキャリアモードに出てくるAIカーの名前はすべてどこかの誰かのゲーマータグになつてゐて、彼らが各々のプレイで蓄積した「個性」を備へて走つてゐる。これはトレースデータによるゴーストの再生ではないから、何度やり直しても全く同じ走りにはならない。それでゐて、「やたら幅寄せしてくるロードスター」とか、「立上りでなぜかブしーキを踏むランエボ」とかいつた形でシリーズを進める毎に気になる奴が出てくる。といふことは、アメリカあたりの誰かのXbox Oneの上では「tajimaya」の名前入りのDrivatarがきつと迷惑をかけてゐるに違ひないのだ。

コーナー入口でブレーキのタイミングが違つて追突した時でも、従来なら「AIなんて所詮こんなもんか」で済ませてゐたところを、ついうつかり「この下手糞!」と声に出して言つてしまふこともある。一人用モードなのにオンラインマルチで走つてゐる様な感覚で、しかしマルチで罵つたりしたらトラブルの元にもなりかねない。一人用だからそんな気兼は要らないし、クラッシュしたらやり直しもできる。かといつて雑に走るとそれが他所のプレイヤーに迷惑をかけることにもなる。いや迷惑とかの御為ごかしではなく、格好悪くて恥かしい。これは本当に面白くて、この一点だけでもう「4」以前には戻れないな、と俺は思つてゐる。
Xbox Oneは積極的なクラウド利用がセールストークの一つになつてゐて、しかし別にそれが本体性能を引上げてくれる訣ではないから既にバズワード化しつつあるといふ風潮にもなつてゐるのだけれど、少なくとも「Forza5」においてはAIの個性としてちやんとそれが活きてゐると実感できる。
で、さういふカタログスペックでは表はせない「面白さ」について鼻を利かせてゐる人が居るといふのは、まだまだ世の中面白い。