Opti l3
Opti l3
Opti l3
1
B. Rousselet
1
Laboratoire de Mathématiques, Parc Valrose, F 06108 Nice, Cédex 2, email :
br@math.unice.fr
Table des matières
1
Chapitre 1
Introduction ; optimisation
sans contraintes
1.1.1 Orientation
1.1.2 Notations
– E, Espace vectoriel de dimension finie n
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.
a b x1
x
P (x1 , x2 ) = [x1 , x2 ] b 2 + [c, d] 1 + f
2 c x2 x2
Lignes de niveau Ce sont les courbes définies implicitement par les équations
J(x) = c
3
pour divereses valeurs du niveau c.
J(u) + J 0 (u)(x − u)
X ∂J
J 0 (x)y = (x )yi (1.1)
∂xi i
Ecriture matricielle :
2a b y1 y
0
P (x)y = [x1 , x2 ] + [d, e] 1
b 2c y2 y2
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,
∂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.
dx
gradJ(x0 ). =0
dt
d’autre part :
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.
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.
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)
7
c) Mêmes questions si les valeurs propres sont de signe quelconque mais non
nulles ? (courbes de niveau).
b1
Pf
b1 b
2
b
2
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
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
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)
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.
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.
10
y
y
i
0 xi x
Fig. 1.2 – Lissage par une droite : droite des moindres carrés
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∗ .
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 .
f f
1 2
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
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
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.
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)
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.
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 ).
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
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
kxk − x∗ k ≤ 1 k
α kgradJ(x )k
20
Exercice 1.13. Démontrer la proposition
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
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
bj :
c1
B = [b1 | b2 · · · | bm ] c = ... .
cm
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
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.
24
t
Lemme 2.1. Si il existe α > 0 , ∀w ∈ KT w A w ≥ α kwk2 , le système
(2.1) admet une solution unique.
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
25
b
F
K
v
v
0
O t
b v = 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).
t
t b b(F−v0 ) b2
b1 b(F−v0 ) 22
1 v0
t
B B (F−v0 )
b
1
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
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.
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
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
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
29
v
z y
Sc
s1 s
2
b b2
1
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.
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
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
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
33
Fin de la boucle d’ itération.
Cet algorithme peut dans des conditions exceptionnelles ne pas converger vers
le minimum cherché.
D’autre part quand d n’est pas nul, la fonctionnelle décroit à chaque itération.
34
2.3 Minimisation avec contraintes
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.
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).
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
w
grad F
1
v
*
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
˛
36
finalement la courbe
α 7−→ v ∗ + αw + t F 0 (v ∗ ) u(α) est tangente à w, situé sur K et passe par v ∗ .
∀w ∈ IRn J 0 (v ∗ ) w + t λ F 0 (v ∗ ) w = 0
ou grad J(v ∗ ) + t F 0 (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 .
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
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
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
Introduction
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 ;
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.
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 –
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.
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.
µ∗ ≥ 0 , t ∗
µ F(v ∗ ) = 0
∂L ∗ ∗ ∗ ∂L ∗ ∗ ∗
et (v , λ , µ ) = 0 (v , λ , µ ) ≤ 0
∂λ ∂µ
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
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.
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.
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 = 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.
∂ 2 L∗
∀w ∈ KG2 (w, w) > 0 (2.8)
∂v 2
alors v ∗ est un minimum local isolé.
J 0 (v ∗ )w + t λ∗ E 0 (v ∗ )w + t µ∗ F 0 (v ∗ )w = 0
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 σ.
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.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
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)
Aw + Bµ = 0 (2.12)
t
Bw = 0 (2.13)
Cas particulier
j 0 (y) = −λ
47
Bibliographie
48