270 likes | 453 Views
Künstliche Intelligenz in Spielen: Einführung. Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie II (Teil I): Simulation und 3D Programmierung Prof. Dr. phil. Manfred Thaller WS 2011/2012. Struktur. 1. Einleitung 1.1 Definition
E N D
Künstliche Intelligenz in Spielen: Einführung Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie II (Teil I): Simulation und 3D Programmierung Prof. Dr. phil. Manfred Thaller WS 2011/2012
Struktur • 1. Einleitung • 1.1 Definition • 1.2 Akademische KI-Forschung • 2. Anforderungen an Spiele-KIs • 2.1 Millingtons Modell • 2.2 Bestandteile einer KI • 3. Umsetzung von Spiele-KIs • 3.1 Komplexität • 3.2 Verwendete Techniken • 3.3 Hardware • 4. KI-Engines • 4.1 Toolchains • 4.2 Ablauf
1. Einleitung 1.1 Definition 1.2 Akademische KI-Forschung
1.1 Definition • Teilgebiet der Informatik • Intelligentes Verhalten automatisieren • Oft verstanden als: Menschliche Intelligenz nachbilden bzw. vortäuschen
1.2 Akademische KI-Forschung Natural Computing • Techniken die von der Natur inspiriert sind • Kern: symbolische Technik • Nicht biologisch plausibel • Fähigkeiten begrenzt Symbolische Systeme • Datenstruktur • Algorithmus für Schlussfolgerungen • Nicht biologisch plausibel • Fähigkeiten begrenzt
2. Anforderungen an Spiele-KIs 2.1 Millingtons Modell 2.2 Bestandteile einer KI
2.1 Millingtons Modell Entscheiden • Was soll als nächstes gemacht werden? • Set von Zuständen • Auswahl des Zustands bestimmt Verhalten
2.1 Millingtons Modell Bewegung • Fast immer nötig • Teils simple Algorithmen • Teils sehr komplex
2.1 Millingtons Modell Strategie • Verhalten von Gruppen • Figuren treffen eigene Entscheidungen • Übergeordnetes Muster beeinflusst sie
2.1 Millingtons Modell Infrastruktur • Was wissen die Figuren? • Wie viel Speicher/ Prozessorzeit wir benötigt? Bottom-up-Design • Figuren werden definiert und dann eingebaut
2.2 Bestandteile einer KI • Algorithmen • Symbolische Technologie • Datenstruktur • Symbolische Technologie • Repräsentation • Daten für KI konvertieren
3. Umsetzung von Spiele-KIs 3.1 Komplexität 3.2 Verwendete Techniken 3.3 Hardware
3.1 Komplexität Pacman Black and White
3.2 Verwendete Techniken Ad hoc Lösungen • Figuren sollen richtig aussehen • Behaviorismus • Oft reichen Animationen für den Anschein von Intelligenz
3.2 Verwendete Techniken Faustregeln • Genauigkeit gegen Geschwindigkeit abwägen • Oft besser als komplexe Antwort zu ermitteln
3.2 Verwendete Techniken Algorithmen • Wenn es besonders verlässlich sein muss • Oft sind sie jedoch zu aufwendig für Spiele
3.3 Hardware Prozessor • SIMD (Single Instruction Multiple Data) • Hyper Threading • Multi-Core-Prozessoren • Indirekte Funktionsaufrufe
3.3 Hardware Speicher • Daten müssen aus dem Speicher geholt werden • Im Cache abgelegt • Cache Misses sollten vermieden werden
3.3 Hardware PC Konsolen
KI-Engines 4.1 Toolchains 4.2 Ablauf
4.1 Toolchains • KI verfügt über einen Pool von Algorithmen • Toolchain = Sammlung von Werkzeugen zur Datenerstellung • z.B. Editoren
4.2 Ablauf • Daten erzeugen • Level laden • KI-Verhalten aus Daten generieren • KI-Engine für Updates abrufen • Infos aus dem World Interface • Ausgabe als Spieldaten