Game Programming 
AI 
Christian Oeing
Themen 
•Warum brauchen wir KI in Spielen? 
•WelcheKI-Architekturenexistieren? 
•Details überdie Behavior Tree Architektur...
Roadmap 
•Teil1: Überblick 
•KI in Spielen 
•BestehendeMethodenzurKI Entwicklung 
•Einführungin Behavior Trees 
•Teil2: Be...
KI in Spielen 
4 / 22
Wozu KI? 
•Gegner 
•Verbündete 
•Herausforderung 
•Belebung der Spielewelt 
•Spielzeug 
5 / 22
Frühes Beispiel: PacMan 
“This is the heart of the game. I wanted each ghostly enemy to have a specific character and its ...
Frühes Beispiel: PacMan 
7 / 22 
Quelle: http://gameinternals.com/post/2072558330/understanding-pac-man-ghost-behavior
Aktueller: Left4 Dead 
8 / 22 
Quelle: http://www.valvesoftware.com/publications/2009/ai_systems_of_l4d_mike_booth.pdf
KI Architekturen 
9 / 22
Fest programmierte Regeln 
•Wenn-DannAbfragen 
•Hard-coded 
•Schnell 
•Zugriffauf den gesamtenProgrammzustand 
•Keinefeste...
Finite State Machine 
•Trennung der KI in Zustände 
•Beliebige Menge an Zuständen 
•Verbindungen definieren Übergänge 
11 ...
HierarchicalFSM 
12 / 22 
•Hierarchischer Aufbau 
•Übergänge nur auf selber Ebene zulässig 
•Drastische Verringerung der A...
Planner 
•Ziel-gesteuert 
•Aufbau der KI nicht vom Entwickler vorgegeben 
13 / 22
Utility-based 
•Wie der Planneraktionsbasiert 
•Keine Verkettung der Aktionen, da es keinen Zielzustand gibt 
14 / 22
NeuralNetworks 
•Selbstständig lernende KI durch Trainingsdaten 
•Keine Möglichkeit der Einflussnahme nach Training 
•Nach...
Wozu dann noch BehaviorTrees? 
16 / 22
Geschichte 
•Bekannt geworden 2005 durch Halo 2 
•Erfolgreich eingesetzt u.a. in 
•Halo 2 + 3 
•Spore 
•Swords& Soldiers 
...
Was ist neu? 
•Verwandt mit Finite State Machines 
•Trennen aber Entscheidungslogik von den Aktionen 
18 / 22
Zusammenfassung 
•Viele verschiedene Architekturen: 
•(Hierarchical) Finite State Machines 
•Planner 
•Utility-based 
•Neu...
Ausblick 
•Grundkonzepte 
•Struktur/Aufbau 
•Datenaustausch 
•Bausteine 
•Selektor 
•Sequenz 
•Dekorator 
•Beispiele 
•Too...
Fragen? 
Contact 
Mail 
dev@oeing.eu 
Christian.oeing@slashgames.org 
Homepage 
http://www.oeing.eu 
http://www.slashgames...
Referenzen 
•HeikoKlinge. WarumKI in Spielenstagniert. http://www.tecchannel.de/webtechnik/entwicklung/1744817/warum_kuens...
Nächste SlideShare
Wird geladen in …5
×

Game Programming 09 - AI (I)

1.120 Aufrufe

Veröffentlicht am

Chapter 9 of the lecture Game Programming taught at HAW Hamburg.

Introduction to AI in games and existing approaches to AI architecture.

Veröffentlicht in: Technologie
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
1.120
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
2
Aktionen
Geteilt
0
Downloads
21
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Game Programming 09 - AI (I)

  1. 1. Game Programming AI Christian Oeing
  2. 2. Themen •Warum brauchen wir KI in Spielen? •WelcheKI-Architekturenexistieren? •Details überdie Behavior Tree Architektur 2 / 22
  3. 3. Roadmap •Teil1: Überblick •KI in Spielen •BestehendeMethodenzurKI Entwicklung •Einführungin Behavior Trees •Teil2: Behavior Trees •Aufbauund Struktur •Vor-und Nachteile •WeiterführendeRessourcen 3 / 22
  4. 4. KI in Spielen 4 / 22
  5. 5. Wozu KI? •Gegner •Verbündete •Herausforderung •Belebung der Spielewelt •Spielzeug 5 / 22
  6. 6. Frühes Beispiel: PacMan “This is the heart of the game. I wanted each ghostly enemy to have a specific character and its own particular movements, so they weren’t all just chasing after Pac Man in single file, which would have been tiresome and flat.” Toru Iwatani, Pac-Man creator 6 / 22
  7. 7. Frühes Beispiel: PacMan 7 / 22 Quelle: http://gameinternals.com/post/2072558330/understanding-pac-man-ghost-behavior
  8. 8. Aktueller: Left4 Dead 8 / 22 Quelle: http://www.valvesoftware.com/publications/2009/ai_systems_of_l4d_mike_booth.pdf
  9. 9. KI Architekturen 9 / 22
  10. 10. Fest programmierte Regeln •Wenn-DannAbfragen •Hard-coded •Schnell •Zugriffauf den gesamtenProgrammzustand •KeinefesteStruktur 10 / 22
  11. 11. Finite State Machine •Trennung der KI in Zustände •Beliebige Menge an Zuständen •Verbindungen definieren Übergänge 11 / 22
  12. 12. HierarchicalFSM 12 / 22 •Hierarchischer Aufbau •Übergänge nur auf selber Ebene zulässig •Drastische Verringerung der Anzahl der Übergänge
  13. 13. Planner •Ziel-gesteuert •Aufbau der KI nicht vom Entwickler vorgegeben 13 / 22
  14. 14. Utility-based •Wie der Planneraktionsbasiert •Keine Verkettung der Aktionen, da es keinen Zielzustand gibt 14 / 22
  15. 15. NeuralNetworks •Selbstständig lernende KI durch Trainingsdaten •Keine Möglichkeit der Einflussnahme nach Training •Nachteil von aktionsbasiertenArchitekturen verstärkt •Kaum angewandt in Spielen •Ausnahmen: •Creatures •Supreme Commander 2 15 / 22
  16. 16. Wozu dann noch BehaviorTrees? 16 / 22
  17. 17. Geschichte •Bekannt geworden 2005 durch Halo 2 •Erfolgreich eingesetzt u.a. in •Halo 2 + 3 •Spore •Swords& Soldiers •GTA: Chinatown Wars •The Bourne Conspiracy •SWAT 4 •Bioshock •Dark Sector •… 17 / 22
  18. 18. Was ist neu? •Verwandt mit Finite State Machines •Trennen aber Entscheidungslogik von den Aktionen 18 / 22
  19. 19. Zusammenfassung •Viele verschiedene Architekturen: •(Hierarchical) Finite State Machines •Planner •Utility-based •NeuralNetwork •BehaviorTrees •Wahl hängt von Art des Spiels ab •Aber jede einzelne ist besser als keine Architektur! 19 / 22
  20. 20. Ausblick •Grundkonzepte •Struktur/Aufbau •Datenaustausch •Bausteine •Selektor •Sequenz •Dekorator •Beispiele •Tools 20 / 22
  21. 21. Fragen? Contact Mail dev@oeing.eu Christian.oeing@slashgames.org Homepage http://www.oeing.eu http://www.slashgames.org Twitter @coeing @slashgames 21 / 22
  22. 22. Referenzen •HeikoKlinge. WarumKI in Spielenstagniert. http://www.tecchannel.de/webtechnik/entwicklung/1744817/warum_kuenstliche_intelligenz_ki_in_spielen_stagniert/ •Chad Birch. PacMan AI. http://gameinternals.com/post/2072558330/understanding-pac-man- ghost-behavior •Don Hodges. PacMan AI Bug. http://donhodges.com/pacman_pinky_explanation.htm •Alex Champandard. Top AI Games. http://aigamedev.com/open/highlights/top-ai-games/ •Mike Robbins. NeuralNetwork in Supreme Commander 2. http://twvideo01.ubm- us.net/o1/vault/gdc2012/slides/Summit_AI/Robbins_Michael_Off%20the%20Beaten.pdf •Mike Booth. The AI systemsof Left 4 Dead. http://www.valvesoftware.com/publications/2009/ai_systems_of_l4d_mike_booth.pdf •Damian Isla. Handling Complexity in the Halo 2 AI. http://www.gamasutra.com/view/feature/130663/gdc_2005_proceeding_handling_.php •Alex Champandard. Behavior Trees: Three Ways of Cultivating AI. http://www.gdcvault.com/play/1012744/Behavior-Trees-Three-Ways-of 22 / 22

×