Robotica en fysieke AI
Ingenieurs ontwikkelen tool om elke autonome robotische systeem te verbeteren
Een team van ingenieurs aan het MIT heeft een optimalisatiecode ontwikkeld om elke autonome robotische systeem te verbeteren. De code identificeert automatisch hoe en waar een systeem moet worden gewijzigd om de prestaties van een robot te verbeteren.
De bevindingen van de ingenieurs zullen worden gepresenteerd op de jaarlijkse Robotics: Science and Systems-conferentie in New York. Het team bestond uit Charles Dawson, een MIT-student, en ChuChu Fan, assistent-professor in de afdeling Aeronautica en Astronautica van het MIT.
Ontwerp van AI- en robotische systemen
Kunstmatige intelligentie (AI) en robotische systemen worden gebruikt in een breed scala aan industrieën, en elk systeem is het resultaat van een ontwerpproces dat specifiek is voor het betreffende systeem. Om een autonome robot te ontwerpen, vertrouwen ingenieurs op trial-and-error-simulaties die vaak worden geïnformeerd door intuïtie. Tegelijkertijd worden de simulaties aangepast aan de specifieke componenten van de robot en de daarvoor bestemde taken, wat betekent dat er geen echte “recept” is om een succesvol resultaat te garanderen.
De ingenieurs van het MIT veranderen dit met hun nieuwe algemene ontwerptool voor roboticisten. Zij ontwikkelden een optimalisatiecode die kan worden toegepast op simulaties van vrijwel elk autonoom robotisch systeem, en die helpt om automatisch de manieren te identificeren waarop de prestaties van een robot kunnen worden verbeterd.
Het instrument heeft aangetoond dat het de prestaties van twee heel verschillende autonome systemen kan verbeteren. Het eerste systeem bestond uit een robot met wielen die een pad tussen twee obstakels moest plannen, en het tweede systeem was een stel robots met wielen die samenwerkten om een zware doos te verplaatsen.
Volgens de onderzoekers kan deze nieuwe algemene optimizer helpen om de ontwikkeling van een breed scala aan autonome systemen te versnellen, zoals wandelrobots of zelfrijdende voertuigen.
Dawson en Fan zeiden dat ze de behoefte aan dit type instrument realiseerden nadat ze de verschillende andere geautomatiseerde ontwerptools zagen die beschikbaar waren voor andere ingenieursdisciplines.
“Als een mechanisch ingenieur een windturbine wilde ontwerpen, kon hij een 3D-CAD-instrument gebruiken om de structuur te ontwerpen, en vervolgens een finite-elementanalyse-instrument gebruiken om te controleren of deze weerstand kan bieden tegen bepaalde belastingen”, zegt Dawson. “Echter, er is een gebrek aan deze computer-aided design-instrumenten voor autonome systemen.”
Om een autonoom systeem te optimaliseren, ontwikkelt een roboticist meestal eerst een simulatie van het systeem en de interactie van subsystemen voordat hij bepaalde parameters van elk onderdeel neemt. De simulatie wordt vervolgens uitgevoerd om te zien hoe het systeem zou presteren.
Meerdere trial-and-error-processen moeten worden uitgevoerd voordat de optimale combinatie van ingrediënten kan worden bepaald, en dit is een tijdrovende onderneming.
“In plaats van te zeggen: ‘Gegeven een ontwerp, wat is de prestatie?’ wilden we dit omkeren en zeggen: ‘Gegeven de prestatie die we willen zien, wat is het ontwerp dat ons daar brengt?'” zegt Dawson.
Het optimalisatiekader, of computercode, was ontworpen om automatisch aanpassingen te vinden die kunnen worden gemaakt in een bestaand systeem. De code is gebaseerd op automatische differentiatie, een programmeerinstrument dat oorspronkelijk werd gebruikt om neurale netwerken te trainen. Ook wel “autodiff” genoemd, helpt deze techniek om snel en efficiënt de “afgeleide”, of de gevoeligheid voor verandering van een parameter, te evalueren.
“Onze methode vertelt ons automatisch hoe we kleine stappen kunnen nemen van een initiële ontwerp naar een ontwerp dat onze doelen bereikt”, zegt Dawson. “We gebruiken autodiff om eigenlijk in de code te graven die een simulator definieert, en om te figureren uit hoe we deze inversie automatisch kunnen doen.”
Testen van het instrument
Het instrument werd getest op twee afzonderlijke autonome robotische systemen, en het verbeterde de prestaties van elk systeem in laboratoriumexperimenten. Terwijl het eerste systeem bestond uit een robot met wielen die een pad tussen twee obstakels moest plannen, was het tweede systeem meer complex met twee robots met wielen die samenwerkten om een zware doos naar een doelpositie te verplaatsen.
Het instrument kon efficiënt de stappen identificeren die nodig waren voor de robots om hun taak te voltooien, en het optimalisatieproces was 20 keer sneller dan conventionele technieken.
“Als uw systeem meer parameters heeft om te optimaliseren, kan ons instrument nog beter presteren en kan het exponentieel meer tijd besparen”, zegt Fan. “Het is eigenlijk een combinatorische keuze: naarmate het aantal parameters toeneemt, nemen de keuzes toe, en onze aanpak kan dit in één keer reduceren.”
De algemene optimizer is beschikbaar voor download, en het team zal nu verder werken aan het verfijnen ervan, wat het nuttig zal maken voor meer complexe systemen.
“Ons doel is om mensen in staat te stellen betere robots te bouwen”, zegt Dawson. “We bieden een nieuwe bouwsteen voor het optimaliseren van hun systeem, zodat ze niet van scratch hoeven te beginnen.”












