Algorithmen für Computerspiele

Ähnliche Dokumente
AI in Computer Games. Übersicht. Motivation. Vorteile der Spielumgebung. Techniken. Anforderungen

Grundlagen der Künstlichen Intelligenz

Planungsansätze aus der Künstlichen Intelligenz

Künstliche Intelligenz

Intelligente Agenten

Seminar Künstliche Intelligenz Wintersemester 2013/14

in der Versorgungstechnik? Prof. Dr. Michael Krödel

Modellierung von Non Player Chareacters

Einführung in die AI

VIRTUAL REALITY UND DIE ENTWICKLUNG VON SPIELEN IM ALLGEMEINEN

Künstliche Neuronale Netze

Game Development Massively Multiplayer Games Computer Supported Cooperative Play

Einleitung und Intelligente Agenten MAS-Seminar - SS2008

Nicht ohne meinen Computer

Expertensysteme / XPS

7. Vorlesung Neuronale Netze

Konzepte der AI Neuronale Netze

Wissensentdeckung in Datenbanken

Was versteht man unter Intelligenz

Machine Learning & Künstliche Intelligenz

Classification and Regression Trees. Markus Müller

Wissensrepräsentation

Artificial Intelligence. Deep Learning Neuronale Netze

Künstliche Intelligenz Maschinelles Lernen

Geschichte und Ästhetik der audiovisuellen und digitalen Medien II

Serious Games Spielen, Lernen, Simulation

Künstliche Neuronale Netze

Seminar Kognitive Robotik. Interne Modelle I Vorwärtsmodelle Vortragender: Rüdiger Timpe

Die Geschichte des Spielens

Simulation als epistemologische Grundlage für intelligente Roboter

Datenorientierte SA. Aufbau und Grundlagen. Aufbau und Grundlagen. Aufbau und Grundlagen. Was sind neuronale Netze?

7. Dynamische Datenstrukturen Bäume. Informatik II für Verkehrsingenieure

BACKPROPAGATION & FEED-FORWARD DAS MULTILAYER PERZEPTRON

Computerspiele: Genres

Einführung in die Artificial Intelligence

Universität Osnabrück Fachbereich Mathematik / Informatik. 9. Übung. Prof. Dr. rer. nat. Oliver Vornberger Nico Marniok, B. Sc. Erik Wittkorn, B. Sc.

VERHANDLUNGSTRATEGIEN VON SOFTWARE AGENTEN. Henrik Brauer

TUD Computer Poker Challenge

Künstliche Intelligenz im Informatikunterricht -Unterrichtseinheit Chatbots- Klasse 9/10. Helmut Witten & Malte Hornung

Algorithmenalltag. Prof. Dr.-Ing. Johannes Konert Fachgebiet Web Engineering

Neuroinformatik. Übung 1

! 1. Rekursive Algorithmen.! 2. Rekursive (dynamische) Datenstrukturen. II.3.2 Rekursive Datenstrukturen - 1 -

Seminar Künstliche Intelligenz WS 2013/14 Grundlagen des Maschinellen Lernens

Ant Colony Optimization (ACO)

allgemeine Übersicht / Struktur

Einfacher und effektiver Einstieg in die Datenanalyse in der Smart Maintenance

Inhaltliche Planung für die Vorlesung

Dynamisches Routing in der Logistik

1. Rekursive Algorithmen 2. Rekursive (dynamische) Datenstrukturen

Teil II: Einstieg in Expertensysteme

Einführung Intelligente Agenten

Übersicht. Künstliche Intelligenz: 6. Spiele Frank Puppe 1

Neuronale Netze. Christian Böhm.

Modellgestützte Online-Programmierverfahren für Industrieroboter

Künstliche Intelligenz

Die Neurobiologischen Bedingungen Menschlichen Handelns. Peter Walla

Reinforcement Learning

J. Reinier van Kampenhout Robert Hilbrich Hans-Joachim Goltz. Workshop Echtzeit Fraunhofer FIRST

Multiagentensimulation im Verkehr: Eignet sich die Multiagentensimulation zur Abbildung der Verhaltensstruktur im Verkehr?

Inhalt. Wissensbasierte Diagnose Entscheidungsbäume Bayes-Netze Fallbasiertes Schließen Funktionsorientierte Diagnose Modellbasierte Systeme

Super-Mario Knowledge Engineering und Lernen in Spielen

Suche in Spielbäumen Projektvorschläge

Stochastische dynamische Optimierung

Verteilte Systeme. Verteilte Systeme. 5 Prozeß-Management SS 2016

Künstliche Intelligenz

1. Vorlesung Gliederung und Einführung

Binary Decision Diagrams

Künstliche Intelligenz. Andreas Breckheimer

Algorithmen und Datenstrukturen 1

Adaptive Systeme. Einführung. Grundlagen. Modellierung. Prof. Rüdiger Brause WS Organisation. Einführung in adaptive Systeme B-AS-1, M-AS-1

Dynamische Programmierung. Problemlösungsstrategie der Informatik

Vorlesung: Künstliche Intelligenz

Schulinterner Lehrplan zum Kernlehrplan für die gymnasiale Oberstufe. Informatik Q2. Stand: 02/2016 Status: Gültig

Diskrete Ereignissysteme. Spezielle Netzstrukturen- Übersicht. Beispiele zu speziellen Netzstrukturen. Petri-Netze und Zustandsautomaten

Humanoide Roboter Erlernen von Ballannahme, Positionierung zum Ball und gezieltes Schiessen. Sebastian Jakob

Transkript:

Algorithmen für Computerspiele Künstliche Intelligenz von Manuel Bischof 3. Mai 2010

Gliederung Einleitung Was umfasst die KI? Nutzung in verschiedenen Genres Wo sind Verbesserungen notwendig? Möglichkeiten, KI zu modellieren Entscheidungsbäume Regelbasierte Systeme Neuronale Netze Genetische Algorithmen First-Person Shooter: Quake Besondere Anforderungen Grundlegende KI (SOAR-Engine) Antizipation zur Verbesserung der KI 2

Gliederung Einleitung Was umfasst die KI? Nutzung in verschiedenen Genres Wo sind Verbesserungen notwendig? Möglichkeiten, KI zu modellieren Entscheidungsbäume Regelbasierte Systeme Neuronale Netze Genetische Algorithmen First-Person Shooter: Quake Besondere Anforderungen Grundlegende KI (SOAR-Engine) Antizipation zur Verbesserung der KI 3

Einleitung: Der Begriff KI Nicht genau spezifiziert Verhalten von Lebewesen in der digitalen Welt Nachahmung der Realität Turing-Test Besseres Spielgefühl Spielen mit anderen Menschen macht mehr Spaß Spieler soll an das Spiel gebunden werden 4

Einsatzgebiete der KI Umgebung Vollständig beobachtbar teilweise beobachtbar Deterministisch Stochastisch Episodisch Sequenziell Statisch Dynamisch Diskret Stetig Einzelagent Multiagenten-System 5

Verwendung der KI in unterschiedlichen Genres 6

Einleitung: verschiedene Genres RPGs Baldur's Gate MMORPGs World of Warcraft Strategiespiele Echtzeit Command & Conquer Rundenbasiert Civilization First-Person Shooter (FPS) Quake Bots als Gegner Jump 'n' Run Tomb Raider Meist statische Umgebung Selten Gegner ( FPS) 7

Verbesserungsmöglichkeiten 8

Verbesserungsmöglichkeiten Geschichtenerzählen Intelligente Kameraführung Automatische Geschichtsentwicklung aus Skripten Hauptsächlich in RPGs wichtig MMORPGs Alle Charaktere erleben die gleiche Geschichte Bisher hauptsächlich variabel auf RPG Servern Geschichte wird jedoch von Spielern getragen Keine Auswirkung auf NSCs 9

Verbesserungsmöglichkeiten Dynamisches Lernen Verwendung von neuronalen Netzen und genetischen Algorithmen Bisher meist offline trainiert Online: Black & White Sims Schwierigkeitsgrad während dem Spielen anpassen Nachteil: Ergebnisse schwer vorhersagbar (Gefahr von Bugs) 10

Verbesserungsmöglichkeiten Gefühle wecken Emotionen bestimmen, wie sehr man in ein Spiel eintaucht Techniken, vergleichbar mit Filmen: Unterschiedliche Kamerablickwinkel Zwischensequenzen Atmosphärische Musik Soundeffekte Musik, Sound und Stimmen funktionieren schon gut Animation der Charaktere oft noch mangelhaft Insbesondere Gestik und Mimik 11

Gliederung Einleitung Was umfasst die KI? Nutzung in verschiedenen Genres Wo sind Verbesserungen notwendig? Möglichkeiten, KI zu modellieren Entscheidungsbäume Regelbasierte Systeme Neuronale Netze Genetische Algorithmen First-Person Shooter: Quake Besondere Anforderungen Grundlegende KI (SOAR-Engine) Antizipation zur Verbesserung der KI 12

Modellierung von KI Entscheidungsbäume Eingabe: Objekt oder Situation, beschrieben von Attributen Test an jedem Knoten Je nach Attribut folgt man der entsprechenden Kante Zielprädikat an den Blattknoten => Ergebnis Wahl der Wurzel wichtig 13

Entscheidungsbäume - Beispiel 14

Modellierung von KI Regelbasierte Systeme Trennung von Kontrollfluss und Wissen Vordefinierte If-Then-(Else-)Regeln Test der Regeln aufgrund gegebener Fakten Oft Expertensysteme Versuchen Hilfestellung in natürlicher Sprache zu geben Beispiele: Medizinische Diagnose Technische Diagnose Planungssysteme (Logistik) E-Learning 15

Modellierung von KI (Künstliche) Neuronale Netze Nachbildung des menschlichen Gehirns 100Mrd Neuronen Graph mit Knoten = Neuronen Jeder Knoten hat Ein- und Ausgänge Knoten sind mit gewichteten Kanten verbunden Netz kann trainiert werden Überwacht Nicht überwacht Verstärkendes Lernen Testphase Ausgangsreize Neue Reize 16

Modellierung von KI Genetische Algorithmen Stochastische Erzeugung von Nachfolgezuständen Durch Kombination von Zuständen 17

Gliederung Einleitung Was umfasst die KI? Nutzung in verschiedenen Genres Wo sind Verbesserungen notwendig? Möglichkeiten, KI zu modellieren Entscheidungsbäume Regelbasierte Systeme Neuronale Netze Genetische Algorithmen First-Person Shooter: Quake Besondere Anforderungen Grundlegende KI (SOAR-Engine) Antizipation zur Verbesserung der KI 18

Anforderungen an Bots in FPS Umgebung erkunden Interne Karte erstellen mit Räumen, Powerups etc. Ausrüstung einsammeln Waffen Rüstung Schadenserhöhung Bei Bedarf auch Leben Gegner ausschalten Überleben 19

Grundlegende KI in Quake SOAR-Engine 20

KI in Quake SOAR-Engine Zur Entscheidungsfindung und deren Ausführung Kommuniziert über eine Netzwerkschnittstelle mit dem Bot Operatoren: Laufen Drehen Springen Schießen Interne Aktionen Letzte Position des Gegners merken Ausrüstung des Gegners merken Abstraktere / Zusammengesetzte Operatoren: Angreifen Item holen Durch eine Tür gehen Dem Gegner Powerups verweigern 21

KI in Quake Taktiken: Powerups einsammeln Bedarf analysieren Respawnzeiten merken Kürzeste Wege / Rundwege ermitteln Gegner angreifen Circle-strafing Distanzklasse je nach gegnerischer und eigener Waffe wählen Rückzug Bei wenig Gesundheit Verfolgung Auf Basis von Geräuschen, letzter Sichtung des Gegners Jagen Suche nach Kill den nächsten Spawnpunkt und Räume, die der Gegner häufiger aufsucht ab Hinterhalt stellen 22

KI in Quake Operatoren bzw. Taktiken, die nicht direkt eingesetzt werden können, werden zu Zielen Verfolgung von Zielen bis: Ziel erreicht, oder Auswertung der Sensorik ergibt, dass das Ziel nicht mehr relevant ist 23

KI in Quake Prozesszyklus: Wahrnehmung Auswertung der Sensorik / Operator-Vorschlag / Auswertung der Vorschläge Wahl von Operatoren Anwendung der Operatoren Output: Kommandos weitergeben 24

Antizipation 25

Antizipation Bot soll Spielerhandlung vorausahnen und ausnutzen Interne Darstellung aus Sicht des Gegners Problem: Wann soll diese berechnet werden? Integration des predict-enemy Operators in den Prozesszyklus Bei Wahl des Operators wird die Berechnung durchgeführt Hauptsächlich aufgerufen von hunt, ambush und deny-powerups 26

Antizipation Optimierungen: Overhead durch Berechnung der internen Repräsentation verringern Vorhersagen als Regel abspeichern Dadurch müssen bereits vorhandene Vorhersagen nicht nochmals berechnet werden (kann einige Sekunden dauern) Rekursive Antizipation Antizipation aus Sicht des Gegners Idee: Gegner überraschen, in dem man Unvorhergesehens tut 27

Ausblick 28

Ausblick Standardisierung KI-Middleware Spezielle KI-Hardware? Effektivere Methoden: Neuronale Netze Exportierbarkeit Moral? 29

Empfohlene Vorlesungen Grundlagen der Künstlichen Intelligenz Neuronale Netze Einführung in die verteilte KI Adaptive emotionale Agenten in interaktiven Softwaresystemen 30

Vielen Dank für die Aufmerksamkeit 31