Vous êtes sur la page 1sur 29

Université Mohammed I

Ecole Nationale des Sciences Appliquées


Oujda

COURS DE TECHNIQUES
D’OPTIMISATION

Pr.Fatima Zahra NQI


ENSAO-GC3 Techniques d’Optimisation

Table des matières


1 Chapitre1 : Rappels de calcul différentiel 1
1.1 Quelques Notations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Rappel gradient et hessienne . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.3 Rappel des formules de Taylor . . . . . . . . . . . . . . . . . . . . . . . . . 3

2 Chapitre 2 : Optimisation et convexité 5


2.1 Rappel des fonctions convexes . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2 Fonctions elliptiques, fonctions coersives . . . . . . . . . . . . . . . . . . . 7
2.3 Conditions nécéssaires de minimum . . . . . . . . . . . . . . . . . . . . . . 9

3 Chapitre 3 : Optimisation sans contraintes 13


3.1 Méthodes de relaxation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.2 Méthodes de gradient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.3 La Méthode du gradient conjugué . . . . . . . . . . . . . . . . . . . . . . . 19

4 Chapitre 4 : Optimisation avec contraintes 24


4.1 Les Multiplicateurs de Lagrange . . . . . . . . . . . . . . . . . . . . . . . . 25
4.2 Optimisation sous contraintes d’inégalités . . . . . . . . . . . . . . . . . . . 25

2 F.Z.Nqi
Chapitre 1

Rappels de calcul différentiel


1 Chapitre1 : Rappels de calcul différentiel

1.1 Quelques Notations


1. Pour tout n ∈ N∗ , R∗ désigne l’espace euclidien R×R×. . . R. En général un vecteur
x ∈ Rn sera noté x = (x1 , x2 , . . . , xn )T (vecteur colonne).

2. On note e1 , e2 , . . . , en les éléments de la base canonique de Rn , où ei est le vecteur


de Rn donnée par

0, si j 6= i ;
(ei )j = δij = ∀i, j = 1, 2, . . . , n
1, si j = i.

(symbole de Kronecker)

3. Pour tout x, y ∈ Rn , on note par < x, y >∈ R le produit scalaire de x et y, qui est
donné par
Xn
< x, y >= xi y i .
i=1

4. Pour tout x ∈ Rn , on note par kxk ≥ 0 la norme euclidienne de x, donnée par


v
u n
√ uX
kxk = < x, x > = t x2i .
i=1

Pour tous x ∈ Rn , et r > 0, on notera par B(x, r) la boule ouverte de centre x et de rayon
r, donnée par,
B(x, r) = {y ∈ Rn , ky − xk < r}.
5. Si a, b ∈ Rn , on note [a, b] le sous ensemble de Rn donné par

[a, b] = {a + t(b − a) ≡ (1 − t)a + tb, t ∈ [0, 1]}.

L’ensemble [a, b] est aussi appelé le segment reliant a et b.


6. On a
< Bx, y >=< x, By >, ∀x ∈ Rn , ∀y ∈ Rn , B ∈ Mm,n (R)
7. Rappelons aussi l’inégalité de Cauchy-Schwartz

| < x, y > | ≤ kxk.kyk, ∀x, y ∈ Rn .

1.2 Rappel gradient et hessienne


Soit Ω ⊂ Rn un ouvert et f : Ω →→ R.

1. On dit que f est de classe C m sur Ω (f ∈ C m (Ω)) si toutes les dérivées partielles
jusqu’à l’ordre m existent et sont continues.
ENSAO-GC3 Techniques d’Optimisation

2. Pour tout x ∈ Ω et tout i ∈ {1, 2, . . . , n}, on note

∂f 1
(x) = lim [f (x + tei ) − f (x)].
∂xi t→0 t

3. Pour tout x ∈ Ω, on note le gradient de f en x :


 T
∂f ∂f ∂f
∇f (x) = (x), (x), . . . , (x) ∈ Rn , ∀x ∈ Ω
∂x1 ∂x2 ∂xn

On note aussi la jacobienne de f en x :


 
∂f ∂f ∂f
Jf (x) = (x), (x), . . . , (x) ∈ Rn , ∀x ∈ Ω
∂x1 ∂x2 ∂xn

On a
∇f (x) = (Jf (x))T
4. Pour tout x ∈ Ω et h ∈ Rn , on note la dérivée directionnelle de f en x de direction
h, où on a noté g(t) = f (x + th) :

∂f 1
(x) = lim [f (x + th) − f (x)] = g 0 (0).
∂h t→0 t

Nous remarquons que


∂f ∂f ∂f
(x) = 0, (x) = (x)
∂0 ∂xi ∂ei
Nous rappelons aussi la formule
∂f
(x) =< ∇f (x), h >, ∀x ∈ Ω, ∀h ∈ Rn .
∂h
5. Pour tout x ∈ Ω, on note ∇2 f (x) la matrice carrée dans Mn (R) donnée par

∂ 2f
∇2 f (x) ij =

(x), ∀∀i, j = 1, 2, . . . , n.
∂xi ∂xj

∇2 f (x) s’appelle aussi la matrice hessienne de f en x.


bf Remarque : Si f ∈ C 2 (Ω) alors ∇2 f (x) est une matrice symétrique ∀x ∈ Ω. (C’est
le théorème de Schartz).

1.2.1 Proposition 1.
Supposons qu’on a deux ouverts Ω ∈ Rn et U ∈ R et deux fonctions f : Ω → R
et g : U → R avec en plus f (Ω) ⊂ U ( on peut alors définir g ◦ f : Ω → R.
Supposons que f, g sont de classe C 1 avec en plus

∇(g ◦ f )(x) = g 0 (f (x))∇f (x), ∀x ∈ Ω.

Preuve :

très facile.

2 F.Z.Nqi
ENSAO-GC3 Techniques d’Optimisation

1.2.2 Proposition 2.
a) La i-ème ligne de ∇2 f (x) est la jacobienne du i-ème élément de ∇f .
b) On a
∇2 f (x)h = ∇ < ∇f (x), h >, ∀x ∈ Ω, ∀h ∈ Rn .

Preuve :

a) évidente.

b) On a
n
! n
∂ ∂f X ∂f X ∂ 2f
(x)hj = ∇2 f (x)h i .

< ∇f (x), h >= (x)hj =
∂xi ∂xi j=1
∂xi j=1
∂xi ∂xj

1.3 Rappel des formules de Taylor


1.3.1 Proposition 3.
Soit Ω ⊂ Rn ouvert, f : Ω → R, a ∈ Ω et h ∈ Rn tels que [a, a + h] ⊂ Ω, alors :

1. Si f ∈ C 1 (Ω) alors
• Formule de Taylor à l’ordre 1 avec reste intégral
Z 1
f (a + h) = f (a) + < ∇f (a + th), h > dt.
0

• Formule de Taylor-MacLaurin à l’ordre 1

f (a + h) = f (a)+ < ∇f (a + θh), h >, 0 < θ < 1

• Formule de Taylor-Young à l’ordre 1

f (a + h) = f (a)+ < ∇f (a), h > +o(khk).

2. Si f ∈ C 2 (Ω) alors
• Formule de Taylor à l’ordre 2 avec reste intégral
Z 1
f (a + h) = f (a)+ < ∇f (a), h > + −t) < ∇2 f (a + th)h, h > dt.
0

• Formule de Taylor-MacLaurin à l’ordre 2


1
f (a + h) = f (a)+ < ∇f (a), h > + < ∇2 f (a + θh)h, h >, 0 < θ < 1
2
• Formule de Taylor-Young à l’ordre 2
1
f (a + h) = f (a)+ < ∇f (a), h > + < ∇2 f (a)h, h > +o(khk2 ).
2

3 F.Z.Nqi
Chapitre 2

Optimisation et convexité
ENSAO-GC3 Techniques d’Optimisation

2 Chapitre 2 : Optimisation et convexité


2.1 Rappel des fonctions convexes
2.1.1 Définition 2.1
Un ensemble U ⊂ Rn est dit convexe si

∀x, y ∈ U, [x, y] ⊂ U.

2.1.2 Définition 2.2


Soit U ⊂ Rn un ensemble convexe et f : U → R une fonction.

1. On dit que f est convexe sur U si

f (tx + (1 − t)y) ≤ tf (x) + (1 − t)f (y), ∀x, y ∈ U, ∀t ∈ [0, 1]

2. On dit que f est strictement convexe sur U si

f (tx + (1 − t)y) < tf (x) + (1 − t)f (y), ∀x, y ∈ U, avec x 6= y, ∀t ∈]0, 1[.

3. On dit que f est concave si −f est convexe


4. On dit que f est strictement concave si −f est strictement convexe

2.1.3 Proposition 2.1


Soit U ∈ Rn un ensemble convexe, p ∈ N∗ , f1 , f2 , . . . , fp : U → R des fonctions
convexes et γ1 , γ2 , . . . , γp des constantes strictement positives.
Posons f = γ1 f1 + γ2 f2 , . . . , γp fp . Alors on a

a) La fonction f est convexe (donc toute combinaison linéaire avec des coeffi-
cients strictement positifs de fonctions convexes est convexe ).

b) Si au moins une des fonctions f1 , f2 , . . . , fp est strictement convexe alors f


est strictement convexe.

5 F.Z.Nqi
ENSAO-GC3 Techniques d’Optimisation

2.1.4 Proposition 2.2


Soit Ω ⊂ Rn ouvert, U ⊂ Ω avec U convexe et f : Ω → R une fonction. Alors on
a
Partie I (caractérisation de la convexité avec "∇").
Supposons que f est de classe C 1 . Alors

1. f est convexe sur U si et seulement si :

f (y) ≥ f (x)+ < ∇f (x), y − x >, ∀x, y ∈ U

2. f est strictement convexe sur U si et seulement si :

f (y) > f (x)+ < ∇f (x), y − x >, ∀x, y ∈ U avec x 6= y.

3. f est convexe sur U si et seulement si ∇f est monotone sur U , c’est à dire

< ∇f (y) − ∇f (x), y − x >≥ 0 ∀x, y ∈ U

4. Si ∇f est strictement monotone sur U , ( c’est à dire

< ∇f (y) − ∇f (x), y − x >> 0, ∀x, y ∈ U avec x 6= y)

alors f est strictement convexe sur U .


Partie II (caractérisation de la convexité avec "∇2 ").
Supposons que f est de classe C 2 . Alors

1. f est convexe sur U si et seulement si :

< ∇2 f (x)(y − x), y − x >≥ 0, ∀x, y ∈ U

2. Si
< ∇2 f (x)(y − x), y − x >> 0, ∀x, y ∈ U avec x 6= y
alors f est strictement convexe sur U.

Remarques :

1. Dans le cas particulier où Ω = U = Rn alors les deux inégalités de la Partie II de


la proposition précédente peuvent s’écrire :
< ∇2 f (x)h, h >≥ 0, ∀x, h ∈ Rn
et respectivement
< ∇2 f (x)h, h >> 0, ∀x, h ∈ Rn , avec h 6= 0.
2. Dans le cas particulier n = 1 et Ω un intervalle ouvert dans R, on a ∇2 f (x) = f ”(x),
donc
< ∇2 f (x)(y − x), y − x >= f ”(x)(y − x)2 .
Alors les deux inégalités de la Partie II de la proposition précédente peuvent s’écrire :
f ”(x) ≥ 0, ∀x ∈ U

6 F.Z.Nqi
ENSAO-GC3 Techniques d’Optimisation

et respectivement
f ”(x) > 0, ∀x ∈ U.

2.2 Fonctions elliptiques, fonctions coersives


2.2.1 Définition 2.3
Soit f : Rn → R. On dit que f est une fonction elliptique si elle est de classe
C 1 et si ∃α >> 0 telle que

< ∇f (x) − ∇f (y), x − y >≥ αkx − yk2 , ∀x, y ∈ Rn .

2.2.2 Définition 2.4


Soit Ω ⊂ Rn un ensemble non borné et f : Ω → R. On dit que f est coersive
sur Ω si on a
lim f (x) = +∞.
x∈Ω,kxk→→+∞

2.2.3 Proposition 2.3


Soit f : Rn → R une fonction elliptique. Alors elle est strictement convexe et
coersive. Elle vérifie en plus l’inégalité :
α
(1) f (y) ≥ f (x)+ < ∇f (x), y − x > + ky − xk2 , ∀x, y ∈ Rn .
2

Preuve :

Montrons d’abord l’inégalité (1), on utilise la formule de Taylor à l’ordre 1 avec reste
intégral. On a Z 1
f (y) = f (x) + < ∇f (x + t(y − x)), y − x > dt
0
ce qui donne
Z 1
1
f (y) − f (x)− < ∇f (x), y − x >= < ∇f (x + t(y − x)) − ∇f (x), t(y − x) > dt.
0 t
En utilisant le fait que f est elliptique, on déduit :

< ∇f (x + t(y − x)) − ∇f (x), t(y − x) >≥ αkt(y − x)k2

ce qui nous donne (car t > 0)


Z 1
2 α
f (y) − f (x)− < ∇f (x), y − x >≥ αky − xk tdt = ky − xk2 .
0 2
ce qui prouve l’inégalité.
Montrons la stricte convexité de f : de la définition de l’ellipticité on déduit :

< ∇f (x) − ∇f (y), x − y >> 0, ∀x, y ∈ Rn avec x 6= y.

7 F.Z.Nqi
ENSAO-GC3 Techniques d’Optimisation

ce qui nous donne la convexité sricte de f .


Montrons la coersivité de f
En prenant x = 0 dans l’inégalité (2), on obtient
α
f (y) ≥ f (0)+ < ∇f (0), y > + kyk2 .
2
Nous utilisons l’inégalité de Cauchy-Schwarz

| < ∇f (0), y > | ≤ k∇f (0)k.kyk

qui nous donne


< ∇f (0), y >≥ −k∇f (0)k.kyk, ∀y ∈ Rn .
En utilisant cette dernière inégalité, on déduit
α
f (y) ≥ f (0) − k∇f (0)kkyk + kyk2
2
ce qui nous donne
f (y) → +∞ si kyk → +∞.
La preuve de la proposition est alors terminée.

2.2.4 Proposition 2.4


Soit f une fonction de classe C 2 . Alors f est elliptique si et seulement si ∃β > 0
tel que

(2) < ∇2 f (x)h, h >≥ βkhk2 , ∀x, h ∈ Rn .

Preuve :

a) Supposons que f est elliptique et montrons (2). Soit h ∈ Rn fixé et notons g : Rn →


R la fonction donnée par

∀x ∈ Rn , g(x) =< ∇f (x), h >

Nous avons en utilisant la proposition 1.2 :


∂g < ∇f (x + th), h > − < ∇f (x), h >
< ∇2 f (x)h, h >=< ∇g(x), h >= (x) = lim
∂h t→0 t
En utilisant la bilinéarité du produit scalaire et ensuite le fait que f est elliptique, on
obtient :
< ∇f (x + th) − ∇f (x), th > k th k2
< ∇2 f (x)h, h >= lim ≥ α = α k h k2
t→0 t2 t2
ce qui donne (2) avec β = α.

b) Supposons maintenant que (2) est satisfaite et montrons que f est elliptique. Soient
x, y ∈ Rn fixées arbitraires, et considérons la fonction g1 : Rn → R donnée par

∀z ∈ Rn , g1 (z) =< ∇f (z), x − y > .

8 F.Z.Nqi
ENSAO-GC3 Techniques d’Optimisation

Alors

< ∇f (x) − ∇f (y), x − y >= g1 (x) − g1 (y) =< ∇g1 (y + θ(x − y)), x − y >

avec θ ∈]0, 1[ (on a utilisé l’une des formules de Taylor).


D’autre part, nous avons
∇g1 (z) = ∇2 f (z)(x − y),
et ceci nous permet de déduire, en utilisant aussi (2) :

< ∇f (x) − ∇f (y), x − y >=< ∇2 f (y + θ(x − y))(x − y) >≥ βkx − yk2 .

On a donc obtenu l’ellipticité de f avec α = β.

2.3 Conditions nécéssaires de minimum


2.3.1 Définition 2.5
Soit U ⊂ Rn , u∗ ∈ U et f : U → R.

1. On dit que u∗ est un point de minimum absolu (ou global) de f sur U si

∀u ∈ U, f (u) ≥ f (u∗ ).

2. On dit que u∗ est un point de minimum relatif (ou local) de f sur U s’il existe
un voisinage V de u∗ dans Rn , el que

∀u ∈ U ∩ V, f (u) ≥ f (u∗ ).

3. On dit que u∗ est un point de maximum absolu (respectivement relatif) de f


sur U si u∗ est un point de minimum absolu (respectivement relatif ) de −f sur U .

4. On dit que u∗ est un point d’extremum absolu (respectivement relatif) de f


sur U si u∗ est : soit un point de minimum absolu (respectivement relatif ) de f
sur U , soit un point de maximum absolu (respectivement relatif ) de f sur U .

2.3.2 Lemme 2.1


Soit U ⊂ Rn , a ∈ Rn et u∗ un élément à l’intérieur de U (u∗ ∈ U ◦ ). Alors les
deux assertions suivantes sont équivalentes :

1. < a, u − u∗ >≥ 0, ∀u ∈ U.

2. a = 0.

Preuve :

L’implication 1.⇒ 2. est évidente. Pour montrer l’implicatio inverse, soit w ∈ Rn


arbitraire, avec w 6= 0. Alors il existe θ0 > 0 telle que

u∗ + θw ∈ U, ∀θ ∈ [−θ0 , θθ0 ]

9 F.Z.Nqi
ENSAO-GC3 Techniques d’Optimisation

r
(il suffit de prendre θ0 = 2kwk où r > 0 est tel que B(u∗ , r) ⊂ U ). Alors en prenant u∗ + θw
à la place de u dans 1. on déduit

< a, θw >≥ 0, ∀θ ∈ [−θ0 , θθ0 ].

En prenant d’abord θ = θ0 , et ensuite θ = −θ0 dans l’inégalité précédente, on déduit

< a, w >= 0, ∀w ∈ Rn , w 6= 0.

Comme l’égalité précédente est évidemment valable aussi pour w = 0 alors elle est valable
pour tout w ∈ Rn . Ceci donne immédiatemment 2. (il suffit de prendre w = a dans la
dernière relation.

2.3.3 Définition 2.6


Soit U ⊂ Rn un ensemble et u∗ ∈ U . On dit que w ∈ Rn est une direction
admissible pour u∗ ∈ U s’il existe t0 > 0 tel que u∗ + tw ∈ U, ∀t ∈ [0, t0 ].

Exemples :

1. Si u∗ ∈ U ◦ alors tout vecteur w ∈ Rn est une direction admissible pour u∗ ∈ U .

2. Si U est convexe alors pour tout v ∈ U le vecteur v − u∗ est une direction admissible
pour u∗ ∈ U .

2.3.4 Lemme 2.2


Soit U ⊂ Rn un ouvert, U ⊂ Ω, f : Ω → R une fonction de classe C 1 et u∗ ∈ U
un point de minimum relatif de f sur U . Soit w ∈ Rn une direction admissible
pour u∗ en U . Alors
< ∇f (u∗ ), w >≥ 0.

2.3.5 Théorème 2.1


Soit U ⊂ Rn un ouvert, U ⊂ Ω un ensemble convexe et f : Ω → R une fonction
de classe C 1 Soit u∗ ∈ U un point de minimum relatif de f sur U . Alors

1.
< ∇f (u∗ ), u − u∗ >≥ 0, ∀u ∈ U,
c’est l’inéquation d’Euler .

2. Si en plus u∗ est dans l’intérieur de U alors l’inégalité d’Euler est équivalente


au
∇f (u∗ ) = 0
c’est l’équation d’Euler .

10 F.Z.Nqi
ENSAO-GC3 Techniques d’Optimisation

2.3.6 Théorème 2.2


Soit Ω ⊂ Rn un ouvert, U ⊂ Ω un ensemble convexe et f : Ω → R une fonction
de classe C 1 et convexe et si u∗ ∈ U . Alors

1. u∗ est un point de minimum absolu de f sur U .

2. u∗ est un point de minimum relatif de f sur U .

3. < ∇f (u∗ ), u − u∗ >≥ 0, ∀u ∈ U.

11 F.Z.Nqi
Chapitre 3

Optimisation sans contraintes


ENSAO-GC3 Techniques d’Optimisation

3 Chapitre 3 : Optimisation sans contraintes


On considère ici le cas particulier où l’ensemble de contraintes U est l’espace entier
n
R . On va donc considérer le problème de minimisation :

(1) min J(u)


u∈Rn

où J : Rn → R est une fonction donnée.


C’est un problème de minimisation sans contraintes.
Le problème (1) peut s’écrire

(2) Trouver u∗ ∈ Rn tel que J(u∗ ) ≤ J(u), ∀u ∈ Rn .

On supposera que u∗ existe (éventuellement qu’il est unique) et on se propose de trouver


une approximation nérique de u∗ , en construisant une suite {u(k) }k∈N ⊂ Rn telle que

u(k) → u∗ pour k → +∞.

Remarque :

Si J ∈ C 1 alors u∗ satisfait nécessairement l’équation d’Euler

∇J(u∗ ) = 0

Rappel :

Si en plus J est convexe alors l’équation d’Euler est aussi une condition suffisante de
minimum. Si en plus J est strictement convexe, alors u∗ est unique.
Alors une méthode numérque qui peut être envisagée c’est de résoudre numériquement
l’équation d’Euler, qui en fait un système de n équations avec n inconnues, du type

Trouver u ∈ Rn tel que F (u) = 0.

où F : Rn → Rn est une fonction donnée (ici F = ∇J).


On peututiliser la méthode de bf Newton-Raphson.
En particulier, si J est donnée par
1
J(x) = < Ax, x > − < b, x > +c
2
avec A matrice symétrique, b vecteur et c scalaire (c’est à dire, J est quadratique) alors
nous avons ∇J(u) = Au − b, et l’équation d’Euler devient un système algébrique
linéaire
Au = b
On peut utiliser alors toute méthode numérique connue

On se propose ici de donner d’autres méthodes numérique qui sont spécifiques à l’op-
timisation. Ces méthodes concistent à construire la suite approximative {u(k) } par recur-
rence, c’est à dire :
• On se donne un point initial u(0) ∈ Rn
• On construit u(k+1) comme une fonction de u(k) . L’expression générale de u(k+1) sera

(3) u(k+1) = u(k) + ρk d(k)

13 F.Z.Nqi
ENSAO-GC3 Techniques d’Optimisation

avec d(k) ∈ Rn des vecteurs qu’on appelle directions de descente. Ces noms viennent
du fait qu’on cherchera toujours à avoir

(4) J(u(k+1) ) < J(u(k) ), ∀k ∈ N

(la suite {J(u(k) )} doit être strictement décroissante).


L’algorithme associé est en général de la forme :

pas 1.

• Faire k = 0,

• choisir u(0) ∈ Rn ( par exemple u(0) = 0),

• choisir kmax ∈ N assez grand (par exemple kmax = 1000)

pas 2.

• Tant que (test d’arrêt est faux) et (k < kmax )

• faire u(k+1) = u(k) + ρk d(k)

• faire k = k + 1

pas 3.

• Si (test d’arrêt est vrai) alors u(k) est une approximation du point de minimum
recherché.

• Sinon la méthode n’a pas convergé.

Remarque :

Comme "test d’arrêt" on choisit le plus souvent : ∇J(u(k) ) = 0 (en pratique le test
sera
k∇J(u(k) )k ≤ ε,
où ε est un nombre strictement positif et petit, qui représente un niveau de tolérance
admis, à fixer au début (par exemple ε = 10−6 ).

Il y a un grand nombre de méthodes numériques de minimisation, suivant le choix qui


est fait d(k) et ρk .

3.1 Méthodes de relaxation


3.1.1 Desciption de la méthode
Cette méthode consiste à faire le choix suivant pour les directions de descente :

d(0) = e1 , d(1) = e2 , . . . , d(n−1) = en

14 F.Z.Nqi
ENSAO-GC3 Techniques d’Optimisation

ensuite on recommence

d(n) = e1 , d(n+1) = e2 , . . . , d(2n−1) = en

et ainsi de suite ...


(Rappelons que {e1 , e2 , . . . , en } sont les vecteurs de la base canonique de Rn ).
Donc en général on a :
d(k) = el
si et seulement si l est le reste de la division de k + 1 par n.
On prend ensuite les facteurs ρk ∈ R tels que

(5) J(u(k) + ρk d(k) ) = min J(u(k) + ρd(k) ), ∀k ∈ N


ρ∈R

(en supposant que ces minimums existent ).


Finalement, on pose
u(k+1) = u(k) + ρk d(k)
C’est la méthode de relaxation.
On peut écrire cet algorithme de la manière équivalente suivante :

3.1.2 Algorithme de la méthode de Relaxation


• On suppose connu le vecteur
(k) (k)
u(k) = (u1 , u2 , . . . , u(k)
n )
T

• On calcule
(k+1) (k+1)
u(k+1) = (u1 , u2 , . . . , u(k+1)
n )T
en n pas successifs par les formules suivantes :
(k+1) (k) (k)
J(u1 , u2 , . . . , u(k) (k)
n ) = min J(y, u2 , . . . , un )
y∈R

(k+1) (k+1) (k+1)


J(u1 , u2 , . . . , u(k)
n ) = min J(u1 , y, . . . , u(k)
n )
y∈R

(k+1) (k+1) (k+1) (k+1) (k+1)


J(u1 , u2 , . . . , u(k+1)
n ) = min J(u1 , u2 , . . . , un−1 , y)
y∈R

Ci-dessus, on a utilisé le fait que


(k) (k) (k)
min J(u1 + ρ, u2 , . . . , u(k) (k)
n ) = min J(y, u2 , . . . , un ),
ρ∈R ρ∈R

(k)
égalité obtenue en faisant le changement de variable y = u1 + ρ.

3.1.3 Cas particulier des fonctions quadratiques


Dans ce paragraphe, nous supposons que J : Rn → R est donnée par
1
(6) J(x) = < Ax, x > − < b, x > +c
2

15 F.Z.Nqi
ENSAO-GC3 Techniques d’Optimisation

avec A ∈ Mn (R) matrice définie positive, b ∈ Rn , c ∈ R.

On a besoin de calculer y ∗ ∈ R tel que

min g(y) = g(y ∗ )


y∈R

où la fonction g : R → R est définie par


(k+1) (k+1) (k)
g(y) = J(u1 , . . . , ui−1 , y, ui+1 , . . . , u(k)
n )

(k+1) (k+1) (k) (k)


avec u1 , . . . , ui−1 , ui+1 , . . . , un ∈ R données.
Pour faciliter l’écriture, faisons les notations suivantes :
(k+1) (k+1) (k+1) (k)
v1 = u1 , v2 = u2 , . . . , vi−1 = ui−1 , vi+1 = ui+1 , . . . , vn = u(k)
n

Comme J est elliptique alors g est aussi elliptique, donc y ∗ existe et est unique ; y ∗ est
l’unique solution de l’équation d’Euler

g 0 (y ∗ ) = 0

Mais g 0 (y) n’est autre que

∂J
(v1 , v2 , . . . , vi−1 , y, vi+1 , . . . , vn )
∂xi
ce qui nous donne
n
X
0
g (y) = Aij vj + Aii y − bi .
j=1,j6=i

Donc on doit résoudre en y ∗ ∈ R :


n
X
Aij vj + Aii y ∗ − bi
j=1,j6=i

ce qui donne !
n
1 X
y∗ = bi − Aij vj
Aii j=1,j6=i

Remarque :
On a Aii > 0 car Aii =< Aei , ei >> 0
On a donc montré :

16 F.Z.Nqi
ENSAO-GC3 Techniques d’Optimisation

Proposition 3.1

Dans le cas où J est donnée par (6), la méthode de ralaxation s’écrit


n
!
(k+1) 1 X (k)
u1 = b1 − A1j uj
A11 j>1

n
!
(k+1) 1 (k+1)
X (k)
u2 = b2 − A21 u1 − A2j uj
A22 j>2

...

n n
!
(k+1) 1 X (k+1)
X (k)
ui = bi − Aij uj − Aij uj
Aii j<i j>i

n
!
1 X (k+1)
u(k+1)
n = bn − Anj uj
Ann j<n

En plus la méthode converge.

Remarque : L’algorithme ci-dessus n’est autre que l’algorithme de Gauss-Seidel pour


la résolution numérique du système linéaire

Ax = b

Ceci s’explique par le fait que le point de minimum u∗ de J satisfait l’équation d’Euler
∇J(u∗ ) = 0 qui devient dans le cas J quadratique :

Au∗ = b.

3.2 Méthodes de gradient


3.2.1 Idée
Prendre comme direction de descente :

d(k) = −∇J(u(k) )

Justification :
J(u(k) ) est orthogonal à la ligne du niveau de J dans le point u(k) et la fonction J diminue
dans la direction −∇J(u(k) ). Cette affirmation se justifie par le calcul suivant, où on utilise
un développement de Taylor :

J(u(k) − ρ∇J(u(k) )) = J(u(k) )+ < ∇J(u(k) ), −ρ∇J(u(k) ) > +o(ρ).

(On suppose que J est de classe C 1 ). Nous avons alors :

J(u(k) − ρ∇J(u(k) )) − J(u(k) ) = −ρk∇J(u(k) )k2 + o(ρ).

17 F.Z.Nqi
ENSAO-GC3 Techniques d’Optimisation

Le membre de droite de l’égalité précédente est < 0 si ρ > 0 avec ρ assez petit et
∇J(u(k) ) 6= 0.

Les méthodes de gradient sont définies par les relations :

(7) u(k+1) = u(k) − ρk ∇J(u(k) )

où les facteurs de descente ρk ∈ R sont à choisir.


Il y a plusieurs méthodes de gradient suivant le choix que nous faisons pour ρk

3.2.2 Méthode de gradient à pas optimal


La méthode est la suivante : u(k+1) est donnée par (7) où ρk ∈ R est tel que

(8) J(u(k) − ρk ∇J(u(k) )) = min J(u(k) − ρ∇J(u(k) ))


ρ∈R

Théorème 3.1

Soit J : Rn → R une fonction eleptique. Alors la méthode de gradient à pas


optimal donnée par (7) et (8) est bien définie et converge.

Cas particulier : fonctions quadratiques :

On suppose ici J quadratique associée à une matrice SDP.

Nous devons calculer ρk ∈ R qui minimise la fonction g : R → R donnée par

g(ρ) = J(u(k) − ρ∇J(u(k) )).

alors ρk satisfait nécessairement


g 0 (ρk ) = 0
un calcul simple nous donne

g 0 (ρ) = − < ∇J(u(k) − ρ∇J(u(k) )), ∇J(u(k) ) >

c’est à dire, comme ∇J(u(k) ) = Au(k) − b

g 0 (ρ) = − < A(u(k) −ρ∇J(u(k) ))−b, Au(k) −b > −kAu(k) −bk2 +ρ < A(Au(k) −b), Au(k) −b >

On obtient alors

kAu(k) − bk2
(9) ρk =
< A(Au(k) − b), Au(k) − b >

Remarquons qu’on a
< A(Au(k) − b), Au(k) − b >> 0
car A est SDP et Au(k) − b = ∇J(u(k) ) 6= 0).

18 F.Z.Nqi
ENSAO-GC3 Techniques d’Optimisation

Donc la méthode de gradient à pas optimal dans le cas de J quadratqiue est :

u(k+1) = u(k) − ρk (Au(k) − b)

avec ρk données par (9) (valable uniquement pour Au(k) − b 6= 0).

Remarque :
Comme g 0 (ρk ) = 0, on déduit immédiatement

(10) < ∇J(u(k+1) ), ∇J(u(k) ) >= 0.

3.3 La Méthode du gradient conjugué


Rappels notations :

1. Si v1 , v2 , . . . , vl ∈ Rn on note

Xl
L(v1 , v2 , . . . , vl ) = { αi vi , α1 , α2 , . . . , αl ∈ R}
i=1

l’espace vectoriel engendré par les vecteurs v1 , v2 , . . . , vl ; c’est un sous espace vectoriel de
Rn .

2. Si a ∈ Rn et M ⊂ Rn , alors a + M désigne l’ensemble {a + x, x ∈ M }.

3.3.1 Le cas quadratique


Dans ce paragraphe, on considère J : Rn → R une fonction quadratique
1
J(u) = < Au, u > − < b, u > +c, ∀u ∈ Rn
2
avec A ∈ Mn (R), b ∈ Rn , et c ∈ R. On suppose que la matrice A est SDP.

Idée de la méthode :

Rappelons que la méthode du gradient à pas optimal consiste à faire :

u(k+1) = u(k) − ρk ∇J(u(k) ) = min(u(k) − ρ∇J(u(k) ))


ρ∈R

ce qui équivaut avec :

u(k+1) ∈ u(k) + L(∇J(u(k) ) est l’élement qui minimise J sur u(k) + L(∇J(u(k) ). Dans
la suite on va procéder de la manière suivante : on va noter pour tout k ∈ N :

Gk = L ∇J(u(0) ), ∇J(u(1) ), . . . , ∇J(u(k) ) ⊂ Rn




la méthode du gradient conjugué consiste à chercher u(k+1) ∈ u(k) + Gk tel que

(11) J(u(k+1) = min J(v)


v∈u(k) +Gk

19 F.Z.Nqi
ENSAO-GC3 Techniques d’Optimisation

On minimise donc sur un espace plus "grand" que dans la méthode de gradient à pas
optimal. On s’attenda lors à un "meilleur" minimum.Il reste à montrer que cette méthode
est facile à implémenter et qu’elle donne le résultat attendu.

Comme J est elliptique et que u(k) + Gk est un ensemble fermé et convexe (car c’est
un espace affine), alors il existe une solution unique au problème (11). En plus on a
(12) < ∇J(u(k+1) ), v − u(k+1) >≥ 0, ∀v ∈ u(k) + Gk .
Soit maintenant w ∈ Gk arbitraire. Remarquons qu’on a :
u(k+1) + w = u(k) + [u(k+1) − u(k) ] + w ∈ u(k) + Gk , car u(k+1) − u(k) ∈ Gk .
On peut prendre v = u(k+1) + w en (12) et aussi v = u(k+1) − w. On obtient
< ∇J(u(k+1) ), w >= 0, ∀w ∈ Gk
(c’est à dire ∇J(u(k+1) ) est orthogonal à tous les vecteurs de Gk ). Ceci nous donne
(13) < ∇J(u(k+1) ), ∇J(u(l) ) >= 0, ∀l = 1, 2, . . . , k
Conséquences

1. Si les vecteurs ∇J(u(0) ), ∇J(u(1) ), . . . , ∇J(u(k) ) sont tous non nuls alors ils sont
indépendants (c’est une conséquences immédiate du résultat bien connu : si des vecteurs
non nuls sont orthogonaux par rapport à un produit scalaire, alors ils sont indépendants.

2. L’algorithme s’arrete en au plus n itérations, car il existe k ∈ {0, 1, . . . , n} tel que


∇J(u(k) ) = 0
(sinon non aurait n + 1 vecteurs non nuls indépendants en Rn , ce qui est impossible).

Alors u(k) est la solution recherchée.

La question qui se pose maintenant est :comment calculer u(k+1) à partir de u(k) ?
Supposons qu’on a
∇J(u(i) ) 6= 0, ∀i = 0, 1, . . . , k
(sinon, l’algorithme s’arretait avant d’avoir à calculer u(k+1) ).
Nous avons l’expression suivante :
(14) u(l+1) = u(l) + 4l , ∀l = 0, 1, . . . , k
avec 4l ∈ Gl que nous écrivons sous la forme
l
X
(15) 4l = αil ∇J(u(i) )
i=0

avec αil ∈ R des coefficients à trouver. Rappelons que


∇J(x) = Ax − b, ∀x ∈ Rn .
On utilisera souvent la formule suivante :
(16) ∇J(u(l+1) ) = ∇J(u(l) ) + A4l .
(car ∇J(u(l+1) ) = Au(l+1) − b = A(u(l) + 4l ) − b = Au(l) − b + A4l ).

20 F.Z.Nqi
ENSAO-GC3 Techniques d’Optimisation

Proposition 3.2

On a

1.
4l 6= 0, ∀l = 0, 1, . . . , k
2.
< A4l , 4m >= 0 si 0 ≤ l ≤ k.

Définition

On dit que deux vecteurs x, y ∈ Rn sont conjugués par rapport à une matrice
B ∈ Mn (R) si
< Bx, y >= 0

Proposition 3.3

Les vecteurs 40 , 41 , . . . , 4k sont indépendants.

On peut alors écrire


4k = ρk d(k)
avec
k−1
X
(20) d(k) = ∇J(u(k) ) + λki ∇J(u(i) )
i=0

où on posé

ρk = αkk
(21)
λki = αik /αkk

Nous avons donc


u(k+1) = u(k) + ρk d(k)
avec d(k) donné par (20) et (21). On trouve que

(22) d(0) = ∇J(u(0) ),

(k) (k)k∇J(u(k) )k2 (k−1)


(23) d = ∇J(u ) + d
k∇J(u(k−1) )k2

Il reste à déterminer ρk , on trouve

< ∇J(u(k) ), d(k) >


(24) ρk = −
< Ad(k) , d(k) >

21 F.Z.Nqi
ENSAO-GC3 Techniques d’Optimisation

Algorithme

1. pas 1. On pose k = 0, on choisit u(0) ∈ Rn et on pose

d(0) = ∇J(u(0) ) = Au(0) − b.

2. pas 2. Si ∇J(u(k) ) 6= 0 STOP "la solution u∗ est u(k) . Sinon, va au pas 3.


3. pas 3. On pose

< ∇J(u(k) ), d(k) >


(24) ρk = −
< Ad(k) , d(k) >

u(k+1) = u(k) + ρk d(k)


k∇J(u(k+1) )k2
βk =
k∇J(u(k) )k2
d(k+1) = ∇J(u(k+1) ) + βk d(k)
faire k = k + 1

retour au pas 2.

22 F.Z.Nqi
Chapitre 4

Optimisation avec contraintes


ENSAO-GC3 Techniques d’Optimisation

4 Chapitre 4 : Optimisation avec contraintes


subsectionIntroduction
On rappelle qu’on se done U ∈ Rn où U est un ensemble fermé des contraintes, avec
U 6= ∅ et U 6= Rn . On se donne aussi la fonction

J : Rn → R.

On cherche à résoudre le problème de minimisation

(1) min J(u)


u∈U

c’est à dire on cherche u∗ ∈ U tel que

(2) J(u∗ ) ≤ J(u), ∀u ∈ U

On va considérer deux cas pour U :

1. U est un pavé, c’est à dire, il est de la forme

U = [a1 , b1 ] × [a2 , b2 ] × . . . × [an , bn ]

2. U est de la forme

(3) U = {x ∈ Rn , ϕi (x) ≤ 0, i = 1, 2, . . . m}

avec m ∈ Nn et ϕ1 , ϕ2 , . . . ϕm des fonctions par des contraintes inégalités larges).


Remarques :
1. Le premier cas est un cas particulier du deuxième
2. Dans le cas des contraintes inégalités larges, le problème de mimimisation associé est
aussi appelé problème de programmation nonlinéaire si au moins une des fonctions
ϕ1 , ϕ2 , . . . ϕm ou J est non affine. Si toutes ces fonctions sont affines, alors on a un pro-
blème de programmation linéaire
3. Dans la pratique on peut rencontrer des problèmes de minimisation avec contraintes
égalités, c’est à dire, des contraintes de la forme

Ũ = {x ∈ Rn , ϕi (x) = 0, i = 1, 2, . . . m}

ou des problèmes avec des contraintes mélangées (égalités et inégalités larges). Dans ce
cas on peut toujours se ramener à des problèmes avec contraintes inégalités larges, ceci
par deux méthodes :
• soit en éliminant des contraintes à l’aide des égalités
• soit en écrivant une égalité ϕi (x) = 0 comme une double inégalité :ϕi (x) ≤ 0 et
−ϕi (x) ≤ 0.

Proposition 4.1

Soit U donné par (3). Si toutes les fonctions ϕ1 , ϕ2 , . . . ϕm sont convexes alors U
est un ensemble convexe.

24 F.Z.Nqi
ENSAO-GC3 Techniques d’Optimisation

4.1 Les Multiplicateurs de Lagrange


Soient J, θ1 , θ2 , . . . θm : Rn → R des fonctions de classe C 1 ,avec m ∈ N∗ . On note

Õ = {x ∈ Rn , θi (x) = 0, i = 1, 2, . . . m}.

On dit que Õ est une variété de Rn .

Définition 4.2

Si x ∈ Õ est tel que la famille des vecteurs {∇θi (x)}i=1,...m forme un système
libre en Rn alors on dit que x est un point régulier de Õ.

Théorème 4.3

Soit x∗ un point régulier de Õ tel que x∗ soit un extremum local de J sur Õ


(minimum local ou maximum local). Alors il existe λ∗1 , λ∗2 , . . . λ∗m ∈ R (appelés
multiplicateurs de Lagrange tels que
m
X

(4) ∇J(x ) + λ∗i ∇θi (x∗ ) = 0
i=1

Remarque :

Le système (4) donne des conditions nécessaires d’optimalité (appelés aussi condi-
tions nécessaires d’optimalité de premier ordre), car elles font intervenir des dérivées une
fois uniquement). Ces conditions ne sont pas en général suffisantes. Le système (4) nous
donne n équations avec n + m inconnues. Mais le fait que x∗ ∈ Õ nous donne encore
m équations :θi (x∗ ) = 0, 2, . . . m, ce qui nous fait au total n + m équations avec n + m
inconnues.

4.2 Optimisation sous contraintes d’inégalités


On se donne de nouveau les fonctions J, θ1 , θ2 , . . . θm : Rn → R de classe C 1 , avec
m ∈ N∗

Notons maintenant

O = {x ∈ Rn , θi (x) ≤ 0, ∀i = 1, 2, . . . . . . m}

Notations :

On introduit la fonction à valeurs vectorielles θ : Rn → Rm donnée par

θ(x) = (θ1 (x), θ2 (x), . . . θm (x))T .

Pour un vecteur b = (b1 , b2 , . . . bm )T ∈ Rm , la notation b ≤ 0 signifie bi ≤ 0, ∀i =


1, 2, . . . . . . m. On peut donc écrire

O = {x ∈ Rn , θ(x) ≤ 0}.

25 F.Z.Nqi
ENSAO-GC3 Techniques d’Optimisation

On va s’intéresser au problème de minimisdation :

(5) min J(x)


x∈O

4.2.1 Conditions d’optimalité de premier ordre : multiplicateurs de Kurn-


Tucker
On donnera des conditions d’optimalité similaires au système (4) mais pour des contraintes
inégalités.

Définition 4.4

On dit que la contrainte θi (u) ≤ 0 est active en v ∈ O si on a

θi (v) = 0.

On introduit alors l’ensemble

I(v) = {i ∈ {1, 2, . . . m}, θi (v) = 0}

Théorème 4.5

Soit x∗ un point régulier de O. Si x∗ est un point de minimum local de J sur O


alors il existe p∗1 , p∗2 , . . . , p∗m ∈ [0, +∞[ (appelés multiplicateurs de Kurn-Tucker)
tel que
m
X

(6) ∇J(x ) + p∗i ∇θi (x∗ ) = 0
i=1

(7) p∗i θi (x∗ ) = 0, ∀i = 1, 2, . . . m.

Corollaire 4.6

Soit v ∈ O tel que I(v) 6= ∅ et soit w ∈ Rn tel que

< ∇θj (v), w >< 0, ∀j ∈ I(v).

Supposons que v est un minimum local de J sur O. Alors

< ∇J(v), w >≥ 0.

26 F.Z.Nqi