Uranie

Uranie est une plate-forme logicielle dédiée au traitement des incertitudes, aux analyses de sensibilité, à la génération et à la calibration de modèles ou de modèles de substitution (surrogate-model), aux optimisations… Cette plate-forme est écrite en C++ et est basée sur la plate-forme ROOT, développé au CERN depuis la fin des années 90. ROOT est un logiciel de traitement des données scientifiques offrant un grand nombre de services dont certains sont pertinents pour les applications incertitudes : la visualisation de données scientifiques multidimensionnelles, la gestion d’arbre de données complexes de manière optimisée, la présence d’un interpréteur C++, une traduction automatique des classes en Python…

Uranie enrichit la plate-forme ROOT en la dotant de classes permettant :

  • la génération de plans d’expériences;
  • la construction de modèle de substitution;
  • des procédures de modifications de jeux de données pour la réalisation des plans d’expériences « numériques » sur un code de calcul;
  • des méthodes d’analyse de sensibilités;
  • des visualisations spécifiques aux incertitudes;
  • des études d’optimisation paramétriques (mono et multicritères, avec et sans contraintes);
  • de procédures de calibration déterministes et sous incertitudes (avec des connaissances a priori par des estimations
    Bayesiennes par exemple);

Uranie, grâce à ses différents niveaux d’interface, permet de répondre à plusieurs problématiques : l’interface C++ native de ROOT est utile pour réaliser des scripts pour des études. L’interface Python offre une alternative pour les gens plus familiers de cette syntaxe et fait le lien avec la plate-forme Salome. Enfin, l’interface XML est utile pour interfacer des éléments de propagation d’incertitude ou d’analyse de sensibilité dans un ensemble logiciel fortement intégré, dans lequel on simplifie au maximum le travail de l’utilisateur. En « production », l’utilisation de script C++ ou Python reste néanmoins le mode de travail privilégié.

La Figure ci-dessous représente différent types d’analyse possibles en utilisant Uranie, ces dernières étant brièvement
introduites plus bas.

Représentation schématique des différentes étapes qui composent une analyse type de propagation ou de quantification d’incertitude.

  • Spécification du problème (A). Définition des variables d’entrée de notre problème ainsi que des variables d’intérêt et
    des quantités d’intérêt correspondantes (un quantile, une moyenne…). Toutes ces informations sont liées par un modèle qui peut être une fonction, un code, un modèle de substitution ou une combinaison des éléments précédents.
  • Quantification des sources d’incertitude (B). Des lois de probabilité sont associées aux différentes entrées et leurs
    paramètres sont fixés (moyenne, écart-type…). Plusieurs types de corrélations peuvent aussi être introduites pour
    compléter la description du problème.
  • Propagation des incertitudes (C). À partir des étapes A et B, les incertitudes sur les entrées sont propagées aux
    quantités d’intérêt, ce qui peut être fait, par exemple par une approche Monte-Carlo, via des plans d’expériences.
  • Quantification inverse des sources d’incertitude (B’). A partir des informations de l’étape A et d’un jeu de données
    fourni, il est possible sous certaines hypothèses de calibrer des modèles physiques et de modéliser par des variables aléatoires leurs incertitudes épistémiques.
  • Analyse de sensibilité (C’). À partir des étapes A et B, ce type d’analyse permet de hiérarchiser les variables
    d’entrée quant à leur impact sur l’incertitude d’une quantité d’intérêt. Certaines méthodes fournissent même une
    estimation quantitative de cet impact, par exemple comme une fraction de la déviation standard de la sortie considérée, c.f. Figure ci-dessous.
Représentation du coefficient de Sobol de premier ordre, pour un modèle d’irradiation dont la sortie est temporelle. Les contributions sont représentées de manière cumulatives.
Recherche du minimum d’une fonction par méthode EGO (Efficient Global Optimization). Haut : approximation d’une fonction (en bleue) connue à partir de quelques réalisations (points en noir), la prédiction du krigeage est la ligne rouge avec son intervalle de confiance à 95%, en hachure. La détermination séquentielle des prochains calculs est faite en utilisant le compromis exploitation-exploration : les prédictions du krigeage (exploitation) et la variance prédictive (exploration).
Bas : profil du critère de sélection (Expected Improvement).

Pour toutes demandes sur la plate-forme (renseignement, fonctionnement, installation…) : support-uranie@REMOVECAPSTOSENDcea.fr