Vous êtes sur la page 1sur 6

AAL

Consultant – Docteur-Ingenieur (5 ans d’exp)

Développement logiciel & Développement Algorithme


SLAM

Compétences Principales

▪ Développement d’algorithme
▪ Cartographie et Localisation
▪ Robotique
▪ Electronique / Capteurs
▪ Traitement d’image
▪ Traitement nuage des points LIDAR
▪ Mécanique / Mécatronique
▪ Enseignement / pédagogie
▪ Recherche scientifique (publication, révision d’articles etc.)

Logiciels

▪ RTMAPS, Git, MS Office, CI (TEAMCITY)


▪ C/C++ (SIMD), Python, MATLAB /Simulink, LabVIEW (NI CLAD), Assembly (basique)
▪ Deep Learning (PYTORCH), OPENCV, GIS
▪ Programmation des microcontrôleurs (AVR architecture).

Formations 2022
▪ BSP UBoot et Linux embarqué, construire son propre système
▪ Linux, drivers et programmation noyau

Page 1 sur 6
FORMATION

▪ 2020 Docteur en SLAM (cartographie et Localisation des Véhicules Autonome)


VEDECOM – ESIGELEC (Rouen)
- Sujets : L’'exploitation des données à priori et la mise à jour cartographique crowdsourcée pour les
algorithmes de SLAM en milieu urbain.

▪ 2017 M1 & M2 Systèmes Avancés et Robotique


UPMC – Paris 6
- Sujets : Contrôle/commande, planification de trajectoire, capteurs, robotique médicale, haptique,
Réalité Virtuel (VR), SLAM, traitement d'image

▪ 2015 Ingénieur de la Faculté de génie (ULFG III) - Université Libanaise,


Branche III, Département de génie mécatronique
- Sujets : Maths appliques, Programmation, Eléments finis, cinématique de machines, dynamiques des
machines, moteur à combustion interne, machines électriques, vibrations, électronique, capteurs,
Contrôle/commande, mécanique de fluides, mécanique de solide.

EXPERIENCE PROFESSIONNELLE

2022 – 01/2023 : SCALLOG


Ingénieur R&D – Développement de logiciels (robotique indoor)
- Développement Soft embarqué
- Développement bas niveau

2020 – 2022 : NAVYA


Ingénieur R&D – Développement de logiciels
- Refonte des trames de messagerie CAN & CANFD et de leur horodatage (odomètre, moteur, etc.) pour
améliorer la qualité de fusion (odometrie, IMU, GNSS, LIDAR).
o Identification de la cause d’un problème d’horodatage sur certaines trames
o Dissociation des trames de messagerie
o Optimisation de l’envoi des trames par utilisation du timestamping de SO Timestamping fourni
par linux

- Refactorisation du code existant pour le rendre plus modulaire, lisible, extensible et adaptable à
différentes plateformes véhicules
o Développement modulaire d’une couche intermédiaire en charge de traduire les commandes
haut niveau générique afin de les exécuter sur chaque navette, et de traduire les status
générique vers le NAVYA drive

Page 2 sur 6
- Développement sur le projet Safety, Diagnostic & Strategy (SDS).
Les trois buts principaux du projet SDS sont :
o Concevoir un système de décision sécuritaire
o Avoir un système central et commun de prise de décision
o Permettre au véhicule de réagir plus facilement/intelligemment aux situations auxquelles il est
confronté

• Event registry :
1- Fournir un moyen homogène de déclencher des évènements
2- Fournir la possibilité d’être averti lorsque des évènement spécifiques (ou tous les
événements) se produise afin de garantir la sécurité
3- Enregistrez tous les évènements de manière appropriée
4- Indépendant de RTMAPS
• Mediator :
1- Le code de décision et de détection est divisé afin d’améliorer la sécurité
2- Le code de décision est centralisé
3- Le code de décision peut être pris en compte
4- Le code de décision est facile à tracer

Environnement et tâches :
- Développement en C++
- Revue de Code
- Test unitaire
- Version control (Git)
- Intégration
- Débogage
- Tests sur véhicules, débogage sur véhicules

2017 – 2020 : VEDECOM


Thèse en SLAM (Cartographie et localisation des véhicules autonomes)
Les algorithmes des SLAM ont été développés depuis plus de 20 ans aujourd’hui, mais les chercheurs
ont presque toujours considéré que les robots (ou véhicules) n’ont aucune connaissance à priori de
l’environnement.

Le sujet de ma thèse est d’étudier comment on peut exploiter des données qui existe à priori (exemple
OpenStreetMap) pour créer des cartes afin de localiser les véhicules avec un objectif de précision de 10
à 30 cm)
Cette étape vient avant l’algorithme de localisation

Pour ce faire, il faut cependant que les cartes restent toujours à jour.
Pour cette raison dans une deuxième partie de ma thèse je m’intéresse à exploiter les données issues
de véhicules pour enrichir cette carte et la mettre à jour.
Pour cela, je n’utilise pas des données des cameras (images) mais les données de LIDAR 3D (Velodyne
vlp-16), l’odomètre, l’IMU, et le GPS-RTK.
L’utilisation de ces données va réduire le cout de création et de mise à jour de la carte en comparaison
avec l’utilisation de véhicules spécialisé et onéreux.

Page 3 sur 6
Dans la première partie de la thèse, la localisation a été testée dans une représentation par champ de
vraisemblance de la carte. Le plan cadastral a été utilisé pour générer une grille d'occupation
probabiliste.
Cette carte de grille d'occupation a été utilisée par la suite pour localiser le véhicule. Au cours de cette
partie j'ai également étudié la qualité des données cadastrales à l'aide de deux métriques proposées.

Dans la deuxième partie de la thèse, j'ai comparé une première approche directe pour mettre à jour la
carte de grille d'occupation avec une approche proposée qui exploite les métriques précédemment
définies.

Enfin, dans la troisième partie, j'ai commencé à implémenter l'algorithme SLAM du filtre à particules en
utilisant des grilles d'occupation évidentielle (dempster-shafer). L'idée était d'exploiter la capacité du
framework evidentielle à gérer les conflits dans le processus de mise à jour de la carte.

Enfin, en perspective, j'ai souligné l'importance du MOT (Mobile Object Tracking) et de la segmentation
sémantique dans le processus de mise à jour cartographique. Cependant, ces deux techniques n'ont
pas été utilisées dans la thèse en raison de contraintes de temps.

Environnement
- Développement des algorithmes en C++ et en python.
- RTMAPS
- Statistiques

Page 4 sur 6
2017 (5,5 mois) : CEA / LIST / LRI
Ingénieur Développement SW

▪ Implémentation en C++ d’un algorithme de planification des tâches et mouvements sous incertitude
pour un robot de logistique
(Refs: Hierarchical Task and Motion Planning in the Now, Integrated Robot Task and Motion Planning
in the Now)
▪ Le robot : base mobile (Robulab10) équipe par un bras Jaco (kinova)
▪ Développement d’un environnement de simulation 2D (avec SDL2) pour simuler des taches effectuer
par une base mobile

2016 (4,5 mois) : OCTOPUS ROBOTS, Cholet


Ingénieur Développement SW

▪ Implémentation en C++ et python d’un algorithme de SLAM pour un robot agricole


▪ Le robot : Développement interne d’un robot destiné à faire de la désinfection indoor
▪ Recherche, tests, et sélection des algorithmes intéressants pour l’application visée suivant les
contraintes matériels (système embarqué, Raspberry pi 2, RPLIDAR A2, pas d’odomètre, environnement
indoor)

2014 – 2015 (6 mois) Méthode Electronics


Ingénieur Mécatronique sur des capteurs de couple magneto-elastique
▪ Etude Eléments Finis pour les capteurs magneto-elastiques (https://www.methodesensor.com/)
▪ Tests sur banc

2013 – 2014 (3 mois) Méthode Electronics


Ingénieur Mécatronique sur des capteurs de couple magneto-elastique

▪ Recherche sur la technologie de capteurs magneto-elastique


▪ Test de différentes conception de capteurs sur banc de tests (fabriqué chez methode electronics)
utilisant les cartes d’acquisition de National instruments (NI) et Labview
▪ Conception d’un prototype d’un capteur magneto-elastique en utilisant PTC CREO
(https://www.methodesensor.com/)

Page 5 sur 6
Compléments :

Publications:
▪ 2019 - Intelligent Transportations Systems Conference (ITSC): Urban Localisation Inside
Cadastral Maps Using Likelihood Field Representation.

Enseignement Universitaire à L’ESIGELEC


▪ Enseignement du langage C pour M1 systèmes embarqués – 30 heures – 2 fois (c.a.d. 60 heures)
(Cours + TP)
▪ Enseignement du langage C pour le cycle ingénieur – 34 heures – une classe apprentis et une classe
classique (TP)
▪ Enseignement de Python et du Traitement d’Image pour M2 systèmes embarqués (OpenCV3) – 30
heures (Cours + TP)

Certification
▪ CompTIA A+, CompTIA N+ ; NI CLAD certification.

Autre
▪ Organisation et/ou contribution à l’organisation de plusieurs événements à l’université : atelier +
concours de programmation,
▪ Orateur principal et organisateur d’un atelier de programmation de MCU
▪ Membre actif de la Communauté Cyber, et Science Club à ULFG III

Page 6 sur 6

Vous aimerez peut-être aussi