Grilles adaptatives pour la librairie de traitements sismologiques Seislib

Mission de R&D sur les grilles d'inversion adaptative pour Sisprobe

Contexte

Sisprobe est une entreprise grenobloise pionnière dans le domaine de la tomographie par bruit ambiant. Depuis plusieurs années, nous collaborons avec eux sur différents sujets d'ingénierie logicielle et d'infrastructure de calcul. Ces deux derniers mois, nous avons mené une mission de R&D pour leur compte sur le sujet des grilles d'inversion adaptatives.

Enjeux

La tomographie par bruit ambiant est une méthode d'imagerie sismique innovante qui permet de cartographier le sous-sol en utilisant le bruit sismique naturel (activité humaine, vagues océaniques, etc.). Contrairement aux méthodes traditionnelles, elle ne nécéssitent pas de sources artificielles (comme des explosifs ou des vibrations contrôlées) et repose sur l'enregistrement continu des vibrations par un réseau de capteurs, sur une échelle de temps relativement longue, allant de quelques jours à plusieurs mois.

Grâce à des techniques mathématiques avancées, nous arrivons extrayons des informations sur la propagation des ondes dans le sous-sol, ce qui permet d'en déduire des propriétés comme la vitesse des ondes sismiques. Cependent, la qualité des résultats dépend fortement de la densité des trajets sismiques (appelés rais) entre les capteurs.

Si l'on utilise une grille d'inversion régulière (où toutes les cellules ont la même taille), certaines zones seront sur-échantillonnés (trop de rais) tandis que d'autres seront sous-échantillonées (trop peu de rais). Cela entraîne des variations de qualité de l'image selon les régions.

Problématique

Pour résoudre ce problème, nous avons exploré les grilles adaptatives, où les cellules peuvent avoir des tailles variables en fonction de la densité des rais. L'intérêt est de répartir de manière plus uniforme pour améliorer la qualité globale de l'inversion.

La bibliothèque libre Seislib propose déjà une grille adaptative pour la tomographie à bruit ambiant : à partir d'une grille régulière, les cellules sont divisées si un nombre suffisant de rais les traverse. Cependant, cette méthode a un défaut majeur : elle raffine trop les cellules, ce qui méne à une situation où certaines cellules sont trop petites et donc sous-échantillonnées.

L'exemple ci-dessous montre une grille générée par Seislib, où une majorité des cellules contiennent moins de 10 rais, un nombre insuffisant pour obtenir des résultats d'inversion fiables :

Grille adaptative originale de Seislib

Solution

Notre travail a consisté à modifier l'algorithme de Seislib pour intégrer un test d'échantillonnage avant chaque division de cellule. Concrètement :

1 - Avant de diviser une cellule, nous vérifions que les sous-cellules créées contiendront assez de rais (au moins min_rays_subcells, un paramètre défini par l'utilisateur).

2 - Si ce n'est pas le cas, la division est annulée, évitant ainsi la création de cellules trop petites.

Cette protection contre le sous-échantillonnage est décrite dans l'article de référence de Schaefer et al. dont nous nous sommes inspirés.

Le résultat est visible dans la figure ci-dessous : notre grille adaptative améliorée ne contient aucune cellule avec moins de 40 rais (on a spécifié min_rays_subcells = 40), assurant ainsi un échantillonage de meilleure qualité.

Grille adaptative améliorée