IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ....

21
Introduction à l’optimisation, aspects théoriques et numériques Yannick Privat IRMA, univ. Strasbourg Résumé n o 6 Algorithmes pour l’optimisation SOUS contrainte(s) Y. Privat (univ. Strasbourg) Master 1 - Optimisation Résumé n o 6 1/8

Transcript of IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ....

Page 1: IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ. Strasbourg Résuméno 6 Algorithmespourl’optimisationSOUScontrainte(s) Y. Privat (univ.

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

Page 2: IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ. Strasbourg Résuméno 6 Algorithmespourl’optimisationSOUScontrainte(s) Y. Privat (univ.

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

Page 3: IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ. Strasbourg Résuméno 6 Algorithmespourl’optimisationSOUScontrainte(s) Y. Privat (univ.

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

Page 4: IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ. Strasbourg Résuméno 6 Algorithmespourl’optimisationSOUScontrainte(s) Y. Privat (univ.

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

Page 5: IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ. Strasbourg Résuméno 6 Algorithmespourl’optimisationSOUScontrainte(s) Y. Privat (univ.

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

Page 6: IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ. Strasbourg Résuméno 6 Algorithmespourl’optimisationSOUScontrainte(s) Y. Privat (univ.

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

Page 7: IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ. Strasbourg Résuméno 6 Algorithmespourl’optimisationSOUScontrainte(s) Y. Privat (univ.

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

Page 8: IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ. Strasbourg Résuméno 6 Algorithmespourl’optimisationSOUScontrainte(s) Y. Privat (univ.

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

Page 9: IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ. Strasbourg Résuméno 6 Algorithmespourl’optimisationSOUScontrainte(s) Y. Privat (univ.

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

Page 10: IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ. Strasbourg Résuméno 6 Algorithmespourl’optimisationSOUScontrainte(s) Y. Privat (univ.

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

Page 11: IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ. Strasbourg Résuméno 6 Algorithmespourl’optimisationSOUScontrainte(s) Y. Privat (univ.

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

Page 12: IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ. Strasbourg Résuméno 6 Algorithmespourl’optimisationSOUScontrainte(s) Y. Privat (univ.

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

Page 13: IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ. Strasbourg Résuméno 6 Algorithmespourl’optimisationSOUScontrainte(s) Y. Privat (univ.

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

Page 14: IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ. Strasbourg Résuméno 6 Algorithmespourl’optimisationSOUScontrainte(s) Y. Privat (univ.

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

Page 15: IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ. Strasbourg Résuméno 6 Algorithmespourl’optimisationSOUScontrainte(s) Y. Privat (univ.

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

Page 16: IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ. Strasbourg Résuméno 6 Algorithmespourl’optimisationSOUScontrainte(s) Y. Privat (univ.

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

Page 17: IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ. Strasbourg Résuméno 6 Algorithmespourl’optimisationSOUScontrainte(s) Y. Privat (univ.

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

Page 18: IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ. Strasbourg Résuméno 6 Algorithmespourl’optimisationSOUScontrainte(s) Y. Privat (univ.

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

Page 19: IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ. Strasbourg Résuméno 6 Algorithmespourl’optimisationSOUScontrainte(s) Y. Privat (univ.

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

Page 20: IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ. Strasbourg Résuméno 6 Algorithmespourl’optimisationSOUScontrainte(s) Y. Privat (univ.

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

Page 21: IRMA, univ. Strasbourgirma.math.unistra.fr/~privat/documents/M1_Optim/seance6.pdfIRMA, univ. Strasbourg Résuméno 6 Algorithmespourl’optimisationSOUScontrainte(s) Y. Privat (univ.

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