Académique Documents
Professionnel Documents
Culture Documents
3 Opt Sans Cont Plus Var PDF
3 Opt Sans Cont Plus Var PDF
Notes:
n
i ) norme euclédienne de x ∈ R : x = x x =
n T
∑ i
x 2
i =1
ii ) ∇f ( x ) le gradient de f à x ∈ R n :
T
∂f ( x ) ∂f ( x ) ∂f ( x )
∇f ( x ) = , , , .
∂x1 ∂x2 ∂xn
X ⊂ R n est un ensemble ouvert si ∀x ∈ X il existe un ε >0
tel que Bε ( x ) = { z ∈ R n ; x − z < ε } ⊂ X .
( )
n'est pas un ensemble ouvert puisque
a b 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 .
f ( x +θ d ) − f ( x) T
lim = ∇f ( x ) d .
θ →0 θ
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
f ( x +θ d ) − f ( x) T
Preuve : Puisque lim = ∇f ( x ) d < 0, alors
θ →0
θ
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. Similaire
Conditions de 2ième ordre pour minimum locaux
∂ 2
f ( x)
Définition: Soit ∇ f ( x ) =
2
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).
( ) ( ) (
= 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'ordre 2: d'ordre 2:
a11 a12 a22 a23 a11 a13 a11 a12
a21 a22 , a32 a33 , a31 a33 a21 a22
d'ordre 3: d'ordre 3:
a11 a12 a13 a11 a12 a13
a21 a22 a23 a21 a22 a23
a a a a a a
31 32 33 31 32 33
Conditions de 2ième ordre pour minimum locaux
∂ 2
f ( x)
Définition: Soit ∇ f ( x ) =
2
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).
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 2
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
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
2
d ∇ f ( x ) d + 2α ( x, θ d ) d
T 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 ( x, y ) = 3 x ,3 y
2 2
∇f ( 0, 0 ) = [ 0, 0]
6x 0 0 0
∇ f ( x, y ) =
2
∇ f ( 0, 0 ) =
2
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
f − ,− = − +− = − < 0 = f ( 0, 0 ) ,
2 2 2 2 8
et [ 0,0] ne peut être un minimum local même si les conditions
sont satisfaites.
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 *) .
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
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
f ( x * +θ d ) − f ( x *) ≥ θ 2 β d + 2α ( x*,θ d ) d
2 2
2
1 2 2
≥ θ d β + 2α ( x*, θ d ) .
2
Puisque β > 0, il s'ensuit que pour θ >0 suffisemment petit
( x*,θ d ) ∈ Bε ( x *) et β + 2α ( x*,θ d ) > 0
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 ) .
x x2
Exemple: A ( x ) = 0, 1 , 0, 2
2
z ( x ) = x1 + x2
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 ) .
x1 x2
Exemple: A ( x ) = 0, , 0,
2 2
1 1 3 3 5 5
x = 2 − , 2 − , k = 1,… ; (1,1) , , , , ,… , ( 2, 2 )
k
k k 2 2 3 3
1 1 1 1 3 3 5 5
y = 1 − , 1 − , k = 1,… ; , , , , , ,… , (1,1)
k
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 ,
Considérons une suite de points x}kcomme
génère une suite de points { suit:
k
x ∈ X,k = 1,… telle que
si x ∈ X *, l'algorithme s'arrête
k
{ } sinon,
x k
→ x. Le point xk +est un point
soit x ∈ A ( x )
1 k d'accumulation
(point limite) de X
remplacer k par (k + 1)
X est un ensemble
répéterferle
méprocessus;
si tout point d'accumulation
iii)(point
la suite de points
limite) { x k } tiegénéré
de X appar nt à Xpar. 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'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 R 2 l'ensemble
[ ]
Γ = {[ x, y ] ∈ R 2 : x ∈ [ a, b ] , y = 0}
a b
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 .
( )
n'est pas un ensemble ouvert puisque
a b nous ne pouvons pas bouger pour
modifier la valeur de y
Théorème 3.8: (Théorème de convergence globale) Considérons une suite de points x k ∈ X , k = 1,… telle que
Supposons que { }
x k → x. Le point x est un point d'accumulation
(point limite) de X
0 0 1
• y = y j −1 + σ j e j
j
c) x k +1 = y n
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
{(
Min f x k − σ ∇f x
σ ≥0
( ))}.
k
( )
k
Poser x k +1 = x k − σ k ∇f x . Note: En pratique, le critère d'arrêt à
l'étape 1 est souvent défini en utilisant
Poser k = k + 1.
un niveau de tolérance ∂ :
Répéter l'étape 1.
∇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.
f ( x ) = Min { f ( x − σ∇f ( x ) )} .
k j +1 kj kj
σ ≥0
Donc
(
f x
k j +1
) (
≤ f x j − σ∇f x
k
( ))
kj
∀σ ≥ 0.
(
f x
k j +1
) ≤ f x ( ) ( puisque k
k j +1
j +1
≥ k j + 1)
f ( x ) = Min { f ( x ( ))}.
k j +1 kj kj
σ ≥0
− σ∇f x
Ainsi
f x( k j +1
) ≤ f (x kj
( ))
− σ∇f x
kj
∀σ ≥ 0.
Puisque f ∈ C 1 , f est continue sur R n et
lim f x
j →∞
k j +1
(
= f ( x *) )
kj
lim f x − σ∇f x
j →∞
( kj
( ))
= f ( x * −σ∇f ( x *) ) ∀σ ≥ 0.
Donc
f ( x *) ≤ f ( x * −σ∇f ( x *) ) ∀σ ≥ 0. ( 3.2 )
f ( x *) ≤ f ( x * −σ∇f ( x *) ) ∀σ ≥ 0. ( 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
3.2 nous obtenons une contradiction à la relation (3.2).
( ) { (
f x k − σ k ∇f ( x k ) = Min f x k − σ∇f ( x k ) ,
σ ≥0
)}
k +1 T
alors ∇f ( x ) ∇f ( x k ) = 0.
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
k T 1 k T
Qk ( x ) = f ( x ) + ∇f ( x ) ( x − x ) + ( x − x ) ∇ 2 f ( x k )( x − x k ) .
k k
2
Par le Théorème de Taylor, il existe un z entre x et x k tel que
T 1 T
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
k T 1 k T
Qk ( x ) = f ( x ) + ∇f ( x ) ( x − x ) + ( x − x ) ∇ 2 f ( x k )( x − x k ) .
k k
2
∇Q ( x ) = ∇f ( x ) + ∇ f ( x )( x − x )
k
k 2 k k
1 a11 a12 x1 − x1
T k
(
= x1 − x1k , x2 − x2k
2
)
a12 a22 x − x k
2 2
1 T a11 a12 x1 T a
11 a12 x1 1
T a k
11 a12 x1
= ( x1 , x2 )
2 a a
12 22 2
(k k
)
12 22 2 2
( k k
)
x − x1 , x 2 a a x + x1 , x2 a a k
12 22 x2
1 1 2
T a
11 a12 x1 1
T a k
11 a12 x1
2
(
k k
= a11 x1 + a12 x1 x2 + a22 x 2 − x1 , x 2
2 2
) ( k k
)
x + x1 , x2 a a k
12 22 2 2
a a 12 22 x2
où ∇f ( x *) = 0. x k +1
= x − ∇ 2 f ( x k ) ∇f ( x k )
k
)
σ ≥0
{( k 2 k
−1
Min f x − σ ∇ f ( x ) ∇f ( x k ) . )}
ordre de convergence: au moins égal à 2
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 )
k 2 k
où k
A = k
kT k
σks y
T
−H y ( H y
k k k k
)
et B =k
kT k k
.
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 .
kT
Lemme 3.12. Si H est définie positive, alors s ∇f ( x k +1 ) = 0.
k
f ( x k + σ k s k ) = Min {f ( x k
+ σ s k
) }
Preuve. Si s =0, la preuve est complétée.
k σ ≥0
=
kT
xT H k x y H k y k − xT H k y k y H x kT kT
+
( σ s x)
k
.
kT
kT kT
y H y k k
σ k s yk
Mais puisque H k est définie positive, il découle de l'inégalité
de Schwartz que
kT 2
x H x y H y −(x H y
T k k k T k k
) ≥ 0.
2
T
x H k +1
x=
T k kT
x H x y H y −x H y y H x k k T k k kT kT
+
( σ s x)
k
kT
.
kT kT
y H y σ k s yk k k
T
x H k +1
x≥
( σ s x)
k
.
kT
kT yk = ∇f ( xk +1 ) −∇f ( xk )
σks y k
kT kT
Or σ k s y = σ k s ∇f ( x k +1 ) − ∇f ( x k )
k
kT
puisque s ∇f ( x k +1 ) =0
kT
= −σ k s ∇f ( x )
k
par le lemme 3.12
puisque par le lemme 3.11 s k est une
>0
direction de descente et que σ k
> 0
Jusqu'ici nous avons établi que
2
T
x H k +1
x≥
( σ s x)
k
kT
kT
σ k s yk
T
et que σ k s k y k > 0.
kT
Donc si s x ≠ 0, substituons dans l'expression originale
2
T
x H k +1
x=
T kT
x H x y H y − x H y y Hkx
k k k T k k kT
+
( σ s x)
k
kT
kT kT
y H y k k
σ k s yk
T kT T kT
x H x y H y − x H y y Hkx
k k k k k
= kT
y H k yk
kT
Par contre, si s x = 0, substituons dans l'expression originale
2
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
+
( σ s x)
k
kT
kT kT
y H y k k
σ k s yk
T kT T kT
x H x y H y − x H y y Hkx
k k k k k
= kT
y H k yk
Il est possible de verifier que l'expression
kT k k 2
x H x y H y −(x H y )
T k k k T
est positive.
Alors la preuve est complétée puisque
T k kT k k T k k kT k
T k +1 x H x y H y − x H y y H x
x H x= kT k k
> 0.
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.
1T 1T
Note. d et d sont orthogonaux si d d = d Id 2 = 0
1 2 2
αk = − kT
=− kT
,
d ∇2 f (x )d k k
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 ) .
n −1
Mais comment définir un tel ensemble {d k
} k =0
de n vecteurs
Q-orthogonaux deux à deux?
Étape 1. • x k +1 = x k + α k d k
T T
∇f ( x k
) d k
( Qx k
− b ) d k
où αk = − kT
=− kT
d ∇ 2
f (x )d k k
d Qd k
Étape 1. • x k +1 = x k + α k d k
T T
∇f ( x k
) d k
( Qx −k
b ) d k
où αk = − kT
=− kT
d ∇ 2
f (x )d k k
d Qd k
• d k +1 = −∇f ( x k +1 ) + β k d k
k +1 T k +1 T
∇f ( x ) ∇ f (x )d
2 k k
∇f ( x ) Qd k
où βk = kT
= kT
.
d ∇2 f ( xk ) d k d Qd k
1 T
f ( x) =x Qx − b T x
2
∇f ( x ) = Qx − b
Étape 2. Si (k + 1) = n, alors x* = x n .
∇ f ( x) = Q 2
• d j +1 = −∇f ( y j +1 ) + β j d j
j +1 T
∇f ( y ) ∇2 f ( y j ) d j
où βj = jT
.
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
ϕˆ (σ ) = ϕ ( 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)
ϕˆ (σ ) = ϕ ( 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)
ϕ ( 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)
ϕ ( 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.