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

L'analyse numérique et l'optimisation constituent deux aspects importants et souvent complémentaires des mathématiques de ... Ce cours vise d'abord `a...

190 downloads 406 Views 821KB Size
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

Table des mati` eres

1 Introduction

8

2 Un exemple introductif

13

I

20

Analyse num´ erique matricielle

3 Rappels sur les matrices et les syst` emes d’´ equations lin´ eaires

21

3.1

Applications lin´eaires et matrices . . . . . . . . . . . . . . . . . . . . . . . . . . .

21

3.2

Changement de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

23

3.3

Quelques familles de matrices importantes . . . . . . . . . . . . . . . . . . . . . .

24

3.4

D´eterminant 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

Produits scalaires et normes vectorielles et matricielles . . . . . . . . . . . . . . .

28

3.5.1

Projection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

29

Notions g´en´erales sur les algorithmes num´eriques . . . . . . . . . . . . . . . . . .

29

3.6.1

29

3.5

3.6

Complexit´e algorithmique . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

` TABLE DES MATIERES 3.6.2

Conditionnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4 Syst` emes d’´ equations sur-d´ etermin´ es et sous-d´ etermin´ es

2 30

32

4.1

Syst`emes sur-d´etermin´es . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

32

4.2

Syst`emes sous-d´etermin´es . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

33

4.3

Cas g´en´eral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

34

4.4

Matrices blocs et r´esolution partielle des syst`emes lin´eaires . . . . . . . . . . . . .

35

5 R´ esolution directe des syst` emes lin´ eaires 5.1

5.2

36

M´ethodes de Gauss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

37

5.1.1

Principe g´en´eral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

37

5.1.2

Stabilit´e et pivot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

38

5.1.3

Coˆ ut de calcul, d´eterminant et inverse . . . . . . . . . . . . . . . . . . . .

38

5.1.4

M´ethode de Cholesky . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

39

Triangularisation par orthonormalisation . . . . . . . . . . . . . . . . . . . . . . .

40

5.2.1

M´ethode de Householder . . . . . . . . . . . . . . . . . . . . . . . . . . . .

40

5.2.2

M´ethode des rotations de Givens . . . . . . . . . . . . . . . . . . . . . . .

41

5.2.3

M´ethode de Gram-Schmidt . . . . . . . . . . . . . . . . . . . . . . . . . .

42

6 R´ esolution it´ erative des syst` emes lin´ eaires

43

7 D´ ecompositions en valeurs propres et en valeurs singuli` eres

45

7.1

Diagonalisation des matrices sym´etriques : la m´ethode de Jacobi . . . . . . . . .

46

7.2

Forme Hessenberg des matrices carr´ees . . . . . . . . . . . . . . . . . . . . . . . .

47

7.3

D´ecomposition en valeurs propres : le cas g´en´eral . . . . . . . . . . . . . . . . . .

49

7.3.1

49

Aspects algorithmiques . . . . . . . . . . . . . . . . . . . . . . . . . . . .

` TABLE DES MATIERES 7.3.2 7.4

3

Lien avec la d´ecomposition de Jordan . . . . . . . . . . . . . . . . . . . .

49

D´ecomposition en valeurs singuli`eres . . . . . . . . . . . . . . . . . . . . . . . . .

50

7.4.1

51

R´ealisation de la d´ecomposition en valeurs singuli`eres . . . . . . . . . . .

II Introduction aux op´ erateurs lin´ eaires

55

8 Introduction

56

9 Espaces de Hilbert

57

9.1

D´efinition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

57

9.1.1

produit scalaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

57

9.1.2

Espace de Hilbert

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

57

9.2

Th´eor`eme de projection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

58

9.3

Bases orthonorm´ees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

59

9.4

S´eparabilit´e et isom´etrie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

60

9.4.1

S´eparabilit´e et bases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

60

9.4.2

Projection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

61

9.4.3

Isom´etrie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

61

10 Op´ erateurs lin´ eaires

III

63

10.1 Norme d’un op´erateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

63

10.2 Repr´esentation matricielle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

64

Interpolation et int´ egration

11 Interpolation et int´ egration

68 69

` TABLE DES MATIERES

IV

4

11.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

69

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

69

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

69

11.2.2 Le ph´enom`ene de Runge . . . . . . . . . . . . . . . . . . . . . . . . . . . .

70

11.3 Int´egration de Newton-Cotes . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

71

11.4 M´ethode de Gauss-Legendre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

72

11.5 M´ethode de Clenshaw-Curtis . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

74

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

75

Optimisation

76

12 Introduction

77

13 El´ ements de calcul diff´ erentiel

80

13.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

80

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

80

13.3 D´erivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

81

13.3.1 Application d´eriv´ee . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

81

13.3.2 D´erivation pour f d´efinie sur des espaces produits . . . . . . . . . . . . .

81

13.3.3 Composition des applications d´erivables . . . . . . . . . . . . . . . . . . .

82

13.4 D´eriv´ee seconde . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

82

13.5 Formules de Taylor et th´eor`eme des fonctions implicites . . . . . . . . . . . . . .

83

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

83

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

84

14 Optimisation sans contraintes : crit` eres d’optimalit´ e

85

` TABLE DES MATIERES

5

14.1 D´efinitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

85

14.1.1 Optimalit´e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

85

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

86

14.2 Conditions n´ecessaires d’optimalit´e . . . . . . . . . . . . . . . . . . . . . . . . . .

86

14.3 Conditions suffisantes d’optimalit´e . . . . . . . . . . . . . . . . . . . . . . . . . .

88

14.4 Convexit´e et optimalit´e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

88

14.4.1 D´efinitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

88

14.4.2 Caract´erisations de la convexit´e . . . . . . . . . . . . . . . . . . . . . . . .

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 M´ethode de relaxation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

94

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

94

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

95

15.4 M´ethode de Newton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

96

15.4.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

96

15.4.2 Autre interpr´etation dans le cas scalaire . . . . . . . . . . . . . . . . . . .

97

15.4.3 M´ethodes 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 conjugu´e . . . . . . . . . . . . . . . . . . . . . . . . . .

99

` TABLE DES MATIERES 16 Optimisation sous contraintes : crit` eres d’optimalit´ e

6 101

16.1 Le th´eor`eme des fonctions implicites . . . . . . . . . . . . . . . . . . . . . . . . . 101 16.2 Points r´eguliers et espace tangent . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 16.2.1 Contraintes d’´egalit´e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 16.2.2 Contraintes d’´egalit´e et d’in´egalit´e . . . . . . . . . . . . . . . . . . . . . . 103 16.3 conditions d’optimalit´e en pr´esence de contraintes d’´egalit´e . . . . . . . . . . . . 103 16.3.1 Condition n´ecessaire d’optimalit´e . . . . . . . . . . . . . . . . . . . . . . . 103 16.4 Conditions d’optimalit´e en pr´esence de contraintes d’´egalit´e et d’in´egalit´e . . . . 107 16.4.1 Condition n´ecessaire du premier ordre . . . . . . . . . . . . . . . . . . . . 107 16.4.2 Conditions du second ordre . . . . . . . . . . . . . . . . . . . . . . . . . . 108 16.5 Lagrangien, points selles, et dualit´e . . . . . . . . . . . . . . . . . . . . . . . . . . 109 16.5.1 Points selles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 16.5.2 Probl`emes primal et dual . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 16.6 Optimisation et calcul formel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

17 Optimisation sous contraintes : algorithmes

114

17.1 Extension des m´ethodes sans contraintes . . . . . . . . . . . . . . . . . . . . . . . 114 17.1.1 M´ethode de relaxation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 17.1.2 Th´eor`eme de projection et gradient projet´e . . . . . . . . . . . . . . . . . 114 17.1.3 M´ethode de point int´erieur . . . . . . . . . . . . . . . . . . . . . . . . . . 115 17.1.4 M´ethode de p´enalisation externe . . . . . . . . . . . . . . . . . . . . . . . 116 17.1.5 M´ethode d’Uzawa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

18 Programmation lin´ eaire

118

18.1 Le probl`eme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

` TABLE DES MATIERES

7

18.2 Bases r´ealisables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 18.2.1 Solutions de base r´ealisables optimales . . . . . . . . . . . . . . . . . . . . 119 18.3 Changement de base r´ealisable . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 18.4 algorithme du simplexe

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120

18.5 Programmation lin´eaire et dualit´e . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 18.5.1 Probl`eme primal et probl`eme dual . . . . . . . . . . . . . . . . . . . . . . 121 18.6 Equivalence du probl`eme primal et du probl`eme dual . . . . . . . . . . . . . . . . 121 18.7 Th´eor`eme de dualit´e pour la programmation lin´eaire . . . . . . . . . . . . . . . . 122

A Master SISEA Corrig´ e des examens (printemps 2006 ` a 2011)

126

Chapitre 1

Introduction La version actuelle de ces notes de cours r´esulte d’´evolutions progressives du document depuis une dizaine d’ann´ee. L’analyse num´erique et l’optimisation constituent deux aspects importants et souvent compl´ementaires des math´ematiques de l’ing´enieur. Une connaissance de notions de base dans ces deux domaines est indispensable pour une ing´enierie de bon niveau. Les d´eveloppements rapides de l’informatique ont fait de ces branches des math´ematiques des outils universellement utilis´es dans l’industrie et les services. De nombreux logiciels utilisent divers algorithmes performants d’analyse num´erique et d’optimisation, mais avant de pouvoir les utiliser, il faut d´ej`a avoir conscience de leur existence, des probl`emes qu’ils peuvent r´esoudre, avec leurs performances et leurs limitations. Avant mme cela, il faut savoir mettre en forme le probl`eme ´etudi´e sous la forme math´ematique appropri´ee `a la mise 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 impl´ementations sp´ecifiques qui peuvent concerner par exemple la mise en oeuvre sur des processeurs de traitement de signal ou pour des adaptations des algorithmes dans le cadre d’activit´es de R&D, d’ˆetre capable de ’d´ecortiquer’ le fonctionnement d’un algorithme, ce qui suppose un minimum de familiarit´e 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 test lors des travaux pratiques, un certain nombre de mthodes standard est prcis dans le polycopi. Les codes fournis visent en particulier montrer que souvent l’implmentation informatique conduit un code simple et concis. Ce cours vise d’abord ` a rappeler quelques notions ´el´ementaires d’analyse num´erique matricielle et d’optimisation et ` a donner les grandes lignes de m´ethodes classiques importantes pour les probl`emes d’ing´enierie courants. La partie relative aux matrices est compl´et´ee par une partie d’introduction aux op´erateurs lin´eaires qui ´etendent naturellement en dimension infinie les notions de fonctions lin´eaires et de matrice. Cette derni`ere partie est encore incompl`ete et sera d´evelopp´ee dans les versions ult´erieures du polycopi´e.

8

CHAPITRE 1. INTRODUCTION

9

On pr´esente ´egalement ici quelques notions de base sur l’interpolation polynomiale des fonctions et leur int´egration num´erique qui constituent des outils standards d’ing´enierie. Pour l’analyse num´erique matricielle, on envisagera surtout les outils classiques de r´esolution des syst`emes d’´equations lin´eaires et on donnera quelques indications sur la diagonalisation des matrices. Pour ce qui concerne l’optimisation, on indiquera les m´ethodes de recherche d’optima `a utiliser selon les propri´et´es des crit`eres ` a optimiser et la nature des contraintes. Pr´ecisons maintenant un peu plus la nature des probl`emes que l’on va envisager. Commen¸cons par reproduire ici la d´efinition de l’analyse num´erique fournie par l’encyclop´edie en ligne Wikipedia : “l’analyse num´erique est l’´etude des algorithmes permettant de r´esoudre les probl`emes de math´ematiques continues (distingu´ees des math´ematiques discr`etes). Cela signifie qu’elle s’occupe principalement de r´epondre num´eriquement ` a des questions `a variable r´eelle ou complexe comme l’alg`ebre lin´eaire num´erique sur les champs r´eels ou complexes, la recherche de solution num´erique d’´equations diff´erentielles et d’autres probl`emes li´es survenant dans les sciences physiques et l’ing´enierie”. Comme on l’a d´ej` a indiqu´e plus haut, on se limite essentiellement ici `a l’analyse num´erique matricielle. Le premier but de ce cours est de mettre en ´evidence l’int´erˆet de la mise en forme matricielle de probl`emes classiques rencontr´es en traitement statistique de l’information. L’´etude de la r´esolution exacte ou approch´ee des syst`emes lin´eaires d’´equations sera l’occasion de pr´esenter un certain nombre de r´esultats sur la d´ecomposition des matrices, utiles `a l’´etude de nombreux probl`emes. On distinguera, comme c’est g´en´eralement le cas dans ce genre d’expos´e les m´ethodes directes qui fournissent une solution au prix d’un nombre limit´e fix´e d’op´erations des m´ethodes it´eratives qui fournissent une solution approch´ee `a chaque it´eration, la solution exacte n’´etant g´en´eralement obtenue qu’asymptotiquement. On s’int´eressera ´egalement au probl`eme de la d´ecomposition en valeurs propres des matrices, qui n’a pas de solution num´erique exacte en g´en´eral puisqu’il s’apparente au probl`eme de recherche des racines d’un polynˆome (en l’occurence le polynˆome caract´eristique de la matrice). Dans le domaine de l’int´egration num´erique, les techniques g´en´eralement envisag´ees visent ` a construire des approximations des int´egrales par l’int´egration d’interpolants polynomiaux des fonctions `a int´egrer. Cela conduit ` a des formules de quadrature de la forme Z

b

f (x)dx ≈ a

n X

wk f (xk )n,

(1.1)

k=1

o` u le choix des noeuds xk et les poids wk de la quadrature conditionnent la pr´ecision de la quadrature. On pr´esentera quelques solutions classiques `a ce problme. Dans le cadre de l’optimisation, on s’int´eressera ici essentiellement `a des probl`emes d’optimisation continue, ` a variables r´eelles ou complexes et de forme g´en´erale  minx f (x) (1.2) fi (x) ≤ bi i = 1, . . . , m qui consiste ` a rechercher les valeurs de x qui minimisent f (x) dans l’ensemble des contraintes U = {x; fi (x) ≤ bi i = 1, . . . , m}.

CHAPITRE 1. INTRODUCTION

10

Notons ici que la recherche de la solution d’un probl`eme d’optimisation d’un crit`ere fonction d’une variable vectorielle peut souvent faire appel aux outils de l’analyse num´erique matricielle. Consid´erons en effet l’exemple simple suivant : en l’absence de contrainte, un probl`eme d’optimisation quadratique du type f (x) =k Ax − b k, o` u k x k2 = xT x est la norme euclidienne, le minimum du crit`ere est donn´e par la r´esolution du syst`eme d’´equations lin´eaires (AT A)x = AT b. La recherche du vecteur x par ce crit`ere fournit une approximation du vecteur b sous la forme Ax et est connue sous le nom de m´ ethode des moindres carr´ es. Cependant, tous les probl`emes d’optimisation ne se ram`enent pas `a des probl`emes d’analyse num´erique matricielle et la th´eorie de l’optimisation math´ematique recense des classes de probl`emes importants pour lesquels on sera en mesure de fournir des r´esultats th´eoriques en terme de conditions ncessaires et/ou suffisantes sur l’existence de solutions ainsi que des algorithmes pratiques performants permettant de les calculer. Ces notes de cours, actualis´ees depuis 2006, sont essentiellement constitu´ees de deux parties qui traitent respectivement de d’analyse num´erique matricielle (et plus particuli`erement de la r´esolution des syst`emes d’´equations lin´eaires) et d’optimisation, avec un accent particulier mis sur l’optimisation convexe dont on a ´evoqu´e l’importance ci dessus. Pour ce qui concerne les pr´erequis, ce cours suppose acquis un niveau de math´ematiques g´en´erales bac+2. Par ailleurs, des connaissances de bases en probabilit´es et en statistiques seront n´ecessaires pour appr´ehender certains des exemples pr´esent´es. Les r´esultats sont souvent justifi´es de mani`ere succinte et on pourra trouver des compl´ements utiles dans la litt´erature et sur le WEB. Chacune des parties analyse num´erique et optimisation poss`ede sa propre bibliographie. Aussi, les num´eros de r´ef´erence correspondent t’ils `a la bibliographie de la partie concern´ee. Pour ce qui concerne la partie relative `a l’analyse num´erique, la r´ef´erence [2] constitue une bonne r´ef´erence en fran¸cais dans laquelle les principaux algorithmes d’analyse num´erique matricielle sont expliqu´es. La r´ef´erence [3] constitue un outil tr`es utile pour l’ing´enieur qui doit impl´ementer des algorithmes. De nombreuses m´ethodes sont d´etaill´ees et les impl´ementations en pseudo-code sont fournies. Notons que la r´ef´erence [2] constitue une bonne introduction ` a l’analyse num´erique de mˆeme qu’`a l’optimisation, tout comme la r´ef´erence [1]. Tout comme pour l’analyse num´erique, il existe de nombreux ouvrages g´en´eralistes et d’excellente qualit´e sur l’optimisation, tels que [7], [8] ou [9]. Pour le cas important de l’optimisation convexe, on pourra par exemple se r´ef´erer `a [3], [4] ou [5].

CHAPITRE 1. INTRODUCTION

Notations et Abr´eviations

|a|, |M|

module d’un nombre complexe, d´eterminant d’une matrice

vT , MT

transpos´e d’un vecteur, d’une matrice

a∗ , v∗ , M∗

valeur conjugu´ee d’un scalaire, d’un vecteur, ou d’une matrice

vH , MH

valeur transpos´ee et conjugu´e d’un vecteur ou d’une matrice

< x, y >

produit scalaire de x et de y

T r(M)

trace d’une matrice

sign(a)

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

δa,b

δa,b = 1 si a = b, et 0 sinon (symbˆole de Kronecker)

[v]i , [M]ij

´el´ement d’indices i, ou (i, j), d’un vecteur ou d’une matrice

kMk

norme de M (la norme choisie est d´efinie par le contexte)

Re[z], Im[z]

partie r´eelle, 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, r´eels, et complexes

D

disque unit´e ouvert

Ck

ensemble des fonctions k fois d´erivables, de d´eriv´ees continues

C ∞ (K)

ensemble des fonctions infiniment d´erivables, de support compact et contenu dans K

L(X, Y ), L(X)

ensembles des applications lin´eaires continues de X dans Y , de X dans X

L(X, R) = X 0

espace dual de X

L2 (X, Y )

applications bilin´eaires continues bijectives de X × X dans Y

11

CHAPITRE 1. INTRODUCTION Isom(X, Y )

applications lin´eaires continues bijectives de X dans Y , et d’inverses continues (isom´etries de X dans Y )

ε(h)

fonction telle que limkhk→0 ε(h) = 0

O

ensemble ouvert

V

espace vectoriel norm´e

Vx

voisinage du point x

B(a, r)

boule ouverte de centre a et de rayon r

B(Rn )

tribu bor´elienne de Rn

vect{(Xi )i∈I }

espace vectoriel engendr´e par les combinaisons lin´eaires finies des Xi

vect{(Xi )i∈I }

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

1IA

fonction indicatrice de l’ensemble A

12

Chapitre 2

Un exemple introductif Dans ce chapitre, on pr´esente un exemple introductif qui illustre un certain nombre de notions sur lesquelles on reviendra dans les chapitres suivants. On y pr´esente, sous la forme d’un exercice un exemple d’application qui met en oeuvre un certain nombre de concepts d’analyse num´erique matricielle et d’optimisation dans le cadre du traitement d´eterministe ou statistiques de signaux. On consid`ere une ´equation de convolution de la forme y = h ∗ x, o` u h repr´esente la r´eponse impulsionnelle d’un filtre, x son entr´ee et y Rsa sortie. L’chantillonnage de l’quation intgrale T de convolution y = h ∗ x donne par y(t) = 0 h h(u)x(tP− u)du (Th est la dure de la rponse impulsionnelle du filtre causal h) conduit l’criture yn = k=0,L hk xn−k , o xn = x(nT ) et hn = T −1 h(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 mˆeme intervalle de temps, c’est ` a dire l’observation de yn , . . . , yn+N . Question 1 Ecrivez la relation matricielle qui lie le vecteur observ´e y = [yn , . . . , yn+N ]T ` a l’entr´ee x et v´erifiez que du fait de l’´etalement temporel introduit par le filtrage, elle fait intervenir le vecteur [xn−L , . . . , xn , . . . , xn+N ]T . Cette relation matricielle est dite sous-d´etermin´ee car elle fait intervenir plus d’inconnues que d’´equations. Indiquez la forme g´en´erale de l’ensemble des solutions pour x = [xn , . . . , xn+N ]T en montrant qu’on peut la param´etrer par xn−L , . . . , xn . (Il s’agit d’un cas particulier d’un r´esultat plus g´en´eral connu sous le nom de th´ eor` eme des fonctions implicites.) R´ eponse Les relations de convolution s’´ecrivent X yn+k = hj xn+k−i , j=0,L

13

CHAPITRE 2. UN EXEMPLE INTRODUCTIF

14

pour k = 0, . . . , N . Mises sous forme matricielle, elles s’´ecrivent       xn−L hL hL−1 . . . h0 0 ... 0 yn    yn+1   0 hL hL−1 . . . h0 0 . . .     xn−L+1   ×  ..  .  ..  =  ..   .   .   . 0 xn+N 0 ... 0 hL hL−1 . . . h0 yn+N

(2.1)

Notons maintenant que dans un syst`eme d’´equations g´en´eral de la forme y = Ax o` u A a l lignes et c colonnes, on peut ´ecrire A sous la forme A = [A1 |A2 ] o` u A1 et A2 sont de tailles respectives l × c1 et l × c2 , avec c1 + c2 = c. De mˆeme x s’´ecrit comme xT = [xT1 |xT2 ], o` u les sous vecteurs sont de tailles c1 et c2 . Il r´esulte de cette ´ecriture que l’on peut repr´esenter y sous la forme y = A1 x1 + A2 x2 . En appliquant ce principe a ` notre probl`eme, on voit que   hL hL−1 . . . h1 0 hL . . . h2        yn   .. .. xn−L   . h . . . .  yn+1  L   .     0 0 hL   ..  =   ×  ..    .    0 xn−1   yn+N  .. ..   . .  0 ... 0 (2.2) 

 h0 0 ... 0  h1 h0 0 ... 0       ..  xn  .     .  0 ... 0  + hL hL−1 . . . h0  ×  ..  0  h h . . . h 0 . . . 0 L L−1 xn+N    ..   .  0 0 ... 0 hL hL−1 . . . h0 En reformulant cette ´egalit´e sous la forme plus compacte suivante,   xn−L   y = H0  ...  + Hx,

(2.3)

xn−1 on voit que l’ensemble des vecteurs x recherch´e est de la forme   xn−L   x = H−1 [y − H0  ... ].

(2.4)

xn−1 x est bien param´etr´e par xn−L , . . . , xn−1 . Question 2 Reformulez le probl`eme dans le cas particulier o` u on suppose que xn−L = . . . = xn−1 = 0.V´erifiez qu’alors x est obtenu par la r´esolution d’un syst`eme lin´eaire d’´equations

CHAPITRE 2. UN EXEMPLE INTRODUCTIF

15

faisant intervenir une matrice triangulaire. Montrez que ce syst`eme se r´esoud simplement avec un faible coˆ ut de calcul. R´ eponse Lorsque xn−L = . . . = xn−1 = 0, la repr´esentation (2.3) prend la forme plus simple y = Hx, avec   h0 0 ... 0  h1 h0 0 ... 0      ..   .    0 ... 0  H = hL hL−1 . . . h0  0 hL hL−1 . . . h0 0 . . .     ..   . 0 0

...

0

hL hL−1 . . . h0

On voit alors que les syst`eme d’´equations se r´esoud simplement de fa¸con it´erative puisqu’on a alors xn = yn /h0 , xn+1 = [yn+1 − h1 xn ]/h0 , (2.5) .. . Pmax{k,L} xn+k = [yn+k − i=1 hi xn+k−i ]/h0 , pour k = 1, . . . , N. On voit que le calcul de x r´eclame ici de l’ordre de 1 + 2 + 3 . . . + (N + 1) multiplications, soit environ N 2 /2 op´erations. Question 3 Plus g´en´eralement, on verra dans le cours qu’une matrice carr´ee A inversible peut s’´ecrire sous la forme A = LU, o` u L et U sont respectivement triangulaire inf´erieure et triangulaire sup´erieure. V´erifiez que A est inversible si et seulement si les diagonales de L et de U ne contiennent pas de termes nuls. Dans ce cas, si L et U sont connues, indiquez comment on peut r´esoudre le syst`eme d’´equations y = Ax et donnez un ordre de grandeur du nombre d’op´erations que requiert cette r´esolution. En fait, on verra que c’est la mise en forme LU de A qui repr´esente le coˆ ut de calcul pr´epond´erant (de l’ordre de N 3 op´erations). De mˆeme, la matrice A peut s’´ecrire sous la forme A = QR, o` u Q et R sont respectivement orthogonale (c’est ` a dire que QQT = I) et triangulaire sup´erieure. L` a encore, si Q et R sont connues, indiquez comment on peut r´esoudre le syst`eme d’´equations y = Ax. R´ eponse |A| = |L| × |U| = Πi=1,N Lii Uii . A est inversible si et seulement si |A| 6= 0, c’est ` a dire 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 calcul´e en r´esolvant successivement les deux syst`emes d’´equations triangulaires y = Lz puis z = Ux, ce qui demandera environ N 2 op´erations (en ne comptant que les multiplications). De mˆeme, si A = QR avec QQT = I, on voit que QT y = Rx et l’on est simplement amen´e ` a calculer QT y, ce qui demande environ N 2 op´erations, puis `a r´esoudre le syst`eme triangulaire, soit au total 3N 2 /2 op´erations. Question 4 Reprenons notre probl`eme de d´epart et supposons que le signal x est constitu´e d’un pr´eambule, qui reproduit les derniers symboles de la s´equence xn , . . . , xn+N , c’est ` a dire que l’on

CHAPITRE 2. UN EXEMPLE INTRODUCTIF

16

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

(2.6)

Ce genre de technique est utilis´ee dans certaines m´ethodes de transmissions num´eriques, telle l’OFDM (Orthogonal Frequency Division Multiplexing). Reformulez le probl`eme sous forme matricielle et montrez que maintenant les inconnues xn , . . . , xn+N sont li´ees ` a y par une relation qui fait intervenir une matrice circulante, c’est ` a dire que chaque ligne de la matrice se d´eduit de la pr´ec´edente par une permutation circulaire. Montrez que les vecteurs propres d’une matrice circulante sont les vecteurs de la transform´ee de Fourier discr`ete, c’est ` a dire de la forme Wk = [1, e2iπk/(N +1) , e2iπ2k/(N +1) , . . . , e2iπN k/(N +1) ]T /sqrtN + 1.

(2.7)

Calculez les valeurs propres correspondantes et indiquez la forme de la d´ecomposition en valeurs propres d’une telle matrice. En d´eduire une technique simple pour calculer x. Montrez comment ces r´esultats sont li´es avec la formulation fr´equentielle de l’op´eration de convolution. R´ eponse On v´erifie facilement que l’introduction du pr´eambule syst`eme d’´equations y = Cx, avec  h0 0 ... 0 hL . . .  ..  h1 . h0 0 ... 0   .. ..  . .  hL−1 . . . h0 0 ... 0 C=  hL hL−1 . . . h 0 . .. 0   0 h h . . . h 0 0 L L−1   .. . .  . . 0

...

0

hL

hL−1

a pour effet de conduire au

h1



      hL   0  . . .    . . . h0

On observe que C est une matrice circulante : on passe d’une ligne `a l’autre de la matrice par permutation circulaire vers la droite de ses coefficients. 2iπ(n−N −1)k/(N +1) , on v´ En remarquant que e2iπnk/(N +1) erifie facilement que la t`eme compoP =e −2iπpk/(N +1) 2iπtk/(N +1) . Finalement, on voit que sante du vecteur CWk vaut [ p=0,L hp e ]e

CWk = [

X

hp e−2iπpk/(N +1) ]Wk .

(2.8)

p=0,L

P Remarquons que p=0,L hp e−2iπpk/(N +1) est la k`eme composante de la transform´ee de Fourier discr`ete du vecteur de taille N + 1 [h0 , h1 , . . . , hL , 0, . P . . , 0]T , qui est obtenu en compl´etant le ˆ ˆ = vecteur h avec N − L coefficients nuls. Notons hk = p=0,L hp e−2iπpk/(N +1) . Le vecteur h ˆ 0, h ˆ 1, . . . , h ˆ N ] repr´esente la r´eponse fr´equentielle du filtre h ´echantillonn´ee sur N + 1 points sur [h la bande d’´echantillonnage. ˆ la matrice diagonale Notons W = [W0 , . . . , WN ], la matrice de transform´ee de Fourier et diag(h) ˆ dont les termes diagonaux sont les composantes de h. On voit que les relations (2.8) conduisent `a ˆ CW = Wdiag(h),

CHAPITRE 2. UN EXEMPLE INTRODUCTIF

17

et comme W est une matrice unitaire, c’est `a dire que WWH = I, H ˆ C = Wdiag(h)W . H x) et WH x et ˆ Mais alors, le syst`eme d’´equations y = Cx s’´ecrit encore (WH y) = diag(h)(W WH y repr´esentent respectivement les transform´ees de Fourier discr`etes de x et de y que l’on ˆ x, ce qui s’exprime composante par composante ˆ et y ˆ . Finalement, on a y ˆ = diag(h)ˆ notera x comme ˆkx ˆk = h ˆk y k = 0, . . . , N. (2.9)

Ces relations ne font qu’exprimer le fait qu’en passant dans le domaine de Fourier l’op´eration de convolution devient une simple multiplication. Notons que partant du syst`eme d’´equations y = Cx obtenu en circularisant l’op´eration de convolution (c’est ` a dire en p´eriodisant x), les op´erations de transform´ees de Fourier discr`etes de y et de h requi`erent chacune de l’ordre de N log2 N op´erations par l’emploi de l’algorithme de ˆ directement. x FFT (Fast Fourier Transform). Les relations (2.9) permettent alors de calculer x s’en d´eduit par transform´ee de Fourier inverse. Au total, on voit donc que la r´esolution du syst`eme d’´equations est seulement de l’ordre de 3N log2 N op´erations, grˆace au passage dans le domaine de Fourier que l’on a justifi´e ici en passant par la d´ecomposition en valeurs propres de la matrice C. On voit sur cet exemple comment des notions d’analyse (la convolution et la transform´ee de Fourier) et d’alg`ebres (la d´ecomposition en valeurs propres des matrices circulantes) peuvent s’´eclairer mutuellemnt. Question 5 Supposons maintenant que le signal x soit connu et que l’on observe ym =

L X

hk xm−k + vm ,

m = n, n + 1, . . . , n + N,

(2.10)

k=0

o` u les coefficients du filtre h sont maintenant inconnus, et v est un bruit d’observation. Exprimez la relation matricielle qui lie l’observation y au vecteur h = [h0 , . . . , hL ]T sous la forme y = Xh + v. R´ eponse On a clairement    yn xn  yn+1   xn+1     ..  =   .   yn+N

xn−1 xn .. .

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

     vn . . . xn−L h0   . . . xn+1−L    ..   vn+1   ×  .  +  ..  ,  .   hL . . . xn+N vn+N

(2.11)

ce que l’on note simplement sous la forme y = Xh + v. Question 6 Supposons que N > L. Le syst`eme comporte alors plus d’´equations que d’inconnues ; Il est dit sur-d´ etermin´ e. Lorsque v est nul, il est clair que l’on obtient un syst`eme d’´equations redondantes mais il n’est cependant pas ´evident de savoir a priori pour un syst`eme sur-d´etermin´e quelles ´equations ´eliminer pour se ramener ` a un syst`eme carr´e inversible (en supposant que la matrice intervenant dans la relation initiale soit de rang plein). De plus, lorsque v 6= 0, le syst`eme y = Xh n’aura pas de solution en g´en´eral du fait de la pr´esence de bruit qui introduit une erreur de mod´elisation dans la description de y comme un ´el´ement de l’espace image de

CHAPITRE 2. UN EXEMPLE INTRODUCTIF

18

la matrice X. A d´efaut d’une solution exacte, on cherche une solution approch´ee et un crit`ere naturel consiste ` a chercher la valeur de h pour laquelle le mod`ele y = Xh est, en un certain sens, le moins erron´e possible. Dans de nombreuses situations, on cherche ` a minimiser la norme de l’erreur de mod´elisation, c’est ` a dire qu’on choisi pour h la grandeur hM C = arg min k y − Xh k2 . h

(2.12)

Calculez hM C . La minimisation du crit`ere k y − Xh k2 est appel´ee m´ ethode des moindres carr´ es. R´ eponse Le crit`ere ` a minimiser s’´ecrit k y − Xh k2 = (y − Xh)T (y − Xh) = yT y − hT XT y − yT Xh + hT XT Xh

(2.13)

= hT (XT X)h − 2hT (XT y) + yT y. Rappelons maintenant que la minimisation d’une fonction d´erivable f d’une variable vectorielle u ∈ Rn peut ˆetre envisag´ee en consid´erant la condition n´ecessaire fournie par l’annulation du gradient de f au point o` u la fonction prend sa valeur minimale. Rappelons aussi que le gradient de f est d´efini par ∂f ∂f T ∇f = [ ,..., ] . ∂u1 ∂up En laissant de cˆ ot´e le terme constant yT y, la minimisation de k y − Xh k2 vis `a vis de h est ´equivalente ` a celle de J(h) = hT (XT X)h − 2hT (XT y) qui s’exprime encore comme J(h) =

L X

(XT X)ij hi hj − 2

i,j=0

L X

(XT y)i hi .

i=0

Calculons les d´eriv´ees partielles de J. Pour k = 0, . . . , L, ∂J ∂hk

=2

PL

T i=0 (X X)kj hj

− 2(XT y)k

P T T = [2( L i=0 (X X)kj hj − 2(X y)k )]k

(2.14)

= [2(XT X)h − 2XT y]k . Le gradient de J(h) prend donc la forme simple suivante : ∇J(h) = 2[(XT X)h − XT y] La condition d’annulation du gradient de J(h) est donc donn´ee par (XT X)h − XT y = 0, soit hM C = (XT X)−1 XT y.

(2.15)

Les ´equations (XT X)h = XT y sont appel´ees les ´ equations normales du crit`ere des moindres carr´es k Xh − y k2 .

CHAPITRE 2. UN EXEMPLE INTRODUCTIF

19

Remarque Une fa¸con plus directe d’aboutir au r´esultat consiste `a utiliser le th´eor`eme de projection qui indique en particulier que dans Rn la diff´erence entre un vecteur et sa projection orthogonale sur un sous espace vectoriel quelconque est orthogonale `a tous les ´el´ements de l’espace sur lequel la projection est effectu´ee. Ici, XhM C repr´esente le vecteur de l’espace VX engendr´e par les colonnes de la matrice X qui est le plus proche de y. En d’autres termes XhM C est la projection orthogonale de y sur VX . L’orthogonalit´e de y − XhM C et de VX se traduit par l’orthogonalit´e de y − XhM C et des colonnes de X, qui forment une base de VX . Cela se traduit par XT [y − XhM C ] = 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 ). Donnez la loi du vecteur y et calculez l’estimateur du maximum de vraisemblance de h. Montrez l’int´erˆet de cet estimateur par rapport ` a hM C dans le cas particulier o` u la matrice Σv est diagonale. Que se passe t’il si Σv est proportionnelle `a la matrice identit´e ? D´eduisez en une interpr´etation statistique de hM C . R´ eponse −1 T −1 hM V = (XT Σ−1 v X) X Σv y.

(2.16)

Question 8 Supposons enfin que h n’est plus d´ecrit comme un param`etre inconnu mais comme une variable al´eatoire de loi connue, appel´ee loi a priori. On se place donc ici dans le cadre des m´ethodes dites d’estimation bayesienne. On suppose que h ∼ N (0, Σh ). Calculez, en utilisant la formule de Bayes, la densit´e de probabilit´e p(h|y), appel´ee densit´e de probabilit´e de la loi a posteriori, et donnez l’expression de l’estimateur du maximum de vraisemblance a posteriori de h d´efini par hM AP = arg max p(h|y). (2.17) h

R´ eponse −1 −1 T −1 hM V = (XT Σ−1 v X + Σh ) X Σv y.

(2.18)

Premi` ere partie

Analyse num´ erique matricielle

20

Chapitre 3

Rappels sur les matrices et les syst` emes d’´ equations lin´ eaires Revenons rapidement sur les origines de la notion de matrice. On se limite ici au cas des espaces vectoriels de type Rn , mˆeme si l’extension de la pr´esentation `a Cn est imm´ediate.

3.1

Applications lin´ eaires 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 de Rn . On suppose que f est lin´eaire, c’est `a dire que pour tous x1 , x2 ∈ Rm et a1 , a2 ∈ R, f (a1 x1 + a2 x2 ) = a1 f (x1 ) + a2 f (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 telle expression s’obtient facilement en fonction des composantes des vecteurs (f (ei ))i=1,m dans la base (ki )i=1,n . Si on note f (ej ) =

X

Aij ki ,

i=1,n

et que l’on repr´esente les coefficients Aij dans un tableau not´e A, de taille n × m et appel´e matrice, dont le terme qui se trouve `a l’intersection de la i`eme ligne et de la j`eme colonne est pr´ecisemment Aij , il appara¨ıt que la j`eme colonne de A contient les composantes du vecteur ej exprim´ees dans la base (ki )i=1,n . Consid´erons maintenant la relation y = f (x). Les expressions de x et de y dans les bases respectives (ei )i=1,m et (ki )i=1,n sont donn´ees par X X x= xj ej et y = yi ki , j=1,m

i=1,n

21

` ´ ´ CHAPITRE 3. RAPPELS SUR LES MATRICES ET LES SYSTEMES D’EQUATIONS LINEAIRES22 et la lin´earit´e de f permet d’´ecrire que f (x) = f (

P

j=1,m xj ej )

=

P

=

P

=

P

j=1,m xj f (ej )

(3.1) P j=1,m xj [ i=1,n Aij ki ] P

i=1,n [

j=1,m Aij xj ]ki .

Comme la repr´esentation de y = f (x) sous la forme y = y=

X

yi ki =

i=1,n

P

i=1,n yi ki

est unique, la relation

X X [ Aij xj ]ki i=1,n j=1,m

entraˆıne que yi =

X

Aij xj , pour i = 1, . . . , n.

(3.2)

j=1,m

On voit que yi s’exprime comme le produit scalaire des vecteurs [Ai1 , Ai2 , . . . , Aim ]T et x, ce qui s’exprime classiquement par l’´ecriture   x1     x2   yi = Ai1 Ai2 . . . Aim ×  .  . (3.3) .  .  xm En concat´enant ces relations pour i = 1, . . . , n, on obtient l’expression des coordonn´ees de y dans la base (ki )i=1,n :       y1 A11 Ai2 . . . A1m x1  y2   A21 A22 . . . A2m   x2        (3.4)  ..  =  ..  ×  ..  . .  .   .  yn

An1 An2 , . . . Anm

xm

Il faut interpr´eter cette expression comme un r´esum´e des relations (3.2). Notons que souvent, lorsqu’il n’y a pas d’ambiguit´e sur les bases choisies on identifie les vecteurs x et y avec leurs repr´esentations     y1 x1  x2   y2      (3.5)  ..  et  ..   .  . xm

yn

dans ces bases et on note la relation (3.4) sous la forme compacte y = Ax.

(3.6)

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

3.2

Changement de base

On a vu que la matrice A caract´erise une application lin´eaire f pour des bases fix´ees des espaces de d´epart et d’arriv´ee. On peut se demander comment l’expression de A se trouve modifi´ee lors d’un changement de base. Limitons nous ici au cas d’une application f de Rn dans Rn et supposons que A repr´esente la matrice de A pour la base (ei )i=1,n de Rn . Consid´erons une autre base de Rn , not´ee (e0i )i=1,n et notons A0 la repr´esentation matricielle de f dans cette nouvelle base. On va voir que la relation entre A et A0 peut ˆetre exprim´ee en fonction des relations de passage de la base (ei )i=1,n ` a la base (e0i )i=1,n . Posons X e0j = Pij ei . (3.7) i=1,n

Dans la matrice P, de terme g´en´eral Pij , la j`eme colonne contient donc les coefficients du vecteur e0j exprim´e dans la base (ei )i=1,n . Soit maintenant un vecteur u et v = f (u). On d´esignera par x et x0 les vecteurs de coordonn´ees de u dans les bases respectives (ei )i=1,n et (e0i )i=1,n . De fa¸con analogue, les composantes de v dans ces bases seront not´ees y et y0 : P P u = i=1,n xi ei = i=1,n x0i e0i (3.8) P P v = i=1,n yi ei = i=1,n yi0 e0i . Consid´erons par exemple la premi`ere relation. D’apr`es la relation (3.7), P P 0 0 i=1,n xi ei = j=1,n xj ej 0 j=1,n xj [

=

P

=

P

P

i=1,n Pij ei ]

(3.9)

0 i=1,n Pij xj ]ei .

P

i=1,n [

P Ainsi, xi = i=1,n Pij x0j pour i = 1, . . . , n et donc x = Px0 . De fa¸con tout `a fait identique, on peut ´etablir que y = Py0 . Les repr´esentations matricielles de la relation v = f (u) dans les deux bases s’´ecrivent y = Ax et y0 = A0 x0 . Mais la relation y = Ax associ´ee aux relations x = Px0 et y = Py0 conduit `a Py0 = APx0 , soit y0 = (P−1 AP)x0 , ce qui montre clairement que A0 = P−1 AP.

Dans le cadre de la r´esolution des syst`emes d’´equations lin´eaires, notons que le syst`eme d’´equations y0 = A0 x0 , o` u x0 est inconnue, peut ˆetre plus simple `a r´esoudre que le syst`eme d’´equations initial

` ´ ´ CHAPITRE 3. RAPPELS SUR LES MATRICES ET LES SYSTEMES D’EQUATIONS LINEAIRES24 y = Ax. Comme on le verra plus loin, l’id´ee consistant `a mettre en ´evidence une repr´esentation ´equivalente d’un syst`eme d’´equations lin´eaires pour laquelle la matrice mise en jeu est simple (typiquement triangulaire ou diagonale) est `a la base de nombreuses m´ethodes d’analyse num´erique matricielle. Exercice On consid`ere l’application lin´eaire donn´ee dans la base canonique de R3 (rep`ere orthonorm´e orient´e dans le sens direct), not´ee (e1 , e2 , e3 ) par   1 2 0 A = 0 1 0 . (3.10) 2 3 1 On consid`ere maintenant la nouvelle base de R3 d´efinie par e01 = e3 , e02 = e1 et e03 = e2 . Calculez la matrice de passage P de la premi`ere `a la seconde base et v´erifiez que dans la nouvelle base on obtient une matrice A0 triangulaire. D´eduisez en l’expression du vecteur x tel que Ax = y pour y = [1, 1, 1]T .

3.3

Quelques familles de matrices importantes

Etant donn´ee une matrice A de coefficients r´eels ou complexes, de terme g´en´eral d’indice (i, j) not´e Aij , on notera A = (Aij ). La transpos´ ee et conjugu´ ee hermitienne ou transpos´ eeconjugu´ ee de A sont d´efinies respectivement par AT = (Aji ), et AH = (A∗ji ).

(3.11)

Pour une matrice carr´ee A, de taille n, rappelons maintenant la d´efinition de quelques matrices particuli`eres importantes matrice matrice matrice matrice matrice

sym´etrique r´eelle hermitienne complexe orthogonale r´eelle unitaire complexe normale

AT = A AH = A AAT = AT A = I AAH = AH A = I AH A = AAH .

(3.12)

Les matrices hermitiennes et unitaires peuvent ˆetre vues comme les analogues `a valeurs complexe des matrices sym´etriques et orthogonales respectivement. Les matrices orthogonales (resp. unitaires) sont celles dont les colonnes (ai )i=1,n forment une base orthonorm´ee, c’est `a dire que u δi,j = 1 si i = j, et 0 sinon). aTi aj = δi,j (resp. aH i aj = δi,j , o` Notons que les matrices sym´etriques r´eelles et complexes hermitiennes constituent des cas particuliers de matrices normales. De plus, les matrices sym´etriques (resp. hermitiennes) jouent un rˆole important dans de nombreuses situations, en particulier en probabilit´e et en statistiques puisque la matrice de covariance d’un vecteur al´eatoire r´eel X (resp. complexe), d´efinie par RX = E[XXT ] − E[X]E[X]T (resp. RX = E[XXH ] − E[X]E[X]H ) est clairement sym´etrique (resp. hermitienne).

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

3.4

D´ eterminant et inverse

Rappelons que le d´eterminant de la matrice A de taille n est d´efini par X |A| = σ Aσ(1),1 × . . . × Aσ(n),n ,

(3.13)

σ∈Gn

o` u Gn repr´esente l’ensemble des permutations de l’ensemble {1, . . . , n} dans lui mˆeme, et σ la signature de la permutation σ, qui vaut +1 ou -1 selon que le nombre de permutations ´el´ementaires de deux coefficients successifs qu’il faut r´ealiser pour passer du vecteur (1, 2, . . . , n) au vecteur (σ(1), σ(2), . . . , σ(n)) est pair ou impair. Notons une propri´et´e importante du d´eterminant : |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, not´ee A−1 , telle que AA−1 = A−1 A = I,

(3.15)

o` u I repr´esente la matrice identit´e (ici de taille n). On sait que A−1 = |A|−1 Com(A)T ,

(3.16)

o` u Com(A) est la comatrice de A : Com(A)ij est le d´eterminant de la matrice de taille n − 1 form´ee de A priv´ee de sa ligne i et de sa colonne j, multipli´e par (−1)i+j : Com(A)ij = (−1)i+j |matrice A priv´ee de la ligne i et de la colonne j| . Arr´etons nous un instant sur cette formule. Pour calculer A−1 , il faut multiplier n − 1 termes pour chacune des (n − 1)! permutations de chacun des n2 termes de Com(A). Au total, on obtient de l’ordre de n2 n! multiplications. Rappelons de plus que d’apr`es la formule de Stierling, √ n −n n! = n e 2πn(1+ε(n)), avec limn→∞ ε(n) = 0. On dit que la complexit´ e algorithmique du calcul de l’inverse est exponentielle, c’est `a dire que le coˆ ut de calcul cro¨ıt exponentiellement avec la taille n du probl`eme. En pratique, cela signifie que pour des probl`emes mˆeme de taille r´eduite (pour n de l’ordre de quelques dizaines), un ordinateur puissant serait dans l’impossibilit´e de calculer l’inverse d’une matrice en un temps raisonable. En fait, les algorithmes de complexit´ e exponentielle sont consid´er´es comme irr´ealisables en pratique et on cherche g´en´eralement des algorithmes de complexit´ e polynomiale. On verra qu’il est possible de r´ealiser l’inversion matricielle au moyen d’algorithmes dont la complexit´e est de l’ordre de n3 . Exercice V´erifiez le lemme d’inversion matricielle : si les matrices B et D sont inversibles et A = B + CDE, alors A−1 = B−1 − B−1 C(D−1 + EB−1 C)−1 EB−1 .

(3.17)

P Appliquez cette formule au calcul it´eratif de l’inverse de la matrice N −1 n=1,N xn xTn qui repr´esente l’estimateur empirique de la matrice de covariance d’un vecteur al´eatoire centr´e X, associ´ee `a une s´equence de vecteurs d’observation (xn )n=1,N . Si les xn sont des r´ealisations ind´ependantes de la matrice de covariance d’un vecteur al´eatoire X = au + B, o` u u est un

` ´ ´ 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 2 I, calculez lorsque N varie la formule it´ σB erative de l’estimateur du maximum de vraisemblance de a, not´e a ˆN . Un autre op´erateur qui appara¨ıt souvent en calcul matriciel est l’op´erateur de trace, d´efini par X T r(A) = Aii . (3.18) i

On v´erifie ais´ement que T r(AB) = T r(BA) et T r(A + B) = T r(A) + T r(B).

3.4.1

Valeurs propres et vecteurs propres

Les valeurs propres de la matrice A sont les racines du polynˆome caract´eristique de A d´efini par P (A) = |A − λI|. L’ensemble des valeurs propres de A d´efinit le spectre de la matrice A, not´e [ Sp(A) = {λi (A)} ⊂ C. (3.19) i=1,n

3.4.2

Image et noyau d’une matrice

Etant donn´ee une application lin´eaire f : Cm → Cn et A = [A1 , . . . , Am ] la matrice de f pour des bases fix´ees des espaces de d´epart et d’arriv´ee. L’espace image et le noyau de f , que l’on d´efinira aussi par extension comme l’espace image et le noyau de A sont d´efinis respectivement par Im(f ) = Im(A) = {Au ∈ Cn ; u ∈ Cm } = vect{A1 , . . . , Am } (3.20) Ker(f ) = Ker(A) = {u ∈ Cm ; Au = 0}. Rappelons le r´esultat suivant : dim(Im(A)) + dim(Ker(A)) = m.

(3.21)

Le rang de la matrice A est d´efini 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) et Ker(A) s’exprime par N ull(A).

3.4.3

Changement de base

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

` ´ ´ CHAPITRE 3. RAPPELS SUR LES MATRICES ET LES SYSTEMES D’EQUATIONS LINEAIRES27 repr´esente une autre base, avec [y1 , . . . , yn ] = P [x1 , . . . , xn ], alors, l’expression de la transformation lin´eaire dans la base B2 est A2 = P−1 AP. Le changement de base conduit donc `a factoriser la matrice A sous la forme A = PA2 P−1 . En analyse num´erique, il est souvent utile de factoriser une matrice A sous la forme d’un produit de matrices afin d’obtenir des probl`emes plus simples `a r´esoudre. C’est en particulier le cas, comme on le verra, pour la r´esolution des syst`emes d’´equations lin´eaires. Le paragraphe suivant liste les principales factorisations de matrices utilis´ees pour la r´esolution des syst`emes d’´equations lin´eaires, ou la d´ecomposition en valeurs propres.

3.4.4

Factorisation de matrices

Le th´ eor` eme de Schur montre que pour une matrice A il est toujours possible de trouver un changement de base unitaire, c’est ` a dire pour lequel la matrice de changement de base P est unitaire, tel que dans la nouvelle base la matrice soit triangulaire. Notons d´ej`a qu’un des avantages des changements de base unitaires est que le facteur P−1 qui apparaˆıt dans la transformation se ram`ene simplement `a P−1 = PH , ce qui fournit sans calcul l’inverse de P.

Th´ eor` eme 1 (th´eor`eme de Schur) Soit A une matrice carr´ee. Alors, il existe une matrice unitaire U telle que UH AU soit une matrice triangulaire.

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

Exercice D´emontrer le th´eor`eme de Schur et le corrolaire. Le corrolaire indique que les matrices normales, et en particulier les matrices sym´etriques r´eelles et les matrices complexes hermitiennes, admettent une d´ecomposition en valeurs propres et que la base des vecteurs propres est une base orthonorm´ee. Lorsque A est une matrice non normale ou non carr´ee, on peut cependant toujours trouver une factorisation de A avec des matrices unitaires et une matrice diagonale. Simplement les facteurs unitaires de droite et de gauche ne sont plus conjugu´es l’un de l’autre. L’obtention de cette d´ecomposition, appel´ee d´ ecomposition en valeurs singuli` eres, provient du fait H H que les matrices AA et A A sont hermitiennes. Elles admettent donc respectivement des d´ecompositions en valeurs propres de la forme UDUH et VD0 VH et on peut ´etablir que D = D0 et A = UDVH . Les termes diagonaux de D sont appel´es valeurs singuli`eres de la matrice A. Donnons maintenant la liste des princiales d´ecompositions matricielles : — d´ecomposition LU : A = LU (L, UT triangulaire inf´erieure) — factorisation de Cholesky : A = LLT (A sym´etrique) — d´ecomposition QR : A = QR, QH Q = I, R triangulaire

` ´ ´ CHAPITRE 3. RAPPELS SUR LES MATRICES ET LES SYSTEMES D’EQUATIONS LINEAIRES28 — d´ecomposition en valeurs propres : A = MDM−1 — d´ecomposition de Jordan : A = MJM−1 et J bi-diagonale — d´ecomposition en valeurs singuli`eres : A = UDVH (A de dimensions quelconques !) — forme Schur : QH AQ = T (T triangulaire sup´erieure) — forme Hessenberg : QH AQ = T+ sous diagonale (T(i + k, i) = 0 pour k ≥ 2) Notons que la forme Hessenberg constitue une forme particuli`ere qui peut ˆetre obtenue par un calcul direct et sert ` a l’initialisation des techniques it´eratives qui permettent de calculer la d´ecomposition de Schur. On reviendra au chapitre IV sur les d´ecompositions LU , de Cholesky et QR et sur les autres au chapitre VI.

3.5

Produits scalaires et normes vectorielles et matricielles

Dans Rn , on d´efinit le produit scalaire des vecteurs x et y par X xk y k . < x, y >= yT x =

(3.23)

k=1,n

Le produit scalaire des matrices A et B par < A, B >= T r(ABH ).

(3.24)

Dans le cas de vecteurs et de matrices complexes ces formules deviennent < x, y >= yH x et < A, B >= T r(ABH ).

(3.25)

A ces produits scalaires, on peut associer le normes scalaires quadratiques et de Frob´enius respectivement, d´efinies par q √ k x k22 = xT x, et k A k2F = T r(AT A). (3.26) Plus g´en´eralement, on d´efinit la norme lp d’un vecteur x par X k u kp = ( |ui |p )1/p (0 < p < ∞).

(3.27)

On pourra v´erifier l’in´egalit´e triangulaire pour la norme (encore appel´ee ici in´ egalit´ e de Minkowski) `a titre d’exercice. Rappelons ´egalement au passage l’in´ egalit´ e de H¨ older, qui g´en´eralise l’in´egalit´e de Cauchy Schwarz : si p−1 + q −1 = 1, |yH x| ≤k x kp × k y kq .

(3.28)

Pour les matrices, de taille n × m, o` u Rm (resp. Cm ) est muni de la norme la et Rn resp. Cn ) est muni de la norme lb on peut d´efinir des normes matricielles sous la forme k A kab = sup x

k Ax k2b = sup k Ax k2b k x k2a x,kxka =1

(3.29)

` ´ ´ CHAPITRE 3. RAPPELS SUR LES MATRICES ET LES SYSTEMES D’EQUATIONS LINEAIRES29 On notera simplement la norme k . kaa par k . ka . Bien sˆ ur, toutes ces normes sont ´equivalentes puisqu’en dimension finie toutes les normes sont ´equivalentes (rappelons que deux normes sont ´equivalentes si ` a un facteur pr`es la premi`ere est toujours inf´erieure `a la deuxi`eme, et r´eciproquement). Pour des matrices carr´ees, k . k d´esignant une norme op´erateur quelconque, on peut v´erifier que k AB ka ≤k A ka × k B ka .

(3.30)

Indiquons maintenant la forme prise par quelques unes des normes matricielles. P k A k1 = maxj i |Aij | k A k2

= [ρ(AH A)]1/2 =k AH k2

k A k∞ = maxi

P

j

(3.31)

|Aij |.

Exercice V´erifier les ´equations (3.30) et (3.31). Notons enfin que la norme k . k2 est invariante par transformation orthogonale sur les matrices : si U est une matrice unitaire, k UA k2 =k A k2 .

3.5.1

Projection

Etant donn´e un sous espace vectoriel de Cn dont une base est donn´ee 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(AH A)−1 AH . (3.32) I − ΠA repr´esente clairement le projecteur sur l’espace orthogonal `a celui engendr´e par les colonnes de A, de sorte que tout vecteur x se d´ecompose sous la forme x = xA + x⊥ A , avec ⊥. xA = ΠA x ∈ Im(A) et x⊥ = (I − Π )x ∈ Im(A) A A Exercice V´erifiez que (Im(A))⊥ = Ker(AT ).

3.6 3.6.1

(3.33)

Notions g´ en´ erales sur les algorithmes num´ eriques Complexit´ e algorithmique

La complexit´e d’un algorithme s’exprime g´en´eralement en fonction du nombre d’op´erations ` a r´ealiser pour obtenir la solution du probl`eme qu’il doit r´esoudre. En fait, si ce param`etre est tr`es important, dans certaines applications, la quantit´e de m´emoire informatique n´ecessaire au traitement peut ´egalement s’av´erer cruciale pour le choix d’un algorithme.

` ´ ´ CHAPITRE 3. RAPPELS SUR LES MATRICES ET LES SYSTEMES D’EQUATIONS LINEAIRES30 La complexit´e d’un algorithme est d´efinie comme le terme dominant de la formule qui exprime le nombre d’op´erations ` a r´ealiser lorsque la dimension caract´eristique (par exemple la taille de la matrice) du probl`eme croit. Pour un probl`eme de dimension n, on pourra d´efinir cette complexit´e comme une grandeur Φ(n) telle que nombre d’op´erations en dimension n = 1. n→∞ Φ(n) lim

(3.34)

Dans de nombreuses situations, on se contente d’un ordre de grandeur de la complexit´e algorithmique. Rappelons que g(n) = O(Φ(n)) si limn→∞ (g(n)/Φ(n)) = C, o` u C est une constante finie. Notons que souvent, on ne compte que le nombre de multiplications et de divisions, les additions et les soustraction n’´etant pas prises en compte. Exercice Calculez la complexit´e algorithmique li´ee `a la r´esolution d’un syst`eme d’´equations Ax = b lorsque A est une matrice triangulaire.

3.6.2

Conditionnement

Un autres aspect important li´e ` a la r´esolution algorithmique r´eside dans la robustesse de la solution du probl`eme obtenue vis ` a vis d’erreurs sur la connaissance pr´ecise des valeurs des param`etres du probl`eme et sur la pr´ecision des calculs en machine. Un probl`eme sera dit bien conditionn´e lorsque sa solution variera peu lors d’une faible perturbation de ses param`etres. Consid´erons plus particuli`erement le cas simple et qui nous int´eresse ici des syst`emes d’´equations lin´eaires et prenons l’exemple des deux syst`emes d´equations suivants   2x1 + 6x2 = 8 2x1 + 6x2 = 8 (3.35) et − −5 2x1 + (6 − 10− 5)x2 = 8 + 2.10−5 . 2x1 + (6 + 10 5)x2 = 8 + 10 On voit bien que la variation relative des param`etres entre ces deux syst`emes est tr`es faible (inf´erieure `a 10−5 ) et que malgr`e cela les solutions obtenues sont tr`es ´eloign´ees. Exercice Expliquez g´eom´etriquement pourquoi les solutions des deux syst`emes sont tr`es diff´erentes. Pour quantifier la notion de robustesse d’un syst`eme lin´eaire d’´equations Ax = b, on va chercher `a exprimer la variation relative de la norme de la solution lorsqu’on introduit une perturbation des param`etres qui conduit ` a un nouveau syst`eme not´e (A + εF)x(ε) = b + εf .

(3.36)

En notant x(ε) la solution de ce syst`eme, un d´eveloppement limit´e de x autour de ε = 0 conduit `a x(ε) = x + εx0 (0) + O(ε2 ) = x + εA−1 (f − Fx) + O(ε2 ) (3.37) d’o` u il vient que k x(ε) − x k ≤ εK(A) kxk



kf k kFk + kbk kAk



+ O(ε2 ).

(3.38)

On voit donc que la solution sera d’autant plus insensible aux erreurs relatives sur les param`etres A et b que le param`etre K(A) =k A kk A−1 k appel´e param`etre de conditionnement, ou

` ´ ´ CHAPITRE 3. RAPPELS SUR LES MATRICES ET LES SYSTEMES D’EQUATIONS LINEAIRES31 simplement conditionnement du syst`eme sera faible. Notons que la valeur de K(A) d´epend de la norme choisie. Cependant, si on note K2 (A) la valeur du conditionnement obtenue pour la norme k . k2 , on peut v´erifier que l’on a toujours K(A) ≥ K2 (A) ≥ 1. Lorsque K(A) est grand, on dit que le syst`eme est mal conditionn´e. Exercice V´erifiez l’´equation (3.38) et montrez que pour une matrice A hermitienne, K2 (A) = λmax (A)/λmin (A).

Chapitre 4

Syst` emes d’´ equations sur-d´ etermin´ es et sous-d´ etermin´ es Dans ce chapitre, on reviend rapidement sur les notions de syst`emes d’´equations sur-d´etermin´es et sous-d´etermin´es, d´ej` a envisag´ees au chapitre 2. Par opposition ` a un syst`eme dit r´ egulier d’´equations lin´eaires Ax = b pour lequel la matrice A est carr´ee et inversible, auquel cas on a clairement x = A−1 b, les syst`emes sur-d´etermin´es et les syst`emes sous-d´etermin´es qui comportent plus de lignes que de colonnes ou au contraire plus d’inconnues que d’´equations ne permettent pas de trouver une solution exacte, ou au contraire fournissent tout un sous espace vectoriel de solutions. On rappelle ici bri`evement les approches classiques retenues dans ce genre de stuation. On se limite ici au cas r´eel. Le cas complexe se traite de fa¸con analogue et pourra ˆetre envisag´e `a titre d’exercice. Notons que la recherche des solutions envisag´ee ici met en oeuvre quelques notions d’optimisation. Ces notions seront d´etaill´ees dans la seconde partie du cours. Pour l’instant, il suffit de savoir qu’une condition d’optimalit´e n´ecessaire pour une fonction d´erivable d’une variable vectorielle f (x) est fournie par l’annulation de son gradient ∇f (x) aux points ou elle prend sa valeur optimale. On pourra ici justifier du caract`ere suffisant du crit`ere d’optimalit´e ∇f (x) = 0 en invoquant le th´eor`eme de projection qui assure qu’`a tout vecteur v (resp. `a tout point M ) de Rn correspond un vecteur (resp. un point) unique de tout sous-espace vectoriel (resp. de tout sous-espace affine) dont la distance ` a v (resp. `a M ) est minimale parmi l’ensemble des points du sous-espace.

4.1

Syst` emes sur-d´ etermin´ es

Lorsque A est inversible, on a clairement x = A−1 b, mais dans de nombreusesP situations on est conduit `a une suite d’observation (bi )i=1,m issues des combinaisons lin´eaires i=1,n Aij xj des quantit´ees inconnues (xj )j=1,n et des coefficients suppos´es connus de la matrice A. Dans ce type de situation, pour un nombre important d’observations, c’est `a dire pour m > n la matrice A 32

` ´ ´ ´ ET SOUS-DETERMIN ´ ´ CHAPITRE 4. SYSTEMES D’EQUATIONS SUR-DETERMIN ES ES33 est g´en´eralement de rang plein, c’est ` a dire ici de rang n. Compte tenu notament des erreurs de mesures ou des imperfections du mod`ele lin´eaire utilis´e il est rare que les ´equations du syst`eme soient compatibles. En d’autres termes le syst`eme d’´equations Ax = b n’admet pas de solution. Afin d’acc´eder ` a une valeur approch´ee de x un crit`ere naturel consiste `a rechercher le vecteur x tel que la norme de l’erreur de reconstruction de b sous la forme Ax soit la plus faible possible. En g´en´eral, on consid`ere la norme l2 qui a l’avantage de pouvoir ˆetre interpr´et´ee physiquement comme une ´energie, mais surtout qui conduit `a une solution qui se formule tr`es simplement. En effet la solution de min k Ax − b k22 (4.1) x

doit v´erifier le syst`eme d’´equations AT Ax = AT b.

(4.2)

Exercice Montrez ce r´esultat de deux mani`eres diff´erentes : en annulant le gradient du crit`ere et en utilisant le th´eor`eme de projection. Montrez de plus que comme m > n et que la matrice est de rang plein la matrice AT A est inversible. Finalement la solution fournie par la m´ethode des moindres carr´es est donn´ee par x = (AT A)−1 AT b.

(4.3)

Notons que mˆeme lorsque les ´equations du syst`eme ne sont pas incompatibles, la recherche de la solution des moindres carr´es reste utile pour caract´eriser la solution du syst`eme lorsque m > n et que A est de rang plein, car il n’est pas n´ecessaire ici de rechercher quelles ´equations redondantes peuvent ˆetre ´elimin´ees du syst`eme pour se ramener `a un syst`eme carr´e inversible. Exercice Montrez que la solution des moindres carr´es fournit l’estimateur du maximum de vraisemblance de x pour un mod`ele d’observation de la forme b = Ax + w, o` u w est un vecteur al´eatoire gaussien dont les composantes sont d´ecor´ell´ees et de mˆeme variance.

4.2

Syst` emes sous-d´ etermin´ es

lorsque le syst`eme Ax = b comporte plus de colonnes que de de lignes (m < n) et est de rang plein, l’ensemble des solutions du syst`eme constitue un espace affine de dimension n − m. En effet, si on d´ecompose (au besoin en permutant des colonnes) la matrice A sous la forme A = [A1 |A2 ], o` u A1 est une matrice carr´ee inversible, et de fa¸con correspondante le vecteur x sous la forme x = [xT1 |xT2 ]T , l’´equation Ax = b, se reformule comme A1 x1 + A2 x2 = b,

(4.4)

−1 soit x1 = A−1 1 b − A1 A2 x2 . on voit donc que l’ensemble des solutions est l’espace affine de dimension n − m d´efini par   −1     A1 b −A−1 A2 n n−m 1 E = u ∈ R |u = + y, y ∈ R . (4.5) 0 I

` ´ ´ ´ ET SOUS-DETERMIN ´ ´ CHAPITRE 4. SYSTEMES D’EQUATIONS SUR-DETERMIN ES ES34 Parmi toutes ces solutions, on est souvent amen´e `a choisir une solution particuli`ere. On choisit alors souvent de consid´erer la solution de norme minimale. On peut montrer que la solution du syst`eme Ax = b dont la norme quadratique est minimale est donn´ee par x = AT (AAT )−1 b, Notons que la solution (4.6) est celle du probl`eme d’optimisation sous contraintes  minx xT x Ax = b.

(4.6)

(4.7)

On verra en cours d’optimisation comment r´esoudre de fa¸con syst´ematique ce genre de probl`eme en utilisant les multiplicateurs de Lagrange. La caract´erisation (4.5) de l’ensemble des solutions de Ax = b peut cependant ˆetre utilis´ee pour obtenir de fa¸con directe, bien qu’un peu laborieuse, la solution de norme minimale. Exercice En utilisant la carcat´erisation (4.5) de l’ensemble des solutions du syst`eme Ax = b, d´emontrez que la solution de norme minimale vaut x = AT (AAT )−1 b. (Indication : utiliser le lemme d’inversion matricielle pour simplifier la formule obtenue).

4.3

Cas g´ en´ eral

Dans le cas g´en´eral la matrice A du syst`eme Ax = b n’est pas forc´ement de rang plein. On peut se ramener `a un syst`eme de rang plein de diverses fa¸cons. Ainsi, par exemple, la d´ecomposition en valeurs singuli`eres de A s’´ecrit A = UDVH , o` u les matrices unitaires U et V sont de tailles respectives m et n. Si A n’est pas de rang plein, certains des termes diagonaux de la matrice D sont nuls. Consid´erons le syst`eme ´equivalent DVH x = UH b. La matrice D de taille m × n se r´e´ecrit sous la forme       D1 D1 0 D = D1 , D = , D = D1 0 , ouD = , (4.8) 0 0 0 o` u D1 est une matrice diagonale inversible de taille p. La matrice A est de rang plein si p = min{m, n} ce qui correspond aux trois premi`ers cs de figure d´ecrits par les relations (4.8). En notant U1 et V1 les matrices constitu´ees des p premi`eres colonnes de U et de V respectivement, on voit clairement que les solutions des moindres carr´es v´erifient D1 V1H x = UH 1 b.

(4.9)

Si n = p, x est d´efini de fa¸con unique. Sinon, parmi les valeurs de x solutions de (4.9), on peut montrer que l’approximation de norme minimale est donn´ee par H x = V1 D−1 1 U1 b.

(4.10)

Exercice V´erifiez que la solution des moindres carr´es de norme minimale est bien donn´ee par (4.10).

` ´ ´ ´ ET SOUS-DETERMIN ´ ´ CHAPITRE 4. SYSTEMES D’EQUATIONS SUR-DETERMIN ES ES35

4.4

Matrices blocs et r´ esolution partielle des syst` emes lin´ eaires

On consid`ere la matrice

  A11 A12 A= . A21 A22

(4.11)

avec A11 inversible. On v´erifie facilement que     I 0 A11 0 I A−1 A12 11 A= . A21 A−1 I 0 A22 − A21 A−1 0 In 11 11 A12

(4.12)

Le coefficient A22 − A21 A−1 e compl´ ement de Schur du bloc A11 de la matrice 11 A12 est appele´ A. Il est clair que A est une matrice sym´etrique positive si et seulement si le compl´ement de Schur est une matrice sym´etrique positive. On suppose maintenant de plus que A22 est inversible. Le lemme d’inversion matricielle appliqu´e au compl´ement de Schur conduit ` a −1 −1 −1 −1 (A22 − A21 A11 A12 )−1 = A−1 22 + A22 A21 (A11 − A12 A22 A21 ) A12 A22

(4.13)

D’apr`es la relation (4.12), on peut alors v´erifier que   I −A−1 11 A12 A−1 = 0 I  ×

0 A−1 11 −1 −1 −1 −1 0 A−1 22 + A22 A21 (A11 − A12 A22 A21 ) A12 A22



I 0 I −A21 A−1 11

 .

(4.14) On peut ´egalement v´erifier que Ces formules sont connues sous le nom de lemme d’inversion matriciel. Il peut arriver que dans un probl`eme on cherche `a r´esoudre partiellement un syst`eme d’´equations lin´eaires. Ainsi, si on consid`ere le syst`eme d’´equations      A11 A12 x1 b1 = , (4.15) A21 A22 x2 b2 et que l’on cherche simplement la solution pour x1 . On v´erifiera `a titre d’exercice que −1 −1 x1 = (A11 − A12 A−1 22 A21 ) (b1 − A12 A22 b2 ).

(4.16)

Chapitre 5

R´ esolution directe des syst` emes lin´ eaires Consid´erons un syst`eme lin´eaire r´egulier d’´equations Ax = b. Par opposition aux m´ethodes it´eratives, les m´ethodes de r´esolution directe permettent d’obtenir la solution exacte d’un tel syst`eme (aux erreurs num´eriques pr`es) apr`es un nombre d’op´erations fix´e, fonction de la taille du syst`eme. Les m´ethodes directes assurent la r´esolution des syst`emes d’´equations lin´eaires de taille n pour un coˆ ut de calcul de l’ordre de n3 op´erations. Les m´ethodes de r´esolution directe visent `a ramener la r´esolution du syst`eme Ax = b `a la r´esolution d’un syst`eme d’´equations triangulaire Tx = b0 , pour lequel la matrice T est triangulaire et la complexit´e de n2 op´erations. Il appara¨ıt en fait que c’est la transformation du syst`eme Ax = b en le syst`eme Tx = b0 qui sera la plus couteuse en termes de coˆ ut de calcul. Pour le 0 syst`eme triangulaire Tx = b , si on suppose par exemple que T est triangulaire sup´erieure, c’est `a dire que Tij = 0 pour i > j, on v´erifie facilement que x est fourni par l’algorithme it´eratif suivant, pr´esent´e 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 complexit´e est Φ(n) = n2 /2. On distingue deux types de m´ethodes directes : celles qui conduisent `a une factorisation de A sous la forme A = LU, o` u les matrices L et U sont respectivement triangulaire inf´erieure et triangulaire sup´erieure (de l’anglais L comme ’lower’ et U comme ’upper’), et celles de type A = QR pour lesquelles la matrice Q est orthogonale (unitaire dans le cas complexe) et R est triangulaire sup´erieure. On v´erifie ais´ement qu’une telle ´ecriture constitue une orthogonalisation de Gram-Schmidt des colonnes de A. En effet, Dans la suite, on va d´etailler les algorithmes qui permettent d’obtenir les d´ecompositions LU et 36

´ ` ´ CHAPITRE 5. RESOLUTION DIRECTE DES SYSTEMES LINEAIRES

37

QR

5.1 5.1.1

M´ ethodes de Gauss Principe g´ en´ eral

La m´ethode de Gauss consiste ` a ´eliminer successivement pour k = 1, . . . , n − 1 les contributions de la variable xk dans les ´equations k + 1, . . . , n du syst`eme, en les combinant avec la k`eme ´equation. Sous r´eserve que les divisions mises en jeux soient possibles (pas de division par 0), on obtient finalement le sch´ema 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 grˆace `a la succession des combinaisons de ses lignes. Notons que la k`eme boucle de l’algorithme revient `a multiplier `a gauche les deux membres du syst`eme courant par la matrice Mk qui poss`ede des 1 sur sa diagonale et des z´eros partout (k) (k) ailleurs, sauf pour ses termes d’indice (k, l), lorsque l > k, pour lesquels [Mk ]kl = −Alk /Akk . On construit ainsi la suite de matrices A(1) = A, A(2) = M1 (1) A(1) , . . . , A(k+1) = Mk A(k) , . . . ,

(5.1)

et on obtient finalement le syst`eme M1 ..Mn−1 Ax = Ux = M1 ..Mn−1 b = b0 .

(5.2)

La r´esolution du syst`eme Ux = b0 est imm´ediate puisque U est triangulaire sup´erieure. Penchons −1 nous un instant sur l’´egalit´e M1 . . . Mn−1 A = U. Notons que A = [M−1 n−1 . . . M2 ]U. Une −1 propri´et´e remarquable de la matrice Mk est quel s’obtient simplement `a partir de Mk par un changement de signe des coefficients plac´es sous la diagonale, ce que l’on pourra v´erifier `a titre d’exercice. De plus, on v´erifie facilement en proc´edant par r´ecurrence que le produit −1 ` eme colonne de L co¨ L = [M−1 ıncide avec la k`eme colonne de Mk au n−1 . . . M2 ] est tel que la k signe pr`es des termes sous-diagonaux. Finalement L est triangulaire inf´erieure, avec   = 0 si k < l = 1 si k = l Lkl = (5.3)  (k) (k) = Alk /Akk si k > l,

´ ` ´ CHAPITRE 5. RESOLUTION DIRECTE DES SYSTEMES LINEAIRES

38

soit, 

1

0

0 .. . .. .

 (1) (1) A21 /A11 1 L= .. ..   . . (1) (1) (2) (2) An1 /A11 An2 /A22 · · ·

···

 0 ..  .   0

(5.4)

1

On a donc bien r´ealis´e la d´ecomposition LU de la matrice A, avec L triangulaire inf´erieure et U triangulaire sup´erieure.

5.1.2

Stabilit´ e et pivot

Comme on l’a vu pr´ec´edemment, la m´ethode de Gauss ne vaut que s’il n’y a pas de division par (k) 0, c’est `a dire si la s´equence des coefficients (Akk )k=1,n−1 n’a pas de terme nul. En pratique, si (k) Akk a une valeur non nulle mais proche de 0, cela peut entraˆıner des erreurs num´eriques qui affectent de fa¸con importante la solution obtenue. La m´ethode du pivot de Gauss permet de rem´edier `a ce probl`eme de la fa¸con suivante : `a la k`eme it´eration de l’algorithme, on vient pr´elever le terme du bloc d’indices A(k) (k : n, k : n) de plus grand module et on vient le placer en position (k, k) au moyen d’une permutation Pck sur les colonnes k ` a n de A(k) et d’une permutation Plk sur les lignes k `a n. Finalement, la suite des transformations de la matrice A peut se r´esumer comme suit : (Mn−1 Pln−1 . . . M1 Pl1 )A(Pc1 . . . Pcn−1 ) = U,

(5.5)

o` u U est triangulaire sup´erieure. En fait, cette strat´egie est appel´ee pivot total, par opposition `a une m´ethode plus simple, dite de pivot partiel, qui consiste simplement `a permuter les lignes k `a n de la matrice pour venir remplacer la ligne k par la ligne j, avec j ≥ k, pour (k) laquelle le coefficient |Alk | est maximum. Cette strat´egie moins performante vis `a vis des erreurs num´eriques est ´egalement moins coˆ uteuse puisque le nombre de comparaisons entre coefficients `a effectuer est nettement plus faible.

5.1.3

Coˆ ut de calcul, d´ eterminant et inverse

P L’obtention de la suite des syst`emes d’´equations A(k) x = b(k) n´ecessite de l’ordre de k=1,n−1 (n− k)2 multiplications, soit Φ(n) = n3 /3 pour la r´esolution du syst`eme, puisque l’inversion du syst`eme triangulaire obtenu ne r´eclame qu’environ n2 /2 multiplications. Notons maintenant que la connaissance de la d´ecomposition LU de A fournit directement le d´eterminant de A : (k) |A| = Πk=1,n Akk (5.6) ˜ 1, . . . , A ˜ n ], On peut ´egalement ainsi obtenir l’inverse de la matrice A puisque si on note A−1 = [A −1 ˜ les colonnes de A sont fournies par la r´esolution des n syst`emes d’´equations LUAk = ek , qui peuvent chacun se ramener ` a la r´esolution successive de deux syst`emes triangulaires :

´ ` ´ CHAPITRE 5. RESOLUTION DIRECTE DES SYSTEMES LINEAIRES

Lyk = ek → Φ(n) = n3 /6, ˜ k = yk → Φ(n) = n3 /2, UA

39

(5.7)

o` u les vecteurs ek sont les vecteurs de la base canonique ([ek ]i = δk,i ). Le premier syst`eme r´eclame moins de calcul que le second du fait de la pr´esence de 0 sur les k − 1 premi`eres composantes du vecteur ek . La r´esolution des ´equations matricielles (5.7) r´eclame donc un total de 2n3 /3 op´erations. Mais comme la factorisation LU elle mˆeme requiert n3 /3 op´erations, on obtient Φ(n) = n3 multiplications pour le calcul de l’inverse de A.

5.1.4

M´ ethode de Cholesky

Dans le cas particulier o` u la matrice A est sym´etrique r´eelle (AT = A) positive , on peut T v´erifier que A = LL avec L triangulaire inf´erieure. L’adaptation de la m´ethode de Gauss ` a cette situation conduit ` a l’algorithme suivant, connu sous le nom de factorisation de Cholesky. On note que  2      L11 L11 aT1 L11 0 1 0 L11 aT1 = A= . (5.8) L11 a1 An−1 0 I a1 I 0 An−1 − a1 aT1 On proc´ede de mˆeme sur la matrice positive An−1 − a1 aT1 et on it´ere la proc´edure. Exercice Justifiez la formule (5.8) et la positivit´e de la matrice An−1 − a1 aT1 . La construction de la matrice L de la factorisation de Cholesky peut finalement ˆetre r´esum´ee par les relations ci dessous : q ( P Ljj = Ajj − i=1,j−1 L2ji L= (5.9) P Lij = L−1 (i = j + 1, . . . , n), k=1,j−1 Lik Ljk ) jj (Aij − proc´edure dont le coˆ ut de calcul est Φ(n) = n3 /6. Notons de plus que la positivit´e de la matrice A assure la stabilit´e de la m´ethode. En pratique, le code informatique correspondant pourra prendre la forme suivante :

L L(1,1) for k=1:n-1, L(k+1:n,k) L(k+1,k+1) end;

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

La factorisation LDLT relativement proche permet d’´eviter la division par L2jj et les ´eventuels probl`emes de stabibilit´e associ´es ` a cette division. Elle s’´ecrit       d1 L1 aT1 1 0 d1 0 d1 aT1 A= = (5.10) L1 a1 An−1 a1 I 0 An−1 − d1 a1 aT1 0 I

´ ` ´ CHAPITRE 5. RESOLUTION DIRECTE DES SYSTEMES LINEAIRES

40

Notons que pour une matrice A hermitienne complexe (AH = A), on a un r´esultat analogue. Il suffit alors de remplacer les transpositions par des transpositions-conjugaisons dans ce qui pr´ec`ede, 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 syst`eme Ax = b n’est donc pas affect´e par une transformation orthogonale et il ne sera pas n´ecessaire de prendre de pr´ecautions telles que la m´ethode du pivot vue dans le cadre de la factorisation LU lorsqu’on triangularise le syst`eme. On va maintenant indiquer deux techniques importantes de triangularisation par orthonormalisation.

5.2.1

M´ ethode de Householder

Pour un vecteur norm´e u (k u k= 1), on d´efinit la matrice de r´ eflexion de Householder associ´ee par Hu = I − 2uuT . (5.12) Notons que Hu HTu = I et Hu x = x − 2u(xT u). Ainsi, pour u = λ(x± k x k e1 ), Hu x = ∓ k x k e1 ,

(5.13)

o` u [ek ]i = δi,k et λ =k x± k x k e1 k−1 On peut appliquer cette m´ethode ` a la triangularisation de la matrice A de taille n en consid´erant une s´equence de n − 1 transformations de Householder. On pose A(1) = A et on construit successivement des transformations Hk (k = 1, . . . , n−1) qui annulent les termes sous diagonaux de la colonne k de A(k) = Hk−1 A(k−1) :  Hk =

 Ik−1 0 ˜k , 0 H

(5.14)

˜ k une matrice de Householder de taille n−k +1 o` u Ik−1 est la matrice identit´e de taille k −1, et H qui annule les n − k derniers termes de la colonne k de la matrice A(k) . Ainsi, (Hn−1 × . . . × H1 )A = QT A = R,

(5.15)

avec QQT = In et R triangulaire sup´erieure. Ainsi, A = QR. Pour ce qui est du coˆ ut de calcul, pour la construction de la k`eme matrice et sa multiplication par Ak , il faut compter de l’ordre de 2(n − k)2 + O(n − k)Pop´erations, soit au total, pour les n − 1 it´erations de la proc´edure, Φ(n) = 2n3 /3 op´erations ( k 2(n − k)2 ).

´ ` ´ CHAPITRE 5. RESOLUTION DIRECTE DES SYSTEMES LINEAIRES

5.2.2

41

M´ ethode des rotations de Givens

Au lieu d’essayer de construire des matrices qui ´eliminent une sous colonne d’une matrice comme s’´etait le cas avec la m´ethode de Householder, on se limite ici `a l’´elimination d’un unique coefficient de la matrice ` a chaque op´eration grˆace `a une rotation dans un sous espace de dimension deux, appel´ee rotation de Givens. L’avantage de cette approche r´eside dans le fait que pour des matrices A creuses, c’est ` a dire des matrices pr´esentant un grand nombre de coefficients nuls, le coˆ ut de calcul de la triangularisation de A peut devenir nettement plus faible que pour la m´ethode de Householder. Pour un vecteur u de composantes (ui , uj ) dans le sous espace d´efini par les indices i et j, on consid`ere 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 transform´e v = Gij (θ)u est tel que   vi = cui − suj vj = sui + cuj (5.16) vj = Gij (θ)ui :  vk = xk k 6= i, j. avec c = cos θ et s = sin θ. Pour tan θ = −uj /ui , on aura vi =

q u2i + u2j et vj = 0.

On peut appliquer cette m´ethode ` a la triangularisation de la matrice A de taille n en consid´erant une s´equence de (n−1)+(n−2)+. . .+1 = n(n−1)/2 rotations de Givens ; Ces rotations agissent sur 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 QT A = 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 sup´erieure. P On peut v´erifier facilement que la complexit´e de la m´ethode est de Φ(n) = 4n3 /3 ( k (n − k)2 ). Voici une impl´ementation informatique de la factorisation QR d’une matrice carr´ee A au moyen de rotations de Givens :

Q R

= eye(n,n); = 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;

´ ` ´ 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 proc´edure, ` a chaque it´eration, on a A = QR avec la matrice R qui devient progressivement triangulaire, les rotations ` a gauche appliqu´ees `a chaque ´etape `a la matrice R ´etant cmpens´ees par des rotations ` a droite en sens inverse appliqu´ees `a Q.

5.2.3

M´ ethode de Gram-Schmidt

On peut chercher ` a appliquer directement la proc´edure d’orthogonalisation de Gram-Schmidt sur les colonnes de la matrice A pour obtenir la d´ecomposition QR. On obtient alors une proc´edure qui peut ˆetre r´esum´ee comme suit : Pour k = 1, . . . , n, Rik Zk Rkk Qk

= QTi AkP , i = 1, . . . , k − 1 = Ak − i=1,k−1 Rik Qi =k Zk k = Zk /Rkk .

(5.18)

avec la notation M = [M1 , . . . , Mn ]. P Pour comprendre cette proc´edure, notons que Zk = (I− i=1,k−1 Qi QH ement i )Ak . On pourra ais´ P H v´erifier que I − i=1,k−1 Qi Qi est la matrice de projection sur l’orthogonal de l’espace engendr´e par {Q1 , . . . , Qk−1 }. Donc, comme vect{Q1 , . . . , Qk−1 } = vect{A1 , . . . , Ak−1 }, Zk apparaˆıt comme la projection de Ak sur l’othogonal de vect{A1 , . . . , Ak−1 }. De plus, Qk est simplement une version normalis´ee du vecteur Zk . Notons pour finir que cette approche n’est pas tr`es stable num´eriquement et on lui pr´ef`ere g´en´eralement une m´ethode de Gram-Schmidt modifi´ee [3].

Chapitre 6

R´ esolution it´ erative des syst` emes lin´ eaires Les m´ethodes de r´esolution it´erative des syst`emes d’´equations lin´eaires consistent `a repr´esenter le syst`eme d’´equations sous la forme d’une ´equation matricielle r´ecurrente qui permet, `a partir d’un vecteur initial fix´e de construire une suite de vecteurs dont on esp`ere qu’elle converge vers la solution du syst`eme. Plus pr´ecisemment, pour le syst`eme lin´eaire d’´equations Ax = b, si on d´ecompose A sous la forme A = M − N, il apparaˆıt que la solution x de Ax = b est ´egalement solution de Mx = Nx + b. En d’autres termes, x est un point fixe de l’´equation de r´ecurrence Mx(t) = Nx(t−1) + b,

t = 1, 2, . . . ,

(6.1)

pour laquelle x(0) est une valeur initiale fix´ee quelconque. Bien sˆ ur, pour trouver x(t) connaissant (t−1) x , il serait souhaitable que l’inversion de M soit simple, ce qui conduit souvent `a choisir M ´egale `a la partie diagonale ou ` a la partie triangulaire, par exemple inf´erieure, de A. Ces choix conduisent respectivement aux m´ethodes de Jacobi et de Gauss-Siedel. Notons que si l’algorithme converge, ` a la convergence on doit avoir Mx = Nx + b, et donc, par diff´erence avec l’´equation (6.1) (x(t) − x) = (M−1 N)t (x(0) − x).

(6.2)

On voit donc que la convergence se traduit par le fait que les valeurs propres de la matrice M−1 N sont de modules inf´erieurs ` a un. Cela permet d’obtenir les conditions de convergence suivantes pour les algorithmes it´eratifs en g´en´eral et les algorithmes de Jacobi et de Gauss Siedel en particulier [2] : — l’algorithme (6.1) converge vers la solution de Ax = b si et seulement si les valeurs propres de M−1 N sont de modules inf´erieurs `a un. — Si k M−1 NP k< 1, alors l’algorithme (6.1) converge vers la solution de Ax = b. — Si |Aii | > | j6=i |Aij |, ∀i, la m´ethode de Jacobi converge. — Si A est sym´etrique d´efinie positive (A = AT et A > 0), la m´ethode de Gauss-Siedel converge. En pratique, la m´ethode de Jacobi peut prendre la forme du code suivant : 43

´ ´ ` ´ 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 m´ethode de Gauss-Siedel, quant ` a elle, peut ˆetre programm´ee 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’acc´elerer l’algorithme de Gauss-Siedel au moyen d’une technique dite de surrelaxation dont le fonctionnement g´en´eral est d´ecrit ci dessous : (t+1)

P (t+1) (t) − j>i Aij xj j
˜i x

=−

(t+1) xi

=

P

+ bi

(6.3)

On peut montrer que si A est sym´etrique d´efinie positive la convergence est assur´ee pour 0 < ω < 2 et que la vitesse de convergence est optimale pour une valeur de ω comprise en un et deux.

Chapitre 7

D´ ecompositions en valeurs propres et en valeurs singuli` eres On s’int´eresse ici au probl`eme du calcul pratique des valeurs propres d’une matrice. On verra que le probl`eme de la d´ecomposition en valeurs singuli`eres est ´etroitement li´e au pr´ec´edent. Il n’existe pas en g´en´eral de formule qui permette de calculer de fa¸con exacte les valeurs propres d’une matrice puisque ce sont les racines de son polynˆome caract´eristique et que pour des degr´es sup´erieur ` a 4 les racines ´equations polynˆomiales n’admettent pas en g´en´eral de forme explicite. Il faut donc mettre en oeuvre des techniques it´eratives pour obtenir la d´ecomposition en valeurs propre des matrices. Notons ici qu’en g´en´eral on ne cherche pas les racines du polynˆome caract´eristique pour trouver les valeurs propres d’une matrice mais qu’on travaillera plutˆot sur la recherche d’un changement de base permettant d’obtenir une forme diagonale de la matrice, ou du moins triangulaire (d´ecomposition de Schur). Pour justifier de l’´equivalence entre les racines d’un polynˆ ome et les valeurs propres d’une matrice, notons que les racines du polynˆome P (x) = a0 + a1 x + a2 x2 + . . . + an−1 xn−1 + xn co¨ıncident avec les valeurs propres de sa matrice companion, d´efinie par :   −an−1 −an−2 . . . a0  1 0 ... 0    0 1 0 ... 0  (7.1)  .   . .   . 0 ... 0 1 0 Exercice V´erifier que les valeurs propres de la matrice (7.1) co¨ıncident bien avec les racines de P (x) = a0 + a1 x + a2 x2 + . . . + an−1 xn−1 + xn .

45

´ ` CHAPITRE 7. DECOMPOSITIONS EN VALEURS PROPRES ET EN VALEURS SINGULIERES46

7.1

Diagonalisation des matrices sym´ etriques : la m´ ethode de Jacobi

On se limitera ci dessous au cas de matrices sym´etriques `a valeurs r´elles. L’extension au cas des matrices hermitiennes suppose la prise en compte d’un terme exponentiel complexe suppl´ementaire dans les matrices de rotation de Givens qui ne modifie pas le principe de la d´emarche. La m´ethode repose sur l’emploi des rotations de Givens, d´ej`a rencontr´ees dans le paragraphe sur la d´ecomposition QR des matrices. Commen¸cons par consid´erer une matrice sym´etrique 2 × 2   A11 A12 A= . (7.2) A21 A22 et, en appliquant les notations du paragraphe 5.2.2, appliquons la rotation G12 (θ) ´a gauche de A et G12 (θ)T = G12 (−θ) ` a droite de A, on obtient, en prenant en compte la relation A12 = A21 , G12 (θ)AG12 (θ)T =   A11 − A22 2 2 A12 cos(2θ) + sin(2θ)  A11 cos (θ) + A22 sin (θ) − A12 sin(2θ) 2  . A11 − A22 A12 cos(2θ) + sin(2θ) A11 sin2 (θ) + A22 cos2 (θ) + A12 sin(2θ) 2

(7.3)

On voit donc que la matrice obtenue est diagonale d`es lors que cot(2θ) =

A22 − A11 . 2A12

(7.4)

Exercice Afin de construire la matrice de rotation pr´ec´edente, montrer que cos(θ) = (1+t2 )−1/2 11 et sin(θ) = t(1+t2 )−1/2 , o` u t est la racine de module inf´erieur ou ´egal `a 1 de t2 +( A22A−A )t−1 = 0. 12 Plus g´en´eralement, pour une matrice A de taille n on pourra appliquer successivement des rotations `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 v´erifie facilement que dans cette op´eration, la somme des carr´es des termes diagonaux est augment´ee de deux fois le carr´e du terme pr´ec´edemment situ´e en position (i, j). Comme la norme de Frobenius de la matrice reste invariante par les transformations orthogonales que sont les rotations de Givens, il apparaˆıt qu’´a chaque it´eration l’´energie hors diagonale dans la matrice d´ecroit et que l’´energie de la diagonale croˆıt d’autant. On peut soit ` a chaque it´eration chercher `a annuler le terme hors diagonal le plus grand (m´ethode de Jacobi classique), soit balayer successivement chaque composante hors diagonale (m´ethode de jacobi cyclique), par exemple colonne par colonne. En pratique, on n’ex´ecute la rotation que si l’amplitude du terme diagonal consid´er´e reste sup´erieure `a un certain seuil. On peut ´etablir la convergence de la m´ethode de Jacobi [2]. Voici un exemple d’impl´ementation de la proc´edure de Jacobi sur une matrice A sym´etrique de taille n qui annule ` a chaque it´eration le terme hors diagonale de plus grande amplitude. V

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

´ ` CHAPITRE 7. DECOMPOSITIONS EN VALEURS PROPRES ET EN VALEURS SINGULIERES47 D test

= A; = 2*seuil;

//initialisation de la matrice des valeurs propres

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 carr´ ees

On va voir qu’il est particuli`erement int´eressant, pour calculer les valeurs propres d’une matrice A de se ramener ` a la forme Hessenberg de la matrice qui consiste `a appliquer un changement de base orthonorm´ee de telle sorte que la nouvelle matrice, not´ee H soit tridiagonale, c’est `a dire telle que [H]ij = 0 pour |i − j| > 1. La factorisation de Hessenberg est obtenue simplement en appliquant une suite de rotations de Givens `a droite et `a gauche de la matrice A. Cette d´ecomposition s’applique aussi bien aux matrices sym´etriques qu’aux matrices carr´ees quelconques. On obtient finalement une repr´esentation de A sous la forme A = UTriVT , o` u Tri est une matrice tridiagonale. Dans le cas o` u A est sym´etrique, cette repr´esentation devient simplement A = UTriUT . Il est remarquable que la forme Hessenberg, `a la diff´erence de la forme diagonalis´ee de la matrice, puisse ˆetre obtenue avec un nombre fini d’op´erations. On peut y parvenir soit au moyen d’une suite de n − 2 transformations de Householder, soit au moyen d’une suite de (n − 1)(n − 2)/2 rotations de Givens.. Voici un exemple de programme permettant d’obtenir la forme Hessenberg dans le cas d’une matrice carr´ee quelconque par la m´ethode des rotations de Givens. Dans le cas sym´etrique, la

´ ` CHAPITRE 7. DECOMPOSITIONS EN VALEURS PROPRES ET EN VALEURS SINGULIERES48 proc´edure se simplifie du fait que U = V et la matrice Tri est ´egalement sym´etrique. 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 o` u la matrice A est sym´etrique, Simplifier le programme scilab pr´ec´edent. Il existe plusieurs situations o` u il est utile d’exploiter la forme Hessenberg de la matrice A, en particulier pour la r´ealisation des d´ecompositionsen valeurs propres. Ainsi, pour une matrice sym´etrique, la forme Hessenberg peut ˆetre exploit´ee pour calculer plus rapidement les valeurs propres de la matrice A par la m´ethode de Jacobi. Dans le cas g´en´eral, la forme Hessenberg permet d’initialiser la m´ethode it´erative bas´ee sur la d´ecomposition QR pr´esent´ee ci dessous pour le calcul de la d´ecomposition de Schur de la matrice.

´ ` CHAPITRE 7. DECOMPOSITIONS EN VALEURS PROPRES ET EN VALEURS SINGULIERES49

7.3 7.3.1

D´ ecomposition en valeurs propres : le cas g´ en´ eral Aspects algorithmiques

Soit A une matrice diagonalisable. La m´ ethode des puissances permet de calculer un vecteur propre associ´e ` a la valeur propre de module le plus ´elev´e de fa¸con it´erative : `a partir d’un vecteur initial u0 , on construit it´erativement la suite de vecteurs un+1 =

Aun , k Aun k

(7.5)

qui converge vers un vecteur propre associ´e `a la valeur propre de module le plus ´elev´e. On peut s’en convaincre en exprimant Aun en fonction de la d´ecomposition en valeurs propres de A. En fait, cette m´ethode peut se g´en´eraliser pour construire une matrice de vecteurs propres comme limite asymptotique d’une suite de matrice. La proc´edure it´erative est r´esum´ee ci dessous :  Zn+1 = AQn (7.6) Qn+1 Rn+1 = Zn+1 ( d´ecomposition QR). QH ecomposition de Schur de A. Cet algorithme n´ecessite de l’ordre de n AQn converge vers la d´ n3 op´erations par it´eration. Cependant, ce coˆ ut de calcul peut ˆetre r´eduit en utilisant la forme Hessenberg H de la matrice A d´ecrite plus haut. Une fois la forme Hessenberg obtenue la complexit´e num´erique des it´erations la d´ecomposition de Schur se trouve r´eduite. La procc´edure s’´ecrit ainsi  = QH (initialisation : forme Hessenberg )  H0 0 AQ0 Hk−1 − µI = Qk Rk (d´ecomposition QR ) , (7.7)  Hk = Rk Qk + µI (k)

o` u µ est un coefficient qui permet d’acc´elerer la vitesse de convergence. En effet, si on note λi la i`eme valeur propre obtenue ` a l’it´eration k, alors on peut montrer que λi+1 (−µ) k . |(λi )(k) − λi | ∼ (7.8) λi (−µ) La suite des formes Hessenberg calcul´ees converge vers la matrice triangulaire T de la forme Schur. Le coˆ ut de calcul de chaque it´eration est maintenant de l’ordre de n2 op´erations dans le cas g´en´eral et de seulement n op´erations si A est sym´etrique ou hermitienne car alors H0 est alors une matrice tridiagonale.

7.3.2

Lien avec la d´ ecomposition de Jordan

Pour une matrice carr´ee A, il existe une matrice orthogonale Q telle que QH AQ = T avec T triangulaire sup´erieure. La repr´esentation de A sous la forme QTQH est appel´ee d´ecomposition

´ ` 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 a vu pr´ec´edemment qu’une telle repr´esentation peut ˆetre obtenue comme lmimite d’une suite de formes Hessenberg. T est alors simplement bi-diagonale : elle ne poss`ede de termes non nuls que sur la diagonale et la premi`ere parall`ele `a la diagonale, ici la parall`ele sup´erieure, d´efinie par les termes d’indices (i, i + 1). Exercice Montrez que la diagonale de T contient les valeurs propres de A. La d´ecomposition en valeurs propres d’une matrice carr´ee A peut ne pas exister (consid´erer par exemple la matrice triangulaire sup´erieure 2 × 2 dont tous les termes non nuls sont ´egaux `a 1), mais que par contre il existe toujours une forme, dite de Jordan d´efinie comme suit : ∀A ∈ Cn × Cn , ∃P, P−1 AP = J = diag(J1 , . . . , Jp ), avec   λi 1 0 ···   .. ..   . . Ji =  0 (7.9) .  λi 1  λi Une mˆeme valeur propre peut d´efinir plusieurs matrices blocs Jk . Notons que le nombre d’occurences d’une valeur propres dans J correspond `a son degr´e comme solution du polynˆome caract´eristique de A. Donc, si les valeurs propres sont distinctes A est diagonalisable puisque les blocs d´eg´en`erent alors en matrices de taille 1. Exercice Montrez que si A est normale, alors elle est diagonalisable dans une base orthonorm´ee.

7.4

D´ ecomposition en valeurs singuli` eres

Rappelons que pour la matrice A, il existe toujeours deux matrices unitaires, U et V telles que la matrice UH AV soit diagonale et `a valeurs positive. Les valeurs diagonales de A sont appele´ees valeurs singuli` eres de A. Notons que si A = UDVH , alors AAH = UD2 UH et AH A = VD2 VH .

(7.10)

On voit donc que les valeurs singuli`eres de A sont les racines carr´ees des valeurs propres de AAH (et de AH A). De plus, U et V sont les matrices de vecteurs propres de AAH et de AH A respectivement. Clairement, ` a la diff´erence de la d´ecomposition en valeurs propres, la d´ecomposition en valeurs singuli`eres est d´efinie mˆeme pour des matrices qui ne sont pas carr´ees. De plus, on voit facilement que les colonnes de U associ´ees aux valeurs singuli`eres non nulles d´efinissent une base orthonorm´ee de l’espace image de A, tandis que les colonnes de V associ´ees `a la valeur singuli`ere nulle d´efinissent une base du noyau de A. Ainsi, on peut par exemple d´ecrire facilement le projecteur sur un espace vectoriel S = vect{x1 , ., xp }

´ ` CHAPITRE 7. DECOMPOSITIONS EN VALEURS PROPRES ET EN VALEURS SINGULIERES51 en consid´ A = [x1 , . . . , xp ] = UDVH . Le projecteur est donn´e simplement par P erant la matrice PS = i,Dii 6=0 Ui UH i . Comme on l’a vu, on peut ´egalement formuler ais´ement la r´esolution des syst`emes lin´eaires d’´equations sur-d´etermin´es et sous-d´etermin´es `a partir de la d´ecomposition en valeurs singuli`eres de la matrice A. Autre int´erˆet de la d´ecomposition en valeurs singuli`eres, elle peut ˆetre employ´ee pour approximer une matrice par une matrice de rang plus faible. Ce type d’approximation peut ˆetre exploit´ee, par exemple, en traitement d’images. Etant donn´ee une matrice A on cherche la matrice B de rang r0 , inf´erieur au rang de A telle que k A − B k2F = T r[(A − B)(A − B)H ] soit minimale. La solution est fournie par le r´esultat suivant : Proposition 1 Si la d´ecomposition en valeurs singuli`eres de A s´ecrit UDVH , avec rang(A) = r, pour r0 < r, minrang(B)=r0 k A − B k2F est obtenu pour B = UD0 VH , o` u D0 est obtenu en for¸cant ` a 0 les r − r0 plus petites valeurs singuli`eres non nulles de A dans D. Exercice D´emontrer la proposition pr´ec´edente. La d´ecvomposition en valeurs singuli`eres sert aussi `a d´ecrire la distance entre sous-espaces vectoriels : pour deux sous espaces S1 et S2 dont des bases orthonorm´ees sont d´eq finies par les colonnes

des matrices U1 et U2 est d´efinie comme suit : d(S1 , S2 ) =k PS1 − PS2 k=

7.4.1

1 − mini Σii (U1H U2 )

R´ ealisation de la d´ ecomposition en valeurs singuli` eres

Matrices sym´ etriques Pour une matrice sym´etrique positive, la d´ecomposition en valeurs singuli`eres est ´equivalente et pour une matrice sym´etrique non positive, on passe tr`es facilement d’une forme `a l’autre (le v´erifier `a titre d’exercice). Dans le cas d’une matrice sym´etrique, on pourra chercher `a acc´elerer la vitesse de convergence de la m´ethode de Jacobi en commen¸cant par se ramener `a forme Hessenberg et en exploitant les sp´ecificit´es du cas sym´etrique dans la d´emarche pr´esent´ee ci dessous pour le cas de matrices carr´ees quelconques.

Matrices quelconques Notons d’abord qu’on pourrait obtenir la d´ecomposition en valeurs singuli`eres d’une matrice A quelconque en r´ealisant les d´ecompositions en valeurs propres des matrices sym´etriques AAT et AT A. On peut cependant proc´eder de fa¸con plus directe, comme on va le voir. En partant de la forme Hessenberg d’une matrice A = UTriVT quelconque, on peut faire la remarque suivante : l’´elimination de la premi`ere sous diagonale de A par une s´equence de n − 1

´ ` CHAPITRE 7. DECOMPOSITIONS EN VALEURS PROPRES ET EN VALEURS SINGULIERES52 rotations de Givens transforme la matrice en une matrice triangulaire sup´erieure qui poss`ede des termes non nuls sur les deux premi`eres sur-diagonales. On reviend `a une matrice tridiagonale en ´eliminant la deuxi`eme sur-diagonale (termes d’indices (i, i + 2)) par une s´equence de n − 2 rotations de Givens appliqu´ees ` a droite. On applique alors de mˆeme une technique d’´elimination de la premi`ere sur-diagonale de A par une s´equence de n − 1 rotations de Givens appliqu´ees `a droite suivie de l’´elimination des termes de la deuxi`eme sous-diagonale au moyen de n − 2 rotations de Givens. En partant de la forme Hessenberg A = UTriVT , cela peut se traduire par un code de la forme suivante :

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,

´ ` 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 sˆ ur r´eduire la longueur de ce code en r´ealisant par exemple les rotations dans une fonction sp´ecifique, mais les appels `a cette fonction peuvent r´eduire la vitesse d’execution. Notons ´egalement qu’on a suppos´e ici que la matrice A est carr´ee. On peut toujours se ramener `a ce cas, au besoin en compl´etant la matrice A par des lignes ou des colonnes nulles, mˆeme si d’un point de vue pratique, il vaut mieux affiner l’´ecriture de l’algorithme pour ´eviter d’alourdir les calculs et de stockage entraˆın´es une telle compl´etion de la matrice A par des 0.

Bibliographie ´ ´ [1] G. Allaire, Analyse num´erique et optimisation, Editions de l’Ecole Polytechnique, 2005. [2] P.G. Ciarlet, Introduction ` a l’Analyse Num´erique 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 Scientific Computing, W.H.Press, Cambridge University Press. [5] http ://www.univ-lille1.fr/ eudil/jbeuneu/index.html (analyse numerique, cours et programmes C, en fran¸cais) [6] http ://www.indiana.edu/∼rac/hpc/numerics.html (site de ressources pour le calcul numerique) [7] http ://dmawww.epfl.ch/rappaz.mosaic/Support/support/ (cours d’analyse num´erique de l’EPFL) [8] http ://www.netlib.org/lapack/lug/lapack lug.html (biblioth`eque Fortran LAPACK ; gratuit) [9] http ://hpux.connect.org.uk/hppd/hpux/Maths/LinAlgebra/CLAPACK-1.0/ (t´el´echargement de la version C de LAPACK nomm´ee CLAPACK ; gratuit) [10] http ://www.scilab.org/ (Scilab langage homepage)

54

Deuxi` eme partie

Introduction aux op´ erateurs lin´ eaires

55

Chapitre 8

Introduction L’objectif de cette partie est d’´etendre la notion de matrice au cas de transformations lin´eaires sur des espaces de dimension infinie. Lorsqu’on consid`ere des fonctions d´efinies sur des espaces vectoriels de dimension infinie (c’est dire qui admettent des familles infinies de vecteurs lin´eairement ind´ependants), on parle d’op´ erateur plutˆot que de fonction, mˆeme s’il s’agit au fond de la mˆeme chose ; simplement, il est un peu plus commode de parler d’un op´erateur d´efini sur un espace de fonctions que d’une fonction d´efinie sur un espace de fonctions. On se limite ici ` a une pr´esentation des op´erateurs sur des espaces de Hilbert. Les espaces de Hilbert g´en´eralisent la notion d’espace hermitien, un espace hermitien ´etant un espace vectoriel de dimension finie sur le corps des complexes muni d’un produit scalaire. Les espaces hermitiens constituent eux mˆeme une g´en´eralisation au cas complexe des espaces euclidiens qui eux sont d´efinis sur le corps des r´eels. Un des int´erˆets des espaces de Hilbert r´eside dans le fait que les propri´et´es g´eom´etriques usuelles des espaces euclidiens ou hermitiens s’y transposent, ce qui contribue ` a faciliter la r´esolution de nombreux probl`emes et `a en fournir une interpr´etation g´eom´etrique simple. Dans le chapitre 9, on pr´esente rapidement la notion d’espace de Hilbert et de base ortogonale sur ces espaces. Le chapitre 10 fournit des notions de base importantes sur les op´erateurs lin´eaires des espaces de Hilbert.

56

Chapitre 9

Espaces de Hilbert 9.1 9.1.1

D´ efinition produit scalaire

Rappelons tout d’abord qu’un produit scalaire hermitien x, y →< x, y > sur un espace vectoriel E sur le corps des nombres complexes est une application de E × E dans C caractris´ee par les propri´et´es suivantes qui g´en´eralisent 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) =k x − y k= < x − y, x − y >.

9.1.2

(9.1)

Espace de Hilbert

Un espace de Hilbert est un espace vectoriel norm´e H, complet et muni d’un produit scalaire hermitien qui induit la norme de H. Rappelons ici que par d´efinition H est complet si toute suite de Cauchy (xn )n∈N de H, c’est dire telle que limm,n→∞ k xm − xn k= 0, est convergente. Exemples P (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 d´efini par X < x, y >= xk yk∗ . (9.2) k∈N

57

CHAPITRE 9. ESPACES DE HILBERT

58

Pour la d´emonstration du caract`ere complet de l2 , on pourra se r´ef´erer a` [3] (chap. I). Rb (ii) De mˆeme, l’espace L2 ([a, b]) des fonctions f de carr´e int´egrable sur [a, b] ( a |f (t)|2 dt < ∞) est un espace de Hilbert pour le produit scalaire hermitien d´efini par Z b f (t)g(t)∗ dt, (9.3) < f, g >= a

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

9.2

Th´ eor` eme de projection

On retrouve pour le produit scalaire dans les espaces de Hilbert des propri´et´es analogues ` a celles du produit scalaire classique. Ainsi, le th´eor`eme de projection se g´en´eralise aux espaces de Hilbert : Th´ eor` eme 2 Si K est un sous ensemble convexe ferm´e d’un espace de Hilbert H, alors ∀x ∈ H, ∃!y ∈ K, k x − y k= inf k x − z k . z∈M

(9.4)

De plus, y est caract´eris´e par la relation suivante : ∀z ∈ K, < x − y, z − x >≤ 0.

(9.5)

Si K est un sous-espace vectoriel ferm´e de H, l’in´egalit´e (9.5) devient une ´egalit´e. On pourra trouver la d´emonstration de ce r´esultat dans [2] (chap. V). Exemple : Esp´ erance conditionnelle Dans un espace probabilis´e (Ω, A, P ), l’ensemble L2 (Ω, A, P ) des variables al´eatoires X ` a valeurs complexes et telles que E[|X|2 ] < ∞ forme un espace de Hilbert, muni du produit scalaire < X, Y >= E[XY ∗ ]. Par ailleurs, l’ensemble   Z 2 2 L (PY ) = h; h(Y ) ∈ (Ω, A, P ), |h(y)| PY (dy) < ∞ (9.6) est un sous-espace ferm´e de L2 (Ω, A, P ), ce qui assure l’existence d’un unique optimum au probl`eme min k X − h(Y ) k, (9.7) h∈L2 (PY )

avec k Z k=

p ˆ qui est caract´eris´e par les relations (voir l’´equation (9.5)) E[|Z|2 ]. Cet optimum h, ˆ )) g(Y )∗ ] = 0, ∀g ∈ L2 (PY ), E[(X − h(Y

(9.8)

ˆ ). Concernant la justification d´efinit l’esp´erance conditionnelle de X sachant Y : E[X|Y ] = h(Y 2 du caract`ere complet des espaces L (µ), o` u µ est une mesure born´ee, on pourra se r´ef´erer [5] (chap. 3, p. 58). Concernant l’esp´erance conditionnelle dans L2 (Ω, A, P ), on pourra par exemple se r´ef´erer `a [1] (chap. 4).

CHAPITRE 9. ESPACES DE HILBERT

9.3

59

Bases orthonorm´ ees

Dans toute la suite, H d´esigne un espace de Hilbert. D´ efinition 1 Une famille F = (φk )k∈K de H, avec K fini ou d´enombrable, est dite libre si toute sous famille de taille finie de F est une famille libre. F est une famille orthonorm´ee de H si ses ´el´ements v´erifient < φk , φl >= δk,l . (9.9) dans la suite, pour simplifier les notations, on prendra K = N∗ et simplement K = 1, 2, . . . , n pour un espace de dimension finie. Notons la propri´et´e suivante : x ⊥ y ⇒ k x + y k=k x k + k y k, dont la d´emonstration est imm´ediate. De plus, il est clair que l’in´egalit´e de Cauchy-Schwarz | < x, y > | ≤k x k . k y k s’applique aussi dans les espace de Hilbert. Indiquons ´egalement la propri´et´e suivante : Proposition 2 Dans un espace de Hilbert, si xn → x et yn → y, alors < xn , yn >→< x, y >. Exercice D´emontrer la propri´et´e pr´ec´edente. Les r´esultats pr´ec´edents permettent d’´etablir les propri´et´es suivantes des familles orthonorm´ees : Th´ eor` eme 3 Si F = (φk )k∈K (K ⊂ N) est une famille orthonorm´ee de H, alors pour tout x ∈ H, P 2 1. e de Bessel) k | < x, φk > | ≤k x k (ingalit´ P 2. k < x, φk > φk converge P P 2 3. k ck φk converge si et seulement si k |ck | < ∞ P 4. Si x = k ck φk , alors ck =< x, φk >. Exercice D´emontrer les propri´et´es ´enonces dans le th´eor`eme. On dit qu’une famille orthonorm´ee F = (φk )k∈K deP H est une base orthonorm´ ee si tout ´el´ement x de H peut se repr´esenter sous la forme x = k ck φk . Notons que d’apr`es le th´eor`eme pr´ec`edent ck =< x, φk > (proprit´e 4).

Th´ eor` eme 4 Si F = (φk )k∈K de H est une famille orthonorm´ee de H, les propri´et´es suivantes sont ´equivalentes 1. F est une base de H 2. (∀k, < x, φk >= 0) ⇒ x = 0 3. L’ensemble vect(F ) des combinaisons lin´eaires finies d’´el`ements de F est dense dans H

CHAPITRE 9. ESPACES DE HILBERT 4. ∀x ∈ H, k x k2 =

60

| < x, φk > |2 (´egalit´e de Parseval) P 5. ∀x, y ∈ H, < x, y >= k < x, φk > < y, φk >∗ P

k

P P e du produit scalaire donne, et y = ∞ Preuve (1)⇒(5)P: Si x = ∞ k=1 yk φk , la continuit´ k=1 xk φk P en notant x ˜n = nk=1 xk φk et y˜n = nk=1 yk φk : < x, y >= lim < x ˜n , y˜n >= lim n→∞

n X

n→∞

x k yk ,

(9.10)

k=1

La conclusion vient du fait que xk =< x, φk > et yk =< y, φk >. (5)⇒(4) : prendre x = y dans (5). P P (4)⇒(3) : k x − nk=1 < x, φk > φk k=k x k − nk=1 | < x, φk > |2 et le terme de droite de l’´egalit´e tend vers 0. (3)⇒(2) :

Pn

k=1

< x, φk > φk → x et

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

P

k

Pn

k=1

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

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

P

k

< x, φk > φk .

Exemple Les polynˆ omes de Legendre (Ln )n∈N r 2n + 1 1 dn 2 Ln (x) = (x − 1)n n 2n n! dxn

(9.11)

forment une base orthonormale de L2 ([−1, 1)]. Nous aurons l’occasion d’utiliser ces polynˆomes dans le chapitre de ce document consacr´e l’int´egration num´erique. On pourra v´erifier `a titre d’exercice que les polynˆ omes de Legendre forment une base orthonorm´ee de l’ensemble des polynˆomes sur [−1, 1]. De plus, le th´eor`eme d’approximation de Weierstrass (voir paragraphe 11.2.2), l’ensemble des polynˆ omes 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’o` u, 2 d’apr´es la relation (3) pr´ec´edente, le fait que (Ln )n∈N est une base orthonormale de L ([−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 9.4.1

S´ eparabilit´ e et isom´ etrie S´ eparabilit´ e et bases

Un espace de Hilbert H est dit s´ eparable s’il poss`ede une famille finie ou d´enombrable d’´el´ements qui est dense dans H.

Th´ eor` eme 5 H contient une base orthonorm´ee d´enombrable si et seulement si il est s´eparable.

CHAPITRE 9. ESPACES DE HILBERT

61

Preuve Si H est s´eparable, on peut construire it´erativement, par orthogonalisation de Schmidt, une famille orthonorm´ee de H qui engendre un espace dense dans H, ce qui ´etablit que cette famille orthonormale est une base de H d’apr`es le th´eor`eme 4 (proprit´e 3). R´eciproquement, d’apr`es ce mˆeme th´eor`eme, toute base orthonorm´ee d´enombrable engendre par combinaisons lin´eaires finies un sous espace d´enombrable dense de H. Notons que tous les espaces de Hilbert ne sont pas s´eparables. Ainsi, les fonctions d´efinies sur R par t 7→ eiλt , avec λ ∈ R forment une famille orthonorm´ee non d´enombrable pour le produit scalaire Z T 1 f (t)g(t)∗ dt (9.12) < f, g >= lim T →∞ 2T −T et engendrent donc un espace de Hilbert non s´eparable. Comme en g´en´eral on s’int´eresse cependant essentiellement aux espaces de Hilbert s´eparables, les bases mises en oeuvre seront finies ou d´enombrables.

9.4.2

Projection

D’apr`es ce qui pr´ec`ede, un sous espace ferm´e s´eparable H0 de H poss`ede une base orthonormale d´enombrable (ψk )k∈K . Si y ∈ H, il est ais´e de v´erifier d’apr`es le th´eor`eme de projection que la projection de y sur H0 , not´ee y|H0 , est donn´ee par X y|H0 = < y, ψk > ψk . (9.13) k

9.4.3

Isom´ etrie

Th´ eor` eme 6 Deux espaces de Hilbert H1 et H2 de dimensions infinies et s´eparables sont lin´eairement isom´etriques, c’est dire qu’il existe une application lin´eaire A : H1 → H2 , telle que pour tout x de H1 , k Ax k=k x k.

Preuve (φk )k et (ψk )k d´esignant des bases de H1 et H2 respectivement, il suffit de prendre A telle que X Ax = < x, φk > ψk . (9.14) k

L’in´egalit´e de Parseval permet alors de conclure. Notons en particulier que tout espace de Hilbert P s´eparable de dimension infinie est isom´etrique l2 : l’application A : H → l2 associe ` ax= ∞ k=1 < x, φk > φk la suite (< x, φk >)k∈N∗ de ses coefficients. Notons que les coefficients < x, φk > sont appel´es coefficients de Fourier de x associ´es `a la base (φk )k . Remarque Parfois, on utilise plutˆ ot l’isom´etrie de H avec l2 (Z), l’ensemble des suite indic´ees par Z dont les carr´es sont absolument sommables. Ceci est utile en particulier pour identifier les

CHAPITRE 9. ESPACES DE HILBERT fonctions x de L2 ([−1/2, 1/2]) ` a la suite de leurs coefficients de Fourier xk = avec k ∈ Z.

62 Rπ −π

x(t)e−2iπkt dt,

Chapitre 10

Op´ erateurs lin´ eaires On consid`ere ici des op´erateurs lin´eaires A : H1 → H2 , o H1 et H2 sont des espaces de Hilbert sur le corps des complexes. La notion d’op´erateur lin´eaire permet la g´en´eralisation de la notion de matrice au cas de dimensions infinies.

10.1

Norme d’un op´ erateur

On d´efinit la norme de A par k A k= sup kxk

k Ax k = sup k Ax k . kxk kxk≤1

(10.1)

Notons que la norme d’un op´erateur ainsi d´efinie d´efinit effectivement une norme sur l’espace vectoriel L(H1 , H2 ) des op´erateurs lin´eaires de H1 dans H2 . Si k A k< ∞, l’op´erateur est dit born´e. Comme en dimension finie, la lin´earit´e entraˆıne une ´equivalence entre le caract`ere born´e d’un op´erateur et son caract`ere continu : Th´ eor` eme 7 l’op´erateur lin´eaire A : H1 → H2 est born´e si et seulement si il est continu, sa continuit´e ´etant elle mˆeme ´equivalente ` a sa continuit´e uniforme sur H1 . On pourra d´emontrer l’´equivalence des trois propri´et´es `a titre d’exercice.

63

´ ´ CHAPITRE 10. OPERATEURS LINEAIRES

10.2

64

Repr´ esentation matricielle

Les espaces de Hilbert s´eparables de dimension infinie ´etant isom´etriques, on peut les identifier. Consid´erons donc maintenant un op´erateur born´e A de H dans lui mˆeme. Comme P Ax = j < x, φj > Aφj (10.2) P P = j < x, φj > ( i < Aφj , φi > φi ) on a [Ax]i =

X

< Aφj , φi >< x, φj > .

(10.3)

j

On voit donc que l’op´erateur A peut ˆetre repr´esent´e par la matrice de taille infinie de coefficient g´en´eral (i, j) ´egal ` a < Aφj , φi >. Notons que selon que la base est indic´ee par N∗ ou par Z, on obtiendra respectivement une matrice ”infinie vers la droite et vers la gauche” ou ”doublement infinie”. Exemple On consid`ere Z

b

Ax =

k(t, s)x(s)ds,

(10.4)

a

d´efini sur L2 ([a, b]). En utilisant l’ingalit´e de Cauchy Schwarz, il apparaˆıt que Z k A k≤ |k(t, s)|2 dsdt.

(10.5)

[a,b]×[a,b]

A est donc born´e d`es lors que k ∈ L2 ([a, b]2 ). Dans ce cas, la matrice associ´ee A est de terme g´en´eral Z aij = |k(t, s)|2 φi (s)φj (t)∗ dsdt =< k, Φji >, (10.6) [a,b]×[a,b]

o` u Φij (s, t) = φi (s)φj (t)∗ , est parfaitement d´efinie. Comme (Φij )ij est une base de L2 ([a, b]2 ), il est clair que les coefficients aij sont de carr´es absolument sommables : X X |aij |2 = | < k, Φji > |2 =k k k2 < ∞ (10.7) ij

ij

Les notions d’image et de noyau d’un op´erateur lin´eaire sont d´efinies exactement comme en dimension finie. Lorsque Im(A) est un espace de dimension n finie, on dit que A est de rang n. Exemple Pn Si φ1 , . . . , φn et ψ1 , . . . , ψn sont des familles de H1 et de H2 respectivement, l’op´erateur x 7→ k=1 < x, φk > ψk est de rang fini, au plus ´egal n. R´eciproquement, on a le r´esultat suivant : Th´ eor` eme 8 Si un op´erateur lin´eaire born´e A : H1 → H2 est de rang fini n, il existe des familles de vecteurs φ1 , . . . , φn et ψ1 , . . . , ψn , dans H1 et H2 respectivement, telles que Ax =

n X k=1

< x, φk > ψk .

(10.8)

´ ´ CHAPITRE 10. OPERATEURS LINEAIRES

65

La preuve de ce th´eor`eme fait appel au th´eor`eme important de repr´ esentation de Riesz : Th´ eor` eme 9 (Riesz) Toute forme lin´eaire born´ee ϕ : H → C est caractris´ee par un unique ´el´ement y ∈ H tel que ϕ(x) =< x, y >, ∀x ∈ H (10.9) De plus, k ϕ k=k y k. Preuve Commen¸cons par ´edmontrer le th´eor`eme de Riesz. Si ϕ = 0, alors y = 0. Supposons donc que ϕ 6= 0. Kerϕ est clairement un sous espace vectoriel de H. De plus Kerϕ est ferm´e d’apr`es la continuit´e du produit scalaire. Il existe v 6= 0 dans (Kerϕ)⊥ . En effet, il existe un vecteur u ∈ H qui n’appartient pas ` a Kerϕ (sinon, on aurait ϕ = 0). Notons u ˆ la projection orthogonale de u sur Kerϕ. D’apr`es le th´eor`eme de projection, le vecteur v = u − u ˆ appartient `a (Kerϕ)⊥ et est non nul car u ∈ / Kerϕ. Notons y = vϕ(v)∗ / k v k2 . Pour tout x ∈ H, notons que ϕ(x) ϕ(x) x=y + (x − y ), (10.10) ϕ(y) ϕ(y) o` u le deuxi`eme terme de la somme appartient `a Kerϕ et est donc orthogonal `a y. On a donc < x, y >=< y

ϕ(x) ϕ(x) ϕ(x) ϕ(x) + (x − y ), y >=< y , y >=k y k2 = ϕ(x), ϕ(y) ϕ(y) ϕ(y) ϕ(y)

(10.11)

car la relation y = vϕ(v)∗ / k v k2 entraˆıne que ϕ(y) =k y k2 . L’unicit´e de y provient du fait que si y 0 v´erifie ´egalement ϕ(x) =< x, y 0 > pour tout x, alors < x, y − y 0 >= 0 en particulier pour x = y − y 0 . Par suite k y − y 0 k= 0 et y = y 0 . Enfin, k ϕ k=k y k d’apr`es l’ingalit´e de Cauchy Schwarz, ce qui ach`eve la d´emonstration du th´eor`eme de repr´esentation de Riesz. D´emontrons maintenant le th´eor`eme 8 Prenons pour ψ1 , . . . , ψn une base ortonorm´ee de ImA. Comme Ax ∈ ImA, n X Ax = < Ax, ψk > ψk . (10.12) k=1

Comme ϕk : x 7→< Ax, ψk > est une forme lin´eaire born´ee, on peut encore ´ecrire d’apr`es le th´eor`eme de repr´esentation de Riesz que ϕk (x) =< x, φk > pour un certain ´el´ement φk de H1 , d’o` u le r´esultat. Exemple : filtrage Le th´eor`eme de repr´esentation de Riesz montre en particulier que toute forme lin´eaire borne A : L2 (R) → CR se repr´esente pour toute fonction x ∈ L( R) de de fa¸con unique sous la forme int´egrale 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’entr´ee x d’´energie finie une valeur en sortie y(t), peut ˆetre mis sous la forme Z y(t) = x(s)gt (s)∗ ds. (10.13) R

Un filtre ´etant un dispositif lin´eaire et de plus invariant par translation temporelle, l’expression Z z(t) = x(s − τ )gt (s)∗ ds (10.14) R

´ ´ CHAPITRE 10. OPERATEURS LINEAIRES

66

impose que z(t) = y(t − τ ), soit Z y(t − τ ) =

x(s)gt (s + τ )∗ ds.

(10.15)

R

En posant t − τ = u et h(v) = gt (t − v)∗ , comme gt (s + τ )∗ = gt (t − (u − s))∗ = h(u − s), on obtient finalement Z x(s)h(u − s)ds, (10.16) y(u) = R

et on retrouve le r´esultat bien connu de l’expression du filtrage comme une convolution.

Bibliographie [1] M. Benam, N. El Karoui, Promenade al´eatoire - chaˆınes de Markov et simulations, martingales et strat´egies, Ed. Ecole Polytechnique, 2004. [2] H. Brezis, Analyse fonctionnelle, masson, 1992. [3] I. Gohberg, S. Golberg, M. A. Kaashoek, Basic classes of linear operators, Birkh¨auser, 2003. [4] V. Trenoguine, Analyse fonctionnelle, Ed. MIR, Moscou, 1980. [5] M. Willem, Analyse harmonique r´eelle, Hermann, 1995. [6] K. Yosida, Functional analysis, Springer Verlag, 1980.

67

Troisi` eme partie

Interpolation et int´ egration

68

Chapitre 11

Interpolation et int´ egration 11.1

Introduction

En g´en´eral, l’int´egrale sur un intervalle [a, b] d’une fonction g(x) est approch´ee en consid´erant l’int´egration exacte d’un approximant polynomial de cette fonction. Aussi, nous allons envisager ici quelques aspects classiques de l’interpolation polynomiale et de l’int´egration. Notons qu’en b−a posant f (x) = g( a+b eme de l’interpolation ou de 2 + 2 x), avec x ∈ [−1, 1] on transfert le probl` l’int´egration sur [a, b] en un probl`eme analogue sur l’intervalle [−1, 1]. Ainsi, dans la suite, on se restreindra sans perte de g´en´eralit´es ` a des fonctions d´efinies sur [−1, 1].

11.2

Interpolation polynomiale

Les formules de quadrature classiques sont connues pour assurer l’int´egration exacte des fonctions polynomiales jusqu’ un degr´e au moins ´egal ‘`a n − 1, o` u n repr´esente le nombre de points, ou noeuds, de la quadrature. Nous allons montrer qu’en d’autres termes cela signifie que la quadrature Z n X f (x)dx ≈ wk f (xk ) (11.1) [−1,1]

k=1

est d´efinie de sorte ` a assurer l’int´egration exacte de l’interpolant de Lagrange de f aux points xk .

11.2.1

Interpolation de Lagrange

Afin de pr´eciser les choses, commen¸cons par rappeler ici la notion d’interpolant polynomial de Lagrange d’une fonction. Etant donn´es n points xk (k = 1, . . . , n) on d´efinit les polynˆomes

69

´ CHAPITRE 11. INTERPOLATION ET INTEGRATION

70

suivants : w(x)

= Πk=1,n (x − xk )

wk (x) = Πj=1,n (x − xj ) j6=k

lk (x)

=

(11.2)

wk (x) wk (xk )

Il est clair que lk (xk ) = 1 et lk (xj ) = 0 pour xj 6= xk : lk (xj ) = δk,j . Etant donn´ee une fonction f (x) d´efinie sur [−1, 1] il est alors clair que le polynˆome de degr´e n qui passe par les points (xk , f (xk ))k=1,n est donn´e par fn (x) =

n X

lk (x)f (xk ).

(11.3)

k=1

fn (x) est appel´e polynˆ ome d’interpolation de Lagrange de f (x) aux points x1 , . . . , xn .

11.2.2

Le ph´ enom` ene de Runge

Malheureusement, lorsqu’on calcule un interpolant de Lagrange pour des points xk r´eguli`erement espac´es dans [−1, 1], on observe que son comportement tend se d´egrader du fait de l’apparition d’oscillations vers les extr´emit´es de l’intervalle, qui tendent croˆıtre avec le degr´e n de l’interpolation. Ce ph´enom`ene est connu sous le nom de ph´ enom` ene de Runge [?, ?]. En pratique, ce ph´enom`ene devient trˆes marqu´e pour des valeurs de n de l’ordre de 10, mˆeme pour des fonctions infiniment d´erivables variant lentement, telle la fonction f (x) = (1 + 16x2 )−1 consid´er´ee par Runge pour mettre en ´evidence le ph´enom`ene. Dans ces conditions, il apparaˆıt que l’emploi d’un interpolant polynomial de Lagrange calcul´e sur des points r´eguli`erement espac´es pour approcher l’int´egrale d’une fonction f via l’int´egration de cet interpolant ne conduit pas ` a de bons r´esultats. Cela ne signifie cependant pas qu’on ne puisse pas utiliser d’approximant polynomial pour int´egrer une fonction de fa¸con pr´ecise. En effet, le th´ eor` eme de Weierstrass indique que pour toute fonction f continue sur [−1, 1], si Pn repr´esente l’ensemble des polynˆomes de degr´e inf´erieur ou ´egal ` a n, alors il existe une s´equence (qn )n∈N , avec qn ∈ Pn , telle que [?] lim

sup

n→∞ p ∈P , |x|≤1 n n

|f (x) − pn (x)| = 0.

(11.4)

Une fa¸con d’obtenir une telle suite de polynˆomes consiste `a consid´erer des interpolants de Lagrange de f (x) d´efinis en des points xk irr´eguli`erement espac´es. Plus pr´ecisemment, si on choisit (n) pour n fix´e des points (xk )k=1,n tels que lorsque n augmente ces points soient asymptotiquement distribu´es dans [−1, 1] selon la densit´e suivante [?] 1 ρ(x) = √ , (11.5) π 1 − x2 alors, la suite correspondante des interpolants de Lagrange converge uniform´ement vers f sur [−1, 1].

´ CHAPITRE 11. INTERPOLATION ET INTEGRATION

11.3

71

Int´ egration de Newton-Cotes

L’int´ egration de Newton-Cotes consiste `a remplacer l’int´egration de la fonction f par celle de son interpolant polynomial de Lagrange Pn calcul´e pour des points xk r´eguli`erement espac´es. equation (11.3), avec par exemple L’interpolant est donn´e par fn (x) = k=1 lk (x)f (xk ) de l’´ xk = (2k − n − 1)/n, et k = 1, . . . , n. La formule de quadrature pour f (x) est donc donn´ee par Z

1

Z

1

f (x)dx ≈ −1

fn (x)dx = −1

n Z X

1

 lk (x)dx fn (xk ).

(11.6)

−1

k=1

P Comme fn (xk ) = f (xk ), les poids de la quadrature nk=1 wk f (xk ) qui assurent une quadrature exacte de l’interpolant de Lagrange sont donn´es par Z 1 wk = lk (x)dx. (11.7) −1

En particulier, les polynˆ omes 1, x, x2 , . . . , xn−1 sont ´egaux `a leurs interpolants de Lagrange obtenus sur n points. Donc les poids d´efinis par (11.7) v´erifient ´egalement les ´equations lin´eaires Z

1

xm dx =

−1

n X

wk xm k ,

m = 0, . . . , n − 1,

(11.8)

k=1

soit     

1 x1 .. .

1 x2 .. .

... ...

1 xn .. .

... xnn−1 xn−1 xn−1 2 1

avec Z

    

1

xk−1 dx =

ak = −1

w1 w2 .. .





    =  

wn

a1 a2 .. .

   , 

(11.9)

an

1 − (−1)k . k

(11.10)

On v´erifie que pour des points xk r´eguli`erement espac´es la matrice pr´ec´edente est mal conditionn´ee et que l’amplitude des coefficients wk est tr`es fluctuante. L’amplitude des oscillations des coefficients wk augmente d’ailleurs exponentiellement avec n [?]. Ce mauvais comportement num´erique limite l’ordre de quadrature envisageable pour la m´ethode de Newton-Cotes et en pratique, on la met souvent en oeuvre en d´ecoupant l’intervalle [−1, 1] en plusieurs sous-intervalles et en appliquant la quadrature de Newton Cotes avec un petit nombre de noeuds sur chacun d’eux. De plus, compte tenu de la mauvaise qualit´e de l’approximation fournie par l’interpolation polynomiale pour un ´echantillonnage r´egulier (ph´enom`ene de Runge), on comprend que la quadrature de Newton-Cotes qui est bas´ee sur cette approximation fournisse des r´esultats assez m´ediocres. On donne ci dessous un programme Matlab simple pour r´ealiser la quadrature de Newton-Cotes. On pourra y v´erifier l’influence de la valeur de n sur les poids f n

= @(t) cos(pi*t); = 20;

% fonction a int´ egrer % nombre de noeuds de quadrature

´ CHAPITRE 11. INTERPOLATION ET INTEGRATION x M w I

= = = =

72

linspace(-1,1,n); % noeuds flipud(vander(x)’); % matrice de VanderMonde de calcul des poids inv(M)*((1-(-1).^(1:n))./(1:n))’; % poids f(x)*w % calcul de l’int´ egrale par la m´ ethode % de Newton Cotes

11.4

M´ ethode de Gauss-Legendre

On peut chercher corriger les effets du ph´enom`ene de Runge associ´e au choix de noeuds r´eguli`erement espac´es pour le polynˆ ome d’interpolation de Lagrange d’une fonction en consid´erant une r´epartition irr´eguli`ere des noeuds xk . Les m´ethodes de Gauss, bas´ees sur le choix de noeuds de quadrature ´egaux aux z´eros de polynˆ omes orthogonaux constituent un choix appropri´e. On se limitera ici au cas des polynˆ omes orthonorm´es sur [−1, 1] d´efinis par Z 1 pn (x)pm (x)dx = δm,n , (11.11) −1

avec pn de degr´e n, et qui d´efinissent les polynˆ omes de Legendre. Ceux ci se caract´erisent de diverses mani`eres [?]. On peut en particulier d´efinir les versions non normalis´es de ces polynˆomes au moyen de la r´ecurrence ` a trois termes suivante :

p0 (x)

=1

p1 (x)

=x

(11.12)

(n + 1)Pn+1 (x) = (2n + 1)xPn (x) − nPn−1 (x). R1 La normalisation peut ensuite ˆetre obtenue en notant que −1 p2n (x)dx = 2/(2n+1). Consid´erons maintenant la quadrature dont les noeuds sont d´efinis par les z´eros de pn (x) et dont les poids correspondants sont solution des quations (11.9). Ces param`etres d´efinissent la quadrature de Gauss-Legendre sur n points. On a alors la propri´et´e remarquable suivante : Th´ eor` eme 10 La quadrature de Gauss-Legendre sur n points est une formule de quadrature exacte pour tous les polynˆ omes de degr´e inf´erieur ou ´egal 2n − 1. Preuve Comme les param`etres de la quadrature satisfont aux ´equations (11.9), il apparaˆıt qu’elle est exacte pour tout polynˆ ome de degr´e inf´erieur ou ´egal `a n − 1. Maintenant, tout polynˆome q(x) de degr´e inf´erieur ou ´egal `a 2n − 1 pourra s’´ecrire X X q(x) = ak xk + pn (x)( bl xk ). (11.13) k=0,n−1

l=0,n−1

La relation (11.13) provient simplement de la division euclidienne de q(x) par pn (x) et de la contrainte de degr´e sur q(x). Donc Z 1 Z 1 X Z 1 X k q(x)dx = ( ak x )dx + pn (x)( bk xk )dx. (11.14) −1

−1 k=0,n−1

−1

k=0,n−1

´ CHAPITRE 11. INTERPOLATION ET INTEGRATION

73

La quadrature de Gauss-Legendre de la premi`ere int´egrale du terme de droite de l’´egalit´e (11.14) est exacte car le polynˆ ome intgr´e est de degr´e inf´erieur ou ´egal `a n − 1. Notons maintenant que le polynˆome pn est orthogonal aux polynˆomes p0 , p1 , . . . , pn−1R. Or, ces P derniers engendrent le 1 mˆeme espace vectoriel que les polynˆ omes 1, x, . . . , xn−1 . Donc −1 pn (x)( k=0,n−1 bk xk )dx = 0. De plus,   X X wj pn (xj )  ak xkj  = 0, (11.15) j=1,n

k=0,n−1

puisque les xj sont les z´eros de pn . Donc, la quadrature de Gauss-Legendre est encore exacte pour la seconde int´egrale du terme de droite de l’´egalit´e (11.14), ce qui termine la d´emonstration.

En pratique, on observe un excellent comportement pour la quadrature de Gauss-Legendre. Notons ´egalement que la quadrature de Gauss correspond bien `a l’int´egration de l’interpolant polynomial de Lagrange associ´e aux z´eros de pn (x) puisque les poids satisfont aux ´equations (11.9) et donc aux ´equations (11.7). On peut de plus montrer [?] que les z´eros de pn (x) sont asymptotiquement distribu´es suivant la densit´e donn´ee par l’´equation (11.5), ce qui confirme la capacit´e de la m´ethode ` a ´echapper au ph´enom`ene de Runge. Indiquons ici qu’une ´evaluation approch´ee des poids peut ˆetre obtenue `a partir de la formule suivante ([?] p.89)   4(n − k) − 1 n−1 4(n − k) − 1 1 xk = cos π+ cot( π) + o( ) , k = 1, . . . , n. (11.16) 4n + 2 8n3 4n + 2 n4 Ces valeurs des noeuds peuvent ´eventuellement ˆetre am´elior´ees par un algorithme de Newton de recherche des z´eros de pn (x) et initialis´e successivement par chacune des valeurs xk de la relation (11.16). Le programme suivant utilise l’approximation pr´ec´edente et pourra ˆetre employ´e pour mettre en ´evidence le meileur comportement de la m´ethode de Gauss-Legendre compar´e a` la mthode de Newton-Cotes. f n x x M w I

= = = = = = =

@(t) cos(pi*t); 20; pi*(4*(n:-1:1)-1)/(4*n+2); cos(x+((n-1)/(8*n^3))*cot(x)); flipud(vander(x)’); inv(M)*((1-(-1).^(1:n))./(1:n))’; f(x)*w

% fonction a int´ egrer % nombre de noeuds de quadrature % % % % %

noeuds approch´ es matrice de VanderMonde poids calcul de l’int´ egrale par la m´ ethode de Gauss-Legendre approch´ ee

Il s’agit cependant ici d’une ´ecriture sous-optimale du programme `a objectif purement p´edagogique. Ainsi, on v´erifiera que lorsque n augmente, le conditionnement de la matrice M se d´egrade, ce que l’on peut tester avec la commande Matlab ’cond(M)’. Il est ´etabli dans la litt´erature que la ´ercurrence (11.12) permet d’obtenir les noeuds et les poids comme solution d’un prob`elme de valeurs propres d’une matrice tridiagonale [?], pour un coˆ ut

´ CHAPITRE 11. INTERPOLATION ET INTEGRATION

74

de calcul de l’ordre de O(n2 ) op´erations. Sans entrer dans le d´etail de cet algorithme, indiquons que sa mise en oeuvre conduit au code suivant propos´e dans [?] et dont on pourra comparer la bonne robustesse ` a celle du programme pr´ec´edent :

f n m T T [V,D] x [x,a] w I

= = = = = = = = = =

@(t) cos(pi*t); 100; n-1; diag(0.5./sqrt(1-(2*(1:m)).^(-2)),1); T + T’; eig(T); diag(D); sort(x); 2*V(1,a).^2; w*f(x)

% fonction a int´ egrer % nombre de noeuds de quadrature

% matrice de Jacobi % diagonalisation % % % %

noeuds class´ es par ordre croissant poids calcul de l’int´ egrale par la m´ ethode de Gauss-Legendre

On pourra v´erifier qu’` a la diff´erence de ce que l’on observe avec la m´ethode de Newton-Cotes la dispersion des valeurs des poids croˆıt lentement avec n. Avec ce code, on v´erifie que l’erreur de quadrature d´ecroit rapidement vers le bruit de calcul lorsque n augmente. Notons enfin que la m´ethode de Gauss Legendre se g´en´eralise pour des int´egrales sur des intervalles semi-infinis au moyen des polynˆ omes de Laguerre et pour des int´egrales sur R au moyen des polynˆ omes d’Hermite [?].

11.5

M´ ethode de Clenshaw-Curtis

Nous terminons cet expos´e en ´evoquant la m´ethode de quadrature de Clenshaw-Curtis, introduite en 1960 [?] et qui est devenue tr`es populaire ces derni`eres ann´ees compte tenu de sa facilit´e de mise en oeuvre. Cette m´ethode, pour n noeuds de quadrature, n’est exacte que pour les polyonmes de degr´e au plus ´egal ` a n − 1, mais le calcul de ses noeuds et de ses poids est extr`emement simple. De plus, pour l’int´egration de nombreuses fonctions standard, il apparaˆıt que son comportement diff`ere trˆes peu de celui de la quadrature de Gauss-Legendre [?]. Cela tient en particulier au fait qu’ici, comme pour la m´ethode de Gauss-Legendre, la distribution asymptotique des noeuds dans [−1, 1] satisfait l’´equation 11.5. Pour la m´ethode de Clenshaw-Curtis, les poids sont simplement choisis de la forme xk = cos(

n−k π), n−1

k = 1, . . . , n.

(11.17)

On notera, pour n grand, la ressemblance des poids de Gauss-Legendre (Eq. (11.16)) avec ceux de Clenshaw-Curtis. Gentleman [?] a montr´e que les poids peuvent ˆetre obtenus par transform´ee de Fourier rapide, et donc avec un coˆ ut de calcul de O(n.log2 (n)), contre O(n2 ) op´erations pour calculer les param`etres de Gauss-Legendre [?]. Ceci explique l’int´erˆet port´e `a la m´ethode de Clenshaw-Curtis qui fournit donc pour un coˆ ut de calcul nettement moindre une quadrature de

´ CHAPITRE 11. INTERPOLATION ET INTEGRATION

75

pr´ecision souvent comparable ` a celle de Gauss-Legendre. Le code Matlab suivant, propo´es dans [?] impl´emente la m´ethode de calcul des poids de [?].

f n m x fx g a w I

11.6

= = = = = = = = =

@(t) cos(pi*t); 100; n-1; cos(pi*(0:m)’/(m)); f(x)/(2*m); real(fft(fx([1:m+1 m:-1:2]))) [g(1); g(2:m)+g(2*m:-1:m+2) ;g(m+1)]; 0*a’; w(1:2:end) = 2./(1-(0:2:m).^2); w*a

% fonction a int´ egrer % nombre de noeuds de quadrature % poids % % % % %

transforme de Fourier rapide coefficients de Chebychev poids calcul de l’int´ egrale par la m´ ethode de Clenshaw-Curtis

Calcul d’erreur

Indiquons pour terminer que pour les m´ethodes pr´ec´edentes il est possible d’exprimer de fa¸con pr´ecise l’erreur li´ee ` a la quadrature. Pour une quadrature sur n points qui est exacte pour les polynˆomes de degr´e inf´erieur ou ´egal `a M et une fonction f , au moins m fois continuement d´erivable, avec m ≤ M , on peut montrer que la fonction d’erreur de quadrature, not´ee E(f ), est donn´ee par ([?], p. 218) E(f ) =

R1

=

R1

−1 f (x)dx



Pn

k=1 wk f (xk )

(11.18) (m+1) (x)K (x)dx, m −1 f

o` u Km (x) est le noyau de Peano, d´efini par n

(1 − x)m X (max(xk − x, 0))m−1 Km (x) = − wk . m! (m − 1)!

(11.19)

k=1

Exercice D´emontrer la formule d’erreur pr´ec´edente (indication : utiliser la formule de Taylor avec reste int´egrale).

Quatri` eme partie

Optimisation

76

Chapitre 12

Introduction Lorsqu’on cherche ` a r´esoudre un probl`eme de la forme inf v∈Uad f (v), on parlera de probl` eme d’optimisation contraint lorsque U est un sous ensemble particulier inclu dans le domaine de d´efinition de f . Si Uad co¨ıncide avec le plus grand domaine sur lequel on peut d´efinir f on parlera de probl`eme d’optimisation non contraint. On s’int´eresse dans cette partie a ` des probl`emes d’optimisation continue, `a variables r´eelles ou complexes, de forme g´en´erale  minx f (x) (12.1) fi (x) ≤ 0 i = 1, . . . , m. Le probl`eme (12.1) consiste ` a rechercher les valeurs de x qui minimisent f (x) dans l’ensemble des contraintes U = {x; fi (x) ≤ 0 i = 1, . . . , m}. Notons qu’une contrainte d’´egalit´e de la forme fi (x) = bi peut toujours se reformuler dans ce contexte par les in´egalit´es fi (x) − bi ≤ 0 et −fi (x) + bi ≤ 0. Dans la suite, on sera cependant souvent amen´e `a distinguer les situations de contraintes de type in´egalit´e et de type ´egalit´e. On a d´ej`a rencontr´e un probl`eme de ce type dans le cours d’analyse num´erique matricielle, p´esent´e en premi`ere partie, lors de la recherche de la solution de norme minimale d’un syst`eme sous-d´etermin´e, probl`eme qui s’´ecrit  minx xT x (12.2) Ax = b. Plus g´en´eralement, les probl`emes de la forme   minx 21 xT Qx + xT r Ax = b  Gx ≤ h

(12.3)

o` u Q est une matrice sym´etrique positive et u ≤ v signifie que uk ≤ vk pour chaque composante des vecteurs u et v, sont appel´es programmes quadratiques. En pr´esence de contraintes d’in´egalit´e, l’obtention de la solution est g´en´eralement moins directe qu’avec les seules contraintes d’´egalit´e. Dans ce dernier cas on dispose d’une forme analytique directe du probl`eme tandis que dans le premier il faut faire appel ` a des algorithmes it´eratifs d’optimisation. 77

CHAPITRE 12. INTRODUCTION

78

Lorsque les fonctions f et (fi )i=1,m sont lin´eaires, le probl`eme est appel´e probl`eme de programmation lin´ eaire. Il existe des algorithmes performants pour r´esoudre ce genre de probl`eme, mˆeme si le nombre d’op´erations ` a r´ealiser n’est pas bien maˆıtris´e en g´en´eral. Notons ´egalement qu’il peut ˆetre un peu plus d´elicat d’identifier un probl`eme de programmation lin´eaire qu’un probl`eme d’optimisation quadratique. Ainsi, la minimization de la norme l1 de Ax − b, d´efinie P par f (x) =k Ax − b k1 = i |Ai x − bi |, o` u Ai repr´esente ici la i-`eme ligne de la matrice A peut se reformuler sous la forme du programme lin´eaire suivant :  P mint i ti    −ti ≤ 0 i = 1, . . . , m (12.4) A x − bi − ti ≤ 0 i = 1, . . . , m    i −Ai x + bi − ti ≤ 0 i = 1, . . . , m. Pour un probl`eme pour lequel le crit`ere f ou certaines des contraintes (fi )i=1,m ne sont pas lin´eaires, on parlera d’un probl`eme de programmation non lin´ eaire. Une difficult´e essentielle du probl`eme d’optimisation (12.1) dans le cas non lin´eaire r´eside dans fait que des conditions n´ecessaires bien connues d’optimalit´e telles que l’annulation de la d´eriv´ee (du gradient dans le cas d’une fonction de plusieurs variables) ne permettent g´en´eralement que d’´etablir l’optimalit´e locale d’une solution. Il existe une exception remarquable ` a ce fait qui est celui de l’optimisation convexe pour lequel les fonction f et (fi )i=1,m sont convexes. Dans ce cas, non seulement on est en mesure de caract´eriser la nature globale d’optima locaux, mais de plus, il existe des algorithmes performants de recherche de telles solutions. En particulier, les m´ ethodes de point int´ erieur, ´egalement utilis´ees en programmation lin´eaire, ou les m´ ethodes de plans s´ ecants, offrent une solution performante pour l’optimisation de probl`emes d’optimisation convexe. En fait, la difficult´e essentielle des probl`emes d’optimisation convexe r´eside souvent dans la difficult´e que l’on peut avoir ` a identifier le probl`eme ´etudi´e comme un probl`eme convexe. Si, comme on l’a indiqu´e, pour un probl`eme d’optimisation non convexe il est souvent facile de caract´eriser des optima locaux d`es lors que l’on dispose d’hypoth`eses de r´egularit´e, telle que la diff´erentiabilit´e, sur les fonctions mises en jeux, on ne pourra pas en g´en´eral trouver d’algorithme qui assure la convergence vers un optimum global. On verra cependant que l’utilisation des r´esultats de l’optimisation convexe peuvent ˆetre utilis´es pour fournir des approximations souvent int´eressantes de la solution. Pour le probl`eme minu∈U f (u) Les conditions d’optimalit´e d´ependent de la nature de U . Pour les conditions n´ecessaires, on peut citer les conditions suivantes qui seront d´evelopp´ees dans les chapitres suivants : — ´equations d’Euler : f 0 (u) = 0 — in´equations d’Euler : f 0 (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 convexit´e de f pour l’optimalit´e globale et plus simplement au comportement de la d´eriv´ee seconde de f au voisinage de u pour l’optimalit´e locale. Outre l’´etude des conditions d’optimalit´e on se penchera sur les aspects algorithmiques de la

CHAPITRE 12. INTRODUCTION

79

recherche d’optima. Pour les probl`emes sans contraintes, on consid´erera en particulier les algorithmes de relaxation, de Newton, du gradient ou du gradient conjugu´e. Pour les probl`emes avec contraintes, on envisagera la possibilit´e d’extension des m´ethodes sans contraintes ainsi que des algorithmes g´en´eralistes tels que les m´ethodes d’Uzawa, les m´ethodes de plans s´ecants ou encore les m´ethodes de points int´erieurs. L’algorithme du simplexe important pour le cas particulier de la programmation lin´eaire sera ´egalement pr´esent´e. Le chapitre 9 pr´esente quelques rappels de calcul diff´erentiel sur lesquels reposent les conditions d’optimalit´e d´evelopp´ees par la suite. Le chapitre 10 traite des conditions d’optimalit´e pour les probl`emes non contraints et le chapitre 11 des algorithmes classiques pour traiter ce type de probl`emes. Le chapitre 12 traite des conditions d’optimalit´e pour les probl`emes contraints et le chapitre 13 des algorithmes correspondants. Le cas particulier de la programmation lin´eaire est abord´e au chapitre 14. Les version ant´erieures de ces notes de cours s’inspiraient en particulier de [6] o` u l’optimisation est abord´ee sous un angle tr`es g´en´eral. Pour l’optimisation avec contraintes, la version actuelle emprunte plus ` a la pr´esentation de [8] qui traite de fa¸con all´eg´ee, quoi que rigoureuse, la th´eorie pour des probl`emes dans les espaces de type Rn . Pour les algorithmes, [9] et [4] constituent ´egalement des r´ef´erences int´eressantes. Les autres r´ef´erences indiqu´ees constituent ´egalement des sources d’information enrichissantes. Les notes de cours [5] ou le livre [10] constituent des r´ef´erences plus approfondies sur la notion de convexit´e.

Chapitre 13

El´ ements de calcul diff´ erentiel 13.1

Introduction

Les conditions d’existence d’optima locaux pour les probl`emes contraints ou non contraints font intervenir les d´eriv´ees d’ordres un et deux de la fonction `a optimiser. Ainsi, la condition de d´eriv´ee nulle est ` a la base d’une m´ethode importante, la m´ethode de Newton, qui sera ´etudi´ee plus loin. On fait ici quelques rappels concernant la d´erivation dans des espaces g´en´eraux car la variable vis `a vis de laquelle on effectue l’optimisation peut ˆetre une fonction. C’est le cas par exemple lorsqu’on cherche la surface d’aire minimale qui s’appuye sur un contour fix´e de R3 , auquel cas la variable recherch´ee est la fonction qui d´ecrit cette surface. Dans ce chapitre, on va donc d´evelopper un formalisme g´en´eral pour la notion de d´erivation. Pour fixer les id´ees, le lecteur pourra consid´erer le cas particulier d’espaces X et Y tels que X = Rn et Y = Rm . On se limitera d’ailleurs `a ce cadre dans les chapitres suivants.

13.2

Rappels sur les espaces L(X, Y )

Soient X et Y deux espaces vectoriels norm´es, de normes not´ees respectivement k kX et k kY . L’ensemble L(X, Y ) des applications lin´eaires continues de X dans Y , not´e simplement L(X) si X = Y , est norm´e par ∀A ∈ L(X, Y ), k A k= sup x∈X

k Ax kY = sup k Ax kY . k x kX x∈X, kxkX ≤1

(13.1)

L(X, Y ) est complet si Y est complet. Dans l’ensemble L2 (X, Y ) des applications bilin´eaires continues de X × X dans Y , la norme est d´efinie par ∀A ∈ L2 (X, Y ), k A k=

sup x1 ,x2 ∈X

80

k A(x1 , x2 ) kY . k x1 kX × k x2 kX

(13.2)

´ ´ CHAPITRE 13. ELEMENTS DE CALCUL DIFFERENTIEL

13.3

81

D´ erivation

Soit O un ensemble ouvert et f : O ⊂ X → Y,

(13.3)

Soit a ∈ O. La d´eriv´ee en a, lorsqu’elle existe, est d´efinie par f 0 (a) ∈ L(X, Y ) telle que f (a + h) = f (a) + f 0 (a)h+ k h k ε(h).

(13.4)

Si f 0 (a) existe, elle est unique. Remarquons que f 0 (a)h est une notation simplifi´ee pour f 0 (a)(h), c’est `a dire la valeur prise par l’application lin´eaire f 0 (a) en h.

13.3.1

Application d´ eriv´ ee

L’application d´eriv´ee de f est d´efinie par f 0 : O → L(X, Y );

x 7→ f 0 (x).

(13.5)

Exercices. 1) Si f (x) = B(x, x), o` u B est bilin´eaire et continue, monrer que f 0 (x)h = B(x, h) + B(h, x).

(13.6)

2) Calculez le gradient de f d´efinie sur Rn par f (x) = xT Ax. Que devient cette formule lorsque A est sym´etrique ?

13.3.2

D´ erivation pour f d´ efinie sur des espaces produits

Si f : O ⊂ X → Y = Y1 × . . . × Ym ;

x 7→ f (x) = [f1 (x), . . . , fm (x)]T ,

f est d´erivable en a ∈ O si et seulement si fk0 (a) existe pour k = 1, m.   0 (a) f 0 (a) = f10 (a), . . . , fm (fk0 (a) ∈ L(X, Yi )).

(13.7)

(13.8)

Le vecteur ∇f (a) = [f 0 (a)]T est appel´e 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 d´efinit les applications partielles par f k : Ok ⊂ Xk → Y ;

u 7→ f (x1 , . . . , xk−1 , u, xk+1 , . . . , xn )

Si f est d´erivable en a, les applications partielles le sont et X f 0 (a)h = ∂k f (a)hk , k=1,n

(13.10)

(13.11)

´ ´ CHAPITRE 13. ELEMENTS DE CALCUL DIFFERENTIEL

82

o` u h = [h1 , . . . , hn ]T et ∂k f (a) est la d´eriv´ee de la k`eme application partielle (∂k f (a) ∈ L(Xk , Y )). La r´eciproque est fausse ; Ainsi, pour f (x1 , x2 ) = 1 − δ0,x1 x2 , ∂1 f (0, 0) = ∂2 f (0, 0) = 0, mais f n’est pas d´erivable en 0. Plus g´en´eralement, 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 0 (a)h. Les coordonn´ees de h et de k sont li´ees par les relations X ki = ∂j fi (a)hj , i = 1, m j = 1, n. (13.13) j=1,n

Ainsi, si f : Rn → Rm est de classe C 1 , de X = Rn dans Y = Rm , k = Mf h, o` u Mf est la matrice des d´eriv´ees partielles de f en a : [Mf ]ij =

∂fi (a) = ∂j fi (a). ∂xj

On note alors Mf = [∇f ]T . ∇f est la matrice jacobienne, d´efinie par   ∂1 f1 (a) . . . ∂1 fm (a)   .. ∇f (a) =  . .

(13.14)

(13.15)

∂n f1 (a) . . . ∂n fm (a) Notons ´egalement que dans le cas o` u m = n, le d´eterminant |∇f | de la matrice jacobienne est appel´e jacobien.

13.3.3

Composition des applications d´ erivables

Soit f : O ⊂ X → Y , d´erivable en a et g : O0 ⊂ Y → Z, avec f (O) ⊂ O0 , d´erivable en b = f (a). Alors h(x) = g(f (x)) = (gof )(x) est d´erivable en a et h0 (a) = g 0 (b)f 0 (a). Dans le cas r´eel, X = Rn , Y = Rm , et Z = Rl . On a alors Mh = Mg Mf , soit X ∂j hi (a) = ∂k gi (b)∂j fk (a) i = 1, m j = 1, n,

(13.16)

(13.17)

k=1,m

ou encore ∇h = ∇f × ∇g.

13.4

D´ eriv´ ee seconde

On d´efinit, si elle existe, l’application d´eriv´ee seconde par f 00 (a) = (f 0 (a))0 ∈ L(X, L(X, Y )).

(13.18)

´ ´ CHAPITRE 13. ELEMENTS DE CALCUL DIFFERENTIEL

83

Notons que les espaces L(X, L(X, Y )) et L(X × X, Y ), encore not´e 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 lin´eaire bijective. f 00 (a) d´efinit donc une application bilin´eaire continue de X × X dans Y . On montre de plus que cette application bilin´eaire est sym´etrique, c’est `a dire que f 00 (a)(k, h) = f 00 (a)(h, k). Pour le calcul pratique des d´eriv´ees secondes, remarquons que f 00 (a)(h, k) est la d´eriv´ee en a de x → f 0 (x)k, appliqu´ee au point h. Exemples. Si f (x) = B(x, x) + C(x) + d, o` u B est bilin´eaire, et C lin´eaire, f 0 (x)k = B(x, k) + B(k, x) + C(k) (13.19) f 00 (x)(k, h)

= B(h, k) + B(k, h).

Dans le cas r´eel, si X = Rn , et Y = R, on obtient P f 00 (a)(h, k) = ni,j=1 hi kj f 00 (a)(ei , ej ) (13.20) =

Pn

i,j=1 hi kj ∂i,j f (a).

Les vecteurs ei de la base canonique sont d´efinis par [ei ]k = δi,k . La matrice ∇2 f , de terme g´en´eral [∇2 f (a)]ij = ∂ij f (a) est appel´ee matrice hessienne, ou hessien de f au point a. Ainsi, f 00 (a)(h, k) = kT ∇2 f (a)h. (13.21)

13.5

Formules de Taylor et th´ eor` eme des fonctions implicites

Les formules de Taylor qui permettent d’obtenir des approximations polynomiales locales des fonctions exprim´ees ` a partir de leurs d´eriv´ees successives et sont utiles pour justifier certaines conditions d’optimalit´e pr´esent´ees au chapitre suivant. Mˆeme si les preuves des conditions d’optimalit´e ne seront pas d´evelopp´ees pour la plupart il est int´eressant de comprendre les notions auxquelles elles se rattachent, ce qui motive ce paragraphe. On pourra par exemple trouver la d´emonstration des formules de Taylor dans [2, 6]

13.6

Accroissements finis

Soit f : R → R, continue et d´erivable sur ]a, b[. ∃c ∈]a, b[, f (b) − f (a) = f 0 (c)(b − a).

(13.22)

La g´en´eralisation aux dimensions sup´erieures n’est pas directe. Pour s’en convaincre on peut par exemple consid´erer la fonctionf (t) = [cos t, sin t]T , sur [0, 2π].

´ ´ CHAPITRE 13. ELEMENTS DE CALCUL DIFFERENTIEL

13.7

84

Formules de taylor

Soit f : O ⊂ X → Y , avec [a, a + h] ⊂ O.

(13.23)

Th´ eor` eme 11 (d´eriv´ee premi`ere) 1) Si f est d´erivable en a, f (a + h) = f (a) + f 0 (a)h+ k h k ε(h). 2) Accroissements finis. Si f est continue sur O et d´erivable sur ]a, a + h[, k f (a + h) − f (a) k≤

sup

k f 0 (x) kk h k .

(13.24)

x∈]a,a+h[

3) Taylor-Mac Lauri. Si f est continue sur O, d´erivable sur ]a, a + h[ et Y = R, f (a + h) = f (a) + f 0 (a + θh)h

0 < θ < 1.

4) Taylor avec reste int´egrale. Si f ∈ C 1 (O) et Y complet, Z f (a + h) = f (a) + (f 0 (a + th)h)dt.

(13.25)

(13.26)

[0,1]

Th´ eor` eme 12 (d´eriv´ee seconde). — Taylor-Young. Si f est d´erivable dans O et deux fois en a, 1 f (a + h) = f (a) + f 0 (a)h + f 00 (a)(h, h)+ k h k2 ε(h). 2

(13.27)

— Accroissements finis g´en´eralis´es. Si f ∈ C 1 (O) et deux fois d´erivable sur ]a, a + h[, ! 1 0 00 k f (a + h) − f (a) − f (a)h k≤ sup k f (x) kL2 (X,Y ) k h k2 . (13.28) 2 x∈]a,a+h[ — Taylor-Mac Laurin. Si f ∈ C 1 (O), deux fois d´erivable sur ]a, a + h[ et Y = R, 1 f (a + h) = f (a) + f 0 (a)h + f 00 (a + θh)(h, h) 2

0 < θ < 1.

— Taylor avec reste int´egral. Si f ∈ C 2 (O) et Y complet, Z 0 f (a + h) = f (a) + f (a)h + (1 − t)(f 00 (a + th)(h, h))dt. [0,1]

(13.29)

(13.30)

Chapitre 14

Optimisation sans contraintes : crit` eres d’optimalit´ e Des crit`eres portant sur les d´eriv´ees premi`ere et seconde ou la convexit´e de f permettent d’obtenir des conditions n´ecessaires mais aussi des conditions suffisantes d’optimalit´e et de pr´eciser le caract`ere minimum ou maximum d’un extremum, voir mˆeme de pr´eciser si c’est un optimum global. Les conditions portant sur la d´eriv´ee premi`ere sont classiquement appel´ees conditions du premier ordre et celles portant sur les d´eriv´ees secondes conditions du second ordre.

14.1

D´ efinitions

14.1.1

Optimalit´ e

Soit f : U ⊂ Rn → R. On dit que u est un minimum local de f , s’il existe un voisinage de u Vu ⊂ U tel que f (u) ≤ f (v) (resp. f (u) ≥ f (v)), ∀v ∈ Vu . On d´efinit de mˆeme un maximum local par la relation f (u) ≥ f (v), ∀v ⊂ Vu ∈ U . Bien sˆ ur, on dira de mˆeme que u repr´esente un maximum local de f si −f poss`ede un minimum local en u. Si ∀v ∈ U , f (u) ≤ f (v), on parlera alors de minimum global. Un extremum local est encore appel´e extremum relatif et un extremum global est encore appel´e extremum strict. Lorsque sur un voisinage point´e Vu − {u} de u on a f (u) < f (v), ∀v ∈ Vu − {u}, on dit que u est un minimum local strict de f .

85

` ´ 86 CHAPITRE 14. OPTIMISATION SANS CONTRAINTES : CRITERES D’OPTIMALITE

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 n´ ecessaires d’optimalit´ e

Fonctions continues Consid´erons d’abord le cas d’une fonction continue. Le th´ eor` eme de Weierstrass fournit le r´esultat suivant : Th´ eor` eme 13 (Weierstrass) ´etant donn´ee une fonction continue f : K ⊂ Rn → R, o` u K est compact (respectivement connexe). L’image de K par f est un ensemble compact (respectivement connexe) de R. En particulier, il existe um , uM ∈ K tels que inf K 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 k u k→ ∞, et d´efinies sur Rn tout entier on a un r´esultat analogue : D´ efinition 2 On dit que la fonction f : U ⊂ Rn → R est coercive si lim

kuk→∞; u∈U

f (u) = +∞.

(14.3)

Corollaire 2 Soit une fonction f continue et coercive f : Rn → R. Il existe un minimum u∗ de f (u) sur Rn .

Fonctions d´ erivables Pour les fonctions d´erivables, on peut pr´eciser une condition n´ecessaire pour qu’un point donn´e de U soit un optimum local. Th´ eor` eme 14 (condition n´ ecessaire du premier ordre) Soit f : O ⊂ Rn → R, avec O un ensemble ouvert. Si f a un extremum local en u et est d´erivable en u, f 0 (u) = 0. Cette ´egalit´e est appel´ee ´ equation d’Euler.

` ´ 87 CHAPITRE 14. OPTIMISATION SANS CONTRAINTES : CRITERES D’OPTIMALITE D´ emonstration Supposons par exemple que f est un minimum en un point u. Soit h un vecteur fix´e et g(t) = f (u + th). g doit ˆetre minimale en 0. Donc, pour t > 0, (g(t) − g(0))/t > 0 et lim

t→0

g(t) − g(0) = g 0 (0) > 0, h

(14.4)

et de mˆeme, pour t < 0, (g(t) − g(0))/t < 0 et g(t) − g(0) = g 0 (0) < 0. t←0 h lim

(14.5)

Donc finalement, f 0 (u)h = g 0 (0) = 0. Cette relation ´etant v´erifi´ee pour tout h fix´e, on a f 0 (u) = 0. Dans le cas o` u le domaine de d´efinition de f n’est pas forc´ement un ouvert, on a une condition n´ecessaire d’optimalit´e plus g´en´erale : Th´ eor` eme 15 (condition n´ ecessaire du premier ordre) Si u∗ est minimum local de f : U ⊂ Rn → R, pour toute direction admissible d en u∗ , [∇f (u∗ )]T d ≥ 0.

(14.6)

Cette in´egalit´e est appel´ee in´ egalit´ e d’Euler. D´ emonstration La d´emonstration de ce r´esultat est assez directe ; Il suffit de consid´erer le d´eveloppement de Taylor du premier ordre de f . En changeant le signe de l’in´egalit´e d’Euler, on v´erifie facilement que si u∗ est un point int´erieur de U , alors toutes les directions sont admissibles et par suite le th´eor`eme conduit ` a la condition n´ecessaire bien connue d’optimalit´e en un point d’un ensemble ouvert, donn´ee par ∇f (u∗ ) = 0, pr´esent´ee dans le th´eor`eme 14.

Fonctions deux fois d´ erivables De la mˆeme fa¸con que le d´eveloppement de Taylor au premier ordre permet d’exprimer une condition n´ecessaire d’optimalit´e, le d´eveloppement de Taylor au second ordre permet de compl´eter ce r´esultat pour les fonctions deux fois d´erivables, en pr´ecisant le caract`ere minimal ou maximal de l’optimum consid´er´e. Th´ eor` eme 16 (condition n´ ecessaire 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 est n´ec´essairement v´erifi´ee 1. [∇f (u∗ )]T d ≥ 0, 2. [∇f (u∗ )]T d = 0 et dT ∇2 f (u∗ )d ≥ 0.

Notons que la condition n´ecessaire du th´eor`eme 16 n’est pas suffisante, comme on peut le voir par exemple pour la fonction f : R → R, f (v) = v 3 au point v = 0.

` ´ 88 CHAPITRE 14. OPTIMISATION SANS CONTRAINTES : CRITERES D’OPTIMALITE

14.3

Conditions suffisantes d’optimalit´ e

On a vu que si f : U ⊂ Rn → R est deux fois d´erivable en u ∈ U et si u est un minimum relatif de f , alors pour toute direction admissible d, dT ∇2 f (u)d ≥ 0. On peut montrer que l’existence de d´eriv´ees secondes permet d’obtenir des conditions non seulement n´ecessaires mais encore suffisantes : Th´ eor` eme 17 (conditions suffisantes du second ordre) Soit f : O ⊂ Rn → R, d´erivable dans l’ensemble ouvert O, et u ∈ O tel que ∇f (u) = 0. Alors, — si f est deux fois d´erivable en u et si ∃α > 0,

∀d ⊂ Rn ,

dT [∇2 f (u)]d ≥ α k d k2 ,

(14.7)

alors f admet un minimum local strict en u. — Si f est deux fois d´erivable sur une boule B(u, r) ⊂ O, avec ∀d ⊂ Rn ,

dT [∇2 f (v)]d ≥ 0,

(14.8)

alors f admet un minimum local en u.

Remarque On voit que la deuxi`eme partie de l’´enonc´e est rendue n´ecessaire car la condition (14.7) n’est plus valable pour α = 0. En effet, il suffit pour s’en convaincre de consid´erer la fonction f : R → R, f (v) = v 4 en 0.

14.4

Convexit´ e et optimalit´ e

L’objectif est ici de rappeler les d´efinitions et propri´et´es de base associ´ees `a la convexit´e et montrer qu’elles permettent de pr´eciser le caract`ere global d’un optimum. Ce caract`ere global d’optimaux locaux constitue probablement la propri´et´e la plus remarquable des fonctions convexes.

14.4.1

D´ efinitions

Commen¸cons par quelques d´efinitions. D´ efinition 3 On dit qu’un ensemble U est convexe si pour x, y ∈ U le segment [x, y] est dans U , 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 ferm´ees sont des exemples d’ensembles convexes.

` ´ 89 CHAPITRE 14. OPTIMISATION SANS CONTRAINTES : CRITERES D’OPTIMALITE D´ efinition 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 d´efinition de la convexit´e d’une fonction est g´en´eralement associ´ee (comme s’est ici le cas pour notre d´efinition) ` a la convexit´e de son ensemble de d´efinition. C’est en effet dans ce cadre que les propri´et´es 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 r´esultats suivants permettent de caract´eriser la convexit´e pour des fonctions une ou deux fois d´erivables.

14.4.2

Caract´ erisations de la convexit´ e

Les th´eor`emes suivant permettent de caract´eriser la convexit´e des fonctions `a partir de propri´et´es de leurs d´eriv´ees premi`ere et seconde. Th´ eor` eme 18 (Convexit´ e et d´ eriv´ ees premi` eres) Soit f : U ⊂ Rn ⇒ R, d´erivable, avec U convexe. — f convexe ⇔ ∀u, v ∈ U, f (v) ≥ f (u) + f 0 (u)(v − u) — f strictement convexe ⇔ ∀u, v ∈ U, u 6= v

f (v) > f (u) + f 0 (u)(v − u).

Ce th´eor`eme indique que le graphe d’une fonction convexe se trouve au dessus des tangeantes en chacun de ses points. Th´ eor` eme 19 (convexit´ e et d´ eriv´ ees secondes) Soit f : U ⊂ Rn ⇒ R, deux fois d´erivable, 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 [∇2 f (u)](v − u) > 0.

Notons que la r´eciproque de la derni`ere implication est fauss, comme on l’a vu dans l’exemple de la remarque ` a la fin du paragraphe 14.3 (prendre par exemple f : R → R, f (v) = v4 , en v = 0). Pour un point u int´erieur ` a U , il appara¨ıt donc que la convexit´e correspond `a la positivit´e de la matrice ∇2 f (u).

` ´ 90 CHAPITRE 14. OPTIMISATION SANS CONTRAINTES : CRITERES D’OPTIMALITE Exemple f (v) = (1/2)vT Av − vT b. f est convexe si et seulement si A ≥ 0 et strictement convexe si et seulement si A > 0. Soit f : U ⊂ Rn → R, avec U convexe. On notrera que l’ensemble des directions admissibles en un point u de U est donn´e par les vecteurs v − u, avec v ∈ U .

14.4.3

Exemples de fonctions convexes

Les diverses propri´etes des fonctions convexes ´enonc´ees plus haut permettent de v´erifier la convexit´e d’une fonction donn´ee. Notons qu’il n’est pas toujours ais´e de v´erifier qu’une fonction est effectivement convexe. On pourra d´emontrer la convexit´e des fonctions suivantes `a titre d’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, k x k, max xi , log( i=1,n

X

xi ), −(Πi=1,n xi ).

(14.13)

i=1,n

n , → R, f (m) = log |M |, o` n La fonction matricielle suivante f : S++ u S++ est l’ensemble des matrices d´efinies positives de taille n, est convexe.

14.4.4

Minima des fonctions convexes

Dans le cas des fonctions convexes, l’in´egalit´e d’Euler f 0 (u)d ≥ 0, pour toute direction admissible d devient simplement f 0 (u)(v − u) ≥ 0, ∀v ∈ U. (14.14) De plus, le th´eor`eme suivant montre le fait remarquable que dans le cas convexe le caract`ere n´ecessaire de cette condition d’optimalit´e est ´egalement suffisant. Le caract`ere suffisant ne n´ecessite pas ici de faire intervenir explicitement de condition du second ordre. Cela est bien compr´ehensible car les conditions suffisantes d’optimalit´e du second ordre d´ecrites au pagraphe 14.3 sont implicitement satisfaites par la convexit´e de la fonction f d’apr`es le th´eor`eme (19). Le caract`ere global des optima locaux dans le cas convexe est ´egalement mis en ´evidence par le th´eor`eme suivant :

Th´ eor` eme 20 (Condition n´ ecessaire et suffisante d’optimalit´ e des fonctions convexes) n Soit f : U ⊂ R → R, avec U et f convexes. — Un minimum relatif de f sur U est un minimum global.

` ´ 91 CHAPITRE 14. OPTIMISATION SANS CONTRAINTES : CRITERES D’OPTIMALITE — Si f est strictement convexe, elle admet un minimum au plus, et c’est alors un minimum strict. — Si f est d´erivable en u ∈ U , f est minimum en u par rapport ` a U si et seulement si 0 ∀v ∈ U , f (u)(v − u) ≥ 0. — Si U est un ouvert, la condition 3) est ´equivalente ` a l’´equation d’Euler f 0 (u) = 0. Exemple Si u ∈ Rn , c ∈ Rm , avec m ≥ n, et f (u) =k Bu − c k2 . f est convexe, f 0 (u) = BT Bu − BT c, et tout optimum global v´erifie BT Bu = BT c. Si B est de rang n, il s’agit d’un optimum strict, et il est ´egal ` a u∗ = (BT B)−1 BT c. Ce r´esultat confirme l’optimalit´e globale de ∗ u comme minimum du crit`ere des moindre carr´es ´etudi´e dans le cadre de l’analyse num´erique matricielle.

14.5

Fonctions quadratiques et elliptiques

On va maintenant s’int´eresser ` a des fonctions convexes particuli`eres que sont les fonctions quadratiques coercive et leurs extensions que constituent les fonctions elliptiques. Les fonctions elliptiques pr´esentent l’avantage de pouvoir ˆetre optimis´ees aux moyens d’algorithmes d’optimisation it´eratifs g´en´eraux qui seront d´ecrits au chapitre suivant.

Fonctions quadratiques Soit f (v) = (1/2)vT Av − vT b, avec A est d´efinie positive, c ’est `a dire que ∃α > 0, A ≥ αI. Alors, il est clair que f est strictement convexe puisque ∇2 f = A > 0. f admet donc un minimum global unique.

Fonctions elliptiques D´ efinition 5 Une fonction f : U → R, avec U convexe, est dite elliptique si f est continuement d´erivable ∃α > 0, ∀u, v ∈ U, (∇f (v) − ∇f (u))T (v − u) ≥ α k v − u k2 . (14.15) Bien entendu, la fonction quadratique f (v) = (1/2)vT Av − vT b, avec A > 0 est elliptique. Notons que parfois cette d´efinition ne suppose pas la convexit´e de U , que l’on rajoute alors comme hypoth`ese dans le th´eor`eme suivant qui montre que l’ellipticit´e est une propri´et´e tr`es forte, impliquant en particulier la convexit´e : Th´ eor` eme 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) + k v − u k2 . (14.16) 2

` ´ 92 CHAPITRE 14. OPTIMISATION SANS CONTRAINTES : CRITERES D’OPTIMALITE 2. Si U est non vide et ferm´e, et f elliptique, le probl`eme f admet une solution unique. 3. f , deux fois d´erivable, est elliptique si et seulement si ∀u, v ∈ U, (v − u)T [∇2 f (u)](v − u) ≥ α k v − u k2 .

(14.17)

Bien entendu, du fait de sa convexit´e une fonction elliptique b´eb´eficie en particulier de toutes les propri´et´es d´evellop´ees au paragraphe 14.4. Notons de plus que la propri´et´e (14.16) est une propri´et´e ´equivalente ` a la propri´et´e de convexit´ e forte[5] qui est d´efinie par α ∃α, ∀u, v ∈ U, ∀θ ∈ [0, 1] f (θu+(1−θ)v) ≤ θf (u)+(1−θ)f (v)+ θ(1−θ) k v−u k2 . (14.18) 2

Chapitre 15

Algorithmes d’optimisation sans contraintes 15.1

Introduction

En l’absence de contraintes sur le support de la fonction f , on s’int´eresse `a des algorithmes de recherche de racines de l’´equation d’Euler f 0 (u) = 0. L’algorithme de Newton et ses variantes (appel´ees algorithmes quasi-Newton) permettent d’atteindre un tel point. Parmi ces variantes, l’algorithme du gradient est r´eput´e pour sa simplicit´e de mise en oeuvre. De fa¸con g´en´erale, les algorithmes abord´es ici visent ` a construire une suite de points (uk )k≥0 , tels que uk+1 = uk + αk dk ,

(15.1)

o` u dk est une direction de descente de l’algorithme.

Direction de descente et choix du pas Les diff´erents algorithmes pr´esent´es ci dessous seront essentiellement caract´eris´es par leur direction de descente. Le choix du pas αk de l’algorithme de descente constitue le deuxi`eme ´el´ement `a prendre en compte pour la construction d’un algorithme de descente. Ainsi, au point uk , pour une direction de descente dk , le choix particulier d’un pas optimum conduit `a prendre αk = arg min f (uk + ρdk ). ρ

(15.2)

Ce choix est int´eressant du point de vue de la vitesse de convergence en terme de nombre d’it´erations de l’algorithme ` a effectuer sur l’indice k, mais exige `a chaque fois la r´esolution d’un probl`eme de minimisation scalaire, pouvant lui mˆeme ˆetre r´esolu de fa¸con it´erative. Par suite, cette strat´egie peut s’av´erer moins rapide 93

CHAPITRE 15. ALGORITHMES D’OPTIMISATION SANS CONTRAINTES

15.2

94

M´ ethode de relaxation

Face au probl`eme du choix d’une direction de descente, une strat´egie simple consiste `a consid´erer it´erativement chaque axe de coordonn´ees comme direction de d´eplacement. On cherche alors ` a minimiser la fonction vis ` a vis de chacune de ses composantes it´erativement puis `a r´ep´eter la proc´edure jusqu’` a la convergence de l’algorithme qui est obtenue lorsque la valeur du crit`ere f n’´evolue plus. Ainsi, `a l’it´eration k, partant d’un point courant uk = (uk,1 , . . . , uk,n ), on calcul successivement uk+1,1 = arg minv f (v, u0,2 , . . . , u0,n ), uk+1,2 = arg minv f (uk+1,1 v, u0,3 , . . . , u0,n ),. . . , uk+1,n = arg minv f (uk+1,1 , . . . , uk+1,n−1 , v). On r´eit`ere ensuite l’op´eration en partant de uk+1 = (uk+1,1 , . . . , uk+1,n ). En l’absence de contraintes de support sur f le comportement de la m´ethode de relaxation est satisfaisant comme l’indique le th´eor`eme suivant : Th´ eor` eme 22 Si f : Rn → R est elliptique, la m´ethode de relaxation converge. On verra dans le cadre de l’optimisation sous contraintes que si U 6= Rn , ce r´esultat n’est plus vrai en g´en´eral. Dans le cas d’un crit`ere f quadratique la m´ethode de relaxation conduit simplement `a la r´esolution d’un syst`eme lin´eaire par la m´ ethode de Gauss-Seidel, pr´esent´ee dans le cadre de la r´esolution des syst`emes d’´equations lin´eaires. Aussi, la m´ethode de relaxation est encore parfois appel´ee m´ethode de Gauss-Seidel, mˆeme quand f n’est pas une fonction quadratique.

15.3

Algorithme du gradient

On suppose ici que f est d´erivable. Le d´eveloppement au premier ordre de f conduit donc `a f (uk + w) = f (uk ) + ∇f (uk )T w+ k w k ε(w),

(15.3)

avec limw→0 ε(w) = 0. Il apparaˆıt donc qu’en posant w = −αk ∇f (uk ), avec k w k suffisamment petit et αk > 0, on a f (uk + w) ≤ f (uk ), et −∇f (uk ) est bien une direction de descente. Ainsi, on obtient la forme g´en´erale de l’algorithme du gradient qui s’´ecrit : uk+1 = uk − αk ∇f (uk ).

(15.4)

CHAPITRE 15. ALGORITHMES D’OPTIMISATION SANS CONTRAINTES

15.3.1

95

Choix du pas et convergence

Pas optimal L’optimisation du pas αk conduit ` a la m´ethode du gradient `a pas optimal : αk = arg min f (uk − ρ∇f (uk )). ρ

(15.5)

Th´ eor` eme 23 Si f : Rn → R est elliptique, la m´ethode de gradient ` a pas optimal converge. Exercice Consid´erons la fonction quadratique elliptique f (v) = (1/2)vT Av − bT v. V´erifiez que le pas optimum est donn´e par αk =

k Auk − b k2 . (Auk − b)T A(Auk − b)

(15.6)

Quel peut ˆetre l’int´erˆet de l’algorithme du gadient par rapport `a une inversion directe des ´equations normales ?

Pas constant et pas d´ ecroissant D’autres strat´egies, moins couteuses, mais conduisant g´en´eralement `a un plus grand nombre d’it´erations, consistent ` a choisir un pas constant ou un pas d´ecroissant.

Pas d´ ecroissant et gradient normalis´ e Lorsqu’on norme le gradient ` a chaque it´eration, on dispose d’un r´esultat de convergence int´eressant (voir par exemple [9]) : Th´ eor` eme 24 Pour un algorithme du gradient dont la suite des pas αk d´ecroit vers 0, avec X lim αk = 0, et αk = +∞, (15.7) k→∞

k=0,∞

l’algorithme du gradient d´efini par uk+1 = uk − αk converge vers un minimum local de f .

∇f (uk ) k ∇f (uk ) k

(15.8)

CHAPITRE 15. ALGORITHMES D’OPTIMISATION SANS CONTRAINTES

96

Convergence Pour des fonctions elliptiques, on obtient le r´esultat de convergence suivant : Th´ eor` eme 25 . Si f : Rn → R est d´erivable et si ∃α, M > 0 tels que ∀u, v ∈ Rn (∇f (v) − ∇f (v))T (v − u) ≥ α k v − u k2 (15.9) k ∇f (v) − ∇f (v) k2

≤ M k v − u k2 ,

et a, b > 0 tels que 0 < a ≤ αk ≤ b < (2α/M 2 ), la m´ethode du gradient converge et ∃β < 1, k uk − u k≤ β k k u0 − u k .

(15.10)

Notons que la premi`ere condition n’est autre que la condition d’ellipticit´e, tandis que la seconde ´enonce la caract`ere Lipshtzien 1 du gradient ∇f qui indique que le gradient ne doit pas varier trop rapidement. Voici le code d’un exemple simple o` u on cherche le minimum de la fonction de RosenBroeck 2 )2 + (1 − x)2 par la m´ d´efinie par f (x, y) = 50 ∗ (y − x ethode du gradient pour un pas d´ecroissant √ αk = 1/ k. Pour ce choix, la convergence est obtenue au bout de 5000 it´erations 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 o` u le crit` ere 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 crit` ere pas = 1/k^0.5; pt = pt - pas*g/(norm(g)+eps); err = [err norm(pt-pt_min)]; end; plot(err)

15.4

M´ ethode de Newton

15.4.1

Principe

La mise en oeuvre de la m´ethode de Newton suppose que f ∈ C 2 et consiste `a consid´erer en chaque point uk l’approximation quadratique de f fournie par son d´eveloppement de Taylor ` a 1. une fonction g est dite Lipschitzienne de rapport M si ∀u, v, k g(u) − g(v) k2 ≤ M k u − v k2 .

CHAPITRE 15. ALGORITHMES D’OPTIMISATION SANS CONTRAINTES

97

l’ordre 2 au voisinage de uk . Ainsi, si 1 f (v) = f (u) + ∇f (u)T (v − u) + (v − u)T [∇2 f (u)]T (v − u)+ k v − u k2 ε(v − u), (15.11) 2 avec limw→0 ε(w) = 0, l’approximation quadratique 1 f˜(v) = f (u) + ∇f (u)T (v − u) + (v − u)T [∇2 f (u)]T (v − u), 2

(15.12)

sera optimale au point v tel que ∇f˜(v) = 0, c’est `a dire pour ∇f (u) + ∇2 f (u)T (v − u) = 0. En posant uk = u et uk+1 = v, on obtient l’expression de l’algorithme de Ne wton : uk+1 = uk − [∇2 f (u)]−1 ∇f (u).

(15.13)

Pour rester dans les conditions de validit´e de l’approximation quadratique, c’est `a dire pour assurer que k uk+1 − uk k reste petit, on utilise souvent l’algorithme sous la forme uk+1 = uk − αk [∇2 f (u)]−1 ∇f (u), avec 0 < αk < 1. Notons que pour pouvoir mettre en oeuvre l’algorithme de Newton, il faut que f soit deux fois d´erivable et que ∇2 f (u) soit inversible. Nous reprenons la fonction de Rosenbroeck, f (x, y) = 50 ∗ (y − x2 )2 + (1 − x)2 , dont on cherche maintenant ` a calculer le minimum par la m´ethode de Newton. On voit que la convergence est maintenant obtenue apr`es quelques it´erations.

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 interpr´ etation dans le cas scalaire

Supposons que Rn = R et posons g(u) = f 0 (u). L’algorithme de Newton s’´ecrit alors uk+1 = uk − [g 0 (u)]−1 g(u). Un simple graphique montre clairement que uk+1 repr´esente l’intersection avec l’axe des x de la tangente au graphe de g au point (uk , g(uk )).L’algorithme de Newton permet donc la recherche it´erative d’une racine de l’´equation g(u) = 0. C’est pourquoi les algorithmes de Newton sont pr´esent´es soit comme des algorithmes de recherche de la solution d’une ´equation, soit comme des algorithmes de recherche du minimum d’une fonction.

CHAPITRE 15. ALGORITHMES D’OPTIMISATION SANS CONTRAINTES

15.4.3

98

M´ ethodes de type quasi-Newton

L’inversibilit´e de ∇2 f et la complexit´e du calcul de cette inverse sont deux contraintes fortes de l’algorithme de Newton. Aussi, on peut envisager des simplifications num´eriques de l’algorithme, consistant par exemple ` a garder la mˆeme matrice ∇2 f (xk ) pendant plusieurs it´erations ou ` a prendre toujours la mˆeme matrice. Finalement, on obtient une famille d’algorithmes de forme g´en´erale xk+1 = xk − A−1 (15.14) k ∇f (xk ) Ainsi, pour Ak = αk I, 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 it´erativement un z´ero de la fonction g est appel´e m´ ethode des approximations successives. Exemple [6] Pour g(x) = x2 −1/4, la convergence de la m´ethode des approximations successives n’est assur´ee que pour x0 ∈ [−1/2, 3/2]. Plus pr´ecis´emment, ] − 1/2, 3/2[ repr´esente le bassin d’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 s´equence des matrices (Ak )k≥0 pourront ˆetre trouv´ees par exemple dans [6].

15.4.4

Convergence

Pour d´ecrire la convergence les diverses variantes de la m´ethode de newton dans un mˆeme formalisme, on consid´ere des algorithmes de la forme xk+1 = xk − [Ak (xk0 )]−1 ∇f (xk ), et 0 ≤ k 0 ≤ k.

(15.15)

avec Ak (x) inversible ∀x ∈ O. On indique ici des conditions suffisantes de convergence d’un tel algorithme.

Th´ eor` eme 26 Soit f : O ⊂ Rn → R. On suppose que f ∈ C 2 (O). S’il existe r, M, β, tels que B(x0 , r) ⊂ O (r > 0), β < 1 et 1. supk≥0 supx∈B(x0 ,r) k A−1 k (x) k≤ M 2. supk≥0 supx,x0 ∈B(x0 ,r) k ∇2 f (x) − Ak (x0 ) k≤ 3. k ∇f (x0 ) k≤

r M (1

β , M

− β),

alors, la suite (xk )k≥0 est dans B(x0 , r), et converge vers un z´ero de ∇f qui est le seul z´ero de ∇f dans B(x0 , r), not´e a. La convergence est g´eom´etrique : k xk − a k≤

βk k x1 − x 0 k . 1−β

Dans le cas o` u Ak (x) ne d´epend pas de x, on a le r´esultat suivant

(15.16)

CHAPITRE 15. ALGORITHMES D’OPTIMISATION SANS CONTRAINTES

99

Th´ eor` eme 27 Si f ∈ C 2 (O), avec ∇f (a) = 0, A = ∇2 f (a) inversible et sup k Ak − A k< k≥0

(1/2) , k A−1 k

(15.17)

alors, il existe r > 0 tel que ∀x0 ∈ B(a, r) la suite xk+1 = xk − A−1 k ∇f (xk )

(15.18)

soit contenue dans B(a, r) et converge vers a. De plus, a est la seule racine de ∇f = 0 dans B(a, r). La convergence est g´eom´etrique : ∃β < 1, k xk − a k≤ β k k x0 − a k .

(15.19)

Remarque L’utilisation de ce dernier th´eor`eme suppose la connaissance pr´ealable du point a.

15.4.5

L’algorithme de Levenberg-Marquart

Pour les algorithmes g´en´eraux de la forme xk+1 = xk − A−1 eveloppement de f au k ∇f (xk ), le d´ voisinage de xk conduit ` a f (xk+1 ) = f (xk ) − ∇T f (xk )[Ak (xk0 )]−1 ∇f (xk )+ k xk+1 − xk k ε(xk+1 − xk ),

(15.20)

avec limx→0 ε(x) = 0. On voit donc que si on peut n´egliger les termes du second ordre, −[Ak ]−1 × ∇f (xk ) est une direction de descente d`es lors que ∇T f (xk )[Ak ]−1 ∇f (xk ) > 0. Il suffit pour cela que la matrice Ak soit positive. Or, outre le coˆ ut de calcul de ∇2 f , la matrice hessienne peut, dans le cas g´en´eral, ne pas ˆetre positive `a chaque it´eration. Une fa¸con pratique de corriger ce probl`eme consiste ` a remplacer ∇2 f (xk ) par ∇2 f (xk )+k I, avec k > 0 tel que ∇2 f (xk )+k I > 0. Pour tester la positivit´e de la matrice Ak = ∇2 f (xk ) + k I, on peut augmenter k tant que la factorisation de Choleski ne peut pas ˆetre calcul´ee. On a vu en effet dans la premi`ere partie, consacr´ee `a l’analyse num´erique, que cette factorisatin n’´etait d´efinie que pour des matrices positives. De plus, la connaissance de la factorisation ∇2 f (xk ) + k I = LLT , avec L triangulaire permet le calcul ais´e de la direction de descente dk = −[Ak ]−1 ∇f (xk ), car il suffit alors de r´esoudre le double syst`eme triangulaire d’´equations lin´eaires LLT dk = −∇f (xk ).

15.5

L’algorithme du gradient conjugu´ e

On consid`ere pour terminer ce chapitre une technique populaire de minimisation qui consiste ` a utiliser plus d’information sur f pour calculer la direction de descente qu’avec la m´ethode du gradient, sans pour autant ˆetre conduit au coˆ ut ´elev´e de la m´ethode de Newton, qui n´ecessite le calcul du hessien et son inversion. A partir du point courant uk , on cherche ici uk+1 tel que f (uk+1 ) = minv∈Gk f (uk + v), avec X Gk = { αi ∇f (ui ); α1 , . . . , αk ∈ R}. (15.21) i=1,k

CHAPITRE 15. ALGORITHMES D’OPTIMISATION SANS CONTRAINTES

100

Pour une fonction quadratique elliptique f (v) = (1/2)vT Av − bT v, on peut v´erifier que uk+1 = uk − ρk dk , avec dT ∇f (uk ) ρk = k T dk Adk (15.22) k ∇f (uk ) k2 et dk = ∇f (uk ) + dk−1 . k ∇f (uk−1 ) k2 Th´ eor` eme 28 Si f : Rn → R est quadratique et elliptique la m´ethode de gradient conjugu´e converge en n it´erations au plus. Dans le cas g´en´eral, pour une fonction f non n´ecesairement quadratique, on pr´ef`ere souvent utiliser la m´ethode de gradient conjugu´e de Polak et Ribi`ere pour laquelle dk = ∇f (uk ) +

[∇f (uk )]T (∇f (uk ) − ∇f (uk−1 )) dk−1 . k ∇f (uk−1 ) k2

(15.23)

Chapitre 16

Optimisation sous contraintes : crit` eres d’optimalit´ e 16.1

Le th´ eor` eme des fonctions implicites

Le th´ eor` eme des fonctions implicites [2, 6] joue un rˆole important dans la justification de l’introduction du Lagrangien qui sera pr´esent´e un peu plus loin et constitue un outil de base pour l’´etude des conditions n´ecessaires et suffisantes des probl`emes d’optimisation sous contraintes d’´egalit´e ou d’in´egalit´e. Soit g : Rn → Rm . On cherche ici ` a savoir si ´etant donn´e 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 ce voisinage soit param´etr´ee par une fonction h telle que x2 = h(x1 ) ; C’est `a dire que pour tous les couples (x1 , x2 ) de ce voisinage tels que g(x1 , x2 ) = b, on ait x2 = h(x1 ). Th´ eor` eme 29 Soit g : O ⊂ Rn−m × Rm → Rm , (x1 , x2 ) 7→ g(x1 , x2 ) de classe C 1 . Supposons que g(a1 , a2 ) = b, et que la matrice jacobienne ∇x2 g(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 continue appel´ee fonction implicite, telle que {(x1 , x2 ) ∈ O1 × O2 ; g(x1 , x2 ) = b} = {(x, h(x)); x ∈ O1 } .

(16.1)

De plus, h est d´erivable et h0 (a1 ) = −[∇x2 g(a1 , a2 )]−1 [∇x1 g(a1 , a2 )]T .

16.2

(16.2)

Points r´ eguliers et espace tangent

On consid`ere dans la suite deux ensembles de fonctions d´erivables {f1 , . . . , fm } et {fm+1 , . . . , fm+p } et on notera f e = (f1 , . . . , fm )T et f i = (fm+1 , . . . , fm+p )T les vecteurs de fonctions associ´es res101

` ´ CHAPITRE 16. OPTIMISATION SOUS CONTRAINTES : CRITERES D’OPTIMALITE102 pectivement ` a des contraintes d’´egalit´e et d’in´egalit´e. On va maintenant pr´eciser la notion de r´egularit´e d’un point satisfaisant un ensemble de contraintes de type ´egalit´e ou in´egalit´e.

16.2.1

Contraintes d’´ egalit´ e

L’ensemble V = {x; f1 (x) = 0, . . . , fm (x) = 0}, o` u les fonctions fk sont de classe C 1 est appel´e vari´ et´ e diff´ erentielle. et on d´efinira la notion de point r´ egulier comme suit D´ efinition 6 On dira qu’un point u ∈ V de V = {x; f1 (x) = 0, . . . , fm (x) = 0} est un point r´egulier si les vecteurs ∇f1 (u), . . . , ∇fm (u) forment une famille libre.

D´ efinition 7 L’espace tangent ` a V au point u est l’espace engendr´e par les tangentes en u aux courbes d´erivables de V passant par u.

On a le r´esultat suivant important pour la suite :

Th´ eor` eme 30 L’espace tangent ` a V = {x; f e (x) = 0} en un point r´egulier u co¨ıncide avec l’ensemble Ker((f e )0 (u)) = {v; [∇fk (u)]T v = 0, k = 1, . . . , m} = {v; (f e )0 (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 que x(0) = u et x0 (0) = v. Comme f e (x(t)) = 0, [f e (x(t))]0 = (f e )0 (x(t))x0 (t) = 0. En particulier, pour t = 0, on obtient (f e )0 (u)v = 0, soit v ∈ Ker((f e )0 (u)). R´eciproquement, soit v ∈ Ker((f e )0 (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 ∇w g(t, w)|(t,w)=(0,0) = [∇f e (u)]T ∇f e (u). Comme u est un point r´egulier, la matrice [∇f e (u)]T ∇f e (u) est inversible. On peut donc appliquer le th´eor`eme des fonctions implicites : il existe une fonction w(t) d´efinie sur un voisinage de 0, sur lequel on a g(t, w(t)) = g(0, 0) = 0. Posons maintenant u(t) = u + tv + ∇f e (u)w(t).

(16.5)

Comme g(t, w(t)) = f e (u(t)) = 0, d e ˙ f (u(t))|t=0 = [∇f e (u)]T [v + ∇f e (u)w(0)] = 0. dt

(16.6)

˙ Donc, w(0) = [(∇f e (u))T ∇f e (u)]−1 [∇f e (u)]T v. Mais, comme v ∈ Ker((f e )0 (u)), [∇f e (u)]T v = ˙ ˙ 0 et donc w(0) = 0. Par suite, u(t)(0) = v, ce qui montre que v appartient au plan tangent ` a V en u puisque u(t) est une courbe de V d´erivable sur un voisinage de u(0) = u.

` ´ CHAPITRE 16. OPTIMISATION SOUS CONTRAINTES : CRITERES D’OPTIMALITE103

16.2.2

Contraintes d’´ egalit´ e et d’in´ egalit´ e

Dans le cas o` u on est en pr´esence de contraintes d’´egalit´e f e (x) = 0 et d’in´egalit´e f i (x) ≤ 0, la notion de point r´egulier est d´efinie de fa¸con plus g´en´erale que pr´ec´edemment. En effet, pour les contraintes de la forme f i (x) ≤ 0, en un point u fix´e l’´egalit´e peut ˆetre atteinte pour certaines des composantes de f i , auquel cas on dira que les contraintes sont actives, ou encore satur´ ees, et on aura une in´egalit´e stricte pour les autres ´equations de contrainte de f i (x). Dans ce dernier cas, on voit que le point u apparaˆıt comme un point int´erieur vis `a vis des contraintes inactives en ce point, ce qui conduira a prendre en compte cette particularit´e dans la description des conditions d’optimalit´e, en particulier en modifiant la d´efinition de la r´egularit´e en pr´esence de contraintes d’in´egalit´e. En un point x on d´efinit l’ensemble A(x) = {i; fi (x) = 0, i = m + 1, . . . , m + p} .

(16.7)

des indices des contraintes d’in´egalit´e actives. La r´egularit´e d’un point est alors d´efinie comme suit D´ efinition 8 On dira qu’un point u ∈ {x; f e (x) = 0, f i (x) ≤ 0} est un point r´egulier si l’ensemble des vecteurs {∇fi (u); i ∈ {1, . . . , m} ∪ A(u)} est une famille libre.

16.3

conditions d’optimalit´ e en pr´ esence de contraintes d’´ egalit´ e

On consid`ere le probl`eme suivant 

min f (x) f e (x) = 0,

(16.8)

o` u f e : Rn → Rm ; u 7→ f e (x) = (f1 (x), . . . , fm (x))T .

16.3.1

Condition n´ ecessaire d’optimalit´ e

Condition n´ ecessaire du premier ordre Un r´esultat important r´eside dans le fait que si un point u estune solution du probl`eme (16.8), alors le gradient de f en ce point doit ˆetre orthogonal au plan tangent. Cela ce traduit par le th´eor`eme suivant : Th´ eor` eme 31 (Condition n´ ecessaire du premier ordre) Si u est un point r´egulier et un optimum local pour le probl`eme (16.8), alors ∃λ ∈ Rm ,

∇f (u) + ∇f e (u)λ = 0.

(16.9)

` ´ CHAPITRE 16. OPTIMISATION SOUS CONTRAINTES : CRITERES D’OPTIMALITE104 Dans la suite, on consid´erera classiquement le lagrangien du probl`eme (16.8), d´efini par : L(x, λ) = f (x) + f e (x)λ.

(16.10)

Il est clair que la condition du premier ordre (16.9) pr´ec´edente associ´ee aux contraintes du probl`eme (16.8) s’exprime comme l’annulation du gradient du Lagrangien vis `a vis de u et de λ respectivement : ∇v L(u, λ) = 0, (16.11) ∇λ L(u, λ) = 0. Les coefficients (λi (u))i=1,m introduit ci dessus sont appel´es multiplicateurs de Lagrange associ´es `a l’extremum u. Une d´emonstration du th´eor`eme faisant appel `a la notion de dualit´e en programmation lin´eaire sera pr´esent´ee dans le chapitre sur la programmation lin´eaire. Une d´emonstration plus directe est fournie ici. Preuve Consid´erons le plan tangent ` a V au point r´egulier u. Pour tout vecteur v de cet hyperplan, on peut construire sur V une courbe y(t) de tangente v au point u. La condition d’optid malit´e dt f (y(t))|t=0 = ∇f (u)T v = 0 montre que ∇f (u) est orthogonal `a l’hyperplan tangent, et donc appartient ` a l’espace engendr´e par les vecteurs colonnes de ∇f e (u), d’apr`es le th´eor`eme 30. Puisque ∇f (u) est dans l’espace image de la matrice ∇f e (u), il existe une vecteur d ∈ Rm tel que ∇f (u) = ∇f e (u)d et en posant λ = −d, on obtient finalement ∇f (u) + ∇f e (u)λ = 0. Exemple On peut v´erifier que pour le probl`eme   f (v) = 12 vT Av − vT b 

U = {v ∈

Rn ; Cv

(16.12)

= d},

o` u A est une matrice sym´etrique (AT = A), la condition n´ecessaire d’optimalit´e (16.9) s’´ecrit      A CT u b    =  . (16.13) C 0 λ d Exercice Montrez que si A est inversible et si C, de taille m × n est de rang m, la matrice de l’´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 ∈ C 2 , les conditions n´ecessaires et suffisantes du second ordre ´etablies dans le cadre de l’optimisation sans constraintes se g´en´eralise en des condidtions analogues portant ici sur la restriction de la d´eriv´ee seconde du lagrangien `a l’espace tangent. Rappelons que le lagrangien et ses d´eriv´ees sur u sont donn´es par L(u, λ) = f (u) + λT f e (u), e ∇u L(u, λ) = ∇f (u) + ∇f P (u)λ, 2 2 ∇u L(u, λ) = ∇ f (u) + i=1,m λi ∇2 fi (u).

(16.14)

` ´ CHAPITRE 16. OPTIMISATION SOUS CONTRAINTES : CRITERES D’OPTIMALITE105 Th´ eor` eme 32 (Conditions n´ ecessaires du second ordre) Si u est un minimum local r´egulier du probl`eme (16.8), alors ∃λ ⊂ Rm ,

∇u L(u, λ) = 0 (16.15)

∀v ∈ Ker((f e )0 (u)), vT [∇2u L(u, λ)]v ≥ 0. ˙ Preuve Soit x(t) une courbe de V = {v; f e (v) = 0}, avec x(0) = u et = x(0) = v. La condition n´ecessaire du second ordre pour l’optimisation sans contrainte montre que l’on doit avoir d2 d T ˙ [f (x(t))]t=0 = [(x(t)) ∇f (x(t))]t=0 = vT ∇2 f (u)v + [¨ x(0)]T ∇f (u) ≥ 0. 2 dt dt

(16.16)

En d´erivant par ailleurs deux fois la relation λT f e (x(t)) en 0, on obtient X d dx d2 T e [λ f (x(t))]t=0 = [( )T ∇f e (x(t))λ]t=0 = vT λi ∇2 fi (u) + [¨ x(0)]T ∇f e (u)λ ≥ 0. 2 dt dt dt i=1,m

(16.17) En additionnant les relations (16.16) et (16.17) et en prenant en compte la relation ∇u L(u, λ) = 0, d´ej`a ´etablie dans le th´eor`eme 31, on obtient directement la relation vT [∇2u L(u, λ)]v ≥ 0. Comme pour le cas non contraint, la condition n´ecessaire de positivit´e de la matrice hessienne devient l`a encore une condition suffisante d`es lors qu’on peut en assurer la positivit´e stricte. Ici comme pour la condition n´ecessaire ce dessus il s’agit de la positivit´e du hessien du lagrangien restreinte au sous espace tangent.

Th´ eor` eme 33 (Conditions sufisantes du second ordre) Si u est un point r´egulier de f e et si ∃λ ⊂ Rm , ∇u L(u, λ) = 0 (16.18) ∀v ∈ Ker((f e )0 (u)), vT [∇2u L(u, λ)]v > 0, alors, u est un minimum local strict du probl`eme (16.8).

Preuve On va faire une d´emonstration par l’absurde. Si u satisfait aux hypoth`eses du th´eor`eme mais n’est pas un minimum local strict, il existe une suite (uk )k≥1 de V qui converge vers u et telle que f (uk ) ≤ f (u). On pose uk = u + ρk dk , avec k dk k= 1. La suite (dk )k≥1 ´etant born´ee, elle admet une sous suite convergente. Pour simplifier les ´ecritures et sans perte de g´en´eralit´e, on pourra supposer ici que la suite (dk )k≥1 est elle mˆeme convergente vers une certaine valeur, not´ee d. On consid`ere ici les formules de Taylor du second ordre appliqu´ees aux fonctions f et (fi )i=1,m et donn´ees par 0 = fi (uk ) − fi (u) = ρk ∇fi (u)T dk + 0 ≥ f (uk ) − f (u)

= ρk ∇f (u)T dk +

ρ2k T 2 d [∇ fi (u)]dk + ρ2k εi (ρk ) 2 k ρ2k 2

dTk [∇2 f (u)]dk + ρ2k ε(ρk )

(16.19)

` ´ CHAPITRE 16. OPTIMISATION SOUS CONTRAINTES : CRITERES D’OPTIMALITE106 avec limρ→0 εi (ρ) pour i = 0, 1, . . . , m. En multipliant les premi`eres relations par les coefficients λi correspondants, en les additionnant ` a la derni`ere relation, et en prenant enP compte la relation ∇u L(u, λ) = 0, il vient que dTk ∇2u L(u, λ)dk + ε(ρk ) ≤ 0, avec ε(ρ) = ε0 (ρ) + i=1,m λi εi (ρ). En passant `a la limite, il vient que limk→∞ dTk ∇2u L(u, λ)dk + ε(ρk ) = dT ∇2u L(u, λ)d ≤ 0. Notons maintenant que [fi (uk ) − fi (u)]/ρk = ∇fi (u)T dk + α(ρk ) = 0, avec limk→∞ ρk = 0 et limρ→0 α(ρ) = 0. Il apparaˆıt donc en passant `a la limite que limk→∞ ∇fi (u)T dk = ∇fi (u)T d = 0. Donc d ∈ Ker((f e )0 (u)) et dT ∇2u L(u, λ)d ≤ 0, ce qui contradictoire avec les hypoth`eses du th´eor`eme, CQFD. Remarque En pratique, la propri´et´e ∀v ∈ Ker((f e )0 (u)), vT [∇2u L(u, λ)]v > 0 peut ˆetre v´erifi´ee en consid´erant une base {v1 , . . . , vn−m } de l’espace tangent `a V au point u et en construisant la matrice V = [v1 , . . . , vn−m ] puis la matrice VT ∇2u L(u, λ)V dont il suffit alors de tester la positivit´e des valeurs propres. En effet, l’espace tangent s’´ecrit encore {Vα; α ∈ Rn−m } et la positivit´e de la restriction de ∇2u L(u, λ) ` a cet espace s’´ecrit donc ∀α ∈ Rn−m −{0}, αVT ∇2u L(u, λ)Vα > 0, soit VT ∇2u L(u, λ)V > 0. De plus, soit il est facile de construire de fa¸con directe une telle base V de l’orthogonal de l’espace engendr´e par {∇f1 (u), . . . ∇fm (u)}, soit on peut en construire une par un proc´ed´e syst´ematique par exemple ` a partir de la matrice de projection sur Ker((f e )0 (u)). Rappelons ici que la matrice de projection sur l’espace engendr´e par les colonnes d’une certaine matrice M s’´ecrit M(MT M)−1 MT (voir Eq. (3.32) de la premi`ere partie de ce document). par suite, la ma−1 e 0 trice de projection sur Ker((f e )0 (u)) est I − (f e )0 (u) [(f e )0 (u)]T (f e )0 (u) [(f ) (u)]T . On peut en d´eduire une base de Ker((f e )0 (u)) en extrayant par exemple une famille libre de dimension maximale (n − m) de la famille des vecteurs   −1 e 0 vk = I − (f e )0 (u) [(f e )0 (u)]T (f e )0 (u) [(f ) (u)]T ek (16.20) −1 = ek − (f e )0 (u) [(f e )0 (u)]T (f e )0 (u) ∇fke (u), o` u ek = (0, . . . , 0, 1, 0, . . . , 0)T est le k`eme vecteur de la base canonique.

Exemple R´esoudre le probl`eme d’optimisation suivant :  min(x,y) x2 + y 2 − xy x2 + y 2 − 4x − 4y + 6 = 0 Le lagrangien s’´ecrit L(x, y, λ) = x2 + y 2 − xy + λ(x2 + y 2 − 4x − 4y + 6) et   2(1 + λ)x − y − 4λ ∇(x,y) L(x, y, λ) = = 0. 2(1 + λ)y − x − 4λ

(16.21)

(16.22)

En additionnant et en soustrayant les deux ´equations pr´ec´edentes, on trouve que (2λ+1)(x+y) = 8λ et (2λ + 3)(x − y) = 0. De la deuxi`eme ´equation, on d´eduit que x = y ou λ = −3/2. Si x = y, la contrainte se r´e´ecrit x2 −4x+3 = (x−1)(x−3) = 0 et on en d´eduit 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 r´e´ecrit x2 − 6x + 9 = (x − 3)2 = 0, soit (x, y, λ) = (3, −3, −3/2).

` ´ 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(1 + λ) −1 1 −1 2 ∇(x,y) L(x, y, λ) = = (16.23) −1 2(1 + λ) −1 1 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 colin´eaire `a (1, 1)T pour x = y et l’espace tangent est engendr´e par le vecteur (1, −1)T .Comme (1, −1)T est le vecteur propre associ´e `a la valeur propre nulle, la condition suffisante du second ordre n’est pas v´erifi´ee ici. De mˆeme, pour λ = −3/2, la matrice hessienne a tous ses termes ´egaux `a -1 et ses valeurs propres sont 0 et -2 ; Les conditions suffisantes du second ordre ne sont donc pas v´erifi´ees ici non plus. Finalement, il apparaˆıt que les conditions n´ecessaires du premier ordre sont satisfaites pour (x, y) ´egal `a (1, 1), (3, 3) ou (3, −3). Pour ces trois couples, le crit`ere `a optimiser vaut respectivement 1, 9 et 27. Donc seul le point (1, 1) peut repr´esenter le minimum global du probl`eme. (1, 1) est effectivement la solution du probl`eme d’apr`es le th´eor`eme de Weierstrass (le crit`ere est continu et la contrainte qui est une ellipse est bien un ensemble compact).

16.4

Conditions d’optimalit´ e en pr´ esence de contraintes d’´ egalit´ e et d’in´ egalit´ e

On consid`ere mintenant le probl`eme suivant   min f (x) f e (x) = 0,  i f (x) ≤ 0,

(16.24)

o` u 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’optimalit´e en des points r´eguliers au sens de la d´efinition 8, qui permet une d´efinition simple mais couvre un grand nombre de situations.

16.4.1

Condition n´ ecessaire du premier ordre

Th´ eor` eme 34 (conditions de Khun et Tucker) Si u est point r´egulier et un optimum local du probl`eme (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 associ´ee `a la positivit´e de µ et `a la n´egativit´e de f i (u), se r´e´ecrit en fait ∀k = 1, . . . , p, µk fki (u) = 0. Rappelons ´egalement que A(u) repr´esente l’ensemble des indices des contraintes d’in´egalit´e actives en u, c’est `a dire les valeurs de k ∈ {m+1, . . . , m+ p} telles que fk (u) = 0, les contraintes d’´egalit´e ´etant quant-`a elles bien entendu toujours actives en un point r´ealisable.

` ´ 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 bien f i (u)µ = 0. D’apr`es le th´eor`eme 31, on a alors ´egalement ∃λ ∈ Rm , ∃µ ∈ Rp , ∇f (u) + ∇f e (u)λ + ∇f i (u)µ = 0.

(16.26)

Il reste `a v´erifier la positivit´e des composantes de µk pour k ∈ A(u). Effectuons une d´emonstration par 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} ⇒ fji (v) = 0}. Comme u est un point r´egulier, ∇fk (u) n’appartient pas `a l’espace normal au plan tangent au point u `a la vari´et´e V−k (u), d´efini par {v; [∇fj (u)]T v = 0, j ∈ {1, . . . , m} ∪ (A(u) − {k})}. Il existe donc un vecteur v de ce plan tangent tel que ∇fk (u)T v < 0. Comme ∇fj (u)T v = 0 pour j ∈ {1, . . . , m} ∪ (A(u) − {k}) et µj = 0 pour j ∈ / A(u), on trouve que [∇f (u) + ∇f e (u)λ + ∇f i (u)µ]T v = ∇f (u)T v + µk ∇fk (u)T v = 0. (16.27) Mais, puisque ∇fk (u)T v < 0 et µk < 0, on doit alors avoir ∇f (u)T v < 0. En utilisant le th´eor`eme des fonctions implicites, on peut alors construire une courbe x(t) de V−k (u), et donc ˙ de l’ensemble des contraintes, avec t ≥ 0, telle que x(0) = u et x(0) = v. On aurait alors d T l’in´egalit´e dt f (x(t)) = ∇f (u) v < 0, qui est contraire `a l’hypoth`ese de minimalit´e locale de u, CQFD.

16.4.2

Conditions du second ordre

Condition n´ ecessaire D’apr`es le paragraphe pr´ec´edent, il est clair que le th´eor`eme de condition n´ecessaire du second ordre pr´esent´e dans le cas de contraintes d’´egalit´e s’´etend directement au cas de contraintes d’in´egalit´e en int´egrant ` a la condition les contraintes d’in´egalit´e actives, ce qui conduit au th´eor`eme suivant : Th´ eor` eme 35 (Conditions n´ ecessaires du second ordre) Si u est un minimum local r´egulier du probl`eme (16.24), alors ∃λ ∈ Rm , ∃µ ∈ Rp+ ,

∇f (u) + ∇f e (u)λ + ∇f i (u)µ = 0, f i (u)µ = 0.

 ∀v ∈ x ∇fk (u)T x = 0, k ∈ {1, . . . , m} ∪ A(u) , vT ∇2u L(u, λ, µ)v ≥ 0. (16.28) Ici, le lagrangien L(u, λ, µ) est d´efini par L(u, λ, µ) = f (u) + f e (u)T λ + f i (u)T µ, et son hessien est donn´e par X X ∇2u L(u, λ, µ) = ∇2u f (u) + λk ∇2u fke (u) + µk ∇2u fki (u). (16.29) k=1,m

k=1,p

Remarques i) Il se peut que pour une solution (u, λ, µ) des conditions de Khun et Tucker une contrainte

` ´ CHAPITRE 16. OPTIMISATION SOUS CONTRAINTES : CRITERES D’OPTIMALITE109 d’in´egalit´e fk (u) ≤ 0 soit active, c’est a` dire que fk (u) = 0, et que simultan´ement on ait µk = 0. 2 ii) la positivit´e de la matrice  Pour traduire ∇u L(u, λ, µ) pour les vecteurs de l’espace E(u) = T v ∇fk (u) v = 0, k ∈ {1, . . . , m} ∪ A(u) , il suffit de d´efinir une base {v1 , . . . , vl } de cet espace et la matrice V dont les colonnes sont constitu´ees de ces vecteurs : V = [v1 . . . vl ]. On pourra alors montrer ` a titre d’exercice que la positivit´e (resp. la positivit´e stricte) de ∇2u L(u, λ, µ) restreinte ` a E(u) est ´equivalente `a la positivit´e (resp. la positivit´e stricte) de la matrice VT [∇2u L(u, λ, µ)]V. Cette propri´et´e est utile en pratique pour v´erifier la condition suffisante ´enonc´ee ci dessous.

Condition suffisante Th´ eor` eme 36 (Conditions suffisantes du second ordre) Si u est un point r´egulier du probl`eme (16.24), avec f, (fk )k=1,...,m+p ∈ C 2 , et si ∃λ ∈ Rm , ∃µ ∈ Rp+ ,

∇f (u) + ∇f e (u)λ + ∇f i (u)µ = 0, f i (u)µ = 0.

 ∀v ∈ x ∇fk (u)T x = 0, k ∈ {1, . . . , m} ∪ {k; µk > 0} , vT ∇2u L(u, λ, µ)v > 0. (16.30) alors u est un minimum local strict du probl`eme (16.24).

Preuve On pourra faire la d´emonstration `a titre d’exercice en reprenant, avec des notations analogues, la d´emonstration par l’absurde du th´eor`eme 33.

16.5

Lagrangien, points selles, et dualit´ e

16.5.1

Points selles

Consid´erons le probl`eme  (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 selle de L si v → L(v, µ) a un minimum en u et si ν → L(u, ν) a un maximum en µ.

Th´ eor` eme 37 . Si (u, µ) est un point selle, supν inf v L(v, ν) = inf v supν L(v, ν) (16.32) = L(u, µ).

` ´ CHAPITRE 16. OPTIMISATION SOUS CONTRAINTES : CRITERES D’OPTIMALITE110

16.5.2

Probl` emes primal et dual

Th´ eor` eme 38 (probl`emes primal et dual) P 1. Soit L(v, µ) = f (v) + i=1,p νk fki (v). Si (u, µ) ∈ Rn × Rp est un point selle de L,alors u appartient ` a l’ensemble U = {v; fki (v) ≤ 0} et repr´esente une solution du probl`eme (16.31). 2. Si f et (fki )i=1,p sont convexes et d´erivables en un point r´egulier u qui est un minimum local du probl`eme (16.31), alors ∃µ ∈ Rp+ , (u, µ) est un point selle de L.

L(v, µ) est appel´e lagrangien associ´e au probl`eme (P ). Si on connait la valeur de µ associ´ee ` a un point selle, on est ramen´e au probl`eme sans contraintes de la recherche d’un vecteur uµ tel que (Pµ ) L(uµ , µ) = inf L(v, µ).

(16.33)

v

Pour trouver ce µ, il aura fallu r´esoudre (D) ν ∈ Rp+ , G(µ) = sup G(ν), avec G(µ) = inf L(v, ν). ν∈Rp+

v

(16.34)

(P ) et (D) sont respectivement appel´es probl`eme primal et probl`eme dual.

Th´ eor` eme 39 (lien entre les probl` emes primal et dual) k 1) Si les (fk )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 r´egulier solution de (P ), que f et les (fki )i=1,p sont convexes et d´erivables en u, (D) admet au moins une solution. Ainsi, avec les hypoth`eses pr´ec´edentes, — (u, µ) est point selle de L ⇒ µ est solution de (D) — µ est solution de (D) ⇒ (uµ , µ) est point selle de L.

Exemple. f (v) = suivantes

1 T 2 v Av

− vT b, et U = {v; Cv ≤ d}, C ∈ Rm × Rn . On a les relations

L(v, µ)

= 21 vT Av − vT (b − CT µ) − µT d



= A−1 (b − CT µ)

G(µ)

= − 12 (b − CT µ)A−1 (b − CT µ) − µT d

(16.35)

CA−1 CT ≥ 0. Donc −G(µ) admet un minimum, unique si C est de rang p, qui annule ∇G(µ) = −CA−1 CT µ + (CA−1 b − d).

(16.36)

` ´ CHAPITRE 16. OPTIMISATION SOUS CONTRAINTES : CRITERES D’OPTIMALITE111

16.6

Optimisation et calcul formel

On envisagera dans le prochain chapitre quelques techniques num´eriques d’optimisation sous contraintes. Pour des probl`emes d’´ecoles simples admettant une solution analytique, on peut envisager l’emploi d’outils de calcul formel qui permet d’obtenir la solution au prix de quelques lignes de code. Dans ce paragraphe, on montre avec deux exemples simples comment on peut obtenir une solution avec le language Sage (http ://www.sagemath.org/) qui au travers d’une interface de programmation bas´ee sur le langage Python (http ://www.python.org) permet d’acc´eder `a de tr`es nombreuses librairies de calcul math´ematiques. Le but de Sage est de fournir les possibilit´es de langages payants de calcul formels tels que Mathematica ou Mapple, ou de calcul alg´ebrique tels que Matlab, avec l’acc`es au code source des fonctions qui permet la v´erification approfondie des codes employ´es. Notons que pour les exemples ci dessous, on pourrait aussi utiliser la librairie sympy librement disponible sous python (www.sympy.org) qui fait partie de la pile logicielle scipy (voir www.scipy.org) et constitue un ensemble de ressources int´eressantes pour le calcul scientifique Optimisation avec contrainte d’´ egalit´ e

# optimiser f(x,y) = xy # sous la contrainte h(x,y)=(x/a)^2 + (y/b)^2-1=0 #---------------------------------------# D´ eclaration des param` etres 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 # R´ esolution #----------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)

` ´ 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’in´ egalit´ e

# optimiser f(x,y) = (x/a)^2 + (y/b)^2 # sous g(x,y) = -b*x - a*y +a*b <= 0 #---------------------------------------# D´ eclaration des param` etres 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 # R´ esolution #----------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)

` ´ CHAPITRE 16. OPTIMISATION SOUS CONTRAINTES : CRITERES D’OPTIMALITE113

Figure 16.2 – minx,y x2 + y 2 , avec (x/a)2 + (y/b)2 ≤ 1 et −bx − ay + ab ≤ 0.

Chapitre 17

Optimisation sous contraintes : algorithmes Ce chapitre, en cours de r´edaction, pr´esente quelques techniques d’optimisation pour les probl`emes contraints.

17.1

Extension des m´ ethodes sans contraintes

Une premi`ere id´ee consiste, pour les probl`emes contraints, `a chercher `a g´en´eraliser les techniques d´evelopp´ees pour les probl`emes non contraints.

17.1.1

M´ ethode de relaxation

Th´ eor` eme 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 m´ethode de relaxation converge.

L’extension du th´eor`eme ` a des ensembles plus g´en´eraux n’est pas imm´ediate (consid´erer par exemple le cas o` u f (v) = v12 + v22 , et U = {(v1 , v2 ); v1 + v2 ≥ 2}).

17.1.2

Th´ eor` eme de projection et gradient projet´ e

Le th´eor`eme de projection est un outil d’usage courant pour l’optimisation dans les espaces de Hilbert. Rappelons qu’un espace de Hilbert H est un espace vectoriel norm´e complet (c’est ` a dire tel que toute suite de Cauchy y est convergente) muni d’un produit scalaire. Dans un tel espace, on a le r´esultat fondamental suivant appel´e th´ eor` eme de projection. On en donne ici un ´enonc{e retreint ` a Rn . 114

CHAPITRE 17. OPTIMISATION SOUS CONTRAINTES : ALGORITHMES

115

Th´ eor` eme 41 Soit U ⊂ Rn un ensemble convexe ferm´e et non vide. Alors ∀x ∈ Rn , ∃!xP ∈ U, et k x − xP k= inf k x − y k . y∈U

(17.1)

xP est l’unique ´el´ement z de U tel que ∀y ∈ U , (z − x)T (y − z) ≥ 0. L’application P : x → xP est telle que ∀x1 , x2 ∈ Rn , k x1P − x2P k≤k x1 − x2 k .

(17.2)

P est lin´eaire si et seulement si U est un sous espace vectoriel de Rn , auquel cas ∀y ∈ U, yT (xP x) = 0.

(17.3)

Th´ eor` eme 42 (Convergence de la m´ethode de gradient projet´e). Soit f : Rn → R, et U ⊂ Rn est un ensemble convexe non vide. Si ∃α, M > 0, tels que ∀x, y ∈ Rn (∇f (y) − ∇f (x))T (y − x) ≥ α k y − x k2 (17.4) k ∇f (y) − ∇f (x) k

≤ M k y − x k,

et a, b > 0 tels que 0 < a < ρk ≤ b < (2α/M 2 ), la m´ethode du gradient projet´e converge et ∃β < 1, k uk − u k≤ β k k u0 − u k .

(17.5)

Notons cependant que la construction de l’op´erateur de projection PU est parfois difficile.

17.1.3

M´ ethode de point int´ erieur

Les m´ethodes de point int´erieur visent a` remplacer les contraintes du crit`ere par un terme additif qui tend vers l’infini ` a la fronti`ere du domaine des contraintes lorsqu’on augmente un param`etre de r´eglage d’ad´equation aux contraintes que l’on notera ici t. Ainsi, au probl`eme   minx f (x) (17.6)  i f (x) ≤ 0, i = 1, . . . , p, on pourra associer le crit`ere non contraint suivant f (x) +

1 X ψ(−f i (x)), t

(17.7)

i=1,p

o` u ψ(z) est une fonction d´ecroissante sur R+ qui pr´esente une divergence en 0. En pratique, on cherchera ` a minimiser it´erativement cette fonction tout en faisasnt croˆıtre la valeur de t. Typiquement, on prendra ψ(z) = log z. La m´ethode de point int´erieur constitue une technique de p´ enalisation interne qui conduit ` a des algorithmes it´eratifs qui doivent ˆetre initialis´es `a l’int´erieur du domaine des contraintes.

CHAPITRE 17. OPTIMISATION SOUS CONTRAINTES : ALGORITHMES

17.1.4

116

M´ ethode de p´ enalisation externe

On peut aussi envisager des m´ethodes de p´ enalisation externe qui consistent `a remplacer les contraintes d’in´egalit´e par une fonction nulle dans le domaine des contraintes et strictement positive `a l’ext´erieur. Indiquons ici un r´esultat de convergence pour une telle m´ethode. Th´ eor` eme 43 Soit f : Rn → R, coercive et strictement convexe, U ∈ Rn un ensemble non vide, convexe et ferm´e, et ψ : Rn → R, continue, convexe et telle que ∀y ∈ Rn , ψ(y) ≥ 0, et ψ(y) = 0 ⇔ y ∈ U . Alors, 1 ∀ε > 0, ∃!ut ∈ Rn , f (ut ) = infn [f (x) + ψ(x)], x∈R ε

(17.8)

et lorsque ε → 0, ut tend vers arg inf y∈U f (y). Notons qu’`a la diff´erences des m´ethodes de points int´erieur, la construction pratique de la fonction ψ peut s’av´erer d´elicate pour une p´enalisation externe.

17.1.5

M´ ethode d’Uzawa

Consid´erons de nouveau le probl`eme   minx f (x) 

(17.9)

f i (x) ≤ 0, i = 1, . . . , p.

eme dual (D) peut ˆetre r´esolu Notons P+ la projection sur Rm + : [P+ µ]i = max{µi , 0}. Le probl` par la m´ethode du gradient projet´e : µk+1 = P+ (µk + ρ∇G(µk )),

(17.10)

o` u ∇G(µ) = [f 1 (µ), . . . , f p (µ)]T . P Notons uµ = arg minv [f (v)+ i=1,p µi f i (v)]. La m´ethode d’Uzawa consiste `a calculer it´erativement, `a partir de µ0 fix´e, uk = uµk , puis µk+1 par la relation (17.10). On remplace ainsi le probl`eme contraint par une suite de probl`emes non contraints.

Th´ eor` eme 44 (convergence de la m´ethode d’Uzawa) Soit f : Rn → R, elliptique, et U = {v ∈ Rn ; Cv ≤ d} = 6 ∅ (C ∈ Rp × Rn ). Si 0 < ρ < 2α k C k−2 , o` u 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 probl`eme dual (D).

CHAPITRE 17. OPTIMISATION SOUS CONTRAINTES : ALGORITHMES

117

Exemple f (v) = 12 vTAv − vT b, et U = {v; Cv ≤ d}, C ∈ Rp × Rn . L’algorithme s´ecrit uk

= A−1 (b − CT µk )

µk+1 = P+ (µk + ρ∇G(µk )) (17.11) = P+ (µk + ρ(CA−1 (b − f C T µk ) − d)) = P+ (µk + ρ(Cuk − d)).

Chapitre 18

Programmation lin´ eaire 18.1

Le probl` eme

On cherche ` a r´esoudre le probl`eme d’estimation lin´eaires de type ´egalit´e ou in´egalit´e : P   max j=1,n cj xj   P A x ≤ b , i = 1, m ⇔ (I) ij j i j=1,n   x ≥ 0 i = 1, n i    max z = cx Ax = b ⇔ ⇔  x≥0

d’une fonction lin´eaire sous des contraintes max P

P

j=1,n+m cj xj

j=1,n+m Aij xj = bi , i = 1, m xi ≥ 0 i = 1, n + m

(18.1)

maxx∈U z = cx U = {x ∈ Rm+n ; Ax = b, x ≥ 0}

o` u on a pos´e, pour j > 0 Aij = δi,n+i . U est un polytope convexe, c’est `a dire un sous ensemble convexe de Rm+n dont la fronti`ere est d´efinie par un nombre fini d’hyperplans. U a un nombre fini de points extr`emes, c’est ` a dire de points qui ne se trouvent pas sur un segment ]a, b[ o` ua et b appartiennent ` a U.

Th´ eor` eme 45 Si U est non vide et born´e, minx∈U cx est atteint en au moins un point extr`eme de U . Si le minimum est atteint en plusieurs points extr`emes, le convexe qu’ils engendrent est un ensemble de solutions du probl`eme.

18.2

Bases r´ ealisables

On peut supposer que A est de rang m (sinon le syst`eme Ax = b n’a pas de solution ou est redondant, auquel cas on peut ´eliminer les ´equations redondantes). On appelle base une sous matrice AB de de taille m extraite de A et inversible. On note xB les composantes correspondantes de x. On a alors z = cB xB + cB xB et Ax = AB xB + AB xB = b (18.2) 118

´ CHAPITRE 18. PROGRAMMATION LINEAIRE

119

On appelle solution de base AB le vecteur x d´efini par xB = A−1 B b et xB = 0. Une solution de base est dite r´ealisable si xB ≥ 0. Th´ eor` eme 46 L’ensemble des points extr`emes de U correspond ` a l’ensemble des solutions de base r´ealisables

18.2.1

Solutions de base r´ ealisables optimales

Le probl`eme (I) se ram`ene donc ` a celui de la recherche des solutions de base r´ealisables optimales. Notons A = [AB AB ] = [A1 , . . . , Am , Am+1 , . . . , Am+n ]. −1 xB + (A−1 B AB )xB = AB b,

donc

(18.3)

−1 z = cB [A−1 B b − (AB AB )xB ] + cB xB

(18.4) =

cB A−1 B b



−1 j∈B [cB AB Aj

P

− cj ]xj .

esultat suivant : Notons αj = cB A−1 B Aj . On a alors le r´ Th´ eor` eme 47  [∀i ∈ B, αj − cj ≥ 0] ⇒

18.3

A−1 B b 0

 est une solution optimale.

(18.5)

Changement de base r´ ealisable

B ´etant une base r´ealisable, on cherche `a la transformer en une nouvelle base : B → B 0 = B − {s} + {r} o` u s et r correspondent aux indices des colonnes AS et AR de A qui sortent et entrent dans la base respectivement. Proposition 3 B 0 est une base si et seulement si [A−1 B Ar ]s 6= 0. Preuve Cela provient du fait que X X λi Ai + λr Ar = 0 ⇔ λi ei + λr A−1 B Ar = 0. i∈B,i6=s

(18.6)

i∈B,i6=s

Cherchons `a quelle condition la nouvelle base est r´ealisable.  0    x AB Ar × B0 = b. xr

(18.7)

´ CHAPITRE 18. PROGRAMMATION LINEAIRE

120

avec x0s = 0. Donc, 

I

A−1 B Ar



 x0B −1 −1 0 0 × 0 = A−1 B b ⇒ xs + [(AB Ar )s xr ] = (AB b)s xr 

(18.8)

Comme la base B est r´ealisable et que x0s = 0 est nulle pour la nouvelle solution de base, −1 −1 x0r = (A−1 B Ar )s (AB b)s .

(18.9)

−1 0 Comme la base B est r´ealisable, (A−1 B b)s ≥ 0 et il faut que (AB Ar )s soit positif pour que xr le soit. De plus, dans la nouvelle base, X −1 0 x0i ei + (A−1 (18.10) B Ar )i xr = AB b. i∈B,i6=s

Donc, −1 0 x0i = (A−1 B b)i − (AB Ar )i xr ,

r ´etant fix´e, on choisit s tel que x0r = relations (18.9) et (18.11) on a

i 6= r.

−1 −1 (A−1 B Ar )s (AB b)s

 0  x0i = (A−1 B b)i 1 − xr

(A−1 B b)i −1 (AB Ar )i

(18.11)

soit minimal. comme d’apr`es les !−1  

(18.12)

et il apparaˆıt que le facteur de droite de l´egalit´e pr´ec´edente est positif. De plus, xi = (A−1 B b)i ≥ 0. 0 POur le choix de s retenu, on assure bien la positivit´e de du vecteur de base x .

18.4

algorithme du simplexe

Pour la valeur de s fix´ee comme pr´ec´edemment, cherchons r telle que B 0 soit meilleure que B. es (18.4), la solution x0 B 0 est meilleure que B si αr − cr > 0 (αr = cB (A−1 B Ar )). En effet, d’apr´ dans la nouvelle base v´erifie P −1 0 cx = = cB A−1 B b− j∈B 0 [cB AB Aj − cj ]xj (18.13) −1 = cB AB b − (αr − cr )xr , c’est `a dire que z(x0 ) = z(x) − (αr − cr )xr . On voit donc que la d´ecroissance du crt`ere est assur´ee si αr − cr > 0. Afin de favoriser une d{ecroissance forte du crit`ere, on cherchera une valeur positive minimale de αr − cr . L’algorithme du simplexe impl´emente cette strat´egie de fa¸con it´erative :

tant que ∃i ∈ B, αi − ci > 0, chercher r tel que |αr − cr | = max(αi −ci )>0 |αi − ci | −1 −1 −1 soit minimal, prendre s tel que x0r = (A−1 B Ar )s [(AB b)s ] −1 avec (AB Ar )s > 0 Notons que tous les xi de la solution de base sont alors positifs `a chaque it´eration.

´ CHAPITRE 18. PROGRAMMATION LINEAIRE

18.5

Programmation lin´ eaire et dualit´ e

18.5.1

Probl` eme primal et probl` eme dual

121

Consid´erons le programme   min cT x Ax = b  x≥0

(18.14)

Le Lagrangien associ´e ` a ce probl`eme s’´ecrit L(x, λ, µ) = cT x + λT (Ax − b) + µT x = (cT − λT A + µT )x − λT b,

(18.15)

avec µ ⊂ Rn+ et µi xi = 0 pur i = 1, . . . , n. La minimisation sur x du lagrangien L(x, λ, µ) admet une solution si et seulement si (cT − λT A)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 − λT A)i ≥ 0, car sinon l’augmentation de xi se traduirait par la diminution du crit`ere ce qui est incompatible avec la d´efinition du point selle. Finalement, pour le probl`eme primal (18.14) on obtient un probl`eme dual de la forme   max bT x AT λ ≤ c (18.16)  x≥0

Dans la suite, on va ´etablir les propri´et´es de dualit´e pour les progralmes lin´eaires qui ont servi `a la d´emonstration du th´eor`eme (31). Mais auparavant, on va indiquer les liens existants entre probl`eme primal et probl`eme dual.

18.6

Equivalence du probl` eme primal et du probl` eme dual

Consid´erons le probl`eme primal (P ) et son dual (D) :    min cT x max bT x Ax = b (P ) : (D) : AT λ ≤ c  x≥0

(18.17)

Le Lagrangien associ´e ` a ce probl`eme s’´ecrit L(xλ, µ) = cT x + λT (Ax − b) + µT x = (cT − λT A + µT )x − λT b,

(18.18)

Proposition 4 L’ensemble des probl`emes primaux co¨ıncide avec l’ensemble des probl`emes duaux

´ CHAPITRE 18. PROGRAMMATION LINEAIRE

122

Preuve Consid´erons le probl`eme (P ), et notons que Ax = b peut se reformular comme les deux in´egalit´es Ax ≤ b et −Ax ≤ −b. Donc (P ) se reformule comme le programme dual suivant :  T   max  −c  x    A b (18.19) −A x ≤ −b    I 0 Inversemmment, en posant λ = λ1 − λ2 , avec λ1 ≥ 0 et λ2 ≥ 0 on peut r´e´ecrire (D) sous la forme primale ; Pour cela, introduisons un vecteur y ≥ 0 suppl´ementaire tel que AT λ + y = c ˜ = [λT λT yT ]T . Les composantes de y sont appel´ees variables d’´ et notons λ ecart. Il apparaˆıt 1 2 finalement que (D) se r´e´ecrit :  T   T ˜  min  T −b T b  0 λ ˜=c (18.20) A −A I λ  x ≥ 0, qui est bien la forme d’un programme primal. Donc l’ensemble des programmes primaux co¨ıncide avec l’ensemble des programmes duaux. Montrons enfin que le dual du programme (D) est le programme (P ). Le dual du programme dual (D) r´e´ecrit sous la forme (18.20) est  T   max  c u    A −b (18.21) −A u ≤  b  .    I 0 En posant x = −u et en rampla¸cant les relations Au ≤ −b et −Au ≤ b par Ax = b, on retrouve bien le programme primal (P )

18.7

Th´ eor` eme de dualit´ e pour la programmation lin´ eaire

Notons maintenant que si x et λ sont des valeurs r´ ealisables (c’est `a dire satisfaisant qux contraintes) pour les probl`emes (P ) et (D) respectivement, alors les conditions Ax = b, AT λ ≤ c et x ≥ 0 conduisent aux relations λT b = λT Ax ≤ cT x.

(18.22)

La relation λT b ≤ cT x est connue sous le nom de propri´ et´ e de dualit´ e faible et conduit ` a l’´enonc´e suivant : Proposition 5 L’ensemble des points r´ealisables du dual conduit a ` des valeurs du crit`ere dual inf´erieures ` a l’ensemble des valeurs prises par le crit`ere primal pour ses points r´ealisables. En termes math´ematiques, on a donc : ∀α ∈ {bT λ; AT λ ≤ c},

∀β ∈ {cT x; Ax = bx ≥ 0},

α≤β

(18.23)

´ CHAPITRE 18. PROGRAMMATION LINEAIRE

123

Cette proprit´et´e permet d’´etabir le th´eor`eme suivant qui montre l’´equivalence des probl`emes (P ) et (D). Th´ eor` eme 48 Si l’un des probl`emes (P ) ou (D) admet une solution, il en est de mˆeme pour l’autre et les valeurs de l’optimum sont identiques. Inversement (P ) n’est pas born´e inf´erieurement ou (D) n’est pas born´e sup´erieurement, alors l’autre probl`eme n’admet pas de valeur r´ealisable. D´ emonstration Comme on a vu au paragraphe pr´ec´edant que tout probl`eme primal pouvait prendre la forme ´equivalente d’un probl`eme dual et que le dual du dual d’un probl`eme donn´e correspond au probl`eme primal de d´epart, on pourra se contenter de d´emontrer le r´esultat en consid´erant exclusivement les hypoth`eses ´enonc´ees pour le probl`eme primal (P ). Supposons donc que le probl`eme primal admet une solution et notons z la valeur de l’optimum. L’existence d’une valeur r´ealisable optimale pour le probl`eme dual (D) qui conduirait `a un optimum ´egal ` a z peut se reformuler sous la forme ∃λ ∈ Rm , ∀x ⊂ Rn+ , ∀t ⊂ R+ ,

(cT − λT A)x + t(λT b − z) ≥ 0.

(18.24)

En effet, on sait que pour λ une valeur r´ealisable de (D) on a n´ecessairement λT b − z ≤ 0 ; La propri´et´e (18.24) imposera donc pour ˆetre v´erifi´ee d’avoir λT b − z = 0 (prendre x = 0 et t arbitraierement grand). Pour montrer (18.24), notons que cette propri´et´e se r´e´ecrit encore comme ∃λ ∈ Rm , ∀x ⊂ Rn+ , ∀t ⊂ R+ ,

−(tz − cT x) + λT (tb − Ax) ≥ 0.

Pour ´etablir cette derni`ere relation, on consid`ere le cˆone convexe ferm´e  C = (r, w); r = tz − cT x, w = tb − Ax, t ≥ 0, x ≥ 0 .

(18.25)

(18.26)

Si on parvient ` a d´emontrer que (1, 0) ∈ / C, le th´ eor` eme de s´ eparation 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) s´epare C et (1, 0), avec ∀(r, w) ∈ C, s1 + λT 0 < 0 ≤ sr + λT w.

(18.28)

Sans perte de g´en´eralit´e, on pourra choisir s = −1 et, compte tenu de la d´efinition de C, l’in´egalit´e de droite de (18.28) correspond alors pr´ecisemment `a la relation (18.25) que l’on cherche `a ´etablir. Il nous reste donc ` a v´erifier que (1, 0) ∈ / C. Si on avait (1, 0) ∈ C, il devrait exister t ≥ 0 et x ≥ 0 tels que Ax = tb et tz − cT x > 0. Pour t > 0, en notant x0 = x/t, on aurait Ax0 = b et cT x0 > z, ce qui est impossible puisque z est 1. Th´eor`eme de s´eparation de Han-Banach : ´etant donn´e deux ensembles convexes ferm´es, C1 et C2 , il existe un hyperplan qui s´epare strictement C1 et C2 , c’est a ` dire que C1 et C2 se trouvent de part et d’autre de cet hyperplan (s´eparation) et que l’un au plus de ces ensembles admet des points communs avec l’hyperplan (s´eparation stricte). De plus, lorsque comme ici un des deux convexes est un cˆ one, on peut choisir un hyperplan passant par l’origine

´ CHAPITRE 18. PROGRAMMATION LINEAIRE

124

la valeur minimale prise par le crit`ere (P ). Pour t = 0, on aurait Ax = 0 et −cT x > 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 probl`eme (P ) n’est pas inf´erieurement, la propri´et´e de dualit´e faible indique que si x et λ sont des valeurs r´ealisables pour les probl`emes (P ) et (D) respectivement, alors λT b ≤ cT x. Comme x peut ˆetre choisi tel que cT x soit arbitrairement petit on devra avoir λT b = −∞, ce qui est impossible. Donc le probl`eme dual n’admet pas de valeur r´ealisable. Exemple d’application A titre d’illustration de l’emploi possible du th´eor`eme de dualit´e, on va proposer ici une d´emonstration de la condition n´ecessaire d’optimalit´e du premier ordreen programmation non lin´eaire sous contrainte d’´egalit´e bas´ee sur son emploi. Rappelons ici l’´enonc´e de ce th´eor`eme : Si u est un point r´egulier et un optimum local pour le probl`eme  min f (x) , f e (x) = 0,

(18.30)

alors ∃λ ∈ Rm ,

∇f (u) + ∇f e (u)λ = 0.

(18.31)

Voici la d´emonstration faisant appel ` a la notion de dualit´e en programmation lin´eaire Preuve Soit u un point r´egulier du probl`eme (18.30). Consid´erons le probl`eme de programmation lin´eaire suivant :  max ∇f (u)T v (18.32) (P L) ∇f e (u)T v = 0, On va tout d’abord montrer que pour un point r´egulier optimal u de (18.32), [∇f e ]T (u)v = 0 ⇒ [∇f (u)]T v = 0 ce qui ´etablit l’existence d’un optimum du probl`eme primal et donc, d’apr`es le th´eor`eme de dualit´e 48, l’existence de solutions r´ealisables pour le probl`eme dual, dont on montrera que l’ensemble de contrainte sur λ est pr´ecis´emment d´ecrit par la relation ∇f (u) + ∇f e (u)λ = 0. Commen¸cons donc par ´etablir que [∇f e (u)]T v = 0 ⇒ ∇f (u)T v = 0. Si [∇f e (u)]T v = 0, v appartient au plan tangent ` a la vari´et´e f eT (x) = 0 au point x = v. Il existe donc une courbe e ˙ t → y(t) de V = {x; f (x) = 0}, avec y(0) = u et y(0) = v. L’optimalit´e de u pour le probl`eme ˙ (18.32) entraine en particulier l’optimalit´e de f (y(t)) en t = 0. Donc y(0) = [∇f (u)]T v = 0. Le probl`eme (P L) admet donc une solution et la valeur optimale du crit`ere vaut donc 0. Comme indiqu´e plus haut, le probl`eme dual admet donc au moins une valeur λ qui satisfait aux contraintes. Pour ´ecrire ce programme dual, commen¸cons par remttre le probl`eme (P L) sous une forme standard ´equivalente en posant v = v1 − v2 , avec v1 ≥ 0 et v2 ≥ 0, et x = [v1T v2T ]T . On obtient ainsi la forme    −∇f (u) ∇f (u) x   min  (∇f e (u))T (−∇f e (u))T x = 0 (18.33) (P L) :  x≥0

´ CHAPITRE 18. PROGRAMMATION LINEAIRE dont la forme duale est

 T  max  0e λ    ∇f (u) −∇f (u) (DL) : λ≤ .  −∇f e (u) ∇f (u)

125

(18.34)

Il apparaˆıt donc, en consid´erant les contraintes de ce probl`eme, qu’il existe λ ∈ Rm tel que ∇f (u) + ∇f e (u)λ = 0.

(18.35)

Annexe A

Master SISEA Corrig´ e des examens (printemps 2006 ` a 2011)

126

´ DES EXAMENS (PRINTEMPS 2006 A ` 2011) 127 ANNEXE A. MASTER SISEA CORRIGE

Janvier 2010

I On veut construire une boite rectangulaire ouverte avec une surface de 192cm2 de carton. i) Si la base doit ˆetre carr´ee, quelles dimensions donnent le plus grand volume ? En notant a le cot´e de la base et h la hauteur, le probl`eme s’´ecrit alors  max V = a2 h    a2 + 4ah = 192cm2    a ≥ 0, h ≥ 0

(A.1)

Les contraintes d’ingalit´e devront bien sˆ ur ˆetre√inactives. Sinon on obtiendrait V = 0 qui est le minimum du probl`eme (obtenu pour (a, h) = ( 192, 0)). Le lagrangien s’´ecrit L(a, h, λ) = a2 h + λ(a2 + 4ah − 192) et son gradient   2ah + λ(2a + 4h) = 0. ∇(a,h) L(a, h, λ) = a2 + 4λa

(A.2)

La derni`ere ´equation conduit ` a a = 0 ou λ = −a/4. Comme a 6= 0 du fait que a2 + 4ah = 192, on doit avoir λ = −a/4. La premi`ere ´equation se r´e´ecrit alors √ 4h − (a + 2h) = 0, soit h = a/2. 2 2 La contrainte a + 4ah = 192 donne alors 3a = 192, soit a = 64 = 8cm. On a ainsi h = 4cm et V = 256cm3 . Les conditions n´ecessaires du premier ordre conduisent donc `a la solution (a, h, λ) = (8, 4, −2). Cette condition est suffisante car on cherche ici maximiser V = a2 h qui est une fonction continue et coercive sur la courbe de de contrainte ferm´ee {(a, h); a2 + 4ah = 192, a ≥ 0, h ≥ 0}. D’apr`es le th´eor`eme de Weierstrass le probl`eme admet donc une solution qui ne peut donc ˆetre que (a, h) = (8, 4). ii) Mˆeme question si la base peut ˆetre rectangulaire. Dans ce cas, en notant b le second cˆ ot´e du rectangle, on obtient  max V = abh    ab + 2(a + b)h = 192    a, b, h ≥ 0

(A.3)

L`a encore le maximum est atteint lorsque les contraintes d’in´egalit´e sont inactives. Le lagrangien s’´ecrit L(a, h, λ) = abh + λ(ab + 2(a + b)h − 192) et son gradient   bh + λ(b + 2h) ∇(a,h) L(a, h, λ) = = 0. (A.4) ah + λ(a + 2h)ab + 2λ(a + b)

´ DES EXAMENS (PRINTEMPS 2006 A ` 2011) 128 ANNEXE A. MASTER SISEA CORRIGE la diff´erence des deux premi`eres ´equations donne (b − a)(h + λ) = 0. Si λ = −h, bh + λ(b + 2h) = 0 = −2h2 et le volume serait nulle. Donc a = b et le probl`eme est ´equivalent `a celui de la question pr´ec´edente. La solution est encore (a, b, h) = (8, 8, 4)cm. II Montrez qu’on peut ´ecarter la derni`ere contrainte du probl`eme suivant :  1 2   minx,y 2 x + y    2x + y ≥ 2    x−y ≤1   x≥0

(A.5)

Les deux premi`eres contraintes se r´e´ecrivent x ≥ 1 − y/2 et y ≥ x − 1. Donc, x ≥ 1 − (x − 1)/2, soit x ≥ 1. La derni`ere contrainte est donc redondante avec les deux premi`eres et peut ˆetre ´ecart´ee. ii) Trouver la solution. Le lagrangien s’´ecrit 1 L(x, y, µ) = x2 + y 2 + µ1 (2 − 2x − y) + µ2 (x − y − 1) 2 avec µi ≥ 0 (i = 1, 2), et les conditions de Khun et Tucker sont donn´ees par    x − 2µ1 + µ2   =0  2y − µ1 − µ2 µ (2 − 2x − y) =0    1 µ2 (x − y − 1) =0

(A.6)

Si µ1 et µ2 sont non nuls, (x, y) = (1, 0) et le crit`ere vaut 1/2. Si µ1 = 0 et µ2 6= 0, y = x − 1 et en additionnant les deux ´equations de ∇L = 0, on trouve x + 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 crit`ere vaut 4/9. Le point (x, y) = (8/9, 2/9) est donc le point qui parmi ceux qui assurent les conditions n´ecessaires de Khun et Tucker conduit `a la valeur minimale du critˆere. La condition n´ecessaire est ici suffisante car en tout point   1 0 2 ∇ L= > 0. (A.7) 0 2 III Trouvez l’optimum du probl`eme suivant en passant par les conditions de Khun et Tucker :  P miny ni=1 yi    (A.8) Πn y = 1    i=1 i yi ≥ 0 i = 1, . . . , n.

´ DES EXAMENS (PRINTEMPS 2006 A ` 2011) 129 ANNEXE A. MASTER SISEA CORRIGE

Notons que les contraintes yi ≥ 0 ne peuvent pas ˆetre actives puisqu’on doit avoir Πni=1 yi = 1. On va donc chercher simplement ` a r´esoudre le probl`eme sans les contraintes d’ingalit´e en se restreignant ensuite aux solutions positives. Le lagrangien s’´ecrit alors L(y, λ) = yT 1I + λ(Πni=1 yi − 1)

(A.9)

∇y L = 1I + λ(Πni=1 yi )diag(1/y1 , . . . , 1/yn )1I = 0.

(A.10)

et son gradient est Il apparaˆıt donc que l’on doit avoir tous les yi ´egaux `a −λΠni=1 yi . La contrainte Πni=1 yi = yin = 1 donne alors yi = 1, ∀i ∈ {1, . . . , n}, compte tenu de la contrainte de positivit´e. Par suite, λ = −1. Notons de plus que la matrice hessienne du lagrangien vaut alors  ∇2y L = (Πni=1 yi ) diag(1/y12 , . . . , 1/yn2 ) − [1/y1 , . . . , 1/yn ]T [1/y1 , . . . , 1/yn ] = I − 1I1IT (A.11) Le gradient de Πni=1 yi −1 au point (1, . . . , 1) est le vecteur 1I et tout vecteur v de l’espace tangent `a la contrainte en ce point v´erifie donc vT 1I = 0. Il en r´esulte que vT (∇2y L)v = vT (I − 1I1IT )v =k v k2 . La restriction du hessien du lagrangien au point (1, . . . , 1) est donc strictement positive, ce qui ´etablit que la condition n´ecessaire d’annulation Pn du lagrangien en ce point est ´egalement suffisante. Finalement, la valeur du minimum est i=1 = n. ii) En d´eduire que n

1X xi ≥ (Πni=1 xi )n , n

∀xi ≥ 0, i = 1, . . . , n.

(A.12)

i=1

L’in´egalit´e est clairement v´erifi´ee si un des xi est nul. Maintenant, si tous les xi sont non nuls, n 1/n n en posant Pn yi = xi /(Πj=1 xj ) , comme Πi=1 yi = 1, il est clair d’apr`es la question pr´ec´edente que i=1 yi ≥ n, ce qui conduit imm´ediatement au r´esultat d´esir´e. IV Pour a, b et c trois constantes strictement positives fixes, on veut minimiser la somme de trois nombres positifs x, y et z sous la contrainte : b c a + + = 1. x y z

(A.13)

i) Montrez qu’` a l’optimum les inconnues sont strictement positives. La contrainte d’´egalit´e ne pourrait pas ˆetre satisfaite si un des nombres x, y ou z ´etait nul.

´ DES EXAMENS (PRINTEMPS 2006 A ` 2011) 130 ANNEXE A. MASTER SISEA CORRIGE ii) Trouver la solution en passant par la m´ethode des multiplicateurs de Lagrange et justifiez votre r´eponse. Puisque les contraintes de positivit´e ne sont pas actives, le probl`eme se r´esume `a la recherche des solutions positives parmi les solutions du probl`eme d’optimisation sous la seule contrainte d’´egalit´e. Le lagrangien s’´ecrit alors a b c + + − 1) x y z

(A.14)

∇xyz L(x, y, z, λ) = 1I − λ [a/x2 , b/y 2 , c/z 2 ]T .

(A.15)

L(x, y, z, λ) = x + y + z + λ ( et son gradient est

En consid´ep rant les conditions n´ecessaires du premier ordre ∇L = 0, on trouve donc que λ > 0 et √ √ √ (x, y,√z) = (λ)(√ a, b, c). En r´einjectant ces valeurs dans l’´equation de contrainte, on trouve √ √ que λ = a + b + c. La matrice hessienne en ce point vaut ∇2xyz L(x, y, z, λ) = 2λdiag(a/x3 , b/y 3 , c/z 3 ) > 0.

(A.16)

La condition suffisante est donc ´egalement satisfaite et la solution du probl`eme est obtenue en √ √ √ √ √ √ (A.17) (x, y, z) = ( a + b + c)( a, b, c) √ √ √ et en ce point, le critˆere vaut x + y + z = ( a + b + c)2 .

´ DES EXAMENS (PRINTEMPS 2006 A ` 2011) 131 ANNEXE A. MASTER SISEA CORRIGE

Janvier 2009

I Trouver la solution de   min (x + y − z − 1)2 + (x + y)2 + 5x2 

(A.18)

2x + z = 0

en se ramenant un probl`eme non contraint. Comme z = −2x, il suffit de minimiser f (x, y) = (3x + y − 1)2 + (x + y)2 + 5x2

(A.19)

 15x + 4y − 3 . ∇f (x, y) = 2 4x + 2y − 1

(A.20)

Le gradient de f est 

L’annulation du gradient conduit ` a (x, y) = (1/7, 3/14). De plus, la matrice hessienne de f vaut   15 4 2 ∇ f (x, y) = 2 . (A.21) 4 2 La trace et le d´eterminant de cette matrice valent respectivement 17 et 14 et correspondent `a la somme et au produit de ses valeurs propres, qui sont donc positives. Donc la matrice ∇2 f (x, y) est positive en tout point (x, y) et f est convexe. (x, y) = (1/7, 3/14) r´ealise donc le minimum (global strict) de f . On en d´eduit z = −2x = −2/7. ii) En passant par le lagrangien (justifiez vos r´eponses) Le lagrangien s’´ecrit L(x, y, z, λ) = (x + y − z − 1)2 + (x + y)2 + 5x2 + λ(2x + z).

(A.22)

Son gradient est 

 2(7x + 2y − z − 1 + λ) ∇xyz L(x, y, z, λ) =  2(2x + 2y − z − 1)  . −2(x + y − z − 1) + λ

(A.23)

L’annulation du gradient conduit ` a x = −λ/5 (diff´erence des deux premi`eres lignes du gradient) et z = −λ−1 (combinaison des deux derni`eres lignes). En rempla¸cant ces valeurs dans l’´equation de 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 

 7 2 −1 2 −1 . ∇2xyz L(x, y, z, λ) = 2  2 −1 −1 1

(A.24)

´ DES EXAMENS (PRINTEMPS 2006 A ` 2011) 132 ANNEXE A. MASTER SISEA CORRIGE En tout point, le gradient de 2x + z est u = [2, 0, 1]T . Donc l’espace tangent `a la contrainte est engendr´e par les vecteurs v = [0, 1, 0]T et w = [1, 0, −2]T . Pour v´erifier que la restiction de ∇2xyz L(x, y, z, λ) l’espace tangent la contrainte est positive, il est ´equivalent de montrer que la matrice       7   2 −1 0 1 0 1 0  2 4 2 2 −1 . 1 0  = [v w]T ∇2xyz L(x, y, z, λ)[v w] = (A.25) 1 0 −2 4 15 −1 −1 1 0 −2 est positive, ce qui est le cas d’apr`es la question pr´ec´edente (trace=17, d´eterminant=14). Le minimum 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 + y 2 + z 2 − 2xyz. i) Montrer que f n’est born´ee ni inf´erieurement ni sup´erieurement. 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 chacun d’eux s’il s’agit d’un minimum local, d’un maximum local ou ni l’un ni l’autre.   x − yz (A.26) ∇f (x, y, z) = 2 y − xz  z − xy ∇f est nul en (0, 0, 0) et (1, 1, 1). Ce sont donc des points stationnaires.   0 z y ∇2 f (x, y, z) = 2(I − z 0 x) y x 0

(A.27)

En (0, 0, 0), ∇2 f = 2I. Donc (0, 0, 0) est un minimum local de f . En (1, 1, 1), le d´eveloppement au second ordre de f s’´ecrit f (1 + δx , 1 + δy , 1 + δz ) − f (1, 1, 1) = [δx δy δz ]∇2 f (1, 1, 1)[δx δy δz ]T + o(k δ k2 ) = δx2 + δy2 + δz2 − 2(δx δy + δx δz + δy δz ) + o(k δ k2 ). (A.28) 2 2 notons que pour δx > 0 et suffisamment petit, f (1 + δx , 1 + δx , 1 + δx ) = −3δx + o(δx ) < 0 et f (1 + δx , 1, 1) = δx2 + o(δx2 ) > 0. Donc, le point (1, 1, 1) n’est ni un minimum ni un maximum local. III R´esoudre le probl`eme suivant :   min x2 + y 2 

i) Dessiner la courbe de la contrainte .

(x −

1)3



y2

(A.29) =0

´ DES EXAMENS (PRINTEMPS 2006 A ` 2011) 133 ANNEXE A. MASTER SISEA CORRIGE C’est la courbe en rouge ci dessous. Le point(1,0) n’est pas r´egulier car la courbe de contrainte n’y est pas d´erivable (point de rebroussement).

ii) Montrer qu’aucun point ne satisfait les conditions n´ecessaires du premier ordre. Le lagrangien s’crit L(x, y, λ) = x2 + y 2 + λ((x − 1)3 − y 2 )

(A.30)

et son gradient vaut ∇xy L(x, y, λ) = 2

    3(x − 1)2 x . +λ −2y y

(A.31)

Le gradient s’annule pour (1 − λ)y = 0. La condition λ = 1 est impossible car alors, le premier terme 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 premier terme du gradient est non nul. Donc le gradient du lagrangien ne s’annule pas sur le domaine de contrainte et aucun point ne satisfait les conditions n´ecessaires du premier ordre. iii) Quel est le point qui r´ealise le minimum, conclure. En tout point de la courbe de contrainte x ≥ 1, donc x2 + y 2 ≥ 1. L’´egalit´e n’est satisfaite qu’en (x, y) = (1, 0) qui r´ealise donc le minimum (global stricte) du probl`eme. On v´erifie ici que les conditions n´ecessaires du premier ordre ne sont n´ecessaires que pour les points r´eguliers et que les points irr´eguliers doivent ˆetre consid´er´es s´epar´ement. IV Soit le probl`eme d’optimisation suivant :  max x2 + 4xy + y 2        x+y ≤8 −x + 2y ≤ 4      x≥0   y≥0 i) D´eterminer graphiquement l’ensemble des points admissibles. L’ensemble des points admissibles est le polyh`edre indiqu´e en rouge.

(A.32)

´ DES EXAMENS (PRINTEMPS 2006 A ` 2011) 134 ANNEXE A. MASTER SISEA CORRIGE

ii) Trouver le (les) point qui satisfait les conditions n´ecessaires du premier ordre. En reformulant le probl`eme comme un probl`eme de minimisation de −(x2 + 4xy + y 2 ) le lagrangien s’´ecrit L(x, y, µ) = −(x2 + 4xy + y 2 ) + µ1 (x + y − 8) + µ2 (−x + 2y − 4) − µ3 x − µ4 y

(A.33)

avec µi ≥ 0, i = 1, 2, 3, 4. Les conditions de Khun et Tucker du premier ordre sont donnes par    −2x − 4y + µ1 − µ2 − µ3   ∇xy L(x, y, µ) =   −4x − 2y + µ1 + 2µ2 − µ4    µ1 (x + y − 8) µ  2 (−x + 2y − 4)     µ3 x   µ4 y

=0 =0 =0 =0 = 0.

(A.34)

Consid´erons les diff´erents cas possibles concernant les contraintes actives, directement observables 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 critˆere vaut 0. C’est clairement un minimum global de x2 + 4xy + y 2 puisque sur R+ ×R+ ce critˆere est toujours positif (c’est mˆeme 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 du gradient 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’o` u on d´eduit que (x, y, µ1 ) = (4, 4, 24) et les conditions n´ecessaires sont satisfaites. 5. µ1 > 0, µ2 > 0 et µ3 = µ4 = 0 : −2x − 4y + µ1 − µ2 = 0, −4x − 2y + µ1 + 2µ2 , x + y − 8 = 0 et −x + 2y − 4 = 0. On trouve (x, y, µ1 , µ2 ) = (4, 4, 24, 0) comme pr´ec´edemment. 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 = 0 et 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).

´ DES EXAMENS (PRINTEMPS 2006 A ` 2011) 135 ANNEXE A. MASTER SISEA CORRIGE Finalement, (x, y, z, µ1 , µ2 , µ3 , µ4 ) = 0 et (x, y, z, µ1 , µ2 , µ3 , µ4 ) = (4, 4, 24, 0, 0, 0) satisfont aux conditions n´ecessaires du premier ordre et le premier point correspond `a un minimum du probl`eme. iii) Le point retenu satisfait-il les conditions suffisantes du second ordre ? Conclure. Comme on optimise ici une fonction continue sur un ferm´e born´e le probl`eme admet un point qui r´ealise le minimum et un point qui r´ealise le maximum. Les conditions n´ecessaires d’optimalit´e sont donc ici ´egalement des conditions suffisantes, le minimum tant ralis´e en (0, 0) o` u le crit`ere vaut 0 et le maximum en (4, 4) o` u le crit`ere vaut 96.

´ DES EXAMENS (PRINTEMPS 2006 A ` 2011) 136 ANNEXE A. MASTER SISEA CORRIGE

Janvier 2008

I R´esoudre le probl`eme suivant :   max y 2 − x 

(A.35)

x2 + y 2 ≤ 1.

en justifiant votre r´eponse. Le lagrangien s’´ecrit : L(x, y, µ) = y 2 − x + µ(x2 + y 2 − 1). Les conditions de Khun et Tucker sont donn´ees par        −1 + 2µx  =0 ∇(x,y) L(x, y, µ) = 2(µ + 1)y      µ(x2 + y 2 − 1) = 0, et µ ≤ 0

(A.36)

(A.37)

Comme −1 + 2µx = 0, il est clair que µ < 0 et donc que x2 + y 2 = 1. - Si µ = −1, x = −1/2 et le probl`eme se ram`ene `a la recherche√du maximum de y 2 sous la contrainte y 2 = 1 − x2 = 3/4. Les point (x, y, µ) = (−1/2, ± 3/2, 1) satisfont donc les conditions n´ecessaires du premier ordre. Pour µ = −1, la matrice hessienne de L est donn´ee par     µ 0 −2 0 2 . (A.38) = ∇ L=2 0 µ+1 0 0 La normale au cercle unit´e en (x, y) est donn´ee par le vecteur [x y]T et sa tangente par le √ √ √ T T T vecteur [y − x] en P1 = (−1/2, 3/2) et v = √ et vaut v = [ 3/2 1/2] √ [− 3/2 1/2] en 2 P2 = (−1/2, − 3/2). La restriction de ∇ L `a l’espace tangent en (−1/2, ± 3/2) est n´egative : pour les deux points, vT [∇2 L]v = 1/2 < 0. Donc ces deux points repr´esentent des maxima locaux du crit`ere. - Si y = 0, x = ±1 et µ = ∓1/2. Comme µ ≤ 0, µ = −1/2 et x = −1.   −1 0 2 ∇ L= 0 1

(A.39)

L’espace tangent la contrainte est engendr´e par le vecteur v = [0 1]T . vT [∇2 L]v = 1. ¿Donc P3 = (−1, 0) ne repr´esente pas un maximum. Finalement, P1 et P2 repr´esentent les maxima (globaux) du probl`eme.

´ DES EXAMENS (PRINTEMPS 2006 A ` 2011) 137 ANNEXE A. MASTER SISEA CORRIGE

II Montrer que tous les points du domaine caractris´e par les 3 contraintes  2 x + y2 ≤ 1    y    y

≤ 1/2 ≥ −1/2

(A.40)

sont des points r´eguliers. Les points int´erieurs au domaine (en marron sur la figure) sont r´eguliers. De plus, les gradients pour les trois contraintes sont respectivement engendr´es par v1 = [y − x]T , v2 = [1 0]T et v3 = [1 0]T . Notons que si une seule contrainte est active on obtient un vecteur non nul (en particulier v1 6= 0 car x2 + y 2 = 1 lorsque la premi`ere contrainte est active). Lorsque deux contraintes sont actives ce sont soit la premi`ere et la seconde, soit la premi`ere et la troisi` √eme, car les fronti`eres 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 les points pour lesquels deux contraintes sont satisfaites sont r´eguliers. Enfin, comme on l’a vu les trois contraintes ne peuvent pas ˆetre satisfaites simultan´ement. Donc, tous les points du domaine sont r´eguliers.

III Soit le probl`eme d’optimisation suivant  min |x − 2| + |y − 2|    x2 + y 2 = 1    x − y2 ≥ 0

(A.41)

´ DES EXAMENS (PRINTEMPS 2006 A ` 2011) 138 ANNEXE A. MASTER SISEA CORRIGE 1) D´eterminer graphiquement l’ensemble des points admissibles. L’ensemble des points admissibles est donn´e par la courbe en marron.

2) En d´eduire l’expression explicite de la fonction minimiser. Dans le domaine des contraintes, |x − 2| + |y − 2| = 4 − x − y et le probl`eme se r´e´ecrit  min 4 − x − y    x2 + y 2 = 1    x − y2 ≥ 0

(A.42)

3) Trouver le minimum en justifiant votre r´eponse. Si seule et Tucker conduisent `a (x, y) = √ la√premi`ere contrainte est active, les conditions de Khun 2 et x2 + y 2 = 1 soit x2 + x − 1 = 0 (1/ 2, 1/ 2) et si les deux contraintes sont actives, x = y q √ √ 2 et, comme x = y > 0, (x, y) = ((−1 + 5)/2, ± (−1 + 5)/2). De ces trois points, le point √ √ (x, y) = (1/ 2, 1/ 2) r´ealise le minimum. C’est donc n´ecessairement le minimum du probl`eme. IV Un importateur dispose de Q unit´es d’un produit qu’il propose de vendre dans n magasins. Chaque magasin i propose d’acheter di unit´es `a un prix pi . L’importateur maximise son revenu P p x j j j en jouant sur P la quantit´e 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) D´ecrire la proc´edure qui permet d’obtenir les quantit´es optimales x∗i pour i = 1, 2, 3, . . . Intuitivement, le gain de l’importateur est optimis´e en vendant un maximum de produit au premier acheteur, puis un maximum de la quantit´e restante au second, et ainsi de suite jusqu’` a ´epuisement du produit disponible. Cela se traduit par la proc´edure suivante : x∗1 x∗2 x∗n

= min(d1 , Q) = min(d2 , Q − x∗1 ) .. . P ∗ = min(dn , Q − n−1 k=1 xk ).

(A.43)

´ DES EXAMENS (PRINTEMPS 2006 A ` 2011) 139 ANNEXE A. MASTER SISEA CORRIGE 2) D´emontrer que la proc´edure pr´ec´edente est optimale en indiquant les valeurs `a donner aux 3n + 1 inconnues P x∗i , λi , µi , pour i = 1, . . . , n, et λ0 , o` u λi est associ´e la contrainte xi ≥ 0, µi xi − di ≤ 0 et λ0 xi = Q, dans les conditions n´ecessaires et suffisantes d’optimalit´e. On cherche P maximiser une Pfonction lin´eaire sur un ensemble convexe born´e non vide (puisque l’hyperplan xi = Q < di a une intersection non vide avec le pav´e Πi [0, di ]). Le probl`eme admet donc une solution (th´eor`eme de Weierstrass) et comme on a un probl`eme ´equivalent un probl`eme de programmation convexe, les conditions de Khun et Tucker sont n´ecessaires et suffisantes. Le lagrangien du probl`eme s’´ecrit X X X X L= p i xi + λ 0 ( xi − Q) − λi xi + µi (xi − di )

(A.44)

Notons p = [p1 , . . . , pn ]T , λ = [λ1 , . . . , λn ]T ,µ = [µ1 , . . . , µn ]T et 1It le vecteur de taille t de composantes toutes ´egales 1. Les conditions de Khun et Tucker s’´ecrivent

∇x L λ i xi µi xi λi µi

= p + λ0 1In − λ + µ = 0 =0 = µi di ≥0 ≥0

(A.45)

Les relations µi xi = µi di indiquent que µi = 0 ou xi = di . Notons k la valeur telle que sont satisfaites pour x λ µ λ0

P

i
di ≤ Q et

P

i=1,k

di > Q. Les conditions de Khun et Tucker

P = [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 = −pk

(A.46)

qui correspond ` a la solution fournie par la proc´edure d´ecrite dans la question pr´ec´edente. De plus, on notera que le probl`eme ´etudi´e consiste `a minimiser une fonction lin´eaire sur un ensemble convexe (c’est mˆeme un probl`eme de programmation lin´eaire) qui de plus est ferm´e, ce qui ´etablit que les conditions n´ecessaires du premier ordre sont ´egalement suffisantes.

´ DES EXAMENS (PRINTEMPS 2006 A ` 2011) 140 ANNEXE A. MASTER SISEA CORRIGE

janvier 2007 I On consid`ere le probl`eme   opt 2xy 

(A.47)

x2 + y 2 = 1.

1) Chercher les solutions des conditions du premier ordre Le lagrangien s’´ecrit : L(x, y, λ) = 2xy + λ(x2 + y 2 − 1). Les conditions n´ecessaires du premier ordre s’´ecrivent :     2y + 2λx 0 ∇(x,y) L = = 2x + 2λy 0

(A.48)

(A.49)

(A.49)⇒ (y = −λx x = −λy)⇒ y = λ2 y. Donc λ ∈ {−1, 1}. Il apparaˆıt finalement que les conditions (A.49) se traduisent par λ = ∓1 et x = ±y. En adjoignant la condition x2 + y 2 = 1, on trouve finalement comme solutions des conditions du premier ordre   −1 −1 1 −1 −1 1 1 1 √ √ √ √ √ √ √ √ , , −1), ( , , −1), ( , , 1), ( , , 1) . (A.50) (x, y, λ) ∈ ( 2 2 2 2 2 2 2 2 2) Avec les conditions du second ordre, trouver la nature des points pr´ec´edents.   λ 1 ∇2(x,y) L = 2 1 λ

(A.51)

Si λ = −1, comme l’espace tangent au domaine des contraintes aux points ±( √12 , √12 ) est engendr´e par t = (1, −1), la restriction de la matrice hessienne `a cet espace tangent en ces points est donn´ee par     λ 1 1 2 1 −1 = 4(λ − 1) = −8 < 0. 1 λ −1 Donc en (− √12 , − √12 ) et en ( √12 , √12 ) le probl`eme poss`ede un maximum local (qui est global puisque ces maxima locaux ont la mˆeme valeur). Si λ = 1, comme l’espace tangent au domaine des contraintes aux points ±( √12 , − √12 ) est engendr´e par t = (1, 1), la restriction de la matrice hessienne `a cet espace tangent en ces points est donn´ee par     λ 1 1 2 1 1 = 4(λ + 1) = 8 > 0. 1 λ 1 Donc en (− √12 , √12 ) et en ( √12 , − √12 ) le probl`eme poss`ede un minimum local (qui est global puisque ces minima locaux ont la mˆeme valeur).

´ DES EXAMENS (PRINTEMPS 2006 A ` 2011) 141 ANNEXE A. MASTER SISEA CORRIGE

II Trouver le rectangle de p´erim`etre donn´e de surface maximale. Justifier la r´eponse On note C le p´erim`etre, et x et y la longueur des cˆot´es du rectangle. Le probl`eme s’´ecrit encore  max xy      2(x + y) = C (A.52)   x ≥ 0    y ≥ 0. Notons que les contraintes x ≥ 0 et y ≥ 0 sont n´ecessairement inactives puisque sinon xy = 0. Or, la surface maximale ne peut pas valoir 0 puisque xy > 0 d`es lors que x > 0 et y > 0 et que par exemple x = y = C/4 d´efinit un point admissible pour lequel xy > 0. Il suffit donc de r´esoudre le probl`eme   max xy (A.53)  2(x + y) = C et de se restreindre aux solutions de composantes positives. Pour ce dernier probl`eme, ∇L(x, y, λ) = (y + 2λ, x + 2λ)T = (0, 0)T , soit x = y = −2λ. La contrainte 2(x + y) = C et la positivit´e de x et de y conduisent alors `a x = y = C/4. La seule solution possible est donc un carr´e de cˆot´e C/4. Cette condition n´ecessaire est ´egalement suffisante d’apr`es le th´eor`eme de Weierstrass puisque l’ensemble des contraintes (2(x + y) = C, x ≥ 0, y ≥ 0) est un ferm´e born´e (segment ferm´e born´e) et que la fonction (x, y) → xy est continue. III On consid`ere le probl`eme d’optimisation  min(x − 94 )2 + (y − 2)2        x+y ≤6 y − x2 ≥ 0      x≥0   y ≥ 0.

1) Montrer que les conditions de Khun et Tucker sont v´erifi´ees en (3/2,9/4).

(A.54)

´ DES EXAMENS (PRINTEMPS 2006 A ` 2011) 142 ANNEXE A. MASTER SISEA CORRIGE Les conditions de Khun et Tucker s’´ecrivent  ∇(x,y) L(x, y, (µi )i=1,4 ) = ∇(x,y) (x − 49 )2 + (y − 2)2 + µ1 (x + y − 6) + µ2 (x2 − y) − µ3 x − µ4 y µ1 (x + y − 6) = µ2 (x2 − y) = µ3 x = µ4 y = 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 conditions n´ecessaires suivantes :     2(x − 94 ) + 2xµ2 0 ∇(x,y) L(x, y, (0, µ2 , 0, 0)) = = . 2(y − 2) − µ2 0 Pour (x, y, µ1 , µ2 , µ3 , µ4 ) = ( 32 , 49 , 0, 12 , 0, 0), les conditions n´ecessaires du premier ordre sont effectivement satisfaites. 2) Interpr´eter 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 de niveau `a la fonction (x, y) → (x − 94 )2 + (y − 2)2 qui passe par ce point, c’est `a dire au cercle centr´e sur ( 49 , 2) qui passe par (3/2, 9/4). En d’autre termes, (3/2, 9/4) est la projection de ( 49 , 2) sur l’ensemble convexe ferm´e d´efini par les contraintes. On sait que cette projection existe et est unique. Enfin, le probl`eme ´etudi´e est celui de la minimisation d’une fonction strictement convexe sur un ensemble de contraintes convexes, ce qui ´etablit ici le caract`ere suffisant de la solution trouv´ee `a partir des conditions n´ecessaires. 3) V´erifier 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 = 2I > 0, = 0 2

donc la condition suffisante du second ordre est ´egalement v´erifi´ee en (3/2, 9/4). 4) D´emontrez que ce point est l’unique minimum Cet aspect a ´et´e justifi´e ` a la fin de la r´eponse `a la question 2.

´ DES EXAMENS (PRINTEMPS 2006 A ` 2011) 143 ANNEXE A. MASTER SISEA CORRIGE IV Soit le probl`eme P  max(1/3) i=1,n x3i    P xi = 0    Pi=1,n 2 i=1,n xi = n

(A.55)

On note λ et µ les multiplicateurs de Lagrange respectifs. 1) Cherchez la valeur de λ et exprimez le crit`ere et les inconnues en fonction de µ. On a

 x21   ∇Lx (x, λ, µ) =  ...  + λ1I + 2µx x2n P avec 1I = (1, . . . , 1)T . Comme i=1,n xi = 0, on en d´eduit que 1IT ∇Lx (x, λ, µ) = n + nλ = 0, P P soit λ = −1. De plus, xT ∇Lx (x, λ, µ) = i=1,n x3i + 2µn = 0, donc i=1,n x3i = −2µn. 

2) R´e´ecrire les contraintes en fonction de µ et d´eduire du crit`ere en fonction de µ le choix des xi qui optimise le crit`ere, ` a une permutation pr`es. La condition ∇Lx (x, λ, µ) = 0, se r´e´ecrit x2i + 2µxi − 1 = 0. p P On trouve xiP= −µ + εi µ2 + 1, avec ε = ±1. Comme les xi ainsi d´efinis v´erifient i x2i = n d`es lors que i=1,n xi = 0, le probl`eme se r´e´ecrit finalement  min µ  p   xi = −µ + εi µ2 + 1 εi = ±1   P  i=1,n xi = 0

(A.56)

p P Les contraintes conduisent ` a ε = nµ( 1 + µ2 )−1pqui peut prendre les valeurs enti`eres i i + µ2 )−1 est croissante et que µ vaut −n, −nP + 2, −np+ 4, . . .P , n. Comme la fonction µ → nµ( 1 P 2 2 µ = ±( i εi )/ n − ( i εi ) et n’est donc d´ efini que pour i εi ∈ {−n+2, −n+4, . . . , n−2}, le p √ minimum possible pour µ est atteint pour nµ( 1 + µ2 )−1 = −n+2, soit µ = −(n−2)/(2 n − 1). p √ 2 + 1 = −µ − (nµ)/(2 − n) = −1/ n − 1 Alors, n − 1 des coefficients xi sont ´egaux a ` −µ − µ p √ et le coefficient restant est ´egal ` a −µ + µ2 + 1 = n − 1. 3) Confirmer la solution en v´erifiant les conditions suffisantes du second ordre. La p matrice hessienne du lagrangien est une matrice diagonale D de i-`eme terme diagnal 2xi +2µ = 2εi µ2 + 1. Pour fixer les id´ees on supposera sans perte de g´en´eralit´e que ε1 = . . . = εn−1 = −1 et εn = 1. L’espace tangent aux contraintes est d´efini par la normale aux gradients des fonctions de contrainte. Ces derniers valent respectivement 1I et x et d´efinissent l’espace orthogonal ` a l’espace tangent aux surfaces de contrainte. Comme le n-`eme vecteur de la base canonique en

´ DES EXAMENS (PRINTEMPS 2006 A ` 2011) 144 ANNEXE A. MASTER SISEA CORRIGE p 1 est le vecteur propre associ´e ` a la valeur propre positive −2 µ2 + 1 et que en ∝ √n−1 1I + x, il est clair que l’espace tangent aux contraintes r´eside dans l’espace engendr´e par les valeurs propres n´egatives de la matrice et donc que la restriction de la matrice hessienne du Lagrangien aux vecteurs de l’espace tangent aux contraintes est une matrice strictement n´egative. Il en r´esulte que l’on a bien trouv´e un maximum du probl`eme pos´e.

´ DES EXAMENS (PRINTEMPS 2006 A ` 2011) 145 ANNEXE A. MASTER SISEA CORRIGE

janvier 2006 I Diviser le nombre 8 en deux r´eels positifs x et y de fa¸con `a maximiser xy(x − y). Le probl`eme s’´ecrit encore

 max xy(x − y)      x+y =8   x ≥0    y≥0

(A.57)

Notons que, par exemple, (x, y) = (5, 3) est un point admissible pour lequel xy(x − y) > 0. Donc `a l’optimum les contraintes d’in´egalit´e ne sont pas actives (on aurait sinon xy(x − y) = 0). Il suffit donc d’´etudier les conditions n´ecessaires du premier ordre sans les contraintes de positivit´e. Dans ces conditions, le lagrangien s’´ecrit, L(x, y, λ) = xy(x − y) + λ(x + y − 8)

(A.58)

et les conditions n´ecessaires du premier ordre s’´ecrivent   2xy − y 2 + λ = 0. (A.59) ∇xy L(x, y, λ) = x2 − 2xy + λ √ √ √ 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 critˆere xy(x − y) est√continu ce qui √ assure l’existence d’une solution (th´eor`eme de Weierstrass). (x, y) = (4(1 + 1/ 3), 4(1 − 1/ 3)) est donc la solution du probl`eme.

II Soit le domaine de points admissibles de R2 d´efini par les trois contraintes   2 2 2 2 2 2 2 D = (x, y) ∈ R |x + y ≤ 4, x + 3(y − 1) ≤ 3, x ≥ ( y − 1) − 1 3 Etudier la r´egularit´e des points suivants : X1 = (0, 0), X2 = (0, 1), X3 = (0, 2)

(A.60)

´ DES EXAMENS (PRINTEMPS 2006 A ` 2011) 146 ANNEXE A. MASTER SISEA CORRIGE

En X1 les contraintes 2 et 3 sont actives et les gradients `a ces contraintes valent         2x 0 −1 −1 = et = . 6(y − 1) −6 (4/3)(2y − 1) −4/3

(A.61)

Ces deux vecteurs forment une famille libre donc le point est r´egulier. X2 est un point int´erieur du domaine des contraintes o` u toutes les contraintes sont inactives. Donc X2 est un point r´egulier. En X3 les contraintes 1 et 2 sont actives et les gradients `a ces contraintes valent         0 −2x 0 2x . = et = 6 6(y − 1) 4 2y

(A.62)

Ces deux vecteurs forment une famille li´ee, donc le point n’est pas r´egulier. III Soit le probl`eme d’optimisation suivant :

 max y      (3 − x)3 − (y − 2) ≥ 0   3x + y ≥ 9    2x − 3y ≥ 0

(A.63)

1) R´esolvez le probl`eme 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 bon choix 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) avec µi ≥ 0 (i = 1, 2, 3).

(A.64)

´ DES EXAMENS (PRINTEMPS 2006 A ` 2011) 147 ANNEXE A. MASTER SISEA CORRIGE

L’´etude graphique conduit ` a choisir les contraintes 1 et 3 actives et la deuxi`eme inactive. Les conditions de Khun et Tucker s’´ecrivent alors    −3µ1 (3 − x)2 + 3µ3   ∇xy L(x, y, µ) = =0   1 − µ1 − 3µ3  (3 − x)3 − (y − 2) = 0 (A.65)   µ = 0  2   2x − 3y = 0 La solution des conditions n´ecessaires du premier ordre est donn´ee par (x, y, µ) = (3, 2, 1, 0, 0). Le domaine des contraintes ´etant compact et le critˆere continu, on sait que le probl`eme admet une solution. 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 premi`ere condition entraˆıne y ≤ 2 pour u ≤ 0 et la seconde y ≤ 2 pour u ≥ 0. On a donc n´ecessairement y ≤ 2 dans tout le domaine des contraintes, ce qui ´etablit que (x, y) = (3, 2) fournit bien la valeur maximale de y dans le domaine des contraintes. 3) R´ep´etez l’analyse en enlevant la derni`ere contrainte. Cherchez explicitement tous les points satisfaisant les conditions n´ecessaires du premier ordre. Commentez.

Ici le domaine n’est pas born´e. Ainsi, par exemple, les points de coordonn´ees (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 critˆere n’est pas sup´erieurement born´e et le probl`eme 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)

´ DES EXAMENS (PRINTEMPS 2006 A ` 2011) 148 ANNEXE A. MASTER SISEA CORRIGE avec µi ≥ 0 (i = 1, 2) et les conditions de Khun et Tucker s’´ecrivent    −3µ1 (3 − x)2 + 3µ2   =0  ∇xy L(x, y, µ) = 1 − µ1 + µ2 µ ((3 − x)3 − (y − 2)) = 0    1 µ2 (3x + y − 9) = 0

(A.67)

Les deux contraintes sont simultan´ement actives en (x, y, µ1 , µ2 ) = (5, −6, 1/5, 6/5). Ce point repr´esente le minimum global du critˆere. En (x, y, µ1 , µ2 ) = (3, 2, 1, 0) seule la premi`ere contrainte est active On ne peut pas avoir une seule contrainte active en un autre point car alors les ´equations ∇xy L(x, y, µ) = 0 sont incompatibles entre elles. Le point (x, y) = (2, 3) est singulier mais ne correspond pas une solution du probl`eme comme on l’a vu. Les points int´erieurs du domaine ne satisfont pas aux conditions de Khun et Tucker. IV Soit

1 h≥0 (A.68) C(x, h) = (ax − b)2 + h|x|, 2 o a et b sont des r´eels positifs. On demande de trouver x∗ (h) le minimum de C(x, h) en fonction de h Pour x 6= 0, C 0 (x, h) = Sur R− on a toujours

d C(x, h) = a(ax − b) + hsign(x). dx

C 0 (x, h) = a(ax − b) − h < 0.

Sur R+ , C 0 (x, h) = 0 pour x∗ (h) =

ab − h , si ab > h, a2

(A.69) (A.70)

(A.71)

sinon, on a toujours C 0 (x, h) > 0. Comme C(x, h) est continue, il apparaˆıt donc que le minimum est obtenu en 0 si ab < h et en x = ab−h si ab > h. a2

Bibliographie [1] G. Allaire, Analyse num´erique et optimisation, Editions de l’Ecole Polytechnique, 2005. [2] J.M. Arnaudies, H. Fraysse, Cours de Math´ematiques ; T2 : analyse, T3 : Compl´ements d’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, Convexit´e et optimisation, polycopi´e de cours ENPC-INRIA, 2000-2006. wwwrocq.inria.fr/metalau/cohen/documents/Ponts-cours-A4-NB.pdf [6] P.G. Ciarlet, Introduction ` a l’Analyse Num´erique Matricielle et ` a l’Optimisation, Masson, 1982. [7] J.C. Culioli, Introduction a ` l’optimisation, 2`eme Ed., Ellipses, 2012. [8] D.G. Luenberger, Linear and nonlinear programming, 2nd edition, Kluwer, 2003. [9] M. Minoux, Programmation Math´ematique, Th´eorie et Algorithmes, Tome 1, Dunod, 1983. [10] R. Rockafellar Convex Analysis, Princeton Univ. Press, 1972.

149