Le principe de la technologie HD Rain est de déduire les précipitations à partir des mesures du signal émis par les satellites de télévision. Dans les précédents articles nous avions vu que lorsque le signal rencontrait des gouttes de pluie, il était affaibli par diffusion de Mie. Ainsi, plus la puissance reçue au sol est faible, plus la pluie entre le satellite et le capteur est forte. Des réseaux de neurones profonds ont été entraînés afin de distinguer les périodes pluvieuses des périodes sèches. Ce modèle de détection nous donne une information purement qualitative en répondant à la question “est-ce qu’il pleut ?”, et constitue la première couche algorithmique. De là, une seconde couche permet l’estimation du signal que l’on recevrait s’il ne pleuvait pas, aux instants où le premier modèle a détecté de la pluie. En soustrayant cette estimation au signal réellement mesuré au sol on obtient le signal perdu à cause de la pluie que l’on relie par une relation physique à la pluviométrie en mm/h. On peut alors répondre à la question “combien il pleut ?”.
Le problème c’est que l’on ne peut répondre à cette question que sur le trajet du signal, c’est-à-dire le long d’une ligne. Une fois projetées au sol (cf figure 1) ces lignes de l’ordre de quelques kilomètres représentent la portée du capteur. Toute cellule de pluie (au sol) qui traverse la ligne sera détectée et mesurée par le capteur, les autres seront invisibles. Pour délivrer une donnée aussi précise avec une résolution spatiale de 500 m il faudrait un nombre de capteurs bien trop important. Heureusement, des techniques de spatialisation nous permettent de déduire la pluviométrie en dehors des liens sans ajouter de capteurs supplémentaires. Dans cet article nous discuterons d’une méthode algorithmique bien connue en météorologie, l’assimilation de données.
HD Rain fournit des données météorologiques précises à haute résolution spatiale (500 m) et temporelle (1 min). Ces données sont visualisables sous forme de cartes mises à jour toutes les minutes. Ces cartes sont constituées de pixels contenant la pluviométrie dans un carré de 500 m par 500 m (cf figure 2). L’objectif est donc de restituer une série temporelle de cartes de pluie.
Figure 2 : 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.
Pour cela, on dispose de la pluviométrie mesurée par les capteurs que l’on peut voir comme des lignes traversant un certain nombre de pixels. La plupart des pixels ne sont traversés par aucun lien, d’autres par une portion plus ou moins grande d’un voire de plusieurs liens (cf figure 3).
Pour qu’une carte soit compatible avec les mesures des capteurs, il faut qu’elle puisse expliquer les mesures réalisées. C’est-à-dire que pour chaque capteur, la moyenne pondérée des valeurs des pixels par les longueurs des portions de liens coïncide avec la mesure du capteur.
Par analogie, on peut voir le carte de pluie comme l’ensemble des notes d’une classe d’élèves. On dispose de la moyenne des notes de certains élèves. L’objectif est de déterminer les notes de élèves dont on connait la moyenne mais également celles de ceux dont on ne connaît pas la moyenne. Une solution compatible est une solution où les notes proposées permettent de retrouver les moyennes des élèves que l’on connait.
Bien entendu un tel problème est impossible à résoudre car, comme mentionné dans la partie précédente, une infinité de solutions permettent d’expliquer les mesures. Heureusement, contrairement aux notes des élèves, les cartes de pluie ont l’avantage d’être très corrélées spatialement et temporellement.
Les valeurs des pixels ne sont pas indépendants les uns des autres. Cela nous permet de rejeter les solutions dont les variations d’un pixel à un autre seraient trop brutales. Ainsi, si les deux cartes de la figure 5 représentent deux cartes compatibles avec les mesures, on privilégiera la carte de gauche par rapport à celle de droite.
De la même manière, on préfèrera une évolution progressive des valeurs des pixels d’une minute à l’autre. Les pluviométries des pixels ne sont pas indépendantes les unes des autres, elles évoluent conjointement et graduellement.
Pour prendre en compte ces corrélations spatio-temporelles ainsi que les observations mesurées par nos capteurs, on a recours à l’assimilation de données.
Pour cela on a besoin d’un modèle mathématique qui permet d’obtenir la carte à l’instant 𝑡𝑛+1 notée 𝐶(𝑛+1) à partir de la carte à l’instant 𝑡𝑛 notée 𝐶𝑛. Ce dernier repose sur un modèle physique simplifié utilisant les vents à différentes altitudes nous permettant de déterminer le sens et la vitesse de déplacement des cellules de pluie. On représente ce modèle par une fonction ⨍, de sorte que 𝐶(𝑛+1) = ⨍(𝐶(𝑛)).
On a donc 𝐶(𝑛) = ⨍(𝑛)(𝐶(0)). Pour connaître les cartes aux instants 𝑡0, 𝑡1, ... , 𝑡𝑛 il suffit de connaître la carte à l’instant 𝑡0.
Supposons que l’on ait 𝑟 capteurs mesurant les pluviométries aux instants 𝑡0, 𝑡1, ... , 𝑡𝑛. La pluviométrie à l’instant 𝑡𝑘 du capteur 𝑖 est notée 𝑝𝑖(𝑘). À chaque instant, on peut facilement calculer la pluviométrie qu’aurait mesurée un capteur à partir d’une carte en faisant la moyenne des pluviométries des pixels de cette carte pondérées par les longueurs des portions de liens traversant les pixels. On note ^𝑝𝑖,𝐶 la pluviométrie qu’aurait mesurée le capteur 𝑖 à partir de la carte 𝐶. Il existe donc 𝑟 fonctions notées 𝐻𝑟 appelées opérateurs de projection. L’enjeu est de trouver la carte à l’instant initial 𝐶(0), les suivantes sont obtenues par application successives de la fonction ⨍, expliquant au mieux les observations 𝑝𝑖(𝑘). Pour cela on cherche à minimiser la grandeur 𝐽. La grandeur 𝐽 dépend uniquement de 𝐶(0), les valeurs 𝑝𝑖(𝑘) sont les mesures réelles des capteurs que l’on connaît et les fonctions 𝐻𝑖 et ⨍ sont également connues.
La troisième couche algorithmique est la spatialisation des données. 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 sont une moyenne pondérée de quelques pixels.
Étant donné qu’une liaison peut traverser plusieurs pixels ou encore que certains pixels ne sont traversés par aucune liaison, il peut paraître illusoire d’espérer déterminer les valeurs de chaque pixel à partir de moyennes de certains d’entre eux.
Heureusement, les cartes de pluie présentent de fortes corrélations spatio-temporelles, ajoutant des informations précieuses dont on a pu tirer profit en utilisant l’assimilation de données.
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 aux instants 𝑡0, 𝑡1, ... , 𝑡𝑛 dont l’évolution est régie par un modèle mathématique représenté par une fonction ⨍. Cela repose sur la minimisation d’une fonction de coût exprimant l’erreur quadratique entre les observations réellement mesurées et celles que l’on aurait mesurées dans le cas où l’on aurait eu les cartes 𝐶0, 𝐶1, ... , 𝐶𝑛. Un opérateur d’observation par 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.