Vai al contenuto

Progetto concluso · Droni e intelligenza artificiale

StratoPilot

Abbiamo progettato il software di un drone che vede, si orienta e sceglie da solo il percorso.

di software: decidere, orientarsi, volare
3 livelli
il modello per riconoscere gli incendi
YOLOv8
per trovare il percorso più breve
PRM e A*
per collegare i moduli
ROS 2

Per chi viene da informatica, ingegneria aerospaziale

Tre livelli

StratoPilot voleva un drone capace di fare da solo tre tipi di missione, dal più semplice al più difficile: sorvegliare e mappare l’ambiente, trasportare farmaci o merci, aiutare nei soccorsi. Il software è diviso in tre livelli, ognuno seguito da almeno uno studente di laurea magistrale.

  • 01

    Alto livello

    Decide cosa fare e guarda: la visione riconosce gli incendi, una macchina a stati sceglie la mossa successiva.

  • 02

    Medio livello

    Costruisce la mappa, capisce dove si trova il drone e calcola la traiettoria.

  • 03

    Basso livello

    Trasforma la traiettoria nelle correnti dei motori.

Vedere gli incendi

Per la visione abbiamo scelto YOLOv8, un modello di Ultralytics che trova e riquadra gli oggetti in un’immagine, già addestrato su 80 categorie di oggetti comuni. Lo abbiamo addestrato di nuovo su immagini satellitari di incendi, a colori e all’infrarosso.

L’addestramento è girato su un computer personale: 5 epoche in una notte. La confidenza delle risposte stava fra il 30 e il 40%. La confidenza però non è una misura di accuratezza: dice quanto il modello è sicuro, non quanto spesso ha ragione, e i numeri di accuratezza non li abbiamo misurati.

La mappa e il percorso

Per sapere dove si trova e com’è fatto il terreno, il drone usa un LiDAR e l’algoritmo DFLIOM, che costruisce la mappa come nuvola di punti. Una rete neurale sceglie solo i punti utili ad allineare una scansione con la successiva, circa uno su cinque.

Sulla mappa il percorso si cerca in due tempi. La Probabilistic Roadmap sparge punti liberi a caso e collega ognuno ai vicini raggiungibili: nasce un grafo di strade possibili. Poi A* trova sul grafo il percorso più breve.

aperti = {partenza}
g(partenza) = 0
finché aperti non è vuoto:
    n = il nodo di aperti con f(n) = g(n) + h(n) più piccolo
    se n è l’arrivo: ricostruisci il percorso e fermati
    togli n da aperti
    per ogni vicino m di n:
        costo = g(n) + distanza(n, m)
        se costo < g(m): g(m) = costo, ricorda che m viene da n, metti m in aperti
A*: g(n) è la strada già fatta, h(n) una stima di quella che manca. Se la stima non esagera mai, il percorso trovato è il più breve. Hart, Nilsson e Raphael, 1968.

Il pilota automatico

All’inizio pensavamo di scrivere da zero anche il pilota automatico. Dopo aver sentito alcuni professori abbiamo cambiato idea: sarebbe stato un lavoro enorme e inutile, perché esistono piloti automatici open source maturi. Abbiamo confrontato i due più usati, PX4 e ArduPilot.

Per far parlare fra loro visione, mappa, pianificazione e pilota automatico abbiamo scelto ROS 2, il sistema più diffuso per collegare i moduli di un robot.

I due piloti automatici
PX4open sourceospitato da Dronecode, della Linux Foundation
ArduPilotopen source, GPLv3dal 2009, su oltre un milione di veicoli

Il bilancio

Nell’estate del 2025 erano pronti i moduli dello schema di base: visione, mappa e localizzazione, pianificazione del percorso. Restavano fuori la macchina a stati delle decisioni e il coordinamento con altri droni.

Il passo successivo era collegare tutto con ROS 2 e cominciare le prove in simulazione, che però chiedevano un computer molto più potente di quelli che avevamo; abbiamo valutato di affittare potenza di calcolo in cloud. Il progetto si è chiuso lì.

Com’è andata

  1. 10 marzo 2025Abbiamo presentato il progetto a Palazzo della Borsa.
  2. Marzo 2025Un corso interno di machine learning: teoria dell’apprendimento e reti neurali in PyTorch.
  3. Estate 2025Pronti i moduli di visione, mappa e percorso. Mancavano l’integrazione con ROS 2 e le prove, per cui serviva un computer più potente.

Video

Il volo autonomo con l’intelligenza artificialeIl progetto raccontato all’evento inaugurale di DOPE, dicembre 2025

Persone del progetto

Con chi lo facciamo

  • Università di Genova

Tutti i partner

Fonti

  • Report del progetto StratoPilot, 2025.
  • Ultralytics, documentazione di YOLOv8.
  • Dong e colleghi, LiDAR Inertial Odometry And Mapping Using Learned Registration-Relevant Features, arXiv:2410.02961, 2024.
  • Kavraki, Švestka, Latombe e Overmars, Probabilistic roadmaps, IEEE Transactions on Robotics and Automation, 1996.
  • Hart, Nilsson e Raphael, A Formal Basis for the Heuristic Determination of Minimum Cost Paths, 1968.
  • px4.io; ardupilot.org.

Il progetto è concluso

Quello che abbiamo imparato continua nei progetti in corso.

Guarda i progetti in corso