Module d'analyse de sensibilité

Description du module Analyse de sensibilité

Ce module permet de mener une analyse de sensibilité globale de la fonction de coût ctheta du modèle paramétré par theta.

Les méthodes de Morris et Sobol sont disponibles dans MSE. Le tutoriel 'analyse de sensibilité globale' décrit les étapes nécessaires pour mette en oeuvre ces méthodes  dans MSE.

Choix de la méthode d'analyse de sensibilité

Pour utiliser la méthode de Sobol:

mse.setIntParam(mse.MSE_KEY_SA_METHOD,mse.MSE_CST_MSE_AS_SOBOL);

 Pour utiliser la méthode de Morris:

mse.setIntParam(mse.MSE_KEY_SA_METHOD,mse.MSE_CST_MSE_AS_MORRIS);

Arguments des méthodes d'analyse de sensibilité

Les arguments de la méthode de Morris sont le niveau de discrétisation ND (entier PAIR >=2) et le nombre de trajectoires NT.

Dans l'exemple, ND=6 et NT =20

mse.setIntParam(mse.MSE_KEY_SA_PARAM_ND,6);
mse.setIntParam(mse.MSE_KEY_SA_PARAM_NT,20);

L'argument de la méthode de Sobol est le nombre de points initiaux NP (400 dans l'exemple).

mse.setIntParam(mse.MSE_KEY_SA_PARAM_NP,400);

Définition du domaine d'incertitude des paramètres theta

Le domaine D est représenté par un hypercube dont chacun des côtés est borné.

Dans l'exemple D = [-3, -0.5] x [-3, -0.5] x [2, 10 ] x [0.5 , 1] x [4,  10]

Affectations des bornes minimales :

mse.SAInit()
mse.setSALowerBound(0,-3)
mse.setSALowerBound(1,-3)
mse.setSALowerBound(2,0.5)
mse.setSALowerBound(3,0.2)
mse.setSALowerBound(4,0.1)

 Affectations des bornes maximales :

mse.setSAUpperBound(0,-0.5);
mse.setSAUpperBound(1,-0.5);
mse.setSAUpperBound(2,10);
mse.setSAUpperBound(3,1);
mse.setSAUpperBound(4,10);

Nombre d'appels au simulateur

Le nombre d'appels au simulateur nécessaire pour mettre en oeuvre les méthodes peut être obtenu de la façon suivante:

nSimus=mse.getIntParam(mse.MSE_KEY_SA_N_SIMU);

Création du plan d'expérience

Le plan d'expérience définit les combinaisons des paramètres theta spécifique à la méthode d'analyse de sensibilité choisie.

La commande suivante a pour effet la création d'un fichier SA/planSimu.txt contenant les valeurs de theta .

mse.SABuildDesign()

Appels au simulateur

La commande suivante effectue les appels au simulateur et crée le fichier SA/resultSimu.txt.

mse.SAExecuteDesign()

Calcul des indices de sensibilité

La commande suivante calcule les indices et crée un fichier SA/indice.txt contenant les estimations des indices et les intervalles de confiances (p=0.95) associés.

mse.SAPerform()

Sorties graphiques

Les sorties graphiques comprennent des analyses descriptives des relations entre paramètres et  fonction objectif, une

représentation des interactions d'ordre 2 moyennes pour chaque couple de paramètres et une représentation des indices

de sensibilité pour la méthode choisie.

La commande ci-dessous crée les fichiers suivants:

  • grafParVar.pdf montre la courbe de régression locale  des valeurs simulées de  la fonction objectif en fonction des paramètres
  • grafInter.pdf montre les interactions d'ordre 2 moyennes
mse.SAGraf()