Add Thesis

Analyse des Deep Reinforcement Learning Algorithmus PPO2 in der RoboCup Umgebung

Written by Martin Spitznagel

Paper category

Bachelor Thesis

Subject

Computer Science

Year

2020

Abstract

Bachelorarbeit: RoboCup-Domäne Im nächsten Abschnitt erfahren wir mehr über die RoboCup-Domäne und ihre physikalische Simulations- und Visualisierungsumgebung sowie das Robotermodell. Verwenden Sie realistische Simulationen und physikalische Regeln. RoboCup3D befasst sich mit dem Software-Teil der Ziele der RoboCup Federation. Bis 2050 soll es möglich sein, mit unabhängigen humanoiden Robotern Menschen im echten Fußball zu besiegen. In RoboCup3D treten in zwei Teams jeweils elf Roboter gegeneinander an. Das Team mit dem Komplettpaket mit den besten Features hat das Spiel gewonnen. Durch die Verbesserung der Handlungsabfolge, der Entscheidungslogik und der Kommunikationssysteme können Sie andere Teams übertreffen und dem Sieg näher kommen. Das Team Magma aus Offenburg erzielte bei den letzten Weltmeisterschaften und Meisterschaften gute Ergebnisse und ist aktuell Vizeweltmeister. 2.2 Simulator RoboCup3d basiert auf dem Simulationsserver Simspark1. Simspark ist eine Multi-Agenten-physikalische Simulation der dreidimensionalen Umgebung basierend auf dem Spark-Framework [2]. Die grundlegende Physiksimulation wird von Open Dynamic Engine2 (ODE) bereitgestellt. SimSpark ist seit dem Robot Cup 2004 der offizielle Simulationsserver der Robot Cup Simulation 3D League. Mit dem Monitoring-Programm RoboViz3 können Sie alle laufenden Instanzen auf dem Simulationsserver visualisieren. Abbildung 2.1 zeigt ein Beispiel für ein laufendes Spiel. Jeder Spieler auf dem Feld wird als separater Prozess implementiert und kommuniziert mit dem Server über eine TCP-Verbindung. Der Server vermittelt dem Spieler die Wahrnehmung davon. Der Roboter muss sich dann zwischen Aktionen entscheiden, um am Ende möglichst viele Tore zu erzielen. Die Tickrate des Servers beträgt 20 Millisekunden und jeder Agent erhält während dieser Zeit die aktuelle Wahrnehmung und weitere Informationen zum Spiel. Der Client muss die auszuführende Aktion an den Server senden und diese dann im nächsten Tick ausführen. Wenn der Roboter seine Entscheidung nicht rechtzeitig an den Server sendet, wird die zuvor gesendete Aktoraktion mit der eingestellten Winkelgeschwindigkeit fortgesetzt. Die gesamte Wahrnehmung ist nicht deterministisch und hat ein gewisses Rauschen. 2.3 Robotermodell Das verwendete Robotermodell basiert auf der realen Version des Nao-Roboters von Softbank-Robotics4, mit 24 Gelenken, Fußdrucksensoren, Gyroskopen und Beschleunigungssensoren. In diesem Artikel wird ein Zehenmodell verwendet. In früheren Arbeiten des Magmas-Teams [3], [4] hat sich diese Untervariante für verschiedene Sportmodi als positiv erwiesen. 3.1 Verstärkungslernen Ob ein Kind, das den ersten Schritt macht, oder ein Leistungssportler, der die Konkurrenz übertreffen will. Alle Lernenden haben eines gemeinsam: Sie lernen alle, indem sie mit der Umwelt interagieren und erkennen, welche Verhaltensweisen sie dem Ziel einen Schritt näher bringen. Jeder Fortschritt oder Rückschritt beim Erreichen des Ziels hat Auswirkungen auf den Einzelnen und bildet dadurch tatsächliches Wissen zwischen Umweltaktionen und -reaktionen. Diese besondere Verbindung zwischen Fortschritt und Handlung beschreibt das Verständnis des Individuums von seiner Umwelt [6]. Ob Kleinkind oder Leistungssportler, sie alle werden von einem gewissen Antrieb geleitet, um die gesteckten Ziele zu erreichen. Bei Kindern ist dies wohl getrennt von der Selbständigkeit der Eltern und jeder Schritt in Richtung Selbständigkeit, bei Leistungssportlern eher nach jahrelangem Training und Überholen von Konkurrenten und dem daraus resultierenden Prestige. Reinforcement Learning (RL) oder Reinforcement Learning baut auf der Grundtatsache des Lernens auf und überträgt diese auf den Bereich der Informatik. Der Fokus liegt jetzt darauf, ein Lernproblem zu lösen und die Belohnungen zu maximieren. Eine Methode besteht darin, das menschliche Gehirn als künstliches neuronales Netz zu einer Struktur zu abstrahieren, die eine Vielzahl von Verbindungen und Wissen speichern kann. Um zukünftig zu lösende Probleme zu vermeiden. Das System entwickelt sich ständig weiter, weil es mit der Umgebung interagiert, sozusagen "einfach ausprobieren". Reinforcement Learning unterscheidet sich stark von anderen Lernmethoden (z. B. überwachtem Lernen). Die folgenden vier Fakten definieren Reinforcement Learning und unterscheiden es von anderen Lernmethoden, um Methoden zu lernen [7]: Es gibt keinen Supervisor, der festlegt, welche Handlungen gut oder schlecht sind. Die lernende Entität muss die Verbindung zwischen der Handlung und ihrer Belohnung bestimmen. Das Feedback zu der ausgewählten Aktion kommt oft spät im Entitätslernproblem an, ohne die Funktion mit einem einzigen Eingabeparameter und seiner Belohnung klar zu definieren. Beim Reinforcement Learning werden eine Reihe von Aktionen ausgeführt und nach einer gewissen Zeit schließlich Belohnungen erhalten. Die erhobenen Daten hängen von der Umgebung und dem aktuellen Zustand des Einzelnen ab. Bei anderen Lernmethoden ändert sich der Basisdatensatz nicht. Beim Reinforcement Learning hängt der generierte Datensatz vom Fortschritt des Systems ab und wird daher niemals gleich oder klar definiert sein. Alle Probleme des Reinforcement Learning können als Markov-Entscheidungsprobleme klassifiziert werden. Read Less