現地参加せずに、ニコ生の放送観た纏め。 間違ってたらごめんなさい 資料とか他の人の纏めとか †複数タイトルで使われた柔軟性の高いAIエンジン †BDIモデル、PID制御とその辺りを理解しきれなかった……
AIの流れ †
Perception(認識) †
Action(意思をキャラクターに反映) 意図によってアニメーションを変化させる 攻撃するための移動。カバーポイントに着く前から狙う動作に入る。 隠れるための移動。カバーポイントに着く前から隠れる動作に入る。 Steering キャラクターの移動を担当するモジュール ・人 Pathfinding Path Following Collision Avoidance(ORCA based) ・乗り物 車線変更、多数の敵の制御。手付けデータの流し込みでは限界。 ↓ AI制御。物理駆動。 コースデータ スプライン、スプラインの幅でコースデータを表現 コントロール 目標はレベルデザイナーが設定 PID制御 P:比例動作。目標値と現在値の差に比例した動作 I:積分動作。差の累積値(積分)に比例した制御 D:微分動作。差おn変化量(微分)に比例した制御 目標値(速度、角度) -> LPF +-> P -+-> Vehicle -> 出力値(速度、角度) +-> I -| +-> D -| パラメーター調整が重要 適当なパラメーターだとふらふらする。 パラメーター調整方法 限界感度法 ステップ応答法。最適値というより近似値 -> ステップ応答法で求めた値をベースに、焼きなまし法で求める 簡単なテストコースでパラメーターを調整 -> 目標値と実際の値をエラー値として保存 課題 焼なまし法による調整では何百周、何千周もしなければいけない。 -> キャラクタAIの学習利用は、他の処理を省いて高速で動く環境有るのがベスト ・課題 AIデザイナにもAI技術の知識が必要
Brain(意思決定) †
Action(意思をキャラクターに反映) †
目標値(速度、角度) -> LPF +-> P -+-> Vehicle -> 出力値(速度、角度) +-> I -| +-> D -| ・パラメーター調整が重要 適当なパラメーターだとふらふらする。 ・パラメーター調整方法 限界感度法 ステップ応答法。最適値というより近似値 -> ステップ応答法で求めた値をベースに、焼きなまし法で求める 簡単なテストコースでパラメーターを調整 -> 目標値と実際の値をエラー値として保存 課題 焼なまし法による調整では何百周、何千周もしなければいけない。 -> キャラクタAIの学習利用は、他の処理を省いて高速で動く環境有るのがベスト 課題 †AIデザイナにもAI技術の知識が必要 FINAL FANTASY XV -EPISODE DUSCAE- におけるキャラクターAIの意思決定システム †イントロダクション †
意思決定入門 †「環境」の中に「身体」 「知能」が身体を環境の中で動作させる 入力(センサー) -> 身体 -> 行動(アウトプット) 知能の内部世界 <-> 環境世界 エージェント・アーキテクチャ。知能と環境をわけて考える
ステートマシンの堅実な制御と、ビヘイビアツリーの適応的な行動の生成、両方の長所を生かしたい Luminous AIの全体設計 †
AI Graph Editorの実装 †ツール設計の課題 †
ゲーム組み込みの要件 †
ゲーム内への応用実例 †NPC †
仲間 †
ニフル兵 †
モンスター †
次世代機で開発規模が大きくなってきた。 コストが増大していくのでAIはクオリティと共に効率化に力を入れている。 |