Mathematics">
Optimisation - Chapitre 2
Optimisation - Chapitre 2
Optimisation - Chapitre 2
DJEGHALI
Département Automatique
UMMTO, 2021/2022
2.1 Introduction : Dans ce chapitre, nous allons étudier les méthodes de résolution d’un
problème d’optimisation sans contraintes. Ces méthodes sont qualifiées de méthodes locales
pour souligner le fait que le minimum (ou maximum) trouvé est local.
Min ou Max f ( x )
P: x∈Rn
djeghalinadial2csp@gmail.com
Chapitre 2. Optimisation sans contraintes : Méthodes locales N. DJEGHALI
−1 −1
⇒ (x1 , x 2 ) = ( , ) et ( x1 , x 2 ) = (1,1) .
3 3
−1 −1
Donc on a deux points critiques : ( , ) et (1,1) .
3 3
b) Calcul de la matrice hessienne
2 −2
H ( x1 , x 2 ) = ∇ 2 f ( x1 , x 2 ) =
− 2 6x 2
−1 −1 2 −2
• H( , )=
3 3 − 2 − 2
∆1 = 2 > 0
−1 −1
Les mineurs principaux de H( , ) sont : −1 −1
3 3 ∆ 2 = det(H( , )) = −8 < 0
3 3
−1 −1 −1 −1
On a n=2 (‘n’ est pair) et ∆ 2 <0 ⇒ H( , ) est indéfinie ⇒ ( , ) est un point selle.
3 3 3 3
2 −2
• H(1,1) =
− 2 6
Les mineurs principaux de H (1,1) , sont :
∆1 = 2 > 0
⇒ H(1,1) est définie positive ⇒ (1,1) est un point de minimum local.
∆ 2 = det(H(1,1)) = 8 > 0
La valeur de ce minimum local est donnée par : f (1,1) = −1.
Remarque 2.1 : Ce minimum n’est pas global puisque par exemple f(0,-2)=-6<f(1,1).
2
Chapitre 2. Optimisation sans contraintes : Méthodes locales N. DJEGHALI
Les méthodes de descente sont des méthodes numériques qui permettent de trouver le
minimum local d’une fonction en partant d’un point x 0 ∈ R n arbitrairement choisi. Les
méthodes de descente génèrent une suite de points x 0 , x 1 , ......, x k , tel que :
∀ k ∈ N f ( x k +1 ) ≤ f ( x k )
Avec : x k +1 = x k + α k d k , α k > 0
f ( x + αd ) = f ( x ) + α ∇f ( x ) T d + αε (α)
• Méthodes de descente
k=0,1,2,…..
x k +1 = x k − α∇f ( x k )
où la direction de descente est
d k = −∇f ( x k )
α > 0 : est le pas de descente fixé a priori.
b) Méthode du gradient à pas optimal
Partant d’un point x 0 , l’algorithme du gradient à pas optimal est donné comme suit :
k=0,1,2,…..
1°. Calculer un pas optimal α k , solution de : Min f ( x k − α k ∇f ( x k ))
2°. x k +1 = x k − α k ∇f ( x k )
3
Chapitre 2. Optimisation sans contraintes : Méthodes locales N. DJEGHALI
Remarque 2.2: La méthode du gradient est également appelée méthode de la plus grande
descente (ou pente).
Remarque 2.3 : ( x k +1 − x k ) ⊥ ( x k − x k −1 ) .
c) Méthode du gradient conjugué
L’algorithme du gradient conjugué prend la forme suivante :
On donne x 0 et on pose d 0 = −∇f ( x 0 )
k=0,1,2,…..
1°. Calculer un pas optimal α k , la solution de : Min f ( x k + α k d k )
2°. x k +1 = x k + α k d k
2
∇f ( x k +1 )
3°. B =
k
2
∇f ( x k )
4°. d k +1 = −∇f ( x k +1 ) + B k d k
Remarque 2.4 : Cette méthode converge plus rapidement que la méthode du gradient.
Remarque 2.5 : . est la norme euclidienne. Soit le vecteur [x 1 . . . x n ] , alors :
T
n
x = ∑x
i =1
2
i
x k +1 = x k − (∇ 2f ( x k )) −1 ∇f ( x k )
e) Méthode de Newton modifiée : L’algorithme de cette méthode est donné comme suit :
Pour k=0,1,2,……
1°. Calcul de α k , la solution de : Min f ( x k − α k (H ( x k )) −1 ∇f ( x k ))
2°. x k +1 = x k − α k (H ( x k )) −1 ∇f ( x k )
Avec H ( x k ) = ∇ 2 f ( x k ) .
4
Chapitre 2. Optimisation sans contraintes : Méthodes locales N. DJEGHALI
f) Méthode de Levenberg-Marquardt
Cette méthode est la combinaison du gradient et Newton, l’algorithme de cette méthode est :
Soit x 0 , v 0 , ∇f ( x 0 ) et H 0 ( x 0 )
Pour k=0,1,2,…..
1°. H k = H ( x k ) + v k I , avec v k : terme de régularisation tel que : H k > 0
2°. Si H k > 0 ⇒ v k = c 0 v k ⇒ 1°
3°. x k +1 = x k − α k (H k ) −1 ∇f ( x k )
4°. Calculer f ( x k +1 )
5°. Si f ( x k +1 ) ≥ f ( x k ) ⇒ v k = c1v k , x k +1 = x k ⇒ 1°
vk
Sinon v k +1 =
c2
Avec c 0 , c1 , c3 > 1 et H ( x k ) = ∇ 2f ( x k ) .
• Critères d’arrêt
Un test d’arrêt devra être choisi pour garantir que les algorithmes s’arrêtent toujours après un
nombre fini d’itérations et que le dernier point calculé soit suffisamment proche du point de
minimum local de f.
Soit ε > 0 la précision demandée. Plusieurs critères sont à notre disposition, on en distingue :
1. ∇f ( x k ) < ε (Ce critère vient des conditions nécessaires d’optimalité du 1er ordre)
x 22
f ( x1 , x 2 ) = x 12 + − 3( x 1 + x 2 )
2
On donne le point initial : x 0 = [ x10 x 02 ]T = [3 2] . Le critère d’arrêt est donné comme suit :
T
5
Chapitre 2. Optimisation sans contraintes : Méthodes locales N. DJEGHALI
∇f ( x k ) ≤ ε avec ε = 10 −2 .
Solution:
a) Par la méthode du gradient à pas optimal
2x − 3 3
∇f ( x ) = ∇f ( x1 , x 2 ) = 1 ; x 0 = [ x10 x 02 ]T = [3 2] ; ∇f ( x 0 ) = ∇f ( x10 , x 02 ) =
T
x2 − 3 − 1
Itération 1 : k=0
1°. Calculer un pas optimal α 0 > 0, solution de : Min f ( x 0 − α 0∇f ( x 0 ))
3 0 3 3 − 3α 0
x − α ∇f ( x ) = − α =
0 0 0
0
2 − 1 2 + α
(2 + α 0 ) 2
f ( x 0 − α 0∇f ( x 0 )) = f (3 − 3α 0 ,2 + α 0 ) = (3 − 3α 0 ) 2 + − 3(5 − 2α 0 )
2
19 02
D’où : f ( x 0 − α 0∇f ( x 0 )) = α − 10α 0 − 4
2
∂f ( x 0 − α 0∇f ( x 0 )) 10
= 19α 0 − 10 = 0 ⇒ α 0 = = 0.5263
∂α 0
19
∂ 2 f ( x 0 − α 0∇f ( x 0 ))
α 0 = 0.5263 est un point de minimum parce que = 19 > 0
∂ 2α 0
3 − 3α 0 1.4211 x11
2°. x = x − α ∇f ( x ) =
1 0 0 0
0
= = 1
2 + α 2.5263 x 2
2 x11 − 3 − 0.1578
∇f ( x ) = 1
1
=
x 2 − 3 − 0.4737
Itération 2 : k=1
1°.Calculer le pas optimal α1 > 0, solution de : Min f ( x1 − α1∇f ( x1 ))
6
Chapitre 2. Optimisation sans contraintes : Méthodes locales N. DJEGHALI
∂f ( x1 − α1∇f ( x1 )) 0.2493
= 0.2742α1 − 0.2493 = 0 ⇒ α1 = = 0.9092
∂α 1
0.2742
∂ 2f ( x 1 − α1∇f ( x1 ))
α1 = 0.9092 est un point de minimum car = 0.2742 > 0
∂ 2 α1
1.4211 + 0.1578α1 1.5646 x12
2°. x 2 = x1 − α1∇f ( x1 ) = 1
= = 2
2.5263 + 0.4737α 2.9570 x 2
2x 2 − 3 0.1291
∇f ( x 2 ) = 21 =
x
2 − 3 − 0.0430
Itération 3 : k=2
1°. Calculer le pas optimal α 2 > 0, solution de : Min f ( x 2 − α 2∇f ( x 2 ))
∂f ( x 2 − α 2∇f ( x 2 )) 0.0185
= 0.0352α 2 − 0.0185 = 0 ⇒ α 2 = = 0.5256
∂α 2
0.0352
1.5646 − 0.1291α 2 1.4967 x13
2°. x 3 = x 2 − α 2∇f ( x 2 ) = 2
= = 3
2.957 + 0.043α 2.9796 x 2
2x 3 − 3 − 0.0065
∇f ( x 3 ) = 31 =
x 2 − 3 − 0.0204
Itération 4 : k=3
1°. Calculer le pas optimal α 3 > 0, solution de : Min f ( x 3 − α 3∇f ( x 3 ))
7
Chapitre 2. Optimisation sans contraintes : Méthodes locales N. DJEGHALI
∂f ( x 3 − α 3∇f ( x 3 ))
= 5.0066 x10 −4 α 3 − 4.5906 x10 −4 = 0 ⇒ α 3 = 0.9169
∂α 3
x2 − 3 − 1
d 0 = −∇f ( x 0 )
Itération 1 : k=0
1°. Calculer un pas optimal α 0 > 0, solution de : Min f ( x 0 + α 0 d 0 )
3 − 3 3 − 3α 0
x 0 + α0d 0 = + α 0 = 0
2 1 2+α
(2 + α 0 ) 2
f ( x 0 + α 0 d 0 ) = f (3 − 3α 0 ,2 + α 0 ) = (3 − 3α 0 ) 2 + − 3(5 − 2α 0 )
2
19 02
D’où : f ( x 0 + α 0 d 0 ) = α − 10α 0 − 4
2
∂f ( x 0 + α 0 d 0 ) 10
= 19α 0 − 10 = 0 ⇒ α 0 = = 0.5263
∂α 0
19
∂ 2f ( x 0 + α 0 d 0 )
α 0 = 0.5263 est un point de minimum car = 19 > 0
∂ 2α 0
3 − 3α 0 1.4211
2°. x1 = x 0 + α 0 d 0 = 0
=
2 + α 2.5263
2x1 − 3 − 0.1578
∇f ( x 1 ) = 1 1 =
x 2 − 3 − 0.4737
8
Chapitre 2. Optimisation sans contraintes : Méthodes locales N. DJEGHALI
2
∇f ( x 1 )
3°. B0 = 2
= 0.0249
∇f ( x 0 )
0.0830
4°. d1 = −∇f ( x 1 ) + B0 d 0 =
0.4986
Itération 2 : k=1
1°. Calculer le pas optimal α1 > 0, solution de : Min f ( x 1 + α1d1 )
∂f ( x1 + α1d1 ) 0.2493
= 0.2624α1 − 0.2493 = 0 ⇒ α1 = = 0.9501
∂α 1
0.2624
∂ 2f ( x1 + α1d1 )
α1 = 0.9501 est un point de minimum car = 0.2624 > 0
∂ 2 α1
1.4211 0.0830 1.5
2°. x 2 = x1 + α1d1 = + α1 =
2.5263 0.4986 3
2x 2 − 3 0
∇f ( x 2 ) = 21 =
x 2 − 3 0
1.5
∇f ( x 2 ) = 0 < ε ⇒ x 2 = est le point de minimum de f.
3
Avec la méthode du gradient conjugué, le minimum de f est atteint en deux itérations.
9
Chapitre 2. Optimisation sans contraintes : Méthodes locales N. DJEGHALI
Itération 1 : k=0
x1 = x 0 − (∇ 2 f ( x 0 )) −1 ∇f ( x 0 )
3 2 0 0.5 0
On a ∇f ( x 0 ) = , ∇ 2 f ( x 0 ) = , (∇ 2 f ( x 0 )) −1 =
− 1 0 1 0 1
3 0.5 0 3 1.5
x1 = x 0 − (∇ 2 f ( x 0 )) −1 ∇f ( x 0 ) = − =
2 0 1 − 1 3
0
∇f ( x 1 ) =
0
1.5
∇f ( x1 ) = 0 < ε ⇒ x1 = est le point de minimum de f. Min f = f ( x1 ) = −6.75.
3
On constate qu’avec la méthode de Newton, le minimum de f est obtenu en une seule
itération.
2.3 Méthodes de recherche unidimensionnelle
On s’intéresse dans cette partie à l’optimisation de fonctions monovariables (fonctions d’une
seule variable). Plusieurs méthodes ont été proposées, on en distingue :
a) Méthode analytique: Soit x* le point critique de f ( f ′( x*) = 0 ).
10