Aller au contenu

Projet terminé · Drones et intelligence artificielle

StratoPilot

Nous avons conçu le logiciel d’un drone qui voit, s’oriente et choisit seul son chemin.

de logiciel : décider, s’orienter, voler
3 niveaux
le modèle pour reconnaître les incendies
YOLOv8
pour trouver le chemin le plus court
PRM et A*
pour relier les modules
ROS 2

Pour celles et ceux qui viennent de informatique, ingénierie aérospatiale

Trois niveaux

StratoPilot voulait un drone capable de faire seul trois types de mission, du plus simple au plus difficile : surveiller et cartographier l’environnement, transporter des médicaments ou des marchandises, aider lors des secours. Le logiciel est divisé en trois niveaux, chacun suivi par au moins un étudiant en master.

  • 01

    Haut niveau

    Décide quoi faire et regarde : la vision reconnaît les incendies, une machine à états choisit la prochaine action.

  • 02

    Niveau intermédiaire

    Construit la carte, comprend où se trouve le drone et calcule la trajectoire.

  • 03

    Bas niveau

    Transforme la trajectoire en courants moteurs.

Voir les incendies

Pour la vision nous avons choisi YOLOv8, un modèle d’Ultralytics qui trouve et encadre les objets dans une image, déjà entraîné sur 80 catégories d’objets courants. Nous l’avons réentraîné sur des images satellitaires d’incendies, en couleur et en infrarouge.

L’entraînement a tourné sur un ordinateur personnel : 5 époques en une nuit. La confiance des réponses allait de 30 à 40 %. La confiance pourtant n’est pas une mesure d’exactitude : elle dit à quel point le modèle est sûr de lui, pas à quelle fréquence il a raison, et les chiffres d’exactitude, nous ne les avons pas mesurés.

La carte et le chemin

Pour savoir où il se trouve et comment est fait le terrain, le drone utilise un LiDAR et l’algorithme DFLIOM, qui construit la carte comme un nuage de points. Un réseau de neurones choisit seulement les points utiles pour aligner un scan avec le suivant, environ un sur cinq.

Sur la carte, le chemin se cherche en deux temps. La Probabilistic Roadmap disperse des points libres au hasard et relie chacun aux voisins accessibles : un graphe de routes possibles en naît. Ensuite A* trouve sur le graphe le chemin le plus court.

ouverts = {partenza}
g(départ) = 0
tant que ouverts n’est pas vide :
    n = le nœud des ouverts avec f(n) = g(n) + h(n) le plus petit
    si n est l’arrivée : reconstruis le chemin et arrête-toi
    retire n des ouverts
    pour chaque voisin m de n :
        coût = g(n) + distance(n, m)
        si coût < g(m) : g(m) = coût, note que m vient de n, mets m dans les ouverts
A* : g(n) est le chemin déjà parcouru, h(n) une estimation de ce qu’il reste. Si l’estimation n’exagère jamais, le chemin trouvé est le plus court. Hart, Nilsson et Raphael, 1968.

Le pilote automatique

Au début nous pensions écrire aussi le pilote automatique depuis zéro. Après avoir parlé avec des professeurs nous avons changé d’avis : cela aurait été un travail énorme et inutile, parce qu’il existe des pilotes automatiques open source matures. Nous avons comparé les deux plus utilisés, PX4 et ArduPilot.

Pour faire dialoguer vision, carte, planification et pilote automatique, nous avons choisi ROS 2, le système le plus répandu pour relier les modules d’un robot.

Les deux pilotes automatiques
PX4open sourcehébergé par Dronecode, de la Linux Foundation
ArduPilotopen source, GPLv3depuis 2009, sur plus d’un million de véhicules

Le bilan

À l’été 2025, les modules du schéma de base étaient prêts : vision, carte et localisation, planification du chemin. Restaient en dehors la machine à états des décisions et la coordination avec d’autres drones.

L’étape suivante était de tout relier avec ROS 2 et de commencer les essais en simulation, qui demandaient toutefois un ordinateur bien plus puissant que ceux que nous avions ; nous avons envisagé de louer de la puissance de calcul dans le cloud. Le projet s’est arrêté là.

Comment cela s’est passé

  1. 10 mars 2025Nous avons présenté le projet au Palazzo della Borsa.
  2. Mars 2025Un cours interne de machine learning : théorie de l’apprentissage et réseaux de neurones avec PyTorch.
  3. Été 2025Les modules de vision, carte et chemin étaient prêts. Il manquait l’intégration avec ROS 2 et les essais, pour lesquels il fallait un ordinateur plus puissant.

Vidéos

Personnes du projet

Avec qui nous le faisons

  • Università di Genova

Tous les partenaires

Sources

  • Rapport du projet StratoPilot, 2025.
  • Ultralytics, documentation de YOLOv8.
  • Dong et ses collègues, LiDAR Inertial Odometry And Mapping Using Learned Registration-Relevant Features, arXiv:2410.02961, 2024.
  • Kavraki, Švestka, Latombe et Overmars, Probabilistic roadmaps, IEEE Transactions on Robotics and Automation, 1996.
  • Hart, Nilsson et Raphael, A Formal Basis for the Heuristic Determination of Minimum Cost Paths, 1968.
  • px4.io ; ardupilot.org.

Le projet est terminé

Ce que nous avons appris continue dans les projets en cours.

Regarde les projets en cours