Open Source Robotics

Una raccolta curata di progetti, strumenti e software di robotica open source di alta qualità per la comunità della robotica.

Deep Drone Racing: Learning Agile Flight in Dynamic Environments

Autori: Elia Kaufmann, Antonio Loquercio, René Ranftl, Alexey Dosovitskiy, Vladlen Koltun, Davide Scaramuzza · CoRL 2018

Licenze

  • Open access
  • Articolo: CC BY 4.0

Tutto ciò che segue si basa sull'articolo completo secondo la sua licenza CC BY 4.0; la figura è riportata citando gli autori.

In breve

Una CNN mappa un'immagine della telecamera di bordo in una direzione obiettivo e una velocità; un pianificatore a minimo jerk e un controller classico fanno volare il quadrirotore, che così percorre tracciati con porte in movimento senza mappa né posa globale.

Perché è importante

La stabilità resta affidata a un controller classico mentre la rete gestisce solo la percezione, così la parte appresa può girare a circa 10 Hz su un piccolo computer di bordo. Poiché i comandi sono dati nel sistema di riferimento del corpo, il sistema non soffre della deriva che colpisce le baseline di odometria visivo-inerziale ad alta velocità.

Problema

Un drone da corsa che segue una traiettoria globale precalcolata richiede una stima dello stato molto accurata, e la localizzazione di tipo SLAM subisce deriva con il mosso e le forti accelerazioni. Questi metodi presuppongono inoltre un mondo statico, quindi i waypoint non possono essere fissati in anticipo quando le porte si muovono.

Soluzione proposta

Una CNN basata su ResNet prende un'immagine RGB di 300 × 200 e restituisce una direzione obiettivo in coordinate immagine normalizzate più una velocità normalizzata. L'obiettivo viene retroproiettato in un punto 3D, si calcola una traiettoria di intercettazione dello stato a minimo jerk per raggiungerlo, e un controller di basso livello esistente la segue, ricalcolata a orizzonte recedente. La rete è addestrata imitando un esperto che segue una traiettoria globale a minimo snap, con dati da diverse disposizioni delle porte così da gestire porte che si muovono durante il test.

Idee chiave

  • Prevedere un waypoint e una velocità, invece delle velocità angolari del corpo, permette a un controller classico di mantenere stabile il quadrirotore; un regressore end-to-end delle velocità angolari non è riuscito a superare più di una porta in simulazione
  • L'addestramento su diverse disposizioni statiche delle porte è bastato perché la policy volasse attraverso porte che si muovono durante il volo
  • La policy appresa non è limitata dalle sue dimostrazioni: gestisce porte in movimento, cosa che l'esperto che imita non sa fare
  • I dati di addestramento nel mondo reale si possono raccogliere in sicurezza portando a mano il quadrirotore lungo il tracciato mentre l'esperto etichetta ogni immagine
  • Una sola rete addestrata copre un intervallo di aggressività, poiché l'utente scala la velocità prevista con una velocità massima scelta

Risultati principali

  • Simulazione, tracciato di 8 porte e 116 m: il metodo completa il compito in modo affidabile fino a una velocità massima di 9 m/s, degradando gradualmente a velocità maggiori; la baseline VIO fallisce per la deriva accumulata. La sezione 4.2 indica cinque prove per configurazione, mentre la didascalia della Figura 4 indica 10 prove per velocità
  • Simulazione con porte in movimento a 8 m/s: nessuno schianto con spostamenti della porta fino a 1,5 volte il suo diametro, mentre la baseline VIO fallisce anche per piccoli movimenti della porta
  • Test reale di passaggio stretto: la rete ha superato la porta nel 100 %, 80 % e 20 % delle prove da angoli iniziali di 0–30°, 30–70° e 70–90° (porta invisibile all'inizio nell'ultimo intervallo), contro il 70 %, 0 % e 0 % di un rilevatore di finestre progettato a mano
  • Test reale di occlusione: l'approccio è stato robusto a occlusioni fino al 50 % dell'area della porta, mentre la baseline progettata a mano ha ceduto con occlusioni moderate
  • Tracciato reale di 4 porte e 21 m: tasso di successo e velocità maggiori di una baseline di pianificazione e inseguimento basata su VIO; i piloti umani professionisti e intermedi sono stati più veloci ma si sono schiantati più spesso
  • Confronto in simulazione: la baseline end-to-end delle velocità angolari non ha mai superato più di una porta su un tracciato di 4 porte e 43 m, anche con 35k campioni di addestramento contro 5k del metodo proposto

Limiti

  • Le prestazioni peggioreranno se l'aspetto dell'ambiente cambia in modo sostanziale oltre quanto visto in addestramento
  • Addestrare il sistema di percezione richiede una quantità significativa di dati raccolti nell'ambiente di applicazione
  • Dove l'ottimizzazione della traiettoria non può fornire una policy da imitare, per esempio in curve estremamente strette, è probabile che anche l'apprendista fallisca
  • Oltre 9 m/s in simulazione, la frequenza di predizione limitata (30 Hz) non riesce a stare al passo con le grandi velocità di rollio e beccheggio
  • I piloti umani hanno completato il tracciato reale più velocemente, con manovre più agili nelle curve strette su cui il sistema non sa ancora ragionare

Impatto sul settore

Vincitore del CoRL 2018 Best Systems Paper Award, con 166 citazioni. L'articolo rimanda a un video supplementare; non rilascia codice né dati.

Abstract

Il volo agile autonomo pone sfide fondamentali in robotica, come gestire una stima dello stato inaffidabile, reagire in modo ottimale ad ambienti che cambiano dinamicamente e accoppiare percezione e azione in tempo reale con forti vincoli di risorse. In questo articolo consideriamo queste sfide nel contesto delle gare di droni autonome basate sulla visione in ambienti dinamici. Il nostro approccio combina una rete neurale convoluzionale (CNN) con un sistema di pianificazione del percorso e di controllo allo stato dell'arte. La CNN mappa direttamente le immagini grezze in una rappresentazione robusta sotto forma di un waypoint e di una velocità desiderata. Questa informazione viene poi usata dal pianificatore per generare un breve segmento di traiettoria a minimo jerk e i corrispondenti comandi ai motori per raggiungere l'obiettivo desiderato. Dimostriamo il nostro metodo in scenari di volo agile autonomo, in cui un quadrirotore basato sulla visione percorre tracciati di gare di droni con porte che possono essere in movimento. Il nostro metodo non richiede alcuna mappa esplicita dell'ambiente e funziona interamente a bordo. Testiamo estesamente la precisione e la robustezza dell'approccio in simulazione e nel mondo fisico. Valutiamo inoltre il nostro metodo rispetto ad approcci di navigazione allo stato dell'arte e a piloti di droni umani professionisti.

Link

  • arXiv 1806.08548: https://arxiv.org/abs/1806.08548
  • DOI 10.48550/arXiv.1806.08548: https://doi.org/10.48550/arXiv.1806.08548
  • PDF: http://proceedings.mlr.press/v87/kaufmann18a/kaufmann18a.pdf

Questo sito richiede JavaScript. Attiva JavaScript per esplorare i nostri progetti di robotica open source.