Refine
Document Type
- Conference Proceeding (3)
- Bachelor Thesis (1)
- Master's Thesis (1)
Conference Type
- Sonstiges (3)
Keywords
- RoboCup (4)
- Deep Reinforcement Learning (1)
- Generics (1)
- Go (1)
- Laufen lernen (1)
- Programmiersprache (1)
- Übersetzungsstrategie (1)
Institute
Open Access
- Open Access (5)
- Bronze (3)
- Diamond (1)
Analyse domänenseitiger Optimierungen für Deep Reinforcement Learning in der RoboCup Umgebung
(2021)
Mit dem Team "magmaOffenburg" nimmt die Hochschule Offenburg seit 2009 am internationalen Wettbewerb "RoboCup" in der 3D-Simulationsliga für Fußball teil. Dabei kommt es vor allem auf den Einsatz guter Lauf- und Kickverhalten an. Seit 2019 ist es dem Team magmaOffenburg möglich auch Deep Reinforcement Learning für die Weiterentwicklung der Verhalten einzusetzen. Während auf diese Weise schon verwendbare Ergebnisse für das Kicken produziert wurden, so fehlt noch ein Fortschritt beim Laufen lernen. Diese Arbeit beschäftigt sich mit den nötigen Optimierungen auf der Domänenseite, um das gelernte Laufen zu verbessern. Das beinhaltet die Optimierung des Observation- und Actionspaces, sowie auch eine Optimierung der Rewardfunktion. Dabei wurde versucht, die einzelnen Einflüsse verschiedener Parameter und Techniken innerhalb dieser drei Bereiche zu evaluieren. So konnte zum Schluss eine Verbesserung in der Laufgeschwindigkeit von etwas unter einem Meter pro Sekunde auf bis zu 1,8 Metern pro Sekunde erreicht werden. Ausschlaggebend für dieses Ergebnis waren vor allem der Verbesserungen in der Rewardfunktion.
Go ist eine 2009 veröffentlichte Programmiersprache mit einem statischen Typsystem. Seit Version 1.18 sind auch Generics ein Teil der Sprache. Deren Übersetzung wurde im de facto Standard-Compiler mittels Monomorphisierung umgesetzt. Diese bringt neben einigen Vorteilen auch Nachteile mit sich. Aus diesem Grund beschäftigt sich diese Arbeit mit einer alternativen Übersetzungsstrategie für Generics in Go und implementiert diese in einem neuen Compiler für Featherweight Generic Go, einem Subset von Go. Zum Schluss steht damit ein nahezu funktionierender Compiler, welcher schließlich Racket-Code ausgibt. Eine Evaluierung der Performanz der Übersetzungsstrategie ist allerdings noch ausstehend.
Team description papers of magmaOffenburg are incremental in the sense that each year we address a different topic of our team and the tools around our team. In this year’s team description paper we focus on the architecture of the software. It is a main factor for being able to keep the code maintainable even after 15 years of development. We also describe how we make sure that the code follows this architecture.