Untersuchung von evolutionären Strategien für die Anwendung in der Neurorobotik

Aus SDQ-Institutsseminar
Vortragende(r) Patrick Deubel
Vortragstyp Bachelorarbeit
Betreuer(in) Daniel Zimmermann
Termin Fr 8. November 2019
Vortragsmodus
Kurzfassung Die Neurorobotik beschäftigt sich damit, Roboter unter Verwendung von künstlichen neuronalen Netzen zu trainieren. Dabei bilden die neuronalen Netze eine Schnittstelle zwischen der Umgebung und dem Algorithmus, der für das Training verwendet wird.

Als effektiv hat sich in den letzten Jahren das Reinforcement Learning (RL) herausgestellt, welches allerdings gradientenbasiert ist. Zur Anpassung der Gewichte des Netzes wird der Backpropagation-Algorithmus angewendet, der bei der Ausführung durch die Schichten des Netzes iteriert und die Gewichte anpasst. Dies limitiert RL-Algorithmen in ihrer Skalierbarkeit. Ein Ansatz, der komplett auf Backpropagation verzichtet, sind die evolutionären Strategien (ES). Basierend auf dem biologischen Vorbild der Evaluation werden über Generationen hinweg die Gewichtsvektoren optimiert, indem pro Generation mehrere Veränderungen stattfinden und deren Güte ausgewertet wird. Eine solche ES haben Mitarbeiter von OpenAI um Salimans, 2017 in einem Artikel vorgestellt. Diese wurde auf Robotersimulationen getestet, bei denen standardmäßig RL-Algorithmen eingesetzt werden. Es wurde festgestellt, dass die ES vergleichbar ist mit RL. Des Weiteren sind ES hoch parallelisierbar und konnte dadurch die einen humanoiden Roboter deutlich schneller trainieren als der verglichene RL-Algorithmus. Die vorliegende Arbeit untersucht die ES anhand von zwei Umgebungen der Roboschool. Dies ist eine Gruppe von Robotersimulationen, die in dem Artikel nicht verwendet wurden. Dazu wird auf der Implementation, die zusammen mit dem Artikel veröffentlicht wurde, aufgebaut und eine eigene Implementation angefertigt. Um die ES auf der Roboschool zu evaluieren, werden Ergebnisse von RL-Algorithmen aus der Literatur zitiert und diese zum Vergleich herangezogen. Die Evaluation zeigt, dass die Robotersimulationen durch das Training mit ES das Laufen lernen. Außerdem kann durch das Hinzufügen von Rechenleistung die Berechnungszeit verringert werden.