PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Roboter mit KI lernt selbstständig laufen



Counterfeiter
07.11.2016, 19:19
Hallo,

ich bin ja erst seit zwei, drei Wochen hier. Ich habe einen kleinen Laufroboter zusammengebaut und diesen einen machine learning Algorithmus verpasst.

Da ich Dokumentation, Bilder und Videos dazu habe, möchte ich euch den schlauen Kerl nicht vorenthalten. Am Besten ihr besucht meinen Blog für alle Infos:
https://sebastianfoerster86.wordpress.com/2016/11/07/robot-controlled-by-artificial-neural-network/

Hier mal die Videos in Forum gezogen:

Schlechte Lernphase... man siehts bei der Ausführung:

https://www.youtube.com/watch?v=lZjd442ruIM

Gute Lernphase:

https://www.youtube.com/watch?v=fHCm0gQRzC4

VG

Basti

Feuerring
08.11.2016, 00:43
verstehe ich das richtig, der Bot hat gelernt zu laufen ... nicht schlecht ... die Mechanik ist ja nicht gerade optimal zum laufen

wir sieht das verhalten auf ein Filz oder Teppich aus ?

Counterfeiter
08.11.2016, 08:37
Als ich den Robi zusammengebaut hatte, war ich gar nicht mal so sicher ob überhaupt eine gerichtete Laufbewegung möglich ist. Darum hatte ich auch hier im Forum gefragt:
https://www.roboternetz.de/community/threads/69790-Vierfu%C3%9F-Laufroboter-ohne-Kniegelenk-M%C3%B6glich
So, sicher war sich darüber wohl niemand, erst recht ich nicht...
Als ich die Lernparameter richtig eingestellt hatte, wurde mir aber gezeigt das es doch geht :)

Teppich geht natürlich nicht... die Beine müssen schon rutschen können.

Auf Teppich laufen wäre die nächste Ausbaustufe, die aber alles andere als leicht wird. Einfach ist noch der mechanische Teil: 4 weitere Servos und ein Knie gebaut.
Damit ergeben sich aber auf einen Schlag sehr viel neue mögliche Bewegungsabläufe, außerdem besteht natürlich das Problem, dass während der Lernphase die Servomotoren blockieren, durch die Zufallsbewegungen. Der Agent müsste evtl. durch Inverse Kinematik schon vorher berechnen ob es eine blockierende Bewegung wird und das Netzwerk im Vorfeld bestrafen... hmmm

VG

Basti

HaWe
08.11.2016, 09:00
hallo, und Gratulation!
ich hätte auch nie gedacht, dass Vor/Zurückschieberei der Beine zu einem Vorwärtslaufen führen kann. Da sieht man mal wieder,wozu die Natur fähig ist ... ;)

Vielleicht kommst du um weitere DOFs für die Knie herum, indem du das Vorwärts/Rückwärts Drehen in der "Hüfte" mit einem Anheben der Beine über eine passende Mechanik (Exzenterscheibe?) verbindest.
Ansonsten wären bei unabhängigen Knie-Servos auch Endpunktschalter-Buttons für alle (kritischen) Gelenke möglich, die eine Überstreckung/Überdrehung der Gelenke gleichzeitig signalisieren als auch mechanisch verhindern (gibt's bei Mensch und Tier ja auch). Das würde allerdings wirklich deutlich mehr DOFs ergeben und somit exponentiell mehr Neuronen erfordern.

Counterfeiter
15.01.2017, 10:06
Aktuell arbeite ich an den Kniegelenken. Da es mir nicht möglich erscheint das mit der "echten Mechanik" zu trainieren, werde ich auf eine Simulation setzen und das fertige neuronale Netzwerk in den Roboter überspielen.
Für die Simulation brauche ich im Grunde nur Schwerkraft und Massenträgheit.
Mit Blender ist es möglich 3D Objekte während der Simulation mit Python zu modifizieren -> super gut!


https://www.youtube.com/watch?v=yvk7jB418lI

Damit er nicht einfach nur umfällt, bin ich gerade an ein paar aufwändigen Nebenarbeiten: PID-Reglerparameter einstellen, um die Beinpositionen regelt...

VG

Basti