1 / 126

デジタルゲームの人工知能における 内部観測の生成と外部観測の派生について

第 7 回内部観測研究会. デジタルゲームの人工知能における 内部観測の生成と外部観測の派生について. 三宅 陽一郎 y.m.4160@gmail.com http://www.facebook.com/youichiro.miyake twitter: @ miyayou. 2013.3.3. 感謝と自己紹介. 高橋先生、脇坂先生、ありがとうございます。 1975年生まれ 自己紹介 2004-2011 AI Programmer (FROM SOFTWARE)

dayo
Download Presentation

デジタルゲームの人工知能における 内部観測の生成と外部観測の派生について

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第7回内部観測研究会 デジタルゲームの人工知能における内部観測の生成と外部観測の派生について 三宅 陽一郎 y.m.4160@gmail.com http://www.facebook.com/youichiro.miyake twitter: @miyayou 2013.3.3

  2. 感謝と自己紹介 • 高橋先生、脇坂先生、ありがとうございます。 • 1975年生まれ • 自己紹介 2004-2011 AI Programmer (FROM SOFTWARE) 2011-Present Lead AI Researcher (SQUARE ENIX) 2007-Present 国際ゲーム開発者協会 日本支部 SIG-AI チェア( IGDA JAPAN SIG-AI) 2008-Present 日本デジタルゲーム学会(DiGRA JAPAN)研究委員 2011-Present CEDEC (日本ゲームカンファレンス)委員 • 所属学会  人工知能学会、AAAI, IEEE CIS, ACM, 日本デジタルゲーム学会(DiGRA JAPAN) 情報処理学会 EC研究会 委員→アドバイザー(何もしなかった)    ACM マルティメディア国際学会 委員(何もしなかった) 情報処理学会 AIコンテスト SamurAI Coding 委員 (これから頑張ります) IEEE WCCI 2014 (Computational Intelligence 国際会議) 委員 (これから頑張ります)     経済産業省 DCEXPO 委員(ちょっと頑張った)

  3. 学歴? 京都大学(数学) 大阪大学(原子核実験物理) 東京大学 (エネルギー工学/人工知能) 高エネルギー加速器研究所(半年ぐらい。修士論文) http://www.facebook.com/youichiro.miyake

  4. Works(2006-2012) Chrome Hounds (2006) Demon’s Souls (2009) PokaPokaAiru Village(2011) Armored Core V (2012) AI for Game Titles Books

  5. At Beginning … はじめに

  6. (注) • 通常、ゲームAIと言った場合、チェスや将棋のようなボードゲーム上の人工知能のことを指しますが、 • 本講演では、ゲームAIと言った場合には、アクションゲームや、RPG、ストラテジーゲームと言った動的なゲームにおける人工知能を指します。

  7. Demo • PACMAN

  8. 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

  9. ゲームの歴史=ゲームの進化 ゲームの歴史はゲームの進化である。 ゲームの進化はゲームAIの進化を促す。 では、ゲームAIとは何でしょう? ゲームAIの進化とは何でしょう?                        (本日のテーマ)

  10. ゲームを創作する(ゲームはゲームを製作する者によって進化する)    ゲームを創作する(ゲームはゲームを製作する者によって進化する)    

  11. ゲーム世界とAI Game Mechanism Game World (= Environment = Game Stage = Level Design) AI Character (=NPC)

  12. ゲーム世界とAI Game Mechanism メタAI Game World (= Environment = Game Stage = Level Design) プロシージャル技術(自動生成、自動制御) (Auto-generation, Auto-Control) AI Character (=NPC) キャラクター AI (Brain)

  13. ゲーム世界とAI Game Mechanism メタAI Game World (= Environment = Game Stage = Level Design) ゲームAIの扱う領域 プロシージャル技術(自動生成、自動制御) (Auto-generation, Auto-Control) AI Character (=NPC) キャラクター AI (Brain)

  14. 本講演のコンテンツ 第一章  ゲームAIの歴史 第二章  メタAI 第三章  エージェントモデル 第四章  プロシージャル技術 第五章  まとめ  

  15. The History of Game AI 第一章 ゲームAIの歴史

  16. クラシックなキャラクターAIの作り方 このゲームのAIをどう作りますか? http://nippondesign.co.jp/blog/files/2010/01/championship20lode20runner.jpg

  17. クラシックなキャラクターAIの作り方 このゲームのAIをどう作りますか? たぶんこう作りますね。  AI_Func{ if (自分からプレイヤーまでブロックがなければ) 前進。 else if(自分(AI)からプレイヤーへの方向で空いているブロックある)そこへ前進。 else 一番近い仲間の後を追う。 } http://nippondesign.co.jp/blog/files/2010/01/championship20lode20runner.jpg

  18. クラシックなキャラクターAIの作り方 このゲームのAIをどう作りますか? たぶんこう作りますね。  AI_Func{ if (自分からプレイヤーまでブロックがなければ) 前進。 else if(自分(AI)からプレイヤーへの方向で空いているブロックある)そこへ前進。 else 一番近い仲間の後を追う。 } これって何なのでしょうか? http://nippondesign.co.jp/blog/files/2010/01/championship20lode20runner.jpg

  19. クラシックなキャラクターAIの作り方 このゲームのAIをどう作りますか? たぶんこう作りますね。  AI_Func{ if (自分からプレイヤーまでブロックがなければ) 前進。 else if(自分(AI)からプレイヤーへの方向で空いているブロックある)そこへ前進。 else 一番近い仲間の後を追う。 } これって何なのでしょうか? http://nippondesign.co.jp/blog/files/2010/01/championship20lode20runner.jpg

  20. クラシックなキャラクターAIの作り方 このゲームのAIをどう作りますか? たぶんこう作りますね。  AI_Func{ if (自分からプレイヤーまでブロックがなければ) 前進。 else if(自分(AI)からプレイヤーへの方向で空いているブロックある)そこへ前進。 else 一番近い仲間の後を追う。 } これって何なのでしょうか? =これは、開発者が俯瞰視点から見たゲーム状態に対して、   キャラクターをコントロールしているのです。 http://nippondesign.co.jp/blog/files/2010/01/championship20lode20runner.jpg

  21. ゲーム 開発者 コントロール キャラクター

  22. あやつり人形? http://blogs.yahoo.co.jp/zukou23/GALLERY/show_image.html?id=31188784&no=0

  23. ゲーム 開発者 作成 プログラム コントロール キャラクター

  24. あやつり人形をあやつる人形を作る http://blogs.yahoo.co.jp/zukou23/GALLERY/show_image.html?id=31188784&no=0

  25. クラシックなキャラクターAIの作り方 このゲームのAIをどう作りますか? たぶんこう作りますね。  AI_Func{ if (自分からプレイヤーまでブロックがなければ) 前進。 else if(自分(AI)からプレイヤーへの方向で空いているブロックある)そこへ前進。 else 一番近い仲間の後を追う。 }

  26. クラシックなキャラクターAIの作り方 このゲームのAIをどう作りますか? たぶんこう作りますね。  AI_Func{ if (自分からプレイヤーまでブロックがなければ) 前進。 else if(自分(AI)からプレイヤーへの方向で空いているブロックある)そこへ前進。 else 一番近い仲間の後を追う。 } 古典的ゲームAIプログラミング http://nippondesign.co.jp/blog/files/2010/01/championship20lode20runner.jpg

  27. 古典的ゲームAIプログラミングの特徴 • 1970年代~1990年代前半が最盛期 • キャラクターはゲームギミックの一つ。 • ゲーム全体の俯瞰的情報と、個々のキャラクターから見た情報を混在させて、それっぽい敵の動きを構築する。 • 通称、お化け屋敷AI(三宅が命名)。 =極めて限定されたシチュエーションでしか 動作できない。 =世界も、自分自身をも認識していない。

  28. ゲームの進化 – 3Dの世界へ – http://assassinscreed.ubi.com http://www.spore.com/ http://www.killzone.com

  29. ゲームの進化 – 3Dの世界へ – • ステージが本格的に3次元になることで、プレイヤーも人工知能も3次元世界の中で生きなければいけなくなった。 • しかし、例えば単純な3次元直方体の中にAIを閉じ込めて、そこでだけ活躍する、という形でお化け屋敷形式のAIは存続した(現在も多い)。 • 問題は、どうやって3次元で賢いAIを作れるか、ということ。

  30. ゲームの進化 – 3Dの世界へ – • 3次元の地形をきちんと認識して行動できる。 • 環境の中のオブジェクトの意味を理解して、物を使うことができる。 • 多様な行動ができることを認識して、最も状況に応じた行動を取ることができる。 古典的ゲームAIで組もうとすると、情報が爆発する。 = AIから見た世界(局所的世界)と、俯瞰的な世界(大局的世界)の  情報スケールが乖離した。 (古典的ゲームAIの限界) → 現代ゲームAIの転換。

  31. Demo • CounterStrike

  32. 古典から現代へ メタAI(Meta-AI) 古典的ゲームAI エージェントAI(Meta-AI 1994

  33. 古典から現代へ メタAI(Meta-AI) 古典的ゲームAI エージェントAI 現代のゲームAIのフレーム 1994 メタAIとエージェントAIへの分離と協調

  34. User World Game Mechanism メタAI Game World (= Environment = Game Stage = Level Design) AI Character (=NPC) キャラクター AI (Brain) メタAIは外側からダイナミックにゲームを構築する。

  35. User World Game Mechanism メタAI Game World (= Environment = Game Stage = Level Design) AI Character (=NPC) メタAIは外側からダイナミックにゲームを構築する。 =メタAIはゲーム内で物理的実体を持たないが、   外側からゲーム内のあらゆる要素に干渉し、 ゲームを操作する。 =外側からの観測者。 キャラクター AI (Brain)

  36. User World Game Mechanism メタAI Game World (= Environment = Game Stage = Level Design) メタAIは外側からダイナミックにゲームを構築する。 =メタAIはゲーム内で物理的実体を持たないが、   外側からゲーム内のあらゆる要素に干渉し、 ゲームを操作する。 =外側からの観測者。 =ゲーム全体の動的変化、ストーリー生成、   難易度調整、コンテンツ生成。 AI Character (=NPC) キャラクター AI (Brain)

  37. User World Game Mechanism メタAI Game World (= Environment = Game Stage = Level Design) AI Character (=NPC) キャラクター AI (Brain)

  38. User World Game Mechanism メタAI Game World (= Environment = Game Stage = Level Design) AI Character (=NPC) キャラクター AI (Brain) キャラクターAIは内側からダイナミックにゲームを構築する

  39. User Space Game Mechanism メタAI Game World (= Environment = Game Stage = Level Design) キャラクターAIは内側からダイナミックにゲームを構築する =センサー(感覚)を通して世界の情報を得て、   エフェクター(身体)を通してゲーム世界内で運動する。 =内部観測者。 AI Character (=NPC) キャラクター AI (Brain)

  40. User Space Game Mechanism メタAI Game World (= Environment = Game Stage = Level Design) キャラクターAIは内側からダイナミックにゲームを構築する =センサー(感覚)を通して世界の情報を得て、   エフェクター(身体)を通してゲーム世界内で運動する。 =内部観測者。 =キャラクターとしての動作、演技、など。 AI Character (=NPC) キャラクター AI (Brain)

  41. 本講演のコンテンツ 第一章  ゲームAIの歴史 第二章  メタAI 第三章  エージェントモデル 第四章  プロシージャル技術 第五章  まとめ  

  42. Meta-AI 第二章 メタAI

  43. ゲームAIの二つの種類 (22)メタAI キャラクターAI キャラクターの頭脳(意志決定機構) ゲームAI メタAI ゲーム全体を俯瞰する頭脳

  44. メタAIの歴史 2000 1980 1990 古典的メタAI キャラクターAI技術の発展 現代のメタAI

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

  46. セルフゲームコントールシステム • 岩谷氏: ファンと一般のユーザーを満足させる方法のひとつは人工知能AIのような考え方です。プレーヤースキルをプログラム側から判断して、難易度を調整していくというものです。これを私はセルフゲームコントロールシステムと呼んで10年以上前から開発に使っています。 http://game.watch.impress.co.jp/docs/20050312/gdc_int.htm

  47. 古典から現代へ メタAI(Meta-AI) 古典的ゲームAI エージェントAI(Meta-AI 古典的メタAI 単純エージェント 1994

  48. 現代のメタAI より積極的にゲームに干渉する。 メタAI 敵配位 敵スパウニング ストーリー レベル 動的生成 ユーザー

  49. Michael Booth, "The AI Systems of Left 4 Dead," Artificial Intelligence and Interactive Digital Entertainment Conference at Stanford. http://www.valvesoftware.com/publications.html

  50. 適応型動的ペーシング [基本的発想] • ユーザーがリラックスいている時に、ユーザーの緊張度が一定の敷居を超えるまで敵をぶつけ続ける。 • ユーザーの緊張度が一定の緊張度を超えると敵を引き上げる。 • リラックスすると敵を出現し始める((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

More Related