Im Rahmen dieser Arbeit wird ein Softwareagent entwickelt, welcher sich Spielverhalten unter Verwendung von Reinforcement Learning aneignet. Die Wahrnehmung der Umwelt erfolgt mithilfe eines sogenannten "Grids", welches den Zustand der Spielwelt kodiert. Weiterhin kommt der k-Means-Algorithmus zum Einsatz, um die Zustandsmenge auf ein geeignetes Maß zu reduzieren.
Videospiele fungieren als beliebte Plattform für die Entwicklung und Erforschung künstlicher Intelligenz (KI). Sie stellen ein geeignetes Thema für akademische Forschung dar. Videospiele sind anspruchsvoll und gleichzeitig recht einfach zu formalisieren. Sie bieten komplexe und realitätsnahe Umgebungen. Spielzustände und Verhaltensweisen der nicht-deterministischen Umwelt sind nicht vorhersagbar - optimale Verhaltensweisen sind nicht bekannt. Der Entwickler kann deshalb dem Softwareagenten nur in begrenztem Maße Wissen zur Verfügung stellen. Der Agent muss Verhaltensweisen selbstständig erlernen.
Videospiele machen es möglich, auf einfache Weise Methoden der künstlichen Intelligenz zu entwickeln und ihre Verhaltensweisen zu analysieren. Intelligente Agenten können das Verhalten ihrer Umwelt erlernen und so auf verschiedene Situationen angemessen reagieren. Sie sind weiterhin in der Lage, sich auf neue Situationen einzustellen. Diese Eigenschaft ist von großer Bedeutung in der Entwicklung von Robotern in menschlicher Umgebung. Videospiele bieten also nicht nur eine leicht formalisierbare und messbare Umgebung für eine künstliche Intelligenz - sie gewährleisten einen Entwicklungsprozess ohne Gefährdung von Lebewesen oder Eigentum.
Mit dieser Arbeit zeige ich, dass Reinforcement Learning Lernprobleme in Videospielen mit vereinfachten Voraussetzungen effizient bewältigen kann. Der entwickelte Softwareagent ist in der Lage, einen durch Skripte gesteuerten Gegner zu besiegen.
Inhaltsverzeichnis
- 1 Einleitung
- 1.1 KI Forschung anhand von Videospielen
- 1.2 Thema der Arbeit
- 1.3 Warum Reinforcement Learning?
- 1.4 Ergebnisse der Arbeit
- 1.5 Aufbau der Arbeit
- 2 Verwandte Arbeiten
- 2.1 Evolutionäres Lernen im Spiel Quake3
- 2.2 Regelbasiertes System im Spiel Quake2
- 2.3 Navigational Behaviors im Spiel Half-Life
- 2.4 Support Vector Machines in Warcraft3
- 3 Reinforcement Learning
- 3.1 Einführung
- 3.2 Geschichte des Reinforcement Learnings
- 3.3 Grundlagen
- 3.3.1 Softwarekomponenten
- 3.3.2 Evaluative Feedback
- 3.3.3 Exploration vs. Exploitation
- 3.3.4 Nicht-stationäre Probleme
- 3.3.5 Periodische und kontinuierliche Aufgaben
- 3.3.6 Discounting
- 3.3.7 Markoveigenschaft
- 3.3.8 Backup-Diagramme
- 3.3.9 Bellmangleichung
- 3.4 Elementare Funktionen
- 3.4.1 Dynamic Programming
- 3.4.2 Monte-Carlo
- 3.4.3 Temporal Difference Learning
- 4 Entwicklung des Softwareagenten
- 4.1 Lernumgebung
- 4.2 Clientbot-API
- 4.3 Lernziele
- 4.4 Aufbau des Quakebots
- 4.5 Elemente des Reinforcement Learnings
- 4.5.1 Q-learning
- 4.5.2 Zustände und Aktionen
- 4.5.3 Belohnungsfunktion
- 4.6 Statistik
- 4.7 Softwaredesign
- 4.7.1 Entwurfsmuster
- 5 Experimente und Auswertungen
- 5.1 Einleitung
- 5.1.1 Design of Experiments
- 5.1.2 Vermeidung von Störfaktoren
- 5.2 Auswahl der Experimente
- 5.3 Durchführung der Experimente
- 5.4 Analyse der Experimente
- 5.4.1 Abhängige Variable
- 5.4.2 Darstellung der Ergebnisse
- 5.4.3 Merkmale der Ergebnisse
- 5.4.4 Experiment mit Standardeinstellung
- 5.4.5 Variieren der Schrittgröße
- 5.4.6 Variieren des Diskontierungfaktors
- 5.4.7 Variieren des Straffaktors
- 5.4.8 Variieren des No-Hit Penaltys
- 5.5 Wissen des Agenten
- 5.5.1 Der beste Zustand
- 5.5.2 Die meist besuchten Zustände
- 5.5.3 Zustandsübergänge
- 5.6 Co-Reinforcement Learning
- 5.1 Einleitung
- 6 Fazit
Zielsetzung und Themenschwerpunkte
Die vorliegende Arbeit befasst sich mit der Anwendung von Reinforcement Learning auf die Entwicklung eines Softwareagenten für das Ego-Shooter-Videospiel Quake. Der Fokus liegt darauf, mithilfe von Machine-Learning-Techniken einen Agenten zu entwickeln, der in der Lage ist, in der komplexen Spielumgebung autonom zu agieren und erfolgreich gegen menschliche Spieler anzutreten. Die Arbeit untersucht die Herausforderungen und Möglichkeiten, die sich aus der Kombination von Reinforcement Learning und realistischen Spielumgebungen ergeben.
- Entwicklung eines Reinforcement Learning-basierten Quake-Bots
- Integration von Machine-Learning-Techniken in komplexen Spielumgebungen
- Erforschung der Grenzen und Potenziale von Reinforcement Learning in der Spielentwicklung
- Analyse des Lernverhaltens des Agenten in verschiedenen Szenarien
- Bewertung des Einflusses von verschiedenen Parametern auf die Performance des Bots
Zusammenfassung der Kapitel
- Kapitel 1 führt in das Thema der Arbeit ein und erläutert die Relevanz von KI-Forschung im Kontext von Videospielen. Es werden die Zielsetzung, die Methodik und der Aufbau der Arbeit vorgestellt.
- Kapitel 2 präsentiert relevante Forschungsarbeiten, die sich mit der Entwicklung von Softwareagenten für Videospiele beschäftigen. Es werden verschiedene Ansätze und Technologien beleuchtet, die im Bereich des Machine Learnings eingesetzt werden.
- Kapitel 3 vermittelt ein umfassendes Verständnis von Reinforcement Learning. Es werden die Grundlagen, die Geschichte, verschiedene Algorithmen und wichtige Konzepte behandelt.
- Kapitel 4 beschreibt die Entwicklung des Softwareagenten für Quake. Es werden die Lernumgebung, die Clientbot-API, die Lernziele und der Aufbau des Quakebots detailliert dargestellt.
- Kapitel 5 befasst sich mit den durchgeführten Experimenten und deren Auswertung. Es werden verschiedene Szenarien, Parameteränderungen und deren Auswirkungen auf die Performance des Agenten analysiert.
Schlüsselwörter
Reinforcement Learning, Softwareagenten, Videospiele, Quake, Machine Learning, KI-Forschung, Spielentwicklung, Spielumgebung, Lernziele, Agentenentwicklung, Experimente, Auswertung, Performance, Parameter, Lernverhalten, Zustände, Aktionen, Belohnungsfunktion.
- Arbeit zitieren
- Felix Schulte (Autor:in), 2007, Das Erlernen von Spielverhalten anhand des "Reinforcement Learning" bei Videospielen, München, GRIN Verlag, https://www.grin.com/document/388646