ESILV–CS 305 Problèmes inverses
TD CS 305 – Problèmes inverses
M. Kern 20 janvier 2003
Exercice 1 : Identification d’une condition initiale
On considère l’équation différentielle (où f est une fonction de classe C1à valeur dans R), (1) y0= f(y), t∈[0,T], y(0) =a,
dans laquelle on cherche à identifier la condition initiale a à partir d’une mesure de la solution à l’instant T , dT.
Proposer une formulation aux moindres carrés pour ce problème. En utilisant la méthode de l’état adjoint, montrer comment calculer la dérivée de la fonction coût par rapport à a.
Exercice 2 : Schéma à pas variable
On considère un problème inverse pour l’équation différentielle (où f est une fonction de classe C1à valeur dans R)
(1) y0= f(y,a), t∈[0,T], y(0) =y0,
On cherche à identifier le paramètre a à partir d’une mesure de y(T)à l’instant T , notée dT. On utilise le schéma d’approximation à pas variable :
(2) yn−yn−1
∆tn−1/2 = 1
2 f(yn−1,a) + f(yn,a)
, n=1,· ··,N, y0=y0.
Proposer une formulation aux moindres carrés pour le problème discret. En utilisant la mé- thode de l’état adjoint, montrer comment calculer la dérivée de la fonction coût par rapport à a.
Interpreter l’équation adjointe comme un schéma de discrétisation de l’équation différentielle adjointe.
1
ESILV–CS 305 Problèmes inverses
Exercice 3 : Estimation d’une fonction dans un problème el- liptique
On veut d’identifier le paramètre q dans l’équation différentielle :
(P) − d
dx
qdu dx
= f dans]0,1[, u(0) =u(1) =0,
à partir de la mesure de u (sur la totalité de l’intervalle]0,1[). On supposera également que f est connu (et fixe). Pour discrétiser l’équation (P), on utlise une méthode d’éléments finis P1.
En ce qui concerne q, l’un des buts de l’exercice est de dissocier la paramétrisation de q de sa discrétisation pour résoudre (P). ondistinguera les paramètres dits d’optimisation qopt, de ceux dits de simulation qsim. Dans les deux cas, on prendra une fonction constante par morceaux, mais pour la simulation oon utilisera le même mailage que pour u, alors que pour l’optimisation, on pourra prendre une grille différente (comportant moins de points).
1 Programmation, validation
1.1 Programmer la résolution du problème direct et du problème adjoint.
Pour valider la résolution du problème direct, prendre q(x) =1+sin(πx),u(x) =sin(2πx), et calculer f en conséquence.
Valider l’état adjoint (utiliser le test du produit scalaire).
1.2 Programmer le calcul du gradient, par rapport aux paramètres de simulation qsim, puis aux paramètres d’optimisation qopt).
Valider le calcul du gradient par différences finies (faire varier le pas de 10−2à 10−12).
1.3 Réaliser l’interface avec une fonction d’optimisation.
2 Applications
Il s’agit dans chaque cas d’un exemple synthétique, où la solution est connue. On notera q∗ la solution exacte, u∗la solution de (P) correspondante. Dans tous les cas, vous prendrez comme point de départ pour l’optimisation la fonction constante q(x) =1,∀x∈[0,1].
Utiliser une méthode multi-echelle : partir d’un seul paramètre, réaliser l’optimisation, mul- tiplier le nombre de paramètres par deux, optimiser, et ainsi de suite. Observer ce qui se passe quand le nombre de paramètres augmente.
2.1 Prendre q∗(x) =1+x, u∗(x) =sin(πx)(et donc f(x) =π2(1+x)sin(πx)−πcos(πx)).
Faire varier le point de départ de l’optimisation.
2.2 Reprendre l’exemple précédent, en rajoutant une « erreur » de 0.25 au point x=1/6.
2