KalMOOC
Un MOOC sur le filtre de Kalman
Ouverture de la 8ième édition :
Luc Jaulin, ENSTA-Bretagne, UBO, Lab-STICC
jaulin.kalmooc@gmail.com



Lab-STICC UBO GDR MACS GDR Robotique ENSTA Bretagne DGA ROBEX Sperob SAGIP



  1. Introduction
  2. Programme avec les dates et les points
  3. Rendus
  4. Fichiers
  5. Leçons et vidéos
  6. Liste des diplômés
  7. Autres MOOCs








Introduction à KalMOOC

Ce MOOC est gratuit et correspond aux chapitres 6,7 du livre "la robotique mobile, Luc Jaulin (2015), ISTE editions" qui existe aussi en version anglaise "Mobile Robotics, Luc Jaulin (2015), ISTE editions". Il s'agit d'un cours sur le filtre de Kalman pour débutants, bien que certaines notions en mathématiques soient nécessaires (typiquement le niveau demandé à l'entrée des écoles d'ingénieur). Ce MOOC peut également aider les enseignants qui doivent enseigner le filtre de Kalman et qui souhaitent le faire de façon simple et intuitive, tout en restant rigoureux. Ici, nous ne traitons pas le problème de la commande (chapitres 2,3,4 du même livre) qui est rattaché à un autre MOOC : RobMOOC.

Contexte

Un observateur d'état cherche à reconstruire le vecteur d'état d'un système dynamique à partir de toutes les données récoltées sur le système à travers le temps. Le but de ce cours est de présenter le filtre de Kalman qui permet une telle reconstruction, dans un contexte probabiliste où le système à observer est linéaire et le bruit gaussien. Le filtre de Kalman est utilisé dans de nombreuses applications comme la localisation en robotique mobile qui nous intéressera particulièrement. Pour une approche ensembliste (et non plus probabiliste), nous vous renvoyons vers un autre MOOC : IAMOOC.


Prérequis

Il est nécessaire d'avoir quelques notions en Matlab ou Python et des bases en mathématiques élémentaires (typiquement le niveau d'entrée requis à l'entrée d'école d'ingénieur). Nous éviterons l'utilisation d'outils mathématiques trop élaborés. Matlab ou Python doivent être installés sur votre machine.


Objectif

Après ce cours, vous devriez maîtriser les calculs d'incertitudes à travers les matrices de covariance, comprendre les équations du filtre de Kalman et être capables de l'implémenter sur des cas pratiques.


Diplôme

Pour ceux et celles qui terminent correctement ce MOOC, un diplôme vous sera distribué à la fin de ce cours. Ce document permet à certains étudiants en thèse d'obtenir des crédits ECTS (European Credit Transfert System) que demandent les écoles doctorales.
Pour avoir votre diplôme, il vous faut un minimum de 30 points (sur les 43 points atteignables), ce qui vous permet de ne pas faire tous les exercices.
Un exemple type de diplôme :


Inscription

Pour s'inscrire, il faut aller sur
L'inscription n'est pas obligatoire pour suivre les vidéos, mais est indispensable pour avoir le diplôme.


Vidéo de correction

Une vidéo de correction pour les exercices vous est donnée lors de l'ouverture de la leçon, mais pas le programme informatique car c'est à vous de le faire. Cette vidéo vous donne une méthode possible de résolution, mais vous n'êtes pas obligés de la suivre. Parfois, on ne vous demande pas rendre un programme Matlab ou Python, mais une correction sur papier. Dans ce cas, postez un scan (pris par votre téléphone, par exemple) ou un fichier en pdf.


Structure du cours

Ce cours se réparti en 8 leçons (numérotées A,B,C,D,E,F,G,H). Chaque leçon est constituée d'une heure de cours et de deux heures de travaux pratiques sur machine.






Programme avec les dates et les points

Leçon A. Méthode des moindres-carrés , 12:00.
Exercice 1. Représentation d'une fonction quadratique (1 point)
Exercice 2. Identification d'une parabole (1 point)
Exercice 3. Identification des paramètres d'un moteur à courant continu (1 point)
Exercice 4. Estimation d'une fonction de transfert (1 point)

Leçon B. Estimation de paramètres , 12:00.
Exercice 5. Méthode de Newton pour la localisation (1 point)
Exercice 6. Méthode de Monté-Carlo (1 point)
Exercice 7. Localisation par recuit simulé (2 points)

Leçon C. Matrices de covariance , 12:00.
Exercice 8. Distribution gaussienne (1 point)
Exercice 9. Ellipses de confiance (1 point)
Exercice 10. Ellipsoïde de confiance : prédiction (1 point)
Exercice 11. Bruit brownien (1 point)

Leçon D. Estimateurs linéaires orthogonaux , 12:00.
Exercice 12. Ellipsoïde de confiance : correcteur (1 point)
Exercice 13. Propagation de matrices de covariance (1 point)
Exercice 14. Estimateur linéaire pour la résolution de trois équations (1 point)
Exercice 15. Estimateur linéaire pour l'estimation des paramètres d'un moteur électrique (1 point)
Exercice 16. Trochoïde (1 point)

Leçon E. Filtre de Kalman , 12:00.
Exercice 17. Filtre de Kalman pour la résolution de trois équations (1 point)
Exercice 18. Filtre de Kalman sur trois pas (1 point)
Exercice 19. Estimation des paramètres d'un moteur électrique (1 point)
Exercice 20. Estimation de la température (1 point)

Leçon F. Localisation , 12:00.
Exercice 21. Localisation à partir de la mesure des distances aux murs (1 point)
Exercice 22. Marcheur aveugle (1 point)
Exercice 23. Localisation à l'estime (1 point)
Exercice 24. Localisation goniométrique (2 points)
Exercice 25. Localization using a Lidar (1 point)

Leçon G. Observateurs d'état , 12:00.
Exercice 26. Estimation d'état et commande d'un pendule inversé (2 points)
Exercice 27. Suivi d'un bateau par deux radars (1 point)
Exercice 28. Localisation d'un robot dans une piscine (1 point)
Exercice 29. Instantaneous localization (1 point)

Leçon H. Filtrage bayésien , 12:00.
Exercice 30. Densité conditionnelle et densité marginale (1 point)
Exercice 31. Prévision météo (1 point)
Exercice 32. Robot porte (1 point)
Exercice 33. Le robot dans la forêt (1 point)
Exercice 34. Bayes rule with Kalman (1 point)
Exercice 35. Dérivation des équations du lisseur de Kalman (1 point)
Exercice 36. SLAM dans un contexte de robotique sous-marine (3 points)
Exercice 37. Filtre particulaire (2 points)

Fermeture : , 12:00.

Remise des diplômes : , 12:00.






Rendus

Pour chaque leçon, vous devez rendre, pour chaque exercice, le programme Python, Matlab (ou autre) associé.
Vos fichiers devront être envoyés par email à jaulin.kalmooc@gmail.com
avant le jeudi (12h) de la semaine qui suit.
Il faudrait m'envoyer un fichier pdf avec des explications et des captures écran du programme réalisé.





Vous pouvez utiliser Python (ou autre) online

Par exemple, aller sur le projet
Run pour tester que le programme tourne bien
Fork (pour cela il vous faudra créer un compte).
Modifier le programme comme il vous convient.
Pour poster votre programme, il vous suffit d'envoyez le lien.
Pour le correcteur, il est très facile de tester que votre programme tourne bien.






Fichiers

Enoncés avec le cours.

Sources Latex + figures

Programmes de démarrage pour les utilisateurs de Matlab.
Programmes de démarrage pour les utilisateurs de Python.
Librairie à utiliser par les utilisateurs de Python roblib.py.
Un petit help sur la librairie Python.






Leçons et Vidéos



Leçon A. Méthode des moindres-carrés

Ouverture: , 12h (ouvert dès maintenant pour permettre une adaptation)
Résumé: Dans cette leçon A, nous donnons les objectifs de l'identification et de l'estimation de paramètres. Après avoir présenté les formes quadratiques et leur minimisation lorsque ces dernières sont convexes, nous introduisons la méthode des moindres-carrés dans le cas linéaire.



Exercice 1. Représentation d'une fonction quadratique

Exercice 2. Identification d'une parabole
Partez du fichier ex_parab.m dans kalmooc.zip ou bien du fichier parab.py dans kalmoocpy.zip.

Exercice 3. Identification des paramètres d'un moteur à courant continu

Exercice 4. Estimation d'une fonction de transfert
Partez du fichier ex_transfer.m ou du fichier transfer.py.




Leçon B. Estimation de paramètres

Ouverture: , 12h
Résumé: La leçon B, propose d'étendre l'estimation au sens des moindres carrés au cas non-linéaire. Pour cela, nous introduisons les principes de l'optimisation globale dans le cas où le critère à minimiser est non-convexe. Nous donnons ensuite un algorithme non-déterministe pour l'optimisation globale.




Exercice 5. Méthode Newton pour la localisation
Partez fichier newton.py.

Exercice 6. Méthode de Monté-Carlo
Partez du fichier ex_montecarlo.m ou du fichier montecarlo.py.

Exercice 7. Localisation par recuit simulé
Partez du fichier ex_anneal.m ou du fichier anneal.py.




Leçon C. Matrices de covariance

Ouverture: , 12h
Résumé: La leçon C, introduit la notion de matrice de covariance et montre comment cette dernière peut être utilisée pour caractériser l'incertitude sur un vecteur aléatoire. Nous montrons également comment manipuler les matrices de covariance dans le but de propager les incertitudes à travers une application linéaire.




Exercice 8. Distribution gaussienne
Partez du fichier ex_gauss.m ou du fichier gauss.py


Exercice 9. Ellipses de confiance
Partez du fichier ex_sixcov.m ou du fichier sixcov.py.


Exercice 10. Ellipsoïde de confiance : prédiction
Partez du fichier ex_predicov.m ou du fichier predicov.py.


Exercice 11. Bruit brownien
Partez du fichier ex_brownian.m ou du fichier brownian.py.





Leçon D. Estimateurs linéaires orthogonaux

Ouverture: , 12h
Résumé: La leçon D, s'intéresse aux vecteurs aléatoires gaussiens et montre comment leur densité de probabilité se caractérise totalement par une espérance mathématique et une matrice de covariance. Nous donnons également les bases de l'estimation linéaire dans un contexte linéaire. Nous donnons les équations d'un estimateur linéaire centré orthogonal qui forment une des briques essentielles du filtre de Kalman.




Exercice 12. Ellipsoïde de confiance : correcteur
Partez du fichier ex_corrcov.m ou du fichier corrcov.py


Exercice 13. Propagation de matrices de covariance
Il n'y a pas de programme à rendre juste un scan (ou photo) de votre feuille de papier ou un pdf.


Exercice 14. Estimateur linéaire pour la résolution de trois équations


Exercice 15. Estimateur linéaire pour l'estimation des paramètres d'un moteur électrique

Exercice 16. Trochoïde
Partez du fichier ex_trochoide.m ou du fichier trochoide.py





Leçon E. Filtre de Kalman

Ouverture: , 12h
Résumé: Dans la leçon E, nous montrerons comment dans un cadre dynamique, où un système décrit par des équations d'état évolue dans le temps, un estimateur linéaire récursif peut être obtenu. Il s'agit du filtre de Kalman qui se décompose en deux étapes : la prédiction et la correction. En toute rigueur, ce filtre ne peut s'utiliser que pour des systèmes linéaires et dans un contexte de bruits additifs et gaussiens.




Exercice 17. Filtre de Kalman pour la résolution de trois équations
Partez du fichier ex_kalm3eq.m ou du fichier kalm3eq.py


Exercice 18. Filtre de Kalman sur trois pas
Partez du fichier ex_kalm3steps.m ou du fichier kalm3steps.py


Exercice 19. Estimation des paramètres d'un moteur électrique
Partez du fichier ex_kalmotor.m ou du fichier kalmotor.py


Exercice 20. Estimation de la température
Il n' a pas de programme à rendre juste un scan (ou photo) de votre feuille de papier ou un pdf.





Leçon F. Localisation

Ouverture: , 12h
Résumé: La leçon F s'intéresse à des problèmes plus réalistes afin de mieux comprendre comment s'utilise le filtre de Kalman. Nous avons choisi la localisation car c'est dans ce contexte que le filtre de Kalman a été initialement utilisé (mission Apollo) mais aussi qu'il a été le plus appliqué. Nous allons donc nous placer dans le cas d'un robot mobile dont le mouvement est décrit par des équations d'état à temps continu évoluant dans un environnement composé d'amers ponctuels dont les positions sont connues. Lorsque le robot perçoit ces amers, il en mesure des angles (cas de la localisation goniométrique) ou des distances (trilatération). Afin d'utiliser un filtre de Kalman (qui, rappelons le, considère des systèmes linéaires à temps discrets), nous montrons comment transformer l'évolution du robot en une évolution linéaire et comment effectuer la discrétisation temporelle du système, en prenant en compte les bruits.




Exercice 21. Localisation à partir de la mesure des distances aux murs
Partez du fichier ex_distwall.m ou du fichier distwall.py


Exercice 22. Marcheur aveugle
Partez du fichier ex_blindwalk.m ou du fichier blindwalk.py


Exercice 23. Localisation à l'estime
Partez du fichier ex_deadreckoning.m ou du fichier deadreckoning.py


Exercice 24. Localisation goniométrique
Partez du fichier ex_gonio.m ou du fichier gonio.py


Exercice 25. Localization using a Lidar
Partez du fichier lidar.py





Leçon G. Observateurs d'état

Ouverture: , 12h
Résumé: La leçon G présente les observateurs d'état dans un contexte général et explique en quoi le filtre de Kalman peut être interprété comme un tel observateur. Nous introduisons trois observateurs proches du filtre de Kalman.
(1) Le filtre de Kalman-Bucy qui est une version différentielle du filtre Kalman (qui lui est discret).
(2) Le filtre de Kalman étendu ou EKF (Extended Kalman Filter) qui s'applique lorsque le système à observer est non-linéaire. Le principe est de linéariser afin se pouvoir utiliser le filtre de Kalman.
(3) L'observateur de Luenberger qui possède une différence essentielle avec le filtre de Kalman : il ne demande aucune hypothèse probabiliste. L'incertitude (ou plutôt son influence) y est exprimée à l'aide de constantes de temps.




Exercice 26. Estimation d'état et commande d'un pendule inversé
Partez du fichier ex_invpend.m ou du fichier invpend.py


Exercice 27. Suivi d'un bateau par deux radars
Partez du fichier ex_radar.m ou du fichier radar.py


Exercice 28. Localisation d'un robot dans une piscine
Partez du fichier locpool.py


Exercice 29. Instantaneous localization





Leçon H. Filtrage bayésien

Ouverture: , 12h
Résumé: La leçon H généralise le filtrage de Kalman dans un contexte non-linéaire et non-gaussien. On obtient alors un filtre bayésien qui cherche à manipuler directement les densité de probabilité et non pas uniquement les moyennes et les covariances. En montant d'un niveau d'abstraction, le filtre bayésien permet d'avoir une meilleure compréhension du filtre de Kalman et d'étendre ses capacités. Afin d'illustrer cela, nous nous intéresserons au lissage qui permet d'améliorer les précisions obtenues pour l'estimation d'état dans le cas où les données futures sont disponibles. Enfin, nous proposerons à une application ambitieuse du filtre de Kalman qui est le SLAM (Simultaneous Localization And Mapping). Dans un tel contexte, un robot doit se déplacer dans un environnement inconnu, tout en se localisant dans cet environnement à travers une carte qu'il est en train de construire.




Exercice 30. Densité conditionnelle et densité marginale
Il n'y a pas de programme à rendre juste un scan (ou photo) de votre feuille de papier ou un pdf.


Exercice 31. Prévision météo
Il n'y a pas de programme à rendre juste un scan (ou photo) de votre feuille de papier ou un pdf.


Exercice 32. Robot porte
Il n'y a pas de programme à rendre juste un scan (ou photo) de votre feuille de papier ou un pdf.


Exercice 33. Le robot dans la forêt
Il n'y a pas de programme à rendre juste un scan (ou photo) de votre feuille de papier ou un pdf.


Exercice 34. Bayes rule with Kalman
Il n'y a pas de programme à rendre juste un scan (ou photo) de votre feuille de papier ou un pdf.


Exercice 35. Dérivation des équations du lisseur de Kalman
Il n'y a pas de programme à rendre juste un scan (ou photo) de votre feuille de papier ou un pdf.


Exercice 36. SLAM dans un contexte de robotique sous-marine
Partez du fichier ex_slam.m ou du fichier slam.py. qui utilise le fichier de données slam_data.txt.


Exercice 37. Particle Filter
Partez du fichier particle_filter.py








Liste des 76 diplômés de l'année 2016

Ayman Al Khazraji
Frédéric Launay
Julien Brisset
Salima Borsali
Hassan Bouchiba
Yassine Boukal
Jean-Louis Cougnon
Jean-Alexis Delamer
Gaël Ecorchard
Ibrahima Faye
Aïda Feddaoui
Maxime Ferrera
Salameh Jack
François Lamoline
Dory Merhy
Alouane Mohamed Amine
Julien Moreau
Lucile Rossi
Jonathan Savin
Jean-Baptiste Sorba
Pauline Thémans
Philippe Chapuis
Mahmoud Abboud
Raphael Abellan-Romita
Maha Abouzaid
Mahab Al Johani
Abdullah Al Mahmoud
Rakan Ali
Simon Allenic
Robin Baudino
Yacine Benhnini
Maxime Berolo
Mohammed Bin salamah
William Blachère
Arifa Bou Orm
François C.
Matthieu Chailloux
Daniel Chaya
Romain Da Canal
Julien Damers
Mouhamadou Diallo
Justin Dourlens
Mohamed El Alami
Mariam El Helou
Majed El Kadri
Nancy El Samra
Emilien Fournier
Gabriel GODEAU
Yoann Guguen
Morgan Gy
Louisa Henry
Alae Eddine Hmamouche
Hiba Hnaini
Fabrice Lallement
Perrine Lohues
Mathieu Mayssal
Mohamad Mezher
Philipe Miranda de Moura
Alexis Murail
Yasmine Najar
Pascal Nguyen
Mohamed Amine Ouadrhiri
Mohamed Outahar
Xavier Quelard
Clément Rolinat
Thomas Rougeau
Emilien Tankéré
Joris Tillet
Sophie Tuton
Rémi Valenton
Nicolas Veylon
Mael Vigouroux
Jean Walter
Adam Wild
Thomas Xavier Caturra
Jacques Kadima





Liste des 83 diplômés de l'année 2017

Ghina Abdallah
Jasser Al Assaf
Mohanad Al Hamdan
Sultan Al Frawy
Moayad Al Zaidi
Elias Aoun Durand
Antony Arslanyan
Denis Bacchus
Marion Badel
Yvan-Bernard Baki
Victor Bares
Paul Bouquet
Juliette Brugier
Jad Chebbo
Abdelmounim Chentouf
Evann Clavier
Alexandre Corazza
Maria Luiza Costa Vianna
Baptiste Cros
Alexandre Degurse
Sarah Delmas
Téva Demangeot
Amadou-Sall Dia
Maxime Do Rosario
Igor Dos Santos Novais
Romain Dussot
Aoun Eldandachli
Julien Feutrie
Pierre Filiol
Jérôme Gambini
Joseline-Maurelle Gohep Watso Atso
Paul-Antoine Grau
Gregor Hadjidakis
Quentin Hidderley
Alexandre Houdeville
Ibrahim Krayem
Olivier Laurendin
Lucie Lefevre
Michel Limousin
Mathieu Logario
Jalal Matar
Doja Mchaymech
Abdulaziz Mushayt
Mahmoud Naamani
Elodie Noëlé
Fabrice Poirier
Abbas Ramadan
Aurel-Cedric Songo Sonkeng
Julie Terseur
Jordane Tsafack
Louis Valéry
Anne-Laure Wozniak
Charles Coquet
Thamer Al Doughaish
Julien Dupeyroux
Baptiste Gradoussoff
Olivier Forti
Mohamed Fnadi
Meddour Ghozlane
Hafsa Bahri
Lucas Joseph
Thameur Kidar
Abdenour Kifouche
Ghani Kissoum
Philippe Lambert
Laëtitia Li
Nacim Meslem
Mathieu Naslin
Bensafi Noureddine
Alice Paschal
David Pérez Morales
Benoît Pesenti
Renaud Poncelet
Amadou Sagna
Amriche Taous
Oussama Yaakoubi
Charlie Goutorbe
Pierre Benet
Guilhem Dubarry
Matthieu Faure
Julien Khalile
Khaled Benkhoud
Farouq Benchallal






Liste des 81 diplômés de l'année 2018

Caine Abdallah
Mehdi Abdelli
Philibert Adam
Abdulaziz Albrikeit
Mohammed Al Sakait
Osama Al Shuaibi
Abdulaziz Al Sudais
Alexandre Argento
Ameni Azzabi
Alexis Baulu
Kevin Bedin
Gwendal Blot
Olivier Bordron
Matthieu Bouveron
Quentin Cardinal
Colin Cros
Jérémy Cornille
Cyril Cotsaftis
Alexandre Courjaud
Riwan Cuinat
Hugo Daguerre
Georges Daher
Coraline Delblond
Marine Derouet
Quentin Ducasse
Audrey Ducruet
Rami Duyé
Ibrahim El Khatib
Emmanuel Falck
Clément Fauchereau
Manuella Feunkeu-Mfupa
Romane Fléchard
Nathan Fourniol
Matthieu Furet
Damien Goaper
Jonathan Gomis
Nicolas Hanachowicz
Christian Harb
Adrien Jeanvoine
Corentin Jegat
Jean-Luc Kersulec
Arnaud Klipfel
Yao Paul Williams Kouassi
Erwann Landais
Laëtitia Lavollée
Guillaume Le Boucher
Aurélien Lebrun
Maximilian Lesellier
Vincent Lheureux
Pierre Lledo
Luc Longin
Anouar Mahla
Teddy Martin
Pierre Mathieu
Adrien Michelet-Gignoux
Hmidi Mohamed Hedi
Amara Mohand Oussalem
Jean-Baptiste Moisinac
Etienne Monnier
Vincent Mouraux
Vincent Mussot
Eloise Noziere
Nafissath Odedele
Fabien Pons
Axel Porlan
Simon Queyrut
Quentin Rey
Ali Saad
Caine Silva
Mahmoud Souayfan
Henri Stoven
Georges Tanios
Thibaud Toullier
Ange Valli
Hamdi Walid
Nelson Wouogang Nzesseu
Mohammad Yassine
David Pallier
Driss Tayebi
Christian Koumlah Mbey






Liste des 74 diplômés de l'année 2019

Mohamed Adjel
Kévin Affraix
Omar Mounir Alaoui
Maxime Alos
Agathe Archet
Margot Bacquet
Younoussa Moussa Balde
Colin Baumgard
Ahmed Benabed
Lucia Bergantin
Jules Berhault
Etienne Besnier
Nicolas Bovo
Mohammed Brakna
Quentin Brateau
Ulrich Camille
Johan Carlier
Jose de Jesus Castillo Zamora
Pierre-Louis Danieau
Déreck DE Vassoigne
Mamadou Dembele
Ludovic Diguet
Guillaume Dupré
Alexandre Evain
Alexandre Fernandes
Manon Fourniol
Celia Freson
Bastien Gallinaro
Eric Godard
Xavier Guery
Kevin Guilmineau
Ahmad Hably
Hamid Hacene
Maha Halimi
Léo Hannicque
Guillaume Hardouin
Ashley Hill
Florian Honisch
Mansour Kande
Mourtaza Kassamaly
Mata Khalili
Tiphaine Kleiber
Jacques Lavaivre
Paul-Antoine Le Tolguenec
Corentin Lemoine
Aurelie Lepoil
Antoine Lima
Antonin Lizé
Jesus Mago
Jules Matz
Emeric Maus
Léa Michel
Badr Moutalib
Luc Petiet
Josua Pillet
Paul Pineau
Julien Piranda
Alexandre Ponzio
Gwendal Priser
Bastien Ricour
Emeric di Ruggiero Vauquoy
Robin Sanchez
Nathan Sanchiz
Nicolas Sanson
Louis Simon
Nicolas Solarczyk
Florian Tanguy
Bertrand Turck
Benoit Vigne
Quentin Vintras
Milan Vuddamalay
Wael Zouaoui
Aurelio Zoumenou
Yann Musellec






Liste des 62 diplômés de l'année 2020

Alexandre Nisse
Adnane Amrous
Estelle Arricau
Alex Belarbi
Louis Bessiene
Antonin Bétaille
Adrien Bourgeade
Mathilde Burgart
Hugues Cazanave
Cheyenne Chezalviel
Mohammed Chghaf
Marien Couvertier
Florian De Bruycker
Hamza El Jebbari
Laila EL YOUNSI
Enzo Essono Aubame
Sébastien Faes
Hanyuan FU
Timothée Guy
Alexis Hou
Bernardo Hummes Flores
Emilian Huygens
Jordan Mabboux
Thibault Jadoul
Antoine Jeanson
Rami Jradi
Jean-Vincent Klein
Katell Lagattu
Lala Meryam Gaouzi
Blandine Lebegue
Maxime Legeay
Paul Louveau
Xinyue Lu
Flavien Monchiet
Huiseok Moon
Téo Moucheboeuf
Olivier Neyret
Yves Jordan Njamen
Obil Dieu Béni Madoungu
Nicolas Odorico
Attou Otmane
Sebastian Otto
Abdel Ouedraogo
Hugo Piquard
Mathieu Randon
Eva Rangayen
Alexandre Raulet
Bastien Rault
Simon Roland
Samuel Sarrazin
Fawzi Srairi
Stéphane Ngnepiepaye Wembe
Julien Taran
Zeya Wang
Witt Isaac-Andreï
Jie Zhang
Matthieu Zins
Hugo Sabatier
Florian Gaurier
Martin Gounabou
Samuel Prouten
Yohann Gourret






Liste des 59 diplômés de l'année 2021

Nicolas Grandin
Maelic Louart
Guillaume Fasse
Urbain Anastase
Nemer Issa
Abdoullah Ndoye
Ali Mestrah
Florian Pouthier
Ela Mvolo Evina Alegue
Aurélien Merci
Lorien Revueltas Crooks
Luc Meunier
Thibaud Le du
Imane Argui
Simon Godon
Thomas Villard
Marie-Eugénie Després
Pierre Notin
Lucas Gouache
Joaquim d’Almeida
Wendpagnangda Bryan Jaouad Précieux Konkobo
David Boroch
Zakaria Belbatibimar
Thomas Cadart
Loïck Degorre
William Pean
Lucas Thiolas
Ulises Hernandez Calzadillas
Benoît Vigne
Silvain Louis
Elouan Saliou
Augustin Morge
Chloe Potherat
Damien Esnault
Danut Pop
Ermance Decaudaveine
Florian Jerram
Gabriel Betton
Hugo Gace
Hugo Reubrecht
Hugo Yverneau
Jonas Soueidan
Laurent Droudin
Laurent Potin
Mael Godard
Mehavannen Prabakaran
Mirado Rajaomarosata
Nicolas Defour
Philippe Nguyen
Rémi Porée
Simon Gervaise
Taddéo Guérin
Théo Boutémy
Thibault Langlard
Thomas Tacheron
Virgile Pelle
Antoine Wanctin
Amath-waly Ndiaye
Morgan Louédec






Liste des diplômés de l'année 2022

Rodrigue Dimitry Ngongang
Oussama Bey
Paul Chambroux
Sullivan Chagneau
Tom Ravaud
Jakub Hodek
Mohammed Salhi
Abdelrahman Sayed Sayed Emam Ibrahim
Marouane Laaziz
Selma Nourhane Oubouabdellah
Quentin Boyer
Florian Levray
Hugo Bouvier-Lambert
Enzo Galizzi
Kejun Hu
Laélien Garcia
Huu Nhat Huynh
Jérémy Michaud
Xavier Daini
Guillaume de Sainte Maresville
Killian Toulliou
Charlotte Beaune
François Gauthier-Clerc
Vivien Pravong
Gabriel Gattaux
Hadrien Picard
Luc Desbos
Léo-Paul Laurent
Alexandre Batard
Titouan Belier
Victor Bellot
Léo Bernard
Johan Berrier-Gonzalez
Samy Bourzoufi
Matteo Caliandro
Gwendal Créquer
Apolline De Vaulchier Du Deschaux
Alix Doineau
Marie Dubromel
Martin Galliot
Bastian Garagnon
Guillaume Garde
Louis Gillard
Clara Gondot
Adam Goux Gateau
Louis-Nam Gros
Hugo Hofmann
Tristan Le Floch
Jules Le Gouallec
Emilie Ledoussal
Hippolyte Leroy
Théo Massa
Marguerite Miallier
Ludovic Mustière
Océan Noel
Camilo Ortiz
Martin Pilon
Mathieu Pitaud
Aimé Randriamoramanana
Harendra Rangaradjou
Louis Ravain
Kevin Ren
Catherine Rizk
Louis Roullier
Etienne Roussel
Mathys Séry
Joachim Zafrana
Rania Ziane






Liste des diplômés de l'année 2023

Faïza Khelladi
Ali Ait Hassou
Julien Brisset
Raphaël Steiger
Colin Parellier
Louis Czyborra
Pierre Hémono
Thomas Gansinhounde
Jean Bastide
Hugo Tardieu
Michel Roland Bidias A Kesseng
Corentin Menier
Ege Gursoy
Tanguy Larock
Martin Salles
Noël Nadal
Josué Nkaya-Nkaya
Kenza Khedache
Louis Jouclas
Sébastien Courivaud
Jean Heibig
Flavie Duthay
Victor Dubois
Ethan Niddam
Kokou Chéridhan Lissassi
Flavie Duthay
Mohamed Adjel
Jael Maheva Ongmissi Ndem
Zhiye Cheng
Jeremy Bernaudeau
Raissa Baya Benazouz
Hawraa Becher
Enki Saura
Maxime Sabbah