• Aucun résultat trouvé

3.5.1 Méthodes de gradient avec projection

N/A
N/A
Protected

Academic year: 2021

Partager "3.5.1 Méthodes de gradient avec projection"

Copied!
5
0
0

Texte intégral

(1)

3.5 Algorithmes d’optimisation sous contraintes

3.5.1 Méthodes de gradient avec projection

On rappelle le résultat suivant de projection sur un convexe fermé :

Proposition 3.40(Projection sur un convexe fermé). SoitEun espace de Hilbert, muni d’une normek.kinduite par un produit scalaire(., .), et soitKun convexe fermé non vide deE. Alors, toutxE, il existe un unique x0Ktel quekxx0k ≤ kxykpour toutyK.On notex0=pK(x)la projection orthogonale dexsurK.

SoientxEetx0K. On a également :

x0=pK(x)si et seulement si(x−x0, x0y)≥0, ∀yK.

Dans le cadre des algorithmes de minimisation avec contraintes que nous allons développer maintenant, nous considèreronsE = IRn, fC1(IRn,IR)une fonction convexe, etK fermé convexe non vide. On cherche à calculer une solution approchée dex, solution du problème (3.48).¯

Algorithme du gradient à pas fixe avec projection surK(GPFK) Soitρ >0donné, on considère l’algorithme suivant :

Algorithme (GPFK) Initialisation :x0K Itération :

xkconnu xk+1=pK(xkρf(xk)) oùpKest la projection surKdéfinie par la proposition 3.40.

Lemme 3.41. Soit(xk)kconstruite par l’algorithme (GPFK). On suppose quexkxquandn+∞. Alorsxest solution de(3.48).

DÉMONSTRATION– SoitpK : IRnK ⊂ IRn la projection surK définie par la proposition 3.40. AlorspK est continue. Donc si

xkxquandn→+∞alorsx=pK(x−ρf(x))etxK(carxkKetKest fermé).

La caractérisation depK(x−ρf(x))donnée dans la proposition 3.40 donne alors :

(x−ρf(x)x/xy)≥0pour toutyK, et commeρ >0, ceci entraîne(∇f(x)/xy)≤0pour toutyK.

Orfest convexe doncf(y)f(x) +f(x)(yx)pour toutyK, et doncf(y)f(x)pour toutyK, ce qui termine la démonstration.

Théorème 3.42(Convergence de l’algorithme GPFK).

SoitfC1(IRn,IR), etKconvexe fermé non vide. On suppose que :

1. il existeα >0tel que(∇f(x)− ∇f(y)|xy)α|xy|2, pour tout(x, y)∈IRn×IRn, 2. il existeM >0tel que|∇f(x)− ∇f(y)| ≤M|xy|pour tout(x, y)∈IRn×IRn, alors :

1. il existe un unique élémentx¯∈Ksolution de(3.48), 2. si0< ρ <

M2, la suite(xk)définie par l’algorithme(GP F K)converge versx¯lorsquen→+∞.

(2)

DÉMONSTRATION

1. La condition 1. donne quefest strictement convexe et quef(x)→+∞quand|x| →+∞. CommeKest convexe fermé non vide, il existe donc un unique¯xsolution de (3.48).

2. On pose, pourx∈IRn,h(x) =pK(x−ρf(x)). On a doncxk+1=h(xk).Pour montrer que la suite(xk)k∈IN

converge, il suffit donc de montrer quehest strictement contractante dès que 0< ρ <

M2. (3.61)

Grâce au lemme 3.43 démontré plus loin, on sait quepKest contractante. Orhest définie par : h(x) =pKh(x)) où¯h(x) =xρf(x).

On a déjà vu queh¯est strictement contractante si la condition (3.61) est vérifiée (voir théorème 3.19 page 226), et plus précisément :

h(x)h(y)| ≤¯ (1−2αρ+M2ρ2)|xy|2. On en déduit que :

|h(x)h(y)|2≤ |pKh(x))pKh(y))|2≤ |¯h(x)−¯h(y))|2≤(1−2αρ+ρ2M2)|xy|2.

L’applicationhest donc strictement contractante dès que0 < M2. La suite(xk)k∈INconverge donc bien versx = ¯x

Lemme 3.43(Propriété de contraction de la projection orthogonale). SoitEun espace de Hilbert,k · kla norme et(·,·)le produit scalaire,Kun convexe fermé non vide deEetpK la projection orthogonale surKdéfinie par la proposition 3.40, alorskpK(x)−pK(y)k ≤ kxykpour tout(x, y)∈E2.

DÉMONSTRATION– CommeEest un espace de Hilbert,

kpK(x)−pK(y)k2= (pK(x)−pK(y)|pK(x)−pK(y)).

On a donc

kpK(x)−pK(y)k2= (pK(x)−x+xy+ypK(y)|pK(x)−pK(y))

= (pK(x)−x|pK(x)−pK(y))E+ (x−y|pK(x)−pK(y))+

(y−pK(y)|pK(x)−pK(y)).

Or(pK(x)−x|pK(x)−pK(y))≤0et(y−pK(y)|pK(x)−pK(y))≤0, d’où : kpK(x)−pK(y)k2≤(x−y|pK(x)−pK(y)), et donc, grâce à l’inégalité de Cauchy-Schwarz,

kpK(x)−pK(y)k2≤kxyk kpK(x)−pK(y)k, ce qui permet de conclure.

Algorithme du gradient à pas optimal avec projection surK(GPOK) L’algorithme du gradient à pas optimal avec projection surKs’écrit :

Initialisation x0K Itération xkconnu

wk =−∇f(xk); calculer αkoptimal dans la directionwk

xk+1=pK(xk+αkw(k))

La démonstration de convergence de cet algorithme se déduit de celle de l’algorithme à pas fixe.

Remarque 3.44. On pourrait aussi utiliser un algorithme de type Quasi–Newton avec projection surK.

Les algorithmes de projection sont simples à décrire, mais ils soulèvent deux questions : 1. Comment calcule-t-onpK?

2. Que faire siKn’est pas convexe ?

(3)

On peut donner une réponse à la première question dans les cas simples :

Cas 1. On suppose ici queK=C+={x∈IRn, x= (x1, . . . , xk)t xi≥0 ∀i}. Siy∈IRn y= (y1. . . yn)t,on peut montrer (exercice 132 page 267) que

(pK(y))i=yi+= max(yi,0), ∀i∈ {1, . . . , n}

Cas 2. Soit(αi)i=1,...,n ⊂IRnet(βi)i=1,...,n⊂IRntels queαiβipour touti= 1, . . . , n. Si

K= Y

i=1,n

i, βi], alors

(pK(y))i= max(αi,min(yi, βi)), ∀i= 1, . . . , n

Dans le cas d’un convexeKplus “compliqué”, ou dans le cas oùKn’est pas convexe, on peut utiliser des méthodes de dualité introduites dans le paragraphe suivant.

3.5.2 Méthodes de dualité

Supposons que les hypothèses suivantes sont vérifiées :



fC1(IRn,IR), giC1(IRn,IR),

K={x∈IRn, gi(x)≤0 i= 1, . . . , p}, etKest non vide. (3.62) On définit un problème “primal" comme étant le problème de minimisation d’origine, c’est–à–dire

x¯∈K,

fx)f(x), pour toutxK, (3.63)

On définit le “lagrangien" comme étant la fonctionLdéfinie deIRn×IRpdansIRpar : L(x, λ) =f(x) +λ·g(x) =f(x) +

Xp i=1

λigi(x), (3.64)

avecg(x) = (g1(x), . . . , gp(x))tetλ= (λ1, . . . , λp)t. On noteC+l’ensemble défini par

C+={λ∈IRp, λ= (λ1, . . . , λp)t, λi≥0pour touti= 1, . . . , p}.

Remarque 3.45. Le théorème de Kuhn-Tucker entraîne que six¯est solution du problème primal(3.63)alors il existeλC+tel queD1L(¯x, λ) = 0(c’est–à–direDf(¯x) +λ·Dg(¯x) = 0) etλ·g(¯x) = 0.

On définit alors l’applicationMdeIRpdansIRpar : M(λ) = inf

x∈IRnL(x, λ), pour toutλ∈IRp. (3.65) On peut donc remarquer queM(λ)réalise le minimum (en x) du problème sans contrainte, qui s’écrit, pour λ∈IRpfixé :

x∈IRn

L(x, λ)L(y, λ)pour toutx∈IRn, (3.66)

(4)

Lemme 3.46. L’applicationM deIRp dansIR définie par(3.65)est concave (ou encore l’application -M est convexe), c’est–à–dire que pour tousλ, µ∈IRpet pour toutt∈]0,1[on aM(tλ+ (1−t)µ)tM(λ) + (1− t)M(u)

DÉMONSTRATION– Soitλ, µ∈IRpett∈]0,1[; on veut montrer queM(tλ+ (1−t)µ)tM(λ) + (1−t)M(µ).

Soitx∈IRn,alors :

L(x, tλ+ (1−t)µ) =f(x) + (tλ+ (1−t)µ)g(x)

=tf(x) + (1t)f(x) + (tλ+ (1−t)µ)g(x).

On a doncL(x, tλ+ (1−t)µ) =tL(x, λ) + (1t)L(x, µ).Par définition deM, on en déduit que pour toutx∈IRn, L(x, tλ+ (1−t)µ)tM(λ) + (1−t)M(µ)

Or, toujours par définition deM,

M(tλ+ (1−t)µ) = inf

x∈IRnL(x, tλ+ (1−t)µ)tM(λ) + (1−t)M(µ).

On considère maintenant le problème d’optimisation dit “dual" suivant : µC+,

M(µ)M(λ) ∀λC+. (3.67)

Définition 3.47. SoitL : IRn×IRp→IR et(x, µ)∈IRn×C+. On dit que(x, µ)est un point selle deLsur IRn×C+si

L(x, λ)L(x, µ)L(y, µ)pour touty∈IRet pour toutλC+.

Proposition 3.48. Sous les hypothèses(3.62), soitLdéfinie parL(x, λ) =f(x) +λg(x)et(¯x, µ)∈IRn×C+ un point selle deLsurIRn×C+.

alors

1. x¯est solution du problème(3.63), 2. µest solution de(3.67),

3. x¯est solution du problème(3.66)avecλ=µ.

On admettra cette proposition.

Réciproquement, on peut montrer que (sous des hypothèses convenables surf etg), siµest solution de (3.67), et si¯xsolution de (3.66) avecλ=µ, alorsx, µ)est un point selle deL, et doncx¯est solution de (3.63).

De ces résultats découle l’idée de base des méthodes de dualité : on chercheµsolution de (3.67). On obtient ensuite une solutionx¯ du problème (3.63), en cherchantx¯comme solution du problème (3.66) avecλ =µ(qui est un problème de minimisation sans contraintes). La recherche de la solutionµdu problème dual (3.67) peut se faire par exemple par l’algorithme très classique d’Uzawa, que nous décrivons maintenant.

Algorithme d’Uzawa L’algorithme d’Uzawa consiste à utiliser l’algorithme du gradient à pas fixe avec pro- jection (qu’on a appelé “GPFK”, voir page 271) pour résoudre de manière itérative le problème dual (3.67). On cherche doncµC+tel queM(µ)M(λ)pour toutλC+. On se donneρ >0,et on notepC+la projection sur le convexeC+(voir proposition 3.40 page 271). L’algorithme (GPFK) pour la recherche deµs’écrit donc :

Initialisation : µ0C+

Itération : µk+1=pC+k+ρM(µk))

Pour définir complètement l’algorithme d’Uzawa, il reste à préciser les points suivants :

(5)

1. Calcul de∇M(µk),

2. calcul depC+(λ)pourλdansIRn.

On peut également s’intéresser aux propriétés de convergence de l’algorithme.

La réponse au point 2 est simple (voir exercice 132 page 267) : pourλ ∈ IRp, on calcule pC+(λ) = γ avec γ= (γ1, . . . , γp)ten posantγi= max(0, λi)pouri= 1, . . . , p, oùλ= (λ1, . . . , λp)t.

La réponse au point 1. est une conséquence de la proposition suivante (qu’on admettra ici) :

Proposition 3.49. Sous les hypothèses(3.62), on suppose que pour toutλ∈IRn, le problème(3.66)admet une solution unique, notéexλet on suppose que l’application définie deIRpdansIRnparλ7→xλest différentiable.

AlorsM(λ) =L(xλ, λ),Mest différentiable enλpour toutλ, etM(λ) =g(xλ).

En conséquence, pour calculer∇M(λ), on est ramené à chercherxλsolution du problème de minimisation sans contrainte (3.66). On peut dont maintenant donner le détail de l’itération générale de l’algorithme d’Uzawa : Itération de l’algorithme d’Uzawa.SoitµkC+connu ;

1. On cherchexk∈IRnsolution de

xk ∈IRn,

L(xk, µk)≤L(x, µk), ∀x∈IRn (On a doncxk =xµk) 2. On calcule∇M(µk) =g(xk)

3. µk+1=µk+ρM(µk) =µk+ρg(xk) = ((µk+1)1, . . . ,k+1)p)t

4. µk+1=pC+k+1), c’est–à-direµk+1 = ((µk+1)1, . . . ,k+1)p)tavec(µk+1)i = max(0,(µk+1)i)pour touti= 1, . . . , p.

On a alors le résultat suivant de convergence de l’algorithme :

Proposition 3.50(Convergence de l’algorithme d’Uzawa). Sous les hypothèses(3.62), on suppose de plus que : 1. il existeα >0tel que(∇f(x)− ∇f(y))·(x−y)α|xy|2pour tout(x, y)∈(IRn)2,

2. il existeMf >0|∇f(x)− ∇f(y)| ≤Mf|xy|pour tout(x, y)∈(IRn)2,

3. pour toutλC+, il existe un uniquexλ∈IRntel queL(xλ, λ)L(x, λ)pour toutx∈IRn. Alors si0< ρ <

Mf2, la suite((xk, µk))k ∈IRn×C+donnée par l’algorithme d’Uzawa vérifie : 1. xkx¯quandk→+∞,x¯est la solution du problème(3.63),

2. (µk)k∈INest bornée.

Remarque 3.51(Sur l’algorithme d’Uzawa).

1. L’algorithme est très efficace si les contraintes sont affines : (i.e. sigi(x) =αi·x+βipour touti= 1, . . . , p, avecαi∈IRnetβi∈IR).

2. Pour avoir l’hypothèse 3 du théorème, il suffit que les fonctionsgi soient convexes. (On a dans ce cas existence et unicité de la solutionxλdu problème(3.66)et existence et unicité de la solutionx¯du problème (3.63).)

Références

Documents relatifs

On reviendra sur les relations de similarité et de divisibilité entre les sous-résultants (elles sont déjà bien connues, voir les ouvrages précités ci-dessus) grâce à de

En déduire qu’un couplage de poids minimum sur les sommets de degré impair dans T est inférieur ou égal à la moitié du poids de C opt... Préambule : technique pour montrer

2/ Mission 1 : Initialiser le robot de sorte qu’il soit placé dans le coin Sud-Ouest et orienté vers le Nord.. Faire avancer Nono de

On caractérise les maxima locaux de la fonction objective et cela nous permet de construire un algorithme qui a la propriété de converger de façon monotone et en nombre fini

un sous-ensemble de sommets de G dont chaque deux ´el´ements sont reli´es par une arˆete 2. une ´equation de la forme un polynˆ

• d’autres syst` emes sont plus concurrents avec plusieurs serveurs, qui g` erent entre eux leur coh´ erence. Aucun syst` eme op´ erationnel pour

3.3 Donner les mises à jour des poids d’après l’algorithme de la descente de gradient pour l’apprentissage de l’algorithme de Preceptron..

Pour ceux qui ont fini, reprendre les programmes du TP2, et ´ ecrire une fonction qui r´ esoud un syst` eme lin´ eaire avec l’algorithme du gradient conjugu´ e.. Ecrire une fonction