Una mano robotica risolve un cubo di Rubik

I ricercatori di OpenAI hanno sviluppato un nuovo metodo di addestramento degli algoritmi per trasferire abilità di manipolazione complesse da ambienti simulati a ambienti fisici.

di Karen Hao

Oltre un anno fa, OpenAI, il laboratorio di ricerca sull’intelligenza artificiale con sede a San Francisco, ha annunciato di aver addestrato una mano robotica a manipolare un cubo con notevole destrezza.

La notizia non sembra sconvolgente. Ma nel mondo dell’IA ha lasciato il segno per due motivi. Innanzitutto, la mano aveva capito come muoversi con il cubo usando un algoritmo di apprendimento per rinforzo, una tecnica modellata sul modo di apprendere degli animali. In secondo luogo, tutto l’addestramento era stato svolto in un contesto di simulazione, ma ha avuto successo nel mondo reale. In entrambi i casi, è stato un passo importante verso robot più agili per applicazioni industriali e di consumo.

Mano robotica con dita intrecciateOpenAI

“Ero un po’ stupito”, dice Leslie Kaelbling, un esperto di robotica e professore al MIT, di quanto visto. “Non avrei mai immaginato che potesse funzionare.”

In un nuovo articolo, OpenAI ha pubblicato gli ultimi risultati ottenuti con la sua mano robotica, Dactyl, che questa volta ha imparato a risolvere il cubo di Rubik con una mano, sempre attraverso l’apprendimento per rinforzo in situazione di simulazione. Il risultato è di grande valore non tanto per la soluzione del problema, ma per il livello di destrezza raggiunto dal robot.

Dmitry Berenson, un esperto di robotica dell’Università del Michigan afferma che: “Il tipo di manipolazione richiesta per ruotare le parti del cubo di Rubik è in realtà molto più complessa della semplice rotazione di un cubo”.

Dal mondo virtuale a quello fisico

Tradizionalmente, i robot sono stati in grado di manipolare gli oggetti in modo molto semplice. Mentre gli algoritmi di apprendimento per rinforzo hanno conseguito una serie di successi in compiti complessi nell’ambito del software, come battere il miglior giocatore umano nell’antico gioco del Go, usarli per addestrare una macchina che si muove nel mondo reale è tutt’altra storia, perché gli algoritmi devono perfezionarsi attraverso tentativi ed errori, in molti casi milioni di tentativi.

Mano robotica con un guanto di gommaOpenAI

Nella vita normale, questi passaggi richiederebbero troppo tempo e molta usura per un robot fisico e potrebbero anche essere pericolosi se il robot si muovesse in modo incontrollato per raccogliere i dati.

Per evitare queste situazioni difficili, gli esperti di robotica usano la simulazione: costruiscono un modello virtuale del loro robot e lo addestrano a svolgere teoricamente un compito. L’algoritmo apprende nella sicurezza dello spazio digitale e può essere successivamente trasferito in un robot fisico.

Ma questo modo di procedere deve affrontare alcune sfide. È quasi impossibile costruire un modello virtuale che replichi esattamente tutte le leggi della fisica, delle proprietà dei materiali e dei comportamenti di manipolazione nel mondo reale, per non parlare delle circostanze inaspettate. Pertanto, più il robot e il compito sono complessi, più è difficile applicare alla realtà fisica un algoritmo addestrato in situazioni di simulazione.

Per queste ragioni, Kaelbling è rimasto stupito dei risultati di OpenAI un anno fa. La chiave del successo è stata che il laboratorio ha modificato continuamente le condizioni simulate in ogni ciclo di allenamento per rendere l’algoritmo più adattabile alle diverse possibilità.

“Hanno modificato tutti i parametri, cercando una strategia che fosse affidabile di frinte a tanti cambiamenti. Alla fine l’’algoritmo ha funzionato nel modello finale di robot”, spiega Kaelbling.

Nel nuovo articolo, OpenAI illustra come questa tecnica abbia fatto un ulteriore passo avanti. In precedenza, i ricercatori dovevano randomizzare i parametri nell’ambiente, selezionando manualmente quali permutazioni pensavano avrebbero portato a un algoritmo migliore. Ora, il sistema di addestramento lo fa in autonomia. Ogni volta che il robot raggiunge un certo livello di padronanza nell’ambiente, il simulatore modifica i propri parametri per rendere le condizioni di allenamento ancora più difficili.

Il risultato è un algoritmo ancora più efficace che può muoversi con la precisione richiesta per ruotare il cubo di Rubik nella attività reale. Attraverso i test, i ricercatori hanno scoperto che Dactyl ha anche risolto con successo il cubo in varie condizioni per le quali non era stato addestrato. Per esempio, è stato in grado di completare l’attività indossando un guanto di gomma, tenendo le dita unite insieme e disturbato da una giraffa di peluche.

Robot multiuso

OpenAI ritiene che i risultati più recenti dimostrino chiaramente che il loro approccio favorirà lo sviluppo di robot multiuso in grado di muoversi in ambienti aperti come una cucina domestica. “Non credo ci siano molti altri oggetti più complessi del cubo di Rubik. Penso che il nostro metodo apra la strada all’adozione diffusa della robotica”, afferma Marcin Andrychowicz di OpenAI.

Mano robotica disturbata da una giraffa di pelucheOpenAI

Sia Berenson che Kaelbling, tuttavia, rimangono scettici. “Si può credere che esista un sistema unico da applicare di volta in volta a un compito”, spiega Berenson, “ma non è affatto così. Si tratta di compiti isolati, alla cui base ci sono componenti comuni, ma anche un lavoro di progettazione notevole per far funzionare ogni nuova attività”.

Per questa ragione non me la sento di condividere le posizioni ottimistiche sull’adozione dei robot multiuso”, continua Berenson. “Vedo invece un sistema specifico pensato per un’applicazione specifica”.

Parte del problema, ritiene Berenson, è legato all’apprendimento per rinforzo. La tecnica è progettata per padroneggiare una attività particolare, con una certa flessibilità nella gestione delle variazioni. Ma nel mondo reale, il numero di potenziali variazioni si estende oltre ciò che può essere ragionevolmente simulato. In un’attività di pulizia, per esempio, ci si potrebbe trovare dinanzi a diversi tipi di pavimenti e di moci.

L’apprendimento per rinforzo è anche progettato per acquisire nuove capacità partendo in gran parte da zero. Ciò non è né efficiente in robotica né vero per l’apprendimento umano. “Se si cerca di insegnare a un essere umano come si prepara una frittata, non dovrò spiegargli tutti i movimenti che deve fare fin dall’inizio,” dice Kaelbling.

Andare oltre questi limiti, sostiene Berenson, richiederà altre tecniche robotiche più tradizionali. “Solo alla fine del processo”, egli conclude “si utilizzerà anche l’apprendimento per rinforzo”.

Immagine: Open AI

(rp)

Related Posts
Total
0
Share