Demonstrations Spiel gegen Adult Size Sweaty

Heute hatten wir die Möglichkeit gegen das Adult Size Team Sweaty zu spielen. Sie sind momentan die Favoriten, das Finale der Weltmeisterschaft in ihrer Liga zu gewinnen. Da es für uns leicht war, unsere Software so zu ändern, dass wir auch auf einem größeren Feld mit einem größeren Ball spielen können, haben wir angeboten auf dem regulären Feld der Adult Size zu spielen. Wir konnten nur zwei Roboter nutzen, statt unserer üblichen drei oder vier, da das notwendig war um auf dem großen Feld zu spielen.

Wir bekamen Angst, als wir die Größenunterschiede zwischen den Robotern sahen, aber wir waren schon früh die Favoriten, als wir uns ins Feld bewegten und uns richtig positionierten. Die Roboter von Sweaty bewegten sich leider nicht ins Feld. Die Vermutung von Sweaty ist, dass es Probleme mit der Verbindung zum Schiedsrichter gab und die Roboter deshalb nicht wussten, dass sie anfangen dürfen zu spielen.

Am Ende haben wir es geschafft, insgesamt sechs Tore auf dem großen Feld zu schießen.

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail

Halbfinale

Im Halbfinale durften wir gegen Starkit antreten. Starkit hatte in ihren letzten Spielen eine beeindruckende Leistung gezeigt und wir freuten uns sehr darauf, dass wir gegen sie spielen durften. Wir haben letzte Nacht noch ein paar letzte Bugs gefixt, aber keine großen Änderungen vorgenommen. Da wir unsere Strategie nicht in der Mitte eines Spieles ändern können, musste sie einfach zuverlässig funktionieren.

Wir mussten unseren Code um 12:30 hochgeladen haben und unser Spiel startete um 20:30. Das gab uns eine Menge Zeit nur da zu sitzen und gespannt auf unser Spiel zu warten.

In unserem Spiel heute morgen hatten wir Probleme, weil es länger lief als wir es erwartet hatten und die von uns gespeicherten Dateien deswegen zu groß waren. Damit uns das nicht wieder passieren konnten, haben wir die Anzahl der Bilder die wir aufgenommen haben halbiert. Das sollte nichts kaputt machen können… Richtig? RICHTIG?
Nun ja… Das hat es aber getan.
Zum Glück haben wir noch ein Test Spiel laufen lassen und es festgestellt. Das hätte unsere Roboter davon abhalten können sich zu bewegen und den Sieg an Starkit geschenkt.

Nach dem Erlebnis waren wir noch gespannter auf das Spiel und wenn ihr in der Nähe von uns wart, dann habt ihr uns wahrscheinlich jubeln gehört, als wir anfingen uns zu bewegen.

Zu Beginn des Spiels passten die Starkit Roboter zueinander und spielten uns aus. Anfänglich konnten wir uns noch gut verteidigen, aber gegen ihre beeindruckenden offensiven Spielzüge, konnten wir nicht mithalten.

Unser Torwart hat ein paar fragwürdige Entscheidungen getroffen. Er war nahe am Ball, aber entschied sich dann doch nicht den Ball von unserem Tor weg zu treten, sondern lief zurück zu seinem Tor um von dort aus die Sicherheit unseres Tores sicher zu stellen.

In einer späteren Situation, lief unser Torwart dann in die Gegnerhälfte um den Ball weiter weg zu treten. Damit kam er an allen Gegnern vorbei, aber entschied sich dann, dass der Ball jetzt sicher ist und rannte wieder zu unserem Tor zurück. Das gab den Robotern von Starkit dann wiederum die Möglichkeit zur Offensive.

Die Starkit Roboter schafften es am Ende sieben Tore gegen uns zu erzielen. Unsere Roboter ließen sich aber nicht demotivieren und versuchten weiterhin ihr bestes. Damit schafften sie es zwei Tore für uns zu erringen.

Wir sind wirklich stolz darauf, was unsere Roboter geschafft haben. Wir freuen uns auch darauf morgen im Spiel um den dritten Platz gegen die CIT-Brains zu spielen. Wenn ihr es anschauen möchtet, es wird morgen um 10 hier gezeigt werden:
https://www.twitch.tv/robocuphumanoidfielda

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail

Neuer Rekord im Viertelfinale – Die Bit-Bots erreichen das Halbfinale

Nach dem spannenden Spiel gestern gegen den 01. RFC Berlin, durften wir heute im Viertelfinale spielen. Die Australischen Nubots haben das Los gegen uns gezogen. In der Gruppenphase hatten sie es geschafft ein Tor zu erzielen, aber wir waren uns relativ sicher, dass wir das Spiel gewinnen könnten. Wir waren aber immer noch vorsichtig, denn ein Fehler in unserer Software hätte uns vom Spielen abhalten können und uns den Sieg gegen die Nubots kosten können.

Als das Spiel los ging waren wir sehr froh, als unsere Roboter anfingen los zu laufen, weil wir uns dann sicher waren, dass wir normal spielen würden. Die Nubots wehrten sich am Anfang, aber trotzdem gelang es uns ein Tor zu schießen.

Der Schiedsrichter hat das aber nicht als Tor für uns gewertet. Stattdessen vergab er einen Abstoß an die Nubots. Wir bekamen ein wenig Panik, da der Schiedsrichter dort offensichtlich einen Fehler gemacht hatte und das Spiel jetzt immer noch ausgeglichen war.

Unsere Roboter waren aber weiterhin voll motiviert und warteten einfach ab bis wir den Ball spielen durften und schossen gleich noch ein Tor. Dieses mal hat der Schiedsrichter das Tor auch gezählt und wir gingen in Führung mit einem 1-0.

Die Nubots wehrten sich ab diesem Zeitpunkt nicht mehr wirklich und es gelang uns ein Tor nach dem anderen zu schießen. Nach der ersten Hälfte führten wir schon 7-0. In der zweiten Hälfte waren wir aufgeregt, denn wir waren auf einem guten Weg das beeindruckende 15-0 zu schlagen, dass MRL in einem vorherigen Gruppenspiel erreicht hatte.

Die zweite Hälfte lief ab und wir schafften es ihr Ergebnis um genau ein Tor zu übertreffen. Das offizielle Ergebnis war 16-0. Hätte das erste Tor gezählt, dann hätten wir wahrscheinlich 17-0 gewonnen.

Nach dem Spielende haben wir herausgefunden, dass wir mehr Zeit zur Verfügung hatten, weil nach einem Tor in den KO Spielen mehr Zeit gegeben wird, um die Zeit auszugleichen, in der die Roboter nach einem Tor den Ball nicht spielen dürfen.

Jetzt freuen wir uns darauf, heute Abend um 20:30 gegen Starkit im Halbfinale spielen zu dürfen.

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail

Das objektiv aufregendste Spiel bisher

Wir haben gerade unser letztes Gruppenspiel gewonnen. Wir sind immer noch atemlos, weil unsere Herzen das ganze Spiel über gerast sind.
Wir wussten schon, dass dies ein aufregendes Spiel werden würde, weil der 01. RFC Berlin die IT Androids mit dem selben Ergebnis wie wir besiegt hat: 9-0.
Allerdings war das Spiel gegen die IT Androids nicht so spannend wie das gegen Berlin.

Unsere Aufregung stieg noch mehr, als wir herausfanden, dass die Übertragung unseres Spieles auf später verschoben werden musste. Das war das erste Spiel dieses Turniers in dem das notwendig war.
Wir haben spekuliert, dass es daran lag, dass die Simulation komplexer war, weil sich unsere und die Berliner Roboter öfters kollidierten als die Roboter in den Spielen vorher. Wir wussten also schon, dass wir uns auf ein spannendes Spiel freuen konnten.

Bereits zu Beginn des Spiels gelang es den Berliner Robotern tief in unsere Hälfte zu spielen und dabei ging er sogar in unseren Strafraum. Unsere Roboter schafften es allerdings den folgenden Zweikampf für sich zu gewinnen und die Berliner Roboter mussten mit einer Zeitstrafe das Spielfeld verlassen. Diese Zeit konnten wir ausnutzen und den Ball zur Mitte des Spielfeldes zurück spielen. Trotz alledem, war das nicht genug um den Ball in Sicherheit zu bringen, denn die Berliner Roboter drückten den Ball wieder vorwärts in unsere Hälfte. Sie haben sogar versucht ein Tor zu schießen, aber unser heldenhafter Torwart stand richtig und konnte den Ball davon abhalten, ins Netz zu fliegen. Damit war der Angriff der Berliner aber noch nicht beendet. Sie bekamen vom Schiedsrichter sogar einen Elfmeter zugesprochen.

Sie kickten den Ball und er wäre ins Tor gerollt, aber der Schiedsrichter pfiff seine (imaginäre) Pfeife, denn sie hatten den Ball schon getreten, bevor der Schiedsrichter den Ball freigegeben hatte. Das konnte uns zum Glück gerade noch retten. Die Angreifer mussten nun das Feld für 30 Sekunden verlassen und unsere Roboter nutzten die Gelegenheit und stürmten nach vorne. Jedoch hatten wir leider nicht mehr Glück als die Berliner Roboter und die gute Verteidigung der Berliner konnte alle Torversuche von uns verhindern.

Nachdem wir gespannt zuschauten, wie beide Teams versuchten das Spiel aus dem Mittelfeld aufzubauen, haben wir einen Glückstreffer gelandet. Zwei der Berliner Roboter wurden vom Schiedsrichter an den Rand des Feldes geschickt und unser Stürmer konnte geschickt den einzigen übrig gebliebenen Verteidiger ausspielen. Dann waren wir unaufhaltsam und konnten endlich unser erstes Tor schießen.

Der Roboter in der Mitte freute sich so sehr, dass er für unseren Stürmer jubelte.

Die Berliner Roboter haben aber noch nicht aufgeben wollen. Sie haben weiterhin gut gestürmt und hatten sehr gute Chancen vorne. Der Schiedsrichter hat uns aber wieder gerettet, indem er ihren Robotern eine Zeitstrafe gab, weil sie zu schnell in einer Standardsituation den Ball kickten, oder uns versuchten umzuwerfen.

Wir konnten unsere 1-0 Führung in die zweite Hälfte retten und nach einer Weile wirkte es als hätten wir die Moral von einem der Berliner Roboter gebrochen. Nachdem der Roboter eine Strafe bekam, hörte er einfach auf sich zu bewegen und das mitten in einem Schritt. Die Teammitglieder des 01. RFC Berlin haben uns erzählt dies läge an einem Fehler in ihrem Code und der Roboter wäre abgestürzt.
Unsere Roboter nutzten die Möglichkeit und gewannen die Zweikämpfe im Strafraum der Berliner und erzielten unser zweites Tor.

Mit unserer 2-0 Führung beruhigten sich unsere Herzen wieder ein wenig und wir freuten uns über den Vorsprung.
Das Problem war nun aber, dass der Roboter, der sich vorher aufgehört hatte zu bewegen, sich jetzt wieder bewegte. Mit ihm gelang es dem 01. RFC Berlin fast ein Tor zu schießen und nur Zentimeter konnten uns retten.

Wir spielten weiter vorwärts und konnten noch ein paar gute der Schüsse der Berliner aus unserem Tor halten. Am Ende konnten wir das Spiel mit 4-0 für uns entscheiden.

Dann waren nicht nur unsere Roboter, sondern auch unsere Menschen erschöpft, aber feierten unser großartiges Spiel.
Wir danken dem 01. RFC Berlin für dieses ereignisreiche Spiel und wir hoffen euch im Finale wieder zu sehen. (Hoffentlich auch mit dem gleichen Ergebnis ;))

Wenn Ihr euch das Spiel in Echtzeit ansehen wollt, gibt es hier ein Video davon:
https://www.twitch.tv/videos/1067256488?t=01h24m36s

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail

Unser erstes Gruppenspiel

Wir hatten eben unser erstes offizielles Spiel in dem wir gegen THMOS spielen durften. Wir waren überzeugt, dass wir das Spiel gewinnen können, aber es gibt immer Überraschungen die uns doch stoppen können. Zum Beispiel hatten wir in den letzten Tagen ein Problem wo wir ein einzelnes „,“ zu viel in unserem Code hatten, das unseren Roboter abstürzen lassen hat. Da es keine Möglichkeit gibt, während des Spiels noch irgendwelche Probleme zu lösen, können immer noch Überraschungen passieren.

Wir hatten allerdings Glück und unsere Software hat sehr gut funktioniert. Unsere Gegner hatten leider nicht so viel Glück. Sie hatten ein Problem mit ihrer Software und sind immer wieder von der Karte gerutscht.

Somit konnten wir einen überzeugenden 12:0 Sieg erringen und freuen uns auf unsere nächsten Spiele.

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail

RoboCup 2021 beginnt

Wir freuen uns sehr, dass der RoboCup 2021 nun beginnt und wir bereits morgen die ersten Spiele unserer Liga sehen werden. Auch heute können wir aber bereits unsere und die Roboter der anderen Teams in den Testspielen anfeuern. Diese Spiele werden das Ende der zwei Aufbau Tage sein in denen wir die Chance hatten unsere Software nochmal ausführlich zu testen und die meisten Bugs zu entfernen die wir gefunden haben.

Alle Spiele werden auf Twitch gestreamed werden:
https://www.twitch.tv/robocuphumanoidfielda/
https://www.twitch.tv/robocuphumanoidfieldb/

Unser erstes Testspiel gegen MRL-HSL wird heute um 17:40 auf dem ersten Twitch Kanal der oben verlinkt ist gezeigt. Wir würden uns freuen es gemeinsam mit euch anzuschauen!

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail

Mock Competition

Letztes Wochenende war die „Mock Competiton“, ein erster Testlauf für die echte Weltmeisterschaft. Anders als die regulären Wettbewerbe, werden dieses Jahr die Spiele alle simuliert werden. Wir waren aufgeregt, endlich unsere Software gegen echte Gegner ausprobieren zu können und uns an diesen ungewöhnliche Form des Wettbewerbes zu gewöhnen. Wir haben uns also alle am Freitag Nachmittag getroffen um uns auf die ersten Probe-Elfmeterschießen vorzubereiten. Nachdem wir unsere Software hochgeladen haben und die Berechnungen angefangen haben, haben wir gespannt darauf gewartet, dass das Video des Spieles gestreamt werden würde. Diese Berechnungen müssen schon vor dem Stream passieren, weil die Simulation sehr langsam ist und das keinen Spaß beim zuschauen machen würde. Also warteten wir…

Eine ganze Weile passierte nichts. Aber warum? Ein Fehler im automatisieren Schiedsrichter hat es allen Robotern verboten sich zu bewegen. Nachdem wir uns zwei sehr langweilige Spiele angeschaut haben, wurden die nachfolgenden Spiele auf unbestimmte Zeit verschoben bis das Problem gelöst werden konnte. Diese freie Zeit haben wir genutzt um noch einige Probleme in unserem eigenen Code zu lösen. Dabei haben wir noch einige weitere Probleme in dem Code des Schiedsrichters gefunden.

Am Samstag wurde dann die ursprüngliche Planung komplett geändert: Statt der geplanten regulären Spiele, wurde eine Reihe von Herausforderungen aufgestellt. Diese sollten die Teams zu einem Punkt hinführen an dem sie bereit für den Wettbewerb sind. Nachdem das Modell unseres Roboters begutachtet wurde und wir uns erfolgreich mit dem Server verbunden haben, war die erste Herausforderung einfach nur zu laufen. Damit konnte sicher gestellt werden, dass die Roboter sich bewegen dürfen und ein solches Problem wie am Freitag nicht nochmal auftreten würde. Danach waren die nächsten Challenges ein Elfmeterschießen, ein kurzes Spiel und abschließend ein ganzes Spiel. Unsere gesamte Software hat sehr gut funktioniert und wir kamen schnell durch die Challenges. Am Samstag gelang es uns das erste Tor der Mock Competition zu schießen.
Zugegeben, weil wir zuerst hingefallen sind, und damit den Ball näher zum Tor bewegt haben, war das etwas einfacher als erwartet. Trotzdem haben wir mit unserem dynamischen Kick elegant um den Torwart herum gespielt und uns den ersten Punkt des Wochenendes ergattert.

Am Sonntag hatten wir dann die Gelegenheit ein erstes kurzes normales Spiel zu spielen. Da haben wir gegen den 01. RFC Berlin gespielt. In der ersten Hälfte sah es gut für uns aus. Wir haben noch ein Tor geschossen und hätten fast noch ein zweites geschossen, aber als die Zeit ablief lag der Ball knapp vor der Torlinie.

Dann startete die zweite Hälfte und nichts mehr ging. Der Schiedsrichter hat die Roboter nicht richtig zurückgesetzt und es sind erst mal alle acht Roboter hingefallen, wofür sie dann eine Strafe vom Schiedsrichter bekamen. Trotz alle dem haben wir uns davon erholen können und uns aus dem Haufen von Robotern befreien können, der entstand, weil alle Roboter aufeinander positioniert wurden. Nachdem wir dann verstanden haben wo wir auf dem Feld stehen, sind unsere Roboter alle schnell los gelaufen um sich vor den Ball zu stürzen, der Ball lag nämlich noch da wo er am Ende der ersten Halbzeit lag. Das war jetzt aber wegen des Seitenwechsels eben unser eigenes Tor. Kurz nachdem wir den Ball dort retten konnten, ist aber der Schiedsrichter abgestürzt und das Spiel musste abgebrochen werden.

Trotz des Chaos und der Probleme die wir gefunden haben, sind wir überzeugt, dass die meisten Probleme die auftauchen können jetzt gefunden sind und der eigentliche Wettbewerb dank dieses frühen Tests ungestört laufen kann . Wir konnten beobachten, dass unsere Software läuft wie wir es erwarten und freuen uns auf die richtige Weltmeisterschaft die am 24.6 losgeht.

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail

Zweiter Platz in der Brazil Open

Dieser Samstag war sehr aufregend für uns. Es war der Tag an dem die Brazil Open geendet ist und an dem die Ergebnisse offiziell verkündet wurden.
Wir haben uns online getroffen um die Preisverleihung gemeinsam zu erleben und die Tabelle mit den Ergebnissen wurde langsam gefüllt. Da die Ergebnisse vom letzten zum Ersten Platz verkündet wurden, wurde es immer aufregender je mehr Plätze in der Tabelle gefüllt wurden, die nicht unseren Namen beinhalteten.

Bevor wir aber über die Ergebnisse mit mehr Details reden, lasst mich euch kurz erzählen worum es in der Brazil Open ging. Durch COVID-19 konnten wir leider nicht an einem regulären Turnier teilnehmen bei dem unsere Roboter miteinander Fußball spielen dürfen. Deshalb mussten die Organisatoren der Brazil Open kreativ werden und sich eine Möglichkeit ausdenken wie die Teams trotzdem gegeneinander antreten konnten.

Der Wettkampf bestand deshalb aus zwei Teilen.
Der eine Teil war, dass wir ein 10 Minuten Video erstellen sollten in dem wir uns selber, unsere Roboter und unsere Forschung präsentieren. Ihr könnt euch dieses Video hier ansehen:

Der andere Teil des Wettkampfes bestand daraus, dass wir Roboter in Bildern erkennen mussten. Es gab Punkte dafür, wie viele Roboter richtig erkannt wurden und wie schnell wir in der Lage waren die Bilder zu verarbeiten.
Die Organisatoren haben uns eine Liste von Bildern bereit gestellt die wir benutzen konnten um unser System zu trainieren. Die Bilder stammen dabei aus dem ImageTagger, den wir entwickelt haben.

Jetzt wo ihr ein wenig mehr über den Wettkampf Bescheid wisst, können wir uns jetzt die Ergebnisse anschauen.

Die erste Spalte sind die Team Namen, gefolgt von den Punkten für die Roboter Erkennung und den Punkten für die Videos.

Wie ihr sehen könnt, haben wir einen gemeinsamen zweiten Platz, mit dem Team RoboFEI, in der Roboter erkennen Herausforderung erzielt. Wir haben dafür ein neuronales Netzwerk namens YOLOv4-tiny verwendet und konnten damit 94% der Roboter richtig erkennen. Wir konnten dabei 35 Bilder in der Sekunde verarbeiten. Team RoboFEI hat etwas weniger Roboter erkannt, war dafür aber schneller in der Verarbeitung der Bilder.

Unser Video hat die höchste Punktzahl in der RoboCup Brazil Open für Humanoid Robots Liga erzielt. Damit kamen wir auf insgesamt 80.875 Punkte.

Wir sind sehr glücklich mit den Ergebnissen und hatten eine Menge Spaß bei diesem Wettbewerb. Wir wollen uns hiermit bei den Organisatoren für das Veranstalten dieses Wettbewerbs bedanken und gratulieren den ITAndroids zum Sieg!

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail

Brazil Open

Wir können leider wegen COVID-19 nicht an Turnieren teilnehmen zu denen wir reisen müssten. Das hält uns natürlich nicht davon ab weiter an unseren Robotern zu arbeiten. Als wir von der Brazil Open erfahren haben, haben wir uns also natürlich sofort beworben.

Da unsere Roboter nicht direkt gegeneinander antreten können, haben die Organisatoren sich entschieden, dass jedes Team ein Video vorstellen, in dem das Team sich selbst vorstellt. Die Videos dürfen bis zu 10 Minuten lang sein und sollen neben dem Team selber auch die Forschung des Teams vorstellen.
Zusätzlich zu dem Videos dürfen die Teams auch gegeneinander mit ihren Vision Systemen antreten. Die Organisatoren haben sich zehntausende Bilder von Robotern ausgesucht um unsere Systeme darauf zu trainieren Roboter in Bildern zu erkennen. Die Bilder wurden ausgewählt vom ImageTagger, den wir entwickelt haben.

Wir hatten schon eine Menge Spaß und freuen uns noch mehr darauf unsere Ergebnisse mit denen der anderen Teams vergleichen zu dürfen. Die Videos werden auf dem Youtube Kanal des Turnieres gezeigt werden. Die Videos werden morgen (Donnerstag) ab 13:15 gezeigt und am Freitag ab 14:00.
Die Ergebnisse des Visison Wettbewerbs werden veröffentlicht, wenn alle Teams ihre Ergebnisse vorgestellt haben. Das sollte spätestens am Samstag sein.

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail

Dritter Platz in der Running Robot Competition

Letztes Jahr bekamen wir die Möglichkeit an der Running Robot Competition in China teilzunehmen. Da wir im letzten Jahr Spaß hatten, wollten wir auch dieses Jahr wieder daran teilnehmen.

Die Running Robot Competition ist kein Teil der RoboCup Turniere an denen wir normalerweise teilnehmen. Sie ist ein Turnier in dem die Roboter durch einen Parkour laufen müssen und dabei mehrere Hindernisse überwinden müssen. Diese Hindernisse können z.B. sein, dass der Roboter warten muss bis eine Schranke nicht mehr im Weg ist, oder über Treppenstufen laufen zu müssen.

Wegen Covid-19 hatten wir leider nicht die Möglichkeit in Person teilzunehmen, aber wir freuten uns trotzdem über das Internet teilnehmen zu können. Um das zu ermöglichen haben die Veranstalter uns eine Simulationsumgebung bereit gestellt.

Wir haben uns einige Optionen überlegt wie man die Probleme lösen könnte.
Angefangen mit einem konventionellen Ansatz in dem wir eine Vision entwickeln würden um z.B. die die gelben und schwarzen Segmente der Schranke zu erkennen. Sobald die Schranke dann in einem bestimmten Winkel ist, könnte der Roboter dann los laufen.

Wir wollten aber die Möglichkeit nutzen und uns mit etwas beschäftigen, mit dem die meisten aus unserem Team weniger Erfahrung hatten. Deshalb haben wir uns entschieden reinforcement learning für unseren Ansatz zu verwenden.

Reinforcement learning ist ein Ansatz in dem wir neuronale Netze verwenden, damit der Roboter lernen kann an den Hindernissen vorbei zu kommen, ohne das wir dem Roboter erklären müssen wie er das schafft. Das kann auch zu Lösungen führen die effizienter sind als Lösungen auf die wir gekommen wären. Das kann sein, dass der Roboter einen Fehler in der Physik im Simulator und sich ins Ziel teleportiert oder etwas so simples wie einen Weg zu finden, an den wir nicht gedacht haben.

Als Eingabe für den reinforcement learning Algorithmus haben wir nur das Kamerabild des Roboters verwendet. Ausgehend von diesem Bild musste der Roboter dann herausfinden was er tun sollte. Sollte er warten bis die Schranke oben ist oder kann er schon anfangen zu laufen?
Das klingt trivial für uns Menschen, aber der Roboter hat zu Beginn kein Konzept davon, dass die Schranke ein Hindernis ist. Am Anfang kann der Roboter nicht einmal unterscheiden zwischen dem Boden auf den er treten kann und einem solchen Hindernis.

Um dem Roboter zu helfen solche Dinger zu lernen, haben wir ihm Punkte als Belohnung gegeben, wenn er sich dem Ziel näherte und ihm welche abgezogen, wenn er in ein Hindernis wie die Schranke gelaufen ist.

Der Roboter konnte nur die Richtung bestimmen in die er gelaufen ist. Wir haben das selbe Programm zum laufen genutzt wie wir es auch auf unseren Fußballspielenden Robotern einsetzen. Da in dem Wettkampf ein anderer Roboter verwendet wurde, mussten wir einige Parameter anpassen. Zum Glück hatten wir ein Skript von unserem vorhandenen Laufen, mit dem der Roboter lernen konnte ideal zu laufen in dieser neuen Simulation.

Mit diesem Ansatz konnten wir die ersten Hindernisse überqueren. Wegen eines Missverständnisses, hatten wir weniger Zeit als geplant und wir konnten leider nicht den gesamten Parkour beenden.

Wir hatten eine Menge Spaß damit unseren Ansatz zu entwickeln um die Probleme zu lösen vor die uns die Running Robot Competition stellte. Wir freuten uns auch über die Möglichkeit viel über reinforcement learning zu lernen.

Wie ihr wahrscheinlich schon aus dem Titel gelesen habt, hatten wir nicht nur jede Menge Spaß während des Wettkampfs, sondern haben sogar den dritten Platz bekommen!

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail