• Aucun résultat trouvé

type points-int´erieurs avec une approche primale-duale. Ces m´ethodes sont efficaces pour des probl`emes de petite taille mais leur complexit´e algorithmique les rend inutilisables en grandes di- mensions. Le but est de discuter l’approche qui consiste `a modifier cette m´ethode de sorte `a r´eduire sa complexit´e arithm´etique et adapter sa structure algorithmique pour pouvoir l’impl´ementer ef- ficacement sur des processeurs de cartes graphiques (GPUs), sans alt´erer les propri´et´es de conver- gence.

3.1

M´ethode primale-duale des points-int´erieurs

Il existe principalement trois grandes familles de m´ethodes d’optimisation sous contraintes [Nocedal 99] : les m´ethodes de p´enalit´e ext´erieure, les m´ethodes de contraintes actives et les m´ethodes de points-int´erieurs. On s’int´eressera particuli`erement `a cette derni`ere famille de m´ethodes. Les m´ethodes de points-int´erieurs (qualifi´es aussi de m´ethodes de p´enalit´e int´erieure) ont la sp´ecificit´e de garantir le respect des contraintes d’in´egalit´e strictement (d’o `u le qualificatif int´erieurs).

Le principe d’optimisation par points int´erieurs est apparu dans les ann´ees cinquante, grˆace `a la d´efinition de la fonction barri`ere logarithmique, en 1955, par Frisch [Frisch 55]. C’est dans le livre de Fiacco et McCormick [Fiacco 68] que le terme de points int´erieurs a ´et´e introduit. Les travaux de Karmakar [Karmarkar 84] en 1984 f ˆurent `a l’origine de la proposition d’un algorithme `a convergence polynomiale, ce qui a ouvert la voie au d´eveloppement de plusieurs techniques telles que le suivi de chemin central, la barri`ere logarithmique et la m´ethode primale-duale [Nocedal 99].

Dans ce qui suit, la r´esolution du probl`eme d’optimisation sous contraintes se fera par un algo- rithme it´eratif de type points-int´erieurs avec une approche primale-duale [Mehrotra 92,Armand 00]. D’une fac¸on g´en´erale, pour la construction des algorithmes de points-int´erieurs, il y a deux points de vue compl´ementaires qui conduisent au mˆeme r´esultat : la p´enalisation logarithmique et la pertur- bation des conditions d’optimalit´e. L’approche primale-duale consiste `a estimer conjointement les variables primales (variables d’int´erˆet) et duales (multiplicateurs de Lagrange) par la r´esolution d’une s´equence de probl`emes correspondants `a des versions perturb´ees des conditions d’optima- lit´e, dites de Karush-Kuhn-Tucker (KKT), pond´er´ees par une suite de param`etres positifs {µk}

convergeant vers 0. De plus, `a chaque it´eration, la satisfaction stricte des contraintes est assur´ee par la minimisation d’une fonction de m´erite pr´esentant une barri`ere logarithmique `a la fronti`ere du domaine admissible des solutions [Wright 91].

3.1.1 Prise en compte de la contrainte d’´egalit´e

Tout d’abord, `a l’aide d’un changement de variable, le probl`eme (3.1) peut ˆetre transform´e en un nouveau probl`eme faisant apparaˆıtre des contraintes d’in´egalit´e uniquement. Comme sou- lign´e dans [Armand 00], pour tout vecteur initial x(1) tel que C0x(1) = c0, le vecteur d´efini par

3.1. M ´ETHODE PRIMALE-DUALE DES POINTS-INT ´ERIEURS 45

a = x(1) + Za, avec a ∈ RN−1, satisfait ´egalement cette contrainte ´egalit´e si Z ∈ RN×(N −1)

est une matrice dont les colonnes forment l’espace nul de C0. La possibilit´e de calcul de l’espace

nul de la matrice des contraintes d’´egalit´e est une condition n´ecessaire pour l’emploi d’une telle approche.

Par cons´equent, le probl`eme (3.1) est r´e´ecrit sous la forme d’un probl`eme d’optimisation sous des contraintes d’in´egalit´es uniquement,

min

a∈R(N −1)Φ a 

s. c. T a+ t > 0. (3.2)

o `u le crit`ere Φ(·) se d´eduit de F (·) par Φ(a) = F (x(1)+ Za), T = C

1Zet t = C1x(1)+ c1.

Les conditions de KKT permettant de caract´eriser l’optimalit´e de la solution a∗ de (3.2) et les multiplicateurs de Lagrange associ´es λ∗sont : (1)∇Φ(a∗)− Ttλ= 0, (2) Diag(λ)(T a+ t) = 0,

(3) T a∗+ t > 0 et (4) λ∗ >0.

La perturbation de ces conditions permet de caract´eriser une solution interm´ediaire (ak, λk),

solution du syst`eme d’´equations            ∇Φ(a) − Ttλ= 0, Λ (T a + t) = µk, T a+ t > 0, λ >0. (3.3)

o `u Λ = Diag(λ) et µk = µk1(N −1)×1. Ainsi, chaque it´eration k de l’algorithme primal-dual (PDIP)

pour la r´esolution du probl`eme (3.2) se d´ecompose en deux ´etapes. Tout d’abord, un couple (ak+1, λk+1) est calcul´e en fonction de (ak, λk) en r´esolvant (3.3). Ensuite, le param`etre de per-

turbation µk+1est r´eduit selon une r`egle de mise `a jour permettant de garantir la convergence de

l’algorithme.

3.1.2 R´esolution du probl`eme perturb´e

Dans le cadre des probl`emes de grande taille, il n’est pas possible de r´esoudre (3.3) de fac¸on exacte. En pratique, une solution approch´ee de (3.3) est obtenue par quelques it´erations de Newton coupl´ees avec une recherche de pas [Boyd 04, Chap.11], selon le sch´ema g´en´eral

(ak+1, λk+1) = (ak+ αkdka, λk+ αkdλk). (3.4)

avec des directions primale da

ket duale dλk qui correspondent `a un pas de Newton appliqu´e aux

46 3.1. M ´ETHODE PRIMALE-DUALE DES POINTS-INT ´ERIEURS syst`eme lin´eaire ∇2Φ(a k) −Tt ΛkT Diag(T ak+ t) ! dakk ! =−rµk(ak, λk), (3.5)

o `u rµ(a, λ) est le r´esidu primal-dual,

rµ(a, λ) = ∇Φ(a) − T tλ Λ(T a + t)− µ ! = r prim µ (a, λ) rdualµ (a, λ) ! . (3.6)

3.1.2.1 Calcul des directions primale et duale

Le syst`eme (3.5) n’est pas invers´e de fac¸on directe. En effet, il est soulign´e dans [Wright 94, Wright 98] que ce syst`eme devient tr`es mal conditionn´e, notamment `a l’approche de la conver- gence de l’algorithme, d`es lors qu’une des contraintes est active. De plus, celui-ci ne v´erifie pas les propri´et´es de sym´etrie et de d´efinie positivit´e, souhaitables d`es lors que l’on applique une strat´egie d’inversion it´erative. Plusieurs strat´egies de r´esolution de (3.5), pr´esent´ees dans [Forsgren 02, Sec.5.1], permettent de pallier ces difficult´es. Nous utilisons la technique de [Conn 96,Armand 00, Segalat 02], consistant `a effectuer le calcul des directions en deux ´etapes : la direction primale da k

est d’abord obtenue par inversion du syst`eme r´eduit

Hkdak =−gk (3.7) avec   gk =∇Φ(ak) + TtDiag(T ak+ t)−1µk, Hk =∇2Φ(ak) + TtDiag(T ak+ t)−1ΛkT. (3.8)

Rappelons que ce syst`eme r´eduit s’obtient par substitution de dλkdans la premi`ere ´equation de (3.5)

par son expression d´eduite de la seconde partie de ce syst`eme,

k = Diag(T ak+ t)−1[µk− ΛkT(ak+ dak)− Λkt] . (3.9)

Finalement, apr`es obtention de la direction primale, l’expression (3.9) est utilis´ee pour d´eterminer la direction duale dλ

k.

3.1.2.2 Recherche de pas

Le pas αkest d´etermin´e de fac¸on `a garantir la convergence de l’algorithme et `a v´erifier les deux

contraintes d’in´egalit´e de (3.3). La convergence de l’algorithme est garantie sous r´eserve que le pas entraˆıne une d´ecroissance suffisante d’une fonction de m´erite primale-duale Ψµ(a, λ) li´ee aux

3.1. M ´ETHODE PRIMALE-DUALE DES POINTS-INT ´ERIEURS 47

primale-duale [Anstreicher 94,Forsgren 98,Armand 00] d´efinir par

Ψµ(a, λ) = Φ(a)− µ N X i=1 ln([T a + t]i) + λt(T a + t)− µ N X i=1 ln(λi[T a + t]i). (3.10)

On peut constater la pr´esence des deux fonctions barri`eres logarithmiques pour satisfaire stric- tement les contraintes d’in´egalit´es de (3.3). Une technique de rebroussement associ´ee `a la r`egle d’Armijo est utilis´ee pour la recherche de pas. Ainsi, une d´ecroissance suffisante de la fonction de m´erite se traduit par exemple par la v´erification de la condition d’Armijo

ψµk(αk)− ψµk(0) 6 c αk∇ψµk(0), c∈ (0, 1), (3.11)

o `u ψµk(α) = Ψµk(ak+αd

a

k, λk+αdλk). Nous avons montr´e dans [Chouzenoux 11b] qu’une strat´egie

de recherche de pas plus sophistiqu´ee, telle que par exemple l’approche MMLQ 1D, ne semble pas n´ecessaire dans le cadre des m´ethodes primales-duales des points-int´erieurs.

3.1.3 Contr ˆole de convergence de l’algorithme primal-dual

L’arrˆet de la boucle interne, li´ee au calcul des directions primale et duale, est r´egi par deux conditions [Conn 96,Johnson 00]

krµprimk (ak, λk)k∞6ǫ

prim

k et krµdualk (ak, λk)k1/N 6 ǫ

dual

k , (3.12)

avec ǫprimk = ηprimµk, ǫkdual= ηdualµko `u ηprimet ηdualsont deux param`etres positifs.

Le param`etre de perturbation µkest mis `a jour selon la r`egle de µ-criticit´e d´efinie dans [El-Bakry 96]

µk= θ N(T ak+ t) tλ k, (3.13) o `u θ∈ (0, 1).

Enfin, les it´erations de l’algorithme PDIP sont contr ˆol´ees par un test d’arrˆet global [Boyd 04, Chap.11] portant sur la valeur minimale de la perturbation ou sur la norme du r´esidu primal-dual

µk6µmin, et kr0(ak, λk)k 6 ǫ0. (3.14)

Les propri´et´es de convergence de cette m´ethode primale-duale des points int´erieurs dans le cas de crit`eres fortement convexes sont donn´ees dans le th´eor`eme (4).

Th´eor`eme 4([Armand 00]). Supposons que la fonction Φ(a) soit fortement convexe et diff´erentiable sur RN−1. Si les s´equences{µk},

n

ǫprimk oetdualk tendent vers 0 lorsque k tend vers l’infini, alors la suite {(ak, λk)} g´en´er´ee par l’algorithme PDIP est born´ee et chacun de ses points d’adh´erence est une solution

48 3.2. ACC ´EL ´ERATION ALGORITHMIQUE POUR DES PROBL `EMES DE GRANDE TAILLE