AI manoeuvreert kogeltje razendsnel door doolhof
Je kent het vast: het spelletje waarbij je een kogeltje door een doolhof vol gaten moet loodsen door dit subtiel heen en weer te kantelen. Om dit te laten lukken is fingerspitzengefühl nodig. Tot nu toe konden alleen mensen met een vaste hand en veel geduld dit. Maar een computer boekt nu ook succes met het bekende spelletje. Onderzoekers aan de ETH Zürich bouwden hiervoor een zelflerend systeem.
Schaken, Go, Pong en andere Atari-spellen, de lijst met computerspellen waar software op basis van AI (artificial intelligence, kunstmatige intelligentie) de meest geoefende mensen verslaat, wordt steeds langer.
Minder vaak blinkt AI uit in spellen met een fysieke component. Er zijn wel enkele voorbeelden, zoals autonome drones die sneller een parcours afleggen dan menselijke dronepiloten en een curlingrobot die de strijd kon aangaan met de beste spelers ter wereld.
De voorbeelden komen uit een artikel (nog niet door onafhankelijke onderzoekers gecheckt) op de preprintserver arXiv dat Thomas Bi en Raffaello D’Andrea schreven, twee onderzoekers van het Institute for Dynamic Systems and Control aan de ETH Zürich in Zwitserland. Daarin beschrijven zij het robotisch systeem dat ze bouwden om een bekend behendigheidsspel te leren spelen.
Metalen kogeltje
Bij dit spel moet de speler een metalen kogeltje in een bepaalde volgorde door een doolhof sturen, terwijl hij de gaten ontwijkt. Dit alles door het hele houten kastje een klein beetje schuin te houden, steeds in een andere oriëntatie. Wie dit wel eens heeft gespeeld, weet dat het heel frustrerend kan zijn. Vaak verdwijnt het kogeltje al in één van de eerste gaten. Maar wie volhoudt, ziet al snel verbetering en komt steeds een beetje verder.
Tafel
De onderzoekers Bi en D’Andrea bouwden een robotisch systeem, CyberRunner genaamd, dat dit spel kan spelen. Het bestaat uit een tafel die het houten doosje vasthoudt, met daarop twee elektromotoren voor de twee richtingen waarin het spel te kantelen is.
Daarboven hangt een breedbeeldcamera die videobeelden maakt om de positie van het kogeltje te bepalen. Ten slotte bevat het systeem een computer die zowel de beelden analyseert, als de algoritmen doorrekent en de motoren aanstuurt.
Lompe bewegingen
Het beschreven systeem begint het spel te spelen met een bepaalde aanpak. Bijvoorbeeld door het hele doosje met vrij grote, lompe bewegingen heen en weer te kantelen. Dit levert op het bord een bepaald resultaat op, dat wordt gefilmd.
Het idee van reinforcement learning – de vorm van AI die hier is gebruikt – is dat succes wordt beloond. Dus elke goede, bruikbare stap levert punten op: bijvoorbeeld wanneer het kogeltje een stukje vordert op de route, of wanneer het een gat passeert zonder erin te vallen; elke keer levert dat een hogere score op. Op die manier beloont het systeem zichzelf voor nuttige handelingen en zal het bij volgende pogingen, statistisch gezien, net weer ietsje beter doen.
Hoe handig het algoritme is geworden al na een paar uur aan training blijkt uit deze video:
Snelste mens
Het robotsysteem lost de puzzel in 15,7 seconden op, een fractie sneller dan de snelste mens het kan (hoe snel doet die het dan?). En kan dat ook reproduceren; in driekwart van de pogingen lukt het om het menselijke record te breken.
De robot kan dit zo snel doordat het heeft geleerd om ook de muurtjes te benutten. Door een kogeltje in sommige gevallen met een flinke snelheid tegen een muurtje te laten botsen, kaatst het terug en heeft het alweer een beginsnelheid op weg naar de volgende hindernis.
Vlak langs een gat
Een andere truc die het systeem heeft geleerd, is om het kogeltje vlak langs een gat laten rollen om zo wat tijd te winnen. Geoefende spelers zullen dit herkennen. Dit is wel risicovol, want kom je te dichtbij dan kan het kogeltje ook zomaar in het gat floepen. Maar de AI blijkt het risico dus te nemen, zo ontdekten Bi en D’Andrea.
Wie goed kijkt naar het labyrint, ziet trouwens dat er hier en daar bochten af te snijden zijn; er zijn sluiproutes te benutten, bijvoorbeeld bij nummer 2 is een doorsteek te maken naar nummer 21. Het fascinerende is dat het algoritme van de ETH-onderzoekers dit ook heeft ontdekt. Tijdens alle pogingen om zo snel mogelijk de puzzel op te lossen, nam het kogeltje soms zo’n shortcut. De onderzoekers moesten het uitdrukkelijk verbieden om dit te doen.
Open source
Het onderzoek is helemaal open source; dat wil zeggen dat iedereen ermee aan de slag kan. Op de website CyberRunner staan alle details.
In hun artikel noemen de onderzoeker zelf geen nuttige toepassingen in de praktijk van hun werk. Wel schrijven ze dat ze het bekende houten spelletje ‘een handige manier is om nieuwe algoritmen op te onderzoeken en testen. Het is goedkoop, overal verkrijgbaar (of zelf te bouwen) en biedt toch een uitdagende spelomgeving.’
Openingsfoto: videostill van CyberRunner. Foto's: https://www.cyberrunner.ai/