「ゲームＡＩのパースペクティブ」
The Perspective of Game AI
筑波大学コンテンツ工学セミナー

三宅 陽一郎（株式会社フロム・ソフトウェア）
y.m.4160@gmail.com
2009.11.5@筑波大学

Contact Information
Youichiro Miyake• Mail：y.m.4160@gmail.com• Twitter: @miyayou• Blog：http://blogai.igda.jp• LinkedIn: http://www.linkedin.com/in/miyayou• Facebook： http://www.facebook.com/youichiro.miyake自己紹介
1999年京都大学総合人間学部基礎科学科卒業．
2001年大阪大学理学研究科修士課程物理学専攻修了．
2004年東京大学工学系研究科博士課程（単位取得満期退学）
同年、株式会社フロム・ソフトウェア入社．

「デジタルゲームにおける人工知能の研究・開発」

[講演
講演]
講演

全講演資料を
全講演資料を公開しています
公開しています。
しています。

2006年
年
CEDEC2006「クロムハウンズにおけるクロムハウンズにおける人工知能開発における人工知能開発から人工知能開発から見から見るゲームＡＩ
ゲームＡＩのＡＩの展望 」
http://server02.joeswebhosting.net/~ig1347//modules/mydownloads/
2007年
年
AOGC2007 招待講演 「人工知能が
人工知能が拓くオンラインゲームのオンラインゲームの可能性」
可能性」
http://www.bba.or.jp/AOGC2007/080/
CEDEC2007 招待講演 「エージェント・
エージェント・アーキテクチャーから
アーキテクチャーから作から作るキャラクターＡＩ」
キャラクターＡＩ」
http://server02.joeswebhosting.net/~ig1347//modules/mydownloads/
Korea Game Conference 2007招待講演
招待講演
2006 年～2007年
年
IGDA日本日本、日本、ゲームＡＩ
ゲームＡＩ連続
ＡＩ連続セミナー
連続セミナー「
セミナー「ゲームＡＩ
ゲームＡＩをＡＩを読み解く」全６回
http://server02.joeswebhosting.net/~ig1347//modules/mydownloads/
2008年
年
CEDEC2008 招待講演「
招待講演「ゲーム開発
ゲーム開発のための開発のためのプロシージャルのためのプロシージャル技術
プロシージャル技術の技術の応用」
応用」
http://cedec.cesa.or.jp/2008/archives/archive_1.html
DiGRA JAPAN 公開講座「
公開講座「Spore におけるゲーム
におけるゲームＡＩ
ゲームＡＩ技術
ＡＩ技術と技術とプロシージャル 」
http://www.digrajapan.org/modules/mydownloads/viewcat.php?cid=10
IGDA日本
日本 GDC報告会
報告会 「GDCにに見る最新AIと最新 とプロシージャル技術
プロシージャル技術」
技術」
http://server02.joeswebhosting.net/~ig1347//modules/mydownloads/
2009年
年
IGDA日本
日本 GDC報告会
報告会 「これからのゲーム
これからのゲームＡＩ
ゲームＡＩのＡＩの作り方」
http://www.digrajapan.org/modules/mydownloads/
http://server02.joeswebhosting.net/ ~ig1347// は、http://www.igda.jp/ へ移行予定です
移行予定です。
です。

自己紹介
[特別論文
特別論文]
特別論文
人工知能学会誌 Vol. 23 No. 1 (2008 年 1 月 ) 「ゲームＡＩ
ゲームＡＩ特集
ＡＩ特集」
特集」「ディジタルゲームにおける
ディジタルゲームにおける人工知能技術における人工知能技術の
人工知能技術の応用」
応用」 （三宅）
三宅）

[報告書
報告書]
報告書
デジタルコンテンツ協会
デジタルコンテンツ協会
２００７年度
２００７年度 第３章「ゲームＡＩ」
ゲームＡＩ」「デジタルコンテンツ制作
デジタルコンテンツ制作の制作の先端技術応用に先端技術応用に関する調査研究報告書する調査研究報告書」
調査研究報告書」
２００８年度
２００８年度 第３章「プログラミングＡＩ」
プログラミングＡＩ」「デジタルコンテンツ制作
デジタルコンテンツ制作の制作の先端技術応用に先端技術応用に関する調査研究報告書する調査研究報告書」
調査研究報告書」
ゲームＡＩ
ゲームＡＩのＡＩの情報について情報について、について、総合的にまとめてあります
総合的にまとめてあります。
にまとめてあります。
http://www.dcaj.org/report/index.html よりＰＤＦ
よりＰＤＦダウンロード
ＰＤＦダウンロードできます
ダウンロードできます。
できます。

[インタビュー
インタビュー]
インタビュー

大学から大学からゲームメーカー
からゲームメーカーへ
ゲームメーカーへ――AI研究―― 研究で研究で広がるステキ
がるステキな
ステキなゲームのゲームの世界とは
世界とは？
とは？
http://gamez.itmedia.co.jp/games/articles/0901/08/news129_3.html
http://gamez.itmedia.co.jp/games/articles/0901/09/news075.html

（ブログ）
日本）
ブログ） y_miyake のゲームＡＩ
ゲームＡＩ千夜一夜
ＡＩ千夜一夜 （IGDA日本
日本）
http://blogai.igda.jp/

コンテンツ第一章 ガイダンス
第二章 実例紹介- Elite- SimCity- The Sims
- Black & White- Creatures- DOOM- Quake Wars
- Eve Online- Halo Wars
- Forza Motor Sports

第一章 ガイダンス

知能は環境に対して相対的に定義される世界

知能は環境に対して相対的に定義される世界

知能は環境に対して相対的に定義される

世界
知性は世界とインラクションしながら適応して行く（学習）

知能が学習が出来る仕組みとは？
知性のポテンシャル

ニューロンの集合

適応に応じて変形できる器官を持つ＝可塑性（かそせい）を持つ

特性が遺伝するのではなく一般的な適応性が遺伝する「私たちがもっているいろいろな腱はどれも、大きさ、長さ、走行ともに腱としての機能に適っている。この組織の裁縫は揃って引っ張られる方向に向いており……
このようにこまかいところまでよく適応がおこなわれるのは、すべて腱を作りあげているただ一つの性質から派生しているように見える。
つまり腱の場合、遺伝するのは、繊維芽細胞がそこに加えられた要求に応じて反応するという、一般的な適応性だけなのである。
こまかな適当は二次的で遺伝しない変化であって、各世代で使うことによって新しく作り出される」 (ジュリアン・ハクスリー「進化とは何か？」)
Ｊ．スコットターナー「自己デザインする生命」(P.308)の引用の引用

適応・学習システム
•
•
•
•
•

ニューラルネットワーク
遺伝的アルゴリズム
ベイジアンネットワーク
決定木学習

Learning & Adaptability…

世界
適応システムを実装（インプリメンツ）することで、序々にＡＩの知性を世界に馴染ませていく。

ゲームにおけるＡＩはデザイナーが自由に作り変えることができなければならない
しかし、殆どのゲームＡＩでは、学習アルゴリズムは使用されない。
なぜなら、思い通りのＡＩになる可能性が少ないから。
（そもそも思い通りに学習するＡＩは学習ではない）

Learning & Adaptability
Customizability & Scalability

カスタム・システム
Customizability &Scalability

•
•
•
•
•

スクリプト
プログラム
ツール
FSM
…

世界
最適なシステムをマニュアル（手）で作り上げる

ゲームＡＩに必要な３つのScalability
elite major
heretic gruntswarmsbrute captain
Mirandaflood

hunters

challenge

hell-jumpers

Varietysniper marine

DRAMA!
story

Variationpacingboarding
drive the warthog

VolumeShoot the needler
Strafe target

fight
perch

melee attack

hide２つの世界、２つの知性

自然界

デジタル
ワールド

実際の知性（自然界における知性）をリバースエンジ二アリングして、
デジタルワールドの知性を作る…（ニューラルネット、遺伝的アルゴリズム）という発想は正しいだろうか？
或いは、デジタルワールド（人工的世界）には、人工世界特有の、知性の仕組み、というものがあるのだろうか？

人工知能技術
自然界を
自然界を起源とする起源とする技術とする技術どちらとも言どちらとも言えない

アルゴリズムをアルゴリズムを起源とする起源とする技術とする技術

カスタマイズ可能

学習可能
ニューラルネットワーク

Prolog
Lisp

知識表現
プランニング

遺伝的アルゴリズム

FSM
クラシファーシステム
探索木
ベイジアンシステム
評価値システム
エージェントアーキテクチャー
エキスパートシステム

人工知能技術
自然界を
自然界を起源とする起源とする技術とする技術どちらとも言どちらとも言えない

アルゴリズムをアルゴリズムを起源とする起源とする技術とする技術

カスタマイズ可能

学習可能
ニューラルネットワーク
知識表現
遺伝的アルゴリズム

PrologLisp
プランニング

ゲームＡＩ
ＡＩで
ゲーム
ＡＩで
ときどき使
使われる
われる技術
ときどき
技術クラシファーシステム

FSM

探索木

ゲームＡＩ
ＡＩでよく
でよく使
使われる
われる技術
ゲーム
ＡＩでよく
技術

ベイジアンシステム

評価値システム
エージェントアーキテクチャー
エキスパートシステム

成熟した知能を作るためには、
しっかりと構築された世界を持たねばならない（デジタル世界のＡＩの未来を考える）

世界

デジタル世界の成熟度 ＝ その世界の法（物理、生物、経済などの法則）＋その世界の構造多様性（海、山、オブジェクト、光…）＋その世界の動的多様性（生態系、太陽系…）その世界に適応し得るＡＩを構築する（しなければならない）
ＡＩを
ＡＩを賢くしようと思
くしようと思ったら、ＡＩ
ったら、ＡＩ、ＡＩがが属する世界する世界
世界をを成熟させよ
成熟させよ
させよ！
！

成熟した知能を作るためには、
しっかりと構築された世界を持たねばならない（デジタル世界のＡＩの未来を考える）

世界

デジタル世界の成熟度 ＝ その世界の法（物理、生物、経済などの法則）＋その世界の構造多様性（海、山、オブジェクト、光…）＋その世界の動的多様性（生態系、太陽系…）その世界に適応し得るＡＩを構築する（しなければならない）
ＡＩを
ＡＩを賢くしようと思
くしようと思ったら、ＡＩ
ったら、ＡＩ、ＡＩがが属する世界する世界
世界をを成熟させよ
成熟させよ
させよ！
！

ＡＩと世界との対応（マッチング）
その世界に適うＡＩを作る（ＡＩと世界とのマッチング）＝その世界を見れば、そこに住まうべき知性の形が見える＝ デジタルゲームＡＩの歴史は、
デジタルワールドの特性を見れば見えるゲーム世界の発展

ゲーム世界の発展

ゲーム世界の発展

ゲームの進化と人工知能
FC

SFC

SS, PS

Hardware

単純な世界のシンプルなＡＩ

PS2,GC,Xbox

1999 DC

2005

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

時間軸

複雑な世界の
複雑なＡＩ

ゲームも世界も、ＡＩの身体と内面もますます複雑になる。

AI とはシステム内システム

世界

本来の知性のあり方＝ 動的な世界に含まれる一個の動的なシステムとして、世界と相互作用しながら運動する。
＝ 固有システム （interactive） in システム＝ システム内システム

ゲームの進化と人工知能
FC

SFC

SS, PS

Hardware

単純な世界のシンプルなＡＩ

PS2,GC,Xbox

1999 DC

2005

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

時間軸

複雑な世界の
複雑なＡＩ

ゲームも世界も、ＡＩの身体と内面もますます複雑になる。

分離から調和へ向かうＡＩの歴史
世界の自律化の歴史

舞台装置としてのデジタル世界舞台装置の一部としてのＡＩ構造化される世界（ゲーム的リアリティ）

ＡＩアルゴリズムによる駆動(FSM,意思決定)

ＡＩの自律化の歴史

自律化する
世界（物理、生態系）

自律型ＡＩ

分離から調和へ向かうＡＩの歴史
世界の自律化の歴史

舞台装置としてのデジタル世界構造化される世界（ゲーム的リアリティ）

自律化する
世界
（物理、生態系）

ＡＩと世界の分離化と相互作用の歴史

舞台装置の一部としてのＡＩ

ＡＩアルゴリズムによる駆動(FSM,意思決定)

ＡＩの自律化の歴史

自律型ＡＩ

アカデミックなＡＩとエンターテインメントのＡＩの違い

世界

アカデミック：アカデミック：① 一定の方法論によって組み立てられなければならない。
② ＡＩの知性の高度さが、一定の指標で評価されなければならない。
③ 論文にならなければならない。

ＡＩそのものが対象である （例）google検索エンジン、amazon…

アカデミックなＡＩとエンターテインメントのＡＩの違い
世界

ＡＩ

アバター
ユーザー

エンターテインメント：
エンターテインメント：① 方法は問わない。
② ＡＩは広い意味でユーザーを楽しませるものでなければならない。
③ ＡＩはユーザーに知性として了解されるものでなければならない。

ＡＩとユーザーの関係そのものが対象である

プレイヤー、開発者、観測地平線
ゲームが認識される平面

ユーザーからみえるゲーム空間
開発者が提示しようとする空間

プレイヤー
開発者

２００８年度
２００８年度 「デジタルコンテンツ制作
デジタルコンテンツ制作の制作の先端技術応用に先端技術応用に関する調査研究報告書する調査研究報告書」
調査研究報告書」

第３章「プログラミングＡＩ」
プログラミングＡＩ」

ゲームＡＩ
ゲームＡＩのＡＩの情報について情報について、について、総合的にまとめてあります
総合的にまとめてあります。
にまとめてあります。http://www.dcaj.org/report/index.html よりＰＤＦ
よりＰＤＦダウンロード
ＰＤＦダウンロードできます
ダウンロードできます。
できます。

エンターテインメントＡＩ（ゲームＡＩ）とはユーザー（人間）とＡＩの関係を探求する学問である
デジタルゲームＡＩ：
ＡＩ：
デジタルゲーム
デジタルゲームにおける知能的側面。
キャラクターＡＩ、ゲームシステムそのもの
メタＡＩ、自動生成（プロシージャル）…
定性的・
定性的・定量的研究

ユーザー：：
ユーザー
感情を持つ人間。これはまた、混沌そのもの…

デジタルゲーム世界
決定的な
な方法論
方法論や
や明確
明確な
な体系
体系があるわけではないがあるわけではない。
。
決定的があるわけではない
なんとなく輪郭
輪郭がつかめそう
現在、
、構築中
構築中の
の研究分野…なんとなく輪郭がつかめそう.…
現在

これまでのゲームＡＩとどう違うか？
「ゲームＡＩ」と言えば？

囲碁・将棋・チェスのＡＩ

ターン制（時間が止まっている）
ゲームが固定している（ルールが最初から完全に決まっている）
ＡＩはプレイヤーＡＩ

一般のデジタルゲームＡＩ
ターン制 ⇒ リアルタイム制
ゲームが固定している ⇒ ゲーム製作と同時進行でＡＩを作る
ＡＩはプレイヤーＡＩ ⇒ ＡＩはゲームの一部
これまでのゲームＡＩを内包するゲーム研究これまでのゲームＡＩとどう違うか？
プレイヤーＡＩ
ターン制
ゲームが固定ゲーム製作と同時に作成

リアルタイム制
ＡＩはゲームの一部
ターン制 ～ リアルタイム制
ゲームが固定している ～ ゲーム製作と同時進行でＡＩを作る
ＡＩはプレイヤーＡＩ ～ ＡＩはゲームの一部
これまでのゲームＡＩを内包するゲーム研究

一般にゲームＡＩは、そのゲームの意味
空間・物理空間の中で定義されるAIキャラクター属性設定
レベル（ステージ）デザイン
エフェクト
アニメーション
物理処理
AIには、そのゲームの極として、そのゲームのエッセンスが含まれている。

ゲームＡＩを作るということ(1) ゲームを構成する一部として、そのゲームが要求する知的役割を果たすこと。
そのＡＩを以ってゲームを完成させる。
ＡＩは新しいゲームデザインの糸口でもある。

(2) ユーザーとＡＩの関係性を構築すること。
ＡＩを以ってユーザーを楽しませる。
新しいユーザーエクスぺリエンスの創造
ゲームの声を聴き、ＡＩを創造せよ

ゲームＡＩテクニック

本質
中身
表面に見えるテクニック

コンテンツ第一章 ガイダンス
第二章 実例紹介- Elite- SimCity- The Sims
- Black & White- Creatures- DOOM- Quake Wars
- Eve Online- Halo Wars
- Forza Motor Sports

第２章 事例紹介

Elite (1984)
8-Bit マシンでステージを自動生成

256の銀河が、データテーブル擬似乱数列によって自動生成される。
Besides its excellent implementation of wireframe 3D graphics, where Elite really set itself apart from these other spacetrading games was its procedurally generated universe, including planetary positions, names, politics, and general descriptions.
http://www.gamasutra.com/view/feature/3983/the_history_of_elite_space_the_.php?print=1
http://www.escapistmagazine.com/forums/read/326.68619

References(1) http://blogai.igda.jp/article/32623498.html

コンテンツ第一章 ガイダンス
第二章 実例紹介- Elite- SimCity- The Sims
- DOOM- Quake Wars
- Eve Online- Halo Wars
- Forza Motor Sports

SimCity(Micropolis) (1989)
Cellular Automaton でステージを自動発展
Meta
Peer

Sub
Crime = Pop. Density^2 - Land Value - Police EffectLand Value = Distance[Zonetype] + Terrain + Transport

世界をダイナミクス（力学系、動的な数値の仕組み ）として動かす。
世界を動かす SubAI(=シミュレーション) を構築。
http://weblogs.asp.net/bsimser/archive/2008/01/10/simcity-source-code-released-to-the-wild-let-the-ports-begin.aspx

References(1) Don Hopkins, Cellular Automaton Demo
http://d.hatena.ne.jp/video/google/2395405596313202859(2) John von Neumann's 29 state Cellular Automata
Implemented in OpenLaszlo
http://www.donhopkins.com/drupal/?q=node/41

コンテンツ第一章 ガイダンス
第二章 実例紹介- Elite- SimCity- The Sims
- Black & White- Creatures- DOOM- Quake Wars
- Eve Online- Halo Wars
- Forza Motor Sports

“ウィル・ライト” とは誰か？
Bungeling Bay (1984)
SimCity(1989)
SimEarth(1990)
SimAnt(1991)
SimCity 2000 (1993)
SimCopter(1996)
SimCity 3000 (1999)
The Sims(2000)
SimCity4(2003)The Sims 2(2004)
SimCity Societies (2007)
Spore

デビュー

シムズ
時代

Maxis
EA, Maxis

Spore
時代

(2008)The Sims 3 (2008)
http://spore.wikia.com/wiki/Will_Wright技術者“ウィル・ライト”
把握した ダイナミクス を数値モデルとして実現できる能力を持つある朝持って来た、
ウィル・ライトのThe Sims のダイナミクスを表現した
Ｃのコード(The Soul of The Sims, by Will Wright)

プログラマーらしい、
抽象的な動的な流れを追う能力、プログラムの可能性をよく知っている。

http://www.donhopkins.com/drupal/node/148

The Sims シリーズのＡＩの作り方
Meta

Peer
Sub

Meta
Peer
Sub

[原則
原則]
原則 周囲の周囲の対象に対象に対する、する、あらゆる可能
あらゆる可能な可能な行動から
行動から、から、
Happiness 係数を
係数を最大化する
最大化する行動する行動を
行動を選択する
選択する。
する。
Sims (not under direct player control) choose what to do by selecting, from all of thepossible behaviors in all of the objects, the behavior that maximizes their current
happiness.

人をダイナミクス（力学系、動的な数値の仕組み ）として動かす。
世界を動かす PeerAI(=キャラクターＡＩ) を構築。

オブジェクトに仕込むデータ構造
Data (Class, Sate)

パラメーターGraphics (sprites, zbuffers)
Animations (skeletal)

グラフィックス
アニメーション

Sound Effects
Code (Edith)-Main (object thread)-External 1-External 2-External 3

サウンド
メインスレッド
いろいろなインタラクションの仕方

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

ＮＰＣに仕込むデータ構造

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

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

Bathtub
Mood +20-Take Bath(+40 Hygiene)(+30 Comfort)-Clean(+20 Room)

Mood +18[原則
原則]
原則 周囲の周囲の対象に対象に対する、する、あらゆる可能
あらゆる可能な可能な行動から
行動から、から、
Happiness （ここではMood）
） 係数を
ここでは
係数を最大化する
最大化する行動する行動を
行動を選択する
選択する。
する。

Happiness 係数の計算のためのウエイト

w_

w_

w_

w_

w_

w_

w_

w_

=

Mood (-100..+100)

Hapiness = W_Hunger * Hunger + W_Engergy * Energy + …

Happiness を最大化

冷蔵庫が最も総合的にHapinessを上昇させるからHappiness を最大化

冷蔵庫へ行きます。

Happiness を最大化

お腹が膨れたので、ちょっと退屈だから、女の子と話します。

[余談] Halo3
上記の手法は、

Declarative Method として Halo3 へ
Halo3 ９講演のPPT資料 http://www.bungie.net/Inside/publications.aspx

Sims の話へ戻って…

Edithこれだけだと、原始的で単発の行動しかできないけれど…
実際は、一連の行動のシークエンスをＡＩに行わせたい。
そのためのビジュアル・プログラミング環境が、Edith

Edithプログラミング・オブジェクトを繋げて行くビジュアル・プログラミング環境

Kenneth D. Forbus “Some notes on programming objects in. The Sims”
http://www.qrg.northwestern.edu/papers/Files/Programming_Objects_in_The_Sims.pdf

Edithプログラミング・オブジェクトを繋げて行くビジュアル・プログラミング環境

Kenneth D. Forbus “Some notes on programming objects in. The Sims”
http://www.qrg.northwestern.edu/papers/Files/Programming_Objects_in_The_Sims.pdf

Edith Demo

http://www.DonHopkins.com/home/movies/TheSimsPieMenus.mov

実例① 「調理して食べる」
FridgeHunger +30

Hungry実例① 「調理して食べる」
Fix Dinner

Fridgefood

実例① 「調理して食べる」
Fix Dinner

Fridgefood

cookcounterstove実例① 「調理して食べる」
Fix Dinner

FridgePlacement surface

food

chair
counter

stove

table

実例① 「調理して食べる」
Fix Dinner

FridgeDisposal (neat)
food

chair
counter

stove

table

dishwasher

Edith for Mood Adjuster (パーティ盛り上げグッズ)

Kenneth D. Forbus “Some notes on programming objects in. The Sims”
http://www.qrg.northwestern.edu/papers/Files/Programming_Objects_in_The_Sims.pdf

人同士のコミュニケーション

Kenneth D. Forbus “Some notes on programming objects in. The Sims”
http://www.qrg.northwestern.edu/papers/Files/Programming_Objects_in_The_Sims.pdf

人同士のコミュニケーション(いちゃつく)Kenneth D. Forbus “Some notes on programming objects in. The Sims”
http://www.qrg.northwestern.edu/papers/Files/Programming_Objects_in_The_Sims.pdf

人同士のコミュニケーション(いちゃつく)Kenneth D. Forbus “Some notes on programming objects in. The Sims”
http://www.qrg.northwestern.edu/papers/Files/Programming_Objects_in_The_Sims.pdf

コンテンツ
第一章 ガイダンス
第二章 実例紹介- Elite- SimCity- The Sims
- Black & White- Creatures- DOOM- Quake Wars
- Eve Online- Halo Wars
- Forza Motor Sports

BLACK & WHITE (2001)

人間が指示を与える“ゴッドゲーム”
クリーチャーに組み込まれたニューラルネットワークが学習する(パーセプトロン型)

学習の原理とＡＩ
ＡＩ全体は BDI アーキテクチャ
B(Belief)、D(Desire)、I (Intention)
エージェントが行動を起こし、その行動に対して、プレイヤーからのフィードバックがもたらされる。
エージェントの内部は、パーセプトロン型のシステムによって欲求が形成される仕組みで、プレイヤーからのフィードバックが、
このパーセプトロンのウエイトを変化させる。

References
Richard Evans, “Varieties of Learning”,
11.2, AI Game Programming Wisdom (2002)

コンテンツ第一章 ガイダンス
第二章 実例紹介- Elite- SimCity- The Sims
- Black & White- Creatures- DOOM- Quake Wars
- Eve Online- Halo Wars
- Forza Motor Sports

Creatures (1996)
ユーザーとインタラクションしながら物の認識を学習する

LOBE = 1000 neurons がパックされたもの
さらに、その LOBE 同士が結合されている
http://aigamedev.com/reviews/creatures-ai/

Creatures AI アーキテクチャ

認識層、概念層における Lobe 群

References• [1] Creatures: Entertainment Software Agents with Artificial Life Stephen
Grand, Dave Cliff Autonomous Agents and Multi-Agent Systems, 1997
PPT
http://www.sci.brooklyn.cuny.edu/~sklar/teaching/f05/alife/notes/aliCreatures4.pdf
http://www.springerlink.com/content/v1388046w1813uvw/
論文（右のCASHEDからダウンロードしてください）
http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.18.9182• [2] Creatures: Artificial Life Autonomous Software Agents for HomeEntertainment Stephen Grand, D. Cliff, A. Malhotra International
Conference on Autonomous Agents, 1997
http://sigart.acm.org/proceedings/agents97/A157/A157.PDF

コンテンツ第一章 ガイダンス
第二章 実例紹介- Elite- SimCity- The Sims
- Black & White- Creatures- DOOM- Quake Wars
- Eve Online- Halo Wars
- Forza Motor Sports

DOOM (1993)
始めての3D FPS, 3D Game AI, BSP (Binary Space Partitioning)法

ＡＩの認識、ＡＩの位置把握などを高速に処理する仕組み

DOOMにおけるBSP法

BSP（Binary Space Partitioning）法とは、壁などの境界を延長して、空間を２分して行く方法。3DFPSの原点の一つ（技術的には本当に原点）DOOM(id Software)で位置解析や、ＡＩのＩ空間認識、パス探索システムのデータ、などに採用されたことから、Quake シリーズを通して引き継がれている。

References(1) Motion Planning
http://intechweb.org/book.php?id=74&content=title&sid=1
22 Automated Static and Dynamic Obstacle Avoidance in Arbitrary 3D Polygonal Worlds ,J.M.P. van Waveren and L.J.M. Rothkrantz(2) The Quake III Arena Bot
J.M.P. van Waveren
Master of Science thesis, Delft University of Technology, June 2001
http://www.kbs.twi.tudelft.nl/Publications/MSc/2001-VanWaveren-MSc.html(3) BSP法の源流を追う～ジョン・カーマックによるDOOMの実装からQUAKE WARSまで
http://blogai.igda.jp/article/29853941.html

コンテンツ第一章 ガイダンス
第二章 実例紹介- Elite- SimCity- The Sims
- Black & White- Creatures- DOOM- Quake Wars
- Eve Online- Halo Wars
- Forza Motor Sports

Quake Wars (2007)
DOOMのBSP法の流れを継ぐナビメッシュ自動生成
Configuration Space (C-Space)(単なるメッシュではなくＡＩの運動可能な空間のこと)を考慮に入れたNavMesh生成

ナビメッシュの原理とスムージング

ナビメッシュ自動生成(BSP法)

動的パス検索

落下して来たオブジェクトに対して、リアルタイムにパス生成（オブジェクトの淵をトレースするアルゴリズム）

References
Motion Planning
http://intechweb.org/book.php?id=74&content=title&sid=1
22 Automated Static and Dynamic Obstacle Avoidance in Arbitrary 3D Polygonal
Worlds J.M.P. van Waveren and L.J.M. Rothkrantz

コンテンツ第一章 ガイダンス
第二章 実例紹介- Elite- SimCity- The Sims
- Black & White- Creatures- DOOM- Quake Wars
- Eve Online- Halo Wars
- Forza Motor Sports

Eve Online (CCP Games) (2003)
http://www.eve-online.com/

舞台となる星系全体を自動生成① アイスランド 国産のスペースオンラインＲＰＧ② 世界中（アトランタ、上海、ロンドン、レイキャビク）にオフィスを持つ。
③ 全世界２３万人ユーザー（月額１５ドル）

CCP Games、「、「EVE
ONLINE」」開発者インタビュー、「
開発者インタビュー
独特の独特の世界観と世界観とゲーム性
ゲーム性で成長を成長を続ける同作
ける同作の同作の強みと日本展開
みと日本展開への日本展開への展望
への展望
http://watch.impress.co.jp/game%2Fdocs/20071017/eveon.htm

Eve Online (CCP Games)

CCP Games、「、「EVE
ONLINE」」開発者インタビュー、「
開発者インタビュー
独特の独特の世界観と世界観とゲーム性
ゲーム性で成長を成長を続ける同作
ける同作の同作の強みと日本展開への日本展開への展望
への展望
http://watch.impress.co.jp/game%2Fdocs/20071017/eveon.htm

Eve Online (CCP Games)

CCP Games、「、「EVE
ONLINE」」開発者インタビュー、「
開発者インタビュー
独特の独特の世界観と世界観とゲーム性
ゲーム性で成長を成長を続ける同作
ける同作の同作の強みと日本展開への日本展開への展望
への展望
http://watch.impress.co.jp/game%2Fdocs/20071017/eveon.htm

これより数ページはAustin GDC からの資料です。
The Server Technology of EVE Online: How to Cope With
300,000 Players on One Server
https://www.cmpevents.com/GDAU08/a.asp?option=C&V=11&SessID=7922
資料 （P.23～）https://www.cmpevents.com/sessions/GD/S7922i1.ppt

EVEの世界設定
EVE の世界は5000を超える
太陽系からなる。
各太陽系は１２の惑星と、それを取り巻く月、アステロイドベルトからなる。
ルートによって結ばれた太陽系
は星団を形成し、リージョンと呼ばれるコングロマリットを形成する。

太陽系自動生成
EVE の太陽系システムはディスク加速モデルによって生成されるdisc accretion model（２４時間ぐらいで生成できる）

面白い経路システムを作りたい
ゴール:
• 安定的
• 戦略的
• 階層的

⇒拡散凝縮モデル Diffusion Limited Aggregation (DLA)

経路システム自動生成
拡散凝縮モデルDiffusion Limited
Aggregation (DLA)（マルチシード３次元版）

コンテンツ
第一章 ガイダンス
第二章 実例紹介- Elite- SimCity- The Sims
- Black & White- Creatures- DOOM- Quake Wars
- Eve Online- Halo Wars
- Forza Motor Sports

Halo Wars (2009)

McAnlis, Colt, "HALO WARS: The Terrain of Next-Gen", GDC 2009http://www.gdcvault.com

Age of Empire の流れをつぐ地形自動生成

Age of Empire III の頃の自動生成された崖

McAnlis, Colt, "HALO WARS: The Terrain of Next-Gen", GDC 2009http://www.gdcvault.com

Halo Wars における新しい自動生成の特徴• 目標 – 孤立したような崖をなくす• #1 ８倍の解像度にアップ– 崖の分解能に対応• #2 ベクトルフィールド(XYZ)を用いたディスパレスメント

McAnlis, Colt, "HALO WARS: The Terrain of Next-Gen", GDC 2009http://www.gdcvault.com

McAnlis, Colt, "HALO WARS: The Terrain of Next-Gen", GDC 2009http://www.gdcvault.com

McAnlis, Colt, "HALO WARS: The Terrain of Next-Gen", GDC 2009http://www.gdcvault.com

McAnlis, Colt, "HALO WARS: The Terrain of Next-Gen", GDC 2009http://www.gdcvault.com

McAnlis, Colt, "HALO WARS: The Terrain of Next-Gen", GDC 2009http://www.gdcvault.com

McAnlis, Colt, "HALO WARS: The Terrain of Next-Gen", GDC 2009http://www.gdcvault.com

McAnlis, Colt, "HALO WARS: The Terrain of Next-Gen", GDC 2009http://www.gdcvault.com

McAnlis, Colt, "HALO WARS: The Terrain of Next-Gen", GDC 2009http://www.gdcvault.com

References• McAnlis, Colt, "HALO WARS: The Terrain of Next-Gen",GDC 2009 http://www.gdcvault.com•

http://www.bonfire-studios.com/files/GDC_09_HW_Terrain_final.zip

コンテンツ第一章 ガイダンス
第二章 実例紹介- Elite- SimCity- The Sims
- Black & White- Creatures- DOOM- Quake Wars
- Eve Online- Halo Wars
- Forza Motor Sports

Forza Motor Sports
学習するレーシングＡＩ
Forza, Halo, Xbox Live: The Magic of Research in Microsoft Products
http://research.microsoft.com/en-us/um/cambridge/events/2009summerschool/ralf_herbrich.pptx•“Hard” AI drivers follow smooth, consistent, closely-clustered lines•“Easy” AI opponents drive less smooth lines with significant dispersion and variation

学習フロー“Built-In” AI Behaviour
Development Tool

Drivatar Racing Line
Behaviour Model

Vehicle Interaction and Racing
Strategy
Recorded Player
Driving

Controller

Drivatar AI Driving

Forza, Halo, Xbox Live: The Magic of Research in Microsoft Products
http://research.microsoft.com/en-us/um/cambridge/events/2009summerschool/ralf_herbrich.pptx

理想的なライン取りの情報は与えておく（インプット情報）
Forza, Halo, Xbox Live: The Magic of Research in Microsoft Products
http://research.microsoft.com/en-us/um/cambridge/events/2009summerschool/ralf_herbrich.pptx

• ２つのフェーズ
1. 可能なライン取りのデータを複数準備しておく
2. バラエティをもたせるためそれらをスイッチできるよ
うにしておく• データは省メモリのため圧縮しておく• スイッチはよりスムーズなラインを可能にするSegments

a1

a2

a3

Forza, Halo, Xbox Live: The Magic of Research in Microsoft Products
http://research.microsoft.com/en-us/um/cambridge/events/2009summerschool/ralf_herbrich.pptxa4Forza, Halo, Xbox Live: The Magic of Research in Microsoft Products
http://research.microsoft.com/en-us/um/cambridge/events/2009summerschool/ralf_herbrich.pptx

チート的に位置を指定せず、リアルな車の物理駆動をシミュレーションする

Car Position andSpeed at time t

Static Car
Properties

Car Controls

Physics (“causal”)

Physics
Simulation
SystemCar Position andSpeed at time
t+1

Control (“inverse”)
Desired Pos. andSpeed at time
t+1

Controller

Forza, Halo, Xbox Live: The Magic of Research in Microsoft Products
http://research.microsoft.com/en-us/um/cambridge/events/2009summerschool/ralf_herbrich.pptx

References
Drivatar• Forza, Halo, Xbox Live: The Magic of Research in Microsoft Products
http://research.microsoft.com/en-us/um/cambridge/events/2009summerschool/ralf_herbrich.pptx•

Drivatar Theory
http://research.microsoft.com/en-us/projects/drivatar/forza.aspx•

西川善司の3Dゲームファンのための「Forza Motorsport2」講座～Xbox 360版「グランツーリスモ」は本家を超えたのか? (GameWatch)
http://game.watch.impress.co.jp/docs/20070326/fm2.htm•

ゲーム紹介記事
http://ad.impress.co.jp/special/forza0505/

References• Ralf Herbrich “ Forza, Halo, Xbox Live: The Magic ofResearch in Microsoft Products” （映像）
http://www.microsoft.com/uk/academia/studenttechnology
day/default.mspx(４つの講演があります。右のタグから選んでください)
http://vimeo.com/2826749

References
Microsoft Research Drivatar
http://research.microsoft.com/en-us/projects/drivatar/theory.aspx
Vector anomaly 社
http://www.vagamelabs.com/news/2.htm
Ralf Herbrich
http://research.microsoft.com/en-us/people/rherb/References（参考文献のみ）• Threaded AI For the Win!
Procedural and Multi-core Techniques to Take Visuals to
the Next Level• http://software.intel.com/en-us/articles/intel-at-gdc/

課題(1) デジタルゲームの中で、「プレイヤーを驚かす」ような行動を取るＡＩを考えよ。
- ゲームの設定- ＡＩが驚かすシチュエーション(2) (1) を、プレイヤーが何度プレイしても、楽しめるような仕組みにせよ。

ご清聴ありがとうございました。

Photo from http://www.cyberleaf.com/

これ以外に、意見や質問があれば、メイルかアンケートへ

y.m.4160@gmail.com(IGDA Japan登録アドレス yoichi-m@pk9.so-net.ne.jp )http://www.igda.jp