Een robothand leerde zichzelf een Rubik's Cube op te lossen nadat hij zijn eigen trainingsregime had gecreëerd

OPENA OpenAI





Meer dan een jaar geleden kondigde OpenAI, het in San Francisco gevestigde AI-onderzoekslaboratorium met winstoogmerk, aan dat het een robothand had getraind om een ​​kubus met opmerkelijke behendigheid te manipuleren.

Dat klinkt misschien niet wereldschokkend. Maar in de AI-wereld was het om twee redenen indrukwekkend. Ten eerste had de hand zichzelf geleerd hoe hij met de kubus moest friemelen met behulp van een algoritme voor het leren van versterking, een techniek die is gemodelleerd naar de manier waarop dieren leren. Ten tweede was alle training in simulatie gedaan, maar het is erin geslaagd om met succes naar de echte wereld te vertalen. In beide opzichten was het een belangrijke stap naar meer wendbare robots voor industriële en consumententoepassingen.

Ik was nogal verbaasd, zegt Leslie Kaelbling, een roboticus en professor aan het MIT, over de resultaten van 21018. Het is niet iets waarvan ik had gedacht dat ze het hadden kunnen laten werken.



In een nieuw papier vandaag heeft OpenAI de nieuwste resultaten vrijgegeven met zijn robothand, Dactyl. Deze keer heeft Dactyl geleerd om een ​​Rubiks kubus met één hand op te lossen, opnieuw door middel van versterkend leren in simulatie. Dit is niet zozeer opmerkelijk omdat een robot de oude puzzel heeft gekraakt, maar omdat de prestatie een nieuw niveau van behendigheid heeft aangenomen.

Dit is een heel moeilijk probleem, zegt Dmitry Berenson, een roboticus aan de Universiteit van Michigan die gespecialiseerd is in machinemanipulatie. Het soort manipulatie dat nodig is om de onderdelen van de Rubiks kubus te roteren is eigenlijk veel moeilijker dan het draaien van een kubus.

Dactyl met zijn vingers vastgebonden Dactyl draagt ​​een rubberen handschoen Dactyl wordt gepord door

Tijdens het testen heeft Dactyl de Rubiks kubus met succes opgelost, zelfs onder onverwachte omstandigheden.



Van de virtuele naar de fysieke wereld

Traditioneel zijn robots alleen in staat geweest om objecten op zeer eenvoudige manieren te manipuleren. Hoewel algoritmen voor het leren van versterking grote successen hebben geboekt bij het uitvoeren van complexe taken in software, zoals het verslaan van de beste menselijke speler in het oude spel Go, was het een ander verhaal om ze te gebruiken om een ​​fysieke machine te trainen. Dat komt omdat de algoritmen zichzelf met vallen en opstaan ​​moeten verfijnen - in veel gevallen miljoenen ronden. Het zou waarschijnlijk veel te lang duren, en veel slijtage, voor een fysieke robot om dit in de echte wereld te doen. Het kan zelfs gevaarlijk zijn als de robot wild rondrent om gegevens te verzamelen.

Om dit te voorkomen gebruiken robotici simulatie: ze bouwen een virtueel model van hun robot en trainen deze virtueel om de taak uit te voeren. Het algoritme leert in de veiligheid van de digitale ruimte en kan daarna worden overgezet naar een fysieke robot. Maar dat proces brengt zijn eigen uitdagingen met zich mee. Het is bijna onmogelijk om een ​​virtueel model te bouwen dat exact dezelfde wetten van fysica, materiaaleigenschappen en manipulatiegedrag in de echte wereld repliceert, laat staan ​​onverwachte omstandigheden. Dus hoe complexer de robot en de taak, hoe moeilijker het is om een ​​virtueel getraind algoritme toe te passen in de fysieke realiteit.

Dit is wat Kaelbling een jaar geleden indruk maakte op de resultaten van OpenAI. De sleutel tot het succes was dat het laboratorium de gesimuleerde omstandigheden in elke trainingsronde door elkaar gooide om het algoritme beter aan te passen aan verschillende mogelijkheden.



Ze hebben hun simulator op allerlei gekke manieren verprutst, zegt Kaelbling. Ze veranderden niet alleen hoeveel zwaartekracht er is, ze veranderden ook in welke richting de zwaartekracht wijst. Dus door te proberen een strategie te construeren die betrouwbaar werkte met al deze gekke permutaties van de simulatie, werkte het algoritme uiteindelijk in de echte robot.

In de laatste paper gaat OpenAI nog een stap verder met deze techniek. Voorheen moesten de onderzoekers de parameters in de omgeving randomiseren door met de hand te kiezen welke permutaties ze dachten dat ze tot een beter algoritme zouden leiden. Nu doet het opleidingssysteem dit zelf. Elke keer dat de robot een bepaald niveau van beheersing bereikt in de bestaande omgeving, past de simulator zijn eigen parameters aan om de trainingsomstandigheden nog moeilijker te maken.

Het resultaat is een nog robuuster algoritme dat met de precisie kan bewegen die nodig is om een ​​Rubiks kubus in het echte leven te roteren. Door middel van testen ontdekten de onderzoekers dat Dactyl de kubus ook met succes oploste onder verschillende omstandigheden waarop hij niet was getraind. Het was bijvoorbeeld in staat om de taak te voltooien terwijl hij een rubberen handschoen droeg, terwijl hij een paar vingers aan elkaar had gebonden en terwijl hij werd gepord door een knuffelgiraf.



Robots voor algemeen gebruik

OpenAI is van mening dat de nieuwste resultaten sterk bewijs leveren dat hun aanpak meer algemene robots zal ontgrendelen die zich kunnen aanpassen in open omgevingen zoals een thuiskeuken. Een Rubiks kubus is een van de meest gecompliceerde starre objecten die er zijn, zegt Marcin Andrychowicz van OpenAI. Ik denk dat andere objecten niet veel ingewikkelder zullen zijn.

Hoewel er complexere taken zijn waarbij meer objecten of vervormbare objecten betrokken zijn, zegt hij, heeft hij er vertrouwen in dat de methode van het laboratorium robots voor al deze objecten kan trainen: ik denk dat deze benadering is de aanpak van wijdverbreide adoptie van robotica.

Zowel Berenson als Kaelbling blijven echter sceptisch. Er kan de indruk zijn dat er één uniforme theorie of systeem is, en nu past OpenAI het gewoon toe op deze taak en die taak, zegt Berenson over het vorige en huidige artikel. Maar dat is helemaal niet wat er gebeurt. Dit zijn geïsoleerde taken. Er zijn gemeenschappelijke componenten, maar er is hier ook een enorme hoeveelheid techniek om elke nieuwe taak te laten werken.

Daarom voel ik me een beetje ongemakkelijk bij de beweringen dat dit leidt tot robots voor algemeen gebruik, zegt hij. Ik zie dit als een heel specifiek systeem bedoeld voor een specifieke toepassing.

Een deel van het probleem, meent Berenson, is het versterkende leren zelf. Van nature is de techniek ontworpen om één bepaald ding onder de knie te krijgen, met enige flexibiliteit voor het omgaan met variaties. Maar in de echte wereld gaat het aantal mogelijke variaties verder dan redelijkerwijs kan worden gesimuleerd. Bij een schoonmaaktaak kunt u bijvoorbeeld verschillende soorten dweil hebben, verschillende soorten gemorste vloeistoffen en verschillende soorten vloeren.

Reinforcement learning is ook ontworpen om nieuwe vaardigheden grotendeels vanaf nul te leren. Dat is niet efficiënt in robotica en evenmin trouw aan hoe mensen leren. Als je al een redelijk bekwaam mens bent en ik heb geprobeerd je een motorische vaardigheid te leren in de keuken - alsof je misschien nog nooit iets met een lepel hebt geklopt - is het niet alsof je je hele motoriek opnieuw moet leren, zegt Kaelbling .

Om verder te gaan dan deze beperkingen, stelt Berenson, zijn andere, meer traditionele robottechnieken nodig. Aan het eind van de dag zullen er enkele leerprocessen zijn - waarschijnlijk versterkend leren -, zegt hij. Maar ik denk dat die eigenlijk veel later zouden moeten komen.

Meld u aan voor onze Webby-genomineerde AI-nieuwsbrief The Algorithm om meer van dit soort verhalen rechtstreeks in uw inbox te ontvangen. Het is gratis.

zich verstoppen