3. Optimisation sans contrainte Fonctions à plusieurs variables

Transcription

3. Optimisation sans contrainte Fonctions à plusieurs variables
3. Optimisation sans contrainte
Fonctions à plusieurs variables
3.1 Résultats préliminaires
Soit Y ⊂ R n un ensemble ouvert et f : Y → R1 une fonction
à valeurs réelles.
Notes:
n
T
i ) norme euclédienne de x ∈ R : x = x x =
n
2
x
∑ i
i =1
ii ) ∇f ( x ) le gradient de f à x ∈ R n :
T
 ∂f ( x ) ∂f ( x )
∂f ( x ) 
∇f ( x ) = 
,
, ,
 .
∂x2
∂xn 
 ∂x1
X ⊂ R n est un ensemble ouvert si ∀x ∈ X il existe un ε >0
tel que Bε ( x ) = { z ∈ R n ; x − z < ε } ⊂ X .
Dans R1 l'intervalle ouvert ( a, b )
est un ensemble ouvert puisque
∀x ∈ ( a, b ) , ∃ε > 0 tel que
Bε ( x ) = { z : x − z < ε } ⊂ ( a, b )
Dans R 2 l'ensemble
Γ = {[ x, y ] ∈ R 2 : x ∈ ( a, b ) , y = 0}
(
)
a
b
n'est pas un ensemble ouvert puisque
nous ne pouvons pas bouger pour
modifier la valeur de y
X ⊂ R n est un ensemble ouvert si ∀x ∈ X il existe un ε >0
tel que Bε ( x ) = { z ∈ R n ; x − z < ε } ⊂ X .
Bε ( x )
•
x
X
Dans R 2 l'ensemble X est ouvert
puisque pour tout x ∈ X , il existe
un ε > 0 tel que la sphère ouverte de
rayon ε ,
Bε ( x ) = { z ∈ R 2 ; x − z < ε } ⊂ X .
Soit Y ⊂ R n un ensemble ouvert et f : Y → R1 une fonction
à valeurs réelles.
Si f ∈ C 1 / Y (f possède des dérivées partielles de premier
ordre continues sur Y ), pour toute paire de points x, y ∈ Y
développement de Taylor de premier ordre (version résidu)
f ( y ) = f ( x ) + ∇f ( x )
T
( y − x ) + α ( x, ( y − x ) )
y−x
où
lim α ( x, ( y − x ) ) = 0
( y − x )→0
développement de Taylor sans résidu
il existe un vecteur z sur le segment de droite entre x et y
(
})
{
z ∈ ℑ ( x, y ) = t ∈ R n : t = θ x + (1 − θ ) y, θ ∈ [ 0,1]
tel que
f ( y ) = f ( x ) + ∇f ( z )
T
( y − x)
Si f ∈ C 1 / Y (f possède des dérivées partielles de premier
ordre continues sur Y ), pour toute paire de points x, y ∈ Y
développement de Taylor de premier ordre (version résidu)
f ( y ) = f ( x ) + ∇f ( x )
T
( y − x ) + α ( x, ( y − x ) )
y−x
où
lim α ( x, ( y − x ) ) = 0
( y − x )→0
Si f ∈ C 1 / Y (f possède des dérivées partielles de premier
ordre continues sur Y ), pour tout x ∈ Y et d ∈ R n
développement de Taylor de premier ordre (version résidu)
f ( x + θ d ) = f ( x ) + ∇f ( x )
T
( x + θ d − x ) + α ( x, x + θ d − x ) x + θ d − x
f ( x + θ d ) = f ( x ) + θ∇f ( x ) d + α ( x, θ d ) θ d
( 3.1)
pour tout θ , où α ( x, θ d ) est une fonction de θ prenant des
T
valeurs réelles telles que
lim
α ( x, θ d ) = 0
θ →0
Lemme 3.1: Soient Y ⊂ R n un ensemble ouvert, f : Y → R1 ,
f ∈ C 1 / Y , x ∈ Y et d ∈ R n . Alors
lim
θ →0
f ( x +θ d ) − f ( x)
θ
T
= ∇f ( x ) d .
Preuve: Utilisant la relation (3.1)
T
f ( x + θ d ) = f ( x ) + θ∇f ( x ) d + α ( x,θ d ) θ d
alors pour θ ≠ 0
f ( x + θ d ) − f ( x ) α ( x, θ d ) θ d
T
−
= ∇f ( x ) d
θ
f ( x +θ d ) − f ( x)
θ
θ
T
± α ( x , θ d ) d = ∇f ( x ) d
( 3.1)
Preuve: Utilisant la relation (3.1)
T
f ( x + θ d ) = f ( x ) + θ∇f ( x ) d + α ( x, θ d ) θ d
alors pour θ ≠ 0
f ( x + θ d ) − f ( x ) α ( x, θ d ) θ d
T
−
= ∇f ( x ) d
θ
θ
f ( x +θ d ) − f ( x)
T
± α ( x, θ d ) θ d = ∇f ( x ) d
θ
f ( x +θ d ) − f ( x)
T
lim
± lim α ( x, θ d ) d = lim ∇f ( x ) d
θ →0
θ →0
θ →0
θ
f ( x +θ d ) − f ( x)
T
lim
= ∇f ( x ) d .
θ →0
θ
( 3.1)
n
Définition: Soient X ⊂ R et f : X → R1 . Étant donné x ∈ X , d ∈ R n est
une direction réalisable à x s'il existe un scalaire λ ( x, d ) > 0 tel que
( x + λ d ) ∈ X ∀λ ∈ 0, λ ( x, d ) .
x•
d
• x + λ ( x, d ) d
Lemme 3.2: Soient X ⊂ R n , f ∈ C 1 / X , et x ∈ X . Si d ∈ R n est
T
une direction réalisable à x et ∇f ( x ) d < 0, alors il existe
un scalaire ξ > 0 tel que pour tout 0 < τ ≤ ξ
f ( x +τ d ) < f ( x).
(i.e., d est une direction de descente à x.)
Lemme 3.2: Soient X ⊂ R n , f ∈ C 1 / X , et x ∈ X . Si d ∈ R n est
T
une direction réalisable à x et ∇f ( x ) d < 0, alors il existe
un scalaire ξ > 0 tel que pour tout 0 < τ ≤ ξ
f ( x +τ d ) < f ( x).
(i.e., d est une direction de descente à x.)
Preuve : Puisque lim
f ( x +θ d ) − f ( x)
θ
θ →0
T
= ∇f ( x ) d < 0, alors
il existe un scalaire ξ >0 tel que pour tout τ ≠ 0, − ξ ≤ τ ≤ ξ ,
f ( x +τ d ) − f ( x)
< 0.
τ
Il suffit de restreindre τ à être positif pour avoir
f ( x + τ d ) − f ( x ) < 0 ou f ( x + τ d ) < f ( x ) .
Lemme 3.3: Soient X ⊂ R n un ensemble ouvert, f ∈ C 1 / X .
Si x est un minimum local de f sur X , alors ∇f ( x ) =0.
Preuve. Par contradiction, supposons que x est un minimum
local et que ∇f ( x ) ≠ 0. Considérons la direction d = −∇f ( x ) .
Puisque X est ouvert, alors d est une direction réalisable à x, et
T
T
∇f ( x ) d = −∇f ( x ) ∇f ( x ) < 0, puisque ∇f ( x ) ≠ 0.
Par le Lemme 3.2, d = −∇f ( x ) est une direction de descente à x
et par conséquent il est possible de déterminer un scalaire τ >0
tel que x + τ d ∈ Bε ( x ) et f ( x + τ d ) < f ( x ) , une contradiction. Lemme 3.4: Soient X ⊂ R n un ensemble ouvert, f ∈ C 1 / X .
Si x est un maximum local de f sur X , alors ∇f ( x ) =0.
Preuve. Similaire
Conditions de 2ième ordre pour minimum locaux
2

∂
f ( x) 
2
Définition: Soit ∇ f ( x ) = 
 le Hessien (matrice
 ∂xi ∂x j 
réelle n × n) au point x d'une fonction f de classe C 2 (ayant
des dérivées partielles continues d'ordre 2).
Lemme 3.5: Soient X ⊂ R n un ensemble ouvert et f ∈ C 2 / X .
Si x ∈ X est un minimum local de f sur X , alors ∇f ( x ) =0 et
∇ 2 f ( x ) est une matrice semi-definie positive.
Définition: Étant donné une matrice réelle D de dimension n × n,
la forme quadratique associée est la fonction ψ : R n → R1 suivante
ψ ( x ) = x T Dx.
 a11 a12 a13   x1 
ψ ( x1 , x2 , x3 ) = [ x1 , x2 , x3 ]  a21 a22 a23   x2 
a a a   x 
 31 32 33   3 
 a11 x1 + a12 x2 + a13 x3 
= [ x1 , x2 , x3 ]  a21 x1 + a22 x2 + a23 x3 
a x + a x + a x 
32 2
33 3 
 31 1
(
) (
) (
= a11 x12 + a21 x1 x2 + a31 x1 x3 + a12 x1 x2 + a22 x 22 + a32 x2 x3 + a13 x1 x3 + a23 x2 x3 + a33 x32
= a11 x12 + a22 x 22 + a33 x32 + ( a12 + a21 ) x1 x2 + ( a13 + a31 ) x1 x3 + ( a23 + a32 ) x2 x3
)
Définition: Étant donné une matrice réelle D de dimension n × n,
la forme quadratique associée est la fonction ψ : R n → R1 suivante
ψ ( x ) = x T Dx.
Définition: Une matrice réelle D de dimension n × n est
semi-définie positive (définie positive) si ψ ( x ) ≥ 0 ∀x ∈ R n
(ψ ( x ) > 0 ∀x ∈ R n , x ≠ 0 ) .
Résultats: Une matrice D réelle symétrique de dimension n × n
est semi-définie positive (définie positive) si et seulement si
i ) toutes ses valeurs propres sont non négatives (positives);
ii ) tous les mineurs principaux sont non négatifs (tous les
"leading" mineurs principaux sont positifs).
 a11 a12 a13 
 a21 a22 a23 
a a a 
 31 32 33 
Mineurs principaux
d'ordre 1:
a11 , a22 , a33
Leading mineurs principaux
d'ordre 1:
a11
d'ordre 2:
 a11 a12 
 a21 a22  ,
d'ordre 2:
 a11 a12 
 a21 a22 
 a22 a23   a11 a13 
 a32 a33  ,  a31 a33 
d'ordre 3:
 a11 a12 a13 
 a21 a22 a23 
a a a 
 31 32 33 
d'ordre 3:
 a11 a12 a13 
 a21 a22 a23 
a a a 
 31 32 33 
Conditions de 2ième ordre pour minimum locaux
2

∂
f ( x) 
2
Définition: Soit ∇ f ( x ) = 
 le Hessien (matrice
 ∂xi ∂x j 
réelle n × n) au point x d'une fonction f de classe C 2 (ayant
des dérivées partielles continues d'ordre 2).
Lemme 3.5: Soient X ⊂ R n un ensemble ouvert et f ∈ C 2 / X .
Si x ∈ X est un minimum local de f sur X , alors ∇f ( x ) =0 et
∇ 2 f ( x ) est une matrice semi-definie positive.
Lemme 3.5: Soient X ⊂ R n un ensemble ouvert et f ∈ C 2 / X .
Si x ∈ X est un minimum local de f sur X , alors ∇f ( x ) =0 et
∇ 2 f ( x ) est une matrice semi-definie positive.
Preuve. La première condition a été demontrée au Lemme 3.4.
La seconde condition est établie à partir du développement de
Taylor de 2ième ordre:
T
1 2 T 2
f ( x + θ d ) = f ( x ) + θ∇f ( x ) d + θ d ∇ f ( x ) d + α ( x, θ d ) θ d
2
α ( x,θ d ) =0.
où lim
θ →0
Puisque ∇f ( x ) =0, alors
1
2
f ( x + θ d ) − f ( x ) = θ 2 d T ∇ 2 f ( x ) d + α ( x, θ d ) θ d
2
1 2 T 2
2
= θ d ∇ f ( x ) d + 2α ( x,θ d ) d  .

2 
2
Preuve. La première condition a été demontrée au Lemme 3.4.
La seconde condition est établie à partir du développement de
Taylor de 2ième ordre:
T
1
f ( x + θ d ) = f ( x ) + θ∇f ( x ) d + θ 2 d T ∇ 2 f ( x ) d + α ( x, θ d ) θ d
2
où lim α ( x, θ d ) =0.
2
θ →0
Puisque ∇f ( x ) =0, alors
1 2 T 2
2
f ( x + θ d ) − f ( x ) = θ d ∇ f ( x ) d + α ( x, θ d ) θ d
2
1 2 T 2
2
= θ d ∇ f ( x ) d + 2α ( x, θ d ) d  .

2 
Par contradiction, si ∇ 2 f ( x ) n'est pas semi-definie positive, alors
il existe un d ∈ R n tel que d T ∇ 2 f ( x ) d < 0.
Ainsi, pour θ > 0 suffisemment petit, x + θ d ∈ Bε ( x ) et α ( x, θ d ) → 0.
Par conséquent
d ∇ f ( x ) d + 2α ( x, θ d ) d
T
2
2
<0
et alors f ( x + θ d ) − f ( x ) < 0 ou f ( x + θ d ) < f ( x ) , contredisant
le fait que x est un minimum local de f .
Contre-exemple: Les conditions que ∇f ( x ) =0 et que ∇ 2 f ( x )
est une matrice semi-definie positive ne sont pas suffisantes pour
assurer que x est un minimum local.
Au point x = y = 0
f ( x, y ) = x 3 + y 3
f ( x, y ) = 0
T
T
∇f ( 0, 0 ) = [ 0, 0]
∇f ( x, y ) = 3 x ,3 y 
 6x 0 
0 0
2
2
∇ f ( x, y ) = 
∇ f ( 0, 0 ) = 

 semi-def . pos.
 0 6y 
0 0
Donc les conditions sont satisfaites au point x = y = 0.
 ε ε
Mais pour un ε >0 suffisemment petit,  − , −  ∈ Bε ( 0, 0 ) et
 2 2
3
3
2ε 3
 ε ε  ε  ε
< 0 = f ( 0, 0 ) ,
f − ,−  = −  +−  = −
8
 2 2  2  2
et [ 0,0] ne peut être un minimum local même si les conditions
sont satisfaites.
2
2
Lemme 3.6: Soient X ⊂ R n un ensemble ouvert et f ∈ C 2 / X .
Si ∇f ( x *) =0 et ∇ 2 f ( x *) est une matrice definie positive, alors
il existe un ε >0 suffisemment petit tel que f ( x *) <f ( x ) pour
tout x ∈ Bε ( x *) .
Preuve. Se référant au Lemme 3.5,
1 2 T 2
f ( x * +θ d ) = f ( x *) + θ∇f ( x *) d + θ d ∇ f ( x *) d + α ( x*,θ d ) θ d
2
α ( x*, θ d ) =0.
où lim
θ →0
T
Puisque ∇f ( x ) =0, alors
1 2 T 2
2
f ( x * +θ d ) − f ( x *) = θ d ∇ f ( x *) d + 2α ( x*, θ d ) d  .

2 
2
2
Il est facile de vérifier que d T ∇ 2 f ( x *) d ≥ β d où β > 0 est la plus
petite valeur propre de ∇ 2 f ( x *) . En effet, sous l'hypothèse que
f ∈ C 2 / X , alors ∇ 2 f ( x *) est symétrique.
Par conséquent, il existe une matrice orthogonale P (i.e., P T = P −1 )
telle que
∇ 2 f ( x *) = P∆P T
où ∆ est une matrice diagonale comportant les valeurs propres de
∇ 2 f ( x *) sur la diagonale et où les colonnes de P sont les vecteurs
propres normalisés de ∇ 2 f ( x *) .
Donc
n
d ∇ f ( x *) d = d P∆P d = y ∆y = ∑ λi yi2
T
2
T
T
T
i =1
où les λi sont les valeurs propres de ∇ 2 f ( x *) .
Ainsi, si β = Min
{λi } , alors
i =1,…. n
T
T
n
2
i
n
2
i
T
T
2
d P∆P d = ∑ λi y ≥ β ∑ y = β d PP d = β d .
i =1
i =1
Preuve. Se référant au Lemme 3.5,
T
1
f ( x * +θ d ) = f ( x *) + θ∇f ( x *) d + θ 2 d T ∇ 2 f ( x *) d + α ( x*,θ d ) θ d
2
où lim α ( x*,θ d ) =0.
θ →0
Puisque ∇f ( x ) =0, alors
1
2
f ( x * +θ d ) − f ( x *) = θ 2  d T ∇ 2 f ( x *) d + 2α ( x*,θ d ) d  .

2 
2
Nous venons de vérifier que d T ∇ 2 f ( x *) d ≥ β d où β > 0 est la plus
petite valeur propre de ∇ 2 f ( x *) .
Donc
1
2
2
f ( x * +θ d ) − f ( x *) ≥ θ 2  β d + 2α ( x*,θ d ) d 

2 
1 2 2
≥ θ d  β + 2α ( x*, θ d )  .
2
Puisque β > 0, il s'ensuit que pour θ >0 suffisemment petit
β + 2α ( x*,θ d ) > 0
et
( x*,θ d ) ∈ Bε ( x *)
et ainsi
f ( x * +θ d ) − f ( x *) > 0
ou
f ( x * +θ d ) > f ( x *) .
Corollaire 3.7: Soient X ⊂ R n un ensemble ouvert et f ∈ C 2 / X .
Si ∇f ( x *) =0 et ∇ 2 f ( x *) est une matrice definie positive, alors
x* est un minimum locale de f sur X .
Convergence d’algorithme
Un algorithme défini sur un sous-ensemble X ⊂ R n est un processus
itératif qui, partant d'une solution initiale x 0 ∈ X , génère une suite de
points { x k } dans X .
Exemple: X = { x ∈ R 2 : x1 ≥ 0, x2 ≥ 0}
x 0 = (100,100 ) .
À un algorithme correspond une multi application
(multi function ou "mapping")
A: X → X
associant à un point x k ∈ X un sous ensemble A ( x k ) ⊂ X .
  x1 
Exemple: A ( x ) =   0,  ,
 2 
 x2  
0, 2   .


Dénotons par X * ⊂ X l'ensemble des solutions recherchées.
Exemple: X * = ( 0, 0 )
Définition: Un algorithme A est un algorithme de descente par
rapport à une fonction z : X → R1 continue si
i ) x ∉ X * et y ∈ A ( x ) ⇒ z ( y ) < z ( x )
ii ) x ∈ X * et y ∈ A ( x ) ⇒ z ( y ) ≤ z ( x ) .
 x 
Exemple: A ( x ) =  0, 1  ,
 2 
z ( x ) = x1 + x2
 x2  
0, 2  


Note: souvent la fonction z que nous utilisons est la fonction
économique du problème que nous voulons résoudre à l'aide
de l'algorithme.
Exemple: Min z ( x ) = x1 + x2
x∈ X
Définition: Un algorithme A est fermé au point x ∈ X si
i ) { x k } ∈ X a la propriété que x k → x
{
}
k →∞
ii ) y k ∈ A ( x k ) a la propriété que y k → y
k →∞
alors y ∈ A ( x ) .
Note: la notion de fermeture pour les multi applications correspond
à celle de continuité pour les fonctions.
  x1   x2  
Exemple: A ( x ) =  0,  , 0,  
 2   2  
1
1

 3 3 5 5
k
x =  2 − , 2 −  , k = 1,… ; (1,1) ,  ,  ,  ,  ,… , ( 2, 2 )
k
k

 2 2 3 3
1
1 

1 1 3 3 5 5
k
y = 1 − , 1 −  , k = 1,… ;  ,  ,  ,  ,  ,  ,… , (1,1)
2k 
 2k
2 2 4 4 6 6
Théorème 3.8: (Théorème de convergence globale)
Supposons que
i) X ⊂ R n , un ensemble non vide fermé, et X * l'ensemble
non vide des solutions;
ii) A un algorithme défini sur X qui, partant d'un point x 0 ∈ X ,
k
génère
une
suite
de
points
x
suit:
{
Considérons une suite de points x}kcomme
∈ X,k =
1,… telle que
k
si x ∈ X *, l'algorithme s'arrête
k
x
→
x. Le point xk +est
un point
d'accumulation
{ } sinon,
1
k
soit x ∈ A ( x )
(point limite) de
X
remplacer
k par (k + 1)
ferle
méprocessus;
X est un ensemble
si tout point d'accumulation
répéter
iii)(point
la suite
de points
limite)
de X appar
nt à Xpar
. l'algorithme est contenu dans
{ x k } tiegénéré
un sous ensemble compact de X ;
iv) il existe une fonction continue z par rapport à laquelle A est un
algorithme de descente.
Sous ces conditions, si la multi application A est fermée aux points
n'appartenent à X *, alors
a) soit que l'algorithme s'arrête en un nombre fini d'itérations
à un point de X *,
b) soit qu'il génère une suite infinie de points { x k } telle que
le point limite de toute sous-suite convergente de { x k }
appartient à X *.
Considérons une suite de points x k ∈ X , k = 1,… telle que
{ x } → x. Le point x est un point d'accumulation
k
(point limite) de X
X est un ensemble fermé si tout point d'accumulation
(point limite) de X appartient à X .
Dans R1 l'intervalle fermé [ a, b ]
est un ensemble fermé.
Dans R 2 l'ensemble
[
]
a
b
Γ = {[ x, y ] ∈ R 2 : x ∈ [ a, b ] , y = 0}
est aussi un ensemble fermé.
X ⊂ R n est un ensemble ouvert si
∀x ∈ X , alors la boule Bε ( x ) = { z ∈ R n ; x − z < ε } ⊂ X .
Dans R1 l'intervalle ouvert ( a, b )
est un ensemble ouvert puisque
∀x ∈ ( a, b ) , ∃ε > 0 tel que
Bε ( x ) = { z : x − z < ε } ⊂ ( a, b )
Dans R 2 l'ensemble
Γ = {[ x, y ] ∈ R 2 : x ∈ ( a, b ) , y = 0}
(
)
a
b
n'est pas un ensemble ouvert puisque
nous ne pouvons pas bouger pour
modifier la valeur de y
Théorème 3.8: (Théorème de convergence globale)
{ }
Supposons que
i) X ⊂ R n , un ensemble non vide fermé, et X * l'ensemble
non vide des solutions;
ii) A un algorithme défini sur X qui, partant d'un point x 0 ∈ X ,
génère une suite de points { x k } comme suit:
si x k ∈ X *, l'algorithme s'arrête
sinon, soit x k +1 ∈ A ( x k )
remplacer k par (k + 1)
répéter le processus;
iii) la suite de points { x k } généré par l'algorithme est contenu dans
un sous ensemble compact de X ;
iv) il existe une fonction continue z par rapport à laquelle A est un
algorithme Un
de descente.
ensemble Γ est borné si ∀x ∈ Γ, alors
Sous ces conditions, si la multi application A est fermée aux points
x < ∞.
n'appartenent à X *, alors
a) soit queUn
l'algorithme
un nombre
ensembles'arrête
Ψ est en
compa
ct si fini d'itérations
à un point de X *,
Ψ est un ensemble fermé et borné. k
b) soit qu'il génère une suite infinie de points { x } telle que
Considérons une suite de points x k ∈ X , k = 1,… telle que
x k → x. Le point x est un point d'accumulation
(point limite) de X
X est un ensemble fermé si tout point d'accumulation
(point limite) de X appartient à X .
le point limite de toute sous-suite convergente de { x k }
appartient à X *.
Théorème 3.8: (Théorème de convergence globale)
{ }
Supposons que
i) X ⊂ R n , un ensemble non vide fermé, et X * l'ensemble
non vide des solutions;
ii) A un algorithme défini sur X qui, partant d'un point x 0 ∈ X ,
génère une suite de points { x k } comme suit:
si x k ∈ X *, l'algorithme s'arrête
Un ensemble Γ est borné si ∀x ∈ Γ, alors
sinon, soit x k +1 ∈ A ( x k )
x < ∞.
Un ensemble Ψ est compact si
remplacer k par (k + 1)
Ψ est un ensemble fermé et borné.
répéter le processus;
iii) la suite de points { x k } généré par l'algorithme est contenu dans
un sous ensemble compact de X ;
iv) il existe une fonction continue z par rapport à laquelle A est un
algorithme de descente.
Sous ces conditions, si la multi application A est fermée aux points
n'appartenant à X *, alors
a) soit que l'algorithme s'arrête en un nombre fini d'itérations
à un point de X *,
b) soit qu'il génère une suite infinie de points { x k } telle que
Considérons une suite de points x k ∈ X , k = 1,… telle que
x k → x. Le point x est un point d'accumulation
(point limite) de X
X est un ensemble fermé si tout point d'accumulation
(point limite) de X appartient à X .
le point limite de toute sous-suite convergente de { x k }
appartient à X *.
Méthode de descente par coordonnées
f est minimisée pour chaque coordonnée séquentiellement.
Ainsi, les directions utilisées en séquence sont
1 
0
0
0  2 1 
0
1
n
e =   , e =   , …, e =   .
 
 
 
0
0
1 
À chaque fois que n itérations sont complétées, la séquence
est reprise.
Méthode de Gauss-Seidel
Étape 0 Soit f : R n → R1 à minimiser.
∂ le niveau de tolerance
Choisir solution initiale x 0
Poser k = 0
Étape 1 a) y 0 = x k
b) Pour j = 1 à n
• σ j solution optimale de
La valeur de f diminue à mesure
que les courbes de niveau se
rapproche du centre des ellipses
y0 = xk
Min1 f ( y j −1 + σ e j )
σ ∈R
• y = y j −1 + σ j e j
c) x k +1 = y n
j
Étape 2 Si x k +1 − x k < ∂, STOP et x* = x k +1 .
Sinon k = k + 1, et reprendre Étape 1.
x k +1 = y 2
y1
Méthode de Jacobi
La valeur de f diminue à mesure
que les courbes de niveau se
rapproche du centre des ellipses
Étape 0 Soit f : R n → R1 à minimiser.
∂ le niveau de tolerance
Choisir solution initiale x 0
Poser k = 0
Étape 1′
xk
x + σ 2e
k
a) Pour j = 1 à n
• σ j solution optimale de
Min1 f ( x k + σ e j )
σ ∈R
k +1
b) x défini comme suit
x kj +1 = x kj + σ j ,
j = 1,… , n
Étape 2 Si x k +1 − x k < ∂, STOP et x* = x k +1 .
Sinon k = k + 1, et reprendre Étape 1.
2
x k + σ 1e1
x k +1
3.2 Méthodes itératives de résolution
Une méthode itérative pour optimiser une fonction f : R n → R1
génère une suite de points { x k } où x 0 est un point initial choisi
dans R n et où
x k +1 = x k + σ k d k
i.e., x k +1 est généré à partir de x k en choisissant une direction
d k ∈ R n et en prenant un pas σ k ∈ R1 dans cette direction pour
s'éloigner de x k .
Les méthodes diffèrent par leurs choix de direction d k et de pas σ k .
Étape 0 Soit f : R n → R1 à minimiser.
f ∈ C1
Choisir solution initiale x 0
Poser k = 0
Étape 1 Si ∇f ( x k ) = 0, alors l'algo.
s'arrête avec x* = x k .
La valeur de f diminue à mesure
que les courbes de niveau se
rapproche du centre des ellipses
xk
x k +1
xk +2
Étape 2 Déterminer σ k tel que
(
( )) =
f x k − σ k ∇f x
k
{(
( ))}.
Min f x k − σ ∇f x
σ ≥0
( )
k
Poser x k +1 = x k − σ k ∇f x .
Poser k = k + 1.
Répéter l'étape 1.
k
Note: En pratique, le critère d'arrêt à
l'étape 1 est souvent défini en utilisant
un niveau de tolérance ∂ :
∇f ( x k ) <∂
1
Lemme 3.9: (Convergence) Soit f ∈ C . Tout point limite x*
d'une sous-suite convergente de la suite générée par la méthode
du gradient est tel que ∇f ( x *) = 0.
{ }
Preuve. Considérons la sous-suite x
kj
de { x k } telle que
{ } → x *.
x
kj
Par conséquent, se référant aux suites
kj
k j +1
k j +τ
k
{ x } = … , x , x ,… , x ,…
{
{x } = {…, x
kj
kj
,
,x
k j +1
}
,…} où x
k j +1
=x
k j +τ
.
{ }
Preuve. Considérons la sous-suite x
kj
de { x k } telle que
{ } → x *.
x
kj
Par conséquent, se référant aux suites
kj
k j +1
k j +τ
k
{ x } = … , x , x , … , x ,…
{
{x } = {…, x
kj
kj
,
,x
k j +1
}
,…} où x
k j +1
=x
k j +τ
.
Ainsi, se référant à la suite { x k }
(
f x
) = f (x ) ≤…≤ f (x )
f ( x ) = Min { f ( x − σ∇f ( x ) )} .
k j +1
k j +τ
k j +1
k j +1
kj
kj
σ ≥0
Donc
(
f x
k j +1
)
(
k
( ))
≤ f x j − σ∇f x
kj
∀σ ≥ 0.
(
f x
k j +1
)
(
≤ f x
) ( puisque k
f ( x ) = Min { f ( x
k j +1
j +1
k j +1
σ ≥0
kj
≥ k j + 1)
( ))}.
− σ∇f x
kj
Ainsi
(
f x
k j +1
) ≤ f (x
kj
( ))
− σ∇f x
kj
∀σ ≥ 0.
Puisque f ∈ C 1 , f est continue sur R n et
k j +1
lim f x
= f ( x *)
j →∞
(
)
(
( ))
kj
kj

 = f ( x * −σ∇f ( x *) )
lim  f x − σ∇f x

j →∞ 
Donc
f ( x *) ≤ f ( x * −σ∇f ( x *) ) ∀σ ≥ 0.
∀σ ≥ 0.
( 3.2 )
f ( x *) ≤ f ( x * −σ∇f ( x *) )
( 3.2 )
Par conséquent ∇f ( x *) = 0 car autrement si ∇f ( x *) ≠ 0, alors
−∇f ( x *) est une direction de descente et se référant au lemme
∀σ ≥ 0.
3.2 nous obtenons une contradiction à la relation (3.2).
Le prochain résultat indique que la méthode de descente se
déplace en zig-zag puisque les directions utilisées à deux
itérations successives sont à angle droit.
Lemme 3.10: ( Déplacement en zig-zag )
Si x k +1 = x k − σ k ∇f ( x k ) où σ k est tel que
(
)
{ (
)}
f x k − σ k ∇f ( x k ) = Min f x k − σ∇f ( x k ) ,
alors ∇f ( x
k +1 T
)
σ ≥0
∇f ( x k ) = 0.
Preuve. Si ∇f ( x k ) = 0, alors la preuve est complétée.
Si ∇f ( x k ) ≠ 0, considérons la fonction ϕ:{σ ∈ R1:σ ≥ 0} → R1
ϕ (σ ) = f ( x k − σ∇f ( x k ) ) .
ϕ ( σ ) = f ( g (σ ) )
Par dérivation en chaîne,
ϕ ′ (σ ) = −∇f ( x
k
)
T
(
)
∇f x k − σ∇f ( x k ) .
avec
g (σ ) = x k + σ s k
Par dérivation en chaîne,
ϕ ′ (σ ) = −∇f ( x
k
)
T
(
)
∇f x k − σ∇f ( x k ) .
Puisque σ k est un minimum local de ϕ (σ ) , alors par le
lemme 3.3 ϕ ′ (σ k ) = 0,
et alors
0 = ϕ ′ (σ k ) = −∇f ( x
k
)
T
(
∇ f x − σ k ∇f ( x
k
k
))
= −∇f ( x
k
)
T
∇f ( x k +1 ) .
Notes:
i ) L'ordre de convergence de la méthode du gradient est linéaire.
ii ) Au début de son application, la méthode permet de faire
diminuer la valeur de la fonction économique relativement
rapidement, mais son efficacité à ce chapitre diminue au
cours des itérations.
iii ) La méthode du gradient est la méthode la plus rapide
marginalement ("steepest descent method") :
T
∇f ( x ) d = ∇f ( x ) d cosθ
où θ est l'angle entre d et ∇f ( x ) . Ainsi, parmi les directions
d de norme 1
(
T
d = 1) , celle minimisant ∇f ( x ) d a un
angle de 1800 car cos (1800 ) = −1. Ainsi, cette direction d
correspond à
∇f ( x )
−
.
∇f ( x )
Méthode de Newton
Méthode de deuxième ordre supposant que f ∈ C 2 et utilisant
l'information au niveau du Hessien de f .
Extension directe de la méthode pour les fonctions à une seule
variable.
Méthode de Newton
Processus itératif pour construire une suite de points { x k } en
partant d'un point x 0 dans le voisinage d'une solution optimale x *.
Pour obtenir x k +1 , considérons l'approximation quadratique de f
1
k
k T
k
k T
Qk ( x ) = f ( x ) + ∇f ( x ) ( x − x ) + ( x − x ) ∇ 2 f ( x k )( x − x k ) .
2
Par le Théorème de Taylor, il existe un z entre x et x k tel que
T
T
1
f ( x ) = f ( x k ) + ∇f ( x k ) ( x − x k ) + ( x − x k ) ∇ 2 f ( z ) ( x − x k )
2
Méthode de Newton
Processus itératif pour construire une suite de points { x k } en
partant d'un voint x 0 dans le voisinage d'une solution optimale x *.
Pour obtenir x k +1 , considérons l'approximation quadratique de f
1
k
k T
k
k T
Qk ( x ) = f ( x ) + ∇f ( x ) ( x − x ) + ( x − x ) ∇ 2 f ( x k )( x − x k ) .
2
∇Q ( x ) = ∇f ( x ) + ∇ f ( x )( x − x )
x k +1 est le point où le gradient de l'approximation Qk ( x ) s'annule:
0=∇Qk ( x k +1 ) = ∇f ( x k ) + ∇ 2 f ( x k )( x k +1 − x k )
⇔
k
2
k
k
k
x
k +1
−1
= x − ∇ f ( x )  ∇f ( x k )
k
2
k
2
k
Note:
le
Hessien
∇
f
x
0
non-singulière.
) doit
ordre de convergence: au(moins
égaêtre
l à 2une
si xmatrice
est choisi
suffisemment près de x* où ∇f ( x *) = 0.
Supposons que la matrice A est symetrique
T
1
1
1
k
k
A x − x k = x T Ax − x k T Ax + x k T Ax k
ψ x−x = x−x
2
2
2
(
)
(
) (
)
k
 a11 a12   x1 − x1 
 a12 a22   x − x k 
 2 2
T a
T a
 k
1
T  a11 a12   x1 
k
k
k
k
11 a12   x1  1
11 a12  x1
= ( x1 , x2 ) 
 x  − x1 , x 2  a a   x  + x1 , x2  a a   k 

a
a
2
 12 22   2 
 12 22   2  2
 12 22   x2 
T a
T a
 k
1
1
2
2
k
k
k
k
11 a12   x1  1
11 a12  x1
=  a11 x1 + a12 x1 x2 + a22 x 2  − x1 , x 2 
 x  + x1 , x2  a a   k 

a
a
2
 12 22   2  2
 12 22   x2 
2

1
= x1 − x1k , x2 − x2k
2
(
)
T
(
)
(
(
∇ψ x − x
k
)
k
 a11 x1 + a12 x2   a11 a12   x1 
=
−
 k 


a
x
+
a
x
a
a
12
22
12
1
22
2

 
  x2 
k
 a11 a12   x1   a11 a12   x1 
=
 x  −  a a   x k 

a
a
 12 22   2   12 22   2 
k
 a11 a12   x1 − x1 
=

k 


a
a
x
−
x
 12 22   2
2 
(
)
)
(
)
Méthode de Newton
Processus itératif pour construire une suite de points { x k } en
partant d'un voint x 0 dans le voisinage d'une solution optimale x *.
Pour obtenir x k +1 , considérons l'approximation quadratique de f
1
k
k T
k
k T
Qk ( x ) = f ( x ) + ∇f ( x ) ( x − x ) + ( x − x ) ∇ 2 f ( x k )( x − x k ) .
2
x k +1 est celui où le gradient de l'approximation Qk ( x ) s'annule:
0=∇Qk ( x k +1 ) = ∇f ( x k ) + ∇ 2 f ( x k )( x k +1 − x k )
⇔
x
k +1
−1
= x − ∇ f ( x )  ∇f ( x k )
k
2
k
ordre de convergence: au moins égal à 2 si x 0 est choisi
suffisemment près de x* où ∇f ( x *) = 0.
Méthode de Newton avec pas optimal
Pour contrer la difficulté de choisir x 0 dans le voisinage de x*
où ∇f ( x *) = 0.
x
k +1
−1
= x − ∇ 2 f ( x k )  ∇f ( x k )
k
Méthode itérative où la direction d k au point x k est la suivante:
−1
d = − ∇ f ( x )  ∇f ( x k ) .
2
k
k
d k est bien une direction de descente si le Hessien ∇ 2 f ( x k ) est
une matrice positive définie et si ∇f ( x k ) ≠ 0:
∇f ( x
k
)
T
d = −∇f ( x
k
k
)
T
−1
∇ f ( x )  ∇f ( x k ) < 0.
2
k
Méthode de Newton avec pas optimal
Pour contrer la difficulté de choisir x 0 dans le voisinage de x*
où ∇f ( x *) = 0.
Méthode itérative où la direction d k au point x k est la suivante:
−1
d = − ∇ f ( x )  ∇f ( x k ) .
k
2
k
Pas optimal σ k défini comme suit:
f (x
k +1
(
)
−1
k


=
f
x
−
∇
f
x
∇
f
x
σ
)
( ) ( ) =
k 
k
2
k
{(
−1
)}
Min f x − σ ∇ f ( x )  ∇f ( x k ) .
σ ≥0
k
2
ordre de convergence: au moins égal à 2
k
Méthode de Newton modifiée avec pas optimal
Pour contrer la difficulté de choisir x 0 dans le voisinage de x*
où ∇f ( x *) = 0.
Si le Hessien ∇ 2 f ( x k ) n'est pas une matrice positive définie,
considérons la direction d k suivante au point x k :
−1
d = − ε k I + ∇ f ( x )  ∇f ( x k )
où I est la matrice identité et où ε k ≥ 0 est la plus petite valeur
k
2
k
assurant que la matrice ε k I + ∇ 2 f ( x k )  a toute ses valeurs
propres positives (i.e., est définie positive).
ordre de convergence: au moins égal à 2
Méthode Quasi-Newton
Plusieurs variantes existent. Voici celle de Fletcher-Powell.
Éviter de calculer le Hessien ∇ 2 f ( x k ) et son inverse à chaque
itération. Nous utilisons plutôt une matrice H k définie positive
qui est modifiée d'une itération à l'autre.
Méthode Quasi-Newton
Étape 0. Soit f : R n → R1 et f ∈ C 2 . Soit H 0 =I . Choisissons une
solution initiale x 0 ∈ R n .
Si ∇f ( x 0 ) = 0, alors l'algo. s'arrête et alors x* = x 0 .
Sinon, k = 0.
Étape 1. Dénotons s k = − H k ∇f ( x k ) .
Déterminons le pas optimal σ k dans la direction s k :
{
}
k
k
σ
f ( x k + σ k s k ) = Min
f
x
+
s
(
).
σ ≥0
Étape 2. Posons
x k +1 = x k + σ k s k .
Si ∇f ( x k +1 ) = 0, alors l'algo. s'arrête et alors x* = x k +1 .
x k +1 = x k + σ k s k .
Étape 2. Posons
Si ∇f ( x k +1 ) = 0, alors l'algo. s'arrête et alors x* = x k +1 .
Étape 3. Posons
y k = ∇f ( x k +1 ) − ∇f ( x k )
H k +1 =H k + Ak + B k
où
2
k
−H y ( H y
k
et
kT
σ ss
A =
kT k
σks y
k
k
k
B =
k
kT
k
k
k
k
)
T
.
y H y
Remplacer k par k + 1 et reprendre l'étape 1.
Lemme 3.11. Si H k est définie positive et ∇f ( x k ) ≠ 0 , alors s k est
(
une direction de descente à x i.e., ∇f ( x
k
k
)
T
)
sk < 0 .
Preuve. Par définition s k = − H k ∇f ( x k ) . Donc
∇f ( x
k
)
T
s = −∇f ( x
k
k
)
T
H k ∇f ( x k ) < 0
sous les hypothèses que H k est définie positive et ∇f ( x k ) ≠ 0.
Le prochain résultat indique que la direction s k est
perpendiculaire au ∇f ( x k +1 ) .
kT
Lemme 3.12. Si H est définie positive, alors s ∇f ( x k +1 ) = 0.
k
Preuve. Si s k = 0, la preuve est complétée.
Si s k ≠ 0, définissons la fonction ϕ (σ ) pour σ ≥ 0 :
ϕ (σ ) = f ( x k + σ s k ) .
kT
Lemme 3.12. Si H est définie positive, alors s ∇f ( x k +1 ) = 0.
k
{
}
k
k
f ( x k + σ k s k ) = Min
f
x
+
σ
s
(
)
σ ≥0
Preuve. Si s =0, la preuve est complétée.
Si s k ≠ 0, considérons la fonction ϕ:{σ ∈ R1:σ ≥ 0} → R1 :
k
ϕ (σ ) = f ( x k + σ s k ) .
ϕ (σ ) = f ( g (σ ) )
avec
g (σ ) = x k + σ s k
Puisque ϕ : R1 → R1 , par dérivation en chaîne
kT
ϕ ′ ( σ ) = s ∇f ( x k + σ s k ) .
Puisque σ k est un minimum local de ϕ (σ ) , alors par le
lemme 3.3, ϕ ′ (σ k ) = 0 et alors
kT
0=ϕ ′ (σ k ) = s ∇f ( x + σ k s
k
k
)=s
kT
∇f ( x k +1 ) .
Lemme 3.13. H k est définie positive , k = 0,1, 2,….
k
B =A =
k
Preuve. Preuve par induction sur k .
Pour k =0, H 0 =I est définie positive.
Supposons que H k est définie positive. Alors
x T H k +1 x = x T H k x + x T Ak x + x T B k x
k k
k k T
T
2 T k kT
σk x s s x x H y (H y ) x
k
T
= x H x+
−
kT k
kT
σks y
y H k yk
kT
=
kT
kT
xT H k x y H k y k − xT H k y k y H x
kT
2
σ s x)
(
+
.
kT
T
k
kT
kT
k
x H x y H y −(x H y
T
k
k
k
T
k
k
)
2
≥ 0.
k
T
σ
y k k sHk k y k
σ k s yk
y H y
Mais puisque H k est définie positive, il découle de l'inégalité
de Schwartz que
k
kkT k
− H σy s( Hs y
2k
k
k
)
T
T
T
x H
k +1
x=
kT
k
k
T
k
k
k
kT
kT
x H x y H y −x H y y H x
kT
2
σ s x)
(
.
+
kT
k
kT
σ k s yk
y H y
Mais puisque H k est définie positive, il découle de l'inégalité
de Schwartz que
kT
k
k
x H x y H y −(x H y
T
k
k
k
T
k
k
)
2
≥ 0.
Il s'ensuit que
2
σ s x)
(
x≥
.
kT
T
x H
Or
k +1
k
kT
σks y
kT
yk = ∇f ( xk +1 ) −∇f ( xk )
k
kT
σ k s y = σ k s ∇f ( x k +1 ) − ∇f ( x k ) 
k
kT

puisque s ∇f ( x k +1 ) =0 
k
= −σ k s ∇f ( x )


 par le lemme 3.12

 puisque par le lemme 3.11 s k est une 
>0


σ
>
direction
de
descente
et
que
0
k


kT
Jusqu'ici nous avons établi que
σ s x)
(
x≥
kT
T
x H
k +1
2
k
kT
σ k s yk
T
et que
σ k s k y k > 0.
kT
Donc si s x ≠ 0, substituons dans l'expression originale
T
T
x H
k +1
x=
k
kT
k
T
k
k
y H y
T
=
k
kT
k
k
k
kT
x H x y H y − x H y y Hkx
kT
k
σ k s yk
y H k yk
k
k
kT
x H x y H y − x H y y Hkx
kT
k
kT
k
T
σ s x)
(
+
kT
2
kT
Par contre, si s x = 0, substituons dans l'expression originale
kT
T
x H
k +1
x=
kT
xT H k x y H k y k − xT H k y k y H k x
kT
k
y H y
T
=
k
kT
k
k
T
σ s x)
(
+
kT
2
k
kT
σ k s yk
k
k
k
kT
x H x y H y − x H y y Hkx
kT
y H k yk
Il est possible de verifier que l'expression
T
k
kT
k k
T
k k 2
x H x y H y −(x H y )
est positive.
Alors la preuve est complétée puisque
T
k
kT
k k
T
k k
kT
k
x
H
x
y
H
y
−
x
H
y
y
H
x
T
k +1
x H x=
> 0.
kT
k k
y H y
Notes.
i ) Il est possible de démontrer que si f : R n → R1 est
quadratique et possède un minimum x*, alors la
méthode détermine x * en n itérations.
ii ) Pour des fonctions générales, il est possible de démontrer
que cette méthode a un ordre de convergence super linéaire.
Méthodes de gradients conjugués
Type de méthodes présenté dans le cadre de la programmation
quadratique :
1 T
f ( x ) = x Qx − bT x
2
où Q est une matrice symétrique n × n définie positive.
Définition: Étant donné une matrice symétrique Q, deux vecteurs
d 1 et d 2 sont Q-orthogonaux ou conjugués par rapport à Q si
1T
d Qd 2 = 0.
1
2
1T
2
1T
Note. d et d sont orthogonaux si d d = d Id 2 = 0
Le vecteurs unitaires e1 ,… , e n qui sont orthogonaux deux
à deux, sont I -orthogonaux deux à deux.
Théorème 3.14. ( Théorème des directions conjugées )
Supposons que la matrice Q est symétrique définie positive.
Soit {d
k
}
n −1
k =0
un ensemble de n vecteurs non-nuls qui sont
Q-orthogonaux deux à deux. Étant donné un point x 0 ∈ R n
quelconque, la suite { x k } générée comme suit
x k +1 = x k + α k d k
k = 0,1,… , n − 1
1 T
x Qx − b T x
2
∇f ( x ) = Qx − b
f ( x) =
∇2 f ( x ) = Q
où
αk = −
∇f ( x
kT
d ∇2
T
)
f (x )d
k
d
k
k
k
=−
T
k
Qx
−
b
d
(
)
k
kT
d Qd k
,
1 T
converge vers l'unique minimum x * de f ( x ) = x Qx − b T x
2
après n itérations ( i.e., x* = x n ) .
Mais comment définir un tel ensemble {d
k
}
n −1
k =0
de n vecteurs
Q-orthogonaux deux à deux?
Il est possible de démontrer que la méthode suivante génère
un tel ensemble tout en résolvant le problème
1 T

Min  x Qx − bT x  .

x∈R n  2
1 T
Méthode du gradient conjugé pour f ( x ) = x Qx − bT x :
2
1 T
Étape 0. Soit f ( x ) = x Qx − bT x. Choisir une solution
2
initiale x 0 ∈ R n . Définir
d 0 = −∇f ( x 0 ) = − ( Qx 0 − b ) .
Poser k = 0.
1 T
x Qx − b T x
2
∇f ( x ) = Qx − b
f ( x) =
∇2 f ( x ) = Q
Étape 1. • x k +1 = x k + α k d k
où
αk = −
∇f ( x
kT
d ∇
2
T
)
f (x )d
k
d
k
k
k
=−
T
k
Qx
−
b
d
(
)
k
kT
d Qd k
Étape 1. • x k +1 = x k + α k d k
où
αk = −
∇f ( x
kT
d ∇
2
T
)
f (x )d
k
d
k
k
T
k
Qx
−
b
d
(
)
k
k
=−
kT
d Qd k
• d k +1 = −∇f ( x k +1 ) + β k d k
où
βk =
∇f ( x
k +1 T
kT
)
∇ f (x )d
2
k
d ∇2 f ( xk ) d k
k
=
∇f ( x
k +1 T
)
kT
Qd k
d Qd k
.
1 T
x Qx − b T x
2
∇f ( x ) = Qx − b
f ( x) =
Étape 2. Si (k + 1) = n, alors x* = x n .
∇ f ( x) = Q
Si (k + 1) < n, alors remplacer k par k + 1 et
reprendre l'étape 1.
2
Méthode du gradient conjugé pour f ∈ C 2 quelconque :
2
Étape 0. Soit f ∈ C .
Choisir une solution initiale x 0 ∈ R n .
Poser k = 0.
Étape 1. a) Poser y 0 = x k et d 0 = −∇f ( x k )
b) Pour j = 0 à n − 1
• y j +1 = y j + α j d j
où
αj = −
∇f ( y
jT
d ∇
2
T
)
f ( y )d
j
dj
j
j
Étape 1. a) Poser y 0 = x k et d 0 = −∇f ( x k )
b) Pour j = 0 à n − 1
• y j +1 = y j + α j d j
où
αj = −
∇f ( y
jT
d ∇2
T
)
f ( y )d
j
dj
j
j
• d j +1 = −∇f ( y j +1 ) + β j d j
où
βj =
∇f ( y
j +1 T
jT
)
∇2 f ( y j ) d j
d ∇ f ( y )d
2
j
j
.
c) x k +1 = y n
Étape 2. Si ∇f ( x k +1 ) = 0, alors l'algo. s'arrête avec x* = x k +1 .
Sinon remplacer k par k + 1 et reprendre l'étape 1.
Optimisation unidimentionnelle approximative
(Inaccurate line search):
Dans plusieurs méthodes itératives, pour identifier x k +1 il faut
résoudre le problème unidimentionnelle (line search)
Min ϕ (σ ) = Min f ( x k + σ d k ) = f ( x k + σ k d k ) = ϕ (σ k )
σ >0
σ >0
afin de déterminer le pas optimal.
Il peut être avantageux d'utiliser une approximation de σ k en
completant une optimisation approximative comme suit.
Rappel: approximation linéaire de ϕ à 0 est obtenue à partir
du développement de Taylor d'ordre 1:
ϕ (σ ) ≈ ϕ (σ ) = ϕ ( 0 ) + ϕ ′ ( 0 ) σ .
Rappel: approximation linéaire de ϕ à 0 est obtenue à partir
du développement de Taylor d'ordre 1:
ϕ ( σ ) ≈ ϕ (σ ) = ϕ ( 0 ) + ϕ ′ ( 0 ) σ .
ϕ (σ ) = ϕ ( 0 ) + ϕ ′ ( 0 ) σ
ϕ (0) = ϕ (0)
ϕ ′ (σ ) = ϕ ′ ( 0 )
Pour déterminer une approximation acceptable du pas optimal
σ k , nous considérons l'approximation suivante de ϕ :
ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ
ϕˆ ( 0 ) = ϕ ( 0 ) ; ϕˆ ′ (σ ) = εϕ ′ ( 0 )
pour une valeur fixée de ε entre 0 et 1 (ε = 0.2, par exemple).
Une valeur σ est acceptable
ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ
tout en n'étant pas trop grande,
ϕ (σ )
si ϕ (σ ) n'excède pas
l'approximation ϕˆ (σ ) ; i.e.,
ϕ (σ ) ≤ ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ
ϕ (σ ) = ϕ ( 0 ) + ϕ ′ ( 0 ) σ
Une valeur σ est acceptable tout en n'étant pas trop grande,
si ϕ (σ ) n'excède pas l'approximation ϕˆ (σ ) ; i.e.,
ϕ (σ ) ≤ ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ
( 3.3)
Pour s'assurer que la valeur de σ choisie n'est pas trop petite
σ doit satisfaire un des tests additionnels suivants:
Règle d'Armijo: la valeur σ est telle que
ϕ (ησ ) > ϕˆ (ησ ) = ϕ ( 0 ) + εϕ ′ ( 0 )ησ
où η >1 (η =2, par exemple)
(3.4)
ϕ (σ ) n'excède pas l'approximation ϕˆ (σ ) ; i.e.,
ϕ (σ ) ≤ ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ
( 3.3)
Règle d'Armijo: la valeur σ est telle que
ϕ (ησ ) > ϕˆ (ησ ) = ϕ ( 0 ) + εϕ ′ ( 0 )ησ
(3.4)
où η >1 (η =2, par exemple)
Ainsi, si σ est multiplié par
un facteur égal a η , alors
la relation (3.3) n'est plus
vérifiée.
ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ
ϕ (σ )
ϕ ( 0) + ϕ ′ ( 0)σ
valeurs acceptables de σ
ϕ (σ ) ≤ ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ
( 3.3)
ϕ (ησ ) > ϕˆ (ησ ) = ϕ ( 0 ) + εϕ ′ ( 0 )ησ
(3.4)
Implémentation de la règle d'Armijo:
• Choisir une certaine valeur de σ
• Si (3.3) est satisfaite, multiplier à répétition par η jusqu'à
ce que (3.3) ne soit plus satisfaite. Alors la valeur précédente
parmi la suite des valeurs obtenues est celle du pas retenu.
ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ
ϕ (σ )
Le pas 2σ satisfait la condition d'Armijo
σ
•
2σ
•
4σ
•
ϕ ( 0) + ϕ ′ ( 0)σ
valeurs acceptables de σ
ϕ (σ ) ≤ ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ
( 3.3)
ϕ (ησ ) > ϕˆ (ησ ) = ϕ ( 0 ) + εϕ ′ ( 0 )ησ
(3.4)
• Choisir une certaine valeur de σ
• Si (3.3) n'est pas satisfaite, diviser à répétition par η
jusqu'à ce que (3.3) soit vérifiée. Cette dernière valeur
satisfaisant (3.3) est celle du pas retenu puisque la multiplier
par η entraîne que (3.3) n'est plus vérifiée.
ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ
1
Le pas σ satisfait la condition d'Armijo
2
ϕ (σ )
1
σ
2•
σ
•
ϕ ( 0) + ϕ ′ ( 0)σ
valeurs acceptables de σ
Une valeur σ est acceptable tout en n'étant pas trop grande,
si ϕ (σ ) n'excède pas l'approximation ϕˆ (σ ) ; i.e.,
ϕ (σ ) ≤ ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ
( 3.3)
Pour s'assurer que la valeur de σ choisie n'est pas trop petite
σ doit satisfaire un des tests additionnels suivants:
Règle de Goldstein: la valeur σ est telle que
ϕ (σ ) > ϕ ( 0 ) + (1 − ε ) ϕ ′ ( 0 )
1
où 0 < ε <
2
(3.5)
ϕ (σ ) n'excède pas l'approximation ϕˆ (σ ) ; i.e.,
ϕ (σ ) ≤ ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ
( 3.3)
Règle de Goldstein: la valeur σ est telle que
ϕ (σ ) > ϕ ( 0 ) + (1 − ε ) ϕ ′ ( 0 ) σ
1
où 0 < ε <
2
(3.5)
ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ
ϕ ( 0 ) + (1 − ε ) ϕ ′ ( 0 )
ϕ ( 0) + ϕ ′ ( 0)σ
ϕ (σ )
valeurs acceptables de σ
Une valeur σ est acceptable tout en n'étant pas trop grande,
si ϕ (σ ) n'excède pas l'approximation ϕˆ (σ ) ; i.e.,
ϕ (σ ) ≤ ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ
( 3.3)
Pour s'assurer que la valeur de σ choisie n'est pas trop petite
σ doit satisfaire un des tests additionnels suivants:
Règle de Wolfe: la valeur σ est telle que
ϕ ′ (σ ) ≥ (1 − ε ) ϕ ′ ( 0 )
où 0 < ε <
1
2
(3.6)
ϕ (σ ) n'excède pas l'approximation ϕˆ (σ ) ; i.e.,
ϕ (σ ) ≤ ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ
( 3.3)
Règle de Wolfe: la valeur σ est telle que
ϕ ′ (σ ) ≥ (1 − ε ) ϕ ′ ( 0 )
où 0 < ε <
1
2
(3.6)
ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ
ϕ (σ )
(1 − ε ) ϕ ′ ( 0 )
ϕ ( 0) + ϕ ′ ( 0)σ
valeurs acceptables de σ
• L’application de ces règles pour déterminer le pas préserve
quand même la convergence des méthodes.

Documents pareils