Notes de cours d'analyse numérique et d'optimisation continue ...

150
Notes de cours d’analyse num´ erique et d’optimisation continue. TELECOM BRETAGNE S1, MTS 435 et pr´ eparation Master SISEA (Rennes I) Thierry CHONAVEL [email protected] novembre 2014

Transcript of Notes de cours d'analyse numérique et d'optimisation continue ...

Page 1: Notes de cours d'analyse numérique et d'optimisation continue ...

Notes de cours d’analyse numerique

et d’optimisation continue.

TELECOM BRETAGNE

S1, MTS 435 et preparation Master SISEA (Rennes I)

Thierry [email protected]

novembre 2014

Page 2: Notes de cours d'analyse numérique et d'optimisation continue ...

Table des matieres

1 Introduction 8

2 Un exemple introductif 13

I Analyse numerique matricielle 20

3 Rappels sur les matrices et les systemes d’equations lineaires 21

3.1 Applications lineaires et matrices . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3.2 Changement de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.3 Quelques familles de matrices importantes . . . . . . . . . . . . . . . . . . . . . . 24

3.4 Determinant et inverse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3.4.1 Valeurs propres et vecteurs propres . . . . . . . . . . . . . . . . . . . . . . 26

3.4.2 Image et noyau d’une matrice . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.4.3 Changement de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.4.4 Factorisation de matrices . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.5 Produits scalaires et normes vectorielles et matricielles . . . . . . . . . . . . . . . 28

3.5.1 Projection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

3.6 Notions generales sur les algorithmes numeriques . . . . . . . . . . . . . . . . . . 29

3.6.1 Complexite algorithmique . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

1

Page 3: Notes de cours d'analyse numérique et d'optimisation continue ...

TABLE DES MATIERES 2

3.6.2 Conditionnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

4 Systemes d’equations sur-determines et sous-determines 32

4.1 Systemes sur-determines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

4.2 Systemes sous-determines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

4.3 Cas general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

4.4 Matrices blocs et resolution partielle des systemes lineaires . . . . . . . . . . . . . 35

5 Resolution directe des systemes lineaires 36

5.1 Methodes de Gauss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

5.1.1 Principe general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

5.1.2 Stabilite et pivot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

5.1.3 Cout de calcul, determinant et inverse . . . . . . . . . . . . . . . . . . . . 38

5.1.4 Methode de Cholesky . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

5.2 Triangularisation par orthonormalisation . . . . . . . . . . . . . . . . . . . . . . . 40

5.2.1 Methode de Householder . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

5.2.2 Methode des rotations de Givens . . . . . . . . . . . . . . . . . . . . . . . 41

5.2.3 Methode de Gram-Schmidt . . . . . . . . . . . . . . . . . . . . . . . . . . 42

6 Resolution iterative des systemes lineaires 43

7 Decompositions en valeurs propres et en valeurs singulieres 45

7.1 Diagonalisation des matrices symetriques : la methode de Jacobi . . . . . . . . . 46

7.2 Forme Hessenberg des matrices carrees . . . . . . . . . . . . . . . . . . . . . . . . 47

7.3 Decomposition en valeurs propres : le cas general . . . . . . . . . . . . . . . . . . 49

7.3.1 Aspects algorithmiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

Page 4: Notes de cours d'analyse numérique et d'optimisation continue ...

TABLE DES MATIERES 3

7.3.2 Lien avec la decomposition de Jordan . . . . . . . . . . . . . . . . . . . . 49

7.4 Decomposition en valeurs singulieres . . . . . . . . . . . . . . . . . . . . . . . . . 50

7.4.1 Realisation de la decomposition en valeurs singulieres . . . . . . . . . . . 51

II Introductionaux operateurs lineaires 55

8 Introduction 56

9 Espaces de Hilbert 57

9.1 Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

9.1.1 produit scalaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

9.1.2 Espace de Hilbert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

9.2 Theoreme de projection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

9.3 Bases orthonormees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

9.4 Separabilite et isometrie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

9.4.1 Separabilite et bases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

9.4.2 Projection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

9.4.3 Isometrie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

10 Operateurs lineaires 63

10.1 Norme d’un operateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

10.2 Representation matricielle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

III Interpolation et integration 68

11 Interpolation et integration 69

Page 5: Notes de cours d'analyse numérique et d'optimisation continue ...

TABLE DES MATIERES 4

11.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

11.2 Interpolation polynomiale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

11.2.1 Interpolation de Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

11.2.2 Le phenomene de Runge . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

11.3 Integration de Newton-Cotes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

11.4 Methode de Gauss-Legendre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

11.5 Methode de Clenshaw-Curtis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

11.6 Calcul d’erreur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

IV Optimisation 76

12 Introduction 77

13 Elements de calcul differentiel 80

13.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

13.2 Rappels sur les espaces L(X,Y ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

13.3 Derivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

13.3.1 Application derivee . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

13.3.2 Derivation pour f definie sur des espaces produits . . . . . . . . . . . . . 81

13.3.3 Composition des applications derivables . . . . . . . . . . . . . . . . . . . 82

13.4 Derivee seconde . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

13.5 Formules de Taylor et theoreme des fonctions implicites . . . . . . . . . . . . . . 83

13.6 Accroissements finis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

13.7 Formules de taylor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

14 Optimisation sans contraintes : criteres d’optimalite 85

Page 6: Notes de cours d'analyse numérique et d'optimisation continue ...

TABLE DES MATIERES 5

14.1 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

14.1.1 Optimalite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

14.1.2 directions admissibles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

14.2 Conditions necessaires d’optimalite . . . . . . . . . . . . . . . . . . . . . . . . . . 86

14.3 Conditions suffisantes d’optimalite . . . . . . . . . . . . . . . . . . . . . . . . . . 88

14.4 Convexite et optimalite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

14.4.1 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

14.4.2 Caracterisations de la convexite . . . . . . . . . . . . . . . . . . . . . . . . 89

14.4.3 Exemples de fonctions convexes . . . . . . . . . . . . . . . . . . . . . . . . 90

14.4.4 Minima des fonctions convexes . . . . . . . . . . . . . . . . . . . . . . . . 90

14.5 Fonctions quadratiques et elliptiques . . . . . . . . . . . . . . . . . . . . . . . . . 91

15 Algorithmes d’optimisation sans contraintes 93

15.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

15.2 Methode de relaxation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

15.3 Algorithme du gradient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

15.3.1 Choix du pas et convergence . . . . . . . . . . . . . . . . . . . . . . . . . 95

15.4 Methode de Newton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

15.4.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

15.4.2 Autre interpretation dans le cas scalaire . . . . . . . . . . . . . . . . . . . 97

15.4.3 Methodes de type quasi-Newton . . . . . . . . . . . . . . . . . . . . . . . 98

15.4.4 Convergence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

15.4.5 L’algorithme de Levenberg-Marquart . . . . . . . . . . . . . . . . . . . . . 99

15.5 L’algorithme du gradient conjugue . . . . . . . . . . . . . . . . . . . . . . . . . . 99

Page 7: Notes de cours d'analyse numérique et d'optimisation continue ...

TABLE DES MATIERES 6

16 Optimisation sous contraintes : criteres d’optimalite 101

16.1 Le theoreme des fonctions implicites . . . . . . . . . . . . . . . . . . . . . . . . . 101

16.2 Points reguliers et espace tangent . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

16.2.1 Contraintes d’egalite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

16.2.2 Contraintes d’egalite et d’inegalite . . . . . . . . . . . . . . . . . . . . . . 103

16.3 conditions d’optimalite en presence de contraintes d’egalite . . . . . . . . . . . . 103

16.3.1 Condition necessaire d’optimalite . . . . . . . . . . . . . . . . . . . . . . . 103

16.4 Conditions d’optimalite en presence de contraintes d’egalite et d’inegalite . . . . 107

16.4.1 Condition necessaire du premier ordre . . . . . . . . . . . . . . . . . . . . 107

16.4.2 Conditions du second ordre . . . . . . . . . . . . . . . . . . . . . . . . . . 108

16.5 Lagrangien, points selles, et dualite . . . . . . . . . . . . . . . . . . . . . . . . . . 109

16.5.1 Points selles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

16.5.2 Problemes primal et dual . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

16.6 Optimisation et calcul formel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

17 Optimisation sous contraintes : algorithmes 114

17.1 Extension des methodes sans contraintes . . . . . . . . . . . . . . . . . . . . . . . 114

17.1.1 Methode de relaxation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114

17.1.2 Theoreme de projection et gradient projete . . . . . . . . . . . . . . . . . 114

17.1.3 Methode de point interieur . . . . . . . . . . . . . . . . . . . . . . . . . . 115

17.1.4 Methode de penalisation externe . . . . . . . . . . . . . . . . . . . . . . . 116

17.1.5 Methode d’Uzawa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

18 Programmation lineaire 118

18.1 Le probleme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

Page 8: Notes de cours d'analyse numérique et d'optimisation continue ...

TABLE DES MATIERES 7

18.2 Bases realisables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

18.2.1 Solutions de base realisables optimales . . . . . . . . . . . . . . . . . . . . 119

18.3 Changement de base realisable . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

18.4 algorithme du simplexe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120

18.5 Programmation lineaire et dualite . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

18.5.1 Probleme primal et probleme dual . . . . . . . . . . . . . . . . . . . . . . 121

18.6 Equivalence du probleme primal et du probleme dual . . . . . . . . . . . . . . . . 121

18.7 Theoreme de dualite pour la programmation lineaire . . . . . . . . . . . . . . . . 122

A Master SISEACorrige des examens(printemps 2006 a 2011) 126

Page 9: Notes de cours d'analyse numérique et d'optimisation continue ...

Chapitre 1

Introduction

La version actuelle de ces notes de cours resulte d’evolutions progressives du document depuisune dizaine d’annee.

L’analyse numerique et l’optimisation constituent deux aspects importants et souvent complementairesdes mathematiques de l’ingenieur. Une connaissance de notions de base dans ces deux domainesest indispensable pour une ingenierie de bon niveau. Les developpements rapides de l’infor-matique ont fait de ces branches des mathematiques des outils universellement utilises dansl’industrie et les services.

De nombreux logiciels utilisent divers algorithmes performants d’analyse numerique et d’opti-misation, mais avant de pouvoir les utiliser, il faut deja avoir conscience de leur existence, desproblemes qu’ils peuvent resoudre, avec leurs performances et leurs limitations. Avant mme cela,il faut savoir mettre en forme le probleme etudie sous la forme mathematique appropriee a lamise en oeuvre d’algorithmes.

Une fois la mise en forme d’un problme effectue et les techniques gnrales pour le rsoudre connues,il peut tre utile, pour des implementations specifiques qui peuvent concerner par exemple la miseen oeuvre sur des processeurs de traitement de signal ou pour des adaptations des algorithmesdans le cadre d’activites de R&D, d’etre capable de ’decortiquer’ le fonctionnement d’un algo-rithme, ce qui suppose un minimum de familiarite avec les principes sur lesquels ils reposent.Aussi, mme si l’essentiel des algorithmes n’est pas dtaill en cours ou n’est que rapidement testlors des travaux pratiques, un certain nombre de mthodes standard est prcis dans le polycopi. Lescodes fournis visent en particulier montrer que souvent l’implmentation informatique conduitun code simple et concis.

Ce cours vise d’abord a rappeler quelques notions elementaires d’analyse numerique matricielleet d’optimisation et a donner les grandes lignes de methodes classiques importantes pour lesproblemes d’ingenierie courants. La partie relative aux matrices est completee par une partied’introduction aux operateurs lineaires qui etendent naturellement en dimension infinie les no-tions de fonctions lineaires et de matrice. Cette derniere partie est encore incomplete et seradeveloppee dans les versions ulterieures du polycopie.

8

Page 10: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 1. INTRODUCTION 9

On presente egalement ici quelques notions de base sur l’interpolation polynomiale des fonctionset leur integration numerique qui constituent des outils standards d’ingenierie. Pour l’analysenumerique matricielle, on envisagera surtout les outils classiques de resolution des systemesd’equations lineaires et on donnera quelques indications sur la diagonalisation des matrices.Pour ce qui concerne l’optimisation, on indiquera les methodes de recherche d’optima a utiliserselon les proprietes des criteres a optimiser et la nature des contraintes.

Precisons maintenant un peu plus la nature des problemes que l’on va envisager.

Commencons par reproduire ici la definition de l’analyse numerique fournie par l’encyclopedieen ligne Wikipedia :“l’analyse numerique est l’etude des algorithmes permettant de resoudre les problemes de mathematiquescontinues (distinguees des mathematiques discretes). Cela signifie qu’elle s’occupe principale-ment de repondre numeriquement a des questions a variable reelle ou complexe comme l’algebrelineaire numerique sur les champs reels ou complexes, la recherche de solution numerique d’equationsdifferentielles et d’autres problemes lies survenant dans les sciences physiques et l’ingenierie”.

Comme on l’a deja indique plus haut, on se limite essentiellement ici a l’analyse numerique ma-tricielle. Le premier but de ce cours est de mettre en evidence l’interet de la mise en forme matri-cielle de problemes classiques rencontres en traitement statistique de l’information. L’etude dela resolution exacte ou approchee des systemes lineaires d’equations sera l’occasion de presenterun certain nombre de resultats sur la decomposition des matrices, utiles a l’etude de nom-breux problemes. On distinguera, comme c’est generalement le cas dans ce genre d’expose lesmethodes directes qui fournissent une solution au prix d’un nombre limite fixe d’operations desmethodes iteratives qui fournissent une solution approchee a chaque iteration, la solution exacten’etant generalement obtenue qu’asymptotiquement. On s’interessera egalement au probleme dela decomposition en valeurs propres des matrices, qui n’a pas de solution numerique exacte engeneral puisqu’il s’apparente au probleme de recherche des racines d’un polynome (en l’occurencele polynome caracteristique de la matrice).

Dans le domaine de l’integration numerique, les techniques generalement envisagees visent aconstruire des approximations des integrales par l’integration d’interpolants polynomiaux desfonctions a integrer. Cela conduit a des formules de quadrature de la forme∫ b

af(x)dx ≈

n∑k=1

wkf(xk)n, (1.1)

ou le choix des noeuds xk et les poids wk de la quadrature conditionnent la precision de laquadrature. On presentera quelques solutions classiques a ce problme.

Dans le cadre de l’optimisation, on s’interessera ici essentiellement a des problemes d’optimisa-tion continue, a variables reelles ou complexes et de forme generale

minx f(x)fi(x) ≤ bi i = 1, . . . ,m

(1.2)

qui consiste a rechercher les valeurs de x qui minimisent f(x) dans l’ensemble des contraintesU = x; fi(x) ≤ bi i = 1, . . . ,m.

Page 11: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 1. INTRODUCTION 10

Notons ici que la recherche de la solution d’un probleme d’optimisation d’un critere fonctiond’une variable vectorielle peut souvent faire appel aux outils de l’analyse numerique matri-cielle. Considerons en effet l’exemple simple suivant : en l’absence de contrainte, un problemed’optimisation quadratique du type f(x) =‖ Ax − b ‖, ou ‖ x ‖2= xTx est la norme eu-clidienne, le minimum du critere est donne par la resolution du systeme d’equations lineaires(ATA)x = ATb. La recherche du vecteur x par ce critere fournit une approximation du vecteurb sous la forme Ax et est connue sous le nom de methode des moindres carres.

Cependant, tous les problemes d’optimisation ne se ramenent pas a des problemes d’analysenumerique matricielle et la theorie de l’optimisation mathematique recense des classes de problemesimportants pour lesquels on sera en mesure de fournir des resultats theoriques en terme de condi-tions ncessaires et/ou suffisantes sur l’existence de solutions ainsi que des algorithmes pratiquesperformants permettant de les calculer.

Ces notes de cours, actualisees depuis 2006, sont essentiellement constituees de deux partiesqui traitent respectivement de d’analyse numerique matricielle (et plus particulierement de laresolution des systemes d’equations lineaires) et d’optimisation, avec un accent particulier missur l’optimisation convexe dont on a evoque l’importance ci dessus. Pour ce qui concerne lesprerequis, ce cours suppose acquis un niveau de mathematiques generales bac+2. Par ailleurs,des connaissances de bases en probabilites et en statistiques seront necessaires pour apprehendercertains des exemples presentes.

Les resultats sont souvent justifies de maniere succinte et on pourra trouver des complementsutiles dans la litterature et sur le WEB. Chacune des parties analyse numerique et optimisationpossede sa propre bibliographie. Aussi, les numeros de reference correspondent t’ils a la biblio-graphie de la partie concernee. Pour ce qui concerne la partie relative a l’analyse numerique, lareference [2] constitue une bonne reference en francais dans laquelle les principaux algorithmesd’analyse numerique matricielle sont expliques. La reference [3] constitue un outil tres utile pourl’ingenieur qui doit implementer des algorithmes. De nombreuses methodes sont detaillees et lesimplementations en pseudo-code sont fournies. Notons que la reference [2] constitue une bonneintroduction a l’analyse numerique de meme qu’a l’optimisation, tout comme la reference [1].Tout comme pour l’analyse numerique, il existe de nombreux ouvrages generalistes et d’excel-lente qualite sur l’optimisation, tels que [7], [8] ou [9]. Pour le cas important de l’optimisationconvexe, on pourra par exemple se referer a [3], [4] ou [5].

Page 12: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 1. INTRODUCTION 11

Notations et Abreviations

|a|, |M| module d’un nombre complexe, determinant d’une matrice

vT , MT transpose d’un vecteur, d’une matrice

a∗, v∗, M∗ valeur conjuguee d’un scalaire, d’un vecteur, ou d’une matrice

vH , MH valeur transposee et conjugue d’un vecteur ou d’une matrice

< x,y > produit scalaire de x et de y

Tr(M) trace d’une matrice

sign(a) sign(x) = +1,−1, 0, selon que a est positif, negatif, nul

δa,b δa,b = 1 si a = b, et 0 sinon (symbole de Kronecker)

[v]i, [M]ij element d’indices i, ou (i, j), d’un vecteur ou d’une matrice

‖M ‖ norme de M (la norme choisie est definie par le contexte)

Re[z], Im[z] partie reelle, imaginaire, de z

a = b mod[p] a est le reste de la division de b par p

N, Z, R, C ensembles des nombres entiers, entiers relatifs, reels, et complexes

D disque unite ouvert

Ck ensemble des fonctions k fois derivables, de derivees continues

C∞(K) ensemble des fonctions infiniment derivables,de support compact et contenu dans K

L(X,Y ), L(X) ensembles des applications lineaires continuesde X dans Y , de X dans X

L(X,R) = X ′ espace dual de X

L2(X,Y ) applications bilineaires continues bijectives de X ×X dans Y

Page 13: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 1. INTRODUCTION 12

Isom(X,Y ) applications lineaires continues bijectives de X dans Y ,et d’inverses continues (isometries de X dans Y )

ε(h) fonction telle que lim‖h‖→0 ε(h) = 0

O ensemble ouvert

V espace vectoriel norme

Vx voisinage du point x

B(a, r) boule ouverte de centre a et de rayon r

B(Rn) tribu borelienne de Rn

vect(Xi)i∈I espace vectoriel engendre par les combinaisons lineaires finies des Xi

vect(Xi)i∈I prolongement de vect(Xi)i∈I en un espace complet

1IA fonction indicatrice de l’ensemble A

Page 14: Notes de cours d'analyse numérique et d'optimisation continue ...

Chapitre 2

Un exemple introductif

Dans ce chapitre, on presente un exemple introductif qui illustre un certain nombre de notionssur lesquelles on reviendra dans les chapitres suivants. On y presente, sous la forme d’un exerciceun exemple d’application qui met en oeuvre un certain nombre de concepts d’analyse numeriquematricielle et d’optimisation dans le cadre du traitement deterministe ou statistiques de signaux.

On considere une equation de convolution de la forme y = h ∗ x, ou h represente la reponseimpulsionnelle d’un filtre, x son entree et y sa sortie. L’chantillonnage de l’quation intgralede convolution y = h ∗ x donne par y(t) =

∫ Th0 h(u)x(t − u)du (Th est la dure de la rponse

impulsionnelle du filtre causal h) conduit l’criture yn =∑

k=0,L hkxn−k, o xn = x(nT ) et hn =

T−1h(nT ) sont obtenus par l’chantilonnage de l’quation de convolution avec un pas gal T .

On suppose dans un premier temps que le filtre h est connu mais que le signal x est inconnu.On cherche a retrouver les valeurs de xn, . . . , xn+N a partir de l’observation de y sur le memeintervalle de temps, c’est a dire l’observation de yn, . . . , yn+N .

Question 1 Ecrivez la relation matricielle qui lie le vecteur observe y = [yn, . . . , yn+N ]T al’entree x et verifiez que du fait de l’etalement temporel introduit par le filtrage, elle fait intervenirle vecteur [xn−L, . . . , xn, . . . , xn+N ]T . Cette relation matricielle est dite sous-determinee car ellefait intervenir plus d’inconnues que d’equations. Indiquez la forme generale de l’ensemble dessolutions pour x = [xn, . . . , xn+N ]T en montrant qu’on peut la parametrer par xn−L, . . . , xn.(Il s’agit d’un cas particulier d’un resultat plus general connu sous le nom de theoreme desfonctions implicites.)

Reponse Les relations de convolution s’ecrivent

yn+k =∑j=0,L

hjxn+k−i,

13

Page 15: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 2. UN EXEMPLE INTRODUCTIF 14

pour k = 0, . . . , N . Mises sous forme matricielle, elles s’ecriventynyn+1

...yn+N

=

hL hL−1 . . . h0 0 . . . 00 hL hL−1 . . . h0 0 . . .... 00 . . . 0 hL hL−1 . . . h0

×xn−Lxn−L+1

...xn+N

. (2.1)

Notons maintenant que dans un systeme d’equations general de la forme y = Ax ou A a l ligneset c colonnes, on peut ecrire A sous la forme A = [A1|A2] ou A1 et A2 sont de tailles respectivesl × c1 et l × c2, avec c1 + c2 = c. De meme x s’ecrit comme xT = [xT1 |xT2 ], ou les sous vecteurssont de tailles c1 et c2. Il resulte de cette ecriture que l’on peut representer y sous la forme

y = A1x1 + A2x2.

En appliquant ce principe a notre probleme, on voit que

ynyn+1

...yn+N

=

hL hL−1 . . . h1

0 hL . . . h2...

. . . hL . . .0 0 hL

0...

...0 . . . 0

×

xn−L...xn−1

+

h0 0 . . . 0h1 h0 0 . . . 0...hL hL−1 . . . h0 0 . . . 00 hL hL−1 . . . h0 0 . . .... 00 . . . 0 hL hL−1 . . . h0

×

xn...

xn+N

(2.2)

En reformulant cette egalite sous la forme plus compacte suivante,

y = H0

xn−L...xn−1

+ Hx, (2.3)

on voit que l’ensemble des vecteurs x recherche est de la forme

x = H−1[y −H0

xn−L...xn−1

]. (2.4)

x est bien parametre par xn−L, . . . , xn−1.

Question 2 Reformulez le probleme dans le cas particulier ou on suppose que xn−L = . . . =xn−1 = 0.Verifiez qu’alors x est obtenu par la resolution d’un systeme lineaire d’equations

Page 16: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 2. UN EXEMPLE INTRODUCTIF 15

faisant intervenir une matrice triangulaire. Montrez que ce systeme se resoud simplement avecun faible cout de calcul.

Reponse Lorsque xn−L = . . . = xn−1 = 0, la representation (2.3) prend la forme plus simpley = Hx, avec

H =

h0 0 . . . 0h1 h0 0 . . . 0...hL hL−1 . . . h0 0 . . . 00 hL hL−1 . . . h0 0 . . .... 00 . . . 0 hL hL−1 . . . h0

On voit alors que les systeme d’equations se resoud simplement de facon iterative puisqu’on aalors

xn = yn/h0,xn+1 = [yn+1 − h1xn]/h0,...

xn+k = [yn+k −∑maxk,L

i=1 hixn+k−i]/h0, pour k = 1, . . . , N.

(2.5)

On voit que le calcul de x reclame ici de l’ordre de 1 + 2 + 3 . . .+ (N + 1) multiplications, soitenviron N2/2 operations.

Question 3 Plus generalement, on verra dans le cours qu’une matrice carree A inversiblepeut s’ecrire sous la forme A = LU, ou L et U sont respectivement triangulaire inferieure ettriangulaire superieure. Verifiez que A est inversible si et seulement si les diagonales de L et deU ne contiennent pas de termes nuls. Dans ce cas, si L et U sont connues, indiquez commenton peut resoudre le systeme d’equations y = Ax et donnez un ordre de grandeur du nombred’operations que requiert cette resolution. En fait, on verra que c’est la mise en forme LU deA qui represente le cout de calcul preponderant (de l’ordre de N3 operations).

De meme, la matrice A peut s’ecrire sous la forme A = QR, ou Q et R sont respectivementorthogonale (c’est a dire que QQT = I) et triangulaire superieure. La encore, si Q et R sontconnues, indiquez comment on peut resoudre le systeme d’equations y = Ax.

Reponse |A| = |L| × |U| = Πi=1,NLiiUii. A est inversible si et seulement si |A| 6= 0, c’est adire si les termes diagonaux de L et de U sont non nuls.Si y = Ax et A = LU, alors y = L(Ux) et on voit en posant z = Ux que x peut etre calculeen resolvant successivement les deux systemes d’equations triangulaires y = Lz puis z = Ux, cequi demandera environ N2 operations (en ne comptant que les multiplications).

De meme, si A = QR avec QQT = I, on voit que QTy = Rx et l’on est simplement amene acalculer QTy, ce qui demande environ N2 operations, puis a resoudre le systeme triangulaire,soit au total 3N2/2 operations.

Question 4 Reprenons notre probleme de depart et supposons que le signal x est constitue d’unpreambule, qui reproduit les derniers symboles de la sequence xn, . . . , xn+N , c’est a dire que l’on

Page 17: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 2. UN EXEMPLE INTRODUCTIF 16

a(xn−L, . . . , xn−1) = (xn+N−L+1, . . . , xn+N ). (2.6)

Ce genre de technique est utilisee dans certaines methodes de transmissions numeriques, tellel’OFDM (Orthogonal Frequency Division Multiplexing). Reformulez le probleme sous forme ma-tricielle et montrez que maintenant les inconnues xn, . . . , xn+N sont liees a y par une relationqui fait intervenir une matrice circulante, c’est a dire que chaque ligne de la matrice se deduitde la precedente par une permutation circulaire. Montrez que les vecteurs propres d’une matricecirculante sont les vecteurs de la transformee de Fourier discrete, c’est a dire de la forme

Wk = [1, e2iπk/(N+1), e2iπ2k/(N+1), . . . , e2iπNk/(N+1)]T /sqrtN + 1. (2.7)

Calculez les valeurs propres correspondantes et indiquez la forme de la decomposition en valeurspropres d’une telle matrice. En deduire une technique simple pour calculer x. Montrez commentces resultats sont lies avec la formulation frequentielle de l’operation de convolution.

Reponse On verifie facilement que l’introduction du preambule a pour effet de conduire ausysteme d’equations y = Cx, avec

C =

h0 0 . . . 0 hL . . . h1

h1 h0 0 . . . 0. . .

.... . .

hL−1 . . . h0 0 . . . 0 hLhL hL−1 . . . h0 0 . . . 00 hL hL−1 . . . h0 0 . . ....

. . .

0 . . . 0 hL hL−1 . . . h0

On observe que C est une matrice circulante : on passe d’une ligne a l’autre de la matrice parpermutation circulaire vers la droite de ses coefficients.

En remarquant que e2iπnk/(N+1) = e2iπ(n−N−1)k/(N+1), on verifie facilement que la teme compo-sante du vecteur CWk vaut [

∑p=0,L hpe

−2iπpk/(N+1)]e2iπtk/(N+1). Finalement, on voit que

CWk = [∑p=0,L

hpe−2iπpk/(N+1)]Wk. (2.8)

Remarquons que∑

p=0,L hpe−2iπpk/(N+1) est la keme composante de la transformee de Fourier

discrete du vecteur de taille N + 1 [h0, h1, . . . , hL, 0, . . . , 0]T , qui est obtenu en completant levecteur h avec N − L coefficients nuls. Notons hk =

∑p=0,L hpe

−2iπpk/(N+1). Le vecteur h =

[h0, h1, . . . , hN ] represente la reponse frequentielle du filtre h echantillonnee sur N +1 points surla bande d’echantillonnage.

Notons W = [W0, . . . ,WN ], la matrice de transformee de Fourier et diag(h) la matrice diagonaledont les termes diagonaux sont les composantes de h. On voit que les relations (2.8) conduisenta

CW = Wdiag(h),

Page 18: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 2. UN EXEMPLE INTRODUCTIF 17

et comme W est une matrice unitaire, c’est a dire que WWH = I,

C = Wdiag(h)WH .

Mais alors, le systeme d’equations y = Cx s’ecrit encore (WHy) = diag(h)(WHx) et WHx etWHy representent respectivement les transformees de Fourier discretes de x et de y que l’onnotera x et y. Finalement, on a y = diag(h)x, ce qui s’exprime composante par composantecomme

yk = hkxk k = 0, . . . , N. (2.9)

Ces relations ne font qu’exprimer le fait qu’en passant dans le domaine de Fourier l’operationde convolution devient une simple multiplication.

Notons que partant du systeme d’equations y = Cx obtenu en circularisant l’operation deconvolution (c’est a dire en periodisant x), les operations de transformees de Fourier discretes dey et de h requierent chacune de l’ordre de N log2N operations par l’emploi de l’algorithme deFFT (Fast Fourier Transform). Les relations (2.9) permettent alors de calculer x directement. xs’en deduit par transformee de Fourier inverse. Au total, on voit donc que la resolution du systemed’equations est seulement de l’ordre de 3N log2N operations, grace au passage dans le domainede Fourier que l’on a justifie ici en passant par la decomposition en valeurs propres de la matriceC. On voit sur cet exemple comment des notions d’analyse (la convolution et la transformeede Fourier) et d’algebres (la decomposition en valeurs propres des matrices circulantes) peuvents’eclairer mutuellemnt.

Question 5 Supposons maintenant que le signal x soit connu et que l’on observe

ym =L∑k=0

hkxm−k + vm, m = n, n+ 1, . . . , n+N, (2.10)

ou les coefficients du filtre h sont maintenant inconnus, et v est un bruit d’observation. Exprimezla relation matricielle qui lie l’observation y au vecteur h = [h0, . . . , hL]T sous la forme y =Xh + v.

Reponse On a clairementynyn+1

...yn+N

=

xn xn−1 . . . xn−Lxn+1 xn . . . xn+1−L

...xn+N−L xn+N−L+1 . . . xn+N

×h0

...hL

+

vnvn+1

...vn+N

, (2.11)

ce que l’on note simplement sous la forme y = Xh + v.

Question 6 Supposons que N > L. Le systeme comporte alors plus d’equations que d’inconnues ;Il est dit sur-determine. Lorsque v est nul, il est clair que l’on obtient un systeme d’equationsredondantes mais il n’est cependant pas evident de savoir a priori pour un systeme sur-determinequelles equations eliminer pour se ramener a un systeme carre inversible (en supposant que lamatrice intervenant dans la relation initiale soit de rang plein). De plus, lorsque v 6= 0, lesysteme y = Xh n’aura pas de solution en general du fait de la presence de bruit qui introduitune erreur de modelisation dans la description de y comme un element de l’espace image de

Page 19: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 2. UN EXEMPLE INTRODUCTIF 18

la matrice X. A defaut d’une solution exacte, on cherche une solution approchee et un criterenaturel consiste a chercher la valeur de h pour laquelle le modele y = Xh est, en un certainsens, le moins errone possible. Dans de nombreuses situations, on cherche a minimiser la normede l’erreur de modelisation, c’est a dire qu’on choisi pour h la grandeur

hMC = arg minh‖ y −Xh ‖2 . (2.12)

Calculez hMC . La minimisation du critere ‖ y −Xh ‖2 est appelee methode des moindrescarres.

Reponse Le critere a minimiser s’ecrit

‖ y −Xh ‖2 = (y −Xh)T (y −Xh)

= yTy − hTXTy − yTXh + hTXTXh

= hT (XTX)h− 2hT (XTy) + yTy.

(2.13)

Rappelons maintenant que la minimisation d’une fonction derivable f d’une variable vectorielleu ∈ Rn peut etre envisagee en considerant la condition necessaire fournie par l’annulation dugradient de f au point ou la fonction prend sa valeur minimale. Rappelons aussi que le gradientde f est defini par

∇f = [∂f

∂u1, . . . ,

∂f

∂up]T .

En laissant de cote le terme constant yTy, la minimisation de ‖ y −Xh ‖2 vis a vis de h estequivalente a celle de J(h) = hT (XTX)h− 2hT (XTy) qui s’exprime encore comme

J(h) =

L∑i,j=0

(XTX)ijhihj − 2

L∑i=0

(XTy)ihi.

Calculons les derivees partielles de J . Pour k = 0, . . . , L,

∂J

∂hk= 2

∑Li=0(XTX)kjhj − 2(XTy)k

= [2(∑L

i=0(XTX)kjhj − 2(XTy)k)]k

= [2(XTX)h− 2XTy]k.

(2.14)

Le gradient de J(h) prend donc la forme simple suivante :

∇J(h) = 2[(XTX)h−XTy]

La condition d’annulation du gradient de J(h) est donc donnee par (XTX)h−XTy = 0, soit

hMC = (XTX)−1XTy. (2.15)

Les equations (XTX)h = XTy sont appelees les equations normales du critere des moindrescarres ‖ Xh− y ‖2.

Page 20: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 2. UN EXEMPLE INTRODUCTIF 19

Remarque Une facon plus directe d’aboutir au resultat consiste a utiliser le theoreme de pro-jection qui indique en particulier que dans Rn la difference entre un vecteur et sa projectionorthogonale sur un sous espace vectoriel quelconque est orthogonale a tous les elements del’espace sur lequel la projection est effectuee. Ici, XhMC represente le vecteur de l’espace VXengendre par les colonnes de la matrice X qui est le plus proche de y. En d’autres termes XhMC

est la projection orthogonale de y sur VX. L’orthogonalite de y −XhMC et de VX se traduitpar l’orthogonalite de y −XhMC et des colonnes de X, qui forment une base de VX. Cela setraduit par

XT [y −XhMC ] = 0

et conduit directement a la relation (2.15).

Question 7 Supposons maintenant que v soit un vecteur de loi connue : v ∼ N (0,Σv). Donnezla loi du vecteur y et calculez l’estimateur du maximum de vraisemblance de h. Montrez l’interetde cet estimateur par rapport a hMC dans le cas particulier ou la matrice Σv est diagonale. Quese passe t’il si Σv est proportionnelle a la matrice identite ? Deduisez en une interpretationstatistique de hMC .

ReponsehMV = (XTΣ−1

v X)−1XTΣ−1v y. (2.16)

Question 8 Supposons enfin que h n’est plus decrit comme un parametre inconnu mais commeune variable aleatoire de loi connue, appelee loi a priori. On se place donc ici dans le cadre desmethodes dites d’estimation bayesienne. On suppose que h ∼ N (0,Σh). Calculez, en utilisantla formule de Bayes, la densite de probabilite p(h|y), appelee densite de probabilite de la loi aposteriori, et donnez l’expression de l’estimateur du maximum de vraisemblance a posterioride h defini par

hMAP = arg maxh

p(h|y). (2.17)

ReponsehMV = (XTΣ−1

v X + Σ−1h )−1XTΣ−1

v y. (2.18)

Page 21: Notes de cours d'analyse numérique et d'optimisation continue ...

Premiere partie

Analyse numerique matricielle

20

Page 22: Notes de cours d'analyse numérique et d'optimisation continue ...

Chapitre 3

Rappels sur les matrices et lessystemes d’equations lineaires

Revenons rapidement sur les origines de la notion de matrice. On se limite ici au cas des espacesvectoriels de type Rn, meme si l’extension de la presentation a Cn est immediate.

3.1 Applications lineaires et matrices

Soit f une application de Rm dans Rn. Soient (ei)i=1,m une base de Rm et (ki)i=1,n une base deRn. On suppose que f est lineaire, c’est a dire que pour tous x1, x2 ∈ Rm et a1, a2 ∈ R,

f(a1x1 + a2x2) = a1f(x1) + a2f(x2).

Soit x ∈ Rm et notons y = f(x). On souhaite exprimer les composantes de y dans la base(ki)i=1,n en fonction des composantes de x dans la base (ei)i=1,m. On va montrer qu’une telleexpression s’obtient facilement en fonction des composantes des vecteurs (f(ei))i=1,m dans labase (ki)i=1,n.

Si on notef(ej) =

∑i=1,n

Aijki,

et que l’on represente les coefficients Aij dans un tableau note A, de taille n × m et appelematrice, dont le terme qui se trouve a l’intersection de la ieme ligne et de la jeme colonne estprecisemment Aij , il apparaıt que la jeme colonne de A contient les composantes du vecteur ejexprimees dans la base (ki)i=1,n.

Considerons maintenant la relation y = f(x). Les expressions de x et de y dans les basesrespectives (ei)i=1,m et (ki)i=1,n sont donnees par

x =∑j=1,m

xjej et y =∑i=1,n

yiki,

21

Page 23: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 3. RAPPELS SUR LES MATRICES ET LES SYSTEMES D’EQUATIONS LINEAIRES22

et la linearite de f permet d’ecrire que

f(x) = f(∑

j=1,m xjej)

=∑

j=1,m xjf(ej)

=∑

j=1,m xj [∑

i=1,nAijki]

=∑

i=1,n[∑

j=1,mAijxj ]ki.

(3.1)

Comme la representation de y = f(x) sous la forme y =∑

i=1,n yiki est unique, la relation

y =∑i=1,n

yiki =∑i=1,n

[∑j=1,m

Aijxj ]ki

entraıne que

yi =∑j=1,m

Aijxj , pour i = 1, . . . , n. (3.2)

On voit que yi s’exprime comme le produit scalaire des vecteurs [Ai1, Ai2, . . . , Aim]T et x, cequi s’exprime classiquement par l’ecriture

yi =[Ai1 Ai2 . . . Aim

x1

x2...xm

. (3.3)

En concatenant ces relations pour i = 1, . . . , n, on obtient l’expression des coordonnees de ydans la base (ki)i=1,n :

y1

y2...yn

=

A11 Ai2 . . . A1m

A21 A22 . . . A2m...

An1 An2, . . . Anm

×x1

x2...xm

. (3.4)

Il faut interpreter cette expression comme un resume des relations (3.2).

Notons que souvent, lorsqu’il n’y a pas d’ambiguite sur les bases choisies on identifie les vecteursx et y avec leurs representations

x1

x2...xm

et

y1

y2...yn

(3.5)

dans ces bases et on note la relation (3.4) sous la forme compacte

y = Ax. (3.6)

Page 24: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 3. RAPPELS SUR LES MATRICES ET LES SYSTEMES D’EQUATIONS LINEAIRES23

3.2 Changement de base

On a vu que la matrice A caracterise une application lineaire f pour des bases fixees des espacesde depart et d’arrivee. On peut se demander comment l’expression de A se trouve modifiee lorsd’un changement de base.

Limitons nous ici au cas d’une application f de Rn dans Rn et supposons que A represente lamatrice de A pour la base (ei)i=1,n de Rn. Considerons une autre base de Rn, notee (e′i)i=1,n etnotons A′ la representation matricielle de f dans cette nouvelle base.

On va voir que la relation entre A et A′ peut etre exprimee en fonction des relations de passagede la base (ei)i=1,n a la base (e′i)i=1,n. Posons

e′j =∑i=1,n

Pijei. (3.7)

Dans la matrice P, de terme general Pij , la jeme colonne contient donc les coefficients du vecteure′j exprime dans la base (ei)i=1,n.

Soit maintenant un vecteur u et v = f(u). On designera par x et x′ les vecteurs de coordonneesde u dans les bases respectives (ei)i=1,n et (e′i)i=1,n. De facon analogue, les composantes de vdans ces bases seront notees y et y′ :

u =∑

i=1,n xiei =∑

i=1,n x′ie′i

v =∑

i=1,n yiei =∑

i=1,n y′ie′i.

(3.8)

Considerons par exemple la premiere relation. D’apres la relation (3.7),∑i=1,n xiei =

∑j=1,n x

′je′j

=∑

j=1,n x′j [∑

i=1,n Pijei]

=∑

i=1,n[∑

i=1,n Pijx′j ]ei.

(3.9)

Ainsi, xi =∑

i=1,n Pijx′j pour i = 1, . . . , n et donc x = Px′. De facon tout a fait identique, on

peut etablir que y = Py′.

Les representations matricielles de la relation v = f(u) dans les deux bases s’ecrivent y = Axet y′ = A′x′. Mais la relation y = Ax associee aux relations x = Px′ et y = Py′ conduit a

Py′ = APx′,

soit y′ = (P−1AP)x′, ce qui montre clairement que

A′ = P−1AP.

Dans le cadre de la resolution des systemes d’equations lineaires, notons que le systeme d’equationsy′ = A′x′, ou x′ est inconnue, peut etre plus simple a resoudre que le systeme d’equations initial

Page 25: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 3. RAPPELS SUR LES MATRICES ET LES SYSTEMES D’EQUATIONS LINEAIRES24

y = Ax. Comme on le verra plus loin, l’idee consistant a mettre en evidence une representationequivalente d’un systeme d’equations lineaires pour laquelle la matrice mise en jeu est simple (ty-piquement triangulaire ou diagonale) est a la base de nombreuses methodes d’analyse numeriquematricielle.

Exercice On considere l’application lineaire donnee dans la base canonique de R3 (repere or-thonorme oriente dans le sens direct), notee (e1, e2, e3) par

A =

1 2 00 1 02 3 1

. (3.10)

On considere maintenant la nouvelle base de R3 definie par e′1 = e3, e′2 = e1 et e′3 = e2. Calculezla matrice de passage P de la premiere a la seconde base et verifiez que dans la nouvelle baseon obtient une matrice A′ triangulaire. Deduisez en l’expression du vecteur x tel que Ax = ypour y = [1, 1, 1]T .

3.3 Quelques familles de matrices importantes

Etant donnee une matrice A de coefficients reels ou complexes, de terme general d’indice (i, j)note Aij , on notera A = (Aij). La transposee et conjuguee hermitienne ou transposee-conjuguee de A sont definies respectivement par

AT = (Aji), et AH = (A∗ji). (3.11)

Pour une matrice carree A, de taille n, rappelons maintenant la definition de quelques matricesparticulieres importantes

matrice symetrique reelle AT = Amatrice hermitienne complexe AH = Amatrice orthogonale reelle AAT = ATA = Imatrice unitaire complexe AAH = AHA = Imatrice normale AHA = AAH .

(3.12)

Les matrices hermitiennes et unitaires peuvent etre vues comme les analogues a valeurs com-plexe des matrices symetriques et orthogonales respectivement. Les matrices orthogonales (resp.unitaires) sont celles dont les colonnes (ai)i=1,n forment une base orthonormee, c’est a dire queaTi aj = δi,j (resp. aHi aj = δi,j , ou δi,j = 1 si i = j, et 0 sinon).

Notons que les matrices symetriques reelles et complexes hermitiennes constituent des cas par-ticuliers de matrices normales. De plus, les matrices symetriques (resp. hermitiennes) jouent unrole important dans de nombreuses situations, en particulier en probabilite et en statistiquespuisque la matrice de covariance d’un vecteur aleatoire reel X (resp. complexe), definie parRX = E[XXT ] − E[X]E[X]T (resp. RX = E[XXH ] − E[X]E[X]H) est clairement symetrique(resp. hermitienne).

Page 26: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 3. RAPPELS SUR LES MATRICES ET LES SYSTEMES D’EQUATIONS LINEAIRES25

3.4 Determinant et inverse

Rappelons que le determinant de la matrice A de taille n est defini par

|A| =∑σ∈Gn

εσAσ(1),1 × . . .×Aσ(n),n, (3.13)

ou Gn represente l’ensemble des permutations de l’ensemble 1, . . . , n dans lui meme, et εσ la si-gnature de la permutation σ, qui vaut +1 ou -1 selon que le nombre de permutations elementairesde deux coefficients successifs qu’il faut realiser pour passer du vecteur (1, 2, . . . , n) au vecteur(σ(1), σ(2), . . . , σ(n)) est pair ou impair. Notons une propriete importante du determinant :

|AB| = |A|.|B| (3.14)

Si (et seulement si) |A| 6= 0, alors, la matrice A est inversible pour la multiplication matricielle,c’est a dire qu’il existe une matrice, notee A−1, telle que

AA−1 = A−1A = I, (3.15)

ou I represente la matrice identite (ici de taille n). On sait que

A−1 = |A|−1Com(A)T , (3.16)

ou Com(A) est la comatrice de A : Com(A)ij est le determinant de la matrice de taille n− 1formee de A privee de sa ligne i et de sa colonne j, multiplie par (−1)i+j :

Com(A)ij = (−1)i+j |matrice A privee de la ligne i et de la colonne j| .

Arretons nous un instant sur cette formule. Pour calculer A−1, il faut multiplier n − 1 termespour chacune des (n − 1)! permutations de chacun des n2 termes de Com(A). Au total, onobtient de l’ordre de n2n! multiplications. Rappelons de plus que d’apres la formule de Stierling,n! = nne−n

√2πn(1+ε(n)), avec limn→∞ ε(n) = 0. On dit que la complexite algorithmique du

calcul de l’inverse est exponentielle, c’est a dire que le cout de calcul croıt exponentiellement avecla taille n du probleme. En pratique, cela signifie que pour des problemes meme de taille reduite(pour n de l’ordre de quelques dizaines), un ordinateur puissant serait dans l’impossibilite decalculer l’inverse d’une matrice en un temps raisonable. En fait, les algorithmes de complexiteexponentielle sont consideres comme irrealisables en pratique et on cherche generalement desalgorithmes de complexite polynomiale. On verra qu’il est possible de realiser l’inversionmatricielle au moyen d’algorithmes dont la complexite est de l’ordre de n3.

Exercice Verifiez le lemme d’inversion matricielle : si les matrices B et D sont inversibleset A = B + CDE, alors

A−1 = B−1 −B−1C(D−1 + EB−1C)−1EB−1. (3.17)

Appliquez cette formule au calcul iteratif de l’inverse de la matrice N−1∑

n=1,N xnxTn qui

represente l’estimateur empirique de la matrice de covariance d’un vecteur aleatoire centre X,associee a une sequence de vecteurs d’observation (xn)n=1,N . Si les xn sont des realisationsindependantes de la matrice de covariance d’un vecteur aleatoire X = au + B, ou u est un

Page 27: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 3. RAPPELS SUR LES MATRICES ET LES SYSTEMES D’EQUATIONS LINEAIRES26

vecteur connu, a une amplitude inconnue, et B un vecteur de bruit de matrice de covarianceσ2BI, calculez lorsque N varie la formule iterative de l’estimateur du maximum de vraisemblance

de a, note aN .

Un autre operateur qui apparaıt souvent en calcul matriciel est l’operateur de trace, defini par

Tr(A) =∑i

Aii. (3.18)

On verifie aisement que Tr(AB) = Tr(BA) et Tr(A + B) = Tr(A) + Tr(B).

3.4.1 Valeurs propres et vecteurs propres

Les valeurs propres de la matrice A sont les racines du polynome caracteristique de A definipar P (A) = |A − λI|. L’ensemble des valeurs propres de A definit le spectre de la matriceA, note

Sp(A) =⋃i=1,n

λi(A) ⊂ C. (3.19)

3.4.2 Image et noyau d’une matrice

Etant donnee une application lineaire f : Cm → Cn et A = [A1, . . . ,Am] la matrice de f pourdes bases fixees des espaces de depart et d’arrivee. L’espace image et le noyau de f , que l’ondefinira aussi par extension comme l’espace image et le noyau de A sont definis respectivementpar

Im(f) = Im(A) = Au ∈ Cn;u ∈ Cm = vectA1, . . . ,Am

Ker(f) = Ker(A) = u ∈ Cm; Au = 0.(3.20)

Rappelons le resultat suivant :

dim(Im(A)) + dim(Ker(A)) = m. (3.21)

Le rang de la matrice A est defini par

rang(A) = dim(Im(A)) (3.22)

On dira que la matrice A est de rang plein si rang(A) = min(m,n).

Notons qu’en anglais rang(A) s’exprime par rank(A) tandis que Im(A) s’ecrit range(A) etKer(A) s’exprime par Null(A).

3.4.3 Changement de base

Comme on l’a vu au paragraphe 3.2, si A est une matrice carree de taille n, correspondant al’expression d’une application lineaire dans une base B∞ = (x1, . . . ,xn) et si B2 = (y1, . . . ,yn)

Page 28: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 3. RAPPELS SUR LES MATRICES ET LES SYSTEMES D’EQUATIONS LINEAIRES27

represente une autre base, avec [y1, . . . ,yn] = P [x1, . . . ,xn], alors, l’expression de la transforma-tion lineaire dans la base B2 est A2 = P−1AP. Le changement de base conduit donc a factoriserla matrice A sous la forme A = PA2P−1.

En analyse numerique, il est souvent utile de factoriser une matrice A sous la forme d’unproduit de matrices afin d’obtenir des problemes plus simples a resoudre. C’est en particulierle cas, comme on le verra, pour la resolution des systemes d’equations lineaires. Le paragraphesuivant liste les principales factorisations de matrices utilisees pour la resolution des systemesd’equations lineaires, ou la decomposition en valeurs propres.

3.4.4 Factorisation de matrices

Le theoreme de Schur montre que pour une matrice A il est toujours possible de trouver unchangement de base unitaire, c’est a dire pour lequel la matrice de changement de base P estunitaire, tel que dans la nouvelle base la matrice soit triangulaire.

Notons deja qu’un des avantages des changements de base unitaires est que le facteur P−1 quiapparaıt dans la transformation se ramene simplement a P−1 = PH, ce qui fournit sans calcull’inverse de P.

Theoreme 1 (theoreme de Schur) Soit A une matrice carree. Alors, il existe une matriceunitaire U telle que UHAU soit une matrice triangulaire.

Corollaire 1 Soit A une matrice normale. Alors, il existe une matrice unitaire U telle queUHAU soit une matrice diagonale.

Exercice Demontrer le theoreme de Schur et le corrolaire.

Le corrolaire indique que les matrices normales, et en particulier les matrices symetriques reelleset les matrices complexes hermitiennes, admettent une decomposition en valeurs propres et quela base des vecteurs propres est une base orthonormee.

Lorsque A est une matrice non normale ou non carree, on peut cependant toujours trouverune factorisation de A avec des matrices unitaires et une matrice diagonale. Simplement lesfacteurs unitaires de droite et de gauche ne sont plus conjugues l’un de l’autre. L’obtentionde cette decomposition, appelee decomposition en valeurs singulieres, provient du faitque les matrices AAH et AHA sont hermitiennes. Elles admettent donc respectivement desdecompositions en valeurs propres de la forme UDUH et VD′VH et on peut etablir que D = D′

et A = UDVH. Les termes diagonaux de D sont appeles valeurs singulieres de la matrice A.

Donnons maintenant la liste des princiales decompositions matricielles :— decomposition LU : A = LU (L, UT triangulaire inferieure)— factorisation de Cholesky : A = LLT (A symetrique)— decomposition QR : A = QR, QHQ = I, R triangulaire

Page 29: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 3. RAPPELS SUR LES MATRICES ET LES SYSTEMES D’EQUATIONS LINEAIRES28

— decomposition en valeurs propres : A = MDM−1

— decomposition de Jordan : A = MJM−1 et J bi-diagonale— decomposition en valeurs singulieres : A = UDVH (A de dimensions quelconques !)— forme Schur : QHAQ = T (T triangulaire superieure)— forme Hessenberg : QHAQ = T+ sous diagonale (T(i+ k, i) = 0 pour k ≥ 2)

Notons que la forme Hessenberg constitue une forme particuliere qui peut etre obtenue parun calcul direct et sert a l’initialisation des techniques iteratives qui permettent de calculer ladecomposition de Schur. On reviendra au chapitre IV sur les decompositions LU , de Choleskyet QR et sur les autres au chapitre VI.

3.5 Produits scalaires et normes vectorielles et matricielles

Dans Rn, on definit le produit scalaire des vecteurs x et y par

< x,y >= yTx =∑k=1,n

xkyk. (3.23)

Le produit scalaire des matrices A et B par

< A,B >= Tr(ABH). (3.24)

Dans le cas de vecteurs et de matrices complexes ces formules deviennent

< x,y >= yHx et < A,B >= Tr(ABH). (3.25)

A ces produits scalaires, on peut associer le normes scalaires quadratiques et de Frobeniusrespectivement, definies par

‖ x ‖22=√

xTx, et ‖ A ‖2F=√Tr(ATA). (3.26)

Plus generalement, on definit la norme lp d’un vecteur x par

‖ u ‖p= (∑|ui|p)1/p (0 < p <∞). (3.27)

On pourra verifier l’inegalite triangulaire pour la norme (encore appelee ici inegalite de Min-kowski) a titre d’exercice. Rappelons egalement au passage l’inegalite de Holder, qui generalisel’inegalite de Cauchy Schwarz : si p−1 + q−1 = 1,

|yHx| ≤‖ x ‖p × ‖ y ‖q . (3.28)

Pour les matrices, de taille n ×m, ou Rm (resp. Cm) est muni de la norme la et Rn resp. Cn)est muni de la norme lb on peut definir des normes matricielles sous la forme

‖ A ‖ab= supx

‖ Ax ‖2b‖ x ‖2a

= supx,‖x‖a=1

‖ Ax ‖2b (3.29)

Page 30: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 3. RAPPELS SUR LES MATRICES ET LES SYSTEMES D’EQUATIONS LINEAIRES29

On notera simplement la norme ‖ . ‖aa par ‖ . ‖a. Bien sur, toutes ces normes sont equivalentespuisqu’en dimension finie toutes les normes sont equivalentes (rappelons que deux normessont equivalentes si a un facteur pres la premiere est toujours inferieure a la deuxieme, etreciproquement).

Pour des matrices carrees, ‖ . ‖ designant une norme operateur quelconque, on peut verifier que

‖ AB ‖a≤‖ A ‖a × ‖ B ‖a . (3.30)

Indiquons maintenant la forme prise par quelques unes des normes matricielles.

‖ A ‖1 = maxj∑

i |Aij |

‖ A ‖2 = [ρ(AHA)]1/2 =‖ AH ‖2

‖ A ‖∞ = maxi∑

j |Aij |.

(3.31)

Exercice Verifier les equations (3.30) et (3.31).

Notons enfin que la norme ‖ . ‖2 est invariante par transformation orthogonale sur les matrices :si U est une matrice unitaire, ‖ UA ‖2=‖ A ‖2.

3.5.1 Projection

Etant donne un sous espace vectoriel de Cn dont une base est donnee par les vecteurs A1, . . . ,Am,la matrice de projection sur ce sous-espace s’exprime a partir de la matrice A = [A1, . . . ,Am]par

ΠA = A(AHA)−1AH . (3.32)

I − ΠA represente clairement le projecteur sur l’espace orthogonal a celui engendre par lescolonnes de A, de sorte que tout vecteur x se decompose sous la forme x = xA + x⊥A, avecxA = ΠAx ∈ Im(A) et x⊥A = (I−ΠA)x ∈ Im(A)⊥.

Exercice Verifiez que(Im(A))⊥ = Ker(AT ). (3.33)

3.6 Notions generales sur les algorithmes numeriques

3.6.1 Complexite algorithmique

La complexite d’un algorithme s’exprime generalement en fonction du nombre d’operations arealiser pour obtenir la solution du probleme qu’il doit resoudre. En fait, si ce parametre esttres important, dans certaines applications, la quantite de memoire informatique necessaire autraitement peut egalement s’averer cruciale pour le choix d’un algorithme.

Page 31: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 3. RAPPELS SUR LES MATRICES ET LES SYSTEMES D’EQUATIONS LINEAIRES30

La complexite d’un algorithme est definie comme le terme dominant de la formule qui exprimele nombre d’operations a realiser lorsque la dimension caracteristique (par exemple la taille de lamatrice) du probleme croit. Pour un probleme de dimension n, on pourra definir cette complexitecomme une grandeur Φ(n) telle que

limn→∞

nombre d’operations en dimension n

Φ(n)= 1. (3.34)

Dans de nombreuses situations, on se contente d’un ordre de grandeur de la complexite algo-rithmique. Rappelons que g(n) = O(Φ(n)) si limn→∞(g(n)/Φ(n)) = C, ou C est une constantefinie. Notons que souvent, on ne compte que le nombre de multiplications et de divisions, lesadditions et les soustraction n’etant pas prises en compte.

Exercice Calculez la complexite algorithmique liee a la resolution d’un systeme d’equationsAx = b lorsque A est une matrice triangulaire.

3.6.2 Conditionnement

Un autres aspect important lie a la resolution algorithmique reside dans la robustesse de lasolution du probleme obtenue vis a vis d’erreurs sur la connaissance precise des valeurs desparametres du probleme et sur la precision des calculs en machine.

Un probleme sera dit bien conditionne lorsque sa solution variera peu lors d’une faible perturba-tion de ses parametres. Considerons plus particulierement le cas simple et qui nous interesse icides systemes d’equations lineaires et prenons l’exemple des deux systemes dequations suivants

2x1 + 6x2 = 82x1 + (6 + 10−5)x2 = 8 + 10−5 et

2x1 + 6x2 = 82x1 + (6− 10−5)x2 = 8 + 2.10−5.

(3.35)

On voit bien que la variation relative des parametres entre ces deux systemes est tres faible(inferieure a 10−5) et que malgre cela les solutions obtenues sont tres eloignees.

Exercice Expliquez geometriquement pourquoi les solutions des deux systemes sont tres differentes.

Pour quantifier la notion de robustesse d’un systeme lineaire d’equations Ax = b, on va cherchera exprimer la variation relative de la norme de la solution lorsqu’on introduit une perturbationdes parametres qui conduit a un nouveau systeme note

(A + εF)x(ε) = b + εf . (3.36)

En notant x(ε) la solution de ce systeme, un developpement limite de x autour de ε = 0 conduita

x(ε) = x + εx′(0) +O(ε2) = x + εA−1(f − Fx) +O(ε2) (3.37)

d’ou il vient que‖ x(ε)− x ‖‖ x ‖

≤ εK(A)

(‖ f ‖‖ b ‖

+‖ F ‖‖ A ‖

)+O(ε2). (3.38)

On voit donc que la solution sera d’autant plus insensible aux erreurs relatives sur les parametresA et b que le parametre K(A) =‖ A ‖‖ A−1 ‖ appele parametre de conditionnement, ou

Page 32: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 3. RAPPELS SUR LES MATRICES ET LES SYSTEMES D’EQUATIONS LINEAIRES31

simplement conditionnement du systeme sera faible. Notons que la valeur de K(A) dependde la norme choisie. Cependant, si on note K2(A) la valeur du conditionnement obtenue pourla norme ‖ . ‖2, on peut verifier que l’on a toujours K(A) ≥ K2(A) ≥ 1.

Lorsque K(A) est grand, on dit que le systeme est mal conditionne.

Exercice Verifiez l’equation (3.38) et montrez que pour une matrice A hermitienne, K2(A) =λmax(A)/λmin(A).

Page 33: Notes de cours d'analyse numérique et d'optimisation continue ...

Chapitre 4

Systemes d’equations sur-determineset sous-determines

Dans ce chapitre, on reviend rapidement sur les notions de systemes d’equations sur-determineset sous-determines, deja envisagees au chapitre 2.

Par opposition a un systeme dit regulier d’equations lineaires Ax = b pour lequel la matriceA est carree et inversible, auquel cas on a clairement x = A−1b, les systemes sur-determines etles systemes sous-determines qui comportent plus de lignes que de colonnes ou au contraire plusd’inconnues que d’equations ne permettent pas de trouver une solution exacte, ou au contrairefournissent tout un sous espace vectoriel de solutions. On rappelle ici brievement les approchesclassiques retenues dans ce genre de stuation. On se limite ici au cas reel. Le cas complexe setraite de facon analogue et pourra etre envisage a titre d’exercice.

Notons que la recherche des solutions envisagee ici met en oeuvre quelques notions d’optimi-sation. Ces notions seront detaillees dans la seconde partie du cours. Pour l’instant, il suffitde savoir qu’une condition d’optimalite necessaire pour une fonction derivable d’une variablevectorielle f(x) est fournie par l’annulation de son gradient ∇f(x) aux points ou elle prend savaleur optimale. On pourra ici justifier du caractere suffisant du critere d’optimalite ∇f(x) = 0en invoquant le theoreme de projection qui assure qu’a tout vecteur v (resp. a tout point M) deRn correspond un vecteur (resp. un point) unique de tout sous-espace vectoriel (resp. de toutsous-espace affine) dont la distance a v (resp. a M) est minimale parmi l’ensemble des pointsdu sous-espace.

4.1 Systemes sur-determines

Lorsque A est inversible, on a clairement x = A−1b, mais dans de nombreuses situations on estconduit a une suite d’observation (bi)i=1,m issues des combinaisons lineaires

∑i=1,n Aijxj des

quantitees inconnues (xj)j=1,n et des coefficients supposes connus de la matrice A. Dans ce typede situation, pour un nombre important d’observations, c’est a dire pour m > n la matrice A

32

Page 34: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 4. SYSTEMES D’EQUATIONS SUR-DETERMINES ET SOUS-DETERMINES33

est generalement de rang plein, c’est a dire ici de rang n. Compte tenu notament des erreurs demesures ou des imperfections du modele lineaire utilise il est rare que les equations du systemesoient compatibles. En d’autres termes le systeme d’equations Ax = b n’admet pas de solution.

Afin d’acceder a une valeur approchee de x un critere naturel consiste a rechercher le vecteur xtel que la norme de l’erreur de reconstruction de b sous la forme Ax soit la plus faible possible.En general, on considere la norme l2 qui a l’avantage de pouvoir etre interpretee physiquementcomme une energie, mais surtout qui conduit a une solution qui se formule tres simplement. Eneffet la solution de

minx‖ Ax− b ‖22 (4.1)

doit verifier le systeme d’equationsATAx = ATb. (4.2)

Exercice Montrez ce resultat de deux manieres differentes : en annulant le gradient du critereet en utilisant le theoreme de projection. Montrez de plus que comme m > n et que la matriceest de rang plein la matrice ATA est inversible.

Finalement la solution fournie par la methode des moindres carres est donnee par

x = (ATA)−1ATb. (4.3)

Notons que meme lorsque les equations du systeme ne sont pas incompatibles, la recherche de lasolution des moindres carres reste utile pour caracteriser la solution du systeme lorsque m > n etque A est de rang plein, car il n’est pas necessaire ici de rechercher quelles equations redondantespeuvent etre eliminees du systeme pour se ramener a un systeme carre inversible.

Exercice Montrez que la solution des moindres carres fournit l’estimateur du maximum devraisemblance de x pour un modele d’observation de la forme b = Ax + w, ou w est unvecteur aleatoire gaussien dont les composantes sont decorellees et de meme variance.

4.2 Systemes sous-determines

lorsque le systeme Ax = b comporte plus de colonnes que de de lignes (m < n) et est derang plein, l’ensemble des solutions du systeme constitue un espace affine de dimension n−m.En effet, si on decompose (au besoin en permutant des colonnes) la matrice A sous la formeA = [A1|A2], ou A1 est une matrice carree inversible, et de facon correspondante le vecteur xsous la forme x = [xT1 |xT2 ]T , l’equation Ax = b, se reformule comme

A1x1 + A2x2 = b, (4.4)

soit x1 = A−11 b − A−1

1 A2x2. on voit donc que l’ensemble des solutions est l’espace affine dedimension n−m defini par

E =

u ∈ Rn|u =

(A−1

1 b0

)+

(−A−1

1 A2

I

)y, y ∈ Rn−m

. (4.5)

Page 35: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 4. SYSTEMES D’EQUATIONS SUR-DETERMINES ET SOUS-DETERMINES34

Parmi toutes ces solutions, on est souvent amene a choisir une solution particuliere. On choisitalors souvent de considerer la solution de norme minimale. On peut montrer que la solution dusysteme Ax = b dont la norme quadratique est minimale est donnee par

x = AT (AAT )−1b, (4.6)

Notons que la solution (4.6) est celle du probleme d’optimisation sous contraintesminx xTxAx = b.

(4.7)

On verra en cours d’optimisation comment resoudre de facon systematique ce genre de problemeen utilisant les multiplicateurs de Lagrange. La caracterisation (4.5) de l’ensemble des so-lutions de Ax = b peut cependant etre utilisee pour obtenir de facon directe, bien qu’un peulaborieuse, la solution de norme minimale.

Exercice En utilisant la carcaterisation (4.5) de l’ensemble des solutions du systeme Ax = b,demontrez que la solution de norme minimale vaut x = AT (AAT )−1b. (Indication : utiliser lelemme d’inversion matricielle pour simplifier la formule obtenue).

4.3 Cas general

Dans le cas general la matrice A du systeme Ax = b n’est pas forcement de rang plein. On peutse ramener a un systeme de rang plein de diverses facons. Ainsi, par exemple, la decompositionen valeurs singulieres de A s’ecrit A = UDVH, ou les matrices unitaires U et V sont de taillesrespectives m et n. Si A n’est pas de rang plein, certains des termes diagonaux de la matrice Dsont nuls. Considerons le systeme equivalent DVHx = UHb. La matrice D de taille m × n sereecrit sous la forme

D = D1, D =

[D1

0

], D =

[D1 0

], ouD =

[D1 00 0

], (4.8)

ou D1 est une matrice diagonale inversible de taille p. La matrice A est de rang plein si p =minm,n ce qui correspond aux trois premiers cs de figure decrits par les relations (4.8). Ennotant U1 et V1 les matrices constituees des p premieres colonnes de U et de V respectivement,on voit clairement que les solutions des moindres carres verifient

D1VH1 x = UH

1 b. (4.9)

Si n = p, x est defini de facon unique. Sinon, parmi les valeurs de x solutions de (4.9), on peutmontrer que l’approximation de norme minimale est donnee par

x = V1D−11 UH

1 b. (4.10)

Exercice Verifiez que la solution des moindres carres de norme minimale est bien donnee par(4.10).

Page 36: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 4. SYSTEMES D’EQUATIONS SUR-DETERMINES ET SOUS-DETERMINES35

4.4 Matrices blocs et resolution partielle des systemes lineaires

On considere la matrice

A =

(A11 A12

A21 A22

). (4.11)

avec A11 inversible. On verifie facilement que

A =

(I 0

A21A−111 I

)(A11 0

0 A22 −A21A−111 A12

)(I A−1

11 A12

0 In

). (4.12)

Le coefficient A22−A21A−111 A12 est appelee complement de Schur du bloc A11 de la matrice

A. Il est clair que A est une matrice symetrique positive si et seulement si le complement deSchur est une matrice symetrique positive.

On suppose maintenant de plus que A22 est inversible. Le lemme d’inversion matricielle appliqueau complement de Schur conduit a

(A22 −A21A11A12)−1 = A−122 + A−1

22 A21(A11 −A12A−122 A21)−1A12A

−122 (4.13)

D’apres la relation (4.12), on peut alors verifier que

A−1 =

(I −A−1

11 A12

0 I

)

×(

A−111 0

0 A−122 + A−1

22 A21(A11 −A12A−122 A21)−1A12A

−122

)(I 0

−A21A−111 I

).

(4.14)On peut egalement verifier que Ces formules sont connues sous le nom de lemme d’inversionmatriciel.

Il peut arriver que dans un probleme on cherche a resoudre partiellement un systeme d’equationslineaires. Ainsi, si on considere le systeme d’equations(

A11 A12

A21 A22

)(x1

x2

)=

(b1

b2

), (4.15)

et que l’on cherche simplement la solution pour x1. On verifiera a titre d’exercice que

x1 = (A11 −A12A−122 A21)−1(b1 −A12A

−122 b2). (4.16)

Page 37: Notes de cours d'analyse numérique et d'optimisation continue ...

Chapitre 5

Resolution directe des systemeslineaires

Considerons un systeme lineaire regulier d’equations Ax = b. Par opposition aux methodesiteratives, les methodes de resolution directe permettent d’obtenir la solution exacte d’un telsysteme (aux erreurs numeriques pres) apres un nombre d’operations fixe, fonction de la tailledu systeme. Les methodes directes assurent la resolution des systemes d’equations lineaires detaille n pour un cout de calcul de l’ordre de n3 operations.

Les methodes de resolution directe visent a ramener la resolution du systeme Ax = b a laresolution d’un systeme d’equations triangulaire Tx = b′, pour lequel la matrice T est triangu-laire et la complexite de n2 operations. Il apparaıt en fait que c’est la transformation du systemeAx = b en le systeme Tx = b′ qui sera la plus couteuse en termes de cout de calcul. Pour lesysteme triangulaire Tx = b′, si on suppose par exemple que T est triangulaire superieure, c’esta dire que Tij = 0 pour i > j, on verifie facilement que x est fourni par l’algorithme iteratifsuivant, presente en utilisant la syntaxe de Scilab [10] :

for k=n:-1:1,

x(k) = (b(k)-T(k,k+1:n)*x(k+1:n))/T(k,k);

end;

Dont la complexite est Φ(n) = n2/2.

On distingue deux types de methodes directes : celles qui conduisent a une factorisation de Asous la forme A = LU, ou les matrices L et U sont respectivement triangulaire inferieure ettriangulaire superieure (de l’anglais L comme ’lower’ et U comme ’upper’), et celles de typeA = QR pour lesquelles la matrice Q est orthogonale (unitaire dans le cas complexe) et R esttriangulaire superieure. On verifie aisement qu’une telle ecriture constitue une orthogonalisa-tion de Gram-Schmidt des colonnes de A. En effet,

Dans la suite, on va detailler les algorithmes qui permettent d’obtenir les decompositions LU et

36

Page 38: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 5. RESOLUTION DIRECTE DES SYSTEMES LINEAIRES 37

QR

5.1 Methodes de Gauss

5.1.1 Principe general

La methode de Gauss consiste a eliminer successivement pour k = 1, . . . , n− 1 les contributionsde la variable xk dans les equations k + 1, . . . , n du systeme, en les combinant avec la keme

equation. Sous reserve que les divisions mises en jeux soient possibles (pas de division par 0),on obtient finalement le schema algorithmique suivant

for k=1:n-1,

for l=k+1:n,

A(l,k:n) = A(l,k:n) - (A(l,k)/A(k,k))*A(k,k:n);

b(l) = b(l) - (A(l,k)/A(k,k))*b(k);

end

end

A la fin de cet algorithme, la matrice A est devenue triangulaire grace a la succession descombinaisons de ses lignes.

Notons que la keme boucle de l’algorithme revient a multiplier a gauche les deux membres dusysteme courant par la matrice Mk qui possede des 1 sur sa diagonale et des zeros partout

ailleurs, sauf pour ses termes d’indice (k, l), lorsque l > k, pour lesquels [Mk]kl = −A(k)lk /A

(k)kk .

On construit ainsi la suite de matrices

A(1) = A,A(2) = M1(1)A(1), . . . ,A(k+1) = MkA(k), . . . , (5.1)

et on obtient finalement le systeme

M1..Mn−1Ax = Ux = M1..Mn−1b = b′. (5.2)

La resolution du systeme Ux = b′ est immediate puisque U est triangulaire superieure. Penchonsnous un instant sur l’egalite M1 . . .Mn−1A = U. Notons que A = [M−1

n−1 . . .M−12 ]U. Une

propriete remarquable de la matrice M−1k est quel s’obtient simplement a partir de Mk par

un changement de signe des coefficients places sous la diagonale, ce que l’on pourra verifiera titre d’exercice. De plus, on verifie facilement en procedant par recurrence que le produitL = [M−1

n−1 . . .M−12 ] est tel que la keme colonne de L coıncide avec la keme colonne de Mk au

signe pres des termes sous-diagonaux. Finalement L est triangulaire inferieure, avec

Lkl =

= 0 si k < l= 1 si k = l

= A(k)lk /A

(k)kk si k > l,

(5.3)

Page 39: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 5. RESOLUTION DIRECTE DES SYSTEMES LINEAIRES 38

soit,

L =

1 0 0 · · · 0

A(1)21 /A

(1)11 1

. . ....

......

. . . 0

A(1)n1 /A

(1)11 A

(2)n2 /A

(2)22 · · · 1

(5.4)

On a donc bien realise la decomposition LU de la matrice A, avec L triangulaire inferieure etU triangulaire superieure.

5.1.2 Stabilite et pivot

Comme on l’a vu precedemment, la methode de Gauss ne vaut que s’il n’y a pas de division par

0, c’est a dire si la sequence des coefficients (A(k)kk )k=1,n−1 n’a pas de terme nul. En pratique, si

A(k)kk a une valeur non nulle mais proche de 0, cela peut entraıner des erreurs numeriques qui

affectent de facon importante la solution obtenue.

La methode du pivot de Gauss permet de remedier a ce probleme de la facon suivante : a lakeme iteration de l’algorithme, on vient prelever le terme du bloc d’indices A(k)(k : n, k : n) deplus grand module et on vient le placer en position (k, k) au moyen d’une permutation Pck surles colonnes k a n de A(k) et d’une permutation Plk sur les lignes k a n. Finalement, la suitedes transformations de la matrice A peut se resumer comme suit :

(Mn−1Pln−1 . . .M1Pl1)A(Pc1 . . .Pcn−1) = U, (5.5)

ou U est triangulaire superieure. En fait, cette strategie est appelee pivot total, par oppositiona une methode plus simple, dite de pivot partiel, qui consiste simplement a permuter leslignes k a n de la matrice pour venir remplacer la ligne k par la ligne j, avec j ≥ k, pour

laquelle le coefficient |A(k)lk | est maximum. Cette strategie moins performante vis a vis des erreurs

numeriques est egalement moins couteuse puisque le nombre de comparaisons entre coefficientsa effectuer est nettement plus faible.

5.1.3 Cout de calcul, determinant et inverse

L’obtention de la suite des systemes d’equations A(k)x = b(k) necessite de l’ordre de∑

k=1,n−1(n−k)2 multiplications, soit Φ(n) = n3/3 pour la resolution du systeme, puisque l’inversion dusysteme triangulaire obtenu ne reclame qu’environ n2/2 multiplications.

Notons maintenant que la connaissance de la decomposition LU de A fournit directement ledeterminant de A :

|A| = Πk=1,nA(k)kk (5.6)

On peut egalement ainsi obtenir l’inverse de la matrice A puisque si on note A−1 = [A1, . . . , An],les colonnes de A−1 sont fournies par la resolution des n systemes d’equations LUAk = ek, quipeuvent chacun se ramener a la resolution successive de deux systemes triangulaires :

Page 40: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 5. RESOLUTION DIRECTE DES SYSTEMES LINEAIRES 39

Lyk = ek → Φ(n) = n3/6,

UAk = yk → Φ(n) = n3/2,(5.7)

ou les vecteurs ek sont les vecteurs de la base canonique ([ek]i = δk,i). Le premier systeme reclamemoins de calcul que le second du fait de la presence de 0 sur les k − 1 premieres composantesdu vecteur ek. La resolution des equations matricielles (5.7) reclame donc un total de 2n3/3operations. Mais comme la factorisation LU elle meme requiert n3/3 operations, on obtientΦ(n) = n3 multiplications pour le calcul de l’inverse de A.

5.1.4 Methode de Cholesky

Dans le cas particulier ou la matrice A est symetrique reelle (AT = A) positive , on peutverifier que A = LLT avec L triangulaire inferieure. L’adaptation de la methode de Gauss acette situation conduit a l’algorithme suivant, connu sous le nom de factorisation de Cholesky.On note que

A =

(L2

11 L11aT1

L11a1 An−1

)=

(L11 0a1 I

)(1 00 An−1 − a1a

T1

)(L11 aT10 I

). (5.8)

On procede de meme sur la matrice positive An−1 − a1aT1 et on itere la procedure.

Exercice Justifiez la formule (5.8) et la positivite de la matrice An−1 − a1aT1 .

La construction de la matrice L de la factorisation de Cholesky peut finalement etre resumeepar les relations ci dessous :

L =

Ljj =

√Ajj −

∑i=1,j−1 L2

ji

Lij = L−1jj (Aij −

∑k=1,j−1 LikLjk) (i = j + 1, . . . , n),

(5.9)

procedure dont le cout de calcul est Φ(n) = n3/6. Notons de plus que la positivite de la matriceA assure la stabilite de la methode.

En pratique, le code informatique correspondant pourra prendre la forme suivante :

L = zeros(n,n);

L(1,1) = sqrt(A(1,1));

for k=1:n-1,

L(k+1:n,k) = (A(k+1:n,k) - L(k+1:n,1:k-1)*(L(k,1:k-1))’)/L(k,k);

L(k+1,k+1) = sqrt(A(k+1,k+1)-L(k+1,1:k)*L(k+1,1:k)’);

end;

La factorisation LDLT relativement proche permet d’eviter la division par L2jj et les eventuels

problemes de stabibilite associes a cette division. Elle s’ecrit

A =

(d1 L1a

T1

L1a1 An−1

)=

(1 0a1 I

)(d1 00 An−1 − d1a1a

T1

)(d1 aT10 I

)(5.10)

Page 41: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 5. RESOLUTION DIRECTE DES SYSTEMES LINEAIRES 40

Notons que pour une matrice A hermitienne complexe (AH = A), on a un resultat analogue.Il suffit alors de remplacer les transpositions par des transpositions-conjugaisons dans ce quiprecede, et A = LLH

5.2 Triangularisation par orthonormalisation

Rappelons que pour une matrice Q orthogonale (QQT = I) on a pour toute matrice A

K2(QA) = K2(A). (5.11)

Le conditionnement du systeme Ax = b n’est donc pas affecte par une transformation ortho-gonale et il ne sera pas necessaire de prendre de precautions telles que la methode du pivotvue dans le cadre de la factorisation LU lorsqu’on triangularise le systeme. On va maintenantindiquer deux techniques importantes de triangularisation par orthonormalisation.

5.2.1 Methode de Householder

Pour un vecteur norme u (‖ u ‖= 1), on definit la matrice de reflexion de Householderassociee par

Hu = I− 2uuT . (5.12)

Notons que HuHTu = I et Hux = x− 2u(xTu). Ainsi, pour u = λ(x± ‖ x ‖ e1),

Hux = ∓ ‖ x ‖ e1, (5.13)

ou [ek]i = δi,k et λ =‖ x± ‖ x ‖ e1 ‖−1

On peut appliquer cette methode a la triangularisation de la matrice A de taille n en considerantune sequence de n − 1 transformations de Householder. On pose A(1) = A et on construitsuccessivement des transformations Hk (k = 1, . . . , n−1) qui annulent les termes sous diagonauxde la colonne k de A(k) = Hk−1A

(k−1) :

Hk =

(Ik−1 0

0 Hk

), (5.14)

ou Ik−1 est la matrice identite de taille k−1, et Hk une matrice de Householder de taille n−k+1qui annule les n− k derniers termes de la colonne k de la matrice A(k). Ainsi,

(Hn−1 × . . .×H1)A = QTA = R, (5.15)

avec QQT = In et R triangulaire superieure. Ainsi, A = QR.

Pour ce qui est du cout de calcul, pour la construction de la keme matrice et sa multiplicationpar Ak, il faut compter de l’ordre de 2(n − k)2 + O(n − k) operations, soit au total, pour lesn− 1 iterations de la procedure, Φ(n) = 2n3/3 operations (

∑k 2(n− k)2).

Page 42: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 5. RESOLUTION DIRECTE DES SYSTEMES LINEAIRES 41

5.2.2 Methode des rotations de Givens

Au lieu d’essayer de construire des matrices qui eliminent une sous colonne d’une matrice commes’etait le cas avec la methode de Householder, on se limite ici a l’elimination d’un unique coef-ficient de la matrice a chaque operation grace a une rotation dans un sous espace de dimensiondeux, appelee rotation de Givens. L’avantage de cette approche reside dans le fait que pourdes matrices A creuses, c’est a dire des matrices presentant un grand nombre de coefficients nuls,le cout de calcul de la triangularisation de A peut devenir nettement plus faible que pour lamethode de Householder. Pour un vecteur u de composantes (ui,uj) dans le sous espace definipar les indices i et j, on considere la rotation Gij(θ) qui agit dans ce sous espace et dont l’angleθ est choisi de sorte a annuler la composante de u selon la direction j. Le vecteur transformev = Gij(θ)u est tel que

vj = Gij(θ)ui :

vi = cui − sujvj = sui + cujvk = xk k 6= i, j.

(5.16)

avec c = cos θ et s = sin θ. Pour tan θ = −uj/ui, on aura vi =√

u2i + u2

j et vj = 0.

On peut appliquer cette methode a la triangularisation de la matrice A de taille n en considerantune sequence de (n−1)+(n−2)+. . .+1 = n(n−1)/2 rotations de Givens ; Ces rotations agissentsur des sous espaces d’indices (i, i+ 1) et vise a eliminer successivement les coefficients d’indices(n, 1), (n − 1, 1), . . . (2, 1), puis (n, 2), (n − 1, 2), . . . (3, 2), . . ., (n, k), (n − 1, k), . . . (k + 1, k), . . .,et enfin (n, n− 1) de la matrice A. On construit ainsi la matrice QTA = R, avec

QT = Gn−1,n(θn−1,n)×Gn−2,n−1(θn−2,n−1)Gn−1,n(θn−1,n)× . . .. . .×G1,2(θ1,2) . . .Gn−1,n(θn−1,n).

(5.17)

Finalement, A = QR, avec QQT = In et R est triangulaire superieure.

On peut verifier facilement que la complexite de la methode est de Φ(n) = 4n3/3 (∑

k(n− k)2).

Voici une implementation informatique de la factorisation QR d’une matrice carree A au moyende rotations de Givens :

Q = eye(n,n);

R = A;

for k1=1:n-1,

for k2=n-1:-1:k1,

x = R(k2,k1);

y = R(k2+1,k1);

if y~=0 then

rho = sqrt(x^2+y^2);

Cos = x/rho;

Sin = y/rho;

R(k2,k1) = rho;

Page 43: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 5. RESOLUTION DIRECTE DES SYSTEMES LINEAIRES 42

R(k2+1,k1) = 0.0;

for u=k1+1:n,

R_aux = Cos*R(k2,u) + Sin*R(k2+1,u);

R(k2+1,u) = -Sin*R(k2,u) + Cos*R(k2+1,u);

R(k2,u) = R_aux;

end;

for v=1:n,

Q_aux = Cos*Q(v,k2) + Sin*Q(v,k2+1);

Q(v,k2+1) = -Sin*Q(v,k2) + Cos*Q(v,k2+1);

Q(v,k2) = Q_aux;

end;

end;

end;

end;

Dans cette procedure, a chaque iteration, on a A = QR avec la matrice R qui devient progres-sivement triangulaire, les rotations a gauche appliquees a chaque etape a la matrice R etantcmpensees par des rotations a droite en sens inverse appliquees a Q.

5.2.3 Methode de Gram-Schmidt

On peut chercher a appliquer directement la procedure d’orthogonalisation de Gram-Schmidtsur les colonnes de la matrice A pour obtenir la decomposition QR. On obtient alors uneprocedure qui peut etre resumee comme suit : Pour k = 1, . . . , n,

Rik = QTi Ak, i = 1, . . . , k − 1

Zk = Ak −∑

i=1,k−1 RikQi

Rkk =‖ Zk ‖Qk = Zk/Rkk.

(5.18)

avec la notation M = [M1, . . . ,Mn].

Pour comprendre cette procedure, notons que Zk = (I−∑

i=1,k−1 QiQHi )Ak. On pourra aisement

verifier que I −∑

i=1,k−1 QiQHi est la matrice de projection sur l’orthogonal de l’espace en-

gendre par Q1, . . . ,Qk−1. Donc, comme vectQ1, . . . ,Qk−1 = vectA1, . . . ,Ak−1, Zk ap-paraıt comme la projection de Ak sur l’othogonal de vectA1, . . . ,Ak−1. De plus, Qk estsimplement une version normalisee du vecteur Zk.

Notons pour finir que cette approche n’est pas tres stable numeriquement et on lui preferegeneralement une methode de Gram-Schmidt modifiee [3].

Page 44: Notes de cours d'analyse numérique et d'optimisation continue ...

Chapitre 6

Resolution iterative des systemeslineaires

Les methodes de resolution iterative des systemes d’equations lineaires consistent a representerle systeme d’equations sous la forme d’une equation matricielle recurrente qui permet, a partird’un vecteur initial fixe de construire une suite de vecteurs dont on espere qu’elle converge versla solution du systeme. Plus precisemment, pour le systeme lineaire d’equations Ax = b, si ondecompose A sous la forme A = M−N, il apparaıt que la solution x de Ax = b est egalementsolution de Mx = Nx + b. En d’autres termes, x est un point fixe de l’equation de recurrence

Mx(t) = Nx(t−1) + b, t = 1, 2, . . . , (6.1)

pour laquelle x(0) est une valeur initiale fixee quelconque. Bien sur, pour trouver x(t) connaissantx(t−1), il serait souhaitable que l’inversion de M soit simple, ce qui conduit souvent a choisir Megale a la partie diagonale ou a la partie triangulaire, par exemple inferieure, de A. Ces choixconduisent respectivement aux methodes de Jacobi et de Gauss-Siedel.

Notons que si l’algorithme converge, a la convergence on doit avoir Mx = Nx + b, et donc, pardifference avec l’equation (6.1)

(x(t) − x) = (M−1N)t(x(0) − x). (6.2)

On voit donc que la convergence se traduit par le fait que les valeurs propres de la matriceM−1N sont de modules inferieurs a un. Cela permet d’obtenir les conditions de convergencesuivantes pour les algorithmes iteratifs en general et les algorithmes de Jacobi et de GaussSiedel en particulier [2] :

— l’algorithme (6.1) converge vers la solution de Ax = b si et seulement si les valeurspropres de M−1N sont de modules inferieurs a un.

— Si ‖M−1N ‖< 1, alors l’algorithme (6.1) converge vers la solution de Ax = b.— Si |Aii| > |

∑j 6=i |Aij |, ∀i, la methode de Jacobi converge.

— Si A est symetrique definie positive (A = AT et A > 0), la methode de Gauss-Siedelconverge.

En pratique, la methode de Jacobi peut prendre la forme du code suivant :

43

Page 45: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 6. RESOLUTION ITERATIVE DES SYSTEMES LINEAIRES 44

x = zeros(n,1);

dA = diag(A);

A_ = -A+diag(dA);

for nb=1:nb_iter,

x = (A_*x +b)./dA;

end;

La methode de Gauss-Siedel, quant a elle, peut etre programmee sous la forme suivante :

x = zeros(n,1);

for nb=1:nb_iter,

for k=1:nb_symb,

x(k) = x(k) + (-A(k,:)*x+b(k))/A(k,k);

end;

end;

Il est possible d’accelerer l’algorithme de Gauss-Siedel au moyen d’une technique dite de sur-relaxation dont le fonctionnement general est decrit ci dessous :

x(t+1)i = −

∑j<i Aijx

(t+1)j −

∑j>i Aijx

(t)j + bi

x(t+1)i = ωx

(t+1)i + (1− ω)x

(t)i

(6.3)

On peut montrer que si A est symetrique definie positive la convergence est assuree pour 0 <ω < 2 et que la vitesse de convergence est optimale pour une valeur de ω comprise en un etdeux.

Page 46: Notes de cours d'analyse numérique et d'optimisation continue ...

Chapitre 7

Decompositions en valeurs propreset en valeurs singulieres

On s’interesse ici au probleme du calcul pratique des valeurs propres d’une matrice. On verraque le probleme de la decomposition en valeurs singulieres est etroitement lie au precedent. Iln’existe pas en general de formule qui permette de calculer de facon exacte les valeurs propresd’une matrice puisque ce sont les racines de son polynome caracteristique et que pour desdegres superieur a 4 les racines equations polynomiales n’admettent pas en general de formeexplicite. Il faut donc mettre en oeuvre des techniques iteratives pour obtenir la decompositionen valeurs propre des matrices. Notons ici qu’en general on ne cherche pas les racines du polynomecaracteristique pour trouver les valeurs propres d’une matrice mais qu’on travaillera plutot surla recherche d’un changement de base permettant d’obtenir une forme diagonale de la matrice,ou du moins triangulaire (decomposition de Schur). Pour justifier de l’equivalence entre lesracines d’un polynome et les valeurs propres d’une matrice, notons que les racines du polynomeP (x) = a0 + a1x+ a2x

2 + . . .+ an−1xn−1 +xn coıncident avec les valeurs propres de sa matrice

companion, definie par : −an−1 −an−2 . . . a0

1 0 . . . 00 1 0 . . . 0

. . .

0 . . . 0 1 0

. (7.1)

Exercice Verifier que les valeurs propres de la matrice (7.1) coıncident bien avec les racines deP (x) = a0 + a1x+ a2x

2 + . . .+ an−1xn−1 + xn .

45

Page 47: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 7. DECOMPOSITIONS EN VALEURS PROPRES ET EN VALEURS SINGULIERES46

7.1 Diagonalisation des matrices symetriques : la methode deJacobi

On se limitera ci dessous au cas de matrices symetriques a valeurs relles. L’extension au cas desmatrices hermitiennes suppose la prise en compte d’un terme exponentiel complexe supplementairedans les matrices de rotation de Givens qui ne modifie pas le principe de la demarche.

La methode repose sur l’emploi des rotations de Givens, deja rencontrees dans le paragraphe surla decomposition QR des matrices. Commencons par considerer une matrice symetrique 2× 2

A =

[A11 A12

A21 A22

]. (7.2)

et, en appliquant les notations du paragraphe 5.2.2, appliquons la rotation G12(θ) a gauche deA et G12(θ)T = G12(−θ) a droite de A, on obtient, en prenant en compte la relation A12 = A21,

G12(θ)AG12(θ)T =A11 cos2(θ) +A22 sin2(θ)−A12 sin(2θ) A12 cos(2θ) +A11 −A22

2sin(2θ)

A12 cos(2θ) +A11 −A22

2sin(2θ) A11 sin2(θ) +A22 cos2(θ) +A12 sin(2θ)

. (7.3)

On voit donc que la matrice obtenue est diagonale des lors que

cot(2θ) =A22 −A11

2A12. (7.4)

Exercice Afin de construire la matrice de rotation precedente, montrer que cos(θ) = (1+t2)−1/2

et sin(θ) = t(1+t2)−1/2, ou t est la racine de module inferieur ou egal a 1 de t2+(A22−A11A12

)t−1 = 0.

Plus generalement, pour une matrice A de taille n on pourra appliquer successivement des rota-tions a droite et a gauche dans les sous-espaces d’indice (i, j) afin d’annuler les termes d’indice(i, j) de la matrice. On verifie facilement que dans cette operation, la somme des carres destermes diagonaux est augmentee de deux fois le carre du terme precedemment situe en posi-tion (i, j). Comme la norme de Frobenius de la matrice reste invariante par les transformationsorthogonales que sont les rotations de Givens, il apparaıt qu’a chaque iteration l’energie horsdiagonale dans la matrice decroit et que l’energie de la diagonale croıt d’autant.

On peut soit a chaque iteration chercher a annuler le terme hors diagonal le plus grand (methodede Jacobi classique), soit balayer successivement chaque composante hors diagonale (methodede jacobi cyclique), par exemple colonne par colonne. En pratique, on n’execute la rotation quesi l’amplitude du terme diagonal considere reste superieure a un certain seuil. On peut etablirla convergence de la methode de Jacobi [2].

Voici un exemple d’implementation de la procedure de Jacobi sur une matrice A symetrique detaille n qui annule a chaque iteration le terme hors diagonale de plus grande amplitude.

V = eye(n,n); //initialisation de la matrice des vecteurs propres

Page 48: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 7. DECOMPOSITIONS EN VALEURS PROPRES ET EN VALEURS SINGULIERES47

D = A; //initialisation de la matrice des valeurs propres

test = 2*seuil;

while test>seuil,

[test,ind] = max(abs(D-diag(diag(D))));

p = ind(1); // (p,q): indices du terme hors diagonal \‘a \’eliminer

q = ind(2);

coef = (D(q,q)-D(p,p))/(2*D(p,q));

t = - coef + sqrt(coef^2+1);

Cos = 1/sqrt(1+t^2);

Sin = t*Cos;

// rotation a gauche sur D

Daux = D(p,:);

D(p,:) = Cos*D(p,:) - Sin*D(q,:);

D(q,:) = Sin*Daux + Cos*D(q,:);

// rotation a droite sur D

Daux = D(:,p);

D(:,p) = Cos*D(:,p) - Sin*D(:,q);

D(:,q) = Sin*Daux + Cos*D(:,q);

// rotation a droite sur V

Vaux = V(:,p);

V(:,p) = Cos*V(:,p) - Sin*V(:,q);

V(:,q) = Sin*Vaux + Cos*V(:,q);

end;

7.2 Forme Hessenberg des matrices carrees

On va voir qu’il est particulierement interessant, pour calculer les valeurs propres d’une matriceA de se ramener a la forme Hessenberg de la matrice qui consiste a appliquer un changement debase orthonormee de telle sorte que la nouvelle matrice, notee H soit tridiagonale, c’est a diretelle que [H]ij = 0 pour |i− j| > 1. La factorisation de Hessenberg est obtenue simplementen appliquant une suite de rotations de Givens a droite et a gauche de la matrice A.

Cette decomposition s’applique aussi bien aux matrices symetriques qu’aux matrices carreesquelconques. On obtient finalement une representation de A sous la forme A = UTriVT , ouTri est une matrice tridiagonale. Dans le cas ou A est symetrique, cette representation devientsimplement A = UTriUT .

Il est remarquable que la forme Hessenberg, a la difference de la forme diagonalisee de la matrice,puisse etre obtenue avec un nombre fini d’operations. On peut y parvenir soit au moyen d’unesuite de n − 2 transformations de Householder, soit au moyen d’une suite de (n − 1)(n − 2)/2rotations de Givens..

Voici un exemple de programme permettant d’obtenir la forme Hessenberg dans le cas d’unematrice carree quelconque par la methode des rotations de Givens. Dans le cas symetrique, la

Page 49: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 7. DECOMPOSITIONS EN VALEURS PROPRES ET EN VALEURS SINGULIERES48

procedure se simplifie du fait que U = V et la matrice Tri est egalement symetrique.

U = eye(n,n);

V = eye(n,n);

Tri = A;

for p=1:n-2

for q=n:-1:p+2

// traitement de la partie sous-diagonale

if abs(Tri(q,p))>0,

rho = sqrt(Tri(q-1,p)^2+Tri(q,p)^2);

Cos = Tri(q-1,p)/rho;

Sin = -Tri(q,p)/rho;

// rotation a gauche sur Tri

Taux = Tri(q-1,:);

Tri(q-1,:) = Cos*Tri(q-1,:) - Sin*Tri(q,:);

Tri(q,:) = Sin*Taux + Cos*Tri(q,:);

// rotation a droite sur U

Uaux = U(:,q-1);

U(:,q-1) = Cos*U(:,q-1) - Sin*U(:,q);

U(:,q) = Sin*Uaux + Cos*U(:,q);

end;

// traitement de la partie sur-diagonale

if abs(Tri(p,q))>0,

rho = sqrt(Tri(p,q-1)^2+Tri(p,q)^2);

Cos = Tri(p,q-1)/rho;

Sin = -Tri(p,q)/rho;

// rotation a droite sur Tri

Taux = Tri(:,q-1);

Tri(:,q-1) = Cos*Tri(:,q-1) - Sin*Tri(:,q);

Tri(:,q) = Sin*Taux + Cos*Tri(:,q);

// rotation a droite sur V (a gauche sur V’)

Vaux = V(:,q-1);

V(:,q-1) = Cos*V(:,q-1) - Sin*V(:,q);

V(:,q) = Sin*Vaux + Cos*V(:,q);

end;

end;

end;

Tri = Tri.*(abs(Tri)>1.0e-10);

Exercice Dans le cas ou la matrice A est symetrique, Simplifier le programme scilab precedent.

Il existe plusieurs situations ou il est utile d’exploiter la forme Hessenberg de la matrice A, enparticulier pour la realisation des decompositionsen valeurs propres. Ainsi, pour une matricesymetrique, la forme Hessenberg peut etre exploitee pour calculer plus rapidement les valeurspropres de la matrice A par la methode de Jacobi. Dans le cas general, la forme Hessenbergpermet d’initialiser la methode iterative basee sur la decomposition QR presentee ci dessouspour le calcul de la decomposition de Schur de la matrice.

Page 50: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 7. DECOMPOSITIONS EN VALEURS PROPRES ET EN VALEURS SINGULIERES49

7.3 Decomposition en valeurs propres : le cas general

7.3.1 Aspects algorithmiques

Soit A une matrice diagonalisable. La methode des puissances permet de calculer un vecteurpropre associe a la valeur propre de module le plus eleve de facon iterative : a partir d’un vecteurinitial u0, on construit iterativement la suite de vecteurs

un+1 =Aun‖ Aun ‖

, (7.5)

qui converge vers un vecteur propre associe a la valeur propre de module le plus eleve. On peuts’en convaincre en exprimant Aun en fonction de la decomposition en valeurs propres de A.

En fait, cette methode peut se generaliser pour construire une matrice de vecteurs propres commelimite asymptotique d’une suite de matrice. La procedure iterative est resumee ci dessous :

Zn+1 = AQn

Qn+1Rn+1 = Zn+1( decomposition QR).(7.6)

QHn AQn converge vers la decomposition de Schur de A. Cet algorithme necessite de l’ordre de

n3 operations par iteration.

Cependant, ce cout de calcul peut etre reduit en utilisant la forme Hessenberg H de la matrice Adecrite plus haut. Une fois la forme Hessenberg obtenue la complexite numerique des iterationsla decomposition de Schur se trouve reduite. La proccedure s’ecrit ainsi

H0 = QH0 AQ0 (initialisation : forme Hessenberg )

Hk−1 − µI = QkRk (decomposition QR )Hk = RkQk + µI

, (7.7)

ou µ est un coefficient qui permet d’accelerer la vitesse de convergence. En effet, si on note λ(k)i

la ieme valeur propre obtenue a l’iteration k, alors on peut montrer que

|(λi)(k) − λi| ∼∣∣∣∣λi+1(−µ)

λi(−µ)

∣∣∣∣k . (7.8)

La suite des formes Hessenberg calculees converge vers la matrice triangulaire T de la formeSchur. Le cout de calcul de chaque iteration est maintenant de l’ordre de n2 operations dans lecas general et de seulement n operations si A est symetrique ou hermitienne car alors H0 estalors une matrice tridiagonale.

7.3.2 Lien avec la decomposition de Jordan

Pour une matrice carree A, il existe une matrice orthogonale Q telle que QHAQ = T avec Ttriangulaire superieure. La representation de A sous la forme QTQH est appelee decomposition

Page 51: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 7. DECOMPOSITIONS EN VALEURS PROPRES ET EN VALEURS SINGULIERES50

de Schur de A. On peut montrer que la diagonale de T contient les valeurs propres de A. On avu precedemment qu’une telle representation peut etre obtenue comme lmimite d’une suite deformes Hessenberg. T est alors simplement bi-diagonale : elle ne possede de termes non nulsque sur la diagonale et la premiere parallele a la diagonale, ici la parallele superieure, definie parles termes d’indices (i, i+ 1).

Exercice Montrez que la diagonale de T contient les valeurs propres de A.

La decomposition en valeurs propres d’une matrice carree A peut ne pas exister (considererpar exemple la matrice triangulaire superieure 2 × 2 dont tous les termes non nuls sont egauxa 1), mais que par contre il existe toujours une forme, dite de Jordan definie comme suit :∀A ∈ Cn × Cn, ∃P, P−1AP = J = diag(J1, . . . ,Jp), avec

Ji =

λi 1 0 · · ·

0. . .

. . .

λi 1λi

. (7.9)

Une meme valeur propre peut definir plusieurs matrices blocs Jk. Notons que le nombre d’oc-curences d’une valeur propres dans J correspond a son degre comme solution du polynomecaracteristique de A. Donc, si les valeurs propres sont distinctes A est diagonalisable puisqueles blocs degenerent alors en matrices de taille 1.

Exercice Montrez que si A est normale, alors elle est diagonalisable dans une base orthonormee.

7.4 Decomposition en valeurs singulieres

Rappelons que pour la matrice A, il existe toujeours deux matrices unitaires, U et V tellesque la matrice UHAV soit diagonale et a valeurs positive. Les valeurs diagonales de A sontappeleees valeurs singulieres de A.

Notons que si A = UDVH , alors

AAH = UD2UH et AHA = VD2VH . (7.10)

On voit donc que les valeurs singulieres de A sont les racines carrees des valeurs propres deAAH (et de AHA). De plus, U et V sont les matrices de vecteurs propres de AAH et de AHArespectivement.

Clairement, a la difference de la decomposition en valeurs propres, la decomposition en valeurssingulieres est definie meme pour des matrices qui ne sont pas carrees. De plus, on voit faci-lement que les colonnes de U associees aux valeurs singulieres non nulles definissent une baseorthonormee de l’espace image de A, tandis que les colonnes de V associees a la valeur singulierenulle definissent une base du noyau de A.

Ainsi, on peut par exemple decrire facilement le projecteur sur un espace vectoriel S = vectx1, .,xp

Page 52: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 7. DECOMPOSITIONS EN VALEURS PROPRES ET EN VALEURS SINGULIERES51

en considerant la matrice A = [x1, . . . ,xp] = UDVH . Le projecteur est donne simplement parPS =

∑i,Dii 6=0 UiU

Hi .

Comme on l’a vu, on peut egalement formuler aisement la resolution des systemes lineairesd’equations sur-determines et sous-determines a partir de la decomposition en valeurs singulieresde la matrice A.

Autre interet de la decomposition en valeurs singulieres, elle peut etre employee pour approximerune matrice par une matrice de rang plus faible. Ce type d’approximation peut etre exploitee,par exemple, en traitement d’images. Etant donnee une matrice A on cherche la matrice B derang r′, inferieur au rang de A telle que ‖ A−B ‖2F= Tr[(A−B)(A−B)H ] soit minimale. Lasolution est fournie par le resultat suivant :

Proposition 1 Si la decomposition en valeurs singulieres de A secrit UDVH , avec rang(A) =r, pour r′ < r, minrang(B)=r′ ‖ A − B ‖2F est obtenu pour B = UD′VH , ou D′ est obtenu enforcant a 0 les r − r′ plus petites valeurs singulieres non nulles de A dans D.

Exercice Demontrer la proposition precedente.

La decvomposition en valeurs singulieres sert aussi a decrire la distance entre sous-espaces vecto-riels : pour deux sous espaces S1 et S2 dont des bases orthonormees sont definies par les colonnes

des matrices U1 et U2 est definie comme suit : d(S1, S2) =‖ PS1−PS2 ‖=√

1−mini Σii(UH1 U2)

7.4.1 Realisation de la decomposition en valeurs singulieres

Matrices symetriques

Pour une matrice symetrique positive, la decomposition en valeurs singulieres est equivalenteet pour une matrice symetrique non positive, on passe tres facilement d’une forme a l’autre (leverifier a titre d’exercice). Dans le cas d’une matrice symetrique, on pourra chercher a accelererla vitesse de convergence de la methode de Jacobi en commencant par se ramener a formeHessenberg et en exploitant les specificites du cas symetrique dans la demarche presentee cidessous pour le cas de matrices carrees quelconques.

Matrices quelconques

Notons d’abord qu’on pourrait obtenir la decomposition en valeurs singulieres d’une matrice Aquelconque en realisant les decompositions en valeurs propres des matrices symetriques AAT etATA. On peut cependant proceder de facon plus directe, comme on va le voir.

En partant de la forme Hessenberg d’une matrice A = UTriVT quelconque, on peut faire laremarque suivante : l’elimination de la premiere sous diagonale de A par une sequence de n− 1

Page 53: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 7. DECOMPOSITIONS EN VALEURS PROPRES ET EN VALEURS SINGULIERES52

rotations de Givens transforme la matrice en une matrice triangulaire superieure qui possede destermes non nuls sur les deux premieres sur-diagonales. On reviend a une matrice tridiagonaleen eliminant la deuxieme sur-diagonale (termes d’indices (i, i + 2)) par une sequence de n − 2rotations de Givens appliquees a droite. On applique alors de meme une technique d’eliminationde la premiere sur-diagonale de A par une sequence de n − 1 rotations de Givens appliqueesa droite suivie de l’elimination des termes de la deuxieme sous-diagonale au moyen de n − 2rotations de Givens.

En partant de la forme Hessenberg A = UTriVT , cela peut se traduire par un code de la formesuivante :

D = Tri;

while max(abs(D-diag(diag(D))))>1.0e-15,

// Reduction de la 1ere // sous-diagonale

for p=1:n-1,

if abs(D(p+1,p))>1.0e-15,

rho = sqrt(D(p,p)^2+D(p+1,p)^2);

Cos = D(p,p)/rho;

Sin = -D(p+1,p)/rho;

// rotation a gauche sur D

Daux = D(p,:);

D(p,:) = Cos*D(p,:) - Sin*D(p+1,:);

D(p+1,:) = Sin*Daux + Cos*D(p+1,:);

// rotation a droite sur U

Uaux = U(:,p);

U(:,p) = Cos*U(:,p) - Sin*U(:,p+1);

U(:,p+1) = Sin*Uaux + Cos*U(:,p+1);

end;

end;

// traitement de la 2eme // sur-diagonale

for p=1:n-2,

if abs(D(p,p+2))>1.0e-15,

rho = sqrt(D(p,p+1)^2+D(p,p+2)^2);

Cos = D(p,p+1)/rho;

Sin = -D(p,p+2)/rho;

// rotation a droite sur D

Daux = D(:,p+1);

D(:,p+1) = Cos*D(:,p+1) - Sin*D(:,p+2);

D(:,p+2) = Sin*Daux + Cos*D(:,p+2);

// rotation a droite sur V (a gauche sur V’)

Vaux = V(:,p+1);

V(:,p+1) = Cos*V(:,p+1) - Sin*V(:,p+2);

V(:,p+2) = Sin*Vaux + Cos*V(:,p+2);

end;

end;

// traitement de la 1ere // sur-diagonale

for p=1:n-1,

Page 54: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 7. DECOMPOSITIONS EN VALEURS PROPRES ET EN VALEURS SINGULIERES53

if abs(D(p,p+1))>1.0e-15,

rho = sqrt(D(p,p)^2+D(p,p+1)^2);

Cos = D(p,p)/rho;

Sin = -D(p,p+1)/rho;

// rotation a droite sur D

Daux = D(:,p);

D(:,p) = Cos*D(:,p) - Sin*D(:,p+1);

D(:,p+1) = Sin*Daux + Cos*D(:,p+1);

// rotation a droite sur V (a gauche sur V’)

Vaux = V(:,p);

V(:,p) = Cos*V(:,p) - Sin*V(:,p+1);

V(:,p+1) = Sin*Vaux + Cos*V(:,p+1);

end;

end;

// traitement de la 2eme // sous-diagonale

for p=1:n-2,

if abs(D(p+2,p))>1.0e-15,

rho = sqrt(D(p+1,p)^2+D(p+2,p)^2);

Cos = D(p+1,p)/rho;

Sin = -D(p+2,p)/rho;

// rotation a gauche sur D

Daux = D(p+1,:);

D(p+1,:) = Cos*D(p+1,:) - Sin*D(p+2,:);

D(p+2,:) = Sin*Daux + Cos*D(p+2,:);

// rotation a droite sur U

Uaux = U(:,p+1);

U(:,p+1) = Cos*U(:,p+1) - Sin*U(:,p+2);

U(:,p+2) = Sin*Uaux + Cos*U(:,p+2);

end;

end;

end;

D = D.*(abs(D)>1.0e-15);

On pourrait bien sur reduire la longueur de ce code en realisant par exemple les rotations dansune fonction specifique, mais les appels a cette fonction peuvent reduire la vitesse d’execution.Notons egalement qu’on a suppose ici que la matrice A est carree. On peut toujours se ramenera ce cas, au besoin en completant la matrice A par des lignes ou des colonnes nulles, meme sid’un point de vue pratique, il vaut mieux affiner l’ecriture de l’algorithme pour eviter d’alourdirles calculs et de stockage entraınes une telle completion de la matrice A par des 0.

Page 55: Notes de cours d'analyse numérique et d'optimisation continue ...

Bibliographie

[1] G. Allaire, Analyse numerique et optimisation, Editions de l’Ecole Polytechnique, 2005.

[2] P.G. Ciarlet, Introduction a l’Analyse Numerique Matricielle et a l’Optimisation, Masson,1982.

[3] G.H. Golub, C.F. Van Loan, Matrix Computation, The John Hopkins University Press, 1989.

[4] S.A. Teulkoski,W.T. Vetterling,B.P. Flannery, Numerical Recipes in C : the Art of ScientificComputing, W.H.Press, Cambridge University Press.

[5] http ://www.univ-lille1.fr/ eudil/jbeuneu/index.html (analyse numerique, cours et pro-grammes C, en francais)

[6] http ://www.indiana.edu/∼rac/hpc/numerics.html (site de ressources pour le calcul nume-rique)

[7] http ://dmawww.epfl.ch/rappaz.mosaic/Support/support/ (cours d’analyse numerique del’EPFL)

[8] http ://www.netlib.org/lapack/lug/lapack lug.html (bibliotheque Fortran LAPACK ; gra-tuit)

[9] http ://hpux.connect.org.uk/hppd/hpux/Maths/LinAlgebra/CLAPACK-1.0/(telechargement de la version C de LAPACK nommee CLAPACK ; gratuit)

[10] http ://www.scilab.org/ (Scilab langage homepage)

54

Page 56: Notes de cours d'analyse numérique et d'optimisation continue ...

Deuxieme partie

Introductionaux operateurs lineaires

55

Page 57: Notes de cours d'analyse numérique et d'optimisation continue ...

Chapitre 8

Introduction

L’objectif de cette partie est d’etendre la notion de matrice au cas de transformations lineaires surdes espaces de dimension infinie. Lorsqu’on considere des fonctions definies sur des espaces vec-toriels de dimension infinie (c’est dire qui admettent des familles infinies de vecteurs lineairementindependants), on parle d’operateur plutot que de fonction, meme s’il s’agit au fond de la memechose ; simplement, il est un peu plus commode de parler d’un operateur defini sur un espace defonctions que d’une fonction definie sur un espace de fonctions.

On se limite ici a une presentation des operateurs sur des espaces de Hilbert. Les espacesde Hilbert generalisent la notion d’espace hermitien, un espace hermitien etant un espacevectoriel de dimension finie sur le corps des complexes muni d’un produit scalaire. Les espaceshermitiens constituent eux meme une generalisation au cas complexe des espaces euclidiensqui eux sont definis sur le corps des reels. Un des interets des espaces de Hilbert reside dans le faitque les proprietes geometriques usuelles des espaces euclidiens ou hermitiens s’y transposent, cequi contribue a faciliter la resolution de nombreux problemes et a en fournir une interpretationgeometrique simple.

Dans le chapitre 9, on presente rapidement la notion d’espace de Hilbert et de base ortogonalesur ces espaces. Le chapitre 10 fournit des notions de base importantes sur les operateurs lineairesdes espaces de Hilbert.

56

Page 58: Notes de cours d'analyse numérique et d'optimisation continue ...

Chapitre 9

Espaces de Hilbert

9.1 Definition

9.1.1 produit scalaire

Rappelons tout d’abord qu’un produit scalaire hermitien x, y →< x, y > sur un espacevectoriel E sur le corps des nombres complexes est une application de E × E dans C caractriseepar les proprietes suivantes qui generalisent celles du produit scalaire euclidien :

1. < x, x > ≥ 0, avec < x, x >= 0⇒ x = 0

2. < x, y >= < y, x >

3. < αx, y >= α < x, y >

4. < x+ y, z >=< x, z > + < y, z >

Bien entendu, le produit scalaire hermitien induit une norme et une distance sur E :

d(x, y) =‖ x− y ‖=√< x− y, x− y >. (9.1)

9.1.2 Espace de Hilbert

Un espace de Hilbert est un espace vectoriel norme H, complet et muni d’un produit scalairehermitien qui induit la norme de H. Rappelons ici que par definition H est complet si toutesuite de Cauchy (xn)n∈N de H, c’est dire telle que limm,n→∞ ‖ xm − xn ‖= 0, est convergente.

Exemples(i) L’espace l2 des suites x = (xk)k∈N telles que

∑k∈N |xk|2 <∞ est un espace de Hilbert pour

le produit scalaire hermitien defini par

< x, y >=∑k∈N

xky∗k. (9.2)

57

Page 59: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 9. ESPACES DE HILBERT 58

Pour la demonstration du caractere complet de l2, on pourra se referer a [3] (chap. I).

(ii) De meme, l’espace L2([a, b]) des fonctions f de carre integrable sur [a, b] (∫ ba |f(t)|2dt <∞)

est un espace de Hilbert pour le produit scalaire hermitien defini par

< f, g >=

∫ b

af(t)g(t)∗dt, (9.3)

des lors que l’on identifie les fonctions egales presque partout par rapport a la mesure de Le-besgue, c’est a dire egales partout sauf eventuellement sur un ensemble de mesure nulle parrapport a la mesure de Lebesgue, car < f, f >= 0⇒ f = 0 p.p.

9.2 Theoreme de projection

On retrouve pour le produit scalaire dans les espaces de Hilbert des proprietes analogues acelles du produit scalaire classique. Ainsi, le theoreme de projection se generalise aux espacesde Hilbert :

Theoreme 2 Si K est un sous ensemble convexe ferme d’un espace de Hilbert H, alors

∀x ∈ H, ∃!y ∈ K, ‖ x− y ‖= infz∈M

‖ x− z ‖ . (9.4)

De plus, y est caracterise par la relation suivante :

∀z ∈ K, < x− y, z − x >≤ 0. (9.5)

Si K est un sous-espace vectoriel ferme de H, l’inegalite (9.5) devient une egalite.

On pourra trouver la demonstration de ce resultat dans [2] (chap. V).

Exemple : Esperance conditionnelle Dans un espace probabilise (Ω,A, P ), l’ensemble L2(Ω,A, P )des variables aleatoires X a valeurs complexes et telles que E[|X|2] < ∞ forme un espace deHilbert, muni du produit scalaire < X,Y >= E[XY ∗]. Par ailleurs, l’ensemble

L2(PY ) =

h; h(Y ) ∈ (Ω,A, P ),

∫|h(y)|2PY (dy) <∞

(9.6)

est un sous-espace ferme de L2(Ω,A, P ), ce qui assure l’existence d’un unique optimum auprobleme

minh∈L2(PY )

‖ X − h(Y ) ‖, (9.7)

avec ‖ Z ‖=√E[|Z|2]. Cet optimum h, qui est caracterise par les relations (voir l’equation (9.5))

∀g ∈ L2(PY ), E[(X − h(Y )) g(Y )∗] = 0, (9.8)

definit l’esperance conditionnelle de X sachant Y : E[X|Y ] = h(Y ). Concernant la justificationdu caractere complet des espaces L2(µ), ou µ est une mesure bornee, on pourra se referer [5](chap. 3, p. 58). Concernant l’esperance conditionnelle dans L2(Ω,A, P ), on pourra par exemplese referer a [1] (chap. 4).

Page 60: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 9. ESPACES DE HILBERT 59

9.3 Bases orthonormees

Dans toute la suite, H designe un espace de Hilbert.

Definition 1 Une famille F = (φk)k∈K de H, avec K fini ou denombrable, est dite libre si toutesous famille de taille finie de F est une famille libre. F est une famille orthonormee de H si seselements verifient

< φk, φl >= δk,l. (9.9)

dans la suite, pour simplifier les notations, on prendra K = N∗ et simplement K = 1, 2, . . . , npour un espace de dimension finie.

Notons la propriete suivante : x ⊥ y ⇒ ‖ x + y ‖=‖ x ‖ + ‖ y ‖, dont la demonstration estimmediate. De plus, il est clair que l’inegalite de Cauchy-Schwarz | < x, y > | ≤‖ x ‖ . ‖ y ‖s’applique aussi dans les espace de Hilbert. Indiquons egalement la propriete suivante :

Proposition 2 Dans un espace de Hilbert, si xn → x et yn → y, alors < xn, yn >→< x, y >.

Exercice Demontrer la propriete precedente.

Les resultats precedents permettent d’etablir les proprietes suivantes des familles orthonormees :

Theoreme 3 Si F = (φk)k∈K (K ⊂ N) est une famille orthonormee de H, alors pour toutx ∈ H,

1.∑

k | < x, φk > | ≤‖ x ‖2 (ingalite de Bessel)

2.∑

k < x, φk > φk converge

3.∑

k ckφk converge si et seulement si∑

k |ck|2 <∞4. Si x =

∑k ckφk, alors ck =< x, φk >.

Exercice Demontrer les proprietes enonces dans le theoreme.

On dit qu’une famille orthonormee F = (φk)k∈K de H est une base orthonormee si toutelement x de H peut se representer sous la forme x =

∑k ckφk. Notons que d’apres le theoreme

precedent ck =< x, φk > (proprite 4).

Theoreme 4 Si F = (φk)k∈K de H est une famille orthonormee de H, les proprietes suivantessont equivalentes

1. F est une base de H2. (∀k, < x, φk >= 0) ⇒ x = 0

3. L’ensemble vect(F ) des combinaisons lineaires finies d’elements de F est dense dans H

Page 61: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 9. ESPACES DE HILBERT 60

4. ∀x ∈ H, ‖ x ‖2=∑

k | < x, φk > |2 (egalite de Parseval)

5. ∀x, y ∈ H, < x, y >=∑

k < x, φk > < y, φk >∗

Preuve (1)⇒(5) : Si x =∑∞

k=1 xkφk et y =∑∞

k=1 ykφk, la continuite du produit scalaire donne,en notant xn =

∑nk=1 xkφk et yn =

∑nk=1 ykφk :

< x, y >= limn→∞

< xn, yn >= limn→∞

n∑k=1

xkyk, (9.10)

La conclusion vient du fait que xk =< x, φk > et yk =< y, φk >.

(5)⇒(4) : prendre x = y dans (5).

(4)⇒(3) : ‖ x −∑n

k=1 < x, φk > φk ‖=‖ x ‖ −∑n

k=1 | < x, φk > |2 et le terme de droite del’egalite tend vers 0.

(3)⇒(2) :∑n

k=1 < x, φk > φk → x et∑n

k=1 < x, φk > φk = 0, donc x = 0.

(2)⇒(1) : ∀i, < x−∑

k < x, φk > φk, φi >= 0 ⇒ x =∑

k < x, φk > φk.

Exemple Les polynomes de Legendre (Ln)n∈N

Ln(x) =

√2n+ 1

n

1

2nn!

dn

dxn(x2 − 1)n (9.11)

forment une base orthonormale de L2([−1, 1)]. Nous aurons l’occasion d’utiliser ces polynomesdans le chapitre de ce document consacre l’integration numerique. On pourra verifier a titred’exercice que les polynomes de Legendre forment une base orthonormee de l’ensemble despolynomes sur [−1, 1]. De plus, le theoreme d’approximation de Weierstrass (voir paragraphe11.2.2), l’ensemble des polynomes est dense dans l’ensemble des fonctions continues. Enfin,l’ensemble des fonctions continues sur [−1, 1] est dense dans L2([−1, 1)] ([4], chap. I, p. 42). D’ou,d’apres la relation (3) precedente, le fait que (Ln)n∈N est une base orthonormale de L2([−1, 1)].

Exercice Montrer que si (φn)n∈N∗ et (ψn)n∈N∗ sont des bases de L2([a, b]), alors les fonctions(Φmn)m,n∈N∗ , avec Φmn = φmψn forment une base de L2([a, b]× [a, b]).

9.4 Separabilite et isometrie

9.4.1 Separabilite et bases

Un espace de HilbertH est dit separable s’il possede une famille finie ou denombrable d’elementsqui est dense dans H.

Theoreme 5 H contient une base orthonormee denombrable si et seulement si il est separable.

Page 62: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 9. ESPACES DE HILBERT 61

Preuve Si H est separable, on peut construire iterativement, par orthogonalisation de Schmidt,une famille orthonormee de H qui engendre un espace dense dans H, ce qui etablit que cettefamille orthonormale est une base de H d’apres le theoreme 4 (proprite 3). Reciproquement,d’apres ce meme theoreme, toute base orthonormee denombrable engendre par combinaisonslineaires finies un sous espace denombrable dense de H.

Notons que tous les espaces de Hilbert ne sont pas separables. Ainsi, les fonctions definies surR par t 7→ eiλt, avec λ ∈ R forment une famille orthonormee non denombrable pour le produitscalaire

< f, g >= limT→∞

1

2T

∫ T

−Tf(t)g(t)∗dt (9.12)

et engendrent donc un espace de Hilbert non separable. Comme en general on s’interesse cepen-dant essentiellement aux espaces de Hilbert separables, les bases mises en oeuvre seront finiesou denombrables.

9.4.2 Projection

D’apres ce qui precede, un sous espace ferme separable H′ de H possede une base orthonormaledenombrable (ψk)k∈K . Si y ∈ H, il est aise de verifier d’apres le theoreme de projection que laprojection de y sur H′, notee y|H′, est donnee par

y|H′ =∑k

< y,ψk > ψk. (9.13)

9.4.3 Isometrie

Theoreme 6 Deux espaces de Hilbert H1 et H2 de dimensions infinies et separables sontlineairement isometriques, c’est dire qu’il existe une application lineaire A : H1 → H2, telleque pour tout x de H1, ‖ Ax ‖=‖ x ‖.

Preuve (φk)k et (ψk)k designant des bases de H1 et H2 respectivement, il suffit de prendre Atelle que

Ax =∑k

< x, φk > ψk. (9.14)

L’inegalite de Parseval permet alors de conclure.

Notons en particulier que tout espace de Hilbert separable de dimension infinie est isometriquel2 : l’application A : H → l2 associe a x =

∑∞k=1 < x, φk > φk la suite (< x, φk >)k∈N∗ de ses

coefficients. Notons que les coefficients < x, φk > sont appeles coefficients de Fourier de xassocies a la base (φk)k.

Remarque Parfois, on utilise plutot l’isometrie de H avec l2(Z), l’ensemble des suite indiceespar Z dont les carres sont absolument sommables. Ceci est utile en particulier pour identifier les

Page 63: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 9. ESPACES DE HILBERT 62

fonctions x de L2([−1/2, 1/2]) a la suite de leurs coefficients de Fourier xk =∫ π−π x(t)e−2iπktdt,

avec k ∈ Z.

Page 64: Notes de cours d'analyse numérique et d'optimisation continue ...

Chapitre 10

Operateurs lineaires

On considere ici des operateurs lineaires A : H1 → H2, o H1 et H2 sont des espaces de Hilbertsur le corps des complexes. La notion d’operateur lineaire permet la generalisation de la notionde matrice au cas de dimensions infinies.

10.1 Norme d’un operateur

On definit la norme de A par

‖ A ‖= sup‖x‖

‖ Ax ‖‖ x ‖

= sup‖x‖≤1

‖ Ax ‖ . (10.1)

Notons que la norme d’un operateur ainsi definie definit effectivement une norme sur l’espacevectoriel L(H1,H2) des operateurs lineaires de H1 dans H2.

Si ‖ A ‖< ∞, l’operateur est dit borne. Comme en dimension finie, la linearite entraıne uneequivalence entre le caractere borne d’un operateur et son caractere continu :

Theoreme 7 l’operateur lineaire A : H1 → H2 est borne si et seulement si il est continu, sacontinuite etant elle meme equivalente a sa continuite uniforme sur H1.

On pourra demontrer l’equivalence des trois proprietes a titre d’exercice.

63

Page 65: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 10. OPERATEURS LINEAIRES 64

10.2 Representation matricielle

Les espaces de Hilbert separables de dimension infinie etant isometriques, on peut les identifier.Considerons donc maintenant un operateur borne A de H dans lui meme. Comme

Ax =∑

j < x, φj > Aφj

=∑

j < x, φj > (∑

i < Aφj , φi > φi)(10.2)

on a[Ax]i =

∑j

< Aφj , φi >< x, φj > . (10.3)

On voit donc que l’operateur A peut etre represente par la matrice de taille infinie de coefficientgeneral (i, j) egal a < Aφj , φi >. Notons que selon que la base est indicee par N∗ ou par Z, onobtiendra respectivement une matrice ”infinie vers la droite et vers la gauche” ou ”doublementinfinie”.

Exemple On considere

Ax =

∫ b

ak(t, s)x(s)ds, (10.4)

defini sur L2([a, b]). En utilisant l’ingalite de Cauchy Schwarz, il apparaıt que

‖ A ‖≤∫

[a,b]×[a,b]|k(t, s)|2dsdt. (10.5)

A est donc borne des lors que k ∈ L2([a, b]2). Dans ce cas, la matrice associee A est de termegeneral

aij =

∫[a,b]×[a,b]

|k(t, s)|2φi(s)φj(t)∗dsdt =< k,Φji >, (10.6)

ou Φij(s, t) = φi(s)φj(t)∗, est parfaitement definie. Comme (Φij)ij est une base de L2([a, b]2), il

est clair que les coefficients aijsont de carres absolument sommables :∑ij

|aij |2 =∑ij

| < k,Φji > |2 =‖ k ‖2<∞ (10.7)

Les notions d’image et de noyau d’un operateur lineaire sont definies exactement comme endimension finie. Lorsque Im(A) est un espace de dimension n finie, on dit que A est de rang n.

Exemple Si φ1, . . . , φn et ψ1, . . . , ψn sont des familles deH1 et deH2 respectivement, l’operateurx 7→

∑nk=1 < x, φk > ψk est de rang fini, au plus egal n. Reciproquement, on a le resultat suivant :

Theoreme 8 Si un operateur lineaire borne A : H1 → H2 est de rang fini n, il existe desfamilles de vecteurs φ1, . . . , φn et ψ1, . . . , ψn, dans H1 et H2 respectivement, telles que

Ax =

n∑k=1

< x, φk > ψk. (10.8)

Page 66: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 10. OPERATEURS LINEAIRES 65

La preuve de ce theoreme fait appel au theoreme important de representation de Riesz :

Theoreme 9 (Riesz) Toute forme lineaire bornee ϕ : H → C est caractrisee par un uniqueelement y ∈ H tel que

ϕ(x) =< x, y >, ∀x ∈ H (10.9)

De plus, ‖ ϕ ‖=‖ y ‖.

Preuve Commencons par edmontrer le theoreme de Riesz. Si ϕ = 0, alors y = 0. Supposonsdonc que ϕ 6= 0. Kerϕ est clairement un sous espace vectoriel de H. De plus Kerϕ est fermed’apres la continuite du produit scalaire. Il existe v 6= 0 dans (Kerϕ)⊥. En effet, il existe unvecteur u ∈ H qui n’appartient pas a Kerϕ (sinon, on aurait ϕ = 0). Notons u la projectionorthogonale de u sur Kerϕ. D’apres le theoreme de projection, le vecteur v = u− u appartienta (Kerϕ)⊥ et est non nul car u /∈ Kerϕ. Notons y = vϕ(v)∗/ ‖ v ‖2. Pour tout x ∈ H, notonsque

x = yϕ(x)

ϕ(y)+ (x− yϕ(x)

ϕ(y)), (10.10)

ou le deuxieme terme de la somme appartient a Kerϕ et est donc orthogonal a y. On a donc

< x, y >=< yϕ(x)

ϕ(y)+ (x− yϕ(x)

ϕ(y)), y >=< y

ϕ(x)

ϕ(y), y >=‖ y ‖2 ϕ(x)

ϕ(y)= ϕ(x), (10.11)

car la relation y = vϕ(v)∗/ ‖ v ‖2 entraıne que ϕ(y) =‖ y ‖2. L’unicite de y provient du fait quesi y′ verifie egalement ϕ(x) =< x, y′ > pour tout x, alors < x, y − y′ >= 0 en particulier pourx = y − y′. Par suite ‖ y − y′ ‖= 0 et y = y′. Enfin, ‖ ϕ ‖=‖ y ‖ d’apres l’ingalite de CauchySchwarz, ce qui acheve la demonstration du theoreme de representation de Riesz.

Demontrons maintenant le theoreme 8 Prenons pour ψ1, . . . , ψn une base ortonormee de ImA.Comme Ax ∈ ImA,

Ax =

n∑k=1

< Ax, ψk > ψk. (10.12)

Comme ϕk : x 7→< Ax, ψk > est une forme lineaire bornee, on peut encore ecrire d’apres letheoreme de representation de Riesz que ϕk(x) =< x, φk > pour un certain element φk de H1,d’ou le resultat.

Exemple : filtrage Le theoreme de representation de Riesz montre en particulier que touteforme lineaire borne A : L2(R) → C se represente pour toute fonction x ∈ L(R) de de faconunique sous la forme integrale Ax =

∫R x(s)g(s)∗ds, o g ∈ L2(R). Ainsi, il apparaıt qu’un filtre,

qui a un instant t associe a un signal d’entree x d’energie finie une valeur en sortie y(t), peutetre mis sous la forme

y(t) =

∫Rx(s)gt(s)

∗ds. (10.13)

Un filtre etant un dispositif lineaire et de plus invariant par translation temporelle, l’expression

z(t) =

∫Rx(s− τ)gt(s)

∗ds (10.14)

Page 67: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 10. OPERATEURS LINEAIRES 66

impose que z(t) = y(t− τ), soit

y(t− τ) =

∫Rx(s)gt(s+ τ)∗ds. (10.15)

En posant t − τ = u et h(v) = gt(t − v)∗, comme gt(s + τ)∗ = gt(t − (u − s))∗ = h(u − s), onobtient finalement

y(u) =

∫Rx(s)h(u− s)ds, (10.16)

et on retrouve le resultat bien connu de l’expression du filtrage comme une convolution.

Page 68: Notes de cours d'analyse numérique et d'optimisation continue ...

Bibliographie

[1] M. Benam, N. El Karoui, Promenade aleatoire - chaınes de Markov et simulations, martin-gales et strategies, Ed. Ecole Polytechnique, 2004.

[2] H. Brezis, Analyse fonctionnelle, masson, 1992.

[3] I. Gohberg, S. Golberg, M. A. Kaashoek, Basic classes of linear operators, Birkhauser, 2003.

[4] V. Trenoguine, Analyse fonctionnelle, Ed. MIR, Moscou, 1980.

[5] M. Willem, Analyse harmonique reelle, Hermann, 1995.

[6] K. Yosida, Functional analysis, Springer Verlag, 1980.

67

Page 69: Notes de cours d'analyse numérique et d'optimisation continue ...

Troisieme partie

Interpolation et integration

68

Page 70: Notes de cours d'analyse numérique et d'optimisation continue ...

Chapitre 11

Interpolation et integration

11.1 Introduction

En general, l’integrale sur un intervalle [a, b] d’une fonction g(x) est approchee en considerantl’integration exacte d’un approximant polynomial de cette fonction. Aussi, nous allons envisagerici quelques aspects classiques de l’interpolation polynomiale et de l’integration. Notons qu’enposant f(x) = g(a+b

2 + b−a2 x), avec x ∈ [−1, 1] on transfert le probleme de l’interpolation ou de

l’integration sur [a, b] en un probleme analogue sur l’intervalle [−1, 1]. Ainsi, dans la suite, on serestreindra sans perte de generalites a des fonctions definies sur [−1, 1].

11.2 Interpolation polynomiale

Les formules de quadrature classiques sont connues pour assurer l’integration exacte des fonctionspolynomiales jusqu’ un degre au moins egal ‘a n − 1, ou n represente le nombre de points,ou noeuds, de la quadrature. Nous allons montrer qu’en d’autres termes cela signifie que laquadrature ∫

[−1,1]f(x)dx ≈

n∑k=1

wkf(xk) (11.1)

est definie de sorte a assurer l’integration exacte de l’interpolant de Lagrange de f aux pointsxk.

11.2.1 Interpolation de Lagrange

Afin de preciser les choses, commencons par rappeler ici la notion d’interpolant polynomial deLagrange d’une fonction. Etant donnes n points xk (k = 1, . . . , n) on definit les polynomes

69

Page 71: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 11. INTERPOLATION ET INTEGRATION 70

suivants :w(x) = Πk=1,n(x− xk)

wk(x) = Πj=1,n

j 6=k(x− xj)

lk(x) = wk(x)wk(xk)

(11.2)

Il est clair que lk(xk) = 1 et lk(xj) = 0 pour xj 6= xk : lk(xj) = δk,j .

Etant donnee une fonction f(x) definie sur [−1, 1] il est alors clair que le polynome de degre nqui passe par les points (xk, f(xk))k=1,n est donne par

fn(x) =

n∑k=1

lk(x)f(xk). (11.3)

fn(x) est appele polynome d’interpolation de Lagrange de f(x) aux points x1, . . . , xn.

11.2.2 Le phenomene de Runge

Malheureusement, lorsqu’on calcule un interpolant de Lagrange pour des points xk regulierementespaces dans [−1, 1], on observe que son comportement tend se degrader du fait de l’apparitiond’oscillations vers les extremites de l’intervalle, qui tendent croıtre avec le degre n de l’interpo-lation. Ce phenomene est connu sous le nom de phenomene de Runge [?, ?]. En pratique, cephenomene devient tres marque pour des valeurs de n de l’ordre de 10, meme pour des fonctionsinfiniment derivables variant lentement, telle la fonction f(x) = (1 + 16x2)−1 consideree parRunge pour mettre en evidence le phenomene.

Dans ces conditions, il apparaıt que l’emploi d’un interpolant polynomial de Lagrange calculesur des points regulierement espaces pour approcher l’integrale d’une fonction f via l’integrationde cet interpolant ne conduit pas a de bons resultats.

Cela ne signifie cependant pas qu’on ne puisse pas utiliser d’approximant polynomial pourintegrer une fonction de facon precise. En effet, le theoreme de Weierstrass indique quepour toute fonction f continue sur [−1, 1], si Pn represente l’ensemble des polynomes de degreinferieur ou egal a n, alors il existe une sequence (qn)n∈N, avec qn ∈ Pn, telle que [?]

limn→∞

suppn∈Pn, |x|≤1

|f(x)− pn(x)| = 0. (11.4)

Une facon d’obtenir une telle suite de polynomes consiste a considerer des interpolants de La-grange de f(x) definis en des points xk irregulierement espaces. Plus precisemment, si on choisit

pour n fixe des points (x(n)k )k=1,n tels que lorsque n augmente ces points soient asymptotique-

ment distribues dans [−1, 1] selon la densite suivante [?]

ρ(x) =1

π√

1− x2, (11.5)

alors, la suite correspondante des interpolants de Lagrange converge uniformement vers f sur[−1, 1].

Page 72: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 11. INTERPOLATION ET INTEGRATION 71

11.3 Integration de Newton-Cotes

L’integration de Newton-Cotes consiste a remplacer l’integration de la fonction f par cellede son interpolant polynomial de Lagrange calcule pour des points xk regulierement espaces.L’interpolant est donne par fn(x) =

∑nk=1 lk(x)f(xk) de l’equation (11.3), avec par exemple

xk = (2k − n− 1)/n, et k = 1, . . . , n.

La formule de quadrature pour f(x) est donc donnee par∫ 1

−1f(x)dx ≈

∫ 1

−1fn(x)dx =

n∑k=1

(∫ 1

−1lk(x)dx

)fn(xk). (11.6)

Comme fn(xk) = f(xk), les poids de la quadrature∑n

k=1wkf(xk) qui assurent une quadratureexacte de l’interpolant de Lagrange sont donnes par

wk =

∫ 1

−1lk(x)dx. (11.7)

En particulier, les polynomes 1, x, x2, . . . , xn−1 sont egaux a leurs interpolants de Lagrangeobtenus sur n points. Donc les poids definis par (11.7) verifient egalement les equations lineaires∫ 1

−1xmdx =

n∑k=1

wkxmk , m = 0, . . . , n− 1, (11.8)

soit 1 1 ... 1x1 x2 ... xn...

......

xn−11 xn−1

2 ... xn−1n

w1

w2...wn

=

a1

a2...an

, (11.9)

avec

ak =

∫ 1

−1xk−1dx =

1− (−1)k

k. (11.10)

On verifie que pour des points xk regulierement espaces la matrice precedente est mal condi-tionnee et que l’amplitude des coefficients wk est tres fluctuante. L’amplitude des oscillationsdes coefficients wk augmente d’ailleurs exponentiellement avec n [?]. Ce mauvais comportementnumerique limite l’ordre de quadrature envisageable pour la methode de Newton-Cotes et en pra-tique, on la met souvent en oeuvre en decoupant l’intervalle [−1, 1] en plusieurs sous-intervalleset en appliquant la quadrature de Newton Cotes avec un petit nombre de noeuds sur chacund’eux. De plus, compte tenu de la mauvaise qualite de l’approximation fournie par l’interpola-tion polynomiale pour un echantillonnage regulier (phenomene de Runge), on comprend que laquadrature de Newton-Cotes qui est basee sur cette approximation fournisse des resultats assezmediocres. On donne ci dessous un programme Matlab simple pour realiser la quadrature deNewton-Cotes. On pourra y verifier l’influence de la valeur de n sur les poids

f = @(t) cos(pi*t); % fonction a integrer

n = 20; % nombre de noeuds de quadrature

Page 73: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 11. INTERPOLATION ET INTEGRATION 72

x = linspace(-1,1,n); % noeuds

M = flipud(vander(x)’); % matrice de VanderMonde de calcul des poids

w = inv(M)*((1-(-1).^(1:n))./(1:n))’; % poids

I = f(x)*w % calcul de l’integrale par la methode

% de Newton Cotes

11.4 Methode de Gauss-Legendre

On peut chercher corriger les effets du phenomene de Runge associe au choix de noeuds regulierementespaces pour le polynome d’interpolation de Lagrange d’une fonction en considerant une repartitionirreguliere des noeuds xk. Les methodes de Gauss, basees sur le choix de noeuds de quadratureegaux aux zeros de polynomes orthogonaux constituent un choix approprie. On se limitera iciau cas des polynomes orthonormes sur [−1, 1] definis par∫ 1

−1pn(x)pm(x)dx = δm,n, (11.11)

avec pn de degre n, et qui definissent les polynomes de Legendre. Ceux ci se caracterisent dediverses manieres [?]. On peut en particulier definir les versions non normalises de ces polynomesau moyen de la recurrence a trois termes suivante :

p0(x) = 1

p1(x) = x

(n+ 1)Pn+1(x) = (2n+ 1)xPn(x)− nPn−1(x).

(11.12)

La normalisation peut ensuite etre obtenue en notant que∫ 1−1 p

2n(x)dx = 2/(2n+1). Considerons

maintenant la quadrature dont les noeuds sont definis par les zeros de pn(x) et dont les poidscorrespondants sont solution des quations (11.9). Ces parametres definissent la quadrature deGauss-Legendre sur n points. On a alors la propriete remarquable suivante :

Theoreme 10 La quadrature de Gauss-Legendre sur n points est une formule de quadratureexacte pour tous les polynomes de degre inferieur ou egal 2n− 1.

Preuve Comme les parametres de la quadrature satisfont aux equations (11.9), il apparaıtqu’elle est exacte pour tout polynome de degre inferieur ou egal a n − 1. Maintenant, toutpolynome q(x) de degre inferieur ou egal a 2n− 1 pourra s’ecrire

q(x) =∑

k=0,n−1

akxk + pn(x)(

∑l=0,n−1

blxk). (11.13)

La relation (11.13) provient simplement de la division euclidienne de q(x) par pn(x) et de lacontrainte de degre sur q(x). Donc∫ 1

−1q(x)dx =

∫ 1

−1(∑

k=0,n−1

akxk)dx+

∫ 1

−1pn(x)(

∑k=0,n−1

bkxk)dx. (11.14)

Page 74: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 11. INTERPOLATION ET INTEGRATION 73

La quadrature de Gauss-Legendre de la premiere integrale du terme de droite de l’egalite (11.14)est exacte car le polynome intgre est de degre inferieur ou egal a n− 1. Notons maintenant quele polynome pn est orthogonal aux polynomes p0, p1, . . . , pn−1. Or, ces derniers engendrent lememe espace vectoriel que les polynomes 1, x, . . . , xn−1. Donc

∫ 1−1 pn(x)(

∑k=0,n−1 bkx

k)dx = 0.De plus, ∑

j=1,n

wjpn(xj)

∑k=0,n−1

akxkj

= 0, (11.15)

puisque les xj sont les zeros de pn. Donc, la quadrature de Gauss-Legendre est encore exactepour la seconde integrale du terme de droite de l’egalite (11.14), ce qui termine la demonstration.

En pratique, on observe un excellent comportement pour la quadrature de Gauss-Legendre.Notons egalement que la quadrature de Gauss correspond bien a l’integration de l’interpolantpolynomial de Lagrange associe aux zeros de pn(x) puisque les poids satisfont aux equations(11.9) et donc aux equations (11.7). On peut de plus montrer [?] que les zeros de pn(x) sontasymptotiquement distribues suivant la densite donnee par l’equation (11.5), ce qui confirme lacapacite de la methode a echapper au phenomene de Runge.

Indiquons ici qu’une evaluation approchee des poids peut etre obtenue a partir de la formulesuivante ([?] p.89)

xk = cos

(4(n− k)− 1

4n+ 2π +

n− 1

8n3cot(

4(n− k)− 1

4n+ 2π) + o(

1

n4)

), k = 1, . . . , n. (11.16)

Ces valeurs des noeuds peuvent eventuellement etre ameliorees par un algorithme de Newton derecherche des zeros de pn(x) et initialise successivement par chacune des valeurs xk de la relation(11.16).

Le programme suivant utilise l’approximation precedente et pourra etre employe pour mettreen evidence le meileur comportement de la methode de Gauss-Legendre compare a la mthodede Newton-Cotes.

f = @(t) cos(pi*t); % fonction a integrer

n = 20; % nombre de noeuds de quadrature

x = pi*(4*(n:-1:1)-1)/(4*n+2);

x = cos(x+((n-1)/(8*n^3))*cot(x)); % noeuds approches

M = flipud(vander(x)’); % matrice de VanderMonde

w = inv(M)*((1-(-1).^(1:n))./(1:n))’; % poids

I = f(x)*w % calcul de l’integrale par la methode

% de Gauss-Legendre approchee

Il s’agit cependant ici d’une ecriture sous-optimale du programme a objectif purement pedagogique.Ainsi, on verifiera que lorsque n augmente, le conditionnement de la matrice M se degrade, ceque l’on peut tester avec la commande Matlab ’cond(M)’.

Il est etabli dans la litterature que la ercurrence (11.12) permet d’obtenir les noeuds et les poidscomme solution d’un probelme de valeurs propres d’une matrice tridiagonale [?], pour un cout

Page 75: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 11. INTERPOLATION ET INTEGRATION 74

de calcul de l’ordre de O(n2) operations. Sans entrer dans le detail de cet algorithme, indiquonsque sa mise en oeuvre conduit au code suivant propose dans [?] et dont on pourra comparer labonne robustesse a celle du programme precedent :

f = @(t) cos(pi*t); % fonction a integrer

n = 100; % nombre de noeuds de quadrature

m = n-1;

T = diag(0.5./sqrt(1-(2*(1:m)).^(-2)),1);

T = T + T’; % matrice de Jacobi

[V,D] = eig(T); % diagonalisation

x = diag(D);

[x,a] = sort(x); % noeuds classes par ordre croissant

w = 2*V(1,a).^2; % poids

I = w*f(x) % calcul de l’integrale par la methode

% de Gauss-Legendre

On pourra verifier qu’a la difference de ce que l’on observe avec la methode de Newton-Cotes ladispersion des valeurs des poids croıt lentement avec n. Avec ce code, on verifie que l’erreur dequadrature decroit rapidement vers le bruit de calcul lorsque n augmente.

Notons enfin que la methode de Gauss Legendre se generalise pour des integrales sur des in-tervalles semi-infinis au moyen des polynomes de Laguerre et pour des integrales sur R aumoyen des polynomes d’Hermite [?].

11.5 Methode de Clenshaw-Curtis

Nous terminons cet expose en evoquant la methode de quadrature de Clenshaw-Curtis,introduite en 1960 [?] et qui est devenue tres populaire ces dernieres annees compte tenu de safacilite de mise en oeuvre. Cette methode, pour n noeuds de quadrature, n’est exacte que pourles polyonmes de degre au plus egal a n − 1, mais le calcul de ses noeuds et de ses poids estextremement simple. De plus, pour l’integration de nombreuses fonctions standard, il apparaıtque son comportement differe tres peu de celui de la quadrature de Gauss-Legendre [?]. Celatient en particulier au fait qu’ici, comme pour la methode de Gauss-Legendre, la distributionasymptotique des noeuds dans [−1, 1] satisfait l’equation 11.5.

Pour la methode de Clenshaw-Curtis, les poids sont simplement choisis de la forme

xk = cos(n− kn− 1

π), k = 1, . . . , n. (11.17)

On notera, pour n grand, la ressemblance des poids de Gauss-Legendre (Eq. (11.16)) avec ceuxde Clenshaw-Curtis. Gentleman [?] a montre que les poids peuvent etre obtenus par transformeede Fourier rapide, et donc avec un cout de calcul de O(n.log2(n)), contre O(n2) operations pourcalculer les parametres de Gauss-Legendre [?]. Ceci explique l’interet porte a la methode deClenshaw-Curtis qui fournit donc pour un cout de calcul nettement moindre une quadrature de

Page 76: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 11. INTERPOLATION ET INTEGRATION 75

precision souvent comparable a celle de Gauss-Legendre. Le code Matlab suivant, propoes dans[?] implemente la methode de calcul des poids de [?].

f = @(t) cos(pi*t); % fonction a integrer

n = 100; % nombre de noeuds de quadrature

m = n-1;

x = cos(pi*(0:m)’/(m)); % poids

fx = f(x)/(2*m);

g = real(fft(fx([1:m+1 m:-1:2]))) % transforme de Fourier rapide

a = [g(1); g(2:m)+g(2*m:-1:m+2) ;g(m+1)]; % coefficients de Chebychev

w = 0*a’; w(1:2:end) = 2./(1-(0:2:m).^2); % poids

I = w*a % calcul de l’integrale par la methode

% de Clenshaw-Curtis

11.6 Calcul d’erreur

Indiquons pour terminer que pour les methodes precedentes il est possible d’exprimer de faconprecise l’erreur liee a la quadrature. Pour une quadrature sur n points qui est exacte pour lespolynomes de degre inferieur ou egal a M et une fonction f , au moins m fois continuementderivable, avec m ≤ M , on peut montrer que la fonction d’erreur de quadrature, notee E(f),est donnee par ([?], p. 218)

E(f) =∫ 1−1 f(x)dx−

∑nk=1wkf(xk)

=∫ 1−1 f

(m+1)(x)Km(x)dx,

(11.18)

ou Km(x) est le noyau de Peano, defini par

Km(x) =(1− x)m

m!−

n∑k=1

wk(max(xk − x, 0))m−1

(m− 1)!. (11.19)

Exercice Demontrer la formule d’erreur precedente (indication : utiliser la formule de Tayloravec reste integrale).

Page 77: Notes de cours d'analyse numérique et d'optimisation continue ...

Quatrieme partie

Optimisation

76

Page 78: Notes de cours d'analyse numérique et d'optimisation continue ...

Chapitre 12

Introduction

Lorsqu’on cherche a resoudre un probleme de la forme infv∈Uadf(v), on parlera de probleme

d’optimisation contraint lorsque U est un sous ensemble particulier inclu dans le domainede definition de f . Si Uad coıncide avec le plus grand domaine sur lequel on peut definir f onparlera de probleme d’optimisation non contraint.

On s’interesse dans cette partie a des problemes d’optimisation continue, a variables reelles oucomplexes, de forme generale

minx f(x)fi(x) ≤ 0 i = 1, . . . ,m.

(12.1)

Le probleme (12.1) consiste a rechercher les valeurs de x qui minimisent f(x) dans l’ensembledes contraintes U = x; fi(x) ≤ 0 i = 1, . . . ,m. Notons qu’une contrainte d’egalite de la formefi(x) = bi peut toujours se reformuler dans ce contexte par les inegalites fi(x) − bi ≤ 0 et−fi(x) + bi ≤ 0. Dans la suite, on sera cependant souvent amene a distinguer les situations decontraintes de type inegalite et de type egalite.

On a deja rencontre un probleme de ce type dans le cours d’analyse numerique matricielle,pesente en premiere partie, lors de la recherche de la solution de norme minimale d’un systemesous-determine, probleme qui s’ecrit

minx xTxAx = b.

(12.2)

Plus generalement, les problemes de la formeminx

12xTQx + xT r

Ax = bGx ≤ h

(12.3)

ou Q est une matrice symetrique positive et u ≤ v signifie que uk ≤ vk pour chaque composantedes vecteurs u et v, sont appeles programmes quadratiques. En presence de contraintesd’inegalite, l’obtention de la solution est generalement moins directe qu’avec les seules contraintesd’egalite. Dans ce dernier cas on dispose d’une forme analytique directe du probleme tandis quedans le premier il faut faire appel a des algorithmes iteratifs d’optimisation.

77

Page 79: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 12. INTRODUCTION 78

Lorsque les fonctions f et (fi)i=1,m sont lineaires, le probleme est appele probleme de program-mation lineaire. Il existe des algorithmes performants pour resoudre ce genre de probleme,meme si le nombre d’operations a realiser n’est pas bien maıtrise en general. Notons egalementqu’il peut etre un peu plus delicat d’identifier un probleme de programmation lineaire qu’unprobleme d’optimisation quadratique. Ainsi, la minimization de la norme l1 de Ax− b, definiepar f(x) =‖ Ax−b ‖1=

∑i |Aix−bi|, ou Ai represente ici la i-eme ligne de la matrice A peut

se reformuler sous la forme du programme lineaire suivant :mint

∑i ti

−ti ≤ 0 i = 1, . . . ,mAix− bi − ti ≤ 0 i = 1, . . . ,m−Aix + bi − ti ≤ 0 i = 1, . . . ,m.

(12.4)

Pour un probleme pour lequel le critere f ou certaines des contraintes (fi)i=1,m ne sont paslineaires, on parlera d’un probleme de programmation non lineaire. Une difficulte essentielledu probleme d’optimisation (12.1) dans le cas non lineaire reside dans fait que des conditionsnecessaires bien connues d’optimalite telles que l’annulation de la derivee (du gradient dans lecas d’une fonction de plusieurs variables) ne permettent generalement que d’etablir l’optimalitelocale d’une solution.

Il existe une exception remarquable a ce fait qui est celui de l’optimisation convexe pourlequel les fonction f et (fi)i=1,m sont convexes. Dans ce cas, non seulement on est en mesurede caracteriser la nature globale d’optima locaux, mais de plus, il existe des algorithmes per-formants de recherche de telles solutions. En particulier, les methodes de point interieur,egalement utilisees en programmation lineaire, ou les methodes de plans secants, offrentune solution performante pour l’optimisation de problemes d’optimisation convexe. En fait, ladifficulte essentielle des problemes d’optimisation convexe reside souvent dans la difficulte quel’on peut avoir a identifier le probleme etudie comme un probleme convexe.

Si, comme on l’a indique, pour un probleme d’optimisation non convexe il est souvent facile decaracteriser des optima locaux des lors que l’on dispose d’hypotheses de regularite, telle que ladifferentiabilite, sur les fonctions mises en jeux, on ne pourra pas en general trouver d’algorithmequi assure la convergence vers un optimum global. On verra cependant que l’utilisation desresultats de l’optimisation convexe peuvent etre utilises pour fournir des approximations souventinteressantes de la solution.

Pour le probleme minu∈U f(u) Les conditions d’optimalite dependent de la nature de U . Pourles conditions necessaires, on peut citer les conditions suivantes qui seront developpees dans leschapitres suivants :

— equations d’Euler : f ′(u) = 0— inequations d’Euler : f ′(u)(v − u) ≥ 0— multiplicateurs de Lagrange lorsque U = v; fk(v) = 0, k = 1,m— conditions de Kuhn et Tucker lorsque U = v; fk(v) ≤ 0, k = 1,m.

Les conditions suffisantes font souvent appel a la convexite de f pour l’optimalite globale et plussimplement au comportement de la derivee seconde de f au voisinage de u pour l’optimalitelocale.

Outre l’etude des conditions d’optimalite on se penchera sur les aspects algorithmiques de la

Page 80: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 12. INTRODUCTION 79

recherche d’optima. Pour les problemes sans contraintes, on considerera en particulier les algo-rithmes de relaxation, de Newton, du gradient ou du gradient conjugue. Pour les problemes aveccontraintes, on envisagera la possibilite d’extension des methodes sans contraintes ainsi que desalgorithmes generalistes tels que les methodes d’Uzawa, les methodes de plans secants ou encoreles methodes de points interieurs. L’algorithme du simplexe important pour le cas particulier dela programmation lineaire sera egalement presente.

Le chapitre 9 presente quelques rappels de calcul differentiel sur lesquels reposent les conditionsd’optimalite developpees par la suite. Le chapitre 10 traite des conditions d’optimalite pour lesproblemes non contraints et le chapitre 11 des algorithmes classiques pour traiter ce type deproblemes. Le chapitre 12 traite des conditions d’optimalite pour les problemes contraints et lechapitre 13 des algorithmes correspondants. Le cas particulier de la programmation lineaire estaborde au chapitre 14.

Les version anterieures de ces notes de cours s’inspiraient en particulier de [6] ou l’optimisationest abordee sous un angle tres general. Pour l’optimisation avec contraintes, la version actuelleemprunte plus a la presentation de [8] qui traite de facon allegee, quoi que rigoureuse, la theoriepour des problemes dans les espaces de type Rn. Pour les algorithmes, [9] et [4] constituentegalement des references interessantes. Les autres references indiquees constituent egalementdes sources d’information enrichissantes. Les notes de cours [5] ou le livre [10] constituent desreferences plus approfondies sur la notion de convexite.

Page 81: Notes de cours d'analyse numérique et d'optimisation continue ...

Chapitre 13

Elements de calcul differentiel

13.1 Introduction

Les conditions d’existence d’optima locaux pour les problemes contraints ou non contraints fontintervenir les derivees d’ordres un et deux de la fonction a optimiser. Ainsi, la condition dederivee nulle est a la base d’une methode importante, la methode de Newton, qui sera etudieeplus loin.

On fait ici quelques rappels concernant la derivation dans des espaces generaux car la variablevis a vis de laquelle on effectue l’optimisation peut etre une fonction. C’est le cas par exemplelorsqu’on cherche la surface d’aire minimale qui s’appuye sur un contour fixe de R3, auquelcas la variable recherchee est la fonction qui decrit cette surface. Dans ce chapitre, on va doncdevelopper un formalisme general pour la notion de derivation. Pour fixer les idees, le lecteurpourra considerer le cas particulier d’espaces X et Y tels que X = Rn et Y = Rm. On se limiterad’ailleurs a ce cadre dans les chapitres suivants.

13.2 Rappels sur les espaces L(X, Y )

Soient X et Y deux espaces vectoriels normes, de normes notees respectivement ‖ ‖X et ‖ ‖Y .L’ensemble L(X,Y ) des applications lineaires continues de X dans Y , note simplement L(X) siX = Y , est norme par

∀A ∈ L(X,Y ), ‖ A ‖= supx∈X

‖ Ax ‖Y‖ x ‖X

= supx∈X, ‖x‖X≤1

‖ Ax ‖Y . (13.1)

L(X,Y ) est complet si Y est complet. Dans l’ensemble L2(X,Y ) des applications bilineairescontinues de X ×X dans Y , la norme est definie par

∀A ∈ L2(X,Y ), ‖ A ‖= supx1,x2∈X

‖ A(x1, x2) ‖Y‖ x1 ‖X × ‖ x2 ‖X

. (13.2)

80

Page 82: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 13. ELEMENTS DE CALCUL DIFFERENTIEL 81

13.3 Derivation

Soit O un ensemble ouvert etf : O ⊂ X → Y, (13.3)

Soit a ∈ O. La derivee en a, lorsqu’elle existe, est definie par f ′(a) ∈ L(X,Y ) telle que

f(a + h) = f(a) + f ′(a)h+ ‖ h ‖ ε(h). (13.4)

Si f ′(a) existe, elle est unique. Remarquons que f ′(a)h est une notation simplifiee pour f ′(a)(h),c’est a dire la valeur prise par l’application lineaire f ′(a) en h.

13.3.1 Application derivee

L’application derivee de f est definie par

f ′ : O → L(X,Y ); x 7→ f ′(x). (13.5)

Exercices.1) Si f(x) = B(x,x), ou B est bilineaire et continue, monrer que

f ′(x)h = B(x,h) +B(h,x). (13.6)

2) Calculez le gradient de f definie sur Rn par f(x) = xTAx. Que devient cette formule lorsqueA est symetrique ?

13.3.2 Derivation pour f definie sur des espaces produits

Sif : O ⊂ X → Y = Y1 × . . .× Ym; x 7→ f(x) = [f1(x), . . . , fm(x)]T , (13.7)

f est derivable en a ∈ O si et seulement si f ′k(a) existe pour k = 1,m.

f ′(a) =[f ′1(a), . . . , f ′m(a)

](f ′k(a) ∈ L(X,Yi)). (13.8)

Le vecteur ∇f(a) = [f ′(a)]T est appele gradient de f au point a. Si maintenant

f : O ⊂ X = X1 × . . .×Xn → Y ; x 7→ f(x) (13.9)

avec O = O1 × . . .×On, produit d’ouverts, on definit les applications partielles par

fk : Ok ⊂ Xk → Y ; u 7→ f(x1, . . . ,xk−1,u,xk+1, . . . ,xn) (13.10)

Si f est derivable en a, les applications partielles le sont et

f ′(a)h =∑k=1,n

∂kf(a)hk, (13.11)

Page 83: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 13. ELEMENTS DE CALCUL DIFFERENTIEL 82

ou h = [h1, . . . ,hn]T et ∂kf(a) est la derivee de la keme application partielle (∂kf(a) ∈ L(Xk, Y )).La reciproque est fausse ; Ainsi, pour f(x1,x2) = 1 − δ0,x1x2 , ∂1f(0, 0) = ∂2f(0, 0) = 0, mais fn’est pas derivable en 0.

Plus generalement, soit

f : O ⊂ X = X1 × . . .×Xn → Y = Y1 × . . .× Ym, ; x 7→ f(x) = [f1(x), . . . , fm(x)]T , (13.12)

avec O = O1 × . . . × On et notons k = f ′(a)h. Les coordonnees de h et de k sont liees par lesrelations

ki =∑j=1,n

∂jfi(a)hj , i = 1,m j = 1, n. (13.13)

Ainsi, si f : Rn → Rm est de classe C1, de X = Rn dans Y = Rm, k = Mfh, ou Mf est lamatrice des derivees partielles de f en a :

[Mf ]ij =∂fi(a)

∂xj= ∂jfi(a). (13.14)

On note alors Mf = [∇f ]T . ∇f est la matrice jacobienne, definie par

∇f(a) =

∂1f1(a) . . . ∂1fm(a)...

∂nf1(a) . . . ∂nfm(a)

. (13.15)

Notons egalement que dans le cas ou m = n, le determinant |∇f | de la matrice jacobienne estappele jacobien.

13.3.3 Composition des applications derivables

Soit f : O ⊂ X → Y , derivable en a et g : O′ ⊂ Y → Z, avec f(O) ⊂ O′, derivable en b = f(a).Alors h(x) = g(f(x)) = (gof)(x) est derivable en a et

h′(a) = g′(b)f ′(a). (13.16)

Dans le cas reel, X = Rn, Y = Rm, et Z = Rl. On a alors Mh = MgMf , soit

∂jhi(a) =∑k=1,m

∂kgi(b)∂jfk(a) i = 1,m j = 1, n, (13.17)

ou encore ∇h = ∇f ×∇g.

13.4 Derivee seconde

On definit, si elle existe, l’application derivee seconde par

f ′′(a) = (f ′(a))′ ∈ L(X,L(X,Y )). (13.18)

Page 84: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 13. ELEMENTS DE CALCUL DIFFERENTIEL 83

Notons que les espaces L(X,L(X,Y )) et L(X ×X,Y ), encore note L2(X,Y ), sont isomorphes,c’est a dire que l’on peut passer de l’un a l’autre au moyen d’une transformation lineaire bijective.f ′′(a) definit donc une application bilineaire continue de X ×X dans Y . On montre de plus quecette application bilineaire est symetrique, c’est a dire que f ′′(a)(k,h) = f ′′(a)(h,k). Pourle calcul pratique des derivees secondes, remarquons que f ′′(a)(h,k) est la derivee en a dex→ f ′(x)k, appliquee au point h.

Exemples. Si f(x) = B(x,x) + C(x) + d, ou B est bilineaire, et C lineaire,

f ′(x)k = B(x,k) +B(k,x) + C(k)

f ′′(x)(k,h) = B(h,k) +B(k,h).(13.19)

Dans le cas reel, si X = Rn, et Y = R, on obtient

f ′′(a)(h,k) =∑n

i,j=1 hikjf′′(a)(ei, ej)

=∑n

i,j=1 hikj∂i,jf(a).(13.20)

Les vecteurs ei de la base canonique sont definis par [ei]k = δi,k. La matrice ∇2f , de termegeneral [∇2f(a)]ij = ∂ijf(a) est appelee matrice hessienne, ou hessien de f au point a.Ainsi,

f ′′(a)(h,k) = kT∇2f(a)h. (13.21)

13.5 Formules de Taylor et theoreme des fonctions implicites

Les formules de Taylor qui permettent d’obtenir des approximations polynomiales locales desfonctions exprimees a partir de leurs derivees successives et sont utiles pour justifier certainesconditions d’optimalite presentees au chapitre suivant. Meme si les preuves des conditions d’op-timalite ne seront pas developpees pour la plupart il est interessant de comprendre les notionsauxquelles elles se rattachent, ce qui motive ce paragraphe. On pourra par exemple trouver lademonstration des formules de Taylor dans [2, 6]

13.6 Accroissements finis

Soit f : R→ R, continue et derivable sur ]a, b[.

∃c ∈]a, b[, f(b)− f(a) = f ′(c)(b− a). (13.22)

La generalisation aux dimensions superieures n’est pas directe. Pour s’en convaincre on peut parexemple considerer la fonctionf(t) = [cos t, sin t]T , sur [0, 2π].

Page 85: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 13. ELEMENTS DE CALCUL DIFFERENTIEL 84

13.7 Formules de taylor

Soitf : O ⊂ X → Y , avec [a,a + h] ⊂ O. (13.23)

Theoreme 11 (derivee premiere)1) Si f est derivable en a, f(a + h) = f(a) + f ′(a)h+ ‖ h ‖ ε(h).2) Accroissements finis. Si f est continue sur O et derivable sur ]a,a + h[,

‖ f(a + h)− f(a) ‖≤ supx∈]a,a+h[

‖ f ′(x) ‖‖ h ‖ . (13.24)

3) Taylor-Mac Lauri. Si f est continue sur O, derivable sur ]a,a + h[ et Y = R,

f(a + h) = f(a) + f ′(a + θh)h 0 < θ < 1. (13.25)

4) Taylor avec reste integrale. Si f ∈ C1(O) et Y complet,

f(a + h) = f(a) +

∫[0,1]

(f ′(a + th)h)dt. (13.26)

Theoreme 12 (derivee seconde).

— Taylor-Young. Si f est derivable dans O et deux fois en a,

f(a + h) = f(a) + f ′(a)h +1

2f ′′(a)(h,h)+ ‖ h ‖2 ε(h). (13.27)

— Accroissements finis generalises. Si f ∈ C1(O) et deux fois derivable sur ]a,a + h[,

‖ f(a + h)− f(a)− f ′(a)h ‖≤ 1

2

(sup

x∈]a,a+h[‖ f ′′(x) ‖L2(X,Y )

)‖ h ‖2 . (13.28)

— Taylor-Mac Laurin. Si f ∈ C1(O), deux fois derivable sur ]a,a + h[ et Y = R,

f(a + h) = f(a) + f ′(a)h +1

2f ′′(a + θh)(h,h) 0 < θ < 1. (13.29)

— Taylor avec reste integral. Si f ∈ C2(O) et Y complet,

f(a + h) = f(a) + f ′(a)h +

∫[0,1]

(1− t)(f ′′(a + th)(h,h))dt. (13.30)

Page 86: Notes de cours d'analyse numérique et d'optimisation continue ...

Chapitre 14

Optimisation sans contraintes :criteres d’optimalite

Des criteres portant sur les derivees premiere et seconde ou la convexite de f permettent d’obtenirdes conditions necessaires mais aussi des conditions suffisantes d’optimalite et de preciser lecaractere minimum ou maximum d’un extremum, voir meme de preciser si c’est un optimumglobal. Les conditions portant sur la derivee premiere sont classiquement appelees conditionsdu premier ordre et celles portant sur les derivees secondes conditions du second ordre.

14.1 Definitions

14.1.1 Optimalite

Soit f : U ⊂ Rn → R. On dit que u est un minimum local de f , s’il existe un voisinage de uVu ⊂ U tel que f(u) ≤ f(v) (resp. f(u) ≥ f(v)), ∀v ∈ Vu. On definit de meme un maximumlocal par la relation f(u) ≥ f(v), ∀v ⊂ Vu ∈ U . Bien sur, on dira de meme que u represente unmaximum local de f si −f possede un minimum local en u.

Si ∀v ∈ U , f(u) ≤ f(v), on parlera alors de minimum global. Un extremum local est encoreappele extremum relatif et un extremum global est encore appele extremum strict.

Lorsque sur un voisinage pointe Vu − u de u on a f(u) < f(v), ∀v ∈ Vu − u, on dit que uest un minimum local strict de f .

85

Page 87: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 14. OPTIMISATION SANS CONTRAINTES : CRITERES D’OPTIMALITE 86

14.1.2 directions admissibles

On dit que d est une direction admissible de f en u si

∃α > 0, ∀v ∈ [u,u + αd[, v ∈ U. (14.1)

On dira de plus que d est une direction de descente de f en u si

∃γ < α, ∀t ∈ [0, γ], f(u + td) ≤ f(u). (14.2)

14.2 Conditions necessaires d’optimalite

Fonctions continues

Considerons d’abord le cas d’une fonction continue. Le theoreme de Weierstrass fournit leresultat suivant :

Theoreme 13 (Weierstrass) etant donnee une fonction continue f : K ⊂ Rn → R, ou K estcompact (respectivement connexe). L’image de K par f est un ensemble compact (respectivementconnexe) de R. En particulier, il existe um, uM ∈ K tels que infK f(u) = f(um) et supK f(u) =f(uM ). Si de plus K est connexe, alors f(K) = [um, uM ].

Pour des fonctions dont la valeur tend vers l’infini lorsque ‖ u ‖→ ∞, et definies sur Rn toutentier on a un resultat analogue :

Definition 2 On dit que la fonction f : U ⊂ Rn → R est coercive si

lim‖u‖→∞; u∈U

f(u) = +∞. (14.3)

Corollaire 2 Soit une fonction f continue et coercive f : Rn → R. Il existe un minimum u∗ def(u) sur Rn.

Fonctions derivables

Pour les fonctions derivables, on peut preciser une condition necessaire pour qu’un point donnede U soit un optimum local.

Theoreme 14 (condition necessaire du premier ordre) Soit f : O ⊂ Rn → R, avec O unensemble ouvert. Si f a un extremum local en u et est derivable en u, f ′(u) = 0. Cette egaliteest appelee equation d’Euler.

Page 88: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 14. OPTIMISATION SANS CONTRAINTES : CRITERES D’OPTIMALITE 87

Demonstration Supposons par exemple que f est un minimum en un point u. Soit h un vecteurfixe et g(t) = f(u + th). g doit etre minimale en 0. Donc, pour t > 0, (g(t)− g(0))/t > 0 et

limt→0

g(t)− g(0)

h= g′(0) > 0, (14.4)

et de meme, pour t < 0, (g(t)− g(0))/t < 0 et

limt←0

g(t)− g(0)

h= g′(0) < 0. (14.5)

Donc finalement, f ′(u)h = g′(0) = 0. Cette relation etant verifiee pour tout h fixe, on a f ′(u) =0.

Dans le cas ou le domaine de definition de f n’est pas forcement un ouvert, on a une conditionnecessaire d’optimalite plus generale :

Theoreme 15 (condition necessaire du premier ordre) Si u∗ est minimum local de f :U ⊂ Rn → R, pour toute direction admissible d en u∗,

[∇f(u∗)]Td ≥ 0. (14.6)

Cette inegalite est appelee inegalite d’Euler.

Demonstration La demonstration de ce resultat est assez directe ; Il suffit de considerer ledeveloppement de Taylor du premier ordre de f . En changeant le signe de l’inegalite d’Euler, onverifie facilement que si u∗ est un point interieur de U , alors toutes les directions sont admissibleset par suite le theoreme conduit a la condition necessaire bien connue d’optimalite en un pointd’un ensemble ouvert, donnee par ∇f(u∗) = 0, presentee dans le theoreme 14.

Fonctions deux fois derivables

De la meme facon que le developpement de Taylor au premier ordre permet d’exprimer une condi-tion necessaire d’optimalite, le developpement de Taylor au second ordre permet de completerce resultat pour les fonctions deux fois derivables, en precisant le caractere minimal ou maximalde l’optimum considere.

Theoreme 16 (condition necessaire du second ordre) Si u∗ est minimum local de f :U ⊂ Rn → R, pour toute direction admissible d en u∗, une des deux conditions suivantes estnecessairement verifiee

1. [∇f(u∗)]Td ≥ 0,

2. [∇f(u∗)]Td = 0 et dT∇2f(u∗)d ≥ 0.

Notons que la condition necessaire du theoreme 16 n’est pas suffisante, comme on peut le voirpar exemple pour la fonction f : R→ R, f(v) = v3 au point v = 0.

Page 89: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 14. OPTIMISATION SANS CONTRAINTES : CRITERES D’OPTIMALITE 88

14.3 Conditions suffisantes d’optimalite

On a vu que si f : U ⊂ Rn → R est deux fois derivable en u ∈ U et si u est un minimumrelatif de f , alors pour toute direction admissible d, dT∇2f(u)d ≥ 0. On peut montrer quel’existence de derivees secondes permet d’obtenir des conditions non seulement necessaires maisencore suffisantes :

Theoreme 17 (conditions suffisantes du second ordre) Soit f : O ⊂ Rn → R, derivabledans l’ensemble ouvert O, et u ∈ O tel que ∇f(u) = 0. Alors,

— si f est deux fois derivable en u et si

∃α > 0, ∀d ⊂ Rn, dT [∇2f(u)]d ≥ α ‖ d ‖2, (14.7)

alors f admet un minimum local strict en u.

— Si f est deux fois derivable sur une boule B(u, r) ⊂ O, avec

∀d ⊂ Rn, dT [∇2f(v)]d ≥ 0, (14.8)

alors f admet un minimum local en u.

Remarque On voit que la deuxieme partie de l’enonce est rendue necessaire car la condition(14.7) n’est plus valable pour α = 0. En effet, il suffit pour s’en convaincre de considerer lafonction f : R→ R, f(v) = v4 en 0.

14.4 Convexite et optimalite

L’objectif est ici de rappeler les definitions et proprietes de base associees a la convexite etmontrer qu’elles permettent de preciser le caractere global d’un optimum. Ce caractere glo-bal d’optimaux locaux constitue probablement la propriete la plus remarquable des fonctionsconvexes.

14.4.1 Definitions

Commencons par quelques definitions.

Definition 3 On dit qu’un ensemble U est convexe si pour x,y ∈ U le segment [x,y] est dansU , c’est a dire que

∀ x,y ∈ U, ∀α ∈ [0, 1], αx + (1− α)y ∈ U. (14.9)

Les sous espaces vectoriels et les boules ouvertes ou fermees sont des exemples d’ensemblesconvexes.

Page 90: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 14. OPTIMISATION SANS CONTRAINTES : CRITERES D’OPTIMALITE 89

Definition 4 Une fonction f est convexe sur l’ensemble convexe U si

∀u,v ∈ U,∀θ ∈ [0, 1], f(θu + (1− θ)v) ≤ θf(u) + (1− θ)f(v). (14.10)

Notons que la definition de la convexite d’une fonction est generalement associee (comme s’estici le cas pour notre definition) a la convexite de son ensemble de definition. C’est en effet dansce cadre que les proprietes des fonctions convexes sont les plus riches.

On dit que f est strictement convexe si

∀ u,v ∈ U,u 6= v, ∀θ ∈]0, 1[, f(θu + (1− θ)v) < θf(u) + (1− θ)f(v). (14.11)

On dit que f est concave si −f est convexe. Les resultats suivants permettent de caracteriser laconvexite pour des fonctions une ou deux fois derivables.

14.4.2 Caracterisations de la convexite

Les theoremes suivant permettent de caracteriser la convexite des fonctions a partir de proprietesde leurs derivees premiere et seconde.

Theoreme 18 (Convexite et derivees premieres) Soit f : U ⊂ Rn ⇒ R, derivable, avec Uconvexe.

— f convexe ⇔ ∀u,v ∈ U, f(v) ≥ f(u) + f ′(u)(v − u)

— f strictement convexe ⇔ ∀u,v ∈ U, u 6= v f(v) > f(u) + f ′(u)(v − u).

Ce theoreme indique que le graphe d’une fonction convexe se trouve au dessus des tangeantesen chacun de ses points.

Theoreme 19 (convexite et derivees secondes) Soit f : U ⊂ Rn ⇒ R, deux fois derivable,avec U convexe.

— f convexe ⇔ ∀u,v ∈ U, (v − u)T [∇2(f)(u)](v − u) ≥ 0,

— f strictement convexe ⇐ ∀u,v ∈ U, u 6= v (v − u)T [∇2f(u)](v − u) > 0.

Notons que la reciproque de la derniere implication est fauss, comme on l’a vu dans l’exemplede la remarque a la fin du paragraphe 14.3 (prendre par exemple f : R → R, f(v) = v4, env = 0).

Pour un point u interieur a U , il apparaıt donc que la convexite correspond a la positivite de lamatrice ∇2f(u).

Page 91: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 14. OPTIMISATION SANS CONTRAINTES : CRITERES D’OPTIMALITE 90

Exemple f(v) = (1/2)vTAv − vTb. f est convexe si et seulement si A ≥ 0 et strictementconvexe si et seulement si A > 0.

Soit f : U ⊂ Rn → R, avec U convexe. On notrera que l’ensemble des directions admissibles enun point u de U est donne par les vecteurs v − u, avec v ∈ U .

14.4.3 Exemples de fonctions convexes

Les diverses proprietes des fonctions convexes enoncees plus haut permettent de verifier laconvexite d’une fonction donnee. Notons qu’il n’est pas toujours aise de verifier qu’une fonc-tion est effectivement convexe. On pourra demontrer la convexite des fonctions suivantes a titred’exercice.

Les fonctions suivantes f : R→ R sont convexes :

f(x) = ax+ b, x log x. (14.12)

Les fonctions suivantes f : Rn,→ R sont convexes :

f(x) = Ax + b avec A ≥ 0, ‖ x ‖, maxi=1,n

xi, log(∑i=1,n

xi), −(Πi=1,nxi). (14.13)

La fonction matricielle suivante f : Sn++,→ R, f(m) = log |M |, ou Sn++ est l’ensemble desmatrices definies positives de taille n, est convexe.

14.4.4 Minima des fonctions convexes

Dans le cas des fonctions convexes, l’inegalite d’Euler f ′(u)d ≥ 0, pour toute direction admissibled devient simplement

f ′(u)(v − u) ≥ 0,∀v ∈ U. (14.14)

De plus, le theoreme suivant montre le fait remarquable que dans le cas convexe le caracterenecessaire de cette condition d’optimalite est egalement suffisant. Le caractere suffisant nenecessite pas ici de faire intervenir explicitement de condition du second ordre. Cela est biencomprehensible car les conditions suffisantes d’optimalite du second ordre decrites au pagraphe14.3 sont implicitement satisfaites par la convexite de la fonction f d’apres le theoreme (19).Le caractere global des optima locaux dans le cas convexe est egalement mis en evidence par letheoreme suivant :

Theoreme 20 (Condition necessaire et suffisante d’optimalite des fonctions convexes)Soit f : U ⊂ Rn → R, avec U et f convexes.

— Un minimum relatif de f sur U est un minimum global.

Page 92: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 14. OPTIMISATION SANS CONTRAINTES : CRITERES D’OPTIMALITE 91

— Si f est strictement convexe, elle admet un minimum au plus, et c’est alors un minimumstrict.

— Si f est derivable en u ∈ U , f est minimum en u par rapport a U si et seulement si∀v ∈ U , f ′(u)(v − u) ≥ 0.

— Si U est un ouvert, la condition 3) est equivalente a l’equation d’Euler f ′(u) = 0.

Exemple Si u ∈ Rn, c ∈ Rm, avec m ≥ n, et f(u) =‖ Bu − c ‖2. f est convexe, f ′(u) =BTBu −BT c, et tout optimum global verifie BTBu = BT c. Si B est de rang n, il s’agit d’unoptimum strict, et il est egal a u∗ = (BTB)−1BT c. Ce resultat confirme l’optimalite globale deu∗ comme minimum du critere des moindre carres etudie dans le cadre de l’analyse numeriquematricielle.

14.5 Fonctions quadratiques et elliptiques

On va maintenant s’interesser a des fonctions convexes particulieres que sont les fonctions qua-dratiques coercive et leurs extensions que constituent les fonctions elliptiques. Les fonctionselliptiques presentent l’avantage de pouvoir etre optimisees aux moyens d’algorithmes d’optimi-sation iteratifs generaux qui seront decrits au chapitre suivant.

Fonctions quadratiques

Soit f(v) = (1/2)vTAv − vTb, avec A est definie positive, c ’est a dire que ∃α > 0, A ≥ αI.Alors, il est clair que f est strictement convexe puisque∇2f = A > 0. f admet donc un minimumglobal unique.

Fonctions elliptiques

Definition 5 Une fonction f : U → R, avec U convexe, est dite elliptique si f est continuementderivable

∃α > 0, ∀u,v ∈ U, (∇f(v)−∇f(u))T (v − u) ≥ α ‖ v − u ‖2 . (14.15)

Bien entendu, la fonction quadratique f(v) = (1/2)vTAv − vTb, avec A > 0 est elliptique.Notons que parfois cette definition ne suppose pas la convexite de U , que l’on rajoute alorscomme hypothese dans le theoreme suivant qui montre que l’ellipticite est une propriete tresforte, impliquant en particulier la convexite :

Theoreme 21 1. Si f est elliptique, elle est strictement convexe et coercive, avec de plus

∃α, ∀u,v ∈ U, f(v) ≥ f(u) +∇f(u)T (v − u) +α

2‖ v − u ‖2 . (14.16)

Page 93: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 14. OPTIMISATION SANS CONTRAINTES : CRITERES D’OPTIMALITE 92

2. Si U est non vide et ferme, et f elliptique, le probleme f admet une solution unique.

3. f , deux fois derivable, est elliptique si et seulement si

∀u,v ∈ U, (v − u)T [∇2f(u)](v − u) ≥ α ‖ v − u ‖2 . (14.17)

Bien entendu, du fait de sa convexite une fonction elliptique bebeficie en particulier de toutesles proprietes devellopees au paragraphe 14.4. Notons de plus que la propriete (14.16) est unepropriete equivalente a la propriete de convexite forte[5] qui est definie par

∃α, ∀u,v ∈ U, ∀θ ∈ [0, 1] f(θu+(1−θ)v) ≤ θf(u)+(1−θ)f(v)+α

2θ(1−θ) ‖ v−u ‖2 . (14.18)

Page 94: Notes de cours d'analyse numérique et d'optimisation continue ...

Chapitre 15

Algorithmes d’optimisation sanscontraintes

15.1 Introduction

En l’absence de contraintes sur le support de la fonction f , on s’interesse a des algorithmes derecherche de racines de l’equation d’Euler f ′(u) = 0. L’algorithme de Newton et ses variantes(appelees algorithmes quasi-Newton) permettent d’atteindre un tel point. Parmi ces variantes,l’algorithme du gradient est repute pour sa simplicite de mise en oeuvre. De facon generale, lesalgorithmes abordes ici visent a construire une suite de points (uk)k≥0, tels que

uk+1 = uk + αkdk, (15.1)

ou dk est une direction de descente de l’algorithme.

Direction de descente et choix du pas

Les differents algorithmes presentes ci dessous seront essentiellement caracterises par leur direc-tion de descente.

Le choix du pas αk de l’algorithme de descente constitue le deuxieme element a prendre encompte pour la construction d’un algorithme de descente. Ainsi, au point uk, pour une directionde descente dk, le choix particulier d’un pas optimum conduit a prendre

αk = arg minρf(uk + ρdk). (15.2)

Ce choix est interessant du point de vue de la vitesse de convergence en terme de nombred’iterations de l’algorithme a effectuer sur l’indice k, mais exige a chaque fois la resolution d’unprobleme de minimisation scalaire, pouvant lui meme etre resolu de facon iterative. Par suite,cette strategie peut s’averer moins rapide

93

Page 95: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 15. ALGORITHMES D’OPTIMISATION SANS CONTRAINTES 94

15.2 Methode de relaxation

Face au probleme du choix d’une direction de descente, une strategie simple consiste a considereriterativement chaque axe de coordonnees comme direction de deplacement. On cherche alors aminimiser la fonction vis a vis de chacune de ses composantes iterativement puis a repeter laprocedure jusqu’a la convergence de l’algorithme qui est obtenue lorsque la valeur du critere fn’evolue plus.

Ainsi, a l’iteration k, partant d’un point courant uk = (uk,1, . . . ,uk,n), on calcul successi-vement uk+1,1 = arg minv f(v,u0,2, . . . ,u0,n), uk+1,2 = arg minv f(uk+1,1v,u0,3, . . . ,u0,n),. . . ,uk+1,n = arg minv f(uk+1,1, . . . ,uk+1,n−1, v). On reitere ensuite l’operation en partant de uk+1 =(uk+1,1, . . . ,uk+1,n).

En l’absence de contraintes de support sur f le comportement de la methode de relaxation estsatisfaisant comme l’indique le theoreme suivant :

Theoreme 22 Si f : Rn → R est elliptique, la methode de relaxation converge.

On verra dans le cadre de l’optimisation sous contraintes que si U 6= Rn, ce resultat n’est plusvrai en general.

Dans le cas d’un critere f quadratique la methode de relaxation conduit simplement a laresolution d’un systeme lineaire par la methode de Gauss-Seidel, presentee dans le cadrede la resolution des systemes d’equations lineaires. Aussi, la methode de relaxation est encoreparfois appelee methode de Gauss-Seidel, meme quand f n’est pas une fonction quadratique.

15.3 Algorithme du gradient

On suppose ici que f est derivable. Le developpement au premier ordre de f conduit donc a

f(uk + w) = f(uk) +∇f(uk)Tw+ ‖ w ‖ ε(w), (15.3)

avec limw→0 ε(w) = 0. Il apparaıt donc qu’en posant w = −αk∇f(uk), avec ‖ w ‖ suffisammentpetit et αk > 0, on a f(uk + w) ≤ f(uk), et −∇f(uk) est bien une direction de descente. Ainsi,on obtient la forme generale de l’algorithme du gradient qui s’ecrit :

uk+1 = uk − αk∇f(uk). (15.4)

Page 96: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 15. ALGORITHMES D’OPTIMISATION SANS CONTRAINTES 95

15.3.1 Choix du pas et convergence

Pas optimal

L’optimisation du pas αk conduit a la methode du gradient a pas optimal :

αk = arg minρf(uk − ρ∇f(uk)). (15.5)

Theoreme 23 Si f : Rn → R est elliptique, la methode de gradient a pas optimal converge.

Exercice Considerons la fonction quadratique elliptique f(v) = (1/2)vTAv−bTv. Verifiez quele pas optimum est donne par

αk =‖ Auk − b ‖2

(Auk − b)TA(Auk − b). (15.6)

Quel peut etre l’interet de l’algorithme du gadient par rapport a une inversion directe desequations normales ?

Pas constant et pas decroissant

D’autres strategies, moins couteuses, mais conduisant generalement a un plus grand nombred’iterations, consistent a choisir un pas constant ou un pas decroissant.

Pas decroissant et gradient normalise

Lorsqu’on norme le gradient a chaque iteration, on dispose d’un resultat de convergence interessant(voir par exemple [9]) :

Theoreme 24 Pour un algorithme du gradient dont la suite des pas αk decroit vers 0, avec

limk→∞

αk = 0, et∑k=0,∞

αk = +∞, (15.7)

l’algorithme du gradient defini par

uk+1 = uk − αk∇f(uk)

‖ ∇f(uk) ‖(15.8)

converge vers un minimum local de f .

Page 97: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 15. ALGORITHMES D’OPTIMISATION SANS CONTRAINTES 96

Convergence

Pour des fonctions elliptiques, on obtient le resultat de convergence suivant :

Theoreme 25 . Si f : Rn → R est derivable et si ∃α,M > 0 tels que ∀u,v ∈ Rn

(∇f(v)−∇f(v))T (v − u) ≥ α ‖ v − u ‖2

‖ ∇f(v)−∇f(v) ‖2 ≤M ‖ v − u ‖2,(15.9)

et a, b > 0 tels que 0 < a ≤ αk ≤ b < (2α/M2), la methode du gradient converge et

∃β < 1, ‖ uk − u ‖≤ βk ‖ u0 − u ‖ . (15.10)

Notons que la premiere condition n’est autre que la condition d’ellipticite, tandis que la secondeenonce la caractere Lipshtzien 1 du gradient ∇f qui indique que le gradient ne doit pas variertrop rapidement.

Voici le code d’un exemple simple ou on cherche le minimum de la fonction de RosenBroeckdefinie par f(x, y) = 50∗ (y−x2)2 +(1−x)2 par la methode du gradient pour un pas decroissantαk = 1/

√k. Pour ce choix, la convergence est obtenue au bout de 5000 iterations

f = @(x,y) 50*(y-x^2)^2+(1-x)^2;

grad_f = @(x,y)[-200*x*(y-x^2)-2*(1-x); 100*(y-x^2)];

pt = [-2; 9]; % initialisation

pt_min = [1; 1]; % point ou le critere est minimum

nb_iter = 1000;

err = norm(pt-pt_min);

for k=1:10000,

x = pt(1);

y = pt(2);

g = [-200*x*(y-x^2)-2*(1-x); 100*(y-x^2)]; % gradient du critere

pas = 1/k^0.5;

pt = pt - pas*g/(norm(g)+eps);

err = [err norm(pt-pt_min)];

end;

plot(err)

15.4 Methode de Newton

15.4.1 Principe

La mise en oeuvre de la methode de Newton suppose que f ∈ C2 et consiste a considerer enchaque point uk l’approximation quadratique de f fournie par son developpement de Taylor a

1. une fonction g est dite Lipschitzienne de rapport M si ∀u,v, ‖ g(u)− g(v) ‖2 ≤M ‖ u− v ‖2.

Page 98: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 15. ALGORITHMES D’OPTIMISATION SANS CONTRAINTES 97

l’ordre 2 au voisinage de uk. Ainsi, si

f(v) = f(u) +∇f(u)T (v − u) +1

2(v − u)T [∇2f(u)]T (v − u)+ ‖ v − u ‖2 ε(v − u), (15.11)

avec limw→0 ε(w) = 0, l’approximation quadratique

f(v) = f(u) +∇f(u)T (v − u) +1

2(v − u)T [∇2f(u)]T (v − u), (15.12)

sera optimale au point v tel que ∇f(v) = 0, c’est a dire pour ∇f(u) +∇2f(u)T (v−u) = 0. Enposant uk = u et uk+1 = v, on obtient l’expression de l’algorithme de Ne wton :

uk+1 = uk − [∇2f(u)]−1∇f(u). (15.13)

Pour rester dans les conditions de validite de l’approximation quadratique, c’est a dire pourassurer que ‖ uk+1 −uk ‖ reste petit, on utilise souvent l’algorithme sous la forme uk+1 = uk −αk[∇2f(u)]−1∇f(u), avec 0 < αk < 1. Notons que pour pouvoir mettre en oeuvre l’algorithmede Newton, il faut que f soit deux fois derivable et que ∇2f(u) soit inversible.

Nous reprenons la fonction de Rosenbroeck, f(x, y) = 50 ∗ (y− x2)2 + (1− x)2, dont on cherchemaintenant a calculer le minimum par la methode de Newton. On voit que la convergence estmaintenant obtenue apres quelques iterations.

f = @(x,y) 50*(y-x.^2).^2+(1-x).^2;

grad_f = @(x,y)[-200*x*(y-x^2)-2*(1-x); 100*(y-x^2)];

hess_f = @(x,y)[-200*(y-x^2)+400*x^2+2 -200*x; -200*x 100];

pt = [-2; 9]; % initialisation

pt_min = [1; 1]; % point o le critre est minimum

err = norm(pt-pt_min);

nb_iter = 10;

for k=1:nb_iter,

x = pt(1);

y = pt(2);

pt = pt - inv(hess_f(x,y))*grad_f(x,y);

err = [err norm(pt-pt_min)];

end;

plot(err)

15.4.2 Autre interpretation dans le cas scalaire

Supposons que Rn = R et posons g(u) = f ′(u). L’algorithme de Newton s’ecrit alors uk+1 =uk − [g′(u)]−1g(u). Un simple graphique montre clairement que uk+1 represente l’intersectionavec l’axe des x de la tangente au graphe de g au point (uk, g(uk)).L’algorithme de Newtonpermet donc la recherche iterative d’une racine de l’equation g(u) = 0. C’est pourquoi lesalgorithmes de Newton sont presentes soit comme des algorithmes de recherche de la solutiond’une equation, soit comme des algorithmes de recherche du minimum d’une fonction.

Page 99: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 15. ALGORITHMES D’OPTIMISATION SANS CONTRAINTES 98

15.4.3 Methodes de type quasi-Newton

L’inversibilite de ∇2f et la complexite du calcul de cette inverse sont deux contraintes fortes del’algorithme de Newton. Aussi, on peut envisager des simplifications numeriques de l’algorithme,consistant par exemple a garder la meme matrice ∇2f(xk) pendant plusieurs iterations ou aprendre toujours la meme matrice. Finalement, on obtient une famille d’algorithmes de formegenerale

xk+1 = xk −A−1k ∇f(xk) (15.14)

Ainsi, pour Ak = αkI, on retrouve un algorithme du gradient. En prenant Ak = I et en posant∇f(xk) = g(xk), l’algorithme xk+1 = xk−g(xk) qui cherche iterativement un zero de la fonctiong est appele methode des approximations successives.

Exemple [6] Pour g(x) = x2−1/4, la convergence de la methode des approximations successivesn’est assuree que pour x0 ∈ [−1/2, 3/2]. Plus precisemment, ] − 1/2, 3/2[ represente le bassind’attraction de la racine 1/2 et −1/2, 3/2 le domaine d’attraction de la racine −1/2.

Des conditions de convergence de l’algorithme (15.14) portant sur la sequence des matrices(Ak)k≥0 pourront etre trouvees par exemple dans [6].

15.4.4 Convergence

Pour decrire la convergence les diverses variantes de la methode de newton dans un memeformalisme, on considere des algorithmes de la forme

xk+1 = xk − [Ak(xk′)]−1∇f(xk), et 0 ≤ k′ ≤ k. (15.15)

avec Ak(x) inversible ∀x ∈ O. On indique ici des conditions suffisantes de convergence d’un telalgorithme.

Theoreme 26 Soit f : O ⊂ Rn → R. On suppose que f ∈ C2(O). S’il existe r,M, β, tels queB(x0, r) ⊂ O (r > 0), β < 1 et

1. supk≥0 supx∈B(x0,r) ‖ A−1k (x) ‖≤M

2. supk≥0 supx,x′∈B(x0,r) ‖ ∇2f(x)−Ak(x

′) ‖≤ β

M,

3. ‖ ∇f(x0) ‖≤ rM (1− β),

alors, la suite (xk)k≥0 est dans B(x0, r), et converge vers un zero de ∇f qui est le seul zero de∇f dans B(x0, r), note a. La convergence est geometrique :

‖ xk − a ‖≤ βk

1− β‖ x1 − x0 ‖ . (15.16)

Dans le cas ou Ak(x) ne depend pas de x, on a le resultat suivant

Page 100: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 15. ALGORITHMES D’OPTIMISATION SANS CONTRAINTES 99

Theoreme 27 Si f ∈ C2(O), avec ∇f(a) = 0, A = ∇2f(a) inversible et

supk≥0‖ Ak −A ‖<

(1/2)

‖ A−1 ‖, (15.17)

alors, il existe r > 0 tel que ∀x0 ∈ B(a, r) la suite

xk+1 = xk −A−1k ∇f(xk) (15.18)

soit contenue dans B(a, r) et converge vers a. De plus, a est la seule racine de ∇f = 0 dansB(a, r). La convergence est geometrique :

∃β < 1, ‖ xk − a ‖≤ βk ‖ x0 − a ‖ . (15.19)

Remarque L’utilisation de ce dernier theoreme suppose la connaissance prealable du point a.

15.4.5 L’algorithme de Levenberg-Marquart

Pour les algorithmes generaux de la forme xk+1 = xk −A−1k ∇f(xk), le developpement de f au

voisinage de xk conduit a

f(xk+1) = f(xk)−∇T f(xk)[Ak(xk′)]−1∇f(xk)+ ‖ xk+1 − xk ‖ ε(xk+1 − xk), (15.20)

avec limx→0 ε(x) = 0. On voit donc que si on peut negliger les termes du second ordre, −[Ak]−1×

∇f(xk) est une direction de descente des lors que ∇T f(xk)[Ak]−1∇f(xk) > 0. Il suffit pour cela

que la matrice Ak soit positive. Or, outre le cout de calcul de ∇2f , la matrice hessienne peut,dans le cas general, ne pas etre positive a chaque iteration. Une facon pratique de corriger ceprobleme consiste a remplacer ∇2f(xk) par ∇2f(xk)+εkI, avec εk > 0 tel que ∇2f(xk)+εkI > 0.Pour tester la positivite de la matrice Ak = ∇2f(xk) + εkI, on peut augmenter εk tant que lafactorisation de Choleski ne peut pas etre calculee. On a vu en effet dans la premiere partie,consacree a l’analyse numerique, que cette factorisatin n’etait definie que pour des matricespositives. De plus, la connaissance de la factorisation ∇2f(xk) + εkI = LLT , avec L triangulairepermet le calcul aise de la direction de descente dk = −[Ak]

−1∇f(xk), car il suffit alors deresoudre le double systeme triangulaire d’equations lineaires LLTdk = −∇f(xk).

15.5 L’algorithme du gradient conjugue

On considere pour terminer ce chapitre une technique populaire de minimisation qui consiste autiliser plus d’information sur f pour calculer la direction de descente qu’avec la methode dugradient, sans pour autant etre conduit au cout eleve de la methode de Newton, qui necessitele calcul du hessien et son inversion. A partir du point courant uk, on cherche ici uk+1 tel quef(uk+1) = minv∈Gk

f(uk + v), avec

Gk = ∑i=1,k

αi∇f(ui);α1, . . . , αk ∈ R. (15.21)

Page 101: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 15. ALGORITHMES D’OPTIMISATION SANS CONTRAINTES 100

Pour une fonction quadratique elliptique f(v) = (1/2)vTAv−bTv, on peut verifier que uk+1 =uk − ρkdk, avec

ρk =dTk∇f(uk)

dTkAdk

et dk = ∇f(uk) +‖ ∇f(uk) ‖2

‖ ∇f(uk−1) ‖2dk−1.

(15.22)

Theoreme 28 Si f : Rn → R est quadratique et elliptique la methode de gradient conjugueconverge en n iterations au plus.

Dans le cas general, pour une fonction f non necesairement quadratique, on prefere souventutiliser la methode de gradient conjugue de Polak et Ribiere pour laquelle

dk = ∇f(uk) +[∇f(uk)]

T (∇f(uk)−∇f(uk−1))

‖ ∇f(uk−1) ‖2dk−1. (15.23)

Page 102: Notes de cours d'analyse numérique et d'optimisation continue ...

Chapitre 16

Optimisation sous contraintes :criteres d’optimalite

16.1 Le theoreme des fonctions implicites

Le theoreme des fonctions implicites [2, 6] joue un role important dans la justificationde l’introduction du Lagrangien qui sera presente un peu plus loin et constitue un outil debase pour l’etude des conditions necessaires et suffisantes des problemes d’optimisation souscontraintes d’egalite ou d’inegalite.

Soit g : Rn → Rm. On cherche ici a savoir si etant donne un point a = (a1,a2), avec f(a1,a2) =b, il existe un voisinage Va1 × Va2 de ce point tel que la courbe de niveau g(x1,x2) = b sur cevoisinage soit parametree par une fonction h telle que x2 = h(x1) ; C’est a dire que pour tousles couples (x1,x2) de ce voisinage tels que g(x1,x2) = b, on ait x2 = h(x1).

Theoreme 29 Soit g : O ⊂ Rn−m × Rm → Rm, (x1,x2) 7→ g(x1,x2) de classe C1. Supposonsque g(a1,a2) = b, et que la matrice jacobienne ∇x2g(a1,a2), de taille m ×m, soit inversible.Alors, il existe un voisinage ouvert O1×O2 de (a1,a2) et une fonction h : Rn−m → Rm continueappelee fonction implicite, telle que

(x1,x2) ∈ O1 ×O2; g(x1,x2) = b = (x, h(x)); x ∈ O1 . (16.1)

De plus, h est derivable et

h′(a1) = −[∇x2g(a1,a2)]−1[∇x1g(a1,a2)]T . (16.2)

16.2 Points reguliers et espace tangent

On considere dans la suite deux ensembles de fonctions derivables f1, . . . , fm et fm+1, . . . , fm+pet on notera f e = (f1, . . . , fm)T et f i = (fm+1, . . . , fm+p)

T les vecteurs de fonctions associes res-

101

Page 103: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 16. OPTIMISATION SOUS CONTRAINTES : CRITERES D’OPTIMALITE102

pectivement a des contraintes d’egalite et d’inegalite. On va maintenant preciser la notion deregularite d’un point satisfaisant un ensemble de contraintes de type egalite ou inegalite.

16.2.1 Contraintes d’egalite

L’ensemble V = x; f1(x) = 0, . . . , fm(x) = 0, ou les fonctions fk sont de classe C1 est appelevariete differentielle. et on definira la notion de point regulier comme suit

Definition 6 On dira qu’un point u ∈ V de V = x; f1(x) = 0, . . . , fm(x) = 0 est un pointregulier si les vecteurs ∇f1(u), . . . ,∇fm(u) forment une famille libre.

Definition 7 L’espace tangent a V au point u est l’espace engendre par les tangentes en u auxcourbes derivables de V passant par u.

On a le resultat suivant important pour la suite :

Theoreme 30 L’espace tangent a V = x; f e(x) = 0 en un point regulier u coıncide avecl’ensemble

Ker((f e)′(u)) = v; [∇fk(u)]Tv = 0, k = 1, . . . ,m = v; (f e)′(u)v = 0. (16.3)

Preuve Soit v un vecteur du plan tangent au point u. Il existe une courbe x(t), t ∈ R telle quex(0) = u et x′(0) = v. Comme f e(x(t)) = 0, [f e(x(t))]′ = (f e)′(x(t))x′(t) = 0. En particulier,pour t = 0, on obtient (f e)′(u)v = 0, soit v ∈ Ker((f e)′(u)).Reciproquement, soit v ∈ Ker((f e)′(u)). Montrons que v appartient au plan tangent a V en u.Soit

g : R× Rm → Rm; t×w 7→ g(t,w) = f e(u + tv +∇f e(u)w). (16.4)

Notons que g(0,0) = f e(u) et que ∇wg(t,w)|(t,w)=(0,0) = [∇f e(u)]T∇f e(u). Comme u est un

point regulier, la matrice [∇f e(u)]T∇f e(u) est inversible. On peut donc appliquer le theoremedes fonctions implicites : il existe une fonction w(t) definie sur un voisinage de 0, sur lequel ona g(t,w(t)) = g(0,0) = 0.

Posons maintenantu(t) = u + tv +∇f e(u)w(t). (16.5)

Comme g(t,w(t)) = f e(u(t)) = 0,

d

dtf e(u(t))|t=0 = [∇f e(u)]T [v +∇f e(u)w(0)] = 0. (16.6)

Donc, w(0) = [(∇f e(u))T∇f e(u)]−1[∇f e(u)]Tv. Mais, comme v ∈ Ker((f e)′(u)), [∇f e(u)]Tv =0 et donc w(0) = 0. Par suite, u(t)(0) = v, ce qui montre que v appartient au plan tangent aV en u puisque u(t) est une courbe de V derivable sur un voisinage de u(0) = u.

Page 104: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 16. OPTIMISATION SOUS CONTRAINTES : CRITERES D’OPTIMALITE103

16.2.2 Contraintes d’egalite et d’inegalite

Dans le cas ou on est en presence de contraintes d’egalite f e(x) = 0 et d’inegalite f i(x) ≤ 0, lanotion de point regulier est definie de facon plus generale que precedemment. En effet, pour lescontraintes de la forme f i(x) ≤ 0, en un point u fixe l’egalite peut etre atteinte pour certainesdes composantes de f i, auquel cas on dira que les contraintes sont actives, ou encore saturees,et on aura une inegalite stricte pour les autres equations de contrainte de f i(x). Dans ce derniercas, on voit que le point u apparaıt comme un point interieur vis a vis des contraintes inactivesen ce point, ce qui conduira a prendre en compte cette particularite dans la description desconditions d’optimalite, en particulier en modifiant la definition de la regularite en presence decontraintes d’inegalite.

En un point x on definit l’ensemble

A(x) = i; fi(x) = 0, i = m+ 1, . . . ,m+ p . (16.7)

des indices des contraintes d’inegalite actives. La regularite d’un point est alors definie commesuit

Definition 8 On dira qu’un point u ∈ x; f e(x) = 0, f i(x) ≤ 0 est un point regulier sil’ensemble des vecteurs ∇fi(u); i ∈ 1, . . . ,m ∪ A(u) est une famille libre.

16.3 conditions d’optimalite en presence de contraintes d’egalite

On considere le probleme suivant min f(x)f e(x) = 0,

(16.8)

ou f e : Rn → Rm; u 7→ f e(x) = (f1(x), . . . , fm(x))T .

16.3.1 Condition necessaire d’optimalite

Condition necessaire du premier ordre

Un resultat important reside dans le fait que si un point u estune solution du probleme (16.8),alors le gradient de f en ce point doit etre orthogonal au plan tangent. Cela ce traduit par letheoreme suivant :

Theoreme 31 (Condition necessaire du premier ordre) Si u est un point regulier et unoptimum local pour le probleme (16.8), alors

∃λ ∈ Rm, ∇f(u) +∇f e(u)λ = 0. (16.9)

Page 105: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 16. OPTIMISATION SOUS CONTRAINTES : CRITERES D’OPTIMALITE104

Dans la suite, on considerera classiquement le lagrangien du probleme (16.8), defini par :

L(x, λ) = f(x) + f e(x)λ. (16.10)

Il est clair que la condition du premier ordre (16.9) precedente associee aux contraintes duprobleme (16.8) s’exprime comme l’annulation du gradient du Lagrangien vis a vis de u et de λrespectivement :

∇vL(u, λ) = 0,∇λL(u, λ) = 0.

(16.11)

Les coefficients (λi(u))i=1,m introduit ci dessus sont appeles multiplicateurs de Lagrange associesa l’extremum u.

Une demonstration du theoreme faisant appel a la notion de dualite en programmation lineairesera presentee dans le chapitre sur la programmation lineaire. Une demonstration plus directeest fournie ici.

Preuve Considerons le plan tangent a V au point regulier u. Pour tout vecteur v de cet hyper-plan, on peut construire sur V une courbe y(t) de tangente v au point u. La condition d’opti-malite d

dtf(y(t))|t=0 = ∇f(u)Tv = 0 montre que ∇f(u) est orthogonal a l’hyperplan tangent,et donc appartient a l’espace engendre par les vecteurs colonnes de ∇f e(u), d’apres le theoreme30. Puisque ∇f(u) est dans l’espace image de la matrice ∇f e(u), il existe une vecteur d ∈ Rmtel que ∇f(u) = ∇f e(u)d et en posant λ = −d, on obtient finalement ∇f(u) +∇f e(u)λ = 0.

Exemple On peut verifier que pour le problemef(v) = 1

2vTAv − vTb

U = v ∈ Rn; Cv = d,(16.12)

ou A est une matrice symetrique (AT = A), la condition necessaire d’optimalite (16.9) s’ecritA CT

C 0

u

λ

=

b

d

. (16.13)

Exercice Montrez que si A est inversible et si C, de taille m× n est de rang m, la matrice del’equation (16.13) est inversible. Exprimer la solution u en fonction de A,b,C et d.

Conditions du second ordre

Si f, f e ∈ C2, les conditions necessaires et suffisantes du second ordre etablies dans le cadrede l’optimisation sans constraintes se generalise en des condidtions analogues portant ici sur larestriction de la derivee seconde du lagrangien a l’espace tangent.

Rappelons que le lagrangien et ses derivees sur u sont donnes par

L(u, λ) = f(u) + λT f e(u),∇uL(u, λ) = ∇f(u) +∇f e(u)λ,∇2

uL(u, λ) = ∇2f(u) +∑

i=1,m λi∇2fi(u).(16.14)

Page 106: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 16. OPTIMISATION SOUS CONTRAINTES : CRITERES D’OPTIMALITE105

Theoreme 32 (Conditions necessaires du second ordre) Si u est un minimum localregulier du probleme (16.8), alors

∃λ ⊂ Rm, ∇uL(u, λ) = 0

∀v ∈ Ker((f e)′(u)), vT [∇2uL(u, λ)]v ≥ 0.

(16.15)

Preuve Soit x(t) une courbe de V = v; f e(v) = 0, avec x(0) = u et = x(0) = v. La conditionnecessaire du second ordre pour l’optimisation sans contrainte montre que l’on doit avoir

d2

dt2[f(x(t))]t=0 =

d

dt[(x(t))T∇f(x(t))]t=0 = vT∇2f(u)v + [x(0)]T∇f(u) ≥ 0. (16.16)

En derivant par ailleurs deux fois la relation λT f e(x(t)) en 0, on obtient

d2

dt2[λT f e(x(t))]t=0 =

d

dt[(dx

dt)T∇f e(x(t))λ]t=0 = vT

∑i=1,m

λi∇2fi(u) + [x(0)]T∇f e(u)λ ≥ 0.

(16.17)En additionnant les relations (16.16) et (16.17) et en prenant en compte la relation ∇uL(u, λ) =0, deja etablie dans le theoreme 31, on obtient directement la relation vT [∇2

uL(u, λ)]v ≥ 0.

Comme pour le cas non contraint, la condition necessaire de positivite de la matrice hessiennedevient la encore une condition suffisante des lors qu’on peut en assurer la positivite stricte. Icicomme pour la condition necessaire ce dessus il s’agit de la positivite du hessien du lagrangienrestreinte au sous espace tangent.

Theoreme 33 (Conditions sufisantes du second ordre) Si u est un point regulier de f e

et si∃λ ⊂ Rm, ∇uL(u, λ) = 0

∀v ∈ Ker((f e)′(u)), vT [∇2uL(u, λ)]v > 0,

(16.18)

alors, u est un minimum local strict du probleme (16.8).

Preuve On va faire une demonstration par l’absurde. Si u satisfait aux hypotheses du theorememais n’est pas un minimum local strict, il existe une suite (uk)k≥1 de V qui converge vers u ettelle que f(uk) ≤ f(u). On pose uk = u + ρkdk, avec ‖ dk ‖= 1. La suite (dk)k≥1 etant bornee,elle admet une sous suite convergente. Pour simplifier les ecritures et sans perte de generalite,on pourra supposer ici que la suite (dk)k≥1 est elle meme convergente vers une certaine valeur,notee d. On considere ici les formules de Taylor du second ordre appliquees aux fonctions f et(fi)i=1,m et donnees par

0 = fi(uk)− fi(u) = ρk∇fi(u)Tdk +ρ2k

2dTk [∇2fi(u)]dk + ρ2

kεi(ρk)

0 ≥ f(uk)− f(u) = ρk∇f(u)Tdk +ρ2k

2dTk [∇2f(u)]dk + ρ2

kε(ρk)

(16.19)

Page 107: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 16. OPTIMISATION SOUS CONTRAINTES : CRITERES D’OPTIMALITE106

avec limρ→0 εi(ρ) pour i = 0, 1, . . . ,m. En multipliant les premieres relations par les coefficientsλi correspondants, en les additionnant a la derniere relation, et en prenant en compte la relation∇uL(u, λ) = 0, il vient que dTk∇2

uL(u, λ)dk + ε(ρk) ≤ 0, avec ε(ρ) = ε0(ρ) +∑

i=1,m λiεi(ρ). En

passant a la limite, il vient que limk→∞ dTk∇2uL(u, λ)dk + ε(ρk) = dT∇2

uL(u, λ)d ≤ 0.

Notons maintenant que [fi(uk) − fi(u)]/ρk = ∇fi(u)Tdk + α(ρk) = 0, avec limk→∞ ρk = 0 etlimρ→0 α(ρ) = 0. Il apparaıt donc en passant a la limite que limk→∞∇fi(u)Tdk = ∇fi(u)Td = 0.Donc d ∈ Ker((f e)′(u)) et dT∇2

uL(u, λ)d ≤ 0, ce qui contradictoire avec les hypotheses dutheoreme, CQFD.

Remarque En pratique, la propriete ∀v ∈ Ker((f e)′(u)),vT [∇2uL(u, λ)]v > 0 peut etre verifiee

en considerant une base v1, . . . ,vn−m de l’espace tangent a V au point u et en construisant lamatrice V = [v1, . . . ,vn−m] puis la matrice VT∇2

uL(u, λ)V dont il suffit alors de tester la positi-vite des valeurs propres. En effet, l’espace tangent s’ecrit encore Vα; α ∈ Rn−m et la positivitede la restriction de∇2

uL(u, λ) a cet espace s’ecrit donc ∀α ∈ Rn−m−0, αVT∇2uL(u, λ)Vα > 0,

soit VT∇2uL(u, λ)V > 0.

De plus, soit il est facile de construire de facon directe une telle base V de l’orthogonal del’espace engendre par ∇f1(u), . . . ∇fm(u), soit on peut en construire une par un procedesystematique par exemple a partir de la matrice de projection sur Ker((f e)′(u)). Rappelons icique la matrice de projection sur l’espace engendre par les colonnes d’une certaine matrice Ms’ecrit M(MTM)−1MT (voir Eq. (3.32) de la premiere partie de ce document). par suite, la ma-

trice de projection sur Ker((f e)′(u)) est I− (f e)′(u)([(f e)′(u)]T (f e)′(u)

)−1[(f e)′(u)]T . On peut

en deduire une base de Ker((f e)′(u)) en extrayant par exemple une famille libre de dimensionmaximale (n−m) de la famille des vecteurs

vk =(I− (f e)′(u)

([(f e)′(u)]T (f e)′(u)

)−1[(f e)′(u)]T

)ek

= ek − (f e)′(u)([(f e)′(u)]T (f e)′(u)

)−1∇fek(u),(16.20)

ou ek = (0, . . . , 0, 1, 0, . . . , 0)T est le keme vecteur de la base canonique.

Exemple

Resoudre le probleme d’optimisation suivant :min(x,y) x

2 + y2 − xyx2 + y2 − 4x− 4y + 6 = 0

(16.21)

Le lagrangien s’ecrit L(x, y, λ) = x2 + y2 − xy + λ(x2 + y2 − 4x− 4y + 6) et

∇(x,y)L(x, y, λ) =

(2(1 + λ)x− y − 4λ2(1 + λ)y − x− 4λ

)= 0. (16.22)

En additionnant et en soustrayant les deux equations precedentes, on trouve que (2λ+1)(x+y) =8λ et (2λ+ 3)(x− y) = 0. De la deuxieme equation, on deduit que x = y ou λ = −3/2. Si x = y,la contrainte se reecrit x2−4x+3 = (x−1)(x−3) = 0 et on en deduit que (x, y, λ) = (1, 1,−1/2)ou (x, y, λ) = (3, 3,−1/2). Si λ = −3/2, y = −x+ 8λ/(2λ+ 1) = 6−x et la contrainte se reecritx2 − 6x+ 9 = (x− 3)2 = 0, soit (x, y, λ) = (3,−3,−3/2).

Page 108: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 16. OPTIMISATION SOUS CONTRAINTES : CRITERES D’OPTIMALITE107

Les solutions des conditions du premier ordre sont donc (x, y, λ) = (1, 1,−1/2), (x, y, λ) =(3, 3,−1/2) et (x, y, λ) = (3,−3,−3/2). La matrice hessienne s’ecrit pour λ = −1/2

∇2(x,y)L(x, y, λ) =

(2(1 + λ) −1−1 2(1 + λ)

)=

(1 −1−1 1

)(16.23)

qui est positive, les valeurs propres valant 0 et 2. Le gradient de la fonction de contrainte vaut(2x − 4, 2y − 4)T . Il est donc colineaire a (1, 1)T pour x = y et l’espace tangent est engendrepar le vecteur (1,−1)T .Comme (1,−1)T est le vecteur propre associe a la valeur propre nulle,la condition suffisante du second ordre n’est pas verifiee ici. De meme, pour λ = −3/2, lamatrice hessienne a tous ses termes egaux a -1 et ses valeurs propres sont 0 et -2 ; Les conditionssuffisantes du second ordre ne sont donc pas verifiees ici non plus.Finalement, il apparaıt que les conditions necessaires du premier ordre sont satisfaites pour (x, y)egal a (1, 1), (3, 3) ou (3,−3). Pour ces trois couples, le critere a optimiser vaut respectivement1, 9 et 27. Donc seul le point (1, 1) peut representer le minimum global du probleme. (1, 1) esteffectivement la solution du probleme d’apres le theoreme de Weierstrass (le critere est continuet la contrainte qui est une ellipse est bien un ensemble compact).

16.4 Conditions d’optimalite en presence de contraintes d’egaliteet d’inegalite

On considere mintenant le probleme suivantmin f(x)f e(x) = 0,f i(x) ≤ 0,

(16.24)

ou f e : Rn → Rm; x 7→ f e(x) = (f1(x), . . . , fm(x))T , et f i : Rn → Rm; u 7→ f i(x) =(fm+1(x), . . . , fm+p(x))T . On se limitera ici a l’etude de l’optimalite en des points reguliersau sens de la definition 8, qui permet une definition simple mais couvre un grand nombre desituations.

16.4.1 Condition necessaire du premier ordre

Theoreme 34 (conditions de Khun et Tucker) Si u est point regulier et un optimum localdu probleme (16.24), alors,

∃λ ∈ Rm,∃µ ∈ Rp+, ∇f(u) +∇f e(u)λ+∇f i(u)µ = 0,f i(u)µ = 0.

(16.25)

Notons que la condition f i(u)µ = 0 associee a la positivite de µ et a la negativite de f i(u), sereecrit en fait ∀k = 1, . . . , p, µkf

ik(u) = 0. Rappelons egalement que A(u) represente l’ensemble

des indices des contraintes d’inegalite actives en u, c’est a dire les valeurs de k ∈ m+1, . . . ,m+p telles que fk(u) = 0, les contraintes d’egalite etant quant-a elles bien entendu toujours activesen un point realisable.

Page 109: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 16. OPTIMISATION SOUS CONTRAINTES : CRITERES D’OPTIMALITE108

Preuve Pour les contraintes inactives, on a fk(u) < 0 et on fixe µk = 0. Ainsi, on a bienf i(u)µ = 0. D’apres le theoreme 31, on a alors egalement

∃λ ∈ Rm, ∃µ ∈ Rp,∇f(u) +∇f e(u)λ+∇f i(u)µ = 0. (16.26)

Il reste a verifier la positivite des composantes de µk pour k ∈ A(u). Effectuons une demonstrationpar l’absurde en supposant qu’il existe k ∈ A(u) tel que µk < 0, Notons V−k(u) = v; f e(v) =0, j ∈ A(u)−k ⇒ f ij(v) = 0. Comme u est un point regulier, ∇fk(u) n’appartient pas a l’es-

pace normal au plan tangent au point u a la variete V−k(u), defini par v; [∇fj(u)]Tv = 0, j ∈1, . . . ,m∪(A(u)−k). Il existe donc un vecteur v de ce plan tangent tel que ∇fk(u)Tv < 0.Comme ∇fj(u)Tv = 0 pour j ∈ 1, . . . ,m ∪ (A(u)− k) et µj = 0 pour j /∈ A(u), on trouveque

[∇f(u) +∇f e(u)λ+∇f i(u)µ]Tv = ∇f(u)Tv + µk∇fk(u)Tv = 0. (16.27)

Mais, puisque ∇fk(u)Tv < 0 et µk < 0, on doit alors avoir ∇f(u)Tv < 0. En utilisant letheoreme des fonctions implicites, on peut alors construire une courbe x(t) de V−k(u), et doncde l’ensemble des contraintes, avec t ≥ 0, telle que x(0) = u et x(0) = v. On aurait alorsl’inegalite d

dtf(x(t)) = ∇f(u)Tv < 0, qui est contraire a l’hypothese de minimalite locale de u,CQFD.

16.4.2 Conditions du second ordre

Condition necessaire

D’apres le paragraphe precedent, il est clair que le theoreme de condition necessaire du secondordre presente dans le cas de contraintes d’egalite s’etend directement au cas de contraintesd’inegalite en integrant a la condition les contraintes d’inegalite actives, ce qui conduit autheoreme suivant :

Theoreme 35 (Conditions necessaires du second ordre) Si u est un minimum localregulier du probleme (16.24), alors

∃λ ∈ Rm, ∃µ ∈ Rp+, ∇f(u) +∇f e(u)λ+∇f i(u)µ = 0,

f i(u)µ = 0.

∀v ∈x ∇fk(u)Tx = 0, k ∈ 1, . . . ,m ∪ A(u)

, vT∇2

uL(u, λ, µ)v ≥ 0.(16.28)

Ici, le lagrangien L(u, λ, µ) est defini par L(u, λ, µ) = f(u) + f e(u)Tλ+ f i(u)Tµ, et son hessienest donne par

∇2uL(u, λ, µ) = ∇2

uf(u) +∑k=1,m

λk∇2uf ek(u) +

∑k=1,p

µk∇2uf ik(u). (16.29)

Remarquesi) Il se peut que pour une solution (u, λ, µ) des conditions de Khun et Tucker une contrainte

Page 110: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 16. OPTIMISATION SOUS CONTRAINTES : CRITERES D’OPTIMALITE109

d’inegalite fk(u) ≤ 0 soit active, c’est a dire que fk(u) = 0, et que simultanement on ait µk = 0.ii) Pour traduire la positivite de la matrice ∇2

uL(u, λ, µ) pour les vecteurs de l’espace E(u) =v ∇fk(u)Tv = 0, k ∈ 1, . . . ,m ∪ A(u)

, il suffit de definir une base v1, . . . ,vl de cet es-

pace et la matrice V dont les colonnes sont constituees de ces vecteurs : V = [v1 . . .vl].On pourra alors montrer a titre d’exercice que la positivite (resp. la positivite stricte) de∇2

uL(u, λ, µ) restreinte a E(u) est equivalente a la positivite (resp. la positivite stricte) de lamatrice VT [∇2

uL(u, λ, µ)]V. Cette propriete est utile en pratique pour verifier la condition suf-fisante enoncee ci dessous.

Condition suffisante

Theoreme 36 (Conditions suffisantes du second ordre) Si u est un point regulier duprobleme (16.24), avec f, (fk)k=1,...,m+p ∈ C2, et si

∃λ ∈ Rm,∃µ ∈ Rp+, ∇f(u) +∇f e(u)λ+∇f i(u)µ = 0,

f i(u)µ = 0.

∀v ∈x ∇fk(u)Tx = 0, k ∈ 1, . . . ,m ∪ k;µk > 0

, vT∇2

uL(u, λ, µ)v > 0.(16.30)

alors u est un minimum local strict du probleme (16.24).

Preuve On pourra faire la demonstration a titre d’exercice en reprenant, avec des notationsanalogues, la demonstration par l’absurde du theoreme 33.

16.5 Lagrangien, points selles, et dualite

16.5.1 Points selles

Considerons le probleme

(P )

min f(x)f i(x) ≤ 0.

(16.31)

Le lagrangien L(u, µ) est une fonction de Rn × Rp dans R. On dit que (u, µ) est un point sellede L si v→ L(v, µ) a un minimum en u et si ν → L(u, ν) a un maximum en µ.

Theoreme 37 . Si (u, µ) est un point selle,

supν infv L(v, ν) = infv supν L(v, ν)

= L(u, µ).(16.32)

Page 111: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 16. OPTIMISATION SOUS CONTRAINTES : CRITERES D’OPTIMALITE110

16.5.2 Problemes primal et dual

Theoreme 38 (problemes primal et dual)

1. Soit L(v, µ) = f(v) +∑

i=1,p νkfik(v). Si (u, µ) ∈ Rn × Rp est un point selle de L,alors

u appartient a l’ensemble U = v; f ik(v) ≤ 0 et represente une solution du probleme(16.31).

2. Si f et (f ik)i=1,p sont convexes et derivables en un point regulier u qui est un minimumlocal du probleme (16.31), alors ∃µ ∈ Rp+, (u, µ) est un point selle de L.

L(v, µ) est appele lagrangien associe au probleme (P ).Si on connait la valeur de µ associee a un point selle, on est ramene au probleme sans contraintesde la recherche d’un vecteur uµ tel que

(Pµ) L(uµ, µ) = infvL(v, µ). (16.33)

Pour trouver ce µ, il aura fallu resoudre

(D) ν ∈ Rp+, G(µ) = supν∈Rp

+

G(ν), avec G(µ) = infvL(v, ν). (16.34)

(P ) et (D) sont respectivement appeles probleme primal et probleme dual.

Theoreme 39 (lien entre les problemes primal et dual)1) Si les (fkk )i=1,p sont continues et que ∀ν ∈ Rm+ (Pν) admet une unique solution uν , avecν → uµ continue, alors a une solution µ de (D) correspond une solution uµ qui est solution de(P ).2) Si u est un point regulier solution de (P ), que f et les (f ik)i=1,p sont convexes et derivablesen u, (D) admet au moins une solution.Ainsi, avec les hypotheses precedentes,

— (u, µ) est point selle de L ⇒ µ est solution de (D)— µ est solution de (D) ⇒ (uµ, µ) est point selle de L.

Exemple. f(v) = 12vTAv − vTb, et U = v; Cv ≤ d, C ∈ Rm × Rn. On a les relations

suivantesL(v, µ) = 1

2vTAv − vT (b−CTµ)− µTd

uµ = A−1(b−CTµ)

G(µ) = −12(b−CTµ)A−1(b−CTµ)− µTd

CA−1CT ≥ 0.

(16.35)

Donc −G(µ) admet un minimum, unique si C est de rang p, qui annule

∇G(µ) = −CA−1CTµ+ (CA−1b− d). (16.36)

Page 112: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 16. OPTIMISATION SOUS CONTRAINTES : CRITERES D’OPTIMALITE111

16.6 Optimisation et calcul formel

On envisagera dans le prochain chapitre quelques techniques numeriques d’optimisation souscontraintes. Pour des problemes d’ecoles simples admettant une solution analytique, on peutenvisager l’emploi d’outils de calcul formel qui permet d’obtenir la solution au prix de quelqueslignes de code.

Dans ce paragraphe, on montre avec deux exemples simples comment on peut obtenir unesolution avec le language Sage (http ://www.sagemath.org/) qui au travers d’une interface deprogrammation basee sur le langage Python (http ://www.python.org) permet d’acceder a detres nombreuses librairies de calcul mathematiques. Le but de Sage est de fournir les possibilitesde langages payants de calcul formels tels que Mathematica ou Mapple, ou de calcul algebriquetels que Matlab, avec l’acces au code source des fonctions qui permet la verification approfondiedes codes employes.

Notons que pour les exemples ci dessous, on pourrait aussi utiliser la librairie sympy libre-ment disponible sous python (www.sympy.org) qui fait partie de la pile logicielle scipy (voirwww.scipy.org) et constitue un ensemble de ressources interessantes pour le calcul scientifique

Optimisation avec contrainte d’egalite

# optimiser f(x,y) = xy

# sous la contrainte h(x,y)=(x/a)^2 + (y/b)^2-1=0

#----------------------------------------

# Declaration des parametres et fonctions

#----------------------------------------

a, b, x, y, lam = var(’a, b, x, y, lam’)

assume(a>=0,b>=0,x>= 0)

f(x,y) = x*y

h(x,y) = x^2/a^2 + y^2/b^2-1

# Resolution

#-----------

L(x,y) = f(x,y) + h(x,y) * lam

DL = L(x,y).gradient([x, y])

sol = solve([DL[k] == 0 for k in range(len(DL))]+[ h == 0],x, y, lam,

solution_dict=True)

# visualisation des solutions

html.table([["$\lambda$","$x$", "$y$", "$f(x, y)$"]] + [(sol[j]

[lam],sol[j][x], sol[j][y],f(x=sol[j][x], y=sol[j][y])) for j in

range(4)], header = True)

Page 113: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 16. OPTIMISATION SOUS CONTRAINTES : CRITERES D’OPTIMALITE112

Figure 16.1 – minx,y xy sous la contrainte (x/a)2 + (y/b)2 = 1.

Optimisation avec contrainte d’inegalite

# optimiser f(x,y) = (x/a)^2 + (y/b)^2

# sous g(x,y) = -b*x - a*y +a*b <= 0

#----------------------------------------

# Declaration des parametres et fonctions

#----------------------------------------

a, b, x, y, mu1,mu2 = var(’a, b, x, y, mu1, mu2’)

assume(a>=0,b>=0,mu1>=0,mu2>=0)

f = x^2+y^2

g1 = x^2/a^2 + y^2/b^2-1

g2 = -b*x - a*y +a*b

# Resolution

#-----------

L

= f + g1*mu1 + g2*mu2

DL = L.gradient([x, y])

sol = solve([DL[k] == 0 for k in range(len(DL))]+[ mu1*g1 == 0]+[

mu2*g2 == 0],x, y, mu1,mu2, solution_dict=True)

# visualisation

html.table([["$\mu_1$", "$\mu_2$","$x$", "$y$", "$f(x, y)$"]] \

+ [(sol[j][mu1],sol[j][mu2],sol[j][x],sol[j][y],f(x=sol[j][x],

y=sol[j][y])) for j in range(len(sol)) if (sol[j][mu1]>=0 and sol[j]

[mu2]>=0)],header = True)

Page 114: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 16. OPTIMISATION SOUS CONTRAINTES : CRITERES D’OPTIMALITE113

Figure 16.2 – minx,y x2 + y2, avec (x/a)2 + (y/b)2 ≤ 1 et −bx− ay + ab ≤ 0.

Page 115: Notes de cours d'analyse numérique et d'optimisation continue ...

Chapitre 17

Optimisation sous contraintes :algorithmes

Ce chapitre, en cours de redaction, presente quelques techniques d’optimisation pour les problemescontraints.

17.1 Extension des methodes sans contraintes

Une premiere idee consiste, pour les problemes contraints, a chercher a generaliser les techniquesdeveloppees pour les problemes non contraints.

17.1.1 Methode de relaxation

Theoreme 40 Soit f : Rn → R elliptique. Si l’ensemble U des contraintes est de la formeΠk=1,n[ai, bi] (ai, bi ∈ R), la methode de relaxation converge.

L’extension du theoreme a des ensembles plus generaux n’est pas immediate (considerer parexemple le cas ou f(v) = v2

1 + v22, et U = (v1, v2); v1 + v2 ≥ 2).

17.1.2 Theoreme de projection et gradient projete

Le theoreme de projection est un outil d’usage courant pour l’optimisation dans les espaces deHilbert. Rappelons qu’un espace de Hilbert H est un espace vectoriel norme complet (c’est adire tel que toute suite de Cauchy y est convergente) muni d’un produit scalaire. Dans un telespace, on a le resultat fondamental suivant appele theoreme de projection. On en donne iciun enonce retreint a Rn.

114

Page 116: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 17. OPTIMISATION SOUS CONTRAINTES : ALGORITHMES 115

Theoreme 41 Soit U ⊂ Rn un ensemble convexe ferme et non vide. Alors

∀x ∈ Rn, ∃!xP ∈ U, et ‖ x− xP ‖= infy∈U‖ x− y ‖ . (17.1)

xP est l’unique element z de U tel que ∀y ∈ U , (z− x)T (y − z) ≥ 0.L’application P : x→ xP est telle que

∀x1,x2 ∈ Rn, ‖ x1P − x2P ‖≤‖ x1 − x2 ‖ . (17.2)

P est lineaire si et seulement si U est un sous espace vectoriel de Rn, auquel cas

∀y ∈ U,yT (xPx) = 0. (17.3)

Theoreme 42 (Convergence de la methode de gradient projete). Soit f : Rn → R, et U ⊂ Rnest un ensemble convexe non vide. Si ∃α,M > 0, tels que ∀x,y ∈ Rn

(∇f(y)−∇f(x))T (y − x) ≥ α ‖ y − x ‖2

‖ ∇f(y)−∇f(x) ‖ ≤M ‖ y − x ‖,(17.4)

et a, b > 0 tels que 0 < a < ρk ≤ b < (2α/M2), la methode du gradient projete converge et

∃β < 1, ‖ uk − u ‖≤ βk ‖ u0 − u ‖ . (17.5)

Notons cependant que la construction de l’operateur de projection PU est parfois difficile.

17.1.3 Methode de point interieur

Les methodes de point interieur visent a remplacer les contraintes du critere par un terme additifqui tend vers l’infini a la frontiere du domaine des contraintes lorsqu’on augmente un parametrede reglage d’adequation aux contraintes que l’on notera ici t. Ainsi, au probleme

minx f(x)

f i(x) ≤ 0, i = 1, . . . , p,(17.6)

on pourra associer le critere non contraint suivant

f(x) +1

t

∑i=1,p

ψ(−f i(x)), (17.7)

ou ψ(z) est une fonction decroissante sur R+ qui presente une divergence en 0. En pratique,on cherchera a minimiser iterativement cette fonction tout en faisasnt croıtre la valeur de t.Typiquement, on prendra ψ(z) = log z.

La methode de point interieur constitue une technique de penalisation interne qui conduit ades algorithmes iteratifs qui doivent etre initialises a l’interieur du domaine des contraintes.

Page 117: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 17. OPTIMISATION SOUS CONTRAINTES : ALGORITHMES 116

17.1.4 Methode de penalisation externe

On peut aussi envisager des methodes de penalisation externe qui consistent a remplacerles contraintes d’inegalite par une fonction nulle dans le domaine des contraintes et strictementpositive a l’exterieur. Indiquons ici un resultat de convergence pour une telle methode.

Theoreme 43 Soit f : Rn → R, coercive et strictement convexe, U ∈ Rn un ensemble nonvide, convexe et ferme, et ψ : Rn → R, continue, convexe et telle que ∀y ∈ Rn, ψ(y) ≥ 0, etψ(y) = 0⇔ y ∈ U . Alors,

∀ε > 0, ∃!ut ∈ Rn, f(ut) = infx∈Rn

[f(x) +1

εψ(x)], (17.8)

et lorsque ε→ 0, ut tend vers arg infy∈U f(y).

Notons qu’a la differences des methodes de points interieur, la construction pratique de la fonc-tion ψ peut s’averer delicate pour une penalisation externe.

17.1.5 Methode d’Uzawa

Considerons de nouveau le problememinx f(x)

f i(x) ≤ 0, i = 1, . . . , p.(17.9)

Notons P+ la projection sur Rm+ : [P+µ]i = maxµi, 0. Le probleme dual (D) peut etre resolupar la methode du gradient projete :

µk+1 = P+(µk + ρ∇G(µk)), (17.10)

ou ∇G(µ) = [f1(µ), . . . , fp(µ)]T .

Notons uµ = arg minv[f(v)+∑

i=1,p µifi(v)]. La methode d’Uzawa consiste a calculer iterativement,

a partir de µ0 fixe, uk = uµk , puis µk+1 par la relation (17.10). On remplace ainsi le problemecontraint par une suite de problemes non contraints.

Theoreme 44 (convergence de la methode d’Uzawa) Soit f : Rn → R, elliptique, et U = v ∈Rn; Cv ≤ d 6= ∅ (C ∈ Rp ×Rn). Si 0 < ρ < 2α ‖ C ‖−2, ou alpha satisfait la relation (14.15),la suite (uk)k∈N converge vers l’unique solution de (P ). Si de plus C est de rang p, la suite(µk)k∈N converge vers l’unique solution du probleme dual (D).

Page 118: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 17. OPTIMISATION SOUS CONTRAINTES : ALGORITHMES 117

Exemple f(v) = 12vTAv − vTb, et U = v; Cv ≤ d, C ∈ Rp × Rn. L’algorithme secrit

uk = A−1(b−CTµk)

µk+1 = P+(µk + ρ∇G(µk))

= P+(µk + ρ(CA−1(b− fCTµk)− d))

= P+(µk + ρ(Cuk − d)).

(17.11)

Page 119: Notes de cours d'analyse numérique et d'optimisation continue ...

Chapitre 18

Programmation lineaire

18.1 Le probleme

On cherche a resoudre le probleme d’estimation d’une fonction lineaire sous des contrainteslineaires de type egalite ou inegalite :

(I)

max

∑j=1,n cjxj∑

j=1,n Aijxj ≤ bi, i = 1,m

xi ≥ 0 i = 1, n

max

∑j=1,n+m cjxj∑

j=1,n+m Aijxj = bi, i = 1,m

xi ≥ 0 i = 1, n+m

max z = cxAx = bx ≥ 0

maxx∈U z = cxU = x ∈ Rm+n; Ax = b,x ≥ 0

(18.1)

ou on a pose, pour j > 0 Aij = δi,n+i. U est un polytope convexe, c’est a dire un sous ensembleconvexe de Rm+n dont la frontiere est definie par un nombre fini d’hyperplans. U a un nombrefini de points extremes, c’est a dire de points qui ne se trouvent pas sur un segment ]a, b[ ou aet b appartiennent a U .

Theoreme 45 Si U est non vide et borne, minx∈U cx est atteint en au moins un point extremede U . Si le minimum est atteint en plusieurs points extremes, le convexe qu’ils engendrent estun ensemble de solutions du probleme.

18.2 Bases realisables

On peut supposer que A est de rang m (sinon le systeme Ax = b n’a pas de solution ou estredondant, auquel cas on peut eliminer les equations redondantes). On appelle base une sous ma-trice AB de de taille m extraite de A et inversible. On note xB les composantes correspondantesde x. On a alors

z = cBxB + cBxB et Ax = ABxB + ABxB = b (18.2)

118

Page 120: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 18. PROGRAMMATION LINEAIRE 119

On appelle solution de base AB le vecteur x defini par xB = A−1B b et xB = 0. Une solution de

base est dite realisable si xB ≥ 0.

Theoreme 46 L’ensemble des points extremes de U correspond a l’ensemble des solutions debase realisables

18.2.1 Solutions de base realisables optimales

Le probleme (I) se ramene donc a celui de la recherche des solutions de base realisables optimales.Notons A = [ABAB] = [A1, . . . ,Am,Am+1, . . . ,Am+n].

xB + (A−1B AB)xB = A−1

B b, (18.3)

doncz = cB[A−1

B b− (A−1B AB)xB] + cBxB

= cBA−1B b−

∑j∈B[cBA−1

B Aj − cj ]xj .(18.4)

Notons αj = cBA−1B Aj . On a alors le resultat suivant :

Theoreme 47

[∀i ∈ B, αj − cj ≥ 0]⇒(

A−1B b

0

)est une solution optimale. (18.5)

18.3 Changement de base realisable

B etant une base realisable, on cherche a la transformer en une nouvelle base : B → B′ =B − s+ r ou s et r correspondent aux indices des colonnes AS et AR de A qui sortent etentrent dans la base respectivement.

Proposition 3 B′ est une base si et seulement si [A−1B Ar]s 6= 0.

Preuve Cela provient du fait que∑i∈B,i 6=s

λiAi + λrAr = 0⇔∑

i∈B,i 6=sλiei + λrA

−1B Ar = 0. (18.6)

Cherchons a quelle condition la nouvelle base est realisable.

[AB Ar

]×[x′Bx′r

]= b. (18.7)

Page 121: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 18. PROGRAMMATION LINEAIRE 120

avec x′s = 0. Donc,[I A−1

B Ar

]×[x′Bx′r

]= A−1

B b⇒ x′s + [(A−1B Ar)sx

′r] = (A−1

B b)s (18.8)

Comme la base B est realisable et que x′s = 0 est nulle pour la nouvelle solution de base,

x′r = (A−1B Ar)

−1s (A−1

B b)s. (18.9)

Comme la base B est realisable, (A−1B b)s ≥ 0 et il faut que (A−1

B Ar)s soit positif pour que x′rle soit. De plus, dans la nouvelle base,∑

i∈B,i 6=sx′iei + (A−1

B Ar)ix′r = A−1

B b. (18.10)

Donc,x′i = (A−1

B b)i − (A−1B Ar)ix

′r, i 6= r. (18.11)

r etant fixe, on choisit s tel que x′r = (A−1B Ar)

−1s (A−1

B b)s soit minimal. comme d’apres lesrelations (18.9) et (18.11) on a

x′i = (A−1B b)i

1− x′r

((A−1

B b)i

(A−1B Ar)i

)−1 (18.12)

et il apparaıt que le facteur de droite de legalite precedente est positif. De plus, xi = (A−1B b)i ≥ 0.

POur le choix de s retenu, on assure bien la positivite de du vecteur de base x′.

18.4 algorithme du simplexe

Pour la valeur de s fixee comme precedemment, cherchons r telle que B′ soit meilleure que B.B′ est meilleure que B si αr − cr > 0 (αr = cB(A−1

B Ar)). En effet, d’apres (18.4), la solution x′

dans la nouvelle base verifie

cx = = cBA−1B b−

∑j∈B′ [cBA−1

B Aj − cj ]x′j

= cBA−1B b− (αr − cr)xr,

(18.13)

c’est a dire que z(x′) = z(x) − (αr − cr)xr. On voit donc que la decroissance du crtere estassuree si αr − cr > 0. Afin de favoriser une decroissance forte du critere, on cherchera unevaleur positive minimale de αr − cr.

L’algorithme du simplexe implemente cette strategie de facon iterative :

tant que ∃i ∈ B, αi − ci > 0,chercher r tel que |αr − cr| = max(αi−ci)>0 |αi − ci|prendre s tel que x′r = (A−1

B Ar)−1s [(A−1

B b)s]−1 soit minimal,

avec (A−1B Ar)s > 0

Notons que tous les xi de la solution de base sont alors positifs a chaque iteration.

Page 122: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 18. PROGRAMMATION LINEAIRE 121

18.5 Programmation lineaire et dualite

18.5.1 Probleme primal et probleme dual

Considerons le programme min cTxAx = bx ≥ 0

(18.14)

Le Lagrangien associe a ce probleme s’ecrit

L(x, λ, µ) = cTx + λT (Ax− b) + µTx = (cT − λTA + µT )x− λTb, (18.15)

avec µ ⊂ Rn+ et µixi = 0 pur i = 1, . . . , n. La minimisation sur x du lagrangien L(x, λ, µ) admetune solution si et seulement si (cT − λTA)i ≥ 0.

On voit que l’existence d’un point selle (x, λ) se traduit par le fait que pour xi > 0 on doit avoir(cT − λTA)i ≥ 0, car sinon l’augmentation de xi se traduirait par la diminution du critere cequi est incompatible avec la definition du point selle.

Finalement, pour le probleme primal (18.14) on obtient un probleme dual de la formemax bTxATλ ≤ cx ≥ 0

(18.16)

Dans la suite, on va etablir les proprietes de dualite pour les progralmes lineaires qui ont servia la demonstration du theoreme (31). Mais auparavant, on va indiquer les liens existants entreprobleme primal et probleme dual.

18.6 Equivalence du probleme primal et du probleme dual

Considerons le probleme primal (P ) et son dual (D) :

(P ) :

min cTxAx = bx ≥ 0

(D) :

max bTxATλ ≤ c

(18.17)

Le Lagrangien associe a ce probleme s’ecrit

L(xλ, µ) = cTx + λT (Ax− b) + µTx = (cT − λTA + µT )x− λTb, (18.18)

Proposition 4 L’ensemble des problemes primaux coıncide avec l’ensemble des problemes duaux

Page 123: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 18. PROGRAMMATION LINEAIRE 122

Preuve Considerons le probleme (P ), et notons que Ax = b peut se reformular comme les deuxinegalites Ax ≤ b et −Ax ≤ −b. Donc (P ) se reformule comme le programme dual suivant :

max−cTx A−AI

x ≤

b−b0

(18.19)

Inversemmment, en posant λ = λ1 − λ2, avec λ1 ≥ 0 et λ2 ≥ 0 on peut reecrire (D) sous laforme primale ; Pour cela, introduisons un vecteur y ≥ 0 supplementaire tel que ATλ + y = cet notons λ = [λT1 λT2 yT ]T . Les composantes de y sont appelees variables d’ecart. Il apparaıtfinalement que (D) se reecrit :

min[−bT bT 0

]λ[

AT −AT I]λ = c

x ≥ 0,

(18.20)

qui est bien la forme d’un programme primal. Donc l’ensemble des programmes primaux coıncideavec l’ensemble des programmes duaux.

Montrons enfin que le dual du programme (D) est le programme (P ). Le dual du programmedual (D) reecrit sous la forme (18.20) est

max cTu A−AI

u ≤

−bb0

. (18.21)

En posant x = −u et en ramplacant les relations Au ≤ −b et −Au ≤ b par Ax = b, onretrouve bien le programme primal (P )

18.7 Theoreme de dualite pour la programmation lineaire

Notons maintenant que si x et λ sont des valeurs realisables (c’est a dire satisfaisant quxcontraintes) pour les problemes (P ) et (D) respectivement, alors les conditions Ax = b, ATλ ≤ cet x ≥ 0 conduisent aux relations

λTb = λTAx ≤ cTx. (18.22)

La relation λTb ≤ cTx est connue sous le nom de propriete de dualite faible et conduit al’enonce suivant :

Proposition 5 L’ensemble des points realisables du dual conduit a des valeurs du critere dualinferieures a l’ensemble des valeurs prises par le critere primal pour ses points realisables. Entermes mathematiques, on a donc :

∀α ∈ bTλ; ATλ ≤ c, ∀β ∈ cTx; Ax = bx ≥ 0, α ≤ β (18.23)

Page 124: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 18. PROGRAMMATION LINEAIRE 123

Cette propritete permet d’etabir le theoreme suivant qui montre l’equivalence des problemes (P )et (D).

Theoreme 48 Si l’un des problemes (P ) ou (D) admet une solution, il en est de meme pourl’autre et les valeurs de l’optimum sont identiques. Inversement (P ) n’est pas borne inferieurementou (D) n’est pas borne superieurement, alors l’autre probleme n’admet pas de valeur realisable.

Demonstration Comme on a vu au paragraphe precedant que tout probleme primal pouvaitprendre la forme equivalente d’un probleme dual et que le dual du dual d’un probleme donnecorrespond au probleme primal de depart, on pourra se contenter de demontrer le resultat enconsiderant exclusivement les hypotheses enoncees pour le probleme primal (P ).

Supposons donc que le probleme primal admet une solution et notons z la valeur de l’optimum.L’existence d’une valeur realisable optimale pour le probleme dual (D) qui conduirait a unoptimum egal a z peut se reformuler sous la forme

∃λ ∈ Rm, ∀x ⊂ Rn+, ∀t ⊂ R+, (cT − λTA)x + t(λT b− z) ≥ 0. (18.24)

En effet, on sait que pour λ une valeur realisable de (D) on a necessairement λT b − z ≤ 0 ;La propriete (18.24) imposera donc pour etre verifiee d’avoir λT b − z = 0 (prendre x = 0 et tarbitraierement grand).

Pour montrer (18.24), notons que cette propriete se reecrit encore comme

∃λ ∈ Rm, ∀x ⊂ Rn+, ∀t ⊂ R+, −(tz − cTx) + λT (tb−Ax) ≥ 0. (18.25)

Pour etablir cette derniere relation, on considere le cone convexe ferme

C =

(r,w); r = tz − cTx, w = tb−Ax, t ≥ 0, x ≥ 0. (18.26)

Si on parvient a demontrer que (1,0) /∈ C, le theoreme de separation de Han-Banach 1

permet d’etablir l’existence d’un couple (s, : λ) tel que l’hyperplan d’equation

H =

(α, β) ⊂ Rm+1; sα+ λTβ = 0

(18.27)

separe C et (1,0), avec∀(r,w) ∈ C, s1 + λT0 < 0 ≤ sr + λTw. (18.28)

Sans perte de generalite, on pourra choisir s = −1 et, compte tenu de la definition de C,l’inegalite de droite de (18.28) correspond alors precisemment a la relation (18.25) que l’oncherche a etablir. Il nous reste donc a verifier que (1,0) /∈ C.

Si on avait (1,0) ∈ C, il devrait exister t ≥ 0 et x ≥ 0 tels que Ax = tb et tz − cTx > 0. Pourt > 0, en notant x′ = x/t, on aurait Ax′ = b et cTx′ > z, ce qui est impossible puisque z est

1. Theoreme de separation de Han-Banach : etant donne deux ensembles convexes fermes, C1 et C2, il existe unhyperplan qui separe strictement C1 et C2, c’est a dire que C1 et C2 se trouvent de part et d’autre de cet hyperplan(separation) et que l’un au plus de ces ensembles admet des points communs avec l’hyperplan (separation stricte).De plus, lorsque comme ici un des deux convexes est un cone, on peut choisir un hyperplan passant par l’origine

Page 125: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 18. PROGRAMMATION LINEAIRE 124

la valeur minimale prise par le critere (P ). Pour t = 0, on aurait Ax = 0 et −cTx > 0 et donc,pour tout vecteur y ≥ 0 tel que Ay = b, on aurait

∀α ≥ 0, y + αx ≥ 0, A(y + αx) = b, et limα→∞

cT (y + αx) = −∞, (18.29)

ce qui est contradictoire avec la valeur optimale finie z de (P ). On a donc bien (1,0) /∈ C.

Si maintenant le probleme (P ) n’est pas inferieurement, la propriete de dualite faible indiqueque si x et λ sont des valeurs realisables pour les problemes (P ) et (D) respectivement, alorsλTb ≤ cTx. Comme x peut etre choisi tel que cTx soit arbitrairement petit on devra avoirλTb = −∞, ce qui est impossible. Donc le probleme dual n’admet pas de valeur realisable.

Exemple d’application A titre d’illustration de l’emploi possible du theoreme de dualite, onva proposer ici une demonstration de la condition necessaire d’optimalite du premier ordreenprogrammation non lineaire sous contrainte d’egalite basee sur son emploi. Rappelons ici l’enoncede ce theoreme :

Si u est un point regulier et un optimum local pour le problememin f(x)f e(x) = 0,

, (18.30)

alors∃λ ∈ Rm, ∇f(u) +∇f e(u)λ = 0. (18.31)

Voici la demonstration faisant appel a la notion de dualite en programmation lineaire

Preuve Soit u un point regulier du probleme (18.30). Considerons le probleme de programma-tion lineaire suivant :

(PL)

max∇f(u)Tv∇f e(u)Tv = 0,

(18.32)

On va tout d’abord montrer que pour un point regulier optimal u de (18.32), [∇fe]T (u)v =0 ⇒ [∇f(u)]Tv = 0 ce qui etablit l’existence d’un optimum du probleme primal et donc,d’apres le theoreme de dualite 48, l’existence de solutions realisables pour le probleme dual,dont on montrera que l’ensemble de contrainte sur λ est precisemment decrit par la relation∇f(u) +∇f e(u)λ = 0.

Commencons donc par etablir que [∇fe(u)]Tv = 0 ⇒ ∇f(u)Tv = 0. Si [∇fe(u)]Tv = 0, vappartient au plan tangent a la variete feT (x) = 0 au point x = v. Il existe donc une courbet→ y(t) de V = x; f e(x) = 0, avec y(0) = u et y(0) = v. L’optimalite de u pour le probleme(18.32) entraine en particulier l’optimalite de f(y(t)) en t = 0. Donc y(0) = [∇f(u)]Tv =0. Le probleme (PL) admet donc une solution et la valeur optimale du critere vaut donc 0.Comme indique plus haut, le probleme dual admet donc au moins une valeur λ qui satisfait auxcontraintes. Pour ecrire ce programme dual, commencons par remttre le probleme (PL) sousune forme standard equivalente en posant v = v1 − v2, avec v1 ≥ 0 et v2 ≥ 0, et x = [vT1 vT2 ]T .On obtient ainsi la forme

(PL) :

min

[−∇f(u) ∇f(u)

]x[

(∇f e(u))T (−∇f e(u))T]x = 0

x ≥ 0(18.33)

Page 126: Notes de cours d'analyse numérique et d'optimisation continue ...

CHAPITRE 18. PROGRAMMATION LINEAIRE 125

dont la forme duale est

(DL) :

max 0Tλ[∇f e(u)−∇f e(u)

]λ ≤

[−∇f(u)∇f(u)

].

(18.34)

Il apparaıt donc, en considerant les contraintes de ce probleme, qu’il existe λ ∈ Rm tel que

∇f(u) +∇f e(u)λ = 0. (18.35)

Page 127: Notes de cours d'analyse numérique et d'optimisation continue ...

Annexe A

Master SISEACorrige des examens(printemps 2006 a 2011)

126

Page 128: Notes de cours d'analyse numérique et d'optimisation continue ...

ANNEXE A. MASTER SISEA CORRIGE DES EXAMENS (PRINTEMPS 2006 A 2011) 127

Janvier 2010

I On veut construire une boite rectangulaire ouverte avec une surface de 192cm2 de carton.

i) Si la base doit etre carree, quelles dimensions donnent le plus grand volume ?

En notant a le cote de la base et h la hauteur, le probleme s’ecrit alors

max V = a2h

a2 + 4ah = 192cm2

a ≥ 0, h ≥ 0

(A.1)

Les contraintes d’ingalite devront bien sur etre inactives. Sinon on obtiendrait V = 0 qui est leminimum du probleme (obtenu pour (a, h) = (

√192, 0)).

Le lagrangien s’ecrit L(a, h, λ) = a2h+ λ(a2 + 4ah− 192) et son gradient

∇(a,h)L(a, h, λ) =

(2ah+ λ(2a+ 4h)

a2 + 4λa

)= 0. (A.2)

La derniere equation conduit a a = 0 ou λ = −a/4. Comme a 6= 0 du fait que a2 + 4ah = 192,on doit avoir λ = −a/4. La premiere equation se reecrit alors 4h − (a + 2h) = 0, soit h = a/2.La contrainte a2 + 4ah = 192 donne alors 3a2 = 192, soit a =

√64 = 8cm. On a ainsi h = 4cm

et V = 256cm3.

Les conditions necessaires du premier ordre conduisent donc a la solution (a, h, λ) = (8, 4,−2).Cette condition est suffisante car on cherche ici maximiser V = a2h qui est une fonction continueet coercive sur la courbe de de contrainte fermee (a, h); a2 + 4ah = 192, a ≥ 0, h ≥ 0.D’apres le theoreme de Weierstrass le probleme admet donc une solution qui ne peut donc etreque (a, h) = (8, 4).

ii) Meme question si la base peut etre rectangulaire.

Dans ce cas, en notant b le second cote du rectangle, on obtientmax V = abh

ab+ 2(a+ b)h = 192a, b, h ≥ 0

(A.3)

La encore le maximum est atteint lorsque les contraintes d’inegalite sont inactives. Le lagrangiens’ecrit L(a, h, λ) = abh+ λ(ab+ 2(a+ b)h− 192) et son gradient

∇(a,h)L(a, h, λ) =

(bh+ λ(b+ 2h)

ah+ λ(a+ 2h)ab+ 2λ(a+ b)

)= 0. (A.4)

Page 129: Notes de cours d'analyse numérique et d'optimisation continue ...

ANNEXE A. MASTER SISEA CORRIGE DES EXAMENS (PRINTEMPS 2006 A 2011) 128

la difference des deux premieres equations donne (b−a)(h+λ) = 0. Si λ = −h, bh+λ(b+ 2h) =0 = −2h2 et le volume serait nulle. Donc a = b et le probleme est equivalent a celui de la questionprecedente. La solution est encore (a, b, h) = (8, 8, 4)cm.

II Montrez qu’on peut ecarter la derniere contrainte du probleme suivant :minx,y

12x

2 + y

2x+ y ≥ 2x− y ≤ 1x ≥ 0

(A.5)

Les deux premieres contraintes se reecrivent x ≥ 1− y/2 et y ≥ x− 1. Donc, x ≥ 1− (x− 1)/2,soit x ≥ 1. La derniere contrainte est donc redondante avec les deux premieres et peut etreecartee.

ii) Trouver la solution.

Le lagrangien s’ecrit

L(x, y, µ) =1

2x2 + y2 + µ1(2− 2x− y) + µ2(x− y − 1)

avec µi ≥ 0 (i = 1, 2), et les conditions de Khun et Tucker sont donnees par(x− 2µ1 + µ2

2y − µ1 − µ2

)= 0

µ1(2− 2x− y) = 0µ2(x− y − 1) = 0

(A.6)

Si µ1 et µ2 sont non nuls, (x, y) = (1, 0) et le critere vaut 1/2.

Si µ1 = 0 et µ2 6= 0, y = x − 1 et en additionnant les deux equations de ∇L = 0, on trouvex+ 2y = 0. Donc (x, y) = (2/3,−1/3). Mais alors µ2 = −2/3, ce qui est impossible.

Si µ1 6= 0 et µ2 = 0, y = 2 − 2x et la condition ∇L = 0 conduit x = 4y. Finalement, (x, y) =(8/9, 2/9), µ1 = 4/9 > 0 et le critere vaut 4/9.

Le point (x, y) = (8/9, 2/9) est donc le point qui parmi ceux qui assurent les conditionsnecessaires de Khun et Tucker conduit a la valeur minimale du critere. La condition necessaireest ici suffisante car en tout point

∇2L =

(1 00 2

)> 0. (A.7)

III Trouvez l’optimum du probleme suivant en passant par les conditions de Khun et Tucker :miny

∑ni=1 yi

Πni=1yi = 1

yi ≥ 0 i = 1, . . . , n.

(A.8)

Page 130: Notes de cours d'analyse numérique et d'optimisation continue ...

ANNEXE A. MASTER SISEA CORRIGE DES EXAMENS (PRINTEMPS 2006 A 2011) 129

Notons que les contraintes yi ≥ 0 ne peuvent pas etre actives puisqu’on doit avoir Πni=1yi = 1.

On va donc chercher simplement a resoudre le probleme sans les contraintes d’ingalite en serestreignant ensuite aux solutions positives. Le lagrangien s’ecrit alors

L(y, λ) = yT 1I + λ(Πni=1yi − 1) (A.9)

et son gradient est∇yL = 1I + λ(Πn

i=1yi)diag(1/y1, . . . , 1/yn)1I = 0. (A.10)

Il apparaıt donc que l’on doit avoir tous les yi egaux a −λΠni=1yi. La contrainte Πn

i=1yi = yni = 1donne alors yi = 1, ∀i ∈ 1, . . . , n, compte tenu de la contrainte de positivite. Par suite, λ = −1.Notons de plus que la matrice hessienne du lagrangien vaut alors

∇2yL = (Πn

i=1yi)

diag(1/y21, . . . , 1/y

2n)− [1/y1, . . . , 1/yn]T [1/y1, . . . , 1/yn]

= I− 1I1IT (A.11)

Le gradient de Πni=1yi−1 au point (1, . . . , 1) est le vecteur 1I et tout vecteur v de l’espace tangent

a la contrainte en ce point verifie donc vT 1I = 0. Il en resulte que vT (∇2yL)v = vT (I−1I1IT )v =‖

v ‖2. La restriction du hessien du lagrangien au point (1, . . . , 1) est donc strictement positive,ce qui etablit que la condition necessaire d’annulation du lagrangien en ce point est egalementsuffisante. Finalement, la valeur du minimum est

∑ni=1 = n.

ii) En deduire que

1

n

n∑i=1

xi ≥ (Πni=1xi)

n , ∀xi ≥ 0, i = 1, . . . , n. (A.12)

L’inegalite est clairement verifiee si un des xi est nul. Maintenant, si tous les xi sont non nuls,en posant yi = xi/(Π

nj=1xj)

1/n, comme Πni=1yi = 1, il est clair d’apres la question precedente

que∑n

i=1 yi ≥ n, ce qui conduit immediatement au resultat desire.

IV Pour a, b et c trois constantes strictement positives fixes, on veut minimiser la somme detrois nombres positifs x, y et z sous la contrainte :

a

x+b

y+c

z= 1. (A.13)

i) Montrez qu’a l’optimum les inconnues sont strictement positives.

La contrainte d’egalite ne pourrait pas etre satisfaite si un des nombres x, y ou z etait nul.

Page 131: Notes de cours d'analyse numérique et d'optimisation continue ...

ANNEXE A. MASTER SISEA CORRIGE DES EXAMENS (PRINTEMPS 2006 A 2011) 130

ii) Trouver la solution en passant par la methode des multiplicateurs de Lagrange et justifiezvotre reponse.

Puisque les contraintes de positivite ne sont pas actives, le probleme se resume a la recherchedes solutions positives parmi les solutions du probleme d’optimisation sous la seule contrainted’egalite. Le lagrangien s’ecrit alors

L(x, y, z, λ) = x+ y + z + λ (a

x+b

y+c

z− 1) (A.14)

et son gradient est∇xyzL(x, y, z, λ) = 1I− λ [a/x2, b/y2, c/z2]T . (A.15)

En considerant les conditions necessaires du premier ordre ∇L = 0, on trouve donc que λ > 0 et(x, y, z) =

√(λ)(√a,√b,√c). En reinjectant ces valeurs dans l’equation de contrainte, on trouve

que√λ =√a+√b+√c. La matrice hessienne en ce point vaut

∇2xyzL(x, y, z, λ) = 2λdiag(a/x3, b/y3, c/z3) > 0. (A.16)

La condition suffisante est donc egalement satisfaite et la solution du probleme est obtenue en

(x, y, z) = (√a+√b+√c)(√a,√b,√c) (A.17)

et en ce point, le critere vaut x+ y + z = (√a+√b+√c)2.

Page 132: Notes de cours d'analyse numérique et d'optimisation continue ...

ANNEXE A. MASTER SISEA CORRIGE DES EXAMENS (PRINTEMPS 2006 A 2011) 131

Janvier 2009

I Trouver la solution de min (x+ y − z − 1)2 + (x+ y)2 + 5x2

2x+ z = 0(A.18)

en se ramenant un probleme non contraint.

Comme z = −2x, il suffit de minimiser

f(x, y) = (3x+ y − 1)2 + (x+ y)2 + 5x2 (A.19)

Le gradient de f est

∇f(x, y) = 2

(15x+ 4y − 34x+ 2y − 1

). (A.20)

L’annulation du gradient conduit a (x, y) = (1/7, 3/14). De plus, la matrice hessienne de f vaut

∇2f(x, y) = 2

(15 44 2

). (A.21)

La trace et le determinant de cette matrice valent respectivement 17 et 14 et correspondent a lasomme et au produit de ses valeurs propres, qui sont donc positives. Donc la matrice ∇2f(x, y)est positive en tout point (x, y) et f est convexe. (x, y) = (1/7, 3/14) realise donc le minimum(global strict) de f . On en deduit z = −2x = −2/7.

ii) En passant par le lagrangien (justifiez vos reponses)

Le lagrangien s’ecrit

L(x, y, z, λ) = (x+ y − z − 1)2 + (x+ y)2 + 5x2 + λ(2x+ z). (A.22)

Son gradient est

∇xyzL(x, y, z, λ) =

2(7x+ 2y − z − 1 + λ)2(2x+ 2y − z − 1)−2(x+ y − z − 1) + λ

. (A.23)

L’annulation du gradient conduit a x = −λ/5 (difference des deux premieres lignes du gradient)et z = −λ−1 (combinaison des deux dernieres lignes). En remplacant ces valeurs dans l’equationde contrainte, on trouve −2λ/5− λ− 1 = 0, soit λ = −5/7 et (x, y, z) = (1/7, 3/14,−2/7).

La matrice hessienne du lagrangien est

∇2xyzL(x, y, z, λ) = 2

7 2 −12 2 −1−1 −1 1

. (A.24)

Page 133: Notes de cours d'analyse numérique et d'optimisation continue ...

ANNEXE A. MASTER SISEA CORRIGE DES EXAMENS (PRINTEMPS 2006 A 2011) 132

En tout point, le gradient de 2x + z est u = [2, 0, 1]T . Donc l’espace tangent a la contrainteest engendre par les vecteurs v = [0, 1, 0]T et w = [1, 0,−2]T . Pour verifier que la restiction de∇2xyzL(x, y, z, λ) l’espace tangent la contrainte est positive, il est equivalent de montrer que la

matrice

[v w]T∇2xyzL(x, y, z, λ)[v w] =

(0 1 01 0 −2

) 7 2 −12 2 −1−1 −1 1

.

0 11 00 −2

=

(2 44 15

)(A.25)

est positive, ce qui est le cas d’apres la question precedente (trace=17, determinant=14). Leminimum est donc atteint (x, y, z) = (1/7, 3/14,−2/7) et c’est un minimum global strict.

II Soit la fonction f : R3 → R, avec f(x, y, z) = x2 + y2 + z2 − 2xyz.

i) Montrer que f n’est bornee ni inferieurement ni superieurement.

En effet, on a par exemple limx→∞ f(x, x, x) = limx→∞ 3x2−x3 = −∞ et limx→−∞ f(x, x, x) =∞.

ii) Montrer que (0, 0, 0) et (1, 1, 1) sont des points stationnaires de f et indiquer pour chacund’eux s’il s’agit d’un minimum local, d’un maximum local ou ni l’un ni l’autre.

∇f(x, y, z) = 2

x− yzy − xzz − xy

(A.26)

∇f est nul en (0, 0, 0) et (1, 1, 1). Ce sont donc des points stationnaires.

∇2f(x, y, z) = 2(I−

0 z yz 0 xy x 0

) (A.27)

En (0, 0, 0), ∇2f = 2I. Donc (0, 0, 0) est un minimum local de f . En (1, 1, 1), le developpementau second ordre de f s’ecrit

f(1 + δx, 1 + δy, 1 + δz)− f(1, 1, 1) = [δx δy δz]∇2f(1, 1, 1)[δx δy δz]T + o(‖ δ ‖2)

= δ2x + δ2

y + δ2z − 2(δxδy + δxδz + δyδz) + o(‖ δ ‖2).

(A.28)notons que pour δx > 0 et suffisamment petit, f(1 + δx, 1 + δx, 1 + δx) = −3δ2

x + o(δ2x) < 0 et

f(1 + δx, 1, 1) = δ2x + o(δ2

x) > 0. Donc, le point (1, 1, 1) n’est ni un minimum ni un maximumlocal.

III Resoudre le probleme suivant : min x2 + y2

(x− 1)3 − y2 = 0(A.29)

i) Dessiner la courbe de la contrainte .

Page 134: Notes de cours d'analyse numérique et d'optimisation continue ...

ANNEXE A. MASTER SISEA CORRIGE DES EXAMENS (PRINTEMPS 2006 A 2011) 133

C’est la courbe en rouge ci dessous. Le point(1,0) n’est pas regulier car la courbe de contrainten’y est pas derivable (point de rebroussement).

ii) Montrer qu’aucun point ne satisfait les conditions necessaires du premier ordre.

Le lagrangien s’critL(x, y, λ) = x2 + y2 + λ((x− 1)3 − y2) (A.30)

et son gradient vaut

∇xyL(x, y, λ) = 2

(xy

)+ λ

(3(x− 1)2

−2y

). (A.31)

Le gradient s’annule pour (1− λ)y = 0. La condition λ = 1 est impossible car alors, le premierterme du gradient vaut 2x + 3(x − 1)2 et est strictement positif sur la courbe de contrainte(x ≥ 1) ; Donc y = 0. Mais la contrainte impose alors x = 1, valeur pour laquelle le premierterme du gradient est non nul. Donc le gradient du lagrangien ne s’annule pas sur le domainede contrainte et aucun point ne satisfait les conditions necessaires du premier ordre.

iii) Quel est le point qui realise le minimum, conclure.

En tout point de la courbe de contrainte x ≥ 1, donc x2 + y2 ≥ 1. L’egalite n’est satisfaite qu’en(x, y) = (1, 0) qui realise donc le minimum (global stricte) du probleme. On verifie ici que lesconditions necessaires du premier ordre ne sont necessaires que pour les points reguliers et queles points irreguliers doivent etre consideres separement.

IV Soit le probleme d’optimisation suivant :

max x2 + 4xy + y2

x+ y ≤ 8−x+ 2y ≤ 4x ≥ 0y ≥ 0

(A.32)

i) Determiner graphiquement l’ensemble des points admissibles.

L’ensemble des points admissibles est le polyhedre indique en rouge.

Page 135: Notes de cours d'analyse numérique et d'optimisation continue ...

ANNEXE A. MASTER SISEA CORRIGE DES EXAMENS (PRINTEMPS 2006 A 2011) 134

ii) Trouver le (les) point qui satisfait les conditions necessaires du premier ordre. En reformulantle probleme comme un probleme de minimisation de −(x2 + 4xy + y2) le lagrangien s’ecrit

L(x, y, µ) = −(x2 + 4xy + y2) + µ1(x+ y − 8) + µ2(−x+ 2y − 4)− µ3x− µ4y (A.33)

avec µi ≥ 0, i = 1, 2, 3, 4.

Les conditions de Khun et Tucker du premier ordre sont donnes par

∇xyL(x, y, µ) =

(−2x− 4y + µ1 − µ2 − µ3

−4x− 2y + µ1 + 2µ2 − µ4

)= 0

µ1(x+ y − 8) = 0µ2(−x+ 2y − 4) = 0µ3x = 0µ4y = 0.

(A.34)

Considerons les differents cas possibles concernant les contraintes actives, directement obser-vables sur la figure :

1. µ3 > 0, µ4 > 0 et µ1 = µ2 = 0 : x = y = 0 et en fait on doit aussi avoir µ3 = µ4 = 0.En (x, y) = (0, 0) le critere vaut 0. C’est clairement un minimum global de x2 + 4xy+ y2

puisque sur R+×R+ ce critere est toujours positif (c’est meme un minimum global strict).

2. µ4 > 0 et µ1 = µ2 = µ3 = 0 : y = 0 et −4x− 2y = 0. On retrouve (x, y) = (0, 0)

3. µ4 > 0, µ1 > 0 et µ2 = µ3 = 0 : (x, y) = (8, 0) mais l’annulation du premier terme dugradient donne µ1 = −16, ce qui est impossible.

4. µ1 > 0 et µ2 = µ3 = µ4 = 0 : −2x− 4y+ µ1 = 0,−4x− 2y+ µ1 = 0 et x+ y− 8 = 0 d’ouon deduit que (x, y, µ1) = (4, 4, 24) et les conditions necessaires sont satisfaites.

5. µ1 > 0, µ2 > 0 et µ3 = µ4 = 0 : −2x−4y+µ1−µ2 = 0, −4x−2y+µ1 +2µ2, x+y−8 = 0et −x+ 2y − 4 = 0. On trouve (x, y, µ1, µ2) = (4, 4, 24, 0) comme precedemment.

6. µ2 > 0 et µ1 = µ3 = µ4 = 0 : −2x− 4y−µ2 = 0, −4x− 2y+ 2µ2 = 0 et −x+ 2y− 4 = 0.On trouve (x, y, µ2) = (−20/13, 16/13,−24/13), ce qui est impossible.

7. µ2 > 0, µ3 > 0 et µ1 = µ4 = 0 : −2x−4y−µ2−µ3 = 0, −4x−2y+2µ2 = 0 −x+2y−4 = 0et x = 0. Alors (x, y, µ2, µ4) = (0, 2, 2,−10), ce qui est impossible.

8. µ3 > 0 et µ1 = µ1 = µ4 = 0 : 2x + 4y − µ3 = 0, 4x + 2y = 0 et x = 0. Donc(x, y, µ3) = (0, 0, 0).

Page 136: Notes de cours d'analyse numérique et d'optimisation continue ...

ANNEXE A. MASTER SISEA CORRIGE DES EXAMENS (PRINTEMPS 2006 A 2011) 135

Finalement, (x, y, z, µ1, µ2, µ3, µ4) = 0 et (x, y, z, µ1, µ2, µ3, µ4) = (4, 4, 24, 0, 0, 0) satisfont auxconditions necessaires du premier ordre et le premier point correspond a un minimum duprobleme.

iii) Le point retenu satisfait-il les conditions suffisantes du second ordre ? Conclure.

Comme on optimise ici une fonction continue sur un ferme borne le probleme admet un point quirealise le minimum et un point qui realise le maximum. Les conditions necessaires d’optimalitesont donc ici egalement des conditions suffisantes, le minimum tant ralise en (0, 0) ou le criterevaut 0 et le maximum en (4, 4) ou le critere vaut 96.

Page 137: Notes de cours d'analyse numérique et d'optimisation continue ...

ANNEXE A. MASTER SISEA CORRIGE DES EXAMENS (PRINTEMPS 2006 A 2011) 136

Janvier 2008

I Resoudre le probleme suivant : max y2 − x

x2 + y2 ≤ 1.(A.35)

en justifiant votre reponse.

Le lagrangien s’ecrit :L(x, y, µ) = y2 − x+ µ(x2 + y2 − 1). (A.36)

Les conditions de Khun et Tucker sont donnees par∇(x,y)L(x, y, µ) =

(−1 + 2µx2(µ+ 1)y

)= 0

µ(x2 + y2 − 1) = 0, et µ ≤ 0

(A.37)

Comme −1 + 2µx = 0, il est clair que µ < 0 et donc que x2 + y2 = 1.

- Si µ = −1, x = −1/2 et le probleme se ramene a la recherche du maximum de y2 sousla contrainte y2 = 1 − x2 = 3/4. Les point (x, y, µ) = (−1/2,±

√3/2, 1) satisfont donc les

conditions necessaires du premier ordre. Pour µ = −1, la matrice hessienne de L est donnee par

∇2L = 2

(µ 00 µ+ 1

)=

(−2 00 0

). (A.38)

La normale au cercle unite en (x, y) est donnee par le vecteur [x y]T et sa tangente par levecteur [y − x]T et vaut v = [

√3/2 1/2]T en P1 = (−1/2,

√3/2) et v = [−

√3/2 1/2]T en

P2 = (−1/2,−√

3/2). La restriction de ∇2L a l’espace tangent en (−1/2,±√

3/2) est negative :pour les deux points, vT [∇2L]v = 1/2 < 0. Donc ces deux points representent des maximalocaux du critere.

- Si y = 0, x = ±1 et µ = ∓1/2. Comme µ ≤ 0, µ = −1/2 et x = −1.

∇2L =

(−1 00 1

)(A.39)

L’espace tangent la contrainte est engendre par le vecteur v = [0 1]T . vT [∇2L]v = 1. ¿DoncP3 = (−1, 0) ne represente pas un maximum.

Finalement, P1 et P2 representent les maxima (globaux) du probleme.

Page 138: Notes de cours d'analyse numérique et d'optimisation continue ...

ANNEXE A. MASTER SISEA CORRIGE DES EXAMENS (PRINTEMPS 2006 A 2011) 137

II Montrer que tous les points du domaine caractrise par les 3 contraintesx2 + y2 ≤ 1

y ≤ 1/2y ≥ −1/2

(A.40)

sont des points reguliers.

Les points interieurs au domaine (en marron sur la figure) sont reguliers. De plus, les gradientspour les trois contraintes sont respectivement engendres par v1 = [y − x]T , v2 = [1 0]T etv3 = [1 0]T . Notons que si une seule contrainte est active on obtient un vecteur non nul (enparticulier v1 6= 0 car x2 + y2 = 1 lorsque la premiere contrainte est active). Lorsque deuxcontraintes sont actives ce sont soit la premiere et la seconde, soit la premiere et la troisieme,car les frontieres des contraintes 1 et 3 n’ont pas de point commun. Comme |y| = 1/2 |x| =

√3/2

dans ces deux situations, il est alors clair que (v1,v2) et (v1,v3) forment des familles libres et lespoints pour lesquels deux contraintes sont satisfaites sont reguliers. Enfin, comme on l’a vu lestrois contraintes ne peuvent pas etre satisfaites simultanement. Donc, tous les points du domainesont reguliers.

III Soit le probleme d’optimisation suivantmin |x− 2|+ |y − 2|

x2 + y2 = 1x− y2 ≥ 0

(A.41)

Page 139: Notes de cours d'analyse numérique et d'optimisation continue ...

ANNEXE A. MASTER SISEA CORRIGE DES EXAMENS (PRINTEMPS 2006 A 2011) 138

1) Determiner graphiquement l’ensemble des points admissibles.

L’ensemble des points admissibles est donne par la courbe en marron.

2) En deduire l’expression explicite de la fonction minimiser.

Dans le domaine des contraintes, |x− 2|+ |y − 2| = 4− x− y et le probleme se reecritmin 4− x− y

x2 + y2 = 1x− y2 ≥ 0

(A.42)

3) Trouver le minimum en justifiant votre reponse.

Si seule la premiere contrainte est active, les conditions de Khun et Tucker conduisent a (x, y) =(1/√

2, 1/√

2) et si les deux contraintes sont actives, x = y2 et x2 + y2 = 1 soit x2 + x − 1 = 0

et, comme x = y2 > 0, (x, y) = ((−1 +√

5)/2,±√

(−1 +√

5)/2). De ces trois points, le point

(x, y) = (1/√

2, 1/√

2) realise le minimum. C’est donc necessairement le minimum du probleme.

IV Un importateur dispose de Q unites d’un produit qu’il propose de vendre dans n magasins.Chaque magasin i propose d’acheter di unites a un prix pi. L’importateur maximise son revenu∑

j pjxj en jouant sur la quantite xi qu’il vend au magasin i, avec 0 ≤ xi ≤ di. On suppose que∀i, di > 0, pi > 0,

∑di > Q et pour simplifier que p1 > p2 > . . . > pn−1 > pn.

1) Decrire la procedure qui permet d’obtenir les quantites optimales x∗i pour i = 1, 2, 3, . . .

Intuitivement, le gain de l’importateur est optimise en vendant un maximum de produit aupremier acheteur, puis un maximum de la quantite restante au second, et ainsi de suite jusqu’aepuisement du produit disponible. Cela se traduit par la procedure suivante :

x∗1 = min(d1, Q)x∗2 = min(d2, Q− x∗1)

...

x∗n = min(dn, Q−∑n−1

k=1 x∗k).

(A.43)

Page 140: Notes de cours d'analyse numérique et d'optimisation continue ...

ANNEXE A. MASTER SISEA CORRIGE DES EXAMENS (PRINTEMPS 2006 A 2011) 139

2) Demontrer que la procedure precedente est optimale en indiquant les valeurs a donner aux3n + 1 inconnues x∗i , λi, µi, pour i = 1, . . . , n, et λ0, ou λi est associe la contrainte xi ≥ 0, µixi − di ≤ 0 et λ0

∑xi = Q, dans les conditions necessaires et suffisantes d’optimalite.

On cherche maximiser une fonction lineaire sur un ensemble convexe borne non vide (puisquel’hyperplan

∑xi = Q <

∑di a une intersection non vide avec le pave Πi[0, di]). Le probleme

admet donc une solution (theoreme de Weierstrass) et comme on a un probleme equivalentun probleme de programmation convexe, les conditions de Khun et Tucker sont necessaires etsuffisantes.

Le lagrangien du probleme s’ecrit

L =∑

pixi + λ0(∑

xi −Q)−∑

λixi +∑

µi(xi − di) (A.44)

Notons p = [p1, . . . , pn]T , λ = [λ1, . . . , λn]T ,µ = [µ1, . . . , µn]T et 1It le vecteur de taille t decomposantes toutes egales 1. Les conditions de Khun et Tucker s’ecrivent

∇xL = p + λ01In − λ+ µ = 0λixi = 0µixi = µidiλi ≥ 0µi ≥ 0

(A.45)

Les relations µixi = µidi indiquent que µi = 0 ou xi = di.

Notons k la valeur telle que∑

i<k di ≤ Q et∑

i=1,k di > Q. Les conditions de Khun et Tuckersont satisfaites pour

x = [d1, . . . , dk−1, Q−∑

i=1,k−1 di, 0, . . . , 0]T

λ = [p1 − pk, . . . , pk − 1− pk, 0, . . . , 0]T

µ = [0, . . . , 0, pk − pk−1, . . . , pk − pn]T

λ0 = −pk

(A.46)

qui correspond a la solution fournie par la procedure decrite dans la question precedente.

De plus, on notera que le probleme etudie consiste a minimiser une fonction lineaire sur unensemble convexe (c’est meme un probleme de programmation lineaire) qui de plus est ferme,ce qui etablit que les conditions necessaires du premier ordre sont egalement suffisantes.

Page 141: Notes de cours d'analyse numérique et d'optimisation continue ...

ANNEXE A. MASTER SISEA CORRIGE DES EXAMENS (PRINTEMPS 2006 A 2011) 140

janvier 2007

I On considere le probleme opt 2xy

x2 + y2 = 1.(A.47)

1) Chercher les solutions des conditions du premier ordre

Le lagrangien s’ecrit :L(x, y, λ) = 2xy + λ(x2 + y2 − 1). (A.48)

Les conditions necessaires du premier ordre s’ecrivent :

∇(x,y)L =

(2y + 2λx2x+ 2λy

)=

(00

)(A.49)

(A.49)⇒ (y = −λx x = −λy)⇒ y = λ2y. Donc λ ∈ −1, 1.

Il apparaıt finalement que les conditions (A.49) se traduisent par λ = ∓1 et x = ±y. Enadjoignant la condition x2 + y2 = 1, on trouve finalement comme solutions des conditions dupremier ordre

(x, y, λ) ∈

(1√2,

1√2,−1), (

−1√2,−1√

2,−1), (

1√2,−1√

2, 1), (

−1√2,

1√2, 1)

. (A.50)

2) Avec les conditions du second ordre, trouver la nature des points precedents.

∇2(x,y)L = 2

(λ 11 λ

)(A.51)

Si λ = −1, comme l’espace tangent au domaine des contraintes aux points ±( 1√2, 1√

2) est en-

gendre par t = (1,−1), la restriction de la matrice hessienne a cet espace tangent en ces pointsest donnee par

2(1 −1

)(λ 11 λ

)(1−1

)= 4(λ− 1) = −8 < 0.

Donc en (− 1√2,− 1√

2) et en ( 1√

2, 1√

2) le probleme possede un maximum local (qui est global

puisque ces maxima locaux ont la meme valeur).

Si λ = 1, comme l’espace tangent au domaine des contraintes aux points ±( 1√2,− 1√

2) est en-

gendre par t = (1, 1), la restriction de la matrice hessienne a cet espace tangent en ces pointsest donnee par

2(1 1

)(λ 11 λ

)(11

)= 4(λ+ 1) = 8 > 0.

Donc en (− 1√2, 1√

2) et en ( 1√

2,− 1√

2) le probleme possede un minimum local (qui est global

puisque ces minima locaux ont la meme valeur).

Page 142: Notes de cours d'analyse numérique et d'optimisation continue ...

ANNEXE A. MASTER SISEA CORRIGE DES EXAMENS (PRINTEMPS 2006 A 2011) 141

II Trouver le rectangle de perimetre donne de surface maximale. Justifier la reponse

On note C le perimetre, et x et y la longueur des cotes du rectangle. Le probleme s’ecrit encoremaxxy

2(x+ y) = Cx ≥ 0y ≥ 0.

(A.52)

Notons que les contraintes x ≥ 0 et y ≥ 0 sont necessairement inactives puisque sinon xy = 0.Or, la surface maximale ne peut pas valoir 0 puisque xy > 0 des lors que x > 0 et y > 0 etque par exemple x = y = C/4 definit un point admissible pour lequel xy > 0. Il suffit donc deresoudre le probleme

maxxy

2(x+ y) = C(A.53)

et de se restreindre aux solutions de composantes positives. Pour ce dernier probleme,

∇L(x, y, λ) = (y + 2λ, x+ 2λ)T = (0, 0)T ,

soit x = y = −2λ. La contrainte 2(x + y) = C et la positivite de x et de y conduisent alorsa x = y = C/4. La seule solution possible est donc un carre de cote C/4. Cette conditionnecessaire est egalement suffisante d’apres le theoreme de Weierstrass puisque l’ensemble descontraintes (2(x + y) = C, x ≥ 0, y ≥ 0) est un ferme borne (segment ferme borne) et que lafonction (x, y)→ xy est continue.

III On considere le probleme d’optimisation

min(x− 94)2 + (y − 2)2

x+ y ≤ 6y − x2 ≥ 0x ≥ 0y ≥ 0.

(A.54)

1) Montrer que les conditions de Khun et Tucker sont verifiees en (3/2,9/4).

Page 143: Notes de cours d'analyse numérique et d'optimisation continue ...

ANNEXE A. MASTER SISEA CORRIGE DES EXAMENS (PRINTEMPS 2006 A 2011) 142

Les conditions de Khun et Tucker s’ecrivent

∇(x,y)L(x, y, (µi)i=1,4) = ∇(x,y)

(x− 9

4)2 + (y − 2)2 + µ1(x+ y − 6) + µ2(x2 − y)− µ3x− µ4y

µ1(x+ y − 6) = µ2(x2 − y) = µ3x = µ4y = 0.µi ≥ 0, i = 1, . . . , 4.

En (3/2, 9/4), on trouve que µ1 = µ3 = µ4 = 0 et x2 − y = 0. On obtient ainsi les conditionsnecessaires suivantes :

∇(x,y)L(x, y, (0, µ2, 0, 0)) =

[2(x− 9

4) + 2xµ2

2(y − 2)− µ2

]=

[00

].

Pour (x, y, µ1, µ2, µ3, µ4) = (32 ,

94 , 0,

12 , 0, 0), les conditions necessaires du premier ordre sont

effectivement satisfaites.

2) Interpreter graphiquement les conditions de Khun et Tucker

Graphiquement, on voit qu’au point (3/2, 9/4) la courbe y = x2 est tangente a la courbe deniveau a la fonction (x, y) → (x − 9

4)2 + (y − 2)2 qui passe par ce point, c’est a dire au cerclecentre sur (9

4 , 2) qui passe par (3/2, 9/4). En d’autre termes, (3/2, 9/4) est la projection de (94 , 2)

sur l’ensemble convexe ferme defini par les contraintes. On sait que cette projection existe et estunique. Enfin, le probleme etudie est celui de la minimisation d’une fonction strictement convexesur un ensemble de contraintes convexes, ce qui etablit ici le caractere suffisant de la solutiontrouvee a partir des conditions necessaires.

3) Verifier les CNS du second ordre en ce point.

Pour µ2 = 1/2,

∇2(x,y)L(x, y, (µi)i=1,4) =

(1 + 2µ2 0

0 2

)= 2I > 0,

donc la condition suffisante du second ordre est egalement verifiee en (3/2, 9/4).

4) Demontrez que ce point est l’unique minimum

Cet aspect a ete justifie a la fin de la reponse a la question 2.

Page 144: Notes de cours d'analyse numérique et d'optimisation continue ...

ANNEXE A. MASTER SISEA CORRIGE DES EXAMENS (PRINTEMPS 2006 A 2011) 143

IV Soit le probleme max(1/3)

∑i=1,n x

3i∑

i=1,n xi = 0∑i=1,n x

2i = n

(A.55)

On note λ et µ les multiplicateurs de Lagrange respectifs.

1) Cherchez la valeur de λ et exprimez le critere et les inconnues en fonction de µ.

On a

∇Lx(x, λ, µ) =

x21...x2n

+ λ1I + 2µx

avec 1I = (1, . . . , 1)T . Comme∑

i=1,n xi = 0, on en deduit que 1IT∇Lx(x, λ, µ) = n + nλ = 0,

soit λ = −1. De plus, xT∇Lx(x, λ, µ) =∑

i=1,n x3i + 2µn = 0, donc

∑i=1,n x

3i = −2µn.

2) Reecrire les contraintes en fonction de µ et deduire du critere en fonction de µ le choix desxi qui optimise le critere, a une permutation pres.

La condition ∇Lx(x, λ, µ) = 0, se reecrit

x2i + 2µxi − 1 = 0.

On trouve xi = −µ + εi√µ2 + 1, avec ε = ±1. Comme les xi ainsi definis verifient

∑i x

2i = n

des lors que∑

i=1,n xi = 0, le probleme se reecrit finalementminµ

xi = −µ+ εi√µ2 + 1

εi = ±1∑i=1,n xi = 0

(A.56)

Les contraintes conduisent a∑

i εi = nµ(√

1 + µ2)−1 qui peut prendre les valeurs entieres

−n,−n+ 2,−n+ 4, . . . , n. Comme la fonction µ→ nµ(√

1 + µ2)−1 est croissante et que µ vautµ = ±(

∑i εi)/

√n2 − (

∑i εi)

2 et n’est donc defini que pour∑

i εi ∈ −n+2,−n+4, . . . , n−2, le

minimum possible pour µ est atteint pour nµ(√

1 + µ2)−1 = −n+2, soit µ = −(n−2)/(2√n− 1).

Alors, n− 1 des coefficients xi sont egaux a −µ−√µ2 + 1 = −µ− (nµ)/(2− n) = −1/

√n− 1

et le coefficient restant est egal a −µ+√µ2 + 1 =

√n− 1.

3) Confirmer la solution en verifiant les conditions suffisantes du second ordre.

La matrice hessienne du lagrangien est une matrice diagonale D de i-eme terme diagnal 2xi+2µ =2εi√µ2 + 1. Pour fixer les idees on supposera sans perte de generalite que ε1 = . . . = εn−1 = −1

et εn = 1. L’espace tangent aux contraintes est defini par la normale aux gradients des fonctionsde contrainte. Ces derniers valent respectivement 1I et x et definissent l’espace orthogonal al’espace tangent aux surfaces de contrainte. Comme le n-eme vecteur de la base canonique en

Page 145: Notes de cours d'analyse numérique et d'optimisation continue ...

ANNEXE A. MASTER SISEA CORRIGE DES EXAMENS (PRINTEMPS 2006 A 2011) 144

est le vecteur propre associe a la valeur propre positive −2√µ2 + 1 et que en ∝ 1√

n−11I+x, il est

clair que l’espace tangent aux contraintes reside dans l’espace engendre par les valeurs propresnegatives de la matrice et donc que la restriction de la matrice hessienne du Lagrangien auxvecteurs de l’espace tangent aux contraintes est une matrice strictement negative. Il en resulteque l’on a bien trouve un maximum du probleme pose.

Page 146: Notes de cours d'analyse numérique et d'optimisation continue ...

ANNEXE A. MASTER SISEA CORRIGE DES EXAMENS (PRINTEMPS 2006 A 2011) 145

janvier 2006

I Diviser le nombre 8 en deux reels positifs x et y de facon a maximiser xy(x− y).

Le probleme s’ecrit encore

max xy(x− y)

x+ y = 8x ≥ 0y ≥ 0

(A.57)

Notons que, par exemple, (x, y) = (5, 3) est un point admissible pour lequel xy(x−y) > 0. Donca l’optimum les contraintes d’inegalite ne sont pas actives (on aurait sinon xy(x − y) = 0). Ilsuffit donc d’etudier les conditions necessaires du premier ordre sans les contraintes de positivite.Dans ces conditions, le lagrangien s’ecrit,

L(x, y, λ) = xy(x− y) + λ(x+ y − 8) (A.58)

et les conditions necessaires du premier ordre s’ecrivent

∇xyL(x, y, λ) =

(2xy − y2 + λx2 − 2xy + λ

)= 0. (A.59)

La solution pour laquelle x > 0 et y > 0 est (x, y, λ) = (4(1 + 1/√

3), 4(1− 1/√

3),−32/√

3).

Le domaine des contraintes x + y = 8, x ≥ 0 y ≥ 0 est compact et le critere xy(x − y)est continu ce qui assure l’existence d’une solution (theoreme de Weierstrass). (x, y) = (4(1 +1/√

3), 4(1− 1/√

3)) est donc la solution du probleme.

II Soit le domaine de points admissibles de R2 defini par les trois contraintes

D =

(x, y) ∈ R2|x2 + y2 ≤ 4, x2 + 3(y − 1)2 ≤ 3, x ≥ (

2

3y − 1)2 − 1

(A.60)

Etudier la regularite des points suivants : X1 = (0, 0), X2 = (0, 1), X3 = (0, 2)

Page 147: Notes de cours d'analyse numérique et d'optimisation continue ...

ANNEXE A. MASTER SISEA CORRIGE DES EXAMENS (PRINTEMPS 2006 A 2011) 146

En X1 les contraintes 2 et 3 sont actives et les gradients a ces contraintes valent(2x

6(y − 1)

)=

(0−6

)et

(−1

(4/3)(2y − 1)

)=

(−1−4/3

). (A.61)

Ces deux vecteurs forment une famille libre donc le point est regulier.

X2 est un point interieur du domaine des contraintes ou toutes les contraintes sont inactives.Donc X2 est un point regulier.

En X3 les contraintes 1 et 2 sont actives et les gradients a ces contraintes valent(2x2y

)=

(04

)et

(−2x

6(y − 1)

)=

(06

). (A.62)

Ces deux vecteurs forment une famille liee, donc le point n’est pas regulier.

III Soit le probleme d’optimisation suivant :

max y

(3− x)3 − (y − 2) ≥ 03x+ y ≥ 92x− 3y ≥ 0

(A.63)

1) Resolvez le probleme graphiquement.

Graphiquement on trouve comme solution (x, y) = (3, 2)

Ecrivez les conditions de Khun et Tucker et trouvez le point qui les satisfait en faisant le bonchoix des contraintes actives et inactives

Le lagrangien s’ecrit

L(x, y, µ) = y + µ1((3− x)3 − (y − 2)) + µ2(3x+ y − 9) + µ3(2x− 3y) (A.64)

avec µi ≥ 0 (i = 1, 2, 3).

Page 148: Notes de cours d'analyse numérique et d'optimisation continue ...

ANNEXE A. MASTER SISEA CORRIGE DES EXAMENS (PRINTEMPS 2006 A 2011) 147

L’etude graphique conduit a choisir les contraintes 1 et 3 actives et la deuxieme inactive. Lesconditions de Khun et Tucker s’ecrivent alors

∇xyL(x, y, µ) =

(−3µ1(3− x)2 + 3µ3

1− µ1 − 3µ3

)= 0

(3− x)3 − (y − 2) = 0µ2 = 02x− 3y = 0

(A.65)

La solution des conditions necessaires du premier ordre est donnee par (x, y, µ) = (3, 2, 1, 0, 0).

Le domaine des contraintes etant compact et le critere continu, on sait que le probleme admet unesolution. De plus, en posant y = x−3 les contraintes 1 et 3 deviennent respectivement y ≤ 2+u3

et y ≤ 2− (2/3)u. On notera que la premiere condition entraıne y ≤ 2 pour u ≤ 0 et la secondey ≤ 2 pour u ≥ 0. On a donc necessairement y ≤ 2 dans tout le domaine des contraintes, ce quietablit que (x, y) = (3, 2) fournit bien la valeur maximale de y dans le domaine des contraintes.

3) Repetez l’analyse en enlevant la derniere contrainte. Cherchez explicitement tous les pointssatisfaisant les conditions necessaires du premier ordre. Commentez.

Ici le domaine n’est pas borne. Ainsi, par exemple, les points de coordonnees (x = 3 − y/3, y)appartiennent tous au domaine pour y > 3 (il est alors clair que (3−x)3−(y−2) ≥ (y/3)3−y+2 >0). Donc le critere n’est pas superieurement borne et le probleme n’a pas de solution finie.

Le lagrangien s’ecrit

L(x, y, µ) = y + µ1((3− x)3 − (y − 2)) + µ2(3x+ y − 9) (A.66)

Page 149: Notes de cours d'analyse numérique et d'optimisation continue ...

ANNEXE A. MASTER SISEA CORRIGE DES EXAMENS (PRINTEMPS 2006 A 2011) 148

avec µi ≥ 0 (i = 1, 2) et les conditions de Khun et Tucker s’ecrivent∇xyL(x, y, µ) =

(−3µ1(3− x)2 + 3µ2

1− µ1 + µ2

)= 0

µ1((3− x)3 − (y − 2)) = 0µ2(3x+ y − 9) = 0

(A.67)

Les deux contraintes sont simultanement actives en (x, y, µ1, µ2) = (5,−6, 1/5, 6/5). Ce pointrepresente le minimum global du critere. En (x, y, µ1, µ2) = (3, 2, 1, 0) seule la premiere contrainteest active On ne peut pas avoir une seule contrainte active en un autre point car alors lesequations ∇xyL(x, y, µ) = 0 sont incompatibles entre elles. Le point (x, y) = (2, 3) est singuliermais ne correspond pas une solution du probleme comme on l’a vu. Les points interieurs dudomaine ne satisfont pas aux conditions de Khun et Tucker.

IV Soit

C(x, h) =1

2(ax− b)2 + h|x|, h ≥ 0 (A.68)

o a et b sont des reels positifs. On demande de trouver x∗(h) le minimum de C(x, h) en fonctionde h

Pour x 6= 0,

C ′(x, h) =d

dxC(x, h) = a(ax− b) + hsign(x). (A.69)

Sur R− on a toujoursC ′(x, h) = a(ax− b)− h < 0. (A.70)

Sur R+, C ′(x, h) = 0 pour

x∗(h) =ab− ha2

, si ab > h, (A.71)

sinon, on a toujours C ′(x, h) > 0.

Comme C(x, h) est continue, il apparaıt donc que le minimum est obtenu en 0 si ab < h et enx = ab−h

a2si ab > h.

Page 150: Notes de cours d'analyse numérique et d'optimisation continue ...

Bibliographie

[1] G. Allaire, Analyse numerique et optimisation, Editions de l’Ecole Polytechnique, 2005.

[2] J.M. Arnaudies, H. Fraysse, Cours de Mathematiques ; T2 : analyse, T3 : Complementsd’analyse, Dunod, 1989.

[3] D.P. Bertsekas, Nonlinear programming, Athena Scientific, 2nd nedition, 2003.

[4] S. Boyd, L. Vandenberghe, Convex Optimization, Cambridge University Press, 2004.

[5] G. Cohen, Convexite et optimisation, polycopie de cours ENPC-INRIA, 2000-2006. www-rocq.inria.fr/metalau/cohen/documents/Ponts-cours-A4-NB.pdf

[6] P.G. Ciarlet, Introduction a l’Analyse Numerique Matricielle et a l’Optimisation, Masson,1982.

[7] J.C. Culioli, Introduction a l’optimisation, 2eme Ed., Ellipses, 2012.

[8] D.G. Luenberger, Linear and nonlinear programming, 2nd edition, Kluwer, 2003.

[9] M. Minoux, Programmation Mathematique, Theorie et Algorithmes, Tome 1, Dunod, 1983.

[10] R. Rockafellar Convex Analysis, Princeton Univ. Press, 1972.

149