Robotje Leo leert lopen, met vallen en opstaan

Een Delftse specialist in de robotica legt in zijn gisteren verdedigde proefschrift uit hoe robots leren. Zoals Leo, zijn robopupil.

Het is moeilijk geen ouderlijke gevoelens te krijgen bij het filmpje van Leo, het turfhoge tweebenige robotje dat leert lopen met vallen, opstaan en hartverscheurende klunzigheid.

Leo ligt, werkt zichzelf overeind met een raar draaiend armpje, steekt voorzichtig een rechtervoet vooruit, en klapt keihard achterover. Bij de volgende poging kukelt hij juist voorover, blijft even liggen op zijn schuimrubberen gezicht, om dan weer op te staan. Geduldig zuchtend, lijkt het bijna.

„Veel mensen voelen dat zo, maar ik had er niet zo veel last van”, zegt Erik Schuitema, de schepper van Leo, die hem als robotonderzoeker aan de slopende looptrainingen onderwierp. „Ik denk meer: kom op nou, zet nou die ene stap naar voren, ik weet dat je het kunt.”

Schuitema promoveerde gisteren aan de TU Delft op een proefschrift over zelf lerende robots.

Ja, Leo leert zelf. Na elke val of gelukte stap past hij zijn besturing een tikje aan. Na een uur vallen en opstaan kan Leo een stap of tien doen, na vier uur ploeteren weet hij eindelijk door te wandelen. Tenminste, zo lijkt het op het Youtube-filmpje waar de reparaties uit zijn geknipt.

De valpartijen ogen niet alleen pijnlijk, ze zijn ook slopend voor het robotje. „Motoren gingen stuk, printplaten raakten beschadigd, metaal verboog”, somt Schuitema op. De werkelijkheid is een stuk weerbarstiger dan de computersimulaties waarin de meeste lerende robots virtueel hun eerste levenslessen krijgen.

„In computersimulaties is alles ideaal, in de werkelijkheid kom je altijd onverwachte dingen tegen”, zegt hoogleraar Pieter Jonker, Schuitema’s promotor.

Onverwacht storend was bijvoorbeeld de rekentijd tussen het moment dat een sensor iets voelt, en het moment dat een robotmotor reageert. Jonker: „Dat is opgelost. Zulke dingen lijken nu logisch, maar dat is altijd achteraf.”

Om het lopen zelf gaat het de onderzoekers overigens niet. Het gaat om het zelfstandig leren. Na de opkomst van robots in industrie en wetenschap, van autospuitrobot tot Marsverkenner, moeten ze nu ook aan het werk in het dagelijks leven. Bijvoorbeeld als hulp in de huishouding voor ouderen of gehandicapten. Maar in bepaalde omzichten is een huiskamer met normale mensen lastiger dan Mars: rommelig, veranderlijk, onvoorspelbaar, en je mag de mensen niet beschadigen. Bovendien heeft niemand tijd of expertise om je nieuwe taken te leren, dus moet je dat als robot zelf doen.

Een veelbelovende methode daarvoor heet Reinforcement Learning. Daarbij wordt iedere situatie (bijvoorbeeld een bepaalde stand van de benen) gekoppeld aan een bepaalde actie (bijvoorbeeld de linker voet vooruit bewegen). Pakt die actie goed uit, dan krijgt de robot een beloning in de vorm van punten. Loopt het verkeerd af, dan volgt er puntenaftrek. De robot is geprogrammeerd om de acties te variëren en zo zijn beloning te optimaliseren.

En dat werkt, laat Schuitema zien. In computersimulaties maar ook in het echt, al is zijn bewijs daarvoor nét niet helemaal rond. Schuitema: „We waren er bijna. Eerst repareerden we om de paar minuten, later om het half uur. Als Leo nog iets robuuster was gebouwd, had hij zeker helemaal zelf kunnen leren lopen.”

De onzekere stapjes van Leo zijn te zien op YouTube via http://nrch.nl/ky3