Upload
lydien
View
227
Download
0
Embed Size (px)
Citation preview
Optimisation avec contraintesCas convexe
Gilles Gasso
INSA Rouen - Département ASILaboratoire LITIS
13 octobre 2015
Gilles Gasso Optimisation avec contraintes 1 / 27
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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