OpenDreamKit : promouvoir le logiciel libre communautaire pour le calcul mathématique

Publié le 19 décembre 2019

OpenDreamKit est une infrastructure de recherche qui vise à créer et renforcer des environnements de recherche virtuels. Développée dans un premier temps pour soutenir la recherche en mathématique, cette e-infrastructure peut s’adapter à de nombreux autres domaines de recherche. Ce projet coordonné par des scientifiques du Laboratoire de Recherche en Informatique - LRI (UPSud/CNRS) a été financé par l’Europe dans le cadre d’un programme H2020.

La mécanisation du calcul s’inscrit depuis toujours au cœur des sciences mathématiques, pour explorer et découvrir de nouvelles structures mathématiques ou même pour démontrer des théorèmes. Au-delà des mathématiques, le calcul a été et restera toujours un vecteur majeur du progrès scientifique. Ainsi, depuis l’arrivée des premiers ordinateurs, l’informatique est devenue un outil de référence pour les mathématiciens; elle est devenue leur microscope, et est utilisée à toutes les étapes de leurs recherches.

Ces dernières années, des communautés dynamiques de mathématiciens ont été à l’avant-garde du mouvement de la Science Ouverte en développant un large écosystème d’outils open source. Cet écosystème a néanmoins souffert de fragmentation et de manque de reconnaissance: les financements et les opportunités de carrière tendent à primer les résultats originaux au détriment de l’activité quotidienne de correction de bugs et d’accompagnement des utilisateurs. Parallèlement, les premiers environnements de recherche virtuels ont démontré leur potentiel pour servir les besoins croissants des mathématiciens: réduire les entraves à l’accès, élargir l’audience, faciliter la collaboration et la Science Ouverte.

Aussi, lorsque le Programme Européen H2020 d’E-infrastructure lança en 2014 un appel à projets centré sur les environnements virtuels de recherche, quelques pionniers du domaine ont initié un processus ouvert pour rapprocher les communautés scientifiques impliquées et élaborer collectivement un projet ambitieux de recherche et de développement d’un montant de 7.6 M€, nommé « OpenDreamKit » (opendreamkit.org).

Coordonné par des scientifiques du Laboratoire de recherche en Informatique (Université Paris-Sud/CNRS), ce projet a impliqué une cinquantaine de participants, répartis dans sept pays européens (France, Belgique, Allemagne, Norvège, Pologne, Royaume-Uni et Suisse); de septembre 2015 à août 2019, il a employé en moyenne onze chercheurs et ingénieurs de recherche à temps plein.

L’écosystème existant offrait la possibilité de couvrir un large champ des Mathématiques Pures et un spectre d’applications allant d’un logiciel de calcul installé sur un ordinateur personnel, à un service multi-composants déployé sur le ‘cloud’ pour toute une institution. Cependant un seul et unique environnement de recherche virtuel n’aurait pas pu en couvrir ce vaste ensemble. L’objectif fixé a donc été de développer une boîte à outils flexible permettant à des groupes de scientifiques de déployer des environnements de recherche virtuels personnalisés répondant aux besoins spécifiques de leur projets de recherche collaboratif en mathématiques pures et application, soutenant le cycle complet de la recherche: de l’exploration à la preuve, la publication, l’archivage et le partage de données et de code.

Pour atteindre cet objectif ambitieux, OpenDreamKit s’est appuyé sur des outils populaires tels que LinBox, MPIR, SageMath, GAP, PARI/GP, LMFDB, Singular, et MathHub, en contribuant à en faciliter l’accès et l’utilisation, l’interopérabilité et la pérennité. Il s’est de plus associé à l’environnement généraliste de calcul interactif Jupyter; cela pour mutualiser les aspects spécifiques à l’interface utilisateur et aux environnements virtuels, et maximiser l’impact sur la communauté scientifique au sens large.

OpenDreamKit a démontré encore une fois ce qui peut être accompli avec un soutien approprié, notamment en termes d’ingénieurs de recherche de haut vol. Grâce à eux certains verrous qui freinaient la communauté depuis des années ont été levés: par exemple mener à terme la parallélisation multithread du logiciel GAP ou porter le logiciel SageMath et toutes ses dépendances vers Windows.

Les évaluateurs de la Commission Européenne ont particulièrement apprécié le travail accompli; nous espérons que cette reconnaissance pourra être utilisée comme levier pour des financements à l’avenir.

En effet,
Le grand défi à venir est de pérenniser l’emploi de ces ingénieurs de recherche afin d’apporter un soutien aux centaines de contributeurs et aux dizaines voire centaines de milliers d’utilisateurs de logiciels mathématiques Open Source.

Il est crucial également de continuer à financer le développement du coeur de Jupyter: avec des millions d’utilisateurs, dans le milieu académique et industriel, Jupyter est devenu une technologie clé pour soutenir la Science Ouverte.

Une des clés du succès d’OpenDreamKit a été sa capacité à développer et soutenir un réseau actif d’utilisateurs et de développeurs. Au cours des quatre ans du projet, le groupe a développé une philosophie solide de renforcement de la communauté, particulièrement grâce à l’organisation de rencontres techniques et de formations dans tous les coins du monde tout en promouvant activement la diversité. Ils ont organisé près de 80 ateliers et conférences dans une vingtaine de pays, y compris dans des pays émergents (un premier atelier SageMath au Nigéria) et également des évènements spécialement destinés aux femmes, « Women In Sage » en 2017 et 2019 afin de réduire les disparités de genre existantes dans ce domaine scientifique.

Plus généralement, OpenDreamKit fut l’occasion de promouvoir un modèle de développement scientifique qui repose sur l’ouverture, la communauté et la technologie partagée. Au-delà des traditionnels piliers de la science ouverte – données, logiciels et publications ouvertes – nous avons introduit un nouveau concept – les projets européens ouverts – et démontré son efficacité: nous sommes convaincus que l’élaboration et la coordination d’OpenDreamKit dans une approche ascendante et complètement ouverte a joué un rôle fondamental dans le rapprochement des communautés, le développement d’une confiance mutuelle, le repérage des obstacles majeurs rencontrés par les utilisateurs et developpeurs, et la co-conception et co-réalisation de solutions.

Nous recommandons vivement l’expérience; longue vie à l’esprit d’OpenDreamKit

Dernière modification le 19 décembre 2019