En analyse numérique, l'algorithme proximal (ou algorithme du point proximal) est un algorithme itératif de calcul d'un zéro d'un opérateur monotone maximal. Si cet opérateur est non linéaire, chaque itération requiert la résolution d'un problème non linéaire.

Lorsqu'on l'applique à l'optimisation convexe, l'algorithme peut être vu comme une méthode de sous-gradient implicite.

Certains algorithmes peuvent être interprétés comme des algorithmes proximaux — il en est ainsi de l'algorithme du lagrangien augmenté (ou méthode des multiplicateurs) — ce qui permet d'en établir des propriétés de convergence.

Le problème

Énoncé

Soient H {\displaystyle \mathbb {H} } un espace de Hilbert, dont le produit scalaire est noté , {\displaystyle \langle \cdot ,\cdot \rangle } et la norme associée est notée {\displaystyle \|\cdot \|} , et T : H H {\displaystyle T:\mathbb {H} \multimap \mathbb {H} } un opérateur monotone maximal (le signe {\displaystyle \multimap } signale qu'il s'agit d'une multifonction). On s'intéresse au problème de trouver un zéro de T {\displaystyle T} , c'est-à-dire un point x H {\displaystyle x\in \mathbb {H} } tel que l'ensemble T ( x ) {\displaystyle T(x)} contienne zéro :

T ( x ) 0. {\displaystyle T(x)\ni 0.}

Lorsque T {\displaystyle T} est univoque, le problème devient celui de trouver une solution x {\displaystyle x} de l'équation T ( x ) = 0 {\displaystyle T(x)=0} .

Exemples

Optimisation

Le problème d'optimisation qui consiste à minimiser une fonction convexe fermée propre f : H R { } {\displaystyle f:\mathbb {H} \to \mathbb {R} \cup \{ \infty \}} sur un espace de Hilbert H {\displaystyle \mathbb {H} } revient à résoudre l'inclusion f ( x ) 0 {\displaystyle \partial f(x)\ni 0} , c'est-à-dire à trouver un zéro de son sous-différentiel f {\displaystyle \partial f} , qui est un opérateur monotone maximal. Cette observation est à la base de l'algorithme proximal primal en optimisation. On peut aussi introduire un algorithme proximal dual en utilisant le sous-différentiel concave de la fonction duale et un algorithme proximal primal-dual en utilisant le sous-différentiel convexe-concave du lagrangien. Les algorithmes proximaux en optimisation sont présentés ailleurs.

Inéquation variationnelle

Soient H {\displaystyle \mathbb {H} } un espace de Hilbert dont le produit scalaire est noté , {\displaystyle \langle \cdot ,\cdot \rangle } , K {\displaystyle K} un convexe fermé non vide de H {\displaystyle \mathbb {H} } et F : K H {\displaystyle F:K\to \mathbb {H} } un opérateur univoque monotone (non nécessairement maximal) hémi-continu contenant K {\displaystyle K} dans son domaine. On considère le problème qui consiste à trouver un point x H {\displaystyle x\in \mathbb {H} } vérifiant

x K et F ( x ) , x x 0 , x K . {\displaystyle x\in K\qquad {\mbox{et}}\qquad \langle F(x),x'-x\rangle \geqslant 0,\quad \forall \,x'\in K.}

Ce problème s'écrit sous la forme T ( x ) 0 {\displaystyle T(x)\ni 0} en utilisant l'opérateur T : H H {\displaystyle T:\mathbb {H} \multimap \mathbb {H} } suivant

T ( x ) = F ( x ) N K ( x ) , {\displaystyle T(x)=F(x) N_{K}(x),}

N K ( x ) {\displaystyle N_{K}(x)} est le cône normal à K {\displaystyle K} en x {\displaystyle x} (si x K {\displaystyle x\notin K} , N K ( x ) {\displaystyle N_{K}(x)} est vide et donc aussi T ( x ) {\displaystyle T(x)} ). On montre que, sous les hypothèses énoncées sur K {\displaystyle K} et F {\displaystyle F} , T {\displaystyle T} est monotone maximal. Les algorithmes proximaux pour la résolution d'inéquations variationnelles sont présentés ailleurs.

L'algorithme

L'algorithme est en partie fondé sur le fait que, lorsque T {\displaystyle T} est monotone maximal et r > 0 {\displaystyle r>0} , l'opérateur

P r := ( I r T ) 1 {\displaystyle P_{r}:=(I rT)^{-1}}

est non expansif (donc univoque) et de domaine H {\displaystyle \mathbb {H} } .

Exprimé autrement, le calcul de l'itéré x k 1 {\displaystyle x_{k 1}} consiste à trouver l'unique solution de

x k 1 r k T ( x k 1 ) = x k . {\displaystyle x_{k 1} r_{k}T(x_{k 1})=x_{k}.}

En toute généralité, cette opération est non linéaire (à moins que T {\displaystyle T} ne soit linéaire). Cette équation montre aussi que, même si x 0 D ( T ) {\displaystyle x_{0}\notin {\mathcal {D}}(T)} , les itérés suivants sont dans le domaine de T {\displaystyle T} .

On peut s'interroger sur la pertinence de l'algorithme proximal. En effet, pour résoudre le problème original (non linéaire) T ( x ) 0 {\displaystyle T(x)\ni 0} , on est amené à résoudre une suite de problèmes auxiliaires (non linéaires) x k 1 r k T ( x k 1 ) = x k {\displaystyle x_{k 1} r_{k}T(x_{k 1})=x_{k}} , qui sont apparemment aussi difficiles à résoudre que le problème original. Cette critique, en apparence rédhibitoire, doit être relativisée à la lumière des remarques suivantes.

  1. L'univocité et le domaine étendu de l'opérateur P r k {\displaystyle P_{r_{k}}} , propriétés non nécessairement partagées par T 1 {\displaystyle T^{-1}} , rendent souvent les problèmes auxiliaires plus aisés à résoudre que le problème original.
  2. Certains algorithmes (méthode des multiplicateurs, techniques de décomposition) s'écrivent naturellement sous la forme d'un algorithme proximal. Celui-ci est alors une interprétation de l'algorithme permettant d'en analyser les propriétés, en particulier la convergence.

Convergence

Résolution approchée

Le calcul de l'itéré suivant par x k 1 = P r k ( x k ) {\displaystyle x_{k 1}=P_{r_{k}}(x_{k})} est souvent coûteux en temps de calcul. Dès lors, l'on se contente souvent d'un calcul approché conservant toutefois les propriétés de convergence de l'algorithme idéal. On peut aussi arguer que ce calcul ne peut être réalisé exactement en arithmétique flottante. Différents critères ont donc été proposés pour déterminer ce qu'est une résolution approchée acceptable.

Critères d'arrêt de Rockafellar

Rockafellar (1976a) propose de se contenter d'un x k 1 {\displaystyle x_{k 1}} vérifiant

(R1a) x k 1 P r k ( x k ) ε k , avec     k 0 ε k < . {\displaystyle {\mbox{(R1a)}}\qquad \|x_{k 1}-P_{r_{k}}(x_{k})\|\leqslant \varepsilon _{k},\qquad {\mbox{avec}}~~\sum _{k\geqslant 0}\varepsilon _{k}<\infty .}

Ce critère n'est pas implémentable puisqu'il requiert le calcul de P r k ( x k ) {\displaystyle P_{r_{k}}(x_{k})} , que l'on veut justement éviter (si P r k ( x k ) {\displaystyle P_{r_{k}}(x_{k})} est facilement calculable, autant l'utiliser). Son intérêt est donc essentiellement théorique. Cependant comme on peut montrer que pour tout x H {\displaystyle x\in \mathbb {H} } , on a

x P r k ( x k ) dist ( 0 , x r k T ( x ) x k ) , {\displaystyle \|x-P_{r_{k}}(x_{k})\|\leq \operatorname {dist} (0,x r_{k}T(x)-x_{k}),}

ce critère sera vérifié si x k 1 {\displaystyle x_{k 1}} satisfait le critère parfois implémentable suivant

(R1b) dist ( x k 1 r k T ( x k 1 ) x k , 0 ) ε k , avec     k 0 ε k < . {\displaystyle {\mbox{(R1b)}}\qquad \operatorname {dist} {\Bigl (}x_{k 1} r_{k}T(x_{k 1})-x_{k},0{\Bigr )}\leqslant \varepsilon _{k},\qquad {\mbox{avec}}~~\sum _{k\geqslant 0}\varepsilon _{k}<\infty .}

Ce critère requiert la connaissance complète de T ( x ) {\displaystyle T(x)} , ce qui n'est pas toujours le cas (que l'on songe au cas où T ( x ) {\displaystyle T(x)} est le sous-différentiel f ( x ) {\displaystyle \partial f(x)} d'une fonction convexe non quadratique f {\displaystyle f} en x {\displaystyle x} ).

On a le résultat de convergence faible suivant.

Rockafellar (1976a) propose aussi un critère plus exigeant, celui dans lequel on requiert le calcul d'un x k 1 {\displaystyle x_{k 1}} vérifiant

(R2a) x k 1 P r k ( x k ) ε k x k 1 x k , avec     k 0 ε k < . {\displaystyle {\mbox{(R2a)}}\qquad \|x_{k 1}-P_{r_{k}}(x_{k})\|\leqslant \varepsilon _{k}\|x_{k 1}-x_{k}\|,\qquad {\mbox{avec}}~~\sum _{k\geqslant 0}\varepsilon _{k}<\infty .}

Ce critère n'est pas non plus implémentable puisqu'il requiert le calcul de P r k ( x k ) {\displaystyle P_{r_{k}}(x_{k})} mais, par l'estimation de x P r k ( x k ) {\displaystyle \|x-P_{r_{k}}(x_{k})\|} donnée ci-dessus, il est satisfait si l'on requiert à x k 1 {\displaystyle x_{k 1}} de satisfaire le critère parfois implémentable suivant

(R2b) dist ( x k 1 r k T ( x k 1 ) x k , 0 ) ε k x k 1 x k , avec     k 0 ε k < . {\displaystyle {\mbox{(R2b)}}\qquad \operatorname {dist} {\Bigl (}x_{k 1} r_{k}T(x_{k 1})-x_{k},0{\Bigr )}\leqslant \varepsilon _{k}\|x_{k 1}-x_{k}\|,\qquad {\mbox{avec}}~~\sum _{k\geqslant 0}\varepsilon _{k}<\infty .}

Ce critère requiert la connaissance complète de T ( x ) {\displaystyle T(x)} , ce qui n'est pas toujours le cas.

On a alors le résultat de convergence forte suivant. On y impose que T 1 {\displaystyle T^{-1}} soit localement radialement lipschitzienne de module L {\displaystyle L} en zéro, ce qui signifie que

{ T 1 ( 0 ) = { x ¯ } ( unique solution   x ¯ ) δ > 0 :     x T 1 ( y ) ,     y δ x x ¯ L y . {\displaystyle \left\{{\begin{array}{l}T^{-1}(0)=\{{\bar {x}}\}\qquad ({\mbox{unique solution}}~{\bar {x}})\\\exists \,\delta >0:~~x\in T^{-1}(y),~~\|y\|\leqslant \delta \quad \Longrightarrow \quad \|x-{\bar {x}}\|\leqslant L\|y\|.\end{array}}\right.}

L'hypothèse d'unicité des zéros de T {\displaystyle T} peut être soulevée, soit en acceptant plusieurs zéros, soit aucun.

On note que si r k {\displaystyle r_{k}\uparrow \infty } , alors μ k 0 {\displaystyle \mu _{k}\to 0} et θ k 0 {\displaystyle \theta _{k}\to 0} , ce qui implique qu'alors la suite { x k } {\displaystyle \{x_{k}\}} converge superlinéairement vers x ¯ {\displaystyle {\bar {x}}} .

Autre critère d'arrêt

Les critères d'arrêt de Rockafellar ont l'inconvénient de dépendre d'une suite { ε k } {\displaystyle \{\varepsilon _{k}\}} donnée a priori, indépendante de l'observation des itérés générés. D'autres critères n'ayant pas cet inconvénient ont été proposés, comme celui de Solodov et Svaiter (1999).

Annexes

Notes

Article connexe

  • Algorithme proximal (optimisation)

Bibliographie

  • (en) R.E. Bruck, S. Reich (1977), Nonexpansive projections and resolvents of accretive operators in Banach spaces, Houston Journal of Mathematics, 3, 459–470.
  • (en) G.J. Minty (1962). Monotone (nonlinear) operators in Hilbert space. Duke Mathematical Journal, 29, 341-346.
  • (en) G.J. Minty (1964). On the monotonicity of the gradient of a convex function. Pacific Journal of Mathematics, 14, 243–247.
  • J.J. Moreau (1965). Proximité et dualité dans un espace hilbertien. Bulletin de la Société Mathématique de France, 93, 273–299.
  • (en) S. Reich (1977). On infinite products of resolvents. Rend. Classe Sci. Fis. Mat. e Nat. Accad. Naz. Lincei Ser. VIII, LXIII, Fasc. 5.
  • (en) R.T. Rockafellar (1970). On the maximality of sums of nonlinear monotone operators. Translations of the American Mathematical Society, 149, 75-88.
  • (en) R.T. Rockafellar (1976a). Monotone operators and the proximal point algorithm. SIAM Journal on Control and Optimization, 14, 877–898.
  • (en) R.T. Rockafellar (1976b). Augmented Lagrangians and applications of the proximal point algorithm in convex programming. Mathematics of Operations Research, 1, 97-116.
  • (en) M.V. Solodov, B.F. Svaiter (1999). A hybrid approximate extragradient-proximal point algorithm using the enlargement of a maximal monotone operator. Set-Valued Analysis, 7, 323-345.
  • (en) J.E. Spingarn (1983). Partial inverse of a monotone operator. Applied Mathematics and Optimization, 10, 247–265.
  • Portail des mathématiques

6 Proximal algorithm = 6.1 The Lasso proximal mapping

Etude d'article d'optimisation Proximal algorithms PDF

Proximal Algorithms (Foundations and Trends by Neal Parikh Goodreads

(PDF) Proximal Distance Algorithms Theory and Practice

Proximal Policy Optimization tout sur l'algorithme créé par OpenAI