Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Opti l3

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 49

Aide mémoire d’optimisation élémentaire

Classification MSC 2000: 49-01, 65-01, 90-01

1
B. Rousselet

en cours de rédaction fvrier 2006

1
Laboratoire de Mathématiques, Parc Valrose, F 06108 Nice, Cédex 2, email :
br@math.unice.fr
Table des matières

1 Introduction ; optimisation sans contraintes 2


1.1 Premiers pas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.1 Orientation . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.2 Notations . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.3 Rappel de calcul différentiel : . . . . . . . . . . . . . . . . 3
1.2 Résultats de base . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3 Projection sur un sous -espace paramétré . . . . . . . . . . . . . 8
1.3.1 Introduction - Notations . . . . . . . . . . . . . . . . . . . 8
1.3.2 Résolution au sens des moindres carrés . . . . . . . . . . . 9
1.3.3 Projection et résolubilité . . . . . . . . . . . . . . . . . . . 11
1.4 Systèmes surdéterminés . . . . . . . . . . . . . . . . . . . . . . . 13
1.5 Minimisation dans IRn . . . . . . . . . . . . . . . . . . . . . . . . 14
1.5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.5.2 Rappel de calcul différentiel . . . . . . . . . . . . . . . . . 15
1.5.3 Résultats de base . . . . . . . . . . . . . . . . . . . . . . . 16
1.5.4 Convexité, ellipticité . . . . . . . . . . . . . . . . . . . . . 18
1.6 Algorithmes pour l’optimisation sans contraintes... . . . . . . . . 19
1.6.1 Algorithme du gradient . . . . . . . . . . . . . . . . . . . 19
1.7 Mise en oeuvre d’algorithmes . . . . . . . . . . . . . . . . . . . . 21

2 Minimisation avec contraintes 23


2.1 Minimisation avec contraintes d’égalités linéaires . . . . . . . . . 23
2.2 Fonction quadratique avec contraintes d’égalités linéaires . . . . . 28
2.2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.2.2 Elimination . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.2.3 Algorithmes d’élimination généralisée . . . . . . . . . . . 29
2.2.4 Triangulation par des matrices orthogonales . . . . . . . . 30
2.2.5 Programmation quadratique (par minimisation sucessive
de fonctions quadratiques avec contraintes d’égalités) . . 33
2.3 Minimisation avec contraintes . . . . . . . . . . . . . . . . . . . . 35
2.3.1 Condition d’optimalité avec contraintes d’égalité . . . . . 35
2.3.2 Minimisation avec contraintes d’inégalités . . . . . . . . . 39
2.4 Sensitivité de la valeur optimale e la fonction . . . . . . . . . . . 46
2.4.1 Introduction, coût marginal . . . . . . . . . . . . . . . . . 46
2.4.2 Résultat . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
—— Fin de la table des matiè res—–

1
Chapitre 1

Introduction ; optimisation
sans contraintes

1.1 Premiers pas

1.1.1 Orientation

Nous considérons dans ce chapitre la minimisation de fonctions en dimension


finie (ce qui signifie dans notre cas un espace vectoriel E de dimension finie sur
IR ; on l’identifiera le plus souvent à IRn ).
Nous considérons d’abord le cas significatif des fonctions quadratiques ; ceci par
souci de simplicité mais aussi parceque au voisinage d’un minimum, une fonction
peut être approchée par une fonction quadratique (écrire une formule de Taylor,
voir équation (1.7)).
Nous verrons dans les chapitres suivants que cela intervient tant du point de
vue théorique qu’ algorithmique : une condition suffisante pour un optimum
local dans Rn est que le Hessien soit défini positif ; l’algorithme de Newton pour
minimiser une fonction consiste à l’approcher par une fonction quadratique ;
les méthodes dites de quasi-Newton reposent sur une variante de cette idée et
constituent une classe très importante d’algorithmes ; voir aussi les algorithmes
d’optimisation avec contraintes.

1.1.2 Notations
– E, Espace vectoriel de dimension finie n

– a : E × E −→ IR, forme bilinéaire symétrique.

– ` : E −→ IR, forme linéaire.

2
Rappelons qu’en dimension finie les formes linéaires et bilinéaires sont conti-
nues ; le produit scalaire dans E est noté (x, y), kxk désigne la norme associée.
n
X Xn
Après choix d’une base (ei )1≤i≤n , x = xi ei y = yj ej
j=1 i=1
   
x1 y1
`(x) = t F x a(x, y) = t y A x où x =  ...  y =  ...  avec Ai j =
   

xn yn
a(ei , ej )
l’expression de droite est un produit matriciel, t y désigne le transposé de y :
t
y = [y1 , ..., yn ] ;
noter la différence de position de y et de y a(x, y) = t y A x ; comme a
est symétrique, A est une matrice symétrique ; quand la base est orthonormée
Xn
(x, y) = xi y¯i = t y x, kxk2 = t x x = kxk2 . Notons que A est aussi matrice de
i=1
l’application linéaire A associée à la forme bilinéaire a : a(x, y) = (Ax, y)
Indiquons que le cas de fonctions en dimension finie est souvent une approxima-
tion de fonctionnelles définie sur des espaces de fonctions de dimension infinie ;
c’est le cas classique de la méthode de Galerkine et en particulier de la méthode
des éléments finis.

Polynômes quadratiques Soit P (x1 , x2 ) = ax21 +bx1 x2 +cx22 +dx1 +ex2 +f ;


son écriture matricielle fait intervenir b/2 :

a b x1
    
x
P (x1 , x2 ) = [x1 , x2 ] b 2 + [c, d] 1 + f
2 c x2 x2

1.1.3 Rappel de calcul différentiel :

Dérivée directionnelle (ou de Gateau)


J : E −→ IR admet au point x une dérivée dans la direction y si et seulement si
J(x + ty) − J(x)
lim existe ; on la note J 0 (x, y).
t→0 t

Définition 1.1. Différentielle (ou dérivée au sens de Fréchet)


J : E −→ IR est différentiable (ou dérivable au sens de Fréchet) en x si et
seulement si il existe une forme linéaire notée J 0 (x) telle que pour tout y ∈ E
|J(x + y) − J(x) − J 0 (x) y|
|J(x + y) − J(x) − J 0 (x) y| = o(kyk) quand y → 0 ou lim =0
kyk→0 kyk

Lignes de niveau Ce sont les courbes définies implicitement par les équations

J(x) = c

3
pour divereses valeurs du niveau c.

Approximation linéaire de J au point u

J(u) + J 0 (u)(x − u)

Cette approximation est locale près du point u.


Remarque 1.1. L’existence de la dérivée au sens de Gateau est un peu plus forte
que l’existence de dérivées partielles pour lesquelles la limite du quotient différentiel
∂J
n’existe que pour y = ai une base de E ; remarquer la notation : J 0 (x, ai ) = .
∂xi
On donne dans les cours élémentaires des contre exemples variés de fonctions dérivables
au sens de Gateau qui ne le sont pas au sens de Fréchet mais on montrera facilement
que les fonctions dérivables au sens de Fréchet le sont au sens de Gateau ; la non
équivalence résulte de situations plutôt pathologiques !

On démontre en calcul différentiel :


Si une fonction J : E −→ IR admet des dérivées partielles dans un voisinage
Proposition 1.1. de x et que ces dérivées partielles sont continues en x, alors J est différentiable
en x (ou dérivable au sens de Fréchet) et l’on a :

X ∂J
J 0 (x)y = (x )yi (1.1)
∂xi i

Polynômes quadratiques Les dérivées partielles :


∂P P
= 2ax1 + bx2 + d, = bx1 + 2cx2 + e
∂x1 x2
ce sont des polynômes donc des fonctions continues, par suite :
les polynômes quadratiques sont différentiables en tout point ; (par récurrence
on montrerait que tous les polynômes sont différentiables.

Ecriture matricielle :
    
2a b y1 y
0
P (x)y = [x1 , x2 ] + [d, e] 1
b 2c y2 y2

Coniques En géométrie les courbes de niveau de polynomes quadratiques


s’appellent coniques (elles corespondent à des sections de cones par des plans !).
– Quand 4ac − b2 = 0, il s’agit de droites ou d’une parabole ;
– Si b = 0 et c = 0 (ou a=0), on reconait l’équation d’une parabole
– Dans le cas où le déterminant 4ac − b2 est non nul, le centre de la conique est
dé fini par l’annulation :
P 0 (x) = 0
, soit (ξ, η) ce centre ; posons x = ξ + X, y = η + Y , il vient :

P (x, y) = aX 2 + bXY + cY 2 + P (ξ, η)

4
Pour préciser la nature de la courbe, le signe du déterminant 4ac − b2 , (par
exemple mettre le trinôme sous forme canonique) permet de distinguer :
– une ellipse : 4ac − b2 > 0,
– hyperbole : 4ac − b2 < 0,

Attention à la notion de gradient très utile en optimisation.

Définition 1.2. Le gradient associé à la forme linéaire de la dérivee est défini


par la formule :

∂J
∀y J 0 (x, y) = (gradJ, y) ou (gradJ, ai ) = J 0 (x, ai ) =
∂xi

Mais les composantes de gradJ ne sont pas (gradJ, ai ) sauf si la base est or-
thonormée.

Gradient et courbes de niveau

Proposition 1.2. Le vecteur gradJ(x) est orthogonal à la courbe de niveau


passant par x et dirigé dans le sens des J croissants.

Ad En effet, soit t 7→ x(t) un paramétrage de la courbe de niveau, on a en


dérivant J(x(t)) = J(x0 ) :

dx
gradJ(x0 ). =0
dt
d’autre part :

J(x0 + ρgradJ(x0 ))) = J(x0 ) + ρgradJ(x0 ).gradJ(x0 ) + o(ρ)

montre la deuxième assertion.

Lemme 1. Parmi tous les vecteurs y de norme 1, J 0 (x, y) est maximum (resp.
gradJ gradJ
minimum) pour y = kgradJk (resp. y = − kgradJk )
gradJ
Remarque 1.2. Pour une piste de ski d’équation x3 = J(x1 , x2 ), y = − kgradJk
est la direction de déplacement de plus grande pente.

Démonstration à voir pour un polynôme quadratique ; cas général admis (voir


calcul diiférentiel : théorème des fonctions implicites.

Si le gradient est grand, les courbes de niveau sont plus rapprochées : soient les
courbes J(x) = c et J(x + δx) = c + δc, on a alors : gradJ(x) . δx = δc ; pour un
δc donné, plus le gradient est de grand module plus la composante de δx sur ce
gradient est grande : ce qui fait des courbes de niveau rapprochées !

5
Polynômes quadratiques Le gradient de P :
    
2a b x1 d
grad(P ) = +
b 2c x2 e
x21 x22
– Courbes de niveau de P = a2 + b2 ;
x21 x22
– Courbes de niveau de P = − ; a2 b2
– Condition pour courbes de niveau elliptiques pour un polynôme quadratique :
b2
ac − >0
4
.
– Convexité : a > 0 et
b2
ac − >0
4
.

Exercice 1.1. Dans le cas où la base ai n’est pas orthonormée, écrire un
système linéaire qui fournit les composantes d’un vecteur associé à une forme
linéaire (et donc celle du gradient à partir des dérivées partielles).
suggestion : la matrice M est donnée par Mi,j = (ai , aj ) ; cette matrice porte le nom
de Gramm.
1
Exercice 1.2. Montrer que J(x) = a(x, x) − `(x) est Fréchet dérivable et de
2
dérivée
J 0 (x, y) = a(x, y) − `(y) = t y A x − t F y
.
Exercice 1.3. Montrer qu’une fonction dérivable au sens de Fréchet l’est au
sens de Gateau.

1.2 Résultats de base

Proposition 1.3. Soit E espace vectoriel de dimension n


a : E × E −→ IR une forme bilinéaire symétrique
b : E −→ IR une forme linéaire
1 1
et J : E −→ IR J(x) = a(x, x) − `(x) = t x A x − t x F ;
2 2
abus de notations J(x) = J(x)
(i) si J atteint un minimum relatif ou local en un point x∗ ∈ E alors
∀y ∈ E J 0 (x∗ , y) = 0 ou Ax∗ = F
(condition nécessaire d’optimalité ou C.N.O.)
(ii) Si de plus la forme bilinéaire est définie positive : ∃γ > 0 , ∀x ∈ E a(x, x) ≥ γkxk2
( ou t x A x ≥ γ kxk2 ) la C.N.O. admet une unique solution x∗ et cette solution
réalise le minimum absolu (ou global) de J sur E. Elle est donc aussi C.S.O.
(condition suffisante d’optimalité)1
1 Si besoin, clarifier son vocabulaire logique : il faut, condition nécessaire ; il suffit, condition

suffisante !

6
La démonstration est simple et ses méthodes s’étendent à des situations plus
compliquées (voir §1.3)
(i) soit x∗ un minimum relatif de J, alors pour tout y ∈ E et t ∈ IR petit
J(x∗ + ty) ≥ J(x∗ )
J(x∗ + ty) − J(x∗)
donc pour t > 0 ≥0
t
J(x∗ + ty) − J(x∗)
et pour t < 0 ≤0.
t
D’où en faisant tendre t −→ 0 par valeurs positives J 0 (x∗ , y) ≥ 0
puis par valeurs négatives J 0 (x∗ , y) ≤ 0
et donc J 0 (x∗ , y) = 0 ce qui se traduit par ∀y ∈ IRn t (A x∗ − F ) = 0 d’où A x∗ − F = 0.

(ii)

Lemme 2. : Sous l’hypothèse (ii), soit A l’application linéaire associée à a :


a(x, y) = (A x, y), A est bijective ; la matrice associée est inversible.

En effet : si A x = 0 alors a(x, x) = 0 et donc avec l’hypothèse x = 0, A est


injective et donc bijective puisque nous sommes en dimension finie.

Conséquence : la C.N.O. admet une unique solution ; de plus un calcul facile


donne :
1t
J(x + y) = J(x) + t y A x − t y F + yAy
2
quand x = x∗ , la C.N.O. fournit :
1t
J(x∗ + y) = J(x∗ ) + yAy
2
on a donc bien ∀y ∈ IRn J(x∗ + y) ≥ J(x∗ ) ce qui montre que x∗ est bien
un minimum absolu (ou global) et non pas relatif (ou local).

Exercice 1.4. (rappel)


• a définie positive si et seulement si toutes les valeurs propres de A (ou de A)
sont strictement positives.
• a est définie positive si et seulement si : ∀x ∈ E a(x, x) > 0 (avec E de
dimension finie).

Exercice 1.5. a) exprimer J dans une base de valeurs propres de A, determiner


ainsi le minimum de J.
b) En dimension 2 ou 3 , former les courbes de niveau de J.
c) Cette méthode est elle interéssante numériquement dans le cas où A est une
matrice 1000 × 1000 ?
(Consulter éventuellement un cours d’analyse numérique matricielle)

Exercice 1.6. a) Reformuler la proposition si A est définie négative.


b) Que peut -on dire si les valeurs propres de A sont positives ou nulles ? (courbes
de niveau).

7
c) Mêmes questions si les valeurs propres sont de signe quelconque mais non
nulles ? (courbes de niveau).

Exercice 1.7. (élémentaire)


Soit f (x1 , x2 ) = ax21 + bx1 x2 + cx22 + dx1 + ex2
a) Calculer la dérivée de f
b) en déduire une écriture matricielle de f .

Exercice 1.8. 1. Soit B matrice à n lignes et m colonnes indépendantes


avec n ≥ m, montrer que A = t B B est une matrice m × m symétrique et
définie positive.

1.3 Projection sur un sous -espace paramétré

1.3.1 Introduction - Notations

Pour une bonne compréhension de l’optimisation , il me parait indispensable de maı̂triser


d’une part l’algèbre linéaire et le calcul matriciel et d’autre part la géométrie affine
euclidienne ; nous rappelons ici quelques principes utiles dans ce paragraphe ; se repor-
ter à un manuel de base.
Soit donc E un espace vectoriel euclidien (muni d’un produit scalaire) de dimension n
et soient (bj )1≤j≤m un système libre vecteurs de E ; le sous -espace vectoriel engendré
( m
)
m
X
F = y ∈ E, ∃ (xj )1≤j≤m ∈ IR y = xj bj (1.2)
i=1

F est un sous- espace paramétré ; les xj sont les paramètres ;

b1
Pf
b1 b
2

b
2

Fig. 1.1 – Projection orthogonale de f ∈ E

8
il est bien connu en géométrie euclidienne que si f ∈ E, il existe une P
unique projection
orthogonale P f ∈ F, il existe donc des paramètres λj∗ tels que P f = λj ∗ bj vérifient
pour k = 1, ..., m. !
Xm
f − λi∗ bi , bk = 0 (1.3)
i=1

Nous allons écrire matriciellement cette relation et la retrouver à l’aide du résultat du


§1.1.
Xn
Après le choix d’une base (ei )i=1,...,n comme dans l’introduction, bj = bi j ei , po-
i=1
2 3
b1 j
sons bj = 4 ... 5 et B matrice de coefficients bi j ; il sera commode parfois de considèrer
6 7

bn j
B par blocs : B = [b1 , ..., bm ] où les bi désignent donc les blocs des colonnes
X de B ; dansX
m
ces conditions si x ∈ IR on peut effectuer le produit par blocs : B x = bj xj = xj bj
X X
et il convient de remarquer que xj bj sont les composantes du vecteur xj bj ;
noter que dans l’usage des espaces vectoriels X on écrit les scalaires à gauche des vec-
teurs mais quand on veut representer xj bj par un produit matriciel par blocs
2 3
x1
Bx = [b1 , ..., bm ] 4 ... 5 les scalaires apparaissent à droite du vecteur.
6 7

xm

Exercice 1.9. Interpreter par blocs le produit t y B ; caractériser le noyau de t B ;


comparer avec ImB.

Exercice 1.10. Utiliser une représentation graphique des matrices rectangulaires B ;

interpreter ainsi B x, t B B, B t B ; t y t B....

Nous pouvons donc écrire matriciellement (1.3) en supposant que ei est une base
orthonormale :

(ei , ej ) = t ei ej = δij t
(f − B x∗ ) bk = 0 et donc t
(f − B x∗ ) B = 0 (1.4)

C’est cette dernière équation que nous allons retrouver.

1.3.2 Résolution au sens des moindres carrés

Dans la pratique il est fréquent que l’on ait à résoudre un système linéaire B x = f
avec B matrice à n lignes et m colonnes (indépendantes), avec n ≥ m.
Nous verrons au §3. que ce système peut admettre des solutions mais le cas le plus
fréquent est qu’il n’admette pas de solutions quand n > m : ” il y a trop d’équations,
le système est surdeterminé”. Quand on a besoin d’une ”solution ” on utilise souvent
la notion de ” solution au sens des moindres carrés ”.
Résoudre au sens des moindres carrés signifie chercher le x∗ ∈ IRm qui minimise
J(x) = kB x − f k22 C’est à dire le carré de la distance de f au sous- espace F

9
défini en (1.3) où kyk22 = (y, y) = t y y est le produit scalaire de E.

Dorénavant nous omettrons l’indice 2 pour la norme : kyk2 = (y, y) .

Proposition 1.4. : Soit B une matrice à n lignes et m colonnes indépendantes,


il existe un x∗ unique qui minimise J(x) = kBx − f k2 ; il satisfait la condition
nécessaire et suffisante t e∗ B = 0 avec e∗ = f − B x∗ . Ceci définit x∗ solution de
t
B B x∗ − t B f = 0.

Interprétation géométrique : B x∗ n’est autre que le vecteur colonne de la pro-


jection orthogonale P f sur F ; en effet t e∗ B = 0 n’est autre que (1.4), une écriture
matricielle de (1.3) ; cette proposition n’est donc rien d’autre que : ” la perpendiculaire
est plus courte que toute oblique ”. (comme disait l’un de mes professeurs de Lycée) ;
mais on peut dire aussi dans ce contexte que l’erreur e∗ est orthogonale aux colonnes
de B.
La Démonstration peut se faire simplement avec le résultat de base du §1.1
D’abord en dévelopant le produit matriciel : J(x) = t (B x − f ) (B x − f ) on trouve
J(x) = t x t B B x − 2 t x t B f + t f f qui est donc de la forme du J de la proposition
?? avec
A = 2t B B F = 2t B f E = IRm et avec un terme constant t f f qui
n’intervient pas dans la détermination de x ; enfin avec l’exercice 5, A = t B B est
définie positive ; la proposition 2 indique donc l’existence, et l’unicité du minimum x∗ ,
elle fournit de plus la C.N.S.O. A x∗ − F = 0 soit ici t B B x∗ − t B f = 0
ou t B (B x∗ − f ) = 0

Utilisation pratique : pour déterminer la ”solution au sens des moindres carrés ” on


résout les équations dites ”normales ”
t t
B B x∗ = B f

elles ne sont autres qu’une autre écriture de t B e∗ = 0.


Si vous avez fait l’exercice 1.8, vous savez que t B B est une matrice carrée m × m ; il
est donc numériquement facile de résoudre au sens des moindres carrés si vous avez
peu d’inconnues même avec beaucoups d’équations !

Exercice 1.11. ( lissage par une droite, droite des moindres carrés)
on dispose de points (ξi , ηi ) et l’on souhaite trouver une droite qui passe au mieux par
les points (ξi , etai )

(pensez à des points de mesure de 2 quantités ξ et η supposées reliées par une loi
linéaire η = c + dξ de coefficient c et d inconnu) ; on va chercher cette droite au sens
des moindres carrés i.e. résoudre au sens des moindres carrés :

c + ξi d = ηi i = 1, ..., n
les inconnues sont ici c et d.

a) écrire un système linéaire Bx = f


avec B n lignes, 2 colones
x 2 lignes
f n lignes.

10
y

y
i

0 xi x

Fig. 1.2 – Lissage par une droite : droite des moindres carrés

b) trouver x∗ au sens des moindres carrés (les coefficients c et d).


c) vérifier que c + ξ¯ d = η̄ avec ξ¯ et η̄ moyennes de (ξ¯i ) et (η̄i ).
d) d peut s’interpreter comme une covariance si l’on considère ξi et ηi comme des
variables aléatoires équiprobables ; comment s’appelle cette droite en probabilités- sta-
tistiques ?

1.3.3 Projection et résolubilité

Reprenons les notations du paragraphe précédent, en se rappelant que B x∗ est la


projection orthogonale de f sur F : P f = B x∗ avec
t t
B B x∗ = B f
On a donc :
Proposition 1.5. i) La projection P : E −→ F = {B x, x ∈ `IRm } est´ donnée par
P f = B(t BB)−1 t Bf la matrice de P est B(t BB)−1 t B on a t f − P f P f = 0
ii) On vérifie P 2 = P et t P = P donc P est aussi orthogonale.

Attention : On a vu (exercice 1.8) que comme les colonnes de B sont indépendantes


t
B B est définie positive donc inversible ; (t B B)−1 a bien un sens ; mais B n’est pas
inversible : cela n’a pas de sens car c’est une matrice rectangulaire !

Cas particulier fondamental : projection sur une droite parametrée ; soit b ∈ IRn D =
{y ∈ IRn /∃x ∈ IR, y = xb}
t bt b f
B B = t b b ∈ IR , P f = t
bb
noter que cette projection est invariante quand on multiplie b par un scalaire, on a
b
donc avec u = t , P f = ut u f
( b b)1/2
géométriquement t u f = kf k cos θ avec θ angle entre u et f si bien que P f = cos θ kf k u
est la formule bien connue de la projection sur une droite de vecteur unitaire u.
On retrouve aussi que d(f, D) = t (f − P f )(f − P f ) comme t (f − P f )P f = 0 on a :
t
d(f, D) = (f − P f )f = t (f − u t u f )f
t
= f f − tf u tu f
t
= f f − t (P f ) P f
ceci n’est autre que le théorème de Pythagore !

11
f

Pf

u
Fig. 1.3 – Distance (Pythagore)

12
Lemme 3. : IRn se décompose en une somme directe orthogonale de F = Im B = Im P
n
 si f ∈ IR
et de Ker B = Ker P ; en pratique
f − Bx∗ ∈ Ker t B ou
f = Bx∗ + (f − Bx∗ ) avec t
B Bx∗ − t B f = 0
Bx∗ et f − Bx∗ sont orthogonaux et cette écriture est unique :
si f = b + n avec b ∈ Im B et n ∈ Ker t B, alors b = Bx∗ avec t B Bx∗ − t B f = 0 et
n = f − Bx∗ .

En effet avec la proposition 1.2. f − Bx∗ ∈ Ker t B ; d’autre part si y ∈ Im B et


z ∈ Ker t B : y = Bx et t y z = t x t B z = 0 ce qui montre l’orthogonalité ; il reste
juste à vérifier que Im B ∩ Ker t B = {0} en effet si y = Bx et t B y = 0 alors
t
y y = tx B y = 0

Ce corollaire est très important en pratique sous la forme suivante.

1.4 Systèmes surdéterminés

Le résultat suivant est indispensable pour l’étude des conditions d’ptimalité


en présence de contraintes (voir chapitre suivant). On pourait montrer par des
techniques d’optimisation mais on se reportera au cours d’algèbre linéaire (ou
on admettra) :

Proposition 1.6. Soit le système linéaire surdéterminé Bx = f avec B à n


lignes et m colonnes indépendantes avec n ≥ m, f ∈ IRn et x ∈ IRm ; ce système
est soluble si et seulement si :
∀ y ty B = 0 =⇒ t y f = 0
(ce qui signifie f ∈ (Ker t B)⊥ )
en d’autres termes :
le système est soluble (ou f ∈ Im B) si et seulement si f ∈ (Ker t B)⊥ ou
encore Im B = (Ker t B)⊥

Cas particulier : B = Aλ = A − λI avec A matrice carée ; quand λ est valeur


propre de A , la condition t y Aλ = 0 signifie y vecteur propre à gauche de Aλ
ou vecteur propre de t Aλ , on a donc :

Lemme 4. Soit A matrice inversible, λ valeur propre de A (A − λ I)x = f


ce système est soluble si et seulement si b est orthogonal au sous- espace propre
de t A − λ I.

Remarque 1.3. En dimension infinie, ce résultat est connu sous le nom d’al-
ternative de Fredholm .

13
1.5 Minimisation dans IRn

1.5.1 Introduction .

Ce paragraphe vise à étendre le résultat de base de la proposition 1.1. à des


fonctions plus générales ; cela n’est pas aisé ; tant que l’on ne s’intéresse qu’à un
résultat d’existence, l’hypothèse suivante est commode :

H1 lim J(x) = + ∞ parfois appelée coercitivité


kxk→+∞

de J car la fonctionelle quadratique a cette proprièté quand la forme bilinéaire


est coercitive.
L’obtention d’une condition nécessaire d’optimalité demande seulement que la
fonction soit différentiable.
Cela se complique beaucoup si l’on souhaite une condition nécessaire et suffi-
sante : en effet le Hesien positif est une C.N.O. mais pas vraiment suffisante ; le
Hessien défini positif est suffisant mais pas nécessaire ; il est facile de le voir en
une variable.
La fonction f1 (x) = x3 satisfait f 0 (0) = 0 f 00 (0) = 0 a-t-on envie de dire que

f f
1 2

Fig. 1.4 – fonctions avec f 00 (0) = 0

zéro est un minimum local ?

f2 (x) = x4
Dans le cas f 0 (0) = 0 f 00 (0) = 0 et zéro est un minimum absolu bien que f 00 (0)
ne soit pas strictement positif.

Mais le pire n’est pas là, considérons cette fonction g avec plusieurs minimums
locaux, en tous ces minimums f 0 (xi∗ ) = 0 xi∗ et f 00 (xi∗ ) > 0 et l’on voudrait
bien caractériser le meilleur minimum absolu et disposer d’algorithmes de calcul.
Ces questions ne sont pas passées inaperçues dès les débuts des algorithmes
d’optimisation (années 60) mais ne se sont vraiment développées que dans les
années 80 ; les applications à l’art de l’ingénieur démarrent et sont prometeuses
(Arora et al [1] (1995)) ; pourquoi ce changement de perspectives : on commence
à disposer de moyens de calculs suffisants pour analyser à faible coût de grands

14
y

Fig. 1.5 – fonction avec plusieurs minimums locaux

systèmes ; or la détermination numérique d’un minimum demande d’analyser de


très nombreuses fois le système à optimiser.

1.5.2 Rappel de calcul différentiel

Nous allons avoir besoin de dérivée seconde de fonctions de plusieurs variables ;


c’est une fonction de 2 variables vectorielles

Définition 1.3. J est dite deux fois dérivable au sens de Gateau si la


J 0 (x + tz, y) − J 0 (x, y)
lim
t→0 t
existe et on la note J 00 (x; y, z).
Définition 1.4. Elle est dite deux fois dérivable au sens de Fréchet s’il existe
une forme bilinéaire (y, z) 7−→ J 00 (x)(y, z) telle que
kJ 0 (x + z)y − J 0 (x)y − J 00 (x)(y, z)k
lim = 0
kzk→0 kzk

cette forme bilinéaire s’appelle souvent le Hessien et en notation matricielle on


utilise
la matrice hessienne H : J 00 (x)(y, z) = t z H(x) y

15
Proposition 1.7. : Formule de Taylor à l’ordre 2 (suffisante pour nos
applications)
Pour J 2 fois continuement différentiable dans un ouvert contenant [x, y] :
1
1) J(x + y) = J(x) + J 0 (x)y + J 00 (x; y, y) + o(kyk2 )
2
Z 1
2) J(x + y) = J(x) + J 0 (x)y + (1 − t)J 00 (x + ty; y, y)dt
0

Démonstration 1) La première formule n’est qu’un cas particulier très utile


Z 1
00 00 1
du 2) obtenu en approchant J (x + ty) par J (x) et (1 − t)dt = !
0 2
2) la formule 2) se déduit de la formule de Taylor en une variable en posant
f (t) = J(x + ty)
Z 1
0
f (1) = f (0) + f (0) + (1 − t)f 00 (t)dt
0
(cette dernière formule résulte de 2 intégrations par parties)

Polynômes quadratiques Dans ce cas la formule de Taylor à lrdre 2 est


exacte :
1
P (x + y) = P (x) + P 0 (x; y) + P 00 (x; y, y)
2
ou matriciellement :
t 1
(x + y)A(x + y) +t (x + y)B + f = (t xAx +t xB + f ) + 2 t yAx +t yB + 2 t yAy
2

1.5.3 Résultats de base

Définition 1.5. Soit J une fonction à minimiser, I = Inf J(x) (éventuellement


−∞) ; (xk )k∈IN est dite minimisante quand J(xk ) −→ I

2
Attention : I peut n’être pas atteint : par exemple I = 0 pour f = e−x /2 mais
la valeur 0 n’est atteinte pour aucune valeur de x ∈ IR.
Remarquons que par définition d’une borne inférieure, l’existence de suites mi-
nimisantes est banale ; considérons le cas où I est fini, alors pour tout ε > 0, il
existe x tel que I ≤ f (x) ≤ I + ε
il suffit de considèrer une suite εn −→ 0 pour disposer d’une suite xn telleque
f (xn ) −→ I.
Toutefois, le comportement de la suite xn n’est pas évident ; voici deux exemples.
2
a . f (x) = e−x /2 I = 0 ; si (xn ) est une suite minimisante |xn | → +∞ ;
le minimum n’est pas atteint ; mais f ne vérifie pas H1.

b . f (x) = sin x I = −1 ; si xn est une suite minimisante, elle peut oscil-



ler au voisinage des points + 2kπ k ∈ Z ; dans cet exemple il y a beaucoup
2
de minimums absolus ; l’hypothèse H1 n’est pas vérifiée.

16
f(x)

I I+ ε
Fig. 1.6 – fonction f vérifiant l’hypothèse H1

Hypothese 1. (H1 ) sur la fonction J Pour toute suite xk telle que kxk k −→
+∞, on a J(xk ) −→ +∞. .

Lemme 1.1. Sous l’hypothèse H 1 , une suite minimisante (xk ) est bornée.

Ce résultat très simple déroute souvent les étudiants, pourtant il suffit de rai-
sonner par la contraposée : si la suite (xk ) n’est pas bornée on peut en extraire
une sous- suite xk0 telle que kxk0 k −→ +∞ mais H 1 entraı̂ne J(xk0 ) −→ +∞ ;
ceci est la négation de l’hypothèse J(xk0 ) −→ I
(sauf bien sûr si J était toujours égale à +∞, situation pathologique exclue de
facto)

Proposition 1.8. Soit J : IRn −→ IR, continue


i) Si J satisfait l’hypothèse H 1 alors J atteint son minimum en au moins un
point x∗ .
ii) Si J est différentiable, x∗ vérifie J 0 (x∗ ) = 0
iii) Si J est deux fois différentiable, x∗ vérifie de plus ∀y ∈ IRn t y H(x∗ ) y ≥ 0
où H est le Hessien de J.
iv) Si J 0 (x0 ) = 0 et H(x0 ) est défini positif, alors x0 est un minimum local
isolé.

Démonstration i) Je vais illustrer pour ce point, l’utilisation de la technique de


la suite minimisante.
Soit I = Infx∈IRn J(x) ce nombre peut être −∞ et n’est peut être pas atteint !

Par définition d’une borne inférieure, il existe une suite xk tel que J(xk ) −→ I ;
quitte à en extraire une sous- suite on pourrait supposer que la suite J(xk ) est
décroissante d’où le nom de la technique.
Avec le lemme 1.1, la suite est bornée.

Pour achever la démonstration du i) il suffit d’utiliser le résultat classique :


” De toute suite bornée (xk ) de IRn on peut extraire une sous- suite convergente

17
(xk0 ) ” . Ceci n’est qu’une formulation commode de la compacité des parties
fermées, bornées de IRn .

Par suite xk0 −→ x∗ et comme J est continue J(xk0 ) −→ J(x∗ ) qui est donc
égale à I = lim J(xn ) ; le minimum est donc bien atteint au point x∗ .

Noter que sans hypothèse supplémentaire la suite (xk ) peut ne pas converger
ainsi qu’on le voit sur la figure.

x1 x2
x3 x4
x5 x6

ii)
La démonstration est analogue au i) de la proposition 1.1.
iii) la formule de Taylor donne comme J 0 (x∗ ) = 0
1
J(x∗ + ρy) − J(x∗ ) = ρ2 t y H(x∗ ) y + o(ρ2 )
2
et donc comme J(x∗ + ρy) ≥ J(x∗ ) en faisant tendre ρ → 0, on trouve pour
tout y ∈ IRn t y H(x∗ ) y ≥ 0
iv) La formule de Taylor donne encore avec J 0 (x0 ) = 0
1
J(x0 + y) − J(x0 ) = t y H(x0 ) y + o(kyk2 )
2
et donc comme t y H(x∗ ) y ≥ α kyk2
J(x0 + y) − J(x0 ) > 0 pour y assez petit ce qui montre que x0 est un minimum
local isolé (la fonction ne peut pas présenter de ”plateau ” au voisinage de x0 ).

1.5.4 Convexité, ellipticité

La convexité (voir le cours d’analyse pour les propriétés) est un cadre naturel
pour la minimisation de fonctions de plusieurs variables ; nous utiliserons une
classe plus réduite de fonctions pour lesquelles des démonstrations sont un peu
moins techniques : fonctions elliptiques (notions différente de celle des fonctions
elliptiques de l’analyse classique) ou α-convexes.
Proposition 1.9. La premire propriété définit les fonctions elliptiques ; cette
premire condition est impliquée par les autres ; sous hypothèse de différentiabilité,
la première condition entraine les 2 suivantes ; enfin pour les fonctions 2 fois
différentiables, toutes les conditions sont équivalentes. l’une des conditions équivalentes
suivantes avec α > 0 :

18
1. ∀u ∈ Rn , ∀v ∈ Rn , ∀δ ∈ [0, 1] :
J((1 − δ)u + δv) ≤ (1 − δ)J(u) + δJ(v) − α2 δ(1 − δ)ku − vk2Rn
2. si J est différentiable, ∀u ∈ Rn , ∀v ∈ Rn , J(v) ≥ J(u) + J 0 (u)(v − u) +
α 2
2 ku − vkRn
3. si J est différentiable, ∀u ∈ Rn , ∀v ∈ Rn , (J 0 (v)−J 0 (u), v−u) ≥ αku − vk2Rn
4. si J est 2 fois différentiable, ∀u ∈ Rn , ∀w ∈ Rn , J 00 (u)(w, w) ≥ αkwk2Rn

Montrons que la deuxème condition implique la troisième :


α α
J(v) ≥ J(u)+J 0 (u)(v−u)+ ku − vk2Rn J(u) ≥ J(v)+J 0 (v)(u−v)+ ku − vk2Rn
2 2
d’où la troisème condition en additionant.

Réciproquement, introduisons, j(t) = J(u + δ(v − u)), on a : j 0 (t) = J 0 (u + δ(v −


u))(v − u), donc la troisème condition donne : j 0 (t) − j 0 (0) ≥ αtku − vk2Rn d’où
la deuxième condition en intégrant de 0 à 1.
Proposition 1.10. Une fonction elliptique (différentiable pour simplifier) at-
teint son minimum en un unique point.

En effet avec la condition (2) de la proposition précédente, si kvn k −→ +∞,


on voit que J(vn ) −→ +∞ ; J vérifie donc l’hypothse H1 et avec la propo-
sition 1.8, on a l’existence d’un minimum. Pour l’unicité, considérons deux
minimum, u∗ , v∗ , alors la propriété 3 de la proposition précédente donne :
J 0 (v∗ ) − J 0 (u∗ ), v∗ − u∗ ) ≥ αku∗ − v∗ k2Rn , comme J 0 (v∗ ) = 0 = J 0 (u∗ ), on
doit avoir u∗ = v∗ .

1.6 Algorithmes pour l’optimisation sans contraintes...

Notons que pour le cas quadratique, un algorithme de résolution de systèmes


linéaires convient : par exemple Choleski ou une méthode de relaxation ; le gra-
dient conjugué est bien adapté aux grandes matrices creuses issues des éléments
finis.

Pour une fonctionnelle non quadratique, l’algorithme du gradient a l’avantage


de la simplicité et l’inconvénient de la lenteur ; l’algorithme de Newton (voir
propriétés dans la section sur la programmation quadratique séquentielle ) de-
mande peu d’itérations mais demande le calcul de dérivées secondes ; la mise
en oeuvre de ce calcul peut être bien simplifiée par l’utilisation de calcul sym-
bolique (par exemple, Maple) ou de différentiation automatique de programme
fortran (exemple Odysee, Adifor). Un algorithme de quasi-newton peut être un
compromis car il utilise seulement des dérivées premières.

1.6.1 Algorithme du gradient

Encore appelé algorithme de la plus grande pente pour minimiser une fonction
J : IRn −→ IR, xk+1 = xk − ρk gradJ(xk ) où ρ ∈ IR est à choisir par un
algorithme de minimisation dans IR.

19
Pour simplifier l’analyse, supposons que ρk réalise le minimum de

j(ρ) = J(xk − ρgradJ(xk ))

; pour insister sur ce choix considérons

j(ρ) = J(xk − ρwk )

Lemme 5. 1. Pour xk+1 = xk − ρwk , si ρ est optimal (réalise le minimum


de j(ρ)), on a
(gradJ(xk+1 ), xk+1 − xk ) = 0
2. si wk = gradJ(xk ), on a
(a) (gradJ(xk+1 ), gradJ(xk )) = 0 ;
(b) kgradJ(xk )k ≤ kgradJ(xk ) − gradJ(xk+1 )k et kgradJ(xk+1 )k ≤
kgradJ(xk ) − gradJ(xk+1 )k

Exercice 1.12. Dessiner une itération de l’algorithme à l’aide de courbes de


niveaux pour minimiser une fonction de 2 variables.

Proposition 1.11. Soit J : IRn −→ IR avec J elliptique de constante α et J 0


uniformément continue sur les compacts , la méthode du gradient à pas optimal
converge et on a :

kxk − x∗ k ≤ 1 k
α kgradJ(x )k

La démonstration peut de faire en plusieurs étapes.


étape1 : Comme J est elliptique son minimum est atteint ; par suite J(xk ) est
minorée et décroissante donc convergente.
étape2 : avec ellipticité :
α k
J(xk ) − J(xk+1 ) ≥ (gradJ(xk+1 ), xk+1 − xk ) + kx − xk+1 k2
2
avec le lemme le premier terme de droite est nul et donc kxk −xk+1 k −→ 0
étape3 : comme J(xk ) est décroissante et J coercitive (car elliptique xk reste
dans un borné (lemme ...) et avec uniforme continuité de J 0 : kgradJ(xk )−
gradJ(xk+1 )k −→ 0 et donc kgradJ(xk )k −→ 0 avec le lemme.
étape4 : l’ellipticité fournit encore :
(gradJ(xk ) − gradJ(x∗ ), xk − x∗ ) ≥ αkxk − x∗ k2 d’où la majoration du
lemme.
Remarque 1.4. 1. Il suffit de supposer que J est 2 fois continument différentiable
pour avoir l’uniforme continuité de J 0 sur les bornés.
2. En pratique, on ne peut avoir précisement le pas optimal

Proposition 1.12. Soit J : IRn −→ IR avec J elliptique et avec



kgradJ(x) − gradJ(y)k ≤ M kx − yk, alors pour 0 < a ≤ ρk ≤ b < M 2,

l’algorithme du gradient converge géométriquement : kxk+1 − x∗ k ≤ βkxk − x∗ k


avec β < 1

20
Exercice 1.13. Démontrer la proposition

Exercice 1.14. Dans le cas où J est quadratique


1. Préciser l’algorithme du gradient.
2. Ecrire l’algorithme dans la base de vecteurs propres de A.
3. pour A définie positive en déduire que le meilleur choix de ρ est ρ∗ = 2
λn +λ1
et que le taux de convergence τ = λλnn −λ
+λ1
1

4. Dans quel cas l’algorithme est très lent ?


5. Ce choix est tout à fait théorique pourquoi ?

Exercice 1.15. Faire un changement de variable x = Cξ ; que devient l’algo-


rithme du gradient ? Cas quadratique. Interet du changement ?
cette idée très simple est très efficace si l’on sait construire une matrice telle que les
valeurs propresles plus petites et les plus grandes soient plus proches : on parle de
preconditionement

1.7 Mise en oeuvre d’algorithmes

Quand on cherche calculer le maximum d’une suite xk , il est inutile de stocker


tous les termes de la suite.

kmax=10
x=[3.;2.]; m=x’*x;
for k=1:kmax
x1=sin(x)+1+x
m=max(m, x1’*x1)
x=x1;
end

21
Exercices Deug Mass Rousselet
Exercice 1 On considère la courbe d’équation implicite
x2 y2
+ =1 (1.5)
a2 b2
1. En donner une représentation l’aide de fonctions x 7−→ y ; différentiabilité.
2. Représentation graphique. Discuter suivant valeurs de a, b. Comment
s’appellent ces courbes ?
En donner une représentation paramétrique : t 7−→ xy

3.
4. Déterminer un vecteur tangent cette courbe définie par des 2 dernières
représentations.
2 2
5. Calculer la differentielle de (x, y) 7−→ xa2 + yb2
6. En déduire le vecteur normal cette mme courbe.
Exercice 2 On considère la courbe d’équation implicite
x2 y2
2
− 2 =1 (1.6)
a b
Mmes questions que ci-dessus. De plus :
1. Déterminer les asymptotes
2. Donner une équation de cette courbe rapportée ses asymtotes.
Exercice 3 On considère la conique d’équation définie par :
p(x, y) ≡ ax2 + 2bxy + cy 2 + dx + ey + f = 0 (1.7)
On considre les 2 exemples :
p(x, y) = 3x2 + 2xy + y 2 − x + 2 (1.8)
2 2
p(x, y) = x − xy + y (1.9)
1. Donner les équations qui founissent les point extrémaux de p ; quelle
condition le point ext˚’emal x0 x1 est-il unique ? ( encore appellé centre
de la conique). Dans la suite on se place dans ce cas.
2. Donner l’équation de la conique dans un système d’axes parallèle et
passant par le centre de la conique (x = x0 + X, y = y0 + Y ) ; la
mettre sous la forme q(X, Y ) + f 0 = 0 avec q forme quadratique dont
on donnera la matrice.
3. Interpréter pour retrouver que seuls les monômes de degés 2 inter-
viennent dans la nature du point extrémal.
4. On appelle φ(x, y; x0 , y 0 ) la forme bilinéaire telle que : φ(x, y; x, y) =
q(x, y) ; écriture matricielle.
5. On considère deux vecteurs ( ou directions de droites ) conjuguées
par rapport la forme quadratique q : φ(α, β; α0 , β 0 ) = 0 ; donner un
choix possible de ces vecteurs.
6. Interprétation gé ométrique de vecteurs conjugués ( considérer la
différentielle de q.)
7. On considère le repère de mme origine et associè 2 vecteurs conjugués
par rapport la forme quadratique ; donner l’équation de la conique.
Interpré ter la nature de la courbe ( ellipse ou hyperbole).

22
Chapitre 2

Minimisation avec
contraintes

2.1 Minimisation avec contraintes d’égalités linéaires

Comme dans le cas sans contraintes, nous considérons d’abord le cas le plus
simple :
les contraintes sont de la forme t bj v = cj où bj ∈ IRn j = 1, · · · , m , cj ∈ IR.
D’une part l’obtention des conditions d’optimalité avec multiplicateur de La-
grange est facile à partir de la proposition 1.6 ; d’autre part cette situation peut
être considérée comme un intermédiaire algorithmique : la minimisation d’une
fonction quadratique avec contraintes d’égalités linéaires peut servir à minimiser
la même fonction avec des contraintes d’inégalités linéaires ; ce dernier problème
pouvant être utilisé séquentiellement pour approcher un problème général de
programmation mathématique : programmation quadratique séquentielle (voir
§2.4).
Le mot contraintes est fréquent en optimisation ; en analyse mathématique
c’est la situation de minimisation dans une partie K d’un espace vectoriel. Il
convient de ne pas confondre le sens du mot contrainte en optimisation avec les
contraintes mécaniques ; dans ce dernier sens les Belges parlent de tension ; en
anglais on parle de ”constraint” en optimisation et de ”stress ” en mécanique.
Nous considérons donc le problème :
(C.L.E) Minimiser J : IRn −→ IR dans l’ensemble K = v| t bj v = cj j = 1, · · · , m


où bj ∈ IRn cj ∈ IR.


ou encore K = v| t B v = c où les colonnes de la matrice B sont les vecteurs

bj :  
c1
B = [b1 | b2 · · · | bm ] c =  ... .
 

cm

Le théorème ci-dessous étend le (i) et (ii) de la proposition 1.8, au cas avec


contraintes linéaires ; cette condition n’est pas suffisante (voir plus loin).

23
Théorème 2.1. : Soit le problème (C.L.E) avec J continue, et les bj sont sup-
posés linéairement indépendants.
(i) Si J tend vers l’infini quand kvk −→ +∞ dans K fermé ou si K est fermé,
borné alors J atteint son minimum (ou maximum) en au moins un point v ∗ ∈ K.
(ii) Si J est différentiable et si J atteint son minimum en v ∗ ∈ K, alors il existe
λ∗j ∈ IR , j = 1, · · · , m (des multiplicateurs de Lagrange) tels que on ait la
C.N.O.(condition nécessaire d’optimalité)
X
grad J(v ∗ ) + λ∗j bj = 0 ou de façon équivalente
 ∗ 
λ1
∗ ∗ ∗  .. 
grad J(v ) + B λ = 0 avec λ =  .  B = [b1 |b2 · · · |bm ]
λ∗m
0 ∗ t ∗ t
ou encore J (v ) + λ B = 0

En pratique, il est commode d’introduire le Lagrangien L(v, λ) = J(v) + t λ(t B v − C)


∂L ∗ ∗
la C.N.O. s’écrit alors (v , λ ) = 0 sans oublier la contrainte t B v − C = 0
∂v
∂L ∗ ∗
qui n’est autre que (v , λ ) = 0 .
∂λ
Démonstration
(i) Comme dans le cas sans contrainte de la proposition 1.8 avec la technique
de la suite minimisante, et en utilisant la compacité des fermés, bornés de IRn :
v ∗ ∈ K puisque K est fermé.
(ii) Pour obtenir la C.N.O. , comme dans le cas sans contrainte on part de
J(v ∗ + ρ w) − J(v ∗ ) ≥ 0 mais ici on doit avoir v ∗ ∈ K et v ∗ + ρ w ∈ K i.e.
t
bj (v ∗ + ρ w) = cj et donc t bj w = 0.
Posons donc KT = w ∈ IRn / t bj w = 0 (C’est le sous- espace vectoriel tan-

gent à K d’où la notation !) ; comme KT est un sous- espace vectoriel nous


pouvons faire tendre ρ → 0 par valeurs positives ou négatives et donc :

J(v ∗ + p w) − J(v ∗ )
≥ 0 pour ρ ≥ 0 donne
ρ
0 ∗
J (v , w) ≥ 0 tandis que ρ ≤ 0 donne
J 0 (v ∗ , w) ≤ 0 et donc J 0 (v ∗ , w) = 0.
Mais à la différence du cas sans contraintes, J 0 (v ∗ , w) n’est nul que pour w ∈
KT !
Remarquons que KT = Ker t B et donc : ∀w ∈ Ker t B t
w grad J(v ∗ ) = 0 ;
avec la proposition 1.6 cela montre que le système B λ = − grad J(v ∗ ) est
soluble, d’où l’existence de λ∗ énoncé dans le théorème.

Cas Particulier : J quadratique


1
J = tv A v − tv F
2
grad J = A v − F et la C.N.O. devient :

 A v + B λ = F avec la contrainte
(2.1)
t
B v = c

24
t
Lemme 2.1. Si il existe α > 0 , ∀w ∈ KT w A w ≥ α kwk2 , le système
(2.1) admet une solution unique.

Noter que A n’est pas nécessairement inversible mais que sa restriction à KT


est inversible.
Dans ce cas particulier on peut donner une démonstration directe.
En effet, il suffit de vérifier

A v + B λ = 0 donne une solution nulle
t (2.2)
B v = 0

or la première équation donne t v A v + t v B λ = 0 et avec la dernière équation


il reste t v A v = 0 d’où v = 0 et λ = 0 en reportant dans la première équation.

Remarques sur le système (2.1)

(1) Dans le cas où A est inversible, on a v = −A−1 B λ − A−1 F et la deuxième


équation donne −t B A−1 B λ = c + A−1 F ; ce système permet de trouver λ.
Cette méthode n’est pas conseillée numériquement mais est commode dans les
petits exemples.
(2) De plus dans le cas A = I :
v = −Bλ + F et + t B B λ = −c + t B F
donc v = −B(t B B)−1 (−c + t B F ) + F .

Remarque 2.1. A noter que la situation du cas particulier est tres fréquente
dans l’analyse par éléments finis de systèmes elliptiques d’équations aux dérivées
partielles, en particulier en mécanique des structures élastiques.
1
kv − F k2 avec la contrainte v ∈ K = t Bv − c = 0

Exercice 2.1. J(v) =
2
a) trouver explicitement v et λ.
b) comparer avec la projection sur un sous- espace paramétré.
c) cas où B a une seule colonne.
d) cas où B a des colonnes orthonormées.

Solution
a) J(v) = t v v − t v F + t F F
c’est à dire A = I ; on a donc la formule du 2) ci- dessus :
v = −B (t B B)−1 t B F + B (t B B)−1 c + F

b) le premier terme B (t B B)−1 t B F n’est autre que la projection de F sur


le sous- espace {v/ v = B x x ∈ IRm } qui est orthogonal à KT (voir pro-
position 1.5), le deuxième terme tient compte du fait que K ne passe pas par
l’origine ; si l’on connait un v0 ∈ K c = t B v0 ) on peut écrire :
t −1 t
v = −B ( B B) B (F − v0 ) + F

c) Quand B = b a une seule colonne K = {v/t b v = c} est un hyperplan affine ;

25
b
F

K
v
v
0

O t
b v = 0

Fig. 2.1 – Projection sur un sous espace t bv − c = 0

b tb
− t (F − v0 ) est la projection de −(F − v0 ) sur la droite portée par b ; ajouté
bb
à F cela ramène dans K (voir figure 2.1).

d) Dans le cas où t B B = IIRm on a :


v = −B t B(F − v0 ) + F attention B t B 6= IIRm

t
t b b(F−v0 ) b2
b1 b(F−v0 ) 22
1 v0
t
B B (F−v0 )

b
1

Fig. 2.2 – Cas où t B B = IIRm

Remarque 2.2. Il convient de réaliser intuitivement la C.N.O. à partir des


courbes de niveau de J ; visualisons pour une fonction de deux variables x, y.

La figure 2.3 représente les courbes de niveau de (x, y) 7−→ J(x, y) ; en l’abscence
de contraintes, J atteint son minimum au point m autour duquel tournent les

26
y

m
D

*
x

Fig. 2.3 – La C.N.O. à partir des courbes de niveau

courbes de niveau comme sur une carte géographique ; plus les ellipses sont
grandes, plus grande est J(x, y) ; on constate que lorsqu’on s’éloigne du point
v∗ = (x∗ , y∗ ) où D est tangent à une courbe de niveau, la fonction augmente ;
c’est donc que (x∗ , y∗ ) est un minimum local de J sur la droite D ! Or la normale
à la courbe de niveau est ∇J(x∗ , y∗ ) ; ce vecteur est donc colinéaire au vecteur b
orthogonal à la droite t b v − c = 0 ; ou ∇J(x∗ , y∗ ) + λb = 0 ce qui n’est autre
que la C.N.O. du théorème 2.1 avec une seule contrainte.

Voici quelques exercices pour lesquels on peut obtenir une solution explicite assez
facilement ; le seul but est de manipuler la C.N.O. ; on dessinera les contraintes
et les courbes de niveau.

Exercice 2.2. Soit J(x, y) = x2 + y 2 et K = (x, y) 2x + y = 2 . Déterminer




le minimum et le multiplicateur de Lagrange.


kxk2
Même question pour x ∈ IRn et K = x t b x − c = 0

Exercice 2.3. J(x, y) =
2
1 2
(x1 + x22 + x23 ) et K = x x1 − x2 − 1 = 0 , x2 − x3 − 2 = 0

Exercice 2.4. J(x, y) =
2
   
6  t 1 1
Exercice 2.5. Projection de β =  0  sur K = x B x = 0 avec B =  1 2  ;
0 1 3
distance de f à K.

27
2.2 Fonction quadratique avec contraintes d’égalités
linéaires

2.2.1 Introduction
1t
Soit donc pour v ∈ IRn J(v) = v A v − t v f avec la contrainte
2

t
B v − c = 0 où n est une matrice à n lignes et m colonnes avec
B

m
m < n, et la C.N.O. 
Av + Bλ = f
t
Bv = c
on a vu dans les petits exemples qu’il est commode de tirer v en fonction de λ de
la première équation et de reporter cette expression dans la dernière équation,
ce qui fournit un système pour déterminer λ :
v = A−1 Bλ + A−1 f d’où −t BA−1 Bλ = c − t BA−1 f ce qui permet de déterminer
λ que l’on reporte ensuite pour trouver v.
Cette méthode peut être transformée en un algorithme numérique sous réserve
que A soit inversible avec une décomposition de Cholesky de A puis de t BA−1 B.

2.2.2 Elimination

Nous allons présenter une autre méthode qui s’applique même si A n’est pas
inversible ; rappelons que cela n’empêche pas le système d’avoir une unique so-
lution ; le problème de minimisation a également une solution dès que A est
définie positive sur l’espace tangent aux contraintes (Lemme 2.1).
Il s’agit essentiellement d’une méthode d’élimination ; voyons cela d’abord avec
une seule contrainte :
t
b v = c si bi 6= 0 on peut tirer
" n
#
1 X
v1 = − bi vi + c
b1 i=2

et reporter cela dans la 1ère équation ; il est alors possible d’éliminer λ1 : une
façon indirecte de s’en convaincre est que l’on a paramétré les contraintes, on a
donc un problème de minimisation sans contraintes ; avec une seule contrainte,
la seule précaution est de vérifier que b n’est pas trop petit, sinon prendre un
autre coefficient ; dans le cas de plusieurs contraintes il faut chercher une sous-
matrice m × m dont le déterminant n’est pas trop petit.
Remarquons toutefois que cette transformation peut s’écrire :

28
 1 
 
b1 v2
 0 
v = s c + Z v [ avec s =  v [ =  ... 
   
.. 
 . 
vn
0
− bb21 · · · − bbm1
 
 1 ··· 0 
et Z = 
 
.. 
 . 
0 ··· 1

Notons que l’on a banalement t s b = 1 et que t b Z = 0


c’est à dire que les colonnes de Z constituent une base de l’hyperplan t b w = 0
pour w ∈ IRn . L’algorithme ci-dessous est une généralisation de cette remarque.

2.2.3 Algorithmes d’élimination généralisée

En suivant Fletcher, 1981 [6] avec une présentation légérement différente, nous
supposons que nous disposons de deux matrices S et Z

 
n S Z n telles que la matrice S Z

m n−m
soit inversible et que t B S = IIRm t
BZ = 0

Nous verrons au §2.2.4. une méthode possible pour construire S et Z.

Comme
 dans le cas d’un hyperplan, la deuxième condition, jointe à l’inversibilité
de S Z , signifie que les colonnes de Z constituent une base du sous- espace
vectoriel t B w = 0 avec w ∈ IRn .  
t · · · bm
Quand à la première
 condition, elle s’explicite en b i sj = δ ij avec B = b 1
S = s1 · · · sm .
Cette condition rappelle celle de base duale du sous- espace vectoriel engendré
par les bi ; toutefois cela n’est le cas que si t sj Z = 0, ce qui n’est pas
nécessairement le cas ; toutefois voir le §2.4. où nous verrons aussi comment
construire pratiquement ces matrices.
L’idée est très simple tout comme au §2.2.2., ces matrices permettent de pa-
ramétrer les contraintes :
v = Sc + Zy avec y ∈ IRn−m si et seulement si t
Bv = c (2.3)

En effet comme [S|Z] est inversible, à tout v on peut associer x, y tels que :
v = [S|Z] xy


Nous avons dessiné, sur la figure 2.4 , le cas où t sj z = 0 j = 1, 2 avec


n = 3 , m = 2 dans ce cas Z se réduit à un seul vecteur ; S c est alors l’in-
tersection de la droite t B v = c et du plan t Z w = 0 w ∈ IRn .

29
v
z y

Sc

s1 s
2

b b2
1

Fig. 2.4 – Cas où t sj z = 0 ; j = 1, 2

Pour trouver la solution, il suffit donc de considérer


Av + Bλ = f qui s’écrit :
A Z y + A S c + B λ = f et en multipliant par t Z on élimine λ :
t
Z A Z y = t Zf − t Z A S c
Ce système est soluble en y puisque A est définie positive sur le sous espace
vectoriel {w ∈ IRn /t B w = 0} et ce sous espace vectoriel est engendré par les
colonnes de Z ! on peut donc utiliser l’algorithme de Cholesky pour calculer y.
On en déduit v avec (2.3) puis λ en multipliant
A v + B λ = f par t S : λ = t S f − t S A v.

2.2.4 Triangulation par des matrices orthogonales

Nous indiquons ici une méthode numériquement stable pour construire les ma-
trices S et Z du paragraphe précédent. Pour cela nous supposons savoir construire
une matrice Q orthogonale n×n et une matrice R triangulaire supérieure m×m :
 

   
 Q1 Q2  R R
Q= n telles que B = Q = [Q1 Q2 ] = Q1 R
0 0
m n−m
Avec ces matrices si on suppose S = Q1 t R−1 on a bien t B S = I et Z = Q2
satisfait t B Z = 0 puisque t B Z = t R t Q1 Q2 et ce dernier produit est nul car
comme Q est orthogonale, ses colonnes sont orthogonales entre elles !
Dans ce cas la matrice S satisfait de plus :
t
S Z = 0

30
En effet t S Z = R−1t Q1 Q2 = 0. Nous voyons que dans ce cas s1P , · · · , sm consti-
tue la base duale de b1 , · · · , bm (dans le sous- espace vectoriel λi bi ).
La figure 2.4 correspond donc à cette situation.

A noter que pour orthogonaliser on peut être tenter d’utiliser la méthode de


Gramm- Schmidt : elle est à éviter car elle n’est pas stable numériquement.

Une bonne méthode numérique consiste à utiliser les opérateurs de Householder :

h th v
S(h) v = v − 2 th h
v, h ∈ IRn . (2.4)
t
h hv
On reconnaı̂t en th h
la projection de v sur la droite engendrée par h ; voir
figure 2.5

Exercice 2.6. i) Pour h 6= 0 montrer que S(λ h) = S(h) avec λ ∈ IR, λ 6= 0


montrer que S(h) est l’opérateur de symétrie orthogonale par rapport à l’hyper-
plan t h w = 0.
ii) montrer que S(h) est un opérateur symétrique t S = S et orthogonal S t S =
t
S S = I ce qui avec la symétrie se réduit à S 2 = I.
iii) Si kvk = kwk, montrer qu’il existe h ∈ IRn telque w = S(h) v.

Solution : i) S(λ h) = S(h) est immédiat avec λ 6= 0.


Ceci revient à dire que la projection de v et de S(h) v sur h sont opposées et
ont même projection sur {w, t h w = 0} ; prenons khk = 1 or S(h) v = v − 2ht h v
t
h S(h) v = t h v − 2t h v = −t h v
donc la projection de S(h) v sur h est −h t h v est bien opposée à la projection
de v.
D’autre part : la projection de v sur l’hyperplan t h w = 0
P v = v − h th v
P S(h) v = S(h) v − h t h S(h) v = v − 2ht h v + ht h v = v − ht h v = P v
ii) simple calcul matriciel.
iii) l’interprétation avec la symétrie amène à prendre h = w − v ; il faut alors
calculer
h th v h t h h + 2h t h v h t h (h + 2v)
w − S(h) v = w − v + 2 t = th h
= th h
hh
or h + 2v = w + v donc t h(h + 2v) = t (w − v)(w + v) = t w w − t v v

A partir
 de  ces propriétés il est facile de transformer un vecteur v en kvke1 où
1
 0 
e1 =  .  soit h1 telque kvke1 = S(h1 ) v
 
 .. 
0
si
 v est la première colonne de A : S(h1 ) A = A1 a pour première colonne
kvk
 0 
 ..  et donc A = S(h1 ) A1 d’où la possibilité de triangulariser à l’aide de
 
 . 
0

31
matrices orthogonales.
A noter que cette idée est à l’origine d’un bon algorithme de calcul de valeurs
et de vecteur propres : la méthode Q R ; voir par exemple Schatzman [9].

h
v
v
t
h hv
Pv

h
S(h)v w

fig 2.5 a fig 2.5 b


Fig. 2.5 – symétrie orthogonale

32
2.2.5 Programmation quadratique (par minimisation su-
cessive de fonctions quadratiques avec contraintes
d’égalités)

Dans le cas d’une fonctionnelle quadratique avec des inégalités linéaires, on peut
utiliser itérativement la minimisation de la fonctionnelle avec des contraintes
d’égalité. considérons la minimisation de
1t
J(v) = vAv −t vf
2
avec les contraintes t Bv − c ≤ 0. Remarquons que
J(v + d) = q(d) + J(v)
avec
1t
q(d) = dAd +t dAv −t df
2
Algorithme :
1. Si le point initial ṽ 0 n’est pas admissible, on peut le projeter sur l’ensemble
défini par les contraintes d’égalités : t Bv − c = 0 ; on appelle v 0 cette
projection ; attention si les colonnes de B ne sont pas indépendantes, il faut
en retirer jusqu’à obtenir des colonnes indépendantes, ce qui permettra
d’utiliser l’algorithme de décompostion QR de B.
2. A partir d’un point admissible v 0 , itérer pour k de 0 à itermax donné.
(a) – A la première itération, on détermine sat(v k ), les indices pour les-
quels t B j v − cj = 0
– Si des multiplicateurs négatifs sont apparus à l’iteration précédente,
on prend sat(v k ) = satred (v k−1 ) ;
– sinon, on prend sat(v k ) = sataug (v k−1 )
(b) Minimiser q(d) avec t Bj d = 0 pour j ∈ sat(v k ) ; soit dk le minimum ;
(c) Si dk = 0 et si les multiplicateurs du problème avec égalités sont ≥ 0
on s’arrête ; on a obtenu le minimum
(d) si des multiplicateurs sont négatifs, on retire le plus négatif, soit
satred (v k ) les nouveaux indices ; on minimise q(d) avec t Bj d = 0 pour j ∈
satred (v k )
(e) Si dk 6= 0, posons : ṽ k+1 = v k + dk ; on distingue 2 cas :
cas 1 Si ṽ k+1 satisfait les autres contraintes, J a diminué et on le
prend comme nouveau point de départ v k+1 = ṽ k+1 .
cas 2 Si ṽ k+1 ne satisfait pas les autres contraintes,, on cherche ρ
tel que le point v k + ρdk soit admissible ; on doit donc avoir
t
Bj (v + ρdk ) − cj ≤ 0 ;
comme t Bj d = 0 pour j ∈ sat(v k ) on trouve que
cj −t Bj v
ρ ≤ ρ∗ = M in{ tB d
/ sat(v k ), t Bj d > 0}
/j∈
j

On prend ρ = min(1, ρ∗ ) et v k+1 = v k + ρ∗ dk et on rajoute dans


les contraintes saturées celle que l’on vient d’atteindre avec le
pas ρ∗ : sataug (v k ), et on recommence.

33
Fin de la boucle d’ itération.

Cet algorithme peut dans des conditions exceptionnelles ne pas converger vers
le minimum cherché.

Cependant, si l’on arrive à d = 0 avec des multiplicateurs positifs, on a : Av −


f + Bsat λsat = 0 et t Bv = c ; v satisfait donc les CNO du premier ordre ; si
deplus A est défini positif, il satisfait aussi les condition suffisantes du deuxiéme
ordre.

D’autre part quand d n’est pas nul, la fonctionnelle décroit à chaque itération.

34
2.3 Minimisation avec contraintes

2.3.1 Condition d’optimalité avec contraintes d’égalité

On souhaite obtenir une condition analogue à celle obtenue au théorème 2.1


dans lequel les contraintes sont supposées linéaires t bj v = cj ; si l’on reprend
la démonstration de ce théorème on voit qu’un des ingrédients est que si v ∗ est
minimum local v ∗ + ρw satisfait les contraintes si et seulement si t bj w = 0 ;
cette caractérisation simple des directions admissibles w vient naturellement du
caractère linéaire des contraintes.
Une façon d’adapter cette approche au cas de contraintes non linéaires Fj (v) = 0
est de considérer des wk tels que il existe ρk avec v ∗ + ρk wk admissible et de
considérer les w qui sont limite de wk quand ρk −→ 0 ; cette approche s’étend
au cas avec contraintes d’inégalités et se trouve par exemple dans Fletcher [6]
(1981).

Du point de vue géométrique cela rappelle la définition d’une tangente à une


surface comme limite de sécantes.

Il nous paraı̂t plus commode de caractériser les w admissibles comme les vecteurs
tangents en v ∗ , aux courbes passant par v ∗ et satisfaisant les contraintes.

K = {v ∈ IRn / Fj (v) = 0; j = 1, · · · , n} ≡ {v ∈ IRn / F(v) = 0} où


F : IRn −→IRm 
F1 (v)
v 7−→ 
 .. 
. 
Fm (v)
Définition 2.1. L’espace tangent en v ∗ ∈ K est
 
∗ dv n ∗ 1
KT (v ) = w = ∈ IR /v(0) = v , ∃ ε > 0 , v ∈ C (−ε, ε) , v(t) ∈ K
dt t=0

On pourrait démontrer qu’il s’agit bien d’un sous-espace vectoriel mais ce qui
nous interésse ici est d’en donner une caractérisation à l’aide de la dérivée de
F ; pour cela nous avons besoin d’une condition dite de régularité.
0
Définition 2.2. v ∗ ∈ K est dit régulier pour K si les Fj (v ∗ ) sont des formes
0
linéaires indépendantes (ou grad Fj (v) = t Fj (v ∗ ) sont des vecteurs indépendants).

Cette terminologie habituelle en optimisation correspond à ce que les géomètres


appelent une submersion (voir par exemple Berger-Gostiaux [3] (1972), F. Pham
[8] ) ; le résultat suivant est classique.
(1992)
Théorème 2.2. En un point régulier v ∗ ∈ K, on a KT (v ∗ ) = KG (v ∗ ) avec

KG (v ∗ ) = {w ∈ IRn , F 0 (v ∗ ) w = 0}

ou de façon équivalente

35
\
KG (v ∗ ) = w ∈ IRn , Fj0 (v ∗ ) w = 0 ; j = 1, ..., m ≡ Ker Fj0 (v ∗ ) .

j=1,...m

Démonstration :
Nous montrons d’abord que KT (v ∗ ) ⊂ KG (v ∗ ) ;
soit w ∈ KT (v ∗ ), il existe donc une courbe de K {t 7−→ v(t)} telle que v(0) = v ∗ et
dv ˛
˛
; comme F (v(t)) = 0 on en déduit par la dérivation de fonctions composées
dt t=0
˛
dv
que : F 0 (v(t) = 0 et donc en t = 0 F 0 (v ∗ ) w = 0.
dt

Réciproquement, si w ∈ KG (v ∗ ) nous devons construire une courbe située sur K au


voisinage de v ∗ ; en s’appuyant sur l’intuition géométrique (voir figure 2.6) il est naturel
X m
de chercher cette courbe dans le sous-espace affine v ∗ + αw + uj grad Fj (v ∗ )
j=1

w
grad F
1
v
*

Fig. 2.6 – Courbe tangente

nous allons montrer que l’on peut trouver des fonctions α −→ uj (α) telles que au
voisinage de α = 0 celle courbe soit tangente à w ; nous cherchons donc α −→ u(α)
telque
F (v ∗ + αw + t F 0 (v ∗ )u(α)) = 0 ;
nous sommes dans une situation de fonction implicite pour
f (α, u) = F (v ∗ + αw + t F 0 (v ∗ )u), on a
∂f ˛
˛
= F 0 (v ∗ ) w = 0 (car w ∈ KG (v ∗ ))
∂α ˛ α=0 ,u=0
˛
∂f ˛
= F 0 (v ∗ ) t F 0 (v ∗ )
∂u α=0 ,u=0
˛

Comme v ∗ est régulier les colonnes de F 0 (v ∗ ) sont linéairement indépendantes, F 0 (v ∗ ) t F 0 (v ∗ )


est définie positive (exercice 1.8 du §1.1.) donc inversible ; le théorème des fonctions
implicites (Pham [8]) assure donc l’existence au voisinage de zéro, d’une fonction
α 7−→ u(α) telle que

f (α, u(α)) = 0 ou F (v ∗ + αw + t F 0 (v ∗ )u(α)) = 0


∂f d u ∂f
et l’on a = − en particulier en α = 0
∂u d α ∂α
du˛
˛
F 0 (v ∗ ) t F 0 (v ∗ ) = −F 0 (v ∗ ) w = 0 car w ∈ KG (v ∗ ) ;
d α α=0
˛

36
finalement la courbe
α 7−→ v ∗ + αw + t F 0 (v ∗ ) u(α) est tangente à w, situé sur K et passe par v ∗ .

Cette caractérisation de l’espace tangent va nous permettre d’obtenir une condi-


tion nécessaire d’optimalité du 1er ordre ; comme pour le théorème 2.1 cette
condition n’est pas suffisante et pour un problème de maximisation, nous au-
rions la même condition.

Nous considérons le problème (avec contraintes d’égalités) :


(C.E.) Minimiser J : IRn −→ IR dans l’ensemble S = {v ∈ IRn / F(v) = 0} avec
F : IRn −→ IRm .

Nous avons le théorème suivant qui généralise le théorème 2.1 .

Théorème 2.3. Soit le problème (C.E.) avec J et F continues.


(i) Si J tend vers l’infini quand kvk −→ +∞ ou si K est (fermé), borné alors
J atteint son minimum (ou maximum) en au moins un point v ∗ .
(ii) Si J et F sont différentiables et si J atteint un minimum (ou maximum)
local en v ∗ (point régulier pour S), alors il existe λ∗j ∈ IR , j = 1, · · · , m (les
multiplicateurs de Lagrange) tels que on ait la C.N.O. :

∀w ∈ IRn J 0 (v ∗ ) w + t λ F 0 (v ∗ ) w = 0
ou grad J(v ∗ ) + t F 0 (v ∗ ) λ = 0 .

Remarque 2.3. En pratique, il est commode d’introduire le Lagrangien


∂L ∗ ∗
L(v, λ) = J + t λ F la C.N.O. s’écrit : (v , λ ) = 0 sans oublier la contrainte
∂v
∂L ∗ ∗
sous la forme : (v , λ ) = 0 .
∂λ

Démonstration
(i) Comme dans le cas sans contraintes avec une suite minimisante ; comme les
F sont continues, S est fermé et les limites de sous-suites sont bien dans S ;
dans le cas où S est fermé, borné, on utilise la compacité des fermés, bornés de
IRn .

(ii) Nous pouvons d’abord dégager le

Lemme 2.2. Sous les hypothèses du théorème, ∀w ∈ KT (v ∗ ) J 0 (v ∗ ) w = 0 .

La démonstration de ce lemme est très simple et utilise la même idée que dans
le cas sans contraintes : on utilise les variations de v ∗ ; on les prend ici, sous la
forme d’une courbe de S passant par v ∗ : t 7−→ v(t) ; on a donc

J(v(t)) − J(v ∗ )
J(v ∗ ) ≤ J(v(t)) et donc ≥ 0
t

37
dv
pour tout t > 0 ; en faisant tendre t −→ 0+ on obtient J 0 (v ∗ ) ≥0
dt t=0

dv

avec t < 0 et t → 0− , on obtient J 0 (v ∗ ) ≤ 0 et donc
dt t=0

dv
J 0 (v ∗ ) = 0 ou par définition de l’espace tangent : ∀w ∈ KT (v ∗ ) J 0 (v ∗ ) w = 0

dt t=0

Pour la démonstration du (ii) du théorème, on utilise ce lemme et la caractérisation


KT (v ∗ ) = KG (v ∗ ) (théorème 2.2)
et on conclut comme dans le cas avec contraintes linéaires avec la proposition
1.6 qui fournit l’existence des λ.

Voici quelques exercices d’application directe de ce théorème.


n
P Soit m ∈ IR , trouver la distance de m à l’hyperplan
Exercice 2.7.
n
{x ∈ IR / ai xi − b = 0} .

1X
Solution La fonctionnelle à minimiser n’est pas précisée ; si J(x) = |xi − mi |p ,
p
le Lagrangien est
X 
L(x, λ) = J(x) + λ ai xi − b et la C.N.O.

∂L
=0 donne |xi − mi |p−1 sgn |xi − Fi | + λai = 0
∂xi
avec
P
ai xi − b = 0

pour un calcul effectif, on essaye de tirer xi de la 1ère équation en fonction de


λ et de reporter dans la contrainte ; pour simplifier prenons p = 2 ;
P
b − ai xi
λ= P 2 xi = mi − λai
ai
1 |b − ai mi |2
P
et P 2 carré de la distance euclidienne à un hyperplan ; formule
2 ai
élémentaire connue.

Cet exemple pouvait se traiter avec le théorème 2.1 ; mais voici une situation
”duale ” qui relève du théorème précédent.

X
|xi |p − 1 = 0
P
Exercice 2.8. Minimiser J(x) = ai xi avec la contrainte

X
solution L = J + λF avec F(x) = |xi |p − 1
C.N.O.

38
Fig. 2.7 – Exercice 2.8, minimisation d’une fonction J

ai + λPp |xi |p−1 sgn xi = 0


avec |xi |p − 1 = 0
ai
dans le cas p = 2 xi =

a2i
P
1 X
et a2i − 1 = 0 donne 2
λ =
4λ2 4
± ai
x∗i ± = P 2 1/2 J(x∗i ± ) = ±(
X
a2i )1/2
( ai )

La C.N.O. fournit 2 solutions dont l’interprétation géométrique est évidente ;


pour les départager il faut une condition de 2ième ordre (voir ...)
Exercice 2.9. soit a = (1, 0), trouver la distance de a à la parabole d’équation
y 2 = 4 x ; ceci par 3 méthodes :
i) tirer x en fonction de y
ii) tirer y en fonction de x
iii) utiliser les multiplicateurs de Lagrange
Comparer et commenter les résultats trouvés.
Exercice 2.10. Soit F(x) = x21 + x22 + x23 − R2
3
et S = x ∈ IR / F(x) = 0
a) Soit G orthogonal à F 0 (x), construire une courbe tangente à G.
b) Ecrire une C.N.O. avec le plan tangent en x∗ minimum de J(x) = x1 +x2 +x3
sur S ; trouver x∗ .
c) Comparer avec la C.N.O. avec multiplicateurs de Lagrange ; trouver x∗ .
d) Vérifier la C.S.O. du 2nd ordre.

2.3.2 Minimisation avec contraintes d’inégalités

Introduction

On a vu lors de la démonstration de la C.N.O. du 1er ordre avec contraintes


d’égalités linéaires que l’on utilisait un résultat d’équivalence entre la résolubilité
d’un système surdéterminé B L = g et le fait que g soit orthogonal au noyau de
B (proposition ??) ; dans le cas d’égalités linéaires Ker t B = w ∈ IRn / t bj w = 0
t


(bj sont les colonnes de B) est un ensemble de directions admissibles.

39
En présence de contraintes d’inégalités, les directions admissibles sont mainte-
nant définies par des inégalités comme le montre l’exemple ci-dessous ;

Considérons l’exemple très simple suivant :


minimiser la fonction J(x) avec la contrainte
(b1 , x) ≤ c1 ; soit x∗ le minimum ; si (b1 , x∗ ) = c1 , on a donc J(x∗ +ρy)−J(x∗ ) ≥
0 pour (b1 , y) ≤ 0 et donc en divisant par ρ et en faisant tendre ρ > 0 vers zéro
J 0 (x∗ , y) ≥ 0 pour (b1 , y) ≤ 0 ; si (b1 , x∗ ) < c1 , on trouve J 0 (x∗ , y) = 0

y
b y

y
y

Fig. 2.8 –

Comme grad J(x∗ ) doit avoir un produit scalaire positif avec tous les y qui
vérifient (b1 , y) ≤ 0, on voit intuitivement que grad J(x∗ ) doit être de la forme
grad J(x∗ ) = −λ1 b1 avec λ1 ≥ 0.

Exercice 2.11. montrer l’existence de λ1 ≥ 0 dans l’exemple ci-dessus.


1 1
Exercice 2.12. Pour la fonction J(x) = J(x1 , x2 ) = (x − 1)2 + (x2 − 1)2

2
on cherche à minimiser avec 2 contraintes (b1 , x) ≤ 0 et (b2 , x) ≤ 0
a) à l’aide d’un dessin, distinguer dans quels cas le minimum est atteint en
t
xm = (1, 1).

Indications. Le minimum xm de J sans contraintes est x1m = 1, x2m = 1 ; suivant la


position de la droite d’équation (b1 .x) = 0 par rapport à ce minimum nous avons deux
situations très différentes.

1er Cas. Si (b1 . xm ) < 0 alors pour ρ assez petit x = xm + ρy vérifie encore la
contrainte pour tout y ∈ IR2 ; toutes les directions sont admissibles et J 0 (xm , y) = 0
pour tout y ∈ IR2 comme en l’absence de contraintes ; en fait dans ce cas cette

40
xm2

1
xm

Fig. 2.9 –

contrainte est inutile et n’influe pas sur la minimisation de J.

2ième Cas. Si au contraire (b1 . xm ) > 0 comme sur la figure 2.9, on constate
en regardant les courbes de niveau que le minimum x∗ 6= xm se trouve sur la droite
(b1 . x) = 0 mais alors x = x∗ + ρy ne vérifie la contrainte que si (b1 . y) ≤ 0. Il reste à
discuter la contrainte (b2 , xm ) < 0
Exercice 2.13. Reprendre dese exercices de projection sur sous espaces affines ;
remplacer les e’galités par des inégalités et essayer de trouver directement le
minimum ; utiliser aussi le théorème ci dessous.
Exercice 2.14. Voir les exercices de barres avec blocages du chapitre sur les
exemples me’caniques.

Conditions d’optimalité du premier ordre

Nous considérons le problème (avec Contraintes d’Inégalités)


(C.I.) Minimiser J : IRn −→ IR dans l’ensemble K = {v ∈ IRn /E(v) = 0 et F(v) ≤ 0}
avec E : IRn −→ IRm m ≤ n
F : IRn −→ IRp

Comme nous l’avons vu dans l’exemple en un point v 0 donné on peut avoir


Fi (v 0 ) < 0 ou Fi (v 0 ) = 0 suivant les indices considérés.
Définition 2.3. Une contrainte d’inégalité Fi (v) ≤ 0 est dite saturée au point
v 0 si en ce point Fi (v 0 ) = 0 ; si Fi (v 0 ) < 0 elle est dite non saturée ; par
convention une contrainte d’égalité est saturée en ce point ; on note sat(v0 ) les
indices de contraintes saturées en v0 .

Ainsi une contrainte non saturée en un point v 0 ne restreint pas le domaine


admissible au voisinage de v 0 ; il faut donc s’attendre que les conditions d’op-

41
timalités locales ne fassent intervenir que les contraintes saturées au minimum
local.

Comme dans le cas de contraintes d’égalités et pour simplifier, nous faisons une
hypothèse de régularité.
Définition 2.4. v 0 ∈ K défini en (C.I.) est dit régulier pour K, si les Ej0 (v 0 )
0 0
j = 1, · · · , m et les
 Fk (v ) pour k = 1, · · · , p,
et k ∈ sat(v ) = indices de contrainte saturée en v 0 sont des formes linéaires
0

indépendantes.

Voici le théorème qui exprime la condition d’optimalité locale du premier ordre ;


la seule mais importante nouvauté réside dans le bf signe des multiplicateurs
de Lagrange ; le résultat suivant est connu comme condition de Karush-Kuhn-
Tucker. Attention comme il y a 2 façons d’écrire une inégalité et que l’on peur
écrire le Lagrangien avec + ou − devant le multiplicateur de Lagrange les condi-
tions de signe du théorème ci dessous dépendent de la convention choisie.
Théorème 2.4. Soit le problème (C.I.) avec J , E et F continues.

(i) Si J tend vers l’infini quand kvk → +∞ (Hypothèse H1 du §1.3.1) ou si K


est (fermé), borné, alors J atteint son minimum (ou maximum) en au moins
un point v ∗ ∈ K

(ii) Si J , E et F sont différentiables et si J atteint un minimum (ou maximum)


local en v ∗ , point régulier pour K, alors il existe λ ∈ IRm , µ ∈ IRp tels que
∂L ∗ ∗ ∗
(v , λ , µ ) = 0
∂v

µ∗ ≥ 0 , t ∗
µ F(v ∗ ) = 0

∂L ∗ ∗ ∗ ∂L ∗ ∗ ∗
et (v , λ , µ ) = 0 (v , λ , µ ) ≤ 0
∂λ ∂µ

avec L(v, λ, µ) = J (v) + t λ E(v) + t µ F(v)


∂L
Remarque 2.4. la condition = 0 peut s’expliciter en
∂v
0 ∗ t ∗ 0 ∗ t ∗ 0 ∗
J (v ) + λ E (v ) + µ F (v ) = 0
ou
gradJ(v ∗ ) + t E 0 (v ∗ ) λ∗ + t F 0 (v ∗ ) µ∗ = 0 ;
∂L ∂L
les conditions =0 ≤ 0 ne font que redire les contraintes : E = 0 et
∂λ ∂µ
F ≤ 0;
la condition µ∗ ≥ 0 est typique des contraintes d’inégalités ; si l’on avait pris des
contraintes F(v) ≥ 0, µ∗ serait alors négatif ; enfin comme µ∗k ≥ 0 et Fk (v ∗ ) ≤ 0
la condition t µ∗ F(v ∗ ) = 0 donne simplement µ∗k Fk (v ∗ ) = 0, k = 1, · · · , p ;
l’interprétation est que µ∗k = 0 si Fk (v ∗ ) < 0 (c’est à dire si contraintes non
saturées)

Démonstration.

42
(i) Pour l’existence, cela est encore analogue au cas sans contraintes ; remarquons
d’abord que comme E et F sont continues, les contraintes sont un ensemble K fermé ;
soit I = inf J(v) et (v k ) une suite minimisante : J(v k ) −→ I ; si K est borné la suite
v∈K
l’est aussi ; dans le cas contraire, l’hypothèse H1 du § 1.3.1. et le lemme 1.1 assurent
que cette suite est bornée ; on peut donc extraire une sous-suite convergente : v k → v ∗ ;
0
comme K est fermé, v ∗ ∈ K ; la continuité de J donne de plus J(v k ) −→ J(v ∗ ) on a
donc I = J(v ∗ ) et le minimum est atteint en v ∗ .

(ii) Considérons l’ensemble Sv∗ = {v ∈ IRn / E(v) = 0 et Fsat (v) = 0} il est défini à
l’aide des mêmes égalités E(v) = 0 que K et l’on a remplacé les inégalités F (v) ≤ 0
par les égalités Fsat(v∗ ) (v) = 0 où Fsat(v∗ ) désigne [Fi ]i∈sat(v∗ ) (sat(v ∗ ) sont les

indices tels que Fi (v) ≤ 0 soit saturée en v = v ) ; comme Sv∗ ⊂ K, la fonction J
atteint donc son minimum au point v∗ , le théorème 2.3 assure que le Lagrangien

L(v, λ, µ) = J (v) + t λ E(v) + t µsat(v∗ ) Fsat(v∗ ) (v)

vérifie en (v ∗ , λ∗ , µ∗sat(v∗ ) )

∂L ∗ ∗ ∗
(v , λ , µsat(v∗ ) ) = 0 et
∂v
∂L ∗ ∗ ∗ ∂L ∗ ∗ ∗
(v , λ , µsat(v∗ ) ) = 0 (v , λ , µsat(v∗ ) ) = 0
∂λ∗ ∂µ∗
Mais comme v ∗ réalise un minimum local sur K qui contient Sv∗ , nous avons des
conditions supplémentaires sur le signe des µ∗i pour i indice de contrainte d’inégalité
saturée.

Comme v ∗ est régulier le noyau de t B = [t E 0 (v ∗ ) , t Fsat(v


0 ∗
∗ ) (v )] est réduit à zéro :
» –
λ
t
B = t E 0 (v ∗ ) λ + t F 0 (v ∗ ) µsat(v∗ ) = 0
µsat(v∗ )
entraine λ = 0 et µsat(v∗ ) = 0 ; avec la proposition ??, l’opérateur B est donc surjectif ;
soit donc k0 un indice de contrainte d’inégalité saturée ; on peut trouver w telque

E 0 (v ∗ ) w = 0
Fi0 (v ∗ ) w = 0 pour i 6= k0 et i ∈ sat(v ∗ )
Fk0 0 (v ∗ ) w < 0
soit alors,
0
Svk∗ = v/E(v) = 0 et Fi (v) = 0 i ∈ sat(v ∗ ) − k0
˘ ˘ ¯¯

dv ˛
0
˛
et soit t 7−→ v(t) ∈ Svk∗ telle que = w ; comme v ∗ est régulier, le théorème 2.2
dt t=0
˛
(si w est orthogonal au gradient des contraintes, il est tangent à une courbe tracée sur
la surface) assure que pour tout t petit, v(t) existe ;

comme Fk0 (v(t)) < 0 donc v(t) ∈ K pour tout t petit ; la condition d’optimalité
∂L ∗ ∗ ∗
(v , λ , µsat(v∗ ) ) = 0 donne
∂v
0 ∗
J (v ) w + 0 + µk0 t Fk0 0 (v ∗ ) w = 0

par suite comme Fk0 0 (v ∗ ) w < 0, µk0 et J 0 (v ∗ )w sont de même signe ; d’autre part
dv ˛
˛
pour t petit v(t) est dans K, donc J (v(t)) ≥ J (v ∗ ) donne J 0 (v ∗ ) ≥ 0 par suite
dt t=0
˛
µk0 ≥ 0.

Finalement nous avons obtenu toutes les conditions en posant µ∗j = 0 pour les indices
de contraintes non saturées ; dans ce cas

43
si Fj (v ∗ ) < 0 µ∗j = 0 et

si Fi (v ∗ ) = 0 µ∗i ≥ 0

on a donc bien µ∗ ≥ 0 et t µ∗ F (v ∗ ) = 0.

Conditions d’optimalité du deuxième ordre

De même que sans contraintes, l’annulation de la dérivée est une condition


nécessaire et non suffisante d’optimalité, la situation est analogue en présence
de contraintes : il convient d’utiliser les dérivées secondes du Lagrangien. La
encore comme dans le cas sans contraintes on n’a pas de conditions nécessaires
et suffisantes. Nous utilisons les mêmes notations que pour les conditions du pre-
mier ordre. Pour obtenir une condition suffisante assez générale, il est commode
d’utiliser des vecteurs obtenus comme limites de sécantes ; on peut donner un
contre-exemple où il n’existe pas de courbe qui satisfait F(x(t)) = 0 au voisinage
d’un extremum.
Définition 2.5.

KG = {w ∈ IRn : E 0 (v∗)w = 0, Fsat(v


0
∗ ) w ≤ 0}; (2.5)

KT = {w|x∗ + αk wk ∈ K and wk → w}

et l’on a le lemme :
Lemme 6. Si v ∗ est régulier KT = KG

Pour les conditions du deuxième ordre, il faut considérer des ensembles un peu
plus petit.
Théorème 2.5. (conditions nécessaires du deuxième ordre)
Soit v ∗ un point régulier de K où J atteint son minimum ; avec le théorème
précédent, il satisfait les conditions du premier ordre. Soit

KG2 = {w ∈ IRn : E 0 (v∗)w = 0, Fsat


0 0
+ (v ∗ ) w = 0, Fsat0 (v ∗ ) w ≤ 0}; (2.6)

où sat+ (v ∗ ) désigne les indices de contraintes saturées de multiplicateur stric-


tement positif et sat0 (v ∗ ) désigne les indices de contraintes saturées de multi-
plicateur nul ; on a :
∂ 2 L∗
∀w ∈ KG2 (w, w) ≥ 0 (2.7)
∂v 2

La démonstration utilise un lemme


Lemme 7. Si v ∗ est régulier

KG2 = KT2

où
KT2 = {w|x∗ + αk wk ∈ K2 and wk → w}

44
K2 = {v|E(v) = 0 Fsat+ (v∗ ) (v) = 0} ∩ K
où sat+ (v ∗ ) désigne les contraintes saturées de multiplicateur strictement posi-
tif.

Théorème 2.6. Conditions suffisantes du deuxième ordre


Si v ∗ satisfait les conditions du premier ordre et si

∂ 2 L∗
∀w ∈ KG2 (w, w) > 0 (2.8)
∂v 2
alors v ∗ est un minimum local isolé.

Démonstration Soit la suite v k = v ∗ + δ k wk ∈ K avec k wk k= 1 avec xk ∈ K ; on


0
extrait une sous-suite telle que wk → w ∈ KG .
cas 1 : w 6∈ KG2 . Dans ce cas, il existe i ∈ sat+ (v ∗ ) tel que Fi0 w < 0 La condition du
premier ordre donne :

J 0 (v ∗ )w + t λ∗ E 0 (v ∗ )w + t µ∗ F 0 (v ∗ )w = 0

comme w ∈ KG mais w 6∈ KG2 on en deduit que J 0 (v ∗ )w > 0 donc pour k0 grand


0 0
J 0 (v ∗ )wk > 0 et donc J(v k ) > J(v ∗ ). Notons que la condition du deuxième
ordre n’a pas encore servi. C’est donc pour cela qu’il n’y a aucune condition à
vérifier pour les w ∈
/ KG2 .
0
cas2 :w ∈ KG2 . Alors comme v k ∈ K donc
0 0
J(v k ) ≥ L(v k , λ∗ )

or la formule de Taylor fournit :


0
0 0 ∂L k0 (δ k )2 ∂ 2 L∗ k0 k0 0
L(v k , λ∗ ) = L∗ (v ∗ , λ∗ ) + δ k (w ) + 2
(w , w ) + o((δ k )2 )
∂x 2 ∂v
ce qui se simplifie avec la condition du premier ordre :
0
0 (δ k )2 ∂ 2 L∗ k0 k0 0
L(v k , λ∗ ) = L(v ∗ , λ∗ ) + 2
(w , w ) + o((δ k )2 )
2 ∂v
ou (comme L(v ∗ , λ∗ ) = J(v ∗ ))
0
0 (δ k )2 ∂ 2 L∗ k0 k0 0
J(v k ) ≥ J(v ∗ ) + (w , w ) + o((δ k )2 )
2 ∂v 2
Ce qui donne avec la condition du deuxième ordre :
0
J(v k ) > J(v ∗ )

Pn
Exercice 2.15. Soit J(x) = i=1 (xi − ai )2 avec les contraintes vi ≤ ci , i =
1, m ≤ n. En distingant, ai < ci , ai = ci , ai > ci préciser KG , KG2 .
σx2 y
Exercice 2.16. Soit j(x, y) = 2 + 2 + x à minimiser avec x ≥ 0 ; discuter
suivant σ.

Exercice 2.17. Soit A une matrice symétrique et J =t xAx.

45
1. Soit la contrainte t xx = 1 ; préciser le min de J (discuter suivant les
valeurs propres de A). Ce résultat est souvent attribué à Lord Rayleigh
2. Soit la contrainte t xx ≥ 1 ; préciser le min de J.
3. Soit la contrainte t xx ≤ 1 ; préciser le min de J. On trouve un résultat un
peu surprenant : x vecteur propre associé à valeur propre simple négative, les
autres étant positives ; considérer le cas n = 2, A de valeurs propres 1 et -1 ;
tracer les courbes de niveau de J)
4. Avec A, définie positive, soit la contrainte t xx = 1 et t xx1 = 0 avec x1
vecteur propre associé à plus petite valeur propre ; préciser le min de J
(discuter suivant les valeurs propres de A).

2.4 Sensitivité de la valeur optimale e la fonc-


tion

2.4.1 Introduction, coût marginal

Ce concept est particulièrement utile en microéconomie. Un exemple tiré de


la micoéconomie de l’entreprise : soit J(v) le coût de production à minimiser
pour un niveau de production déterminé par y et une fonction de production
E(v; y) = 0 donné ; il est interéssant de prévoir la variation de la valeur optimale
j(y) = J(v ∗ (y)) quand y varie ; c’est le coût marginal.

2.4.2 Résultat

Résultat général

Supposons que pour une valeur y du paramètre, il existe un minimum v ∗ (y) pour
J(v) avec la contrainte E(v; y) = 0 et que ce minimum satisfait les conditions
suffisantes du premier et du deuxième ordre, alors :
∂E
j 0 (y) =t λ
∂y
avec λ, le multiplicateur de Lagrange :
∂E
J 0 (v ∗ (y)) +t λ =0
∂v

Justification

Limitations : la démonstration de la dérivablilité s’appuie sur le théorème des


fonctions implicites ; il s’applique si la condition suffisante d’optimalité su deuxième
ordre est satisfaite.

46
Limitons nous au cas quadratique : la CNO du premier ordre s’écrit :

Av − f + Bλ = 0 (2.9)
t
Bv = y (2.10)

Pour montrer que le théorème des fonctions implicites s’applique, il faut montrer
que :
 
AB
tB 0
(2.11)

est inversible ; soit w



µ un élément du noyau ; on a alors :

Aw + Bµ = 0 (2.12)
t
Bw = 0 (2.13)

d’où t wAw = −t Bµ = 0 mais t Bw = 0 signifie que w est dans l’espace tangent


à la contrainte ; comme A est le Hessien du Lagrangien, la CSO du deuxième
ordre entraine que w = 0 ; le noyau est donc réduit à zero.

Cas particulier

En microéconomie, on a souvent E(v; y) = E0 (v; y) − y ; dans ce cas,

j 0 (y) = −λ

Conséquence : si λ < 0, j(y) d’écroit avec y.

Exercice 2.18. J = p1 v1 + p2 v2 , E(v; y) = av1α v2β − y

47
Bibliographie

[1] J. S. Arora ; O. A. Elwakeil ; A. I. Chahande ; & C. C. Hsieh,


Global optimization methods for engineering applications : a review.
Struct. Optim. 9, pp 137-159, 1995.
[2] Y. Bamberger, Mcanique de l’ingnieur I, Systmes de corps rigides,
Hermann 1981.
[3] M. Berger & B. Gostiaux, Gomtrie diffrentielle, Armand Colin, 1972.
[4] J. Ca , Optimisation, thorie et algorithmes, Dunod.
[5] L. Corradi, Instabilit delle strutture, clup, Milano, 1990.
[6] R. Fletcher, Practical methods of optimization, constrained optimi-
zation, John Willey & sons, vol 2, 1981.
[7] D. G. Luenberger, Linear and Nonlinear Programming, Second edi-
tion, Addison Wesley 1996.
[8] F. Pham, Gomtrie et calcul diffrentiel sur les varits, Interditions, 1992.
[9] M. Schatzman, Analyse numrique, cours et exercices pour la licence,
Interditions, 1991.
[10] G. Strang, Introduction to applied mathematics, Weleslley-Cambridge
Press, 1986.

48

Vous aimerez peut-être aussi