Vous êtes sur la page 1sur 22

ENIG – Mastère ATI Algorithmes d’Optimisation en Commande

École Nationale d’Ingénieurs de Gabes

ÉLÉMENTS D’OPTIMISATION NON LINÉAIRE

Bel Hadj Ali Nizar 1


ENIG – Mastère ATI Algorithmes d’Optimisation en Commande

Programmation Non Linéaire

Position du problème
On aborde pour commencer le problème d’optimisation non linéaire posé dans
D  R
n

Min f ( x )
x D
Où f : D   R est une fonction non linéaire.

Trois cas seront distinguée s selon que :

 D  R ; optimsatio
n
n sans contrainte s

D  x R  n

h ( x )  0 ; optimsatio n avec contrainte s égalités

D  x  R g ( x )  0  ; optimsatio
n
n avec contrainte s inégalités

Bel Hadj Ali Nizar 2


ENIG – Mastère ATI Algorithmes d’Optimisation en Commande

Optimisation unidimensionnelle

Position du problème
Étude des minima et maxima de fonctions réelles d’une variable réelle.
• Toute la problématique du cas multivarié est déjà présente;
• Méthodes utilisées en recherche linéaire comme sous-problème dans les
méthodes destinées au cas des fonctions à plusieurs variables.

Principe général
La fonction f(x) est supposée deux fois continûment différentiable.
La recherche d’un minimum de f(x) se fait en recherchant un point
stationnaire c-à-d x* vérifiant l’équation : f ’(x*) = 0 par l’une des méthodes
de résolution des équations à une inconnue.

Les méthodes les plus utilisées :


- La méthode de Newton-Raphson;
- La méthode de la sécante;

Bel Hadj Ali Nizar 3


ENIG – Mastère ATI Algorithmes d’Optimisation en Commande

Optimisation unidimensionnelle

La méthode de Newton Raphson :


Pour rechercher la racine d’une fonction f , on considère
l’algorithme suivant:

Définir un estimé initial x0


A l‘itération k effectuer : xk+1 = xk – f (xk)/f ‘(xk)

Interprétation :
Si xk est e point obtenu à l’étape k, la fonction f(x) est
approximée par sa tangente d’équation :
y = f (xk) + (x - xk) f ’(xk)
et le point xk+1 est choisi comme l’intersection de cette
droite avec l’axe des x.

 Convergence locale quadratique (ordre = 2)

Bel Hadj Ali Nizar 4


ENIG – Mastère ATI Algorithmes d’Optimisation en Commande

Optimisation unidimensionnelle

La méthode de la sécante :
Pour éviter le calcul de la dérivée de la fonction f on peut utiliser l’approximation
suivante : k 1
)  f (x )
k
f (x
f '(x)  k 1
 x
k
x
Cela revient à utiliser la droite sécante passant par les points (xk, f(xk)) et
(xk+1, f(xk+1)) plutôt que la tangente à la courbe f.

Algorithme :
Étant donné x0 et x1 deux valeurs initiales de la solution
A l‘itération k effectuer : k 1 f ( x
k
)( x
k
 x
k 1
)
 x 
k
x k 1
f (x )  f (x
k
)

 Convergence locale super linéaire ( 1 < ordre < 2)

Bel Hadj Ali Nizar 5


ENIG – Mastère ATI Algorithmes d’Optimisation en Commande

Optimisation sans contraintes

Position du problème :

  R qui a tout x  R
n n
Soit f :R associe la valeur réelle f(x) .

On cherche à résoudre :

 Min f (x)

 x R
n

n
Il s' agit donc de déterminer un point x * de R tel que :

 x R : f ( x *)  f ( x ) c - à - d un minimum
n n
global de f sur R

Les conditions d’optimalité que l’on peut établir dépendent des hypothèses
que l’on peut formuler. La différentiabilité et la convexité permettent de poser
des conditions nécessaires et suffisantes.

Bel Hadj Ali Nizar 6


ENIG – Mastère ATI Algorithmes d’Optimisation en Commande

Optimisation sans contraintes

Conditions nécessaires d’optimalité locales :


Rappel :

Le gradient d' une fonction f est le vecteur de ses dérivées partielles premières :

  f(x) 
 f(x)   
 xi 
On appelle Hessien d' une fonction f en x, la matrice symétrique des dérivées
partielles secondes, notée :

  2 f(x) 
 f(x)  
2

  x i  x j 

Théorème 1 : Une condition nécessaire pour que x * soit un minimum


(local ou global) de f est :

(a)  f(x * )  0 (stationna rité);


2
(b) le hessien f(x * ) est une matrice semi - définie positive.

Bel Hadj Ali Nizar 7


ENIG – Mastère ATI Algorithmes d’Optimisation en Commande

Optimisation sans contraintes

Conditions suffisantes d’optimalité locales :


Théorème 2 : Sous les m eˆ mes hypothèses du premier théorème, une condition
n
suffisante pour que x * soit un minimum local de f sur R est :

(a)  f(x * )  0 (stationna rité);


2
(b) le hessien f(x * ) est une matrice définie positive.

Cas convexe :
La convexité permet de passer d’une caractérisation locale d’optimalité à
une caractérisation globale;
Elle est aussi utile dans le cas de fonctions non différentiables.

Définition 1 :

Un ensemble D sera dit convexe si  x 1 et x 2  D ;  x 1  (1   ) x 2  D ;    0 , 1 

Bel Hadj Ali Nizar 8


ENIG – Mastère ATI Algorithmes d’Optimisation en Commande

Optimisation sans contraintes

Définition 2 :

Une fonction f définie sur un ensemble convexe D, est dite convexe si

 x 1 et x 2  D et    0 , 1  on a :

f(  x 1  (1   ) x 2 )   f ( x 1 )  (1   ) f ( x 2 )

Elle sera dite strictiem et convexe si  x 1 et x 2  D et    0 , 1  on a :

f( λ( 1
 (1   ) x 2 )   f ( x 1 )  (1   ) f ( x 2 )

Une foncti on f est d ite concav e si (-f) est convex e.

Caractéris ation de la convexité :


n
Soit D un sous - ensemble convexe de R .
1
1 - Si f est C , alors f est convexe sur D si et seulement si :
 x 1 et x 2  D : f(x 2
)  f(x 1 )   f ( x 1 )( x 2  x 1 )
2
2 - si f est C , alors f est convexe sur D si et seulement si :

La matrice hessien  2

f ( x ) est semi - définie positive

Bel Hadj Ali Nizar 9


ENIG – Mastère ATI Algorithmes d’Optimisation en Commande

Optimisation sans contraintes

Condition nécessaire et suffisante d’optimalité globale :

1
Théorème 3 : Si f est une fonction convexe de classe C , une condition
n
nécessaire et suffisant e pour que x * soit un minimum global de f sur R
est que  f(x * )  0 .

Autrement dit :
(a) dans le cas convexe, la stationna rité à elle seule constitue une CNS;
(b) si f est stricteme nt convexe alors le minimum global est unique;

Bel Hadj Ali Nizar 10


ENIG – Mastère ATI Algorithmes d’Optimisation en Commande

Algorithmes d’optimisation sans contraintes

Principe général des méthodes itératives d’optimisation :

Les algorithme s d' optimisati on consistent à construire une suite de points


0 1 k
x , x ,..., x convergean t vers un optimum local de f.
k1
 x   k .d
k
A chaque étape k : x k

 d k est une direction ( R


n
de recherche )
où : 
  k  0 est un coefficien t de recherche
La direction de recherche peut étre :

: d k  -  f(x
k k
- soit le gradient de f en x );

 f(x
k
- soit calculée à partir du gradient );

(  f(x  0).
k t
- soit une direction de descente arbitraire ) .d k

Bel Hadj Ali Nizar 11


ENIG – Mastère ATI Algorithmes d’Optimisation en Commande

Algorithmes d’optimisation sans contraintes

Définition : Direction admissible


On appelle direction admissible en x  D , un vecteur d appelé direction, tel qu' il existe
  0 tel que le segment [x, x   .d ]  D.
On note D(x) l' ensemble des directions admissible s en x.

Définition : Direction de descente

Soit d  D(x), s' il existe un    tel que pour tout t  0,   , on a f(x  t.d)  f(x), alors
la direction amissible d est dite direction de descente.

Définition :


  R , une fonction
n n
Soit f :R contin uˆ ment différenti able, et x un vecteur de R .

d  R de f en x   f(x) .d  0.
n T
Le vecteur est appelé direction de descente

avec x   x   .d : f(x )  f(x)   f(x) .( x   x )  o ( x   x ) )


T
(Développe ment de Taylor 

Bel Hadj Ali Nizar 12


ENIG – Mastère ATI Algorithmes d’Optimisation en Commande

Algorithmes d’optimisation sans contraintes

Méthode du gradient (à pas fixe) :

Soit x  D. En développan
0 0
t f en série de Taylor au premier ordre autour de x ,
on obtient :

f(x)  f(x )  (x - x ).  f(x


0 0 k
)

On minimisera cette fonction en se déplaçant dans la direction opposée du gradient

 x -  . f(x
1 0 0
d' une quantité λ et on définit le point : x );

)  f(x
1 0
en choisissan t λ positif et suffisamm ent petit on aura : f(x ).

k1
 x -  k . f(x
k k
L' algorithme du gradient se présente comme suit : x )

Choix de λ k : - si λ k augmente l' approximat ion linéaire ne sera plus valable;

- la convergenc e peut étre trop lente.

Bel Hadj Ali Nizar 13


ENIG – Mastère ATI Algorithmes d’Optimisation en Commande

Algorithmes d’optimisation sans contraintes

Méthode du gradient à pas optimal :


 En partant
0
de x , déterminer par une reherche linéaire :

 x -  0 . f(x
1 0 0
x ),

: g(  )  f(x -  . f(x
0 0
λ 0 est choisi de façon à minimiser la fonction ))

 f(x
1 0
le point x sera le meilleur possible dans la direction ). C' est la raison
pour laquelle on appelle cette méthode gradient à pas optimal, λ 0 étant le pas

optimal correspond ant.

k 1
 A l' étape k, connaissan
k
t x , on calcule x par :
k1
 x -  k . f(x  k  arg min f(x -  . f(x
k k k k
x ), avec ))
 0

 On décide d' arr eˆ ter, un test de convergenc e étant satisfait :


k 1
 x   1 ou encore  f(x )  2
k k
par exemple : x

Bel Hadj Ali Nizar 14


ENIG – Mastère ATI Algorithmes d’Optimisation en Commande

Algorithmes d’optimisation sans contraintes

Méthode de Newton :
2
On suppose que la fonction f est de classe C . La méthode consiste à remplacer,
k
au voisinage de l' estimée x , la fonction f par son approximat ion quadratiqu e:

g(x)  f(x)  f(x )   f(x ) )  ² f(x


k k T k 1 k T k k
) (x - x 2
(x - x )(x - x )
k 1
On prend alors comme estimée x le minimum de g(x) lorsqu' il existe. Ceci ne

peut étre le cas que si  ² f(x


k
) est une matrice définie positive.
k 1
La fonction g(x) est alors stricteme nt convexe et a un minimum unique x
k1
définie par :  g(x )  0.
k1
:  f(x )  -  ² f(x
k k k
Ce qui conduit au système linéaire ).(x - x )

d' où la formule itérative :

-  ² f(x )
k1 1
 x .  f(x
k k k
x )

Bel Hadj Ali Nizar 15


ENIG – Mastère ATI Algorithmes d’Optimisation en Commande

Algorithmes d’optimisation sans contraintes

Limitations de la méthode de Newton pure :


- La méthode de Newton ne possède pas la proprieté de convergenc e globale :
0 
si le point de départ x est trop éloigné de x la méthode peut diverger;

 ² f(x
k
- La méthode n' est pas définie si la matrice ) n' est pas inversible ;
- La méthode ne permet pas de discerner les minima des maxima et points de selle;

Améliorations de la méthode :
Il existe des modifications de la méthode de Newton permettant d’assurer
une convergence globale et ne vitesse de convergence quadratique dans le
voisinage de la solution. Plusieurs variantes de la méthode existent.

Bel Hadj Ali Nizar 16


ENIG – Mastère ATI Algorithmes d’Optimisation en Commande

Algorithmes d’optimisation sans contraintes

Modification de Levenberg :
 ² f(x
k
Lorsque la matrice ) n' est pas définie positive (on le constate lorsque
la direction de Newton s' avère ne pas étre une direcion de descente), on résout

le système modifié suivant :


k1
(  ² f(x )  I ) d    f(x  x
k k k k k
) ; d - x

avec   0 juste assez grand pour que la matrice modifiée soit définie positive.

Newton avec recherche linéaire :


On peut utiliser la recherche linéaire du meilleur point le long de la direction

de Newton en utilisant une formule itérative du type :

 
k1 1
 x -  k  ² f(x .  f(x
k k k
x ) )

 k étant le  optimal g(  )  f(x   d k ).


k
minimisant

Bel Hadj Ali Nizar 17


ENIG – Mastère ATI Algorithmes d’Optimisation en Commande

Optimisation avec Contraintes

Position du problème :

On s' intéresse dans ce cas au problème suivant :


Min f (x)
x

sous les contrainte s: h i (x)  0 i I


1
 1, 2, ..., m 
g(x)  0 i I
2
 1, 2, ..., p 
Toutes les fonctions f, h i et g i sont supposées continues et différenti ables.

Définition : Fonction Lagrangien ne

Soit le problème d' optimisati on Min f(x) sous les contrainte s h(x)  0 et g(x)  0,
n
xR

nm p
  R et   R , la fonction 
  R définie
m p
et soient les vecteurs L :R par :

L(x,  ,  )  f(x)   . h(x)  


T T
.g(x)
est appelée Lagrangien ne ou fonction de Lagrange.

Bel Hadj Ali Nizar 18


ENIG – Mastère ATI Algorithmes d’Optimisation en Commande

Optimisation avec Contraintes

Définition : C oˆ ne des directions


Considéron s le problème d' optimisati on définie et un vecteur x admissible ,
L' ensemble constitué par les directions d telles que :

 g i ( x )  0,  i  1, ..., p tel que g i ( x )  0


T
d

 h i ( x )  0, i  1, ..., m
T
et d

est appelé c oˆ ne des directions en x et est noté D( x ).

Définition : Indépendan ce linéaire des contrainte s

Soit le problème d' optimisati on min f(x) sous les contrainte s h(x)  0 et g(x)  0,
n
x R

et soit un vecteur admissible x . Nous dirons que la condition d' indépendan ce linéaire

des contrainte s est vérifiée en x si les gradients des contrainte s d' égalité et les gradients

des contrainte s d' inégalité en x sont linéaireme nt indépendan ts.


(le vecteur x sera dit régulier)

Bel Hadj Ali Nizar 19


ENIG – Mastère ATI Algorithmes d’Optimisation en Commande

Optimisation avec Contraintes Égalités

Position du problème :

Soit le pr oblème d'o ptimisatio n suivant :

Min f (x)
x

sous h(x)  0

 h1 (x) 

 R , m  n : h(x)   
n m
h est une ap plication de R 
 
Théorème : Multiplica teurs de Lagrange  h m ( x ) 

Soit x * un minimum local du problème Min f(x) sous les contrainte s h(x)  0,
n
xR

avec f et h contin uˆ ment différenta ibles. Si les contrainte s sont linéaireme nt

* R
m
idépendant es alors il existe un vecteur unique tel que :

 L(x , )  0
* *

où L est la fonction Lagrangien ne. si f et h sont deux fois contin uˆ ment

y . ,  ). y  0  y  D(x
T 2 * * *
différenti ables, alors : xx
L(x )
* *
où D(x ) est le c oˆ ne des directions en x .
Bel Hadj Ali Nizar 20
ENIG – Mastère ATI Algorithmes d’Optimisation en Commande

Optimisation avec Contraintes Égalités et Inégalités

Théorème : Karush - Kuhn et Tucker


Soit x * un minimum local du problème Min f(x) sous les contrainte s h(x)  0
n
xR

et g(x)  0 avec f, h et g contin uˆ ment différenta ibles. Si les contrainte s sont linéaireme nt

* R  R
m * p
idépendant es alors il existe un vecteur unique et un vecteur unique

avec   0 tel que :  L(x , , ) 0


* * *

*
) 0
*
et μ j
.g j (x j  1, ..., p

où L est la fonction Lagrangien ne. si f , h et g sont deux fois contin uˆ ment

y . , , ). y  0  y  0
T 2 * * *
différenti ables, alors : xx
L(x tel que

y . h i (x ) 0 i  1, ..., m
T *

y . g i (x ) 0 i  1, ..., p ) 0
T * *
tel que g i (x

Bel Hadj Ali Nizar 21


ENIG – Mastère ATI Algorithmes d’Optimisation en Commande

Optimisation avec Contraintes Égalités et Inégalités

Remarques :

* En utilisant la fonction de Lagrange, les conditions de KKT s' écrivent alors :

 x L(x , , ) 0 ;  λ L(x , , ) 0
* * * * * *

 μ L(x , , ) 0  . μ L(x , , ) 0
* * * T * * *
et ;

* les 
*
j
sont appelés les paramètres de Kuhn et Tucker associés aux contrainte s

d' inégalités , on a :

)  0), alors on a   0;
ième * * *
- si la j contrainte n' est pas active en x (g j (x j

- si   0; alors la j )  0;
* ième * *
j
contrainte est nécessaire ment active en x : g j (x

Bel Hadj Ali Nizar 22

Vous aimerez peut-être aussi