• Aucun résultat trouvé

I.2 Algorithmes et transport optimal dynamique

I.2.2 Application au problème de transport optimal dynamique

    yn+1 = Proxγf(yn+γϕ(un)), xn+1= Proxσg(xn−σϕ?(yn+1)), un=xn+1+λ(xn+1−xn), oùϕ? :H0 →H désigne l’adjoint de l’isomorphisme ϕ:H→H0.

Alors les suites(un)net(xn)nconvergent fortement dansHvers un pointx∈argmin (f ◦ϕ+g); la suite (yn)n converge, quant à elle, vers faiblement dansH0 vers un point y ∈H vérifiant f(ϕ(x)) =hϕ(x), yi −f(y).

Pour la preuve, voir par exemple [24] ou [42].

Remarque 1.2-17. Le problème ci-dessus peut également être traité par l’algorithme 3 de Forward-Backward Généralisé, en le reformulant de la façon suivante :

argmin x [f(ϕ(x)) +g(x)] = argmin (x,y)∈Graph(ϕ) [f(y) +g(x)] = argmin x,y f(y) +g(x) +ιGraph(ϕ)(x, y) = argmin x,y [F(x, y) +G(x, y)]

avec F(x, y) =f(y) +g(x) et G(x, y) =ιGraph(ϕ)(x, y), où l’ensembleGraph(ϕ) est le graphe de l’opérateur ϕ, c’est à dire que Graph(ϕ) = {(x, y) ∈H×H, y = ϕ(x)} : ensemble convexe et fermé si ϕest linéaire continu.

Les fonctionnelles F et G sont propres, convexes et semi-continues inférieurement : il est donc possible d’appliquer l’algorithme 3, en prenant ici une fonction nulle pour le terme lisse (i.e. pour la fonction différentiable de gradient lipschitzien), et en remarquant que

• On a ProxF(x, y) = (Proxf(x),Proxg(y)) : calculer l’opérateur ProxF revient donc à calculer indépendamment les opérateurs Proxf et Proxg.

• D’après la Remarque1.2-16, on aProxG= ProxιGraph(ϕ) = ProjGraph(ϕ). Calculer l’opéra-teur ProxG revient donc à calculer la projection orthogonale dans H×H sur l’ensemble convexe fermé Graph(ϕ).

Ceci sera la méthode que nous utiliserons dans le chapitreVlorsque nous aurons à traiter ce type problème.

Revenons maintenant au problème (1.2-53) de transport optimal dynamique.

I.2.2 Application au problème de transport optimal dynamique

Nous présentons ici des exemples d’application de ces algorithmes proximaux au problème de transport optimal dynamique, selon deux approches : la première, développée dans [67], sort l’espace des contraintes via l’introduction d’une fonction identité (voir la Remarque 1.2-16) ; la seconde, développée par M. Henry dans [43], propose au contraire une reformulation du problème en changeant les variables de façon à obtenir une fonctionnelle convexe et libre, dont l’optimisa-tion revient à résoudre le problème (1.2-53) (p. (1.2-53)) sans sortir de l’espace des contraintes

A. Résolution du problème (1.2-53) en sortant de l’espace des contraintes

Comme déjà évoqué dans la Remarque1.2-16, le problème (1.2-53) d’optimisation sous contrainte peut se ramener à un problème d’optimisation convexe sans contrainte, en opérant :

argmin (ρ,m)∈C e K(ρ, m) = argmin ρ,m e K(ρ, m) +ιC(ρ, m) , (1.2-60)

où, rappelons-le, le terme d’énergieKe est propre, s.c.i. et convexe, et où l’espace des contraintes

C={(ρ, m), ∂tρ+ divxm= 0,hm, ~ni= 0, ρ(0,·) =ρ0, ρ(1,·) =ρ1}

est un convexe fermé dansL2((0,1)×Ω)d+1, ce qui implique que son indicatriceιCest également propre, s.c.i. et convexe.

Le problème ainsi formulé entre donc totalement dans le cadre des algorithmes de Douglas-Rachford (algorithme4) et de Forward-Backward Généralisé (algorithme3), en supposant dans ce dernier cas que la fonction lisse est nulle. D’autant plus que, comme déjà évoqué dans la Remarque 1.2-16, l’opérateur K étant homogène, le calcul de l’opérateur proximal lui étant associé se ramène au calcul d’un opérateur de projection orthogonale sur un ensemble convexe et fermé deL2((0,1)×Ω)d+1. En effet, du fait de l’identité de Moreau, on a

Prox e K= id−Prox e K∗ = id−Proj e P,

oùPe=n(ea,eb)∈L2((0,1)×Ω)×L2((0,1)×Ω)d,ea+|eb|2/2≤0o. Or, il s’avère que la projection orthogonale d’une fonction de L2((0,1)×Ω)d+1 sur l’ensemble Pe revient à projeter point par point (presque partout) cette fonction sur le paraboloïde

P = (a, b)∈R×Rd, a+|b| 2 2 0 ,

ce qui correspond pour chaque point projeté à déterminer les racines d’un polynôme de degré 3, qui peuvent être explicitées en utilisant par exemple une méthode de Cardan. Cet étape se retrouve également dans l’algorithme de Benamou-Brenier, que nous traiterons dans le chapitre

II.

La difficulté de ce problème vient en fait de la projection orthogonale dansL2((0,1)×Ω)d+1 sur l’espace des contraintesC, qui n’est pas du tout explicite (nous retrouvons également cette étape dans l’algorithme de Benamou-Brenier). Cette projection se ramène à l’inversion d’un laplacien espace-temps, qui peut être résolue par une méthode de Poisson (voir [6,67]).

Ces méthodes impliquent une discrétisation très fine du problème, et peuvent être source d’une forte instabilité lors de leur traitement numérique. Il a été proposé dans [67] (et [45] pour une formulation différente du problème : voir plus bas) de traiter numériquement cette projection sur

Cpar une grille décalée par rapport à celle sur laquelle est effectuée la projection sur le paraboloïde

P, ceci dans le but d’affiner le calcul des différentes dérivées partielles nécessaires à la résolution pratique du problème, et ainsi de rapprocher le résultat numérique de cette projection surC par rapport à la projection théorique. Cette méthode, qui s’est avérée très efficace, fait appelle à un opérateur fixe de recentrage de grilleL(opérateur linéaire inversible) dont l’adjointL? peut être calculé à l’avance. C’est pourquoi, dans ce cadre, le problème d’optimisation discrétisé devient un problème du type : argmin ρ,m e K(L(ρ, m)) +ιC(ρ, m), (1.2-61)

Ce problème entre alors dans le cadre de l’algorithme 5 Primal-Dual ou bien dans celui de l’algorithme3de Forward-Backward Généralisé adapté à ce type de problème (voir la Remarque

1.2-17). Cette dernière méthode sera appliquée dans le chapitre V.

Pour d’avantage de détails sur cette méthode impliquant des grilles décalées voir [67] et [43].

B. Résolution du problème (1.2-53) sans sortir de l’espace des contraintes

Dans [43], M. Henry propose plusieurs méthodes permettant de traiter le problème (1.2-53) sans sortir de l’espace des contraintes C, c’est à dire en ne se ramenant pas à un problème d’optimisation sans contrainte (comme le problème (1.2-60) de la sous-section précédente) :

— Une première méthode, efficace dans le cas d’un transport optimal en une dimension, propose d’écrire les éléments de C comme le rotationnel d’une fonction courant φ (i.e.

(ρ, m) = rott,x(φ)), et de ramener le problème (1.2-53) à un problème de courbure mini-male sur cette même fonction courant, c’est à dire à résoudre l’équation :

divt,xt,xφ |∇t,xφ| = 0, (voir [43,45]).

— Dans l’idée de la décomposition précédente, est considérée également la décomposition de Helmotz-Hodge des éléments de C : il s’agit de décomposer les éléments de (ρ, m) ∈ C

(pour un transport dans un espace de dimension 1 ou 2) sous la forme

(ρ, m) = rott,x(φ) +∇t,xh,

où le termeh∈H1((0,1)×Ω)est le même pour tous les éléments deCet contient à lui seul les conditions de bords des éléments de cet ensemble : ce terme est donc calculé une fois pour toute. Les fonctions de courant sont quant à elles des éléments deH01((0,1)×Ω)d+1

à divergence nulle. Le problème se reformule alors

argmin φ∈C0 e K(rott,x(φ) +∇t,xh) = argmin φ∈H1 0 e K(rott,x(φ) +∇t,xh) +ιC0(φ)

oùC0={φ∈H01((0,1)×Ω)d+1, divt,x(φ) = 0}(espace convexe fermé deH01((0,1)×Ω)). On peut poser alors

F(ψ) =Ke(ψ+∇t,xh), etG(φ) =ιC0(φ)

(fonctions propres, s.c.i. convexes) et

L : φ∈(H01)d+1→rott,x(φ)∈V,

oùV est le sous-espace deL2((0,1)×Ω)d+1 des fonctions à divergence nulle (espace fermé deL2de Hilbert également) : l’opérateurLest alors un isomorphisme. On se ramène alors à un problème

argmin

φ∈H1 0

(F(φ) +G(φ)).

Ce problème est alors traité dans [43, 44, 45] par l’algorithme Primal-Dual (algorithme

5).

Ces deux premières méthodes, s’avèrent très efficaces en pratique et améliorent significa-tivement la vitesse des algorithmes.

— Une autre méthode originale proposée dans [43] consiste à décomposer l’espace des contraintes

C dans une base d’ondelettes adaptée de façon à pouvoir effectuer une descente de gra-dient au sein même de cet espace. Cette méthode, du fait du petit nombre d’éléments de la base utilisée en pratique, permettrait de minimiser la complexité des algorithmes.