Vous êtes sur la page 1sur 13

Chapitre 2 : Optimisation sous contraintes : le Lagrangien

Chapitre 2 : Optimisation sous contraintes : le Lagrangien


1. Optimisation sous contraintes
Il existe plusieurs types de contrainte :
a. Contrainte de type égalité c’est-à-dire sous forme d’une équation gj(x1,x2,x3……)=cj
b. Contraintes de type inégalité : gj(x1,x2,x3……)>cj ou gj(x1,x2,x3……)<cj
ou gj(x1,x2,x3……)>=cj ou gj(x1,x2,x3……)=<cj
2. Optimisation sous contraintes prenant la forme d’équations : le Lagrangien
On envisage maintenant l’optimisation d’une fonction f à n variable sous m contraintes de
KA
la forme 𝑔𝑗 (𝑥1 , 𝑥2 … … … . 𝑥𝑛 ) = 𝑐𝑗 , j=1…….m,

2.1. Cas d’une seule contrainte


On considère le programme de maximisation Ƥ suivant :
HO
Ƥ : max 𝑓(𝑥̃ )

s.c 𝑔(𝑥̃ )=c


Lagrangien : on appelle Lagrangien, noté L, la fonction suivante :
̃- λ (g(𝑥̃)-c)
̃ λ) = f(𝑥)
L(𝑥,
U

Ou la variable λ est appelée multiplicateur de Lagrange associé à la contrainte


➢ Condition de qualification de la contrainte : Pour pouvoir utiliser le Lagrangien dans
L
la résolution d’un programme d’optimisation sous une contrainte en équation, il suffit
que l’une des conditions suivantes soit vérifiée :

1. Les dérivées partielles de la fonction contrainte 𝑔 évaluées à l’optimum ̃


𝑥 ∗ ne sont pas
̃∗ )
𝜕 𝑔(𝑥
simultanément nulles, c-à-d : ≠0 pour au moins un xi avec i=1……n
F.
𝜕𝑥𝑖

2. La fonction contrainte g est linéaire.


➢ Conditions du premier ordre : On suppose que la contrainte de qualification est
̃∗ = (𝑥1∗ , 𝑥2∗ , … … … … . 𝑥𝑛∗ ) est une solution du programme de
vérifiée. Si le vecteur 𝑥
maximisation Ƥ, alors il existe un unique λ∗ tel que 𝑥 ̃∗ vérifié les n+1 conditions
suivantes :
̃∗ ,𝜆∗ )
𝜕 𝐿(𝑥 ̃∗ )
𝜕 𝑓(𝑥 ̃∗ )
𝜕 𝑔(𝑥
=0 ⇔ − 𝜆∗ =0
𝜕𝑥𝑖 𝜕𝑥𝑖 𝜕𝑥𝑖
{ ∀ 𝑖 = 1, … … . . 𝑛
̃∗ ,𝜆∗ )
𝜕 𝐿(𝑥
=0 ⇔ ̃∗
𝑔(𝑥 )=𝑐
𝜕𝜆

Lachekhab Fadhila cours RO 13


Chapitre 2 : Optimisation sous contraintes : le Lagrangien

➢ Matrice hessienne bordée du Lagrangien dans le cas à une seule contrainte : On


appelle matrice hessienne bordée du Lagrangien bordée du Lagrange ̅𝐻̅̅̅𝐿 évaluée au
point 𝑥,
̃ la matrice des dérivées partielle secondes de 𝐿 par rapport à 𝑥𝑖 bordée par
les dérivées partielle de premières de la fonction contrainte 𝑔:
𝜕𝑔 𝜕𝑔 𝜕𝑔
0 …..
𝜕𝑥1 𝜕𝑥2 𝜕𝑥𝑛
2
𝜕𝑔 𝜕 𝐿 𝜕2 𝐿 𝜕2 𝐿
…..
𝜕𝑥1 𝜕𝑥1 𝜕𝑥1 𝜕𝑥1 𝜕𝑥2 𝜕𝑥1 𝜕𝑥𝑛
̅̅
𝐻̅̅𝐿 (x̃) = ⋮ ⋮ ⋮ ⋮ ⋮
⋮ ⋮ ⋮ ⋮ ⋮
KA
𝜕𝑔 𝜕2 𝐿 𝜕2 𝐿 𝜕2 𝐿
…..
𝜕𝑥𝑛 𝜕𝑥𝑛 𝜕𝑥1 𝜕𝑥𝑛 𝜕𝑥2 𝜕𝑥𝑛 𝜕𝑥𝑛
( )
̅̅̅
𝐻𝐿̅ est une matrice symétrique d’ordre 𝑛 + 1.
HO
❖ Conditions suffisantes de second ordre pour un optimum local :
̃∗ qui vérifie la CPO :
Supposons qu’il existe un 𝑥

▪ Les 𝑛 − 1 derniers mineurs principaux diagonaux de la matrice hessienne bordée du


Lagrangien ̅̅
𝐻̅̅𝐿 (𝑥,
̃ λ) évaluée à l’optimum sont alternativement > 0 et < 0, le dernier
d’entre eux (𝐷𝑛+1 ) étant de même signe que (−1𝑛 ) ⇒ 𝑥 ̃∗ est un maximum local,
U

▪ Les 𝑛 − 1 derniers mineurs principaux diagonaux de la matrice hessienne bordée du


Lagrangien ̅𝐻̅̅̅𝐿 (𝑥, ̃∗ est un minimum local.
̃ λ) évaluée à l’optimum sont tous tous < 0 ⇒ 𝑥
L
❖ Conditions suffisantes de second ordre pour un optimum global :
̃∗ qui vérifie la CPO Alors :
Supposons qu’il existe un 𝑥

▪ Le Lagrangien 𝐿 est une fonction concave (ce qui est le cas en particulier si f est
concave et si 𝜆∗ 𝑔 est convexe) ⇒ 𝑥
̃∗ est un maximum global.
F.

▪ Le Lagrangien 𝐿 est une fonction convexe (ce qui est le cas en particulier si f est
convexe et si 𝜆∗ 𝑔 est concave) ⇒ 𝑥
̃∗ est un minimum global.

CSO la matrice hessienne bordée du lagrangien s’écrit pour tout (x,y)


𝜕𝑔 𝜕𝑔
0 𝜕𝑥 𝜕𝑦
𝜕𝑔 𝜕2 𝐿 𝜕2 𝐿
0 1 1
= (1 0
̅̅̅ 1 )
𝐻𝐿̅ (x̃) = 𝜕𝑥1 𝜕𝑥𝜕𝑥 𝜕𝑥𝜕𝑦
𝜕𝑔 𝜕2 𝐿 𝜕2 𝐿 1 1 0
𝜕𝑦 𝜕𝑦𝜕𝑥 𝜕𝑦𝜕𝑦
( )
Le mineur principal d’ordre 3 de cette matrice évaluée en (3,3) est égale à 2>0,

Lachekhab Fadhila cours RO 14


Chapitre 2 : Optimisation sous contraintes : le Lagrangien

Il est de même signe que (−1𝑛 ) , puisque n=2. donc le point (3,3) est un maximum
local, en revanche, la fonction f n’étant pas concave (elle est seulement quasi-concave),
la condition suffisante pour que (𝑥 ∗ , 𝑦 ∗ ) soit un maximum global n’est pas vérifiée.

Ccl : le programme Ƥ admet un maximum global n’est pas vérifiée, et il admet un


maximum local dans le point (3,3).

2.2. Cas de 𝑚 contraintes

Le programme précédant se généralise aisément au cas à 𝑚 contraintes

On considère le programme de maximisation Ƥ suivant : (ou 𝑥̃ = (𝑥1 , 𝑥2 … … … . 𝑥𝑛 )

Ƥ : max 𝑓(𝑥̃ )
KA

s.c 𝑔𝑗 (𝑥̃)= 𝑐𝑗 ∀ 𝑗 = 1, … … . , 𝑚

Lagrangien : on appelle Lagrangien, noté L, la fonction suivante :

̃ λ) = 𝑓(𝑥̃)-λ𝑗 (𝑔𝑖 (𝑥̃)- 𝑐𝑗 )


L(𝑥,
HO
Ou la variable λ𝑗 est appelée multiplicateur de Lagrange associé aux 𝑗 contraintes et
λ̃ = (λ , λ2 … … … . λ𝑛 )
1

❖ Condition de qualification de la contrainte : Pour pouvoir utiliser le Lagrangien dans


la résolution d’un programme d’optimisation sous plusieurs contraintes en équations, il
suffit que l’une des conditions suivantes soit vérifiée :
U

1. La matrice jacobienne des fonctions contraintes 𝑔𝑖 , 𝑗 = 1, … … . , 𝑚 notée 𝐽𝐺 est de


̃∗ .
taille (𝑚, 𝑛) est de rang 𝑚 lorsqu’elle est évaluée à l’optimum 𝑥
L
2. Les fonctions contraintes 𝑔𝑖 sont toutes linéaires.
❖ Conditions du premier ordre : On suppose que la contrainte de qualification est
̃∗ = (𝑥1∗ , 𝑥2∗ , … … … … . 𝑥𝑛∗ ) est une solution du programme de
vérifiée. Si le vecteur 𝑥
maximisation Ƥ , alors il existe un unique vecteur λ∗ tel que 𝑥 ̃∗ vérifié les
F.
𝑛 + 𝑚 conditions suivantes:
𝑚
̃∗ , 𝜆∗ )
𝜕 𝐿(𝑥 ̃∗ )
𝜕 𝑓(𝑥 ̃∗ )
𝜕 𝑔𝑗 (𝑥
=0 ⇔ − ∑ 𝜆𝑗∗ =0 ∀ 𝑖 = 1, … … . , 𝑛
𝜕𝑥𝑖 𝜕𝑥𝑖 𝑗=1
𝜕𝑥𝑖
̃∗ , 𝜆∗ )
𝜕 𝐿(𝑥
=0 ⇔ ̃∗ ) = 𝑐𝑗 ∀ 𝑗 = 1, … … . , 𝑚
𝑔𝑗 (𝑥
𝜕𝜆𝑗

❖ Matrice hessienne bordée du Lagrangien dans le cas à 𝑚 contraintes : On appelle


matrice hessienne bordée du Lagrangien bordée du Lagrange ̅𝐻̅̅𝐿̅ dans le cas
𝑚 contraintes la matrice hessienne de Lagrangien (dérivées partielle secondes de 𝐿 par

Lachekhab Fadhila cours RO 15


Chapitre 2 : Optimisation sous contraintes : le Lagrangien

rapport à 𝑥𝑖 bordée par les dérivées partielle de premières des 𝑚 fonctions


contrainte 𝑔𝑗 , évaluée au point 𝑥̃ :
 g1 g1 g1 
 0 0 0
x1 x2 xn 
 
 g 2 g 2 g 2 
 0 0 0 
 x1 x2 xn 
 
 
 0 g m g m g m 
 0 0
x1 x2 xn 
 
 g1 g 2 g m 2 L 2 L  L 
2
KA
H L =  x x1 x1 x1x2 x1xn 

 1 x12
 
 g1 g 2 g m 2 L 2 L 2 L 
 x2 x2 x2 x2 x1 x22 x2 xn 
 
 
HO
 
 g1 g 2 g m 2 L 2 L 2 L 
 xn xn xn xn x1 xn x2 xn2 
 
 
 
 
U
̅̅̅
𝐻𝐿̅ est une matrice symétrique d’ordre 𝑛 + 1.
➢ Conditions suffisantes de second ordre pour un optimum local :
L
̃∗ qui vérifie la CPO :
Supposons qu’il existe un 𝑥

▪ Les 𝑛 − 𝑚 derniers mineurs principaux diagonaux de la matrice hessienne bordée du


𝐻̅̅𝐿 ( 𝑥̃∗ , 𝜆̃∗ ) évaluée à l’optimum sont alternativement > 0 et < 0, le dernier
Lagrangien ̅̅
d’entre eux (𝐷𝑛+𝑚 ) étant de même signe que (−1)𝑛 ⇒ 𝑥 ̃∗ est un maximum local,
F.
▪ Les 𝑛 − 𝑚 mineurs principaux diagonaux de la matrice hessienne bordée du Lagrangien
𝐻𝐿̅( 𝑥̃∗ , 𝜆̃∗ ) évaluée à l’optimum sont tous strictement de meme signe que (−1)𝑚 ⇒ 𝑥
̅̅̅ ̃∗
est un minimum local.
✓ Conditions suffisantes de second ordre pour un optimum global :
̃∗ qui vérifie la CPO Alors :
Supposons qu’il existe un 𝑥

▪ Si le Lagrangien 𝐿 est une fonction concave (ce qui est le cas en particulier si f est
concave et si 𝜆𝑗∗ 𝑔𝑗 sont convexes ∀ 𝑗 = 1, … … . , 𝑚 ) ⇒ 𝑥
̃∗ est un maximum global.

▪ Si le Lagrangien 𝐿 est une fonction convexe (ce qui est le cas en particulier si f est
convexe et si 𝜆𝑗∗ 𝑔𝑗 sont concaves ∀ 𝑗 = 1, … … . , 𝑚 ) ⇒ 𝑥
̃∗ est un minimum global.

Lachekhab Fadhila cours RO 16


Chapitre 2 : Optimisation sous contraintes : le Lagrangien

2.3.Exemple : résoudre le programme de maximisation Ƥ :

Ƥ max f(x,y,z ) = 𝑥 2 + 𝑦 2 + 𝑧 2

sc x+2y+z=1

2x − y − 3z =4

• Solution
Le lagrangien associé à ce programme s’écrit :

L(x,y, z , λ1 , λ2 )= 𝑥 2 + 𝑦 2 + 𝑧 2 − λ1 (x+2y+z − 1 ) − λ2 (2x − y − 3z − 4)


KA
➢ Condition de qualification des contraintes :

Soient 𝑔1 (x, y, z ) = x+2y+z -1 & 𝑔2 (x,y, z ) = 2x − y − 3z − 4

La matrice Jacobienne JG des fonctions contraintes évaluées au point (x,y,z )


HO
𝜕 𝑔1 𝜕 𝑔1 𝜕 𝑔1
𝜕𝑥 𝜕𝑦 𝜕𝑧 1 2 1
JG (𝑥, 𝑦, 𝑧) = 𝜕 𝑔2 𝜕 𝑔2 𝜕 𝑔2 (2 −1 −3 )
𝜕𝑥 𝜕𝑦 𝜕𝑧
( )
U
Les deux vecteurs lignes de cette matrice étant linéairement indépendants, JG est de rand 2
pour tout (x,y,z ) ( donc en particulier pour (𝑥 ∗ , 𝑦 ∗ , 𝑧 ∗ )). La contrainte de qualifacation est
donc vérifiée. Le fait que les deux contraintes soient linéaires permet aussi de l’affirmer.
L
CPO: si (𝑥 ∗ , 𝑦 ∗ , 𝑧 ∗ , λ1∗ , λ∗2 ) est une solution du programme Ƥ, alors
𝜕𝐿
=0 ⇔ 2𝑥 ∗ − λ1∗ − 2λ∗2 =0
𝜕𝑥

𝜕𝐿
=0 ⇔ 2𝑦 ∗ − 2λ1∗ + λ∗2 =0
F.
𝜕𝑦

𝜕𝐿
=0 ⇔ 2𝑧 ∗ − λ1∗ + 3λ∗2 =0
𝜕z

𝜕𝐿
=0 ⇔ 𝑥 ∗ + 2y ∗ + 𝑧 ∗ =1
𝜕λ1

𝜕𝐿
=0 ⇔ 2𝑥 ∗ − y ∗ − 3𝑧 ∗ =4
𝜕λ2

L’unique solution de ce système de 5 équations à 5 inconnues est :


16 1 −11 52 54
(𝑥 ∗ , 𝑦 ∗ , 𝑧 ∗ , λ1∗ , λ∗2 ) =( , , , , )
15 3 15 75 75

CSO : la fonction f étant une somme de fonctions convexes, elle est convexe quelques soient
les valeurs de λ1 𝑒𝑡 λ2 . Par conséquent (𝑥 ∗ , 𝑦 ∗ , 𝑧 ∗ , λ1∗ , λ∗2 ) est un maximum global.
Lachekhab Fadhila cours RO 17
Chapitre 2 : Optimisation sous contraintes : le Lagrangien

16 1 −11 52 54
Ccl : Le programme Ƥ admet un maximum global en ( 15 , 3 , , 75 , 75)
15

3. Optimisation sous contraintes prenant la forme d’inéquations : les conditions de


Kuhn et Tucker
On considère le programme de maximisation Ƥ suivant :

Ƥ : max 𝑓(𝑥̃ )

s.c 𝑔𝑗 (𝑥̃) ≤ 𝑐𝑗 ∀ 𝑗 = 1, … … . , 𝑚

Soit 𝑥̃ la solution de ce programme. Deux situations sont possibles :

• Soit 𝑔𝑗 (𝑥̃) = 𝑐𝑗 donc on dit que la contrainte 𝑗 est saturée à l’optimum.


KA
• Soit 𝑔𝑗 (𝑥̃) < 𝑐𝑗 donc on dit que la contrainte 𝑗 est non saturée à l’optimum.

On définit le Lagrangien par la fonction suivante :

̃ λ̃)= 𝑓(𝑥̃)- ∑𝑚
L(𝑥, 𝑗=1 λ𝑗 (𝑔𝑗 (𝑥
̃) − 𝑐𝑗 )
HO

Ou la variable λ𝑗 est appelée multiplicateur de Lagrange associé aux 𝑗 contraintes et


λ̃ = (λ , λ2 … … … . λ𝑛 )
1

➢ Condition de qualification de la contrainte : Pour pouvoir utiliser le Lagrangien dans


la résolution d’un programme d’optimisation sous plusieurs contraintes prenant la forme
U
d’inéquations, il suffit que l’une des conditions suivantes soit vérifiée :

a. Soit 𝑠 ≤ 𝑚 le nombre de contraintes saturées à l’optimum 𝑥 ̃∗ . On suppose qu’il


s’agit des 𝑠 premières contraintes 𝑔𝑗 𝑎𝑣𝑒𝑐 𝑗 = 1, … … . , 𝑠 . Si la matrice
L
jacobienne de ces 𝑠 fonctions contraintes notée 𝐽𝐺 est de taille (𝑠, 𝑛) est de
̃∗ , alors condition de qualification de
rang 𝑠 lorsqu’elle est évaluée à l’optimum 𝑥
la contrainte est vérifiée.

3. Les fonctions contraintes 𝑔𝑗 𝑎𝑣𝑒𝑐 𝑗 = 1, … … . , 𝑠 sont toutes linéaires.


F.
➢ Conditions du premier ordre : On suppose que la contrainte de qualification est
̃∗ = (𝑥1∗ , 𝑥2∗ , … … … … . 𝑥𝑛∗ ) est une solution du programme de
vérifiée. Si le vecteur 𝑥
maximisation Ƥ, alors il existe un unique vecteur λ∗ tel que 𝑥 ̃∗ vérifié les
𝑛 + 3𝑚 conditions suivantes :

Lachekhab Fadhila cours RO 18


Chapitre 2 : Optimisation sous contraintes : le Lagrangien

𝑚
̃∗ , 𝜆∗ )
𝜕 𝐿(𝑥 ̃∗ )
𝜕 𝑓(𝑥 ̃∗ )
𝜕 𝑔𝑗 (𝑥
=0 ⇔ − ∑ 𝜆𝑗∗ =0 ∀ 𝑖 = 1, … … . , 𝑛
𝜕𝑥𝑖 𝜕𝑥𝑖 𝑗=1
𝜕𝑥𝑖
̃∗ , 𝜆∗ )
𝜕 𝐿(𝑥
≥0 ⇔ ̃∗ ) ≤ 𝑐𝑗
𝑔𝑗 (𝑥 ∀ 𝑗 = 1, … … . , 𝑚
𝜕𝜆𝑗

𝜆𝑗 ≥ 0 ⇔ 𝜆𝑗∗ ≥ 0 ∀ 𝑗 = 1, … … . , 𝑚
λ𝑗 (𝑔𝑗 (𝑥̃) − 𝑐𝑗 ) = 0 ⇔ 𝜆𝑗∗ = 0 𝑜𝑢 𝑔𝑗 (𝑥̃) = 𝑐𝑗 ∀ 𝑗 = 1, … … . , 𝑚

NB : Ces conditions n’excluent pas la possibilité que 𝜆𝑗∗ = 0 𝑒𝑡 𝑔𝑖 (𝑥̃) = 𝑐𝑗


simultanément.
KA
En pratique, la résolution des conditions de Kuhn et Tucker est compliquée par le fait
qu’il faut envisager successivement toutes les configurations possibles : toutes les contraintes
sont saturées à l’équilibre, toutes sauf une, deux,..., aucune (tous les 𝜆𝑗 sont nuls à l’équilibre).
Pour trouver la bonne solution, il faut procéder par élimination, en montrant que parmi
l’ensemble de ces possibilités, certaines aboutissent à des contradictions.
HO
➢ Conditions suffisantes de second ordre pour un optimum local

Supposons qu’il existe un 𝑥 ̅̅̅𝐿̅ la matrice hessienne du


̃∗ qui vérifie la CPO : On désigne par 𝐻
Lagrangien bordée par les dérivées premières des seules contraintes saturées. Cette matrice est
symétrique d’ordre 𝑠 + 𝑛 .
U

▪ Les 𝑛 − 𝑠 derniers mineurs principaux diagonaux de la matrice hessienne bordée du


𝐻̅̅𝐿 ( 𝑥̃∗ , 𝜆̃∗ ) évaluée à l’optimum sont alternativement > 0 et < 0, le dernier
Lagrangien ̅̅
L
d’entre eux (𝐷𝑛+𝑠 ) étant de même signe que (−1)𝑛 ⇒ 𝑥 ̃∗ est un maximum local,

▪ Les 𝑛 − 𝑠 𝑑𝑒𝑟𝑛𝑖𝑒𝑟𝑠 mineurs principaux diagonaux de la matrice hessienne bordée du


𝐻̅̅𝐿 ( 𝑥̃∗ , 𝜆̃∗ ) évaluée à l’optimum sont tous strictement de meme signe que
Lagrangien ̅̅
𝑚 ̃∗ est un minimum local.
(−1) ⇒ 𝑥
F.
➢ Conditions suffisantes de second ordre pour un optimum global
̃∗ qui vérifie la CPO Alors:
Supposons qu’il existe un 𝑥

▪ ̃∗ est un maximum
Si 𝑓 est concave et les 𝑔𝑗 sont convexes ∀ 𝑗 = 1, … … . , 𝑚 ⇒ 𝑥
global.

▪ Si 𝑓 est quasi-concave et les 𝑔𝑗 sont quasi-convexes ∀ 𝑗 = 1, … … . , 𝑚 et 𝑓𝑖′ ≠ 0


̃∗ est un maximum global.
∀ 𝑖 = 1, … … . , 𝑛 ⇒ 𝑥

▪ ̃∗ est un minimum
Si 𝑓 est convexe et les 𝑔𝑗 sont concaves ∀ 𝑗 = 1, … … . , 𝑚 ⇒ 𝑥
global.

Lachekhab Fadhila cours RO 19


Chapitre 2 : Optimisation sous contraintes : le Lagrangien

▪ Si 𝑓 est quasi-convexe et les contraintes 𝑔𝑗 sont quasi-concaves ∀ 𝑗 = 1, … … . , 𝑚 )


et 𝑓𝑖′ ≠ 0 ∀ 𝑖 = 1, … … . , 𝑛 ⇒ 𝑥
̃∗ est un minimum global.

✓ Remarque
Il est très facile de passer d’un programme de minimisation sous contraintes prenant la forme
d’inéquations à un programme de maximisation.
Soit le programme de minimisation Ƥ suivant :

Ƥ : min 𝑓(𝑥̃ )

s.c 𝑔𝑗 (𝑥̃) ≥ 𝑐𝑗 ∀ 𝑗 = 1, … … . , 𝑚
KA
Pour pouvoir appliquer les conditions de Kuhn et Tucker évoquées ci-dessus, il suffit de
transformer le programme Ƥ en un programme de maximisation Ƥ∗ :

Ƥ∗ : max − 𝑓(𝑥̃ )
HO
s.c −𝑔𝑗 (𝑥̃) ≤ − 𝑐𝑗 ∀ 𝑗 = 1, … … . , 𝑚

Donc le Lagrangien de ce programme devient :

̃ λ̃)= −𝑓(𝑥̃)- ∑𝑚
L(𝑥, 𝑗=1 λ𝑗 (−𝑔𝑖 (𝑥
̃) + 𝑐𝑗 )

=−𝑓(𝑥̃)+ ∑𝑚
𝑗=1 λ𝑗 (𝑔𝑖 (𝑥
̃) − 𝑐𝑗 )
U

Pour trouver la solution du programme, on cherche les conditions du premier ordre associées à
ce Lagrangien.
L
3.1. Exemple : résoudre le programme de maximisation Ƥ ;

Ƥ max f(x,y ) = [−(𝑥 − 4)2 − (𝑦 − 4)2 ]

sc x+y ≤ 4
F.
x +3 y ≤ 9

• Solution
Le Lagrangien associé à ce programme s’écrit :

L(x, y, λ1 , λ2 )= − (𝑥 − 4)2 − (𝑦 − 4)2 − λ1 (x+y − 4 ) − λ2 (x + 3y – 9)

➢ Condition de qualification des contraintes


Toutes les contraintes étant linéaires, la contrainte de qualification est automatiquement vérifiée.

Lachekhab Fadhila cours RO 20


Chapitre 2 : Optimisation sous contraintes : le Lagrangien

CPO: si (𝑥 ∗ , 𝑦 ∗ , λ1∗ , λ∗2 ) est une solution du programme Ƥ, alors

𝜕𝐿
=0 ⇔ − 2(x ∗ − 4) − λ1∗ − λ2∗ =0
𝜕𝑥

∂L
=0 ⇔ − 2(y ∗ − 4) − λ1∗ − 3λ2∗ =0
∂y

∂L
≥0 ⇔ x ∗ + y∗ ≤ 4
∂λ1

λ1 ≥ 0 ⇔ λ1 ≥ 0
∂L
λ1 ≥0 ⇔ λ1 (x ∗ + y ∗ − 4) = 0
∂λ1
KA
∂L
=0 ⇔ x ∗ + 3y ∗ ≤ 9
∂λ2

λ2 ≥ 0 ⇔ λ2 ≥ 0
∂L
λ2 =0 ⇔ λ2 (x ∗ + 3y ∗ − 9) = 0
HO
∂λ2

Pour déterminer les solutions de ce système, il faut envisager successivement tous les cas de
figure possibles portant sur la saturation des contraintes et procéder par élimination :

Cas 1 : ( x + y =4) et ( x + 3 y ) =9 (les deux contraintes sont saturées à l’optimum).


* * * *

U
3 5
Dans ce cas, on a x = et y = . Alors, les deux premières équations se réécrivent :
2 2

5 − 1* − 2* = 0
L

3 − 1* − 32* = 0

Ceci implique que 1* = 6 et 2* = −1 , ce qui ne satisfait pas la condition 2*  0
• Cas 2 : ( x + y =4) et ( x + 3 y ) < 9 , donc
* * * *
2* = 0 (seule la première contrainte est
F.
saturée à l’optimum). Alors, les deux premières équations impliquent que
( x* , y* , 1* , 2* ) = (2, 2, 4, 0) est une solution possible.

• Cas 3 : ( x + y  4) et ( x + 3 y ) = 9 , donc
* * * *
1* = 0 (seule la seconde contrainte est
saturée à l’optimum). Alors, les deux premières équations impliquent que
12 11
( x* = et y* = ) ce qui ne satisfait pas la condition ( x* + y*  4) .
5 5

Lachekhab Fadhila cours RO 21


Chapitre 2 : Optimisation sous contraintes : le Lagrangien

• Cas 4 : ( x + y  4) et ( x + 3 y )  9 , donc
* * * *
1* = 2* = 0 (aucune des deux
contraintes n’est saturée à l’optimum). Alors, les deux premières équations impliquent
que ( x = y = 4) ce qui ne satisfait pas la condition ( x + y  4) .
* * * *

CSO : la fonction f est concave et les deux contraintes sont linéaires. Par conséquent,
( x* , y* , 1* , 2* ) = (2,2,4, 0) est un maximum global.

4. Optimisation sous contraintes prenant la forme d’inéquations incluant des


contraintes de non-négativité
KA
Dans de nombreuse application économique, les programmes d’optimisation considérés imposent
que les variables considérées ne puissent pas être négatives (le travail ou le capital dans la fonction de
production, par exemple).
On considère le programme de maximisation Ƥ suivant :

Ƥ : max 𝑓(𝑥̃ )
HO

s.c 𝑔𝑗 (𝑥̃) ≤ 𝑐𝑗 ∀ 𝑗 = 1, … … . , 𝑚

xi  0 ∀ 𝑖 = 1, … … . , 𝑛
En réalité, le programme Ƥ n’est qu’un cas particulier du programme d’optimisation étudié dans
la section précédente (il suffit de réécrire les contraintes xi  0 sous la forme − xi  0 ). Toutefois, la
U

résolution de ce programme selon la méthode exposée précédemment exigerait de travailler avec n + m


multiplicateurs de Lagrange, ce qui est peu commode lorsque n est grand. C’est la raison pour laquelle
L
on préférera, pour ce type de programmes, de travailler à partir d’un Lagrangien dit « modifié », à partir
duquel on peut dériver des conditions de Kuhn et Tucker plus simples à manipuler.

4.1. Lagrangien modifié : Le Lagrangien modifié, noté  ( x,  ) s’écrit :


F.
 ( x,  ) = 𝑓(𝑥̃) - ∑𝑚
𝑗=1 λ𝑗 (𝑔𝑗 (𝑥
̃) + 𝑐𝑗 )

On remarquera que ce Lagrangien ne contient pas explicitement les contraintes de non négativité

xi  0 ∀ 𝑖 = 1, … … . , 𝑛

✓ Remarque

Les conditions de qualification des contraintes ce sont les mêmes que dans le cas des programmes
d’optimisation sous contraintes prenant la forme d’inéquations.

Lachekhab Fadhila cours RO 22


Chapitre 2 : Optimisation sous contraintes : le Lagrangien

  ( x* ,  * ) f ( x* )
m
g j ( x* )

 xi
0 
xi 
− j
j =1
*
 x i
0  i = 1..........., n

 xi*  0  xi*  0  i = 1..........., n

 *  ( x ,  )  ( x* ,  * )
* *
 xi =0  xi = 0 ou
*
=0  i = 1..........., n
 xi xi

  ( x ,  )  0  g ( x* )  c
* *
 j = 1..........., m
  j j j

 *j  0   *j  0  j = 1..........., m

KA
 *j ( g j ( x* ) − c j ) = 0   *j = 0 ou g j ( x* ) = c j  j = 1..........., m

En pratique, la résolution des programmes d’optimisation sous contraintes d’inéquations


incluant des contraintes de non-négativité est compliquée par le fait que non seulement il faut envisager
toutes les configurations possibles pour les  j , mais aussi toutes les configurations possibles pour les
HO

variables xi : elles sont strictement positives à l’équilibre, toutes sauf une, deux,..., toutes sont nulles à
l’optimum. Pour trouver la bonne solution, il faut ensuite procéder par élimination en montrant que
parmi l’ensemble de ces possibilités, certaines aboutissent à des contradictions. Une solution pour
laquelle un ou plusieurs xi sont nuls à l’optimum est appelée « solution en coin ».
U
4.2. Note sur les programmes de minimisation : de même que dans la section précédente le
passage d’un programme de minimisation sous contraintes prenant la forme d’inéquations à
L
un programme de maximisation se fait comme suit :
Soit le programme de minimisation Ƥ suivant :

Ƥ : min 𝑓(𝑥̃ )

s.c 𝑔𝑗 (𝑥̃) ≥ 𝑐𝑗 ∀ 𝑗 = 1, … … . , 𝑚
F.
xi  0 ∀ 𝑖 = 1, … … . , 𝑛

Pour pouvoir appliquer les conditions de Kuhn et Tucker modifié, il suffit de transformer le
programme Ƥ en un programme de maximisation Ƥ∗ sans changer les conditions de positivités :

Ƥ∗ : max − 𝑓(𝑥̃ )

s.c −𝑔𝑗 (𝑥̃) ≤ − 𝑐𝑗 ∀ 𝑗 = 1, … … . , 𝑚

xi  0 ∀ 𝑖 = 1, … … . , 𝑛

Lachekhab Fadhila cours RO 23


Chapitre 2 : Optimisation sous contraintes : le Lagrangien

Donc le Lagrangien de ce programme devient :

̃ λ̃)= −𝑓(𝑥̃)- ∑𝑚
L(𝑥, 𝑗=1 λ𝑗 (−𝑔𝑗 (𝑥
̃) + 𝑐𝑗 )

=−𝑓(𝑥̃)+ ∑𝑚
𝑗=1 λ𝑗 (𝑔𝑗 (𝑥
̃) − 𝑐𝑗 )

Pour trouver la solution du programme, on cherche les conditions du premier ordre associées à
ce Lagrangien.
4.3. Exemple : Résoudre le programme de maximisation Ƥ :

max xy
sc x+ y 6
x0
KA

y0
• Solution

Le Lagrangien modifié associé ce programme s’écrit :


HO
 ( x, y,  ) = xy −  ( x + y − 6)
❖ Condition de qualification des contraintes

Toutes les contraintes étant linéaires, la contrainte de qualification est automatiquement vérifiée.

❖ CPO (Kuhn et Tucker) :


U


 x  0  y* −  *  0
L

 x*  0  x*  0

 x*  = 0  x* ( y * −  * ) = 0
 x

   0
F.
 x* −  *  0
 y

y  0  y*  0
*

 
 y* =0  y * ( x* −  * ) = 0
 y

   0  x* + y *  6
 
 *
  0  *  0
 
 * =0   * ( x* + y* − 6) = 0
 

Lachekhab Fadhila cours RO 24


Chapitre 2 : Optimisation sous contraintes : le Lagrangien

Pour déterminer les solutions de ce système, il faut théoriquement passer en revue tous les cas de
figures possibles portant sur la saturation des contraintes (sur xy et x + y − 6 ), ce qui fait 9
combinaisons différentes. En réalité, on peut aboutir à la solution très rapidement en procédant comme
suit :

❖ Cas : x  0 . Alors, d’après la troisième condition : y =  .


* * *

– Si y = 0 , alors
*
 * = 0 , donc x*  6 d’après la quatrième condition, ce qui est
contradictoire avec l’hypothèse de départ ( x  0 ).
*
KA
– Donc y  0 , ce qui implique x =  d’après la cinquième condition. La dernière
* * *

condition implique alors que x = y =  = 3 .


* * *

❖ Cas : x = 0 . Alors :
*

– Si y  0 , alors  = x = 0 d’après la sixième condition. Mais alors, la première


* * *
HO

contredit l’hypothèse y  0 .
*

– Donc y = 0 . La dernière condition implique alors que x = y =  = 0


* * * *

Finalement, on en déduit que les conditions de Kuhn et Tucker admettent deux solutions
pour ( x , y ,  ) : (3, 3, 3) et (0, 0, 0).
* * *
U

CSO : La fonction f est deux fois dérivable et quasi-concave et les contraintes sont
linéaires. Par conséquent, si les dérivées partielles f de f évaluées en ( x , y ,  ) sont non
L
' * * *

nulles, alors ( x , y ,  ) est un maximum global. C’est le cas pour la solution ( x , y ) = (3,3) . En
* * * * *

revanche, comme les dérivées partielles de f s’annulent en (0,0), on peut savoir à ce stade si

la solution ( x , y ) = (0,0) est ou non un maximum global.


* *
F.
Pour déterminer lequel de ces deux points est le maximum global du programme Ƥ, il
faut alors comparer les valeurs de f en ces deux points : comme f (3,3)  f (0,0) , le point
( x* , y* ) = (3,3) est le maximum global du programme.

Ccl : Le programme Ƥ admet un maximum global en (3, 3).

Lachekhab Fadhila cours RO 25

Vous aimerez peut-être aussi