optimisation avec contraintes - cas convexe · gilles gasso optimisation avec contraintes 17/27...

27
Optimisation avec contraintes Cas convexe Gilles Gasso INSA Rouen - Département ASI Laboratoire LITIS 13 octobre 2015 Gilles Gasso Optimisation avec contraintes 1 / 27

Upload: lydien

Post on 11-Sep-2018

227 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Optimisation avec contraintesCas convexe

Gilles Gasso

INSA Rouen - Département ASILaboratoire LITIS

13 octobre 2015

Gilles Gasso Optimisation avec contraintes 1 / 27

Page 2: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Plan

1 Introduction

2 Formulation

3 Problème convexeNotion de convexitéForme standard d’un problème convexeOptimalité

4 Notions de Lagrangien et de dualité, conditions d’optimalitéNotion de LagrangienNotion de dualité

Gilles Gasso Optimisation avec contraintes 2 / 27

Page 3: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Introduction

Problèmes d’optimisation avec contraintes

D’où viennent ces problèmes ?Quel est lien avec le Machine Learning ?Comment se formulent-ils ?

Gilles Gasso Optimisation avec contraintes 3 / 27

Page 4: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Introduction

Exemple 1 : localisation des pompiers

?

MaisonCaserne Maison Mi : répérée par sescoordonnées zi = [xi yi ]

>

Problème : où placer la casernedes pompiers ?La placer de façon à minimiser ladistance de la caserne à la maisonla plus éloignéeSoit θ : coordonnées caserne

Détermination de θ

minθ

maxi=1,··· ,N

‖θ − zi‖2

Problème équivalent

t∈R,θ∈R2min t

s.c. ‖θ − zi‖2 ≤ t ∀ i = 1, · · · ,N

Gilles Gasso Optimisation avec contraintes 4 / 27

Page 5: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Introduction

Exemple 2 : séparation linéaire

Support vector machine (SVM)

D = (xi , yi ) ∈ Rd × −1, 1Ni=1 des points linéairement séparablesBut : trouver une fonction f (x) = θ>x + b qui prédit correctement laclasse de chaque point de D tout en maximisant la marge

minθ∈Rd ,b∈R12‖θ‖

2 maximisation de la marges.t. yi (θ

>xi + b) ≥ 1 ∀i = 1, · · · ,N classification correcte

−2 −1 0 1 2 3 4 5 6 7

−1

0

1

2

3

4

5

6

class 1

class 2

f(x) = -1 f(x)= 1

w2Margin=

f(x) = 0

Gilles Gasso Optimisation avec contraintes 5 / 27

Page 6: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Introduction

Exemple 2 : où sont les contraintes ?

minθ,b 12‖θ‖

2 fonction J(θ) à minimisers.t. yi (θ

>xi + b) ≥ 1 ∀i = 1, · · · ,N Contraintes à satisfaire

Les contraintesCombien de contraintes ?

N contraintes yi (θ>xi + b) ≥ 1 avec i = 1, · · · ,N

Type de contraintes ?

Contraintes de type inégalité

Objectif

Trouver θ∗ minimum de J(θ) tel que toutes les contraintes soient satisfaites

Gilles Gasso Optimisation avec contraintes 6 / 27

Page 7: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Formulation

Optimisation avec contraintes

Elements du problème

θ ∈ Rd : vecteur de paramètres réels inconnusJ : Rd → R : la fonction à minimiser de domaine domJfi et gj des fonctions différentiables de Rd sur R

Formulation du problème P

minθ∈Rd J(θ) Fonction objectifs.c. fi (θ) = 0 ∀i = 1, · · · , n Contraintes égalités

gj(θ) ≤ 0 ∀j = 1, · · · ,m Contraintes inégalités

AdmissibilitéSoit p∗ = minθ J(θ) tel que fi (θ) = 0 ∀i et gj(θ) ≤ 0 ∀j

Si p∗ =∞ le problème n’a pas de solution admissible

Gilles Gasso Optimisation avec contraintes 7 / 27

Page 8: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Formulation

Solutions du problème

Domaine d’admissibilitéC’est l’ensemble défini par les contraintes

Ω(θ) =θ ∈ Rd ; fi (θ) = 0 ∀i et gj(θ) ≤ 0 ∀j

Points admissiblesθ0 est admissible si θ0 ∈ domJ et θ0 ∈ Ω(θ) i.e. θ0 vérifie lescontraintes et J(θ0) est une valeur finieθ∗ est solution globale du problème si θ∗ est une solution admissibletelle que J(θ∗) = p∗

θ est une solution localement optimale si θ est admissible etJ(θ) ≤ J(θ) pour tout ‖θ − θ‖ ≤ ε

Gilles Gasso Optimisation avec contraintes 8 / 27

Page 9: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Formulation

Exemple illustratif 1

minθ

0.9θ21 − 0.74θ1θ2

+0.75θ21 − 5.4θ1 − 1.2θ2

s.c. −4 ≤ θ1 ≤ −1−3 ≤ θ2 ≤ 4

−5 0 5 10

−4

−2

0

2

4

6

−10

−10

−10

−5

−5

−5

−5

−50

0

0

0

0

5.75

5.7

5

5.755.75

5.7

5

5.7

5

10

10

10

10

10

10

J(θ) = c

Domaine Ω

Variables : θ =

(θ1θ2

)Fonction objectif (critère) :

J(θ) = 0.9θ21 − 0.74θ1θ2 + 0.75θ2

1 − 5.4θ1 − 1.2θ2

Domaine admissible (quatre contraintes inégalités) :

Ω(θ) =θ ∈ R2 ; −4 ≤ θ1 ≤ −1 et − 3 ≤ θ2 ≤ 4

Gilles Gasso Optimisation avec contraintes 9 / 27

Page 10: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Formulation

Exemple illustratif 2

Exemple

minθ∈R2

θ1 + θ2

s.c. θ21 + θ2

2 − 2 = 0−3 −2

−2

−1

−1

−1

0

0

0

0

1

1

1

1

2

2

2

3

3

4

θ1

θ2

θ* = (1, 1)

T

∇ h(θ*) = (1, 1)

T

∇ J(θ*) = (1, 1)

T

θ* = (−1, −1)

T

∇ h(θ*) = (1, 1)

T

∇ J(θ*) = (1, 1)

T

−2 −1 0 1 2−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

Une contrainte égalité

Domaine d’admissibilité : ensemble des points situés sur le cercle

La solution optimale est obtenue pour θ∗ =(−1 −1

)> et on a J(θ∗) = −2

Pour ce coursOn va se restreindre au cas où le problème d’optimisation est convexe

Gilles Gasso Optimisation avec contraintes 10 / 27

Page 11: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Problème convexe Notion de convexité

Convexité

Qu’est-ce qu’un problème convexeQu’est-ce qu’une fonction convexe ?Comment reconnait-on une fonction convexe ?

Gilles Gasso Optimisation avec contraintes 11 / 27

Page 12: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Problème convexe Notion de convexité

Notion de convexité

Fonction convexe

Une fonction J : Rd → R est convexe si elle vérifie

J(αθ + (1− α)z) ≤ αJ(θ) + (1− α)J(z), ∀θ, z ∈ domJ, 0 ≤ α ≤ 1

θ

J(θ)

z

J(z)

Exemples

exp(aθ) sur R

Affine : a>θ + b sur Rp

Entropie négative : −θ log(θ) surR+∗

la norme p de θ : ‖θ‖pp =∑d

j=1 |θj |p

Gilles Gasso Optimisation avec contraintes 12 / 27

Page 13: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Problème convexe Notion de convexité

Reconnaitre une fonction convexe

Condition du premier ordre

Une fonction J : Rd → R différentiable est convexe ssi elle vérifie

J(θ) ≥ J(z) +∇J(θ)>(θ − z), ∀θ, z ∈ domJ

θ

J(θ)

z

J(z)

J(z) + ∇ J(z) × (θ−z)

La tangente en z à la courbe est une borne inférieure de J(θ),∀θ. Toute fonctionconvexe est toujours située au-dessus de la tangente en un point du graphe de J

Gilles Gasso Optimisation avec contraintes 13 / 27

Page 14: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Problème convexe Notion de convexité

Reconnaitre une fonction convexe

En pratique : se baser sur l’un des cas suivantsVérifier la condition du premier ordreEtablir que J(θ) est construite à partir de fonctions convexes simpleset d’opérations mathématiques préservant la convexité

Opérations préservant la convexité

αJ(θ) est convexe si J convexe et α ≥ 0α1J1(θ) + α2J2(θ) convexe si J1 et J2 le sont et α1, α2 positifsmaxJ1(θ), · · · , Jm(θ) convexe si tous les Ji le sont

ExempleSous quelle condition cette fonction est convexe ?J(θ) = α1θ1 log(θ1) + α2θ2 log(θ2) + α3θ

21 + α4θ

22

Gilles Gasso Optimisation avec contraintes 14 / 27

Page 15: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Problème convexe Forme standard d’un problème convexe

Problème d’optimisation convexe

Problème convexeUn problème d’optimisation sous contraintes est dit convexe si J estconvexe, les gj sont convexes et les contraintes égalités sont affines

minθ∈Rd J(θ) Fonction objectif convexes.c. a>i θ − bi = 0 ∀i = 1, · · · , n Contraintes égalités affines

gj(θ) ≤ 0 ∀j = 1, · · · ,m Contraintes inégalités convexes

Exemple

minθ∈R2

θ21 + θ2

2 + θ1θ2

−2θ1 + 2θ2 − 2s.c. θ1 − θ2 = 0

‖θ‖1 − 2 ≤ 0 −5

−5

−5

0

0

0

0

5

5

5

5

5

10

10

10

10

10

15

15

15

20

20

−2

−2

−2

θ1

θ2

0

0

0

0

−3 −2 −1 0 1 2 3−3

−2

−1

0

1

2

3

g(θ) ≤ 0

Iso−contours J(θ) = c

aTθ − b = 0

Gilles Gasso Optimisation avec contraintes 15 / 27

Page 16: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Problème convexe Optimalité

Propriété d’un problème convexe

Théorème [Optimalité globale]

Toute solution locale d’un problème d’optimisation convexe est égalementsolution globale.

Et maintenantComment reconnait-on une solution optimale du problème ?Existe-t-il des conditions d’optimalité comme dans le cas desproblèmes sans contrainte ?

Gilles Gasso Optimisation avec contraintes 16 / 27

Page 17: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Notion de LagrangienProblème primal P

minθ∈Rd J(θ)fi (θ) = 0 ∀i = 1, · · · , n n contraintes linéaires

s.c. gj(θ) ≤ 0 ∀j = 1, · · · ,m m contraintes inégalités

θ est appelé variable primale

Principe du Lagrangien

A chaque contrainte est associé un paramètre scalaire appelé multiplicateurde Lagrange

Contrainte égalité fi (θ) = 0 : on associe λi ∈ R

Contrainte inégalité gj(θ) ≤ 0 : on associe µj ≥ 0 a

Le Lagrangien permet de transformer le problème avec contraintes en unproblème sans contrainte avec des variables supplémentaires λi et µj .

a. Attention au sens de l’inégalité

Gilles Gasso Optimisation avec contraintes 17 / 27

Page 18: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Lagrangien : formulation générale

Paramètres de Lagrange associésminθ∈Rd J(θ) Aucun

fi (θ) = 0 ∀i = 1, · · · , n λi scalaire réel ∀i = 1, · · · , ns.c. gj(θ) ≤ 0 ∀j = 1, · · · ,m µj ≥ ∀j = 1, · · · ,m

LagrangienLe Lagrangien est défini par

L(θ, λ, µ) = J(θ) +n∑

i=1

λi fi (θ) +m∑

j=1

µjgj(θ) avec µj ≥ 0, ∀j = 1, · · · ,m

Les paramètres λi , i = 1, · · · , n et µj , j = 1, · · · ,m sont appelésvariables dualesIls sont des inconnus du problème qu’il faut aussi déterminer

Gilles Gasso Optimisation avec contraintes 18 / 27

Page 19: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Conditions d’optimalité

θ∗ est une solution du problème si et seulement si il existe λ∗i , i = 1, · · · , n,µ∗j , j = 1, · · · ,m satisfaisant les conditions KKT.

Conditions Karush-Kuhn-Tucker (KKT)

Stationarité ∇L(λ, θ) = 0 c’est-à-dire∇J(θ) +

∑ni=1 λiai +

∑mj=1 µj∇gj(θ) = 0

Admissibilité primale fi (θ) = 0 ∀i = 1, · · · , ngj(θ) ≤ 0 ∀j = 1, · · · ,m

Admissibilité duale µj ≥ 0 ∀j = 1, · · · ,m

Complémentarité µjgj(θ) = 0 ∀j = 1, · · · ,m

Gilles Gasso Optimisation avec contraintes 19 / 27

Page 20: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Exemple

minθ∈R2

12(θ2

1 + θ22)

s.c. θ1 − 2θ2 − 2 ≤ 0

Lagrangien : L(λ, θ) = 12 (θ

21 + θ2

2) + µ(θ1 − 2θ2 − 2), µ ≥ 0

Conditions KKT

Stationnarité : ∇θL(µ, θ) = 0 ⇒θ1 = −µθ2 = −2µ

Admissibilité primale : θ1 − 2θ2 − 2 ≤ 0

Admissibilité duale : µ ≥ 0

Complémentarité : µ(θ1 − 2θ2 − 2) = 0

Remarques sur les conditions de complémentaritéSi θ1 − 2θ2 − 2 < 0 (contrainte inactive) ⇒ µ = 0 (pas besoin depénalité puisque la contrainte est satisfaite)

Si µ > 0 ⇒ θ1 − 2θ2 − 2 = 0 (contrainte active)

Gilles Gasso Optimisation avec contraintes 20 / 27

Page 21: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Notions de Lagrangien et de dualité, conditions d’optimalité Notion de dualité

Dualité

Fonction dualeSoit L(θ, λ, µ) le lagrangien du problème primal P avec µj ≥ 0. La fonctionduale correspondante est L(λ, µ) = minθ L(θ, λ, µ)

Théorème [Dualité faible]

Soit p∗ = minθ J(θ) tel que fi (θ) = 0 ∀i et gj(θ) ≤ 0 ∀j la valeuroptimale (supposée finie) du problème P. Si µj ≥ 0, ∀j alors

L(λ, µ) ≤ p∗

Gilles Gasso Optimisation avec contraintes 21 / 27

Page 22: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Notions de Lagrangien et de dualité, conditions d’optimalité Notion de dualité

Problème dual

La dualité faible indique que la fonction duale L(λ, µ) = minθ L(θ, λ, µ) estune borne inférieure de p∗

Problème : comment rendre cette borne inférieure proche de p∗ ?

Intuition : il faut la maximiser par rapport aux variables duales λ et µ

Problème dual

maxλ,µ

L(λ, µ)

s.c. λj ≥ 0 ∀ j = 1, · · · ,m

Gilles Gasso Optimisation avec contraintes 22 / 27

Page 23: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Notions de Lagrangien et de dualité, conditions d’optimalité Notion de dualité

Intérêts du problème dual

Remarques

Il permet de transformer le problème primal en un problème dual équivalentdont la résolution est plus facile dans certains cas

La résolution du dual peut permettre d’obtenir la solution du problèmeprimal

La résolution du dual donne les valeurs optimales des multiplicateurs deLagrange

Gilles Gasso Optimisation avec contraintes 23 / 27

Page 24: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Notions de Lagrangien et de dualité, conditions d’optimalité Notion de dualité

Exemple : contrainté inégalité

minθ∈R2

12(θ2

1 + θ22)

s.c. θ1 − 2θ2 − 2 ≤ 0

Lagrangien : L(θ, µ) = 12 (θ

21 + θ2

2) + µ(θ1 − 2θ2 − 2), µ ≥ 0

Condition KKT de stationnarité :

∇θL(µ, θ) = 0 ⇒θ1 = −µθ2 = 2µ (1)

Fonction duale L(µ) = minθ L(θ, µ) : en remplaçant (1) dans L on obtient

L(µ) = −52µ2 − 2µ

Problème dual : maxµ L(µ) s.c. µ ≥ 0

Solution duale∇L(µ) = 0⇒ µ =

25

(2)

Solution primale : (2) dans (1) donne θ =(− 2

545

)>Gilles Gasso Optimisation avec contraintes 24 / 27

Page 25: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Notions de Lagrangien et de dualité, conditions d’optimalité Notion de dualité

Exemple : contraintes égalités

minθ∈R3

12(θ21 + θ2

2 + θ23)

s.c. θ1 + θ2 + 2θ3 − 1 = 0

θ1 + 4θ2 + 2θ3 − 3 = 0

Forme matricielle

minθ∈R3

12θ>θ s.c. Aθ − b = 0

avec A =

(1 1 21 4 2

), b =

(13

)Lagrangien : L(λ, θ) = 1

2θ>θ + λ> (Aθ − b) , λ ∈ R2

Conditions KKTStationnarité : ∇θL(λ, θ) = 0 ⇒ θ = −A>λ (1)

Admissibilité primale : h(θ) = 0 ⇒ Aθ − b = 0 (2)

Fonction duale : en remplaçant (1) dans L on a

L(λ) = −12AA>λ− λ>b

Problème dual : maxλ L(λ)Solution duale

∇L(λ) = 0⇒ λ = −(AA>

)−1b (3)

Solution primale : (3) dans (1) donne θ = A>(AA>

)−1 bGilles Gasso Optimisation avec contraintes 25 / 27

Page 26: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Notions de Lagrangien et de dualité, conditions d’optimalité Notion de dualité

Une méthodologie pratique

Remarque

Dans le cadre de cet EC on se limitera aux problèmes de programmationquadratique (QP) simples

Méthodologie

Ecrire le langrangien L du problème primal avec contraintes en introduisantles multiplicateurs de Lagrange

Ecrire la condition KKT de stationnarité ∇θL(θ) = 0 et en déduire uneexpression de θ en fonction des multiplicateurs

Ecrire la fonction duale et formuler le problème dual

Résoudre le problème dual

En déduire θ

Si besoin écrire les conditions KKT de complémentarité

Gilles Gasso Optimisation avec contraintes 26 / 27

Page 27: Optimisation avec contraintes - Cas convexe · Gilles Gasso Optimisation avec contraintes 17/27 Notions de Lagrangien et de dualité, conditions d’optimalité Notion de Lagrangien

Notions de Lagrangien et de dualité, conditions d’optimalité Notion de dualité

Récapitulation

Problèmes d’optimisation sous contraintes convexes ont une propriétéintéressante : toute solution locale est globalement optimale

Lagrangien : transformer le problème avec contraintes en un problème sanscontraintes via les multiplicateurs de Lagrange

Multiplicateurs de Lagrange

à une contrainte correspond un multiplicateur ⇒ autant demultiplicateurs que de contraintes

sorte de pénalité si les contraintes correspondantes sont violées

Optimalité : condition de stationarité + conditions admissibilité +conditions complémentaires

Dualité : fournit borne inférieure sur le problème primal. Problème dualparfois plus facile à résoudre que le primal.

Gilles Gasso Optimisation avec contraintes 27 / 27