Vous êtes sur la page 1sur 31

Optimisation non linaire : correction des TD

Grgory Bonnet
Rmi Douvenot
Nicolas Fezans
Emmanuel Rachelson
Stphanie Roussel
17 janvier 2008

TD 1 : Gnralits
Exercice 1 : tude des fonctions quadratiques
Les fonctions quadratiques sont trs souvent rencontres dans les problmes
doptimisation car il sagit dune forme standard dnergie. Soient Q une matrice
de Rnn , b un vecteur de Rn et f : Rn 7 R la fonction dfinie par f (x) =
1 T
T
n
2 x Qx + b x, x R .

Diffrentiabilit au sens de Frchet


x) L(Rn , R) tel que
f est diffrentiable au sens de Frchet en x
si fF0 (
||o(v)||
n
0
v R , f (
x + v) = f (
x) + fF (
x)(v) + o(v) avec lim ||v|| = 0.
v70

x) et il suffit de poser lquation prcdente et


Il nous faut donc exhiber fF0 (
de la dvelopper :
1
f (x + v) = (x + v)T Q(x + v) + bT (x + v)
2
1
1
=( xT + v T )(Qx + Qv) + bT x + bT v
2
2
1 T
1
1
1
= x Qx + xT Qv + v T Qx + v T Qv + bT x + bT v
2
2
2
2
1 T
1 T
1 T
=f (x) + x Qv + v Qx + v Qv + bT v
2
2
2
Nous pouvons remarquer que xT Qv est un scalaire (cest--dire xT Qv R).
Or un scalaire est gal sa transpose, donc xT Qv = (xT Qv)T = (v T QT x).
1
1
1
f (x + v) =f (x) + xT Qv + (v T Qx)T + v T Qv + bT v
2
2
2
1
1
1
=f (x) + xT Qv + xT QT v + v T Qv + bT v
2
2
2
1
1
=f (x) + ( xT (Q + QT ) + bT )v + v T Qv
2
2
Les quations prcdentes nous conduisent alors poser :
1
fF0 (
x)(v) = ( xT (Q + QT ) + bT )v
2
1

et o(v) =

1 T
v Qv
2

Il nous faut alors vrifier que fF0 (


x)(v) est linaire en v (ce qui est trivial) ;
||o(v)||
et il faut nous assurer que lim ||v|| = 0
v70

En posant qm =
Nous avons donc : 0

qij : ||o(v)|| = || 12 v T Qv|| = | 21 v T Qv| | 21 qm ||v||2 |

max

i,j{1,...,n}
||o(v)||
||v||

Or lim |qm |||v||2 = 0. Donc lim


v0

v0

|qm |||v||2
||o(v)||
||v||

= 0.

f est donc diffrentiable au sens de Frchet (et par consquent au sens de


Gteaux) et fF0 (
x)(v) = f
x)v ; et par identification :
x (
1 T
f
(
x) = x
(Q + QT ) + bT
x
2

Calcul du Hessien
Calculer le Hessien de f est fond sur le principe prcdent, appliqu au
gradient de f . En effet, montrer que f est deux fois diffrentiable revient
x)(v) +
x + w)(v) = fF0 (
montrer que fF0 (.)(v) est diffrentiable ; donc que fF0 (
00
00
n
f (
x)(v)(w) + o(w) avec f (
x)(v)(.) L(R , R) et lim ||o(w)||
=
0.
w
w0

f
(
x + w)v
x
1
f
(
x + w) = (
x + w)T (Q + QT ) + bT
x
2
1
1 T
(Q + QT ) + bT + wT (Q + QT )
= x
2
2
f
1 T
T
= (
x) + w (Q + Q )
x
2

fF0 (
x + w)(v) =

On pose alors f 00 (
x)(v)(w) = 21 wT (Q+QT ) et o(w) = 0. Il faut alors sassurer
que f 00 (
x)(v)(w) est linaire en w (ce qui est trivial) et que lim ||o(w)||
||w|| = 0 (ce
w0

qui est trivial aussi) ; ainsi le Hessien de f est


2f
1
= (Q + QT )
x2
2
Lexpression de f 00 (x)(v)(v) est <

2f
x2 v, v

> = 12 v T (Q + QT )v

Convexit
2

f
T
T
Si lon suppose Q symtrique alors Q = QT ; et f
x = x Q + b et x2 = Q.
Rappelons quune matrice est dfinie positive (resp. semi-dfinie positive) si et
seulement si ses valeurs propres sont toutes strictement positives (resp. positives
ou nulles). Pour montrer que f est convexe, deux mthodes sont proposes.

Une fonction est strictement convexe (resp. convexe) si son Hessien est dfini
positif (resp. semi-dfini positif). Dans notre application, le Hessien est Q et,
donc, f est strictement convexe (resp. convexe) si Q est dfini positive (resp.
semi-dfini positive).
2

En utilisant la proposition donne dans lexercice, nous pouvons vrifier ceci


dune autre manire. On pose :
f
(x)(y x)
x
xT Qx
y T Qy
+ bT y
bT x xT Q(y x) bT (y x)
=
2
2
y T Qy xT Qx
=

+ xT Qx xT Qy
2
2
y T Qy xT Qx
+
xT Qy
=
2
2

A(x, y) =f (y) f (x)

Or xT Qy =

xT Qy
2

xT Qy
2

T

xT Qy
2

y T Qx
2 .

Donc A(x, y) = 12 (y x)T Q(y x) et donc A(x, y) 0 si Q est semi-dfinie


positive (A(x, y) > 0 si Q est dfinie positive).

Exercice 2 : Approximation de fonction


Dans cet exercice, nous cherchons un polynme h qui approxime la fonction
g au sens des moindres carrs. Cela signifie que h doit minimiser la grandeur
suivante :
m
X
f=
[g(xi ) h(xi )]2
i=1

Rsolution gnrale du problme


Cet exercice se prte bien un traitement matriciel. On pose :
0
x1
h(x1 )

.
.
..
H=
= ..
h(xm )
x0m

a0
xn1
.. .. = Xa
. .
an
xnm

g(x1 )

..
G=

.
g(xm )

et

On a alors :
f =(H G)T (H G)
=H T H + GT G 2GT H(car GT G est un scalaire)
=aT X T Xa + GT G 2GT Xa

Par dfinition, X T X est une matrice symtrique ; et en posant Q = 2X T X


et b = 2X T G, on se ramne la fonction quadratique de lexercice prdcent.
Donc :
f
(a) = aT Q + bT
a
3

La condition du premier ordre nous donne :


aT Q + bT = 0 = a = bT Q1 = QT b
La matrice X T X est diagonalisable. En effet, Q = X T X :

0
0
a0
a0
x1 xn1
x1 x0m
..
.. ..
..
.
.
.
.
Q= .
. .
. . .
an
an
x0m xnm
xn1 xnm
m
P i+j2
xk
: Q est bien symtrique. Par ailleurs,
Donc qij =

v Rn+1 ,

k=1

v T Qv = v T X T Xv = (Xv)T (Xv) = ||Xv|| 0.


Donc X T X est semi-dfinie positive ; donc Q est semi-dfinie positive (car
Q = 2X T X). Loptimum a trouv est donc bien un mimimum au sens des
moindres carrs.

Application numrique
Dans lapplication :

1
X= 1
1

1
2
3

8
et G = 25
52

On obtient :
XT X =

3
6

6
14

et X T G =

85
214

Nous cherchons a = QT b, donc Q1 et b :


Q1 = (2X T X)1 =

1
12

14
6

6
3

= QT

et

b = 2X T G =

170
428

Par consquent :
a = (2X T X)1 (2X T G) =
Donc, h(x) = 22x

47
3
22

47
3 .

Nous pouvons vrifier la validit de cette approximation car h(1) = 6, 33,


h(2) = 28, 33 et h(3) = 50, 33 pour g(1) = 8, g(2) = 25 et g(3) = 52.

Exercice 3 : Production
Remarques dordre gnral pour loptimisation
Dans cet exercice, nous cherchons maximiser une quantit. Notre problme
peut donc tre modlis de la faon suivante :
max qh(x1 . . . xn )
xi 0

n
X
i=1

pi xi

Nous ngligerons les contraintes de positivit ; et nous les vrifierons a posteriori. En effet, chaque xi est ncessairement positif car il reprsente une quantit
de matire premire.
La condition du premier ordre pour trouver un optimum est dannuler le
gradient.
i {1, . . . , n},

h(x1 . . . xn )
f
(x1 , . . . , xn ) = q
pi
xi
xi

La condition du second ordre est davoir un Hessien semi-dfini ngatif (resp.


dfini ngatif) afin davoir un maximum (resp. strict). Ici,

2
2h
. . . x 1 xhn
2
x

2f
..
..

= q
.
.

2
x
2
2
h
h
...
xn x1
x2
n

Application 1
1

Soit h(x1 , x2 ) = x13 x23 . La condition du premier ordre nous donne :


"
#
2
1
q 3 3
f
x
x

p
1
= 3q 11 22
=0
x
x 3 x 3 p2
3 1

Il nous faut rsoudre le systme :

1
2
q 3 3
3 x11 x22
q 3 3
3 x1 x2

x 13 = 3p1 x13
p1 =0
2
q

2
1

p2 =0
x 3 = 3p2 x23
1
q

27p31 x21
q3
27p32 x22
x1 = q 3

x2 =

(1)
(2)

On injecte (1) dans (2) :


1 21
)
q3 q3
1 1
=27p32 (272 p61 x41 6 ) 3
q q
1
=273 p61 p32 x41 18
q

x1 =27p32 (27p31 x21

x31 =

q 18
273 p61 p32

x1 =

q3
27p21 p2

Le raisonnement est identique pour x2 ; et avec p1 = p2 = 1, x1 = x2 =


La condition du second ordre nous donne :
"
#
5 1
2 2
q
2f
(2x1 3 x23 ) 9q (x1 3 x2 3 )
9
=
1
2 2
5
q
x2
(x 3 x 3 ) q (2x 3 x 3 )
9

q3
27 .

Au point x
considr, le Hessien est :

9
2f
2
(
x
)
=
1
x2
q3

1
2

Ici, le dterminant est positif (il vaut 3) et la trace est ngative (elle vaut 4) ;
donc le produit des valeurs propres est positif et leur somme est ngative. Par
consquent les deux valeurs propres sont du mme signe et de somme ngative :
les deux valeurs propres sont ngatives.
Si lon veut sen convaincre par le calcul, le polynme caractristique vaut :


2

1

= (2 + )2 1 = ( + 1)( + 3)
P () =
1
2

Application 2
Soit h(x1 , x2 ) = x21 + x22 . La condition du premier ordre nous donne :


f
2qx1 p1
=
=0
2qx2 p2
x
Nous avons donc x1 =

p1
2q

et x2 =

p2
2q .

La condition du second ordre nous donne :




2f
2q 0
=
0 2q
x2
Or, le Hessien est dfini positif. Nous avons trouv un minimum alors que
nous cherchions un maximum.
Dans cette application, le bon sens peut nous permettre de trouver directement ce rsultat. En effet, on peut produire indiffremment le produit final avec
du produit 1 ou du produit 2. Or le produit 2 cote moins cher : on ne va donc
utiliser que du produit 2.
De plus, avec p2 = 1 et q = 1, on a un bnfice de x22 x2 . Or cette quantit
est dcroissante et borne sur [0, 1] tandis quelle est croissante sur [1, +[ et
lim x22 x2 = .
x2

Plus on augmente la production, plus on augmente le bnfice. Le maximum


est atteint en x2 = +. Il ny a donc pas de maximum rel au problme.
Cela traduit graphiquement le fait que lon cherche le maximum dune fonction
convexe (coercive) : il est en +. On ne peut trouver des maxima dans R que
pour des fonctions (localement) concaves.

TD 2 : Qualification
Exercice 1 : directions et cnes admissibles
Premier domaine
= {(x, y) R2 : (x 1)2 + y 2 1 = 0 et x2 + (y 1)2 1 = 0}

(Approche graphique) Quest-ce quune direction admissible ? Considrons un domaine dans Rn et un point donn x
de ce domaine, une direction est
admissible si lon peut se dplacer dans cette direction partir du point x
sans
sortir du domaine. Lensemble des directions admissibles en un point est not
Dx ().
Pour notre exercice, nous pouvons remarquer que = {(0, 0)(1, 1)}. Ainsi au
voisinage de (0, 0), le domaine est vide. Il est donc impossible de se dplacer sur le
domaine dans une direction autre que le vecteur nul. Ainsi D(0,0) () = {(0, 0)}.
En effet, le vecteur nul est toujours une direction admissible (il est toujours
possible de ne pas se dplacer).
(Approche par la dfinition) Bien entendu, une direction admissible est
dfinie formellement.
Dfinition 1 (Direction admissible). Soit un domaine Rn et un point x

de ce domaine. Le vecteur v Rn est une direction admissible si et seulement


si C 1 (R+ , Rn ) telle que :
(0) = x

0 (0) = v
> 0, 0 < t < , (t)

Si lon se considre au point (0, 0), par dfinition (0) = (0, 0). Comme
est continue et que, pour t petit, (t) , la seule fonction respectant ces
deux proprits est (t) = (0, 0). On peut sen convaincre en raisonnant par
labsurde :
Supposons quil existe une direction admissible v 6= (0, 0). La formule de
Taylor applique au correspondant nous indique que (t) = (0) + 0 (0).t +
o(t). Or (t) . Donc (t) = (0, 0) ; par consquent vt + o(t) = (0, 0). On sait
o(t)
que lim o(t)
t = (0, 0). Or t = v et v 6= (0, 0) par hypothse. Cest absurde : il
t0

nexiste donc pas de direction admissible non nulle. Un raisonnement identique


peut tre tenu si lon se considre au point (1, 1)
(Approche par la rgularit) La notion de rgularit ne sapplique quaux
contraintes galits. On dit que les contraintes sont rgulires en un point x

si et seulement si leurs gradients en ce point forment une famille libre. Si lon


considre des contraintes rgulires alors Dx () = ker(g(
x)) o g est le vecteur
des contraintes galits gi . Dans notre exercice, nous avons deux contraintes :
g1 (x, y) = (x 1)2 + y 2 1 et g2 (x, y) = x2 + (y 1)2 1. Les gradients des
contraintes sont :




2(x 1)
2x
g1 (x, y) =
et g2 (x, y) =
2y
2(y 1)
et au point considr :

g1 (0, 0) =

2
0


et g2 (0, 0) =

0
2

Comme il y a indpendance linaire entre ces deux vecteurs, les contraintes


sont rgulires ; donc :


2 0
D(0,0) () = ker
= {(0, 0)}
0 2

Deuxime domaine
= {(x, y, z) R3 : (x 1)2 + y 2 1 = 0 et x2 + (y 1)2 1 = 0}
Si R3 alors = {(0, 0, z), (1, 1, z)}. En se plaant au point x
= (0, 0, z)
ou x
= (1, 1, z), on ne peut se dplacer sans sortir du domaine que le long de
laxe z. Par consquent Dx () = {(0, 0, z) : z R}

Troisime domaine
= {(x, y) R2 : (x 1)2 + y 2 1 0 et x2 + (y 1)2 1 0}

(Approche graphique) En se plaant en x


= (0, 0), on voit que lon peut
se dplacer dans les directions (v1 , v2 ) R2 si v1 > 0 et v2 > 0. Quen est-il des
axes ? Le cne des directions admissibles est lenveloppe convexe de Dx () donc
les demi-axes sont inclus. En dautres termes, le cne dadmissibilit tant un
ferm, les tangentes Dx () y sont incluses. Nous allons voir formellement que
C(0,0) () = {(v1 , v2 ) R2 : v1 0, v2 0}.
(Approche par la dfinition) Nous cherchons les (v1 , v2 ) R2 tels que (0) =
(0, 0), 0 (0) = (v1 , v2 ) et (t) pour tout t petit et positif. Nous allons
donc chercher crire une fonction qui convient (satisfait les proprits de
la Dfinition ??) pour les diffrentes valeurs de (v1 , v2 ), cest--dire pour vi
strictement positif, pour v1 = 1 et v2 = 0, pour v1 = 0 et v2 = 1 et pour un des
vi ngatif.
Pour v1 > 0 et v2 > 0, nous pouvons poser (t) = (v1 , v2 )t. En effet, est
continue ; (0) = (0, 0), 0 (t) = (v1 , v2 ) (donc 0 (0) = (v1 , v2 )) et pour t petit,
(t) .
Pour v1 = 1 et v2 = 0, nous pouvons prendre par exemple (t) = (t, t2 ). En
effet, est continue ; (0) = (0, 0) et 0 (t) = (1, 2t) (donc 0 (0) = (1, 0)). Il
nous reste prouver que pour t petit, (t) reste dans le domaine. Il est trivial
de le vrifier pour la premier contrainte. Quant la seconde, on a (avec x = t
et y = t2 :
t2 + (t2 1)2 1 = t2 + t4 2t2 + 1 1 = t4 t2
Cette quantit est ngative pour 0 < t < 1 : la contrainte est donc bien
vrifie. Par consquent, (t) . Un raisonnement identique pour v1 = 0 et
v2 = 1 o (t) = (t2 , t) peut tre tenu.
Pour v1 < 0 ou v2 < 0, raisonnons par labsurde en supposant quil existe
une fonction admissible. On peut alors crire pour et t tendant vers 0 le
dveloppement de Taylor lordre 1 :

(0).t + o(t)
t
(t) =(0) + 0 (0).t + o(t)
(t) =(0) +

Or (0) =

v1
v2


; et par dfinition du reste de Taylor : lim

t0

||o(t)||
t

= 0.

Donc > 0 : t < ,

||o(t)||
t


< min(|v1 |, |v2 |) ; donc
1

v1
v2


.t + o(t) a une

composante ngative ; donc C (R , R ), (t) 6 .


Nous pouvons en dduire que C(0,0) () = {(v1 , v2 ) R2 : v1 0 et v2 0}.
(Approche par la qualification) Les contraintes sont qualifies si elles
sont convexes et que lintrieur du domaine est non vide. Il existe dautres proprits, vues en cours, permettant de conclure la qualification des contraintes.
Ici, le Hessien des contraintes est le suivant :


2 0
H=
0
0 2
Le Hessien H est dfini positif : les contraintes sont convexes ; et il est trivial
de montrer que lintrieur du domaine est non vide. Les contraintes sont donc
qualifies.
Si les contraintes hi sont qualifies, nous savons que :
hi
(
x).v 0}
x
(Rappel) : A(
x) est lensemble des contraintes actives (ou satures) au point
considr. Une contrainte hi est sature en x
si hi (
x) = 0.
Cx () = Gx () = {v Rn : i A(
x),

Dans notre exercice, les deux contraintes sont satures en (0, 0). Nous cheri
chons donc : {(v1 , v2 ) R2 : h
x).(v1 , v2 ) 0}
x (





v1


0
2 0 .
2v1 0
 v2 
=


2v2 0
v

0
0 2 .
v2
Par consquent, v1 0 et v2 0 ; et :
C(0,0) () = G(0,0) () = {(v1 , v2 ) R2 : v1 0 et v2 0}

Exercice 2
Soit le problme doptimisation suivant :
(P ) : min x i (x1 )

1 = {(x1 , x2 ) R2 : x1 + x2 1 0, x1 2x2 + 1 0, x1 0, x2 0}

2 = {(x1 , x2 ) R2 : (x1 + x2 1)(x1 + 2x2 1) 0, x1 0, x2 0}

10

Approche graphique
x2

1
1
2

x1

Nous pouvons remarquer que les deux ensembles 1 et 2 correspondent


graphiquement un mme domaine. Il sagit donc dun domaine identique exprim de deux manires diffrentes. Nous allons voir que la manire dcrire les
contraintes va avoir une influence sur la rsolution du problme.
Ici, nous pouvons voir que la solution du problme (P ) est x
= (1, 0).

Cnes admissibles pour 1


Dterminons G(1,0) (1 ). En ce point, il y a trois contraintes satures :
h1 : x1 + x2 1 0
h2 : x1 2x2 + 1 0
h3 : x2 0

Calculons les gradients des contraintes :


 


h2
h1
1
1
(
x) =
(
x) =
1
2
x
x

h3
(
x) =
x

0
1

Ainsi :
 




1
1
0
G(1,0) (1 ) = {
.v 0} {
.v 0} {
.v 0}
1
2
1
Nous pouvons remarquer que chaque sous-ensemble correspond lexpression
dune des contraintes satures. Comme v1 + v2 0 et v1 2v2 0, on a
ncessairement v2 0. La troisime contrainte est toujours vrifie. Donc :
 


1
1
G(1,0) (1 ) = {
.v 0} {
.v 0}
1
2
Nous vrifions bien que G(1,0) (1 ) = C(1,0) (1 ). Les contraintes sont donc
qualifies, confirmant ainsi le thorme de qualification (voir cours).

11

Cne admissible pour 2


Dterminons G(1,0) (2 ). En ce point, il y a deux contraintes satures :
h1 : (x1 + x2 1)(x1 + 2x2 1) 0
h2 : x2 0

Calculons les gradients des contraintes :


h1
=
x

2x1 + 3x2 2
3x1 + 4x2 3

h1
(
x) =
=
x

0
0

h2
(
x) =
x

0
1

Ainsi :




0
0
G(1,0) (2 ) = {
.v 0} {
.v 0} = {(0, 0)}
0
1
Nous pouvons remarquer que lensemble G(1,0) (2 ) nest pas gal au cne
des directions admissibles (identique D(1,0) (1 )) : les contraintes ne sont pas
qualifies.

Interprtation
Pour un mme problme, la manire dcrire les contraintes va influer sur
leur qualification. Ceci est important car les contraintes doivent tre qualifies
pour que lon puisse appliquer les thormes vus en cours. Cette application
illustre le fait que la qualification des contraintes dpend de leur criture et
nest pas une proprit intrinsque de lensemble des points dcrits par .
En dautres termes, bien poser le problme cest lavoir dj rsolu.

Exercice 3
Considrons la fonction paramtre :
3
fm (x) = mx31 + x21 + x22 + 3x23 2x2
2

Optimisation sans contrainte


Dans cet exercice, nous chercherons optimiser la fonction sans contrainte
puis nous vrifierons a posteriori que loptimum se trouve dans le domaine.
Cherchons donc une solution x
R3 en satisfaisant les conditions du premier
et du second ordre.

3mx21 + 3x1
f
= 2x2 2 = 0
x
6x3
Nous avons deux cas, m = 0 et m 6= 0. Si m = 0 alors x1 = 0, x2 = 1 et
1
x3 = 0. Si m 6= 0 alors x1 = 0 ou x1 = m
, x2 = 1 et x3 = 0.
12

6mx1 + 3 0 0
2f
0
2 0
=
x2
0
0 6
Si m = 0 alors le Hessien est dfini positif et (0, 1, 0) est un minimum global
de fm . Si m 6= 0 alors le Hessien est dfini positif pour (0, 1, 0) mais pas pour
1
, 1, 0). Par consquent, la solution x
est (0, 1, 0).
( m

Satisfaction des contraintes


Soit = {x R3 : x2 > 0}. La solution x
trouve est bien dans le domaine
.
Soit = {x R3 : x2 > 1}. La solution x
trouve est sur la frontire du
domaine mais nen fait pas partie. Il nexiste pas de solution au problme car
quel que soit le point considr on peut toujours trouver un point du domaine
plus optimal.
Soit = {x R3 : x2 2}. La solution x
trouve nappartient pas au
domaine. Cependant, il est possible de trouver un point sur la frontire du
domaine (lui appartenant) qui minimise pourtant la fonction. Optimiser une
fonction et vrifier a posteriori que les contraintes sont satisfaites ne suffisent pas
pour trouver cet optimum : les contraintes doivent tre intgres la rsolution
du problme.

13

TD 3 : Problmes avec
contraintes galits
Exercice 1
Modlisation
Notre problme est le suivant :
(P ) : min f (x1 , x2 ) = 2x1 + 3x2 1 avec

(x1 , x2 ) R2

3
sous la contrainte g(x1 , x2 ) = x21 + x22 6 = 0
2
Il nous faut dans un premier temps vrifier la rgularit des contraintes
(puisquil sagit de contraintes galits) afin de pouvoir utiliser les thormes
vus en cours. Les contraintes galits sont rgulires si leurs gradients forment
une famille libre. Ici, nous navons quune seule contrainte : son gradient est un
seul vecteur qui est toujours libre (sil est non nul).


2x1
g
Ici, x (x) =
.
3x2
g
x (x) sannule en (0, 0) mais ce point ne fait pas partie du domaine : les
contraintes sont donc rgulires sur tout .
Nous pouvons alors poser le Lagrangien :
3
L(x1 , x2 , ) = 2x1 + 3x2 1 + (x21 + x22 6)
2

Condition du premier ordre


(dont les compoEn un point x
solution du problme, il existe un vecteur
santes sont les multiplicateurs de Lagrange) tel que le gradient du Lagrangien
est nul. Si les contraintes sont rgulires, le vecteur
est unique. Dans
en (
x, )

notre exercice, nous navons quune contrainte : est un scalaire.




L
2 + 2x1
=
=0
3 + 3x2
x
Par consquent, x1 = x2 = 1
14

Pour trouver , injectons le rsultat prcdent dans la contrainte g :


1
3
+ 2 6 =0
2

2
5
=6
22
5
2 =
12 r
=

5
12

q q
12
0 =
Nous avons donc deux candidats loptimalit x
= ( 12
5 ,
5 ) et x
q
q
12
( 12
5 ,
5 ).
La condition du premier ordre ne suffit pas pour conclure car les contraintes
ne sont pas affines.

Condition du second ordre


Au deuxime ordre, le Hessien doit tre dfini positif dans le cne admissible
2
Dx . Plus formellement, v Dx , v T xL2 (
x)v 0.


2L
2 0
(
x) =
0 3
x2
est ngatif,
Le Hessien est dj diagonal. Nous pouvons remarquer que si

T 2L
T
positif, v Dx0 , v 2 L2 v 0.
v Dx , v x2 v 0 ; tandis que pour
x
Ainsi, seule la solution x
0 vrifie la condition
ordre. Nous sommes
q
q du second
12
12
en prsence dun minimum ; et (x1 , x2 ) = ( 5 , 5 ).
Comme lilluste la figure, lautre point correspond au maximum sur le domaine.

15

Exercice 2
Il nous faut trouver le pav de dimension x, y, z dont le volume est maximum
et de surface donne c.

Modlisation
Nous pouvons modliser notre problme de la manire suivante :
(P ) : min f (x, y, z) = xyz

avec

(x, y, z) R3

sous la contrainte g(x, y, z) = (xy + yz + xz)

c
=0
2

Nous devons y ajouter trois autres contraintes : x, y, z doivent tre strictement positif ; donc (x, y, z) R+3 . Ce domaine est ouvert et nous ne pouvons
optimiser dessus. Il nous faut raisonner sur un ferm et vrifier a posteriori que
la solution se trouve dans le domaine (et non pas sur la frontire).
Comme dans lexercice prcdent, il nous faut vrifier la rgularit des contraintes. Comme il ny a quune seule contrainte, le gradient des contraintes est
un unique vecteur (non nul sur ), toujours libre. Les contraintes sont rgulires.
Nous pouvons poser le Lagrangien. Posons X = (x, y, z)
L(X, ) = xyz + (xy + yz + xz)

c
2

Condition du premier ordre

yz + (y + z)
L
= xz + (x + z) = 0
X
yx + (x + y)
Il nous faut rsoudre le systme :

yz + (y + z) =0

xz + (x + z) =0
yx + (x + y) =0

xy + xz + zx 2c =0

(1)
(2)
(3)
(4)

On crit (1) (2) :


yz + (y + z) + xz (x + z) =0
xz yz + y x =0
z(x y) + (y x) =0
(z )(x y) =0

Nous avons deux solutions : z = ou x = y. Dans le premier cas, remplaons


z dans (1) :
16

y + y 2 = 0

= 0 et z = 0

La dimension z ne peut pas tre nulle ; donc x = y. Remplaons y dans (3) :


x2 2x = 0 = x = y = 2
Remplaons dans (2) :
2z + 22 + z = 0 = z = 22 = z = 2 = x = y
Notre solution est un cube. Dterminons maintenant en linjectant dans
la contrainte :

(42 + 42 + 42 )

c
= 0 = 242 = c = =
2

c
1
=
24
2

Comme x, y, z doivent tre positifs, doit tre positif ; donc =


p
x = y = z = 2 = 6c

c
6
pc
1
2

et

La condition du premier ordre ne suffit pas pour conclure car les contraintes
ne sont pas affines.

Condition du second ordre


Le Hessien doit tre dfini positif
Ici,
partir du point solution X.

0
2
L
0
(
X)
=

X 2

dans toutes les directions admissibles

0
0
= 1
1
0

1
0
1

0
1
0

L
Les valeurs propres de X
2 (X) sont {, , 2}. On ne peut conclure la
3
positivit du Hessien sur R . Il faut donc regarder plus prcisement lensemble
Soit v D (). Comme les contraintes sont
des directions admissibles en X.
X

rgulires, v ker g(X). Ici,

1
g
(X) = 4 1
X
1

Donc v = (v1 , v2 , v3 ) DX () si et seulement si v1 + v2 + v3 = 0 ; et nous


2L
pouvons examiner v T X
2 (X)v :

0 1 1
v1
2


L
vT
(X)v = 2 v1 v2 v3 1 0 1 v2
X 2
1 1 0
v3

17

vT

2L
(X)v = (v1 (v2 + v3 ) + v2 (v1 + v3 ) + v3 (v1 + v2 ))
X 2
= ((v2 + v3 )2 + v2 (v2 ) + v3 (v3 ))
= ((v2 + v3 )2 v22 v32 )
=((v2 + v3 )2 + v22 + v32 )

Comme > 0 et v1 + v2 + v3 = 0, v T xL2 v 0. La condition du second ordre

est vrifie et nous avons bien trouv un minimum en X.

Exercice 3
Dans cet exercice, nous dsirons trouver une loi de probabilit P qui maximise lentropie pour une variable alatoire X (prenant les valeurs x1 . . . xn avec
une probabilit p1 . . . pn ) et dont la valeur moyenne est un m donn.

Modlisation
Nous pouvons modliser notre problme de la manire suivante :

(P b) : max
f (P ) =
+n
P R

n
X

pi log2 (pi )

i=1

sous la contrainte g1 (P ) =
sous la contrainte g2 (P ) =

n
X
i=1
n
X

pi 1 = 0
pi xi m = 0

i=1

On nglige les contraintes de positivit. Nous les vrifierons a posteriori. Afin


de vrifier la rgularit des contraintes, calculons le gradient des contraintes :

1 x1
g

..
= ...
.
P
1 xn
Si lon fait lhypothse quau moins deux xi sont distincts, les colonnes du
gradient forment une famille libre : les contraintes sont rgulires et nous pouvons poser le Lagrangien :
L(P, ) =

n
X

n
n
X
X
pi log2 (pi ) + 1 (
pi 1) + 2 (
pi xi m)

i=1

i=1

18

i=1

Condition du premier ordre

L
=
P
Comme log2 (pi ) =

log2 (p1 ) +
log2 (pn ) +

ln(pi )
ln 2 ,

1
ln 2

+ 1 + 2 x1

..
.

1
ln 2

=0

+ 1 + 2 xn

nous obtenons n quations de la forme suivante :

1
+ 1 + 2 xi = 0
ln 2
ln(pi )
1
=
1 2 xi
ln 2
ln 2
1
1 2 xi )
ln(pi ) = (ln 2)(
ln 2
1
pi = 2( ln 2 1 2 xi )
log2 (pi ) +

Ce systme ne peut tre rsolu analytiquement de faon simple. Nous vous


proposons alors de retirer une contrainte : celle sur la valeur moyenne prise par
la variable X.
Dans ce cas, le Lagrangien est :
L(P, ) =

n
X

n
X
pi log2 (pi ) + (
pi 1)

i=1

i=1

La condition du premier ordre nous donne :


1

pi = 2( ln 2 )
En intgrant ce rsultat dans la contrainte, nous obtenons :
n
X

2( ln 2 ) = 1

i=1
1

( ln12 )

Comme 2
est un rel fix alors 2( ln 2 ) =
pi = n1 . Cest la loi uniforme qui maximise lentropie.

1
n.

Par consquent, i,

Nous pouvons alors remarquer que la contrainte est affine, auxquel cas la
condition du premier ordre est ncessaire et suffisante.

19

TD4 : Problmes avec


contraintes ingalit
Exercice 1 : Programmation quadratique
Soit Q Rnn un matrice dfinie positive, a et b dans Rn avec a 6= 0 et
c R.
On veut rsoudre

(P ) : min f (x),

avec

h(x)0

f (x) = 12 xT Qx bT x
x Rn
h(x) = aT x c

La contrainte h est affine, elle est donc qualifie.


On calcule le Lagrangien et ses drives partielles. soit R
1 T
x Qx bT x + (aT x c)
2
L
1
(x, ) = xT (Q + QT ) bT + aT
x
2
1
2L
(x, ) = (Q + QT )
2
x
2
L(x, ) =

2L
x2

(1)
(2)
(3)

est une matrice dfinie positive. Si une solution est trouve avec la
condition du premier ordre pour 0 alors cette solution est bien un minimum.


L
x,
)
x (

= 0

h(
x) = 0

1 T
(Q
2x

+ QT ) bT +
aT = 0
T

(a x
c) = 0
 Q+QT
x

b
+

a
=
0
2

(aT x
c) = 0

T
x
= ( Q+Q
)1 (b
a)
2

(a
x

c)
=
0

x
= 2(Q + QT )1 (b
a)

(a x
c) = 0


1er cas :
=0
Dans ce cas : x
= 2(Q + QT )1 b

20

2me cas :
6= 0
On a alors
aT x
c=0

2aT (Q + QT )1 (b
a)) c = 0

(2aT (Q + QT )1 a) = 2aT (Q + QT )1 b c

On a donc
(

=
x

2aT (Q+QT )1 bc
2aT (Q+QT )1 a
T 1

(b

= 2(Q + Q )

2aT (Q+QT )1 bc
a)
2aT (Q+QT )1 a

Pour que lon ait un minimum, il faut que soit positif, cest dire que
2aT (Q + QT )1 b c.
2aT (Q + QT )1 b c
a)
2aT (Q + QT )1 a
Interprtation : c est lordonne lorigine de la contrainte. Il dfinit donc la
position de lhyperplan de la contrainte par rapport au minimum global. Quand
c devient plus petit que la quantit mentionne plus haut, le minimum global
sort du domaine et la contrainte commence participer tirer le minimum dans
le domaine ( 6= 0). A la limite, on peut remarquer quon a la fois h(x) = 0
et = 0.

Dans ce cas, on a x
= 2(Q + QT )1 (b

Exercice 2
On veut rsoudre le problme suivant :

(P ) :

min
h1 (x1 ,x2 )0
h2 (x1 ,x2 )0

x1 + x2 ,

avec

h1 (x1 , x2 ) =
h2 (x1 , x2 ) =

x2 x1
(x1 , x2 ) R2
x21 + x22 1

x2

x1

Qualification des contraintes


Il faut tout dabord vrifier que les contraintes sont bien qualifies. Pour cela,
i
calculons h
x .




1
2x1
h2
1
On a h
=
et
=
x
x
1
2x2
hi
La famille des x est donc libre si et seulment si on a x1 6= 21 et x2 6= 12 .
Ce couple particulier nappartient pas au domaine souhait pour le problme.
Les contraintes sont donc qualifies.
21

Lagrangien : condition du 1er ordre


Ecrivons le Lagrangien et ses drives partielles. Soient 1 et 2 dans R+ .
L(x1 , x2 , 1 , 2 )
On a donc

=
=

x1 + x2 + 1 (x2 x1 ) + 2 (x21 + x22 1)


2 x21 + (1 + 1)x1 + 2 x22 + (1 + 1)x2 2

L
x1 (x1 , x2 , 1 , 2 )
L
x2 (x1 , x2 , 1 , 2 )

1 1 + 22 x1
1 + 1 + 22 x2

=
=

L
x1 , x
2 ,
1 ,
2 )
x1 (
L
x1 , x
2 ,
1 ,
2 )
x2 (

=
=

1 (
x2 x
1 ) =

2 (
x21 + x
22 1) =

ce qui est quivalent

1
1 + 2
2 x
1

1+
1 + 2
2 x
2

(
x

1 2
1)

2 (
x21 + x
22 1)

=
=
=
=

0
0
0
0

0
0
0
0

1er cas :
1 =
2 = 0
On a alors 1
1 + 2
2 x
1 = 0 1 = 0. Impossible !

2eme cas :
1 = 0 et h2 sature

1 + 2
2 x
1
1 + 2
2 x
2
2
x
1 + x
22 1

= 0
= 0
= 0


2 ( 21 2
2

2 =

x
1 =

x
2 =

3eme cas : x2 = 0 et h1 sature

1x
1
1+x
1

x
2 x
1

= 0
= 0
= 0

On a donc 1 = 0, ce qui est Impossible !

22

x
1 =
x
2 =
1) =

2
2

22
22

21 2
21 2
0

4eme cas : h1 et h2 satures


Les deux contraintes sont satures, on a donc x
1 = x
2 et x
21 + x
22 = 1.
On a alors (
x1 , x
2 ) = (

2
2
2 , 2 ).

En soustrayant les deux premires quations issues de la drivation du Lagrangien, on trouve


1 = 0 et
2 = 2x1 2 . On cherche 2 0, cela nous permet

dliminer un des deux cas, on a au final : (


x1 , x
2 ,
1 ,
2 ) = ( 22 , 22 , 0, 22 ).
On peut remarquer que 1 = 0, on a bien retrouv le rsultat du second cas,
ce qui illustre le fait que le minimum est trouv pile sur la contrainte sans que
cette dernire ne participe le tirer dans un sens ou un autre.
f est affine et les contraintes sont convexes, la condition doptimalit du
premier ordre suffit donc conclure que lunique point trouv est bien un minimum. Pour sentraner, on peut tout de mme aller vrifier la condition du
second ordre.

Lagrangien : Condition du 2eme ordre et solution


On voit donc que la seule solution possible est

1 = 0

=
2
2
2
x1 = 22

x2 = 22


2
2
2
2
0
On a xL2 (
x,
) =
. 2 > 0 donc xL2 est dfinie positive.
0
2
2

2
2
,

2
2 )

Le minimum est donc bien atteint en (

Exercice 3
On remarque quil sagit l de la gnralisation de lexercice 2 des fonctions
affines et deux contraintes affine et quadratique quelconques.
Soient a un vecteur de Rn \ {0}, Q une matrice deRnn symtrique dfinie
positive, et b et c deux rels avec c > 12 aT Qa.
On considre les fonctions h1 et h2 de Rn dans R dfinies par
h1 (x) = aT x
1
h2 (x) = xT Qx c
2
On veut rsoudre
(P ) : min(aT x b), avec = {x Rn : h1 (x) 0 et h2 (x) 0}
x

23

Qualification des contraintes


2 h1
x2

= 0 donc h1 est convexe (0 dsigne ici la matrice nulle).


= Q 0 donc h2 est convexe.
On a h1 (a) < 0 et h2 (a) < 0 donc le domaine est non-vide : les contraintes
sont qualifies sur .
2

h2
x2

Lagrangien et condition du 1er ordre


Soient 1 et 2 dans R.
1
L(x, 1 , 2 ) = aT x b + 1 aT x + 2 xT Qx 2 c
2
L
(x, 1 , 2 ) = aT + 1 aT + 2 xT Q
x
Avec la condition du 1er ordre, on a le systme suivant :
T
2 x
T Q = 0
a + 1 aT +
T

1 a x

= 0

2 ( 21 x
T Q
x c)
= 0

1er cas :
1 = 0 et
2 = 0
Dans ce cas, on obtient aT = 0 avec la premire quation du systme, ce qui
est en contradiction avec notre hypothse sur a. Ce cas est donc impossible !

2eme cas : h1 est active et


2 = 0
La premire quation nous donne
1 + 1 = 0. Cela implique que 1 > 0, ce
cas est donc impossible !.

3eme cas : 1 = 0 et h2 est active


On a
 T
a +
2 x
T Q = 0
1 T
Q
xc
= 0
2x

= 12 Q1 a
x
T Q
x = 2c
(
1
T T
a Q QQ1 = c
2
22

= 12 Q1 a

q
aT QT a

2 =
q 2c

2c
1
x
=
a
T
T Q


a Q

4eme cas : h1 et h2 sont actives


La premire quation nous indique que (1 +
1 )a =
2 Qx et donc que
1 1
x
= 1+
Q
a.
2

24

1 T 1
a = 0.
Or la seconde quation prcise que aT x = 0, on a donc : 1+
2 a Q
T
Or a Qa 6= 0 car a 6= 0 et Q dfinie positive. Donc
1 = 1, ce qui est impossible !.

Comme lexercice prcdent, il est immdiat de vrifier que f est affine


et que les contraintes sont convexesq: le thorme doptimalit au premier ordre
suffit conclure que le point x
= aT Q2cT a Q1 a (qui existe toujours) est bien
un minimum. On peut sentraner vrifier la condition du second ordre.

Lagrangien et condition du 2eme ordre


2

On a xL2 (
x,
) = Q 0 car Q est dfinie positive. La solution trouve est
donc le minimum global sous contraintes.

25

TD5 : Dualit
Exercice 1
Soient a1 , a2 et c dans R avec (a1 , a2 ) 6= (0, 0). On veut rsoudre :
(P ) :

min

f (x1 ,x2 )=(x21 +x22 )

a1 x1 + a2 x2 c 0

On pose = {(x1 , x2 ) : h(x1 , x2 ) = a1 x1 + a2 x2 c 0}.


x2
c
a2

c
a1

x1

Problme primal - problme dual


Le problme primal est
inf sup L(x, )

xR2 0

Le problme dual est


sup inf2 L(x, )

0 xR

Qualification des contraintes


La fonction h est affine et donc qualifie.

Lagrangien - fonction duale


Soit R, (x1 , x2 ) R2
L(x1 , x2 , ) = x21 + x22 + (a1 x1 + a2 x2 c)
On note () la fonction duale.
() =

inf

x1 ,x2 R2

26

L(x1 , x2 , )

L
x (x1 , x2 , )

=0

L
x1 (x1 , x2 , )
L
x2 (x1 , x2 , )

=
=

2x1 + a1 = 0
 2x2 + a1 a1= 0
x1 = 2
x2 = a22

0
0

f et h sont convexes. (x1 , x2 ) est donc un minimum.


On a donc
2
() = L(x1 , x2 , ) = (a21 + a22 ) c
4
Rsoudre le problme dual revient rsoudre
sup psi()
0

On calcule donc psi0 ().

psi0 () = (a21 + a22 ) c


2

1er cas : c 0
Dans ce cas, 0, psi0 () 0. psi() est donc dcroissante. Le maximum
est alors atteint pour = 0, cest dire x1 = x2 = 0

2eme cas : c < 0


Dans ce cas, on a
psi0 () = 0 2 (a21 + a22 ) = C
= a22c
+a2
1

0
psi0 ()

x1 =

()
On a alors

2c
a21 +a22

&

a1 c
a2 c
, x2 = 2
2
+ a2
a1 + a22

a21

Exercice 2 : Programmation quadratique


Cet exercice est lquivalent de lexercice 1 du TD4.
Soit Q une matrice de Rnn symtrique dfinie positive, a et b dans Rn avec
a 6= 0 et c R. On veut rsoudre

f (x) = 12 xT Qx bT x
(P ) : min f (x) avec
, x Rn
h(x) = aT x c
h(x)0

27

Qualification des contraintes


h est affine donc qualifie.

Lagrangien - fonction duale


f et h sont convexes. On crit le Lagrangien et la fonction duale qui lui
est associe. Soit R.
L(x, ) =

1 T
x Qx bT x + (aT x c)
2

() = infn L(x, )
xR

.
L
x, )
x (

= 0 12 x
T (Q + QT ) bT + aT = 0
Q
x b + a = 0
x
= Q1 (b a)

On a donc :
1
1
1
() = 2 [ aT Q1 aaT Q1 a]+[ aT Q1 b bT Q1 a+bT Q1 a+aT Q1 bc]
2
2
2
1
+ bT Q1 b bT Q1 b
2
cest dire :
1
1
() = 2 [ aT Q1 a] + [aT Q1 b c] bT Q1 b
2
2
On a donc :
0 () = aT Q1 a + aT Q1 b c
0 (
) = 0
=

aT Q1 b c
aT Q1 a

1er cas : aT Q1 b c 0
Dans ce cas, 0, 0 () 0. () est donc dcroissante. Le maximum
est alors atteint pour = 0, cest dire x
= Q1 b .

2eme cas : aT Q1 b c > 0


aT Q1 bc
aT Q1 a

0
0 ()

()

&

28

Le minimum est atteint pour


aT Q1 b c
a)
aT Q1 a

x
= Q1 (b

On retrouve bien le rsultat de lexercice 1, TD4.

Exercice 3
Soit c R tel que c < 0. On dfinit les fonctions f , h : Rn R par
Pn
f (x) = Pi=1 x4i
, x = (x1 , . . . , xn )T Rn
n
h(x) = ( i=1 xi ) c
On veut rsoudre
(P ) : min f (x) avec = {x Rn : h(x) 0}
x

Question 1 : f convexe
On a

..
.

f
4x3i
(x) =

x
..
.

et

(x) =
x2
2f
x2

12x21

0
..

.
12x2n

0 donc f est convexe.

Question 2 : Problme dual


Soit R. On a
L(x, ) =

n
X

n
X
x4i + (
xi ) c

i=1

i=1

.
L
x, )
xi (

4
x3i + = 0
1
x
i = 4 3
1
1
f est convexe donc x
= ( 4 3 , . . . , 4 3 )T est bien un minimum.
On crit alors la fonction duale :
=0

29

() = L(
x, )

 13

Pn

i=1 ( 4
4

3

4
4
1
3

n (

=
=

4
3

n (

)
4

3
1

43
1
1

4 31
43
4
4 3 4 3
5

43

4
3

Pn

i=1 ( 4

c
) c

) c

On cherche inf ().


0

0 () = 0

1
4
3
31
4
3
3
1

c=0
=c

3c
3 = 4

3c 3
= 4

et c sont ngatifs donc on a bien un positif.


On a donc
  13
3c 1
3c
c
x
i =
=
=
1 = 4
4
4 4 3
n
43
c
c
et x
= ( , . . . , )T
n
n

30

 13

) c