Вы находитесь на странице: 1из 104

cole Centrale Paris

Mathmatiques 2
D. Verwaerde et P. Laurent-Gengoux

Optimisation
P. Laurent-Gengoux Anne 2006-2007

Optimisation

ECP 2006-2007

Table des matires


1 Introduction au calcul diffrentiel 1.1 Introduction au calcul diffrentiel . . . . . . . . . . . . . . . . . . . . . . 1.1.1 Notions de diffrentielle . . . . . . . . . . . . . . . . . . . . . . 1.1.2 Exemples et applications lmentaires de diffrentielles . . . . . 1.1.3 Thormes fondamentaux . . . . . . . . . . . . . . . . . . . . . 1.1.4 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Exercices corrigs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.1 Quelques applications au calcul matriciel . . . . . . . . . . . . . 1.2.2 Une application non triviale : tude du ambement dune structure Fonctions convexes 2.1 Ensembles convexes . . . . . . . . . . . 2.1.1 Dnitions . . . . . . . . . . . . 2.1.2 Quelques proprits gomtriques 2.2 Fonctions convexes . . . . . . . . . . . . 2.2.1 Dnitions . . . . . . . . . . . . 2.2.2 Fonctions dune variable . . . . . 2.2.3 Proprits et caractrisations . . . 2.3 Exemples et applications . . . . . . . . . 2.3.1 Exemples lmentaires . . . . . . 2.3.2 Application ltude dquations 2.4 Exercices corrigs . . . . . . . . . . . . . 7 7 8 13 15 17 24 24 27 33 33 33 35 36 36 37 37 40 40 41 42 47 48 48 48 49 50 50 51 51 54

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

Optimisation sans contrainte 3.1 Principes de loptimisation . . . . . . . . . . . . . . . . 3.1.1 Prliminaire . . . . . . . . . . . . . . . . . . . . 3.1.2 Rappel sur les systmes linaires . . . . . . . . . 3.1.3 Les mthodes de descente . . . . . . . . . . . . 3.2 Les mthodes du premier ordre . . . . . . . . . . . . . . 3.2.1 Mthode du gradient optimal . . . . . . . . . . . 3.2.2 Mthode de relaxation . . . . . . . . . . . . . . 3.2.3 tude graphique des mthodes de descente . . . 3.2.4 Mthode de relaxation comme rcurrence linaire 3

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

4 3.2.5 Mthode de sur-relaxation . . . . . . . . . . . . . . . . . . . . . . 3.2.6 Mthode de relaxation par blocs . . . . . . . . . . . . . . . . . . . Mthodes du second ordre . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.1 La mthode de Newton . . . . . . . . . . . . . . . . . . . . . . . . Quelques considrations pratiques . . . . . . . . . . . . . . . . . . . . . . 3.4.1 Notion de prconditionnement . . . . . . . . . . . . . . . . . . . . 3.4.2 Prconditionnement : cas gnral . . . . . . . . . . . . . . . . . . 3.4.3 Remarque . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4.4 Petit guide du choix et de lutilisation dune mthode doptimisation Exercices corrigs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . La mthode du gradient conjugu (Hors Programme ) . . . . . . . . . . . . 3.7.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.7.2 Convergence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.7.3 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.7.4 Corrigs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Optimisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 55 56 56 57 57 59 59 59 60 61 62 62 63 64 68 71 71 71 71 72 74 74 75 75 75 76 76 76 78 78 81 81 81 83 87 87 87 88 89 93 94

3.3 3.4

3.5 3.6 3.7

Optimisation sous contraintes dgalit 4.1 Optimisation sous contraintes dgalit . . . . . . . . . . . . . . . . . . . . . . . . . 4.1.1 Prsentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.1.2 Prliminaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.1.3 Les multiplicateurs de Lagrange . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Proprits et interprtations des multiplicateurs . . . . . . . . . . . . . . . . . . . . 4.2.1 Les multiplicateurs mesurent la sensibilit dune contrainte . . . . . . . . . . 4.2.2 Interprtations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3 Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3.1 Minimisation dune fonction quadratique convexe sous des contraintes linaires 4.3.2 Fonctions convexes et contraintes linaires . . . . . . . . . . . . . . . . . . 4.4 Optimisation et dualit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4.1 Problme dual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4.2 Algorithme dUzawa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4.3 Mthode de pnalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4.4 Approximation numrique . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5 Complments : ce paragraphe est hors programme . . . . . . . . . . . . . . . . . . . 4.5.1 Le principe dnergie complmentaire . . . . . . . . . . . . . . . . . . . . 4.5.2 Dualit en prsence de contraintes dgalit et dingalit . . . . . . . . . . . Optimisation sous contraintes dingalit 5.1 Optimisation sous contraintes dingalit . 5.1.1 Prsentation . . . . . . . . . . . . 5.1.2 Prliminaires . . . . . . . . . . . 5.1.3 Optimisation convexe . . . . . . . 5.1.4 Optimisation et dualit . . . . . . 5.2 Applications . . . . . . . . . . . . . . . . 4

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

ECP 2006-2007

TABLE DES MATIRES Minimisation dune fonction quadratique convexe sous des contraintes dingalit linaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2.2 Contraintes quadratiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2.3 Exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Autres approches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3.1 Mthodes de pnalisation extrieure . . . . . . . . . . . . . . . . . . . . . . 5.3.2 Mthode de pnalisation intrieure . . . . . . . . . . . . . . . . . . . . . . . 5.3.3 Mthodes de dcomposition . . . . . . . . . . . . . . . . . . . . . . . . . . Mthodes numriques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.4.1 Les contraintes sont linaires . . . . . . . . . . . . . . . . . . . . . . . . . . 5.4.2 Les contraintes sont non-linaires . . . . . . . . . . . . . . . . . . . . . . . 5.4.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2.1

5.3

5.4

94 95 96 97 97 98 98 100 100 101 101

Mathmatiques 2

Optimisation

ECP 2006-2007

Chapitre 1

Introduction au calcul diffrentiel


Objectifs Nous rsumons dans ce chapitre les principales dnitions et les principaux thormes du calcul diffrentiel, essentiellement la notion de diffrentielle et les thormes caractrisant un optimum qui seront utiliss dans la suite du cours. Nous donnons de nombreux exemples de calcul et dapplication des diffrentielles. Dautres exemples sont dans la sance dexercices.

1.1

Introduction au calcul diffrentiel

Nous limitons volontairement dans cette prsentation le cadre formel au strict minimum ncessaire au dveloppement du cours mme si cela rduit la gnralit des dnitions et mme si cela introduit quelques incohrences. Pour une prsentation complte se reporter aux ouvrages classiques de calcul diffrentiel.

Notations
On note de manire gnrale dans ce cours V , W , Z des espaces vectoriels norms, x un point quelconque de V , f une fonction de V dans W , F une fonction de V dans R. On note x, y un produit scalaire quelconque . Si V = Rn , un vecteur x a pour composantes x = (x1 , ..., xn )t ; une fonction F (x) est donc une fonction de n variables notes aussi F (x1 , ..., xn ). On note dans ce cas x, y = i xi yi le produit scalaire canonique de deux vecteurs x et y. On note lapplication dune forme linaire b un vecteur v quelconque avec un "." : b.v, au lieu de lcriture b(v) : lcriture b.v est prfrable car nous utiliserons des formes linaires qui dpendent (non linairement) dune variable x, ce qui scrira donc b(x).v. Remarque : dans ce qui suit on peut (et il faut souvent) se restreindre des fonctions dnies sur des ouverts de V , nous ne le ferons pas pour allger les notations. En pratique nous considrerons soit des espaces V de dimension nie (que lon peut donc identier Rn ) soit des (sous-)espaces de fonctions drivables de lespace C k ([a, b]). Les fonctions que nous considrerons pourront tre : 7

8 des fonctions de n variables, par exemple F (x) = 1 Ax, x b, x 2

Optimisation

o x, b Rn et A est une matrice (n, n) symtrique ou des fonctions sur lespace des matrices, par exemple F (A) = det A o A est une matrice (n, n). des applications de Rn dans lui mme, par exemple F (x) = Ax + x3 o pour x Rn , x3 est le vecteur (x3 , ..., x3 , ..., x3 )t et A est une matrice (n, n), ou encore n 1 i f (A) = A1 des fonctions dont la variable est elle mme une fonction, par exemple
1

F (u) =
0

u(x)4 dx 4

o u V = C([0, 1]), ou encore


1

F (u) =
0

1 + u 2 dx

o u V = C([0, 1]) qui dnit la longueur de la courbe dnie par la fonction u(x). .

1.1.1

Notions de diffrentielle

La notion de diffrentielle permet dtendre la notion de drive aux fonctions de plusieurs variables et aux fonctions dont la variable est elle mme une fonction qui appartient un espace de dimension innie. En dimension nie les calculs peuvent se faire dans une base et ils se ramnent alors des calculs de drives partielles, mais tout lintrt de la notion de diffrentielle est dviter le recours un systme particulier de coordonnes pour conserver la signication gomtrique ou physique des calculs. Diffrentielle au sens de Frchet Dnition 1 Soit V et W deux espaces vectoriels norms. Une application f (x) de V dans W est diffrentiable (au sens de Frchet, souvent omis) en x V si il existe une application linaire continue de V dans W , note Df (x) telle que h V f (x + h) = f (x) + Df (x).h + (h) h avec limh0 (h) = 0. 8

ECP 2006-2007

CHAPITRE 1. INTRODUCTION AU CALCUL DIFFRENTIEL

Intuitivement cela signie que f (x + h) peut tre approche sur une petite boule par une application linaire ; la diffrentielle en x est la partie linaire en h de lapproximation, aprs avoir nglig les termes dordre suprieur. Remarque : Si V est un espace de dimension nie, toutes les normes sont quivalentes1 , il rsulte de la dnition que la diffrentiabilit ne dpend pas de la norme choisie. Si V est de dimension innie, une fonction peut tre diffrentiable pour une norme sans ltre pour une autre norme non quivalente. Par exemple si V = C([0, 1]), muni de la norme u = supx |u(x)| et F (u) = u(0)2 , soit h V , on a : F (u + h) = u(0)2 + 2u(0)h(0) + h(0)2 On pose (h) = h(0) . Comme h(0) h on a (h) |h(0)| h , ce qui montre que, h avec Df (u).h = 2u(0)h(0), la dnition de la diffrentielle est bien vrie. 2 1 Mais si on munit V = C([0, 1]) de la norme u 1 = 0 |u(x)| dx, alors (h) = h(0)1 ne tend pas h vers 0 quand h 1 tend vers 0 ; la fonction F (u) nest pas diffrentiable pour cette norme. Pour calculer la diffrentielle dans des cas simples, on peut dvelopper f (x + h) par rapport h et ne garder que les termes dordre 1, aprs avoir vri que les termes dordre suprieur tendent vers 0 pour la norme choisie. Dune manire plus gnrale, le calcul de la diffrentielle se ramne des calculs de drives de fonctions dune variable : Proposition 1 Soit x(t) est une courbe C 1 dans V , i.e. une application C 1 de [0, 1] dans V . Si f (x) est une application diffrentiable, on a f (x(t)) = Df (x(t)).x (t) On notera quil faut au pralable avoir montr que la fonction f (x) est diffrentiable, ce qui peut se faire en utilisant le thorme (1). Exemple 1 Soit V = Mn (R) lensemble des matrices relles de dimension n et f (M ) = M 2 . Nous allons montrer que Df (M ).h = M h + hM . Il suft ici de calculer f (M + h) = (M + h)(M + h) = M 2 + (M h + hM ) + h2 et de ne retenir que les termes linaires en h : Df (M ).h = M h + hM
1 2

i.e. si x

et x

sont deux normes, il existe c1 , c2 R+ telles que c1 x


1

c2 x

Mathmatiques 2

10

Optimisation

Lespace V tant de dimension nie, toutes les normes sont quivalentes, et, compte tenu de la remarque ci-dessus, on utilise la norme M qui vrie h2

= sup
x

Mx x h2 h

2 .

On a (h) =

et donc (h)

h2 h

tend vers 0. Exemple 2 Soit u V = C([0, 1]) muni de la norme u

et
1

F (u) =
0

u(x)4 dx 4
1 0

Il vient, si h V F (u + h) =
0

(u + h)4 dx = 4

u4 + u3 h + ... dx 4
;

o les termes suivants sont dordre suprieur et tendent vers 0 plus vite que h de la diffrentielle
1

do lexpression

DF (u).h =
0

u3 h dx

Nous verrons plus loin comment calculer la diffrentielle dans des situations plus compliques. Diffrentielle au sens de Gteaux Une forme plus faible de diffrentielle, suggre par la proposition (1), est souvent sufsante pour les applications : Dnition 2 Une fonction F (x) de V dans R est une fonction diffrentiable au sens de Gateaux en x V si il existe une forme linaire continue sur V , note Df (x), telle que h V d f (x + h)|=0 = Df (x).h d (1.1)

Intuitivement (pour une fonction) cela signie que le graphe de f admet une tangente dans chaque direction et que toutes les tangentes sont coplanaires ou encore que la drive g (0) de la fonction g(t) = f (x + th), t R est dnie dans chaque direction h et que cette drive est une application linaire par rapport h . Une fonction diffrentiable au sens de Frchet est diffrentiable au sens de Gateaux, linverse nest pas toujours vrai. Noter que (1.1) ramne le calcul dune diffrentielle celui de la drive dune fonction dune variable. ECP 2006-2007 10

CHAPITRE 1. INTRODUCTION AU CALCUL DIFFRENTIEL Application drive

11

Dnition 3 Une fonction f (x) est continment diffrentiable ou de classe C 1 , si f (x) est diffrentiable au sens de Frchet en tout point x V et si lapplication x Df (x) est continue 2 . Si f (x) une fonction de V dans W diffrentiable en tout point, on dnit lapplication drive comme une application de V dans lensemble des applications linaires continues de V dans W par f (x) = Df (x). Si F (x) est une fonction de V dans R, et si le gradient existe en tous points, par abus de langage on crira parfois F (x) = F (x), lapplication drive devient ainsi une application de V dans V . On retrouve une fonction partir de sa drive par intgration sur un chemin : Proposition 2 Pour tout chemin x(t), 0 t 1 dni dans V
1

F (x(1)) = F (x(0)) +
0

F (x).x (t) dt

Cela rsulte par intgration de la formule F (x(t)) = DF (x(t)).x (t) Formulaire Pour calculer une diffrentielle on appliquera la formule (1.1) pour se ramener une fonction dune variable et les rgles ci-dessous, qui sont des consquences immdiates de (1.1) et des proprits de la drive dune fonction dune variable. Si f et g sont des applications de V dans W D(f + g)(x) = Df (x) + Dg(x) Si g est une application de W dans Z D(g f )(x) = Dg(f (x)) Df (x) Df 1 (y) = (Df (f 1 (y))1 Si f et g sont des applications de V dans W et (., .) une application bilinaire sur W D(f (x), g(x)).h = (Df (x).h, g(x)) + (f (x), Dg(x).h) Dans le cas de fonctions valeurs dans R on a donc en particulier la rgle de Leibnitz D(F (x)G(x)).h = G(x)DF (x).h + F (x)DG(x).h et si F (x) = 0 D( On en dduit en particulier le
2

1 DF (x).h ).h = F (x) F 2 (x)

La diffrentielle est une application linaire continue de V dans W , on dnit sa norme par Df (x) = sup(
x

Df (x).h ) h la continuit de lapplication x Df (x) est dnie par rapport cette norme

11

Mathmatiques 2

12

Optimisation

Thorme 1 Lensemble des fonctions diffrentiables (au sens de Gateaux ou de Frchet) est stable par addition, multiplication, composition. Gradient et drives partielles Soit V un espace de dimension nie et un produit scalaire not x, y , et soit F une fonction de V dans R diffrentiable en x. Il existe alors un vecteur, le gradient, not F (x), tel que DF (x).h = F (x), h

Le gradient dpend du produit scalaire choisi. Si V = Rn et si le produit scalaire est le produit scalaire canonique, on retrouve la dnition usuelle du gradient F (x) = ( F F F t , ..., , ..., ) x1 xi xn

Rappelons que, intuitivement, le gradient dnit la direction de plus grande pente, et que cette direction est perpendiculaire la surface quipotentielle F (x) = Cte. On peut tendre cette dnition au cas o V est un espace de Hilbert. Plus gnralement , si V est un espace de fonctions continues u(x) et si il existe une fonction g telle que DF (u).h = nous crirons que F (u) = g. Remarque : dans ce cas on appelle parfois la fonction alors F (u) . u Matrice jacobienne et Hessien dune fonction Dnition 4 Si V = W = Rn la diffrentielle Df (x) est une application linaire sur Rn reprsente donc par une matrice Jf (x), appele matrice jacobienne, de coefcients Jf (x)i,j = fi (x1 , ..., xn ) xj ghdx

F (u) la drive fonctionnelle de F (u), note

Soit V = Rn et F (x) une fonction diffrentiable en tout point. Si f (x) = F (x) = F (x) est une application diffrentiable de Rn dans Rn (nous dirons que F (x) est deux fois diffrentiable), nous admettrons (lemme de Schwartz) que la matrice jacobienne Jf (x) est symtrique par rapport au produit scalaire canonique. Dnition 5 On appelle Hessien de la fonction F (x), que nous noterons HF (x) la matrice symtrique HF (x) = JF (x) de coefcients HF (x)i,j = 2 F (x) xi xj

ECP 2006-2007

12

CHAPITRE 1. INTRODUCTION AU CALCUL DIFFRENTIEL

13

Le Hessien de la fonction F (x), suppose deux fois diffrentiable, permet de calculer la drive seconde dans toute les directions d2 F (x + h)=0 = HF (x)h, h d2 Proposition 3 Une fonction F (x) deux fois diffrentiable, admet un dveloppement limit au second ordre 1 h V F (x + h) = F (x) + F (x), h + HF (x)h, h + (h) h 2 2 o limh0 (h) = 0.

1.1.2

Exemples et applications lmentaires de diffrentielles

Fonctions quadratiques Soit V = Rn , A une matrice, de dimension n, symtrique dnie positive 3 , b Rn . Soit F (x) = 1 Ax, x b, x , nous allons montrer que 2 DF (x).h = Ax b, h et, pour le produit scalaire canonique F (x) = Ax b Le plus simple est de calculer directement lexpression h V DF (x).h = d F (x + h)|=0 dt

1 On dveloppe en et on garde le coefcient dordre 1 en , soit 2 ( Ax, h + Ah, x ) b, h et, compte tenu de la symtrie de A, Ax, h b, h , do

DF (x).h = Ax b, h La fonction drive est donc F (x) = qui est une application de Rn dans Rn . F (x) = Ax b On en dduit

F (x + h) F (x) = Ah et donc, par dnition, la matrice jacobienne de F (x) qui est aussi le hessien de F (x) JF (x) = HF (x) = A Les points pour lesquels DF (x) = 0 sont donc solution de Ax = b. Si la matrice A est symtrique dnie positive4 lextrmum est unique car le systme a alors au plus une solution et cest un minimum
3 4

i.e. x = 0 Rn Ax, x 0 i.e. x = 0 Ax, x 0

13

Mathmatiques 2

14

Optimisation

local daprs le thorme (2). En fait cest un minimum global comme nous le verrons dans le chapitre 2. La rsolution dun systme linaire matrice symtrique dnie positive Ax = b est donc quivalente la recherche de la solution du problme doptimisation min n 1 Ax, x b, x 2

xR

Nous tudierons dans le chapitre 3 des mthodes doptimisation bien adaptes ce problme. Fonctions vectorielles Soit V = W = Rn et lapplication de V dans W dnie par f (x) = Ax + x3 , o A est une matrice. Soit (x) la matrice diagonale telle que i,i = 3x2 . i Df (x).h = d f (x + th)|t=0 = Ah + h = (A + (x))h dt

On en dduit que la matrice jacobienne de f au point x est Jf (x) = A + (x) Quotient de Rayleigh Soit V = Rn , A une matrice symtrique de dimension n, b Rn . Soit < Ax, x > F (x) = < x, x > Calculons DF (x). On utilise cette fois les rgles de calcul ; avec un peu dhabitude on peut calculer directement avec les diffrentielles, mais lobjet diffrentielle est une application linaire qui nest pas toujours facile reprsenter (comment noter une application linaire entre matrices ?), il est donc prudent de toujours appliquer la diffrentielle un vecteur pour ne manipuler que des objets tels que DF (x).h qui sont du mme type que F (x) : si F (x) est un rel, cest un rel, si F (x) est une matrice, cest une matrice ... 1 < Ax, x > DF (x).h = D < Ax, x > .h D < x, x > .h < x, x > < x, x >2 soit encore DF (x).h = 2 et, en arrangeant DF (x).h = 2 < ECP 2006-2007 < x, x > Ax < Ax, x > x ,h > < x, x >2 14 1 < Ax, x > < Ax, h > 2 < x, h > < x, x > < x, x >2

CHAPITRE 1. INTRODUCTION AU CALCUL DIFFRENTIEL et donc F (x) = 2

15

< x, x > Ax < Ax, x > x < x, x >2

Quels sont les points pour lesquels DF (x) = 0 ? Ce sont les points pour lequel le gradient est nul, cest dire Ax = < Ax, x > x < x, x >

Ce sont donc des vecteurs propres. Application (le "quotient de Rayleigh") : on peut en en dduire que la formule = < Av, v > < v, v >

permet le calcul de la valeur propre 1 associe un vecteur propre v1 avec une erreur au second ordre par rapport v, si on suppose que v est une approximation de v1 . On pose v = v1 + h, on a = 1 + DF (v1 ).h + Or DF (v1 ) = 0 do le rsultat |1 | Cte h
2 2

1 < HF (v1 )h, h > +O(|h|3 ) 2

1.1.3

Thormes fondamentaux

Caractrisation des extrmums Soit F (x) une fonction de V dans R. On note Br (x) la boule de centre x et de rayon r. Un point x est un minimum local si r y Br (x) F (x) F (y) Thorme 2 Si x V est un minimum local de F (x) alors Df (x) = 0. Si V = Rn le Hessien est semi-dni positif5 . Rciproquement, si V = Rn : si DF (x) = 0 et si il existe une boule Br (x) telle que le Hessien est semi-dni positif, alors x est un minimum local. Voir les exercices pour des exemples. Caractrisation des applications qui sont des gradients Thorme 3 Soit V = Rn . Soit f est une application C 1 de V dans V . Il existe une fonction (dite potentielle) F (x), dnie une constante prs, telle que f (x) = F (x) si et seulement si la
5

i.e. h V, HF (x)h, h 0.

15

Mathmatiques 2

16 matrice jacobienne Jf (x) est symtrique. On a alors pour tout chemin x(t), 0 t 1 dni dans V
1

Optimisation

F (x(1)) = F (x(0)) +
0

f (x(t)), x (t) dt

La condition est ncessaire puisque Jf (x) = HF (x), qui est une matrice symtrique. Pour la rciproque on montre que lintgrale ne dpend que de lorigine et de lextrmit du chemin si et seulement Jf (x) est symtrique, ce qui rend donc la dnition de la fonction F (x) cohrente. Si n = 3 on peut considrer que lapplication f (x) dnit un vecteur au point x R3 , la nullit de la partie antisymtrique de Jf (x) quivaut la nullit du rotationnel du champ de vecteur f (x), on retrouve une condition bien connue en physique sur lexistence dun potentiel (pour un champ lectrique par exemple) si le rotationnel du champ de vecteurs est nul. La solution dun systme dquations qui scrit f (x) = 0 est donc un point stationnaire dune fonction potentielle si la matrice Jf (x) est symtrique. Lexistence de principes du minimum dans la plupart des thories physiques explique pourquoi des quations dquilibres crites sous la forme dun systme f (x) = 0 sont associes des matrices Jf (x) symtriques ( si elles sont correctement crites ! Car la symtrie dun systme se perd si on permute ou combine deux quations). Thorme de lapplication ouverte Thorme 4 Soit V et W deux espaces de Banach. Si f est une application C 1 de V dans W et si Df (x0 ) est surjective alors il existe une boule B (f (x0 )) autour de f (x0 ), telle que B (f (x0 )) f (V ) Ce rsultat, que nous utiliserons ultrieurement, implique que si lensemble image f (V ) ne recouvre pas W , le point f (x0 ) ne peut pas tre sur la frontire de f (V ). Thorme de linverse local Thorme 5 Soit V et W deux espaces de Banach. Si f est une application C 1 de V dans W et si Df (x0 ) est inversible alors il existe une boule B (f (x0 )) autour de f (x0 ), une fonction g(y) dnie sur B (f (x0 )) et une boule Br (x0 ) autour de x0 telles que x Br (x0 ) g(f (x)) = x En particulier ce thorme implique que si Df (x0 ) est inversible et si f (x0 ) = 0 lquation f (x) = b admet une solution (proche de x0 ) si b est petit, cest donc un thorme dexistence locale dune solution dun systme dquations non linaires quand le systme linaris admet une solution unique. Par exemple, si A est une matrice inversible et V = W = Rn , le systme non linaire f (x) = Ax + x3 = b admet (au moins) une solution si b est petit car la diffrentielle Df (0) = A est inversible. ECP 2006-2007 16

CHAPITRE 1. INTRODUCTION AU CALCUL DIFFRENTIEL Thorme des fonctions implicites

17

Thorme 6 Soit V , W , Z trois espaces de Banach. Soit f est une application C 1 de V W dans Z et on suppose quil existe un couple (x0 , y0 ) tel que f (x0 , y0 ) = 0. Si Dy f (x, y) est injective alors il existe une boule Br (x0 ) autour de x0 , une fonction g(x) de Br (x0 ) dans W telles que x Br (x0 ) f (x, g(x)) = 0 Par exemple, en prenant W = Z = Rn , V = Rp ce thorme montre que les solutions dun systme non linaire de n quations en y f (1 , . . . , p , y) = 0 sont localement des fonctions des paramtres (1 , . . . , p , y) si les vecteurs yi f (1 , . . . , p , y) sont indpendants.

1.1.4

Applications

Diffrentielle dune valeur propre comme fonction de la matrice Soit V = Rn , A une matrice symtrique de dimension n. On peut considrer une valeur propre (par exemple la ime ) comme une fonction (A) de la matrice A. Soit v(A) le vecteur propre associ. Montrons que d(A).B = v(A)t Bv(A) v(A)t v(A)

Cette formule permet de calculer la sensibilit dune frquence propre dune structure par rapport des paramtres de la structure, par exemple la sensibilit dune frquence propre de la caisse dune voiture par rapport lpaisseur des tles ou la sensibilit dune frquence propre de vibration dun treillis par rapport la variation des sections des barres. On part de la dnition de la valeur propre et du vecteur propre Av(A) = (A)v(A) et donc R (A + B)v(A + B) = (A + B)v(A + B) On drive par rapport et on fait = 0 Bv(A) + A(Dv(A).B) = D(A).Bv(A) + (A)(Dv(A).B) et on multiplie droite par v(A)t v(A)t Bv(A) + v(A)t A(Dv(A).B) = D(A).Bv(A)t v(A) + (A)v(A)t (Dv(A).B) Mais v(A)t A = (A)v(A)t donc les deux termes de droite de chaque membre sliminent et il vient v(A)t Bv(A) = D(A).Bv(A)t v(A) do le rsultat demand. 17 Mathmatiques 2

18 Systmes non linaires et optimisation Considrons un systme non linaire de n quations n inconnues f (x) = 0 deni par une application f (x) de Rn dans lui mme.

Optimisation

Ltude gnrale de lexistence et du nombre des solutions dun tel systme est un problme difcile, il nexiste pas, comme pour les systmes linaires, de critre dexistence. Mais si il existe une fonction potentielle F (x) telle que f (x) = F (x)

les solutions du systme sont les points stationnaires de F (x). Or ltude de la fonction F (x) permet sous certaines conditions dafrmer lexistence dau moins une solution, son ventuel unicit ou la prsence dun nombre minimal de solutions. Pour lexistence on utilisera la proposition Proposition 4 Si F (x) tend vers + quand x tend vers linni alors F (x) admet au moins un minimum et le systme f (x) = 0 admet donc au moins une solution. Nous verrons au chapitre 2 que si la fonction F (x) est strictement convexe ce minimum est unique. Des conditions supplmentaires permettent dafrmer lexistence de plusieurs points stationnaires de F (x).

Un minimum 200 200

Un point col, deux minimums

180

180

160

160 Min

140

140

120

120 Col

100

Min

100

80

80

60

60

Min

40

40

20

20

20

40

60

80

100

120

140

160

180

200

20

40

60

80

100

120

140

160

180

200

F IG . 1.1 Equipotentielle de F(x) : gauche 2 < 1 < , droite 2 < < 1

Exemple dtude dun systmes non linaire Considrons, en passant informellement sur les dtails, un exemple avec n = 2 et f (x) = Ax + x + x3 = 0 ECP 2006-2007 18 (1.2)

CHAPITRE 1. INTRODUCTION AU CALCUL DIFFRENTIEL

19

o A est une matrice symtrique dnie positive, de valeurs propres 0 < 1 < 2 , une constante. Ce systme admet une solution triviale x = 0. On vrie que, si F (x) = on a f (x) = F (x) 1 (A + Id)x, x + 2 x4 j 4

Si > 1 alors la matrice A + Id toutes ses valeurs propres positives et est donc dnie positive. La fonction F (x) tend vers linni linni, elle admet donc un minimum. Or le hessien de F (x) en 0 est HF (0) = A + Id Le point 0 est donc un minimum local de F (x), nous verrons au chapitre 2 que cest le seul car la fonction F (x) est dans ce cas strictement convexe, voir la gure (1.1). Le systme (1.2) admet une seule solution. Si 2 < < 1 , voir la gure (1.1), le point 0 nest plus un minimum mais un col car HF (0) = A + Id a alors une valeur propre ngative. La fonction F (x) tend vers linni linni car le terme j 4j est dominant. Il existe donc x1 = 0 qui ralise le minimum de F (x), mais comme F (x) est pair (F (x) = F (x)) le point x2 = x1 est aussi minimum. Ce qui fait donc 3 solutions 0, x1 , x2 pour le systme (1.2).
x4

Deux minimums, deux cols, un maximum 200 200

Deux minimums, deux maximums, 4 cols

180 Min 160

180 Min Min Col

160

140 Col 120 Max

140

120

100

100 Max

80 Col 60

80 Col

60

40 Min 20

40 Min 20

Min

20

40

60

80

100

120

140

160

180

200

20

40

60

80

100

120

140

160

180

200

F IG . 1.2 Equipotentielle de F(x) : gauche < 2 < 1 , droite < 22 Si < 2 < 1 , avec proche de 2 , voir la gure (1.2), le point 0 est alors un maximum local car le Hessien HF (0) = A + Id est alors dni ngatif. La fonction F (x) tend vers linni linni car le terme
x4 j j 4

est toujours dominant. Ce qui fait dj trois solutions 0, x1 , x2 pour le 19 Mathmatiques 2

20

Optimisation

systme (1.2). Mais, intuitivement6 , entre les deux minimum il existe un points col x3 , qui ne peut ici tre 0 car cest un maximum local. Par symtrie, il existe donc un autre points col x4 = x3 , ce qui fait pour le systme (1.2) 5 solutions 0, x1 , x2 , x3 , x4 ! Si < 2 < 1 , avec proche de 42 , voir la gure (1.2), la point 0 reste un maximum local, on observe, sans le montrer, quil y quatre minimums et quatre points col, ce qui fait 9 solutions en tout pour le systme (1.2). La situation ne change pas pour des valeurs infrieurs de car les abscisses et les ordonnes des solutions sont solutions dune quation algbrique de degr 9. Voir ci-dessous lexercice sur ltude du ambement dun treillis de barres pour une application analogue mais plus concrte et le paragraphe sur le calcul des variations pour une application analogue dans le cas ltude dun problme diffrentiel. Les principes nergtiques en mcanique appliques ltude dun treillis de barres Dans ce paragraphe nous interprtons lquivalence des diffrents principes mcaniques utiliss pour tudier une structure laide du calcul diffrentiel. Voir le cours de mcanique des milieux continus pour une prsentation complte des principes nergtiques en mcanique. Nous nous limitons ltude dun treillis de barres. La position dun treillis de barres est dnie par un vecteur U R3n reprsentant les trois composantes des dplacements des n nouds (ce qui fait donc 3n paramtres). On note J(U) lnergie potentielle totale dun treillis de barres dont la position est dnie par U. Par dnition J(U) = W (U) V (U) o W (U) est lnergie interne de dformation des barres et V (U) le potentiel des efforts appliqus aux nuds. Sous lhypothse dun comportement lastique linaire des barres et de petites dformations lnergie interne scrit 1 W (U) = KU, U 2 o K est une matrice symtrique dnie positive et, si les efforts sont constants et dnis par un vecteur F le potentiel est le travail des forces appliques au treillis V (U) = F, U La diffrentielle de lnergie DJ(U).V = KU F, V est le travail de lensemble des efforts appliqus aux nouds pour un (physiquement petit) dplacement V. Le gradient de lnergie J(U) = KU F
Ce point est un peu dlicat montrer. On notera que si on monte dun minimum vers le col et si on redescend vers lautre minimum on dnit un chemin allant dun minimum lautre dont le point le plus lev est le col et que, parmi tous les chemins allant dun minimum lautre, laltitude la plus leve sur ces chemins est suprieure celle du col. En considrant parmi les chemins allant dun minimum lautre un chemin dont laltitude la plus leve est minimum, on montre que ce chemin passe ncessairement par un col !
6

ECP 2006-2007

20

CHAPITRE 1. INTRODUCTION AU CALCUL DIFFRENTIEL

21

est un vecteur dont une composante est la projection sur un axe de la rsultante de tous les efforts appliqus en un noud pour une position dnie par le vecteur U. Daprs le thorme de lnergie potentielle totale : la position dquilibre du treillis est un minimum de lnergie potentielle totale. On en dduit, en crivant que la diffrentielle de lnergie est nulle, le principe des travaux virtuels : si le treillis est en quilibre, le travail des efforts appliqus au treillis est nul pour tout dplacement. On en dduit enn que le gradient de la fonction nergie est nul et on obtient ainsi les quations dquilibre du treillis J(U) = KU F = 0 i.e. que la somme des efforts internes et externes appliqus sur un noud est nulle. Plus gnralement, si les barres ont un comportement non linaire, et si on dnit dabord les efforts internes, on pose que la structure est en quilibre si le vecteur f (U), qui reprsente la somme des efforts appliqus sur chaque noud, est nul ; le travail pour un petit dplacement U des nouds est alors f (U), U et donc le travail total des efforts appliqus pour un chemin de dformation U(t), avec 0 t 1 est
1

f (U(t)), U (t) dt
0

Si le travail total sur un chemin ne dpend pas du chemin parcouru, alors il existe une fonction potentielle
1

J(U) =
0

f (U(t)), U (t) dt

(o U(0) = U0 est une position de rfrence et U(1) = U), qui sinterprte comme lnergie potentielle du systme et qui est telle que J(U) = f (U), cest le cas de llasticit non linaire et des grandes dformations. Noter que le travail est indpendant du chemin parcouru si la matrice jacobienne Jf (U) est symtrique, daprs (3). Lquivalence des trois principes classiques de la mcanique du solide nest donc quune application des thormes de calcul diffrentiel. Le calcul des variations On appelle traditionnellement calcul des variations le calcul des diffrentielles de fonctions J (v) dnies par des intgrales dune fonction v(x) et de ses drives. Nous allons en voir quelques exemples. Soit V0 lespace des fonctions de C 1 ([0, 1]) telle que v(0) = v(1) = 0 et g(x, y, t) C 1 (R3 ). On dnit sur V0 la fonction
L

J (u) =
0

g(x, u(x), u (x)) dx

(1.3)

Calculons DJ (u). DJ (u).v = d d J (u + tv)|t = 0 = ( dt dt 21


L

g(x, u + tv, u + tv ) dx)|t=0


0

Mathmatiques 2

22 On drive sous le signe somme


L

Optimisation

DJ (u).v =
0

g g (x, u, u )v + (x, , u, u )v dx u u

Calculons J (u). Ajoutons des hypothses de rgularit sur la fonction g et sur u : u, g C 2 . Il vient en intgrant par partie le terme v et en tenant compte de ce que le crochet est nul
L

DJ (u).v =
0

g d g (x, u, u ))v(x) dx (x, u, u ) u dx u

(1.4)

et, en introduisant le produit scalaire de L2 ([0, L]) DJ (u).v = g d g (x, u, u ) + (x, u, u ), v dx u u (1.5)

Do le rsultat, avec les prcautions dusage sur la notion de gradient, et en noubliant pas que u V0 , d g g J (u) = (x, u, u ) + (x, u, u ) (1.6) dx u u On en dduit quun extrmum de la fonction J (v) vrie lquation dEuler Application des fonctions usuelles Soit p > 1 et V = Lp ([0, 1])
1

d g g ( )+ =0 dx u u

(1.7)

J(u) =
0

1 p |u| dx p

il vient, en refaisant directement le calcul DJ(u).v = d J(u + v)|=0 = d


1

|u|p2 uv dx = |u|p2 u, v
0

donc J(u) = |u|p2 u Soit V = u / u C 2 (([0, 1]), u(0) = u(1) = 0 et J(u) =


R

1 2 u dx 2

il vient, en refaisant directement le calcul DJ(u).v = ECP 2006-2007 d J(u + v)|=0 = d 22


1

u v dx = u , v
0

CHAPITRE 1. INTRODUCTION AU CALCUL DIFFRENTIEL

23

donc J(u) = u Soit V = u / u C 2 (([0, 1]), u(0) = u(1) = 0 et


1

(1.8)

J (u) =
0

1 1 u (x)2 + v(x)2 f (x)u(x) dx 2 2

on a en utilisant les notations et les rsultats tablis ci-dessus 1 1 g(x, u, u ) = u (x)2 + v(x)2 f (x)u(x) 2 2 et donc ( et ( do J (u) = d g g ( )+ = u + u f dx u u (1.11) g )=uf u (1.10) g )=u u (1.9)

et donc, si u est un minimum de J (v) sur V0 u + u = f u(0) = u(1) = 0 Nous verrons dans la sance suivante pourquoi ce minimum est unique. Un exemple classique du calcul des variations : formalisme Lagrangien en mcanique On tudie la trajectoire dune particule de masse m dans un champ de force Newtonien (i.e. acclration centrale en r12 ). Notations : 1 variable : le temps t [0, T ] 3 fonctions inconnues : les coordonnes dun point matriel. u = u(t) avec u(t) = (u1 (t), u2 (t), u3 (t)) R3 M V (u) est le potentiel dont drive le champ de force (i.e. V (u) = u 2 pour un champ de force
M u newtonien F (u) = V (u) = u 2 u 2 associ une masse centrale M ). 2 Le lagrangien du problme pour une particule de masse m dans le champ dni par le potentiel V (u) est par dnition :

(1.12) (1.13)

1 h(t, u, u ) = m u , u V (u) 2 23 Mathmatiques 2

24

Optimisation

Daprs le principe de Hamilton-Lagrange, la trajectoire de la particule est un extrmum de lintgrale daction Lagrangienne
1

J (u) =
0

h(t, u(t), u (t)) dt

parmi toutes les trajectoires de mme origine u(0) et de mme extrmit u(t). Cest donc un extrmum par rapport chacune des fonction u1 , u2 , u3 . En crivant les quations dEuler (1.7) pour chacune des fonction u1 , u2 , u3 , on obtient les quations dEuler-Lagrange : Pour i = 1, 3 do Pour i = 1, 3 mui (t) + V (u) = 0 ui (1.15) h h =0 ( )+ t ui ui (1.14)

Si on dnit le champ de forces F (u) = V (u), on retrouve la formulation de la dynamique de Newton : mu (t) = F (u) (1.16)

1.2
1.2.1

Exercices corrigs
Quelques applications au calcul matriciel

Diffrentielle de lapplication inverse Soit V = Mn (R) lespace des matrices relles de dimension n. Soit f lapplication de V dans V dnie par f (A) = A1 et h V , montrons que, pour tout B V Df (A).B = A1 BA1 Dm. : Le point de dpart du calcul est la dnition de linverse f (A)A = Id ; le produit de deux matrices est bilinaire, on peut donc utiliser la rgle de calcul B Mn (R), D(f (A)g(A)).B = (Df (A).B)g(A) + f (A)(Dg(A).B) donc ici, g(A) = A D(f (A)A).B = (Df (A).B)A + f (A)B Or f (A)A = Id (i.e. lapplication A f (A)A est lapplication constante qui A associe lidentit Id), donc D(f (A)A) = 0 et Df (A).B = f (A)BA1 = A1 BA1 ECP 2006-2007 24

CHAPITRE 1. INTRODUCTION AU CALCUL DIFFRENTIEL Diffrentielle de lapplication similitude

25

SoitV = Mn (R), M V et f lapplication de V dans R dnie par f (A) = A1 MA et B V , montrons que Df (A).B = A1 Bf (A) + f (A)A1 B Dm. : On utilise la bilinarit du produit et le rsultat prcdent Df (A).B = (A1 BA1 )MA + A1 MB Soit, en arrangeant le rsultat et en notant [A, B] = AB BA Df (A).B = [f (A), A1 B] notamment la diffrentielle calcule au point A = Id (on a alors f (Id) = M) est Df (Id).B = [M, B] Diffrentielle du dterminant SoitV = Mn (R). On considre la fonction F (A) = detA Proposition 5 Si B V DF (A).B = det(A)tr(A1 B) Dmontrons dabord le cas particulier A = Id d det(Id + tB)|t=0 = tr(B) dt Il suft de dterminer le coefcient de t dans le dveloppement du dterminant. On crit par exemple 1 det(Id + tB) = tn det( Id + B) t Or en utilisant une proprit classique du polynme caractristique det(B Id) de B, le coefcient de n1 = ( 1 )n1 est tr(B), le coefcient de t dans le polynme en t det(Id + tB) est donc t tr(B), do le rsultat. Il vient, dans le cas gnral DF (A).B = d det(A + tB)|t=0 = det(A det(Id + tA1 B)|t=0 = det(A)tr(A1 B) dt 25 Mathmatiques 2

26 Une caractrisation de la plus petite valeur propre

Optimisation

Soit A une matrice symtrique dnie positive de dimension n . On considre sur Rn la fonction F (x) = 1 Ax, x x 2
2

avec x 2 = x, x . Cette fonction tend vers + linni car la partie quadratique, qui est dnie positive, est dominante. Elle admet donc au moins un minimum sur Rn (a priori deux minimums opposs puisque F (x) = F (x)). Montrons dabord la proposition Proposition 6 Les extrmums de F (x) sont des vecteurs propres v de A, normaliss par v o est la valeur propre associe v. Dm : Soit h Rn . Calculons DF (v).h, o DF (v) est la diffrentielle, et le gradient On a, en utilisant directement la formule (1.1) DF (v).h = Ax, h et donc F (x) = Ax x x, x x, h x, x
2 1 = ,

F (x).

Un extrmum de F (x) est un point o le gradient est nul, il vrie donc x Ax = x, x cest donc un vecteur propre associ la valeur propre = 1 x Dautre part le Hessien de F (x) est HF (x) = A 1 xxt Id + x 2 x 3 2
2 x,x

1 x

et donc

o Id est la matrice identit et x est ici considr comme une matrice (n, 1), xxt est donc la matrice de coefcients xi xj . En effet si nous posons f (x) = F (x) = Ax x , on a par dnition du hessien, qui est la
x,x

matrice jacobienne de f (x), que nous dduisons du calcul de la diffrentielle de lapplication f (x) HF (x).h = d f (x + th)|t=0 = Ah dt 1 x, x Id + h x, x + x x, h x 3 2

HF (x).h = (A

1 xxt )h x 3 2

do le rsultat (mais le lecteur peut prfrer calculer les drives partielles seconde de F (x) !). Soit 1 < ...i ... n les valeurs propres de A. Montrons la proposition ECP 2006-2007 26

CHAPITRE 1. INTRODUCTION AU CALCUL DIFFRENTIEL

27

Proposition 7 Le vecteur propre v1 associ la plus petite valeur propre 1 de A, normalis (au 1 signe prs) par v1 2 = 1 est un minimum pour F (x). Dm : Il suft de montrer que le hessien HF (v1 ) est dni positif, en montrant quil a toutes ses valeurs propres positives. Nous allons montrer que la matrice HF (v1 ) a les mmes vecteurs propres que A avec des valeurs propres positives, en effet
t HF (v1 )vi = Avi 1 vi + 3 v1 v1 vi 1 t Si i = 1 on a v1 vi = 0 puisque deux vecteurs propres associs des valeurs propres distinctes dune matrice symtrique sont orthogonaux, donc

HF (v1 )vi = i vi 1 vi vi est donc un vecteur propre de HF (v1 et la valeur propre associe est i 1 > 0. Si i = 1 t t HF (v1 )v1 = Av1 1 v1 + 3 v1 v1 v1 = 3 v1 v1 v1 = 1 v1 1 1 ici encore la valeur propre est positive. En tudiant le Hessien HF (vi ) pour i = 1 on vrierait de la mme manire quil nest pas dni positif et donc que le minimum absolu de F (x) est atteint en v1 . Cette caractrisation de la plus petite valeur propre permet de dnir un algorithme trs efcace de calcul en appliquant une mthode doptimisation (cf. chapitre 3) la recherche du minimum de la fonction F (x).

1.2.2

Une application non triviale : tude du ambement dune structure

Le ambement ou ambage est un des risques majeurs des structures lances comme les grues ou les pylnes. Cest une proprit des solides soumis des efforts intenses du fait de la non linarit fondamentale des quations de llasticit (non linarit gomtrique). Nous allons tudier la situation trs simple dune poutre comprime dont on sait que le comportement en exion peut tre reprsent de faon approximative par un systme de barres relies par des rotules. Ce problme a de nombreuses extensions dans tous les domaines, en mathmatiques cest un cas particulier de la thorie des bifurcations. quations dquilibre On considre un systme de n barres relies par des rotules et des ressorts spirales (g. 1.3) entre elles et aux deux extrmits A et B. Le nud B est x, le nud A peut glisser verticalement comme horizontalement. On exerce une force F sur le nud A, dirige verticalement, et on suppose que la dformation du systme se fait dans un plan vertical7 . Toutes les barres ont la longueur L. Tous les ressorts spirales ont une raideur k (i.e. le ressort soumis une rotation dangle exerce un couple C = k). On note i langle de la barre i avec la verticale. On paramtre la position de la structure par les angles i et on note x = (1 , . . . , i , . . . , n )t le
7

Certaines de nos hypothses sont peu naturelles mais simplient lexpos...

27

Mathmatiques 2

28

Optimisation

F A 1 1 2

n 1

n1

n B n.

F IG . 1.3 Systme de n barres articules vecteur qui reprsente la position de la structure. Les quations dquilibre scrivent kAx = F L sin x o nous avons not sin x le vecteur sin x = (sin 1 , . . . , sin i , . . . , sin n )t et 2, 1, 0, ..., ..., 0 1, 2, 1, 0, ..., 0 A = ..., ..., ..., ..., ..., ... 0, ..., 0, 1, 2, 1 0, ..., ..., 0, 1, 2 (1.17)

(i.e. Ai,i = 2, Ai,j = 1 si |i j| = 1, Ai,j = 0 si |i j| > 1) Dm. : Si on crit les quations dquilibre des forces exerces sur chaque barre, en projetant sur laxe vertical, on obtient que chaque barre est soumise sur ses deux extrmits la force F (resp. F ). On crit lquilibre des moments en une extrmit i la barre i (i = 2, ..., n 1) (Deux couples dus ECP 2006-2007 28

CHAPITRE 1. INTRODUCTION AU CALCUL DIFFRENTIEL aux ressorts, et une force F en i + 1), il vient k(i+1 i ) k(i i1 ) + F L sin i = 0 Les cas des deux extrmits se traitent de manire semblable. La matrice A est symtrique dnie positive et vrie
n

29

Ax, x = 2 + 1
i=2

(i i1 )2 + 2 n

Dm. : Il vient, par dnition, en ajoutant par convention 0 = n+1 = 0


n

Ax, x =
i=1

(k(i+1 i ) + k(i i1 ))i

do le rsultat, en dveloppant la somme et en rarrangeant les termes carrs 2 et produits i i1 i pour faire apparatre (i i1 )2 . Soit G(x) la fonction dnie sur Rn par G(x) =
i

L(1 cos i )

et soit J (x) la fonction dnie sur Rn par J (x) = On a J (x) = kAx F G(x) = kAx (..., F L sin i , ...)t Dm. : La diffrentielle de k Ax, x a t calcule en cours, cest h kAx, h , son gradient est kAx. Le 2 gradient du second terme est calcul directement par les drives partielles G(x) = G = (..., L sin i , ...)t i k Ax, x F G(x) 2

Do le rsultat. On en dduit quune solution du systme (1.17) est un point stationnaire de J (x) (i.e. J (x) = 0). Les deux termes de la fonction J (x) sinterprtent dun point de vue mcanique. Le premier terme 2 est la somme des nergies de dformation de chaque ressort ((k 2 ), o est langle de rotation) cest donc lnergie interne de la structure dforme. Le deuxime terme est le travail de la force verticale F en partant de la position x = 0 puisque le point A se dplace dune hauteur i L(1 cos i ). J (x) est donc lnergie potentielle totale Uint W associe une dformation de la structure. Notons quil est trs facile de dterminer lexpression de lnergie en fonction des paramtres de la structure, ici les angles, et den driver ensuite les quations dquilibre : cest la meilleure faon, la plus automatique, dcrire les quations dquilibre. 29 Mathmatiques 2

30 tude de la stabilit de lquilibre

Optimisation

Mmes hypothses et notations que dans le paragraphe prcdent. Nous allons partiellement tablir le rsultat suivant Proposition 8 Il existe une valeur critique de la force Fc telle que si F Fc la seule position dquilibre est la position droite (x = 0) et si F > Fc la position droite est instable mais il existe deux positions stables chies. On a J (x) k1 x, x F
i

L(1 cos i ) k1 x, x 2nF L

do
x

lim J (x) = +

(Rappel : x Rn Ax, x 1 x, x car 1 est la plus petite valeur propre de A). Calculons le hessien HJ (x) de la fonction J (x). Le Hessien est la matrice des drives secondes et vrie HJ (x)h, h = d2 J (x + h)|=0 d2

Le Hessien du premier terme k Ax, x de J (x) est kA, tandis que celui du deuxime terme F G(x) = 2 F i L(1 cos i ) est obtenu par le calcul des drives partielles : soit D la matrice diagonale dont les termes diagonaux sont Di,i = L cos i , on a HG(x) = D Do le hessien de la fonction J (x) HJ (x) = kA F D(x) Montrons que si FkL < 1 , le Hessien HJ (x) est symtrique dni positif. Dm. : Si FkL < 1 on a, pour h Rn HJ (x)h, h = kAh, h F
i

Di,i h2 k1 h, h i
i

F (L cos i )h2 i

do, en majorant le cosinus par 1 HJ (x)h, h k1 h, h F L


i

h2 = (k1 F L) h, h 0 i

Do le caractre symtrique dni positif de HJ (x). La fonction J (x) est donc strictement convexe (cf. chapitre 2). Analyse de la position dquilibre Si FkL > 1 , le point x = 0 vrie les quations dquilibre, cest donc un point stationnaire de ECP 2006-2007 30

CHAPITRE 1. INTRODUCTION AU CALCUL DIFFRENTIEL

31

J (x). Comme le hessien est dni positif ce point stationnaire est un minimum local. En fait, comme J (x) est strictement convexe (cf. chapitre 2), ce point stationnaire est unique et cest un minimum global. Cest donc lunique point dquilibre de la structure et cet quilibre est stable. Si FkL > 1 , on choisit h = v 1 un vecteur propre associ la plus petite valeur propre 1 de A ; il vient au point x = 0 HJ (0)v 1 , v 1 = k1 v 1 , v 1 F
i 1 L(vi )2 = (k1 F L) v 1 , v 1 < 0

La drive seconde dans la direction v 1 au point x = 0 est donc strictement ngative, ce point nest donc pas un minimum. Comme la fonction (continue) J (x) tend vers linni linni elle admet toujours (au moins un ) minimum (en fait deux symtriques) qui nest pas x = 0. On en dduit la Proposition 9 On appelle valeur critique de la force applique la structure la force Fc = k1 L

Si F < F c lunique position dquilibre de la structure est la position verticale et elle est stable. SI F > F c la position droite est instable, il existe deux positions stables chies. Une tude plus ne permet de prciser les proprits de ce minimum (On montre que les angles sont tous positifs, ce qui correspond une exion rgulire vers la droite ou la gauche) et de mettre en vidence dautres valeurs critiques associes aux diffrentes valeurs propres de A partir desquelles apparaissent des positions dquilibre (instables, du moins au dbut) qui correspondent des exions de forme sinusodale. Ces positions dquilibre instables peuvent apparatre transitoirement si on applique brutalement la force F et que lon observe la dynamique du systme : cest la voiture qui scrase contre un mur. Noter que les donnes du problme montrent une symtrie par rapport un axe vertical et pourtant la position dquilibre est dissymtrique : cette brisure de symtrie est une des proprits caractristiques des phnomnes non linaires.

31

Mathmatiques 2

32

Optimisation

ECP 2006-2007

32

Chapitre 2

Fonctions convexes
Objectifs De mme que les espaces vectoriels permettent une interprtation gomtrique des problmes linaires, la convexit fournit une interprtation gomtrique de nombreux problmes non linaires. Les ensembles convexes dnissent un cadre gomtrique pour ltude des inquations tandis que les fonctions convexes forment le cadre naturel de loptimisation, et permettent dinterprter gomtriquement certaines quations non linaires. Nous rsumons dans cette sance les notions lmentaires sur les ensembles convexes et les fonctions convexes, les critres de convexit ainsi que quelques thormes classiques.

2.1

Ensembles convexes

Notations
On note V un espace vectoriel norm, x un point de V , F une fonction de V dans R. x, y = n i xi yi est le produit scalaire canonique de R .

2.1.1

Dnitions

Ensembles convexes Une partie C de V est convexe si pour tout couple de points x et y de C le segment [x, y] est entirement dans C, formellement : Dnition 6 Ensembles convexes Une partie C V est (un) convexe si x, y C, [0, 1] x + (1 )y C Noter que contrairement un usage gomtrique, ce nest pas la sphre qui est convexe mais la boule quelle dnit. Lintersection de deux convexes (et dune famille quelconque de convexes) est un convexe. Exemples : 33

34

Optimisation

Un demi-espace est un convexe. Le cne positif de Rn et, plus gnralement, un ensemble dni par un systme dinquations toutes dans le mme sens est un convexe. Les boules des espaces norms. Les matrices bistochastiques, i.e. : matrices A termes positifs ou nuls vriant en outre Ai,j = 1,
i j

Ai,j = 1

Dnition 7 Combinaison convexe On appelle combinaison convexe de n points xi V avec les poids i 0 tels que point x = i i xi .

i i

= 1 le

Remarque : dans Rn toute combinaison convexe de plus de n + 1 points est en fait une combinaison de n + 1 de ces points, cest un rsultat non trivial que nous admettrons. Dnition 8 Enveloppe convexe Lenveloppe convexe dune partie E V est le plus petit convexe contenant E. Cest aussi lensemble des combinaisons convexes des points de E. Si V = Rn les points de lenveloppe convexe sont combinaison convexe dau plus n + 1 points de E. Dnition 9 Polydre convexe On appelle polydre lintersection dun nombre ni de demi-espaces de Rn , i.e. lensemble des points vriant un systme dinquations linaires toutes dans le mme sens. Un polydre born est aussi lenveloppe convexe dun nombre ni de points, appels sommets (nous admettrons cette quivalence, non triviale). Les solutions dun systme de p inquations linaires n inconnues dnissent donc un polydre dans V = Rn . do limportance de la thorie des polydres pour loptimisation sous contraintes dingalit. Points extrmaux Dnition 10 Points extrmaux Un point x C dun convexe C est dit extrmal si il nest pas le milieu de deux points inclus dans C. Exemples : Tous les points du cercle bordant un disque. Les sommets dun polydre (i.e. on montre que les points extrmaux dun polydre dans Rn sont intersection dau moins n hyperplans frontires). Les points extrmaux de lensemble des matrices bistochastiques (voir ci-dessus) sont les matrices de permutation, i.e. les matrices formes de 0 et 1 qui ont un seul terme non nul sur chaque ligne et chaque colonne. Le rsultat suivant est essentiel pour loptimisation sous contraintes dingalit dune fonction linaire : Proposition 10 Le maximum dune forme linaire (ou plus gnralement dune fonction convexe) sur un convexe compact est atteint en au moins un point extrmal . ECP 2006-2007 34

CHAPITRE 2. FONCTIONS CONVEXES

35

(rsultat admis). En particulier le maximum dun fonction linaire sur un polydre born est atteint en un point sommet.

2.1.2

Quelques proprits gomtriques

Thormes de sparation Nous admettrons le rsultat suivant qui comporte de nombreuses extensions et variantes et qui prcise lide intuitive que deux convexes peuvent tre spars par un hyperplan. Thorme 7 Thorme de sparation 1 Soient A et B des convexes dun espace vectoriel norm V ; si A est dintrieur non vide et si int(A) B = il existe un hyperplan qui spare A et B, i.e. il existe une forme linaire continue L(x) telle que sup L(x) inf L(x)
xA xB

En particulier, si A est un convexe dintrieur non vide et x0 un point du bord de A, en prenant pour B lensemble rduit x0 il existe une forme linaire continue L(x) telle que sup L(x) L(x0 )
xA

ou autrement dit il existe un hyperplan qui passe par x0 et qui laisse le convexe A dun seul ct ; un tel hyperplan est appel un hyperplan dappui qui gnralise la notion dhyperplan tangent au bord dans le cas o le bors du convexe nest pas rgulier. Thorme 8 Thorme de sparation 2 Soient A et B des convexes ferms disjoints dun espace vectoriel norm V , si A est compact1 il existe un hyperplan qui spare strictement A et B, i.e. il existe une forme linaire continue L(x) et un rel c tels que sup L(x) < c < inf L(x)
xA xB

En particulier ce thorme est vrai si A est rduit un point x0 . Nous utiliserons ces thormes au chapitre 5. Thorme de Krein-Milman Nous admettrons les thormes suivants Thorme 9 Un convexe compact est lenveloppe convexe ferme de ses points extrmaux. Ce qui implique en particulier quun convexe compact a des points extrmaux... En dimension nie n on peut tre plus prcis, tous les points dun convexe compact sont combinaison convexe dau plus n + 1 points extrmaux. Un polydre born (dni ci-dessus comme une intersection dhyperplan) est donc lenveloppe convexe de ses sommets. .
Rappelons quun ensemble est compact si de toute suite borne de cet ensemble on peut extraire une sous-suite convergente, et que toutes les parties fermes et bornes dans Rn sont compactes.
1

35

Mathmatiques 2

36 Thorme de projection (cf. le cours de Mathmatiques 1)

Optimisation

Thorme 10 Si C est un convexe ferm dun espace de Hilbert, en particulier si V = Rn , alors pour tout point x V il existe un unique point P (x) C tel que2 y C x P (x) x y

x, x . On a not ici x = La projection est une opration contractante P (x) P (y) x y La projection dun point x = (x1 , . . . , xi , . . . , , xn ) sur le cne positif de Rn est le vecteur x+ = (x+ , . . . , x+ , . . . , , x+ ), o nous avons not x+ = sup(xi , 0) . n 1 i i On ne peut pas calculer aussi facilement la projection, pour la norme euclidienne, sur un convexe dni par un systme dinquations quelconques. Cest un cas particulier doptimisation quadratique que nous verrons au chapitre 4.

2.2
2.2.1

Fonctions convexes
Dnitions

On note C V un ensemble convexe. Dnition 11 Fonctions convexes x, y C, [0, 1] F (x + (1 )y) F (x) + (1 )F (y) Dnition 12 Fonctions strictement convexes x, y, x = y, C, ]0, 1[ F (x + (1 )y) < F (x) + (1 )F (y) Une fonction est (strictement) convexe si et seulement si sa restriction tout segment inclus dans C est (strictement) convexe : pour tablir la convexit on peut donc toujours se ramener une fonction dune variable. Si F (x) est convexe lensemble {x / F (x) c} est convexe (la rciproque est fausse). F (x) est convexe si son pigraphe {(x, r), x V, r R / r F (x)} est un convexe de V R (ce qui revient dire intuitivement que son graphe est le bord dun convexe).. Dnition 13 F est concave si F est convexe.
La rciproque, savoir quun ensemble sur lequel tout point admet une projection unique est convexe, est vraie en dimension nie, mais cest une conjecture (de plus de 50 ans) en dimension innie, avis aux amateurs !
2

ECP 2006-2007

36

CHAPITRE 2. FONCTIONS CONVEXES

37

Exemples 3 : Une forme linaire est convexe. Une norme dnit une fonction convexe. Une fonction quadratique positive est strictement convexe, car sa restriction une droite quelconque est une fonction trinme du second degr terme directeur positif, donc strictement convexe, plus prcisment nous utiliserons souvent la proposition suivante Proposition 11 Soit a(u, v) une forme bilinaire symtrique dnie positive (i.e. u = 0 V a(u, u) > 0), et L(v) une forme linaire, la fonction 1 J (v) = a(v, v) L(v) 2 est strictement convexe La fonction J (v) est une fonction strictement convexe, car sa restriction une droite quelconque est une fonction trinme du second degr de coefcients directeur positif, donc strictement convexe : J (v + h) = a2 + b + c avec a = 1 a(h, h) > 0 2

2.2.2

Fonctions dune variable

Rappelons, sans dmonstration, les proprits lmentaires dune fonction convexe F (t) dune variable relle t : Le graphe dune fonction convexe est au dessous de ses cordes (cest la traduction gomtrique de la dnition) et au dessus de ses tangentes. Une fonction drivable F (t) est convexe si et seulement si sa drive F (t) est croissante (au sens large). Une fonction deux fois drivable F (t) est convexe si et seulement si sa drive seconde F (t) est positive ou nulle. Si la drive seconde est strictement positive, la fonction est strictement convexe. Un rel t tel que F (t) = 0 ralise un minimum absolu de F (t).

2.2.3

Proprits et caractrisations

Quelques proprits lmentaires Si F (x) est convexe, i 0 et


i i

= 1 on a lingalit gnrale de convexit i xi ) i F (xi )


i

F(
i
3

Parenthse : une fonction convexe sur un espace norm V nest pas ncessairement continue, par exemple sur lespace qR 1 V = C([0, 1]) muni de la norme x 2 = x(t)2 dt (qui nest pas un espace de Banach), la fonction F (x) = 0 supt x(t) est convexe mais nest pas continue. Cependant on montre quune fonction convexe non continue sur un espace norm nest borne au voisinage daucun point et que cette situation est impossible dans un espace de Banach, ni donc dans un espace de dimension nie. Notons quune fonction convexe dnie seulement sur un ensemble convexe nest pas ncessairement continue au bord (par exemple sur [0, 1] la fonction nulle lintrieur de lintervalle et qui vaut 1 au bord est convexe.)

37

Mathmatiques 2

38

Optimisation Le graphe dune fonction convexe est au dessus du graphe de ses formes linaires tangentes, ce qui scrit F (x) F (x0 ) + DF (x0 ).(x x0 ) La somme dun ensemble quelconque de fonctions convexes est convexe (on prendra somme 1 au sens le plus large, par exemple la fonction F(x) = 0 F (x, t) dt est convexe si F (x, t) est convexe en x pour tout t), ou encore plus gnralement on a la Proposition 12 Si la fonction F (x, y) est une fonction convexe (resp. strictement) de R2 dans R alors lintgrale
1

J (v) =
0

F (v(t), v (t)) dt

dnit une fonction convexe (resp. strictement) de C 1 ([0, 1]) dans R Nous utiliserons souvent cette proprit dans les exercices. Cette proprit stend des situations analogues pour des fonction de C k (). Pour la dmontrer on utilise lingalit de convexit pour F (x, y) F (v1 (t) + (1 )v2 (t), v1 (t) + (1 )v2 (t)) F (v1 (t), v1 (t)) + (1 )F (v2 (t), v2 (t)) et on intgre
1 1 1

F (v1 (t)+(1)v2 (t), v1 (t)+(1)v2 (t))dt


0 0

F (v1 (t), v1 (t))dt+(1)


0

F (v2 (t), v2 (t))dt

La somme dune fonction convexe et dune fonction strictement convexe est strictement convexe. La borne suprieure dun ensemble quelconque de fonctions convexes est convexe (En particulier lenveloppe suprieure dune famille de fonction afnes est convexe). Exemple : soit V = Rn , A une matrice symtrique de dimension n. La plus grande (resp. petite) valeur propre vrie M (A) = maxx Ax,x (resp. m (A) = minx Ax,x ), cest donc x,x x,x une fonction convexe de A (resp. concave).

Monotonie de la drive Dnition 14 Application monotone On suppose que V est un espace de Hilbert (pour simplier les notations). Une application f (x) de V dans V est monotone si f (y) f (x), y x 0 Noter que si V = R cela revient dire que f (x) est croissante. Thorme 11 Sur un espace de Hilbert une fonction F (x) diffrentiable est convexe si et seulement si f (x) = F (x) est monotone. Preuve Supposons F (x) convexe. La restriction (t) = F (x+t(yx)) de F (x) la droite qui passe par deux points x et y quelconque est convexe. Donc (t) est croissante, or (t) = F (x+t(y x)), y x , ECP 2006-2007 38

CHAPITRE 2. FONCTIONS CONVEXES

39

donc on a (1) (0), cest dire F (y) F (x), y x 0. Rciproquement la monotonie de lapplication x F (x) implique que si t2 > t1 on a (t2 ) (t1 ) = F (x + t2 (y x)), y x F (x + t1 (y x)), y x 0 , et donc que la restriction de F (x) une droite quelconque est convexe. Condition sur le Hessien Thorme 12 Sur Rn une fonction deux fois diffrentiable est convexe si et seulement si le Hessien HF (x) est une matrice semi-dnie positive. Rciproquement si x, h V, HF (x)h, h > 0 alors F (x) est strictement convexe. Preuve Rappelons quune fonction dune variable, deux fois drivable, est convexe si et seulement si sa drive seconde est positive ou nulle et que si la drive seconde est strictement positive, la fonction est strictement convexe. Le rsultat en dcoule en remarquant que la restriction (t) = F (x+t(yx)) de F (x) la droite qui passe par deux points x et y quelconque est convexe si et seulement si (t) 0, or (t) = HF (x + t(y x))(y x), y x Optimisation et convexit Rappelons dabord quelques proprits dexistence des minimums dune fonction continue. Dnition 15 Une fonction est coercive si lim
x +

F (x) = +

Une fonction continue admet un minimum sur tout ensemble compact (donc en particulier sur les parties fermes bornes de Rn ). On en dduit que sur un espace de dimension nie une fonction continue coercive admet au moins un minimum, mais elle peut admettre plusieurs minimums et dautres types dextrmums. Sur un espace de dimension nie une fonction convexe est continue, si elle est coercive elle admet donc au moins un minimum. Plus gnralement le fait que la fonction est convexe permet de prciser lexistence et la nature de ses extrmums. Proposition 13 Si F (x) est une fonction convexe diffrentiable sur un espace vectoriel V DF (x) = 0 y V F (x) F (y)

Le fait que la diffrentielle est nulle en un point, condition ncessaire pour le minimum dune fonction quelconque, est donc ici une condition sufsante dexistence dun minimum global. Proposition 14 Un minimum local dune fonction convexe est global. Lensemble des minimums dune fonction convexe est convexe. Proposition 15 Une fonction strictement convexe sur un convexe C a au plus un minimum sur C. En rsum, la proprit que nous utiliserons le plus est 39 Mathmatiques 2

40

Optimisation

Thorme 13 Une fonction strictement convexe sur un convexe compact C admet un minimum unique. ainsi que son extension Thorme 14 Une fonction strictement convexe et coercive sur un espace de dimension nie admet un minimum unique. En ajoutant la continuit de la fonction, le rsultat est encore vrai dans un espace de Hilbert, mais la dmonstration est plus dlicate.

2.3
2.3.1

Exemples et applications
Exemples lmentaires

Exemple fondamental : fonction quadratique convexe Soit V = Rn , A une matrice symtrique dnie positive de dimension n, b Rn . Soit 1 F (x) = Ax, x b, x 2 F (x) est strictement convexe daprs la proposition (11). F (x) est coercive parce quil existe > 0 tel que Ax, x x, x (on peut prendre pour la plus petite valeur propre) et quon a donc F (x) x, x b, x x 2 2
2 2 2

et que le terme de droite tend vers linni quand x

+ . Nous avons vu au chapitre 1 que

F (x) = Ax b et que HF (x) = A qui est bien symtrique dnie positive. Un vecteur x est solution du systme linaire Ax = b si et seulement si x annule le gradient de F (x) et donc si et seulement sil ralise le minimum (unique) de la fonction strictement convexe F (x) sur Rn . On peut retrouver ce rsultat par un calcul direct ; puisque A = b, en reportant cette expression x dans celle de F (x) on a 1 F () = A, x x x 2 ainsi que 1 1 F (x) = Ax, x b, x = Ax, x A, x x 2 2 et donc 1 1 F (x) = A(x x), x x A, x x 2 2 do la proposition ECP 2006-2007 40

CHAPITRE 2. FONCTIONS CONVEXES Proposition 16 Soit F (x) =


1 2

41

Ax, x b, x et x le minimum de F (x) F (x) F () = x 1 A(x x), x x 2

On peut dduire de cette expression une caractrisation du minimum de la fonction quadratique F (x) sur un convexe. Soit C une partie convexe ferm born, donc compacte, de Rn . La fonction F (x) admet un minimum x sur C , unique puisque F (x) est strictement convexe. Ce minimum est aussi celui de A(x x), x x sur le convexe C, puisque les deux fonctions ne diffrent que par une constante. Nous obtenons une interprtation gomtrique de x : le point x est la projection de x sur le convexe C au sens de la norme x = Ax, x . Fonction quadratique convexe en dimension innie Soit V lespace des fonction de C 1 ([0, 1]) nulles en 0 et 1, u V et f C([0, 1])
1

J (v) =
0

1 (v (x)2 + v 2 (x)) f (x)v(x) dx 2

J (v) est strictement convexe daprs la proposition (11). Rcrivons la dmonstration directement : la restriction de J (v) une droite quelconque est une fonction trinme du second degr strictement convexe : J (v + h) = a2 + b + c avec a = 0 1 (h (x)2 + h2 (x)) dx > 0 2 La fonction J (v) a donc au plus un minimum, nous avons vu au chapitre 1 que
1 1

DJ (v).h =
0

v (x)h (x) + v(x)h(x) f (x)h(x) dx

et que la diffrentielle DJ (u) est nulle si et seulement si u vrie les quations dEuler (1.7) u + u = f u(0) = u(1) = 0 (2.1)

Nous avons donc montr lquivalence du problme diffrentiel aux limites (2.1) et de la minimisation de la fonction J (v). Nous dvelopperons cette quivalence fondamentale dans le cours danalyse des quations aux drives partielles.

2.3.2

Application ltude dquations

Application ltude dun systme dquations non linaires Soit V = Rn , A une matrice symtrique dnie positive de dimension n, b Rn . Soit 1 1 F (x) = Ax, x + x 4 b, x 4 2 4 41 Mathmatiques 2

42 Noter que
1 4

Optimisation x
4 4

nest quune criture condense pour

1 4

x4 . F (x) est strictement convexe car j


x4

somme dune fonction strictement convexe 1 Ax, x , de fonctions convexes (x 4j ) et dune 2 1 fonction linaire donc convexe. Nous avons vu au chapitre 1 que si on pose F1 (x) = 2 Ax, x b, x on a F1 (x) = Ax b. De plus 1 x 4 = x3 (calculer les drives partielles). On en dduit que 4 4 F (x) = Ax + x3 b . Daprs (13) un vecteur x est donc solution du systme non linaire Ax + x3 = b si et seulement si x ralise le minimum (unique) de la fonction strictement convexe F (x). On montre que F (x) admet un minimum en utilisant la proposition 14 : F (x) est continue et coercive, car elle est minore par la fonction coercive F1 (x) qui tend donc vers linni linni (cf. paragraphe 2.3.1). Application ltude dune quation diffrentielle non linaire Soit V lespace des fonction de C 1 ([0, 1]) nulles en 0 et 1, u V et f C([0, 1])
1

J (v) =
0

1 1 v (x)2 + v(x)4 f (x)v(x) dx 2 4

La fonction J (v) est une fonction strictement convexe car elle est somme de fonctions convexes, 1 dont lune au moins, 0 1 v(x)4 dx, est strictement convexe. La fonction J (v) admet donc au plus 4 un minimum. La diffrentielle de J (v) se calcule comme il a t vu au chapitre 1 (formules (1.5), et nous avons montr que cette diffrentielle est nulle si et seulement si v vrie les quations dEuler (1.7) v + v 3 = f v(0) = v(1) = 0 (2.2)

On en dduit lunicit dune solution deux fois drivable de ce problme diffrentiel aux limites. Quoique la fonction J (v) tende vers linni quand par exemple v 2 tend vers linni, on ne peut en dduire trivialement, lexistence du minimum comme dans le cas o V est un espace de dimension nie.

2.4

Exercices corrigs

Une question classique de gomtrie, tudie laide de la notion de convexit Trouver le minimum de la somme des distances 4 dun point aux sommets dun triangle (x1 , x2 , x3 ) non dgnr (i.e. les sommets ne sont pas aligns). Corr. Il faut donc trouver le minimum de la fonction F (x) = i x xi 2 . Remarquons que la fonction x x xi 2 est convexe, car cest une norme, et mme strictement convexe sauf sur les
Rappelons que le minimum de la somme des carrs des distances dun point aux sommets dun triangle, qui est le minimum dune fonction quadratique convexe, est atteint au centre de gravit
4

ECP 2006-2007

42

CHAPITRE 2. FONCTIONS CONVEXES

43

droites passant par le point xi . Elle tend vers linni linni et elle est diffrentiable sauf au point xi . tudions les proprits de la fonction F (x). La fonction F (x) est convexe car somme de normes, strictement convexe car sur chaque droite du plan lune des normes vrie lingalit de convexit de faon stricte. La fonction F (x) tend vers linni linni. Comme elle est strictement convexe elle admet un minimum unique daprs (14). xx La fonction F (x) est diffrentiable sauf aux sommets du triangle. Le vecteur F (x) = i xxii 2 est la somme de trois vecteurs unitaires dirigs du point x vers les sommets. Il ne peut tre nul que si x est un point qui voit les 3 cts du triangle sous un angle de 120 (faire la gure). On en dduit une caractrisation du minimum de la fonction F (x). Sil existe un point qui voit les 3 cts du triangle sous un angle de 120, cest le minimum cherch et il est donc unique, mais il nexiste que si aucun des angles du triangle nest suprieur 120. Sinon, si lun des angles du triangle (disons langle au sommet x1 ) est suprieur 120, il ny a pas de point o la diffrentielle est nulle et le minimum ne peut tre que lun des points o la fonction nest pas diffrentiable, cest dire un des sommets. Une comparaison des trois cas possibles montrent que le minimum est atteint sur le sommet x1 . Fonction longueur dune courbe" Soit V0 = {v C 1 ([0, 1]) telles que v(0) = v(1) = 0} et F (v) la longueur de la courbe que dnit le graphe de la fonction v ; cest donc la fonction dnie sur V0 par
1

F (v) =
0

1 + v (x)2 dx

La fonction (v, v ) R2 1 + v 2 est convexe donc daprs la proposition (12) la fonction F (v) est convexe. La stricte convexit est un peu plus dlicate montrer. Soit v1 (x) et v2 (x) deux fonctions de V0 ; de la stricte convexit de la fonction v 1 + v 2 il rsulte que x [0, 1] 1 + (v1 (x) + (1 )v2 (x))2 1 + v1 (x)2 + (1 ) 1 + v2 (x)2

lingalit tant stricte ds que v1 (x) = v2 (x). Or, si v1 = v2 , en tenant compte de ce que v1 (0) = v2 (0) = 0 il existe au moins un x tel que v1 (x) = v2 (x). Lingalit est donc stricte en au moins un point, do on dduit
1 0 1 1

1 + (v1 (x) + (1 )v2 (x))2 dx <

1 + v1 (x)2 dx + (1 )

1 + v2 (x)2 dx

Cest dire que F (v) est strictement convexe. Soit h V0 . Calculer DF (v).h o DF (v) est la diffrentielle au sens de Gteaux de F (v). DF (v).h = d F (v + th)|t=0 = dt 43
1

vh dx 1+v2 Mathmatiques 2

44 On peut, si v C 2 ([0, 1]), intgrer par parties h dans lexpression de la diffrentielle


1

Optimisation

0 v do, puisque ( 1+v 2 ) =

vh vh dx = [ ]1 2 2 0 1+v 1+v
v (1+v 2 )3/2 1

(
0

v ) h dx 1+v2

DF (v).h =
0

h(x) dx R(x)

o R(x) est le rayon de courbure5 de la courbe au point dabscisse x. La courbure mesure donc la variation de la longueur dune courbe par rapport une perturbation locale. Systme non linaire associ un potentiel convexe On gnralise un peu la situation du paragraphe (2.3.2). Soit V = Rn , A une matrice symtrique dnie positive de dimension n, b Rn . Soit h(t) une fonction croissante sur R, H(x) une primitive de h(x). On note H(x) la fonction de Rn dans R dnie par H(x) = i H(xi ) et on note encore h(x) lapplication de Rn dans Rn dnie par h(x) = (h(x1 ), ..., h(xn )). On dnit la fonction F (x) = 1 < Ax, x > +H(x) < b, x > 2

Montrer que la fonction F (x) est strictement convexe et diffrentiable, calculer DF (x). Corr. On peut calculer le Hessien, cest HF (x) = A + D(x) o D(x) est une matrice diagonale avec Di,i = h (xi ) 0, le Hessien est donc symtrique dni positif. On peut aussi remarquer que F (x) est somme de fonctions convexes x H(xi ), x < b, x > et dune fonction quadratique strictement positive qui est (cf. cours) strictement convexe. y V, DF (x).y =< Ax, y > +
i

H (xi )yi < b, y >=< Ax + h(x) b, y >

Montrer que la fonction F (x) vrie

6 2 2

F (x) x

o , > 0. Corr. Soit la plus petite valeur propre de A, qui est strictement positive. On a < Ax, x > < x, x >
5

Le rayon de courbure vrie 1 v = R(x) (1 + v 2 )3/2

Rappelons que si est la plus petite valeur propre de A, on a < Ax, x > > < x, x >.

ECP 2006-2007

44

CHAPITRE 2. FONCTIONS CONVEXES

45

dautre part puisque H(x) est convexe, son graphe est au-dessus de son hyperplan tangent en 0, donc H(x) H(0) < do F (x) < x, x > +H(0)+ < et puisque < H(0), x > H(0) b
2

H(0), x >

H(0) b, x >

F (x) < x, x >

H(0) b

+ H(0)

Do le rsultat en posant = H(0) b 2 et = H(0). Le terme quadratique domine, la fonction F (x) tend donc vers + quand x 2 +, elle est continue et elle admet donc un minimum. Ce minimum est unique puisque F (x) est strictement convexe. En dduire que x ralise le minimum (unique) de la fonction F (x) si et seulement si x est (lunique) solution du systme non-linaire Ax + h(x) = b (2.3) Corr. On a, daprs lexpression de la diffrentielle F (x) = Ax + h(x) b Comme F (x) est une fonction C 1 convexe, x Rn est solution de (2.3) si et seulement si x est minimum de F (x), or ce minimum est unique, donc le systme (2.3) admet une solution et une seule. Remarquer quun simple changement de signe change totalement la nature des solutions du systme (2.3) : si on remplace h(x) par h(x) la fonction H(x) est remplac par H(x), la fonction potentielle F (x), diffrence de deux fonctions convexes, nest plus en gnral convexe et elle peut avoir un grand nombre dextrmums de toutes natures qui dnissent autant de solutions du systme. Cest le cas du systme non linaire dni par les quations dquilibre dun systme de barres tudi la n du chapitre 1. Le problme ci-dessus prsente une mthode classique pour tudier et rsoudre les systmes dquations non linaires pour lesquels il existe une fonction potentielle. Comme lexistence de cette fonction potentielle est assure dans beaucoup de situations par des principes physiques, cela en fait une approche classique de ces systmes. Dun point de vue numrique la solution de (2.3) peut donc tre calcule par des algorithmes doptimisation appliques la recherche du minimum de F (x).

45

Mathmatiques 2

46

Optimisation

ECP 2006-2007

46

Chapitre 3

Optimisation sans contrainte


Objectifs Nous tudions dans cette sance loptimisation dune fonction convexe de n variables. Au voisinage dun minimum , la situation gnrale est quune fonction est convexe, donc, au prix de quelques adaptations les mthodes doptimisation des fonctions convexes stendent en mthodes doptimisation locale de fonctions quelconques. Quant la recherche dun maximum dune fonction F (x) il revient bien sr chercher le minimum de F (x). Les mthodes que nous tudierons doivent tre considres comme des principes gnraux pour comprendre les problmes de loptimisation dont on a dduit les mthodes, beaucoup plus sophistiques, qui sont effectivement utilises. Appliques des fonctions quadratiques, ces mthodes sont la base des algorithmes les plus efcaces pour la rsolution des systmes linaires de grande dimension.

20

18

16

14

12

10

2 2 4 6 8 10 12 14 16 18 20

F IG . 3.1 Itrs de lalgorithme du gradient. Noter les oscillations au fond de la valle.

47

48

Optimisation

Notations
On note V un espace vectoriel norm, x un point de V , F une fonction de V dans R. x, y = n i xi yi est le produit scalaire canonique de R .

3.1

Principes de loptimisation

Nous tudions dans ce paragraphe les principes qui permettent de construire les algorithmes lmentaires de recherche du minimum dune fonction convexe. Une des plus importantes applications de ces algorithmes est la rsolution approche des systmes linaires matrice symtrique dnie positive, puisque nous avons vu que la solution de ces systmes ralisait le minimum dune fonction quadratique convexe. Ces algorithmes permettront de trouver galement un minimum local dune fonction quelconque condition de connatre un point pas trop loign de ce minimum (i.e. dans ce quon appelle le bassin dattraction de ce minimum). Ils permettent donc aussi de rsoudre certains systmes non linaires quand ceux-ci sont associs la recherche du minimum dune fonction potentielle.

3.1.1

Prliminaire

On note V un espace de dimension nie n, x = (x1 , ..., xi , ..., xn )t un point de V , F (x) une fonction convexe de V dans R. x, y = i xi yi est le produit scalaire canonique de Rn . Dnition 16 Un problme doptimisation globale (ou libre) est la recherche du minimum x dune fonction (fonction objectif) F (x) dnie sur Rn . Nous supposerons la fonction F (x) strictement convexe et, sauf indication contraire, de classe C 2 . Nous allons dnir et tudier des algorithmes de recherche du minimum. La classe la plus large est forme par les algorithmes de descente.

3.1.2

Rappel sur les systmes linaires

Pour rsoudre un systme linaire de grande taille Ax = b on peut utiliser : des mthodes dites directes qui sont pour la plupart des variantes de la mthode classique dlimination des inconnues de Gauss ; elles consistent essentiellement en un choix judicieux de lordre des liminations pour tenir compte du caractre ventuellement trs creux1 de la matrice du systme (note : la mthode dlimination quivaut une modication de la matrice du systme, qui pour une matrice creuse conduit un remplissage, quil faut essayer de limiter). des mthodes itratives o lon construit une suite qui converge vers la solution du systme. Lavantage de ces mthodes est que la matrice nest pas modie (il nest mme pas ncessaire de la reprsenter en mmoire) mais leur convergence peut tre lente. Certains de ces algorithmes (la relaxation, par exemple) sinterprtent comme des itrations linaires, la plupart sinterprte plutt comme des mthodes doptimisation appliques la minimisation de la fonction quadratique 1 F (x) = 2 Ax, x b, x quand la matrice A est symtrique dnie positive. Nous tudierons en dtail ce cas particulier de problme doptimisation globale.
1

Une matrice est dite creuse si la plupart de ses termes sont nuls

ECP 2006-2007

48

CHAPITRE 3. OPTIMISATION SANS CONTRAINTE

49

3.1.3

Les mthodes de descente

Notations On note : xk Rn un point dune suite dapproximation du minimum de F (x). gk = F (xk ) le gradient de F (x) au point xk . dk le vecteur directeur de la droite passant par xk forme des points xk + k dk . Cadre gnral Les mthodes de descente sont des mthodes itratives : on construit itrativement une suite xk convergeant vers le minimum x. On part dun point x0 , on dtermine partir dune approximation xk une nouvelle approximation xk+1 en choisissant une direction dite de descente dk et en calculant une approximation du minimum de la fonction restreinte la droite xk + k dk dnie par cette direction. Le calcul est donc ramen la rsolution de problmes de minimisation de fonctions dune variable min F (xk + dk )

La valeur de la fonction objectif dcrot par construction chaque itration. Le test darrt des itrations est fait le plus souvent sur la valeur (de la norme) du gradient mais on peut aussi tester les variations de xk . Ce que lon peut traduire par lalgorithme : Faire : Choix dune direction de descente dk Calcul du minimum unidirectionnel : F (xk + k dk ) F (xk + dk ) R xk+1 = xk + k dk Tant que g k eps g 0 Il reste deux tapes expliciter pour que lalgorithme soit complet : le calcul du minimum unidirectionnel et le choix de la direction de descente. Minimisation unidirectionnelle La dtermination du minimum de la fonction h() = F (x + d) pour une fonction F convexe quelconque est tudie dans l exercice (3.5). Noter que h () = et que donc Proposition 17 Le minimum de F (x) sur la droite xk + dk est atteint en un point k o le gradient de F est orthogonal la direction de descente dk . Dans le cas dune fonction quadratique le calcul est explicite : il faut calculer le minimum de la fonction trinme du second degr F (x + d) = 1 A(x + d), x + d b, x + d , en dveloppant 2 on obtient 2 F (x + d) = F (x) + g, d + Ad, d 2 49 Mathmatiques 2 F (x + d), d

50 o on a not g = Ax b. On en dduit opt = g, d Ad, d

Optimisation

3.2
3.2.1

Les mthodes du premier ordre


Mthode du gradient optimal

Principe On fait le choix dk = g k Cest la direction dans laquelle localement la dcroissance de la fonction est la plus rapide. Dans le cas dune fonction quadratique on en dduit la valeur du minimum sur la droite de descente k = gk , gk Adk , dk

On peut calculer le gradient g k = Axk b itrativement, car de xk+1 = xk + k dk on dduit g k+1 = g k + k Ag k ce qui vite une multiplication matrice-vecteur. On obtient lalgorithme g 0 = Ax0 b Faire : dk = gk
g ,g k = Adk ,dk xk+1 = xk + k dk g k+1 = g k + k Adk Tant que g k+1 eps g 0
k k

Analyse si on prend, au lieu du pas optimal, un pas xe, lalgorithme, appel gradient pas xe, nest autre lalgorithme ditration appliqu la recherche dun point xe pour la fonction (x) = x F (x) : xk+1 = (xk ) = xk F (xk ) ; si la fonction F (x) est quadratique, on a F (x) = Ax b et lalgorithme du gradient revient une itration linaire xk+1 = xk (Axk b) On vrie facilement que cette itration converge, pour une matrice A dnie positive, si est assez petit, car la fonction (x) est alors contractante pour la norme euclidienne. ECP 2006-2007 50

CHAPITRE 3. OPTIMISATION SANS CONTRAINTE

51

on peut interprter la mthode du gradient comme une intgration numrique du systme diffrentiel dx = F (x) = f (x) dt qui caractrise les courbes de plus grande pente : elle revient intgrer le systme diffrentiel par la mthode dEuler avec un pas de temps k = tk convenablement choisi xk+1 xk = f (xk ) tk La mthode du gradient est une mthode gomtrique, elle nutilise pas de base particulire, il suft de pouvoir calculer les gradients, ce qui se prte bien une paralllisation des calculs. La mthode du gradient est amliore et supplante par la mthode du gradient conjugu, que nous prsentons la n de ce chapitre.

3.2.2

Mthode de relaxation

On choisit pour direction les vecteurs de bases ei , i = 1, . . . , n (on pose i(k) = (k mod n) + 1) dk = ei(k) Autrement dit on minimise la fonction successivement par rapport chaque variable xi en permutant circulairement les variables. Or le minimum par rapport une variable xi vrie lquation i du systme non linaire f (x) = F (x) = 0, on peut donc dcrire la mthode de la manire suivante, en termes de systme dquations : Proposition 18 La mthode de relaxation revient modier (relacher... do le nom de la mthode) successivement les n inconnues xi du systme f (x) = 0 de faon vrier lquation i du systme, en permutant circulairement les variables. On peut appliquer cette mthode tout systme dquations, mais la mthode nest pas en gnral convergente, elle le sera, avec quelques restrictions, si le systme drive dun potentiel convexe.

3.2.3

tude graphique des mthodes de descente

Reprsentation gomtrique du problme en dimension 2 Au voisinage de son minimum une fonction F (x) est presque quadratique, les algorithmes de minimisation se comportent donc au voisinage du minimum comme pour une fonction quadratique. On considre une fonction quadratique F (x) = 1 Ax, x b, x de R2 dans R, avec A symtrique 2 dnie positive. Reprsentons graphiquement, cf. gure (3.2), la fonction F (x) au voisinage de son minimum par ses quipotentielles. Soit x la solution de Ax = b. La fonction F (x) se rcrit F (x) = 1 1 A(x x), (x x) A, x x 2 2 51 Mathmatiques 2

52 (dvelopper lexpression pour le vrier). Les quipotentielles sont donc les courbes A(x x), (x x) = C

Optimisation

ce sont donc des ellipses (puisque A est dnie positive, ce sont des coniques bornes) toutes homothtiques, partir du centre x. Remarquons que : le minimum dune fonction quadratique sur une droite est atteint au milieu des deux points dintersection de cette droite avec une ellipse quipotentielle (car le graphe de la restriction de la fonction une droite est une parabole). le minimum dune fonction sur une droite est atteint au point o le gradient et la direction sont orthogonaux daprs la proposition (17). Ces deux proprits vont nous permettre de dessiner les tapes dune mthode de descente. tude graphique de la mthode du gradient Nous reprsentons sur la gure (3.2) les premires tapes de la mthode du gradient. Noter que

x0

g2

X2 X4 X3

g3

X1

g1

F IG . 3.2 Premires tapes de la mthode du gradient deux gradients successifs sont orthogonaux daprs la proposition (17). On vrie graphiquement que la vitesse de convergence est linaire ( xk+1 x C xk x ). En effet les points x2k (resp. x2k+1 ) sont aligns, ils sont sur la droite conjugue 2 de la premire direction (resp. la deuxime direction de descente orthogonale la premire), et homothtiques, do la convergence rigoureusement linaire (en dimension suprieure, ces points ne seraient pas aligns). Si on fait le dessin pour des ellipses plus moins excentres, on constate que : pour des cercles la convergence est obtenue en deux tapes,
Deux droites dont les directions sont parallles respectivement la direction dune tangente une ellipse et au rayon correspondant sont dites conjugues par rapport cette ellipse
2

ECP 2006-2007

52

CHAPITRE 3. OPTIMISATION SANS CONTRAINTE

53

pour des excentricits faibles la convergence est toujours trs rapide. pour des excentricits fortes la convergence est trs lente si le point de dpart nest pas prs dun des axes. La vitesse de convergence dpend de lexcentricit de lellipse, elle est dautant plus lente que les longueurs des axes des ellipses sont trs diffrents. En rsum la convergence dpend donc du rapport K = max qui est appel le conditionnement de la matrice, elle est dautant plus lente que le condimin tionnement est grand. On montre que, plus gnralement, lerreur dans lalgorithme du gradient pour une fonction quadratique F (x) = 1 Ax, x b, x (et une matrice A dnie positive) vrie 2 xk x Cte C k x0 x avec une constante C < 1 C= K 1 K +1

o K est le conditionnement de la matrice A. Lerreur tend donc vers 0 comme C k , ce qui peut tre lent si le conditionnement est grand, car alors C 1. tude graphique de la mthode de relaxation On reprend pour la mthode de relaxation ltude graphique faite pour la mthode du gradient. Reprsentons les tapes successives de lalgorithme de relaxation. On vrie graphiquement, en faisant
x0

X2

X1

X4

X3

F IG . 3.3 Premires tapes de relaxation varier lellipticit des ellipses, que la vitesse de convergence est linaire xk+1 x C xk x 53 Mathmatiques 2

54

Optimisation

et quelle dpend en particulier du rapport des longueurs des axes des ellipses, cest dire du conditionnement de la matrice. On montre que ce rsultat est gnral, on le retrouve en dimension quelconque.

3.2.4

Mthode de relaxation comme rcurrence linaire

On note X k = xkn ( le vecteur X k reprsente litration de relaxation aprs n tapes de relaxation). On considre le cas dune fonction quadratique sur Rn . Nous avons vu ( proposition (18)) que le point xkn+i vrie la i-me quation du systme linaire Ax = b. En crivant ces quations pour i = 1, ..., n, on en dduit (L + D)X k+1 = (U)X k + b o L (resp. D, U ) est la partie triangulaire infrieure (resp. diagonale, triangulaire suprieure) de A. La mthode de relaxation dnit donc une rcurrence linaire3 . La mthode de relaxation garde un sens pour des systmes quelconques, il faut cependant que la diagonale de A soit non nulle pour lappliquer, mais ce nest pas sufsant. La mthode de relaxation applique un systme linaire de matrice quelconque nest pas toujours convergente (comme on le vrie facilement en reprenant ltude graphique pour une matrice (2, 2) dont les valeurs propres sont de signes opposs : les quipotentielles sont alors des hyperboles de mme centre et mmes asymptotes non parallles aux axes). Mais la mthode de relaxation pour un systme matrice symtrique dnie positive est toujours convergente, on le dduit du fait que cest une mthode de descente et que la valeur de la fonction est toujours dcroissante 4 .

3.2.5

Mthode de sur-relaxation

On conserve les mmes hypothses. On dnit les algorithmes de sur-(ou sous) relaxation par les itrations xk+1 = xk + (k+1 xk ) x o xk+1 est ici le point dni par lalgorithme de relaxation. Nous avons vu que le point xk+1 est au milieu du segment form par xk et le deuxime point dintersection de la droite de descente avec une quipotentielle. On doit donc avoir 0 < < 2 si lon veut que xk+1 soit lintrieur de lquipotentielle et donc que F (xk+1 ) soit plus petit que F (xk ). Les valeurs de F (xk ) sont alors dcroissantes. On vrie graphiquement (en dimension 2) lintrt de lalgorithme de sur-relaxation pour une valeur de > 1 : par rapport = 1, ce choix rapproche le point xk+1 du minimum (la premire tape tant mise part). En pratique, si on rsout un grand nombre de problmes de
Rappelons quune rcurrence linaire X k+1 = MX k + b converge pour tout vecteur initial si et seulement (M) < 1, o (M) est le maximum des modules des valeurs propres de M. Une condition sufsante de convergence dune rcurrence linaire est que M < 1 pour une norme dnie par M = sup X 1 MX , ce qui, compte tenu de ce que la borne suprieure est atteinte, quivaut MX < X si X = 0. 4 Dmonstration rapide : on peut supposer x0 = b = 0 ; on a X k+1 = Mk X 0 o Mp (L + D)1 (U) et par = construction F (MX) < F (X) si X = 0, ce qui implique en considrant la norme X = AX, X que MX < X si X = 0.
3

ECP 2006-2007

54

CHAPITRE 3. OPTIMISATION SANS CONTRAINTE

55

mme matrice, on peut parfois trouver par ttonnement des valeurs de qui acclre de faon spectaculaire la convergence.

3.2.6

Mthode de relaxation par blocs

Principe On considre le cas dune fonction convexe quelconque. Au lieu de minimiser la fonction F (x) successivement par rapport chaque direction de base on peut considrer lespace V = Rn comme un produit de k sous-espaces regroupant certains blocs de coordonnes et minimiser successivement la fonction sur chacun de ces sous-espaces. Lintrt de cette procdure est que certaines de ces minimisations peuvent tre simples (si par exemple la fonction est quadratique par rapport certaines variables, le calcul du minimum par rapport ces variables revient rsoudre un systme linaire ce qui peut tre fait par une mthode directe comme llimination de Gauss) et que, de manire gnrale, on peut dcoupler ainsi les difcults. Pour une fonction quadratique F (x) = 1 Ax, x b, x , cette 2 mthode revient dcouper la matrice A en k k blocs et le vecteur x en k blocs. Les oprations effectuer sur les blocs sont formellement les mmes que celles que lon effectuerait sur un systme k k.

Application On veut reprsenter un ensemble donn de points (xj , yj ) j = 1, ..., m, au sens des moindres carrs , par des fonctions de la forme
n

ai (t ti )
i=1

o (t) est une fonction drivable, ai et ti des paramtres dterminer. Il faut donc minimiser la fonction
m n

F (a, ) = F (a1 , ..., an , t1 , ..., tn ) =


j=1

(yj
i=1

ai (xj ti ))2

La fonction minimiser est alors quadratique par rapport a = (a1 , . . . , an ) et drivable, avec un gradient facile calculer, par rapport = (t1 , . . . , tn ). On peut utiliser une relaxation par blocs par rapport aux deux blocs a et de variables. Le minimum par rapport a sera calcul par rsolution dun systme linaire, le minimum par rapport en utilisant une mthode rapide de minimisation de fonction rgulire (voir ci-dessous). Lavantage de ce dcouplage est que le problme coupl en (a, ) peut tre trs mal conditionn si la dpendance de la fonction F (a, ) par rapport aux deux groupes de variables est trs diffrente (typiquement la fonction F peut dpendre beaucoup moins de que de a). 55 Mathmatiques 2

56

Optimisation

3.3
3.3.1

Mthodes du second ordre


La mthode de Newton

Principe La mthode de Newton est une mthode itrative gnrale de rsolution dun systme non-linaire f (x) = 0, o f (x) est une application C 1 de Rn dans lui-mme : connaissant une approximation xk de la solution on dtermine xk+1 en linarisant localement, autour de xk , lquation f (x) = 0. On a, en dveloppant f (x) lordre 1 autour de xk f (x) = f (xk ) + Df (xk ).(x xk ) + (x xk ) x xk Si on veut que f (xk+1 ) = 0, en ngligeant les termes du dordre 2, il vient xk+1 = xk Df (xk )1 .f (xk ) Rappelons que lapplication linaire Df (x) a pour matrice Jf (x) dans la base canonique de Rn . Lalgorithme peut donc scrire, en mettant en vidence la rsolution du systme linaire de matrice Jf (xk ), Faire : Mk = Jf (xk ) g k = f (xk ) Mk k = g k xk+1 = xk + k Tant que g k eps g 0 On montre que, si f (x) est deux fois diffrentiable et si x0 est assez proche dune solution, les itrations convergent vers cette solution. On montre de plus que la convergence est quadratique xk+1 x C xk x
2

ce qui fait que, ds que la convergence est amorce, elle devient trs rapide. En pratique la mthode est souvent instable et le choix dun point de dpart x0 assurant la convergence peut savrer trs dlicat. La mise oeuvre exige la rsolution dun systme linaire, dont la matrice Jf (xk ) change chaque itration, ce qui peut tre trs coteux si la matrice est pleine et de grande dimension. Application loptimisation Pour minimiser une fonction on peut appliquer la mthode de Newton au systme f (x) = F (x) = 0, cela revient aussi approcher localement au second ordre la fonction F (x) par une fonction quadratique. Rappelons que, par dnition, la matrice jacobienne Jf (x) de f (x) est le hessien Hf (x) de F (x). Compte tenu des instabilits et des problmes de convergence on choisit de traiter cette mthode comme une mthode descente en choisissant pour direction de descente la direction dnie par la mthode de Newton. Ce qui revient crire xk+1 = xk k Df (xk )1 f (xk ) ECP 2006-2007 56

CHAPITRE 3. OPTIMISATION SANS CONTRAINTE

57

Dans les premires tapes on choisit k de faon assurer la dcroissance de la fonction F (x), ensuite on peut prendre k = 1. Cela conduit lalgorithme Faire : Mk = Hf (xk ) g k = f (xk ) Rsoudre Mk dk = g k Calcul du minimum unidirectionnel : F (xk + k dk ) F (xk + dk ) R xk+1 = xk + k dk Tant que g k eps g 0 Le calcul du hessien de F (x) savre souvent dlicat et coteux. On utilisera plutt des variantes de la mthode de Newton combinant cette mthode et la mthode du gradient conjugu et qui nexigent que le calcul du gradient en chaque point, comme la mthode BFGS, voir la bibliographie. Application un systme non linaire On considre le systme non linaire tudi au chapitre 2 f (x) = Ax + h(x) b = 0 On suppose ici que A est une matrice tridiagonale symtrique dnie positive, h(x) = (h(x1 ), , h(xn )) ,o h(t) est une fonction croissante dune variable relle qui est la drive de la fonction convexe H(t). On note D(x) la matrice diagonale avec D(x)i,i = h(xi ). Le systme quivaut (cf. chapitre 2) la minimisation de la fonction convexe F (x) = o H(x) =
i

1 Ax, x + H(x) b, x 2 H(xi )

En appliquant la mthode de Newton faut rsoudre chaque tape un systme de matrice symtrique dnie positive Jf (xk ) = A + D(xk ). Puisque la matrice A est tridiagonale, la matrice Jf (xk ) a la mme structure. La rsolution dun systme de matrice Jf (xk ) par la mthode de Gauss est donc peu coteuse. En pratique, pour assurer la convergence, on testera la dcroissance de la fonction F (x) et, si la fonction nest pas dcroissante, on utilisera lalgorithme de minimisation unidirectionnelle tudi au chapitre 2.

3.4
3.4.1

Quelques considrations pratiques


Notion de prconditionnement

Considrons le cas dune fonction quadratique F (x) = 1 Ax, x b, x . Nous avons vu que la 2 vitesse de convergence de la mthode du gradient dpend du conditionnement de la matrice A. En 57 Mathmatiques 2

58

Optimisation

effectuant un changement de variable on peut modier cette matrice et amliorer le conditionnement. Soit L une matrice inversible quelconque. On effectue le changement de variable y = Lx dans la fonction F (x). Montrons que cela revient changer la matrice A en Lt AL1 ; le changement de variable change F (x) en 1 F (y) = < AL1 y, L1 y > < b, L1 y > 2 minimiser F (y) revient donc changer A en Lt AL1 et b en Lt b. On dnit la matrice M = Lt L, appele matrice de prconditionnement. Le conditionnement de la nouvelle matrice sera dautant meilleur quelle sera proche de Id, c.a.d. Lt AL1 Id ou A Lt L = M Pour esprer amliorer le conditionnement il faut donc choisir une matrice M proche de A. On peut rcrire lalgorithme avec ce changement de matrice, puis faire rapparatre la variable xk et la matrice M pour obtenir la forme suivante de lalgorithme dit de gradient prconditionn : x0 = 0, = prcision g 0 = Ax0 b Md0 = g 0 Faire : v k = Adk <dk k k = <vk ,g k > ,d > xk+1 = xk + k dk g k+1 = g k + k v k Mdk+1 = g k+1 Tant que g k g0 La seule opration supplmentaire par rapport lalgorithme du gradient initial est la rsolution dun systme de matrice M. On voit donc que si ce systme est facile rsoudre, par exemple si M est tridiagonale ou si on connat directement une dcomposition M = LLt en matrices triangulaires, alors le cot du prconditionnement sera faible. En rsum pour obtenir un gain important dans le cot total de la minimisation il faut trouver une matrice de prconditionnement la foir proche de la matrice A et conduisant un systme facile rsoudre. Note : le simple prconditionnement par la diagonale permet dadimensionner la matrice, dfaut de tout autre il faut utiliser celui l. Il existe quelques prconditionnements gnraux (SSOR, Cholesky incomplet...), o lon utilise des matrices M extraites de A dont on connat la factorisation M = Lt L avec une matrice L triangulaire, ce qui permet de rsoudre facilement les systmes de matrice M, et dautres adapts certains trs gros systmes lis lapproximation des quations aux drives partielles (prconditionnement par sous-domaines). ECP 2006-2007 58

CHAPITRE 3. OPTIMISATION SANS CONTRAINTE

59

3.4.2

Prconditionnement : cas gnral

On considre la minimisation dun fonction F (x) quelconque par une mthode de descente quelconque. Localement autour de son minimum la fonction est presque quadratique, ce qui conduit lui appliquer lanalyse du paragraphe prcdent. La convergence dun algorithme de gradient ou de gradient conjugu sera acclre par un changement de variables dni par une matrice L telle que la matrice M = Lt L soit proche du Hessien de F (x). La matrice M est appele la matrice de prconditionnement du problme et un changement de variable y = Lx revient rcrire les algorithmes de gradient ou de gradient conjugu en nutilisant que la rsolution dun systme supplmentaire de matrice M. La matrice M peut tre xe ou variable.

3.4.3

Remarque

La notion de conditionnement est essentielle pour la comprhension des problmes de convergence des algorithmes doptimisation et de rsolution de systmes dquations. Beaucoup de problmes sont naturellement mal conditionns, la construction dun prconditionnement est alors ncessaire. Noter que le choix du prconditionnement fait partie des options laisses lutilisateur dans de nombreux logiciels (comme Femlab).

3.4.4

Petit guide du choix et de lutilisation dune mthode doptimisation

Le problme que nous discutons ici est celui de loptimisation locale de fonctions de variables relles, la recherche dun optimum global sy ramne quand le nombre de minimum est trs limit, sinon il faut utiliser dautres techniques que nous verrons ultrieurement. Nous nous rfrons dans ce paragraphe des mthodes que nous navons pas toujours tudies, mais qui sont dans toutes les bibliothques doptimisation. Toutes les mthodes, ou presque, construisent une suite de points faisant dcrotre la valeur de la fonction minimiser. Mais cette construction nest pas toujours possible, la convergence de la suite de points nest pas toujours assure et surtout cette convergence peut tre trs lente. Ce paragraphe est complmentaire du guide dutilisation de la Toolbox Optimization de MatLab. Les caractristiques du problme et des mthodes qui guideront ce choix sont : La rgularit de la fonction optimiser : la rgularit C 1 est ncessaire non seulement pour des algorithmes qui utilisent la drive, comme lalgorithme du gradient, mais aussi pour la convergence dun algorithme qui ne lutilise pas comme la relaxation (considrer le cas dune fonction de deux variables dont le minimum est en 0 et dont les quipotentielles sont des carrs ct parallles aux axes : lalgorithme se bloque ds la premire itration). De mme la rgularit C 2 est ncessaire pour la convergence des algorithmes de gradient conjugu ou B.F.G.S quoiquils nutilisent que la drive premire. Le nombre de paramtres : cest dire la dimension n de lespace V . Certaines mthodes stockent des donnes trs importantes, comme la mthode du simplexe de Nelder-Mead, qui est la mthode standard de MatLab, qui utilise une matrice n n, ou la mthode B.F.G.S, qui range un nombre de vecteurs qui peut tre lev mais que lutilisateur peut limiter. A linverse les mthodes de relaxation, gradient ou Polak-Ribire nutilisent que quelques vecteurs. La possibilit de calculer ou non le gradient de la fonction : les programmes implantant des algorithmes qui utilisent le gradient, offrent souvent la possibilit de ne fournir quun sous59 Mathmatiques 2

60

Optimisation programme de calcul de la fonction et non du gradient, mais le gradient est alors calcul par diffrence nies, ce qui est trs coteux ou peut tre trop imprcis pour certaines mthodes (comme le gradient conjugu). Par ailleurs une difcult usuelle est limpossibilit de calculer la fonction avec une bonne prcision (quand par exemple ce calcul est fait par un programme utilis en bote noire, ou si une bonne prcision demande trop de temps), ce qui exclut toutes les mthodes qui nutilisent que des donnes locales, en particulier le gradient, alors que lalgorithme du simplexe de NelderMead, utilis par dfaut, par MatLab, est dans ce cas un bon choix si la dimension nest pas trop grande. Le conditionnement des matrices (hessiennes) : Nous avons vu que la vitesse de convergence dpend du conditionnement du problme. Or celui-ci peuttre trs grand notamment dans les problmes de grande dimension. En plus lutilisation, frquente, des techniques de pnalisation, que nous tudierons propos de loptimisation sous contraintes, cre le plus souvent des problmes trs mal conditionns. Un mauvais conditionnement, rend inoprantes les mthodes du premier ordre (relaxation, gradient) trs sensibles au conditionnement. Outre la ncessit dutiliser une mthode du second ordre, il faudra souvent que lutilisateur dun programme dtermine un bon prconditionnement, la place du prconditionnement par dfaut utilis par le programme. Un bon prconditionnement est souvent trs li la nature du problme (prconditionnement par sous-domaines pour les problmes associs aux quations aux drives partielles). Pour les problmes de grande dimension la dtermination de ce prconditionnement est un sujet de recherche. La prcision demande : le mauvais conditionnement de certains problmes na deffet que lorque lon veut une bonne prcision ; si lon ne veut que deux dcimales une (sur-)relaxation (qui nutilise que la donne de la fonction) pourra sufre, alors quune mthode du second ordre (gradient conjugu, B.F.G.S.) sera ncessaire pour obtenir 5 dcimales.

3.5

Exercices corrigs

Minimisation unidirectionnelle La plupart des mthodes doptimisation repose sur la minimisation de la fonction dune variable obtenue par restriction de la fonction objectif une droite. Contrairement aux apparences la construction dun algorithme rapide et trs sr pour ce problme nest pas facile, compte tenu des nombreuses situations particulires que lon peut rencontrer en optimisation. On considre la restriction de la fonction convexe F (x) une droite h() = F (x + d) et on cherche le minimum de la fonction dune variable h(). Dnir un algorithme qui utilise le changement de signe de la drive. Corrig On cherche par dichotomie un point tel que h () = 0. On suppose que, comme cest le cas en gnral dans les applications, que lon sait que d est une direction de descente, cest dire que h (0) < 0, sinon on inverse d. On prend une valeur initiale 1 > 0, aprs avoir homogns les donnes et en ECP 2006-2007 60

CHAPITRE 3. OPTIMISATION SANS CONTRAINTE

61

tenant compte du contexte (si lutilisation de la minimisation 1D est itrative, il peut tre judicieux de reprendre loptimum prcdent par exemple). On aura deux tapes : Recherche dun point pour lequel h (k ) > 0, en calculant la suite k+1 = 2k , si chec cest quil ny a pas de minimum, sinon on a trouv deux points 1 , 2 avec h (1 ) < 0 et h (2 ) > 0. Recherche par dichotomie un point tel que h () = 0. Dnir un algorithme qui procde par dichotomie directe (en notant que si a < b < c et h(b) < min(h(a), h(c)) alors le minimum de h() est entre a et c) Corrig On prend une valeur initiales 1 > 0. On a trois tapes : k Si h(1 ) > h(0) on recherche un point pour lequel h(k ) < h(0), en calculant la suite k+1 = 2 , en cas dchec, d nest pas une direction de descente. Si h(1 ) < h(0) on recherche un point pour lequel h(k ) > h(0), en calculant la suite k+1 = 2k , en cas dchec cest quil ny a pas de minimum. On a donc trouv trois points a < b < c avec h(a) > h(b) < h(c). On teste les situations suivantes : h( a+b ) h(b) alors faire b a+b , c b 2 2 (3.1) h( b+c ) h(b) alors faire a b, b b+c 2 2 h(b) min(h( a+b ), h( b+c )) alors faire a a+b , c b+c 2 2 2 2 Lune des trois ingalits est vraie, ce qui rednit le triplet (a, b, c). On peut utiliser la mthode de la tangente de Newton pour, ventuellement, acclrer la recherche si la drive seconde est accessible, ou encore procder une interpolation parabolique. La mise au point de cet algorithme pour quil fonctionne en toutes situations, et notamment pour des fonctions non convexes, est cruciale car il est au coeur de presque tous les algorithmes doptimisation. Le nombre de calculs de la fonction F (x) dans une dichotomie avec p tapes est en gros Cte|log2 |, or le calcul dune valeur de la fonction sera souvent lopration la plus longue. Pour acclrer le calcul on peut utiliser les proprits particulires de la fonction (si cest un polynme par exemple) ou approcher la fonction par un polynme du second degr.

3.6

Conclusion

On sait rsoudre avec les ordinateurs actuels des problme 1 000 000 variables, mais certains problmes avec une centaines de variables sont trop difciles. Loptimisation de problmes de grande dimension ou trop mal conditionns reste difcile. Il y a de plus en optimisation beaucoup de situations particulires avec des difcults que nous navons pas envisages, et dont il serait difcile de dresser un catalogue : loptimisation reste un problme ouvert. Citons par exemple le cas des fonctions qui ne sont pas partout dnies (par exemple dnies seulement pour des valeurs positives) ou qui explosent facilement (prsence dexponentielles), le cas de fonctions rigoureusement constantes dans certaines rgions, de fonctions qui mlangent des variables de natures trs diffrentes, ou qui ne prsentent des difcults que pour un petit nombre de variables. Loptimisation ne doit pas tre considrer comme un problme ferm :Je pose un problme doptimisation puis je cherche un programme pour rsoudre ce problme. Il faut souvent modier la for61 Mathmatiques 2

62

Optimisation

mulation de problme pour quil puisse tre rsolu. Nous verrons dans la prochaine sance quelques ides gnrales (mthodes de dcomposition) pour reformuler un problme. Nous avons dvelopp ci-dessus quelques ides, non exhaustives, pour faire lanalyse des difcults du problme : Ne peut-on pas a-dimensionner les variables pour amliorer le conditionnement ? Ne peut-on pas liminer certaines variables (solution analytique, ou par rsolution dun systme linaire) pour rduire la dimension ? Ne peut-on pas reformuler le problme avec dautres variables, ou encore modier la fonction sans changer la nature du problme (minimiser une somme de carrs est clairement prfrable minimiser une somme de valeurs absolues) ? Quelles sont les variables dominantes, nest-il pas possible de dnir un ensemble plus restreint de variables, qui donnent une estimation moins nes du rsultat mais qui permettent de dnir un prconditionnement ?

3.7
3.7.1

La mthode du gradient conjugu (Hors Programme )


Principe

La mthode du gradient conjugu est la base des mthodes rapides de minimisation des fonctions rgulires et cest la meilleure mthode de rsolution des grands systmes issus de lapproximation des quations aux drivees partielles. Le principe de cette mthode est dacclrer la mthode du gradient en cherchant ltape k directement le minimum de la fonction F (x) dans le plan (P) form au point xk par les directions dk1 et g k . Nous allons dabord tudier cette mthode dans le cas dune 1 fonction quadratique F (x) = 2 Ax, x b, x de Rn dans R, avec A symtrique dnie positive. On pose dk = g k + k dk1 et xk+1 = xk + k dk et on suppose que xk a t choisi comme le minimum de F (x) sur la droite xk1 + dk1 et donc que g k , dk1 = 0 (3.2)

Dessiner dans ce plan (P) le faisceau des ellipses quipotentielles, placer le minimum de F (x) : les ellipses ont toute le mme centre, le minimum est le centre faisceau, la nouvelle direction de descente dk+1 est donc la direction de ce centre (on dit usuellement en gomtrie des coniques que les directions de la tangente en un point et du rayon qui va du centre ce point sont conjugues, on montre 5 que Adk+1 , dk = 0). On reprend ltude de la nouvelle direction directement par le calcul. On crit que xk+1 est le minimum de F (x) dans le plan form au point xk par les vecteurs dk1 et g k , ce qui implique que le gradient g k+1 est orthogonal ce plan et donc g k+1 , dk1 = 0 g k+1 , g k = 0 en notant que g k+1 = g k + k Adk
5

(3.3) (3.4) (3.5)

Avec des notations diffrentes : si on crit lquation de lellipse sous la forme (x) = Ax, x = 1, la normale au point x a pour direction Ax (car (x) = 2Ax), cette normale est orthogonale la tangente ; la direction du rayon x et dune tangente d vrie donc Ax, d = 0

ECP 2006-2007

62

CHAPITRE 3. OPTIMISATION SANS CONTRAINTE Il vient g k+1 , dk1 = g k , dk1 + k Adk , dk1

63

et donc en utilisant les conditions (3.3) et (3.2) on obtient que les directions de descentes sont conjugues Adk , dk1 = 0 (3.6) on en dduit g k , Adk1 Adk1 , dk1 ce qui scrit aussi, en utilisant (3.5) lordre k 1 k = k = tandis que la condition (3.4) implique k = gk , gk Adk , dk k1 gk , gk Adk1 , dk1

En substituant lexpression de k1 dans celle de k , il vient k = gk , gk g k1 , g k1

noter que les dnominateurs ne sannulent pas si A est symtrique dnie positive. On en dduit le principe de lalgorithme (on introduisant le vecteur v k = Adk ) : x0 = 0, = prcision g 0 = Ax0 b d0 = g 0 Faire : Calcul de la nouvelle direction :
g k = gk1 ,gk1 ,g dk = g k + k dk1 Calcul du minimum unidirectionnel : v k = Adk g k = vk ,g k ,d xk+1 = xk + k dk Mise jour du gradient : g k+1 = g k + k v k Tant que g k g 0
k k k k

3.7.2

Convergence

Nous avons vu que par, contruction, deux directions de descente successives sont conjugues et que deux gradients successifs sont orthogonaux. On montre, nous ladmettrons, l = k, Adk , dl = 0 63 Mathmatiques 2

64 et l = k, g k , g l = 0

Optimisation

Toutes les directions sont donc deux deux conjugues et tous les gradients deux deux othogonaux, ce qui implique que lun de ces gradients g kb (au plus tard g n ) est nul. Cest dire que le point xk correspondant est solution du systme. Do le rsultat : Proposition 19 Lalgorithme du gradient conjugu, appliqu une matrice symtrique dnie positive, construit des directions deux deux conjugues et des gradients deux deux orthogonaux. On obtient la solution du systme linaire Ax = b en au plus n itrations On peut prciser le comportement de lalgorithme. On appelle sous-espace de Krylov de rang k, not E k , le sous-espace vectoriel engendr par les vecteurs b, Ab, . . . , Ak1 b (E 0 = 0). Il existe 6 un rang kb n partir duquel E k = E kb . On montre par rcurrence que xk E k et que xk ralise le minimum de F (x) sur le sous-espace de Krylov E k . Dans la situation gnrale, i.e. si la matrice A a des valeurs propres distinctes et si le vecteur b nest pas orthogonal un vecteur propre de A on kb = n, la convergence thorique a lieu en n itrations. En ralit le comportement de lalgorithme du gradient conjugu est plus compliqu que ne le montre ltude prcdente. Dune part larithmtique des ordinateurs ntant pas exacte, les relations tablies dans la question prcdente, telles que lorthogonalit des gradients, savrent fausses, on devrait donc sattendre une convergence en plus de n itrations ; cest parfois le cas pour des matrices trs mal conditionnes. Mais en pratique le gradient gk = Axk b peut devenir trs petit bien avant n itrations, ce qui donne une bonne approximation du minimum.

3.7.3

Exercices

Nous compltons ltude du gradient conjugu sous forme dexercices corrigs.

Question 1
Algorithme du gradient conjugu. Vrier que lon peut crire lalgorithme sous la forme suivante (les indices k sont laisss pour la clart) x0 = 0, = prcision g 0 = Ax0 b d0 = g 0 Faire : v k = Adk <g k k k = <vk ,g k > ,d > xk+1 = xk + k dk g k+1 = g k + k v k
Il existe alors un polynme P kb (t) de degr kb 1 tel que P kb (A)(b) = 0, kb 1 est le degr du polynme minimal associ la matrice A et au vecteur b
6

ECP 2006-2007

64

CHAPITRE 3. OPTIMISATION SANS CONTRAINTE k+1 = <g<gk ,gk > > ,g dk+1 = g k+1 + k+1 dk Tant que g k g0
k+1 k+1

65

Quelles sont les oprations les plus coteuses en supposant que A est une matrice creuse ? Quel est le cot supplmentaire par rapport lalgorithme du gradient ? On notera que, lexception du calcul de k , lalgorithme repose uniquement sur le calcul du gradient, cela sera prcieux pour tendre lalgorithme aux fonctions non quadratiques. Nous allons tudier les proprits de cet algorithme.

Question 2
Analyse de quelques proprits de lalgorithme du gradient conjugu. Montrer que 1 1 k k Ag k = g k+1 ( k + k1 )g k + k1 g k1 k et que k k g k+1 = (1 + k k1 )g k + k Ag k k k1 g k1 Cest dire que le gradient sobtient par une rcurrence deux pas, et non pas par une rcurrence un pas comme pour la mthode du gradient ( il en est de mme des directions). Supposons, pour simplier, que kb = n ; Montrer que, dans la base orthogonale forme par les vecteurs g k , la matrice de loprateur A est tridiagonale. On peut normer la base pour rendre en plus la matrice symtrique. Quel est lintrt de cette construction ?

Question 3
tude de lerreur. Une tude prcise de lvolution de lerreur dans la mthode du gradient conjugu, trop complexe pour tre expose ici, montre que si K est le conditionnement de la matrice A on a K 1 k 0 k g A 4( ) g A K +1 o K est le conditionnement de la matrice A et x A = < Ax, x >. Or le conditionnement peut tre trs grand, ce qui rend le rapport ( K1 ) trs proche de 1, et donc la dcroissance de lerreur K+1 lente. En dduire, pour des matrices de grandes dimension n, une estimation du conditionnement pour que la mthode converge en moins de n itrations, cest dire que xk vrie le systme linaire 10m prs. Pour xer les ides on considre les matrices issues de la rsolution approche dun problme dquation aux drives partielles du type u = f , o la dimension n de ces matrices peut tre trs grande, notamment pour des problmes tridimensionnels (n > 100000) ; on montre que ces matrices 2 ont un conditionnement K C1 n en dimension 2 et K C2 n 3 en dimension 3, en dduire une estimation du nombre ditrations pour une prcision de 105 . 65 Mathmatiques 2

66

Optimisation

Question 4
Prconditionnement. Nous avons vu que la vitesse de convergence de la mthode du gradient conjugu dpend du conditionnement de la matrice A. En effectuant un changement de variable on peut modier cette matrice et amliorer le conditionnement. Soit A une matrice inversible quelconque. On effectue le changement de variable y = Lx dans la fonction F (x). Montrer que cela revient changer la matrice A en Lt AL1 . Quelle proprit doit vrier M = Lt L, appele matrice de prconditionnement pour esprer amliorer le conditionnement ? Note : le simple prconditionnement par la diagonale permet dadimensionner la matrice, dfaut de tout autre il faut utiliser celui l. Il existe quelques prconditionnements gnraux (SSOR, Cholesky incomplet...), o lon utilise des matrices M extraites de A dont on connat la factorisation M = Lt L avec une matrice L triangulaire, ce qui permet de rsoudre facilement les systmes de matrice M, et dautres adapts certains problmes dquations aux drives partielles (prconditionnement par sous-domaines). Rcrire lalgorithme avec ce changement de matrice, puis faire rapparatre la variable xk et la matrice M pour obtenir la forme suivante de lalgorithme dit de gradient conjugu prconditionn : x0 = 0, = prcision g 0 = Ax0 b Mz 0 = g 0 d0 = z 0 Faire : v k = Adk <z k k k = <vk ,g k > ,d > xk+1 = xk + k dk g k+1 = g k + k v k Mz k+1 = g k+1 k+1 k+1 k+1 = <z<z k ,gk > > ,g dk+1 = z k+1 + k+1 dk Tant que g k g0

Question 5
Extension aux fonctions non quadratiques. Une premire ide pour tendre aux fonctions non quadratiques la mthode du gradient conjugu serait de dnir les directions conjugues localement laide du Hessien de la fonction. Cela oblige cependant calculer ce Hessien, ce qui peut tre trs coteux. Mais nous avons fait la remarque la question (1) que lalgorithme peut scrire sous une forme qui nutilise que la connaissance du gradient. Cest cette forme qui justie la mthode Polak-Ribire dnie par lalgorithme suivant, dans lequel on suppose calculable le gradient en chaque point : x0 = donn, = prcision ECP 2006-2007 66

CHAPITRE 3. OPTIMISATION SANS CONTRAINTE g 0 = F (x0 ) d0 = g 0 Faire : Calcul du minimum unidirectionnel : F (xk + k dk ) F (xk + dk ) R g k+1 = F (xk+1 ) k+1 g k ,g k+1 k+1 = <g <gk ,gk > > dk+1 = g k+1 + k+1 dk Tant que g k g0

67

La formule qui dnit k+1 est quivalente pour une fonction quadratique la formule utilise dans k+1 k+1 la question (1) k+1 = <g<gk ,gk > > du fait de lorthogonalit des gradients. Le principe de lal,g gorithme est que lorsque xk est proche du minimum, la fonction F (x) est presque quadratique et lalgorithme est bien celui du gradient conjugu ; lintrt de la nouvelle formule pour k est que, dans les premires tapes, si lalgorithme pitine on aura k+1 = 0 et la nouvelle direction dk+1 sera celle du gradient.

20

18

16

14

12

10

2 2 4 6 8 10 12 14 16 18 20

F IG . 3.4 Itrs de lalgorithme du Polak-Ribire. Comparer avec la mthode du gradient.

67

Mathmatiques 2

68

Optimisation

3.7.4

Corrigs

Corrig de la question 1 Algorithme du gradient conjugu. crire lalgorithme sous... On remarque, comme pour la mthode du gradient, quil ny a quun produit matrice vecteur et deux produits scalaires calculer et que par rapport lalgorithme du gradient il suft dajouter deux lignes ; le produit matrice vecteur est peu coteux pour des matrices creuses. Corrig de la question 2 Analyse de quelques proprits de lalgorithme du gradient conjugu. Dans la relation dk = g k + k dk1 on peut liminer dk laide de la relation g k+1 = g k + k Adk , on obtient 1 1 k k Ag k = g k+1 ( k + k1 )g k + k1 g k1 k De la relation prcdente on dduit g k+2 = (1 + k+1 k+1 k+1 k+1 )g + k+1 Ag k+1 k+1 k g k k

Supposons, pour simplier, que kb = n ; les vecteurs g k forment alors une base orthogonale, la relation prcdente montre que la matrice de loprateur A dans cette base est tridiagonale, on peut normer la base pour rendre en plus la matrice symtrique ; ainsi on peut construire comme sousproduit de lalgorithme du gradient conjugu une matrice triadiagonale symtrique semblable la matrice A, cette matrice symtrique tridiagonale a les mmes valeurs propres que A ; or il existe des algorithmes trs performant pour calculer les valeurs propres de ces matrices, cette tridiagonalisation de la matrice A est la base de la mthode de Lanczos pour calculer les valeurs propres des grandes matrices creuses (frquences propres en calcul des structures). Cest dire que le gradient sobtient par une rcurrence deux pas, et non pas par une rcurrence un pas comme pour la mthode du gradient, il en est de mme des directions . Corrig de la question 3 tude de lerreur. En dduire, pour des matrices de grandes dimension n, une estimation du conditionnement pour que la mthode converge en moins de n itrations, cest dire que xk vrie le systme linaire 10m prs. k A On veut g 0 A 10m do g K 1 k ln( ) m ln 10 K +1 et, pour K grand 2 k m ln 10 K ECP 2006-2007 68

CHAPITRE 3. OPTIMISATION SANS CONTRAINTE ou encore K k > m ln 10 n 2n K 4n2 (m(ln 10))2

69

Si on veut k < n il faut

La convergence interviendra bien avant n itrations si le conditionnement est infrieur n2 . Pour xer les ides on considre les matrices issues de la rsolution approche dun problme dquation aux drives partielles du type u = f , o la dimension n de ces matrices, qui crot avec la prcision, peut tre trs grande, notamment pour des problmes tridimensionnels (n > 100 000) ; 2 on montre que ces matrices ont un conditionnement K C1 n en dimension 2 et K C2 n 3 en dimension 3, en dduire une estimation du nombre ditration pour une prcision de 105 . En 2D on a 1 1 C n gk A 2k 1 k ( ) 1 ) exp( 0 g A C1 n 1 + C n
1

on aura une prcision de

105

si

2k n C1

5 ln 10 ou

2k C1 n

5 ln 10 et

k 1 C1 ( 5 ln 10) n 2 n
k Le rapport n tend vers 0 comme En 3D on a 1 n

pour n grand. 1
1 C1 n 3 1
1

gk g0 do 2k comme
1 n3
2 1 C1 n 3

A A

1+

)k exp(
k n

2k C1 n 3
1

) Le rapport
k n

1 C1 n 3

5 ln 10 ou

2k
1 C1 n 3

5 ln 10 et

C1 1 2 5 ln 10) 2 n3

tend vers 0

pour n grand.

Corrig de la question 4 Prconditionnement On effectue le changement de variable y = Lx dans la fonction F (x). Montrer que cela revient changer la matrice A en Lt AL1 . Le changement de variable change F (x) en 1 F (y) = < AL1 y, L1 y > < b, L1 y > 2 Minimiser F (y) revient donc changer A en Lt AL1 et b en Lt b. Quelle proprit doit vrier M = Lt L, appele matrice de prconditionnement pour esprer amliorer le conditionnement ? Le conditionnement de la nouvelle matrice sera dautant meilleur quelle sera proche de Id, c.a.d. Lt AL1 Id 69 Mathmatiques 2

70 ou A Lt L

Optimisation

Le simple prconditionnement par la diagonale permet dadimensionner la matrice, dfaut de tout autre il faut utiliser celui l. Il existe quelques prconditionnements gnraux (SSOR, Cholesky incomplet...), dautres adapts certains problme dquations aux drives partielles (prconditionnement par sous-domaines).

ECP 2006-2007

70

Chapitre 4

Optimisation sous contraintes dgalit


Objectifs Nous insistons dans ce chapitre sur lutilisation de la dualit pour analyser un problme doptimisation sous contraintes. Les multiplicateurs de Lagrange, ou variables duales, que nous introduisons sont bien plus quun artice pour traiter les contraintes, car le couple des variables primales et duales, prsent ici dans un contexte lmentaire, est un outil gnral de modlisation mathmatique, aussi bien en mcanique, thermodynamique, lectronique quen conomie, contrle... Notations On note V un espace vectoriel norm, x un point de V , x, y = i xi yi le produit scalaire canonique de Rn . Les fonctions F (x), Fi (x), i = 1, . . . , p, sont des fonctions C 1 de V dans R.

4.1
4.1.1

Optimisation sous contraintes dgalit


Prsentation

Un problme doptimisation sous contraintes dgalit scrit sous la forme suivante C = {x V tel que Fj (x) = 0 , j = 1, . . . , p} x C F () F (x) x (4.1)

La fonction F (x) est souvent appele la fonction objectif et les fonctions Fi (x) les contraintes, Un point qui vrie les contraintes est ralisable. Les noncs ci-dessous peuvent tre tendus au problme des minimums locaux, nous ne le ferons pas pour allger lcriture. Pour la maximisation des fonctions, le lecteur devra adapter...

4.1.2

Prliminaires

Nous dmontrons deux lemmes utiles pour la suite 71

72

Optimisation

Lemme 1 Si j (x), j = 1, . . . , p, et (x) sont p + 1 formes linaires indpendantes sur V et si (j = 1, . . . , p, j (x) = 0) (x) = 0 alors il existe p rels j , j = 1, . . . , p, tels que
p

=
j=1

j j

Dmonstration Soit (x) lapplication de V dans Rp+1 dnie par (x) = ((x), 1 (x), . . . , p (x)) Par la linarit de lapplication , (V ) est un sous-espace vectoriel de Rp+1 ; or le point (1, 0, . . . , 0) nappartient pas (V ), donc (V ) est un sous-espace strict de Rp+1 , et il existe p + 1 rels, non tous nuls, j , j = 0, . . . , p, tels que
p

x V,
j=0

j j (x) = 0

cest dire p j j = 0. Lindpendance des formes linaires j implique que 0 = 0, on en j=0 dduit le rsultat en divisant par 0 . Un problme doptimisation sous contraintes est un problme doptimisation sur une sous-varit1 C de Rn . On peut caractriser gomtriquement un minimum local dune fonction sur une varit : Lemme 2 Si x ralise le minimum dune fonction F (x) sur une sous-varit de V alors orthogonal au sous-espace tangent la varit en x. F () est x

Dmonstration Soit y un vecteur tangent la varit en x, on dnit une courbe x(t) sur la varit avec x(0) = d x, x (0) = y ; La fonction F (x(t)) est minimum pour t = 0, donc dt F (x(t))|t=0 = F (), x (t) = x 0.

4.1.3

Les multiplicateurs de Lagrange

Thorme de Lagrange Thorme 15 Si x est solution du problme (4.1) et si les formes linaires DFj () , j = 1, . . . , p, x forment un systme libre, il existe des rels j , j = 1, . . . , p, appels multiplicateurs de Lagrange tels que p DF () + x j DFj () = 0 x (4.2) j=1 Fj () = 0, j = 1, . . . , p x Avant de dmontrer le thorme de Lagrange, nous allons lexprimer laide du Lagrangien. Posons = (1 , . . . , p ) Rp .
1

Intuitivement, une varit est une surface de dimension quelconque.

ECP 2006-2007

72

CHAPITRE 4. OPTIMISATION SOUS CONTRAINTES DGALIT Dnition 17 La fonction L(x, ) = F (x) +


j=1

73

j Fj (x)

est appele le lagrangien. Le thorme (4.2) exprime quil existe des multiplicateurs telle que la solution x est un point stationnaire du lagrangien : Thorme 16 Sous les mmes conditions que dans le thorme (4.2), le couple (, ) vrie x Dx L(, ) = 0 x Fj () = 0, j = 1, . . . , p x Dmonstration Soit (x) lapplication de V dans Rp+1 dnie par (x) = (F (x), F1 (x), . . . , Fp (x)) On a () = (F (), 0, . . . , 0). x x Supposons que D() est surjective : x daprs le thorme de lapplication ouverte (cf. Sance 1) il existe une boule B (()) telle que x B (()) (V ) . Do si est assez petit x (F () , 0, . . . , 0) (V ) x cest dire quil existe x V tel que F (x) = F () et Fj (x) = 0, j = 1, . . . , p contrairement x lhypothse que F () est la valeur minimale du problme doptimisation (4.2). x Donc lapplication linaire x V D() = (DF (), DF1 (), , DFp ()) nest pas surjective sur x x x x p , ce qui implique quil existe un hyperplan Rp tel que R h V, D().h x (4.3)

autrement dit il existe des rels , 1 , . . . , p , non tous nuls, tels que
p

h V, et donc

DF ().h + x
j=1 p

j DFj ().h = 0 x

DF () + x
j=0

j DFj () = 0 x

(4.4)

On a = 0, sinon les diffrentielles DFj () ne formeraient pas un systme libre, on en dduit le x rsultat en divisant par . Noter que D L(, ) = (F1 (x), . . . , Fp (x))t x on peut donc aussi crire Dx L(, ) = 0 x D L(, ) = 0 x 73 (4.5)

Mathmatiques 2

74 Analyse des conditions de Lagrange

Optimisation

Les conditions de Lagrange sont ncessaires mais elles ne sont pas sufsantes. La ncessit de la condition dindpendance des gradients peut tre vrie sur lexemple suivant o lensemble C est, dans R3 , la droite commune deux cylindres tangents ; par exemple F1 (x) = (x1 1)2 + x2 1, F2 (x) = (x1 + 1)2 + x2 1, F (x) = x2 + x2 x2 , alors C est la 2 2 1 3 droite x1 = x2 = 0 et le minimum de F (x) sur cette droite est atteint en x1 = x2 = x3 = 0 ; en ce point les gradients sont F = (0, 1, 0), F1 = (2, 0, 0) et F2 = (2, 0, 0), les gradients des deux contraintes sont colinaires tandis que F a une autre direction. La condition (4.2) sous la forme Dx L(, ) = 0 nimplique pas que le Lagrangien est minix mum en x, cest en gnral faux. Nous verrons ultrieurement des conditions sufsantes pour que cette proprit soit vraie. Si V = Rn , les conditions (4.2) sont quivalentes un systme de n + p quations n + p inconnues p F () + x j Fj () = 0 x (4.6) j=1 Fj () = 0, j = 1, . . . , p x Pour rsoudre ce systme, le principe gnral est dliminer x en fonction des multiplicateurs laide du premier groupe dquations, de reporter cette expression dans les p quations de contraintes, ce qui permet en principe de dterminer les p multiplicateurs, puis x .

4.2
4.2.1

Proprits et interprtations des multiplicateurs


Les multiplicateurs mesurent la sensibilit dune contrainte

La valeur dun multiplicateur associ une contrainte est la drive de la valeur optimale de la fonction objectif par rapport une variation de cette contrainte. Plus prcisment, supposons pour xer les ides que lon perturbe la contrainte F1 (x) = 0 en F1 (x) + = 0. Soit L (x, ) = F (x) + 1 (F1 (x) + ) + p j Fj (x) le Lagrangien associ. Soit (x( ), ( )) la solution correspondante, j=2 qui est fonction de . La valeur optimale de la fonction objectif est F (x( )) Thorme 17 1 = d F (x( ))| d (4.7)

=0

Dmonstration On a, puisque les contraintes sont nulles loptimum, F (x( )) = L (x( ), ( )) dF (x( )) dx( ) dx() = Dx L (x( ), ( )). + D L (x( ), ( )) + D L (x( ), ( )) d d d Compte tenu de la nullit des drives du Lagrangien par rapport x et loptimum, il vient dF (x( )) | d
=0

= D L (x( ), )|

=0

= 1

Les multiplicateurs de Lagrange mesurent donc la sensibilit de la valeur optimale par rapport une contrainte, cest une des raisons les plus importantes de calculer ces multiplicateurs. ECP 2006-2007 74

CHAPITRE 4. OPTIMISATION SOUS CONTRAINTES DGALIT

75

4.2.2

Interprtations

Les multiplicateurs de Lagrange sont un des outils usuels de la modlisation mathmatique, notamment en physique et en conomie. Mcanique : La position dquilibre dun systme de barres, soumises des liaisons, est solution dun problme doptimisation sous contraintes : elle ralise le minimum de lnergie potentielle totale (cf. 1.1.4 ) pour toutes les positions admissibles, cest dire vriant les liaisons. Linterprtation mcanique des multiplicateurs de Lagrange est simple : ce sont des ractions ou efforts de liaisons, le lagrangien est lnergie du systme augmente du travail des efforts de liaisons. Plus gnralement,en mcanique des grandeurs comme les contraintes ou les pressions sinterprtent comme des multiplicateurs liaisons cinmatiques ou de conditions dinvariance de volume. conomie : On considre loptimisation du cot de fabrication de n biens en utilisant p composants ou matires premires sous p contraintes sur les quantits disponibles de ces matires. Un multiplicateur de Lagrange dune de ces contraintes sinterprte comme un prix marginal quil faut attribuer la matire premire correspondante. Le Lagrangien reprsente la valeur des biens fabriqus augment de la valeur des stocks restant de matires premires ou diminu de la valeur des matires acheter.

4.3
4.3.1

Application
Minimisation dune fonction quadratique convexe sous des contraintes linaires

1 On suppose que V = Rn et F (x) = 2 Ax, x b, x , avec A symtrique dnie positive. Si les fonctions Fi (x) sont linaires, on peut crire lensemble des contraintes sous la forme Bx = c, o B est une matrice de dimension (p, n), avec p < n, et c Rp , le problme scrit C = {x V tel que Bx = c} 1 (4.8) F (x) = Ax, x b, x 2 x C F () F (x) x

Pour que les contraintes soient indpendantes, il faut que le rang de B soit p. On pose = (1 , . . . , p )t Rp Les conditions doptimalit scrivent, daprs le thorme de Lagrange et aprs rarrangement des termes, Ax +Bt = b (4.9) Bx =c Le couple (, ) est solution dun systme linaire matrice symtrique (non dnie positive) que x lon peut ventuellement rsoudre par blocs : on tire x du premier bloc, on en dduit le systme BA1 Bt = BA1 b c qui est matrice C = BA1 Bt symtrique dnie positive. On peut donc calculer les multiplicateurs , on obtient ensuite x laide du premier bloc dquations, dont la matrice A est aussi symtrique 75 Mathmatiques 2

76 dnie positive. Si x est connu, on peut calculer les multiplicateurs (si B est de rang maximal p) = (BBt )1 B(Ax b)

Optimisation

4.3.2

Fonctions convexes et contraintes linaires

Si on suppose que la fonction objectif F (x) est strictement convexe et les contraintes linaires il est possible de prciser le thorme de Lagrange (4.2). Remarquons dabord que, sous ces hypothses, le Lagrangien L(x, ) est convexe en x. La condition Dx L(, ) = 0 implique donc que x est le x par rapport x. Ce qui nous permet de rcrire le thorme de minimum (unique) sur V de L(x, ) Lagrange sous la forme Thorme 18 Si F (x) est (strictement) convexe, x est (lunique) solution du problme C = {x V tel que B = c} x x C F () F (x) x si et seulement si il existe des rls = (1 , . . . , p ), tels que x V L(, ) L(x, ) x Fj () = 0, j = 1, . . . , p x (4.11) (4.10)

Notons que si les multiplicateurs ont t dtermins, x est solution dun problme doptimisation sans contrainte.

4.4
4.4.1

Optimisation et dualit
Problme dual

Nous nous plaons sous lhypothse o la fonction optimiser F (x) est convexe et les contraintes linaires. Thorme 19 Le couple (, ) solution du problme (4.10) est un point selle du Lagrangien, i.e. il x vrie x V, Rp , L(, ) L(, ) L(x, ) x x (4.12) Dmonstration On a Fi () = 0, do en fait lgalit x L(, ) = L(, ) L(x, ) x x et daprs (4.11) L(, ) L(x, ) x Cela nous conduit dnir la fonction duale ECP 2006-2007 76

CHAPITRE 4. OPTIMISATION SOUS CONTRAINTES DGALIT

77

Dnition 18 On appelle fonction duale du problme doptimisation (4.10) la fonction de Rp dans R dnie par () = min L(x, ) (4.13)
x

La fonction peut ne pas tre toujours dnie, nous poserons alors que sa valeur est alors . La fonction duale a souvent un sens physique. Dans lexemple du treillis de barre ci-dessus, la fonction duale est lnergie de la position dquilibre pour des ractions arbitraires, dans un autre exemple (voir exercice), le problme dual est connu sous le nom de Principe dnergie complmentaire. Dans lexemple conomique ci-dessus la fonction duale est la valeur des biens fabriqus pour des cots arbitraires des matires premires. Par construction, en notant x() le point o le minimum est atteint dans (4.13), on a () = (F1 (x()), . . . , Fp (x()))t = Bx() c Cela dcoule de D() = Dx L(x(), ) D x() + D L(x(), ) La drive en x est nulle car x() est un minimum, il ne reste donc que le deuxime terme. De plus par construction () = min L(x, ) L(, ) L(, ) = () x x
x

(4.14)

La recherche du maximum de la fonction duale est le problme dual tandis que le problme de minimisation sans contrainte (4.13) est le problme primal. Rsumons Thorme 20 La fonction duale () est une fonction concave (car elle est dnie comme la borne suprieure dune famille de fonctions afnes). On a () = Bx() c o x() est la solution du problme primal. La fonction duale atteint son maximum pour les multiplicateurs solutions de (4.12). Une valeur de la fonction duale est une estimation infrieure de la valeur optimale, par ailleurs la connaissance dun point ralisant les contraintes permet de calculer la fonction objectif en ce point et ainsi davoir une estimation suprieure, do la possibilit davoir un encadrement de la valeur optimale en estimant la fois un point ralisable (proche de loptimum), puis les multiplicateurs, en calculant la fonction duale . Exemple Dans le cas dune fonction quadratique (cf. 4.8) on peut calculer () () = 1 BA1 Bt , + BA1 b c, 2 (4.15)

Dans le cas gnral la fonction duale va nous servir dnir un algorithme de calcul approch des multiplicateurs. 77 Mathmatiques 2

78

Optimisation

4.4.2

Algorithme dUzawa

On peut appliquer au calcul du maximum de la fonction duale un algorithme doptimisation quelconque. Appliquons lalgorithme du gradient pas xe, en utilisant (4.15) et en notant que pour calculer un maximum il faut inverser des signes par rapport au calcul dun minimum. Pour contrler le pas on vrie la croissance de la fonction objectif. Choisir une estimation de 0 et de > 0 (assez petit), Faire : Chercher xk solution du problme primal : x V, Fk = L(xk , k ) Tester Fk > Fk1 sinon diminuer g k = Bxk c k+1 = k + g k Tant que g k eps g 0

L(xk , k ) L(x, k )

Cet algorithme, souvent trs naturel dans une situation concrte, a t dcouvert sous dautres noms dans les contextes les plus divers... On a donc ramen la rsolution dun problme doptimisation sous contraintes une srie de problmes sans contrainte. Tel quel cet algorithme est lent, les mthode dites de Lagrangien augment (appeles aussi pnalisation-dualit) en sont une amlioration dcisive et rsolvent le problme dlicat du choix de .

4.4.3

Mthode de pnalisation

Principe Le principe des mthodes de pnalisation consiste remplacer le problme doptimisation sous contraintes par un problme sans contrainte en ajoutant la fonction objectif des fonctions de pnalit qui sont trs grandes ds que les contraintes ne sont pas vries. Il y a des variantes, le principe le plus simple consiste remplacer ( 4.1) par le problme pnalis Fi (x)2 F (x) = F (x) + 2 (4.16) i x V F (x ) F (x) Le paramtre de pnalisation sera pris petit. Le rsultat attendu est que si 0 la solution x du problme pnalis tende vers la solution x du problme doptimisation sous contraintes.

Analyse Lintrt de la mthode est la simplicit de sa mise en oeuvre. De plus le procd a souvent une signication physique trs claire (par exemple, en mcanique, pour le problme du treillis vu cidessus, il revient supprimer les liaisons et introduire des ressorts trs rigides entre un noeud et le plan sur lequel le noeud doit se dplacer). Mais elle a des inconvnients : ECP 2006-2007 78

CHAPITRE 4. OPTIMISATION SOUS CONTRAINTES DGALIT

79

En supposant les grandeurs adimensionnes et les calculs faits en double prcision (14 dcimales), le paramtre ne peut tre plus petit que que 107 pour limiter les erreurs de troncature dans laddition de termes dordre de grandeur diffrent. Or on montre (voir en exercice le cas quadratique) que lerreur x x est de lordre de , do une prcision limite 103 . Le conditionnement du problme pnalis est en gnral trs grand pour petit. Do une imprcision sur ce problme et une convergence lente des algorithmes itratifs si le paramtre est petit. Si la fonction objectif F (x) est convexe et les contraintes linaires, la fonction pnalise F (x) est convexe (elle peut mme dans certains cas tre strictement convexe sans que F (x) le soit). Cas dune fonction quadratique Soit un problme doptimisation quadratique convexe sous contraintes linaires C = {x V tel que Bx = c} 1 min F (x) = Ax, x b, x xC 2

(4.17)

La solution x du problme pnalis associ est solution dun systme linaire matrice symtrique dnie positive 1 1 (A + Bt B)x = b + Bt c (4.18) Dm. : La fonction pnalise est F (x) = ce qui scrit encore 1 1 1 1 (A + Bt B)x, x b, x Bx, c + c, c 2 2 Cest une fonction quadratique convexe dont le minimum est solution du systme linaire F (x) = 1 1 (A + Bt B)x = b + Bt c Lintrt de la mthode est la simplicit de sa mise en oeuvre. Mais elle a des inconvnients : En supposant les matrices adimensionnes et les calculs faits en double prcision (14 dcimales), le paramtre ne peut tre plus petit que que 1.E 7 pour limiter les erreurs de troncature dans laddition de termes dordre de grandeur diffrent. Or on montre (voir ci-dessous) que lerreur x x est de lordre de , do une prcision limite 103 . Pour des problmes de grande dimension la structure de la matrice B (i.e. les lments non nuls) peut tre trs diffrente de celle de la matrice A ce qui peut poser des difcults de reprsentation de la matrice du problme pnalise. Le conditionnement de la matrice du problme pnalise va en gnral tre trs grand pour petit. Do une imprcision sur ce problme et une convergence lente des algorithmes itratifs si le paramtre est petit. 79 Mathmatiques 2 1 Ax, x b, x + 2 Bx c, Bx c 2

80 Estimation de lerreur dans le problme pnalis : cas quadratique

Optimisation

Montrons que lerreur commise en remplaant la solution x du problme (4.17) par la solution x du problme pnalis (4.18) est de lordre de , do une prcision limite 1.E 3. Proposition 20 x x 1
2

Cte
2

(Bx c)

Cte

Dmonstration : Il vient, en faisant la diffrence de (4.18) et des conditions doptimalit 1 A(x x) + Bt B(x x) = Bt Posons = x x, il vient A, + en arrangeant A, + On en dduit dabord do et donc B
2

(4.19)

1 1

Bt B, = Bt , B, B = , B (4.20)

1 1

B, B , B B
2 2

En reportant cette estimation dans (4.20), on obtient A, , B comme il existe 2 > 0 tel que
2 2

2 2

A, il vient
2 2

2 2

et donc 1
2

Cte

En reportant cette estimation dans (4.19) on obtient (Bx c)


2

Cte (Bt B)1

Notons que, si on a rsolu le problme pnalis, on peut calculer (approximativement) les multiplicateurs de Lagrange par la formule 1 = (Bx c) mais la prcision est mdiocre.
2

On peut prendre pour la plus petite valeur propre de A, qui est une matrice symtrique dnie positive

ECP 2006-2007

80

CHAPITRE 4. OPTIMISATION SOUS CONTRAINTES DGALIT

81

4.4.4

Approximation numrique

Pour calculer la solution du problme doptimisation sous contraintes linaires (4.10) on peut utiliser les rsultats ci-dessus pour se ramener un problme sans contrainte ou traiter directement le problme doptimisation sur le sous-espace ralisable C laide des algorithmes que nous avons tudis (gradient, gradient conjugu) en notant que le gradient de la fonction F (x) resteinte C est la projection de F (x) sur C. Pour calculer la solution du problme doptimisation sous contraintes quelconques (4.1)on essaiera le plus souvent de simplier la recherche en se ramenant un problme sans contrainte par les mthodes de dualit ou par pnalisation (compltes par les mthodes de pnalisation-dualit), ou directement en linarisant localement les contraintes autour dune approximation xk , ce qui nous ramne au cas prcdent, puis en projetant sur C le nouveau point calcul xk+1 qui est hors de lensemble ralisable C. Le plus souvent on essaiera de simplier les contraintes par lintroduction de variables auxiliaires laide de techniques de dcouplage dont nous verrons des exemples en exercice. La connaissance dun paramtrage de lensemble C permet dadapter parfois les techniques prsentes dans le cas sans contrainte : par exemple sur une sphre on peut faire de la relaxation en remplaant les axes par les grands cercles... Voir la prsentation de lOptimization Toolbox de MatLab pour plus de dtails.

4.5
4.5.1

Complments : ce paragraphe est hors programme


Le principe dnergie complmentaire

Nous allons introduire sur un cas particulier un principe physique gnral, bien connu notamment en rsistance des matriaux. Soit : V = Rn , N matrices Bk de dimension (p, n), o p est un entier petit , (y) une fonction convexe dnie sur Rp . On considre le problme N F (x) = (Bk x) < b, x > (4.21) k=1 min F (x)
xV

Exemple : on cherche la position dquilibre dun treillis de N barres o x dnit la position des nuds, le vecteur yk = Bk x reprsente les dformations dans la barre k, (yk ) est lnergie de dformation , exprime en fonction des dformation, b dsigne les chargements, F (x) est lnergie potentielle totale. Nous supposerons la fonction (y) strictement convexe et coercive (cest dire (yk ) yk 2 linni). 2 On introduit les vecteurs yk comme inconnues auxiliaires ; posons y = (y1 , . . . , yN )t RpN et
N

F (x, y) =
k=1

(yk ) < b, x > 81 Mathmatiques 2

82

Optimisation

On remplace le problme (4.21) par un problme quivalent doptimisation sous contraintes dans lespace W = Rn RpN C = {(x, y) W minxC F (x, y) tel que Bk x yk = 0} (4.22)

Lintrt de cette transformation, souvent appele dcouplage, est que la fonction F est une somme de fonctions de variables yk indpendantes. On introduit un multiplicateur pour chaque liaison 3 , mais nous notons ici k le vecteur de Rp associ aux p multiplicateurs des liaisons yk = Bk x. Montrer que le Lagrangien scrit L(x, y, ) = F (x, y) < , y > + <
k

Bt k b, x > k

avec = (1 , . . . , N ) RpN (noter que k est ici un vecteur de Rp ). (Indic. : on introduit un multiplicateur pour chaque contraintes, pour k x, on introduit donc un multiplicateur pour les N contraintes Bk x yk = 0, ces m multiplicateurs forment un vecteur k dans Rp . Il y a juste appliquer la dnition et transformer < k , Bk x > en < Bt k , x >.) k Montrer que le minimum en y du Lagrangien existe, est unique et vrie (yk ) = k (Indic. : La fonction F (x, y) est une somme de fonctions Fk (y) = (yk ) < k , yk > de variables indpendantes yk , le minimum est obtenu en minimisant sparment par rapport chaque variable. Le minimum en yk vrie Fk (k ) = (yk ) k = 0 ) y Montrer que la fonction duale vaut sauf si Bt k = b k
k

Si cette condition est vrie, montrer que la fonction duale vaut () =


k

(k )

o (k ) = maxyk < k , yk > (yk ) est une fonction convexe appele la fonction conjugue de (yk ). (Indic. : La fonction F (x, y) est linaire en x, son minimum est donc sauf si la forme linaire est nulle, cest dire si Bt k b = 0 k
k

La fonction duale est la somme de termes ne dpendant pas de y et de dnition de yk on a aussi Fk (yk ) = min (yk ) < k , yk >
yk
3

Fk (yk ). En revenant la

En mcanique on prfrera parler de liaison plutt que de contrainte, le mot devenant ambigu.

ECP 2006-2007

82

CHAPITRE 4. OPTIMISATION SOUS CONTRAINTES DGALIT ou Fk (yk ) = max (yk ) < k , yk >
yk

83

o nous faisons apparatre une dnition classique dans la thorie des fonctions convexes : (k ) = max < k , yk > (yk )
yk

qui est, une fonction convexe, appele la fonction conjugue de . Noter que lon a symtriquement (k ) + (yk ) < k, yk > on en dduit pour une fonction convexe de Rn que = , do le vocabulaire conjugue ou duale. La thorie des fonctions convexes conjugues est une trs belle gnralisation de la dualit des espaces vectoriels, qui trouve de nombreuses applications, outre loptimisation, en thermodynamique des tranformations irrversibles, comme en mcanique des matriaux comportement non linaires.) En dduire que le problme dual scrit, en remplaant () par () et le maximum par un minimum t = { RpN tel que k Bk k = 0} ( ) () = k k (4.23) () () (Indic. : Il suft de maximiser la fonction duale sur lensemble de ses valeurs nies pour obtenir le rsultat demand.) Interprtation pour un treillis de barres : Si le vecteur yk reprsente les dformations dans une barre, k reprsentera les contraintes (ou les efforts) dans la barre, la condition k Bt k = b exprime que les contraintes sont en quilibre sur toute k la structure (i.e. la somme des efforts internes sur chaque nd quilibre les chargement), la fonction (k ) exprime lnergie de dformation dune barre en fonction des contraintes dans cette barre, le problme dual est le principe dnergie complmentaire : les efforts lquilibre dans la structure minimisent lnergie complmentaire sur lensemble des contraintes en quilibre. Lintrt du principe dnergie complmentaire vient de ce que dans certains cas il est possible de caractriser les directement les contraintes en quilibre, ce qui permet dobtenir de nouveau un problme doptimisation libre, et aussi du fait le calcul de lnergie complmentaire permet dobtenir un encadrement de lnergie de la position dquilibre.

4.5.2

Dualit en prsence de contraintes dgalit et dingalit

Le problme Dans la situation la plus gnrale il y a des contraintes dgalit et dingalit. Nous voulons traiter par dualit les seules contraintes dgalit (nous verrons dans la sance suivante comment dualiser lensemble des contraintes). Cela revient poser le problme doptimisation non pas dans un 83 Mathmatiques 2

84

Optimisation

espace vectoriel avec en plus un nombre ni de contraintes dgalit, mais dans un convexe V avec en plus des contraintes dgalit. C = {x tel que B = c} x x C F () F (x) x (4.24)

Nous supposerons le convexe dintrieur non vide, la fonction objectif convexe, que les contraintes sont indpendantes (le rang de B est p) et quil existe un point intrieur qui vrie les contraintes. Adaptation La situation est ici un peu diffrente du fait de la restriction du problme doptimisation au convexe , ce qui implique notamment que certaines hypothses de diffrentiabilit sont fausses. Le rsultat essentiel demeure exact sous la forme du thorme (18). Dmonstration : En remplaant la fonction F (x) par F0 (x) = F (x) F (), on peut supposer F0 (x) 0 sur C et x F0 () = 0 . On note Fj (x) = 0 les contraintes. Soit x G Rp+1 = {(y0 , y1 , . . . , yp ), tel que x et y0 F0 (x), yi = Fi (x)} La premire composante dun point de G est positive puisque F0 (x) 0. Le point (0, 0, . . . , 0) est sur la frontire de G, car si > 0 les points ( , 0, . . . , 0) ne sont pas dans G. Des hypothses on dduit que lensemble G est un convexe ferm dintrieur non vide dans Rp+1 . On en dduit (cf. 7) lexistence dun hyperplan dappui G en (0, 0, . . . , 0) et donc de rels non tous nuls (j , j = p+1 tels que 1, . . . , p) R
p

x C,
j=0

j Fj (x) 0

ou encore, puisque les contraintes sont indpendantes et donc 0 = 0, ce qui permet de supposer 0 = 1, do
p

x C, F0 (x) +
j=1

j Fj (x) 0

Comme nous avons pos F0 (x) = F (x) F () x


p

x C,
j=1

j Fj (x) F () x

cest dire, en tenant compte de Fj () = 0 x x C, L(, ) L(x, ) x

ECP 2006-2007

84

CHAPITRE 4. OPTIMISATION SOUS CONTRAINTES DGALIT Dualit On dnit encore la fonction duale par () = min L(x, )
x

85

(4.25)

La dmonstration du principe du maximum reste valide. Par contre lexpression du gradient de la fonction duale est fausse, la fonction duale nest plus drivable en tout point (quand x() est sur le bord de ).

85

Mathmatiques 2

86

Optimisation

ECP 2006-2007

86

Chapitre 5

Optimisation sous contraintes dingalit


Objectifs Traitement des contraintes dingalit. Le thorme de Kuhn et Tucker. Mthode de dcomposition. Mthodes de pnalisation.

F1(x)>0 dx Grad F2(x)

F2(x)>0

dx x Grad F2(x) x

F3(x)>0 Grad F(x) x

F IG . 5.1 Optimisation sous contraintes linaires en dimension 2

Notations
On note V un espace vectoriel norm, x un point de V , F (x) une fonction de V dans R. Fj (x) les fonctions dnissant les contraintes.

5.1
5.1.1

Optimisation sous contraintes dingalit


Prsentation

Un problme doptimisation sous contraintes dingalit, cest dire la recherche du minimum dune fonction sur une partie C V ferme, dnie par des contraintes dingalit, scrit sous la 87

88 forme suivante. C = {x V tel que Fj (x) 0 , j = 1, . . . , p} x C F () F (x) x

Optimisation

(5.1)

Les fonctions F (x), Fi (x), i = 1, . . . , p, sont des fonctions continues de V dans R. Ltude que nous allons faire peut tre tendue au problme de la recherche des minimums locaux, nous ne le ferons pas pour allger lcriture. Pour la maximisation des fonctions, le lecteur devra adapter... Rappelons (cf. sance 2) que si V = Rn et si C est born, le minimum existe, et si C est convexe et F (x) est strictement convexe le minimum est unique. Un point qui vrie les contraintes est ralisable. Si Fi (x) = 0 on dit que la contrainte est sature ou active. Les contraintes peuvent ici tre trs nombreuses p >> n. Si les fonctions F (x), Fi (x) sont linaires (resp. convexes) le problme est aussi appel programmation linaire (resp. programmation convexe), si F (x) est quadratique et le contraintes linaires, on parle de programmation quadratique. La programmation linaire et la programmation quadratique sont des problmes dune grande importance pratique, ils seront lobjet dun traitement particulier car leur solution peut tre obtenue par en un nombre ni dopration (algorithme du simplexe ou de Dantzig). Nous les tudierons ultrieurement. Lensemble C peut tre assez pathologique (ou vide !), nous supposerons que les contraintes dnissent un ensemble dintrieur non vide. Si les contraintes sont convexes C est un ensemble convexe. Si les contraintes sont linaires C est un polydre convexe. Certaines contraintes peuvent tre surabondantes (consquence des autres) et la dtection de ces contraintes surabondantes nest pas non plus un problme facile (mais en gnral cette dtection nest pas ncessaire pour appliquer les algorithmes de calcul). Notons enn que dans un espace de dimension n il y a en gnral au plus n contraintes actives en un point, mais il peut y avoir plus de n contraintes actives en un point sans quaucune ne soit surabondante (Si C est une pyramide, cest la cas du sommet de la pyramide). La dtermination dun point ralisable nest pas en gnral un problme trivial, mme pour des contraintes linaires.

5.1.2

Prliminaires

Nous dmontrons ci-dessous un lemme utile pour la suite. Lemme 3 Soit i (x), j = 1, . . . , p, et (x), p + 1 formes linaires sur V telles quil existe x0 V vriant i, 1 i p, i (x0 ) > 0. Si (j = 1, . . . , p, j (x) 0) (x) 0 alors il existe p rels j 0, j = 1, . . . , p, tels que
p

=
j=1

j j

Dmonstration Soit (x) lapplication de V dans Rp+1 dnie par (x) = ((x), 1 (x), . . . , p (x)) ECP 2006-2007 88

CHAPITRE 5. OPTIMISATION SOUS CONTRAINTES DINGALIT

89

Par la linarit de lapplication , (V ) est un sous-espace vectoriel E de Rp+1 ; lintersection de E et du cne ouvert = {x Rp+1 , tel que x0 > 0, x1 > 0, . . . , xp > 0} est vide daprs lhypothse. Il existe donc, daprs le thorme de sparation (cf. chapitre 2, thorme 7), une forme linaire, de coefcients , 1 , . . . , p , telle que
p

x V, (x) +
i=1

i i = 0

et y , y0 +

i yi 0
i=1

Si un des coefcients ou i , i = 1, . . . , p tait ngatif, cette ingalit serait contredite en prenant p yi trs grand. Dautre part = 0 sinon on aurait i=1 i i (x0 ) = 0 avec i (x0 ) > 0 et donc i, i = 0 ; on en dduit le rsultat en divisant par > 0.

5.1.3

Optimisation convexe

Nous faisons lhypothse que les fonctions F (x) et Fi (x) sont convexes, C est alors un convexe que nous supposerons dintrieur non vide. Caractrisation du minimum

Grad F(x) x dx

F(x) = Cte x

F IG . 5.2 Caractrisation du minimum On peut caractriser gomtriquement le minimum dune fonction sur un convexe : Lemme 4 Si x ralise le minimum dune fonction F (x) sur un convexe C alors y C DF ().(y x) 0 x

Si la fonction F (x) est convexe, la condition est sufsante 89 Mathmatiques 2

90 Dmonstration Soit la fonction de t [0, 1] dnie par h(t) = F (t + (1 t)y) x

Optimisation

lhypothse implique que h(t) doit tre minimum en t = 0, ce qui entrane h (0) 0. Or h (0) = DF ().(yx). Si la fonction h(x) est convexe, il en est de mme pour h(t), or la condition h (0) 0 x est sufsante pour que 0 ralise le minimum de h(t) sur [0, 1]. Le thorme de Kuhn et Tucker On peut, comme nous lavons vu pour les contraintes dgalit, caractriser le minimum laide de multiplicateurs de Lagrange : Thorme 21 On suppose que les fonctions F (x) et Fi (x) sont convexes et que C est dintrieur non vide, i.e. x0 C tel que Fi (x0 ) < 0 i = 1, . . . , p. Le point x est solution du problme (5.1) si et seulement si il existe des rels positifs ou nuls j 0, j = 1, . . . , p, tels que le Lagrangien
p

L(x, ) = F (x) +
j=1

j Fj (x)

vrie x x V, L(, ) L(x, ) j Fj () = 0, j = 1, . . . , p x Fj () 0, j 0 j = 1, . . . , p x o nous avons pos = (j , j = 1, . . . , p) Rp . Si les fonctions F (x), Fi (x) sont diffrentiables la condition ncessaire et sufsante scrit Thorme 22 DF () + x
p

(5.2)

j DFj () = 0 x
j=1

x F () = 0 j = 1, . . . , p, j j Fj () 0, j 0 j = 1, . . . , p x Dmonstration du thorme de Kuhn et Tucker

(5.3)

(Hors programme) En remplaant la fonction F (x) par F0 (x) = F (x) F (), on peut supposer x F0 (x) 0 sur C et F0 () = 0 . Soit x = {y = (y0 , . . . , yp ) Rp+1 , ECP 2006-2007 tel que 90 x V et yi Fj (x), i = 0, . . . , p}

CHAPITRE 5. OPTIMISATION SOUS CONTRAINTES DINGALIT Des hypothses on dduit facilement que lensemble est un convexe ferm dans Rp+1 . Soit = {y Rp+1 , tel que yi < 0, i = 0, . . . , p}

91

(lintrieur du du cne ngatif de Rp+1 ) est un convexe ouvert. Lintersection de et est vide, car si y il existerait x V vriant la fois Fi (x) yi < 0, i = 0, . . . , p et y0 F0 (x) 0 ce qui est contradictoire. On en dduit, par le thorme de sparation (cf. chapitre 2, thorme 7) lexistence dun hyperplan sparant les deux convexes et donc de rels non tous nuls (j 0 tels que
p

x V,
j=0 p

j Fj (x) 0

(5.4)

y
j=0

j yj < 0

(5.5)

1) De (5.5) on dduit (en faisant tendre yj vers ) que, pour tout j j 0 2) En appliquant (5.4) un point x0 qui vrie Fi (x0 ) < 0, i = 1, . . . , p on a
p

0 F0 (x0 ) (
j=1

j Fj (x0 )) > 0

et donc 0 > 0, ce qui permet de supposer 0 = 1. Do (5.4) se rcrit


p

x V, F0 (x) +
j=1

j Fj (x) > 0

ou encore x V, F (x) +

j Fj (x) F () x
j=1

(5.6)

3) En appliquant (5.4) x il vient

j Fj () 0 x
j=1

en tenant compte de ce que Fj () 0, j 0, j = 1, . . . , p, on en dduit x j Fj () = 0, j = 1, . . . , p x 4) on reporte ce rsultat dans (5.6)


p p

x V, F (x) +
j=1

j Fj (x) > F () + x
j=1

j Fj () x

cest dire que x est le minimum du Lagrangien. 91 Mathmatiques 2

92

Optimisation

F1(x)>0

F2(x)>0

Grad F3(x) Grad F(x) dx Grad F2(x) F3(x)>0

F IG . 5.3 Caractrisation du minimum : cas o x est un point extrmal Analyse des conditions doptimalit Le thorme de Kuhn et Tucker afrme, sans condition de drivabilit, que lon peut ramener le problme sous contraintes des problmes doptimisation sans contrainte sur le Lagrangien. Sous la deuxime forme (5.3), donc en supposant les fonctions diffrentiables, le thorme est une consquence immdiate des lemmes 1 et 2. Supposons en effet que, localement autour de x, le convexe est dtermin par m contraintes Fi (x) 0 que nous supposerons tre les premires (i = 1, . . . , m), la condition du lemme (1) quivaut (voir gure (5.3)) z Rn , < Fi (), z > 0 < x
m

F (), z > 0 x

et donc daprs le lemme 2, il existe des rels positifs non tous nuls i , i = 1, . . . , m, tels que F () = x
i=1

i Fi () x

puis, en dnissant des multiplicateurs nuls pour les autres contraintes (i > m), on peut aussi crire
p

F () + x
i=1

i Fi () = 0 x

Le thorme reste vrai sous la forme (5.3) pour caractriser un minimum local dune fonction F (x) non convexe. On peut ltendre des contraintes non convexes, mais il faut rajouter des conditions locales en x assurant la non dgnrescence des contraintes. Il y a un multiplicateur non nul seulement pour les contraintes satures en x, ce qui fait gnra lement au plus n multiplicateurs non nuls. Pour prciser, considrons le cas des contraintes linaires dans R3 , le convexe C est un polydre, le point x peut tre lintrieur (alors F () = x 0), sur une face (le gradient est perpendiculaire cette face et dirig vers lintrieur), sur une arte (il y a deux multiplicateurs non nuls),ou sur un sommet (il y a alors trois multiplicateurs non nuls). Le minimum x tant aussi le minimum sur lensemble dni par les contraintes sa tures, le thorme de Lagrange sapplique, mais le rsultat est ici plus prcis car lorientation du gradient est x. Le multiplicateur, nous lavons vu pour les contraintes dgalit, mesure la sensibilit de la valeur optimale par rapport la variation de la contrainte. ECP 2006-2007 92

CHAPITRE 5. OPTIMISATION SOUS CONTRAINTES DINGALIT

93

Quand V = Rn le thorme permet de dterminer les multiplicateurs en un point x qui ralise le minimum et de tester si ce point est un minimum : on dtermine dabord les contraintes satures (sauf point exceptionnel, elles sont en nombre infrieur n et indpendantes), on rcrit (5.3) en faisant apparatre les gradients ; les gradients de ces contraintes forment les lignes dune matrice B. Daprs (5.3), si x est le minimum, les multiplicateurs des contraintes satures (les autres sont nuls) forment un vecteur tel que F () + Bt = 0 x On en dduit quil faut calculer = (BBt )1 B F () x x est le minimum si les composantes de sont positives et si (5.7) est vri. On peut remplacer lespace V par un convexe dintrieur non vide, par exemple le cne positif de Rn . (5.7)

5.1.4

Optimisation et dualit

Nous nous plaons sous lhypothses o la fonction optimiser F (x) est convexe et les contraintes convexes. Thorme 23 Le couple (, ) solution du problme (5.1) est un point selle du Lagrangien, i.e. il x vrie x V, 0 Rp , L(, ) L(, ) L(x, ) x x (5.8) Dmonstration On a, en utilisant les conditions i 0 et Fi () 0, x L(, ) F () x x Puis en utilisant i Fi () = 0 x F () = L(, ) x x do L(, ) L(, ) x x et daprs (5.2) L(, ) L(x, ) x do le rsultat. Cela nous conduit dnir la fonction duale Dnition 19 On appelle fonction duale du problme doptimisation (5.1) la fonction de Rp dans R dnie par () = min L(x, ) (5.9)
x

93

Mathmatiques 2

94 Par construction et par (5.8) on a donc () L(, ) L(, ) = () x x

Optimisation

La fonction duale peut ne pas tre toujours dnie, nous poserons alors que sa valeur est alors . En utilisant les mmes arguments que pour les contraintes dgalit on montre le Thorme 24 La fonction duale () est une fonction concave (comme borne infrieure dune famille de fonction afne). On a () = (F1 (x()), . . . , Fi (x()))t (5.10)

o x() est la solution du problme primal. La fonction duale atteint son maximum sur lensemble des multiplicateurs positifs pour les multiplicateurs solutions de (5.2) 0 Rp , () () = L(, ) x

La recherche du maximum de la fonction duale est le problme dual tandis que le problme de minimisation sans contrainte (5.9) est le problme primal. Dans le cas gnral la fonction duale va servir dnir un algorithme de calcul approch des multiplicateurs, comme nous lavons vu dans lalgorithme dUzawa (cf. cours sance 4). Le problme dual est ici nouveau un problme doptimisation sous contraintes, mais lensemble des points ralisables est ici trs simple puisque cest le cne positif de Rp . On connat toujours un point ralisable de ce problme, lorigine 0. On peut appliquer ce problme un algorithme direct doptimisation sous contraintes linaires, comme le gradient projet ; ce type dalgorithme exige le calcul de la projection du gradient sur les faces, artes, etc. ce qui dans le cas du cne positif est trs facile. Le calcul du gradient par la formule (5.10) exige le calcul de la solution du problme primal pour des valeurs donnes des multiplicateurs. En rsum : Lutilisation de la dualit conduit un problme doptimisation sous contraintes de positivit sur les multiplicateurs qui peut tre rsolu par un algorithme itratif o chaque itration il faut rsoudre un problme primal qui est un problme doptimisation sans contrainte

5.2
5.2.1

Applications
Minimisation dune fonction quadratique convexe sous des contraintes dingalit linaires

On suppose que V = Rn et F (x) = 1 < Ax, x > < b, x >, avec A symtrique dnie 2 positive. Si les fonctions Fi (x) sont linaires, on peut crire lensemble des contraintes sous la forme Bx c, o B est une matrice de dimension (p, n) et c Rp , le problme scrit C = {x V tel que Bx c} 1 (5.11) F (x) = < Ax, x > < b, x > 2 x C F () F (x) x ECP 2006-2007 94

CHAPITRE 5. OPTIMISATION SOUS CONTRAINTES DINGALIT On pose = (1 , . . . , p )t Rp . Le Lagrangien scrit 1 < Ax, x > < b, x > + < Bt , x > 2 Les conditions doptimalit du thorme (5.3) scrivent, aprs rarrangement des termes x +Bt = b A B c > < , x =0 0 L(x, ) =

95

(5.12)

Cest un systme dquations et dinquations sparment linaires en x et . On peut ramener sa rsolution des inquations linaires. On peut aussi utiliser une mthode de dualit, il faudra alors calculer la solution du problme primal (qui est un problme doptimisation quadratique) obtenue en rsolvant le systme linaire Ax() = b Bt Ce systme est matrice xe, on peut donc trianguler la matrice A une seule fois, la rsolution du systme pour chaque valeur de se ramne deux systmes matrice triangulaire, ce qui un cot comparable une multiplication matrice-vecteur. On peut amliorer lutilisation de la dualit par une technique de Lagrangien augment.

5.2.2

Contraintes quadratiques

Nous considrons un problme modle doptimisation dune fonction quadratique sous des contraintes quadratiques convexes. Pour cette classe de problme il ne peut pas exister dalgorithme exact : les coordonnes du point commun p contraintes sont les zros de polynmes de degr lev, il ny a donc pas dalgorithme exact pour les calculer. Soit : V = Rn , A une matrice symtrique dnie positive, p matrices Bk symtriques semi-dnies positives de dimension (n, n). C = {x V tel que < Bk x, x > 1 0 , j = 1, . . . , p} 1 (5.13) F (x) = < Ax, x > < b, x > 2 x C F () F (x) x On introduit le Lagrangien L(x, ) = ce qui scrit encore L(x, ) = 1 < Ax, x > < b, x > + < C()x, x > 2 k
k

1 < Ax, x > < b, x > + 2

(< Bk x, x > 1)k


k

o nous avons introduit la matrice C(), semi-dnie positive (pour 0) C) =


k

k Bk 95 Mathmatiques 2

96 La solution x() du problme primal est le minimum de la fonction quadratique 1 < (A + 2C())x, x > < b, x > 2 donc x() est solution du systme linaire matrice symtrique dnie positive (A + 2C())x() = b

Optimisation

La matrice dpend des multiplicateurs ce qui interdit de la trianguler par la mthode de Gauss une seule fois pour toutes les valeurs de . On peut rsoudre le systme par la mthode du gradient conjugu sans avoir calculer C() car cette mthode nexige que des calculs de produits matricevecteur, ce qui peut seffectuer directement partir des matrices Bk et permet de tenir compte des structures ventuellement trs creuses de A et Bk .

5.2.3

Exemples

Un problme de mcanique

(x2,y2)

(x1,y1)

(xn,yn)

F IG . 5.4 Minimisation de lnergie potentielle dune structure On veut calculer la position dquilibre dun treillis de barres dont les dplacements de certains nuds sont limits par un contact unilatral (voir chapitre 1 paragraphe (1.1.4) ). La position dquilibre minimise lnergie potentielle min
x

1 Kx, x b, x 2

avec les conditions de non enfoncement des appuis que lon peut crire Fi (x) 0 o Fi (x) = 0 est lquation de la surface de contact dun nud rcrite en fonction de toutes les variables. Les multiplicateurs sont ici, comme pour un contact bilatral, des ractions des appuis, mais la diffrence dun contact bilatral, lorientation de ces ractions est connue ce qui xe le signe du multiplicateur. ECP 2006-2007 96

CHAPITRE 5. OPTIMISATION SOUS CONTRAINTES DINGALIT


Ressources 1 b11 x1+ b12 x2 < Q1 Produits 1 Quantit x1 Ressources 2 b21 x1+ b22 x2+b23 x3 < Q2 Produits 2 Quantit x2 Ressources 3 Produits 3 b31 x1+ b33 x3 < Q3 Quantit x3 Ressources 4 b41 x1+ b42 x2+ b43 x3 < Q4

97

F IG . 5.5 Optimisation du cot de fabrication Un problme de gestion On veut minimiser le cot F (x) de n produits fabriqus en quantit x = (x1 , ..., xi , ..., xn )t en utilisant p resources sous p contraintes sur les quantits de ressources disponibles Fj (x) =
i

bij xi Qj

Introduisons des multiplicateurs j , j = 1, ..., p et le lagrangien


p

L(x, ) = F (x) +
j=1

j (Qj Fj (x))

Le multiplicateur j reprsente le prix marginal dune matire premire manquante. Le lagrangien reprsente le cot de fabrication major du cot des matires premires non utilises ou minor du cot des matires acheter.

5.3
5.3.1

Autres approches
Mthodes de pnalisation extrieure

Pour trouver une solution approche de ( 5.1) on peut encore utiliser le principe de pnalisation consistant remplacer le problme doptimisation avec contraintes par un problme sans contrainte en ajoutant la fonction objectif des fonctions de pnalit qui sont trs grandes ds que les contraintes Fi (x) sont positives. Il y a des variantes, on peut par exemple remplacer ( 5.1) par le problme pnalis (Fi (x)+ )2 F (x) = F (x) + 2 (5.14) i x V F (x ) F (x) 97 Mathmatiques 2

98

Optimisation

o nous avons utilis la notation a+ = sup(a, 0). Le paramtre de pnalisation sera pris petit. Le rsultat attendu est que si 0 la solution x du problme pnalis tende vers la solution x du problme doptimisation sous contraintes. Mais la fonction (t+ )2 est seulement une fois drivable ce qui interdit dutiliser des algorithmes trs perfor+ 3 mant comme le gradient conjugu. La fonction de pnalisation (Fi (x) ) est deux fois drivable mais 3 elle est trs plate au voisinage des surfaces de contraintes. On peut aussi utiliser aussi la fonction C1 exp C2 Fi (x). Lintrt de la mthode est la simplicit de sa mise en oeuvre. Mais on aura de faon certaine un mauvais conditionnement.

5.3.2

Mthode de pnalisation intrieure

On peut introduire le principe de pnalisation dune autre manire, en supposant connu un point ralisable, en ajoutant la fonction objectif des fonctions barrires qui sont trs grandes ds que un points x C sapproche du bord. On prend en gnral les fonctions ln(Fi (x)), o est un nombre positif, ces fonctions deviennent innies si x sapproche du bord. On remplace ( 5.1) par le problme pnalis F (x) = F (x) ln(Fi (x)) (5.15) i x V F (x ) F (x) Prsente sous cette forme dans les annes 50 cette ide a t reprise sous une forme plus sophistique dans les annes 80 quand Karmarkar a introduit pour la programmation linaire un algorithme qui permettait datteindre lobjectif dun programme linaire (o toutes les donnes sont des nombres rationnels) en un temps polynmial par rapport la longueur des donnes (en particulier le nombre de contraintes) 1 . On a rattach cet algorithme aux mthodes de pnalisation intrieure compltes par une une variation judicieuse du paramtre 0. Depuis les mthodes de pnalisation intrieures ont rvolutionn la rsolution des problmes non linaires avec un grand nombre de contraintes. La complexit de certains problmes doptimisation sous contraintes vient de ce que les points calculs, par exemple en suivant la plus grande pente, sont trs rapidement sur le bord, or la complexit combinatoire du bord, form dun trs grand nombre dintersection de facettes en toutes dimensions 2 rend le dplacement sur le bord trs lent. Lide des algorithmes modernes de pnalisation intrieure est de maintenir les points loin du bord et, par une variation approprie de , de faire parcourir aux itres une courbe qui arrive sur le bord dune manire non tangentielle. Il y a cependant de nombreuses difcults techniques pour mettre au point ces algorithmes.

5.3.3

Mthodes de dcomposition

Prsentation Nous allons reconsidrer lide dintroduire des variables auxiliaires pour dcomposer un problme que nous avons prsent en exercice dans la sance 4.
1 2

Lalgorithme du simplexe, quoique en gnral trs efcace, peut avoir une complexit exponentielle qui est exponentiel par rapport au nombre de contraintes

ECP 2006-2007

98

CHAPITRE 5. OPTIMISATION SOUS CONTRAINTES DINGALIT Nous reprenons le problme (5.13) : C = {x V tel que < Bk x, Bk x > 1 0 , j = 1, . . . , p} 1 F (x) = < Ax, x > < b, x > 2 x C F () F (x) x

99

(5.16)

On introduit les vecteurs yk = Bk x comme variables auxiliaires ; posons y = (y1 , . . . , yp )t Rmp et F (x, y) = F (x). Soit W = Rn Rmp , et = {(x, y) W tel que < yk , yk > 1 0} on remplace le problme (5.16) par un problme quivalent doptimisation sous contraintes dgalit dans le convexe (dintrieur non vide) C = {(x, y) tel que Bk x yk = 0, k = 1, . . . , p} x (x, y) C, F (, y ) F (x, y) (5.17)

Lintrt de cette transformation est quil faut minimiser la nouvelle fonction F sur un ensemble , qui est certes dni par des contraintes dingalit mais trs simples, sous des contraintes dgalit qui sont linaires Bk x yk = 0. Nous somme donc dans la situation tudie la sance 4, dans le paragraphe Contraintes dgalit et dingalit. On introduit les multiplicateurs des contraintes dgalit et on construit le Lagrangien pour ces contraintes L(x, y, ) = F (x, y) +
k

< k , Bk x yk >

avec = (1 , . . . , p ) Rmp (noter que k est ici un vecteur de Rp associ aux m multiplicateurs des m contraintes Bk x yk = 0.). On dnit la fonction duale () = min L(x, y, ) (5.18)
(x,y)C

Calcul de la solution du problme primal L(x, y, ) est minimum en x pour (x, y) ce qui laisse x quelconque dans Rn . En laissant de ct les termes indpendants de x, x() est le minimum de la fonction quadratique F (x)+ < Bt , x >, il est donc solution du systme linaire k Ax = b Bt k L(x, y, ) est minimum en y. En laissant de ct les termes indpendants de y il vient que y() est la solution de 1 = {y = (y1 , . . . , yp ) Rmp tel que < yk , yk > 1 , j = 1, . . . , p} (5.19) < k , yk > min
1 k

99

Mathmatiques 2

100

Optimisation Or ce problme se dcouple en problmes indpendants sur Rp pour chacune des variables yk
<yk ,yk > 1

min

< k , yk >

(5.20)

La solution de (5.20) est explicite yk = Optimisation de la fonction duale Pour maximiser la fonction duale sur Rp , il suft dadapter notre problme lalgorithme dUzawa prsent la sance 4. Algorithme dUzawa On note ici yi et i les dcompositions des vecteurs y Rmp et Rmp en lments de Rm Choisir une estimation de 0 et de > 0 (assez petit), Faire : Chercher (xk , y k ) solution du problme primal : Axk = b Bt k k
k yi =

k k

Fk = L(xk , y k , k ) Tester Fk > Fk1 sinon diminuer g k = Bxk c k+1 = k + g k Tant que g k eps g 0

k i k i

5.4

Mthodes numriques

Rappelons que si la fonction objectif est linaire ou quadratique (programmation linaire ou quadratique) et les contraintes linaires, il existe des algorithmes directs que nous prsenterons dans une sance ultrieure.

5.4.1

Les contraintes sont linaires

On peut utiliser les techniques de dualit ou de pnalisation pour se ramener un problme sans contrainte, les mthodes de pnalisation intrieure tant spcialement recommandes si les contraintes sont nombreuses. On peut traiter directement le problme doptimisation ; dans ce cas on dnit des mthodes de descente sur lensemble des solutions ralisables en adaptant les algorithmes que nous avons tudis (gradient, gradient conjugu) ce qui conduit aux mthodes itratives dites de gradient projet ou de gradient conjugu projet. Leur principe est le suivant, en un point xk : on dtermine les contraintes actives en point associes un multiplicateur positif, elles forment la base (voir (5.3)). on rsout le problme doptimisation sous les contraintes dgalit associes aux contraintes de la ECP 2006-2007 100

CHAPITRE 5. OPTIMISATION SOUS CONTRAINTES DINGALIT

101

base tant que les contraintes hors base sont vries, cela dtermine un nouveau point xk+1 . Le minimum est obtenu si toutes les contraintes actives sont dans la base et si (5.7) est vri.

5.4.2

Les contraintes sont non-linaires

Pour calculer la solution du problme doptimisation sous des contraintes quelconques on essaiera le plus souvent de simplier la recherche en se ramenant un problme sans contrainte ou avec des contraintes plus simples par les mthodes de dualit ou par pnalisation, notamment par pnalisation intrieure, ou encore par lintroduction de variables auxiliaires laide de techniques de dcouplage. On peut aussi minimiser directement (si on connat un point ralisable), on dnit des mthodes itratives de la manire suivante : on linarise localement les contraintes au voisinage dun point xk , ce qui nous ramne un problme doptimisation sous contraintes linaires3 pour dterminer une nouvelle estimation xk+1 , qui est en gnral hors de lensemble ralisable C, et on projette ce point sur C. Voir lintroduction la lOptimization Toolbox de Matlab pour plus de dtails.

5.4.3

Conclusion

Un problme doptimisation peut prendre un grand nombre de formes quivalentes ou proches : nous avons introduit des mthodes pour transformer un problme. La modlisation est le vrai problme de loptimisation.

y compris des contraintes qui assure la localisation

101

Mathmatiques 2

102

Optimisation

ECP 2006-2007

102

Bibliographie
[1] On trouvera des liens et une bibliographie sur "www.etudes.ecp.fr", rubrique "Mathmatiques 2" . [2] P. Lascaux et R. Theodor, Lanalyse numrique matricielle applique lart de lingnieur, Masson, Paris :1993. [3] P. Laurent-Gengoux et D. Trystram, Comprendre linformatique numrique, Tec et Doc, Lavoisier Edition, Paris : 1989 [4] J.C. Culioli, Introduction loptimisation, Ellipses, Paris :1994 [5] P. E. Gill, W. Murray, and M. H. Wright, Practical Optimization Academic Press, New York : 1981. [6] R. Fletcher, Practical Methods of Optimization, Second Edition, John Wiley, Chichester and New York : 1987.

103

104

Optimisation

ECP 2006-2007

104

Вам также может понравиться