Examen202021 Corrige
Examen202021 Corrige
Examen202021 Corrige
f (x1 , x2 ) = x21 + x2 .
2. Propriétés de l’ensemble U :
2.a) Représenter graphiquement U et préciser les coordonnées des points d’intersection
qui apparaissent naturellement.
2.b) Montrer que U est un ensemble convexe et compact.
2.c) Introduire deux fonctions g1 et g2 pour décrire U comme un ensemble de contraintes
inégalités et vérifier que tous les points de U vérifient la qualification de contraintes
de Kuhn-Tucker (QCKT).
On cherche désormais à résoudre le problème d’optimisation sous contraintes :
1
2. Propriétés de l’ensemble U :
2.a) U est l’intersection d’un disque avec un demi-plan.
(−3, 2)
(2, −3)
2
— Si g1 (x1 , x2 ) = 0 et g2 (x1 , x2 ) = 0 alors d’après la question 2.a) on est soit sur
(2, −3) soit sur (−3, 2) et alors
#! " ! "$ #! " ! "$
4 −1 −6 −1
{∇g1 (x1 , x2 ), ∇g2 (x1 , x2 )} = , ou ,
−6 −1 4 −1
— Si g1 (x1 , x2 ) = 0 et g2 (x1 , x2 ) = 0 alors d’après la question 2.a) on est soit sur (2, −3)
soit sur (−3, 2). On peut résoudre le système dans chaque cas pour voir qu’il y a des
problèmes de signe sur µ1 et µ2 . On peut aussi se contenter d’évaluer f sur ces deux
points et comparer avec la valeur pour ( 12 , − 32 ). On a
1 3 1 3 5
f( , − ) = − = − .
2 2 4 2 4
3
Par ailleurs,
1 3
f (2, −3) = 4 − 2 = 1 > f ( , − )
2 2
1 3
f (−3, 2) = 9 + 2 = 11 > f ( , − )
2 2
donc ces deux points ne sont pas des solutions.
En conclusion le problème (P ) admet une unique solution qui est ( 12 , − 32 ).
Exercice 2. (sur environ 16 points)
Dans cet exercice on considère g : Rn → R une fonctionnelle quadratique
1
g(x) = 〈Ax, x〉 − 〈b, x〉 + c,
2
où A ∈ Mn (R) est une matrice carrée symétrique définie positive, b ∈ Rn et c ∈ R.
∇g(x) = Ax − b et ∇2 g(x) = A.
4
4. Soit 0 < λ1 ! λ2 ! · · · ! λn les valeurs propres de A et u1 , u2 , . . . , un des vecteurs
propres associés formant une base orthonormée de Rn . En introduisant la décomposition
du vecteur x(0) − x! dans la base (u1 , u2 , . . . , un ), montrer que la suite (x(k) )k∈N converge
vers x! quelque soit la valeur de x(0) si et seulement si
5. Montrer que
En pratique l’algorithme est arrêté avec le même critère d’arrêt que l’Algorithme 1.
8. (sur 4 points) On suppose que les fonctions
function fx = f(x) et function gfx = gradf(x)
sont définies dans scilab. Ecrire une fonction scilab
function [Xk,FXk] = algo_moment(x0, eps, t, bet, f, gradf)
qui prend en entrées un point initial x(0) ∈ Rn , un seuil de tolérance ε > 0, et deux
paramètres t > 0 et β > 0, les fonctions pour évaluer f et ∇f . La fonction renvoie la
matrice Xk (de taille n par nombre d’itérations) contenant la liste des vecteurs x(k) donnée
par l’algorithme de gradient à pas fixe t > 0 avec moment β > 0 ainsi que la liste des
valeurs Fxk de la fonctionnelle f aux points x(k) . On veillera à ajouter une condition pour
limiter le nombre d’itérations à 10 000.
On considère de nouveau la fonction quadratique g(x) = 12 〈Ax, x〉 − 〈b, x〉 + c. Soit (x(k) )
la suite de vecteurs obtenue par l’algorithme de gradient à pas fixe t > 0 avec moment β > 0
appliqué à g . On introduit la suite de vecteurs
! (k+1) "
x
(k)
y = ∈ R2n
x(k)
! !"
x
et on pose également y =!
∈ R2n .
x!
5
9. Montrer que la suite y (k) − y ! vérifie une équation de récurrence de la forme
y (k+1) − y ! = T (y (k) − y ! )
(bien préciser l’expression de T ).
10. Que faut-il faire pour établir la convergence de l’algorithme de gradient à pas fixe t > 0
avec moment β > 0 appliqué à g ? Peut-on faire le même raisonnement qu’à la ques-
tion 4 ?
Solution de l’exercice 2.
1. f est de classe C ∞ (Rn ) car polynomiale de degré 2. Pour tout x ∈ Rn ,
1
f (x + h) = f (x) + 〈Ax − b, h〉 + 〈Ah, h〉.
2
Par Cauchy-Swharz, 〈Ah, h〉 ! ,Ah,,h, ! ,A,,h, = oh→0 (,h,). Donc f est diffé-
2
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.
6
5. Soit i ∈ {1, . . . , n}. On a λ1 ! λi ! λn et donc
est minimale lorsque les deux courbes se croisent, soit au point pour lequel
tλn − 1 = 1 − tλ1
ce qui donne t = 2
λ1 +λn
.
8. Par rapport à la descente de gradient standard, la seule difficulté consiste à introduire une
variable supplémentaire pour retenir la valeur xk−1 .
7
gfx = gradf(x)
sqngfx = gfx’*gfx
Xk = [Xk,x]
FXk = [FXk,f(x)]
k = k+1
xkm = xk // variable a l’iteration k-1
xk = x
// Iterations suivantes
while(sqngfx>eps^2 & k < 10000)
x = xk-t*gfx + bet*(xk-xkm)
gfx = gradf(x)
sqngfx = gfx’*gfx
Xk = [Xk,x]
FXk = [FXk,f(x)]
k = k+1
xkm = xk
xk = x
end
endfunction
9. On a, en utilisant la question 3,
On en déduit que
! " ! "! "
(k+1) ! x(k+2) − x! (1 + β)In − tA −βIn x(k+1) − x!
y −y = = .
x(k+1) − x! In 0 x(k) − x!
10. Il faut montrer que T n tend vers 0, ce qui est équivalent à dire que la valeur propre de
module maximale (rayon spectral) est strictement inférieure à 1. Cette fois-ci la matrice
n’est pas symétrique et donc pas forcément diagonalisable. Il faudrait faire une étude
spécifique pour lier les valeurs propres de T à celles de A.