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