Pénalisation (optimisation)

En optimisation mathématique, la pénalisation est une technique permettant d'analyser et de résoudre analytiquement ou numériquement des problèmes d'optimisation avec contraintes. Elle consiste à transformer le problème avec contraintes en un problème (cas de la pénalisation exacte) ou des problèmes (cas de la pénalisation inexacte) d'optimisation sans contrainte ; le sens précis de cette phrase apparaîtra plus loin.

C'est un outil à la fois théorique et algorithmique.

  • En théorie, on peut l'utiliser pour démontrer l'existence de solution des problèmes d'optimisation avec contraintes, en étudier les propriétés, établir des conditions d'optimalité, etc.
  • En algorithmique, cette approche permet de résoudre des problèmes avec contraintes en n'utilisant que des méthodes de l'optimisation sans contrainte ; cependant, à moins que l'on ne spécifie l'algorithme de manière raffinée (comme dans les algorithmes de points intérieurs en optimisation linéaire, quadratique et semi-définie positive — qui peuvent être interprétés comme des algorithmes de pénalisation), c'est un peu la «méthode du pauvre», permettant d'obtenir des résultats peu précis mais avec peu d'effort.

Principes

Définition

Considérons le problème d'optimisation avec contrainte suivant

( P X ) inf x X f ( x ) , {\displaystyle (P_{X})\qquad \inf _{x\in X}\,f(x),}

X {\displaystyle X} est une partie d'un ensemble E {\displaystyle \mathbb {E} } et f : E R ¯ : x f ( x ) {\displaystyle f:\mathbb {E} \to {\bar {\mathbb {R} }}:x\mapsto f(x)} est une fonction définie sur E {\displaystyle \mathbb {E} } pouvant prendre des valeurs infinies. La pénalisation (sous entendu de la contrainte x X {\displaystyle x\in X} ) est une technique qui remplace le problème ( P X ) {\displaystyle (P_{X})} par un ou des problèmes sans contrainte de la forme

( P r ) inf x E f r ( x ) , {\displaystyle (P_{r})\qquad \inf _{x\in \mathbb {E} }\,f_{r}(x),}

f r {\displaystyle f_{r}} est la fonction définie en x E {\displaystyle x\in \mathbb {E} } par

f r ( x ) = f ( x ) + r p ( x ) . {\displaystyle f_{r}(x)=f(x)+r\,p(x).}

Dans cette expression, r {\displaystyle r} est en général un réel positif à ajuster, appelé facteur de pénalisation, et

p : x E p ( x ) {\displaystyle p:x\in \mathbb {E} \mapsto p(x)}

est une fonction à spécifier, appelée fonction de pénalisation.

À ce niveau de généralité, rien ne permet de dire que les problèmes ( P X ) {\displaystyle (P_{X})} et ( P r ) {\displaystyle (P_{r})} ont un lien entre eux ; cela dépend de la fonction de pénalisation et du facteur de pénalisation. De manière à rendre l'approche plus concrète, donnons quelques exemples.

Exemples

Fonction indicatrice

Si l'on est familier avec les fonctions pouvant prendre la valeur + {\displaystyle +\infty } , on comprendra aisément qu'une fonction de pénalisation naturelle pour ( P X ) {\displaystyle (P_{X})} est la fonction indicatrice de X {\displaystyle X}  :

p 0 I X : E R { + } : x I X ( x ) = { 0 si x X + si x X . {\displaystyle p_{0}\equiv {\mathcal {I}}_{X}:\mathbb {E} \to \mathbb {R} \cup \{+\infty \}:x\mapsto {\mathcal {I}}_{X}(x)=\left\{{\begin{array}{lll}0&{\mbox{si}}&x\in X\\+\infty &{\mbox{si}}&x\notin X.\end{array}}\right.}

Dans cette pénalisation, le facteur r > 0 {\displaystyle r>0} ne joue aucun rôle (il multiplie zéro ou l'infini). Par ailleurs, les problèmes ( P X ) {\displaystyle (P_{X})} et ( P r ) {\displaystyle (P_{r})} sont alors équivalents, dans le sens où ils ont les mêmes solutions et les mêmes valeurs optimales. On l'utilise souvent dans certains développements théoriques pour prendre en compte simultanément les problèmes avec ( X E {\displaystyle X\neq \mathbb {E} } ) et sans ( X = E {\displaystyle X=\mathbb {E} } ) contraintes. Numériquement, cette pénalisation n'est guère utile, car si l'itéré courant est en dehors de l'adhérence de l'ensemble admissible, l'examen de f r {\displaystyle f_{r}} dans le voisinage de cet itéré ( f r {\displaystyle f_{r}} y est égale à + {\displaystyle +\infty } ) n'apportera pas d'information sur la direction à prendre pour trouver un point admissible.

Pénalisation de contraintes de positivité

Considérons d'abord le cas où E = R n {\displaystyle \mathbb {E} =\mathbb {R} ^{n}} et l'ensemble X {\displaystyle X} est défini par une contrainte de positivité :

X := { x R n : x 0 } {\displaystyle X:=\{x\in \mathbb {R} ^{n}:x\geqslant 0\}}

est l'orthant positif de R n {\displaystyle \mathbb {R} ^{n}} . La pénalisation logarithmique consiste à prendre comme fonction de pénalisation :

p 1 ( x ) := i = 1 n log x i . {\displaystyle p_{1}(x):=-\sum _{i=1}^{n}\log x_{i}.}

Cette pénalisation a été introduite par l'économiste Ragnar Frisch en 1955[1]. Il s'agit d'une pénalisation inexacte intérieure. Elle peut se généraliser, dans un sens bien précis (et compliqué), à des ensembles convexes (presque) arbitraires, via la notion de fonction auto-concordante (en).

Pénalisation de contraintes d'égalité

Considérons maintenant le cas où l'ensemble X {\displaystyle X} est défini par une contrainte d'égalité

X := { x E : c ( x ) = 0 } , {\displaystyle X:=\{x\in \mathbb {E} :c(x)=0\},}

c : E F {\displaystyle c:\mathbb {E} \to \mathbb {F} } est une fonction à valeurs dans un espace normé F {\displaystyle \mathbb {F} } , dont la norme est notée {\displaystyle \|\cdot \|} . Les deux fonctions p 2 {\displaystyle p_{2}} et p 3 {\displaystyle p_{3}} , définies ci-dessous par leurs valeurs en x E {\displaystyle x\in \mathbb {E} } , sont des fonctions de pénalisation que l'on rencontre souvent :

p 2 ( x ) := c ( x ) et p 3 ( x ) := 1 2 c ( x ) 2 . {\displaystyle p_{2}(x):=\|c(x)\|\qquad {\mbox{et}}\qquad p_{3}(x):={\frac {1}{2}}\,\|c(x)\|^{2}.}

La fonction p 3 {\displaystyle p_{3}} est mieux adaptée à un espace de Hilbert F {\displaystyle \mathbb {F} }  ; elle porte le nom de pénalisation quadratique. Ces deux fonctions de pénalisation conduisent à des propriétés très différentes : la première donne lieu à une pénalisation exacte, la seconde à une pénalisation inexacte extérieure.

Pénalisation de contraintes d'inégalité

Considérons à présent le cas où l'ensemble X {\displaystyle X} est défini par des contraintes d'inégalité

X := { x E : c ( x ) 0 } , {\displaystyle X:=\{x\in \mathbb {E} :c(x)\leqslant 0\},}

c : E R m {\displaystyle c:\mathbb {E} \to \mathbb {R} ^{m}} ( m {\displaystyle m} entier) et l'inégalité se lit composante par composante : c 1 ( x ) 0 {\displaystyle c_{1}(x)\leqslant 0} , ..., c m ( x ) 0 {\displaystyle c_{m}(x)\leqslant 0} . Les deux fonctions p 4 {\displaystyle p_{4}} et p 5 {\displaystyle p_{5}} , définies ci-dessous par leurs valeurs en x E {\displaystyle x\in \mathbb {E} } , sont des fonctions de pénalisation que l'on utilise souvent :

p 4 ( x ) := c ( x ) + et p 5 ( x ) := 1 2 c ( x ) + 2 2 , {\displaystyle p_{4}(x):=\|c(x)^{+}\|\qquad {\mbox{et}}\qquad p_{5}(x):={\frac {1}{2}}\,\|c(x)^{+}\|_{2}^{2},}

{\displaystyle \|\cdot \|} est une norme arbitraire sur R m {\displaystyle \mathbb {R} ^{m}} , 2 {\displaystyle \|\cdot \|_{2}} est la norme euclidienne de R m {\displaystyle \mathbb {R} ^{m}} et v + {\displaystyle v^{+}} est pour v R m {\displaystyle v\in \mathbb {R} ^{m}} le vecteur de R m {\displaystyle \mathbb {R} ^{m}} dont la composante i {\displaystyle i} est max ( 0 , v i ) {\displaystyle \max(0,v_{i})} . Comme ci-dessus, la pénalisation p 4 {\displaystyle p_{4}} donne lieu à une pénalisation exacte, tandis que p 5 {\displaystyle p_{5}} correspond à une pénalisation inexacte extérieure. Cette dernière porte le nom de pénalisation quadratique.

Pénalisation de contraintes générales

Plus généralement, supposons que G {\displaystyle G} soit un ensemble convexe d'un espace normé F {\displaystyle \mathbb {F} } et que c : E F {\displaystyle c:\mathbb {E} \to \mathbb {F} } soit une fonction. On considère ici le cas où l'ensemble X {\displaystyle X} est défini par

X := { x E : c ( x ) G } . {\displaystyle X:=\{x\in \mathbb {E} :c(x)\in G\}.}

On retrouve les exemples précédents lorsque G = { 0 } {\displaystyle G=\{0\}} et G {\displaystyle G} est l'orthant négatif G = { y R m : y 0 } {\displaystyle G=\{y\in \mathbb {R} ^{m}:y\leqslant 0\}} . Les généralisations à ce cadre des fonctions de pénalisation p 2 {\displaystyle p_{2}} ou p 4 {\displaystyle p_{4}} , d'une part, et p 3 {\displaystyle p_{3}} ou p 5 {\displaystyle p_{5}} , d'autre part, sont les fonctions suivantes

p 6 ( x ) := dist ( c ( x ) , G ) et p 7 ( x ) := 1 2 [ dist ( c ( x ) , G ) ] 2 , {\displaystyle p_{6}(x):=\operatorname {dist} (c(x),G)\qquad {\mbox{et}}\qquad p_{7}(x):={\frac {1}{2}}\,{\Bigl [}\operatorname {dist} (c(x),G){\Bigr ]}^{2},}

dist ( y , G ) {\displaystyle \operatorname {dist} (y,G)} est la distance de y F {\displaystyle y\in \mathbb {F} } à l'ensemble G {\displaystyle G} . Ici aussi, la pénalisation p 6 {\displaystyle p_{6}} donne lieu à une pénalisation exacte, tandis que p 7 {\displaystyle p_{7}} correspond à une pénalisation inexacte extérieure.

Pénalisations exacte et inexacte

La notion de pénalisation exacte est très utile, bien qu'elle ne soit pas très précise ; plutôt, elle requiert des précisions supplémentaires dans les résultats qui la mentionne. Le concept est attaché au lien que l'on désire établir entre les problèmes ( P X ) {\displaystyle (P_{X})} et ( P r ) {\displaystyle (P_{r})} définis ci-dessus. Une définition pourrait être la suivante.

Pénalisation exacte — On dit que la pénalisation réalisée dans ( P r ) {\displaystyle (P_{r})} est exacte si les solutions de ( P X ) {\displaystyle (P_{X})} sont solutions de ( P r ) {\displaystyle (P_{r})} . On dit que la pénalisation est inexacte dans le cas contraire.

Cette définition ne dit pas ce que l'on entend par solution : est-ce un minimum global, local, un point-stationnaire ? Aussi, faut-il que cette correspondance ait lieu entre toutes les solutions de ( P X ) {\displaystyle (P_{X})} et de ( P r ) {\displaystyle (P_{r})} ou pour une seule d'entre elles ? Les résultats qui affirment qu'une pénalisation est exacte précisent les réponses à ces questions. Ils précisent aussi les valeurs que doit prendre le facteur de pénalisation r {\displaystyle r} pour que la propriété d'exactitude soit vraie. Il arrive aussi que les solutions de ( P r ) {\displaystyle (P_{r})} soient solutions de ( P X ) {\displaystyle (P_{X})} , mais cette propriété est plus rare, à moins que l'on ne sélectionne parmi les solutions de ( P r ) {\displaystyle (P_{r})} , celles qui sont admissibles pour ( P X ) {\displaystyle (P_{X})} , c'est-à-dire qui sont dans l'ensemble admissible X {\displaystyle X} .

Lorsque la pénalisation est exacte, le lien entre les problèmes d'optimisation ( P X ) {\displaystyle (P_{X})} et ( P r ) {\displaystyle (P_{r})} est clair : ces problèmes ont des solutions en commun. Dès lors, si l'on veut résoudre le problème avec contrainte ( P X ) {\displaystyle (P_{X})} , il suffit parfois de résoudre le problème sans contrainte ( P r ) {\displaystyle (P_{r})} . Cette propriété remarquable est contrebalancée par le fait qu'une fonction de pénalisation exacte est souvent non-différentiable (c'est le cas des fonctions de pénalisation p 2 {\displaystyle p_{2}} , p 4 {\displaystyle p_{4}} et p 6 {\displaystyle p_{6}} données en exemples ci-dessus) ou contient des paramètres qui ne sont pas facilement calculables (comme un multiplicateur optimal dans le lagrangien augmenté).

Lorsque la pénalisation est inexacte, le lien entre les problèmes d'optimisation ( P X ) {\displaystyle (P_{X})} et ( P r ) {\displaystyle (P_{r})} n'est pas nécessairement absent. Si la pénalisation est bien construite, le lien s'obtient asymptotiquement, en faisant tendre le paramètre de pénalisation r {\displaystyle r} vers une valeur limite, zéro ou l'infini. Numériquement, la résolution d'un problème d'optimisation par pénalisation inexacte se fera par la résolution d'une suite de problèmes d'optimisation sans contrainte, en faisant tendre le paramètre de pénalisation vers sa limite. La nécessité de résoudre des problèmes d'optimisation ( P r ) {\displaystyle (P_{r})} pour plusieurs valeurs de r {\displaystyle r} repose sur les raisons suivantes :

  • il ne suffit pas de donner à r {\displaystyle r} sa valeur limite; si r = 0 {\displaystyle r=0} , il n'y a plus de terme de pénalisation dans f r {\displaystyle f_{r}} , si bien que l'on ne tient plus compte des contraintes ; si r = + {\displaystyle r=+\infty } , f r {\displaystyle f_{r}} n'est pas bien définie ;
  • il ne suffit pas de prendre un unique paramètre de pénalisation r {\displaystyle r} proche de sa valeur limite (proche de zéro ou très grand), car on ne peut pas dire a priori, si cela conduira à une solution approchée de ( P X ) {\displaystyle (P_{X})} acceptable ;
  • lorsque le paramètre de pénalisation est proche de sa valeur limite, le problème ( P r ) {\displaystyle (P_{r})} est en général mal conditionné, si bien qu'il est numériquement difficile d'obtenir de la précision sur les minimiseurs de ( P r ) {\displaystyle (P_{r})} , à moins que le point de départ du processus de minimisation soit déjà proche d'un tel minimiseur ; il est donc judicieux de se rapprocher d'une solution de ( P X ) {\displaystyle (P_{X})} sans trop s'écarter du chemin défini par les minimiseurs des problèmes ( P r ) {\displaystyle (P_{r})} (méthode de suivi de chemin).

Pénalisations extérieure et intérieure

Une pénalisation inexacte peut être extérieure ou intérieure.

Dans une pénalisation extérieure, la fonction de pénalisation p {\displaystyle p} est nulle sur, et uniquement sur, l'ensemble admissible X {\displaystyle X} . À l'extérieur de cet ensemble, p {\displaystyle p} prend des valeurs strictement positives. Comme on cherche à minimiser f r := f + r p {\displaystyle f_{r}:=f+r\,p} , cette pénalisation force le minimiseur à se rapprocher de l'ensemble admissible, d'autant plus que le facteur de pénalisation r {\displaystyle r} est grand. Dans cette approche, la fonction p {\displaystyle p} pénalise donc la violation des contraintes, d'autant plus que son argument est éloigné de l'ensemble admissible X {\displaystyle X}  ; lorsque cet ensemble est défini par des contraintes fonctionnelles, cet éloignement est mesuré par la valeur de ces contraintes fonctionnelles. Dans cette technique de pénalisation, les minimiseurs de f r {\displaystyle f_{r}} sont en général extérieurs à l'ensemble admissible X {\displaystyle X} et on fait tendre r {\displaystyle r} vers + {\displaystyle +\infty } pour trouver une solution de ( P X ) {\displaystyle (P_{X})} à partir de celles de ( P r ) {\displaystyle (P_{r})} . Les fonctions p 3 {\displaystyle p_{3}} , p 5 {\displaystyle p_{5}} et p 7 {\displaystyle p_{7}} données en exemples ci-dessus sont des fonctions de pénalisation extérieure.

Dans une pénalisation intérieure, ...

Propriété de monotonie

Pénalisations inexactes

Pénalisation extérieure

Pénalisation intérieure

Pénalisation exacte

Pénalisation du lagrangien

Lagrangien ordinaire

Lagrangien augmenté

Annexes

Note

  1. (en) R. Frisch (1955, mai). The logarithmic potential method for convex programming with particular application to the dynamics of planning for national development. Memorandum, Institut d’Économie, Université d’Oslo, Oslo, Norvège.

Article connexe

Lien externe

  • J. Ch. Gilbert, Éléments d'Optimisation Différentiable — Théorie et Algorithmes, syllabus de cours à l'ENSTA ParisTech, Paris.

Références

  • (en) D. P. Bertsekas (1995), Nonlinear Programming. Athena Scientific. (ISBN 978-1-886529-14-4).
  • (en) J. F. Bonnans, J. Ch. Gilbert, C. Lemaréchal, C. Sagastizábal (2006), Numerical Optimization - Theoretical and Numerical Aspects [détail des éditions].
  • (en) J. Nocedal, S. J. Wright (2006), Numerical Optimization, Springer. (ISBN 978-0-387-30303-1).
  • icône décorative Portail de l'informatique théorique
  • icône décorative Portail des mathématiques