Software ontwerpt zelf de beste robots (video)

Stel, je hebt een robot nodig die trappen beklimt. Welke vorm moet die robot hebben? Moet hij twee benen hebben, als een mens? Of zes, als een mier? MIT-onderzoekers hebben software ontwikkelt die dit soort vragen zelf beantwoordt en op geleedpotigen geïnspireerde robots ontwerpt voor verschillende toepassingen.

Het kiezen van de juiste vorm is essentieel voor het vermogen van een robot om een ​​bepaald terrein te doorkruisen. En het is onmogelijk om elke mogelijke vorm te bouwen en te testen. Maar Robogrammar kan ze simuleren en zo bepalen welk ontwerp het beste werkt.

Eerst vertel je de software welke robotonderdelen je nog hebt – wielen, gewrichten enzovoorts. Je vertelt hem ook op welk terrein je robot moet navigeren. En RoboGrammar genereert een geoptimaliseerde structuur en besturingsprogramma.

"Robotontwerp is nog een zeer handmatig proces", zegt Allan Zhaohoofd, auteur van de paper over het onderzoek die deze maand wordt gepresenteerd op de SIGGRAPH Asia conferentie.

"Robots zijn gebouwd voor een bijna eindeloze verscheidenheid aan taken, maar ze lijken allemaal erg op elkaar in hun algehele vorm en ontwerp. Bijvoorbeeld: als je eraan denkt om een ​​robot te bouwen die verschillende terreinen moet oversteken, denk je al snel aan een viervoeter. Wij vroegen ons af of dat echt het optimale ontwerp is."

Basisregels

Het team van Zhao speculeerde dat een innovatiever ontwerp de functionaliteit zou kunnen verbeteren. Dus bouwden ze een computermodel voor deze taak – een systeem dat niet overmatig wordt beïnvloed door eerdere conventies. En hoewel inventiviteit het doel was, moest Zhao enkele basisregels opstellen.

"Het universum van mogelijke robotvormen is voornamelijk samengesteld uit onzinnige ontwerpen", zegt Zhao. "Als je de onderdelen gewoon op willekeurige manieren kunt verbinden, krijg je een warboel." Om dat te voorkomen, ontwikkelde zijn team een ​​’grafische grammatica’ – een reeks beperkingen voor de rangschikking van de componenten van een robot. Aangrenzende beensegmenten moeten bijvoorbeeld met een gewricht worden verbonden, niet met een ander beensegment. Dergelijke regels zorgen ervoor dat elk door de computer gegenereerd ontwerp werkt, althans op een rudimentair niveau.

Zhao zegt dat de regels van zijn grafische grammatica niet zijn geïnspireerd door andere robots, maar door dieren – met name geleedpotigen. Deze ongewervelde dieren zijn onder meer insecten, spinnen en kreeften. Als groep zijn geleedpotigen een evolutionair succesverhaal, goed voor meer dan 80 procent van de bekende diersoorten. "Ze worden gekenmerkt door een centraal lichaam met een variabel aantal segmenten. Aan sommige segmenten zijn mogelijk poten bevestigd. En we hebben gemerkt dat dat genoeg is om niet alleen geleedpotigen te beschrijven, maar ook meer bekende vormen, inclusief viervoeters."

Definiëren > oplossen > optimaliseren

Met behulp van de grafische grammatica werkt RoboGrammar in drie opeenvolgende stappen: het probleem definiëren, mogelijke robotoplossingen opstellen en vervolgens de optimale selecteren. De probleemdefinitie ligt grotendeels bij de menselijke gebruiker, die de set beschikbare robotcomponenten invoert, zoals motoren, benen en verbindingssegmenten. "Dat is de sleutel om ervoor te zorgen dat de uiteindelijke robots ook daadwerkelijk in de echte wereld kunnen worden gebouwd", zegt Zhao. De gebruiker specificeert ook de variëteit van het terrein dat moet worden doorkruist, waaronder combinaties van elementen zoals treden, vlakke gebieden of gladde oppervlakken.

Met deze invoer gebruikt RoboGrammar vervolgens de regels van de grafiekgrammatica om honderdduizenden potentiële robotstructuren te ontwerpen. Sommige zien er vaag uit als en raceauto. Anderen zien eruit als een spin, of een persoon die een push-up doet. "Het was behoorlijk inspirerend voor ons om de verscheidenheid aan ontwerpen te zien", zegt Zhao. "Het toont zeker de expressiviteit van de grammatica." Maar hoewel de grammatica de hoeveelheid kan doen toenemen, zijn de ontwerpen niet altijd van optimale kwaliteit.

Bovendien zijn het slechts structuren. Om het beste robotontwerp te kiezen, moet je de bewegingen van elke robot controleren en de functie ervan evalueren. Daartoe is het programma uitgerust met de ‘controller’: een set instructies die de structuren tot leven brengt en die de bewegingsvolgorde van de verschillende motoren van de robot bepaalt. Het team ontwikkelde voor elke robot een controller met een algoritme genaamd Model Predictive Control, dat prioriteit geeft aan snelle voorwaartse bewegingen.

"De vorm en de controller van de robot zijn diep met elkaar verweven", zegt Zhao, "daarom moeten we een controller voor elke robot afzonderlijk optimaliseren." Zodra elke gesimuleerde robot kan bewegen, zoeken de onderzoekers naar goed presterende robots met een ‘grafisch-heuristische zoekopdracht’. Dit neurale netwerkalgoritme neemt iteratief monsters en evalueert sets van robots, en het leert welke ontwerpen de neiging hebben om beter te werken voor een bepaalde taak. "De heuristische functie verbetert in de loop van de tijd", zegt Zhao, "en de zoektocht convergeert naar de optimale robot."

En dat allemaal in de tijd dat een mens nog geen schroevendraaier kan oppakken.