The History and Fundamental of
Digital Game AI
KGC 2009

Youichiro Miyake（FromSoftware）
y.m.4160@gmail.com
Twitter: miyayou
2009.10

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

Self-Introduction[Thesis]
Journal of Japanese Society for Artificial Intelligence 23(1) pp.44-51 20080101
How to Use AI Technologies to Develop Digital Games (<Special Issue> Game AI)[Report]
Digital Content Association of Japan
3rd Chapter, Game AI (2007)
http://www.dcaj.org/report/2007/data/dc08_07.pdf
3rd Chapter, Programming AI
http://www.dcaj.org/report/2008/data/dc_08_03.pdf[Interview]
http://gamez.itmedia.co.jp/games/articles/0901/08/news129_3.html
http://gamez.itmedia.co.jp/games/articles/0901/09/news075.html[Blog] http://blogai.igda.jp/

Game Evolution and AI
FC

SFC

HardwareSimple World,
Simple AI

SS, PS

PS2,GC,Xbox

1999 DC

2005

Xbox360, PS3, Wii
（次世代）
次世代）

時間軸

Complex World,
Complex AI

AI & its body becomes complex as Game World becomes complex.

Chapter 1. What isIntelligence ?
The fundamental

What is Intelligence ?
What is Intelligence ?
Have you thought about it ?
Is Intelligence thought ?
Is intelligence knowledge?
Is lntelligence different form ability ?

「Environment - Intelligence - Body」」
correlation diagram
Intelligence
Information(World’s information)

Environment

Information(for Control,
Command)

Body

Intelligence cannot be defined by itself. Intelligence should be
defined on the correlation of Intelligence, Body, and Environment.

Consciousness/Unconsciousness
Intelligence

Decision – Making,Consciousness has no function.

Conscious intelligence

Consciousness
Unconsciousness
Synthesis of body
Synthesis of all-senses
Build the conscious world
Forming desire & emotion

Unconscious intelligence

Body

Environment

What is Environment for AI ?
Are sensors passive ?

イラスト:
イラスト: アンのアンの小箱 http://www.anne
http://www.anneanne-box.com/
box.com/Consciousness/Unconsciousness
Intelligence

Decision – Making,Consciousness has no function.

Conscious intelligence

Consciousness
Unconsciousness
Unconscious intelligence

Reconstruction man’s world Body
from Passive information= Umwelt
Environment

Synthesis of body
Synthesis of all-senses
Build the conscious world
Forming desire & emotion

A man lives in the world he/shereconstructs from environment information.

All object a man recognizes is interpreted in relation to his/her action.
(=Affordance)
イラスト:
イラスト: アンのアンの小箱 http://www.anne
http://www.anneanne-box.com/
box.com/Consciousness/Unconsciousness
Intelligence

Decision – Making,Consciousness has no function.

Conscious intelligence

Consciousness
Unconsciousness
Synthesis of body
Synthesis of all-senses
Build the conscious world
Forming desire & emotion

Unconscious intelligence

Body
Attention①：
The World we recognized as real-world is not the world itself.
It is re-constructed from information through senses and experiences. Ｌ

Environment

Human intelligence implements many information for his bodyaction in the objects of the world under his unconsciousness.
Turn on and project

Can slideCan bend

Turn

Not pass
Not pass
Pull and sit
fall
Can connect

Can pass throughThese information enable human’s actions.

Affordance= actions possible for AI to takein the environment= An environment suggests
actions(Example)

Halo2

Affordance ＝ Actions in Environment AI can take
Affordance: “Drive” and direction to move
In Halo2, affordace(actions AI can takes) is implemented in Objects.

Damian Isla (2005), Handling Complexity in the Halo 2 AI, Game Developer's Conference Proceedings., http://www.gamasutra.com/gdc2005/features/20050311/isla_01.shtml

Knowledge Representation
ドアの知識表現
Knowledge
Representation of door
位置 x: 3.0 y:.10,0
Position x:3.0 y:10.0
レバーで開けることが出来る
It can 壊して開けることが出来る
be open by lever or destroying.

ドア
レバー

Knowledge
Representation of lever
レバーの知識表現
Positionx:5.0 y:5.0
位置
x: 5.0 y:.5,0
AI can pull it.
引くが出来る。
（結果：ドアが開く）(Result:
Door open)

車

Knowledge
Representation of Car
車の知識表現
Positionx:3.0 y:2.0
位置
x: 3.0 y:.2,0
AI can ride on it .
乗って動かすことが出来る。
時速８０ｋｍで動く。
velocity: max 80km

Knowledge Representation for game AI
Objects should be implemented with useful knowledge
that AI can use to recognize a Game World precisely.

2D/3D AffordanceControl from a top-view

many ray-cast caluculations（fire-line calculations）
Control from AI’s view

Comparison with 2D-AI and 3D-AI

PACMANHalo

PACMAN

Halo

Navigation Mesh with the state of terrain surface

Navigation Mesh with the state of terrain surface

Halo2 : World Representation

Halo2 : World Representation

Halo2 : World Representation

Halo2 : World Representation

Positions

Positions

Counter Strike : Navigation Mesh

Counter Strike : Navigation Mesh

Positions

• Blah blah blah
Order
“Forward”

HaloChapter 2.
The History of Digital Game AI

「Environment - Intelligence - Body」」
correlation diagram
Intelligence
Information(World’s information)

Environment

Information(for Control,
Command)

Body

Intelligence cannot be defined by itself. Intelligence should be
defined on the correlation of Intelligence, Body, and Environment.

Agent of gameGame world

Sense
the game world around himself

Effect on the game world
through his bodyIntelligence
actioninstinctWORLD
ENVIRONMENT

reaction

BODY

Conscious intelligenceIntelligencepermitactionUnconscious intelligenceinstinctWORLD
ENVIRONMENT

reaction

BODY

Consciousness/Unconsciousness
Intelligence

Decision – Making,Consciousness has no function.

Conscious intelligence

Consciousness
Unconsciousness
Synthesis of body
Synthesis of all-senses
Build the conscious world
Forming desire & emotion

Unconscious intelligence

Body

Environment

「Environment - Intelligence - Body」」
correlation diagram
Intelligence
Information(World’s informationand suggest action)

Environment

Information(Body Status,
Mental Status)

Information(for Control,
Command)

Body

Intelligence cannot be defined by itself. Intelligence should be
defined on the correlation of Intelligence, Body, and Environment.

st
1 period

Pattern AI

Intelligence
actionno-instinct
reactionWORLD
ENVIRONMENT

BODY

(Example) Space Invader (1978)

One movement pattern regardless of player’s movement

Space Invader

Intelligence
actioninstinctWORLD
ENVIRONMENT

reaction

BODYst
1 period② Complex Pattern AI
Interactive

AI has some designed actions、andtake one of them to a game situation.

For example, in “Prince of Persia ”,
some sprite-animations are prepared, and the number ofAI aciton pattern corresponds to its animation patterns.

（Example） Prince of Persia

In “Prince of Persia”,
Spirte-animation = AI’s action.

Prince of Persia

st
1 period

Pattern AInd
2 period Structured AI

IntelligencepermitactioninstinctWORLD
ENVIRONMENT

actionactionreaction

BODY

How to solve the conflict of actions =intelligenceIntelligenceNot-permit
actionactionactionActions conflict
Each other!

instinctWORLD
ENVIRONMENT

reaction

BODY

Think about selection of action
Intelligence
actionactionChoose only one action
actionActions conflict
Each other!

instinctWORLD
ENVIRONMENT

reaction

BODY

Halo







Game：SF/FPS
Developer： BUNGIE Studio
Publisher: Microsoft
Hardware: Xbox, Windows, Mac
Publishing year： 2002

Halo

Situation
analysis

Halo NPC
Express AI’s intention

Grant

JackalElite

Quick &
PrettySteadyBig

Enemy（COGNANT）

Human

FriendHalo NPC Architecture
Event“Enemy found!”“Friend dead”“I was shot!”“Player shot !”Sensor

NPC’s intelligence
Situation
Analysis

Decisionmaking

Body
Interaction

Time

MotionControl

Emotion（only for dramaturgy）
Working Memory

Knowledge representation/
World representationGame world

Time

MotionHalo AI Architecture

Events such as“Find Enemy”“Search a friend”“Damaged”“Player fired!”

Situation
analysis

EVENTHalo AI decision-making

ＦＳＭ

Event

Simple logic for selecting an action
for each character from a situation.

Level designers’ work
Event

DecisionMaking
ＦＳＭ
Each behavior has a trigger to cause.
An event causes some numbers of behaviors

Halo AI Architecture
Events such as“Find Enemy”“Search a friend”“Damaged”“Player fired!”

Situation
analysis
Direction（dialogue）

Halo NPC Architecure
Event“Enemy found!”“Friend dead”“I was shot!”“Player shot !”Sensor

NPC’s intelligence
Situation
Analysis

Decisionmaking

Body
Interaction

Time

MotionControl

Emotion（only for dramaturgy）
Working Memory

Knowledge representation/
World representationGame world

Time

MotionReference for Halo & Halo2
 Damian Isla (2005), “Dude, where’s my Warthog? From
Pathfinding to General Spatial Competence”,
http://www.aiide.org/aiide2005/talks/isla.ppt
http://nikon.bungie.org/misc/aiide_2005_pathfinding/index.html

 Damian Isla (2005), Handling Complexity in the Halo 2
AI, Game Developer's Conference Proceedings.,
http://www.gamasutra.com/gdc2005/features/20050311/isla_01.shtml

 Jaime Griesemer(2002),The Illusion of Intelligence: The
Integration of AI and Level Design in Halo,
http://halo.bungie.org/misc/gdc.2002.haloai/talk.html

 Robert Valdes(2004), “In the Mind of the Enemy
The Artificial Intelligence of Halo2”,
http://www.stuffo.com/halo2-ai.htm (現在はclosed)

Think = FSM(Finite State Machine)
Intelligence
actionactioninstinctWORLD
ENVIRONMENT

FSM
actionreaction

BODY

(Example) Quake HFSM

http://ai-depot.com/FiniteStateMachines/FSM-Practical.html

Finite State Machine

Quake

Halo2 (2004)







Game：SF/FPS
Developer： BUNGIE Studio
Publisher: Microsoft
Hardware: Xbox, Windows, Mac
Publishing year： 2004

Halo2 NPC Architecure
Event“Enemy found!”“Friend dead”“I was shot!”“Player shot !”Sensor

NPC’s intelligence
Situation
Analysis

Decision- DAG Motion
making HFSM Control

Emotion（only for dramaturgy）
Working Memory

Knowledge representation/
World representationGame world

Body
Interaction

Time

Time

MotionDecision-making by HFSM（Hierarchical FSM）
ＤＡＧ (Directed acyclic graph) = behavior tree
Retreat

Flee

Cover
Self-preservation
Guard

Grenade
Vehicle strafe
ChargeRoot

Melee
Vehicle fightEngageIdle

0th layer

1st layer

Fight

Presearch

Search

Uncover

Guard

Investigate

Guard

2nd layer

3rd layer

Think about planningIntelligence
2sec

action1sec

actionMake a plan for actions
3sec

actionActions conflict
Each other!

instinctWORLD
ENVIRONMENT

reaction

BODY

F.E.A.R (2004)

Game：Horror FPS
Developer：Monolith Production
Publisher: SIERRA
Hardware: Windows, PS3
Publishing year： 2004

F.E.A.R NPC
Find what AI should do by itself.
Find the way to achive the goal by itself.
（C4 Architecture + Goal-Oriented AI)

Rat
Move but not attack

Assassin

Human

Run on ceiling and wall

Walk

Enemy

F.E.A.R NPC AI architecture
NPC’s intelligence
Cognitive
Process

SensorGoal-oriented
Action Planning

SymbolCommon representationof all knowledge

Motiongeneration

Blackboard
MotionWorking Memory

Knowledge representation/
World representation
Body

Game world
Interaction

Time

Time

What is PLANNING ?

What is planning ?
Initial State

Action1 Action2 Action3 Action4

Fundamental Concept：

Initial State

Goal

Goal

PlannerExample for action planning
Planning of actions ＝Action Plainning

Initial State

Goal

ThirstyNotthirsty

move

drink

Planner
What action can AI take ?

move

drink

Chaining

Representation of action for plannerP r e c o n d it io n

I k n o w t h e p a lc e
t o d r in k

A I c a n g e t w a t er

A c t io n

G o to t h e
p a lc e t p d r in k

D r in k

A I c a n g e t w a t er

n o t t h ir s t y

E ff e c t

Precondition ＝ Condition needed to take the action＝ Result caused by the action
EffectChaining

Planning by Chainning
Planner

InitialState
I know the palace
to drink

Thirsty

I know thepalce to drink

Goal

Go to thepalce tp drink

Chain!
Thirsty

AI can get water

I know the palace
to drink

AI can get waterNot thirsty

Drink

Not thirsty

Pools of Actions

Not
thirstyPlanning system for F.E.A.R.
kTargetIsDead = ture
Solder A diedkTargetAtme = ture
Solder B is aiming at me.

kWeaponIsLoaded = false
I have no weapon…

Planning system for F.E.A.R.
Simple representation of agent’s world
20 symbols for representing agent’s world
SymbolkSymbol_AtNodekSymbol_
WeaponArmedkSymbol_TargetIs
AimingAtMe

kSymbol_AtNodeTypekSymbol_
WeaponLoaded

kSymbol_
RidingVehicle

Agent-centric representation

kSymbol_Target
IsSuppressed

kSymbol_
UsingObject

kSymbol_
TargetIsDead

Planning system for F.E.A.R.
Chaining based on symbol representation
Planning
NoCondition

Draw weapon
kSymbol_
WeaponArmedkSymbol_
WeaponArmed

Chaining

Load weapon
kSymbol_
WeaponLoaded

kSymbol_
WeaponLoaded

AttackPlannerkSymbol_
TargetIsDead

Chaining
GOAL
kSymbol_
TargetIsDead

F.E.A.R NPC AI architecture
NPC’s intelligence
Cognitive
Process

SensorMotionGoal-oriented
Planning
generation
ActionPlanning byRepresentation
symbolSymbolCommon representationof all knowledge

ゲーム世界Blackboard
MotionWorking Memory

Knowledge representation/
World representation
Body

Game world
Interaction

Time

Time

F.E.A.R NPC AI architecture
NPC’s intelligence
Cognitive
Process

SensorGoal-oriented
Action Planning

SymbolCommon representationof all knowledge

Motiongeneration

Blackboard
MotionWorking Memory① AI selectrepresentation/
one goal in the situation by itself
Knowledge②WorldAI design
its sequence of actions by itself torepresentationachieve the goal.
Body
Game world
Interaction

Time

Time

Planning

PlanningReferences for F.E.A.R.
 Orkin, J. (2006), 3 States & a Plan: The AI of F.E.A.R.,
Game Developer's Conference Proceedings.
 Jeff Orkin, Applying Goal-Oriented Action Planning toGames, AI Game Programming Wisdom 2, Charles
River Media., 217-228, (2003)
 (I) Mat Buckland, “Programming Game AI by Example”,
Chapter 9, WORDWARE publishing (II) Jeff Orkin’ HP http://web.media.mit.edu/~jorkin/Hierarchical goal-oriented planning

A goal is a combination of small goals
Goal

Goal

Goal

Goal

Hierarchical goal-oriented planning

A small goal is a combination of smaller goals
Goal

Goal

Goal

Goal

Goal

Goal

Goal

Goal

Goal

In Chromehounds(Xbox360)
real-time Hierarchical Goal-Oriented Planning

HierarchicalFind the
tower
Go to
the tower

Conquer
The tower
Conquer
the tower

Find path tothe tower

shootMove along
the pathwalk

Wait 10seconds

stop

NPC

Strategy

Tactics

Behavior Command

Demo movie for real-time Hierarchical
Goal-Oriented Planning

Players or AI control
this type of machinefrom this view point.

Demo movie

Demo movie for real-time Hierarchical
Goal-Oriented Planning
NPC’s Goal-oriented planning

Strategic goal
tactics goal
behavior goal

Demo movie

Evaluation values of Team Strategies(Sorry, this is Japanese)⑤ TeamAI⑤ TeamAI
NPC’s Goal-oriented planningThis agent is executing the goal “Protect” he has chosen.

Demo movie

⑤ TeamAI⑤ TeamAIA goal from a team strategy has interrupted agent’s goal.

Demo movie

st
1 period

Pattern AInd
2 period Structured AIrd
3 period Autonomous AI

AI has inner model.
Intelligence
actionactionactionActions conflict
Each other!

instinctWORLD
ENVIRONMENT

reaction

Body requires
an action.

BODY

dynamic model by inner parameters &daily-life AI control by objects

From battle AI to daily-life AI !
Daily-life AI is more difficult than Battle AI, because battle AI is limited only to actions ofbattle, but daily-life AI is possible to do everything.

How to make Autonomous AI

Intelligence（mind）

Body

How to make Autonomous AI

Intelligence（mind）

Body

Parameter for “Hungry”（H）

If (H(t) > 0.5)
goto
GetFoodTime（ｔ）

If Hungry parameter is more than 0.5,
Go to get food.

Ｈ(t)＝sin(1/24*t)

How to make Autonomous AI
Intelligence（mind）

Body
Hungry Paramter（Ｈ）

If (H(t) > 0.5)
goto GetFood
Else
Sleep

Ｈ(t)＝sin(1/24*t)
Time（ｔ）

１日

Food

How to make Autonomous AI
become hungry more slowly

Intelligence（mind）

Body
Hungry Paramter（Ｈ）

If (0.8*H(t) > 0.5)
goto GetFood
Else
Sleep

Ｈ(t)＝sin(1/24*t)
Time（ｔ）

１day

Food

How to make Autonomous AI
Intelligence（mind）

Body
Sleep Parameter（S）

Hungry Parameter（Ｈ）

If (H(t) > 0.8 && S(t) < 0.1)
goto GetFood
Else If (H(t) < 0.3 && S(t) > 0.7)
goto Sleep
Else
Free_Walk

Ｓ(t)＝sin(1/48*t)

Ｈ(t)＝sin(1/24*t)
時間（ｔ）

１day

＋
１day

Food
Bed

How to make Autonomous
AI(individualize)
Intelligence（mind）

Body
Sleep Parameter（S）

Hungry Parameter（Ｈ）

If (0.5*H(t) > 0.8 && S(t) < 0.1)
goto GetFood
Else If (H(t) < 0.3 && 1.5*S(t) >0.7)
goto Sleep
Else
Free_Walk
Become hungy and sleepy more slowly…

Ｓ(t)＝sin(1/48*t)

Ｈ(t)＝sin(1/24*t)
時間（ｔ）

１day

＋
１day

Food
Bed

How to make Autonomous AI
Intelligence（mind）

Environment

Body
Hungry Parameter（Ｈ）

If (H(t) > 0.8 && S(t) < 0.1)
goto GetFood
Else If (H(t) < 0.3 && S(t) > 0.7)
goto Sleep
Else If( (1-H(t))*D(t) < 0.9)
Goto Fight
Else
Free_Walk

Enemy

Sleep Parameter（S）

Ｈ(t)＝sin(1/24*t)Dangerous Parameter（Ｄ）

Ｓ(t)＝sin(1/48*t)D(t)＝1/(distance from enemy)

＋
１day

＋
１day

Bed

１day

Food

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

For example② The Sims 3 (Maxis, EA)

Trait … Character Feature, Personal parameter
Wish … Goal for future
Sims Getting Smarter: AI in The Sims 3(IGN)
http://pc.ign.com/articles/961/961065p1.html

GDC09 http://cmpmedia.vo.llnwd.net/o1/vault/gdc09/slides/Combined.ppt

The Sims : How to make AI
Meta

Peer
Sub

Meta
Peer
Sub

[Principle] Sims (not under direct player control)choose what to do by selecting, from all of thepossible behaviors in all of the objects, thebehavior that maximizes their current happiness.
AI is constructed as a dynamic system controlled by many parameters.
PeerAI is AI which controls a character’s behavior.

Data structure for Objects
Data (Class, Sate)
Graphics (sprites, zbuffers)
Animations (skeletal)
Sound Effects
Code (Edith)-Main (object thread)-External 1-External 2-External 3

Ken Forbus, “Simulation and Modeling: Under the hood of The Sims” (NorthWerstern University)
http://www.cs.northwestern.edu/%7Eforbus/c95-gd/lectures/The_Sims_Under_the_Hood_files/frame.htm

Data structure for NPC

Ken Forbus, “Simulation and Modeling: Under the hood of The Sims” (NorthWerstern University)
http://www.cs.northwestern.edu/%7Eforbus/c95-gd/lectures/The_Sims_Under_the_Hood_files/frame.htm

最適な行動を選択する
ToiletMood +26-Urinate (+40 Bladder)-Clean (+30 Room)-Unclog (+40 Room)
Hunger +20
Comfort -12
Hygiene -30
Bladder -75
Energy +80
Fun+40
Social +10
Room -60

Bathtub
Mood +20-Take Bath(+40 Hygiene)(+30 Comfort)-Clean(+20 Room)[Principle] Sims (not under direct player control)
Mood +18 choose what to do by selecting, from all of thepossible behaviors in all of the objects, thebehavior that maximizes their current happiness.

Maximizes his current happiness

Refligerator make his happiness up much better than the others.

Maximizes his current happiness

Go to a refrigerator

maximizes his current happiness

He becomes not hungry, and will talk with a girl to kill bored time.

The Sims 3 set more mood & desire parameters.
Action Object

GDC09 資料 http://cmpmedia.vo.llnwd.net/o1/vault/gdc09/slides/Combined.ppt

Conclusion① NPC AI has developed : Pattern AI, Algorithm
AI, Structured AI, and Agent architecture.
② A new paradigm of game AI has given users new
game experiences.
③ NPC AI has changed the role in the game history
from a simple enemy to human-like AI.

(I) References（English）（１） The fundamental of Game AI such as“FSM” ,”Planning”, and ”Evaluation function”“Programming Game AI by Example”（Mat Buckland） http://www.ai-junkie.com/books/toc_pgaibe.html
http://www.jbpub.com/Catalog/9781556220784/student/

Source Code
http://www.wordware.com/files/ai/

(II)References（English）
WEB
Mat Buckland
ai-junkie http://www.ai-junkie.com/ai-junkie.html

Craig Raynolds
RAYNOLDS http://www.red3d.com/
リンク集
http://www.red3d.com/cwr/games/

Steven Rabin
GameAI

http://www.gameai.com/

CGF-AICGF-AI http://www.cgf-ai.com/
リンク集 http://www.cgf-ai.com/links.html

(II)References（English）
Books

AI Game Programming Wisdom 1 - 4

(II)References（English）
書籍

The history of Game AI for bothgame programmer and game designer!

John Ahlquist, Jeannie Novak
Game Development Essentials: Game Artificial IntelligenceReferences for Killzone[1] William van der Sterren (2001),"Terrain Reasoning for 3D Action Games",
http://www.cgf-ai.com/docs/gdc2001_paper.pdf[2] William van der Sterren (2001) ,"Terrain Reasoning for 3D Action
Games(GDC2001 PPT)", http://www.cgf-ai.com/docs/gdc2001_slides.pdf[3] Remco Straatman, Arjen Beij, William van der Sterren (2005) ,"Killzone's
AI : Dynamic Procedural Combat Tactics", http://www.cgfai.com/docs/straatman_remco_killzone_ai.pdf[4] Arjen Beij, William van der Sterren (2005),"Killzone's AI : Dynamic
Procedural Combat Tactics (GDC2005)", http://www.cgfai.com/docs/killzone_ai_gdc2005_slides.pdf[5] Damian Isla (2005), "Dude, where’s my Warthog? From Pathfinding to General
Spatial Competence", http://www.aiide.org/aiide2005/talks/isla.ppt

References for C4 Architecture(1) MIT Media Lab Synthetic Characters Group,
http://characters.media.mit.edu/(2) R. Burke, D. Isla, M. Downie, Y. Ivanov, B. Blumberg,(GDC2001), “CreatureSmarts: The Art and Architecture of a Virtual
Brain”,http://characters.media.mit.edu/Papers/gdc01.pdf(3) D. Isla, R. Burke, M. Downie, B. Blumberg (2001)., “A Layered
Brain Architecture for Synthetic Creatures”,
http://characters.media.mit.edu/Papers/ijcai01.pdf(4) D. Isla, B. Blumberg (2002), “Object Persistence for Synthetic
Characters”,http://characters.media.mit.edu/Papers/objectPersistence.pdf(5) Movies of Duncan,http://web.media.mit.edu/~bruce/whatsnew.html(6) Object Persistence for Synthetic Characters. D. Isla, B. Blumberg. In
the Proceedings of the First International Joint Conference on
Autonomous Agents and Multiagent Systems,
AAMAS2002.,http://characters.media.mit.edu/Papers/objectPersistence.pdf

Thank you for your attention !

y.m.4160@gmail.com(as a member of IGDA Japan: yoichi-m@pk9.so-net.ne.jp )http://www.igda.jp