Faculté de technologie
Commande
Optimale
1.0
Dr. Merah Abdelkader
05/02/2017
Légende
Entrée du glossaire
Abréviation
Table des
matières
I - Chapitre II : Optimisation statique 5
A. Définitions....................................................................................................5
B. Problème d'extremum....................................................................................5
1. Le problème d'extremum d'une fonction sans contraintes.......................................................5
2. Le problème d'extremum d'une fonction avec contraintes.....................................................11
Glossaire 15
3
Chapitre II :
I-
I
Optimisation
statique
Définitions 5
Problème d'extremum 5
A. Définitions
Soit f une fonction définie sur un ensemble D et m et M deux réels.
• M est le maximum de f sur D si et seulement si f (x )⩽M pour tout x de
D , et s'il existe un réel α dans D tel que f (α )=M
• m est le minimum de f sur D si et seulement si f ( x )⩾m pour tout x de D
, et s'il existe un réel α dans D tel que f (α )=m
• On appelle extremum de f sur D son maximum ou son minimum (s'il existe).
• Si m ou M est un extremum de f sur un intervalle I ouvert inclus dans D ,
on dit que m ou M est un extremum local de f sur D
B. Problème d'extremum
1. Le problème d'extremum d'une fonction sans
contraintes
a) Fonction avec un seul variable
Si la fonction f (x ) admet une dérivée à x= x o et l'extremum est pris à x= x o ,
alors :
f ' (x )= [ df (x )
dx ]
x= x
o
=0
Formule 1
En d'autres termes, la condition nécessaire pour un extremum (maximum ou
5
Chapitre II : Optimisation statique
minimum) de la fonction est que la première dérivée de la fonction est nulle.
En outre, si
[ ]
2
'' d f (x ) o
f ( x )= >0 , f ( x ) est un minimum local
dx 2 x= x
o
Formule 2
[ ]
2
'' d f (x) o
f ( x )= 2
<0 , f ( x ) est un maximum local
dx x= x
o
Formule 3
Maximum, minimum local et global d'une fonction
a: Le point est une inflexion, mais pas un point extremum
b: Le point est un minimum local, et aussi un minimum global
c: Le point est un maximum local
d: Le point est un minimum local
Exemple : L'extremum d'une fonction avec seul variable
Chercher x tel que la fonction suivante est minimisée
2 2 2
f (x )=( x−1) +(x −2) +( x−3)
Solution
f ' ( x )=2( x−1)+ 2( x−2)+2 (x−3)=0 → x=2
f ' ' ( x)=6> 0, f ( x o) est un minimum
6
Chapitre II : Optimisation statique
Simulateur : L'extremum d'une fonction avec un seul variable
(simulation sous Matlab)
On va essayer de refaire le même travail en utilisant le logiciel Matlab
clc
syms x
f=(x-1)^2+(x-2)^2+(x-3)^2; % la fonction f(x)
fx=diff(f,x) % la dérivée de f(x)
Extremum=solve(fx) % calcul de l'extremum
fxx=diff(fx,x) % calcul de la dérivée deuxième de f(x)
x=-10:0.1:10;
f=(x-1).^2+(x-2).^2+(x-3).^2;
plot(x,f,'Linewidth',2),grid % tracé de f(x)
title(' f=(x-1)^2+(x-2)^2+(x-3)^2')
xlabel('abscisse')
ylabel('ordonnés')
Résultats
fx=6*x-12
Extremum=2
fxx=6
Tracé de f(x)=(x-1)^2+(x-2)^2+(x-3)^2
Alors, en utilisant toutes les méthodes (analytique ,numérique et graphique)
l'extremum est un minimum égale à (2, f(2))
7
Chapitre II : Optimisation statique
b) Fonction avec plusieurs variables
Maintenant, nous allons discuter le problème d'extremum d'une fonction à plusieurs
variables . On suppose qu'on veut minimiser la fonction :
o o o T
f (x 1 , x 2 ) au X =[ x 1 , x 2 ] (T : exprimela transposition)
Formule 4
le développements en série de Tailor de f (x ) au X o
o o
f ( X )= f ( x 1 , x 2)= f (x 1 +Δx 1 , x 2 +Δx 2)
= f ( X o )+ f 'x ( X o) Δx 1+ f 'x ( X o) Δx 2+
1 2
1 '' o 2 '' o
f x x ( X )(Δx 1 ) + f x x (X )(Δx 1 Δx 2)+
2 1 1 1 2
1 ''
f (X o )(Δx 2)2 +O [(Δx 1 )2 , (Δx 2)2 ]
2 xx 2 2
Formule 5
avec
2
' o ∂ f ( x1 , x 2) ' o ∂ f ( x 1 , x 2) '' o ∂ f (x 1 , x 2 )
f x (X )= , f x ( X )= , f x x ( X )= 2
,
1
∂ x1 2
∂ x2 1 1
∂ x1
'' o ∂ 2 f (x 1 , x 2 ) '' o ∂ 2 f ( x 1 , x 2) 2 2
f x x ( X )= , f x x ( X )= 2
, O[( Δx 1) ,( Δx 2) ]: exprime≤terme d ' ordre supérieur
1 2
∂ x1∂ x2 2 2
∂x2
Formule 6
La formule (12 (cf. Formule p 8)) est réécrite sous forme matricielle
o
f ( X )= f ( X )+[ Δx 1 , Δx 2 ] '
[ ]
1
f x (X ) 2
o
f 'x ( X o )
2
f 'x' x ( X o)
+ [ Δx 1 , Δx 2 ] ' '
1
f x x (X )
o
[ 1
1
1
2
f 'x' x ( X o ) Δx 1
''
1
2
2
2
o
f x x ( X ) Δx 2 ][ ] 2 2
+O [( Δx 1 ) ,( Δx 2 ) ]
Formule 7
Alors
1
f ( X )= f ( X o)+ ΔX T f 'X + ΔX T f 'X' ΔX +O[( Δx 1) 2 ,( Δx 2 )2 ]
o o
2
Formule 8
Avec
X=
x1
x2[] [ ] [ ] [
, ΔX =
Δx 1
Δx 2
' f 'x
fx
''
,fX= ' ,fX= '
f 'x x
fxx
o
1
2
o
1
1
1
2
f 'x x
f '
1
x2 x2
2
]
Formule 9
Nous savons que la condition nécessaire pour un extremum est :
f 'X =0
o
Formule 10
En outre, si
8
Chapitre II : Optimisation statique
ΔX T f ''X ΔX >0 o
Formule 11
Alors l'extremum est un minimum local
D'une façon générale
T
f ( X )= f ( x1 , x 2 , , , x n ) avec X =[ x 1 , x 2 , , , x n ]
Formule 12
La condition nécessaire pour un extremum de :
f ( X ) à X o=[ x o1 , x o2 , , , x on ]
Formule 13
est que la première dérivée est nulle.
T
[
f 'X = f 'x , f 'x , , , , f 'x =0
o o
1
o
2
o
n
]
Formule 14
De plus, si la seconde dérivée est positive (matrice Hessienne définie positive)
alors l'extremum est minimum.
[ ]
'' '' ''
fxx 1 1
f x x ,, ,
1 2
fxx 1 n
'' '' ''
'' f f x x ,, , fxx
f X
o = xx 1 2 2 2 >0 2 n
,, , , ,, ,, , , ,,
f 'x' x 1 n
f 'x' x 2 n
f 'x' x n n
Formule 15
Une matrice est définie positive si :
Si toutes les valeurs propres de la matrice hessienne sont positives
Si tous les mineurs de la matrice hessienne sont supérieurs de zéro
(Critère de Sylvester)
Exemple : L'extremum d'une fonction avec plusieurs variables
Trouver le point extrême tel que la fonction suivante est minimisée
f ( x 1 , x 2 , x 3)=2x12+5x22 + x32+ 2x 2 x 3+2x3 x 1−6x 2 +3
Solution
La condition nécessaire pour un extremum est que la première dérivée est nulle.
{ }
f 'x =4x1 + 2x3=0
[]
T 1 1
[ 1
o
2
o
3
]
f 'X = f 'x , f 'x , f 'x =0 ⇒ f 'x =10x 2 + 2x3−6=0 ⇒ X o= 1
o o
1
'
f =2x + 2x + 2x =0 −2
x1 1 2 3
9
Chapitre II : Optimisation statique
D'au-dessus de trois équations, nous obtenons le point extrême possible
La seconde dérivée ou la matrice Hessienne
[ ][
f 'x' x f 'x' x , , , f 'x' x
]
1 1 1 2 1 n
'' '' '' 402
'' f f ,, , f
f X
o = x1 x2 x2 x2 x 2 xn= 0 10 2
,, , , ,, ,, , , ,, 222
f 'x' x 1 n
f 'x' x
2 n
f 'x' x
n n
On utilisant le critère de Sylvester (calcul des mineurs principaux)
[ ]
402
4> 0, det [ ] 4 0 =40> 0, det
0 10 0 10 2 =24> 0
222
Alors la matrice Hessienne est définie positive se qui veut dire
f 'X' > 0
o
Alors
T T
X o =[ x o1 , x o2 , , , x on ] =[ 1,1 ,−2 ]
est un point minimum.
Simulateur : L'extremum d'une fonction avec plusieurs variables
(sous matlab)
On va essayer de refaire le même travail en utilisant le logiciel Matlab
clc
syms x1 x2 x3 ;
f=2*x1^2+5*x2^2+x3^2+2*x2*x3+2*x3*x1-6*x2+3;% la fonction
f(x)
fx1=diff(f,x1)% la dérivée de f(X) par rapport à x1
fx2=diff(f,x2)% la dérivée de f(X) par rapport à x2
fx3=diff(f,x3)% la dérivée de f(X) par rapport à x3
S=solve(fx1,fx2,fx3);
Extremum=[S.x1,S.x2,S.x3]
fx1x1=diff(fx1,x1); fx1x2=diff(fx1,x2); fx1x3=diff(fx1,x3);
fx2x1=diff(fx2,x1); fx2x2=diff(fx2,x2); fx2x3=diff(fx2,x3);
fx3x1=diff(fx3,x1); fx3x2=diff(fx3,x2); fx3x3=diff(fx3,x3);
hessien= [fx1x1 fx1x2 fx1x3;fx2x1 fx2x2 fx2x3;fx3x1 fx3x2
fx3x3]
valeurs_propres=eig(double(hessien)) % valeurs propres de
la matrice hessian
Résultats
10
Chapitre II : Optimisation statique
fx1=4*x1 + 2*x3
fx2 =10*x2 + 2*x3 - 6
fx3 =2*x1 + 2*x2 + 2*x3
Extremum =[ 1, 1, -2]
hessian =
[ 4, 0, 2]
[ 0, 10, 2]
[ 2, 2, 2]
valeurs_propres =
0.4532
5.0399
10.5068
Toutes les valeurs propres de la matrice Hessien sont définis positives alors
Extremum =[ 1, 1, -2] est un minimum
2. Le problème d'extremum d'une fonction avec
contraintes
Pour le cas de problème d'extremum d'une fonction sans contraintes, chaque
élément du vecteur X peut être sélectionné indépendamment, et il n'y a pas de
contrainte mutuelle. Cette section traite le cas où il existe des relations ou des
contraintes mutuelles.
f ( x )= f ( x 1 , x 2 , , , , , x n )
Formule 16
Chaque élément de X satisfait m équations comme suit :
g j ( x 1 , x 2 , , , , , x n)=0, j=1,2 , , , , , m (m< n)
Formule 17
Nous pouvons utiliser la méthode des multiplicateurs de Lagrange pour résoudre
le problème. Pour m équations de contraintes, on introduit m multiplicateurs de
Lagrange et une fonction auxiliaire : fonction Lagrange.
m
L( x 1 , x 2 , , , , , x n , λ1 , λ2 , , , , , λ m)= f ( x 1 , x 2 , , , , , x n)+ ∑ λ j g j ( x 1 , x 2 , , , , , x n )
j =1
Formule 18
Dans ce cas la on peut écrire :
L( X , λ)= f ( X )+ λT G
Formule 19
Avec
T T
λ=[ λ1 , λ 2 , , , , , λ m ] , G=[ g 1 , g 2 , , , , , g m ]
Formule 20
11
Chapitre II : Optimisation statique
Ainsi, le problème d'extremum avec contraintes se transforme en problème
d'extremum sans contraintes. La condition nécessaire pour l'extremum de fonction
L est :
m
∂L ∂ f ∂g
= +∑ λ j =0, i=1,2 , , , , n
∂ x i ∂ x i j=1 ∂ x i
∂L
=g j (x 1 , x 2 , , , , , x n )=0, j=1,2 , , , , m
∂ λj
Formule 21
Exemple : Distance minimale entre deux points
Trouver la distance minimale du point d'origine (0,0,0) au plan g avec :
g j ( x 1 , x 2 , x 3 )=2x 1 + x 2 +3x 3 +6=0
Solution
Le carré de la distance du point d'origine (0,0,0) à n'importe quel point est :
f (x 1 , x 2 , x 3)= x 21+ x 22 + x 23
La contrainte peut s'écrire
g j ( x 1 , x 2 , x 3 )=2x 1 + x 2 +3x 3 +6
Alors
2
L( x 1 , x 2 , x 3 , λ)= f (x 1 , x 2 , x 3)+ ∑ λ j g j ( x1 , x 2 , x 3 )=( x1 + x 2 + x 3 )+ λ(2x1 + x 2+ 3x3 +6)
2 2 2
j=1
Les conditions nécessaires pour un extremum sont :
∂L
=2x 1+ 2λ
∂ x1
∂L
=2x 2 +λ
∂ x2
∂L
=2x 1+ 3λ
∂ x3
∂L
=2x1 +x 2+3x3 +6
∂λ
12
Chapitre II : Optimisation statique
On aura le système d'équations suivantes :
{ }[ ][ ]
2x 1 +2λ=0 x1 −0,8571
2x 2 + λ=0 x
⇒ 2 = −0,4286
2x 1 +3λ=0 x3 −1,2857
2x1 + x 2 +3x 3=−6 λ 0,8571
Finalement, la distance minimale carrée du point d'origine (0,0,0) au plan g est
o o o 2 2 2
f ( x )= f (x 1 , x 2 , x 3 )=(−0,8571) +(−0,4286) +(−1,2857) =2.5713
Simulateur : Distance minimale entre deux points (sous Matlab)
On va essayer de refaire le même travail en utilisant le logiciel Matlab
clc
syms x1 x2 x3 lamda
f=x1^2+x2^2+x3^2
g=2*x1+x2+3*x3+6
fx1=diff(f,x1)% la dérivée de f(X) par rapport à x1
fx2=diff(f,x2)% la dérivée de f(X) par rapport à x2
fx3=diff(f,x3)% la dérivée de f(X) par rapport à x3
gx1=diff(g,x1)% la dérivée de g(X) par rapport à x1
gx2=diff(g,x2)% la dérivée de g(X) par rapport à x2
gx3=diff(g,x3)% la dérivée de g(X) par rapport à x3
[lamda x1 x2
x3]=solve(fx1+lamda*gx1,fx2+lamda*gx2,fx3+lamda*gx3,g)
distance_carree=double(x1^2+x2^2+x3^2)
Résultats
f =x1^2 + x2^2 + x3^2
g =2*x1 + x2 + 3*x3 + 6
fx1 =2*x1
fx2 =2*x2
fx3 =2*x3
gx1 =2
gx2 =1
gx3 =3
lamda =6/7
x1 =-6/7
x2 =-3/7
x3 =-9/7
distance_carree =2.5714
13
Glossaire
définie positive
En algèbre linéaire, la notion de matrice définie positive est analogue à celle de
nombre réel strictement positif : une matrice définie positive est une matrice
positive inversible
Les mineurs d'une matrice
En algèbre linéaire, les mineurs d'une matrice sont les déterminants de ses sous-
matrices carrées.
multiplicateurs de Lagrange
En mathématiques, et plus particulièrement en analyse, la méthode des
multiplicateurs de Lagrange permet de trouver les points stationnaires (maximum,
minimum...) d'une fonction dérivable d'une ou plusieurs variables, sous contraintes
15