Gli animali appena nati, in natura, devono imparare a camminare velocemente per evitare i predatori. A parte i riflessi innati del midollo spinale per aiutare l’animale a evitare di cadere durante i loro tentativi iniziali, tendono ad apprendere in tempi relativamente brevi. Tuttavia, i dettagli di come accade non sono ancora ben compresi. Allora, perchè non costruire un robot a quattro zampe per capirne meglio i dettagli?
E’ proprio quello che hanno fatto i ricercatori della International Max Planck Research School for Intelligent Systems (IMPRS-IS). Per esplorare come gli animali imparano a camminare, hanno costruito un robot a quattro zampe delle dimensioni di un cane come parte di uno studio di ricerca orientato a conoscerne i dettagli. Il risultato è stato pubblicato sulla rivista Nature Machine Intelligence con il titolo “Learning plastic matching of robot dynamics in closed-loop central pattern generators”.
Chiamato Morti, il robot è costituito da quattro gambe biarticolari montate su un corpo in fibra di carbonio. Ogni gamba ha tre segmenti: femore, gambo e piede. I segmenti del femore e del piede sono collegati da un’articolazione del ginocchio caricata a molla per imitare la struttura muscolo-tendine biarticolare.
Per gli animali, imparare a coordinare in modo preciso muscoli e tendini richiede del tempo: inizialmente i cuccioli fanno molto affidamento su riflessi più basilari, che aiutano l’animale durante i primi tentativi di movimento, mentre il successivo controllo muscolare, quello più avanzato, necessita di un po’ di affinamento.
Sotto il cofano di Morti, troviamo dei sensori montati sui piedi per misurare il contatto con il suolo e diversi sensori di posizione e velocità. A guidare il tutto troviamo un algoritmo di ottimizzazione bayesiano che guida l’apprendimento utilizzando le informazioni del sensore del piede abbinate ai dati target di un midollo spinale modellato virtualmente, che viene eseguito come un’applicazione software su un computer.
Varie ottimizzazioni sono state implementate in sequenza su Morti, con prestazioni valutate confrontando continuamente le informazioni dei sensori inviate e previste e adattando in risposta i modelli di controllo del motore. Il robot ha iniziato a fare buon uso del meccanismo delle gambe dopo una durata di circa un’ora:
“Il nostro robot è praticamente ‘nato’ senza sapere nulla dell’anatomia delle gambe o di come funzionano (…) il CPG [generatore di pattern centrale] assomiglia a un’intelligenza di camminata automatica incorporata che la natura fornisce e che abbiamo trasferito al robot. Il computer produce segnali che controllano i motori delle gambe e il robot inizialmente cammina e inciampa. I dati rifluiscono dai sensori al midollo spinale virtuale dove vengono confrontati i dati del sensore e del CPG (…) Se i dati del sensore non corrispondono ai dati previsti, l’algoritmo di apprendimento modifica il comportamento di deambulazione finché il robot non cammina bene e senza inciampare. La modifica dell’output CPG mantenendo attivi i riflessi e monitorando l’inciampo del robot è una parte fondamentale del processo di apprendimento”
In futuro, i ricercatori intendono estendere il CPG tenendo conto del beccheggio del corpo quando si generano le traiettorie. Con un’unità di misura inerziale, il beccheggio del corpo potrebbe essere inserito nel CPG: nella formulazione attuale, il CPG non presuppone l’inclinazione del corpo e si basa sulla robustezza che l’elasticità passiva aggiunge al sistema per compensare l’inclinazione del corpo esistente.
Inoltre, Morti basa il suo funzionamento su hardware poco costoso (< €4.000) con bassa potenza di calcolo (5 W, quella richiesta da un Raspberry Pi) e con frequenze di controllo di 500 Hz (control loop) e sensori con frequenze più basse rispetto allo stato dell’arte di altri controller di locomozione basati su modelli più complessi e che richiedono un calcolo ad alta larghezza di banda e frequenze di controllo elevate.