Examen201718 Corrige PDF
Examen201718 Corrige PDF
Examen201718 Corrige PDF
1
Soit x(0) un point quelconque de Rn . On pose
m2 m
η = min(1, 3(1 − 2α)) et γ = αβη 2 .
L M2
Alors on a :
— Si k∇f (x(k) )k > η, alors
2
Partie III : Phase compensée (sur environ 6 points)
On suppose dans cette partie que l’algorithme a atteint l’itération k et on pose
8. Soit t(k) le pas renvoyé par la méthode de rebroussement permettant de définir x(k+1) =
m
x(k) + t(k) d(k) . Montrer que t(k) > β M et que
9. En déduire que
m
f (x(k+1) ) − f (x(k) ) 6 −αβ k∇f (x(k) )k2 .
M2
10. Conclure.
Solution de l’exercice 1.
Algorithme 2 : Algorithme de calcul du pas de descente par méthode de rebroussement
Données : Un point x ∈ Rn , une direction de descente associée d ∈ Rn , deux réels
α ∈]0, 12 [ et β ∈]0, 1[
Résultat : Un pas de descente t > 0
Initialiser t :
1.
t ← 1;
tant que f (x + td) > f (x) + αth∇f (x), di faire
Réduire t d’un facteur β :
t ← βt ;
fin
3.
% Descente de Newton
function [Xk, FXk] = desc_newton(x0, eps, alph, bet, f, gradf, hessf)
% Initialisation
x=x0;
k=0;
fx = f(x);
gfx = gradf(x);
3
d = -hessf(x)\gfx;
lambda = -d’*gfx;
Xk = x;
FXk = fx;
while(lambda>eps^2 && k < 100)
t = 1;
xk = x;
fxk = fx;
x = xk + t*d;
fx = f(x);
disp([k, t])
while(fx > fxk - alph*t*lambda)
t = bet*t;
x = xk + t*d;
fx = f(x);
disp([k, t])
end
k = k+1;
Xk = [Xk, x];
FXk = [FXk, fx];
gfx = gradf(x);
d = -hessf(x)\gfx;
lambda = -d’*gfx;
end
ned
4. Comme f est fortement convexe, ∇f 2 (x) est définie positive et donc inversible en tout x.
Les valeurs propres de ∇f 2 (x) sont comprises entre m et M , et donc les valeurs propres
de ∇2 f (x)−1 sont comprises entre M1 et m1 , d’où l’encadrement annoncé.
5. En utilisant la forte convexité,
4
1 (k)
Enfin, h∇f (x(k) ), d(k) i = −Λ(k) et on a montré que kd(k) k2 6 m
Λ . On obtient donc
M 2 (k)
f (x(k) + td(k) ) 6 f (x(k) ) − tΛ(k) + tΛ .
2m
m
7. Pour tout t tel que 0 < t 6 M
,
M 2 M m 1
t 6 t = t.
2m 2m M 2
Ainsi,
1
f (x(k) + td(k) ) 6 f (x(k) ) − tΛ(k) 6 f (x(k) ) − αΛ(k) .
2
8. Comme vu à la question 2. le critère d’arrêt de la méthode de rebroussement est
(b) Le critère d’arrêt n’est pas vérifié en t = β p−1 (pas précédent qui a été refusé), ce
m
qui implique β p−1 > M .
m
On a donc t(k) = β p > β M , et donc l’inégalité large a fortiori.
9. On vient de montrer que
∇f (x) = Ax − b et ∇2 f (x) = A.
5
1. Démontrer que f admet un unique minimum global x? donné par x? = A−1 b.
Dans la suite de l’exercice on étudie la convergence de l’algorithme de descente de gra-
dient à pas fixe appliqué à cette fonctionnelle quadratique. Pour une fonction quelconque, cet
algorithme est décrit par le pseudo-code suivant :
Algorithme 3 : Algorithme de descente de gradient à pas fixe
Données : Un point initial x(0) ∈ Rn , un seuil de tolérance ε > 0, un pas fixe t > 0
Résultat : Un point x ∈ Rn proche de x?
Initialiser x :
x ← x(0) ;
k ← 0;
tant que k∇f (x)k > ε faire
1. Mettre à jour x avec le pas fixe t dans la direction de descente −∇f (x(k) ) :
x ← x(k+1) = x(k) − t∇f (x(k) ) ;
k ← k + 1;
fin
4. Montrer que
Solution de l’exercice 2.
1. Pour tout x ∈ Rn , ∇2 f (x) = A est définie positive, donc f est strictement convexe. Ainsi
f admet au plus un minimum global x? et il est caractérisé par l’équation ∇f (x) = 0. Or
comme A est inversible,
∇f (x) = 0 ⇔ Ax = b ⇔ x = A−1 b.
6
2. On peut (par exemple) partir du terme de droite.
et les soustraire pour obtenir l’équation demandée. Par récurrence immédiate on obtient
3. Les vecteurs propres (u1 , u2 , . . . , un ) de A sont aussi des vecteurs propres de la matrice
In − tA dont les valeurs propres sont 1 − tλi . Si on note
n
X
x(0) − x? = αi ui
i=1
Alors x(k) − x? tend vers 0 quelque soit x(0) si et seulement si pour tout i la suite
(1 − tλi )k k∈N tend vers 0. On en déduit que x(k) − x? tend vers 0 quelque soit x(0)
si et seulement si
∀i ∈ {1, . . . , n}, |1 − tλi | < 1.
4. Montrer que
7
5. Finalement, il suffit que la condition |1 − tλi | < 1 soit vérifiée pour i = 1 et i = n. Or
2
|1 − tλ1 | < 1 ⇔ −1 < 1 − tλ1 < 1 ⇔ 0 < t <
λ1
et de même, |1 − tλn | < 1 équivaut à 0 < t < λ2n . Comme λ1 6 λn , t < λ2n implique
t < λ21 . Au final, l’algorithme converge pour t tel que t ∈]0, λ2n [.
On vient de montrer que kIn − tAkMn (R) = max(|1 − tλ1 |, |1 − tλn |). Or on a
est minimale lorsque les deux courbes se croisent, soit au point pour lequel
tλn − 1 = 1 − tλ1
2
ce qui donne t = λ1 +λn
.