Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Time Series France #12 - Le Bateau Qui Vole - Exploiter des données de navigation pour remporter les courses au large

Time Series France #12 - Le Bateau Qui Vole - Exploiter des données de navigation pour remporter les courses au large

Time Series France - 12ème edition - Slides de présentation de Loic Veyssière de Meritis sur le projet "Bateau Qui Vole"

D0a6969000c3715087b3a00abd646d20?s=128

TimeSeriesFr

June 29, 2021
Tweet

Transcript

  1. Confidentiel Propriété Meritis Exploiter des données de navigation Loïc Veyssière

    Time Series France – 29 juin 2021 Le Bateau Qui Vole par Meritis
  2. Confidentiel Propriété Meritis Meritis rejoint le Skipper Sébastien Rogues dans

    la course à la victoire des plus prestigieuses compétitions de voile au large. Notre conviction commune : le numérique sera la prochaine innovation.
  3. Confidentiel Propriété Meritis Confidentiel Propriété Meritis 3 Meritis en quelques

    chiffres 2007 +80 18% 40% 5% 650 52M€ Great Place To Work en 2020 année de création chiffre d’affaires en 2020 clients de notre activité dans le secteur de la data du CA investi en soutien des consultants collaborateurs N°3 des entreprises du CAC40 sont clientes de Meritis
  4. Confidentiel Propriété Meritis Sommaire 1 2 3 4 Présentation du

    projet La voile et les enjeux numériques Le volet technique Le volet data science
  5. Confidentiel Propriété Meritis Présentation du projet 1

  6. Confidentiel Propriété Meritis Confidentiel Propriété Meritis • Le trimaran est

    équipé de 30 capteurs destinés au skipper lors de la navigation. Bien que stockées à bord, ces données n’étaient jamais exploitées. • Le projet Bateau Qui Vole est une plateforme Big Data et Machine Learning pour la restitution et l’analyse des données de navigation. • L’objectif fixé : l’amélioration significative des performances et de la sécurité. Vue générale Ocean Fifty de Sébastien Rogues 6
  7. Confidentiel Propriété Meritis Confidentiel Propriété Meritis Quelques chiffres 25 points

    par seconde 3500 heures d’enregistrement 210 variables 500 Go de données 4 sources 30 capteurs Objectif : valoriser les données
  8. Confidentiel Propriété Meritis Confidentiel Propriété Meritis Date_Time, IN_Estime, IN_Config, IN_Eclair,

    IN_Langage, IN_Chrono, IN_LochJou, IN_LochTot, IN_RXTerm, CA_VitSuTr, Profondeur, OF_VitSuTr, GyrPilote, CA_VitSuBa, AncAVA_Pil, OF_VitSuBa, CapMagPil, CA_VitSurf, OF_VitSurf, MinSecUTC, OF_Cap, GiteMes, Barre, LochJourn, LochTotal, DistEstime, CA_VVA, CapEstime, OF_AVA1, CA_CMG, VitVentRl, AngVentRl, GiteMax, DVR_Mag, CA_Derive, VMG, BA_Derive, CMG, LI_Derive, Derive, Gite, OF_Gite, AngleMat, Route, HrJourUTC, TempAir, HistPresAt, Moteur, OF_Quete, OF_Tangage, Config, Eclairage, NbAffich, VitesSurf, VitVentApp, AncAVA, CapMag, DistWP, CapWP, EcartRoute, VitFond, CapFond, TxTerm, AnneeMois, StatusPil, AngVentApp, VersionTop, VarAlarme, PressAtmos, VitCourMes, DirCourMes, AngBarre, ConsGyroPil, FI_VitSurf, FI_Cap, PuisPilote, FI_VVA, ModePilote, FI_AVA1, TensPilote, Latitude, LatDecMin, FI_PARAM, Longitude, LonDecMin, TpFilt, FI_ACS, AH_VitSurf, AB_VitSurf, VitCible, CapProBord, RE_Cap, AVR_Cible, FO_Cap, %VitCible, AH_VVA, %VitPol, AB_VVA, AH_VVR, AB_VVR, RE_AVR, FO_AVR, Tangage, PressAtmHR, VitSurUsTr, RE_AVA1, FO_AVA1, HommeMer, ModePilHR, EtatPilHR, NvConPilHR, GainGlobal, PropoCap, IntegrCap, DerivCap, PropoGite, DerivGite, PropoTang, DerivTang, VitVirement, TpVirement, VirPresMin, VirPortMin, FilPiVitess, FilPiVentAp, FilPiVentRl, FilIncid, NbTelecom, VitEmpan, VitSurfMoy, IN_SpeedMoy, VitSurfMax, IN_SpeedMax, Langue, ModeRech_Tb, Nmea1, QualiteSpline_Tb, NbMaxSpline_Tb, MoyMaxBruit_Tb, DureePingAV_Tb, VVA_MesHR, DureePingAR_Tb, AVA_MesHR, Note_Qualite_AV_Tb, AngMatMes, Note_Qualite_AR_Tb, RingingAR_Tb, RingingAV_Tb, NivRSSI_Tb, ConsPilote, AVA_Pilot, ConsBarre, CapVrai, DirVentFnd, VitVentFnd, DVR_Vrai, ConsigneSP, VVR_Pilote, AVR_Pilote, DeclMag, VitSurfPil, VitFondMes, CapFondMes, AVA_Cor, VVA_Cor, Orig_VVR, Orig_AVR, Orig_DVR, 210 variables Des variables 8
  9. Confidentiel Propriété Meritis 9 Enjeux de l’analyse différée En cours

    Enjeux de l’analyse temps-réel A venir 1. Comprendre les variables de la course au large ▪ Enregistrement des informations utiles ▪ Ajouts de capteurs (capture vidéo, foils) ▪ Ajouts de données externes (météo, concurrents) 2. Collaborer avec les marins ▪ Utilisation d’outils communs ▪ Création d’une plateforme d’analyse 3. Identifier ensemble les axes de performance ▪ Constitution d’abaques ▪ Analyse via Machine Learning (calibration, vagues, pilotage automatique, dynamique du bateau) 1. Aiguiller le skipper dans ses choix stratégiques ▪ Construction de KPI’s en temps-réel​ ▪ Aide à la décision sur les réglages 2. Accompagner le skipper dans sa navigation ▪ Anticipation de grandes vagues​ ▪ Alertes en cas de détérioration de la performance​ 3. Améliorer le pilotage automatique​ ▪ Navigation plus souple et plus intelligente​
  10. Confidentiel Propriété Meritis 10 Mais aussi L’équipe 10 Loïc Veyssière

    Sébastien Rogues Paul Fleury Medina El Robrini Titouan Cazin Responsable projet / Architecte Machine Learning Engineer Data engineer Data scientist Skipper du Primonial Ocean Fifty Communication ▪ Laurie-Anne M. ▪ Anne-Sophie A. ▪ Flora S. Consultants ▪ Asma L. ▪ Guillaume C. ▪ Annie H. ▪ Jimmy C. ▪ Mehdi M. ▪ Flora P. ▪ Mathieu S. ▪ David L. ▪ Ilyes F. ▪ Salma S. Ambassadeurs ▪ Félix B. ▪ Pierre-Henri L. ▪ Sandy J. ▪ Julie V. ▪ Nolwenn A. ▪ Lisa A.
  11. Confidentiel Propriété Meritis Confidentiel Propriété Meritis On cherche avant tout

    à résoudre un problème concret Garder l’objectif en vue Science & analyse de données Expertises technologiques Connaissance ​ de la navigation​ Réussite du projet Haute disponibilité Résilience Cybersécurité Validité statistique Robustesse aux données Généralisation Méthodologie agile Cycles itératifs Validation des utilisateurs Prise en compte des demandes 11
  12. Confidentiel Propriété Meritis La voile et les enjeux numériques 2

  13. Confidentiel Propriété Meritis Confidentiel Propriété Meritis 13 Le vocabulaire de

    la voile Glossaire en vrac Vents ▪ Allures ▪ Au prés ▪ Au portant ▪ Angle de vent (apparent, réel) ▪ Vitesse du vent (apparente, réel) Mouvements ▪ Vitesse GPS ▪ Vitesse surface ▪ La gite ▪ Le tangage ▪ Derive ▪ Virement de bord ▪ Empannage ▪ La barre 1 nd (noeud) = 1.852 km/h Foil Grand-voile Vent Genois Grand gennaker Petit gennaker Les différentes allures
  14. Confidentiel Propriété Meritis Confidentiel Propriété Meritis 14 Des capteurs Anémomètre

    et girouette Capteur d’angle de barre Potentiomètres de mesure de hauteur et d’incidence de foils Babord et Tribord Mesure d’angle de rotation de mât Mesure de hauteur de dérive Centrale inertielle et GPS Capteur Ultrason (Vitesse surface)
  15. Confidentiel Propriété Meritis Confidentiel Propriété Meritis 15 Les sources de

    données Capteurs Centrale inertielle Météo Application voiles
  16. Confidentiel Propriété Meritis Confidentiel Propriété Meritis 16 Les polaires

  17. Confidentiel Propriété Meritis Les leviers de performances 17 Meilleure prédiction

    de la vitesse Impact de la houle sur les polaires Le réglage des foils La détection de détérioration de performances Le routage Le pilotage automatique
  18. Confidentiel Propriété Meritis Le volet technique 3

  19. Confidentiel Propriété Meritis Confidentiel Propriété Meritis Les fondamentaux Les défis

    data 1. Assurer la pérennité de la donnée ▪ Résilience (des backup) ▪ Réplication 2. Assurer la disponibilité de la donnée ▪ Haute disponibilité, pas d’interruption ▪ Accès en temps constant 3. Sécurité pour les données et des utilisateurs ▪ Sécurité en profondeur ▪ Lois RGPD pour les utilisateurs 4. Performance ▪ Système distribué ▪ Eviter bottleneck et SPOF (Single point of failure) ▪ Monitorer performance et coûts Les défis Machine Learning 1. Reproductibilité des expériences ▪ Versionner code et données ▪ Utiliser les fonctions aléatoires avec une seed 2. Connaitre les contraintes ▪ Quel coût en temps de calcul ▪ Quelle performance atteindre ▪ Doit-on expliquer les résultats (attention à l’effet boite noire des réseaux de neurones) 3. Passage à l’échelle ▪ Tout ne rentre pas dans un fichier CSV​ ▪ La mémoire RAM n’est pas illimitée ▪ Utiliser toutes les ressources à dispositions (serveurs, CPU, GPU)​ 4. Automatiser ! Tout commence avec la donnée disponible 19
  20. Confidentiel Propriété Meritis Confidentiel Propriété Meritis Un long chemin avant

    d’arriver à la mise en place de l’intelligence artificielle Préparer son infrastructure IA Expérimentations, algorithmes Agrégations, features Nettoyage, préparation, mise à disposition Infrastructure, pipelines, ETL, stockage non-structuré Instrumentation, capteurs, sources externes, logs Optimiser Apprendre Agréger / Labéliser Transformer / Explorer Stocker / Déplacer Collecter Pyramide de Maslow revisitée – source : https://hackernoon.com/the-ai-hierarchy-of-needs-18f111fcc007 20
  21. Confidentiel Propriété Meritis Confidentiel Propriété Meritis Couche Infrastructure ▪ Serveurs

    multi-usage d’AWS ▪ Virtualisation des composants (Docker, Kubernetes) ▪ Haute disponibilité: Load balancer (AWS) et reverse-proxy ▪ Authentification par Active Directory de Microsoft Couche Big Data ▪ Stockage de sauvegarde (AWS S3) ▪ Stockage pour la restitution et l’analyse (TimescaleDB) ▪ Ordonnanceur de tâches (Files d’attentes, Redis, Celery) Couche Intelligence ▪ Analyse de séries temporelles (Python, SQL) ▪ Analyse d’images (OpenCV, Tensorflow, Python) Couche Présentation ▪ Backend NodeJS ▪ Frontend VueJS, ThreeJS (3D), leaflet (Cartographie) Les technologies architecture macro 21
  22. Confidentiel Propriété Meritis Confidentiel Propriété Meritis 22 Le choix de

    la DB : TimescaleDB Basée sur PostgreSQL Performances accélérées (x10/x100) Echelle des volumes massive Relationnelle et Série Temporelle Entièrement managé Coûts réduits par des taux de compression élevés Source : https://www.timescale.com/
  23. Confidentiel Propriété Meritis Confidentiel Propriété Meritis ▪ Faible empreinte mémoire

    ▪ Connecteurs existants ▪ Replication et compression ▪ Requêtage par SQL ▪ Tables SQL « normales » 23 Le choix de la DB : TimescaleDB ▪ Environment docker / Kubernetes ▪ Scaling avec des hypertables ▪ Possibilité de scaling sur plusieurs noeuds ▪ Rééchantionnage base sur les views ▪ Projet très actif
  24. Confidentiel Propriété Meritis 24 Surcouche géographique et rasters - PostGIS

    Surcouche géographique et rasters - PostGIS 24 TimescaleDB supporte PostGIS ▪ Données géographiques ▪ Chargement de fichiers NetCDF, GeoTiff ▪ Gestion en Raster ▪ En SQL sur la même base de données
  25. Confidentiel Propriété Meritis 1 2 3 4 5 6 7

    8 Confidentiel Propriété Meritis 25 L’ordonnancement des tâches (1/2)
  26. Confidentiel Propriété Meritis Confidentiel Propriété Meritis 26 L’ordonnancement des tâches

    (2/2)
  27. Confidentiel Propriété Meritis Confidentiel Propriété Meritis 27 La visualisation -

    Graphana trop générique - Annotation sur le portail - Contrôle complet - Cartographie - Ouverture publique - Cycles itératifs
  28. Confidentiel Propriété Meritis Confidentiel Propriété Meritis 28 L’architecture & infrastructure

    API API Worker Worker Schedule Redis
  29. Confidentiel Propriété Meritis Le volet Data Science 4

  30. Confidentiel Propriété Meritis Confidentiel Propriété Meritis Le machine learning n’est

    pas toujours la solution Expérimenter méthodologiquement Ma méthodologie 2- Recherche bibliographique 3 - Métriques 1 – Reformulation du problème 4 - Construction des jeux de données 5 - Expérimentation 6 - Industrialisation 30
  31. Confidentiel Propriété Meritis Confidentiel Propriété Meritis 31 Quelques principes Le

    meilleur algorithme d’IA est celui qui n’en utilise pas Le machine learning est à utiliser si on a pas d’autres choix Le machine learning se justifie pour gagner de précieux pourcent de précision
  32. Confidentiel Propriété Meritis Confidentiel Propriété Meritis 32 Le problème de

    la calibration Vent apparent mesuré par la girouette et par l’anémomètre en tête de mât Correction de l’angle de vent mesuré par l’angle de rotation de mât Vent réel Vent apparent Vent vitesse = - Vitesse route surface Vent réel non calibré calculé Sources d’erreurs : - Accélération du vent au portant - Perturbations des capteurs par la voile - La gîte influence la mesure - Mauvais calcul de la route surface Courant Dérive (dû au vent) Route surface Vocabulaire : vent apparent ≠ vent réel ≠ vent fond Méthode de calibration de la vitesse du vent en fonction de l’angle au vent : - Lors du changement de cap, la vitesse mesurée est théorique constante - A l’aide du machine learning, recalibrer les offets des capteurs
  33. Confidentiel Propriété Meritis Confidentiel Propriété Meritis 33 Mesure et impact

    des vagues Mesure indirecte de la hauteur des vagues
  34. Confidentiel Propriété Meritis Confidentiel Propriété Meritis 34 L’impact des foils

    & crossover Visualisation des données de foils
  35. Confidentiel Propriété Meritis Confidentiel Propriété Meritis 35 Méthodes ML pour

    les séries temporelles Exemple d'application : Faire du Forcasting pour la prédiction de la hauteur de vagues Approche physique Approche statistique Approche Machine Learning Transformés de Fourier Arma/Arima Processus autorégressifs et moyenne-mobile Réseau de neurones récurrents (RNN) Modélisation à travers Des transformés de Fourier Réseaux de neurones présentant des connexions récurrentes
  36. Confidentiel Propriété Meritis Conclusion 5

  37. Confidentiel Propriété Meritis Confidentiel Propriété Meritis Nos réseaux sociaux 37

    Instagram l @meritis_officiel LinkedIn l Meritis Facebook l Meritis Twitter l @Meritis
  38. Confidentiel Propriété Meritis 38