Backgound

Retour sur la technologie HD Rain

January 30, 2023
6-9 min

Cet article est la conclusion d’une série de 13 articles tournant autour de la solution développée par HD Rain, chacun expliquant en profondeur une partie de la technologie. L’objectif de ce dernier volet est d’apporter une vue d’ensemble et d’expliquer la technologie dans sa globalité. Les détails pourront être retrouvés dans les articles correspondants.

HD Rain mesure et prévoit les précipitations à haute définition à partir d'une technologie novatrice utilisant les satellites de télévision. Le signal qu’ils émettent est atténué lorsqu'il rencontre des gouttes de pluie.

Figure 1 : Principe général

Un seul capteur fournit des informations sur la quantité de pluie, autrement dit la pluviométrie, le long de la ligne fictive station - satellite. Avec un réseau de plusieurs capteurs on peut coupler ces informations et déterminer la pluviométrie non seulement le long des liaisons mais également entre elles et fournir ainsi notre produit final, à savoir des cartes de précipitations. La donnée n’est plus ponctuelle (une information par station) mais spatialisée.

Selon la zone à couvrir le réseau mis en place comptera plusieurs dizaines, centaines voire milliers de capteurs. Sur l’arc méditerranéen nous installons 1 000 capteurs, couvrant 12 départements dans le Sud-Est, soit 60 000 km².

Principe physique

Les satellites de télévision représentent la source de donnée à la base de la technologie HD Rain. Ils sont géostationnaires, c'est-à-dire fixes par rapport à un point à la surface de la Terre, ce qui facilite l'installation et le traitement des données, mais restreint la zone d'observation d'une station. Ils émettent quatre ondes électromagnétiques, en bande basse (fréquences comprises entre 10.7GHz et 11.7GHz) ou en bande haute (fréquences comprises entre 11.7GHz et 12.7GHz), polarisées verticalement ou horizontalement. Ces ondes sont mesurées par le capteur HD Rain fournissant alors quatre informations complémentaires sur la pluviométrie.

Ces ondes interagissent avec l’atmosphère et en particulier avec les gouttes de pluie qui absorbent et diffusent une partie du signal. Ces interactions sont d’autant plus importantes que le signal traverse un grand nombre de gouttes et que ces gouttes sont grosses. Le signal reçue au sol est donc atténué lorsqu’il pleut et il l’est d’autant plus que la pluie est forte (les gouttes étant alors plus nombreuses et plus grosses). Aussi le signal est davantage atténué lorsqu’il traverse une grande couche pluvieuse (indépendamment de son intensité).

Figure 2 : Deux liaisons peuvent traverser une même couche d’eau plus ou moins longuement

Pour relier la mesure du capteur à la pluviométrie, il est nécessaire de considérer l’atténuation linéique 𝐴𝑙𝑖𝑛 c’est à dire l’atténuation 𝐴 divisé par la longueur de la liaison 𝑙. On a :

On peut alors la relier à la pluviométrie $R$ à l’aide de la relation suivante :

Sans rentrer dans les détails, cette formule est déterminée mathématiquement après quelques hypothèses simplificatrices. Les coefficients 𝑎 et 𝑏 quant à eux sont évalués empiriquement. Ils dépendent principalement de la fréquence et de la polarisation du signal. Les quatre mesures du capteur (bande basse / haute, polarisation verticale / horizontale) fournissent donc quatre atténuations différentes bien qu’elles correspondent à quatre intensité pluvieuses identiques.

Première étape : la pluviométrie par capteur

La première étape algorithmique consiste à transformer la puissance du signal TV (en dB) enregistrée par le capteur en une quantité de pluie (en mm/h).

Comme on l’a vu dans la section précédente, la pluviométrie (en mm/h) 𝑅 se calcule à partir de l’atténuation linéique 𝐴𝑙𝑖𝑛. Les longueurs des liaisons étant facilement calculables, la seule difficulté réside dans l’obtention de l’atténuation, autrement dit la perte du signal, due à la pluie.

On commence par distinguer les périodes pluvieuses des périodes sèches à l’aide d’algorithmes de machine learning et plus particulièrement des réseaux de neurones. L’objectif de ces modèles est de calculer en temps réel une probabilité de pluie (valeur entre 0 et 1) à partir du signal enregistré. Lorsque la probabilité dépasse un certain seuil (0.4 en l’occurrence) on considère qu’il pleut, sinon qu’il ne pleut pas.

Figure 3 : Mesure du signal électromagnétique (en bleu), probabilité de pluie (en rouge) et seuil (en noir).

Ces modèles de Deep Learning sont entraînés sur des millions d’exemples entrée / label. L’entrée est une série temporelle de quelques heures de la puissance enregistrée par le capteur et le label est la sortie attendue du modèle à savoir une série temporelle de même durée avec des 0 (quand il ne pleut pas) et des 1 (quand il pleut). Le processus d’association des labels aux entrées s’appelle la labellisation. Dans notre cas elle a été réalisée automatiquement à partir des données de Météo France ou bien à la main. La labellisation est essentielle durant la phase d’entraînement du modèle. Les millions de paramètres qui régissent son comportement vont être calibrés lors de cette phase afin que les sorties qu’il génère à partir des entrées et de ses multiples coefficients correspondent aux labels. Une fois les paramètres ajustés, le modèle est capable d’associer les bonnes sorties aux bonnes entrées, c’est à dire d’affirmer s’il pleut ou non en fonction de la puissance mesurée.

La détection qualitative (pluie / non pluie) est une étape intermédiaire et indispensable à la détection quantitative (atténuation due à la pluie). Elle va nous permettre de facilement déterminer le niveau de référence, à savoir la puissance que l’on recevrait s’il ne pleuvait pas.

Le signal est atténué lorsqu’il pleut, mais les variations ne sont pas uniquement dues aux précipitations. La puissance reçue varie également en fonction de la température, des nuages ou encore de la présence ou non de signaux parasites. Or ce qui nous intéresse c’est l’atténuation causée par la pluie d’où la notion introduite juste au dessus de niveau de référence.

Figure 4 : Variations du signal par temps sec

La première façon de faire est d’interpoler linéairement, c’est-à-dire de relier par une droite les valeurs mesurées en début et en fin d’évènement. Cette méthode simple donne des résultats satisfaisants car les périodes pluvieuses relativement courtes ne permettent pas au niveau de référence de beaucoup varier. La faible variation entre le début et la fin de l’évènement est supposée linéaire, ce qui sans information supplémentaire, est la meilleure approximation que nous pouvons faire.

La seconde façon de faire est d’utiliser un capteur de température, ce paramètre explique en grande partie les variations de la puissance reçue par temps sec. A l’aide d’un second modèle de machine learning, on détermine le niveau de référence à partir de la température lors des périodes pluvieuses.

Figure 5 : Puissance reçue (en bleu : non pluie / en rouge : pluie) et niveaux de références (en pointillé vert : méthode naïve / en noir : méthode avec la température)

La première étape algorithmique consiste donc à traiter les données capteur par capteur pour transformer les séries temporelles des puissances reçues en séries temporelles de pluviométries moyennes le long des liaisons.

Seconde étape : Génération des cartes de précipitations

La seconde étape algorithmique consiste à spatialiser les mesures ponctuelles obtenues par chaque capteur en tirant profit des corrélations spatio-temporelles entre les mesures. Pour cela on a recours à l’assimilation de données.

Trivialement, cela revient à affirmer que si une première station mesure 60mm/h à 14h00 et qu’une seconde station mesure 60mm/h à 14h10 alors il a plu 60mm/h à 14h05 entre les deux stations.

L’objectif est de déterminer une série temporelle de cartes de pluie rafraîchies toutes les minutes, dont les pixels représentent la pluie dans un carré de 500 m par 500 m. Pour cela on dispose des mesures des capteurs ; ces derniers, longs de quelques kilomètres, sont une moyenne pondérée de quelques pixels.

Figure 6 : Schéma d’une liaison dont la projection traverse quatre pixels

On cherche des cartes de pluie compatibles avec les mesures des liaisons c’est à dire qui permettent de retrouver les mesures réellement relevées par les capteurs mais également des cartes cohérentes spatialement. Par exemple, on privilégiera la carte de gauche à la carte de droite sur la figure 7 bien que toutes deux cohérentes avec les mesures.

Figure 7 : Deux cartes de pluie compatibles avec les mesures. À gauche (resp droite) variations graduelles (resp brutales) des pixels les uns par rapport aux autres.

L’assimilation de données telle qu’elle est utilisée ici est un algorithme permettant de déterminer les cartes 𝐶(0), 𝐶(1), ..., 𝐶(𝑛) d’une grandeur physique (en l’occurrence de pluie) aux instants 𝑡0, 𝑡1, ..., 𝑡𝑛 dont l’évolution est régie par un modèle mathématique représenté par une fonction ⨍.  En d’autres termes, 𝐶(1) = ⨍(𝐶(0)), 𝐶(2)} = ⨍(⨍(𝐶(0))), ..., 𝐶(𝑛) = ⨍(⨍(𝐶(0))). Les cartes 𝐶(0), 𝐶(1), ..., 𝐶(𝑛) sont alors toutes déterminées à partir de la carte 𝐶(0), seule réelle inconnue à notre problème. Dans notre cas, on suppose que les cartes de pluie se déplacent sans se déformer au gré du vent en altitude, ce paramètre est obtenu à partir des simulations réalisées par Météo France, ce qui nous donne ainsi notre fonction ⨍.

La détermination de 𝐶(0), et donc de toutes les cartes suivantes, repose sur la minimisation d’une fonction de coût 𝐽 exprimant l’erreur quadratique entre les observations réellement mesurées (𝑝𝑖(𝑘) : mesure du capteur 𝑖 à l’instant 𝑡𝑘) et celles que l’on aurait mesurées dans le cas où l’on aurait eu les cartes 𝐶(0), 𝐶(1), ..., 𝐶(𝑛) (^𝑝𝑖,𝐶(𝑘) : mesure que l’on aurait eu sur le capteur 𝑖 si on avait eu la carte 𝐶(𝑘)). Un opérateur d’observation par capteur (𝐻𝑖 : opérateur d’observation du capteur 𝑖) permet de simuler la mesure de ce capteur à partir des cartes.

La solution obtenue est une carte de pluie dont l’évolution régie par la fonction ⨍ permet d’expliquer les mesures réalisées par les capteurs.

Figure 8 : Cartes générées par HD Rain à l’issue de l’assimilation de données. Chaque pixel donne la pluviométrie en mm/h dans une zone de 500*500 mètres. Les cartes sont rafraîchies toutes les minutes.

En résumé

Les satellites géostationnaires de télévision sont utilisés de manière opportuniste par HD Rain pour mesurer et anticiper les précipitations. Le signal est atténué lorsqu'il traverse des précipitations par absorption de l’énergie des gouttes de pluie et par diffusion de Mie. La mesure au sol de la puissance reçue est alors traitée indépendamment pour chaque capteur pour fournir une détection qualitative pluie / non pluie. Cette dernière, couplée à un second modèle de machine learning, fournit le niveau de référence à savoir la puissance que l’on recevrait s’il ne pleuvait pas. En la soustrayant au signal réellement mesuré, on en déduit l’atténuation due à la pluie. Puis en divisant cette grandeur par la longueur de la liaison on obtient l’atténuation linéique que l’on relie à la pluviométrie en utilisant la formule :

La mise en place d'un réseau de capteurs permet de coupler les données de chaque capteur et d'en déduire grâce à l’assimilation de données la pluviométrie sur l'intégralité d'une zone d'étude. On obtient par la même occasion la dynamique de l'événement dont l'extrapolation nous donne une prévision à court terme.

Cette article marque la fin d’une série d’articles sur la technologie HD Rain mais les HD Sciences reviendront en 2023 pour traiter des sujets divers et variés autour des sciences.