Come insegnare a volare a un quadricottero

Foto di Chandler Cruttenden su Unsplash

È sorprendente come i quadricotteri siano cresciuti negli ultimi dieci anni. Ad esempio, ora siamo al punto in cui stanno per diventare usa e getta, almeno dal punto di vista commerciale o di ricerca: per poco più di 200 dollari si può acquistare negli Stati Uniti un piccolo drone da 27 grammi, gestito da software completamente open source, e perfettamente volante. Non bisogna fare altro che insegnargli a volare. È qui che le cose diventano un po’ più impegnative, perché insegnare ai droni a volare non è un processo semplice. Grazie a una buona simulazione e a tecniche come l’apprendimento per rinforzo, è molto più semplice conferire autonomia ai droni rispetto a prima. Ma in genere non è un processo veloce e può essere complicato effettuare una transizione graduale dalla simulazione alla realtà.

L’Agile Robotics and Perception Lab della New York University, in collaborazione con il Technology Innovation Institute (TII), è riuscito a semplificare il processo per poter far volare autonomamente i droni e a semplificarlo notevolmente: il sistema del laboratorio è in grado di addestrare un drone in simulazione dal nulla fino al volo stabile e controllabile in 18 secondi netti su un MacBook Pro. E in realtà ci vuole più tempo per compilare e installare il software di controllo utilizzato dall’uomo sul drone stesso rispetto all’intero processo di addestramento che gli insegna, ad esempio, come mantenere un volo stazionario stabile nonostante fattori esterni, come l’esempio il vento, ma come volare utilizzando traiettorie specifiche.

Una delle cose che, normalmente, rallenta i tempi di addestramento è il perfezionamento dei comandi per determinate modalità di volo. La strategia utilizzata in questo caso è quella che i ricercatori chiamano “curriculum” (una sorta di programma di lezioni) e che consiste nell’addestrare il sistema attraverso l’apprendimento per rinforzo. Il “curriculum” inizia con un approccio più indulgente e aumenta gradualmente per enfatizzare robustezza e affidabilità. È tutta una questione di efficienza: fare la formazione necessaria nel modo in cui deve essere fatta per ottenere i risultati desiderati, e non di più.

Esistono altri trucchi, più semplici, che ottimizzano questa tecnica anche per controllare la velocità, oltre che alla manovrabilità. Gli algoritmi di apprendimento con rinforzo profondo sono particolarmente efficienti e sfruttano l’accelerazione hardware fornita con i processori della serie M di Apple. L’efficienza della simulazione moltiplica i vantaggi dell’efficienza del campione basato sul “curriculum” che si addestra tramite rinforzo, portando a tempi di formazione incredibilmente veloci.

Questo approccio non si limita a semplici droni minuscoli: funzionerà praticamente su qualsiasi drone, compresi quelli più grandi e costosi, o anche su un drone che si può costruire autonomamente. E questi 18 secondi saranno sufficienti anche per droni più complessi, come quelli che arriveranno nel futuro. Ed il bello è che tutta la programmazione avviene tramite software open source. Quindi sarà possibile costruire un drone e insegnargli a volare con questo sistema.

I ricercatori stanno lavorando all’integrazione al software open source di comando automatico del drone PX4. A lungo termine, l’idea è quella di avere un’unica modalità di comando e di gestione in grado di adattarsi alle diverse condizioni ambientali, nonché alle diverse configurazioni dei velivoli, il che significa che potrebbe funzionare su tutti i tipi di robot volanti piuttosto che solo sui quadricotteri. Studenti, appassionati e neofiti avranno la possibilità di accedere a tecnologie ora impensabili.