SlideShare a Scribd company logo
1 of 299
Download to read offline
AI TECHNOLOGIES IN GAME INDUSTRY
Youichiro Miyake
https://www.facebook.com/youichiro.miyake
http://www.slideshare.net/youichiromiyake
y.m.4160@gmail.com @miyayou
My Works (2004-2020)
AI for Game Titles
Books
Books
References
GAME AI PRO 3 (2017/6)
SQUARE ENIX 5 articles in Game AI PRO 3
Predictive Animation Control Using Simulations and Fitted Models.
Ingimar Hólm Guðmundsson, Skubch Hendrik, Fabien Gravot and Yoichiro Miyake
Ambient Interactions: Improving believability by leveraging Rule-based AI
Hendrik Skubch
Logging Visualization in FINAL FANTASY XV
Matthew W. Johnson, Fabien Gravot, Shintaro Minamino, Ingimar Gudmundsson,
Hendrik Skubch, and Miyake Youichiro
Guide to Effective Autogenerated Spatial Queries
Eric Johnson
A Character Decision-Making System for FINAL FANTASY XV by combining
Behavior Trees and State Machines
Youichiro Miyake, Youji Shirakami, Shimokawa Kazuya, Kousuke Namiki, Tomoki,
Komatsu, Tatsuhiro Joudan, Prasertvithyakarn Prasert, Takanori Yokoyama
• Yoji Shirakami, Kousuke Namiki, Youichiro Miyake, Takanori Yokoyama (CEDEC 2015)
• http://www.jp.square-enix.com/tech/library/pdf/2015cedec_FFXV_AI_English_part1.pdf
• http://www.jp.square-enix.com/tech/library/pdf/2015cedec_FFXV_AI_English_part2.pdf
• Hendrik Skubch, Not Just Planning: STRIPs for Ambient NPC Interactions in Final Fantasy XV
(nucl.ai 2015)
• https://archives.nucl.ai/recording/not-just-planning-strips-for-ambient-npc-interactions-in-
final-fantasy-xv/
References
Lecture slides
• Youichiro Miyake, Current Status of Applying Artificial Intelligence in Digital Games
Handbook of Digital Games and Entertainment Technologies, Pages 253-292
http://www.springer.com/jp/book/9789814560498
• Youichiro Miyake, A Multilayered Model for Artificial Intelligence of Game Characters as
Agent Architecture
Mathematical Progress in Expressive Image Synthesis III, Pages 57-60
http://www.springer.com/jp/book/9789811010750
Articles in Books
References
FINAL FANTASY XV Core AI Team
• SQUARE ENIX
• Youichiro Miyake
(AI Graph)Youji Shirakami 、Kazuya Shimokawa
(Monster AI & Learning)Kosuke Namiki, Tomoki Komatsu
(Animation)Noriyuki Imamura
(AI Navigation & Simulation)Fabien Gravot, Hendrik Skubch,
Ingimar Holm Gudmundsson, Matthew W. Johnson
(Buddy AI, Meta AI)Prasertvithyakarn Prasert, Tatsuhiro Joudan
(Data Logging) Shintaro Minamino
(AI Mode) Kosuke Takahashi
Contents
• Chapter 1. Introduction
• Chapter 2. Character’s decision making
• Chapter 3. Character’s eye
3.1 What does a living thing see?
3.2 Representation of what an AI sees
3.3 Walking
3.4 CASE STUDY: FINAL FANTASY XIV: A Realm Reborn
3.5 Smart Terrain
• Chapter 4. Social Behaviors
• Chapter 5. Learning for character
Contents
• Chapter 1. Overview
• Chapter 2. Meta-AI
• Chapter 3. Character AI
3.1 BODY and INTELLIGENCE
3.2 CHARACTER BEHAVIOR LEARNING
3.3 DECISION MAKING ALOGORITHM
• Chapter 4. Navigation AI
• Chapter 5. Learning
• Chapter 6. QA-AI
• Chapter 7. Social Behaviors
• Chapter 8. Future Plan
OVERVIEW
Chapter 0
How to design AI ?
Player
Character
Rock Ground
Pond
For example, how to design AI in this situation ?
How to design AI ?
Player
Character
Rock Ground
Pond
For example, how to design AI in this situation ?
A B
(Example)
If the player is in A,
B goes around in B.
If the player is in B,
B attacks A.
How to design AI ?
Player
Character
Rock Ground
Pond
For example, how to design AI in this situation ?
A B
(Example)
If the player is in A,
B goes around in B.
If the player is in B,
B attack A.
But this statement is not
the AI’s idea.
A game designer writes
these ideas.
= They are orders to AI.
Classical AI = Scripted AI
Script
From Scripted AI to Autonomous AI
Game Designer’s idea Game Designer’s idea
Knowledge Thinking
Scripted AI Autonomous AI
Script
From Scripted AI to Autonomous AI
Game Designer’s idea Game Designer’s idea
Knowledge Thiniking
Scripted AI Autonomous AI
No longer a puppet(scripted AI). A character should be an
autonomous AI which thinks by itself. Knowledge and thinking should
be given to an AI.
Player
Character
Rock Ground
Pond
How to design AI ?
Terrain data
(Way Points)
Step 1
Let AI understand terrain
= Give terrain data to AI
AI can guess it relative position to a player by using terrain data.
Navigation AI
Thinking about
positon by using
terrain data
Player
Character
Rock Ground
Pond
How to design AI ?
Terrain data
(Way Points)
Step 2
Let AI know its position
by using terrain data.
AI can guess its relative position to a player by using terrain data.
Navigation AI
How to design AI ?
Thinking by using terrain data Networked graph search
Terrain data
(Way Points)
Thinking by using
Terrain data
Calculate the shortest path
Navigation AI
How to design AI ?
Thinking by using terrain data Networked graph search
Terrain data
(Way Points)
Thinking by using
Terrain data
Calculate the shortest path
Navigation AI
How to design AI ?
Thinking by using terrain data Networked graph search
Terrain data
(Way Points)
Thinking by using
Terrain data
Calculate the shortest path
Navigation AI
How to design AI ?
Make Networked Graph include LOS (Line of Sight) data.
Terrain data
(Way Points)
Thinking by using
Terrain data
All points can be seen from any point in a group.
All points can be seen from any point in a group.
Navigation AI
How to design AI ?
Make Networked Graph include LOS (Line of Sight) data.
Terrain data
(Way Points)
Thinking by using
Terrain data
Any point of the group can not be seen any point in the group.
Navigation AI
How to design AI ?
An AI can be seen by the player.
Terrain data
(Way Points)
Thinking by using
Terrain data
How to design AI ?
The player can not see the AI.
Navigation AI
Terrain data
(Way Points)
Thinking by using
Terrain data
How to design AI ?
The player can see the AI.
Navigation AI
Terrain data
(Way Points)
Thinking by using
Terrain data
How to design AI ?
The player can not see the AI.
Navigation AI
Terrain data
(Way Points)
Thinking by using
Terrain data
How to design AI ?
The AI will move so the player can see it.
Navigation AI
Terrain data
(Way Points)
Thinking by using
Terrain data
How to design AI ?
The AI will move so the player can not see it.
Navigation AI
Terrain data
(Way Points)
Thinking by using
Terrain data
Thinking its positon
by using terrain data
Player
Character
Rock Ground
Pond
How to design AI ?
Terrain data
(Way Points)
Step 3
Let AI think about timing
when to attack.
Decision Making
How to design AI ?
Attack? Hide? Threaten? selection
= Decision Making Thinking
Navigation AI
Terrain data
(Way Points)
Thinking by using
Terrain data
Decision Making
How to design AI ?
Navigation AI
Terrain data
(Way Points)
Thinking by using
Terrain data
Decision Making
Attack
How to design AI ?
Navigation AI
Terrain data
(Way Points)
Thinking by using
Terrain data
Decision Making
Threaten (= Going to the positon where a player can see AI)
How to design AI ?
Navigation AI
Terrain data
(Way Points)
Thinking by using
Terrain data
Decision Making
Hide(=AI goes to the positon where a player can not see AI)
Thinking its positon
by using terrain data
Player
Character
Rock Ground
Pond
How to design AI ?
Terrain data
(Way Points)
Step 1- 3
Let AI be intelligent.
Decision Making
Making Autonomous AI
Game Designer (Human)
Terrain data(Way
Points)
Thinking based
on
Terrain data
Thinking based
on
Object data
Making Autonomous AI
Game Designer (Human)
Terrain data(Way
Points)
Thinking based
on
Terrain data
Thinking based
on
Object data
The process to make AI be intelligent
Step 1: Give knowledge
Step2: Make AI think by using knowledge
Step3 : Let AI do Decision Making by itself
Knowledge Thinking
Making Autonomous AI
Game Designer (Human)
Representing knowledge Thinking on knowledge
The most fundamental thing to make autonomous AI
is to give knowledge and thinking to a character.
Terrain data(Way
Points)
Thinking based
on
Terrain data
Thinking based
on
Object data
Knowledge Thinking
Making Autonomous AI
Game Designer (Human)
Intelligence = Knowledge × Thinking
Terrain data
(Way Points)
Thinking
based on
Terrain
data
Thinking
based on
Object
data
Object
data
Body
data
Thinking
based on
Body
data
Representing knowledge Thinking on knowledge
Knowledge Thinking
Making Autonomous AI
Game Designer (Human)
Representing knowledge Thinking on knowledge
By adding knowledge and thinking,
AI grows up to be more intelligent.
Terrain data
(Way Points)
Thinking
based on
Terrain
data
Thinking
based on
Object
data
Object
data
Body
data
Thinking
based on
Body
data
Intelligence
Knowledge Thinking
Making Autonomous AI
Game Designer (Human)
By adding knowledge and thinking, AI
grows up to be more intelligent.
Terrain data
(Way Points)
Thinking
based on
Terrain
data
Thinking
based on
Object
data
Object
data
Body
data
Thinking
based on
Body
data
Representing knowledge Thinking on knowledge
Intelligence
Knowledge Thinking
Making Autonomous AI
Game Designer (Human)
Terrain data
(Way Points)
Thinking
based on
Terrain
data
Thinking
based on
Object
data
Object
data
Body
data
Thinking
based on
Body
data
Representing knowledge Thinking on knowledge
Intelligence a character has is called “Character AI”.
Intelligent Game System
Game System
Intelligent
Game System
Digital Games have also become intelligent.
So, what is an “Intelligent Game System” ?
What is digital game ?
• Interactive Digital Space
• The space becomes structured
• AI becomes a module
Level
Navigation AI
Meta-AI
Character AI
Dynamic allocation of enemies
Observing level in real-time
Direction for agents
Making progress of game
Autonomous thinking
Cooperation
Team AI
Preparing data to make Meta-AI and
Character AI recognize the level
Managing object representation
Managing Navigation data
Path-finding / Tactical point analysis
Support
Enemy character
Player
Brain
Information
Acquisition
Control
The System of digital game AI
• Role of AI in digital game becomes clear.
• There are three roles of AI.
AI to control a whole game system
AI of character (Character’s Brain)
AI to recognize an environment in game by analyzing a level,
terrain, and space.
Meta AI
Character AI
Navigation AI
Two Axis to categorize AI
• The problem of “What is AI” is a very difficult problem.
• We had better search what problem an AI is seeking to resolve.
Space Scale
Time Scale
Local
Short time
Global
timeless
Global
Long time
Meta-AI
Character AI
Navigation AI
Different AI, different role
Meta-AI
Meta AI keeps watching a game situation and dynamically controls game balance,
intention of game player, and game dynamics.
Character AI
Character AI is a character’s brain, which recognizes the local environment
around the character, and executes its action and motion in a limited time.
Navigation AI
Navigation AI analyzes the terrain and level design and abstracts space features
which are used to adapt a character’s action to the environment.
AI who has a role is called “Agent”. Especially, in digital game, character AI is
called “Agent”.
AI in game, and AI outside of game
Game AI
(outside of game)
Game AI
(In game)
Meta-AI
Character
AI
Navigation
AI
Supporting
AI
QA-AI
Auto-balancing
AI
Interface-AI
Data Mining
Simulation
Game
Visualization
Biofeedback
Contents
• Chapter 1. Overview
• Chapter 2. Meta-AI
• Chapter 3. Character AI
3.1 BODY and INTELLIGENCE
3.2 CHARACTER BEHAVIOR LEARNING
3.3 DECISION MAKING ALOGORITHM
• Chapter 4. Navigation AI
• Chapter 5. Learning
• Chapter 6. QA-AI
• Chapter 7. Social Behaviors
• Chapter 8. Future Plan
META-AI
Chapter 2
Level
Navigation AI
Meta-AI
Character AI
Dynamic allocation of enemies
Observing level in real-time
Direction for agents
Making progress of game
Autonomous thinking
Cooperation
Team AI
Preparing data to make Meta-AI and
Character AI recognize the level
Managing object representation
Managing Navigation data
Path-finding / Tactical point analysis
Support
Enemy character
Player
Brain
Information
Acquisition
Control
Meta AI History
1980 1990
Meta AI is the AI of game system.
1980 1990 2000
Classical Meta AI
Modern Meta AI
Evolution of Character AI
(Autonomous AI )
(Example) Xevious(Namco、1983)
Enemy Table Rewinding
Enemy 0
Enemy 1
Enemy 2
Enemt 3
Enemy 4
Enemy 5
Meta AI History
1980 19901980 1990 2000
Classical Meta AI
Modern Meta AI
Development of Character AI
(Autonomous AI )
Classical Meta AI to control difficulty of the game (Weaken enemies).
Modern Meta AI to design game system dynamically.
Modern Meta AI
Meta AI dynamically changes a game
Meta AI
Allocation of
enemies
Spawning
enemies
Story
Generation
Procedural
Terrain Generation
User Experience
AI Director (Meta AI) = Left 4 Dead
Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and
Interactive Digital Entertainment Conference at Stanford.
http://www.valvesoftware.com/publications.html
Example : Left 4 Dead
AI Director decide when enemies are spawned.
USER’S INTENSITY
ACTUAL POPULATION
DESIRED
POPULATION
Build Up …プレイヤーの緊張度が目標値を超えるまで
敵を出現させ続ける。
Sustain Peak … 緊張度のピークを3-5秒維持するために、
敵の数を維持する。
Peak Fade … 敵の数を最小限へ減少して行く。
Relax … プレイヤーたちが安全な領域へ行くまで、30-45秒間、
敵の出現を最小限に維持する。
AI Director makes users relax, and break relax repeatedly.
Michael Booth, "Replayable Cooperative Game Design: Left 4 Dead," Game Developer's Conference, March 2009 http://www.valvesoftware.com/publications.html
Meta AI(=AI Director) observes players’ action in real-time in Left 4 Dead
Left 4 Dead (Valve)
AI Director controls NPC spawning distribution and game-play-pacing.
 Genre:Online Action
 Developer: Valve software
 Publisher : Valve software
 Hardware: XBox360
 Year: 2006 Using nav-mesh for recognizing and controlling
Real-time status of game.
Michael Booth, "Replayable Cooperative Game Design: Left 4 Dead," Game Developer's Conference, March 2009 http://www.valvesoftware.com/publications.html
Left 4 Dead – AI Director
Meta AI recognize game status in real-time
Predicting player’s route and spawning monsters dynamically.
Michael Booth, "Replayable Cooperative Game Design: Left 4 Dead," Game Developer's Conference, March 2009 http://www.valvesoftware.com/publications.html
Adaptive Dramatic Dynamic Pacing
[Basic Idea]
(1) Meta AI populates many enemies, enough to get
user’s intention up to the value (measured by
input).
(2) When user’s intention goes over the value, meta
AI stops the population.
(3) When user becomes relaxed, go to (1).
Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and
Interactive Digital Entertainment Conference at Stanford.
http://www.valvesoftware.com/publications.html
Meta AI recognize game status
via Navigation-Mesh
Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment Conference at Stanford.
http://www.valvesoftware.com/publications.html
Active Area Set
Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment Conference at Stanford.
http://www.valvesoftware.com/publications.html
Flow Distance(predicting a path)
Meta- AI predict a path
- where they arrive
- where is back
- direction
Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment Conference at Stanford.
http://www.valvesoftware.com/publications.html
Action to AAS
Meta AI spawns and extinguishes
enemies in Active Area Set.
Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment Conference at Stanford.
http://www.valvesoftware.com/publications.html
Area seen from player
In the Area where player can see,
Meta-AI cannot spawn enemies
Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment Conference at Stanford.
http://www.valvesoftware.com/publications.html
Area to spawn enemies
FRONT BACK
Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment Conference at Stanford.
http://www.valvesoftware.com/publications.html
Meta- AI spawns enemies in the area players cannot see.
References
(1) Michael Booth, "Replayable Cooperative Game Design: Left 4 Dead," Game
Developer's Conference, March 2009.
(2) Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and
Interactive Digital Entertainment Conference at Stanford.
http://www.valvesoftware.com/publications.html
(3) 三宅 陽一郎, “メタAI”,「デジタルゲームの技術」
P.186-190, ソフトバンク クリエイティブ
Procedural Generation in WarFrame
The Living AI in Warframe's Procedural Space Ships Dan Brewer, Digital Extremes
http://aigamedev.com/open/coverage/vienna14-report/#session8
Black Combination in WarFrame
The Living AI in Warframe's Procedural Space Ships Dan Brewer, Digital Extremes
http://aigamedev.com/open/coverage/vienna14-report/#session8
Procedural Generation Map in WarFrame
The Living AI in Warframe's Procedural Space Ships Dan Brewer, Digital Extremes
http://aigamedev.com/open/coverage/vienna14-report/#session8
Auto-analyzing the map in WarFrame
The Living AI in Warframe's Procedural Space Ships Dan Brewer, Digital Extremes
http://aigamedev.com/open/coverage/vienna14-report/#session8
Start, Exit, objectives auto-distribution
in WarFrame
The Living AI in Warframe's Procedural Space Ships Dan Brewer, Digital Extremes
http://aigamedev.com/open/coverage/vienna14-report/#session8
Influence Map
The Living AI in Warframe's Procedural Space Ships Dan Brewer, Digital Extremes
http://aigamedev.com/open/coverage/vienna14-report/#session8
Influence Map
The Living AI in Warframe's Procedural Space Ships Dan Brewer, Digital Extremes
http://aigamedev.com/open/coverage/vienna14-report/#session8
Active Are Set
The Living AI in Warframe's Procedural Space Ships Dan Brewer, Digital Extremes
http://aigamedev.com/open/coverage/vienna14-report/#session8
Meta AI
(AI Director, Dynamic Adaptive Pacing)
The Living AI in Warframe's Procedural Space Ships Dan Brewer, Digital Extremes
http://aigamedev.com/open/coverage/vienna14-report/#session8
メタAI(自動適応ペーシング)
Meta AI
(AI Director, Dynamic Adaptive Pacing)
The Living AI in Warframe's Procedural Space Ships Dan Brewer, Digital Extremes
http://aigamedev.com/open/coverage/vienna14-report/#session8
Summary
Classical Game System Modern Game System
In classical game system, game contents are fixed after the development,
but in modern game system, game contents are dynamically created.
Summary
Meta AI dynamically creates a game play flow, and gives an order to
character AI and a game event. The reason why meta AI action is simple is
that character AI has become autonomous.
Classical Game System Modern Game System
Summary
Classical Game System Modern Game System
By simply replacing Meta AI, game contents can dramatically change.
Referenced Papers
(1) Michael Booth, "Replayable Cooperative Game Design: Left 4 Dead," Game
Developer's Conference, March 2009.
(2) Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and
Interactive Digital Entertainment Conference at Stanford.
http://www.valvesoftware.com/publications.html
Contents
• Chapter 1. Introduction
• Chapter 2. Character’s decision making
• Chapter 3. Character’s eye
3.1 What does a living thing see?
3.2 Representation of what AI sees
3.3 Walking
3.4 CASE STUDY: FINAL FANTASY XIV: A Realm Reborn
3.5 Smart Terrain
• Chapter 4. Social Behaviors
• Chapter 5. Learning for character
Contents
• Chapter 1. Overview
• Chapter 2. Meta-AI
• Chapter 3. Character AI
3.1 BODY and INTELLIGENCE
3.2 CHARACTER BEHAVIOR LEARNING
3.3 DECISION MAKING ALOGORITHM
• Chapter 4. Navigation AI
• Chapter 5. Learning
• Chapter 6. QA-AI
• Chapter 7. Social Behaviors
• Chapter 8. Future Plan
CHARACTER AI
Chapter 3
Level
Navigation AI
Meta-AI
Character AI
Dynamic allocation of enemies
Observing level in real-time
Direction for agents
Making progress of game
Autonomous thinking
Cooperation
Team AI
Preparing data to make Meta-AI and
Character AI recognize the level
Managing object representation
Managing Navigation data
Path-finding / Tactical point analysis
Support
Enemy character
Player
Brain
Information
Acquisition
Control
FC SFC SS, PS PS2,GC,Xbox Xbox360, PS3, Wii
DC (次世代)Hardware 時間軸20051999
ゲームの進化と人工知能
複雑な世界の
複雑なAI
ゲームも世界も、AIの身体と内面もますます複雑になる。
単純な世界の
シンプルなAI
(スペースインベーダー、タイトー、1978年) (アサシンクリード、ゲームロフト、2007年)
Environment
Intelligence
Artificial Intelligence= dynamically makes an AI’s action in harmony
with artificial environment.
What is intelligence?
Body
(Inner
Structure)
Input(Sensor) Output(Action)
©2018 SQUARE ENIX CO., LTD. All Rights Reserved.
Intelligence World
Environment World
Effector・Body
Sensor・
Body
Agent Architecture
Intelligence World
Environment World
Effector・BodySensor・
Body
Memory
Recog-
nition
Working
Memory
Small
Memory
Information Processing
Abstraction
of
Information
Decision
making
Body
Control
Effector・Body
Motion
Making
Motion synthesis process
body module
Motion
Synthesis
Decision making
Module
Decision making
Module
Decision making
Module
Intelligence World
Environment World
Effector・BodySensor・
Body
Memory
Recog-
nition
Working
Memory
Small
Memory
Information Processing
Abstraction
of
Information
Decision
making
Body
Control
Effector・Body
Motion
Making
Motion synthesis process
body module
Motion
Synthesis
Decision making
Module
Decision making
Module
Decision making
Module
Objective・
Phenomenon
Intelligence World
Environment World
Effector・BodySensor・
Body
Memory
Recog-
nition
Working
Memory
Small
Memory
Information Processing
Abstraction
of
Information
Decision
making
Body
Control
Effector・Body
Motion
Making
Motion synthesis process
body module
Motion
Synthesis
Decision making
Module
Decision making
Module
Decision making
Module
World
Sensor
知識
生成
Knowledg
e
Making
意思決定
Decision
Making
運動
生成
Motion
Making
Information Flow
記憶
Principle of Learning
ActionResult Decision
Making
Body
Neural Networks in Supreme Commander 2 (GDC 2012)
Michael Robbins (Gas Powered Games)
http://www.gdcvault.com/play/1015406/Off-the-Beaten-Path-Non
http://www.gdcvault.com/play/1015667/Off-the-Beaten-Path-Non
Neural Networks in Supreme Commander 2 (GDC 2012)
Michael Robbins (Gas Powered Games)
http://www.gdcvault.com/play/1015406/Off-the-Beaten-Path-Non
http://www.gdcvault.com/play/1015667/Off-the-Beaten-Path-Non
ニューラルネットワークの応用
Neural Networks in Supreme Commander 2 (GDC 2012)
Michael Robbins (Gas Powered Games)
http://www.gdcvault.com/play/1015406/Off-the-Beaten-Path-Non
http://www.gdcvault.com/play/1015667/Off-the-Beaten-Path-Non
Belief – Desire – Intention モデル
Desire
(Perceptrons)
Opinions
(Decision Trees)
Beliefs
(Attribute List)
Richard Evans, “Varieties of Learning”, 11.2, AI Programming Wisdom
Low Energy
Source =0.2
Weight =0.8
Value =
Source*Weight =
0.16
Tasty Food
Source =0.4
Weight =0.2
Value =
Source*Weight =
0.08
Unhappines
s
Source =0.7
Weight =0.2
Value =
Source*Weight =
0.14
∑
0.16+0.08+0.14
Threshold
(0~1の値に
変換)
hunger
Desire(お腹すいた度)欲求を決定する
対象を決定する
それぞれの対象の
固有の情報
他にも
いろいろな
欲求を計算
Hunger
Compassion
Attack(戦いたい)
Help
Black & White (Lionhead,2000)
Black & White (Lionhead,2000)
Training of creature by learning
http://www.youtube.com/watch?v=2t9ULyYGN-s
http://www.lionhead.com/games/black-white/
14:20-
Reinforcement Learning
(Ex) Fighting Game
Kick
Punc
h
Magic
R_0 : Reward = Damage
http://piposozai.blog76.fc2.com/
http://dear-croa.d.dooo.jp/download/illust.html
Reinforcement Learning
(Ex)Character Learning in Fighting game “Teo Feng”
Ralf Herbrich, Thore Graepel, Joaquin Quiñonero Candela Applied Games Group,Microsoft Research
Cambridge
"Forza, Halo, Xbox Live The Magic of Research in Microsoft Products"
http://research.microsoft.com/en-us/projects/drivatar/ukstudentday.pptx
Microsoft Research Playing Machines: Machine Learning Applications in Computer Games
http://research.microsoft.com/en-us/projects/mlgames2008/
Video Games and Artificial Intelligence
http://research.microsoft.com/en-us/projects/ijcaiigames/
機械学習
(例)FORZA MOTORSPORT におけるドライビング学習
Ralf Herbrich, Thore Graepel, Joaquin Quiñonero Candela Applied Games Group,Microsoft Research Cambridge
"Forza, Halo, Xbox Live The Magic of Research in Microsoft Products"
http://research.microsoft.com/en-us/projects/drivatar/ukstudentday.pptx
レーシングラインに沿わせるのではなく、理想とする位置とスピードから
コントローラーの制御を計算して、物理制御によって車を運転する。
DECISION MAKING
ALGORITHM
Chapter 3-3
Intelligence World
Environment World
Effector・BodySensor・
Body
Memory
Recog-
nition
Working
Memory
Small
Memory
Information Processing
Abstraction
of
Information
Decision
making
Body
Control
Effector・Body
Motion
Making
Motion synthesis process
body module
Motion
Synthesis
Decision making
Module
Decision making
Module
Decision making
Module
Decision Making Model
State-based AI
Goal-based AI
Rule-based AI
Behavior-based AI
Usually decision-Making is a very complex process.
But in artificial intelligence, there are some simple basic styles.
Simulation-based AI
Utility-based AI
Task-based AI
Decision Making
Reactive・Non-reactive
• Reactive = Reaction to the change of
environment.
• Non-reactive = Making an abstract action
by following a goal and plan.
Decision Making Model
State-based AI
Goal-based AI
Rule-based AI
Behavior-based AI
Usually decision-Making is a very complex process.
But in artificial intelligence, there are some simple basic styles.
Simulation-based AI
Utility-based AI
Task-based AI
Decision Making
Reactive
Non-Reactive
Decision Making Model
State-based AI
Goal-based AI
Rule-based AI
Behavior-based AI
Usually decision-Making is a very complex process.
But in artificial intelligence, there are some simple basic styles.
Simulation-based AI
Utility-based AI
Task-based AI
Decision Making
Reactive
Non-Reactive
IF ( Condition Statement ) then (Result Statement)
Rule-based Decision Making
Rule
The form is called “Rule”.
Of course, a structure like IF ( … IF (.... IF… ) ) ) can be called
rule-based, but,
Rule-based algorithm means
a rule is used for decision-making as a fundamental element.
Inference Engine
A B C D E
T F F F F
T T F F F
T T F T F
T T T T F
T T T T T
F T T T T
F F F T T
……………………………
……………………………
…………………
T: True F: False
ID 0 : IF A THEN B
ID 1 : IF A && D THEN C
ID 3 : IF C THEN E
ID 4 : IF B THEN D
ID .. :
ID 4 : IF E THEN ~A
There are many rules. If a condition statement in a rule is true,
the rule is “fired”. A result statement in a fired rule becomes
true, and it fires another rule.
A change of true/False
Rule Control
ID 0 : IF …. THEN …
ID 1 : IF …. THEN …
ID 3 : IF …. THEN ….
ID 4 : IF …. THEN …
ID .. :
ID 4 : IF …. THEN …
Priority: 3
Priority: 1
Priority: 4
Priority: 5
Priority: 2
A constant priority value or dynamic priority is attached to each rule.
The rule with highest priority is fired in all fired rules.
The system is used by tactical thinking and character behavior.
Priority: -
Control
Rule = IF ( Action Condition) then (Action Command)
Rule Control
ID 0 : IF …. THEN …
ID 1 : IF …. THEN …
ID 3 : IF …. THEN ….
ID 4 : IF …. THEN …
ID .. :
ID 5 : IF …. THEN …
Priority: 3Priority: 1
Priority: 4
Priority: 5
Priority: 2
Thinking module picked up one rule from the game situation.
Priority: -
Control
Thinking
Module
Rule = IF ( Action Condition) then (Action Command)
Example
http://gomibako.symphonic-net.com/vote.cgi?genre=act_b&rating=9
ID 0 : IF (an enemy found) THEN (escape)
ID 1 : IF (cannot find any) THEN (random walk)
ID 2 : IF (found item) THEN (get the item)
ID 3 : IF (found door) THEN (go through it)
ID 0 : IF (enemy is strong) THEN (Magic)
ID 1 : IF (found many enemies) THEN (attack the
weakest)
ID 2 : IF (HP<20) THEN (spell refresh magic )
ID 3 : IF (found a hole) THEN (avoid it)
Action game
RPG
Rule-based AI in The Sims 3
Rule-based AI
 Genre:Simulation
 Developer: Maxis
 Publisher : EA
 Hardware: PC, PS3
 Year: 2009
[GDC2010] Richard Evans, "Modeling Individual Personalities in The Sims 3"
http://www.gdcvault.com
Decision Making Model
State-based AI
Goal-based AI
Rule-based AI
Behavior-based AI
Usually decision-Making is a very complex process.
But in artificial intelligence, there are some simple basic styles.
Simulation-based AI
Utility-based AI
Task-based AI
Decision Making
Reactive
Non-Reactive
Task based AI
Task Task describes AI action
Task Task
Tasks have relation with each other.
For example, task order, task hierarchy , task…
Task based AI
Task Task
Tasks are defined as actions to the same target, and they can cooperate with each other.
Task
Target Target Target
Task based AI
A big task is formed by combining some small tasks.
A task must represent a simple practical action.
(Simple case)
Initial
State
GOALTask1
Carry A to Ground
Task2
Carry B to Ground
Task3
Put C on B
A
B
C
B
C
AA
B
C A BC A
C
B
Task3
Put A on C
Hierarchical Task Network
• Task-based AI is a simple but strong method.
• But for modern complex and big games, it should be adapted
to multi-scale time and space.
• Hierarchical Task Network System (HTN) is often used for a
character AI.
There are many magic jewels in a field.
NPC can make a recovery drink by combining magic jewels.
Final goal is to take recovery drink to the buddy monster.
Making Recovery Drink from Magic Jewels (Game
Setting)
The way to make it is three:
• Picking up a red, blue, green Jewel in any order
• Picking up green, red, green in this order.
• Picking up two blue jewels and red one. But it is required to
pick up blue one before red one.
Method
(=Resolving a big task into some small tasks)
Make a drink
(Task)
Deliver a drink
(Task)
Take a drink
to a buddies
(Task)
Method
(=Resolving a big task into some small tasks)
mix
branch
Collect
all colors
Branch
Collect
red and blue
branch
Collect
green and red
Pickup
Blue
Red
Green
mix
Green Green mixRed Blue
RedBlue
No order task
Total order task
Partial Order Task
There are all color
jewels in a field
There are green and red jewels
in a field
There are red and blue
jewels in a field
Primitive task
Make a drink
(Task)
Precondition
Method
(=Resolving a big task into some small tasks)
Make a drink
(Task)
Deliver a drink
(Task)
Take a drink
to a buddies
(Task)
Deliver a drink
• Bring a car , Put drinks in the car, Go to the battle field.
• Drinks should be packaged in a treasure box.
• A Label should be attached to a treasure box.
MethodMethod
Put that
in car
Bring a car
Go to a
battle field
Put a drink
In the car
Attach a
label
Put it in
Treasure box
Total Order Task
Has a car
Primitive task
Deliver a drink
(Task)
Precondition
Put a drink
In the car
A car is near
Partial Order Task
By iteration of applying methods ,
Task Network is generated.
Mix
Blue
RedBlue
START
Bring
a
Car
Go to
a
battl
e
field
GOAL
Put it
in the
car
Attach
a label
Put it in
Treasure
box
Killzone 2’s AI
Alex Champandard, Tim Verweij, Remco Straatman, "Killzone 2 Multiplayer Bots",
http://files.aigamedev.com/coverage/GAIC09_Killzone2Bots_StraatmanChampandard.pdf
Organization in KILLZONE 2’s AI team
Commander AI
Squad
Leader
AI
Squad
Leader
AI
Squad
Leader
AI
Order a tactic “Defend”,”Progress”
Report of the tactics (Success/Failure)
(Feedback)
Order a target positon
Order a target
Request a re-order
Request a re-order
IndividualAI
IndividualAI
IndividualAI
IndividualAI
IndividualAI
IndividualAI
IndividualAI
IndividualAI
IndividualAI
Agent Architecture of a member (Individual AI)
Orders
Messages
Daemon
World
State
HTN
Planner
Plan
Task
Execution
Controller
Input
Intelligence
Stimuli
Percepti
on
Threats
Agent Architecture of a Squad leader
Strategy
Orders
Member
Messages
daemon
World
State
HTN
Planner
Plan
Task
Execution
Individual
Orders
Intelligence
Bullet Rocket
fire
Rocket
To Humanoid
Within range
Not to Humanoid or turret
Within a turret’s range
Attack(Task)
load
fire
end
load
fire
end
… Progress
None
Defend a base
(Task)
Delete member’s memory
Gather new information of buddies
Begin a sequence
Progress
Go and Stop
Defend
Behave (Task)
Crouching
Select
Plan Medic start
Broadcast
Care
End
Car
Defend
Target fix
Use a tool
Walk
care
Move
Stop Continue Begin
Medic
Not chage Change a tool
Apply a method
Apply a method
Apply a method
Apply a method
Decision Making Model
State-based AI
Goal-based AI
Rule-based AI
Behavior-based AI
Usually decision-Making is a very complex process.
But in artificial intelligence, there are some simple basic styles.
Simulation-based AI
Utility-based AI
Task-based AI
Decision Making
Reactive
Non-Reactive
Goal-based AI
GOAL
Describing the world and AI state
Goal-based AI
GOAL GOAL GOAL GOAL
Goal- based AI is the policy that a goal is the first.
To achieve the goal, AI makes a plan, behaviors and changes them according to the
changes of the game situation.
Goal-based AI
AI keeps checking whether the goal is achieved or not to feed back.
GOAL GOAL GOAL GOAL
Goal-Oriented Action Planning in F.E.A.R.
Agent Architecture Considerations for Real-Time Planning in Games (AIIDE 2005)
http://web.media.mit.edu/~jorkin/AIIDE05_Orkin_Planning.ppt
Decision Making Model
State-based AI
Goal-based AI
Rule-based AI
Behavior-based AI
Decision Making is generally a very complex high-degree process.
But for digital game there are 7 simple decision making algorithms.
Simulation-based AI
Utility-based AI
「(something)-based AI」means that an algorithm uses (something) as a unit.
Task-based AI
Decision Making
F.E.A.R Agent Architecture
 Genre:Horror FPS
 Developer: Monolith Production
 Publisher : SIERRA
 Hardware: Windows
 Year: 2004
Agent Architecture Considerations for Real-Time Planning in Games (AIIDE 2005)
http://web.media.mit.edu/~jorkin/AIIDE05_Orkin_Planning.ppt
Sensors
Working
Memory
Planner
BlackboardNavigation
Animation /
Movement
Targeting
Weapons
World
World
F.E.A.R COM ’s sensor
SensorNodeCombat Finding the point to fight
SensorSeeEnemy Checking Line of sight to the enemy
PassTarget Finding a safe pass to tactical point
CoverNode Finding a point to hide
World
Sensor
SensorNodeCombat
SensorSeeEnemy
PassTarget
CoverNode
Knowledge
Representation
Working
Memory
Fact
Agent Architecture Considerations for Real-Time Planning in Games (AIIDE 2005)
http://web.media.mit.edu/~jorkin/AIIDE05_Orkin_Planning.ppt
Working Memory Fact
All facts are described in the same format.
Agent Architecture Considerations for Real-Time Planning in Games (AIIDE 2005)
http://web.media.mit.edu/~jorkin/AIIDE05_Orkin_Planning.ppt
Working Memory
Fact Form
Place
Direction
Sensor
Object
Time
Unknown
Position, confidence
Direction, confidence
Sensor type, confidence
Handle, confidence
Time Stamp
AI stored all facts in its working memory
Worlking Memory
Agent Architecture Considerations for Real-Time Planning in Games (AIIDE 2005)
http://web.media.mit.edu/~jorkin/AIIDE05_Orkin_Planning.ppt
The facts to the same target are stacked on the same list.
Preparation for Planning
Symbol
Let’s represent the world AI recognize more simply.
Agent-centric Representation
kSymbol_AtNode
kSymbol_TargetIs
AimingAtMe
kSymbol_
WeaponArmed
kSymbol_
WeaponLoaded
kSymbol_Target
IsSuppressed
kSymbol_
UsingObject
kSymbol_
TargetIsDead
kSymbol_
RidingVehicle
kSymbol_AtNodeType
The World is represented by only 20 symbols .
Jeff Orkin, “3 States and a Plan: The AI of F.E.A.R.",
http://web.media.mit.edu/~jorkin/gdc2006_orkin_jeff_fear.zip
Planning by Chaining Example
kSymbol_
TargetIsDead
kSymbol_
TargetIsDead
Attack
kSymbol_
WeaponLoaded
kSymbol_
WeaponLoaded
Reload
kSymbol_
WeaponArmed
kSymbol_
WeaponArmed
Pick up
a weapon
None
Planner
Planning
Action
Pools
Replaning AI in F.E.A.R.
Jeff Orkins, Three States and a Plan: The AI of FEAR
http://alumni.media.mit.edu/~jorkin/gdc2006_orkin_jeff_fear.pdf
Chrome Hounds (FromSoftware)
Decomposing a goal to smaller goals
Goal
Goal Goal Goal
Chrome Hounds (FromSoftware)
Iteration: Decomposing a goal to smaller goals
Goal
Goal Goal Goal
Goal
Goal
Goal Goal Goal
Decision Making Model
State-based AI
Goal-based AI
Rule-based AI
Behavior-based AI
Usually decision-Making is a very complex process.
But in artificial intelligence, there are some simple basic styles.
Simulation-based AI
Utility-based AI
Task-based AI
Decision Making
Reactive
Non-Reactive
Utility-based AI
• Utility-based AI simulates a world’s model, and
assign a numerical value to a utility of action.
• Utility-based AI selects one tactic by estimating
all tactics.
(5) Decision Making
Utility-based AI
 Genre:Simulation
 Developer: Maxis
 Publisher : EA
 Hardware: PC
 Year: 2000
The Sims’ Motive Engine
Motive Engine in The Sims
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
- Needs
- Personality
- Skills
- Relationships Sloppy - Neat
Shy - Outgoing
Serious - Playful
Lazy - Active
Mean - Nice
Physical
- Hunger
- Comfort
- Hygiene
- Bladder
Mental
- Energy
- Fun
- Social
- Room
Motive Engine
[Principle] Select from all actions the best action which
makes mood value maximum.
最適な行動を選択する
Hunger +20
Comfort -12
Hygiene -30
Bladder -75
Energy +80
Fun +40
Social +10
Room - 60
Mood +18
Toilet
- Urinate (+40 Bladder)
- Clean (+30 Room)
- Unclog (+40 Room)
Mood +26
Bathtub
- Take Bath (+40 Hygiene)
(+30 Comfort)
- Clean (+20 Room)
Mood +20
What is mood ?
Mood = W_Hunger(X_Hunger) * X_Hunger + W_Engergy(X_Energy) * X_Energy + …
-100 0 100 -100 0 100
-100 0 100 -100 0 100
-100 0 100 -100 0 100
-100 0 100 -100 0 100
W_Hunger W_Energy
W_Comfort W_Fun
W_Hygiene
W_Social
W_Bladder W_Room
How to calculate utility ?
W_Hunger
X_Hunger
W_Hunger(-80)
-80 60
W_Hunger(60)
How to calculate utility ?
W_Hunger
X_Hunger
W_Hunger(-80)
-80 60
W_Hunger(60)
Hunger degree at -80 = W_Hunger(-80)*(-80)
Hunger degree at 60 = W_Hunger(60)*(60)
Δ = W_Hunger(60)*(60) - W_Hunger(-80)*(-80)
Utility for hunger
Law of diminishing marginal utility
X_Hunger
W_Hunger(-80)
-80 60
W_Hunger(60)
Δ(-80 → 60)=W_Hunger(60)*(60) - W_Hunger(-80)*(-80)
Δ (60→90) =W_Hunger(90)*(90) - W_Hunger(60)*(60)
90
W_Hunger(90)
Δ(-80 → 60) is much larger than Δ(60→90)
Utility from unsatisfied state to satisfied state is much greater
than that from satisfied state to more satisfied state .
Utility for hunger
Decision Making Model
State-based AI
Goal-based AI
Rule-based AI
Behavior-based AI
Usually decision-Making is a very complex process.
But in artificial intelligence, there are some simple basic styles.
Simulation-based AI
Utility-based AI
Task-based AI
Decision Making
Reactive
Non-Reactive
Simulation-based AI
• For a character, simulation is equal to
imagination.
• When modelling the situation is difficult,
simulation is a good way to find the best
solution.
• A simulation is executed by the game rules.
Simulation-based AI
ジャンプするシミュレーションを行うことで、成功するジャンプを見出して実行する。
Warfarmeにおける壁面移動
Simulation-based AI
加速・減速など自由な軌道を描けるAIが、複雑な地形を通過するときに、
複数の運動シミュレーションを走らすことで、もっともエレガントな軌道を見出す。
Decision Making Model
State-based AI
Goal-based AI
Rule-based AI
Behavior-based AI
Decision Making is generally a very complex high-degree process.
But for digital game there are 7 simple decision making algorithms.
Simulation-based AI
Utility-based AI
「(something)-based AI」means that an algorithm uses (something) as a unit.
Task-based AI
Decision Making
State Machine
State
State State
State Machine(Finite State Machine)
AI’s instruction is described in a state, and changes in the world and
AI are described in a transition condition.
A state machine has a loop structure but does not have feedback dynamics.
Hierarchical State Machine
Two enemy characters are patrolling. One player comes to the room.
AI character is described as Hierarchical Finite State Machine (HFSM).
(Example) Quake HFSM
http://ai-depot.com/FiniteStateMachines/FSM-Practical.html
Monster’s FSM
Spawn
Idle Attack
Die
Melee Melee
Smash Left Right
Finish spawning
Lost goal
Located goal
Zero health Zero health
Watch
Chase Chase
Attack
Attack Warning
Command Ally
Watch the exit
Call an Ally
Ally not found
& Out of
battle field
Join with Ally
Join with Ally
Found Ally
Lost enemy
Found enemy
Lost enemy
Found enemy
Patrol
10 sec.
passedHear a
sound
Ally Responds
Transition
Condition State
Higher State
Hierarchical State Machine
Quake (id Software)
Decision Making Model
State-based AI
Goal-based AI
Rule-based AI
Behavior-based AI
Decision Making is generally a very complex high-degree process.
But for digital game there are 7 simple decision making algorithms.
Simulation-based AI
Utility-based AI
「(something)-based AI」means that an algorithm uses (something) as a unit.
Task-based AI
Decision Making
Behavior-based AI
Behavior
A behavior represent not an animation detail
but a physical action.
Behavior-based AI
Behavior
BehaviorDecision-Making
Behavior
A behavior-based AI constructs its thinking by
using some behaviors.
(1) Hierarchical Structure of Box
(2) Each box has some behaviors
(3) Each box has one selection-rule
(random, sequential, priority-order…)
(4) Finally, one behavior is selected at end-of-tree.
(5) Decision Making
Behavior-based AI
 Genre:SciFi-FPS
 Developer: BUNGIE Studio
 Publisher : Microsoft
 Hardware: Xbox, Windows, Mac
 Year: 2004
Behavior-Tree (has become very popular method .)
Damian Isla (2005), Handling Complexity in the Halo 2 AI,
GDC Proceedings.,
http://www.gamasutra.com/gdc2005/features/20050311/isla_01.shtml
root
Battle
Retreat
Idle
Attack
Hide
Escape
Block
Stop
Recover
Trap
Sleep
Heal
Arrow
Sword
Hind in wood
Dig
Hide behind
object
Magic
Ice type
Wind typePriority
Priority
Sequence
Sequence
Random
PriorityRandom
Priority
Random
Behavior
(Leaf node)
Layer
Layer
Selection Rule
Selection Rule
root
Battle
Retreat
Idle
Attack
Hide
Escape
Block
Stop
Recover
Trap
Sleep
Heal
Arrow
Sword
Hind in wood
Dig
Hide behind
object
Magic
Ice type
Wind typePriority
Priority
Sequence
Sequence
Random
PriorityRandom
Priority
Random
Behavior
(Leaf node)
Layer
Layer
Selection Rule
Selection Rule
From the possible nodes in this layer,
make the highest-priority node active.
Decision Making Model
State-based AI
Goal-based AI
Rule-based AI
Behavior-based AI
Decision Making is generally a very complex high-degree process.
But for digital game there are 7 simple decision making algorithms.
Simulation-based AI
Utility-based AI
「(something)-based AI」means that an algorithm uses (something) as a unit.
Task-based AI
Decision Making
State machine compared to Behavior tree
• State machine= Steady control step by step
• Behavior tree = Adapt behavior fluently
We want to use both good points
Contents
• Chapter 1. Overview
• Chapter 2. Meta-AI
• Chapter 3. Character AI
3.1 BODY and INTELLIGENCE
3.2 CHARACTER BEHAVIOR LEARNING
3.3 DECISION MAKING ALOGORITHM
• Chapter 4. Navigation AI
• Chapter 5. Learning
• Chapter 6. QA-AI
• Chapter 7. Social Behaviors
• Chapter 8. Future Plan
Level
Navigation AI
Meta-AI
Character AI
Dynamic allocation of enemies
Observing level in real-time
Direction for agents
Making progress of game
Autonomous thinking
Cooperation
Team AI
Preparing data to make Meta-AI and
Character AI recognize the level
Managing object representation
Managing Navigation data
Path-finding / Tactical point analysis
Support
Enemy character
Player
Brain
Information
Acquisition
Control
NAVIGATION AI
Chapter 4
Game World
Knowledge Representation
Knowledge Representation and
Action world and Perceptual world
Action
World
Perceptual
World
Game World
Knowledge Representation
Knowledge Representation and
Action world and perceptual world
Action
World
Perceptual
World
AI understands the game world through knowledge representation.
It defines both action world and perceptual world, and subjective
world.
Knowledge Representation types Example
Fact Repsesentation
Semantic Net
Enemy threat Representation
Dependency Graph Rule-based
World Representation
Griesemer,J, "The Illusion of Intelligence: The Integration of AI and Level Design in Halo", 2002
http://downloads.bungie.net/presentations/gdc02_jaime_griesemer.ppt
Army
Steel Training
Field
Mine person tree
Target
Perceived data
Location (x,y,z) 0.87
Action shoot 0.40
HP 55 0.82
Derived data
Threat 0.8
Target Weight 0.9
“intentions” hurt_me
World Representation
(Example) Each waypoint has an 8-direction LOS (Line of Sight) information in Killzone.
Straatman, R., Beij, A., Sterren, W.V.D., "Killzone's AI : Dynamic Procedural Combat Tactics", 2005
http://www.cgf-ai.com/docs/straatman_remco_killzone_ai.pdf
Knowledge Representation for level design
is called World Representation (WR).
WR is based on navigation meshes or waypoints.
Knowledge Representation and
World Representation
Knowledge Representation
World
Representation
World Representation Example
NavMesh/Waypoint
Hierarchical Representation
LOS Map
Waypoint Clustering
Enemy Distribution map Territory Representation
Tactical Point System
Halo2Killzone
Killzone2Halo Assassin’s Creed
Left 4 Dead
Alex J. Champandard, Remco Straatman, Tim Verweij, "On the AI Strategy for KILLZONE 2's Bots”
http://aigamedev.com/open/coverage/killzone2/
Damian Isla,"Building a Better Battle: HALO 3 AI Objectives",
http://halo.bungie.net/inside/publications.aspx
Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment
Conference , http://www.valvesoftware.com/company/publications.html
Dude, Where's My Warthog: From Pathfinding to General Spatial Competence, D. Isla, Invited talk, Artificial Intelligence and Interactive Digital Entertainment (AIIDE) 2005 http://naimadgames.com/publications.html
Knowledge Representation・
World Representation
Knowledge Representation
World
Representation
Object
Representation
Object Representation
車
レバー
ドアの知識表現
位置 x: 3.0 y:.10,0
レバーで開けることが出来る
壊して開けることが出来る
車の知識表現
位置 x: 3.0 y:.2,0
乗って動かすことが出来る。
時速80kmで動く。
レバーの知識表現
位置 x: 5.0 y:.5,0
引くが出来る。
(結果:ドアが開く)
ドア
Door KR
Position x:3.0 y:10.0
Rule: if the lever is pulled, the door opens.
Lever KR
Position x:5.0 y:5.0
Enable to pull (Affordance).
Rule: if the lever is pulled, the door opens.
Car KR
Position x:3.0 y:2.0
Enable to drive.
Maximum speed: 80km
Representation of an object
Object Representation
This is a car.
A vector shows the direction
In which the car can move.
Dude, Where's My Warthog: From Pathfinding to General Spatial Competence, D. Isla, Invited talk, Artificial Intelligence and Interactive Digital Entertainment (AIIDE) 2005
http://naimadgames.com/publications.html
Affordance
Can eat
Can climb
Can move
Action World
Affordance
Can eat
Can climb
Can move
Knowledge Representation
Game
World
。
作用世界
知覚世界
See
possibilities
of actions
Invoke
desires
作用空間
Affordances
Can walk
Can reach
Can push
SMART TERRAIN
Chapter 4-1
Smart Terrain
• Some points attached to an object or a terrain
which help a character make an action with the
object.
• The point has a logic, an animation to use the
object
• It suggests the action when a character closes
with it.
http://www.gdcvault.com/play/1020831/Bringing-BioShock-Infinite-s-Elizabeth
DECISION MAKING AND WORLD
REPRESENTATION
3.6.
Halo2: Orders & Styles
Handling Complexity in the Halo 2 AI, D. Isla, GDC 2005
http://naimadgames.com/publications.html
Order
Push
forward
Order
Push
forward
If Killed X
enemies
If X dead
Order
fallback
Each territory has a different behavior tree which is used by the character who enters in it.
Halo (Bungie)
http://halo.bungie.net/inside/publications.aspx#pub15068
PATH-FINDING
Chapter 4-2
Navigation Data
Waypoint・Graph
(Networked Graph with points)
Navigation Mesh(Networked
Graph with polygons)
Walk-able
フリー素材屋Hoshino http://www.s-hoshino.com/
PATH-FINDING
Chapter 4-2
Path search on networked Graph
M
F
L
B
A
S
O
P
D
C
G
S
V
H
Q
X
K
N
J
R
T
W
E
I
U
Z
Y
G
54
6 3
7 23
B C
3
G
D E
3
2 24
L
3
3
5
5 J
F
A next node is a point which is shortest from a
start point. Searching finishes at the goal.
Evaluation for each node = sum of path from a start point
Dijkstra’s Algorithm
Path search on networked Graph
A* algorithm
M
F
L
B
A
S
O
P
D
C
G
S
V
H
Q
X
K
N
J
R
T
W
E
I
U
Z
Y
G
54
6 3
7 23
B C
3
3
2 24 3
5
5
A next node is a node with lowest evaluation.
When the position of goal is already known,
path search uses done by using heuristic distance.
Evaluation for each node = sum of path from a start point + Herusitic distance
Heuristic distance
(Ordinary, straight distance)
3+14.2 3+13.8
G H
3 5+10.5 6+8.4
Counter Strike (2000) : Nav Mesh
The Official Counter-Strike Bot
http://aigamedev.com/insider/presentation/official-counter-strike-bot/
Dragon Age : Way Point
Dragon Age pathfinding program put to the test
https://www.youtube.com/watch?v=l7YQ5_Nbifo
TACTICAL POINT SYSTEM
Chapter 4-3
History of Tactical Point System
• Tactical Position Picking
Killzone (2005, Guerrilla) in Program
• TPS (Tactical Point System)
CRYENGINE (2010, CRYTEK) Tool & Runtime System
• EQS(Environment Query System)
UNREAL ENGINE 4 (2014, Epic games)Tool & Runtime System
• PQS (Point Query System)
FINAL FANTASY XV (2016, SQUARE ENIX)
Point Query System
A system to find a best positon
- for a character’s ability
- in a terrain
- in real-time
Point Query System principle
Point distribution (Generation)
distributing point around the objective (例)grid、circle
Filtering
Removing points not adjust for a purpose by a conditon (1)
.
.
.
Evaluation
Evaluation for remained points and pick up one points with best score
Filtering
Removing points not adjust for a purpose by a conditon (2)
Filtering
Removing points not adjust for a purpose by a conditon (N)
PQS (Point Query System)
A bowman finds the best point
(i) Game situation
(ii) Generating points around it
(iii) Filtering points with bad terrain
(iv) Filtering points where it’s arrow
can not reach
(v) Filtering points around buddies
(vi) Picking up one point with
highest terrain
敵
味方
今考えている
キャラクター
高台
高台
海
穴
Heatmap
http://www.xn--eckzb3bzhw32znfcp1zduw.com/data/fire.php
メタAI
http://www.xn--eckzb3bzhw32znfcp1zduw.com/data/fire.php
フロントライン
(勢力均衡線)
http://www.xn--eckzb3bzhw32znfcp1zduw.com/data/fire.php
メタAI
Contents
• Chapter 1. Overview
• Chapter 2. Meta-AI
• Chapter 3. Character AI
3.1 BODY and INTELLIGENCE
3.2 CHARACTER BEHAVIOR LEARNING
3.3 DECISION MAKING ALOGORITHM
• Chapter 4. Navigation AI
• Chapter 5. Learning
• Chapter 6. QA-AI
• Chapter 7. Social Behaviors
• Chapter 8. Future Plan
LEARNING
Chapter 5
Intelligence World
Environment World
Effector・BodySensor・
Body
Memory
Recog-
nition
Working
Memory
Small
Memory
Information Processing
Abstraction
of
Information
Decision
making
Body
Control
Effector・Body
Motion
Making
Motion synthesis process
body module
Motion
Synthesis
Decision making
Module
Decision making
Module
Decision making
Module
World
Sensor
知識
生成
Knowledg
e
Making
意思決定
Decision
Making
運動
生成
Motion
Making
Information Flow
記憶
Principle of Learning
ActionResult Decision
Making
Body
Neural Networks in Supreme Commander 2 (GDC 2012)
Michael Robbins (Gas Powered Games)
http://www.gdcvault.com/play/1015406/Off-the-Beaten-Path-Non
http://www.gdcvault.com/play/1015667/Off-the-Beaten-Path-Non
Neural Networks in Supreme Commander 2 (GDC 2012)
Michael Robbins (Gas Powered Games)
http://www.gdcvault.com/play/1015406/Off-the-Beaten-Path-Non
http://www.gdcvault.com/play/1015667/Off-the-Beaten-Path-Non
ニューラルネットワークの応用
Neural Networks in Supreme Commander 2 (GDC 2012)
Michael Robbins (Gas Powered Games)
http://www.gdcvault.com/play/1015406/Off-the-Beaten-Path-Non
http://www.gdcvault.com/play/1015667/Off-the-Beaten-Path-Non
Belief – Desire – Intention モデル
Desire
(Perceptrons)
Opinions
(Decision Trees)
Beliefs
(Attribute List)
Richard Evans, “Varieties of Learning”, 11.2, AI Programming Wisdom
Low Energy
Source =0.2
Weight =0.8
Value =
Source*Weight =
0.16
Tasty Food
Source =0.4
Weight =0.2
Value =
Source*Weight =
0.08
Unhappines
s
Source =0.7
Weight =0.2
Value =
Source*Weight =
0.14
∑
0.16+0.08+0.14
Threshold
(0~1の値に
変換)
hunger
Desire(お腹すいた度)欲求を決定する
対象を決定する
それぞれの対象の
固有の情報
他にも
いろいろな
欲求を計算
Hunger
Compassion
Attack(戦いたい)
Help
Black & White (Lionhead,2000)
Black & White (Lionhead,2000)
Training of creature by learning
http://www.youtube.com/watch?v=2t9ULyYGN-s
http://www.lionhead.com/games/black-white/
14:20-
Reinforcement Learning
(Ex) Fighting Game
Kick
Punc
h
Magic
R_0 : Reward = Damage
http://piposozai.blog76.fc2.com/
http://dear-croa.d.dooo.jp/download/illust.html
Reinforcement Learning
(Ex)Character Learning in Fighting game “Teo Feng”
Ralf Herbrich, Thore Graepel, Joaquin Quiñonero Candela Applied Games Group,Microsoft Research
Cambridge
"Forza, Halo, Xbox Live The Magic of Research in Microsoft Products"
http://research.microsoft.com/en-us/projects/drivatar/ukstudentday.pptx
Microsoft Research Playing Machines: Machine Learning Applications in Computer Games
http://research.microsoft.com/en-us/projects/mlgames2008/
Video Games and Artificial Intelligence
http://research.microsoft.com/en-us/projects/ijcaiigames/
Deep Mind
• https://deepmind.c
om/blog/capture-
the-flag/
• Multi agnet
learning
https://deepmind.com/blog/article/capture-the-flag-science
Two Agent Cooperation by DeepMind
https://deepmind.com/blog/article/capture-the-flag-science
OpenAI
https://openai.com
https://qiita.com/ishizakiiii/items/75bc2176a1e0b65bdd16
• OpenAI Gym https://github.com/openai/gym
OpenAI Five for Dota2 (eSports)
• Dota2
• https://gigazine.net/news/20180719-openai-five-benchmark/
• https://blog.openai.com/openai-five-benchmark/
• https://www.youtube.com/watch?time_continue=6&v=UZHTNBMAfAA
• https://www.youtube.com/watch?v=TChVnGHUxOw
Deep Learning in Ubisoft
https://gdcvault.com/play/1025653/The-Alchemy-and-Science-of
The Alchemy and Science of Machine Learning for Games
Yves Jacquier (Ubisoft Montreal)
Deep Learning in Ubisoft
https://gdcvault.com/play/1025653/The-Alchemy-and-Science-of
The Alchemy and Science of Machine Learning for Games
Yves Jacquier (Ubisoft Montreal)
https://gdcvault.com/play/1025653/The-Alchemy-and-Science-of
35:00-
Deep Learning in Ubisoft
The Alchemy and Science of Machine Learning for Games
Yves Jacquier (Ubisoft Montreal)
Neuro Evolution
回路の構成を遺伝子コードで表現する。
Weight: 1.2
From: 1
To: 3
Enabled: Y
Recurrent: N
Innovation: 1
Weight: -3
From: 1
To: 4
Enabled: Y
Recurrent: N
Innovation: 6
Weight: 0.7
From: 2
To: 4
Enabled: Y
Recurrent: N
Innovation: 2
Weight: -2.1
From: 3
To: 4
Enabled: Y
Recurrent: N
Innovation: 6
Weight: 1.1
From: 3
To: 5
Enabled: N
Recurrent: N
Innovation: 3
Weight: 0.8
From: 4
To: 5
Enabled: Y
Recurrent: N
Innovation: 4
Weight: -1
From: 5
To: 3
Enabled: Y
Recurrent: Y
Innovation: 7
ID: 1
Type: Input
ID: 2
Type: Input
ID: 3
Type: hidden
ID: 4
Type: hidden
ID: 5
Type: Output
2
1
4
3
5
Innovation ID によってリンク、
ニューロンを全遺伝子共通の管理す
る。
無効
INPUT Output
Genetic Algorithm and Neural Net
Genetic Algorithm and Neural Net
Parent1
2
1
7
3
4
1
1->4
2
2->4
3
3->4
6
3->7
7
7->4
12
1->7
1
1->4
2
2->4
3
3->4
4
2->5
5
5->4
8
5->9
9
9->4
15
3->9
Parent 2
2
1
3
95 4
Innovation ID
Ordering by ID
1
1->4
2
2->4
3
3->4
1
1->4
2
2->4
3
3->4
4
2->5
5
5->4
6
3->7
7
7->4
8
5->9
9
9->4
12
1->7
15
3->9
交
叉
4
2->5
5
5->4
8
5->9
9
9->4
15
3->9
1
1->4
2
2->4
3
3->4
Crossover
親1
2
1
7
3
4
1
1->4
2
2->4
3
3->4
6
3->7
7
7->4
12
1->7
1
1->4
2
2->4
3
3->4
4
2->5
5
5->4
8
5->9
9
9->4
15
3->9
親2
2
1
3
95 4
Innovation ID
交
叉
2
1
3
95 4
4
2->5
5
5->4
8
5->9
9
9->4
15
3->9
1
1->4
2
2->4
3
3->4
子供=新しいニューラルネットワーク
Neuro Evolution
Mat Buckland, Chapter 11, AI techniques for game programming, Premier Press, 2002
これまでニューラルネットは、最初に構造を定義した後は変化しなかった。
動的にニューラルネットの構造を変化させる技術
Neuron Evoluation of Augmenting Topologies (NEAT)
第3世代
第929世代
第1368世
代
https://arxiv.org/pdf/1410.7326.pdf
弾幕自動生成
• Applying Evolutionary Algorithms to the Galactic Arms Race
• http://aigamedev.com/open/interviews/galactic-arms-race/
https://www.youtube.com/watch?v=N8q2uOwWcFc
Contents
• Chapter 1. Overview
• Chapter 2. Meta-AI
• Chapter 3. Character AI
3.1 BODY and INTELLIGENCE
3.2 CHARACTER BEHAVIOR LEARNING
3.3 DECISION MAKING ALOGORITHM
• Chapter 4. Navigation AI
• Chapter 5. Learning
• Chapter 6. QA-AI
• Chapter 7. Social Behaviors
• Chapter 8. Future Plan
QA-AI
(QUALITY
ASSURANCE AI)
Chapter 6
Deep Q-Learning
Volodymyr Mnih, Koray Kavukcuoglu, David Silver, Alex Graves,
Ioannis Antonoglou, Daan Wierstra, Martin Riedmiller (DeepMind Technologies)
Playing Atari with Deep Reinforcement Learning
http://www.cs.toronto.edu/~vmnih/docs/dqn.pdf
画面を入力
操作はあらかじめ教える
スコアによる強化学習
学習
Volodymyr Mnih, Koray Kavukcuoglu, David Silver, Alex Graves,
Ioannis Antonoglou, Daan Wierstra, Martin Riedmiller (DeepMind Technologies)
Playing Atari with Deep Reinforcement Learning
http://www.cs.toronto.edu/~vmnih/docs/dqn.pdf
開発会社 システム 詳細 参照
Ubi
2018
Assassin’s Creed Origin の
レベルアセット自動検証
スクリプトによるオブジェクト同士の干渉テスト
キャラクターの生成ポイントと配置オブジェクトの干渉
テスト / スクリプトによるテスト
‘Assassin’s Creed Origins‘: Monitoring and Validation of World Design
Data Nicholas Routhier Ubisoft Montreal
http://www.gdcvault.com/play/1025054/-Assassin-s-Creed-Origins
Guerrilla
2018
Horizon Zero Down の自動プ
レイ
毎晩、自動的にAIキャラクターがゲームをプレイ ‘Horizon Zero Dawn’: A QA Open World Case Study Ana Barbuta
https://www.gdcvault.com/play/1025326/-Horizon-Zero-Dawn-A
EA
2018
Battlefield1における模倣学習
による自動プレイ
模倣学習によるキャラクターがゲーム内で戦い合う https://www.ea.com/seed/news/seed-imitation-learning-concurrent-
actions
https://www.ea.com/seed/news/self-learning-agents-play-bf1
SEGA
2018
「龍が如く」~「北斗が如く」に
おける自動プレイ
ログからの自動リプレイシステム 無料で始める!「龍が如く」を面白くするための高速デバッグログ分析と
自動化https://cedil.cesa.or.jp/cedil_sessions/view/1621
RARE
2017
Thief における Unreal Engine
上のキャラクタービヘイビアの
自動テスト
テストがクエリーの形でリスト化されて、毎晩テストされ
る
AUTOMATED TESTING FOR MULTIPLAYER GAME-AI IN SEA OF THIEVES
ROBERT MASELLA
RARE — MICROSOFT GAME STUDIOS
http://gameainorth.com/2017/
DELiGHT WORKS
2017
Fate/Grand Orderにおける自
動リプレイ
サーバーを経由したログの収集とコマンド関数列の再
現
Fate/Grand Orderにおける自動リプレイを用いたQA改善への挑戦
http://cedil.cesa.or.jp/cedil_sessions/view/1716
DeNA
2017
「逆転オセロニア」における自
動ゲームプレイ
強化学習を用いて機械学習させる DeNA TechCon2018 ゲーム体験を支えるための強化学習
https://www.slideshare.net/juneokumura/dena-techcon2018
SQUARE ENIX
2017
「グリムノーツ」における自動
ゲームバランス
遺伝的アルゴリズムを用いてプレイヤーAI群を進化さ
せてゲームバランスを調査する
遺伝的アルゴリズムによる人工知能を用いたゲームバランス調整
http://cedil.cesa.or.jp/cedil_sessions/view/1655
DeNA
2016
「FINAL FANTASY Record
Keeper」における自動プレイ
ニューロエボリューションによるプレイヤーAIの作成 AIによるゲームアプリ運用の課題解決へのアプローチ
https://cedil.cesa.or.jp/cedil_sessions/view/1511
強化学習を利用した自律型GameAIの取り組み ~高速自動プレイによる
ステージ設計支援
https://www.slideshare.net/dena_tech/gameai-denatechcon
Cygames
2016
総合システム構築 OpenCV、Python、Appiumの組み合わせ ゲーム開発におけるデバッグ作業の自動化 ~ OpenCVの「眼」で捉え、
Pythonの「脳」が思考し、Appiumの「指」で動かす
http://cedil.cesa.or.jp/cedil_sessions/view/1575
http://tech.cygames.co.jp/archives/2937/
Examples of QA AI for commercial games
2012 2016 -Summer 20182017
City
Conquest Shadowverse
Final Fantasy
Record
Keeper Grimms
Notes
Repage
Gyakuten
Othellonia
Fate/Grand
Order
Sea of
Theives
Sea of
Theives
Yakuza
Series
Yakuza 6:
The Song of
Life
Battlefield1
Horizon
Zero Dawn
Assassin’s
Creed
Origins
Commit
Assistant
Gree
Chatbot
Shadowverse
Kotodaman
SHIN MEGAMI
TENSEI Liberation
Dx2
AI
Use of Deep Learning for Game
https://www.ea.com/seed/news/seed-imitation-learning-concurrent-actions
https://www.ea.com/seed/news/self-learning-agents-play-bf1
https://www.youtube.com/watch?v=ZZsSx6kAi6Y
• https://www.youtube.com/watch?v=ZZsSx6kAi6Y
Deep Learning in Battlefield One
Deep Learning in Battlefield One
https://www.ea.com/seed/news/seed-imitation-learning-concurrent-actions
https://www.ea.com/seed/news/self-learning-agents-play-bf1
https://www.youtube.com/watch?v=ZZsSx6kAi6Y
Deep Learning in Battlefield One
https://www.ea.com/seed/news/seed-imitation-learning-concurrent-actions
https://www.ea.com/seed/news/self-learning-agents-play-bf1
https://www.youtube.com/watch?v=ZZsSx6kAi6Y
Deep Learning in Battlefield One
https://www.ea.com/seed/news/seed-imitation-learning-concurrent-actions
https://www.ea.com/seed/news/self-learning-agents-play-bf1
https://www.youtube.com/watch?v=ZZsSx6kAi6Y
Sudden Attack case: DL for hacking check
ML Tutorial Day: Beating Wallhacks using Deep Learning with
Limited Resources Junsik Hwang (GDC2019)
Sudden Attack case: DL for hacking check
ML Tutorial Day: Beating Wallhacks using Deep Learning with
Limited Resources Junsik Hwang (GDC2019)
Contents
• Chapter 1. Overview
• Chapter 2. Meta-AI
• Chapter 3. Character AI
3.1 BODY and INTELLIGENCE
3.2 CHARACTER BEHAVIOR LEARNING
3.3 DECISION MAKING ALOGORITHM
• Chapter 4. Navigation AI
• Chapter 5. Learning
• Chapter 6. QA-AI
• Chapter 7. Social Behaviors
• Chapter 8. Future Plan
SOCIAL
BEHAVIORS
Chapter 11
REPUTATION SYSTEM IN GUNSLINGER (SURREAL
SOFTWARE)
4.1
Greg lt, Kristin King, “A Dynamic Reputation System Based on Event Knowledge”, 8.6, AI Game Programming Wisdom
Reputation System
Memory Element
1
2
3
5
Group Reputation
Farmers Neural
Lawmen Hate
Bandits Like
Player Hate
Townspeople Neural
Master Event List
1. Bandit Killed Farmer
2. Player Aided Lawmen
3. Player Killed Bandit
4. Player TradedWith Townsperson
5. […]
Bandit
The Bandit sees a Player killed the friend Bandit and helps a Lawmen, so dislikes the Player
NPC Memory
Greg lt, Kristin King, “A Dynamic Reputation System Based on Event Knowledge”, 8.6, AI Game Programming Wisdom
Greg lt, Kristin King, “A Dynamic Reputation System Based on Event Knowledge”, 8.6, AI Game Programming Wisdom
Event Announcer
B1
B2
B3
B3 B4
Greg lt, Kristin King, “A Dynamic Reputation System Based on Event Knowledge”, 8.6, AI Game Programming Wisdom
Player
NPC
NPC
NPC
NPC
NPC NPC
Reputation
System Master Event List Reference
Count
1. Bandit Killed Farmer 4
2. Player Aided Lawmen 1
3. Player Killed Bandit 4
4.
5.
Player Killed Bandit.
A NPC meets a NPC
IF the two are enemies,
One NPC does not tell the event to the other.
Register Event
Announces “3”
to a NPC within a radius .
An event happens.
Reputation System(Event form)
Master Event List 参照回数
1. Bandit Killed Farmer 4
2. Player Aided Lawmen 1
3. Player Killed Bandit 11
4.
5.
Subject Group Player
Verb DidViolenceTo
Object Group Bandit
Object Individual Joe
Magnitude 75(Killed)
Where 50,20,128(In front of saloon)
When High noon
Template KilledBanditTemplate
ReferenceCount Known by 11 NPCs
Reputation Effects Bandits hate player more
Lawmen like player more
Farmers like player more
Greg lt, Kristin King, “A Dynamic Reputation System Based on Event Knowledge”, 8.6, AI Game Programming Wisdom
Reputation System(Information Exhange)
Memory Element Confidence Time Stamp
1 43 0:13:43
3 76 1:4:53
7 63 1:7:45
11 12 1:24:54
12 52 2:6:55
Memory Matching
NPC Memory NPC Memory
Memory Element Confidence TimeStamp
2 43 0:15:13
4 87 0:46:3
7 12 2:17:56
15 53 2:14:45
71 84 3:56:15
If there are memories for the same event, one memory is over-written by the other with a higher confidence,
If there are memories for the same object, one memory is over-written by the other newer memory.
Event to overwrite → In Master Event List, Reference Count +1
Event to be deleted → Master Event List -1
(If a reference count becomes zero, it is deleted from Master Event List)
Greg lt, Kristin King, “A Dynamic Reputation System Based on Event Knowledge”, 8.6, AI Game Programming Wisdom
NPC NPC
Reputation System
(Information Complementation System)
When NPC A meets Joe, Joe is already dead.
Joe was Killed by unknown group
NPC saw Joe was shot by a Lawmen.
Joe was shot by lawmen group
Joe was killed by lawmen group
Reconstruct a new information
From incomplete information.
It may be wrong, but human is like that….
Greg lt, Kristin King, “A Dynamic Reputation System Based on Event Knowledge”, 8.6, AI Game Programming Wisdom
NPC
NPC
NPC
NPC
References
(1) Greg lt, Kristin King, “A Dynamic Reputation System
Based on Event Knowledge”, 8.6, AI Game Programming
Wisdom
(2) Richard Rouse III,"Postmortem: The Game Design of
Surreal's The Suffering", Gamasutra,
http://www.gamasutra.com/view/feature/2110/postmortem_the_game_design_of_.php
(3) "Gunslinger: First Impressions",IGN,
http://ps2.ign.com/articles/134/134549p1.html
(4) Gunslinger [PS2 - Cancelled]
http://www.unseen64.net/2009/09/15/gunslinger-ps2-cancelled/
Never Winter Night’s Reputation System
Ultima Online’s Reputation System
Gunslinger’s Reputation System
Ever Quest’s Reputation System
Original
Reputation System
Never Winter Night’s Reputation System
Witness Nobody Attack to
the friend
species
NPC who
is friend
with the
object
Neutrality NPC who is
neutral to the
object
Attack
to the
enemy
species
An enemy
Attack -2 -12 -6 -4 -2 -2 0
Kill -5 -45 -25 -15 -5 -5 0
Steal -1 -5 -3 -2 0 -1 0
Monster Bandit Guard People
Monster 100 0 0 0
Bandit 50 50 0 0
Guard 0 0 100 100
People 0 0 100 80
Object
Subject
Friend parameter = How good the subject thinks the object .
How Friend parameter changes to the enemy action.
Influence to friend parameter changes to who saw the event
Mark Brokington, “Building a reputation system: Hatred, Forgivveness, and Surrender in Never Winter Nights”, 6.5, Massive Multiplayer Game Development
Never Winter Night’s Reputation System
PC Monster Bandit Guard People
Monster 0 100 0 0 0
Bandit 0 50 50 0 0
Guard 95 0 0 100 100
People 75 0 0 100 80
Object
Subject
Friend parameter = How good the subject thinks the object is .
Mark Brokington, “Building a reputation system: Hatred, Forgivveness, and Surrender in Never Winter Nights”, 6.5, Massive Multiplayer Game Development
Personal Reputation
Guard remembers the character who attacked it.
時間
Reputation
Guard changes the reputation to the PC who attacked it
40 220
To prevent all from attacking the PC,
PC’s reputation becomes recovered automatically.
Guard
Guard
Guard
Guard
Guard
Guard
Mark Brokington, “Building a reputation system: Hatred, Forgivveness, and Surrender in Never Winter Nights”, 6.5, Massive Multiplayer Game Development
Reference
Mark Brokington, “Building a reputation system: Hatred,
Forgivveness, and Surrender in Never Winter Nights”, 6.5,
Massive Multiplayer Game Development
DISTRIBUTION AND ALLOCATION OF NPC
4.2
F-formation (Kendon, 1984)
• Standing position of a group
Paul Marshall,Yvonne Rogers,Nadia Pantidi
Using F-formations to analyse spatial patterns of interaction in physical environments
http://mcs.open.ac.uk/pervasive/pdfs/MarshallCSCW2011.pdf
p-space
o-space
r-space
F-formation Pattern
Paul Marshall,Yvonne Rogers,Nadia Pantidi
Using F-formations to analyse spatial patterns of interaction in physical environments
http://mcs.open.ac.uk/pervasive/pdfs/MarshallCSCW2011.pdf
F-formation Pattern
Paul Marshall,Yvonne Rogers,Nadia Pantidi
Using F-formations to analyse spatial patterns of interaction in physical environments
http://mcs.open.ac.uk/pervasive/pdfs/MarshallCSCW2011.pdf
Territory and Influence
• Territory …distance between two people
• behavioral influence
Region where a behavior has influence
- Social place
- Social situation
Social Dynamics
Social Dynamics
= Social Behavior influence
at Social place
makes Social Situation
Common space
(do not enter!)
Rings of the attendees for conversation.
A person who enters the circle,
someone sees the person.
F-formation
Cladio Pedica - Spontaneous Avatar Behaviour for Social Territoriality Reykjavik University.
http://www.ru.is/faculty/hannes/students/MSThesisClaudioPedica.pdf
A person who enters the circle,
someone sees that person carefully.
p-space
o-space
r-space
c-space
The distance social behavior has
enough effectiveness
A distance of
conversation
Territory four people forms
F-formation
Cladio Pedica - Spontaneous Avatar Behaviour for Social Territoriality Reykjavik University.
http://www.ru.is/faculty/hannes/students/MSThesisClaudioPedica.pdf
Belgian AI
Grid capacity, Attack Capacity
Attack Weight = 4
12
Grid Capacity = Number of monsters that can enter the region
Each monster has an attack weight,
Attack Capacity = maximum sum of the monsters’ attack weight.
GDC 2012 AI Postmortems:
Kingdoms of Amalur: Reckoning, Darkness II and Skulls of the Shogun
Michael Dawe,
http://www.gdcvault.com/play/1015380/AI-Postmortems-Kingdoms-of-Amalur
Attack Weight = 4
Grid Capacity = 5
Attack Capacity = 12
2
Attack Weight = 6
(Normal Attack)
Attack Weight = 10
(Special Attack)
Belgian AI(Example)
Stage
Manager
GDC 2012 AI Postmortems:
Kingdoms of Amalur: Reckoning, Darkness II and Skulls of the Shogun
Michael Dawe,
http://www.gdcvault.com/play/1015380/AI-Postmortems-Kingdoms-of-Amalur
Stage
Manager
Belgian AI(Example)
GDC 2012 AI Postmortems:
Kingdoms of Amalur: Reckoning, Darkness II and Skulls of the Shogun
Michael Dawe,
http://www.gdcvault.com/play/1015380/AI-Postmortems-Kingdoms-of-Amalur
A monster requests to a stage Manager.
The stage manager assigns possession
of the nearest slot
After the monster attacks a player,
It returns the possession soon.
Stage
Manager
Belgian AI(Example)
GDC 2012 AI Postmortems:
Kingdoms of Amalur: Reckoning, Darkness II and Skulls of the Shogun
Michael Dawe,
http://www.gdcvault.com/play/1015380/AI-Postmortems-Kingdoms-of-Amalur
A monster who begins to attack
can lock itself to a given assignment.
Stage
Manager
Belgian AI(Example)
GDC 2012 AI Postmortems:
Kingdoms of Amalur: Reckoning, Darkness II and Skulls of the Shogun
Michael Dawe,
http://www.gdcvault.com/play/1015380/AI-Postmortems-Kingdoms-of-Amalur
TARGETING WITH BLACKBOARD
4.3
1
2 3
4 5
KS
A
B
C
Enemy B Slot 2
Enemy C Slot 1
Enemy A
Slot 2
Enemy B
Slot 1
Enemy A
Slot 2
Cooperation
Contents
• Chapter 1. Overview
• Chapter 2. Meta-AI
• Chapter 3. Character AI
3.1 BODY and INTELLIGENCE
3.2 CHARACTER BEHAVIOR LEARNING
3.3 DECISION MAKING ALOGORITHM
• Chapter 4. Navigation AI
• Chapter 5. Learning
• Chapter 6. QA-AI
• Chapter 7. Social Behaviors
• Chapter 8. Future Plan
FUTURE PLAN
Chapter 8
Usage of DL in game industry I
s just born…
• No old study
• It needs academic AI techniques
• There are many proper problems
• There is no unified approach and framework
Community
With academic Between industy
AI outside game Easy to collaborate
(Game is objective)
Not directly
competitive
AI in game Difficult to collaborate
(including many
secrets)
Directly
competitive
Community
With academic Between industy
AI outside game Easy to collaborate
(Game is objective)
Not directly
competitive
AI in game Difficult to collaborate
(including many
secrets)
Directly
competitive
Collaboration with academic and industy
Future Plan
• More machine learning will be introduced
• Making personalized experience by using meta-A
• Adjustment of game by using Reinforcement
learning in game development
• Auto-game-balancing by using deep learning
From structured approach to machine learning approach
From structured approach
to machine learning approach
• Past development
= Data-driven (data made by human)
• Future development
= Machine learning based development
Machine learning based development
Human
Development
Human and
Machine
Development
Personalized human experience by AI
Contents generation by AI (map, story)
Debug and Quality assurance by AI
Auto game balancing and adjustment by AI
Development process control by AI
TV show by using AI character
FINAL FANTASY XV
既存のゲーム
References
GAME AI PRO 3 (2017/6)
©2018 SQUARE ENIX CO., LTD. All Rights Reserved.
SQUARE ENIX 5 articles in Game AI PRO 3
Predictive Animation Control Using Simulations and Fitted Models.
Ingimar Hólm Guðmundsson, Skubch Hendrik, Fabien Gravot and Yoichiro Miyake
Ambient Interactions: Improving believability by leveraging Rule-based AI
Hendrik Skubch
Logging Visualization in FINAL FANTASY XV
Matthew W. Johnson, Fabien Gravot, Shintaro Minamino, Ingimar Gudmundsson,
Hendrik Skubch, and Miyake Youichiro
Guide to Effective Autogenerated Spatial Queries
Eric Johnson
A Character Decision-Making System for FINAL FANTASY XV by combining
Behavior Trees and State Machines
Youichiro Miyake, Youji Shirakami, Shimokawa Kazuya, Kousuke Namiki, Tomoki,
Komatsu, Tatsuhiro Joudan, Prasertvithyakarn Prasert, Takanori Yokoyama
©2018 SQUARE ENIX CO., LTD. All Rights Reserved.
Google Group: game-ai
https://goo.gl/4dVN2o
Slack: game-ai-ja
https://game-ai-ja.slack.com/join/shared_invite/zt-5cjym4fl-bODMQ7tm_oKhBsr~uTc_9A#/
Discussion group for anyone
Community

More Related Content

What's hot

Video Game Design: Art & Sound
Video Game Design: Art & SoundVideo Game Design: Art & Sound
Video Game Design: Art & SoundKevin Duggan
 
레벨 디자인의 구성
레벨 디자인의 구성레벨 디자인의 구성
레벨 디자인의 구성준태 김
 
엄재민 Nhn과제 신규 게임 컨셉 제안서
엄재민 Nhn과제 신규 게임 컨셉 제안서엄재민 Nhn과제 신규 게임 컨셉 제안서
엄재민 Nhn과제 신규 게임 컨셉 제안서재민 엄
 
GAME 3400 Level Design - Puzzle Design
GAME 3400 Level Design - Puzzle DesignGAME 3400 Level Design - Puzzle Design
GAME 3400 Level Design - Puzzle DesignSeth Sivak
 
Understanding casual games
Understanding casual gamesUnderstanding casual games
Understanding casual gamesDori Adar
 
마이너리티 아레나 기본 전투 시스템 기획서
마이너리티 아레나 기본 전투 시스템 기획서마이너리티 아레나 기본 전투 시스템 기획서
마이너리티 아레나 기본 전투 시스템 기획서Nawe1
 
Level design in 11 points
Level design in 11 pointsLevel design in 11 points
Level design in 11 points용태 이
 
2-Game Design (Game Design and Development)
2-Game Design (Game Design and Development)2-Game Design (Game Design and Development)
2-Game Design (Game Design and Development)Hafiz Ammar Siddiqui
 
LAFS Game Mechanics - Narrative Elements
LAFS Game Mechanics - Narrative ElementsLAFS Game Mechanics - Narrative Elements
LAFS Game Mechanics - Narrative ElementsDavid Mullich
 
Building Non-Linear Narratives in Horizon Zero Dawn
Building Non-Linear Narratives in Horizon Zero DawnBuilding Non-Linear Narratives in Horizon Zero Dawn
Building Non-Linear Narratives in Horizon Zero DawnGuerrilla
 
Game development pipeline
Game development pipelineGame development pipeline
Game development pipelineGAME Studios
 
Ndc17 슈퍼판타지워 포스트모템_srpg로 맨땅에 헤딩하기
Ndc17 슈퍼판타지워 포스트모템_srpg로 맨땅에 헤딩하기Ndc17 슈퍼판타지워 포스트모템_srpg로 맨땅에 헤딩하기
Ndc17 슈퍼판타지워 포스트모템_srpg로 맨땅에 헤딩하기JungKeun Lee
 
Game Design - Lecture 3
Game Design - Lecture 3Game Design - Lecture 3
Game Design - Lecture 3Andrea Resmini
 
레벨디자인 특강 이동훈
레벨디자인 특강 이동훈레벨디자인 특강 이동훈
레벨디자인 특강 이동훈Donghun Lee
 
Game Design Fundamentals
Game Design FundamentalsGame Design Fundamentals
Game Design FundamentalsIntelligent_ly
 
History of game development
History of game developmentHistory of game development
History of game developmentMohammed Mahfuz
 
Games development chapter 5
Games development chapter 5Games development chapter 5
Games development chapter 5Umair Shafique
 
Horizon Zero Dawn: A Game Design Post-Mortem
Horizon Zero Dawn: A Game Design Post-MortemHorizon Zero Dawn: A Game Design Post-Mortem
Horizon Zero Dawn: A Game Design Post-MortemGuerrilla
 
LAFS Game Mechanics - The Core Mechanic
LAFS Game Mechanics - The Core MechanicLAFS Game Mechanics - The Core Mechanic
LAFS Game Mechanics - The Core MechanicDavid Mullich
 

What's hot (20)

Video Game Design: Art & Sound
Video Game Design: Art & SoundVideo Game Design: Art & Sound
Video Game Design: Art & Sound
 
레벨 디자인의 구성
레벨 디자인의 구성레벨 디자인의 구성
레벨 디자인의 구성
 
엄재민 Nhn과제 신규 게임 컨셉 제안서
엄재민 Nhn과제 신규 게임 컨셉 제안서엄재민 Nhn과제 신규 게임 컨셉 제안서
엄재민 Nhn과제 신규 게임 컨셉 제안서
 
GAME 3400 Level Design - Puzzle Design
GAME 3400 Level Design - Puzzle DesignGAME 3400 Level Design - Puzzle Design
GAME 3400 Level Design - Puzzle Design
 
Understanding casual games
Understanding casual gamesUnderstanding casual games
Understanding casual games
 
마이너리티 아레나 기본 전투 시스템 기획서
마이너리티 아레나 기본 전투 시스템 기획서마이너리티 아레나 기본 전투 시스템 기획서
마이너리티 아레나 기본 전투 시스템 기획서
 
Level design in 11 points
Level design in 11 pointsLevel design in 11 points
Level design in 11 points
 
User Interface
User InterfaceUser Interface
User Interface
 
2-Game Design (Game Design and Development)
2-Game Design (Game Design and Development)2-Game Design (Game Design and Development)
2-Game Design (Game Design and Development)
 
LAFS Game Mechanics - Narrative Elements
LAFS Game Mechanics - Narrative ElementsLAFS Game Mechanics - Narrative Elements
LAFS Game Mechanics - Narrative Elements
 
Building Non-Linear Narratives in Horizon Zero Dawn
Building Non-Linear Narratives in Horizon Zero DawnBuilding Non-Linear Narratives in Horizon Zero Dawn
Building Non-Linear Narratives in Horizon Zero Dawn
 
Game development pipeline
Game development pipelineGame development pipeline
Game development pipeline
 
Ndc17 슈퍼판타지워 포스트모템_srpg로 맨땅에 헤딩하기
Ndc17 슈퍼판타지워 포스트모템_srpg로 맨땅에 헤딩하기Ndc17 슈퍼판타지워 포스트모템_srpg로 맨땅에 헤딩하기
Ndc17 슈퍼판타지워 포스트모템_srpg로 맨땅에 헤딩하기
 
Game Design - Lecture 3
Game Design - Lecture 3Game Design - Lecture 3
Game Design - Lecture 3
 
레벨디자인 특강 이동훈
레벨디자인 특강 이동훈레벨디자인 특강 이동훈
레벨디자인 특강 이동훈
 
Game Design Fundamentals
Game Design FundamentalsGame Design Fundamentals
Game Design Fundamentals
 
History of game development
History of game developmentHistory of game development
History of game development
 
Games development chapter 5
Games development chapter 5Games development chapter 5
Games development chapter 5
 
Horizon Zero Dawn: A Game Design Post-Mortem
Horizon Zero Dawn: A Game Design Post-MortemHorizon Zero Dawn: A Game Design Post-Mortem
Horizon Zero Dawn: A Game Design Post-Mortem
 
LAFS Game Mechanics - The Core Mechanic
LAFS Game Mechanics - The Core MechanicLAFS Game Mechanics - The Core Mechanic
LAFS Game Mechanics - The Core Mechanic
 

Similar to AI Technologies in Game Industry (English)

The Role of Shologuti in Artificial Intelligence Research: A Rural Game of Ba...
The Role of Shologuti in Artificial Intelligence Research: A Rural Game of Ba...The Role of Shologuti in Artificial Intelligence Research: A Rural Game of Ba...
The Role of Shologuti in Artificial Intelligence Research: A Rural Game of Ba...IJCSIS Research Publications
 
Artificial intelligence In Modern-Games.
Artificial intelligence In Modern-Games. Artificial intelligence In Modern-Games.
Artificial intelligence In Modern-Games. Nitish Kavishetti
 
MEIS 2015 : A Multilayered Model for Artificial Intelligence of Game Characte...
MEIS 2015 : A Multilayered Model for Artificial Intelligence of Game Characte...MEIS 2015 : A Multilayered Model for Artificial Intelligence of Game Characte...
MEIS 2015 : A Multilayered Model for Artificial Intelligence of Game Characte...Youichiro Miyake
 
Introduction to Artificial Intelligence
Introduction to Artificial IntelligenceIntroduction to Artificial Intelligence
Introduction to Artificial IntelligenceAhmed Hani Ibrahim
 
Showcase of My Research on Games & AI "till the end of Oct. 2014"
Showcase of My Research on Games & AI "till the end of Oct. 2014"Showcase of My Research on Games & AI "till the end of Oct. 2014"
Showcase of My Research on Games & AI "till the end of Oct. 2014"Mohammad Shaker
 
Why AI Is Shaping our games - Johanna Pirker, 2019
Why AI Is Shaping our games - Johanna Pirker, 2019Why AI Is Shaping our games - Johanna Pirker, 2019
Why AI Is Shaping our games - Johanna Pirker, 2019Johanna Pirker
 
Kinect krishna kumar-itkan
Kinect krishna kumar-itkanKinect krishna kumar-itkan
Kinect krishna kumar-itkanPat Maher
 
Kinect krishna kumar-itkan
Kinect krishna kumar-itkanKinect krishna kumar-itkan
Kinect krishna kumar-itkanPat Maher
 
AIES 2021 Keynote lecture
AIES 2021 Keynote lecture AIES 2021 Keynote lecture
AIES 2021 Keynote lecture Youichiro Miyake
 
Construction of Self-consciousness based on Delay, Detour, and Multi-layer
Construction of Self-consciousness based on Delay, Detour, and Multi-layerConstruction of Self-consciousness based on Delay, Detour, and Multi-layer
Construction of Self-consciousness based on Delay, Detour, and Multi-layerYouichiro Miyake
 
Artificial intelligence
Artificial intelligenceArtificial intelligence
Artificial intelligencesabairshad4
 
App interaction
App interactionApp interaction
App interactionreittes
 
Keynote at the 2023 Annual Meeting of the Society for the Neuroscience of Cre...
Keynote at the 2023 Annual Meeting of the Society for the Neuroscience of Cre...Keynote at the 2023 Annual Meeting of the Society for the Neuroscience of Cre...
Keynote at the 2023 Annual Meeting of the Society for the Neuroscience of Cre...Rogelio E. Cardona-Rivera
 
Applying AI in Games (GDC2019)
Applying AI in Games (GDC2019)Applying AI in Games (GDC2019)
Applying AI in Games (GDC2019)Jun Okumura
 
Artificial intelligence and video games
Artificial intelligence and video gamesArtificial intelligence and video games
Artificial intelligence and video gamesSimple_Harsh
 
Artificial Intelligence in Video Games: A Love Story
Artificial Intelligence in Video Games: A Love StoryArtificial Intelligence in Video Games: A Love Story
Artificial Intelligence in Video Games: A Love StoryDamian Isla
 
Game playing in artificial intelligent technique
Game playing in artificial intelligent technique Game playing in artificial intelligent technique
Game playing in artificial intelligent technique syeda zoya mehdi
 

Similar to AI Technologies in Game Industry (English) (20)

The Role of Shologuti in Artificial Intelligence Research: A Rural Game of Ba...
The Role of Shologuti in Artificial Intelligence Research: A Rural Game of Ba...The Role of Shologuti in Artificial Intelligence Research: A Rural Game of Ba...
The Role of Shologuti in Artificial Intelligence Research: A Rural Game of Ba...
 
Artificial intelligence In Modern-Games.
Artificial intelligence In Modern-Games. Artificial intelligence In Modern-Games.
Artificial intelligence In Modern-Games.
 
MEIS 2015 : A Multilayered Model for Artificial Intelligence of Game Characte...
MEIS 2015 : A Multilayered Model for Artificial Intelligence of Game Characte...MEIS 2015 : A Multilayered Model for Artificial Intelligence of Game Characte...
MEIS 2015 : A Multilayered Model for Artificial Intelligence of Game Characte...
 
Introduction to Artificial Intelligence
Introduction to Artificial IntelligenceIntroduction to Artificial Intelligence
Introduction to Artificial Intelligence
 
Showcase of My Research on Games & AI "till the end of Oct. 2014"
Showcase of My Research on Games & AI "till the end of Oct. 2014"Showcase of My Research on Games & AI "till the end of Oct. 2014"
Showcase of My Research on Games & AI "till the end of Oct. 2014"
 
Why AI Is Shaping our games - Johanna Pirker, 2019
Why AI Is Shaping our games - Johanna Pirker, 2019Why AI Is Shaping our games - Johanna Pirker, 2019
Why AI Is Shaping our games - Johanna Pirker, 2019
 
Kinect krishna kumar-itkan
Kinect krishna kumar-itkanKinect krishna kumar-itkan
Kinect krishna kumar-itkan
 
Kinect krishna kumar-itkan
Kinect krishna kumar-itkanKinect krishna kumar-itkan
Kinect krishna kumar-itkan
 
AIES 2021 Keynote lecture
AIES 2021 Keynote lecture AIES 2021 Keynote lecture
AIES 2021 Keynote lecture
 
Unity
UnityUnity
Unity
 
Construction of Self-consciousness based on Delay, Detour, and Multi-layer
Construction of Self-consciousness based on Delay, Detour, and Multi-layerConstruction of Self-consciousness based on Delay, Detour, and Multi-layer
Construction of Self-consciousness based on Delay, Detour, and Multi-layer
 
Artificial intelligence
Artificial intelligenceArtificial intelligence
Artificial intelligence
 
intern.pdf
intern.pdfintern.pdf
intern.pdf
 
App interaction
App interactionApp interaction
App interaction
 
Keynote at the 2023 Annual Meeting of the Society for the Neuroscience of Cre...
Keynote at the 2023 Annual Meeting of the Society for the Neuroscience of Cre...Keynote at the 2023 Annual Meeting of the Society for the Neuroscience of Cre...
Keynote at the 2023 Annual Meeting of the Society for the Neuroscience of Cre...
 
Applying AI in Games (GDC2019)
Applying AI in Games (GDC2019)Applying AI in Games (GDC2019)
Applying AI in Games (GDC2019)
 
Artificial intelligence and video games
Artificial intelligence and video gamesArtificial intelligence and video games
Artificial intelligence and video games
 
Why AI is shaping our games
Why AI is shaping our gamesWhy AI is shaping our games
Why AI is shaping our games
 
Artificial Intelligence in Video Games: A Love Story
Artificial Intelligence in Video Games: A Love StoryArtificial Intelligence in Video Games: A Love Story
Artificial Intelligence in Video Games: A Love Story
 
Game playing in artificial intelligent technique
Game playing in artificial intelligent technique Game playing in artificial intelligent technique
Game playing in artificial intelligent technique
 

More from Youichiro Miyake

業績リスト 三宅陽一郎 2021年9月現在
業績リスト 三宅陽一郎 2021年9月現在業績リスト 三宅陽一郎 2021年9月現在
業績リスト 三宅陽一郎 2021年9月現在Youichiro Miyake
 
スマートシティへのデジタルゲームAIの応用
スマートシティへのデジタルゲームAIの応用スマートシティへのデジタルゲームAIの応用
スマートシティへのデジタルゲームAIの応用Youichiro Miyake
 
スマートシティ、ゲームエンジン、人工知能
スマートシティ、ゲームエンジン、人工知能スマートシティ、ゲームエンジン、人工知能
スマートシティ、ゲームエンジン、人工知能Youichiro Miyake
 
Replaying Japan Keynote 2021
Replaying Japan Keynote 2021 Replaying Japan Keynote 2021
Replaying Japan Keynote 2021 Youichiro Miyake
 
デジタルゲームと人工知能
デジタルゲームと人工知能デジタルゲームと人工知能
デジタルゲームと人工知能Youichiro Miyake
 
クラシックゲームを用いたディープラーニングの近年の発展
クラシックゲームを用いたディープラーニングの近年の発展クラシックゲームを用いたディープラーニングの近年の発展
クラシックゲームを用いたディープラーニングの近年の発展Youichiro Miyake
 
フロイトと人工知能の意識モデル -「新記号論」を読んで -
フロイトと人工知能の意識モデル  -「新記号論」を読んで - フロイトと人工知能の意識モデル  -「新記号論」を読んで -
フロイトと人工知能の意識モデル -「新記号論」を読んで - Youichiro Miyake
 
バーチャルワールド、 スマートシティ、人工知能
バーチャルワールド、スマートシティ、人工知能バーチャルワールド、スマートシティ、人工知能
バーチャルワールド、 スマートシティ、人工知能Youichiro Miyake
 
人工知能にとっての他者と自分
人工知能にとっての他者と自分人工知能にとっての他者と自分
人工知能にとっての他者と自分Youichiro Miyake
 
AI時代の幸福と人間力
AI時代の幸福と人間力AI時代の幸福と人間力
AI時代の幸福と人間力Youichiro Miyake
 
「人工 知能 が 『 生命 』 となるとき」 人間はなぜ AI にキャラクターを欲望するの か
「人工 知能 が 『 生命 』 となるとき」 人間はなぜ AI にキャラクターを欲望するの か「人工 知能 が 『 生命 』 となるとき」 人間はなぜ AI にキャラクターを欲望するの か
「人工 知能 が 『 生命 』 となるとき」 人間はなぜ AI にキャラクターを欲望するの かYouichiro Miyake
 
Innovative City Forum 2020 講演資料
 Innovative City Forum 2020 講演資料 Innovative City Forum 2020 講演資料
Innovative City Forum 2020 講演資料Youichiro Miyake
 
人工知能とビジネス
人工知能とビジネス人工知能とビジネス
人工知能とビジネスYouichiro Miyake
 
人工知能とは何か?
人工知能とは何か?人工知能とは何か?
人工知能とは何か?Youichiro Miyake
 
デジタルゲームにおけるマルチエージェント操作技術
デジタルゲームにおけるマルチエージェント操作技術デジタルゲームにおけるマルチエージェント操作技術
デジタルゲームにおけるマルチエージェント操作技術Youichiro Miyake
 

More from Youichiro Miyake (20)

業績リスト 三宅陽一郎 2021年9月現在
業績リスト 三宅陽一郎 2021年9月現在業績リスト 三宅陽一郎 2021年9月現在
業績リスト 三宅陽一郎 2021年9月現在
 
スマートシティへのデジタルゲームAIの応用
スマートシティへのデジタルゲームAIの応用スマートシティへのデジタルゲームAIの応用
スマートシティへのデジタルゲームAIの応用
 
スマートシティ、ゲームエンジン、人工知能
スマートシティ、ゲームエンジン、人工知能スマートシティ、ゲームエンジン、人工知能
スマートシティ、ゲームエンジン、人工知能
 
Replaying Japan Keynote 2021
Replaying Japan Keynote 2021 Replaying Japan Keynote 2021
Replaying Japan Keynote 2021
 
デジタルゲームと人工知能
デジタルゲームと人工知能デジタルゲームと人工知能
デジタルゲームと人工知能
 
クラシックゲームを用いたディープラーニングの近年の発展
クラシックゲームを用いたディープラーニングの近年の発展クラシックゲームを用いたディープラーニングの近年の発展
クラシックゲームを用いたディープラーニングの近年の発展
 
フロイトと人工知能の意識モデル -「新記号論」を読んで -
フロイトと人工知能の意識モデル  -「新記号論」を読んで - フロイトと人工知能の意識モデル  -「新記号論」を読んで -
フロイトと人工知能の意識モデル -「新記号論」を読んで -
 
バーチャルワールド、 スマートシティ、人工知能
バーチャルワールド、スマートシティ、人工知能バーチャルワールド、スマートシティ、人工知能
バーチャルワールド、 スマートシティ、人工知能
 
人工知能にとっての他者と自分
人工知能にとっての他者と自分人工知能にとっての他者と自分
人工知能にとっての他者と自分
 
AI時代の幸福と人間力
AI時代の幸福と人間力AI時代の幸福と人間力
AI時代の幸福と人間力
 
人工知能と未来
人工知能と未来人工知能と未来
人工知能と未来
 
人工知能と社会
人工知能と社会人工知能と社会
人工知能と社会
 
「人工 知能 が 『 生命 』 となるとき」 人間はなぜ AI にキャラクターを欲望するの か
「人工 知能 が 『 生命 』 となるとき」 人間はなぜ AI にキャラクターを欲望するの か「人工 知能 が 『 生命 』 となるとき」 人間はなぜ AI にキャラクターを欲望するの か
「人工 知能 が 『 生命 』 となるとき」 人間はなぜ AI にキャラクターを欲望するの か
 
Innovative City Forum 2020 講演資料
 Innovative City Forum 2020 講演資料 Innovative City Forum 2020 講演資料
Innovative City Forum 2020 講演資料
 
人工知能とDX
人工知能とDX人工知能とDX
人工知能とDX
 
人工知能と哲学
人工知能と哲学人工知能と哲学
人工知能と哲学
 
人工知能とビジネス
人工知能とビジネス人工知能とビジネス
人工知能とビジネス
 
人工知能とは何か?
人工知能とは何か?人工知能とは何か?
人工知能とは何か?
 
デジタルゲームにおけるマルチエージェント操作技術
デジタルゲームにおけるマルチエージェント操作技術デジタルゲームにおけるマルチエージェント操作技術
デジタルゲームにおけるマルチエージェント操作技術
 
Hapic と AI
Hapic と AIHapic と AI
Hapic と AI
 

Recently uploaded

Book Call Girls in Panchpota - 8250192130 | 24x7 Service Available Near Me
Book Call Girls in Panchpota - 8250192130 | 24x7 Service Available Near MeBook Call Girls in Panchpota - 8250192130 | 24x7 Service Available Near Me
Book Call Girls in Panchpota - 8250192130 | 24x7 Service Available Near Meanamikaraghav4
 
Housewife Call Girls Sonagachi - 8250192130 Booking and charges genuine rate ...
Housewife Call Girls Sonagachi - 8250192130 Booking and charges genuine rate ...Housewife Call Girls Sonagachi - 8250192130 Booking and charges genuine rate ...
Housewife Call Girls Sonagachi - 8250192130 Booking and charges genuine rate ...Riya Pathan
 
👙 Kolkata Call Girls Shyam Bazar 💫💫7001035870 Model escorts Service
👙  Kolkata Call Girls Shyam Bazar 💫💫7001035870 Model escorts Service👙  Kolkata Call Girls Shyam Bazar 💫💫7001035870 Model escorts Service
👙 Kolkata Call Girls Shyam Bazar 💫💫7001035870 Model escorts Serviceanamikaraghav4
 
VIP Call Girls Sonagachi - 8250192130 Escorts Service 50% Off with Cash ON De...
VIP Call Girls Sonagachi - 8250192130 Escorts Service 50% Off with Cash ON De...VIP Call Girls Sonagachi - 8250192130 Escorts Service 50% Off with Cash ON De...
VIP Call Girls Sonagachi - 8250192130 Escorts Service 50% Off with Cash ON De...anamikaraghav4
 
Karnal Call Girls 8860008073 Dyal Singh Colony Call Girls Service in Karnal E...
Karnal Call Girls 8860008073 Dyal Singh Colony Call Girls Service in Karnal E...Karnal Call Girls 8860008073 Dyal Singh Colony Call Girls Service in Karnal E...
Karnal Call Girls 8860008073 Dyal Singh Colony Call Girls Service in Karnal E...Apsara Of India
 
Call Girls in Barasat | 7001035870 At Low Cost Cash Payment Booking
Call Girls in Barasat | 7001035870 At Low Cost Cash Payment BookingCall Girls in Barasat | 7001035870 At Low Cost Cash Payment Booking
Call Girls in Barasat | 7001035870 At Low Cost Cash Payment Bookingnoor ahmed
 
Low Rate Call Girls Ajmer Anika 8250192130 Independent Escort Service Ajmer
Low Rate Call Girls Ajmer Anika 8250192130 Independent Escort Service AjmerLow Rate Call Girls Ajmer Anika 8250192130 Independent Escort Service Ajmer
Low Rate Call Girls Ajmer Anika 8250192130 Independent Escort Service AjmerRiya Pathan
 
Nayabad Call Girls ✔ 8005736733 ✔ Hot Model With Sexy Bhabi Ready For Sex At ...
Nayabad Call Girls ✔ 8005736733 ✔ Hot Model With Sexy Bhabi Ready For Sex At ...Nayabad Call Girls ✔ 8005736733 ✔ Hot Model With Sexy Bhabi Ready For Sex At ...
Nayabad Call Girls ✔ 8005736733 ✔ Hot Model With Sexy Bhabi Ready For Sex At ...aamir
 
VIP Call Girls Darjeeling Aaradhya 8250192130 Independent Escort Service Darj...
VIP Call Girls Darjeeling Aaradhya 8250192130 Independent Escort Service Darj...VIP Call Girls Darjeeling Aaradhya 8250192130 Independent Escort Service Darj...
VIP Call Girls Darjeeling Aaradhya 8250192130 Independent Escort Service Darj...Neha Kaur
 
VIP Call Girls Nagpur Megha Call 7001035870 Meet With Nagpur Escorts
VIP Call Girls Nagpur Megha Call 7001035870 Meet With Nagpur EscortsVIP Call Girls Nagpur Megha Call 7001035870 Meet With Nagpur Escorts
VIP Call Girls Nagpur Megha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
VIP Call Girl Kolhapur Aashi 8250192130 Independent Escort Service Kolhapur
VIP Call Girl Kolhapur Aashi 8250192130 Independent Escort Service KolhapurVIP Call Girl Kolhapur Aashi 8250192130 Independent Escort Service Kolhapur
VIP Call Girl Kolhapur Aashi 8250192130 Independent Escort Service KolhapurRiya Pathan
 
Low Rate Call Girls Gulbarga Anika 8250192130 Independent Escort Service Gulb...
Low Rate Call Girls Gulbarga Anika 8250192130 Independent Escort Service Gulb...Low Rate Call Girls Gulbarga Anika 8250192130 Independent Escort Service Gulb...
Low Rate Call Girls Gulbarga Anika 8250192130 Independent Escort Service Gulb...Riya Pathan
 
Call Girl Nashik Amaira 7001305949 Independent Escort Service Nashik
Call Girl Nashik Amaira 7001305949 Independent Escort Service NashikCall Girl Nashik Amaira 7001305949 Independent Escort Service Nashik
Call Girl Nashik Amaira 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
Contact:- 8860008073 Call Girls in Karnal Escort Service Available at Afforda...
Contact:- 8860008073 Call Girls in Karnal Escort Service Available at Afforda...Contact:- 8860008073 Call Girls in Karnal Escort Service Available at Afforda...
Contact:- 8860008073 Call Girls in Karnal Escort Service Available at Afforda...Apsara Of India
 
Kolkata Call Girl Howrah 👉 8250192130 ❣️💯 Available With Room 24×7
Kolkata Call Girl Howrah 👉 8250192130 ❣️💯 Available With Room 24×7Kolkata Call Girl Howrah 👉 8250192130 ❣️💯 Available With Room 24×7
Kolkata Call Girl Howrah 👉 8250192130 ❣️💯 Available With Room 24×7Riya Pathan
 
Air-Hostess Call Girls Shobhabazar | 8250192130 At Low Cost Cash Payment Booking
Air-Hostess Call Girls Shobhabazar | 8250192130 At Low Cost Cash Payment BookingAir-Hostess Call Girls Shobhabazar | 8250192130 At Low Cost Cash Payment Booking
Air-Hostess Call Girls Shobhabazar | 8250192130 At Low Cost Cash Payment BookingRiya Pathan
 
Independent Hatiara Escorts ✔ 8250192130 ✔ Full Night With Room Online Bookin...
Independent Hatiara Escorts ✔ 8250192130 ✔ Full Night With Room Online Bookin...Independent Hatiara Escorts ✔ 8250192130 ✔ Full Night With Room Online Bookin...
Independent Hatiara Escorts ✔ 8250192130 ✔ Full Night With Room Online Bookin...Riya Pathan
 
↑Top Model (Kolkata) Call Girls Behala ⟟ 8250192130 ⟟ High Class Call Girl In...
↑Top Model (Kolkata) Call Girls Behala ⟟ 8250192130 ⟟ High Class Call Girl In...↑Top Model (Kolkata) Call Girls Behala ⟟ 8250192130 ⟟ High Class Call Girl In...
↑Top Model (Kolkata) Call Girls Behala ⟟ 8250192130 ⟟ High Class Call Girl In...noor ahmed
 

Recently uploaded (20)

Book Call Girls in Panchpota - 8250192130 | 24x7 Service Available Near Me
Book Call Girls in Panchpota - 8250192130 | 24x7 Service Available Near MeBook Call Girls in Panchpota - 8250192130 | 24x7 Service Available Near Me
Book Call Girls in Panchpota - 8250192130 | 24x7 Service Available Near Me
 
Goa Call Girls 9316020077 Call Girls In Goa By Russian Call Girl in goa
Goa Call Girls 9316020077 Call Girls  In Goa By Russian Call Girl in goaGoa Call Girls 9316020077 Call Girls  In Goa By Russian Call Girl in goa
Goa Call Girls 9316020077 Call Girls In Goa By Russian Call Girl in goa
 
Housewife Call Girls Sonagachi - 8250192130 Booking and charges genuine rate ...
Housewife Call Girls Sonagachi - 8250192130 Booking and charges genuine rate ...Housewife Call Girls Sonagachi - 8250192130 Booking and charges genuine rate ...
Housewife Call Girls Sonagachi - 8250192130 Booking and charges genuine rate ...
 
👙 Kolkata Call Girls Shyam Bazar 💫💫7001035870 Model escorts Service
👙  Kolkata Call Girls Shyam Bazar 💫💫7001035870 Model escorts Service👙  Kolkata Call Girls Shyam Bazar 💫💫7001035870 Model escorts Service
👙 Kolkata Call Girls Shyam Bazar 💫💫7001035870 Model escorts Service
 
VIP Call Girls Sonagachi - 8250192130 Escorts Service 50% Off with Cash ON De...
VIP Call Girls Sonagachi - 8250192130 Escorts Service 50% Off with Cash ON De...VIP Call Girls Sonagachi - 8250192130 Escorts Service 50% Off with Cash ON De...
VIP Call Girls Sonagachi - 8250192130 Escorts Service 50% Off with Cash ON De...
 
Karnal Call Girls 8860008073 Dyal Singh Colony Call Girls Service in Karnal E...
Karnal Call Girls 8860008073 Dyal Singh Colony Call Girls Service in Karnal E...Karnal Call Girls 8860008073 Dyal Singh Colony Call Girls Service in Karnal E...
Karnal Call Girls 8860008073 Dyal Singh Colony Call Girls Service in Karnal E...
 
Call Girls in Barasat | 7001035870 At Low Cost Cash Payment Booking
Call Girls in Barasat | 7001035870 At Low Cost Cash Payment BookingCall Girls in Barasat | 7001035870 At Low Cost Cash Payment Booking
Call Girls in Barasat | 7001035870 At Low Cost Cash Payment Booking
 
Low Rate Call Girls Ajmer Anika 8250192130 Independent Escort Service Ajmer
Low Rate Call Girls Ajmer Anika 8250192130 Independent Escort Service AjmerLow Rate Call Girls Ajmer Anika 8250192130 Independent Escort Service Ajmer
Low Rate Call Girls Ajmer Anika 8250192130 Independent Escort Service Ajmer
 
Nayabad Call Girls ✔ 8005736733 ✔ Hot Model With Sexy Bhabi Ready For Sex At ...
Nayabad Call Girls ✔ 8005736733 ✔ Hot Model With Sexy Bhabi Ready For Sex At ...Nayabad Call Girls ✔ 8005736733 ✔ Hot Model With Sexy Bhabi Ready For Sex At ...
Nayabad Call Girls ✔ 8005736733 ✔ Hot Model With Sexy Bhabi Ready For Sex At ...
 
VIP Call Girls Darjeeling Aaradhya 8250192130 Independent Escort Service Darj...
VIP Call Girls Darjeeling Aaradhya 8250192130 Independent Escort Service Darj...VIP Call Girls Darjeeling Aaradhya 8250192130 Independent Escort Service Darj...
VIP Call Girls Darjeeling Aaradhya 8250192130 Independent Escort Service Darj...
 
VIP Call Girls Nagpur Megha Call 7001035870 Meet With Nagpur Escorts
VIP Call Girls Nagpur Megha Call 7001035870 Meet With Nagpur EscortsVIP Call Girls Nagpur Megha Call 7001035870 Meet With Nagpur Escorts
VIP Call Girls Nagpur Megha Call 7001035870 Meet With Nagpur Escorts
 
VIP Call Girl Kolhapur Aashi 8250192130 Independent Escort Service Kolhapur
VIP Call Girl Kolhapur Aashi 8250192130 Independent Escort Service KolhapurVIP Call Girl Kolhapur Aashi 8250192130 Independent Escort Service Kolhapur
VIP Call Girl Kolhapur Aashi 8250192130 Independent Escort Service Kolhapur
 
Low Rate Call Girls Gulbarga Anika 8250192130 Independent Escort Service Gulb...
Low Rate Call Girls Gulbarga Anika 8250192130 Independent Escort Service Gulb...Low Rate Call Girls Gulbarga Anika 8250192130 Independent Escort Service Gulb...
Low Rate Call Girls Gulbarga Anika 8250192130 Independent Escort Service Gulb...
 
Call Girls Chirag Delhi Delhi WhatsApp Number 9711199171
Call Girls Chirag Delhi Delhi WhatsApp Number 9711199171Call Girls Chirag Delhi Delhi WhatsApp Number 9711199171
Call Girls Chirag Delhi Delhi WhatsApp Number 9711199171
 
Call Girl Nashik Amaira 7001305949 Independent Escort Service Nashik
Call Girl Nashik Amaira 7001305949 Independent Escort Service NashikCall Girl Nashik Amaira 7001305949 Independent Escort Service Nashik
Call Girl Nashik Amaira 7001305949 Independent Escort Service Nashik
 
Contact:- 8860008073 Call Girls in Karnal Escort Service Available at Afforda...
Contact:- 8860008073 Call Girls in Karnal Escort Service Available at Afforda...Contact:- 8860008073 Call Girls in Karnal Escort Service Available at Afforda...
Contact:- 8860008073 Call Girls in Karnal Escort Service Available at Afforda...
 
Kolkata Call Girl Howrah 👉 8250192130 ❣️💯 Available With Room 24×7
Kolkata Call Girl Howrah 👉 8250192130 ❣️💯 Available With Room 24×7Kolkata Call Girl Howrah 👉 8250192130 ❣️💯 Available With Room 24×7
Kolkata Call Girl Howrah 👉 8250192130 ❣️💯 Available With Room 24×7
 
Air-Hostess Call Girls Shobhabazar | 8250192130 At Low Cost Cash Payment Booking
Air-Hostess Call Girls Shobhabazar | 8250192130 At Low Cost Cash Payment BookingAir-Hostess Call Girls Shobhabazar | 8250192130 At Low Cost Cash Payment Booking
Air-Hostess Call Girls Shobhabazar | 8250192130 At Low Cost Cash Payment Booking
 
Independent Hatiara Escorts ✔ 8250192130 ✔ Full Night With Room Online Bookin...
Independent Hatiara Escorts ✔ 8250192130 ✔ Full Night With Room Online Bookin...Independent Hatiara Escorts ✔ 8250192130 ✔ Full Night With Room Online Bookin...
Independent Hatiara Escorts ✔ 8250192130 ✔ Full Night With Room Online Bookin...
 
↑Top Model (Kolkata) Call Girls Behala ⟟ 8250192130 ⟟ High Class Call Girl In...
↑Top Model (Kolkata) Call Girls Behala ⟟ 8250192130 ⟟ High Class Call Girl In...↑Top Model (Kolkata) Call Girls Behala ⟟ 8250192130 ⟟ High Class Call Girl In...
↑Top Model (Kolkata) Call Girls Behala ⟟ 8250192130 ⟟ High Class Call Girl In...
 

AI Technologies in Game Industry (English)

  • 1. AI TECHNOLOGIES IN GAME INDUSTRY Youichiro Miyake https://www.facebook.com/youichiro.miyake http://www.slideshare.net/youichiromiyake y.m.4160@gmail.com @miyayou
  • 2. My Works (2004-2020) AI for Game Titles Books Books
  • 4. SQUARE ENIX 5 articles in Game AI PRO 3 Predictive Animation Control Using Simulations and Fitted Models. Ingimar Hólm Guðmundsson, Skubch Hendrik, Fabien Gravot and Yoichiro Miyake Ambient Interactions: Improving believability by leveraging Rule-based AI Hendrik Skubch Logging Visualization in FINAL FANTASY XV Matthew W. Johnson, Fabien Gravot, Shintaro Minamino, Ingimar Gudmundsson, Hendrik Skubch, and Miyake Youichiro Guide to Effective Autogenerated Spatial Queries Eric Johnson A Character Decision-Making System for FINAL FANTASY XV by combining Behavior Trees and State Machines Youichiro Miyake, Youji Shirakami, Shimokawa Kazuya, Kousuke Namiki, Tomoki, Komatsu, Tatsuhiro Joudan, Prasertvithyakarn Prasert, Takanori Yokoyama
  • 5. • Yoji Shirakami, Kousuke Namiki, Youichiro Miyake, Takanori Yokoyama (CEDEC 2015) • http://www.jp.square-enix.com/tech/library/pdf/2015cedec_FFXV_AI_English_part1.pdf • http://www.jp.square-enix.com/tech/library/pdf/2015cedec_FFXV_AI_English_part2.pdf • Hendrik Skubch, Not Just Planning: STRIPs for Ambient NPC Interactions in Final Fantasy XV (nucl.ai 2015) • https://archives.nucl.ai/recording/not-just-planning-strips-for-ambient-npc-interactions-in- final-fantasy-xv/ References Lecture slides
  • 6. • Youichiro Miyake, Current Status of Applying Artificial Intelligence in Digital Games Handbook of Digital Games and Entertainment Technologies, Pages 253-292 http://www.springer.com/jp/book/9789814560498 • Youichiro Miyake, A Multilayered Model for Artificial Intelligence of Game Characters as Agent Architecture Mathematical Progress in Expressive Image Synthesis III, Pages 57-60 http://www.springer.com/jp/book/9789811010750 Articles in Books References
  • 7. FINAL FANTASY XV Core AI Team • SQUARE ENIX • Youichiro Miyake (AI Graph)Youji Shirakami 、Kazuya Shimokawa (Monster AI & Learning)Kosuke Namiki, Tomoki Komatsu (Animation)Noriyuki Imamura (AI Navigation & Simulation)Fabien Gravot, Hendrik Skubch, Ingimar Holm Gudmundsson, Matthew W. Johnson (Buddy AI, Meta AI)Prasertvithyakarn Prasert, Tatsuhiro Joudan (Data Logging) Shintaro Minamino (AI Mode) Kosuke Takahashi
  • 8. Contents • Chapter 1. Introduction • Chapter 2. Character’s decision making • Chapter 3. Character’s eye 3.1 What does a living thing see? 3.2 Representation of what an AI sees 3.3 Walking 3.4 CASE STUDY: FINAL FANTASY XIV: A Realm Reborn 3.5 Smart Terrain • Chapter 4. Social Behaviors • Chapter 5. Learning for character
  • 9. Contents • Chapter 1. Overview • Chapter 2. Meta-AI • Chapter 3. Character AI 3.1 BODY and INTELLIGENCE 3.2 CHARACTER BEHAVIOR LEARNING 3.3 DECISION MAKING ALOGORITHM • Chapter 4. Navigation AI • Chapter 5. Learning • Chapter 6. QA-AI • Chapter 7. Social Behaviors • Chapter 8. Future Plan
  • 11. How to design AI ? Player Character Rock Ground Pond For example, how to design AI in this situation ?
  • 12. How to design AI ? Player Character Rock Ground Pond For example, how to design AI in this situation ? A B (Example) If the player is in A, B goes around in B. If the player is in B, B attacks A.
  • 13. How to design AI ? Player Character Rock Ground Pond For example, how to design AI in this situation ? A B (Example) If the player is in A, B goes around in B. If the player is in B, B attack A. But this statement is not the AI’s idea. A game designer writes these ideas. = They are orders to AI. Classical AI = Scripted AI
  • 14. Script From Scripted AI to Autonomous AI Game Designer’s idea Game Designer’s idea Knowledge Thinking Scripted AI Autonomous AI
  • 15. Script From Scripted AI to Autonomous AI Game Designer’s idea Game Designer’s idea Knowledge Thiniking Scripted AI Autonomous AI No longer a puppet(scripted AI). A character should be an autonomous AI which thinks by itself. Knowledge and thinking should be given to an AI.
  • 16. Player Character Rock Ground Pond How to design AI ? Terrain data (Way Points) Step 1 Let AI understand terrain = Give terrain data to AI AI can guess it relative position to a player by using terrain data.
  • 17. Navigation AI Thinking about positon by using terrain data Player Character Rock Ground Pond How to design AI ? Terrain data (Way Points) Step 2 Let AI know its position by using terrain data. AI can guess its relative position to a player by using terrain data.
  • 18. Navigation AI How to design AI ? Thinking by using terrain data Networked graph search Terrain data (Way Points) Thinking by using Terrain data Calculate the shortest path
  • 19. Navigation AI How to design AI ? Thinking by using terrain data Networked graph search Terrain data (Way Points) Thinking by using Terrain data Calculate the shortest path
  • 20. Navigation AI How to design AI ? Thinking by using terrain data Networked graph search Terrain data (Way Points) Thinking by using Terrain data Calculate the shortest path
  • 21. Navigation AI How to design AI ? Make Networked Graph include LOS (Line of Sight) data. Terrain data (Way Points) Thinking by using Terrain data All points can be seen from any point in a group. All points can be seen from any point in a group.
  • 22. Navigation AI How to design AI ? Make Networked Graph include LOS (Line of Sight) data. Terrain data (Way Points) Thinking by using Terrain data Any point of the group can not be seen any point in the group.
  • 23. Navigation AI How to design AI ? An AI can be seen by the player. Terrain data (Way Points) Thinking by using Terrain data
  • 24. How to design AI ? The player can not see the AI. Navigation AI Terrain data (Way Points) Thinking by using Terrain data
  • 25. How to design AI ? The player can see the AI. Navigation AI Terrain data (Way Points) Thinking by using Terrain data
  • 26. How to design AI ? The player can not see the AI. Navigation AI Terrain data (Way Points) Thinking by using Terrain data
  • 27. How to design AI ? The AI will move so the player can see it. Navigation AI Terrain data (Way Points) Thinking by using Terrain data
  • 28. How to design AI ? The AI will move so the player can not see it. Navigation AI Terrain data (Way Points) Thinking by using Terrain data
  • 29. Thinking its positon by using terrain data Player Character Rock Ground Pond How to design AI ? Terrain data (Way Points) Step 3 Let AI think about timing when to attack. Decision Making
  • 30. How to design AI ? Attack? Hide? Threaten? selection = Decision Making Thinking Navigation AI Terrain data (Way Points) Thinking by using Terrain data Decision Making
  • 31. How to design AI ? Navigation AI Terrain data (Way Points) Thinking by using Terrain data Decision Making Attack
  • 32. How to design AI ? Navigation AI Terrain data (Way Points) Thinking by using Terrain data Decision Making Threaten (= Going to the positon where a player can see AI)
  • 33. How to design AI ? Navigation AI Terrain data (Way Points) Thinking by using Terrain data Decision Making Hide(=AI goes to the positon where a player can not see AI)
  • 34. Thinking its positon by using terrain data Player Character Rock Ground Pond How to design AI ? Terrain data (Way Points) Step 1- 3 Let AI be intelligent. Decision Making
  • 35. Making Autonomous AI Game Designer (Human) Terrain data(Way Points) Thinking based on Terrain data Thinking based on Object data
  • 36. Making Autonomous AI Game Designer (Human) Terrain data(Way Points) Thinking based on Terrain data Thinking based on Object data The process to make AI be intelligent Step 1: Give knowledge Step2: Make AI think by using knowledge Step3 : Let AI do Decision Making by itself
  • 37. Knowledge Thinking Making Autonomous AI Game Designer (Human) Representing knowledge Thinking on knowledge The most fundamental thing to make autonomous AI is to give knowledge and thinking to a character. Terrain data(Way Points) Thinking based on Terrain data Thinking based on Object data
  • 38. Knowledge Thinking Making Autonomous AI Game Designer (Human) Intelligence = Knowledge × Thinking Terrain data (Way Points) Thinking based on Terrain data Thinking based on Object data Object data Body data Thinking based on Body data Representing knowledge Thinking on knowledge
  • 39. Knowledge Thinking Making Autonomous AI Game Designer (Human) Representing knowledge Thinking on knowledge By adding knowledge and thinking, AI grows up to be more intelligent. Terrain data (Way Points) Thinking based on Terrain data Thinking based on Object data Object data Body data Thinking based on Body data
  • 40. Intelligence Knowledge Thinking Making Autonomous AI Game Designer (Human) By adding knowledge and thinking, AI grows up to be more intelligent. Terrain data (Way Points) Thinking based on Terrain data Thinking based on Object data Object data Body data Thinking based on Body data Representing knowledge Thinking on knowledge
  • 41. Intelligence Knowledge Thinking Making Autonomous AI Game Designer (Human) Terrain data (Way Points) Thinking based on Terrain data Thinking based on Object data Object data Body data Thinking based on Body data Representing knowledge Thinking on knowledge Intelligence a character has is called “Character AI”.
  • 42. Intelligent Game System Game System Intelligent Game System Digital Games have also become intelligent. So, what is an “Intelligent Game System” ?
  • 43. What is digital game ? • Interactive Digital Space • The space becomes structured • AI becomes a module
  • 44. Level Navigation AI Meta-AI Character AI Dynamic allocation of enemies Observing level in real-time Direction for agents Making progress of game Autonomous thinking Cooperation Team AI Preparing data to make Meta-AI and Character AI recognize the level Managing object representation Managing Navigation data Path-finding / Tactical point analysis Support Enemy character Player Brain Information Acquisition Control
  • 45. The System of digital game AI • Role of AI in digital game becomes clear. • There are three roles of AI. AI to control a whole game system AI of character (Character’s Brain) AI to recognize an environment in game by analyzing a level, terrain, and space. Meta AI Character AI Navigation AI
  • 46. Two Axis to categorize AI • The problem of “What is AI” is a very difficult problem. • We had better search what problem an AI is seeking to resolve. Space Scale Time Scale Local Short time Global timeless Global Long time Meta-AI Character AI Navigation AI
  • 47. Different AI, different role Meta-AI Meta AI keeps watching a game situation and dynamically controls game balance, intention of game player, and game dynamics. Character AI Character AI is a character’s brain, which recognizes the local environment around the character, and executes its action and motion in a limited time. Navigation AI Navigation AI analyzes the terrain and level design and abstracts space features which are used to adapt a character’s action to the environment. AI who has a role is called “Agent”. Especially, in digital game, character AI is called “Agent”.
  • 48. AI in game, and AI outside of game Game AI (outside of game) Game AI (In game) Meta-AI Character AI Navigation AI Supporting AI QA-AI Auto-balancing AI Interface-AI Data Mining Simulation Game Visualization Biofeedback
  • 49. Contents • Chapter 1. Overview • Chapter 2. Meta-AI • Chapter 3. Character AI 3.1 BODY and INTELLIGENCE 3.2 CHARACTER BEHAVIOR LEARNING 3.3 DECISION MAKING ALOGORITHM • Chapter 4. Navigation AI • Chapter 5. Learning • Chapter 6. QA-AI • Chapter 7. Social Behaviors • Chapter 8. Future Plan
  • 51. Level Navigation AI Meta-AI Character AI Dynamic allocation of enemies Observing level in real-time Direction for agents Making progress of game Autonomous thinking Cooperation Team AI Preparing data to make Meta-AI and Character AI recognize the level Managing object representation Managing Navigation data Path-finding / Tactical point analysis Support Enemy character Player Brain Information Acquisition Control
  • 52. Meta AI History 1980 1990 Meta AI is the AI of game system. 1980 1990 2000 Classical Meta AI Modern Meta AI Evolution of Character AI (Autonomous AI )
  • 53. (Example) Xevious(Namco、1983) Enemy Table Rewinding Enemy 0 Enemy 1 Enemy 2 Enemt 3 Enemy 4 Enemy 5
  • 54. Meta AI History 1980 19901980 1990 2000 Classical Meta AI Modern Meta AI Development of Character AI (Autonomous AI ) Classical Meta AI to control difficulty of the game (Weaken enemies). Modern Meta AI to design game system dynamically.
  • 55. Modern Meta AI Meta AI dynamically changes a game Meta AI Allocation of enemies Spawning enemies Story Generation Procedural Terrain Generation User Experience
  • 56. AI Director (Meta AI) = Left 4 Dead Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment Conference at Stanford. http://www.valvesoftware.com/publications.html Example : Left 4 Dead
  • 57. AI Director decide when enemies are spawned. USER’S INTENSITY ACTUAL POPULATION DESIRED POPULATION Build Up …プレイヤーの緊張度が目標値を超えるまで 敵を出現させ続ける。 Sustain Peak … 緊張度のピークを3-5秒維持するために、 敵の数を維持する。 Peak Fade … 敵の数を最小限へ減少して行く。 Relax … プレイヤーたちが安全な領域へ行くまで、30-45秒間、 敵の出現を最小限に維持する。 AI Director makes users relax, and break relax repeatedly. Michael Booth, "Replayable Cooperative Game Design: Left 4 Dead," Game Developer's Conference, March 2009 http://www.valvesoftware.com/publications.html Meta AI(=AI Director) observes players’ action in real-time in Left 4 Dead
  • 58. Left 4 Dead (Valve) AI Director controls NPC spawning distribution and game-play-pacing.  Genre:Online Action  Developer: Valve software  Publisher : Valve software  Hardware: XBox360  Year: 2006 Using nav-mesh for recognizing and controlling Real-time status of game. Michael Booth, "Replayable Cooperative Game Design: Left 4 Dead," Game Developer's Conference, March 2009 http://www.valvesoftware.com/publications.html
  • 59. Left 4 Dead – AI Director Meta AI recognize game status in real-time Predicting player’s route and spawning monsters dynamically. Michael Booth, "Replayable Cooperative Game Design: Left 4 Dead," Game Developer's Conference, March 2009 http://www.valvesoftware.com/publications.html
  • 60. Adaptive Dramatic Dynamic Pacing [Basic Idea] (1) Meta AI populates many enemies, enough to get user’s intention up to the value (measured by input). (2) When user’s intention goes over the value, meta AI stops the population. (3) When user becomes relaxed, go to (1). Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment Conference at Stanford. http://www.valvesoftware.com/publications.html
  • 61. Meta AI recognize game status via Navigation-Mesh Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment Conference at Stanford. http://www.valvesoftware.com/publications.html
  • 62. Active Area Set Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment Conference at Stanford. http://www.valvesoftware.com/publications.html
  • 63. Flow Distance(predicting a path) Meta- AI predict a path - where they arrive - where is back - direction Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment Conference at Stanford. http://www.valvesoftware.com/publications.html
  • 64. Action to AAS Meta AI spawns and extinguishes enemies in Active Area Set. Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment Conference at Stanford. http://www.valvesoftware.com/publications.html
  • 65. Area seen from player In the Area where player can see, Meta-AI cannot spawn enemies Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment Conference at Stanford. http://www.valvesoftware.com/publications.html
  • 66. Area to spawn enemies FRONT BACK Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment Conference at Stanford. http://www.valvesoftware.com/publications.html Meta- AI spawns enemies in the area players cannot see.
  • 67. References (1) Michael Booth, "Replayable Cooperative Game Design: Left 4 Dead," Game Developer's Conference, March 2009. (2) Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment Conference at Stanford. http://www.valvesoftware.com/publications.html (3) 三宅 陽一郎, “メタAI”,「デジタルゲームの技術」 P.186-190, ソフトバンク クリエイティブ
  • 68. Procedural Generation in WarFrame The Living AI in Warframe's Procedural Space Ships Dan Brewer, Digital Extremes http://aigamedev.com/open/coverage/vienna14-report/#session8
  • 69. Black Combination in WarFrame The Living AI in Warframe's Procedural Space Ships Dan Brewer, Digital Extremes http://aigamedev.com/open/coverage/vienna14-report/#session8
  • 70. Procedural Generation Map in WarFrame The Living AI in Warframe's Procedural Space Ships Dan Brewer, Digital Extremes http://aigamedev.com/open/coverage/vienna14-report/#session8
  • 71. Auto-analyzing the map in WarFrame The Living AI in Warframe's Procedural Space Ships Dan Brewer, Digital Extremes http://aigamedev.com/open/coverage/vienna14-report/#session8
  • 72. Start, Exit, objectives auto-distribution in WarFrame The Living AI in Warframe's Procedural Space Ships Dan Brewer, Digital Extremes http://aigamedev.com/open/coverage/vienna14-report/#session8
  • 73. Influence Map The Living AI in Warframe's Procedural Space Ships Dan Brewer, Digital Extremes http://aigamedev.com/open/coverage/vienna14-report/#session8
  • 74. Influence Map The Living AI in Warframe's Procedural Space Ships Dan Brewer, Digital Extremes http://aigamedev.com/open/coverage/vienna14-report/#session8
  • 75. Active Are Set The Living AI in Warframe's Procedural Space Ships Dan Brewer, Digital Extremes http://aigamedev.com/open/coverage/vienna14-report/#session8
  • 76. Meta AI (AI Director, Dynamic Adaptive Pacing) The Living AI in Warframe's Procedural Space Ships Dan Brewer, Digital Extremes http://aigamedev.com/open/coverage/vienna14-report/#session8
  • 77. メタAI(自動適応ペーシング) Meta AI (AI Director, Dynamic Adaptive Pacing) The Living AI in Warframe's Procedural Space Ships Dan Brewer, Digital Extremes http://aigamedev.com/open/coverage/vienna14-report/#session8
  • 78. Summary Classical Game System Modern Game System In classical game system, game contents are fixed after the development, but in modern game system, game contents are dynamically created.
  • 79. Summary Meta AI dynamically creates a game play flow, and gives an order to character AI and a game event. The reason why meta AI action is simple is that character AI has become autonomous. Classical Game System Modern Game System
  • 80. Summary Classical Game System Modern Game System By simply replacing Meta AI, game contents can dramatically change.
  • 81. Referenced Papers (1) Michael Booth, "Replayable Cooperative Game Design: Left 4 Dead," Game Developer's Conference, March 2009. (2) Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment Conference at Stanford. http://www.valvesoftware.com/publications.html
  • 82. Contents • Chapter 1. Introduction • Chapter 2. Character’s decision making • Chapter 3. Character’s eye 3.1 What does a living thing see? 3.2 Representation of what AI sees 3.3 Walking 3.4 CASE STUDY: FINAL FANTASY XIV: A Realm Reborn 3.5 Smart Terrain • Chapter 4. Social Behaviors • Chapter 5. Learning for character
  • 83. Contents • Chapter 1. Overview • Chapter 2. Meta-AI • Chapter 3. Character AI 3.1 BODY and INTELLIGENCE 3.2 CHARACTER BEHAVIOR LEARNING 3.3 DECISION MAKING ALOGORITHM • Chapter 4. Navigation AI • Chapter 5. Learning • Chapter 6. QA-AI • Chapter 7. Social Behaviors • Chapter 8. Future Plan
  • 85. Level Navigation AI Meta-AI Character AI Dynamic allocation of enemies Observing level in real-time Direction for agents Making progress of game Autonomous thinking Cooperation Team AI Preparing data to make Meta-AI and Character AI recognize the level Managing object representation Managing Navigation data Path-finding / Tactical point analysis Support Enemy character Player Brain Information Acquisition Control
  • 86. FC SFC SS, PS PS2,GC,Xbox Xbox360, PS3, Wii DC (次世代)Hardware 時間軸20051999 ゲームの進化と人工知能 複雑な世界の 複雑なAI ゲームも世界も、AIの身体と内面もますます複雑になる。 単純な世界の シンプルなAI (スペースインベーダー、タイトー、1978年) (アサシンクリード、ゲームロフト、2007年)
  • 87. Environment Intelligence Artificial Intelligence= dynamically makes an AI’s action in harmony with artificial environment. What is intelligence? Body (Inner Structure) Input(Sensor) Output(Action) ©2018 SQUARE ENIX CO., LTD. All Rights Reserved.
  • 89. Intelligence World Environment World Effector・BodySensor・ Body Memory Recog- nition Working Memory Small Memory Information Processing Abstraction of Information Decision making Body Control Effector・Body Motion Making Motion synthesis process body module Motion Synthesis Decision making Module Decision making Module Decision making Module
  • 90. Intelligence World Environment World Effector・BodySensor・ Body Memory Recog- nition Working Memory Small Memory Information Processing Abstraction of Information Decision making Body Control Effector・Body Motion Making Motion synthesis process body module Motion Synthesis Decision making Module Decision making Module Decision making Module Objective・ Phenomenon
  • 91. Intelligence World Environment World Effector・BodySensor・ Body Memory Recog- nition Working Memory Small Memory Information Processing Abstraction of Information Decision making Body Control Effector・Body Motion Making Motion synthesis process body module Motion Synthesis Decision making Module Decision making Module Decision making Module
  • 93. Neural Networks in Supreme Commander 2 (GDC 2012) Michael Robbins (Gas Powered Games) http://www.gdcvault.com/play/1015406/Off-the-Beaten-Path-Non http://www.gdcvault.com/play/1015667/Off-the-Beaten-Path-Non
  • 94. Neural Networks in Supreme Commander 2 (GDC 2012) Michael Robbins (Gas Powered Games) http://www.gdcvault.com/play/1015406/Off-the-Beaten-Path-Non http://www.gdcvault.com/play/1015667/Off-the-Beaten-Path-Non ニューラルネットワークの応用
  • 95. Neural Networks in Supreme Commander 2 (GDC 2012) Michael Robbins (Gas Powered Games) http://www.gdcvault.com/play/1015406/Off-the-Beaten-Path-Non http://www.gdcvault.com/play/1015667/Off-the-Beaten-Path-Non
  • 96. Belief – Desire – Intention モデル Desire (Perceptrons) Opinions (Decision Trees) Beliefs (Attribute List) Richard Evans, “Varieties of Learning”, 11.2, AI Programming Wisdom Low Energy Source =0.2 Weight =0.8 Value = Source*Weight = 0.16 Tasty Food Source =0.4 Weight =0.2 Value = Source*Weight = 0.08 Unhappines s Source =0.7 Weight =0.2 Value = Source*Weight = 0.14 ∑ 0.16+0.08+0.14 Threshold (0~1の値に 変換) hunger Desire(お腹すいた度)欲求を決定する 対象を決定する それぞれの対象の 固有の情報 他にも いろいろな 欲求を計算 Hunger Compassion Attack(戦いたい) Help Black & White (Lionhead,2000)
  • 97. Black & White (Lionhead,2000) Training of creature by learning http://www.youtube.com/watch?v=2t9ULyYGN-s http://www.lionhead.com/games/black-white/ 14:20-
  • 98. Reinforcement Learning (Ex) Fighting Game Kick Punc h Magic R_0 : Reward = Damage http://piposozai.blog76.fc2.com/ http://dear-croa.d.dooo.jp/download/illust.html
  • 99. Reinforcement Learning (Ex)Character Learning in Fighting game “Teo Feng” Ralf Herbrich, Thore Graepel, Joaquin Quiñonero Candela Applied Games Group,Microsoft Research Cambridge "Forza, Halo, Xbox Live The Magic of Research in Microsoft Products" http://research.microsoft.com/en-us/projects/drivatar/ukstudentday.pptx Microsoft Research Playing Machines: Machine Learning Applications in Computer Games http://research.microsoft.com/en-us/projects/mlgames2008/ Video Games and Artificial Intelligence http://research.microsoft.com/en-us/projects/ijcaiigames/
  • 100. 機械学習 (例)FORZA MOTORSPORT におけるドライビング学習 Ralf Herbrich, Thore Graepel, Joaquin Quiñonero Candela Applied Games Group,Microsoft Research Cambridge "Forza, Halo, Xbox Live The Magic of Research in Microsoft Products" http://research.microsoft.com/en-us/projects/drivatar/ukstudentday.pptx レーシングラインに沿わせるのではなく、理想とする位置とスピードから コントローラーの制御を計算して、物理制御によって車を運転する。
  • 102. Intelligence World Environment World Effector・BodySensor・ Body Memory Recog- nition Working Memory Small Memory Information Processing Abstraction of Information Decision making Body Control Effector・Body Motion Making Motion synthesis process body module Motion Synthesis Decision making Module Decision making Module Decision making Module
  • 103. Decision Making Model State-based AI Goal-based AI Rule-based AI Behavior-based AI Usually decision-Making is a very complex process. But in artificial intelligence, there are some simple basic styles. Simulation-based AI Utility-based AI Task-based AI Decision Making
  • 104. Reactive・Non-reactive • Reactive = Reaction to the change of environment. • Non-reactive = Making an abstract action by following a goal and plan.
  • 105. Decision Making Model State-based AI Goal-based AI Rule-based AI Behavior-based AI Usually decision-Making is a very complex process. But in artificial intelligence, there are some simple basic styles. Simulation-based AI Utility-based AI Task-based AI Decision Making Reactive Non-Reactive
  • 106. Decision Making Model State-based AI Goal-based AI Rule-based AI Behavior-based AI Usually decision-Making is a very complex process. But in artificial intelligence, there are some simple basic styles. Simulation-based AI Utility-based AI Task-based AI Decision Making Reactive Non-Reactive
  • 107. IF ( Condition Statement ) then (Result Statement) Rule-based Decision Making Rule The form is called “Rule”. Of course, a structure like IF ( … IF (.... IF… ) ) ) can be called rule-based, but, Rule-based algorithm means a rule is used for decision-making as a fundamental element.
  • 108. Inference Engine A B C D E T F F F F T T F F F T T F T F T T T T F T T T T T F T T T T F F F T T …………………………… …………………………… ………………… T: True F: False ID 0 : IF A THEN B ID 1 : IF A && D THEN C ID 3 : IF C THEN E ID 4 : IF B THEN D ID .. : ID 4 : IF E THEN ~A There are many rules. If a condition statement in a rule is true, the rule is “fired”. A result statement in a fired rule becomes true, and it fires another rule. A change of true/False
  • 109. Rule Control ID 0 : IF …. THEN … ID 1 : IF …. THEN … ID 3 : IF …. THEN …. ID 4 : IF …. THEN … ID .. : ID 4 : IF …. THEN … Priority: 3 Priority: 1 Priority: 4 Priority: 5 Priority: 2 A constant priority value or dynamic priority is attached to each rule. The rule with highest priority is fired in all fired rules. The system is used by tactical thinking and character behavior. Priority: - Control Rule = IF ( Action Condition) then (Action Command)
  • 110. Rule Control ID 0 : IF …. THEN … ID 1 : IF …. THEN … ID 3 : IF …. THEN …. ID 4 : IF …. THEN … ID .. : ID 5 : IF …. THEN … Priority: 3Priority: 1 Priority: 4 Priority: 5 Priority: 2 Thinking module picked up one rule from the game situation. Priority: - Control Thinking Module Rule = IF ( Action Condition) then (Action Command)
  • 111. Example http://gomibako.symphonic-net.com/vote.cgi?genre=act_b&rating=9 ID 0 : IF (an enemy found) THEN (escape) ID 1 : IF (cannot find any) THEN (random walk) ID 2 : IF (found item) THEN (get the item) ID 3 : IF (found door) THEN (go through it) ID 0 : IF (enemy is strong) THEN (Magic) ID 1 : IF (found many enemies) THEN (attack the weakest) ID 2 : IF (HP<20) THEN (spell refresh magic ) ID 3 : IF (found a hole) THEN (avoid it) Action game RPG
  • 112. Rule-based AI in The Sims 3 Rule-based AI  Genre:Simulation  Developer: Maxis  Publisher : EA  Hardware: PC, PS3  Year: 2009 [GDC2010] Richard Evans, "Modeling Individual Personalities in The Sims 3" http://www.gdcvault.com
  • 113. Decision Making Model State-based AI Goal-based AI Rule-based AI Behavior-based AI Usually decision-Making is a very complex process. But in artificial intelligence, there are some simple basic styles. Simulation-based AI Utility-based AI Task-based AI Decision Making Reactive Non-Reactive
  • 114. Task based AI Task Task describes AI action Task Task Tasks have relation with each other. For example, task order, task hierarchy , task…
  • 115. Task based AI Task Task Tasks are defined as actions to the same target, and they can cooperate with each other. Task Target Target Target
  • 116. Task based AI A big task is formed by combining some small tasks. A task must represent a simple practical action. (Simple case) Initial State GOALTask1 Carry A to Ground Task2 Carry B to Ground Task3 Put C on B A B C B C AA B C A BC A C B Task3 Put A on C
  • 117. Hierarchical Task Network • Task-based AI is a simple but strong method. • But for modern complex and big games, it should be adapted to multi-scale time and space. • Hierarchical Task Network System (HTN) is often used for a character AI.
  • 118. There are many magic jewels in a field. NPC can make a recovery drink by combining magic jewels. Final goal is to take recovery drink to the buddy monster.
  • 119. Making Recovery Drink from Magic Jewels (Game Setting) The way to make it is three: • Picking up a red, blue, green Jewel in any order • Picking up green, red, green in this order. • Picking up two blue jewels and red one. But it is required to pick up blue one before red one.
  • 120. Method (=Resolving a big task into some small tasks) Make a drink (Task) Deliver a drink (Task) Take a drink to a buddies (Task)
  • 121. Method (=Resolving a big task into some small tasks) mix branch Collect all colors Branch Collect red and blue branch Collect green and red Pickup Blue Red Green mix Green Green mixRed Blue RedBlue No order task Total order task Partial Order Task There are all color jewels in a field There are green and red jewels in a field There are red and blue jewels in a field Primitive task Make a drink (Task) Precondition
  • 122. Method (=Resolving a big task into some small tasks) Make a drink (Task) Deliver a drink (Task) Take a drink to a buddies (Task)
  • 123. Deliver a drink • Bring a car , Put drinks in the car, Go to the battle field. • Drinks should be packaged in a treasure box. • A Label should be attached to a treasure box.
  • 124. MethodMethod Put that in car Bring a car Go to a battle field Put a drink In the car Attach a label Put it in Treasure box Total Order Task Has a car Primitive task Deliver a drink (Task) Precondition Put a drink In the car A car is near Partial Order Task
  • 125. By iteration of applying methods , Task Network is generated. Mix Blue RedBlue START Bring a Car Go to a battl e field GOAL Put it in the car Attach a label Put it in Treasure box
  • 126. Killzone 2’s AI Alex Champandard, Tim Verweij, Remco Straatman, "Killzone 2 Multiplayer Bots", http://files.aigamedev.com/coverage/GAIC09_Killzone2Bots_StraatmanChampandard.pdf
  • 127. Organization in KILLZONE 2’s AI team Commander AI Squad Leader AI Squad Leader AI Squad Leader AI Order a tactic “Defend”,”Progress” Report of the tactics (Success/Failure) (Feedback) Order a target positon Order a target Request a re-order Request a re-order IndividualAI IndividualAI IndividualAI IndividualAI IndividualAI IndividualAI IndividualAI IndividualAI IndividualAI
  • 128. Agent Architecture of a member (Individual AI) Orders Messages Daemon World State HTN Planner Plan Task Execution Controller Input Intelligence Stimuli Percepti on Threats
  • 129. Agent Architecture of a Squad leader Strategy Orders Member Messages daemon World State HTN Planner Plan Task Execution Individual Orders Intelligence
  • 130. Bullet Rocket fire Rocket To Humanoid Within range Not to Humanoid or turret Within a turret’s range Attack(Task) load fire end load fire end
  • 131. … Progress None Defend a base (Task) Delete member’s memory Gather new information of buddies Begin a sequence Progress Go and Stop Defend
  • 132. Behave (Task) Crouching Select Plan Medic start Broadcast Care End Car Defend Target fix Use a tool Walk care Move Stop Continue Begin Medic Not chage Change a tool Apply a method Apply a method Apply a method Apply a method
  • 133. Decision Making Model State-based AI Goal-based AI Rule-based AI Behavior-based AI Usually decision-Making is a very complex process. But in artificial intelligence, there are some simple basic styles. Simulation-based AI Utility-based AI Task-based AI Decision Making Reactive Non-Reactive
  • 134. Goal-based AI GOAL Describing the world and AI state
  • 135. Goal-based AI GOAL GOAL GOAL GOAL Goal- based AI is the policy that a goal is the first. To achieve the goal, AI makes a plan, behaviors and changes them according to the changes of the game situation.
  • 136. Goal-based AI AI keeps checking whether the goal is achieved or not to feed back. GOAL GOAL GOAL GOAL
  • 137. Goal-Oriented Action Planning in F.E.A.R. Agent Architecture Considerations for Real-Time Planning in Games (AIIDE 2005) http://web.media.mit.edu/~jorkin/AIIDE05_Orkin_Planning.ppt
  • 138. Decision Making Model State-based AI Goal-based AI Rule-based AI Behavior-based AI Decision Making is generally a very complex high-degree process. But for digital game there are 7 simple decision making algorithms. Simulation-based AI Utility-based AI 「(something)-based AI」means that an algorithm uses (something) as a unit. Task-based AI Decision Making
  • 139. F.E.A.R Agent Architecture  Genre:Horror FPS  Developer: Monolith Production  Publisher : SIERRA  Hardware: Windows  Year: 2004 Agent Architecture Considerations for Real-Time Planning in Games (AIIDE 2005) http://web.media.mit.edu/~jorkin/AIIDE05_Orkin_Planning.ppt Sensors Working Memory Planner BlackboardNavigation Animation / Movement Targeting Weapons World World
  • 140. F.E.A.R COM ’s sensor SensorNodeCombat Finding the point to fight SensorSeeEnemy Checking Line of sight to the enemy PassTarget Finding a safe pass to tactical point CoverNode Finding a point to hide World Sensor SensorNodeCombat SensorSeeEnemy PassTarget CoverNode Knowledge Representation Working Memory Fact Agent Architecture Considerations for Real-Time Planning in Games (AIIDE 2005) http://web.media.mit.edu/~jorkin/AIIDE05_Orkin_Planning.ppt
  • 141. Working Memory Fact All facts are described in the same format. Agent Architecture Considerations for Real-Time Planning in Games (AIIDE 2005) http://web.media.mit.edu/~jorkin/AIIDE05_Orkin_Planning.ppt Working Memory Fact Form Place Direction Sensor Object Time Unknown Position, confidence Direction, confidence Sensor type, confidence Handle, confidence Time Stamp
  • 142. AI stored all facts in its working memory Worlking Memory Agent Architecture Considerations for Real-Time Planning in Games (AIIDE 2005) http://web.media.mit.edu/~jorkin/AIIDE05_Orkin_Planning.ppt The facts to the same target are stacked on the same list.
  • 143. Preparation for Planning Symbol Let’s represent the world AI recognize more simply. Agent-centric Representation kSymbol_AtNode kSymbol_TargetIs AimingAtMe kSymbol_ WeaponArmed kSymbol_ WeaponLoaded kSymbol_Target IsSuppressed kSymbol_ UsingObject kSymbol_ TargetIsDead kSymbol_ RidingVehicle kSymbol_AtNodeType The World is represented by only 20 symbols . Jeff Orkin, “3 States and a Plan: The AI of F.E.A.R.", http://web.media.mit.edu/~jorkin/gdc2006_orkin_jeff_fear.zip
  • 144. Planning by Chaining Example kSymbol_ TargetIsDead kSymbol_ TargetIsDead Attack kSymbol_ WeaponLoaded kSymbol_ WeaponLoaded Reload kSymbol_ WeaponArmed kSymbol_ WeaponArmed Pick up a weapon None Planner Planning Action Pools
  • 145. Replaning AI in F.E.A.R. Jeff Orkins, Three States and a Plan: The AI of FEAR http://alumni.media.mit.edu/~jorkin/gdc2006_orkin_jeff_fear.pdf
  • 146. Chrome Hounds (FromSoftware) Decomposing a goal to smaller goals Goal Goal Goal Goal
  • 147. Chrome Hounds (FromSoftware) Iteration: Decomposing a goal to smaller goals Goal Goal Goal Goal Goal Goal Goal Goal Goal
  • 148. Decision Making Model State-based AI Goal-based AI Rule-based AI Behavior-based AI Usually decision-Making is a very complex process. But in artificial intelligence, there are some simple basic styles. Simulation-based AI Utility-based AI Task-based AI Decision Making Reactive Non-Reactive
  • 149. Utility-based AI • Utility-based AI simulates a world’s model, and assign a numerical value to a utility of action. • Utility-based AI selects one tactic by estimating all tactics.
  • 150. (5) Decision Making Utility-based AI  Genre:Simulation  Developer: Maxis  Publisher : EA  Hardware: PC  Year: 2000 The Sims’ Motive Engine
  • 151. Motive Engine in The Sims 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 - Needs - Personality - Skills - Relationships Sloppy - Neat Shy - Outgoing Serious - Playful Lazy - Active Mean - Nice Physical - Hunger - Comfort - Hygiene - Bladder Mental - Energy - Fun - Social - Room Motive Engine
  • 152. [Principle] Select from all actions the best action which makes mood value maximum. 最適な行動を選択する Hunger +20 Comfort -12 Hygiene -30 Bladder -75 Energy +80 Fun +40 Social +10 Room - 60 Mood +18 Toilet - Urinate (+40 Bladder) - Clean (+30 Room) - Unclog (+40 Room) Mood +26 Bathtub - Take Bath (+40 Hygiene) (+30 Comfort) - Clean (+20 Room) Mood +20
  • 153. What is mood ? Mood = W_Hunger(X_Hunger) * X_Hunger + W_Engergy(X_Energy) * X_Energy + … -100 0 100 -100 0 100 -100 0 100 -100 0 100 -100 0 100 -100 0 100 -100 0 100 -100 0 100 W_Hunger W_Energy W_Comfort W_Fun W_Hygiene W_Social W_Bladder W_Room
  • 154. How to calculate utility ? W_Hunger X_Hunger W_Hunger(-80) -80 60 W_Hunger(60)
  • 155. How to calculate utility ? W_Hunger X_Hunger W_Hunger(-80) -80 60 W_Hunger(60) Hunger degree at -80 = W_Hunger(-80)*(-80) Hunger degree at 60 = W_Hunger(60)*(60) Δ = W_Hunger(60)*(60) - W_Hunger(-80)*(-80) Utility for hunger
  • 156. Law of diminishing marginal utility X_Hunger W_Hunger(-80) -80 60 W_Hunger(60) Δ(-80 → 60)=W_Hunger(60)*(60) - W_Hunger(-80)*(-80) Δ (60→90) =W_Hunger(90)*(90) - W_Hunger(60)*(60) 90 W_Hunger(90) Δ(-80 → 60) is much larger than Δ(60→90) Utility from unsatisfied state to satisfied state is much greater than that from satisfied state to more satisfied state . Utility for hunger
  • 157. Decision Making Model State-based AI Goal-based AI Rule-based AI Behavior-based AI Usually decision-Making is a very complex process. But in artificial intelligence, there are some simple basic styles. Simulation-based AI Utility-based AI Task-based AI Decision Making Reactive Non-Reactive
  • 158. Simulation-based AI • For a character, simulation is equal to imagination. • When modelling the situation is difficult, simulation is a good way to find the best solution. • A simulation is executed by the game rules.
  • 162. Decision Making Model State-based AI Goal-based AI Rule-based AI Behavior-based AI Decision Making is generally a very complex high-degree process. But for digital game there are 7 simple decision making algorithms. Simulation-based AI Utility-based AI 「(something)-based AI」means that an algorithm uses (something) as a unit. Task-based AI Decision Making
  • 163. State Machine State State State State Machine(Finite State Machine) AI’s instruction is described in a state, and changes in the world and AI are described in a transition condition. A state machine has a loop structure but does not have feedback dynamics.
  • 164. Hierarchical State Machine Two enemy characters are patrolling. One player comes to the room. AI character is described as Hierarchical Finite State Machine (HFSM).
  • 165. (Example) Quake HFSM http://ai-depot.com/FiniteStateMachines/FSM-Practical.html Monster’s FSM Spawn Idle Attack Die Melee Melee Smash Left Right Finish spawning Lost goal Located goal Zero health Zero health
  • 166. Watch Chase Chase Attack Attack Warning Command Ally Watch the exit Call an Ally Ally not found & Out of battle field Join with Ally Join with Ally Found Ally Lost enemy Found enemy Lost enemy Found enemy Patrol 10 sec. passedHear a sound Ally Responds Transition Condition State Higher State Hierarchical State Machine
  • 168. Decision Making Model State-based AI Goal-based AI Rule-based AI Behavior-based AI Decision Making is generally a very complex high-degree process. But for digital game there are 7 simple decision making algorithms. Simulation-based AI Utility-based AI 「(something)-based AI」means that an algorithm uses (something) as a unit. Task-based AI Decision Making
  • 169. Behavior-based AI Behavior A behavior represent not an animation detail but a physical action.
  • 170. Behavior-based AI Behavior BehaviorDecision-Making Behavior A behavior-based AI constructs its thinking by using some behaviors.
  • 171. (1) Hierarchical Structure of Box (2) Each box has some behaviors (3) Each box has one selection-rule (random, sequential, priority-order…) (4) Finally, one behavior is selected at end-of-tree. (5) Decision Making Behavior-based AI  Genre:SciFi-FPS  Developer: BUNGIE Studio  Publisher : Microsoft  Hardware: Xbox, Windows, Mac  Year: 2004 Behavior-Tree (has become very popular method .) Damian Isla (2005), Handling Complexity in the Halo 2 AI, GDC Proceedings., http://www.gamasutra.com/gdc2005/features/20050311/isla_01.shtml
  • 172. root Battle Retreat Idle Attack Hide Escape Block Stop Recover Trap Sleep Heal Arrow Sword Hind in wood Dig Hide behind object Magic Ice type Wind typePriority Priority Sequence Sequence Random PriorityRandom Priority Random Behavior (Leaf node) Layer Layer Selection Rule Selection Rule
  • 173. root Battle Retreat Idle Attack Hide Escape Block Stop Recover Trap Sleep Heal Arrow Sword Hind in wood Dig Hide behind object Magic Ice type Wind typePriority Priority Sequence Sequence Random PriorityRandom Priority Random Behavior (Leaf node) Layer Layer Selection Rule Selection Rule From the possible nodes in this layer, make the highest-priority node active.
  • 174. Decision Making Model State-based AI Goal-based AI Rule-based AI Behavior-based AI Decision Making is generally a very complex high-degree process. But for digital game there are 7 simple decision making algorithms. Simulation-based AI Utility-based AI 「(something)-based AI」means that an algorithm uses (something) as a unit. Task-based AI Decision Making
  • 175. State machine compared to Behavior tree • State machine= Steady control step by step • Behavior tree = Adapt behavior fluently We want to use both good points
  • 176. Contents • Chapter 1. Overview • Chapter 2. Meta-AI • Chapter 3. Character AI 3.1 BODY and INTELLIGENCE 3.2 CHARACTER BEHAVIOR LEARNING 3.3 DECISION MAKING ALOGORITHM • Chapter 4. Navigation AI • Chapter 5. Learning • Chapter 6. QA-AI • Chapter 7. Social Behaviors • Chapter 8. Future Plan
  • 177. Level Navigation AI Meta-AI Character AI Dynamic allocation of enemies Observing level in real-time Direction for agents Making progress of game Autonomous thinking Cooperation Team AI Preparing data to make Meta-AI and Character AI recognize the level Managing object representation Managing Navigation data Path-finding / Tactical point analysis Support Enemy character Player Brain Information Acquisition Control
  • 179. Game World Knowledge Representation Knowledge Representation and Action world and Perceptual world Action World Perceptual World
  • 180. Game World Knowledge Representation Knowledge Representation and Action world and perceptual world Action World Perceptual World AI understands the game world through knowledge representation. It defines both action world and perceptual world, and subjective world.
  • 181. Knowledge Representation types Example Fact Repsesentation Semantic Net Enemy threat Representation Dependency Graph Rule-based World Representation Griesemer,J, "The Illusion of Intelligence: The Integration of AI and Level Design in Halo", 2002 http://downloads.bungie.net/presentations/gdc02_jaime_griesemer.ppt Army Steel Training Field Mine person tree Target Perceived data Location (x,y,z) 0.87 Action shoot 0.40 HP 55 0.82 Derived data Threat 0.8 Target Weight 0.9 “intentions” hurt_me
  • 182. World Representation (Example) Each waypoint has an 8-direction LOS (Line of Sight) information in Killzone. Straatman, R., Beij, A., Sterren, W.V.D., "Killzone's AI : Dynamic Procedural Combat Tactics", 2005 http://www.cgf-ai.com/docs/straatman_remco_killzone_ai.pdf Knowledge Representation for level design is called World Representation (WR). WR is based on navigation meshes or waypoints.
  • 183. Knowledge Representation and World Representation Knowledge Representation World Representation
  • 184. World Representation Example NavMesh/Waypoint Hierarchical Representation LOS Map Waypoint Clustering Enemy Distribution map Territory Representation Tactical Point System Halo2Killzone Killzone2Halo Assassin’s Creed Left 4 Dead Alex J. Champandard, Remco Straatman, Tim Verweij, "On the AI Strategy for KILLZONE 2's Bots” http://aigamedev.com/open/coverage/killzone2/ Damian Isla,"Building a Better Battle: HALO 3 AI Objectives", http://halo.bungie.net/inside/publications.aspx Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment Conference , http://www.valvesoftware.com/company/publications.html Dude, Where's My Warthog: From Pathfinding to General Spatial Competence, D. Isla, Invited talk, Artificial Intelligence and Interactive Digital Entertainment (AIIDE) 2005 http://naimadgames.com/publications.html
  • 185. Knowledge Representation・ World Representation Knowledge Representation World Representation Object Representation
  • 186. Object Representation 車 レバー ドアの知識表現 位置 x: 3.0 y:.10,0 レバーで開けることが出来る 壊して開けることが出来る 車の知識表現 位置 x: 3.0 y:.2,0 乗って動かすことが出来る。 時速80kmで動く。 レバーの知識表現 位置 x: 5.0 y:.5,0 引くが出来る。 (結果:ドアが開く) ドア Door KR Position x:3.0 y:10.0 Rule: if the lever is pulled, the door opens. Lever KR Position x:5.0 y:5.0 Enable to pull (Affordance). Rule: if the lever is pulled, the door opens. Car KR Position x:3.0 y:2.0 Enable to drive. Maximum speed: 80km Representation of an object
  • 187. Object Representation This is a car. A vector shows the direction In which the car can move. Dude, Where's My Warthog: From Pathfinding to General Spatial Competence, D. Isla, Invited talk, Artificial Intelligence and Interactive Digital Entertainment (AIIDE) 2005 http://naimadgames.com/publications.html
  • 193. Smart Terrain • Some points attached to an object or a terrain which help a character make an action with the object. • The point has a logic, an animation to use the object • It suggests the action when a character closes with it. http://www.gdcvault.com/play/1020831/Bringing-BioShock-Infinite-s-Elizabeth
  • 194. DECISION MAKING AND WORLD REPRESENTATION 3.6.
  • 195. Halo2: Orders & Styles Handling Complexity in the Halo 2 AI, D. Isla, GDC 2005 http://naimadgames.com/publications.html Order Push forward Order Push forward If Killed X enemies If X dead Order fallback Each territory has a different behavior tree which is used by the character who enters in it.
  • 198. Navigation Data Waypoint・Graph (Networked Graph with points) Navigation Mesh(Networked Graph with polygons) Walk-able フリー素材屋Hoshino http://www.s-hoshino.com/
  • 200. Path search on networked Graph M F L B A S O P D C G S V H Q X K N J R T W E I U Z Y G 54 6 3 7 23 B C 3 G D E 3 2 24 L 3 3 5 5 J F A next node is a point which is shortest from a start point. Searching finishes at the goal. Evaluation for each node = sum of path from a start point Dijkstra’s Algorithm
  • 201. Path search on networked Graph A* algorithm M F L B A S O P D C G S V H Q X K N J R T W E I U Z Y G 54 6 3 7 23 B C 3 3 2 24 3 5 5 A next node is a node with lowest evaluation. When the position of goal is already known, path search uses done by using heuristic distance. Evaluation for each node = sum of path from a start point + Herusitic distance Heuristic distance (Ordinary, straight distance) 3+14.2 3+13.8 G H 3 5+10.5 6+8.4
  • 202. Counter Strike (2000) : Nav Mesh The Official Counter-Strike Bot http://aigamedev.com/insider/presentation/official-counter-strike-bot/ Dragon Age : Way Point Dragon Age pathfinding program put to the test https://www.youtube.com/watch?v=l7YQ5_Nbifo
  • 204. History of Tactical Point System • Tactical Position Picking Killzone (2005, Guerrilla) in Program • TPS (Tactical Point System) CRYENGINE (2010, CRYTEK) Tool & Runtime System • EQS(Environment Query System) UNREAL ENGINE 4 (2014, Epic games)Tool & Runtime System • PQS (Point Query System) FINAL FANTASY XV (2016, SQUARE ENIX)
  • 205. Point Query System A system to find a best positon - for a character’s ability - in a terrain - in real-time
  • 206. Point Query System principle Point distribution (Generation) distributing point around the objective (例)grid、circle Filtering Removing points not adjust for a purpose by a conditon (1) . . . Evaluation Evaluation for remained points and pick up one points with best score Filtering Removing points not adjust for a purpose by a conditon (2) Filtering Removing points not adjust for a purpose by a conditon (N)
  • 207. PQS (Point Query System) A bowman finds the best point (i) Game situation (ii) Generating points around it (iii) Filtering points with bad terrain (iv) Filtering points where it’s arrow can not reach (v) Filtering points around buddies (vi) Picking up one point with highest terrain
  • 209.
  • 210.
  • 211.
  • 212.
  • 213.
  • 214.
  • 215.
  • 216.
  • 221. Contents • Chapter 1. Overview • Chapter 2. Meta-AI • Chapter 3. Character AI 3.1 BODY and INTELLIGENCE 3.2 CHARACTER BEHAVIOR LEARNING 3.3 DECISION MAKING ALOGORITHM • Chapter 4. Navigation AI • Chapter 5. Learning • Chapter 6. QA-AI • Chapter 7. Social Behaviors • Chapter 8. Future Plan
  • 223. Intelligence World Environment World Effector・BodySensor・ Body Memory Recog- nition Working Memory Small Memory Information Processing Abstraction of Information Decision making Body Control Effector・Body Motion Making Motion synthesis process body module Motion Synthesis Decision making Module Decision making Module Decision making Module
  • 225. Neural Networks in Supreme Commander 2 (GDC 2012) Michael Robbins (Gas Powered Games) http://www.gdcvault.com/play/1015406/Off-the-Beaten-Path-Non http://www.gdcvault.com/play/1015667/Off-the-Beaten-Path-Non
  • 226. Neural Networks in Supreme Commander 2 (GDC 2012) Michael Robbins (Gas Powered Games) http://www.gdcvault.com/play/1015406/Off-the-Beaten-Path-Non http://www.gdcvault.com/play/1015667/Off-the-Beaten-Path-Non ニューラルネットワークの応用
  • 227. Neural Networks in Supreme Commander 2 (GDC 2012) Michael Robbins (Gas Powered Games) http://www.gdcvault.com/play/1015406/Off-the-Beaten-Path-Non http://www.gdcvault.com/play/1015667/Off-the-Beaten-Path-Non
  • 228. Belief – Desire – Intention モデル Desire (Perceptrons) Opinions (Decision Trees) Beliefs (Attribute List) Richard Evans, “Varieties of Learning”, 11.2, AI Programming Wisdom Low Energy Source =0.2 Weight =0.8 Value = Source*Weight = 0.16 Tasty Food Source =0.4 Weight =0.2 Value = Source*Weight = 0.08 Unhappines s Source =0.7 Weight =0.2 Value = Source*Weight = 0.14 ∑ 0.16+0.08+0.14 Threshold (0~1の値に 変換) hunger Desire(お腹すいた度)欲求を決定する 対象を決定する それぞれの対象の 固有の情報 他にも いろいろな 欲求を計算 Hunger Compassion Attack(戦いたい) Help Black & White (Lionhead,2000)
  • 229. Black & White (Lionhead,2000) Training of creature by learning http://www.youtube.com/watch?v=2t9ULyYGN-s http://www.lionhead.com/games/black-white/ 14:20-
  • 230. Reinforcement Learning (Ex) Fighting Game Kick Punc h Magic R_0 : Reward = Damage http://piposozai.blog76.fc2.com/ http://dear-croa.d.dooo.jp/download/illust.html
  • 231. Reinforcement Learning (Ex)Character Learning in Fighting game “Teo Feng” Ralf Herbrich, Thore Graepel, Joaquin Quiñonero Candela Applied Games Group,Microsoft Research Cambridge "Forza, Halo, Xbox Live The Magic of Research in Microsoft Products" http://research.microsoft.com/en-us/projects/drivatar/ukstudentday.pptx Microsoft Research Playing Machines: Machine Learning Applications in Computer Games http://research.microsoft.com/en-us/projects/mlgames2008/ Video Games and Artificial Intelligence http://research.microsoft.com/en-us/projects/ijcaiigames/
  • 232. Deep Mind • https://deepmind.c om/blog/capture- the-flag/ • Multi agnet learning https://deepmind.com/blog/article/capture-the-flag-science
  • 233. Two Agent Cooperation by DeepMind https://deepmind.com/blog/article/capture-the-flag-science
  • 235. OpenAI Five for Dota2 (eSports) • Dota2 • https://gigazine.net/news/20180719-openai-five-benchmark/ • https://blog.openai.com/openai-five-benchmark/ • https://www.youtube.com/watch?time_continue=6&v=UZHTNBMAfAA • https://www.youtube.com/watch?v=TChVnGHUxOw
  • 236. Deep Learning in Ubisoft https://gdcvault.com/play/1025653/The-Alchemy-and-Science-of The Alchemy and Science of Machine Learning for Games Yves Jacquier (Ubisoft Montreal)
  • 237. Deep Learning in Ubisoft https://gdcvault.com/play/1025653/The-Alchemy-and-Science-of The Alchemy and Science of Machine Learning for Games Yves Jacquier (Ubisoft Montreal)
  • 238. https://gdcvault.com/play/1025653/The-Alchemy-and-Science-of 35:00- Deep Learning in Ubisoft The Alchemy and Science of Machine Learning for Games Yves Jacquier (Ubisoft Montreal)
  • 240. 回路の構成を遺伝子コードで表現する。 Weight: 1.2 From: 1 To: 3 Enabled: Y Recurrent: N Innovation: 1 Weight: -3 From: 1 To: 4 Enabled: Y Recurrent: N Innovation: 6 Weight: 0.7 From: 2 To: 4 Enabled: Y Recurrent: N Innovation: 2 Weight: -2.1 From: 3 To: 4 Enabled: Y Recurrent: N Innovation: 6 Weight: 1.1 From: 3 To: 5 Enabled: N Recurrent: N Innovation: 3 Weight: 0.8 From: 4 To: 5 Enabled: Y Recurrent: N Innovation: 4 Weight: -1 From: 5 To: 3 Enabled: Y Recurrent: Y Innovation: 7 ID: 1 Type: Input ID: 2 Type: Input ID: 3 Type: hidden ID: 4 Type: hidden ID: 5 Type: Output 2 1 4 3 5 Innovation ID によってリンク、 ニューロンを全遺伝子共通の管理す る。 無効 INPUT Output Genetic Algorithm and Neural Net
  • 241. Genetic Algorithm and Neural Net Parent1 2 1 7 3 4 1 1->4 2 2->4 3 3->4 6 3->7 7 7->4 12 1->7 1 1->4 2 2->4 3 3->4 4 2->5 5 5->4 8 5->9 9 9->4 15 3->9 Parent 2 2 1 3 95 4 Innovation ID Ordering by ID 1 1->4 2 2->4 3 3->4 1 1->4 2 2->4 3 3->4 4 2->5 5 5->4 6 3->7 7 7->4 8 5->9 9 9->4 12 1->7 15 3->9 交 叉 4 2->5 5 5->4 8 5->9 9 9->4 15 3->9 1 1->4 2 2->4 3 3->4
  • 243. Neuro Evolution Mat Buckland, Chapter 11, AI techniques for game programming, Premier Press, 2002 これまでニューラルネットは、最初に構造を定義した後は変化しなかった。 動的にニューラルネットの構造を変化させる技術 Neuron Evoluation of Augmenting Topologies (NEAT)
  • 246. 弾幕自動生成 • Applying Evolutionary Algorithms to the Galactic Arms Race • http://aigamedev.com/open/interviews/galactic-arms-race/ https://www.youtube.com/watch?v=N8q2uOwWcFc
  • 247. Contents • Chapter 1. Overview • Chapter 2. Meta-AI • Chapter 3. Character AI 3.1 BODY and INTELLIGENCE 3.2 CHARACTER BEHAVIOR LEARNING 3.3 DECISION MAKING ALOGORITHM • Chapter 4. Navigation AI • Chapter 5. Learning • Chapter 6. QA-AI • Chapter 7. Social Behaviors • Chapter 8. Future Plan
  • 249. Deep Q-Learning Volodymyr Mnih, Koray Kavukcuoglu, David Silver, Alex Graves, Ioannis Antonoglou, Daan Wierstra, Martin Riedmiller (DeepMind Technologies) Playing Atari with Deep Reinforcement Learning http://www.cs.toronto.edu/~vmnih/docs/dqn.pdf 画面を入力 操作はあらかじめ教える スコアによる強化学習
  • 250. 学習 Volodymyr Mnih, Koray Kavukcuoglu, David Silver, Alex Graves, Ioannis Antonoglou, Daan Wierstra, Martin Riedmiller (DeepMind Technologies) Playing Atari with Deep Reinforcement Learning http://www.cs.toronto.edu/~vmnih/docs/dqn.pdf
  • 251. 開発会社 システム 詳細 参照 Ubi 2018 Assassin’s Creed Origin の レベルアセット自動検証 スクリプトによるオブジェクト同士の干渉テスト キャラクターの生成ポイントと配置オブジェクトの干渉 テスト / スクリプトによるテスト ‘Assassin’s Creed Origins‘: Monitoring and Validation of World Design Data Nicholas Routhier Ubisoft Montreal http://www.gdcvault.com/play/1025054/-Assassin-s-Creed-Origins Guerrilla 2018 Horizon Zero Down の自動プ レイ 毎晩、自動的にAIキャラクターがゲームをプレイ ‘Horizon Zero Dawn’: A QA Open World Case Study Ana Barbuta https://www.gdcvault.com/play/1025326/-Horizon-Zero-Dawn-A EA 2018 Battlefield1における模倣学習 による自動プレイ 模倣学習によるキャラクターがゲーム内で戦い合う https://www.ea.com/seed/news/seed-imitation-learning-concurrent- actions https://www.ea.com/seed/news/self-learning-agents-play-bf1 SEGA 2018 「龍が如く」~「北斗が如く」に おける自動プレイ ログからの自動リプレイシステム 無料で始める!「龍が如く」を面白くするための高速デバッグログ分析と 自動化https://cedil.cesa.or.jp/cedil_sessions/view/1621 RARE 2017 Thief における Unreal Engine 上のキャラクタービヘイビアの 自動テスト テストがクエリーの形でリスト化されて、毎晩テストされ る AUTOMATED TESTING FOR MULTIPLAYER GAME-AI IN SEA OF THIEVES ROBERT MASELLA RARE — MICROSOFT GAME STUDIOS http://gameainorth.com/2017/ DELiGHT WORKS 2017 Fate/Grand Orderにおける自 動リプレイ サーバーを経由したログの収集とコマンド関数列の再 現 Fate/Grand Orderにおける自動リプレイを用いたQA改善への挑戦 http://cedil.cesa.or.jp/cedil_sessions/view/1716 DeNA 2017 「逆転オセロニア」における自 動ゲームプレイ 強化学習を用いて機械学習させる DeNA TechCon2018 ゲーム体験を支えるための強化学習 https://www.slideshare.net/juneokumura/dena-techcon2018 SQUARE ENIX 2017 「グリムノーツ」における自動 ゲームバランス 遺伝的アルゴリズムを用いてプレイヤーAI群を進化さ せてゲームバランスを調査する 遺伝的アルゴリズムによる人工知能を用いたゲームバランス調整 http://cedil.cesa.or.jp/cedil_sessions/view/1655 DeNA 2016 「FINAL FANTASY Record Keeper」における自動プレイ ニューロエボリューションによるプレイヤーAIの作成 AIによるゲームアプリ運用の課題解決へのアプローチ https://cedil.cesa.or.jp/cedil_sessions/view/1511 強化学習を利用した自律型GameAIの取り組み ~高速自動プレイによる ステージ設計支援 https://www.slideshare.net/dena_tech/gameai-denatechcon Cygames 2016 総合システム構築 OpenCV、Python、Appiumの組み合わせ ゲーム開発におけるデバッグ作業の自動化 ~ OpenCVの「眼」で捉え、 Pythonの「脳」が思考し、Appiumの「指」で動かす http://cedil.cesa.or.jp/cedil_sessions/view/1575 http://tech.cygames.co.jp/archives/2937/
  • 252. Examples of QA AI for commercial games 2012 2016 -Summer 20182017 City Conquest Shadowverse Final Fantasy Record Keeper Grimms Notes Repage Gyakuten Othellonia Fate/Grand Order Sea of Theives Sea of Theives Yakuza Series Yakuza 6: The Song of Life Battlefield1 Horizon Zero Dawn Assassin’s Creed Origins Commit Assistant Gree Chatbot Shadowverse Kotodaman SHIN MEGAMI TENSEI Liberation Dx2
  • 253. AI Use of Deep Learning for Game
  • 255. Deep Learning in Battlefield One https://www.ea.com/seed/news/seed-imitation-learning-concurrent-actions https://www.ea.com/seed/news/self-learning-agents-play-bf1 https://www.youtube.com/watch?v=ZZsSx6kAi6Y
  • 256. Deep Learning in Battlefield One https://www.ea.com/seed/news/seed-imitation-learning-concurrent-actions https://www.ea.com/seed/news/self-learning-agents-play-bf1 https://www.youtube.com/watch?v=ZZsSx6kAi6Y
  • 257. Deep Learning in Battlefield One https://www.ea.com/seed/news/seed-imitation-learning-concurrent-actions https://www.ea.com/seed/news/self-learning-agents-play-bf1 https://www.youtube.com/watch?v=ZZsSx6kAi6Y
  • 258. Sudden Attack case: DL for hacking check ML Tutorial Day: Beating Wallhacks using Deep Learning with Limited Resources Junsik Hwang (GDC2019)
  • 259. Sudden Attack case: DL for hacking check ML Tutorial Day: Beating Wallhacks using Deep Learning with Limited Resources Junsik Hwang (GDC2019)
  • 260. Contents • Chapter 1. Overview • Chapter 2. Meta-AI • Chapter 3. Character AI 3.1 BODY and INTELLIGENCE 3.2 CHARACTER BEHAVIOR LEARNING 3.3 DECISION MAKING ALOGORITHM • Chapter 4. Navigation AI • Chapter 5. Learning • Chapter 6. QA-AI • Chapter 7. Social Behaviors • Chapter 8. Future Plan
  • 262. REPUTATION SYSTEM IN GUNSLINGER (SURREAL SOFTWARE) 4.1 Greg lt, Kristin King, “A Dynamic Reputation System Based on Event Knowledge”, 8.6, AI Game Programming Wisdom
  • 263. Reputation System Memory Element 1 2 3 5 Group Reputation Farmers Neural Lawmen Hate Bandits Like Player Hate Townspeople Neural Master Event List 1. Bandit Killed Farmer 2. Player Aided Lawmen 3. Player Killed Bandit 4. Player TradedWith Townsperson 5. […] Bandit The Bandit sees a Player killed the friend Bandit and helps a Lawmen, so dislikes the Player NPC Memory Greg lt, Kristin King, “A Dynamic Reputation System Based on Event Knowledge”, 8.6, AI Game Programming Wisdom Greg lt, Kristin King, “A Dynamic Reputation System Based on Event Knowledge”, 8.6, AI Game Programming Wisdom
  • 264. Event Announcer B1 B2 B3 B3 B4 Greg lt, Kristin King, “A Dynamic Reputation System Based on Event Knowledge”, 8.6, AI Game Programming Wisdom Player NPC NPC NPC NPC NPC NPC Reputation System Master Event List Reference Count 1. Bandit Killed Farmer 4 2. Player Aided Lawmen 1 3. Player Killed Bandit 4 4. 5. Player Killed Bandit. A NPC meets a NPC IF the two are enemies, One NPC does not tell the event to the other. Register Event Announces “3” to a NPC within a radius . An event happens.
  • 265. Reputation System(Event form) Master Event List 参照回数 1. Bandit Killed Farmer 4 2. Player Aided Lawmen 1 3. Player Killed Bandit 11 4. 5. Subject Group Player Verb DidViolenceTo Object Group Bandit Object Individual Joe Magnitude 75(Killed) Where 50,20,128(In front of saloon) When High noon Template KilledBanditTemplate ReferenceCount Known by 11 NPCs Reputation Effects Bandits hate player more Lawmen like player more Farmers like player more Greg lt, Kristin King, “A Dynamic Reputation System Based on Event Knowledge”, 8.6, AI Game Programming Wisdom
  • 266. Reputation System(Information Exhange) Memory Element Confidence Time Stamp 1 43 0:13:43 3 76 1:4:53 7 63 1:7:45 11 12 1:24:54 12 52 2:6:55 Memory Matching NPC Memory NPC Memory Memory Element Confidence TimeStamp 2 43 0:15:13 4 87 0:46:3 7 12 2:17:56 15 53 2:14:45 71 84 3:56:15 If there are memories for the same event, one memory is over-written by the other with a higher confidence, If there are memories for the same object, one memory is over-written by the other newer memory. Event to overwrite → In Master Event List, Reference Count +1 Event to be deleted → Master Event List -1 (If a reference count becomes zero, it is deleted from Master Event List) Greg lt, Kristin King, “A Dynamic Reputation System Based on Event Knowledge”, 8.6, AI Game Programming Wisdom NPC NPC
  • 267. Reputation System (Information Complementation System) When NPC A meets Joe, Joe is already dead. Joe was Killed by unknown group NPC saw Joe was shot by a Lawmen. Joe was shot by lawmen group Joe was killed by lawmen group Reconstruct a new information From incomplete information. It may be wrong, but human is like that…. Greg lt, Kristin King, “A Dynamic Reputation System Based on Event Knowledge”, 8.6, AI Game Programming Wisdom NPC NPC NPC NPC
  • 268. References (1) Greg lt, Kristin King, “A Dynamic Reputation System Based on Event Knowledge”, 8.6, AI Game Programming Wisdom (2) Richard Rouse III,"Postmortem: The Game Design of Surreal's The Suffering", Gamasutra, http://www.gamasutra.com/view/feature/2110/postmortem_the_game_design_of_.php (3) "Gunslinger: First Impressions",IGN, http://ps2.ign.com/articles/134/134549p1.html (4) Gunslinger [PS2 - Cancelled] http://www.unseen64.net/2009/09/15/gunslinger-ps2-cancelled/
  • 269. Never Winter Night’s Reputation System Ultima Online’s Reputation System Gunslinger’s Reputation System Ever Quest’s Reputation System Original Reputation System
  • 270. Never Winter Night’s Reputation System Witness Nobody Attack to the friend species NPC who is friend with the object Neutrality NPC who is neutral to the object Attack to the enemy species An enemy Attack -2 -12 -6 -4 -2 -2 0 Kill -5 -45 -25 -15 -5 -5 0 Steal -1 -5 -3 -2 0 -1 0 Monster Bandit Guard People Monster 100 0 0 0 Bandit 50 50 0 0 Guard 0 0 100 100 People 0 0 100 80 Object Subject Friend parameter = How good the subject thinks the object . How Friend parameter changes to the enemy action. Influence to friend parameter changes to who saw the event Mark Brokington, “Building a reputation system: Hatred, Forgivveness, and Surrender in Never Winter Nights”, 6.5, Massive Multiplayer Game Development
  • 271. Never Winter Night’s Reputation System PC Monster Bandit Guard People Monster 0 100 0 0 0 Bandit 0 50 50 0 0 Guard 95 0 0 100 100 People 75 0 0 100 80 Object Subject Friend parameter = How good the subject thinks the object is . Mark Brokington, “Building a reputation system: Hatred, Forgivveness, and Surrender in Never Winter Nights”, 6.5, Massive Multiplayer Game Development
  • 272. Personal Reputation Guard remembers the character who attacked it. 時間 Reputation Guard changes the reputation to the PC who attacked it 40 220 To prevent all from attacking the PC, PC’s reputation becomes recovered automatically. Guard Guard Guard Guard Guard Guard Mark Brokington, “Building a reputation system: Hatred, Forgivveness, and Surrender in Never Winter Nights”, 6.5, Massive Multiplayer Game Development
  • 273. Reference Mark Brokington, “Building a reputation system: Hatred, Forgivveness, and Surrender in Never Winter Nights”, 6.5, Massive Multiplayer Game Development
  • 275. F-formation (Kendon, 1984) • Standing position of a group Paul Marshall,Yvonne Rogers,Nadia Pantidi Using F-formations to analyse spatial patterns of interaction in physical environments http://mcs.open.ac.uk/pervasive/pdfs/MarshallCSCW2011.pdf p-space o-space r-space
  • 276. F-formation Pattern Paul Marshall,Yvonne Rogers,Nadia Pantidi Using F-formations to analyse spatial patterns of interaction in physical environments http://mcs.open.ac.uk/pervasive/pdfs/MarshallCSCW2011.pdf
  • 277. F-formation Pattern Paul Marshall,Yvonne Rogers,Nadia Pantidi Using F-formations to analyse spatial patterns of interaction in physical environments http://mcs.open.ac.uk/pervasive/pdfs/MarshallCSCW2011.pdf
  • 278. Territory and Influence • Territory …distance between two people • behavioral influence Region where a behavior has influence - Social place - Social situation
  • 279. Social Dynamics Social Dynamics = Social Behavior influence at Social place makes Social Situation
  • 280. Common space (do not enter!) Rings of the attendees for conversation. A person who enters the circle, someone sees the person. F-formation Cladio Pedica - Spontaneous Avatar Behaviour for Social Territoriality Reykjavik University. http://www.ru.is/faculty/hannes/students/MSThesisClaudioPedica.pdf A person who enters the circle, someone sees that person carefully. p-space o-space r-space c-space
  • 281. The distance social behavior has enough effectiveness A distance of conversation Territory four people forms F-formation Cladio Pedica - Spontaneous Avatar Behaviour for Social Territoriality Reykjavik University. http://www.ru.is/faculty/hannes/students/MSThesisClaudioPedica.pdf
  • 282. Belgian AI Grid capacity, Attack Capacity Attack Weight = 4 12 Grid Capacity = Number of monsters that can enter the region Each monster has an attack weight, Attack Capacity = maximum sum of the monsters’ attack weight. GDC 2012 AI Postmortems: Kingdoms of Amalur: Reckoning, Darkness II and Skulls of the Shogun Michael Dawe, http://www.gdcvault.com/play/1015380/AI-Postmortems-Kingdoms-of-Amalur
  • 283. Attack Weight = 4 Grid Capacity = 5 Attack Capacity = 12 2 Attack Weight = 6 (Normal Attack) Attack Weight = 10 (Special Attack) Belgian AI(Example) Stage Manager GDC 2012 AI Postmortems: Kingdoms of Amalur: Reckoning, Darkness II and Skulls of the Shogun Michael Dawe, http://www.gdcvault.com/play/1015380/AI-Postmortems-Kingdoms-of-Amalur
  • 284. Stage Manager Belgian AI(Example) GDC 2012 AI Postmortems: Kingdoms of Amalur: Reckoning, Darkness II and Skulls of the Shogun Michael Dawe, http://www.gdcvault.com/play/1015380/AI-Postmortems-Kingdoms-of-Amalur A monster requests to a stage Manager. The stage manager assigns possession of the nearest slot After the monster attacks a player, It returns the possession soon.
  • 285. Stage Manager Belgian AI(Example) GDC 2012 AI Postmortems: Kingdoms of Amalur: Reckoning, Darkness II and Skulls of the Shogun Michael Dawe, http://www.gdcvault.com/play/1015380/AI-Postmortems-Kingdoms-of-Amalur
  • 286. A monster who begins to attack can lock itself to a given assignment. Stage Manager Belgian AI(Example) GDC 2012 AI Postmortems: Kingdoms of Amalur: Reckoning, Darkness II and Skulls of the Shogun Michael Dawe, http://www.gdcvault.com/play/1015380/AI-Postmortems-Kingdoms-of-Amalur
  • 288. 1 2 3 4 5 KS A B C Enemy B Slot 2 Enemy C Slot 1 Enemy A Slot 2 Enemy B Slot 1 Enemy A Slot 2 Cooperation
  • 289. Contents • Chapter 1. Overview • Chapter 2. Meta-AI • Chapter 3. Character AI 3.1 BODY and INTELLIGENCE 3.2 CHARACTER BEHAVIOR LEARNING 3.3 DECISION MAKING ALOGORITHM • Chapter 4. Navigation AI • Chapter 5. Learning • Chapter 6. QA-AI • Chapter 7. Social Behaviors • Chapter 8. Future Plan
  • 291. Usage of DL in game industry I s just born… • No old study • It needs academic AI techniques • There are many proper problems • There is no unified approach and framework
  • 292. Community With academic Between industy AI outside game Easy to collaborate (Game is objective) Not directly competitive AI in game Difficult to collaborate (including many secrets) Directly competitive
  • 293. Community With academic Between industy AI outside game Easy to collaborate (Game is objective) Not directly competitive AI in game Difficult to collaborate (including many secrets) Directly competitive Collaboration with academic and industy
  • 294. Future Plan • More machine learning will be introduced • Making personalized experience by using meta-A • Adjustment of game by using Reinforcement learning in game development • Auto-game-balancing by using deep learning From structured approach to machine learning approach
  • 295. From structured approach to machine learning approach • Past development = Data-driven (data made by human) • Future development = Machine learning based development
  • 296. Machine learning based development Human Development Human and Machine Development Personalized human experience by AI Contents generation by AI (map, story) Debug and Quality assurance by AI Auto game balancing and adjustment by AI Development process control by AI TV show by using AI character FINAL FANTASY XV 既存のゲーム
  • 297. References GAME AI PRO 3 (2017/6) ©2018 SQUARE ENIX CO., LTD. All Rights Reserved.
  • 298. SQUARE ENIX 5 articles in Game AI PRO 3 Predictive Animation Control Using Simulations and Fitted Models. Ingimar Hólm Guðmundsson, Skubch Hendrik, Fabien Gravot and Yoichiro Miyake Ambient Interactions: Improving believability by leveraging Rule-based AI Hendrik Skubch Logging Visualization in FINAL FANTASY XV Matthew W. Johnson, Fabien Gravot, Shintaro Minamino, Ingimar Gudmundsson, Hendrik Skubch, and Miyake Youichiro Guide to Effective Autogenerated Spatial Queries Eric Johnson A Character Decision-Making System for FINAL FANTASY XV by combining Behavior Trees and State Machines Youichiro Miyake, Youji Shirakami, Shimokawa Kazuya, Kousuke Namiki, Tomoki, Komatsu, Tatsuhiro Joudan, Prasertvithyakarn Prasert, Takanori Yokoyama ©2018 SQUARE ENIX CO., LTD. All Rights Reserved.
  • 299. Google Group: game-ai https://goo.gl/4dVN2o Slack: game-ai-ja https://game-ai-ja.slack.com/join/shared_invite/zt-5cjym4fl-bODMQ7tm_oKhBsr~uTc_9A#/ Discussion group for anyone Community