芸術科学会講演「ゲーム産業と学術研究におけるゲームAI、プロシージャル技術の動向」
三宅 陽一郎y.m.4160@gmail.com
http://www.facebook.com/youichiro.miyake

Twitter: @miyayou

2012.12.18 品川インターシティ

感謝と自己紹介
Thanks to all attendees and special thanks to 宮田先生。
•

１９７５年生まれ•

自己紹介
2004-2011
AI Programmer (FROM SOFTWARE)
2011-Present Lead AI Researcher (SQUARE ENIX)
2007-Present
2008-Present
2011-Present•

国際ゲーム開発者協会 日本支部 SIG-AI チェア（ IGDA JAPAN SIG-AI)
日本デジタルゲーム学会（DiGRA JAPAN）研究委員
CEDEC （日本ゲームカンファレンス）委員

所属学会

人工知能学会、AAAI, IEEE CIS, ACM, 日本デジタルゲーム学会（DiGRA JAPAN）

情報処理学会 EC研究会 委員→アドバイザー（何もしなかった）
ACM マルティメディア国際学会 委員（何もしなかった）
情報処理学会 AIコンテスト SamurAI Coding 委員 （これから頑張ります）
IEEE WCCI 2014 (Computational Intelligence 国際会議) 委員 （これから頑張ります）
経済産業省 DCEXPO 委員（ちょっと頑張った）学歴？

京都大学（数学）

大阪大学（原子核実験物理）

東京大学（エネルギー工学/人工知能）

高エネルギー加速器研究所（半年ぐらい。修士論文）
http://www.facebook.com/youichiro.miyake

配布資料
箱根ゲームプログラミングワークショップ・プロシーディング「次世代デジタルゲームにおける人工知能の研究課題について」

http://www.ipsj.or.jp/sig/gi/gpw/2012/schedule.html

はじめに：
デジタルゲームAIってなんですか？

デジタルゲームAIってなんですか？
• ボードゲームだけでなく（あまり扱わない）アクションゲームのAIを主に扱う。
• 商業的なエンターテインメントとしてのAI。
• 勝ち負けと言えば、うまく負けるためにいる。
• お客さん（＝ユーザー）を楽しませる。
• とはいいつつ、基礎はきちんと作らなければ
ならない。

Demo

Halo AI Retrospective: 8 Years of Work on 30 Seconds of Fun
Author: Damian Isla (AI Engineering Lead)
http://www.bungie.net/Inside/publications.aspx

今日のコンテンツ
第一章 デジタルゲームAIの歴史
第二章 デジタルゲームAIの具体
第三章 デジタルゲームAIの学術の台頭
第四章 産業と学術例
第五章 これからのために

第一章 デジタルゲームAIの歴史

カンファレンス

主催コミュニティ

GDC AI Summit(Game Developer’s
Conference)

AI Game Programmers Guild

http://www.gdconf.com/

http://www.gameai.com

Game AI Conference

AI Game Dev.COM

http://gameaiconf.com/

http://aigamedev.com/

AIIDE(AI and Interactive
Digital Entertainment )AAAI

http://www.aiide.org

IEEE CIG(IEEE Computational
Intelligence and Games )IEEE CIS(IEEE Computational
Intelligence Society )http://www.ieee-cig.org/

http://www.ieee-cis.org/

GDC AI Summit (2009～)(Game Developer’s Conference)- 2009 年より開催- GDC 世界最大のゲームAIカンファレンス（２万人）- ５日の最初の２日間にAIチュートリアル= AI Summit- AI ゲームプログラマーズギルドが主催- ２日間に渡って産学の講演者が各トピックを議論- これに出ると前の年のゲームAIの傾向が分かる。
- 資料はすべて GDC Vault か
AIGameDev.Com で公開
http://www.gdcvault.com/

サンフランシスコはゲーム会社が多く集まる場所
Zynga、Unity, LucasArts、Bandai Namco Games,
Ubisoft, SEGA, Epic Games, EA, …
- シリコンバレーがある(サンノゼ)。
-IT系企業も多い。
- 名門大学が多い。
- Stanford Universty- カリフォルニア大学バークレー校- 南カリフォルニア大学

GDC2011 @miyayou
2.28

3.1

3.2

ModularComponent
AI System

People inyour pocket

KEYNOTE

Navigation in
Insomniac Engine

Automated Level of
Detail Generation
in HALO:REACHAI Pr0n:
AI Debug

Using
Randomness

The animationof Halo:Reach

Biofeedback in
Gameplay

Real-time Helper
Joint System

AI
Navigation

Finding yourway with
Havok AI

Multicore Memory
Management in
MORTALKOMBAT

Crysis 2: Getting
more Interactivity
out of AnimationData

Automated Level of
Detail Generation
in HALO:REACH

Smart AI
through
Influence Map

Kynapse AI

Elite
Postmortem

DOOM
Postmortem

The SIMS3 Createa-Sim User
Expericence

Staffing theExtras

InsideDarkspore
and The Sims:
Medieval

AI & Animation in
ASSASIN’S CREED:BROTHERHOOD

Animating NPC’s
In UNCHARTEDBUNGRING BAY
Postmortem

AI
Developers
Rant !

Scriptingand AIAI Summit

3.3

Regular Session

3.4

GDC

世界最大のゲームカンファレンス

GDC

２万人の来場者（エキスポ＝展示ブース来場者を含む）

GDC

GDC

Artificial Intelligence in Computer Games
Speaker: Neil Kirby (Member of Technical Staff, Bell Laboratories),
Steve Rabin (Senior Software Engineer, Nintendo of America)(AI ラウンドテーブル 全３日)

１日目 トピックごとの議論 （定員オーバーで欠席）
２日目 ①FPS ② Sports & Strategy (出席)
３日目 ビギナー向け Quick Q&A （出席）
全音声データ＆写真

http://www.intrinsicalgorithm.com/GDC

2nd day

1st day

2nd day

Photos from Andrew’s site

3rd day

AI Game Programmers Guild (2008～)

•
•
•
•
•
•
•
•
•

ゲームAI業界の中心人物が集まるギルド。研究者も多数在籍
母体となった IGDA AI-SIG は弱体化（いまいちアクティブに活動できなかった）。
主催 Steve Rabin (AI Game Programming Wisdom)
中心はメイリングリスト（英語）/情報交換
毎日５～６通は必ず届く。
各種イベント開催(AI Summit)の準備MLを兼ねる
入会資格は一つのタイトルでAIを担当（実はこの縛りはないので申込むとOK）
入っておくとゲームAIの動きが見えてとっても便利（発言もしよう）
産業界でのコネクション、力を持つ野心的なギルドでもある。

GDCの歴史（なんとなく）
1987

1995

2000
尐しづつ規模を大きくしたけれど、
かなりアットフォーム。
（適当な発表もOK！）

ゲーム
開発者も集まって何かする？

クリス・クロフォードの自宅で20人ぐらい。

GDCの歴史（なんとなく）2000

尐しづつ本格化

2006

かなり本格化
（１万人を超える）

2010

どうしようもなく本格化（２万人を超える）

UBMという Gamasutra （世界で一番有名なゲームサイト）を持つ
ゲーム関連のイベント・キャリア企業が主催
http://www.4gamer.net/games/149/G014956/20120306019/

GDCの歴史（なんとなく）
2000

2006

2010
競って発表する

いろいろな企業がAIに力を入れ始める（米が中心）

発表を通して、
ゲームAIの知識が蓄積される。
（年に２～３個の良い発表）

ラウンドテーブル、
AI Programmers Dinner、など、なんとなくコミュニティが形成される。

Game AI 知識の集積
2000

2006

2010

知識の集積

AI Game Programming Wisdom

Game AI 知識の集積
2000

2006

2010

AIGameDev ＝ オンライン情報サイト
知識の集積

AI Game Programming Wisdom

AI Game Dev.COM- ゲームAIの実例紹介・技術紹介- 開発インタビュー- 論文紹介- カンファレンス資料 (GDC AI Tutorial, Paris
Game AI Conference ) が掲載-非常に重要な情報源-登録が必要（無料）-有料会員記事と無料会員記事がある。
-Alex Champandard が主催（研究者からゲーム産業へ。
産業と学術を繋ぐ人物）

Game AI Conference- ゲームAI業界の産業カンファレンス- パリ・ウィーンなど欧州で開催。
- 主催は、 AIGameDev.Com- 資料は AIGameDev.Com で公開- 学生も多い。やはり欧州などが中心- GDC と並んで、AI Programmers Guild も深く関わっているが、学術との交流も志向。

デジタルゲームAIの歴史
2000

2006

2010
知識が集積する

競って発表する

いろいろな企業がAIに力を入れ始める（米が中心）

発表を通して、
ゲームAIの知識が蓄積される。
（年に２～３個の良い発表）

ラウンドテーブル、
AI Programmers Dinner、など、なんとなくコミュニティが形成される。

Game AI コミュニティの歴史
2000

2006

2010

AI Game Programmers Guild の発足 （もっと産業で影響力を）（IGDAは公正な機関）

この分野をきちんと組織化しよう。
（IGDA AI SIG
ゲームAI標準委員会）-産業、ミドルウェア、学術のコミュニティ

http://www.igda.org/artificial-intelligenceデジタルゲームAIの歴史
人が集まる

2000

2006

2010
知識が集積する

競って発表する

いろいろな企業がAIに力を入れ始める（米が中心）

発表を通して、
ゲームAIの知識が蓄積される。
（年に２～３個の良い発表）

ラウンドテーブル、
AI Programmers Dinner、など、なんとなくコミュニティが形成される。

デジタルゲームAIの歴史
人が集まる

2000

2006

2010
知識が集積する

競って発表する

いろいろな企業がAIに力を入れ始める（米が中心）

発表を通して、
ゲームAIの知識が蓄積される。
（年に２～３個の良い発表）

ラウンドテーブル、
AI Programmers Dinner、など、なんとなくコミュニティが形成される。

GDCのゲームAI全体の傾向
2011年： ゲームAIの大型から小型化 & 大型AI技術の固定化
有名AI開発者の独立(Halo3, The Sims 3, Killzone 2…)Darkspore,
The Sims: Medieval, StarCraft 2, Havok AI, Kynapse, Insomiac PathEnine

2010年： 大型ゲームAIの完成 & キャラクター制御の高度化
Uncharted 2, Sprinter Cell:Conviction, Killzone2, The Sims 3, Bioshock 2, FIFA

http://igda.sakura.ne.jp/sblo_files/ai-igdajp/GDC2010/YMiyake_GDC_Report_2010_4_3.pdf

2009年： キャラクターAI(アニメーション＆パスファインディング) & メタAI
Morpheme 2.0, Warhammer Online(Kynapse), Halo Wars, Left 4 Dead
http://www.digrajapan.org/modules/mydownloads/images/study/20090411.pdf

2008年： 大型ゲームAI & プロシージャル
Spore, Halo3, Assassin’s Creed…
http://igda.sakura.ne.jp/sblo_files/ai-igdajp/AI/IDGA_GDC08_Miyake_public.pdf

GDCのゲームAI全体の傾向
ゲームサイズ

ツールの成熟様々なスケールでゲームＡI技術とゲームデザインが融合
大型ゲームAI技術の発展・開発

中・小型ゲームへスピンオフ

2009

2010

2011

2012

デジタルゲームAIの歴史
分散期
2000

2006

2010

大規模
拡大路線
の完成期
発展期
黎明期
とりあえず
どんな知識を使ってもより高いAIを発表を通して、目指そう。
ゲームAIの知識がゲームへ
どんどん組み込もう。事例の蓄積。

蓄積される。
（年に２～３個の良い発表）

さまざまな
人が集まる
スケールの
知識が集積する
ゲームへのダイバージェンス

大型有名タイトルで意識的に活用。
いろいろな企業がAIに力を入れ始める（米が中心）

ラウンドテーブル、
AI Programmers Dinner、など、なんとなくコミュニティが形成される。

競って発表する

では、それぞれの時期の代表的な仕事を「エージェント・アーキテクチャ」を基軸に見てみましょう。

第二章 デジタルゲームAIの具体例

C4 Architecture

MIT Media Lab.
Synthetic Characters Group
Researching Virtual Pet in Digital World.

D. Isla, R. Burke, M. Downie, B. Blumberg (2001).,“A Layered Brain Architecture for Synthetic Creatures”, http://characters.media.mit.edu/Papers/ijcai01.pdf

黎明期（GDC2001
黎明期）（GDC2001）

C4 Architecture

黎明期（GDC2001）

世界と知性を明確に区別しよう。
センサーとエフェクター（身体）をまじめの構築しよう。
記憶のメカニズムを導入しよう。
作り変えやすいように、モジュールの組み合わせで知性を作ろう。

MIT Media Lab.
Synthetic Characters Group
Researching Virtual Pet in Digital World.

D. Isla, R. Burke, M. Downie, B. Blumberg (2001).,“A Layered Brain Architecture for Synthetic Creatures”, http://characters.media.mit.edu/Papers/ijcai01.pdf

黎明期
Halo Agent Architecture (GDC2002)







Genre：SciFi-FPS
Developer： BUNGIE Studio
Publisher : Microsoft
Hardware: Xbox, Windows, Mac
Year： 2002
Jaime Griesemer(GDC 2002),The Illusion of Intelligence: The Integration of AI and Level Design in Halo
http://www.bungie.net/Inside/publications.aspx

黎明期
Halo Agent Architecture (GDC2002)
黎明期

商業ゲームのキャラクターAIでも、きちんとエージェントアーキテクチャで作ろう。







Genre：SciFi-FPS
Developer： BUNGIE Studio
Publisher : Microsoft
Hardware: Xbox, Windows, Mac
Year： 2002
Jaime Griesemer(GDC 2002),The Illusion of Intelligence: The Integration of AI and Level Design in Halo
http://www.bungie.net/Inside/publications.aspx

F.E.A.R Agent Architecture 発展期(GDC2004)
World
Sensors
WorkingMemoryTargeting
Planner
Navigation







Genre：Horror FPS
Developer： Monolith Production
Publisher : SIERRA
Hardware: Windows
Year： 2004

Animation /Movement

Weapons

World

Agent Architecture Considerations for Real-Time Planning in Games (AIIDE 2005)
http://web.media.mit.edu/~jorkin/AIIDE05_Orkin_Planning.ppt

Blackboard

F.E.A.R Agent Architecture

発展期(GDC2004)

World
Sensors
WorkingMemoryTargeting
Planner
C4アーキテクチャの設計に則り作ろう。
意志決定にプランニングを導入しよう。
Navigation
ワーキングメモリをまじめに作ろう。







Genre：Horror FPS
Developer： Monolith Production
Publisher : SIERRA
Hardware: Windows
Year： 2004

Animation /Movement

Weapons

World

Agent Architecture Considerations for Real-Time Planning in Games (AIIDE 2005)
http://web.media.mit.edu/~jorkin/AIIDE05_Orkin_Planning.ppt

Blackboard

F.E.A.R のＣＯＭの感覚（センサー）
センサー ＝ 五感からの情報、及び、五感から得られるはずの情報を模擬する機能

センサー
世界

知識表現

SensorNodeCombat
SensorSeeEnemy

事実形式

PassTarget
CoverNode

レイキャスト（視線チェック）、パス検索など重たい処理からなる関数
SensorNodeCombat 隠れる、或いは、隠れながら攻撃できる場所を探す。
SensorSeeEnemy
敵が見えるかチェック
PassTarget
戦術ポイントまでのパスを見つけ、かつそのパスが敵から安全であることをチェックする。
CoverNode
隠れることができるノード
43

統一事実記述形式
キャラクター

オブジェクト

任務

事件

パス

欲求

ノード

全て以下の形式（フォーマット）で記述する。
統一事実記述形式
場所方向
感覚
オブジェクト
情報取得時刻場所 (位置、信頼度)
方向（方向、信頼度）
感覚のレベル（感覚の種類、信頼度）
オブジェクト（ハンドル、信頼度）
情報取得時刻未公開

全部で本当は１６個の属性がある

44

自分の記憶領域に認識した事実を蓄積する
Worlking Memory45

F.E.A.R AI 全体設計図
時間の流れ
思考の流れ

人工知能
知識表現

意思決定

世界 sensor

ゴール

プラナー
act
ion

統一事実
記述形式

act
ion

effecter 世界

act
ion

プラン
ターゲット

シンボル

武器選択

パス検索

動作選択

Blackboard
統一事実
記述形式履歴シンボル
エージェントたちの行動履歴

エージェントたちの行動予定

Working Memory
エージェントごとに別
記憶の流れ

全てのエージェントで共通

F.E.A.R AI 設計図
46プランニングのための知識
エージェントの認識する世界をもっとシンプルに表現したい
２０個のシンボルで世界を集約して表現する

シンボル
kSymbol_AtNode
どのノードにいるか

kSymbol_
WeaponArmed
武装しているか

kSymbol_TargetIs
AimingAtMe
どのノードにいるか

どんなタイプのノードにいるか

kSymbol_
WeaponLoaded
装填されているかkSymbol_
RidingVehicle
乗り物に乗っているか

kSymbol_Target
IsSuppressed
威嚇されているかkSymbol_AtNodeTypekSymbol_
UsingObject
オブジェクトを使っているか？

kSymbol_
TargetIsDead
死んでいるか

各エージェントについて（Agent-centric）
上記のシンボルは、対象とするエージェントについての情報。

47

kTargetIsDead = ture
この兵士Ａは死んだ

シンボル

kTargetAtme = ture
この兵士Ｂは自分を狙っている

kWeaponIsLoaded = false
私Ｃの武器は装填済みでない

48

F.E.A.R.のプランニング②
シンボルによる連鎖プランニング
プランニング
条件なし

武器を拾う
武器を
持っている

武器を
持っている

装填する
武器が装填
されている

武器が装填
されている

攻撃

プラナー

ターゲットＡが死んでいるターゲットＡが死んでいるプランニングF.E.A.R Agent Architecture 発展期
World
Sensors
WorkingMemoryTargeting
Planner
C4アーキテクチャの設計に則り作ろう。
意志決定にプランニングを導入しよう。
Navigation
ワーキングメモリをまじめに作ろう。







Genre：Horror FPS
Developer： Monolith Production
Publisher : SIERRA
Hardware: Windows
Year： 2004

Animation /Movement

Weapons

World

Agent Architecture Considerations for Real-Time Planning in Games (AIIDE 2005)
http://web.media.mit.edu/~jorkin/AIIDE05_Orkin_Planning.ppt

Blackboard

Killzone 2 Architecture







Genre： FPS
Developer： Guerrilla Games
Publisher : SCE
Hardware: PlayStation 3
Year： 2009
Based on: Alex Champandard, Tim Verweij, Remco Straatman, "Killzone 2 Multiplayer Bots",
http://files.aigamedev.com/coverage/GAIC09_Killzone2Bots_StraatmanChampandard.pdf

大規模
拡大路線
の完成期

単純なタスクベースのシステムは機能するし、使われることも多い。しかし、近年の複雑なゲームのＡＩではよりマルチな時間・空間スケールに対応する必要があり、階層型タスクネットワーク（HTN, Hierarchical Task Network）が使用される。

Killzone 2 のAI
Based on: Alex Champandard, Tim Verweij, Remco Straatman, "Killzone 2 Multiplayer Bots",
http://files.aigamedev.com/coverage/GAIC09_Killzone2Bots_StraatmanChampandard.pdf

Killzone 2 AI (マルチプレイヤーモード)
On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/(1) Killzone 2 のAI思考(2) Killzone 2 のマップ自動解析

Killzone 2 Screen

On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/

Killzone 2 AI (マルチプレイヤーモード)(1) Killzone 2 のAI思考(2) Killzone 2 のマップ自動解析

On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/

Killzone2 AI
集団のＡＩのコントロールの仕方を考える

On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/

Killzone2 AI

防衛、前進など戦術を指示
戦術の成功・失敗を報告（フィードバック）

ターゲット指示

指示の再発行要求
移動地点を指示
戦況を報告（フィードバック）

On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/

各ＡＩのアーキテクチャ

HTN Planner

On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/HTN (Hierarchical Task Network)

On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/HTN (Hierarchical Task Network)
Domain

MethodMethodMethodBranchBranchBranchBranchPrecondition

Precondition

Precondition

Precondition

Precondition

Task

Task

Task

Task

Task

Task

Task

Task

Task

Task

Task

Task

Task

Task

Task

Task を実行する順序などは決められている

Task

BranchTask
Task

HTN (Hierarchical Task Network)

Dana Nau et al., “SHOP2: An HTN Planning System”,
Journal of Artificial Intelligence Research 20 (2003) 379-404

HTN (Hierarchical Task Network)

Task はプラナーの規則によって整列される

Dana Nau et al., “SHOP2: An HTN Planning System”,
Journal of Artificial Intelligence Research 20 (2003) 379-404

HTN (Hierarchical Task Network)

Dana S. Nau,"Hierarchical Task Network Planning", Lecture slides for Automated Planning:
Theory and Practice http://www.cs.umd.edu/~nau/cmsc722/notes/chapter11.pdf

HTN (Hierarchical Task Network)

Task はプラナーの規則によって整列される

Dana S. Nau,"Hierarchical Task Network Planning", Lecture slides for Automated Planning:
Theory and Practice http://www.cs.umd.edu/~nau/cmsc722/notes/chapter11.pdf

HTN (Hierarchical Task Network)

On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/HTN (Hierarchical Task Network)

Precondition
Task

Precondition
Task

On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/HTN (Hierarchical Task Network)
各AIの思考On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/

On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/分岐(Branch)

分岐(Branch)
分岐リスト

TaskList

分岐リスト

TaskList

On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/

Squad AI アーキテクチャ
On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/

Killzone2におけるHTN統計
On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/

各ＡＩのアーキテクチャ
On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/HTN Planner

On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/

On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/

兵士へ命令スカッドを目的に応じて動的に構成

On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/

Killzone2

スカッドを目的に応じて動的に構成

http://www.bungie.net/Inside/publications.aspx

On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/

Killzone2

スカッドを目的に応じて動的に構成

On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/

スカッドを目的に応じて動的に構成
攻撃対象、護衛対象はゲーム内で動的に決定対象が決まれば対象からの距離など
からスカッドを形成。
或いは、既にあるスカッドに対象を割り当てる。

最初から決まっている
最初から決まっているOn the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/

Killzone 2 AI (マルチプレイヤーモード)(1) Killzone 2 の AI思考
(2) Killzone 2 のマップ自動解析

マップ
ＡＩの基本原則：異なる目的に、異なるデータ表現を作成する
たとえ、同じ対象物であっても、ＡＩの行動用途に応じてデータ表現を作れ。

戦術思考

戦略思考

ウェイポイント

特に、マップに関してはを「データ階層化」しておくこと（世界表現）

Killzoneにおけるマップ
ＡＩの基本原則：異なる目的に、異なるデータ表現を作成する
たとえ、同じ対象物であっても、ＡＩの行動用途に応じてデータ表現を作れ。

戦術思考

戦略思考

ウェイポイント

特に、マップに関してはを「データ階層化」しておくこと（世界表現）戦略グラフを作りたい
On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/

Killzone 2 のウェイポイント

On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/ウェイポイントをクラスター化
サイズと含むウェイポイント数を決めてなるべく正方形になるように形成

On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/

戦略グラフOn the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/

戦略グラフ
各エリア間で接するポイントをピックアップして結ぶ

On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/

戦略グラフOn the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/

何に使うのか？ グローバルな戦況判断

影響マップの方法 <解説>

Influence Map(影響マップ)
セル分割されたマップに、問題とする性質の評価値を記録して行く方法（例）①占有度

0,2

0,4

0,6

0,4

0,2

0,0

0,4

0,6

0,8

0,6

0,4

0,2

0,6

0,8

1,0

0,8

0,6

0,4

0,4

0,6

0,8

0,6

0,4

0,2

0,2

0,4

0,6

0,4

0,2

0,0

0,0

0,2

0,4

0,2

0,0

0,0

http://www.fdaw.unimaas.nl/education/4.5GAI/slides/Influence%20Maps.ppt

Influence Map(影響マップ)
セル分割されたマップに、問題とする性質の評価値を記録して行く方法（例）①占有度② 通過可能確率

0,2

0,4

0,6

0,4

0,2

0,0

0,4

0,6

0,8

0,6

0,4

0,2

0,6

0,8

1,0

0,8

0,6

0,4

0,4

0,6

0,8

0,6

0,4

0,2

0,2

0,4

0,6

0,4

0,2

0,0

0,0

0,2

0,4

0,2

0,0

0,0

http://www.fdaw.unimaas.nl/education/4.5GAI/slides/Influence%20Maps.ppt

Influence Map(影響マップ)（例）様々なIMから計算して戦略的な位置取りを計算する

4

6

8

4

6

8

4

6

4

6

2

8

8

6

4

2

0

-1

-2

-4

8

8

8

4

2

1

0

-2

-4

8

8

8

6

3

1

0

-2

-4

8

8

8

6

6

4

1

0

-2

4

6

8

6

6

4

1

2

4

6

6

4

2

2

3

3

3

3

4

2

2

0

3

2

2

2

3

8

-4

-4

-2

-4

-2

-4

-2

-4

-4

-2

4
0
-1
-2
0,50
0,75
0,2 0,75
0,4
0,6
-4
-5
-3
-3

-4
1,00
0,4
-4

-4
-4 -2
0,75
0,50
0,2
0,0
-4
-2 -1

0

-4
-5
-5 1,00-8
0,75
0,4 1,00
0,6
0,8
-2 -4
-8
-10

-8
1,00
0,6
-10

-6
-4 0,50-2
0,75
0,4
0,2
-8
-4 -2

-10 0,75-8
1,00
0,8-10 0,75
1,0
0,8

-80,6 -4 0,25
0,50
0,4-2

-4

3

3

3

2

2

1

0

-4 0,75
-80,6

2

2

2

2

1

1

0

-3

-10

-8

1

1

1

1

0

0

-2

0,6 -8 0,75
0,8
-4 0,75-80,4 -81,00
-8

0,50
0,6
-8

0,25
0,2-8
-80,4 -8 0,00

0

0

0

0

0

-1

-1

-2

0

0

0

0

-1

-2

-2

-5
-6
-6
-6
0,75
1,00
0,75
-2 -40,2 -4 0,4 -4 0,6
-6

-8
0,50
0,4
-8

-8 -8
0,25
0,00
-80,2 -8 0,0-8

0

0

0

0

-1

-2

-2

0

0

0

0

-1

-2

-2

-2
-2
-2
-2
0,0 1,00
0,2
0,4
0,75
0,75
-2 -2
-2
-2
-2

-2
0,2
0,50
-2

-2
-2 -2
0,0
0,0
0,25
0,00
-2
-2 -2

0

0

0

0

-1

-1

-1

-1

-8

-1

-10

-1

-1

-1

-1

-8

-1

-4

-1

-2

-1

http://www.fdaw.unimaas.nl/education/4.5GAI/slides/Influence%20Maps.ppt

Age of Empire(AOE)における利用例
AOEはタイルベースのＲＴＳ（リアルタイムストラテジー）
マップは毎回、自動生成

Dave C. Pottinger，“Terrain Analysis in Realtime Strategy Games”，
http://zeniroy.springnote.com/pages/481669/attachments/212469“Terrain Analysis in Realtime Strategy Games(PPT)”，http://vr.kaist.ac.kr/courses/cs682/data/ssw.ppt

Age of Empire(AOE)における利用例①
金鉱発掘小屋の最適位置自動検出

Figure 3: Influence map around gold mines.

0.8 0.8 0.8-0.6 -0.6 -0.6

0.8 1.0 0.8-0.6 -1.0 -0.6

0.8 0.8 0.8-0.6 -0.6 -0.6

金鉱＝アトラクター(吸引源)

防壁＝デトラクター（排斥源）

ＡＩに金鉱の発掘小屋を適切な位置に置かせるには？
＝ 金鉱に近いが、近すぎてはいけないところに置く
金鉱の回りのタイル（仮想的）防壁を置いて、近すぎも遠すぎもしない点に最高点のタイルが来るようにする＝ 自動位置検出
Dave C. Pottinger，“Terrain Analysis in Realtime Strategy Games”，
http://zeniroy.springnote.com/pages/481669/attachments/212469

Age of Empire(AOE)における利用例②兵隊の配置の最適位置自動検出

0.8 0.8 0.8-0.6 -0.6 -0.6

0.8 1.0 0.8-0.6 -1.0 -0.6

0.8 0.8 0.8-0.6 -0.6 -0.6

高い場所＝アトラクター(吸引源)

家がある場所＝デトラクター（排斥源）

兵士を街からなるべく遠く、高台の場所に置かせたい＝ 高い場所(アトラクター)、家がある（デトラクター）とする
Dave C. Pottinger，“Terrain Analysis in Realtime Strategy Games”，
http://zeniroy.springnote.com/pages/481669/attachments/212469“Terrain Analysis in Realtime Strategy Games(PPT)”，http://vr.kaist.ac.kr/courses/cs682/data/ssw.ppt

Age of Empire(AOE)における利用例③
兵隊の配置の最適位置自動検出-0.6 -0.6 -0.6
-0.6 -1.0 -0.6
-0.6 -0.6 -0.6

既知の敵のビル、以前通ったルート ＝ デトラクタ（排斥源）
この排斥源が与えるコストをパス検索のコストとすると、「なるべく遠ったことにない敵の基地からみつかりにくいパス」
を見つけることが出来る。
Dave C. Pottinger，“Terrain Analysis in Realtime Strategy Games”，
http://zeniroy.springnote.com/pages/481669/attachments/212469“Terrain Analysis in Realtime Strategy Games(PPT)”，http://vr.kaist.ac.kr/courses/cs682/data/ssw.ppt

SimCity における影響マップの利用
第一層
道路や鉄道、 要素の大きさ要
素間の関係をシミュレーション
第二層「人口密度」「交通渋滞」「環境汚染度」「 ランドバリュ ー」「犯罪発生率」 をシミュ レーション

第三層
地形の影響をシミュレーション

第四層「人口増加率」「消防署」「警察署」「 消防署の影響」「警察署の影響」 をシミュレーション

Crime = Pop. Density^2 - Land Value - Police EffectLand Value = Distance[Zonetype] + Terrain + Transport“AI: A Desing Perspective” AIIDE 2005
http://www.aiide.org/aiide2005/talks/index.html
http://thesims.ea.com/us/will/

多摩 豊,角川書店, 1990
「ウィル・ライトが明かすシムシティーのすべて」,

影響マップの方法 <解説>終わり

Killzone 2 における影響マップ
ボット、砲塔、死亡ポイントの情報を反映させる
さまざまな意思決定に用いるOn the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/

Killzone 2 における戦略的パス検索
スカッド毎にコストと影響マップを使って戦略パスを見出す

On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/

Killzone 2 における戦略的パス検索
スカッド毎にコストと影響マップを使って戦略パスを見出すKillzone 2 における戦略的パス検索
スカッド毎にコストと影響マップを使って戦略パスを見出すKillzone 2 における戦略的パス検索
スカッド毎にコストと影響マップを使って戦略パスを見出す

危険

安全Killzone 2 における戦略的パス検索
スカッド毎にコストと影響マップを使って戦略パスを見出す

On the AI Strategy for KILLZONE 2′s Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/

Killzone 2 AIのまとめ(1) 各ＡＩ、スカッドＡＩに階層型タスクネットワークプラナー（HTN Planner） を導入した。
(2) 戦略マップを自動生成した（マップを階層化した）。
(3) 戦略マップ上に影響マップの方法を導入して、スカッドの戦略思考、戦略的パス検索を導入した。

References(1) AI Summit '10: Slides, Notes, Highlights and Photos
http://aigamedev.com/open/coverage/gdc10-slides-highlights/#session1(2) On the AI Strategy for KILLZONE 2's Multiplayer Bots
http://aigamedev.com/open/coverage/killzone2/(3) Killzone 2 Multiplayer Bots
http://files.aigamedev.com/coverage/GAIC09_Killzone2Bots_StraatmanChampandard.pdf(4)Maria Cutumisu, Duane Szafron, "An Architecture for Game Behavior AI: Behavior Multi-Queues",
http://webdocs.cs.ualberta.ca/~duane/publications/pdf/2009aiideMC.pdf(5)
Kutluhan Erol. James Hendler. Dana S. Nau., "HTN Planning: Complexity and Expressivity.",
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.57.6003&rep=rep1&type=ps(6)Dana S. Nau,"Hierarchical Task Network Planning", Lecture slides for Automated Planning:
Theory and Practice
http://www.cs.umd.edu/~nau/cmsc722/notes/chapter11.pdf

Off the Beaten Path: Non-Traditional Uses of AI
Ben Sunshine-Hill (Havok), Michael Robbins (Gas Powered Games)

Off the Beaten Path: Non-Traditional Uses of AI
Ben Sunshine-Hill (Havok), Michael Robbins (Gas Powered Games)

Off the Beaten Path: Non-Traditional Uses of AI
Ben Sunshine-Hill (Havok), Michael Robbins (Gas Powered Games)

Off the Beaten Path: Non-Traditional Uses of AI
Ben Sunshine-Hill (Havok), Michael Robbins (Gas Powered Games)

Off the Beaten Path: Non-Traditional Uses of AI
Ben Sunshine-Hill (Havok), Michael Robbins (Gas Powered Games)

入力(DPS=Damage per second)

出力Off the Beaten Path: Non-Traditional Uses of AI
Ben Sunshine-Hill (Havok), Michael Robbins (Gas Powered Games)

Off the Beaten Path: Non-Traditional Uses of AI
Ben Sunshine-Hill (Havok), Michael Robbins (Gas Powered Games)

Off the Beaten Path: Non-Traditional Uses of AI
Ben Sunshine-Hill (Havok), Michael Robbins (Gas Powered Games)

第三章 デジタルゲームAIの学術の台頭

デジタルゲームAIの歴史
人が集まる

2000

2006

2010
知識が集積する

競って発表する

いろいろな企業がAIに力を入れ始める（米が中心）

発表を通して、
ゲームAIの知識が蓄積される。
（年に２～３個の良い発表）

ラウンドテーブル、
AI Programmers Dinner、など、なんとなくコミュニティが形成される。

デジタルゲームAIの歴史
人が集まる

2000

2006

2010
知識が集積する

競って発表する

いろいろな企業がAIに力を入れ始める（米が中心）

発表を通して、
ゲームAIの知識が蓄積される。
（年に２～３個の良い発表）

ラウンドテーブル、
AI Programmers Dinner、など、なんとなくコミュニティが形成される。

デジタルゲームAIの歴史
人が集まる

2000

2006

2010
知識が集積する

数多くの事例の集積
知識の積み上げゲームAIを主幹技術とするエンジニアの増大
博士・修士でAIを修めた学生の流入
いろいろな
2000年から始まるゲーム産業とアカデミクス
企業がAIに力を入れ始めるとの結び付きの運動 （米が中心）（情報技術分野の惹きつけ役として）発表を通して、
ゲームAIの知識が蓄積される。
（年に２～３個の良い発表）

ラウンドテーブル、
AI Programmers Dinner、など、なんとなくコミュニティが形成される。

競って発表するデジタルゲームAIの歴史
人が集まる

2000

2006

2010
知識が集積する

数多くの事例の集積
知識の積み上げと業界外へリリース
ゲームAIを主幹技術とするエンジニアの増大
博士・修士でAIを修めた学生の流入と活躍
いろいろな
2000年から始まるゲーム産業とアカデミクス
企業がAIに力を入れ始める（米が中心）との結び付きの運動を積極的に相互利用（情報技術分野の惹きつけ役として）発表を通して、
ゲームAIの知識が蓄積される。
（年に２～３個の良い発表）

ラウンドテーブル、
AI Programmers Dinner、など、なんとなくコミュニティが形成される。

競って発表するデジタルゲームAIの歴史
人が集まる

2000

2006

2010
知識が集積する産業との結び付き
競って発表する

数多くの事例の集積産業におけるさまざまな情報の流入
研究の可能性
知識の積み上げと業界外へリリース
新しい分野への野心
ゲームAIを主幹技術とするエンジニアの増大ゲームで育った世代が研究したい。
博士・修士でAIを修めた学生の流入と活躍
いろいろな
2000年から始まるゲーム産業とアカデミクス
企業がAIに力を入れ始める（米が中心）との結び付きの運動を積極的に相互利用（情報技術分野の惹きつけ役として）発表を通して、
ゲームAIの知識が蓄積される。
（年に２～３個の良い発表）

ラウンドテーブル、
AI Programmers Dinner、など、なんとなくコミュニティが形成される。

デジタルゲームAIの歴史
1995

2000

2004

2005

2006

AIIDE
AAAI Workshop on Challenges in Game AI

IEEE
CIG

2010

AAAI Workshop on Challenges in Game AI

http://www.aaai.org/Library/Workshops/ws04-04.php

AIIDE 2005

AIIDE 2005

AIIDE(AI and Interactive Digital Entertainment )-学会（AAAI = Association for advancement of
Artificial Intelligence の分科会）-毎年スタンフォード大学で開催。
-開催地を活かして、ゲーム開発者の招待講演。
また参加。
- 大学の研究者が主導。
- 産業からシーズ、ニーズを得て研究しようとする姿勢。
-現在ではややアカデミック。
- 発表時間が長く、レギュラーセッションは倍率が高い。
- 2000年代の中頃から、序々にゲーム業界主催のセッションを拡大。
- 基調講演にその年のゲーム業界で人工知能で大きな仕事をした人を呼ぶ。
(例) ウィル・ライト、クリス・ヘッカー

AIIDE

AIIDE

AIIDE Narrative Technology
WORKSHOP

AIIDE

AIIDE

Rich Hilleman, VP and Chief Creative Director at Electronic Arts の招待講演

AIIDEEA SPORTS のAI開発者たちによるパネルディスカッション

AIIDEEA SPORTS のAI開発者たちによるパネルディスカッション
http://www.easports.com/

AIIDE

Dr. Marek Michalowski, co-founder of BeatBots, LLC. の招待講演

CADIA Populs
http://populus.cs.ru.is/node/116

Humanoid Agentin Social Game Environment (HASGE)

Palli Thrainsson M.Sc. Thesis in Computer Science from Reykjavik University (2011)"DYNAMIC PLANNING FOR AGENTS IN GAMES USING SOCIAL NORMS AND EMOTIONS"
http://www.ru.is/faculty/hannes/students/MSThesisPalliThrainsson.pdf

HASGE Project(Reykjavik Univ, CCP)
http://cadia.ru.is/wiki/public:socialgame:mainPersonal DistancePalli Thrainsson M.Sc. Thesis in Computer Science from Reykjavik University (2011)"DYNAMIC PLANNING FOR AGENTS IN GAMES USING SOCIAL NORMS AND EMOTIONS"
http://www.ru.is/faculty/hannes/students/MSThesisPalliThrainsson.pdf

F-formation (Kendon, 1984)• 人と人が向い合うときに、形成する立ち位置。
Paul Marshall1, Yvonne Rogers and Nadia Pantidi Paul Marshall"Using F-formations to Analyse Spatial Patterns of Interaction in Physical Environments" (2011)
http://mcs.open.ac.uk/pervasive/pdfs/MarshallCSCW2011.pdf

いろいろな F-formation パターンPaul Marshall1, Yvonne Rogers and Nadia Pantidi Paul Marshall"Using F-formations to Analyse Spatial Patterns of Interaction in Physical Environments" (2011)
http://mcs.open.ac.uk/pervasive/pdfs/MarshallCSCW2011.pdf

Paul Marshall1, Yvonne Rogers and Nadia Pantidi Paul Marshall"Using F-formations to Analyse Spatial Patterns of Interaction in Physical Environments" (2011)
http://mcs.open.ac.uk/pervasive/pdfs/MarshallCSCW2011.pdf

EVE ONLINE

Claudio Pedica,"Spontaneous Avatar Behavior for Social Territoriality"
M.Sc. Thesis in Computer Science from Reykjavik University (2009)http://www.ru.is/faculty/hannes/students/MSThesisClaudioPedica.pdf

AIIDE 2012 WORKSHOPAIIDE 2012 レギュラーセッション（３日分）

IEEE CIG
(IEEE Computational Intelligence and Games )- ゲームAIの学会-世界１０ヵ各国から研究者が集まる（６０人ぐらい）- 毎年、米、韓国、北米など運営メンバーの世界各地で開催。
- 産業との結び付きは模索中。AIIDE ほ
どうまく行っていない。

-各種ゲームのコンテストを行う- Mario AI コンテスト- Bot Prize コンテスト- レーシングゲームAIコンテスト- スタークラフトAIコンテスト- 論文はWebで全公開

IEEE CIG 2011 (ソウル)

電気通信大学の伊藤毅志先生のパックマンのAIへのモンテカルロ木探索の応用（この年のパックマンAIコンテスト優勝）

IEEE CIG 2011 (ソウル)

Nozomu Ikehata and Takeshi Ito,"Monte-Carlo Tree Search in Ms. Pac-Man",IEEE CIG 2011, Seoul
http://cilab.sejong.ac.kr/cig2011/proceedings/CIG2011/papers/paper7.pdf

Dragon Age のパス検索
特徴：- 要素：グリッド＋アブストラクト・グラフ（２階層）- 生成：グリッド- 省メモリ、高速- グリッド < リージョン < セクター
（階層型パス検索システム）

リージョン「Dragon Age」(Bioware)におけるパス検索システム（E3）(y_miyake のゲームAI千夜一夜)
http://blogai.igda.jp/article/29628420.html

セクターIEEE CIG 2012 (グラナダ)

IEEE CIG 2012 (グラナダ)

IEEE CIG 論文はWebで全公開(IEEE Computational Intelligence and Games)

IEEE CIGゲームAIコンテスト

学術的知識が実際のデジタルゲームへ応用できることを表現。
（参加者はほとんど研究者） 技術のショーケース。
マリオAIコンテスト
ミズパックマン AI コンテスト＝ステージ自動生成＋自動クリアAI
問題が技術を牽引するような方向づけ（オリエンテーリング）。

スタークラフトAIコンテスト
http://cilab.sejong.ac.kr/cig2011/?page_id=100

カーシミュレーションAIコンテスト

IEEE CIGゲームAIコンテスト

マリオAIコンテスト＝ステージ自動生成＋自動クリアAI

スタークラフトAIコンテスト
http://cilab.sejong.ac.kr/cig2011/?page_id=100

ミズパックマン AI コンテスト

カーシミュレーションAIコンテスト

AIコンテスト(1) 国際学会併設のＡＩコンテスト※最近、海外ではデジタルゲームにおける人工知能技術の研究が盛んになっており、大きな大会では、論文発表と並行してコンテストが行われる場合が多い。ほとんどは、大学の研究室やゲーム企業などからエントリーされる。

(2) 毎年、恒例化
http://www.marioai.org/(3) 目的： デジタルゲームの題材を提供する＝研究を実際のゲームに結びつける＝デモンストレーション、産業へアピール

競技設定(1) ステージは自動生成(2) AIは決められた周囲の環境の情報を取って来ることができる。

優勝作品： Robin Baumgarten (2K Games)

Mario AI Competition@ ICE-GIC 2009
Sergey Karakovskiy and Julian Togelius
http://julian.togelius.com/mariocompetition2009/GIC2009Competition.pdf

優勝作品： Robin Baumgarten (2K Games)
アイデア•スーパーマリオの全ての敵の挙動を解析して数式に落しておく。
•数式に基づいて、常に次の環境（世界）の状態を予測する。
•各ノードの適合値を予測に基づいて計算する。
•A*のヒューリスティック関数： 目的の場所までにかかる時間•穴に落ちたり、ダメージを食らったりするケースはペナルティを加える。
•コイン、敵撃墜、パワーアップはとりあえず今のところ無視。
Mario AI Competition@ ICE-GIC 2009
Sergey Karakovskiy and Julian Togelius
http://julian.togelius.com/mariocompetition2009/GIC2009Competition.pdf

Mario AI Competition@ ICE-GIC 2009
Sergey Karakovskiy and Julian Togelius
http://julian.togelius.com/mariocompetition2009/GIC2009Competition.pdf

A* アルゴリズム• Best-First Search アルゴリズム• ゴールまでの残りコストを推定するヒューリスティック関
数• オープンノード群を保持する(最初はスタートノードだけ)• オープンセットが空でない間- オープンセットの中でトータル推定コストが最も低いノードをピックアップ

する- ノード＝ゴールになれば、その経路が求めるべき経路。
- 子ノードをオープンセットに追加（もし既存のノードでも、経路推定がよりよければ、入れ替える）• ヒューリスティック関数が適切ならば、正解を求めることができる。（ヒューリスティック関数は実際より下に見積もるものを取ることが大切）
Mario AI Competition@ ICE-GIC 2009
Sergey Karakovskiy and Julian Togelius
http://julian.togelius.com/mariocompetition2009/GIC2009Competition.pdf

ネットワーク上のグラフ検索法
ダイクストラ法
各ノードの評価距離＝出発点からの経路

V

P

Q

W
R

X

S

A

O

B
3

7
N

F

6

Ｓ

3
E

M
4
L

4
2
K

2

H

C

5

U

5

5

D

Y

T

3 G
3
2
3

Ｇ

Z

J

J

L

C

D

E

I
F

3

G
B

出発点（Ｓ）を中心に、最も短い経路を形成して行く。Gにたどり着いたら終了。

ネットワーク上のグラフ検索法
ダイクストラ法
各ノードの評価距離＝出発点からの経路

V

P

Q

W
R

X

S

A

O

B
3

7
N

F

6

Ｓ

3
E

M
4
L

4
2
K

2

H

C

5

U

5

5

D

Y

T

3 G
3
2
3

Ｇ

Z

J

J

L

C

D

E

I
F

3

G
B

出発点（Ｓ）を中心に、最も短い経路を形成して行く。Gにたどり着いたら終了。

ネットワーク上のグラフ検索法
A*法
ゴール地点がわかっている場合、現在のノードとゴールとの推定距離（ヒューリスティック距離）を想定して、トータル距離を取り、それが最尐のノードを探索して行く。
各ノードの評価距離＝出発点からの経路＋ヒューリスティック距離

V
P

Q

W
R

X

S
A

O

B
3

7
N

F

6

Ｓ

3
E

M
4
L

4

C

3
5

2
K

T

3 G
2

2

3

H
U

5
5

D
3
J

Ｇ

Z

I

Y
ヒューリスティック距離(普通ユークリッド距離を取る)

5+10.5G
3+14.2
B

6+8.4
H3+13.8C

出発点（Ｓ）を中心に、そのノードまでの最も短い経路を形成して行く。Gにたどり着いたら終了。

ネットワーク上のグラフ検索法
A*法
ゴール地点がわかっている場合、現在のノードとゴールとの推定距離（ヒューリスティック距離）を想定して、トータル距離を取り、それが最尐のノードを探索して行く。
各ノードの評価距離＝出発点からの経路＋ヒューリスティック距離

V
P

Q

W
R

X

S
A

O

B
3

7
N

F

6

Ｓ

3
E

M
4
L

4

C

3
5

2
K

T

3 G
2

2

3

H
U

5
5

D
3
J

Ｇ

Z

I

Y
ヒューリスティック距離(普通ユークリッド距離を取る)

5+10.5G
3+14.2
B

6+8.4
H3+13.8C

出発点（Ｓ）を中心に、そのノードまでの最も短い経路を形成して行く。Gにたどり着いたら終了。

ゴールは常に画面右端。

Mario AI Competition@ ICE-GIC 2009
Sergey Karakovskiy and Julian Togelius
http://julian.togelius.com/mariocompetition2009/GIC2009Competition.pdf

Mario AI Competition@ ICE-GIC 2009
Sergey Karakovskiy and Julian Togelius
http://julian.togelius.com/mariocompetition2009/GIC2009Competition.pdf

Mario AI Competition@ ICE-GIC 2009
Sergey Karakovskiy and Julian Togelius
http://julian.togelius.com/mariocompetition2009/GIC2009Competition.pdf

Mario AI Competition@ ICE-GIC 2009
Sergey Karakovskiy and Julian Togelius
http://julian.togelius.com/mariocompetition2009/GIC2009Competition.pdf

モーションプランニング

Mario AI Competition@ ICE-GIC 2009
Sergey Karakovskiy and Julian Togelius
http://julian.togelius.com/mariocompetition2009/GIC2009Competition.pdf

Mario AI Competition@ ICE-GIC 2009
Sergey Karakovskiy and Julian Togelius
http://julian.togelius.com/mariocompetition2009/GIC2009Competition.pdf

Mario AI Competition@ ICE-GIC 2009
Sergey Karakovskiy and Julian Togelius
http://julian.togelius.com/mariocompetition2009/GIC2009Competition.pdf

ステージで起こるイベントとの同期• ２フレームごとに更新• オブジェクトと敵の位置をノードに反映

Mario AI Competition@ ICE-GIC 2009
Sergey Karakovskiy and Julian Togelius
http://julian.togelius.com/mariocompetition2009/GIC2009Competition.pdf

まとめ(1) ステージの変化を予測する。
(2) マリオ自身の動きをシミュレートできる。
(3) A*検索を使う。（目標は右端）(4) 経路だけでなくマリオの動きと共にアクション
プランを作る（モーションプランニング）(5) 敵の重みをA*検索のノードに加える。
(6) ２フレームごとにパス検索をリプラ二ングする。

http://www.youtube.com/watch?v=DlkMs4ZHHr8

IEEE CIG 2012

IEEE CIG 2012

第四章 産業と学術デジタルゲームAIの歴史
2000

2004

2005

2006

2010

AIIDE
学術的な発展AAAI Workshop on Challenges in Game AI

IEEE
CIG

デジタルゲームAIの歴史
人が集まる

2000

2006

2010
知識が集積する

競って発表する

いろいろな企業がAIに力を入れ始める（米が中心）

発表を通して、
ゲームAIの知識が蓄積される。
（年に２～３個の良い発表）

ラウンドテーブル、
AI Programmers Dinner、など、なんとなくコミュニティが形成される。

デジタルゲームAIの歴史
人が集まる

2000

2006

2010
知識が集積する

AIIDE

競って発表する
AAAI Workshop on Challenges in Game AI

IEEE
CIG
いろいろな
企業がAIに力を入れ始める（米が中心）

発表を通して、
ゲームAIの知識が蓄積される。
（年に２～３個の良い発表）

ラウンドテーブル、
AI Programmers Dinner、など、なんとなくコミュニティが形成される。

デジタルゲームAIの歴史
人が集まる

2000

2006
AIIDE

産業が開いた分野を2010
知識が集積する
学術が定式化・一般化・精密化する。
競って発表する

AAAI Workshop on Challenges in Game AI

IEEE
CIG

学術の一般的な知識をゲームの特殊な条件でいろいろな 使う。
企業がAIに力を入れ始める（米が中心）

発表を通して、
ゲームAIの知識が蓄積される。
（年に２～３個の良い発表）

ラウンドテーブル、
AI Programmers Dinner、など、なんとなくコミュニティが形成される。

デジタルゲームの研究と製品
製品

学術
一番重要なのは「手法」
一般解を求める。

一番重要なのは「ユーザー体験」
ゲーム内部で特殊な条件で成立すればいい。
（特殊な条件における問題）

デジタルゲームの研究と製品
製品

学術
一番重要なのは「手法」
一般解を求める。

ゲームの中のAI技術（手法）を磨く。

一番重要なのは「ユーザー体験」
ゲーム内部で特殊な条件で成立すればいい。
（特殊な条件における問題）

AIによってユーザーエクスペリエンスを作る（AI-UX）。

「技術ステージ」
ステージ＝技術の集合体によって規定されるAI空間

新しいユーザー体験

ユーザー体験

ユーザー体験

技術（学術的技術）によって到達した空間の中で、
新しいユーザーの体験を形作って行く。

「技術ステージ」
ステージ＝技術の集合体によって規定されるAI空間

アーキテクチャ、パス検索、プランニング（2000-2012）

センサー、ステートマシン、データドリブン（1995-2005）

アセンブラによるプログラム、Cとスクリプト（1980-2000）

クロスオーバー
学術的知識はそのままだが、ゲームAIとしての学問ができ始めると、産業も学問の境界が逆に合間になって行く。

デジタルゲームの研究と製品
ゲームの中のAI技術（手法）を磨く。
あるゲームが含む一般的な問題を解く。

かなり一般的なワールドを作るようになったので、普遍的な問題としてAIの問題を解く。

AIによってユーザーエクスペリエンスを作る（AI-UX）。
メトリクス（指標）を導入して、ユーザー分析を行う。

ユーザーに向かってAIを使って体験を作って行く
科学的手法。

メタAI
ゲームAIの二つの種類キャラクターＡＩ
キャラクターの頭脳（意志決定機構）

ゲームＡＩ

メタＡＩ
ゲーム全体を俯瞰する頭脳メタＡＩの歴史
1980

1990

2000

古典的メタAI

キャラクターＡＩ技術の発展
現代のメタＡＩ（例）「ゼビウス」 敵出現テーブル巻き戻し
敵0
敵１
敵2
敵3

敵4
敵5

遠藤雅伸氏 あと面白い機能なんですけれど、 ゼビウスには非常に簡単なAIが組み込まれています。「プレイヤーがどれくらいの腕か」というのを判断して、 出てくる敵が強くなるんです。
強いと思った相手には強い敵が出てきて、 弱いと思った相手には弱い敵が出てきます。 そういっ
たプログラムが組み込まれています。 ゲームの難易度というのは「初心者には難しくて、上級者には簡単だ」ということが、 ひとつの難易度で(調整を)やっていくと起きてしまうので、 その辺を何とか改善したいな、ということでそういったことを始めてみたのですけれど、 お陰で割合にあまり上手くない人でも比較的長くプレイできる、 うまい人でも最後のほうに行くまで結構ドラマチックに楽しめる、 そういった感じになっています。 － ゼビウスセミナー －http://spitfire.client.jp/shooting/xevious2.html

現代のメタAI
より積極的にゲームに干渉する。

メタAI

敵配位

敵スパウニング

ユーザー

ストーリー

レベル
動的生成

適応型動的ペーシング[基本的発想](1) ユーザーがリラックスいている時に、ユーザーの緊張度が一定の敶居を超えるまで敵をぶつけ続ける。
(2) ユーザーの緊張度が一定の緊張度を超えると敵を引き上げる。
(3) リラックスすると敵を出現し始める(（１）へ）。

メタAI(=AI Director)によるユーザーのリラックス度に応じた敵出現度
計算によって求められた
理想的な敵出現数

ユーザーの緊張度

実際の敵出現数(1) リラックスを破るように敵を出現させる。
Build Up …プレイヤーの緊張度が目標値を超えるまで敵を出現させ続ける。
Sustain Peak … 緊張度のピークを3-5秒維持するために、敵の数を維持する。
Peak Fade … 敵の数を最小限へ減尐して行く。
Relax … プレイヤーたちが安全な領域へ行くまで、30-45秒間、敵の出現を最小限に維持する。

メタＡＩがゲームを認識する方法＝ キャラクターAIが環境を認識する方法

キャラクター用に作成されたナビゲーションメッシュを
メタＡＩがゲームの進行を認識するために使用する。

メタAIが作用を行う領域(AAS=Active Area Set)

メタAIが作用を行う領域(AAS=Active Area Set)

メタAIが作用を行う領域(AAS=Active Area Set)

安全な領域までの道のり(Flow Distance)
プレイヤー群の経路をトレース・予測- どこへ来るか- どこが背面になるかAAS に対して行うこと。
メタＡＩは AAS に移動に伴い、敵の群れを生成・消滅させたりする。

プレイヤーからの可視領域可視領域では、例えば、敵のスパウニング（発生）などはできない。

敵出現領域

背後

前方

高頻度

低頻度

敵の種類、アイテムの種類ごとに出現頻度が違う。

ボス出現アルゴリズム(1) Ｎ体を予想される逃走経路上に配置(2) ３つのイベントパターン（何もいない、を含む）（例） Tank, Witch, 何もいない(3) 同じパターンのくり返しは禁止(例) Witch, 何もいない、Witch はＯＫ。
Witch, Witch はだめ。

何もいない

具体的なアルゴリズム(1) 各エリアに、出現数 N を決定する(2) 出現数Nは予想される逃走経路の長さと要求される密度によって計算される.
(3) あるエリアがAAS の中に入るとクリー
チャーがN体生成される(4) そのエリアがAAS の外に出ると生成が中止され、クリーチャーは消滅される。
(5) Ｎはそのエリアがプレイヤーから見えている場合、或いは、プレイヤーがリラックス
モードの場合には、強制的に０になる。

まとめ

参考文献
(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 Conferenceat Stanford.
http://www.valvesoftware.com/publications.html(3) 三宅 陽一郎, “メタAI”, 「デジタルゲームの技術」
P.186-190, ソフトバンク クリエイティブ•

プレイヤー・メトリクス
ゲームにさまざまな計量を入れることで科学にする。
メトリクス１

メトリクス２

ゲーム

メトリクス３

Aline Normoyle, John Drake,Maxim Likhachev,Alla Safonova,
Game-Based Data Capture for Player Metrics (AIIDE 2012)

プレイヤー・メトリクス
ゲームにさまざまな計量を入れることで科学にする。
メトリクス１

メトリクス２
ゲーム

ゲームを観測対象として見ている。

メトリクス３

この視点はなかなか開発にはない。開発者は自分のゲームをこねわます粘土のようなイメージ。ここまで客観的になれない。

第五章 まとめ世界で一番、ゲームAIで産学が結びつくことができる都市は？
• 東京• 距離が近い。
• 言葉が同じ。
• 同じゲームで育った土壌がある。
• 大手ゲーム会社が密集している。
• ゲームの種類が多様。
• ….

そのためには何をすればいいか？
• 一つ一つの問題を丁寧に共有して、お互いが貢献できるポイントを探そう。
• 産学連携が先にあるのではなくて、まずは技
術的テーマを共有しよう。
• そういった成果を発表できる場を作ろう。

三宅陽一郎 講演資料・論文集
2006-2012年3月までの講演・論文資料を全公開
2006-2010 ゲームAI連続セミナー全７回の講演資料を含む

y_miyake のゲームAI千夜一夜「三宅陽一郎 講演資料・論文集」
http://blogai.igda.jp/article/46500782.html
http://blogai.igda.jp/article/57135465.html

Making your dreaming AI !
ご静聴ありがとうございました！