robot
  • Categoria dell'articolo:Tecnologia
  • Ultima modifica dell'articolo:7 Aprile 2023

La robotica, o più in generale l’arte di costruire automi, scuote ormai da secoli il nostro immaginario collettivo, da Talos, il gigante di bronzo dei miti antichi, al piccolo robot Astro di Osamu Tezuka le cui avventure furono pubblicate tra il 1952 e il 1968, via il Vaucanson flûteur costruito nel XVIII secolo, in grado di suonare diverse melodie su un flauto traverso.

I robot moderni, come quelli che possiamo trovare nelle fabbriche, sono relativamente molto recenti poiché il primo di essi, Unimate, iniziò a lavorare solo all’inizio degli anni ’60 sulle catene di montaggio della General Motors. E non è nel 1972 che “nasce WABOT-1”, il primo robot antropomorfo in grado di camminare su due gambe, percepire l’ambiente attraverso i suoi sensori visivi e portare oggetti tra le mani.

Al di là dell’interesse scientifico del problema della deambulazione, lo sviluppo della robotica con le gambe è motivato da diverse applicazioni promettenti: l’invecchiamento della popolazione nei paesi ricchi, ad esempio, alimenta l’idea dell’assistenza medica robotica per la casa; alcuni compiti industriali ardui o pericolosi potrebbero essere affidati a robot ambulanti, più versatili e più autonomi; infine, il soccorso delle persone nelle zone disastrate potrebbe essere facilitato dall’intervento di agili bipedi.

Infatti, per evolversi in ambienti pensati per l’uomo (con porte, scale, guardrail, ecc.), questi robot farebbero bene a camminare come noi.

Ma nonostante i recenti progressi nell’ingegneria, i robot che camminano sono ancora rari, il che è sorprendente, soprattutto considerando i progressi mozzafiato nelle aree adiacenti, come le capacità linguistiche delle intelligenze artificiali. Allora perché è così difficile insegnare a un robot a camminare?

Bipedismo, istintivo per i vivi ma molto complesso matematicamente

Negli esseri umani sani, camminare è un processo naturale a cui prestiamo poca attenzione su base giornaliera. I primi passi di un neonato si fanno generalmente tra i 10 ei 18 mesi, ben prima che sia in grado di cogliere la meccanica alla base del suo movimento. La capacità di camminare su due gambe è un’abilità che apprendiamo quasi da soli, imitando chi ci circonda e per tentativi ed errori. Per gli animali le cose sembrano ancora più semplici, visto che la maggior parte dei quadrupedi è in grado di camminare, saltare o correre solo poche ore dopo la nascita.

Tuttavia, la locomozione umana è un problema estremamente complicato dal punto di vista matematico, che comporta il controllo in tempo reale di circa 360 articolazioni e 640 muscoli, tenendo conto del baricentro, dell’equilibrio, degli appoggi, della vista…

Una raccolta di robot caduti alla “DARPA Robotics Challenge” (IEEE Spectrum).

In definitiva, mentre la robotica con le gambe funziona molto bene in laboratorio, dove i ricercatori possono controllare con precisione l’ambiente sperimentale, non è ancora abbastanza robusta per affrontare il caos e l’imprevedibilità del mondo reale.

Dividere il problema per risolverlo meglio

I primi risultati conclusivi sulla locomozione bipede dei robot sono stati ottenuti scomponendo il problema: pianificazione da un lato e controllo dall’altro.

Innanzitutto, la traiettoria da eseguire viene calcolata sulla base di tecniche di ottimizzazione che ridurranno al minimo un costo (ad esempio, il tempo di viaggio dal punto A al punto B) sotto determinati vincoli (ad esempio, non cadere). In una seconda fase, eseguiamo questa traiettoria e ci assicuriamo che il robot la segua anche in caso di disturbi o errori esterni.

In effetti, nei suoi primi giorni, la robotica non disponeva di computer abbastanza potenti da eseguire una pianificazione completa in tempo reale, come gli esseri umani. Per generare alcuni movimenti complessi, gli algoritmi di ottimizzazione potevano richiedere diversi secondi o addirittura minuti, e l’intero movimento doveva essere pianificato in anticipo.

Pianifica i tuoi movimenti come fanno gli umani

Lo svantaggio di questo approccio è che non consente al robot di modificare il proprio comportamento in caso di trasformazione improvvisa dell’ambiente (ad esempio un essere umano che gli passa davanti, un oggetto che cade sul percorso…): il sistema prova a seguire la traiettoria calcolata, qualunque cosa accada.

Ora sappiamo che gli umani, al contrario, tengono conto solo dei loro prossimi due o tre passi quando valutano la loro traiettoria (cioè uno o due secondi di anticipo).

I robotisti hanno quindi semplificato il problema della pianificazione, guardando solo a orizzonti temporali molto ravvicinati, in modo da poterlo risolvere molto rapidamente. Questo metodo, chiamato “controllo predittivo”, consiste nel calcolare una traiettoria desiderata per il robot, di cui verrà utilizzato solo il primo punto, ad esempio un gradino. Una volta fatto questo punto, la nuova traiettoria desiderata viene ricalcolata tenendo conto delle nuove informazioni a disposizione del robot: visione, sensori interni, istruzioni per l’utente, e che potrebbero ad esempio indicare la comparsa di un ostacolo.

Il robot bipede Atlas e le sue acrobazie. Fonte: Boston Dynamics.

Negli ultimi decenni, la potenza di calcolo dei computer è notevolmente aumentata, rendendo possibile l’implementazione di modelli più complessi. Possiamo ora prendere in considerazione la dinamica completa del corpo del robot all’interno dell’orizzonte di previsione. I metodi di controllo predittivo sono in particolare alla base delle impressionanti acrobazie del robot Atlas di Boston Dynamics.

Utilizzo dell'”apprendimento per rinforzo” per promuovere la locomozione

Nonostante i suoi vantaggi, il controllo predittivo rimane limitato dai vincoli in tempo reale della locomozione e dalle grandi dimensioni del problema da risolvere.

Ad esempio, i robotisti si sono recentemente interessati all ‘”apprendimento per rinforzo” e alla sua applicazione per il controllo dell’andatura. L’idea è quella di fissare una funzione di ricompensa rilevante (ad esempio, raggiungere un oggetto dietro una porta chiusa) e lasciare che il robot si muova sul simulatore fino a quando non riesce, per tentativi ed errori, a trovare il comportamento che massimizza la sua ricompensa.

L’approccio si ispira in gran parte al modo in cui i bambini imparano a muoversi, prima con gesti casuali, poi sempre più precisi, fino a diventare naturali e senza sforzo. Nonostante tutto, l’apprendimento per rinforzo rimane una tecnica costosa in termini di tempo di addestramento della macchina e i suoi risultati sono talvolta difficili da trasporre nella realtà. Lo dimostra l’andatura molto instabile calcolata dalla DeepMind AI di Google, che ha imparato a camminare da sola: la soluzione ottenuta funziona bene in simulazione ma sicuramente fallirebbe se fosse implementata su un vero robot.

Altri lavori suggeriscono di combinare il controllo predittivo e l’apprendimento per rinforzo: l’idea è costruire offline una memoria del movimento a cui il controllore potrebbe attingere per accelerare la sua convergenza quando incontra una situazione che richiede una reazione vivace e complessa, come un passo di lato per evitare di colpire una macchina. In questo contesto, il controllo predittivo serve ad adattare alle condizioni presenti un movimento già noto e acquisito, che poi non ha più bisogno di essere reinventato da zero.

Questa dialettica tra adattamento e memoria ricorda molto il funzionamento degli esseri umani, che impiegano meno tempo per svolgere un compito che hanno ripetuto molte volte in passato.

Autore

Ewen Dantec, INSA Tolosa