What Matters for Simulation to Online Reinforcement Learning on Real Robots
Attraverso uno studio empirico su larga scala che coinvolge 100 sessioni di addestramento reali su tre piattaforme robotiche, questo articolo identifica scelte di progettazione specifiche e robuste che consentono un apprendimento per rinforzo online stabile su robot fisici, smentendo al contempo l'efficacia di certi parametri predefiniti ampiamente utilizzati.
Articolo originale sotto licenza CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Questa è una spiegazione generata dall'IA dell'articolo qui sotto. Non è stata scritta né approvata dagli autori. Per precisione tecnica, consulta l'articolo originale. Leggi il disclaimer completo
Immagina di insegnare a un robot a camminare, a prendere una tazza o a guidare un'auto. Per molto tempo, gli scienziati hanno cercato di farlo lasciando che il robot si esercitasse milioni di volte all'interno di un mondo di videogiochi: un simulatore digitale perfetto. È come un pilota che si addestra in un simulatore di volo: sicuro, veloce ed economico. Ma c'è un problema. Il mondo reale è disordinato. I pavimenti non sono perfettamente lisci, gli pneumatici scivolano in modi che il computer non aveva previsto e le telecamere vedono le cose diversamente da un render digitale. Quando prendi un robot addestrato in un videogioco perfetto e lo metti su un pavimento reale, spesso inciampa, fa cadere oggetti o si schianta. Questo divario tra il gioco "perfetto" e la realtà "disordinata" è l'ostacolo più grande nella robotica.
Per risolvere questo problema, i ricercatori utilizzano una tecnica chiamata Reinforcement Learning (RL - Apprendimento per Rinforzo). Pensa all'RL come a uno studente molto determinato che impara per tentativi ed errori. Il robot prova un'azione, riceve un "premio" (come un punto per il successo) o una "punizione" (come uno schianto) e regola il suo cervello per fare meglio la volta successiva. La grande domanda è: possiamo lasciare che questo robot impari mentre si sta effettivamente muovendo sul pavimento reale, non solo nel gioco? Questo è chiamato "apprendimento online". È il santo graal perché significa che i robot potrebbero adattarsi a nuove situazioni istantaneamente, come un essere umano che impara a cavalcare una bicicletta su un sentiero sconnesso dopo aver praticato solo su uno liscio. Ma finora, cercare di insegnare a un robot in questo modo su hardware reale è stato rischioso, instabile e spesso uno spreco di tempo e denaro.
Questo articolo, scritto da ricercatori dell'ETH di Zurigo e di Google DeepMind, pone una domanda molto pratica: "Se abbiamo già un robot che ha imparato in un simulatore, quali impostazioni specifiche dobbiamo regolare per farlo apprendere in modo sicuro e con successo nel mondo reale?". Non hanno inventato un nuovo algoritmo magico. Invece, hanno agito come meccanici, prendendo strumenti di apprendimento standard e pronti all'uso e testando oltre 100 diverse sessioni di addestramento su tre robot molto diversi: un braccio robotico (Franka Emika Panda), un robot quadrupede (Unitree Go1) e un'auto da corsa telecomandata.
Hanno scoperto che le solite impostazioni "predefinite" per questi robot che apprendono sono in realtà pericolose quando si passa dalla simulazione alla realtà. Se colleghi semplicemente un cervello addestrato in un simulatore a un robot reale e inizi subito l'apprendimento, il robot spesso dimentica tutto ciò che sapeva e scivola nel caos. Gli autori hanno scoperto che questo accade perché il "critico" del robot (la parte che giudica quanto sia buona un'azione) si confonde a causa del improvviso cambiamento della fisica. Per fermare questo, hanno sviluppato una ricetta semplice e affidabile.
In primo luogo, hanno scoperto che è necessario mantenere una "memoria" dei vecchi dati del simulatore mescolata con i nuovi dati del mondo reale. È come tenere un libro di testo aperto mentre si fa i compiti; se getti via il libro nel momento in cui inizi, potresti dimenticare le regole base. In secondo luogo, hanno scoperto che il robot ha bisogno di un periodo di "riscaldamento" in cui si esercita alcune volte con il suo vecchio cervello del simulatore prima di essere autorizzato a cambiare idea. Infine, e cosa più importante, hanno scoperto che il "cervello" del robot (la parte che decide cosa fare) deve aggiornarsi molto più lentamente rispetto al suo "giudizio" (la parte che impara dagli errori). Se il cervello cambia troppo velocemente, si confonde a causa del mondo reale disordinato. Rallentando gli aggiornamenti del cervello e mantenendo costante il giudizio, il robot può imparare a afferrare cubi, camminare senza cadere e parcheggiare un'auto da corsa con alta precisione, il tutto in soli pochi minuti di addestramento nel mondo reale.
L'articolo dimostra che con questi aggiustamenti specifici e attenti, i metodi di apprendimento standard possono funzionare in modo affidabile su hardware reale. Non si sono limitati a simularlo; lo hanno testato su macchine reali, provando che non serve un nuovissimo super-algoritmo per far apprendere i robot nel mondo reale — basta essere più intelligenti su come si forniscono loro i dati e su quanto velocemente si permette loro di cambiare idea.
Sommerso dagli articoli nel tuo campo?
Ricevi digest giornalieri degli articoli più recenti corrispondenti alle tue parole chiave di ricerca — con riassunti tecnici, nella tua lingua.