CoursOptimisation CH2 (1371)
CoursOptimisation CH2 (1371)
CoursOptimisation CH2 (1371)
2.1 Dénitions
2.1.1 Dénition 1
Soit f (X) une fonction de < n
→ <n ; Le problème d'optimisation sans contraintes
s'écrit de la façon suivante :
minimiser la fonction f (X) avec X ∈ < . n
La fonction f (X) est souvent appelée : fonction coût, fonction objectif ou critère
d'optimisation.
2.1.2 Dénition 2
On dit que X est un point qui minimise la fonction f (X) sur l'ensemble < ssi :
∗ n
au point X si :
∗
∇f (X∗ ) = 0
Remarques
X est appelé point stationnaire de la fonction f (X).
∗
deux sur < , on dit que f (X) à un minimum global au point X ssi :
n ∗
∇f (X∗ ) = 0
soit :
f (x) ≈ f (a) + f 0 (a)(x − a)
ou encore
f (a + ∆x) ≈ f (a) + f 0 (a)∆x
pour plus de précision, on ajoute les termes :
1 1 (m)
f (x) ≈ f (a) + f 0 (a)(x − a) + f 00 (a)(x − a)2 + ... + f (a)(x − a)m
2 m!
(2.1)
m
X 1 (i)
= f (a)(x − a)i
i=0
i!
22
Dans le cas multidimensionnel, le développement en série de du premier
ordre de la fonction f (X) au voisinage du vecteur A, est donné par :
Taylor
(2.2)
n
X ∂f (X)
f (A + ∆X) ≈ f (A) + ∇f (A)∆X = f (A) + (xi − ai )
i=1
∂x i
x i =ai
(2.3)
i=1 i i i,j=1 x =a
j j
la droite (AB).
a. Représenter graphiquement cet énoncé.
b. Déterminer les coordonnées du point P pour que l'aire du triangle rectangle A P B 0
soit maximale.
Par la suite, X devient le point initiale pour la nouvelle itération et ainsi de suite
1 1 0
X1 = X0 + ρ0 ∆X0
où ρ ∈ < est appelé le
∗+
et ∆X un vecteur de < appelé n
X = X + ρ ∆X
k+1 k k k (2.4)
et on doit trouver ρ ∈ < et ∆X qui satisfont la condition f (X ) < f (X ).
k
∗+
k k+1 k
Connaissant la direction ∆X et soit deux réelles 0 < α < 0.5 et 0 < β < 1.
ρ ← 1.
while f (X + ρ∆X) > f (X) + αρ∇f (X)∆X, ρ : = βρ.
24
Remarque en pratique, souvent, on prend α ∈ [0.01 , 0.3] et β ∈ [0.1 , 0.8].
2.6 Méthode du gradient
2.6.1 Principe
La méthode du gradient est une technique de descente (itérative) permettant de
trouver le minimum d'une fonction donnée. La façon la plus évidente de trouver une
direction est l'utilisation de la dérivée. Ainsi, pour trouver la direction de descente, on
utilise le sens inverse de la dérivée. A cet eet, on prend ∆X = −∇f (X) . La relation
0
2.6.2 Algorithme
connaissant la valeur initiale X ,
Répéter
0
1. ∆X ← −∇f (X) . 0
2.6.3 Exemple
Soit une fonction cout f (X) quadratique en < sous la forme :
2
f (X) = x2 + 3y 2 ,
avec X = [x, y]0. Il est évident que l'origine est le point minimisant cette fonction.
Résolution avec un pas xe
Dans ce cas on recherche un pas ρ optimale c'est celui qui minimise une certaine
fonction, on a :
∇f (X) = [ 2x , 6y]
ξ(ρ) = X − ρ∇f (X)0 = [(1 − 2ρ)x , (1 − 6ρ)y]0
25
Pour l'obtention du paramètre ρ, considérons la fonction g(ρ) qu'on doit mini-
miser suivant ρ :
g(ρ) = f (ξ(ρ))
= (1 − 2ρ)2 x2 + (1 − 6ρ)2 y 2 ,
g 0 (ρ) = −4(1 − 2ρ)x2 − 36(1 − 6ρ)y 2
la paramètre ρ qui minimise la fonction g(ρ) est celui qui satisfait g (ρ) = 0,
0
soit :
(2.6)
2 2
x + 9y
ρ= 2 2
2x + 54y
L'équation itérative de résolution de ce problème est donc :
X = [x , y] = [3 , 5] ,
0 0
Répéter
1. ∆X ← −[ 2x , 6y] . 0
2. ρ = x2 +9y 2
3. X ← X + ρ∆X.
2x2 +54y 2
faire :
Y = X + ρ∆X,
f (Y) = Y(1)2 + 3Y(2)2 ,
∇f (X) = [2X(1) , 6X(2)],
26
f(x,y)=x2+3y2
20
15
10
z
0
2
2
1 1
0 0
−1 −1
−2 −2
y x
f(x,y)=x2+3y2
5
0
y
−1
−2
−3
−4
−5
−5 −4 −3 −2 −1 0 1 2 3 4 5
x
27
1. Calculer le Jacobien,
2. Calculer le Hessien,
3. Déterminer l'équation caractéristique du Hessien,
4. Donner les valeurs propres de cette matrice,
5. Cette matrice est elle dénie positive, pourquoi?
6. Calculer le déterminant en utilisant les valeurs propres.
7. Trouver analytiquement l'optimum de cette fonction, quelle est sa nature?
8. Utiliser la méthode du gradient pour déterminer cet extremum.
9. Calculer le pas optimale.
10. Donner l'algorithme correspondant à cette fonction pour le calcul du pas de façon
itérative.
2.7 Méthode de Newton
2.7.1 Principe
La méthode de Newton fait partie des méthodes de descente. Cette technique
cherche à minimiser le développement en série de Fourier du second ordre de la fonction
f (X) ∈ C suivant la quantité ∆X :
2
1
f (X + ∆X) ≈ f (X) + ∇f (X)∆X + ∆X0 Hf (X)∆X
2!
le ∆X qui minimise la partie droite est comme suit :
∆X = −Hf (X)−1 ∇f (X)0
pour la convergence cette méthode on calcule la quantité positive ∇f (X) Hf (X)
1 0 −1
∇f (X)
et on vérie qu'elle est inférieur ou égale à une certaine précision.
2
2.7.2 Algorithme
connaissant la valeur initiale X , et la précision
Répéter
0
f (X) = x2 + 3y 2 ,
avec X = [x, y]0.
Donner la forme quadratique correspondante, puis déterminer le minimum par la
méthode de Newton.
on a :
∇f (X)= [2x, 6y]
1
2 0 −1 2 0
Hf = −→ Hf
=
0 6 0 1
6
x
∆X = −Hf −1 ∇f (X) = −
y
1
1 0 −1 1
2 0 2x
2 ∇f (X) Hf (X) ∇f (X) = 2 2x 6y 0 1
6y
6
B=
2645
1.
1.8426
−→ B −1
=
4358.5 −1993.6
cause principale de cette diérence peut être expliqué par rapport aux valeurs propres
correspondantes des deux matrices A et B qui sont [0.0001 5.2927] et [0.0002 5.2927] ,0 0
respectivement.
On peut dire qu'il y a un certain déséquilibre entre les valeurs propres de ces ma-
trices. On dit qu'on a des matrices mal conditionnées.
29
2.8.1 Introduction
La méthode de Newton requière l'inversion du Hessien. L'inversion des matrices est
une opération qui est souvent lourde et peut être la cause d'une instabilité numérique
si la matrice est mal conditionnée. Dans ces conditions, on applique la méthode Quasi-
Newton.
2.8.2 Principe
Le principe de cette méthode est de remplacer la matrice inverse du Hessien Hf (X ) −1
Réponse : Cette équation peut être vue comme étant un problème de minimi-
2
2.9.3 Dénition
Deux vecteurs U et V dans < sont conjugués par rapport à une forme bilinéaire
n
de matrice symétrique dénie positive Q (on dit aussi qu'ils sont Q-orthogonaux), si :
U0 QV = 0
31
Remarques
1. Pour Q = I on retrouve la dénition classique de l'orthogonalité.
2. Un ensemble nie de vecteurs {U } est dit Q-Orthogonal si U QU
k
= 0 ∀i 6= j .
Ces vecteurs sont en plus linéairement indépendants.
i i=1 i j
X ∗ = α1 U1 + α1 U1 + ... + αn Un
donne :
i i
T ∗ T
U QX i U B i
αi = =
UiT QUi UiT QUi
Cela montre que la solution X peut être obtenue par :
∗
n
∗
X UiT B
X = T QU i
U
i=1
Ui i
Suivant cette expression, on peut dire que la solution X peut être considérer comme
∗
Xk+1 = Xk + αk Uk
où gkT Uk
αk = −
UkT QUk
32
et
gk = QXk − B
converge vers la solution unique X de QX = B après n itérations (c-à-d X
∗
n = X∗ ).
2.9.6 Algorithme
1. Pour X donné, on prend U = −g = B − QX
0 0 0 0
2. α = −
k
gkT Uk
UkT QUk
3. X = X + α U
k+1 k k k
4. g = QX − B
k+1 k+1
5. β =
k
T
gk+1 QUk
UkT QUk
6. U = −g + β U
k+1 k+1 k k
33
2. Le volume de la boite est donné par la relation :
V =a×b×h
a = L − 2h
b = H − 2h
V (h) = (L − 2h)(H − 2h)h
V (h) = 4h3 − 2(L + H)h2 + LHh
problème posé, la hauteur h ne peut pas être plus grande que min(H, L).
1 2
1
Programme Matlab
La gure 2.5, présente le tracé de la fonction V (h) pour h allant de 0 à min(H, L).
1
L=210;
H=297;
1
a=min(H,L) /2;
2
h=0:a ;
4
figure , hold on
6
plot (h,V)
7
[V_max, i_max]=max(V) ;
11
h_max=h(i_max) ;
12
13
34
Figure 2.5 Volume en fonction de la hauteur
plot (h_max,V_max, ' ∗ r ' )
line ([h_max h_max] ,[0 V_max] , ' LineStyle ' , '−− ' , ' Color ' , ' r ' )
14
line ([0 h_max] ,[V_max V_max] , ' LineStyle ' , '−− ' , ' Color ' , ' r ' )
15
h_zero=find (abs(Vp)<1)
17
Vp_max= Vp(i_max) ;
18
22
Solution Ex. 9.
surface : 2 2 4
S = (− x2 + 8) × (6 + x) = − x3 − x2 + 8x + 48
9 9 3
La dérivé de la surface suivant la variable donne :
x
dS(x) 2 8
= − x2 − x + 8
dx 3 3
Le maximum de cette fonction est atteint pour x = 2. Les deux gures 2.6 et 2.7,
sont les résultats du programme Matlab ci-dessus. Suivant l'allure de la dérivée
gure 2.7, il est claire que le maximum est atteint au voisinage du point dont
l'abscisse est 2.
35
Figure 2.6 Dessin du triangle rectangle
figure , hold on
x= − 6:0.01:6;
1
y=−2∗x.^2/9+8;
2
t i t l e ( 'y=−2∗x.^2/9+8 ' )
6
x1=4;
8
y1=−2∗x1^2/9+8;
9
12
x2=4;
13
y2=−2∗x2^2/9+8;
14
16
figure , hold on
17
22
36
Figure 2.7 Allure de la surface ainsi que sa dérivée suivant x.
legend ( 'S(x) ' , 'S ' ' (x) ' )
grid on
23
26
(2 − λ)2 = 0 → λ1 = λ2 = 2
37
5. La matrice est dénie positive, car les valeurs propres sont positives.
6. Le déterminant est donné par le produit des valeurs propres :
det(Hf ) = λ1 × λ2 = 4
la paramètre ρ qui minimise la fonction g(ρ) est celui qui satisfait g (ρ) = 0, soit : 0
(2.8)
2 2
1 x + 2x + y + 1 1
ρ= × = 2 2
2 (x + 1) + y 2
38
Initialisation
X = [x , y]0 = [3 , 5]0
ρ = 12
Répéter
(a) ∆X ← −[ 2x + 2 , 2y] . 0
(b) X ← X + ρ∆X.
(c) Arrêter lorsque k∆Xk = (2x + 2)
2
2
2
+ 4y 2 ≤ 10−3 .
39