81. メタAI Left 4 Dead の事例
Michael Booth,"The AI Systemsof Left 4 Dead,"Artificial Intelligence and
InteractiveDigital EntertainmentConference at Stanford.
http://www.valvesoftware.com/publications.html
今回は Left 4 Dead の事例を見てみる。
83. メタAI(=AI Director)によるユーザーのリラックス度に応じた敵出現度
ユーザーの緊張度
実際の敵出現数
計算によって
求められた
理想的な敵出現数
Build Up …プレイヤーの緊張度が目標値を超えるまで
敵を出現させ続ける。
SustainPeak … 緊張度のピークを3-5秒維持するために、
敵の数を維持する。
Peak Fade … 敵の数を最小限へ減少していく。
Relax … プレイヤーたちが安全な領域へ行くまで、30-45秒間、
敵の出現を最小限に維持する。
Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment Conference at Stanford.
http://www.valvesoftware.com/publications.html
より具体的なアルゴリズム
85. メタAIが作用を行う領域
Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment Conference at Stanford.
http://www.valvesoftware.com/publications.html
メタAIが作用(敵の生成・
消滅)を行う領域を、
AAS(= Active Area Set) と
言う。
86. メタAIが作用を行う領域
(AAS=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
87. メタAIが作用を行う領域
(AAS=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
88. 安全な領域までの道のり(Flow Distance)
メタAIはプレイヤー群の経路を
トレースし予測する。
- どこへ来るか
- どこが背面になるか
- どこに向かうか
Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment Conference at Stanford.
http://www.valvesoftware.com/publications.html
90. 敵出現領域
背後 前方
Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment Conference at Stanford.
http://www.valvesoftware.com/publications.html
前方と背後のプレイヤー群から見えてない部屋に、
モンスターを発生させる。
92. メタAI Left 4 Dead の事例
Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and
InteractiveDigital Entertainment Conference at Stanford.
http://www.valvesoftware.com/publications.html
今回は Left 4 Dead の事例を見てみる。
116. IF ( 前置宣言文 ) then (後置宣言文)
ルールベース意思決定
Rule-based Decision Making
ルール
ここでは、この形式の制御文をルールと言う。
もちろん、IF ( … IF (....IF… ) ) ) のような入れ子構造の制御文も
ルールベースと呼ぶが、
ルールベースと言えば、基本的には、ルールを1つの単位として、
意思決定を行う、という意味となる。
117. 推論エンジン
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
ルール内の条件部がtrueの時、そのルールが発火する(fired)
すると言う。発火したルールの宣言文は true となり、またそれ
が別のルールを発火させる。
発火をくり返して、true/False
が変化して行く様子
118. ルール制御
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
ルールに固定、あるいは変動プライオリティ(優先度)をつけて制御を行う。
あるいはランダムにルールをピックアップする場合もある。戦略思考、キャラク
ターの挙動などでよく使われる。
Priority: -
制御
ルール= IF ( 行動条件文 ) then (動作命令文)
119. (例) ルール制御
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
或いは、状況判断思考によってルールを振り分ける。
戦略思考、キャラクターの挙動などでよく使われる。
Priority: -
制御
思考
ルール= IF ( 行動条件文 ) then (動作命令文)
120. 応用可能性例
http://gomibako.symphonic-net.com/vote.cgi?genre=act_b&rating=9
ID 0 : IF (敵確認) THEN (逆方向)
ID 1 : IF (誰もいない)THEN (ランダムウォーク)
ID 2 : IF (フルーツ発見) THEN (フルーツゲット)
ID 3 : IF (パワー発見) THEN (パワーゲット)
ID 0 : IF (敵強い) THEN (サンダガ)
ID 1 : IF (自分弱い)THEN (弱い敵に攻撃)
ID 2 : IF (HP<20) THEN (ケアル)
ID 3 : IF (パワー発見) THEN (パワーゲット)
こうなっているというのではなく、こういうふうに応用できる例
パックマンなど
RPGなど
138. The Sims シリーズのAIの作り方
人をダイナミクス(力学系、動的な数値の仕組み )として動かす。
世界を動かす PeerAI(=キャラクターAI) を構築。
Sub
Peer
Meta
Meta
Peer
Sub
[原則] 周囲の対象に対する、あらゆる可能な行動から、
ムード(幸せ) 係数を最大化する行動を選択する。
Sims (not under direct player control) choose what to do by selecting, from all of the
possible behaviors in all of the objects, the behavior that maximizes their current happiness.
Will Wright, AI: A Design Perspective (AIIDE 2005)
http://www.aaai.org/Papers/AIIDE/2005/AIIDE05-041.ppt
Kenneth Forbus,Will Wright,“Somenotes on programmingobjects inTheSims–Example”
http://www.qrg.cs.northwestern.edu/papers/Files/Programming_Objects_in_The_Sims.pdf
139. The Sims における「モチーフ・エンジン」
Ken Forbus, “Simulation and Modeling: Under the hood ofThe 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
MotiveEngine
Cooking
Mechanical
Logic
Body
Etc.
AIの人格モデル
164. 強化学習
(例)格闘ゲームTaoFengにおけるキャラクター学習
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/
168. CORE Layer は、PhysicalLaryer 、Mission Layer のうちで、
どの認識を生成するかを決定するコマンドを投げる。
CERA-CRANIUM認識モデル
Arrabales, R. Ledezma, A. and Sanchis,A. "Towards the Generationof Visual Qualia
in Artificial Cognitive Architectures".(2010)
http://www.conscious-robots.com/raul/papers/Arrabales_BICS2010.pdf
196. HTN (Hierarchical Task Network)
Dana Nau et al., “SHOP2: An HTN PlanningSystem”,
Journal of Artificial Intelligence Research 20 (2003) 379-404
197. HTN (Hierarchical Task Network)
Dana Nau et al., “SHOP2: An HTN PlanningSystem”,
Journal of Artificial Intelligence Research 20 (2003) 379-404
Task はプラナーの
規則によって整列される
198. HTN (Hierarchical Task Network)
Dana S. Nau,"Hierarchical Task Network Planning",Lecture slides forAutomatedPlanning:
Theory and Practice http://www.cs.umd.edu/~nau/planning/slides/chapter11.pdf
199. HTN (Hierarchical Task Network)
Dana S. Nau,"Hierarchical Task Network Planning",Lecture slides forAutomatedPlanning:
Theory and Practice http://www.cs.umd.edu/~nau/planning/slides/chapter11.pdf
Task はプラナーの
規則によって整列される
200. HTN (Hierarchical Task Network)
On the AI Strategy forKILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/
201. HTN (Hierarchical Task Network)
Precondition
Task
Precondition
Task
On the AI Strategy forKILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/
261. Matthew Jack, Mika Vehkala
Spaces in the Sandbox:Tactical Awarenessin OpenWorld Games (GDC2013)
http://www.gdcvault.com/play/1018038/Spaces-in-the-Sandbox-Tactical