« Le bateau qui vole » : l’analytique en temps réel au service d’un skipper
En novembre 2022, Sébastien Rogues, membre de la Primonial Sailing Team et skipper sur le trimaran Ocean Fifty, sera au départ de la Route du Rhum. Il espère bénéficier de l’expertise du cabinet de conseil Meritis, dont une équipe de trois personnes qui lui prépare un portail pour visualiser et analyser en temps réel les données provenant du bateau. Et ce, afin de prendre de meilleures décisions de navigation.
Pas de doute possible : les courses à la voile deviennent des compétitions technologiques. Des standards s’imposent : l’un d’entre eux n’est autre que le foil. Cette aile ou ces ailes s’enfoncent dans la mer. La vitesse du bateau engendre sur ces équipements une portance hydrodynamique qui a pour effet de soulever sa ou ses coques au-dessus du niveau de la mer. Cela permet de réduire les frottements avec l’eau et d’augmenter considérablement l’allure de l’embarcation.
Sébastien Rogues est un jeune skipper de 34 ans membre de la Primonial Sailing Team. Il peut se targuer d’un palmarès plus long que son voilier. Il pilote l’Ocean Fifty, un trimaran muni de foils, capable d’atteindre des vitesses supérieures à 40 nœuds lors de courses offshore. Cependant, au cours d’une régate transatlantique, le skipper ne cherche pas les pointes de vitesse, mais à entretenir une allure moyenne de 20 à 25 nœuds, et de 25 à 30 nœuds quand le vent est fort.
Le marin est persuadé que pour battre de nouveaux records les membres de cet écosystème ont besoin du numérique.
Sébastien RoguesSkipper du trimaran Ocean Fifty et membre de la Primonial Sailing Team
« J’ai une croyance depuis très longtemps : dans la voile, le prochain levier de performance sera le digital. Nous savons construire des bateaux et les foils pour les faire voler. Demain, ce qui fera gagner 10 % de performance à un bateau, ce sera le numérique », prédit Sébastien Rogues. « Le sujet est vaste », reconnaît-il. « Il faut y aller étape par étape ».
C’est dans cette optique que les discussions avec le cabinet de conseil IT Meritis ont débuté. De ces échanges entre le marin, son sponsor Primonial, son équipe et Gilles Duret, cofondateur et PDG de Meritis est né un partenariat à l’été 2019 pour employer le big data et le machine learning comme ce levier de performance.
L’objectif pour le skipper est de pouvoir visualiser en temps réel via un tableau de bord le comportement du trimaran en réaction à la vitesse du vent, aux conditions météorologiques, à taille de la houle, la force des courants et tout phénomène qui pourrait affecter son avancée lors de régates. Mais avant cela, les deux parties ont dû rattraper leur retard par rapport à d’autres disciplines.
« Le Problème de mon point de vue est que la voile est très en retard en matière de digital », indique Sébastien Rogues. « Il a déjà fallu revoir un certain nombre de choses basiques pour qu’ensuite Loïc puisse avec les équipes de Meritis implanter leur savoir-faire », ajoute-t-il.
Ces choses basiques, selon le skipper, ce sont la récolte de données, l’installation sur le trimaran de capteurs IoT nécessaires à la collecte d’informations et surtout, l’élaboration d’une feuille de route.
Le fameux Loïc évoqué par Sébastien Rogues, c’est Loïc Veyssière, consultant et Machine Learning Engineer chez Meritis. « Je fais partie d’un groupe de cinq experts qui supervise les projets d’innovation chez Meritis. Mon savoir-faire est très transverse : je suis un informaticien-mathématicien, je fais des systèmes Big Data et de machine learning », déclare-t-il.
Loic Veyssière s’occupe du déploiement de gros dispositifs de data science pour de grands comptes issus du secteur bancaire. « C’est très différent du bateau », plaisante-t-il. Le consultant gère ce projet nommé « Le Bateau qui vole » depuis octobre 2019 avec deux autres collaborateurs, en parallèle de son activité principale.
Un premier défi : la collecte des données
Le consultant s’est donc d’abord penché sur la manière d’améliorer les systèmes à bord, c’est-à-dire de « raccorder les tuyaux », comme l’exprime Sébastien Rogues, pour faire transiter les données du bateau vers les serveurs de Meritis.
« La collecte est souvent la partie oubliée, il faut l’automatiser. Nous avons développé un petit logiciel. Il suffit à Sébastien d’appuyer sur un bouton pour m’envoyer les données », précise l’ingénieur en machine learning.
La question du stockage des données et de leur accès en quasi-temps réel s’est également posée. La trentaine de capteurs permet de recueillir 200 variables enregistrées 25 fois par seconde.
Le Fifty Ocean avait déjà des senseurs qui relevaient 165 variables, mais l’équipe de Meritis ne parvenait pas à obtenir toutes les informations nécessaires et a installé des dispositifs supplémentaires à l’hiver 2020. « Il nous manquait des capteurs sur les ailes des foils. Nous ne pouvions pas travailler sans cela », explique Loïc Veyssière.
En trois ans, le skipper et l’équipe de Meritis ont enregistré 1 758 heures de navigation, soit « un demi téraoctet » de données. Ces séries temporelles brutes sont stockées en différé dans des buckets S3. Les premières analyses sont effectuées à partir de la base de données TimeScaleDB (pour faire simple, une surcouche time series par-dessus PostgreSQL) qui accueillait plus de 200 Go de données compressées en avril 2021. TimescaleDB est combinée avec PostGIS pour les données géographiques. Meritis emploie également Redis et l’outil de file d’attente Celery.
« Nos deux serveurs Amazon EC2 qui hébergent la base de données commencent à souffrir. Nous allons passer à quatre serveurs pour supporter la charge », avertit Loïc Veyssière. « Nous n’avons pas encore ingéré la météo, cela va accroître considérablement la volumétrie ».
Cette forte augmentation s’explique par le fait que le consultant estime que toutes les données accessibles sont utiles. « Si je m’intéresse à la météorologie, je veux pouvoir exploiter les informations en provenance du monde entier, on ne fait pas dans la demi-mesure », tranche-t-il.
Ensuite, il faut nettoyer, préparer les données, réaliser les « agrégations afin de tirer des ordres 1 ou 2 par rapport aux performances ». Les modèles d’analyse sont bâtis avec les langages Python et SQL.
Un passage progressif à l’analytique en temps réel
Loïc VeyssièreConsultant et Machine Learning Engineer, Meritis
« Aujourd’hui, nous sommes très terre à terre vis-à-vis de l’analytique : nous effectuons des corrélations simples, de la statistique standard », indique le consultant.
« Nous cherchons à savoir comment les données sont reliées. Une fois que nous avons les bonnes informations pour valider ces corrélations, nous la précisons avec davantage de critères. Notre but est de quantifier les bons paramètres pour que le bateau aille vite ».
Puis, il s’agit de bâtir une interface Web à partir de laquelle Sébastien Rogues peut obtenir une vue combinée des données dans le temps, en fonction de marqueurs géographiques. Le skipper peut déjà sélectionner des segments, soit des entraînements ou des courses pour évaluer a posteriori l’évolution des variables.
Au début du mois d’avril 2021, ces analyses étaient effectuées en différé. Cette application Web (constitué d’API NodeJS, et d’un front-end bâti avec VueJS ThreeJS et Leaflet) était encore en développement. Le consultant veut mettre à disposition du skipper des tableaux de bord affichant les données en temps réel en tirant des flux directement depuis les capteurs vers un ordinateur à bord, sans passer par Internet.
Il faut également spécifier les paramètres de données disponibles pour perfectionner les performances du bateau.
« Avec Sébastien, nous cherchons à améliorer la précision des polaires. En voile, la polaire est l’indicateur standard, cela nous donne la vitesse du bateau en fonction de l’angle et de la force du vent. Nous aimerions plus de dimensions : l’agitation de la mer, l’influence des foils en fonction de cette agitation », explique Loïc Veyssière.
En novembre 2021, Sébastien Rogues participera à la Transat Jacques – Vabre, du Havre à la Martinique, à bord du Fifty Ocean. En novembre 2022, il prendra le départ de la Route du Rhum, de Saint-Malo à Pointe-à-Pitre. « Pendant la Jacques Vabres, nous allons enregistrer quinze jours de navigation de manière très propre. Les données vont être géniales », se réjouit d’avance le skipper.
Du machine learning pour analyser la hauteur des vagues
« L’état de la mer influe beaucoup sur les polaires. Quand l’on part sur une Route du Rhum ou sur une Transat Jacques-Vabre, on doit subir un système dépressionnaire d’automne dans le golf atlantique. Si l’on mesure vingt nœuds de vent de travers, le bateau est censé filer à trente nœuds, mais si l’on a trois à quatre mètres de hauteur de vague, la polaire est divisée par deux. En réalité, si l’on va à plus de 15 nœuds dans de telles conditions, le bateau se disloque », illustre Sébastien Rogues.
En mer, le skipper peut constater cette problématique de ses propres yeux. Mais son routeur à terre, l’opérateur chargé du suivi de la météo pendant toute la durée de la régate doit comprendre ce phénomène de dégradation de polaire avant que le marin y soit confronté. « Si nous étions capables de fournir cette information au routeur, nous pourrions optimiser notre route, par exemple effectuer des points de virement ou changer de cap au bon moment », considère Sébastien Rogues.
Sébastien RoguesSkipper du trimaran Ocean Fifty et membre de la Primonial Sailing Team
Problème, il n’existe pas de capteur dédié à la mesure de la hauteur des vagues. Or les deux collaborateurs déclarent que cette indication est cruciale.
« Le monde de la voile rencontre les mêmes problématiques que celui de l’automobile avec la conduite autonome », assure le marin. « Sur une régate en solitaire, par exemple le Vendée Globe, le pourcentage de navigation en pilotage automatique frôle les 99 %. Finalement, le skipper s’occupe du management du bateau. Sauf que notre pilote automatique fonctionne en réaction des données à sa disposition pour garder soit une consigne de cap, soit une consigne d’angle par rapport au vent », détaille-t-il.
« Le pilote automatique aura besoin à terme de voir devant lui, de comprendre les vagues. Si, lors d’une régate transatlantique, le bateau en entrant dans une vague tire la barre une seconde plus tôt que ce qu’il ne le fait aujourd’hui, et si nous prenons en considération que le bateau subit 1 500 vagues par jour, le gain à l’arrivée sera énorme », anticipe-t-il.
Pour cela, Sébastien Rogues a bien conscience qu’il faudrait déployer des caméras étanches reliées à des algorithmes de computer vision capable de détecter les vagues et leur taille. Or cela demande des moyens importants et de nombreuses sessions pour entraîner ces modèles complexes, comme le lui a fait comprendre le consultant chez Meritis. Il a pourtant identifié une première solution à cette problématique.
« Pour y remédier, nous allons concevoir un régresseur linéaire (sic) très simple qui, à partir des données gyroscopiques sous forme de séries temporelles associées aux informations météorologiques, va permettre d’estimer la hauteur des vagues en temps réel », explique Loïc Veyssière.
« C’est la cerise sur le gâteau », déclare-t-il. « Le machine learning est là pour récupérer les 3-4 % de performances quand les statistiques ne fonctionnent pas. Cela ne sert à rien d’aller chercher dans des réseaux de neurones compliqués. De plus, je conserve une interprétabilité de mes résultats en le comparant à l’aide de formules physiques ».
D’autres modèles de machine learning sont envisagés. Pour l’instant, l’équipe de Meritis emploie des librairies et des frameworks comme OpenCV, TensorFlow et Seq2sec.
Mais certaines données, machine learning ou non, demeurent difficiles à interpréter, notamment la densité du vent. « En novembre, un vent de vingt nœuds au Havre n’a rien à voir avec un vent qui atteint la vitesse en arrivant en Martinique 15 jours plus tard. L’augmentation de la température influe sur sa densité », indique Sébastien Rogues. « Plus on se rapproche de la Martinique, plus on rehausse nos cibles de changement de voiles. Dans la Manche, à 18 nœuds de vent on peut prendre un riss dans la grand-voile, à 23 nœuds en Martinique ; pas question de reproduire la même situation », prévient-il. Ce problème-là, c’est au skipper de le résoudre, pour le moment.
De son côté, le consultant chez Meritis se concentre sur le cœur du projet, la mise à disposition à Sébastien et à ses routeurs, des données et des analyses des variables en temps réel.
« Le départ de la Route du Rhum est ma date limite pour le rendu de la V1. Nous aurons les données et les analyses en temps réel accessibles depuis un tableau de bord. J’espère que nous pourrons aller plus loin », anticipe Loïc Veyssière.
« C’est une énorme chance de bénéficier du savoir-faire de Meritis et en particulier de travailler avec Loïc sur ce projet », se réjouit Sébastien Rogues. « Nous voulons aussi partager l’expérience avec les fans et nous cherchons des moyens de diffuser les informations en temps réel en provenance du bateau. Le numérique va nous apporter une nouvelle manière de communiquer. Les idées émergent à chacune de nos discussions », conclut le skipper.