Title: Chapitre 3 Optimisation non linaire avec contraintes
1Chapitre 3Optimisation non linéaireavec
contraintes
- Optimisation I
- Systèmes de Communication
2Algorithmes des multiplicateurs pénalité et
Lagrangien augmenté
3Lagrangien augmenté
- Soit le problème
- min f(x)
- s.c. h(x) 0, x ? X
- avec fIRn?IR, h IRn?IRm et X ? IRn.
- En général, on aura X IRn.
- On considérera x et l qui vérifient les
conditions suffisantes doptimalité du second
ordre.
4Lagrangien augmenté
- Définition
- Soit c ³ 0. La fonction LcIRnxIRm?IR
- Lc(x,l) f(x) lTh(x) (c/2) h(x)2
- est appelée le Lagrangien augmenté de f.
5Lagrangien augmenté
- Idée
- Deux mécanismes, basés sur la minimisation sans
contraintes de Lc(.,l), donnent des points
proches de x. - Rendre l le plus proche possible de l.
- Car x est un minimum local strict de Lc(.,l).
- Rendre c très grand.
- Le coût des points non admissibles sera alors
très élevé, et le minimum de Lc(.,l) sera
quasi-admissible. De plus, si x est
quasi-admissible, on a Lc(x,l)?f(x).
6Exemple
- min f(x) ½ (x12 x22)
- s.c. x1 1
- Solution optimale x(1 0)T
- Multiplicateur l -1
- En effet
- ?f(x) l?h(x) x1x2l0
- On a
- Lc(x,l) ½(x12 x22) l(x1-1)(c/2)(x1-1)2
7Exemple
- Lc(x,l) ½(x12 x22) l(x1-1)(c/2)(x1-1)2
- ? Lc(x,l) / ?x1 x1lc(x1-1)
- ? Lc(x,l) / ?x2 x2
- ? Lc(x,l) / ?x1 0 ? x1 (c-l)/(c1)
- ? Lc(x,l) / ?x2 0 ? x2 0
- Si ll-1, on a x1 x1 1 pour tout c gt 0
- Si c??, x1 ? x1 1 pour tout l
8c1 l0
9c1 l-0.2
10c1 l-0.4
11c1 l-0.6
12c1 l-0.8
13c1 l-1
14c1 l0
15c10 l0
16c100 l0
17c1000 l0
18c10000 l0
19Pénalité quadratique
- Résolution dune suite de problèmes Pk(ck,lk)
- min Lck(x,lk)
- s.c. x ? X
- où (lk) est une suite dans IRm, et (ck) est une
suite de paramètres positifs. - Historiquement, lk0 ?k.
20Pénalité quadratique
- Théorème
- Supposons que f et h sont continues, que X est
fermé et que x?X h(x)0 est non vide. - Soit xk un minimum global de Pk(ck,lk), où
- (lk) est bornée
- 0 lt ck lt ck1 ?k
- ck ??
- Alors, chaque point limite de la suite (xk) est
un minimum global du problème original.
21Pénalité quadratique
- En pratique, on ne calcule pas exactement la
solution des sous-problèmes. - Notamment, lorsque XIRn, un critère darrêt basé
sur la norme du gradient sera utilisé - ?x Lck(xk,lk) ek
22Pénalité quadratique
- Théorème
- Soient f, h continûment différentiables et XIRn
- Soient les suites (xk), (lk) et (ek) telles que
- ?x Lck(xk,lk) ek
- (lk) est bornée
- 0 lt ck lt ck1 ?k
- ck ??
- ek ³ 0
- ek ? 0
23Pénalité quadratique
- Théorème (suite)
- Supposons quune sous-suite (xk)K converge vers
x tel que ?h(x) est de rang plein. - Alors
- (lkckh(xk))K ? l
- et (x,l) vérifient les conditions nécessaires
doptimalité - ?f(x) ?h(x)l 0
24Pénalité quadratique
- Notes
- La méthode fonctionne également si la
minimisation sans contrainte est stoppée
prématurément. - En prime, on obtient une approximation des
multiplicateurs de Lagrange. - Quand c est grand, le problème peut devenir mal
conditionné.
25c1000 l0
26Pénalité quadratique
- min f(x) ½ (x12 x22)
- s.c. x1 1
- Lc(x,l) ½(x12 x22) l(x1-1)(c/2)(x1-1)2
- ?x Lc(x,l) ( x1lc(x1-1), x2 )T
- ?2xx Lc(x,l)
- Nombre de conditionnement (c1) / 1
- Il tend vers linfini avec c
27Pénalité quadratique
- Notes
- Méthode de Newton préférable
- Utiliser comme point de départ la solution du
sous-problème précédent - Mise à jour de ck
- Si trop rapide
- la solution du sous-problème précédent nest pas
proche de la solution du problème courant. - Problème de mauvais conditionnement
- Si trop lent
- convergence lente de la méthode.
28Pénalité quadratique
- Notes
- En pratique
- ck1 b ck
- b ? 4,10
- c0 doit être déterminé par essais-erreurs.
29Pénalité quadratique
- Contraintes dinégalité
- min f(x)
- s.c. h(x) 0, g(x) 0
- fIRn?IR, hIRn ?IRm gIRn ?IRr
- Introduire des variables décart positives.
- min f(x)
- s.c. h(x) 0
- g1(x) z12 0
-
- gr(x) zr2 0
30Pénalité quadratique
- On obtient comme sous-problèmes de minimisation
- Ce problème peut-être résolu en deux étapes,
grâce au caractère artificiel des variables
décart.
31Pénalité quadratique
- Définir
- Lc(x,l,m) minz Lc(x,z,l,m)
- Minimiser Lc(x,l,m) par rapport à x.
- Pour un x donné, la première minimisation peut
être résolue analytiquement. Seul le terme
suivant est impliqué
32Pénalité quadratique
- En posant yj zj2 , yj ³ 0
- En dérivant, on obtient
- mj c(gj(x)yj)
- Cette dérivée sannule pour
- yj -mj/c gj(x)
33Pénalité quadratique
- Si yj ³0, on a yj yj
- Sinon, comme il sagit dune fonction
quadratique, yj0. - Donc,
- yjmax(0,yj)max(0, -mj/c gj(x))
- ou encore
- yjgj(x) max(gj(x), -mj/c)?gj(x,m,c)
34Pénalité quadratique
- qui peut aussi être écrit
35Pénalité quadratique
- qui peut être considéré comme le Lagrangien
augmenté pour le problème avec contraintes
dégalité et dinégalité.
36Pénalité quadratique
est continûment différentiable en x si gj lest.
Cependant, la matrice hessienne est discontinue
pour tout x tel que gj(x)-mj/c. Cela peut poser
des problèmes lors de la minimisation du
lagrangien augmenté.
37Pénalité quadratique
- Lapproximation des multiplicateurs pour les
contraintes dinégalité est donnée par - mjk ck gj(xk,mk,ck)
38Méthode des multiplicateurs
- Reprenons le problème avec contraintes dégalité
et XIRn - min f(x)
- s.c. h(x) 0
- La méthode de pénalité quadratique garantit la
convergence sans condition sur la suite (lk), si
ce nest quelle soit bornée. - On va maintenant essayer que (lk) approche les
multiplicateurs de Lagrange pour améliorer la
convergence.
39Méthode des multiplicateurs
- Idée
- Utiliser le résultat du théorème pour la mise à
jour de lk - lk1 lk ck h(xk).
- La méthode de pénalité quadratique utilisant
cette mise à jour est appelée la méthode des
multiplicateurs.
40Méthode des multiplicateurs
- Exemple
- min f(x) ½ (x12 x22)
- s.c. x1 1
- Lc(x,l) ½(x12 x22) l(x1-1)(c/2)(x1-1)2
- Les vecteurs xk générés par la méthode sont
Mise à jour des multiplicateurs
41Méthode des multiplicateurs
- en utilisant l-1.
- Quelle que doit la suite (ck) non décroissante,
la suite (lk)?l - Plus ck est grand, plus la convergence est
rapide. - Il nest pas nécessaire de faire tendre ck vers
linfini pour résoudre le problème.
42Méthode des multiplicateurs
- min f(x) ½ (-x12 x22)
- s.c. x1 1
- Solution optimale x(1 0)T
- Multiplicateur l 1
- En effet
- ?f(x) l?h(x) -x1x2l0
- On a
- Lc(x,l) ½(-x12 x22) l(x1-1)(c/2)(x1-1)2
43Méthode des multiplicateurs
- Les vecteurs xk générés par la méthode sont
- Attention
- Cette formule nest valable que si ck gt 1
- Si ck lt 1, le Lagrangien augmenté na pas de
minimum. - Si ck 1, le Lagrangien augmenté na pas de
minimum, sauf si lk1.
44Méthode des multiplicateurs
- Mise à jour des multiplicateurs
et en utilisant l 1,
45Méthode des multiplicateurs
- Note
- On peut tirer des conclusions similaires à
lexemple précédent. - Différences principales
- il faut ck gt 1 pour que la solution xk existe,
- il faut ck gt 2 pour que (lk)?l
- En général, le paramètre de pénalité doit
atteindre une certaine valeur avant que la
méthode ne fonctionne.
46Méthode des multiplicateurs
- Logiciel LANCELOT
- Large
- And
- Nonlinear
- Constrained
- Extended
- Lagrangian
- Optimization
- Techniques
47Méthode des multiplicateurs
- A.R. Conn, N.I.M. Gould and Ph. L. Toint.
LANCELOT. A Fortran Package for Large-Scale
Nonlinear Optimisation. Springer-Verlag,1992. - http//www.cse.clrc.ac.uk/Activity/LANCELOT
- Notes
- LANCELOT travaille uniquement avec des
contraintes dégalité - Lorsque des contraintes dinégalité sont
présentes, des variables décart sont
automatiquement introduites. - Le paramètre de pénalité est appelé m 1/c. La
suite (mk) générée par LANCELOT est décroissante
et tend vers 0. - LANCELOT traite explicitement les contraintes de
bornes, sans les introduire dans le Lagrangien
augmenté.
48Méthode des multiplicateurs
- Paramètres dans LANCELOT.
- Tolérances
- m0 lt 1 (défaut m0 0.1)
- w0 (défaut w0 1)
- ?0 (défaut ?0 0.1258925)
- t (défaut t 0.1)
- aw (défaut aw 1)
- bw (défaut bw 1)
- a? lt min(1, aw) (défaut a? 0.1)
- b? lt min(1, bw) (défaut b? 0.9)
- Initialisations
- k1, mk m0, wkw0(m0)aw, ? k ? 0(m0)a ?
(défaut0.1) - Multiplicateurs lk 0
49Méthode des multiplicateurs
- Minimisation de Lm(x,lk) stoppée lorsque ?
Lm(x,lk) wk - On obtient xk1
- Si h(xk1) ? k
- lk1 lk h(xk)/mk
- mk1 mk
- wk1 wk(mk1)bw
- ?k1 ?k(mk1)b?
- Sinon
- lk1 lk
- mk1 tmk
- wk1 w0(mk1)aw
- ?k1 ?0(mk1)a?
50Méthode des multiplicateurs
- Penalty parameter 1.0000D-01
- Projected gradient norm 3.5727D-03
- Required gradient norm 1.0000D-01
- Constraint norm 8.2439D-02
- Required constraint norm 1.0000D-01
- Updating multiplier estimates
Penalty parameter 1.0000D-02
Projected gradient norm 8.2601D-14
Required gradient norm 1.0000D-04
Constraint norm 1.6051D-02 Required
constraint norm 1.2589D-03
Reducing mu