GDC2009 ゲームAI分野オーバービュー
三宅 陽一郎（株式会社 フロム・ソフトウェア）
y.m.4160@gmail.com

2009.3.31

Contact Information
Youichiro Miyake• Mail：y.m.4160@gmail.com• Twitter: @miyayou• Blog：http://blogai.igda.jp• LinkedIn: http://www.linkedin.com/in/miyayou• Facebook： http://www.facebook.com/youichiro.miyake

２００９年のGDCとは何だったか？
２００８年のGDCでは、次世代機の最初の主要タイトルの成果が発表された。
２００９年のGDCは、これからの第２期のための蠢動。
① 新しい技術を整理して次の開発へ活用する準備をする。
② 古い技術をどうブラッシュアップして行くかを検討する。
次世代機（（PS3,Xbox260,Wii,）＋PC の時代
次世代機
第１期

第２期

第３期

メニーコア
＋
汎用アーキテクト
汎用アーキテクトの時代

２００５２００８/２００９

２０１１２０１３

miyayou@GDC2009
3/23
AI Summit Introduction
and Welcome#define Game AI

3/24
Breaking
the Cookie-Cutter:
Modeling Individual
Personality,Mood, and Emotion
in Characters

3/25

3/26

3/27

基調講演

On the War Path:
Tactical AI
in DAWN OF WAR 2

Procedural andMulti-Core Techniques
To Take Visuals to the
Next Level

Preparing for the Future:
As a Professional
When Good AI Goes Bad:
AuthoringGame AI Developer,Tools, Techniques,
Runtime Animation
Artificial Intelligence SIG
What Should I Know?
and Strategies
and Character Physics（Panel））
for Testingwith Morpheme 2.0
and Debugging AI
Animatingin a Complex World:
From
State-Based Scripting
From the Ground Up:
Integrating
COUNTER-STRIKE
in UNCHARTED:
Threaded AI
AI Architecture
AI and Animation
to LEFT 4 DEAD:
DRAKE’S FORTUNEFor The Win!
and Design Patterns
Creating Replayable
and UNCHARTED 2:
2008 AI Postmortems:
Cooperative Experiences
AMONG THIEVESSPORE,Creating a Great MMO:The Photoshop of AI:
Real-Time Deformation
GEARS OF WAR 2,
How
Mythic Entertainment
Debating theand Fracture –and BIOSHOCK
SolvedProduction Challenges Lionhead Experiments
Structure vs Style
Finite Element Simulation(Panel)using Autodesk Kynapse
Revealed
Decomposition of Game AI
and its Use
Middleware and 3ds Max
AI and Designers:
in STAR WARS:
On WARHAMMER ONLINE:
Mind the Gap
THE FORCE UNLEASHED AGE OF RECKONING
Beyond Behavior:(Panel)Player’s Expression:
An Introduction toCharacter Pathfinding
The Level Design
Knowledge Representation
And Animation:
TowardHALO WARS:Structure
Solving Pathfinding
How to Make Them
The Terrain of Next-Gen
Behind FAR CRY 2
Parallelism in AI:
Work Together
and Beyond?
Characters Welcome: Multithreading Strategies
andOpportunities
forNext StepsAI PanelAIGame
Towards Human AI(Panel) Multi-core Architectures
Procedural&Discussio
lectureDesignn

基調講演miyayou@GDC2009
3/23
AI Summit Introduction
and Welcome#define Game AI

3/24
Breaking
the Cookie-Cutter:
Modeling Individual
Personality,Mood, and Emotion
in Characters

AI Summit

3/25

3/26

3/27

基調講演

On the War Path:
Tactical AI
in DAWN OF WAR 2

Procedural andMulti-Core Techniques
To Take Visuals to the
Next Level

Preparing for the Future:
As a Professional
When Good AI Goes Bad:
AuthoringGame AI Developer,Tools, Techniques,
Runtime Animation
Artificial Intelligence SIG
What Should I Know?
and Strategiesand Character Physics（Panel））
for Testingwith Morpheme 2.0and Debugging AI
Animatingin a Complex World:
From
State-Based Scripting
From the Ground Up:
Integrating
COUNTER-STRIKE
in UNCHARTED:
Threaded AI
AI Architecture
AI and Animation
to LEFT 4 DEAD:
DRAKE’S FORTUNEFor The Win!
and Design Patterns
Creating Replayable
and UNCHARTED 2:
2008 AI Postmortems:
Cooperative Experiences
AMONG THIEVESSPORE,Creating a Great MMO:The Photoshop of AI:
Real-Time Deformation
GEARS OF WAR 2,
How
Mythic Entertainment
Debating theand Fracture –and BIOSHOCK
SolvedProduction Challenges Lionhead Experiments
Structure vs StyleFinite Element Simulation(Panel)using Autodesk Kynapse
Revealed
Decomposition of Game AI
and its Use
Middleware and 3ds Max
AI and Designers:
in STAR WARS:
On WARHAMMER ONLINE:
Mind the Gap
THE FORCE UNLEASHED AGE OF RECKONING
Beyond Behavior:(Panel)Player’s Expression:
An Introduction toCharacter Pathfinding
The Level Design
Knowledge Representation
And Animation:
TowardHALO WARS:Structure
Solving Pathfinding
How to Make Them
The Terrain of Next-Gen
Behind FAR CRY 2
Parallelism in AI:
Work Together
and Beyond?
Characters Welcome: Multithreading Strategies
andOpportunitiesforNext StepsAI PanelAI
GameTowards Human AI(Panel) Multi-core Architectures
Procedural&Discussio
lectureDesignn基調講演

miyayou@GDC2009
3/23
AI Summit Introductionand Welcome#define Game AI

3/24
Breaking
the Cookie-Cutter:
Modeling Individual
Personality,
Mood, and Emotion
in Characters

3/25

3/26

3/27

基調講演

On the War Path:
DAWN
OFTactical AI
in DAWN
OF WAR
WAR
2 2

Procedural andMulti-Core Techniques
To Take Visuals to the
Next Level

AI Summit Morpheme2.0 基調講演

Preparing for the Future:
As a Professional
When Good AI Goes Bad:
AuthoringGame AI Developer,Tools, Techniques,Runtime Animation
Artificial Intelligence SIG
What Should I Know?
and Strategies
and Character Physics（Panel））
for Testingwith Morpheme 2.0
and Debugging AIAnimating
in a Complex World:
From
State-Based Scripting
From the Ground Up:
Integrating
COUNTER-STRIKE
in UNCHARTED:
Threaded AI
AI Architecture
AI and Animation
to LEFT 4 DEAD:
DRAKE’S FORTUNEFor The Win!
and Design Patterns
Creating Replayable
and UNCHARTED 2:
2008 AI Postmortems:
Cooperative Experiences
AMONG THIEVESSPORE,Creating a Great MMO:The Photoshop of AI:
Real-Time Deformation
GEARSOFOF WAR
2,GEAR
WAR2,How
Mythic EntertainmentDebating theand Fracture –and BIOSHOCK
SolvedProduction Challenges Lionhead Experiments
Structure vs Style
Finite Element Simulation(Panel)using Autodesk Kynapse
Revealed
Decomposition of Game AIand its Use
Middleware and 3ds Max
AI and Designers:
in STAR WARS:
On WARHAMMER ONLINE:
Mind the Gap
THE FORCE UNLEASHED AGE OF RECKONING
Beyond Behavior:(Panel)Player’s Expression:
An Introduction toCharacter Pathfinding
The Level Design
Knowledge Representation
And Animation:
TowardHALO WARS:StructureSolving Pathfinding
How to Make Them
The Terrain of Next-Gen
Behind FAR CRY 2Parallelism in AI:
Work Together
and Beyond?
Characters Welcome: Multithreading Strategies
andOpportunities
forNext StepsAI PanelAI
GameTowards Human AI(Panel) Multi-core Architectures
Procedural&Discussio
lectureDesignn

SPORE,LEFT 4DEAD

BIOSHOCK

KynapseGTA 4

UNCHARTED:
DEAKESFORTUNEmiyayou@GDC2009
3/23
AI Summit Introduction
and Welcome#define Game AI

3/24

3/25

Breaking
the Cookie-Cutter:
Modeling Individual
Personality,Mood, and Emotion
in Characters

基調講演

3/26
3/27
Pathfinding
Procedural andOn the War Path:
Multi-Core Techniques
TacticalAIAnd
To Take Visuals to thein DAWN OF WAR 2
Next LevelAnimation

AI Summit Pathfinding
And基調講演

Preparing for the Future:
As a Professional
When Good AI Goes Bad:Authoring
Game AI Developer,Tools, Techniques,
Runtime Animation
Artificial Intelligence SIG
What Should I Know?
and Strategies
and Character Physics（Panel））
for Testingwith Morpheme 2.0
and Debugging AI
Animatingin a Complex World:
From
State-Based Scripting
From the Ground Up:
Integrating
COUNTER-STRIKE
in UNCHARTED:
Threaded AI
AI Architecture
AI and Animation
to LEFT 4 DEAD:
DRAKE’S FORTUNEFor The Win!
and Design Patterns
Creating Replayable
and UNCHARTED 2:2008 AI Postmortems:
Cooperative Experiences
AMONG THIEVESSPORE,Creating a Great MMO:The Photoshop of AI:
Real-Time Deformation
GEARS OF WAR 2,
How
Mythic Entertainment
Debating theand Fracture –and BIOSHOCK
SolvedProduction Challenges Lionhead Experiments
Structure vs Style
Finite Element Simulation(Panel)using Autodesk Kynapse
Revealed
Decomposition of Game AI
and its Use
Middleware and 3ds Max
AI and Designers:
in STAR WARS:
On WARHAMMER ONLINE:
Mind the Gap
THE FORCE UNLEASHED AGE OF RECKONING
Beyond Behavior:(Panel)Player’s Expression:
An Introduction toCharacter Pathfinding
The Level Design
Knowledge Representation
And Animation:
TowardHALO WARS:Structure
Solving Pathfinding
How to Make Them
The Terrain of Next-Gen
Behind FAR CRY 2
Parallelism in AI:
Work Together
and Beyond?
Characters Welcome: Multithreading Strategies
andOpportunities
for
Next StepsAI PanelAI
Game
Towards Human AI(Panel) Multi-core Architectures
Procedural&Discussio
lectureDesignnPathfinding
AndAnimation

Animation

Structure
Vs
Style

Parallelism
For AI

Pathfinding
AndParallelism Animation
For AI

Pathfinding
AndAnimation

2009年 GDC のゲームAIの動向
基本① キャラクター･アニメーションとゲームＡＩとの関係

・複雑なレベルデザインへの適応
・キャラクター・モデルとの適合・キャラクターの個性付け② 動的なパス検索③ ゲームＡＩの並列化による実装
アドバンス④ ゲームＡＩプログラマーとゲームデザイナーの連携（現段階では溝がある）⑤ ゲームＡＩのための統一的な「構造とスタイル」はあり得るか？ （structure vs style）

2009年 GDC のゲームAIの動向
基本① キャラクター･アニメーションとゲームＡＩとの関係

・複雑なレベルデザインへの適応
・キャラクター・モデルとの適合・キャラクターの個性付け② 動的なパス検索③ ゲームＡＩの並列化による実装
アドバンス④ ゲームＡＩプログラマーとゲームデザイナーの連携（現段階では溝がある）⑤ ゲームＡＩのための統一的な「構造とスタイル」はあり得るか？ （structure vs style）
ミドルウエア⑥ Morpheme, Kynapse など統合環境のミドルウェアの台頭

第１章「キャラクターの身体と知性」の問題を考える① キャラクター･アニメーションとゲームＡＩとの関係② 動的なパス検索⑥ Morpheme, Kynapse など統合環境のミドルウェアの台頭キャラクターAI
身体/アニメーション
自律型アニメーション
自律型
アニメーション

スクリプトによるスクリプトによるカスタムAI

自律型の自律型の知性

心/知性（意思決定）

手付けアニメーションの手付
けアニメーションの再生キャラクターAI
身体/アニメーション
自律型アニメーション
自律型
アニメーション

自律型AI
状況に応じた無限の変化

スクリプトによるスクリプト
によるカスタムAI

進化の進化の方向

自律型の自律型の知性

心/知性（意思決定）

カスタマイズAI（設定した分だけ動く）

手付け
アニメーションの手付けアニメーションの再生キャラクターAI
身体/アニメーション
自律型アニメーション
自律型
アニメーション

自律型AI
状況に応じた無限の変化

スクリプトによるスクリプト
によるカスタムAI

進化の進化の方向

自律型の自律型の知性

身体と知性を切り離して考えてはならない心/知性（意思決定）

カスタマイズAI（設定した分だけ動く）

手付け
アニメーションの手付
けアニメーションの再生キャラクターAI
身体/アニメーション
自律型アニメーション
自律型
アニメーション

自律型AI
状況に応じた無限の変化

スクリプトによるスクリプト
による進化の進化の方向
自律型の自律型の知性
カスタムAI 高度なAIには、高度なアニメーション

高度なアニメーションには高度な知性
心/知性（意思決定）

カスタマイズAI（設定した分だけ動く）

手付け
アニメーションの手付けアニメーションの再生

（例）走り高跳び

スタート地点から、① パスを見つける② 歩幅と足跡を想定する。
③ 走りながらイメージと現実の差異を微調整④ ジャンプ

本来、知性と身体は相互に作用しながら、行動を産み出す。

START

参考文献

How the Body Shapes the Way We Think:
A New View of Intelligence
Rodney Brooks (はしがき), Rolf Pfeifer (著), Josh Bongard (著), Simon Grand (寄稿), Shun Iwasaka (イラスト)

ゲームAIの通常の作り方

知性

身体
行動を指定

ゲームAIの通常の作り方

知性

身体

感覚

環境

エージェント・アーキテクチャー時間
ＮＰＣの知能部分

ＮＰＣから
ＮＰＣから見から見た認識

認識過程

意思決定機構

行動生成
過程

知識モデル
知識モデル化
モデル化 記憶と記憶と思考の思考の相互作用

記憶
内部状態

センサー

エフェクター

知覚する
知覚する

行動する行動する

知識表現・世界表現(ゲーム世界ゲーム世界の世界の特徴を特徴を抽出した抽出したデータしたデータのことデータのこと)

ゲーム世界

身体相互作用時間
CEDEC2007 三宅「三宅「エージェント・エージェント・アーキテクチャーからアーキテクチャーから作から作るキャラクターＡＩ
キャラクターＡＩ」
ＡＩ」http://www.igda.jp/modules/mydownloads/visit.php?cid=2&lid=78

何が変化したか？

知性

身体自律化
(autonomous behavior)
物理による自動変化(Physics)
環境との相互作用(Inverse Kinematics)

環境

3/23
Animatingin a Complex World:
Integrating
AI and Animation

100%自律制御の身体動作は可能か？
Alex J. Champandard①歩幅を考慮したパスの作成

ordersrequest handle
statushttp://aigamedev.com/

3/25
Authoring
Runtime Animation
and Character Physics
with Morpheme 2.0

環境とインタラクションしながらリアルタイム・アニメーション生成
NaturalMotion①FSM図による遷移図②アニメーション・ブレンドと比率の設定③衝突モデルのGUIによるカスタマイズ

http://www.naturalmotion.com/morpheme.htm

3/25
Character Pathfinding
And Animation:
How to Make Them
Work Together

アニメーションとパスファインディングの融合（試論）Pierre Pontevia, Senior Director of Product Development, Autodesk
Robert Lanciault, Senior Product Engineer, Autodesk

パラメトリックなモーションの生成スピードや向きを考慮したモーションの軌跡を想定したパスの生成

http://usa.autodesk.com/adsk/servlet/index?siteID=123112&id=12281405

3/25
Character Pathfinding
And Animation:
How to Make Them
Work Together

アニメーションとパスファインディングの融合（試論）Pierre Pontevia, Senior Director of Product Development, Autodesk
Robert Lanciault, Senior Product Engineer, Autodesk

Pathfinding→Path Smoothing→Dynamic Avoidance
デモムービー3/26

Creating a Great MMO:How Mythic Entertainment
Solved Production Challenges
using Autodesk Kynapse
Middleware and 3ds Max
On WARHAMMER ONLINE:AGE OF RECKONING

ミドルウェアによるキャラクター制御の解決

3/26
Creating a Great MMO:How Mythic Entertainment
Solved Production Challenges
using Autodesk Kynapse
Middleware and 3ds Max
On WARHAMMER ONLINE:AGE OF RECKONING

ミドルウェアによるキャラクター制御の解決

コリジョンモデルからのパスデータの自動生成

3/26

タイルベースによる群れAIの制御

On the War Path:
Tactical AI
in DAWN OF WAR 2① 空間的
他のAIが通るメッシュへ行かない② 時間的
他のAIが通ってから行く

複数のAIのパスの衝突の回避の仕方

DAWN OF WAR 2ののAIのの要件と要件とタイルベースパス

DAWN OF WAR 2ののAIのの要件と要件とタイルベースパス

複数の複数のユニット制御
ユニット制御と制御とタイルベースパス

単体ならスイスイと進む

複数のときは、サークルベースで衝突を避ける
また、オーバーラップと優先度から混在したAIを遠ざける複数の複数のユニット制御
ユニット制御と制御とタイルベースパス

デモムービー

第２章
ゲームの要求に答えるAI④ ゲームＡＩプログラマーとゲームデザイナーの連携（現段階では溝がある）⑤ ゲームＡＩのための統一的な「構造とスタイル」はあり得るか？ （structure vs style）

ゲームAIの持つアンビバレンス
デザイナーはゲームの全てを思い通りに制御したい。
しかし、普段ゲームデザインとして意識しないところは自動的に処理して欲しい。

ゲームデザイナー制御制御

自律型制御プログラム

しかし、普段意識しないところでも、ある場面では制御したくなることもあるので、その時に限り制御したい。

デザイナーの自由度と自律型プログラムの自由度
時間、場所の時間、場所の明確な明確な指定

決定的
スクリプト

FSM
（HFSM）From
COUNTER-STRIKE
to LEFT 4 DEAD:
Creating Replayable
Cooperative Experiences

時間、場所に時間、場所に柔軟に柔軟に反応

非決定的プランニング

Behavior Tree
State-Based Scripting
in UNCHARTED:DRAKE’S FORTUNE
and UNCHARTED 2:
AMONG THIEVES

ゲーム
デザイナー

From the Ground Up:
AI Architecture
and Design Patterns(Gran Theft Auto)

自律型
制御プログラムデザイナーの自由度と自律型プログラムの自由度
自律型制御プログラム

From
COUNTER-STRIKE
to LEFT 4 DEAD:
Creating Replayable
Cooperative Experiences

プロージャル計算による計算による

From the Ground Up:
AI Architecture
and Design Patterns(Gran Theft Auto)State-Based Scripting
in UNCHARTED:DRAKE’S FORTUNE
and UNCHARTED 2:
AMONG THIEVES

ゲーム
デザイナー

データドリブン

データによるデータによる決定的vs非決定的プロシージャル vs データドリブン
プロージャルFrom
COUNTER-STRIKE
to LEFT 4 DEAD:
Creating Replayable
Cooperative Experiences

From the Ground Up:
AI Architecture
and Design Patterns(Gran Theft Auto)

決定的

非決定的
State-Based Scripting
in UNCHARTED:DRAKE’S FORTUNE
and UNCHARTED 2:
AMONG THIEVES

データドリブン

3/27
State-Based Scripting
in UNCHARTED:DRAKE’S FORTUNE
and UNCHARTED 2:
AMONG THIEVES

オブジェクト指向言語でAIだけでなくゲーム全体をコントロール

ゲームオブジェクトや領域に張り付いたスクリプトUnrel Script vs Uncharted Script

Unreal はC++のオブジェクトという意味でオブジェクト指向
スクリプト

一連のタスクをつないで行くAIのエンカウントを指揮する

デモムービー

3/26
From
COUNTER-STRIKE
to LEFT 4 DEAD:
Creating Replayable
Cooperative Experiences

ゲームの流れを制御するAI（おそらく最高のメタAI）
たくさん記事がある（Left 4 Dead AI Directer）

Left 4 Dead

AIによってシングルとマルチプレイヤーゲームのメカ二クスを融合する

構築された非予測性

CounterStrike で見つけた緩急による面白さの生成

AI Director – ゲームの緩急を精密に操るメタAI

プレイヤーのインテシティー（緊張感）を計算→ ピーク時にモンスターを放つ！

3/24

From the Ground Up:
AI Architecture
and Design Patterns(Gran Theft Auto)

Gran Theft Auto 4 の日常的なAI

FSMは煩雑になるのでやめた

Behavior Trees を採用した

Behavior Tree と階層型AI
階層Behavior Tree からLong Termプランを決定

一つ一つをゴール指向的に実現する

実装はスタックベース

まとめアドバンス⑤ ゲームＡＩのための統一的な「構造とスタイル」はあり得るか？ （structure vs style）

マシン（プログラマ）デザイナー

CGでは、テクスチャーのついたポリゴンは、マシン（プログラマ）が操作する単位であり、またデザイナーがそこからグラフィックを作る単位であり、両者の共通する土台であると同時に、お互いに干渉せずに作り上げることができるゲームAIでもそのような単位が存在するだろうか？

第３章
これからのAIの実装 － 並列化③ ゲームＡＩの並列化による実装

3/24
Parallelism in AI:
Multithreading Strategies
and Opportunities forMulti-core Architectures

並列化実装の注意3/25
Threaded AI
For The Win!

Intel AIの並列化実装

データの分解FSMを想定（別にFSMでなくても出来るとは言っていた）Smoke のデモ内でAIを実装

MTフレームワークに似たジョブハンドリング

Smoke のデモ内でAIを実装

シークエンス発表のまとめ(1) 自律型AIも、カスタマイズするAIも、双方が高いレベルを目指して発展している。
(2) AIを量産するには、「プロシージャルか、データか」、「自律型か、デザイナーが指定するか」をはっきりと方針を決めた方がよい。
(3) 大型ゲームはどちらかを選択して、そこまで到達しなければならない。

(4) これまでになかった次元に自律的なAIが出現し始めいてる。（自律アニメーションなど）(5) ゲームをコントロールするメタAIは、ゲームを設計するときに考えるファクターに入れておいた方がよい。