Vous êtes sur la page 1sur 35

Introduction à l’optimisation, aspects théoriques et numériques

Yannick Privat
(yannick.privat@math.cnrs.fr)

CNRS & Univ. Paris 6

Séance 3, mars 2015


https://www.ljll.math.upmc.fr/∼privat/cours/ensem.php

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 1 / 18
Plan de la séance

1 Rappels de la séance précédente

2 Conditions d’optimalité à l’ordre 2

3 Algorithmes pour l’optimisation SANS contrainte


Le cas de la dimension un
Méthodes de type gradient

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 2 / 18
Rappels de la séance précédente

Sommaire

1 Rappels de la séance précédente

2 Conditions d’optimalité à l’ordre 2

3 Algorithmes pour l’optimisation SANS contrainte

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 3 / 18
Rappels de la séance précédente

Développement limité aux premier et second ordres

! Supposons que f est différentiable en x . Alors, pour tout h ∈ R , 0


n

f (x0 + h) − f (x0 ) = h∇f (x0 ), hi + o (khk)


h→0

∂f ∂f
où ∇f (x0 ) est le gradient de f en x0 , i.e. le vecteur ( ∂x (x0 ), · · · , ∂xn
(x0 )).
! Supposons que f est deux fois différentiable en x . Alors, pour tout h ∈ R ,
1
n
0

1
f (x0 + h) − f (x0 ) = h∇f (x0 ), hi + hHessf (x0 )h, hi + o (khk2 )
2 h→0

où Hess f (x0 ) est la matrice de taille n × n des dérivées secondes de f évaluées en
x0 , i.e.  2 
∂ f
Hess f (x0 ) = (x0 )
∂xi ∂xj 1≤i,j≤n

On notera que, si f est deux fois différentiable, en vertu du théorème de Schwarz,


Hess f (x0 ) est symétrique (réelle)

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 4 / 18
Rappels de la séance précédente

Existence de solutions

Soit f : K ⊂ Rn −→ R. On considère le problème d’optimisation

(P) inf f (x)


x∈K

Theorème (Existence en dimension finie)


On suppose que f est continue et K ⊂ Rn .
1 Si K est compact (i.e. fermé et borné puisque nous sommes en dimension finie),
alors le problème (P) possède (au moins) une solution.
2 Si f est coercive (on dit aussi infinie à l’infini), c’est-à-dire f (x) −−−−−−→ +∞ et
kxk→+∞
K est fermé, alors le problème (P) possède (au moins) une solution.

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 5 / 18
Rappels de la séance précédente

Rappels sur la notion de convexité

Ensembles et fonctions convexes


1 On dit qu’un ensemble K ⊂ Rn est convexe ssi pour tous (x1 , x2 ) ∈ K 2 et t ∈ [0, 1],
tx1 + (1 − t)x2 ∈ K .
2 Soit K ⊂ Rn , convexe. La fonction f : K −→ R est dite convexe ssi

∀(x1 , x2 ) ∈ K 2 , ∀t ∈ [0, 1], f (tx1 + (1 − t)x2 ) ≤ tf (x1 ) + (1 − t)f (x2 ).

f est dite strictement convexe si l’inég. ci-dessus est stricte pour x 6= y , t ∈]0, 1[.

Exercice important : soit la fonction quadratique

f : Rn −→ R
x 7−→ f (x) = 12 hAx, xi − hb, xi + c,

avec A ∈ Sn (R), b ∈ Rn et c ∈ R.
On montre que f est convexe si, et seulement si A est semi-définie positive, et
strictement convexe si, et seulement si A est définie positive.

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 6 / 18
Rappels de la séance précédente

Caractérisation de la convexité
Deux théorèmes à savoir utiliser

Théorème (Cas d’une fonction différentiable).


Si f : Rn −→ R est différentiable, on a les équivalences entre
(i) f est convexe sur Rn ;
(ii) f (y ) ≥ f (x) + h∇f (x), y − xi, ∀(x, y ) ∈ [Rn ]2 ;
(iii) h∇f (y ) − ∇f (x), y − xi ≥ 0, ∀(x, y ) ∈ [Rn ]2 .
On a équivalence entre convexité stricte et les inégalités (ii) et (iii) précédentes rendues
strictes, pour x 6= y .

Théorème (Cas d’une fonction deux fois différentiable).


Si f : Rn −→ R est deux fois différentiable, on a les équivalences entre
(i) f est convexe ;
(ii) pour tout x ∈ Rn , Hess f (x) est semi-définie positive.

Exercice : étudier la convexité/concavité des fonctions suivantes :


1 2
f (x, y ) = x 4 − 5xy + y 2 , g (x, y , z) = −x 4 − 2y 6 − z , h(x, y ) = log(1 + x 2 y 2 ).
2
Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 7 / 18
Rappels de la séance précédente

Unicité en optimisation

Théorème.
Soit le problème inf f (x) avec f et K convexes (éventuellement de dimension infinie).
x∈K
Alors,
1 tout minimum local est un minimum global.
2 si f est strictement convexe, il y a au plus un minimum.

Exercice : on définit la fonction

f : Rn −→ R
x 7−→ f (x) = 12 hAx, xi − hb, xi + c,

avec A ∈ Sn (R), b ∈ Rn et c ∈ R.
1) Montrer que f est coercive et strictement convexe sur Rn .
2) En déduire que le problème
infn f (x)
x∈R

admet une solution qui est de surcroı̂t unique.

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 8 / 18
Rappels de la séance précédente

Condition nécessaire (1er ordre, cas non contraint)

On s’intéresse au problème infn f (x)


x∈R

Théorème (Condition nécessaires)


Soit x ∗ , un minimum local pour le problème
1 si f est différentiable en x ∗ , alors ∇f (x ∗ ) = 0. On dit que x ∗ est un point
stationnaire ou critique.
2 si f est deux fois différentiable en x ∗ , alors Hess f (x ∗ ) est semi-définie positive.

Théorème (Condition suffisante)


Soit f convexe et différentiable sur Rn .
Une C.N.S. pour que x ∗ soit un minimum local (donc global) de f est que x ∗ soit un point
critique de f , autrement dit, que
∇f (x ∗ ) = 0.

,→ Application à l’étude des fonctions quadratiques (À COMPRENDRE ET SAVOIR


UTILISER ! ! !)

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 9 / 18
Conditions d’optimalité à l’ordre 2

Sommaire

1 Rappels de la séance précédente

2 Conditions d’optimalité à l’ordre 2

3 Algorithmes pour l’optimisation SANS contrainte

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 10 / 18
Conditions d’optimalité à l’ordre 2

Conditions nécessaires (2ème ordre, cas non contraint)

On s’intéresse au problème infn f (x)


x∈R

Théorème (Conditions nécessaires)


Soit x ∗ , un minimum local pour le problème ci-dessus.
Si f est deux fois différentiable en x ∗ , alors Hess f (x ∗ ) est semi-définie positive.

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 11 / 18
Conditions d’optimalité à l’ordre 2

Conditions nécessaires (2ème ordre, cas non contraint)

On s’intéresse au problème infn f (x)


x∈R

Théorème (Conditions nécessaires)


Soit x ∗ , un minimum local pour le problème ci-dessus.
Si f est deux fois différentiable en x ∗ , alors Hess f (x ∗ ) est semi-définie positive.

Preuve. On utilise un développement de Taylor-Young à l’ordre 2 et on utilise les mêmes


notations que précédemment. On a :
1
f (x ∗ + h) = f (x ∗ ) + h∇f (x ∗ ), hi + hHess f (x ∗ )h, hi + khk2 ϕ(h)
2
1
= f (x ∗ ) + hHess f (x ∗ )h, hi + khk2 ϕ(h)
2

Comme précédemment, on remplace h par εh, h quelconque, ε petit, puis on divise par ε2
et on fait tendre ε vers 0.

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 11 / 18
Conditions d’optimalité à l’ordre 2

Conditions suffisantes (2ème ordre, cas non contraint)

Théorème (Conditions suffisantes)


Soit f , deux fois différentiable en x ∗ ∈ Rn , tel que ∇f (x ∗ ) = 0 et de plus :
soit Hess f (x ∗ ) est définie positive,
soit f est deux fois différentiable dans un voisinage de x ∗ et Hess f (x) est
semi-définie positive dans ce voisinage.
Alors, x ∗ est un minimum local pour f .

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 12 / 18
Conditions d’optimalité à l’ordre 2

Conditions suffisantes (2ème ordre, cas non contraint)

Théorème (Conditions suffisantes)


Soit f , deux fois différentiable en x ∗ ∈ Rn , tel que ∇f (x ∗ ) = 0 et de plus :
soit Hess f (x ∗ ) est définie positive,
soit f est deux fois différentiable dans un voisinage de x ∗ et Hess f (x) est
semi-définie positive dans ce voisinage.
Alors, x ∗ est un minimum local pour f .

Remarque
Le caractère “semi-défini positif” de la hessienne en x ∗ ne suffit pas pour conclure,
comme en atteste l’exemple f (x) = x 3 . En revanche, le caractère “défini-positif” de la
hessienne n’est pas nécessaire, comme en témoigne l’exemple f (x) = x 4 .
On rappelle qu’un point critique qui n’est pas un extremum local porte le nom de point
selle.

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 12 / 18
Conditions d’optimalité à l’ordre 2

Conditions suffisantes (2ème ordre, cas non contraint)

Théorème (Conditions suffisantes)


Soit f , deux fois différentiable en x ∗ ∈ Rn , tel que ∇f (x ∗ ) = 0 et de plus :
soit Hess f (x ∗ ) est définie positive,
soit f est deux fois différentiable dans un voisinage de x ∗ et Hess f (x) est
semi-définie positive dans ce voisinage.
Alors, x ∗ est un minimum local pour f .
Preuve (premier point). Hess f (x ∗ ) est définie positive, par conséquent,

∃α > 0 | hHess f (x ∗ )h, hi ≥ αkhk2 , ∀h ∈ Rn .

On écrit alors la formule de Taylor-Young à l’ordre deux en x ∗ :


1
f (x ∗ + h) = f (x ∗ ) + hHess f (x ∗ )h, hi + khk2 ϕ(h)
2
hα i
≥ f (x ∗ ) + + ϕ(h) khk2 > f (x ∗ ),
2
pourvu que h soit choisi assez petit, puisque ϕ(h) −−−→ 0.
h→0

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 12 / 18
Conditions d’optimalité à l’ordre 2

Conditions suffisantes (2ème ordre, cas non contraint)

Théorème (Conditions suffisantes)


Soit f , deux fois différentiable en x ∗ ∈ Rn , tel que ∇f (x ∗ ) = 0 et de plus :
soit Hess f (x ∗ ) est définie positive,
soit f est deux fois différentiable dans un voisinage de x ∗ et Hess f (x) est
semi-définie positive dans ce voisinage.
Alors, x ∗ est un minimum local pour f .
Pour le deuxième point, on aura besoin du résultat suivant.

Formule de Taylor Mac-Laurin


Soit f : [α, β] −→ R une fonction N + 1 fois dérivable. Alors, il existe γ ∈]α, β[ tel que
N
X (β − α)k (k) (β − α)N+1 (N+1)
f (β) = f (α) + f (α) + f (γ).
k! (N + 1)!
k=1

Lorsque N = 1, la formule de Taylor Mac-Laurin coı̈ncide avec la formule des accroissements finis

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 12 / 18
Conditions d’optimalité à l’ordre 2

Conditions suffisantes (2ème ordre, cas non contraint)


Preuve (deuxième point). f étant supposée deux fois différentiable au voisinage de x ∗ , on
écrit la formule de Taylor-Mac Laurin. Ainsi, il existe t ∈ [0, 1] tel que
1
f (x ∗ + h) = f (x ∗ ) + hHess f (xt )h, hi ≥ f (x ∗ ),
2
où xt = x ∗ + th est proche de x ∗ si h est petit.

Exemple
On peut caractériser les points critiques (min local/max local/point selle) de la fonction

f : (x, y ) 7→ x 3 + 3xy 2 − 15x − 12y .

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 12 / 18
Conditions d’optimalité à l’ordre 2

Exercices

1 Étudier le problème de minimisation inf J(x) lorsque


x∈R2

J(x1 , x2 ) = x12 − x22 et J(x1 , x2 ) = x14 + (x2 − 1)2 .


2 Étudier le problème de minimisation sur R2 de la fonction f définie par

f (x, y ) = x 4 + y 4 − 2(x − y )2 .
3 Même question avec la fonction g définie sur R3 par

g (x, y , z) = x 4 + y 2 + z 2 − 4x − 2y − 2z + 4
4 Même question avec la fonction h définie sur R3 par

h(x, y , z) = x 4 + 2y 2 + 3z 2 − yz − 23y + 4x − 5.
5 Etudier les extrema locaux de la fonction k définie sur R3 par

y2 z2 2
k(x, y , z) = x + + + .
4x y z
,→ On commencera par déterminer les points critiques de ces fonctions.
Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 13 / 18
Algorithmes pour l’optimisation SANS contrainte

Sommaire

1 Rappels de la séance précédente

2 Conditions d’optimalité à l’ordre 2

3 Algorithmes pour l’optimisation SANS contrainte


Le cas de la dimension un
Méthodes de type gradient

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 14 / 18
Algorithmes pour l’optimisation SANS contrainte

Le principe des méthodes de descente

X Objectif : utiliser l’outil informatique pour déterminer une approximation numérique


des solutions du problème
inf J(x) où J : RN → R.
x∈Rn

X Les algorithmes considérés permettrons de déterminer des minima locaux (lorsqu’ils


existent) et non les minima globaux.

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 15 / 18
Algorithmes pour l’optimisation SANS contrainte

Le principe des méthodes de descente

X Objectif : utiliser l’outil informatique pour déterminer une approximation numérique


des solutions du problème
inf J(x) où J : RN → R.
x∈Rn

X Les algorithmes considérés permettrons de déterminer des minima locaux (lorsqu’ils


existent) et non les minima globaux.
X Méthodes de descente. Une grande classe d’algorithmes que nous allons considérer
pour les problèmes d’optimisation ont la forme générale suivante
 (0)
x ∈ Rn donné,
calculer x (k+1) = x (k) + ρ(k) d (k) ,
où
x (k) ∈ Rn est le k-ième itéré de la suite construite ;
ρ(k) ∈ R est le pas de la méthode à la k-ième itération ;
d (k) ∈ Rn s’appelle la direction de descente à la k-ième itération.
En théorie, on aimerait garantir que
lim x (k) = x ∗ avec x ∗ , un minimiseur local de f .
k→+∞

En pratique, on s’arrange presque toujours pour satisfaire l’inégalité


J(x (k+1) ) ≤ J(x (k) ) (principe des méthodes de descente).
Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 15 / 18
Algorithmes pour l’optimisation SANS contrainte Le cas de la dimension un

Algorithmes unidimensionnels, recherche du pas


On cherche des algorithmes permettant la résolution du problème

inf f (x) où f : R → R.


x∈R

Pourquoi s’intéresser à ce cas particulier (n = 1) ?


Rappelons que, dans le cas général d’un problème s’écrivant infn J(x), avec J : Rn → R,
x∈R
on va s’intéresser à des algorithmes s’écrivant
 (0)
x ∈ Rn donné,
calculer x (k+1) = x (k) + ρ(k) d (k) ,

Une fois la direction de descente d (k) choisie, survient la question de la détermination du


pas ρ(k) .
,→ Dans l’idéal, x (k) et d (k) étant donnés, on voudrait choisir ρ(k) de sorte que J(x (k+1) )
soit le plus petit possible. Autrement dit, on veut résoudre le problème

inf f (ρ) où f : R → R .


ρ∈R
ρ 7 → J(x (k) + ρd (k) )

Cela justifie l’intérêt particulier porté au cas n = 1.

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 16 / 18
Algorithmes pour l’optimisation SANS contrainte Le cas de la dimension un

Algorithmes unidimensionnels, recherche du pas

Méthodes de dichotomie, de la section dorée

Principe d’une iteration. On se donne une fonction


f décroissante puis croissante sur R.
on se donne un intervalle [a, b] contenant le
minimiseur ;
on choisit x1 et x2 tels que a < x1 < x2 < b ;
si f (x1 ) < f (x2 ), alors le minimiseur est
nécessairement à gauche de x2 . On remplace
alors [a, b] par [a, x2 ] ;
sinon, le minimiseur est nécessairement à
droite de x1 . On remplace alors [a, b] par
[x1 , b] ;

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 16 / 18
Algorithmes pour l’optimisation SANS contrainte Le cas de la dimension un

Algorithmes unidimensionnels, recherche du pas

Méthodes de dichotomie, de la section dorée


X On construit une suite décroissante d’intervalles [ai ; bi ] qui contiennent tous le
minimum ρ∗ .
X Pour passer de [ai ; bi ] à [ai+1 ; bi+1 ], on procède de la manière suivante. On introduit
deux nombres a0 et b 0 de l’intervalle [ai ; bi ] et tels que a0 < b 0 . Puis, on calcule les
valeurs q(a0 ) et q(b 0 ). Trois possibilités se présentent alors à nous.
Si q(a0 ) < q(b 0 ), alors, le minimum ρ∗ se trouve nécessairement à gauche de b 0 . Ceci
définit alors le nouvel intervalle en posant ai+1 = ai et bi+1 = b 0 .
si q(a0 ) > q(b 0 ), il est évident que le minimum se trouve cette fois à droite de a0 . On
pose alors : ai+1 = a0 et bi+1 = bi .
si q(a0 ) = q(b 0 ), alors, le minimum se trouve dans l’intervalle [a0 ; b 0 ]. On se restreint
donc à ai+1 = a0 et bi+1 = b 0 .
La question suivante se pose : comment choisir a0 et b 0 en pratique ? En général, on
privilégie deux aspects :
i) on souhaite que le facteur de réduction τ , qui représente le ratio du nouvel intervalle
par rapport au précédent, soit constant (i.e. (bi+1 − ai+1 ) = τ1 (bi − ai ) pour tout i) ;
ii) on désire réutiliser le point qui n’a pas été choisi dans l’itération précédente afin de
diminuer les coûts de calculs.

1+ 5
,→ Ces contraintes imposent de choisir τ = 2
(nombre d’or)
Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 16 / 18
Algorithmes pour l’optimisation SANS contrainte Le cas de la dimension un

Algorithmes unidimensionnels, recherche du pas



1+ 5
poser τ =
2
poser a0 = a et b0 = b
pour i = 0, ..., N max
1
poser a0 = ai + (bi − ai )
τ2
1
poser b 0 = ai + (bi − ai )
τ
si (f (a0 ) < f (b 0 )) alors
poser ai+1 = ai et bi+1 = b 0
sinon si (f (a0 ) > f (b 0 )) alors
poser ai+1 = a0 et bi+1 = bi
sinon si (f (a0 ) = f (b 0 )) alors
poser ai+1 = a0 et bi+1 = b 0
fin si
fin pour i

Table: Algorithme de la section dorée.

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 16 / 18
Algorithmes pour l’optimisation SANS contrainte Le cas de la dimension un

Algorithmes unidimensionnels, recherche du pas

Méthode de Newton

Théorème. Soit f ∈ C 2 ([a, b]; R). Si α ∈]a, b[ est


tel que f (α) = 0 et f 0 (α) 6= 0. Alors, pour x0 assez
proche de α, la suite (xn )n∈N définie par

f (xn )
xn+1 = xn −
f 0 (xn )
converge vers α à vitesse quadratique (i.e. il existe
C > 0 telle que pour tout n,
|xn+1 − α| ≤ C |xn − α|2 ).
La méthode de Newton n’est pas à proprement parler une méthode d’optimisation. C’est une
méthode de recherche de zéros d’une fonction f : R → R.

Exemple : l’algorithme de Babylone permet d’estimer la racine carrée de a, en appliquant la méthode


de Newton à la fonction f : x 7→ x 2 − a. √
On obtient alors une méthode d’approximation de la solution a donnée par la formule itérative
x2 − a
 
1 a
xk+1 = xk − k = xk + .
2xk 2 xk
Cette méthode converge pour tout a > 0 et tout point de départ x0 > 0.
Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 16 / 18
Algorithmes pour l’optimisation SANS contrainte Le cas de la dimension un

Algorithmes unidimensionnels, recherche du pas


Application à la résolution du problème inf x∈R q(x) : l’idée de cette méthode ici est de
résoudre l’équation q 0 (x) = 0, condition nécessaire de premier ordre pour la détection
d’extrema de la fonction q, supposée de classe C 3 .
Dans ce cas, l’algorithme se réécrit
q 0 (xn )
xn+1 = xn − .
q 00 (xn )

Application à la fonction q : ρ 7→ J(x (k) + ρd (k) ), avec

J : Rn → R, x (k) ∈ Rn et d (k) ∈ Rn .

On résout q 0 (ρ) = 0.
Pour appliquer la méthode de Newton, on utilisera le fait que

q 0 (ρ) = ∇J(x (k) + ρd (k) ) · d (k)


q 00 (ρ) = Hess J(x (k) + ρd (k) )d (k) · d (k) .

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 16 / 18
Algorithmes pour l’optimisation SANS contrainte Méthodes de type gradient

Méthodes de gradient
Le principe

On souhaite résoudre numériquement le problème

inf J(x) avec J : Rn → R,


x∈Rn

à l’aide d’un algorithme s’écrivant

choisir x (0) ∈ Rn
avec d (k) ∈ Rn∗ et ρ(k) > 0.
calculer x (k+1) = x (k) + ρ(k) d (k)

Choix de la direction de descente d (k) .


Rappelons que si ρ(k) est assez petit, on a

J(x (k+1) ) = J(x (k) + ρ(k) d (k) ) = J(x (k) ) + ρ(k) ∇J(x (k) ) · d (k) + o(ρ(k) ).

Puisque l’on désire avoir J(x (k+1) ) < J(x (k) ), on est conduit à choisir
d (k) = −∇J(x (k) ), de sorte que
2
J(x (k+1) ) − J(x (k) ) = −ρ(k) ∇J(x (k) ) + o(ρ(k) ).

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 17 / 18
Algorithmes pour l’optimisation SANS contrainte Méthodes de type gradient

Méthodes de gradient
Choix des critères d’arrêt

Lorsque l’on travaille sur une résolution numérique d’un problème, on se donne en général
deux critères d’arrêt :

on s’arrête lorsque x (k+1) − x (k) ≤ ε.


(concrètement, tant que x (k+1) − x (k) > ε, on calcule l’itéré suivant)
puisque la convergence n’est pas toujours assurée, une règle de base est de fixer un
nombre maximum d’itérations k max .

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 17 / 18
Algorithmes pour l’optimisation SANS contrainte Méthodes de type gradient

Méthodes de gradient
La méthode obtenue avec le choix d (k) = −∇J(x (k) ) est appelée méthode du gradient.

poser k = 0
choisir x (0)

tant que ( x (k+1) − x (k) ≥ ε) et (k ≤ k max ) faire

calculer d (k) = −∇J(x (k) )


calculer ρ(k)
poser x (k+1) = x (k) + ρ(k) d (k)
fin tant que

Table: Algorithme du gradient.

Même si ces méthodes sont conceptuellement très simples et qu’elles peuvent être pro-
grammées directement, elles sont souvent lentes dans la pratique.

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 17 / 18
Algorithmes pour l’optimisation SANS contrainte Méthodes de type gradient

Méthodes de gradient
Choix du pas

Gradient à pas constant : on choisit ρk = ρ pour tout k, avec ρ assez petit.


Gradient à pas optimal : on choisit ρk comme solution du problème

inf q(ρ) avec q(ρ) = J(x (k) + ρd (k) ),


ρ∈R+

avec d (k) = −∇J(x (k) ).


,→ Pour cela, on utilise les algorithmes de dimension un vus précédemment

En résumé :
Gradient à pas fixe Gradient à pas constant
ρ > 0 est fixé.  0

 x est donné.
 0
 x est donné.  x n+1 = x n + ρn d n

x n+1 = x n + ρd n  d n = −∇f (x n )
 n
d = −∇f (x n )  ρn = min Jn (x n + ρ.d n ).


ρ∈R

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 17 / 18
Algorithmes pour l’optimisation SANS contrainte Méthodes de type gradient

Méthodes de gradient
Cas des fonctions quadratiques

Soit la fonction quadratique

J : Rn −→ R
x 7−→ f (x) = 12 hAx, xi − hb, xi + c,

avec A ∈ Sn (R), b ∈ Rn et c ∈ R.
Rappelons que ∇J(x) = Ax − b.
Gradient à pas fixe : Supposons que la matrice A est symétrique définie positive. La
méthode de gradient à pas fixe est convergente, sous réserve que le pas de descente
ρ vérifie
2
0<ρ< ,
λmax
avec λmax la plus grande valeur propre de A.
Gradient à pas optimal : Si la matrice A est symétrique définie positive, alors la
méthode de gradient à pas optimal est convergente.
De plus, le pas optimal a pour expression

kd (k) k2
ρ(k) = , où d (k) = Ax (k) − b.
hAd (k) , d (k) i
Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 17 / 18
Algorithmes pour l’optimisation SANS contrainte Méthodes de type gradient

Méthodes de gradient
La méthode du gradient conjugué pour une fonction quadratique

Définition (direction conjuguée)


Nous dirons que deux vecteurs d1 et d2 sont conjugués pour la matrice A si Ad2 · d1 = 0.

Ceci signifie que ces deux vecteurs sont orthogonaux pour le produit scalaire associé à la matrice
A, défini par (x, y )A = Ax · y , ∀(x, y ) ∈ Rn × Rn .

Imaginons que l’on soit capable de trouver n directions conjuguées {d (0) , ..., d (n−1) }. Alors,
{d (0) , ..., d (n−1) } est une base de Rn et on a le résultat suivant.

Proposition.
Le point x (k) est le minimum de J sur le sous-espace affine passant par x (0) engendré par
les vecteurs {d (0) , ..., d (k−1) }.

En fait, l’algorithme du gradient conjugué consiste à construire simultanément ces


directions conjuguées par le procédé de Gram-Schmidt.
L’algorithme du gradient conjugué converge en au plus n iterations.

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 17 / 18
Algorithmes pour l’optimisation SANS contrainte Méthodes de type gradient

Méthodes de gradient

choisir x (0) ∈ Rn , ε > 0, ε1 > 0


poser r (0) = (0)
∇J(x )
tant que ( x (k+1) − x (k) ≥ ε) et (k ≤ k max ) faire


si ( r (k) < ε1 ) alors arr^et

sinon
si (k = 0) alors poser d (k) = r (k)
sinon
(r (k) , d (k−1) )A
calculer α(k) = − 2
et poser d (k) = r (k) + α(k) d (k−1)
kd (k−1) kA
fin si
(r (k) , d (k) )
calculer ρ(k) = − 2
et poser x (k+1) = x (k) + ρ(k) d (k)
kd (k) kA
calculer r (k+1) = Ax (k+1) − b
poser k = k + 1
fin si
fin tant que

Table: Algorithme du gradient conjugué pour une fonctionnelle quadratique.


Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 17 / 18
Algorithmes pour l’optimisation SANS contrainte Méthodes de type gradient

Un exemple numérique

Minimisation d’une fonction quadratique, voir TP1

Comparaison des methodes de gradient a pas fixe (vert) et optimal (jaune)


2

1.5

0.5

−0.5

−1

−1.5

−2
−2 −1.5 −1 −0.5 0 0.5 1 1.5 2

Y. Privat (CNRS & Univ. Paris 6) ENSEM (2015) - Séance 3 Séance 3, mars 2015 18 / 18

Vous aimerez peut-être aussi