Post on 11-Jul-2020
Introduction à l’optimisation, aspects théoriques et numériques
Yannick Privat
IRMA, univ. Strasbourg
Résumé no 6Algorithmes pour l’optimisation SOUS contrainte(s)
Y. Privat (univ. Strasbourg) Master 1 - Optimisation Résumé no 6 1 / 8
Plan
1 Algorithme de pénalisation
2 La méthode du gradient projeté
3 L’algorithme d’Uzawa
Y. Privat (univ. Strasbourg) Master 1 - Optimisation Résumé no 6 2 / 8
Algorithme de pénalisation
Sommaire
1 Algorithme de pénalisation
2 La méthode du gradient projeté
3 L’algorithme d’Uzawa
Y. Privat (univ. Strasbourg) Master 1 - Optimisation Résumé no 6 3 / 8
Algorithme de pénalisation
Les méthodes de pénalisation
! Objectif : donner un exemple de méthode pour l’optimisation sous contraintes.
! Bien d’autres existent. Par exemple, l’agorithme du gradient projeté, d’Uzawa, etc.
! Le principe : on remplace le problème avec contraintes.
(P) infx∈C⊂Rn
J (x)
par un problème sans contrainte
(Pε) infx∈Rn
J (x) +1εα (x) ,
où α : Rn → R est une fonction de pénalisation des contraintes et ε > 0.
! Choix de la fonction α : le but est de trouver des fonctions α telles que les problèmes(P) et (Pε) soient équivalents, c’est-à-dire, tels qu’ils aient les mêmes solutions.
Y. Privat (univ. Strasbourg) Master 1 - Optimisation Résumé no 6 4 / 8
Algorithme de pénalisation
Les méthodes de pénalisation
On compare les problèmes
Avec contraintes Sans contrainte
(P) infx∈C⊂Rn
J (x) (Pε) infx∈Rn
J (x) +1εα (x)
Supposons que α vérifie les propriétés suivantes :
1 α est continue sur Rn
2 ∀x ∈ Rn, α (x) > 03 α (x) = 0⇔ x ∈ C
Voici quelques exemples de fonction de pénalisation pour différentes contraintes :
Contrainte x 6 0 : la fonction α est α (x) =∥∥x+
∥∥2.
Contrainte h (x) = 0 : la fonction α est α (x) = ‖h (x)‖2.
contrainte g (x) 6 0 : la fonction α est α (x) =∥∥g (x)+
∥∥2.
On note x+ = max{x , 0} et on généralise cette notation à des vecteurs.
Y. Privat (univ. Strasbourg) Master 1 - Optimisation Résumé no 6 4 / 8
Algorithme de pénalisation
Les méthodes de pénalisation
Initialisationk = 1 : choisir x (0) ∈ Rn, ε(1) > 0
Iteration k : tant que le critere d’arret n’est pas satisfait :
a) Resoudre le sous probleme (Pε(k)){
min J (x) + 1ε(k)
α (x)
x ∈ Rn
avec x (k−1) le point d’initialisation.b) k ← k + 1, prendre ε(k+1) < ε(k).
Table – Algorithme de pénalisation extérieure
Y. Privat (univ. Strasbourg) Master 1 - Optimisation Résumé no 6 4 / 8
Algorithme de pénalisation
Les méthodes de pénalisation
Théorème (convergence de la méthode de pénalisation)
Soit J une fonction continue et coercive. Soit C un ensemble fermé non vide. On supposeque α vérifie les conditions suivantes :
1 α est continue sur Rn.2 ∀x ∈ Rn, α (x) > 0.3 α (x) = 0⇔ x ∈ C .
On a alors :
∀ε > 0, (Pε) a au moins une solution xε
La famille (xε)ε>0 est bornée
Toute sous-suite convergente extraite de (xε)ε>0 converge vers une solution de (P)lorsque ε→ 0.
Exemple
Une formulation pénalisée du problème d’optimisation (P) infx≥0
x4 + 6y6 − 3x2 + x − 7y
est (Pε) inf(x,y)∈R2
x4 + 6y6 − 3x2 + x − 7y +1ε
min{x , 0}2. On peut vérifier que les
hypothèses du théorème ci-dessus sont satisfaites.Y. Privat (univ. Strasbourg) Master 1 - Optimisation Résumé no 6 4 / 8
La méthode du gradient projeté
Sommaire
1 Algorithme de pénalisation
2 La méthode du gradient projeté
3 L’algorithme d’Uzawa
Y. Privat (univ. Strasbourg) Master 1 - Optimisation Résumé no 6 5 / 8
La méthode du gradient projeté
La méthode du gradient projeté
On cherche à résoudre numériquement le problème
infx∈C
J(x) avec J : Rn → R différentiable
et C ⊂ Rn, un ensemble de contraintes.
X Dans le cas sans contrainte, l’algorithme du gradient est une méthode de descentes’écrivant sous la forme générique.{
x (0) ∈ Rn donne.
x (k+1) = x (k) + ρ(k)d(k),
où d(k) ∈ Rn \ {0} est la direction de descente, ρ(k) ∈ R+∗ est le pas à l’itération k.Ces deux paramètres sont choisis de sorte que
J(x (k+1)
)6 J
(x (k)).
X Problème numérique : lorsque l’on minimise sur un ensemble de contraintes C , iln’est pas sûr que x (k) reste sur C . Il est donc nécessaire de se ramener sur C .On réalise cette dernière opération grâce à une projection sur C .
Y. Privat (univ. Strasbourg) Master 1 - Optimisation Résumé no 6 6 / 8
La méthode du gradient projeté
La méthode du gradient projeté
On cherche à résoudre numériquement le problème
infx∈C
J(x) avec J : Rn → R différentiable
et C ⊂ Rn, un ensemble de contraintes.
Rappels sur la notion de projection
Soit C , un convexe fermé d’un espace vectoriel H dedimension finie (ou plus généralement, un espace deHilbert)
Soit x ∈ H. Il existe un unique élément de C notépC (x), appelé projection de x sur C qui résout leproblème
infy∈C‖x − y‖.
pC (x) est caractérisé de façon unique par lesconditions :
pC (x) ∈ C et 〈x − pC (x), y − pC (x)〉 ≤ 0, ∀y ∈ C .
Y. Privat (univ. Strasbourg) Master 1 - Optimisation Résumé no 6 6 / 8
La méthode du gradient projeté
La méthode du gradient projeté
On cherche à résoudre numériquement le problème
infx∈C
J(x) avec J : Rn → R différentiable
et C ⊂ Rn, un ensemble de contraintes.
Exemples de projections
Exemple 1 : si C = {(x1, ..., xn) , ai ≤ xi ≤ bi , i ∈ {1, . . . n}}, alors pouri ∈ {1, . . . , n},
i-ème composante de pC (x1, . . . , xn) = min{max{xi , ai}, bi}.
Exemple 2 : si C = {x ∈ Rn | x ∈ Bf (x0,R)}, où Bf (x0,R) est la boule euclidiennefermée de centre x0 et rayon R, alors
pCx =
{x , si x ∈ C ;x0 + R x−x0
‖x−x0‖ , si x /∈ C.
Y. Privat (univ. Strasbourg) Master 1 - Optimisation Résumé no 6 6 / 8
La méthode du gradient projeté
La méthode du gradient projeté
On cherche à résoudre numériquement le problème
infx∈C
J(x) avec J : Rn → R différentiable
et C ⊂ Rn, un ensemble de contraintes.
On suppose que C est un convexe fermé de Rn.
Algorithme du gradient projeté
1 Initialisation.k = 0 : on choisit x0 ∈ Rn et ρ0 ∈ R∗+.
2 Itération k.
xk+1 = pC(xk − ρk∇J(xk)
).
pC désigne ici la projection sur C
Y. Privat (univ. Strasbourg) Master 1 - Optimisation Résumé no 6 6 / 8
La méthode du gradient projeté
La méthode du gradient projeté
On cherche à résoudre numériquement le problème
infx∈C
J(x) avec J : Rn → R différentiable
et C ⊂ Rn, un ensemble de contraintes.
Théorème (convergence de la méthode de gradient projeté)
On suppose que J est coercive, C1, de dérivée Lipschitzienne a, et qu’il existe α > 0 telque :
∀(x , y) ∈ (Rn)2, (∇J(x)−∇J(y), x − y) ≥ α‖x − y‖2.
Si l’on choisit le pas ρk dans un intervalle [β1, β2] tel que 0 < β1 < β2 <2αM, où α est
la constante de coercivité de J et M, la constante de Lipschitz de la dérivée de J, alorsla suite (xn)n≥0 d’itérés par la méthode du gradient projeté converge vers la solution duproblème de minimisation.
a. autrement dit qu’il existe M > 0 tel que
‖∇J(x)−∇J(y)‖ ≤ M‖x − y‖ ∀(x, y) ∈ [Rn]2.
Y. Privat (univ. Strasbourg) Master 1 - Optimisation Résumé no 6 6 / 8
La méthode du gradient projeté
La méthode du gradient projeté
On cherche à résoudre numériquement le problème
infx∈C
J(x) avec J : Rn → R différentiable
et C ⊂ Rn, un ensemble de contraintes.
Un exemple numérique
On résout
inf(x,y)∈Q
2x2 + 3xy + 2y2,
avec Q ={x ≤ − 1
2 , y ≤ −12
}, à l’aide
d’une méthode de gradient projeté àpas constant.
pas = 1e − 4. Le gradient converge(erreur < 1e − 8) en 8 iterations.
Y. Privat (univ. Strasbourg) Master 1 - Optimisation Résumé no 6 6 / 8
La méthode du gradient projeté
La méthode du gradient projeté
On cherche à résoudre numériquement le problème
infx∈C
J(x) avec J : Rn → R différentiable
et C ⊂ Rn, un ensemble de contraintes.
Un exemple numérique
Suite des itérés (∗ sur le dessin)obtenus par Matlab :-0.6000 0.2000-0.5998 -0.5000-0.5994 -0.5000-0.5989 -0.5000-0.5985 -0.5000-0.5980 -0.5000-0.5974 -0.5000-0.5000 -0.5000-0.5000 -0.5000
Y. Privat (univ. Strasbourg) Master 1 - Optimisation Résumé no 6 6 / 8
L’algorithme d’Uzawa
Sommaire
1 Algorithme de pénalisation
2 La méthode du gradient projeté
3 L’algorithme d’Uzawa
Y. Privat (univ. Strasbourg) Master 1 - Optimisation Résumé no 6 7 / 8
L’algorithme d’Uzawa
L’algorithme d’Uzawa
On cherche à résoudre numériquement le problème
infx∈C
J(x) avec J : Rn → R différentiable
et C = {x ∈ Rn | h(x) = 0 et g(x) ≤ 0}, l’ensemble de contraintes (avec h : Rn → Rp etg : Rn → Rq).
La technique proposée ici provient de la partie de l’optimisation appelée théorie de la dualitéconvexe. L’idée générale est de considérer le Lagrangien L défini sur Rn × Rp × Rq par
L (x , λ, µ) = J (x) +
p∑i=1
λihi (x) +
q∑j=1
µjgj (x) .
Pour mieux comprendre la théorie de la dualité, on introduit la notion de point-selle duLagrangien.
Définition : point-selle du Lagrangien
On appelle point-selle de L sur Rn × Rp × R+m tout triplet (x∗, λ∗, µ∗) ∈ Rn × Rp × Rq+
vérifiant
∀ (x , λ, µ) ∈ Rn × Rp × Rq+, L (x∗, λ, µ) 6 L (x∗, λ∗, µ∗) 6 L (x , λ∗, µ∗)
Y. Privat (univ. Strasbourg) Master 1 - Optimisation Résumé no 6 8 / 8
L’algorithme d’Uzawa
L’algorithme d’Uzawa
On cherche à résoudre numériquement le problème
infx∈C
J(x) avec J : Rn → R différentiable
et C = {x ∈ Rn | h(x) = 0 et g(x) ≤ 0}, l’ensemble de contraintes (avec h : Rn → Rp etg : Rn → Rq).
Ce choix est motivé (au moins) par deux raisons :
La fonction Lagrangienne englobe à la fois la fonction J et les contraintes h et g .
une condition nécessaire du premier ordre pour que x∗ soit un minimum de J aveccontraintes est que x∗ (associé aux multiplicateurs de Lagrange) soit un pointcritique de L.
On a alors le résultat suivant.
Théorème (Karush-Kuhn-Tucker)
Supposons que J, h et g soient de classe C1 et que le triplet (x∗, λ∗, µ∗) ∈ Rn×Rp×Rq+ soit
un point-selle de L sur Rn×Rp×Rq+. Alors, ce triplet vérifie les conditions de Kuhn-Tucker.
Réciproque vraie sous certaines conditions (par exemple, si J est convexe).
Y. Privat (univ. Strasbourg) Master 1 - Optimisation Résumé no 6 8 / 8
L’algorithme d’Uzawa
L’algorithme d’Uzawa
On cherche à résoudre numériquement le problème
infx∈C
J(x) avec J : Rn → R différentiable
et C = {x ∈ Rn | h(x) = 0 et g(x) ≤ 0}, l’ensemble de contraintes (avec h : Rn → Rp etg : Rn → Rq).
Ce théorème indique que nous devons chercher un triplet (x∗, λ∗, µ∗) ∈ Rn × Rp × Rq+
vérifiant les conditions de Kuhn-Tucker, autrement dit :
1 Pour (λ∗, µ∗) fixés dans Rp × Rq+, on résout le problème de minimisation sans
contrainte (sur tout Rn)infx∈RnL (x , λ∗, µ∗)
2 Pour x∗ fixé dans Rn, on résout le problème de maximisation sur Rp × Rq+
(c’est-à-dire avec des contraintes de bornes simples)
sup(λ,µ)∈Rp×Rq
+
L (x∗, λ, µ)
Y. Privat (univ. Strasbourg) Master 1 - Optimisation Résumé no 6 8 / 8
L’algorithme d’Uzawa
L’algorithme d’Uzawa
On cherche à résoudre numériquement le problème
infx∈C
J(x) avec J : Rn → R différentiable
et C = {x ∈ Rn | h(x) = 0 et g(x) ≤ 0}, l’ensemble de contraintes (avec h : Rn → Rp etg : Rn → Rq).
On se donne ρ > 0.
Initialisation : k = 0, choisir λ(0) ∈ Rp et µ(0) ∈ Rq+
Iteration. Tant que le critere d’arret n’est pas satisfait :a) calculer x (k) ∈ Rn solution de(P(k)
)infx∈Rn L
(x , λ(k), µ(k)
)b) calculer λ(k+1) et µ(k+1) avec λ
(k+1)i = λ
(k)i + ρ hi
(x (k)), i = 1, ..., p
µ(k+1)j = max
(0, µ(k)
j + ρgj(x (k)))
, j = 1, ...q
Table – Algorithme d’Uzawa
Y. Privat (univ. Strasbourg) Master 1 - Optimisation Résumé no 6 8 / 8
L’algorithme d’Uzawa
L’algorithme d’Uzawa
On cherche à résoudre numériquement le problème
infx∈C
J(x) avec J : Rn → R différentiable
et C = {x ∈ Rn | h(x) = 0 et g(x) ≤ 0}, l’ensemble de contraintes (avec h : Rn → Rp etg : Rn → Rq).
Convergence de l’algorithme d’Uzawa
On suppose que J est C1 et α-convexe a, que h est affine, g convexe de classe C1 et queh et g sont M-lipschitziennes.On suppose de plus que le Lagrangien L possède un point-selle (x∗, λ∗, µ∗) sur Rn×Rp ×Rq
+.
Alors, pour tout ρ ∈]0, α/M2], la suite
(x (k))k∈N
générée par l’algorithme d’Uzawa
converge vers x∗.
a. On rappelle que J est dite α-convexe s’il existe α > 0 tel que J − α2 ‖ · ‖
22 est convexe.
Y. Privat (univ. Strasbourg) Master 1 - Optimisation Résumé no 6 8 / 8