S´eance 3 : Exercices corrig´es OPTIMISATION
Objectifs
La m´ethode du gradient pour la minimisation de fonctions quadratiques. Int´erˆet d’un pr´econditionnement.
x x00
X1 X2
X3
x X4
x
g g11 g
g33 g g22
Figure 1: It´erations de la m´ethode du gradient Question 1
Minimisation au sens des moindres carr´es.
D´eterminer une fonction affine Y =aX+b approximant au sens des moindres carr´es ....
− Sans le formalisme de l’´enonc´e, on cherche un couple (a, b) qui rende minimum l’erreur quadratique
E(a, b) =X
i
(aXi+b−Yi)2 On ´ecrit que les d´eriv´ees en aetbsont nulles
X
i
Xi(aXi+b−Yi) = 0 (1)
X
i
aXi+b−Yi= 0 (2)
d’o`u le syst`eme lin´eaire qui d´etermine aetb.
(X
i
Xi2)a+ (X
i
Xi)b=X
i
XiYi (3)
(X
i
Xi)a+pb=X
i
Yi (4)
− En suivant le formalisme de l’´enonc´e, on a ici n= 2,x= (a, b) et f(x) = (aX1+b−Y1, . . . , aXi+b−Yi, . . . , aXp+b−Yp) On est ramen´e `a la question suivante avec une matrice
C =
X1,1 ..., ...
Xi,1 ..., ...
Xp,1
et un vecteur
b= (Y1, ..., Yi, ..., Yp)t
• On consid`ere le cas g´en´eral o`u la fonction f(x) = Cx−b est lin´eaire (C est une matrice (p, n),x∈Rn,b∈Rp).
i) Montrer que la solution au sens des moindres carr´esv´erifie CtCx=Ctb
Il faut minimiser
F(x) =hCx−b,Cx−bi=hCtCx, xi −2hCtb, xi+hb, bi ce qui ´equivaut `a minimiser
F(x) = 1
2hCtCx, xi − hCtb, xi
C’est un probl`eme d’optimisation quadratique, `a matriceCtCsym´etrique d´efinie positive, si le rang deCestn. Nous avons vu en cours que la fonctionF(x) est alors strictement convexe et qu’elle a un minimum et un seul qui est solution du syst`eme lin´eaire
CtCx=Ctb
ii) Que doit v´erifier la matrice Cpour que ce syst`eme ait une solution unique ? CtCx= 0 ⇔ hCtCx, xi= 0
et donc
CtCx= 0 ⇔ hCx,Cxi= 0 ⇔ Cx= 0
ce qui impliquex= 0 si et seulement si la matriceCanlignes ind´ependantes ce qui ´equivaut
`a dire que le syst`eme initial a n´equations ind´ependantes.
Question 2
R´egularisation d’un maillage.
•Montrer que le vecteurx= (x1, ..., xn)∈R2nr´ealise le minimum de la fonction quadratique
F(x) = X
(i=1,N,j≤i)∈E
kxi−xjk2
On obtient les conditions d’optimalit´e en calculant le gradient X
j|(i,j)∈E
xi−xj = 0
Ce qui signifie bien que xi est le centre de gravit´e des points auxquels il est reli´e.
On doit minimiser la fonction F(x) que nous r´e´ecrivons
F(x) = X
(i=1,n,j≤i)∈E
kxi−xjk2+ X
(i=1,n,j>n)∈E
kxi−xjk2
F(x) est une fonction d´efinie sur Rn dont la partie de degr´e 2 est X
(i=1,n,j≤i)∈E
kxi−xjk2+ X
(i=1,n)
kxik2
qui est toujours positive six6= 0 et dont la partie lin´eaire est
2 X
(i=1,n,j>n)∈E
< xi, xj >
C’est donc une fonction strictement convexe qui a un minimum et un seul.
• On utilise la m´ethode de relaxation par rapport `a chacun des vecteurs xi ∈ R2, c’est `a dire une relaxation par bloc de dimension 2. Le minimum par rapport `a xi est donc obtenu en rempla¸cant le point xi par le centre de gravit´e des points qui l’entourent. La pr´ecision n´ecessaire est en g´en´eral assez faible (> 10−2) et quelques balayages (< 5) du vecteur x suffisent. La m´ethode est naturelle, ce qu’apporte ici l’interpr´etation par le probl`eme de minimisation c’est une preuve de convergence.
Question 3
Notion de pr´econditionnement.
•Dans le cas d’une fonctionF(x) quadratique, montrer que, cela revient `a changer la matrice A enL−tAL−1.
Le changement de variable changeF(x) en F(y) =˜ 1
2 <AL−1y,L−1y >−< b,L−1y >
Minimiser ˜F(y) revient donc `a changerA en L−tAL−1 etben L−tb.
• On pose
M =LtL
La matriceM, appel´eematrice de pr´econditionnementest sym´etrique d´efinie positive. Mon- trer que, pour esp´erer am´eliorer le conditionnement la matriceA,Mdoit ˆetre proche de A.
Le conditionnement de la nouvelle matrice sera d’autant meilleur qu’elle sera proche de Id, c.a.d.
L−tAL−1∼Id ou
A∼LtL=M
• Ecrire pour une fonction´ F(x) quelconque l’algorithme du gradient pour la recherche de minimum de la fonctionF(L−1y), puis revenir aux variables initiales...
La r´eponse est dans la question.
Question 4
Etude d’une chaˆıne pesante´
• Ecrire ce probl`eme comme un probl`eme d’optimisation d’une fonction lin´eaire´ hP,Uisous des contraintes quadratiques d’´egalit´ehBiU,Ui= 1, i= 1, . . . , n+ 1, o`u le vecteur Pet les matrices Bi sont `a pr´eciser.
Corr. Le centre de gravit´e d’une barre est un point d’ordonn´ee 1
2(yi+yi−1)
Toutes les barres ont la mˆeme masse, donc le centre de gravit´e du syst`eme est un point d’ordonn´ee
yG= 1 n+ 1
n+1
X
i=1
1
2(yi+yi−1) on en d´eduit, en tenant compte dey0 =yn+1 = 0,
yG=hP,Ui avec
P= 1
n+ 1(0,1, ...,0,1, ...,0,1)t Il faut ´ecrire que toutes les barres gardent la longueurL, i.e.
(xi−xi−1)2+ (yi−yi−1)2
L2 = 1
ou encore matriciellement
hBiU,Ui= 1, i= 1, . . . , n+ 1
la matriceBi´etant la matrice sym´etrique dont tous les coefficients sont nuls `a l’exception de Bi2(i−1)+1,2(i−1)+1=Bi2i,2i=Bi2i+1,2i+1 =Bi2(i+1),2(i+1) = 1
L2 sur la diagonale et, au dessus de la diagonale
Bi2(i−1)+1,2i=Bi2(i+1),2(i+1)
• Pour r´esoudre de fa¸con approch´ee ce probl`eme on utilise une m´ethode de “p´enalisation” : cela revient `a supposer que les barres sont l´eg`erement d´eformables et `a introduire dans la formulation du probl`eme une pseudo-´energie de d´eformation de ces barres.
On choisit, pour la barre i, l’expression suivante de la pseudo-´energie de d´eformation Ei = 1
4²((xi−xi−1)2+ (yi−yi−1)2−L2)2
o`u ², le coefficient de p´enalisation est un nombre petit. On montre (cf. chapitre 4) que le minimum libre de la fonction ´energie
J²(U) =< P,U>+
n+1
X
i=1
Ei
est proche du minimum du probl`eme initial.
Montrer que la fonctionJ²(U) est coercive.
Si unUtend vers l’infini, la longueur d’une des barres au moins tend vers l’infini et le terme Ei correspondant tend donc vers l’infini.
Est-elle convexe ?
Corr. En fixant tous les variables `a 0 saufx1 on obtient J²(U) =P1x1+ 1
4²(x21−L2)2) qui n’est pas une fonction convexe.
• On applique la m´ethode du gradient `a ce probl`eme, comparer les temps de calcul de diff´erentes variantes pour diff´erents coefficients de p´enalisation :
−Sans pr´econditionnement et avec un calcul pr´ecis du minimum unidirectionnel.
−En faisant varier de fa¸con ad´equate le coefficient de p´enalisation.
−En fixant le pas ρk (comment le faire sans risque de divergence ?).
−En pr´econditionnant par la matrice de la partie quadratique de la fonction F(x).
• Comparer les temps de calculs avec la m´ethode standard de Scilab.