Lernen Spielen

logo

Frederic Ehmann: Künstliche Intelligenz in Computerspielen - Lernen von Handlungsstrategien eines autonomen Agenten am Beispiel eines Jump 'n' Run Computerspiels (Masterarbeit AI)

Abschlusspräsentation

Masterarbeit

Diese Masterarbeit handelt von dem Lernen von Handlungsstrategien eines autonomen Agenten, der ein Jump 'n' Run Computerspiel spielt. Die Stages werden zufällig generiert, um anschließend von dem Agenten gelernt zu werden. Hierbei soll von Stage zu Stage gelernt werden, um einen stetig ansteigenden Score zu erreichen. Der Score ist die Bewertung der bisherigen Errungenschaften und der Effektivität. Zum einen sollten möglichst in derselben Stage sichtbare Verbesserungen im Score durch das Lernen entstehen, zum anderen sollten von Stage zu Stage Verbesserungen im Score sichtbar werden. Ein Ausgangszustand kann durch eine Aktion (z.B. Bewegung nach rechts) in einen Folgezustand geführt werden. Hierbei entsteht ein Reward. Ein Reward bezeichnet die Bewertung für das Ausführen einer Aktion in einer bestimmten Situation. Diese Situation wird als Zustand bezeichnet. Zustände werden in dieser Arbeit nur durch ihre Eigenschaften de?niert und nicht etwa nummeriert. Der Reward wird nicht nur kurzfristig, sondern auch langfristig betrachtet (durch Q-Learning). Zunächst werden Informationen über die langfristigen Rewards von Anfangszuständen und Aktionen erhalten. Diese Informationen werden genutzt, um klassische Vorhersagealgorithmen (Linear Regression und K Nearest Neighbors) zu verwenden. Somit können ebenfalls unbekannte Anfangszustände und Aktionen einem vorhergesagten langfristigen Reward (Q^-Wert) zugeschrieben werden. So wird die Aktion mit dem höchsten vorhergesagten langfristigen Reward als vermeintlich beste Aktion bestimmt.

Das Spiel in der Masterarbeitsversion:

Hier sollte das Spiel erscheinen. Leider gab es einen Fehler. Haben Sie schon Java installiert?
Sehen Sie sich das Beschreibungsvideo an um zu erfahren, wie man das Spiel zum laufen bekommt.
Dies könnte sehr wahrscheinlich helfen: