Opmath3 Poly Optimisation Sous Contrainte

18
f (x 1 ,...,x n ) R 2 M (D) y =2x - 1 M o (3, -1). M M o (D). (x, y) M, f (x, y)=(x - 3) 2 +(y + 1) 2 h(x, y)=2x - y - 1=0 f (x, y)=(x - 3) 2 +(y + 1) 2 = x y - 3 -1 2 M M o . y =2x-1 f (x, y) x 7g(x) M = f (x, 2x - 1) = (x - 3) 2 + (2x - 1 + 1) 2 =5x 2 - 6x +9 g 0 (x)=0, 10x - 6=0, x =3/5 y =2x - 1=6/5 - 1=1/5. M = (3/5, 1/5). M =(x, y) (C) (1, 5) 2 M o . M (C) (x - 1) 2 +(y - 5) 2 =4 f (x, y)=(x - 3) 2 +(y + 1) 2 h(x, y)=(x - 1) 2 +(y - 5) 2 - 4=0

description

cours sur l'optimisaion sous contrainte

Transcript of Opmath3 Poly Optimisation Sous Contrainte

Page 1: Opmath3 Poly Optimisation Sous Contrainte

NOTES DU COURS DE MATHS3

CHRISTIAN LÉONARD

1. Optimisation sous contrainteNous allons maintenant chercher à optimiser une fonction de plusieurs variablesf(x1, . . . , xn) sous des contraintes. Optimiser, c'est minimiser ou bien maximiser.Un exemple d'un tel problème est celui de trouver dans le plan R2 le point M de ladroite (D) d'équation y = 2x− 1 qui est le plus proche du point Mo de coordonnées(3,−1). Ce point M s'appelle la projection orthogonale de Mo sur (D). Soient (x, y)les coordonnées de M, elles sont solution du problème de minimisation suivant

{minimiser f(x, y) = (x− 3)2 + (y + 1)2

sous la contrainte h(x, y) = 2x− y − 1 = 0

En e�et, f(x, y) = (x − 3)2 + (y + 1)2 =∥∥∥∥(

xy

)−

(3−1

)∥∥∥∥2

est le carré de ladistance entre M et Mo. Or un point minimise le carré de la distance si et seulementsi il minimise la distance. Nous avons déjà vu en première année qu'une méthode desubstitution permet d'obtenir la réponse. En e�et, en injectant la contrainte y = 2x−1dans f(x, y) il nous reste à minimiser x 7→ g(x) M= f(x, 2x − 1) = (x − 3)2 + (2x −1 + 1)2 = 5x2 − 6x + 9 sans contrainte. En annulant la dérivée : g′(x) = 0, on obtient10x− 6 = 0, d'où x = 3/5 et y = 2x− 1 = 6/5− 1 = 1/5. Soit M = (3/5, 1/5).Les choses se compliquent si on cherche maintenant à trouver le point M = (x, y) ducercle (C) de centre (1, 5) et de rayon 2 qui est le plus proche de Mo. Cette fois lacontrainte M ∈ (C) s'écrit (x−1)2 +(y−5)2 = 4 et nous devons résoudre le problèmede minimisation suivant{

minimiser f(x, y) = (x− 3)2 + (y + 1)2

sous la contrainte h(x, y) = (x− 1)2 + (y − 5)2 − 4 = 0

On peut envisager une méthode de substitution, mais elle est moins directe que dansle cas précédent. Mieux vaudrait avoir à notre disposition une méthode générale qui

Date: 2004.1

Page 2: Opmath3 Poly Optimisation Sous Contrainte

2 CHRISTIAN LÉONARD

pourrait nous permettre de résoudre des problèmes comme celui-ci :

minimiser f(x, y, z) = x2 + y2 + (z − 1)2

sous les contraintes{

h1(x, y, z) = (x− 1)2 + (y − 2)2 + (z + 1)2 − 25 = 0h2(x, y, z) = x + y + z − 1 = 0

(1.1)où aucune méthode de substitution simple n'est plus envisageable. Il s'agit ici detrouver les points les plus proches du point de coordonnées (0, 0, 1) qui appartiennentau cercle de R3 intersection de la sphère d'équation h1 = 0 : de centre (1, 2,−1) et derayon 5, avec le plan d'équation h2 = 0.Cette méthode existe et est connue sous le nom de méthode des multiplicateurs deLagrange. Avant de l'étudier, nous aurons besoin de faire quelques rappels sur lesfonctions de plusieurs variables (comme les fonctions f et h que nous venons decroiser) et d'introduire quelques notions élémentaires de géométrie dans l'espace.

1.1. Rappels sur les fonctions de plusieurs variables. Une fonction de n va-riables est de la forme

(x1, . . . , xn) 7→ f(x1, x2, . . . , xn) ∈ RPour rendre les choses plus lisibles, nous consirérerons avant tout des fonctions dedeux ou trois variables f(x, y) ou f(x, y, z). La formule de Taylor à l'ordre 2 pour lesfonctions habituelles d'une seule variable f(x) est

f(x + h) = f(x) + f ′(x)h +12f ′′(x)h2 + ε(h)h2, x, h ∈ R

avec limh→0 ε(h) = 0. Elle se généralise aux fonctions de trois variables sous la forme

f(x + u,y + v, z + w) = (1.2)f(x, y, z)

+∂f

∂x(x, y, z)u +

∂f

∂y(x, y, z)v +

∂f

∂z(x, y, z)w

+1/2[∂2f

∂2x(x, y, z)u2 +

∂2f

∂2x(x, y, z)v2 +

∂2f

∂2x(x, y, z)w2

+ 2∂2f

∂x∂y(x, y, z)uv + 2

∂2f

∂x∂z(x, y, z)uw + 2

∂2f

∂y∂z(x, y, z)vw

]

+ε(u, v, w)[u2 + v2 + w2]

pour (x, y, z) ∈ R3, (u, v, w) ∈ R3 avec lim(u,v,w)→0 ε(u, v, w) = 0.

Page 3: Opmath3 Poly Optimisation Sous Contrainte

NOTES DU COURS DE MATHS3 3

Nous venons d'utiliser les dérivées partielles ∂f∂x , ∂2f

∂y∂z , . . . On rappelle qu'on note∂f∂x (xo, yo, zo) la dérivée en x = xo de la fonction x 7→ f(x, yo, zo). Puisque (x, y, z) 7→∂f∂x (x, y, z) est aussi une fonction de plusieurs variables on peut à nouveau considérerses dérivées partielles. Par exemple ∂

∂z

[∂f∂x

](xo, yo, zo) est la dérivée en z = zo de

z 7→ ∂f∂x (xo, yo, z). On la note ∂2f

∂z∂x (xo, yo, z).Exemple. Avec f(x, y, z) = 2xy + x2z3 − y2z, nous avons ∂f

∂x (x, y, z) = 2y + 2xz3,∂f∂z (x, y, z) = 3x2z2 − y2 et ∂2f

∂z∂x (x, y, z) = 6xz2, ∂2f∂x∂z (x, y, z) = 6xz2. On remarque

que ∂2f∂z∂x = ∂2f

∂x∂z . En fait, ceci est un phénomène général et on peut démontrer quepour une grande classe de fonctions f(x1, . . . , xn), on a

∂2f

∂xi∂xj=

∂2f

∂xj∂xi, 1 ≤ i, j ≤ n. (1.3)

Un autre exemple. On considère la fonction f(x, y) = xy + x3y2 en (xo, yo) =(1,−2). Alors, ∂f

∂x (x, y) = y+3x2y2, ∂f∂y (x, y) = x+2x3y, ∂2f

∂2x (x, y) = 6xy2, ∂2f∂2y (x, y) =

2x3 et ∂2f∂x∂y (x, y) = 1 + 6x2y. En (xo, yo) = (1,−2), on obtient ∂f

∂x (1,−2) = 10,∂f∂y (1,−2) = −3, ∂2f

∂2x (1,−2) = 24, ∂2f∂2y (1,−2) = 2 et ∂2f

∂x∂y (1,−2) = −11. La formulede Taylor à l'ordre 2 en (1,−2) s'écrit donc

f(1 + u,−2 + v) = 2 + 10u− 3v +12[24u2 + 2v2 − 22uv] + ε(u, v)(u2 + v2).

Il est pratique d'introduire l'écriture matricielle suivante

f((1,−2) + (u, v)) =2 + (10,−3)(

uv

)

+12(u, v)

(24 −11−11 2

) (uv

)+ ε(u, v)

∥∥∥∥(

uv

)∥∥∥∥2

.

De même, la formule de Taylor (1.2) en dimension 3, s'écrit

f(x + u, y + v, z + w) = f(x, y, z) + Df(x, y, z)

uvw

+

12(u, v, w)D2f(x, y, z)

uvw

(1.4)

+ ε(u, v, w)

∥∥∥∥∥∥

uvw

∥∥∥∥∥∥

2

Page 4: Opmath3 Poly Optimisation Sous Contrainte

4 CHRISTIAN LÉONARD

avecDf(x, y, z) =

(∂f

∂x,∂f

∂y,∂f

∂z

)(x, y, z)

et

D2f(x, y, z) =

∂2f∂2x

∂2f∂x∂y

∂2f∂x∂z

∂2f∂x∂y

∂2f∂2y

∂2f∂y∂z

∂2f∂x∂z

∂2f∂y∂z

∂2f∂2z

(x, y, z)

où nous avons utilisé l'identité (1.3) pour rendre la matrice D2f symétrique.Cette formule reste vraie en dimension n et devient

f(x1 + u1, . . . , xn + un) = f(x1, . . . , xn) + Df(x1, . . . , xn)

u1

...un

(1.5)

+12(u1, . . . , un)D2f(x1, . . . , xn)

u1

...un

+ ε(u1, . . . , un)

∥∥∥∥∥∥∥

u1

...un

∥∥∥∥∥∥∥

2

avecDf(x1, . . . , xn) =

(∂f

∂x1, . . . ,

∂f

∂xn

)(x1, . . . , xn)

et

D2f(x1, . . . , xn) =(

∂2f

∂xi∂xj

)

1≤i,j≤n

(x1, . . . , xn)

Dé�nition 1.6. On appelle gradient de f en (x1, . . . , xn) la matrice ligne Df(x1, . . . , xn)ci-dessus.On appelle hessien ou matrice hessienne de f en (x1, . . . , xn) la matrice carrée D2f(x1, . . . , xn)ci-dessus.

On peut réécrire la formule de Taylor (1.5) de façon plus compacte, sous la forme

f(x + u) = f(x) + Df(x)u +12uT D2f(x)u + ε(u)‖u‖2 (1.7)

Page 5: Opmath3 Poly Optimisation Sous Contrainte

NOTES DU COURS DE MATHS3 5

où u =

u1

...un

est une matrice colonne et uT est sa matrice transposée : uT =

(u1 · · ·un). On note en passant queu ∈ Rn 7→ uT D2f(x)u ∈ R

est l'expression d'une forme quadratique.La formule de Taylor à l'ordre 1 est bien sûr

f(x + u) = f(x) + Df(x)u + ε(u)‖u‖ (1.8)où comme d'habitude ε(u) est une fonction telle que limu→0 ε(u) = 0. Remarquonsque les fonctions ε(u) dans (1.7) et (1.8) ne sont pas les mêmes.Nous aurons besoin de la formule dérivation d'une fonction composée de la forme t ∈

R 7→ f(x(t)) où t ∈ R 7→ x(t) =

x1(t)...

xn(t)

∈ Rn est formée des fonctions coordonnées

x1(t), . . . , xn(t) que nous supposerons dérivables en t. On note x′1(t), . . . , x′n(t) leurs

dérivées ainsi que x′(t) =

x′1(t)...

x′n(t)

∈ Rn considére comme une matrice colonne.

Considérons l'accroissement f(x(t+s))−f(x(t)) lorsque s ∈ R est "petit". En notantu = x(t + s) − x(t) ∈ Rn, la formule de Taylor à l'ordre 1 appliquée à toutes lescoordonnées de u nous donne u = sx′(t) + ε(s)s et la formule de Taylor à l'ordre 1(1.8) nous permet d'écrire

f((x(t + s)) = f(x(t) + u)= f(x(t)) + Df(x(t))u + ε(u)‖u‖= f(x(t)) + sDf(x(t))x′(t) + ε(s)s.

On en déduit que la dérivée ddtf(x(t)) de t 7→ f(x(t)) satisfait l'identité suivanted

dtf(x(t)) = Df(x(t))x′(t). (1.9)

1.2. Un peu de géométrie dans l'espace : espaces tangents et normaux. Defaçon à pouvoir travailler avec des contraintes comme celles dé�nies par h1 = h2 = 0dans (1.1), nous aurons besoin de rudiments de géométrie dans l'espace.Une surface de R3 est dé�nie en général par une équation du type

h(x, y, z) = 0.

Page 6: Opmath3 Poly Optimisation Sous Contrainte

6 CHRISTIAN LÉONARD

Par exemple x− 2y +6z = 0 est l'équation d'un plan vectoriel (qui passe par l'origine(0,0,0)). C'est le plan orthogonal au vecteur (1,−2, 6) puisque son équation exprime

précisément que le produit scalaire (1,−2, 6)

xyz

est nul. L'équation x−2y+6z =

0 = 33, 2 est celle d'un plan a�ne (qui ne passe pas l'origine) parallèle au précédent.L'équation x2 + y2 + z2 − 1 = 0 est celle de la sphère centrée en l'origine de rayonun ; x2 + y2 + z2 − 9 = 0 est celle de la sphère centrée en l'origine de rayon 3 ;x2+y2+z2+9 = 0 est l'équation d'un ensemble vide (pourquoi ?). Plus généralement,((x − xo)/a)2 + ((y − yo)/b)2 + ((z − zo)/c)2 − d2 = 0 est l'équation d'un ellipsoïde.Attention, une sphère est une surface, il ne faut pas la confondre avec la boule qu'elledélimite, qui est un volume.Dans R2, x2 + y2 − 1 = 0 est l'équation du cercle unité. Alors que dans R3, la mêmeéquation x2 + y2 − 1 = 0 ne faisant pas apparaître la variable z, est celle du cylindre"vertical" passant par le cercle unité du plan "horizontal" Oxy.De manière générale on peut dire qu'une contrainte du type h(x1, . . . , xn) = 0 faitpasser de la dimension n à la dimension n− 1. Ainsi x1 + · · ·+ xn = 0 est l'équationdu sous-espace vectoriel de Rn orthogonal au vecteur (1, . . . , 1). C'est donc un espace

vectoriel de dimension n−1. L'équation x21+· · ·+x2

n−1 = 0 s'écrit aussi

∥∥∥∥∥∥∥

x1

...xn

∥∥∥∥∥∥∥

2

=

1. Il s'agit donc de celle de la sphère de Rn de rayon 1 ; elle est bien de dimensionn− 1. De tels ensembles de dimension n− 1 dans Rn sont appelés des hypersurfaces.Revenons dans R3 et considérons un ensemble dé�ni par deux contraintes du style

{h1(x, y, z) = 0h2(x, y, z) = 0

Puisque les deux contraintes doivent être satisfaites simultanément, cet ensemble estl'intersection des deux surfaces d'équations h1(x, y, z) = 0 et h2(x, y, z) = 0. Parexemple, les contraintes du problème de minimisation (1.1) se représentent géométri-quement comme l'intersection en 3D d'une sphère et d'un plan. En général, l'inter-section d'un plan et d'une sphère est soit vide, soit un cercle dans l'espace. De façonexceptionnelle, si le plan est tangent à la sphère, l'intersection n'est pas vide et seréduit au point de contact. Donc il semble que l'intersection de deux surfaces lors-qu'elle n'est pas vide, soit une courbe de l'espace. C'est e�ectivement le cas en général.L'intersection de deux plans est soit vide (si les plans sont distincts et parallèles) soitune droite de l'espace. L'intersection d'un plan et d'un cylindre, ou de deux sphères,

Page 7: Opmath3 Poly Optimisation Sous Contrainte

NOTES DU COURS DE MATHS3 7

si elles ne sont pas vides sont des ellipses dans l'espace. Les droites et les ellipses del'espace sont des ensembles géométriques de dimension 1. Deux contraintes font doncperdre en général deux dimensions. On passe de 3 à 3− 2 = 1.De manière générale on peut dire que 2 contraintes simultanées du type h1(x1, . . . , xn) =0 et h2(x1, . . . , xn) = 0 font passer de la dimension n à la dimension n−2. Couper parune hypersurface (de dimension n − 1) fait perdre en général une dimension. Donc,m contraintes simultanées du type

h1(x1, . . . , xn) = 0...

hm(x1, . . . , xn) = 0(1.10)

dé�nissent en général un ensemble de dimension n −m. Nous avons déjà remarquécela dans le cas des systèmes linéaires. On appellera tout ensemble de Rn dé�ni parune famille d'équations (1.10) une surface de Rn.

Dé�nition 1.11. Une courbe paramétrée C sur une surface S est un ensemble depoints (xt ∈ S; t ∈]a, b[) paramétré régulièrement par t ∈]a, b[. Le lieu géométrique dela courbe C est l'ensemble des points {xt ∈ S; t ∈]a, b[}.Illustration graphique

En fait, une courbe paramétrée C est une fonction t ∈]a, b[ 7→ xt ∈ S.

Dé�nition 1.12. La vitesse de C à l'instant t = t∗ en x = x∗ est

x(t∗) =dx

dt(t∗) =

dx1dt (t∗)...

dxn

dt (t∗)

∈ Rn

Page 8: Opmath3 Poly Optimisation Sous Contrainte

8 CHRISTIAN LÉONARD

Attention, la vitesse dépend du paramètrage. Deux paramétrages di�érents du mêmelieu géométrique {xt ∈ S; t ∈]a, b[} donnent en général des vitesses di�érentes. Ainsi(x(t) ∈ S; t ∈]0, 1[) et (y(t) := x(1 − t) ∈ S; t ∈]0, 1[) correspondent au même lieugéométrique mais y(1−t) = −xt : les vitesses sont opposées puisque x et y parcourentle même lieu "à l'envers".Considérons le sous-ensemble S de Rn dé�ni par les m contraintes (1.10) que nousécrirons rapidement h(x) = 0, en notant f(x) = f(x1, . . . , xn) pour toute fonction

f de (x1, . . . , xn) ainsi que h(x) =

h1(x)...

hm(x)

∈ Rm avec les fonctions contraintes

hi : Rn → R, 1 ≤ i ≤ m.Soit (xt ∈ S; t ∈]a, b[) une courbe C paramétrée sur S. Puisque pour tout t, h(xt) =

0 ⇔

h1(xt) = 0...

hm(xt) = 0, en dérivant par rapport à t on obtient

Dh1(xt)xt = 0...

Dhm(xt)xt = 0⇔ Dh(xt)xt = 0 ∈ Rm

où l'on a posé

Dh(x) =

Dh1(x)...

Dhm(x)

=

∂h1∂x1

(x) · · · ∂h1∂xn

(x)...

...∂hm

∂x1(x) · · · ∂hm

∂xn(x)

qui est une matrice m× n et xt est une matrice colonne.Dans ce qui précède, nous avons utilisé la formule de composition des dérivées (1.9) :ddthi(xt) = Dhi(xt)xt pour tout 1 ≤ i ≤ n.En t = t∗ en notant x∗ = x(t∗), la vitesse v∗ = x(t∗) satisfait

Dh(x∗)v∗ = 0 ∈ Rm

où v∗ ∈ Rn est un vecteur colonne. Soit : Dhi(x∗)v∗ = 0 pour tout 1 ≤ i ≤m. Ce qui signi�e que la vitesse v∗ est orthogonale simultanément aux vecteursDh1(x∗), . . . , Dhm(x∗).

Dé�nition 1.13. L'ensemble de toutes les vitesses possibles en x∗ ∈ S (en considé-rant tous les paramétrages C ⊂ S passant en x∗) est appelé l'espace tangent à S en

Page 9: Opmath3 Poly Optimisation Sous Contrainte

NOTES DU COURS DE MATHS3 9

x∗. On le note T (x∗) et on a

T (x∗) = {v ∈ Rn;Dh(x∗)v = 0}.

Avec les considérations que nous avons menées plus haut au sujet de la dimensionde S, on remarque que si S est de dimension n − m, il en est de même de T (x∗)en général. En fait, en mathématiques on dit que, par dé�nition, la surface S est dedimension n−m si la dimension de tous les espaces tangents T (x), x ∈ S est la mêmeet vaut n−m. Puisque les T (x) sont des espaces vectoriels, leurs dimensions est celleque nous connaissons : c'est le nombre de vecteurs des bases vectorielles.Exemple. L'ensemble S = {(x, y, z) ∈ R3; h1(x, y, z) = x = 0, h2(x, y, z) = x −y = 0}} est clairement l'axe des z puisque x = y = 0. Son espace tangent entout point est donc lui-même puisque c'est un espace vectoriel. On a Dh(x, y, z) =(

Dh1(x, y, z)Dh2(x, y, z)

)=

(1 0 01 −1 0

). Donc pour tout x∗ ∈ S, T (x∗) = {v;Dh(x∗)v =

0} est l'ensemble des v = (a, b, c) tels que{

a = 0a− b = 0 c'est-à-dire a = b = 0. On

retrouve l'axe des z.

Dé�nition 1.14. L'espace normal en x∗ à S est l'espace vectoriel orthogonal à T (x∗).On le note N(x∗). C'est le sous-espace vectoriel de Rn engendré par Dh1(x∗), . . . , Dhm(x∗) :

N(x∗) = vect{Dh1(x∗), . . . , Dhm(x∗)}

En e�et, nous avons vu par construction que T (x∗) est orthogonal à tous les vecteursDh1(x∗), . . . , Dhm(x∗).Si les vecteurs Dh1(x∗), . . . , Dhm(x∗) forment une partie libre, alors la dimensionN(x∗) est m et celle de T (x∗) est n−m.

Dé�nition 1.15. On dit que la contrainte h est régulière en x∗ ∈ S si les vecteursDh1(x∗), . . . , Dhm(x∗) forment une partie libre.

Si h n'est pas régulière en x∗ des tas d'ennuis peuvent arriver lors de la résolution duproblème d'optimisation. Nous éviterons cette situation dans ce cours d'introduction.Il conviendra donc avant tout de s'assurer de la régularité de la contrainte aux points"sensibles" (voir les Théorèmes 1.17 et 1.24 plus bas).

1.3. Les multiplicateurs de Lagrange. Nous considérons le problème d'optimisa-tion suivant

Page 10: Opmath3 Poly Optimisation Sous Contrainte

10 CHRISTIAN LÉONARD

optimiser localement f(x) (1.16)

sous les contraintes

h1(x) = 0,...

hm(x) = 0, x = (x1, . . . , xn) ∈ Rn

c'est-à-dire qu'il y a m contraintes unidimensionnelles dans un espace à n dimensions.Ce que nous entendons par optimiser localement, c'est chercher les points x∗ de Rn quiminimisent localement ou maximisent localement f tout en satisfaisant la contrainteh(x∗) = 0.

On note h =

h1

...hm

et S la surface des contraintes, d'équation h = 0 :

SM= {x ∈ Rn; h(x) = 0}.

Soient x∗ un point de S, c'est-à-dire tel que h(x∗) = 0, et C : (t 7→ xt) une courbeparamétrée sur S qui passe par x∗ à l'instant t = t∗, c'est-à-dire telle que : h(xt) = 0pour tout t et xt∗ = x∗.On introduit la fonction t 7→ Φ(t) = f(xt). C'est une fonction habituelle de R dansR. Si x∗ optimise f sur la surface S, alors il optimise a fortiori f sur la courbe C,puisque C est située sur S. On en déduit que t∗ optimise Φ, c'est-à-dire que Φ atteintun minimum ou un maximum en t∗. Or Φ est une fonction habituelle, on doit doncavoir annulation de sa dérivée en t∗ : Φ′(t∗) = 0.Compte tenu de formule de dérivation d'une fonction composée (1.9), nous avonsΦ′(t) = Df(xt)xt. par conséquent

Df(x∗)v∗ = 0 avec v∗ = x(t∗).

Ce raisonnement étant valable pour toute courbe C sur S passant pas x∗ en t = t∗,on a

Df(x∗)v = 0, pour tout v ∈ T (x∗)C'est-à-dire que tout x∗ optimisant f sous la contrainte h = 0 est tel que

Df(x∗) ∈ N(x∗)

où N(x∗) est l'espace normal à S = {x; h(x) = 0} en x∗. Puisque N(x∗) est l'espacevectoriel engendré par les vecteurs Dh1(x∗), . . . , Dhm(x∗), il existe des coe�cientsréels α1, . . . αm tels que

Df(x∗) = α1Dh1(x∗) + · · ·+ αmDhm(x∗).

Page 11: Opmath3 Poly Optimisation Sous Contrainte

NOTES DU COURS DE MATHS3 11

En posant α1 = −λ∗1, . . . αm = −λ∗m, on a montré le résultat important suivant.

Théoreme 1.17 (des multiplicateurs de Lagrange). Soit x∗ un minimiseur local ouun maximiseur local de fRn → R sous la contrainte h(x) = 0, c'est-à-dire une solutionde (1.16). On suppose de plus que la contrainte h est régulière en x∗ (voir la Dé�nition1.15).Alors il existe des réels λ∗1, . . . λ∗m tels que

Df(x∗) + λ∗1Dh1(x∗) + · · ·+ λ∗mDhm(x∗) = 0. (1.18)

Dé�nitions 1.19. Un peu de vocabulaire pour être plus e�cace.• Les points x∗ pour lesquels il existe des coe�cients λ∗1, . . . λ∗m satisfaisant l'identitéci-dessus sont appelés des points stationnaires du problème d'optimisation (1.16).

• Les coe�cients λ∗1, . . . λ∗m satisfaisant l'identité ci-dessus sont appelés les multipli-cateurs de Lagrange en x∗. On note λ∗ = (λ∗1, . . . λ∗m) le vecteur multiplicateur deLagrange.

• On introduit la fonction suivante

L(x, λ) M= f(x) + λ1h1(x) + · · ·+ λmhm(x), (x, λ) ∈ Rn × Rm (1.20)On l'appelle le lagrangien du problème d'optimisation (1.16).

L'intérêt du lagrangien L est le résultat suivant.

Proposition 1.21. Le point x∗ satisfait h(x∗) = 0 et (1.18) si et seulement siDL(x∗, λ∗) = 0 ∈ Rn (1.22)

Compte tenu du Théorème 1.17, si x∗ est une solution du problème d'optimisationlocale (1.16), alors il existe λ∗ ∈ Rm tel que DL(x∗, λ∗) = 0.

Démonstration. En e�et, ∂L∂xi

(x∗, λ∗) = ∂f∂xi

(x∗) + λ∗1∂

∂xih1(x∗) + · · ·+ λ∗m

∂∂xi

hm(x∗)pour tout 1 ≤ i ≤ n et ∂L

∂λj(x∗, λ∗) = hj(x∗) pour tout 1 ≤ j ≤ m. Donc, l'identité

(1.22) est équivalente à{

Df(x∗) + λ∗1Dh1(x∗) + · · ·+ λ∗mDhm(x∗) = 0 eth(x∗) = 0

¤

On a donc transformé le problème d'optimisation sous contrainte (1.16) dans Rn enle problème d'optimisation sans contrainte

optimiser localementL(x, λ), (x, λ) ∈ Rn+m

Page 12: Opmath3 Poly Optimisation Sous Contrainte

12 CHRISTIAN LÉONARD

dans Rn+m. En e�et, la condition (1.22) n'est autre que la condition nécessaire pourque (x∗, λ∗) soit un point stationnaire de ce problème d'optimisation libre (sanscontrainte). Il apparaît que (x∗, λ∗) est un point stationnaire du lagrangien L si etseulement si x∗ satisfait la contrainte h(x∗) = 0, x∗ est un point stationnaire duproblème sous contrainte (1.16) et λ∗ est un vecteur multiplicateur de Lagrange duproblème sous contrainte (1.16) en x∗.

1.4. Conditions du second ordre. Soit ϕ(t) une fonction de R dans R. On chercheà résoudre le problème d'optimisation libre suivant

optimiser localement ϕ(t), t ∈ ROn cherche donc les minimums et maximums locaux de ϕ. Pour cela on commence parrésoudre ϕ′(t) = 0 : on cherche les points stationnaires du problème d'optimisation.On sait grâce à la formule de Taylor à l'ordre 2

ϕ(t + s) = ϕ(t) + ϕ′(t)s + ϕ′′(t)s2/2 + s2ε(s)

que(a) si t∗ satisfait ϕ′(t∗) = 0 et ϕ′′(t∗) > 0, alors t∗ est un minimum local de ϕ(b) si t∗ satisfait ϕ′(t∗) = 0 et ϕ′′(t∗) < 0, alors t∗ est un maximum local de ϕ(c) si t∗ satisfait ϕ′(t∗) = 0 et ϕ′′(t∗) = 0, alors on ne peut pas conclure sans faire

une étude plus poussée de ϕ au voisinage de t∗.En qui concerne le dernier point, penser à∗ ϕ(t) = t4 où en t∗ = 0 : ϕ′(0) = ϕ′′(0) = 0 et 0 est un minimum (global)∗ ϕ(t) = −t4 où en t∗ = 0 : ϕ′(0) = ϕ′′(0) = 0 et 0 est un maximum (global)∗ ϕ(t) = t3 où en t∗ = 0 : ϕ′(0) = ϕ′′(0) = 0 et 0 n'est ni un minimum, ni un

maximum, mais un point d'in�exion.La condition ϕ′(t∗) = 0 est appelée une condition nécessaire du premier ordre (endérivation) pour que t∗ soit un optimiseur local, alors que les conditions ϕ′′(t∗) > 0et ϕ′′(t∗) < 0 sont respectivement appelées des conditions su�santes du second ordrepour que le point stationnaire t∗ soit un minimum local ou un maximum local.La condition (1.22) est une condition nécessaire de premier ordre pour que x∗ soitun optimiseur local de (1.16). Cherchons maintenant à déterminer en fonction desdérivées secondes de f et de h1, . . . hm des conditions su�santes pour que le pointstationnaire x∗ soit un minimum local ou un maximum local.Pour cela, on considère à nouveau Φ(t) = f(xt) où t 7→ xt ∈ S est une courbeparamétrée qui vit sur la surface S d'équation h(x) = 0 et telle que x(t∗) = x∗. Lesformules de Taylor à l'ordre 2 qui vont nous servir sont

xt+s − xt = xts + xts2/2 + ε(s)s2

Page 13: Opmath3 Poly Optimisation Sous Contrainte

NOTES DU COURS DE MATHS3 13

où xt désigne le vecteur des dérivées secondes de t 7→ xt, c'est-à-dire l'accélération dela courbe t 7→ xt à l'instant t, ainsi que

f(xt+s) = f(xt) + Df(xt)(xt+s − xt) +12〈(xt+s − xt), D2f(xt)(xt+s − xt)〉

+ ε(xt+s − xt)‖(xt+s − xt)‖2

où 〈a, b〉 désigne le produit scalaire. En injectant la première équation dans la seconde,nous obtenons

f(xt+s) = f(xt) + Df(xt)[sxt +12s2xt + ε(s)s2] +

s2

2〈xt, D

2f(xt)xt〉+ ε(s)s2

= f(xt) + sDf(xt)xt +s2

2[Df(xt)xt + 〈xt, D

2f(xt)xt〉] + ε(s)s2 (1.23)

Nous savons que Df(x∗)xt∗ est lié à Dh(x∗)xt∗ par (1.22), mais ça n'est pas su�santpour conclure. De plus, l'accélération xt apparaît, il faut donc trouver un moyen pourl'éliminer. La bonne façon de s'en sortir est de remarquer que puisque le courbe t 7→ xt

est sur S, on a h(xt) = 0 pour tout t, doncL(xt, λ) = f(xt) + λ1h1(xt) + · · ·+ λmhm(xt) = f(xt),

pour tout t et tout λ. Soient x∗ un point stationnaire et λ∗ le vecteur multiplicateurde Lagrange qui lui est associé par (1.22). En prenant λ = λ∗ dans l'identité f(xt) =L(xt, λ

∗), et en lui appliquant la formule de Taylor (1.23) en t = t∗, on obtient

f(xt∗+s) = f(x∗) + sDxL(x∗, λ∗)xt∗ +s2

2[DxL(x∗, λ∗)xt∗ + 〈xt∗ , D

2xL(x∗, λ∗)xt∗〉] + ε(s)s2

= f(x∗) +s2

2〈xt∗ , D

2xL(x∗, λ∗)xt∗〉+ ε(s)s2

où DxL(x∗, λ∗) et D2xL(x∗, λ∗) désignent le gradient et la matrice hessienne de la

fonction x 7→ L(x, λ∗) en x = x∗ pour λ∗ �xé. Pour la dernière égalité, nous avonstiré parti de DxL(x∗, λ∗) = 0 qui est impliqué par (1.22).Le calcul précédent est valable pour toute courbe t 7→ xt qui passe par x∗ en t = t∗.Donc la vitesse xt∗ peut prendre toutes les valeurs v dans l'espace tangent T (x∗).On en conclut que si pour tout v non nul dans T (x∗), 〈v, D2

xL(x∗, λ∗)v〉 > 0 alors lepoint stationnaire x∗ est un minimum. De même, si pour tout v non nul dans T (x∗),〈v, D2

xL(x∗, λ∗)v〉 < 0 alors le point stationnaire x∗ est un maximum. Nous venons deprouver le

Théoreme 1.24 (Condition su�sante du second ordre). Soit x∗ un point stationnairedu problème (1.16) de vecteur multiplicateur de Lagrange λ∗. C'est-à-dire (1.22) :

Page 14: Opmath3 Poly Optimisation Sous Contrainte

14 CHRISTIAN LÉONARD

DL(x∗, λ∗) = 0. On suppose de plus que la contrainte h est régulière en x∗ (voir laDé�nition 1.15).(a) Si pour tout v non nul de T (x∗), 〈v,D2

xL(x∗, λ∗)v〉 > 0, alors x∗ est un minimi-seur local.

(b) Si pour tout v non nul de T (x∗), 〈v, D2xL(x∗, λ∗)v〉 < 0, alors x∗ est un maximi-

seur local.(c) S'il existe des v de T (x∗) tels que 〈v,D2

xL(x∗, λ∗)v〉 > 0 et des v de T (x∗) telsque 〈v, D2

xL(x∗, λ∗)v〉 < 0, alors x∗ est un point-col.

Exercice. Trouver le point du cercle de R3 d'équation{

x2 + y2 + z2 = 1x + y + z = 0 qui est

le plus éloigné du point de coordonnées (1, 1, 0).

Solution. Il s'agit dans un premier temps de résoudre le problème d'optimisation sui-vant :

{optimiser localement f(x, y, z) = (x− 1)2 + (y − 1)2 + z2

sous les contraintes x2 + y2 + z2 = 1 et x + y + z = 0 (P)

Avant d'oublier, commençons par chercher les points de la surface de contrainte Squi ne sont pas réguliers au sens de la Dé�nition 1.15, c'est à dire les (x, y, z) telsque h1(x, y, z) M= x2 + y2 + z2 − 1 = 0 et h2(x, y, z) M= x + y + z = 0, et telsque les vecteurs Dh1(x, y, z) et Dh2(x, y, z) ne forment pas une partie libre de R3.On a Dh1(x, y, z) = 2(x, y, z) et Dh2(x, y, z) = (1, 1, 1). Ils sont liés s'ils sont co-linéaires, c'est-à-dire lorsque x = y = z. Ce qui avec les contraintes nous donne

x = y = zx + y + z = 0x2 + y2 + z2 = 1

. Or, ce système n'admet pas de solution. Donc tous les points

de la surface de contrainte (le cercle) sont réguliers.Le lagrangien est L(x, y, z, λ, µ) = (x−1)2 +(y−1)2 +z2 +λ(x2 +y2 +z2−1)+µ(x+y + z), avec deux multiplicateurs de Lagrange λ et µ puisqu'il y a deux contraintes.Recherchons les points stationnaires et leurs multiplicateurs. Les dérivées partiellesde L sont

Page 15: Opmath3 Poly Optimisation Sous Contrainte

NOTES DU COURS DE MATHS3 15

∂L∂x

(x, y, z, λ, µ) = 2(λ + 1)x + µ− 2

∂L∂y

(x, y, z, λ, µ) = 2(λ + 1)y + µ− 2

∂L∂z

(x, y, z, λ, µ) = 2(λ + 1)z + µ

∂L∂λ

(x, y, z, λ, µ) = x2 + y2 + z2 − 1

∂L∂µ

(x, y, z, λ, µ) = x + y + z

de sorte que nous avons à résoudre le système en (x, y, z, λ, µ) :

x/α + µ− 2 = 0y/α + µ− 2 = 0

z/α + µ = 0x2 + y2 + z2 = 1

x + y + z = 0

où nous avons posé α = 12(λ+1) en constatant que 2(λ + 1) = 0 est exclu du fait des

trois premières équations. On a donc

x = α(2− µ)y = α(2− µ)z = −αµ

qui avec x + y + z = 0

nous donne 0 = α(4− 3µ), soit µ = 4/3. Par conséquent (x, y, z) = α(2/3, 2/3,−4/3).Donc, l'autre contrainte x2 + y2 + z2 = 1 impose 1 = α2(4/9 + 4/9 + 16/9), soitα2 = 9/24 : α ∈ {− 3

2√

6, 3

2√

6}.

Les points stationnaires et leurs multiplicateurs de Lagrange sont donc :

(x∗, y∗, z∗) = (1/√

6, 1/√

6,−2/√

6) avec{

(λ∗, µ∗) = (√

6/3− 1, 4/3)soit α∗ = 3

2√

6

(x∗, y∗, z∗) = (−1/√

6,−1/√

6, 2/√

6) avec{

(λ∗, µ∗) = (−√6/3− 1, 4/3)soit α∗ = − 3

2√

6

La matrice D2xL qui apparaît dans le Théorème 1.24 est ici

Page 16: Opmath3 Poly Optimisation Sous Contrainte

16 CHRISTIAN LÉONARD

∂2L∂2x

∂2L∂x∂y

∂2L∂x∂z

∂2L∂x∂y

∂2L∂2y

∂2L∂y∂z

∂2L∂x∂z

∂2L∂y∂z

∂2L∂2z

(x∗, y∗, z∗, λ∗, µ∗) =

2(λ∗ + 1) 0 00 2(λ∗ + 1) 00 0 2(λ∗ + 1)

= 1/α∗

1 0 00 1 00 0 1

La forme quadratique 〈v,D2xL(x∗, λ∗)v〉 du Théorème 1.24 s'écrit

Q(u, v, w) =1α∗

(u2 + v2 + w2), (u, v, w) ∈ R3.

Elle a donc un signe constant qui est celui de α∗. Il n'est donc pas utile de cal-culer l'espace tangent dans ce cas. Le point (x∗, y∗, z∗) = (1/

√6, 1/

√6,−2/

√6)

est donc un minimiseur local de (P ) puisque 1/α∗ > 0 et le point (x∗, y∗, z∗) =(−1/

√6,−1/

√6, 2/

√6) est un maximiseur local de (P ) puisque 1/α∗ < 0.

La solution que nous cherchons est le maximiseur local (x∗, y∗, z∗) = (−1/√

6,−1/√

6, 2/√

6).En e�et, la fonction continue f(x, y, z) = (x−1)2+(y−1)2+z2 est bornée sur le cercledé�ni par les contraintes. Un unique maximiseur local est de ce fait le maximiseurglobal. ¤Exercice. Optimiser localement la fonction f(x, y) = 3x + 5y − 1 sous la contraintexy = 15

(1) à l'aide d'une méthode de substitution(2) à l'aide de la méthode de Lagrange

Solution. (1) Commençons par la méthode de substitution qui ne pose aucune di�-culté sérieuse. Puisque xy = 15, on a nécessairement x et y non nuls. On peut doncécrire y = 15/x et optimiser localement la fonction g(x) = f(x, 15/x) = 3x+75/x−1.On étudie les variations de g à l'aide de sa dérivée g′(x) = 3 − 75/x2 et on trouveque x = −5 et x = 5 sont respectivement un maximum local et un minimum localde g. Par conséquent (−5, 15

−5 ) = (−5,−3) et (5, 155 ) = (5, 3) sont respectivement un

maximum local et un minimum local du problème considéré.(2) Appliquons maintenant la méthode de Lagrange. Dans cet exercice elle estnettement plus lourde que la méthode de substitution, mais dans les situations pluscomplexes, c'est la seule qui peut être envisagée. Le but de cet exercice est doncd'appliquer la méthode pour en donner une illustration.Commençons par chercher les points de la surface de contrainte d'équation h(x, y) M=xy − 15 = 0 qui ne sont pas réguliers. Ce sont les points (x, y) tels que h(x, y) = 0 et

Page 17: Opmath3 Poly Optimisation Sous Contrainte

NOTES DU COURS DE MATHS3 17

Dh(x, y) = (0, 0), car une partie composée d'un unique vecteur est liée si et seulementsi ce vecteur est nul. On a Dh(x, y) = (y, x). Or le sytème

{y = x = 0xy = 15 n'admet pas

de solution. Donc tous les points de la surface de contrainte sont réguliers.Le lagrangien est L(x, y, λ) = 3x + 5y − 1 + λ(xy − 15) et ses dérivées partiellessont ∂L

∂x (x, y, λ) = 3 + λy, ∂L∂y (x, y, λ) = 5 + λx et ∂L

∂λ (x, y, λ) = xy − 15. Donc

les points stationnaires sont solution du système

λx = −5λy = −3xy = 15

. Nécessairement λ

est non nul car on aurait 0 = 0y = −3. On peut donc diviser par λ pour obtenir{x = −5/λy = −3/λ

ce qui avec xy = 15 implique 15/λ2 = 15. Par conséquent λ2 = 1

et les points stationnaires sont(x∗, y∗) = (5, 3) avec λ∗ = −1(x∗, y∗) = (−5,−3) avec λ∗ = 1

Etudions maintenant la condition su�sante du second ordre. La matrice des dérivéessecondes par rapport à x, y de L est

(∂2L∂2x

∂2L∂x∂y

∂2L∂x∂y

∂2L∂2y

)(x, y, λ) =

(0 λλ 0

), de sorte

qu'en les points stationnaires, la forme quadratique associée est

Q∗(u, v) M= Q(x∗,y∗,λ∗)(u, v) = 2λ∗uv, (u, v) ∈ R2

Cette forme quadratique n'est pas de signe constant sur R2, il convient donc d'étudierson signe en restriction à l'espace tangent T ∗ M= T (x∗, y∗) à S = {(x, y) ∈ R2, xy = 15}au point (x∗, y∗). Cet espace est l'espace orthogonal à Dh(x∗, y∗) avec h(x, y) =xy − 15. On a donc,

(u, v) ∈ T ∗ ⇔ (u, v)(∂h

∂x (x∗, y∗)∂h∂y (x∗, y∗)

)= 0 ⇔ (u, v)

(y∗

x∗

)= 0 ⇔ y∗u + x∗v = 0.

� En (x∗, y∗) = (5, 3) on a Q∗(u, v) = 2λ∗uv = −2uv car λ∗ = −1. Or T ∗ a pouréquation 3u + 5v = 0. Donc en restriction à T ∗, Q∗(u, v) = Q∗(u,−3u/5) =(−2)(−3u2/5) = 6u2/5. Par conséquent, pour tout vecteur non nul (u, v) de T ∗, ona Q∗(u, v) > 0. On en déduit, grâce au Théorème 1.24(a) que (x∗, y∗) = (5, 3) estun minimiseur local.

� En (x∗, y∗) = (−5,−3) on a Q∗(u, v) = 2λ∗uv = 2uv car λ∗ = 1. Or T ∗ a (aussi)pour équation −3u− 5v = 0. Donc en restriction à T ∗, Q∗(u, v) = Q∗(u,−3u/5) =2(−3u2/5) = −6u2/5. Par conséquent, pour tout vecteur non nul (u, v) de T ∗, on

Page 18: Opmath3 Poly Optimisation Sous Contrainte

18 CHRISTIAN LÉONARD

a Q∗(u, v) < 0. On en déduit, grâce au Théorème 1.24(b) que (x∗, y∗) = (5, 3) estun maximiseur local.

¤