Vincent Reverdy, la complexité des programmes informatiques
Vincent Reverdy a rejoint le Laboratoire d'Annecy de Physique des Particules (LAPP - CNRS/Université Savoie Mont Blanc) en 2021 en tant que chargé de recherche CNRS.
Quel est votre domaine de recherche ?
Vincent Reverdy : Je travaille sur la question de la complexité des programmes informatiques, et en particulier ceux utilisés en physique et en astrophysique numérique. Au-delà des besoins des applications haute performance en termes de pure puissance de calcul, le développement de ces applications fait aujourd'hui de plus en plus face à des problèmes de complexité logicielle. En cosmologie numérique où l'on cherche par exemple à simuler et à analyser la formation des grandes structures galactiques pour mieux comprendre la physique qui sous-tend l'évolution de l'Univers, cette problématique est si présente qu'elle est devenue l'un des principaux points de blocage dans la conception et l'implémentation de codes de simulation cosmologiques relativistes. Souvent, cette complexité est vue sous un angle purement technique qui conduit la plupart du temps à la formulation de solutions spécifiques qui ne font que repousser le problème.
Dans ce contexte, mon travail de recherche se concentre sur la formalisation des fondements théoriques de cette question dans l'objectif, à terme, d'y apporter des réponses de nature scientifique. C'est un travail fondamentalement interdisciplinaire qui mèle des aspects d'informatique théorique, de mathématiques, de logique, à des aspects de physique, de calcul haute performance, et de sciences computationnelles. Je trouve particulièrement stimulant le fait que cette thématique demeure aujourd'hui encore très largement inexplorée et représente un terrain de création théorique absolument immense. Elle n'en reste pas moins critique lorsque l'on prend en compte le fait que les considérations relativement abstraites qu'elle implique entrent directement en résonnance avec des problématiques beaucoup plus pratiques dans un monde où les sciences computationnelles sont amenées à jouer un rôle de plus en plus prégnant dans les grandes questions sociétales et où les difficultés rencontrées aujourd'hui en cosmologie numérique se manifestent d'ores et déjà en sciences du climat et en bioinformatique et où elles finiront immanquablement par concerner un nombre grandissant de domaines de recherche.
Qu’avez-vous fait avant d’entrer au CNRS ? Pourquoi avoir choisi le CNRS ?
V. R. : A l'origine, je suis issu d'une double formation entre l'école d'ingénieur en physique Grenoble-INP/Phelma et le Master d'Astrophysique de l'Université Grenoble Alpes. J'ai ensuite rejoint le Laboratoire Univers et Théories (LUTH - CNRS/Observatoire de Paris) pour y effectuer une thèse en cosmologie numérique de 2011 à 2014. Je garde un excellent souvenir de cette période tant du point de vue de la recherche que des gens que j'ai pu y côtoyer. Lorsque j'ai compris dans les premiers mois de ma thèse que la façon dont les simulations cosmologiques étaient aujourd'hui réalisées ne prenait pas en compte les équations d'Einstein dans toute leur généralité, j'ai mis le doigt sur un problème tellement fascinant qu'il allait structurer toute ma recherche, des questions de relativité numérique au moment de mon doctorat jusqu'à des problématiques de théorie des langages de programmation à l'heure actuelle. Je suis ensuite parti pendant cinq ans aux États-Unis à l'Université d'Urbana-Champaign dans l'Illinois, au sud de Chicago, où j'ai eu la chance de décrocher des financements de la National Science Foundation américaine qui m'ont permis de créer un groupe de recherche sur des thématiques à mi-chemin entre l'astrophysique numérique et l'informatique. J'ai bénéficié durant cette période d'une immense liberté académique qui a joué un rôle crucial dans l'élaboration des problématiques interdisciplinaires sur lesquelles je travaille encore aujourd'hui. Pendant toute cette période, j'ai gardé des liens très forts avec certains de mes collaborateurs français et je me suis largement investi dans la standardisation du C++ au niveau international. Je suis revenu en France fin 2019, peu avant le début de la pandémie dans le cadre d'un projet de recherche entre l'Ecole normale supérieure de Paris, l'Observatoire de Paris et INRIA, avant d'être admis au concours du CNRS sur un poste interdisciplinaire mêlant cosmologie et informatique. Depuis le 1er janvier 2022, je travaille en tant que chargé de recherche en informatique au CNRS au Laboratoire d'Annecy de Physique des Particules. Étant donné la nature de ma recherche, il était absolument essentiel pour moi de bénéficier de la plus grande liberté académique possible, et ce, sur le temps très long. Et de ce point de vue, il faut avouer que le cadre offert par le CNRS est, encore à l'heure actuel, idéal.
Qu’est-ce qui vous a amené à faire de l’informatique et/ou des sciences du numérique ?
V. R. : Aussi loin que je me souvienne, j'ai toujours eu un intérêt partagé pour la physique d'un côté et l'informatique de l'autre. A l'époque du choix de mon sujet de thèse, je m'étais spécifiquement dirigé vers une équipe de recherche en cosmologie numérique pour pouvoir y mener un projet de recherche interdisciplinaire. Toutefois à cette époque, et sans doute de par ma formation de physicien, je gardais un rapport assez applicatif à l'informatique. Je crois que ce qui a marqué un tournant pour moi a été la résultante de deux choses : d'une part la réalisation que la nature du problème auquel faisait face la thématique qui m'intéressait en astrophysique, à savoir celle de la cosmologie numérique relativiste, avait fondamentalement bien plus à voir avec un problème d'informatique fondamentale qu'avec un problème de physique, et d'autre part le fait d'être exposé à de nouvelles thématiques et de nouvelles communautés de recherche dans le cadre de la participation à la standardisation du langage C++. Pendant mes années aux Etats-Unis, j'ai eu la chance de pouvoir jouir d'une très grande liberté académique dont j'ai profité pour opérer un glissement thématique progressif d'abord sur des sujets liés aux langages de programmation et aux compilateurs, puis sur des domaines de plus en plus théoriques en lien avec la théorie des catégories et la théorie des types. Pendant longtemps, j'ai été amené à me positionner soit en tant que physicien qui fait de la recherche en informatique, soit en tant que chercheur en informatique intéressé par des questions de physique.
Aujourd'hui, je ne me pose plus la question, parce que la question n'a fondamentalement pas de sens : ce qui m'intéresse avant tout est de partir en exploration loin des sentiers battus et de bâtir des ponts théoriques entre des domaines qui n'ont, en apparence, pas grand chose à voir les uns avec les autres.