C12, algorithmes pour l’optimisation avec contrainte
f
∈C (
Rn,R), K un sous ensemble ferm´ e non vide de
Rn. On suppose qu’il existe ¯ x
∈K tel que f (¯ x)
≤f (x) pour tout x
∈K (c’est-` a-dire ¯ x
∈argmin
Kf ).
Objectif : calculer un tel point ¯x.
Nous allons distinguer plusieurs m´ ethodes possibles, selon la nature de l’ensemble K
1.
K convexe. GPF ou GPO avec projection sur K
2.
K d´ efini par des contraintes “´ egalit´ es”. M´ ethodes de Newton ou quasi-Newton.
3.
K d´ efini par des contraintes “in´ egalit´ es”. M´ ethodes de dualit´ e.
Projection sur un ensemble convexe ferm´ e non vide
K sous ensemble convexe ferm´ e non vide de
Rn, x
∈Rn. Pour y
∈Rnon pose h(y) =
|y−x|
2.
h est strictement convexe, h(y)
→+∞ quand
|y| →+∞.
Donc,
Il existe un et un seulx0 ∈K tel queh(x0)≤h(y) pour tout y∈K. On notex0=PK(x).
Caract´ erisation de x
0:
x
0est l’unique point de K tel que
∇h(x0)
·(y
−x
0)
≥0 pour tout y
∈K , c’est-` a-dire
(x
0−x)
·(y
−x
0)
≥0 pour tout y
∈K
.x
x0y
KL’op´ erateur P
Kest contractant
K sous ensemble convexe ferm´ e non vide de
Rn, P
Kl’op´ erateur de projection sur K .
x,y ∈Rn,
|PK(x)−PK(y)|2= (PK(x)−x+x−y+y−PK(y))·(PK(x)−PK(y)) =
(PK(x)−x)·(PK(x)−PK(y)) + (x−y)·(PK(x)−PK(y)) + (y−PK(y))·(PK(x)−PK(y))
La caract´erisation dePK donne
(PK(x)−x)·(PK(x)−PK(y))≤0, (y−PK(y))·(PK(x)−PK(y))≤0,
et donc, avec l’in´egalit´e de Cauchy-Schwarz,
|PK(x)−PK(y)|2≤(x−y)·(PK(x)−PK(y))≤ |x−y||PK(x)−PK(y)|.
Finalement,|PK(x)−PK(y)| ≤ |x−y|.
Gradient ` a Pas Fixe avec projection sur K (GPFK)
f ∈C1(Rn,R), convexe etK convexe ferm´e non vide On choisitρ >0
Initialisation x(0)∈K.
It´eration pour k ≥0, on choisitw(k)=−∇f(x(k)).
x(k+1)=PK(x(k)+ρw(k)) Six(k)→x quandk →+∞, alorsx∈argminKf.
En effet,x=PK(x−ρ∇f(x))et donc, pour touty ∈K, la caract´erisation dePK donne, pour touty ∈K,
(x−(x−ρ∇f(x))))·(y−x)≥0, et donc∇f(x)(y−x)≥0.
Finalement par convexit´e def,f(y)≥f(x) +∇f(x)(y−x)≥f(x).
donc,x ∈argminKf.
Question restante, la suite (x(k))k≥0est-elle convergente ?
Convergence de l’algorithme GPFK
Th´ eor` eme
Soient f
∈C
1(R
n,R)et K convexe ferm´ e non vide.
On suppose qu’il existe
α >0 et M
>0 tels que
(mon) (∇f (x)
− ∇f(y))
·(x
−y )
≥α|x−y|
2pour tout x
,y
∈Rn(lip)
|∇f(x)
− ∇f(y )| ≤ M
|x−y| pour tout x, y
∈RnAlors :
1.
Il existe un unique x ¯
∈K tel que f (¯ x)
≤f (x) pour tout x
∈K
2.Si 0
< ρ < M2α2, la suite donn´ ee par l’algorithme (GPFK)
converge vers x ¯
D´ emonstration du premier item : l’hypoth` ese (mon) implique que f est strictement convexe et f (x)
→+∞ quand
|x| →+∞ et donc, comme K est convexe ferm´ e non vide, il existe un unique
¯
x
∈K tel que f (¯ x)
≤f (x) pour tout x
∈X .
D´ emonstration du deuxi` eme item, convergence de l’algorithme (GPFK)
On pose h(x) = x
−ρ∇f(x) et h(x) = ¯ P
K(h(x)).
L’algorithme (GPFK) est l’algorithme du point fixe pour ¯ h :
x
(k+1)= P
K(x
(k)−ρ∇f(x
(k))) = P
K(h(x
(k)) = ¯ h(x
(k))
On a d´ ej` a vu (Cours 10) que sous les hypoth` eses (mon)-(lip), si 0
< ρ < M2α2, la fonction h est strictement contractante.
Comme P
Kest contractante, la fonction ¯ h est strictement contractante.
La suite donn´ ee par l’algorithme (GPFK) converge donc vers l’unique point fixe de h ¯ et on d´ ej` a vu que ce point fixe est
¯
x =
argminKf .
Gradient ` a Pas Optimal avec projection sur K (GPOK)
f ∈C1(Rn,R) etK convexe ferm´e non vide Initialisation x(0)∈K.
It´eration pour k ≥0,
1. on choisit w(k)=−∇f(x(k)),
2. on choisit (si c’est possible)ρk >0 tel que
f(x(k)+ρkw(k))≤f(x(k)+ρw(k))pour toutρ≥0, 3. x(k+1)=PK(x(k)+ρkw(k)).
Questions :
1. Pour (GPOK).Existence deρk ? Calcul deρk ? A t’on limk→+∞x(k)= ¯x ?
2. Pour (GPOK) et (GPFK),calcul dePK ? 3. Que faire siK non convexe ?
Calcul de P
K, cas simples
Premier cas, K = C
+=
{y ∈Rn; y
≥0}.
Soit x
∈Rn. On cherche le point de C
+minimisant (sur C
+) la fonction h(y ) =
|x−y|
2, c’est-` a-dire
h(y ) =
n
X
i=1
(x
i −y
i)
2.La solution consiste ` a prendre y
i= x
i+, c’est-` a-dire P
K(x) = x
+.
Deuxi` eme cas, K =
{y ∈Rn;
αi ≤y
i ≤βi,i = 1, . . . , n}.
Soit x
∈Rn. On cherche le point de K minimisant (sur K ) la fonction h(y ) =
|x−y|
2.
La solution consiste ` a prendre y
i= max{min{x
i, βi}, αi}.K d´ efini par de contraintes “´ egalit´ es”
f ∈C1(Rn,R),g ∈C1(Rn,Rp).
K ={x∈Rn; g(x) = 0}={x ∈Rn; gi(x) = 0, i= 1, . . . ,p}.
On cherche `a calculer x¯tel que
¯
x∈K,f(¯x)≤f(x)pour toutx∈K.
Une possibilit´e est de r´esoudre le syst`eme de(n+p)´equations `a(n+p) inconnues (¯x dans Rnetλ1, . . . , λp):
∇f(x) +
p
X
i=1
λi∇gi(x) = 0 (n ´equations), g(x) = 0 (p ´equations).
Ceci peut se faire avec la m´ethode de Newton ou une m´ethode de quasi-Newton
Rappel : Sirang(Jg(¯x)) =p, on sait qu’il existeλtel que (¯x, λ) est solution de ce syst`eme
K d´ efini par de contraintes “in´ egalit´ es”
f ∈C1(Rn,R),g ∈C1(Rn,Rp).
K ={x∈Rn; g(x)≤0}={x ∈Rn; gi(x)≤0, i= 1, . . . ,p}.
On cherche `a calculer x¯tel que
Probl`eme primal : x¯∈K,f(¯x)≤f(x)pour toutx∈K. Une possibilit´e est de r´esoudre le syst`eme suivant :
∇f(x) +
p
X
i=1
λi∇gi(x) = 0, λ·g(x) = 0,
g(x)≤0, λ≥0.
Rappel : Si{∇gi(¯x),i∈I(¯x)} est une famille libre avec
I(¯x) ={i∈ {1, . . . ,p};gi(¯x) = 0}, on sait qu’il existeλtel que (¯x, λ) est solution de ce syst`eme
D´ efinition du Lagrangien
f ∈C1(Rn,R),g ∈C1(Rn,Rp),K ={x∈Rn; g(x)≤0}.
Pourx∈Rn etλ∈C+, on pose L(x, λ) =f(x) +λ·g(x) =f(x) +Pp
i=1λigi(x)
Et on introduit le probl`eme de minimisation sans contrainte :
M(λ) = inf
x∈Rn
L(x, λ)
Lien avec le th´eor`eme de Kuhn-Tucker : SiL(xλ, λ) =M(λ) alors∇f(x) +Pp
i=1λi∇gi(x) = 0
Probl` eme dual
Pourx∈Rn etλ∈C+,
L(x, λ) =f(x) +λ·g(x) =f(x) +Pp
i=1λigi(x) M(λ) = inf
x∈Rn
L(x, λ)
La fonctionM est concave car pour toutx ∈Rnett ∈[0,1]
L(x,tλ+ (1−t)µ) =tL(x, λ) + (1−t)L(x, µ)≥tM(λ) + (1−t)M(µ) et donc, en prenant en passant `a la borne inf´erieure surx,
M(tλ+ (1−t)µ)≥tM(λ) + (1−t)M(µ) Ceci sugg`ere le probl`eme dit “dual”
Probl`eme dual : λ¯∈C+,M(¯λ)≥M(λ)pour toutλ∈C+.
Point selle du Lagrangien
Th´ eor` eme
f ∈C1(Rn,R),g ∈C1(Rn,Rp).
Soit(¯x,λ)¯ ∈Rn×C+, point “selle” du Lagrangien, c’est-`a-dire L(¯x, λ)≤L(¯x,¯λ)≤L(x,¯λ)pour tout (x, λ)∈Rn×C+ Alorsx¯est solution du probl`eme primal
¯
x∈K,f(¯x)≤f(x)pour toutx∈K et¯λest solution du probl`eme dual
¯λ∈C+,M(¯λ)≥M(λ)pour toutλ∈C+
Il faut des hypoth`eses suppl´ementaires surf etg pour la r´eciproque Int´erˆet : au lieu de chercher `a r´esoudre directement la probl`eme primal, difficile `a cause de la contrainte d’appartenir `aK, on va r´esoudre le probl`eme dual, facile carPC+ est facile `a calculer
D´ emonstration du th´ eor` eme
L(x, λ) =f(x) +λ·g(x). Soit(¯x,λ)¯ ∈Rn×C+
L(¯x, λ)≤L(¯x,¯λ)≤L(x,¯λ)pour tout (x, λ)∈Rn×C+ Etape 1: L(¯x, λ)≤L(¯x,λ)¯ pour toutλ∈C+ donne
(λ−λ)¯ ·g(¯x) =
p
X
i=1
(λi−λ¯i)gi(¯x)≤0, pour toutλ∈C+ Ceci donnegi(¯x)≤0si ¯λi = 0(en prenantλi = 1,λj = ¯λj sij6=i) etgi(¯x) = 0siλ¯i>0 (en prenantλi = 0etλi = 2¯λi,λj = ¯λj sij 6=i) Doncg(¯x)≤0(et donc x¯∈K) etλ¯·g(¯x) = 0.
Etape 2: x¯est solution du probl`eme primal car, six∈K,
f(¯x) =f(¯x) + ¯λ·g(¯x) =L(¯x,λ)¯ ≤L(x,λ) =¯ f(x) + ¯λ·g(x)≤f(x) On peut aussi remarquer queL(¯x,¯λ) =M(¯λ)
Etape 3: λ¯ est solution du probl`eme dual car, siλ∈C+, M(λ)≤L(¯x, λ)≤L(¯x,λ) =¯ M(¯λ)
Algorithme d’Uzawa
L’algorithme d’Uzawa est l’algorithme (GPFK) pour le prob`eme dual.
On se donneρ >0, Initialisation λ(0)∈C+. It´eration pour k ≥0,
λ(k+1)=PC+(λ(k)+ρ∇M(λ(k))) Deux questions :
1. Calcul dePC+. Facile (d´ej`a vu). PC+λ=λ+ 2. Calcul de∇M(λ) siλ∈C+
Calcul de ∇M (λ)
L(x, λ) =f(x) +λ·g(x).
On suppose qu’il existe un uniquexλ∈Rn tel que
M(λ) =L(xλ, λ)≤L(x, λ)pour tout x ∈Rn, et queΦ :λ7→xλ est d´erivable.
On a alors
∇M(λ) =JΦ(λ)t∇1L(xλ, λ) +∇2L(xλ, λ) =g(xλ)
car∇1L(xλ, λ) = 0(minimisation sans contrainte) et∇2L(xλ, λ) =g(xλ)
Algorithme d’Uzawa en pratique
On se donneρ >0, Initialisation λ(0)∈C+. It´eration pour k ≥0,
1. On cherchex(k) ∈RntelL(x(k), λ(k))≤L(x, λ(k))pour toutx∈Rn 2. On calculeg(x(k))(qui est ´egal `a∇M(λ(k)))
3. λ(k+1)=PC+(λ(k)+ρg(x(k)))
Convergence de l’algorithme d’Uzawa
Th´ eor` eme
f ∈C1(Rn,R),g ∈C1(Rn,Rp),K ={x∈Rn; g(x)≤0},K 6=∅.
On suppose qu’il existeα >0,C etd tels que
(mon) (∇f(x)− ∇f(y))·(x−y)≥α|x−y|2pour tout x,y∈Rn (aff) g(x) =Cx−d avec C ∈ Mp,n et d∈Rp (contraintes affines) (KT) Soitx¯=argminKf . Il existe λ∈C+tel que
∇f(¯x) +Pp
i=1λi∇gi(¯x) = 0,λ·g(¯x) = 0
Alors, si0< ρ < kC2αk2, la suite(x(k), λ(k))k≥0 donn´ee par l’algorithme d’Uzawa v´erifie
1. limk→∞x(k) = ¯x,x¯unique solution du probl`eme primal 2. la suite(λ(k))k≥0est born´ee
D´emonstration dans le td12
Remarques sur les hypoth` eses du th´ eor` eme
f ∈C1(Rn,R),g ∈C1(Rn,Rp),K ={x∈Rn; g(x)≤0},K 6=∅.
(mon) (∇f(x)− ∇f(y))·(x−y)≥α|x−y|2pour tout x,y∈Rn (aff) g(x) =Cx−d avec C∈ Mp,n etd∈Rp (contraintes affines) (KT) Soit ¯x=argminKf. Il existe λ∈C+tel que
∇f(¯x) +Pp
i=1λi∇gi(¯x) = 0,λ·g(¯x) = 0
1. Les hypoth`eses(mon)et(aff)permettent de montrer que le probl`eme primal a une unique solution, not´eex, et que¯ pour tout λ∈C+, il existe un et un seulxλ∈Rntel que L(xλ, λ)≤L(x, λ)pour tout x∈Rn
2. l’hypoth`ese(KT)est v´erifi´ee si{∇gi(¯x),i∈I(¯x)} est une famille libre avecI(¯x) ={i∈ {1, . . . ,p}; gi(¯x) = 0}