【CEDEC 2010】『サカつく』のAIの謎が明かされる | GameBusiness.jp

【CEDEC 2010】『サカつく』のAIの謎が明かされる

『サカつくDS ワールドチャレンジ2010』のAIはどのように動いているのでしょうか。

その他 その他
『サカつくDS ワールドチャレンジ2010』のAIはどのように動いているのでしょうか。
  • 『サカつくDS ワールドチャレンジ2010』のAIはどのように動いているのでしょうか。
  • 『サカつくDS ワールドチャレンジ2010』のAIはどのように動いているのでしょうか。
  • 『サカつくDS ワールドチャレンジ2010』のAIはどのように動いているのでしょうか。
  • 『サカつくDS ワールドチャレンジ2010』のAIはどのように動いているのでしょうか。
  • 『サカつくDS ワールドチャレンジ2010』のAIはどのように動いているのでしょうか。
  • 『サカつくDS ワールドチャレンジ2010』のAIはどのように動いているのでしょうか。
  • 『サカつくDS ワールドチャレンジ2010』のAIはどのように動いているのでしょうか。
  • 『サカつくDS ワールドチャレンジ2010』のAIはどのように動いているのでしょうか。
『サカつくDS ワールドチャレンジ2010』のAIはどのように動いているのでしょうか。

CEDEC2010では「「サカつく」のサッカー試合AIシステム」と題した講演が行われました。講師は株式会社セガ 第一CS研究開発部 リードプログラマである安藤 毅氏。サッカーゲームのAIを手がけてきた氏が『サカつくDS ワールドチャレンジ2010』のAIの秘密を公開します。

『サカつく』とは『プロサッカークラブをつくろう!』の略で、サッカーチームを育成するシミュレーション。試合は「育成結果を確認する場」であり「操作の優劣によって結果が左右されてはならない」といいます。「試合シミュレータの納得感」「サッカーらしいスコア」「強いチームの勝率が高い」といったことが求められますが、これを実現するには様々な方法が試みられてきました。

■完全オーサリング方式

完全オーサリング方式


初代作〜『Jリーグ プロサッカークラブをつくろう!'04』、『Jリーグ プロサッカークラブをつくろう!アドバンス』『Jリーグ プロサッカークラブをつくろう!6 Pride of J』などで使われている方式。

予めオーサリング済みのシーンをたくさん用意し、試合結果にあわせて選択するというもので、人間らしい動きや複数人が絡むモーション、優れた演出のシーンが作れるものの、同じシーンばかり再生されるため、展開が読めてしまうという欠点があったといいます。

当初はシーンのバリエーションを増やして対応したものの、シーンを作る手間が肥大化したことで転換が図られました。

■完全リアルタイム方式

完全リアルタイム方式


『プロサッカークラブをつくろう! ヨーロッパチャンピオンシップ』『Jリーグ プロサッカークラブをつくろう!5』で使われた方式。アクションゲーム同様のアプローチで試合シーンを作ります。

自由度の高いシーン作りが可能で、先の読めないサッカーの醍醐味を演出するのにもってこい。一方でチームのパラメータから試合結果を生成するまでの間に物理挙動の計算が入るため、試合のバランス調整が困難となり、処理速度の向上にも限界が見られたそうです。

■折衷方式

『サカつくDS タッチandダイレクト』『サカつくDS ワールドチャレンジ2010』で使われた方式。前述した方式を組み合わせており、今回の講義の題材となります。

■「どうせなら球際だけでも美しく」

ニンテンドーDSの『サカつく』は「フォーメーションを変える」「チームスキルを使う」などユーザーの介入が重視されており、アクション性が高い作りとなっています。

ほぼリアルタイムなため、選手全員を賢く動かすことは困難。「どうせなら球際だけでも美しく」という発想から生まれたのが“弾際だけオーサリング”。ボールを持つ選手及び最小限の選手のみで小さなシーンを作り、他の選手は最低限の計算で済ませることで負荷の軽減と見栄え良い画面を両立します。

■「プレイセット」と「試合ヒストリ構造体」

プレイセットという概念プレイセットとは


この方式では「あるプレーから分岐しうるシーンのセット」を「プレイセット」と呼び、大成功〜大失敗まで4パターンのシーンで構成されています。

「プレイセット」の選択権はオフェンス選手のみに与えられ、「プレイセット選択AI」がプレーの種別と選手パラメータから評価点を生成、ルーレット方式でどの行動を取るかを選びます(評価点が高いものほど選ばれやすい)。

プレーに関連する選手のパラメータにより結果が決定され、「再生するシーン」「再生位置の方向の確定」「再生開始タイミング決定」といった状況が定まります。

他の選手は「目標地点」「使用するモーション」といった最低限の部分のみが計算され(誰もキープしていないボールも同様)、これらの結果は「試合ヒストリ構造体」と呼ばれる構造体に記録、「試合ヒストリバッファ」にしまいます。

あとは「試合ヒストリバッファ」から現在時刻の試合内容を再生することでゲーム画面が生まれます。

シーンの登場人物、そして結果の分岐数を限定したことでシーン数は1/10程度に削減され、大幅に手間が減りました。また、試合結果のコントロールもしやすくなり、AIの状況判断がボール周辺の選手に限定されることで実行速度もアップ。当初の目標は見事に達成されました。

■思わぬ副産物、今後の展望

結果ヒストリ構造体


「試合ヒストリ構造体」には試合中に起こったあらゆる出来事が記録されているため、バグが起こった際の状況再現が容易になり、バグが発生する瞬間を特定する手間が減りました。

また、超高速で試合を繰り返せるので、統計的なバランス調整が容易になるといった副産物も生まれました。

安藤氏は折衷方式を「『サカつく』向けで欠点が少ない」と評価。「試合ヒストリ構造体」は『サカつく』だけでなく、パーティ型アクションRPGやバトルロイヤルのシミュレーション、身体の複数パーツを非同期に使う格闘ゲームなど、他ジャンルにも応用できそうだ、と今後の展望を語りました。
《水口真》

この記事の感想は?

  • いいね
  • 大好き
  • 驚いた
  • つまらない
  • かなしい
【注目の記事】[PR]

関連ニュース

特集

人気ニュースランキングや特集をお届け…メルマガ会員はこちら