Robotica e IA fisica

Gli ingegneri sviluppano uno strumento per migliorare qualsiasi sistema robotico autonomo

mm
Aggiungi Unite.AI alle tue fonti preferite su Google

Un team di ingegneri del MIT ha sviluppato un codice di ottimizzazione per migliorare qualsiasi sistema robotico autonomo. Il codice identifica automaticamente come e dove alterare un sistema per migliorare le prestazioni di un robot.

I risultati degli ingegneri saranno presentati alla conferenza annuale Robotics: Science and Systems di New York. Il team includeva Charles Dawson, studente di laurea del MIT, e ChuChu Fan, professore assistente nel Dipartimento di Aeronautica e Astronautica del MIT.

Progettazione di sistemi di intelligenza artificiale e robotica

L’intelligenza artificiale (AI) e i sistemi robotici sono utilizzati in una vasta gamma di settori, e ogni sistema è il risultato di un processo di progettazione specifico per il sistema in questione. Per progettare un robot autonomo, gli ingegneri si affidano a simulazioni basate su trial-and-error che sono spesso informate dall’intuizione. Allo stesso tempo, le simulazioni sono personalizzate per i componenti specifici del robot e i compiti assegnati, il che significa che non esiste una “ricetta” vera e propria per garantire un esito positivo.

Gli ingegneri del MIT stanno cambiando questo con il loro nuovo strumento di progettazione generale per robotici. Hanno sviluppato un codice di ottimizzazione che può essere applicato a simulazioni di quasi qualsiasi sistema robotico autonomo e aiuta a identificare automaticamente i modi in cui le prestazioni di un robot possono essere migliorate.

Lo strumento ha dimostrato la capacità di migliorare le prestazioni di due sistemi autonomi molto diversi. Il primo era un robot che navigava un percorso tra due ostacoli, e il secondo era una coppia di robot che lavoravano insieme per spostare una scatola pesante.

Secondo i ricercatori, questo nuovo ottimizzatore generico potrebbe aiutare ad accelerare lo sviluppo di una vasta gamma di sistemi autonomi, come ad esempio robot bipedi o veicoli a guida autonoma.

Dawson e Fan hanno affermato di aver capito la necessità di questo tipo di strumento dopo aver osservato gli altri strumenti di progettazione automatizzati disponibili per altre discipline ingegneristiche.

“Se un ingegnere meccanico volesse progettare una turbina eolica, potrebbe utilizzare uno strumento di progettazione 3D per progettare la struttura, quindi utilizzare uno strumento di analisi agli elementi finiti per verificare se resisterà a determinati carichi”, afferma Dawson. “Tuttavia, mancano questi strumenti di progettazione assistita da computer per sistemi autonomi.”

Per ottimizzare un sistema autonomo, un robotista di solito sviluppa prima una simulazione del sistema e dei suoi sottosistemi interagenti, quindi prende determinati parametri di ogni componente. La simulazione viene quindi eseguita in avanti per vedere come il sistema si sarebbe comportato.

Deve essere eseguito più volte un processo di trial-and-error prima che la combinazione ottimale di ingredienti possa essere determinata, e ciò è un’impresa lunga e noiosa.

“Invece di dire: ‘Data una progettazione, qual è la prestazione?’ abbiamo voluto invertire questo per dire: ‘Data la prestazione che vogliamo vedere, qual è la progettazione che ci porta lì?'” afferma Dawson.

Il framework di ottimizzazione, o codice del computer, è stato progettato per trovare automaticamente le modifiche che possono essere apportate a un sistema esistente. Il codice si basa sulla differenziazione automatica, che è uno strumento di programmazione inizialmente utilizzato per addestrare le reti neurali. Chiamato anche “autodiff”, questa tecnica aiuta a valutare rapidamente e efficientemente la “derivata”, o la sensibilità al cambiamento di qualsiasi parametro.

“Il nostro metodo ci dice automaticamente come fare piccoli passi da una progettazione iniziale a una progettazione che raggiunge i nostri obiettivi”, afferma Dawson. “Utilizziamo l’autodiff per scavare nel codice che definisce un simulatore e scoprire come fare questa inversione automaticamente.”

 

Test del tool

Lo strumento è stato testato su due sistemi robotici autonomi separati e ha migliorato le prestazioni di ciascun sistema negli esperimenti di laboratorio. Mentre il primo sistema consisteva in un robot a ruote progettato per pianificare un percorso tra due ostacoli, è stato il secondo sistema a essere veramente impressionante.

Il secondo sistema era più complesso, con due robot a ruote che lavoravano insieme per spingere una scatola verso una posizione di destinazione, il che significa che la simulazione includeva molti più parametri. Lo strumento è stato in grado di identificare efficientemente i passaggi necessari per i robot per eseguire il loro compito e il processo di ottimizzazione è stato 20 volte più veloce delle tecniche convenzionali.

“Se il tuo sistema ha più parametri da ottimizzare, il nostro strumento può fare ancora meglio e può risparmiare esponenzialmente più tempo”, afferma Fan. “È fondamentalmente una scelta combinatoria: man mano che aumenta il numero di parametri, aumentano le scelte e il nostro approccio può ridurre questo in un colpo solo.”

L’ottimizzatore generico è disponibile per il download e il team cercherà ora di perfezionarlo ulteriormente, il che lo renderà utile per sistemi più complessi.

“Il nostro obiettivo è quello di potenziare le persone per costruire robot migliori”, afferma Dawson. “Stiamo fornendo un nuovo blocco di costruzione per ottimizzare il loro sistema, in modo che non debbano iniziare da zero.”

Alex McFarland è un giornalista e scrittore di intelligenza artificiale che esplora gli ultimi sviluppi nel campo dell'intelligenza artificiale. Ha collaborato con numerose startup di intelligenza artificiale e pubblicazioni in tutto il mondo.