Robotik och fysisk AI
Ingenjörer utvecklar verktyg för att förbättra alla autonoma robotiska system
Ett team av ingenjörer vid MIT har utvecklat en optimeringskod för att förbättra alla autonoma robotiska system. Koden identifierar automatiskt hur och var man kan ändra på systemet för att förbättra en robots prestanda.
Ingenjörernas fynd ska presenteras på den årliga Robotics: Science and Systems-konferensen i New York. Teamet bestod av Charles Dawson, MIT-student, och ChuChu Fan, biträdande professor i MIT:s avdelning för aeronautik och astronautik.
Design av AI och robotiska system
Artificiell intelligens (AI) och robotiska system används inom en mängd olika branscher, och varje system är resultatet av en designprocess som är specifik för det enskilda systemet. För att designa en autonom robot förlitar sig ingenjörer på simuleringsförsök som ofta styrs av intuition. Samtidigt är simuleringarna anpassade till de specifika komponenterna i roboten och dess tilldelade uppgifter, vilket innebär att det inte finns något riktigt “recept” för att säkerställa ett lyckat resultat.
De ingenjörer vid MIT förändrar detta med sitt nya allmänna designverktyg för robottekniker. De utvecklade en optimeringskod som kan tillämpas på simuleringar av nästan alla autonoma robotiska system, och den hjälper till att automatiskt identifiera sätten som en robots prestanda kan förbättras.
Verktyget visade sig kunna förbättra prestandan hos två mycket olika autonoma system. Det första systemet bestod av en robot som navigerade en väg mellan två hinder, och det andra systemet bestod av två robotar som arbetade tillsammans för att flytta en tung låda.
Enligt forskarna kan denna nya allmänna optimerare hjälpa till att påskynda utvecklingen av en mängd olika autonoma system, såsom gående robotar eller självkörande fordon.
Dawson och Fan sa att de insåg behovet av ett sådant verktyg efter att ha observerat de olika automatiserade designverktygen som finns tillgängliga för andra ingenjörsdiscipliner.
“Om en maskiningenjör ville designa en vindturbin, kunde de använda ett 3D-CAD-verktyg för att designa strukturen, sedan använda en finit-elementanalysverktyg för att kontrollera om den kommer att motstå vissa laster”, säger Dawson. “Men det finns ett underskott av dessa datorstödda designverktyg för autonoma system.”
För att optimera ett autonomt system utvecklar en robottekniker vanligtvis först en simulering av systemet och dess interagerande undersystem innan de tar vissa parametrar för varje komponent. Simuleringen körs sedan framåt för att se hur systemet skulle fungera.
Många försök med trial-and-error måste köras innan den optimala kombinationen av ingredienser kan bestämmas, och detta är ett tidskrävande företag.
“I stället för att säga ‘Givet ett design, vad är prestandan?’ ville vi vända på detta till att säga ‘Givet den prestanda vi vill se, vad är designen som tar oss dit?'” säger Dawson.
Optimeringsramverket, eller datorkoden, utvecklades för att automatiskt hitta justeringar som kan göras på ett befintligt system. Koden baseras på automatisk differentiering, som är ett programmeringsverktyg som ursprungligen användes för att träna neuronnät. Även kallad “autodiff”, hjälper denna teknik till att snabbt och effektivt “utvärdera derivatan”, eller känsligheten för förändring av vilken parameter som helst.
“Vår metod berättar automatiskt för oss hur vi kan ta små steg från en initial design mot en design som uppnår våra mål”, säger Dawson. “Vi använder autodiff för att i princip gräva in i koden som definierar en simulator, och ta reda på hur man kan göra denna inversion automatiskt.”
Testning av verktyget
Verktyget testades på två separata autonoma robotiska system, och det förbättrade varje systems prestanda i laboratorieförsök. Medan det första systemet bestod av en hjulburen robot som var utformad för att planera en väg mellan två hinder, var det andra systemet som verkligen imponerade.
Det andra systemet var mer komplext med två hjulburna robotar som arbetade tillsammans för att flytta en låda mot en målposition, vilket innebar att simuleringen innehöll många fler parametrar. Verktyget kunde effektivt identifiera de steg som behövdes för robotarna för att utföra sin uppgift, och optimeringsprocessen var 20 gånger snabbare än konventionella tekniker.
“Om ditt system har fler parametrar att optimera, kan vårt verktyg göra ännu bättre och kan spara exponentiellt mer tid”, säger Fan. “Det är i princip ett kombinatoriskt val: ju fler parametrar, desto fler val, och vår metod kan minska detta på ett enda steg.”
Den allmänna optimeraren är tillgänglig för nedladdning, och teamet kommer nu att fortsätta att förbättra den, vilket kommer att göra den användbar för mer komplexa system.
“Vårt mål är att ge människor möjlighet att bygga bättre robotar”, säger Dawson. “Vi tillhandahåller en ny byggsten för att optimera deras system, så att de inte behöver börja från scratch.”












