Calcul matriciel Définitions Une matrice n x m est un tableau de nombres à n lignes et m colonnes. Exemple de matrice avec n = 2 et m = 3 : M= 1 2 0 4 3 −1 n et m sont les dimensions de la matrice M. Un matrice est symbolisée par une lettre en caractère gras. On note Mij l’élément situé à l’intersection de la ligne i et de la colonne j : ... M1m ... M2m ... ... ... Mnm M11 M12 M21 M22 M= ... ... Mn1 Mn2 Si m = 1, la matrice est appelée vecteur (ou, plus précisément vecteur-colonne) : x1 x2 x= ... xn Si n = m la matrice est dite matrice carrée. Quelques matrices carrées particulières Matrice unité (ou matrice identité) : 1 0 I= 0 0 0 1 0 0 0 0 1 0 0 0 0 1 Matrice diagonale : D11 0 0 0 0 D22 0 0 D= 0 0 D33 0 0 0 0 D44 1 Matrice triangulaire : T11 T12 T13 0 T22 T23 T= 0 0 T33 0 0 0 T14 T24 T34 T44 Une matrice carrée S est dite symétrique si Sij = Sji : S11 S12 S= S13 S14 S12 S22 S23 S24 S13 S23 S33 S34 S14 S24 S34 S44 Opérations sur les matrices Egalité de deux matrices Deux matrices A et B sont égales si elles ont les mêmes dimensions et si Aij = Bij ∀ i, j. Addition et soustraction L’addition et la soustraction des matrices se font terme par terme. Les matrices doivent avoir les mêmes dimensions. Exemples : 1 2 0 4 3 −1 1 2 0 4 3 −1 + − 5 2 3 1 3 4 5 2 3 1 3 4 = = 6 4 3 5 6 3 −4 0 −3 3 0 −5 Multiplication par un nombre Lorsqu’une matrice est multipliée par un nombre, chaque terme de la matrice est mutliplié par ce nombre : Exemple : 2 1 2 0 4 3 −1 = 2 2 4 0 8 6 −2 Transposition La transposée AT d’une matrice A (aussi notée A0 ) est la matrice obtenue en échangeant lignes et colonnes de A. A= 1 2 0 4 3 −1 1 4 ⇔ AT = 2 3 0 −1 La transposée d’un vecteur-colonne est un vecteur-ligne. x1 x2 T x= ... ⇔ x = xn x1 x2 ... xn Multiplication matricielle Produit scalaire Le produit scalaire d’un vecteur-ligne xT par un vecteur-colonne y est défini par : y1 n X y2 T x y = x1 x2 ... xn = x1 y1 + x2 y2 + ... + xn yn = xi yi ... i=1 yn Ce produit, appelé produit scalaire, est noté x · y. Les vecteurs doivent avoir la même dimension. Le résultat de cette opération est un scalaire. On peut noter que le produit scalaire est commutatif : x · y = y · x. Lorsque le produit scalaire de deux vecteurs est nul, les vecteurs sont dits orthogonaux. A deux dimensions, cela correspond à deux vecteurs perpendiculaires. Par exemple, les vecteurs x = ( 1 3 ) et y = ( 6 −2 ) ont un produit scalaire nul et on vérifiera facilement qu’ils sont perpendiculaires. Produit matriciel Le produit matriciel se déduit du produit scalaire : le produit de la matrice A (n x m) par la matrice B (p x m) est la matrice C (n x p) telle que l’élément Cij est égal au produit scalaire de la ligne i de la matrice A par la colonne j de la matrice B : Cij = m X Aik Bkj avec i = 1, ...n et j = 1, ...p k=1 Ce produit matriciel est noté AB = C Exemple 1 2 0 4 3 −1 5 1 9 7 . 2 3 = 23 9 3 4 3 Propriétés Le produit matriciel est • associatif : ABC = (AB)C = A(BC) • distributif par rapport à l’addition : A(B + C) = AB + AC • non-commutatif : (en général) AB 6= BA La matrice unité I est l’élément neutre pour la multiplication : AI = IA = A Transposée d’une somme : (A + B)T = AT + BT Transposée d’un produit : (AB)T = BT AT Quelques produits particuliers Carré scalaire : xT x = n X x2i i=1 Sa racine carrée (xT x)1/2 est appelée norme du vecteur x et est notée ||x||. Lorsque la norme d’un vecteur est égale à 1, le vecteur est dit normé. Tout vecteur peut être normé en le divisant par la racine carrée de sa norme. Deux vecteurs qui sont simultanément normés et orthogonaux sont dit orthonormés : a0 a = b0 b = 1 et a0 b = b0 a = 0 ⇔ a et b sont orthonormés Une matrice dont toutes les colonnes prises deux à deux sont des vecteurs orthogonaux est dite matrice matrice orthogonale. Si, de plus ces vecteurs sont normés, la matrice est dite matrice orthonormée. Forme quadratique : T x Ax = n X n X Aij xi xj n X n X Aij xi yj i=1 j=1 Forme bilinéaire : xT Ay = i=1 j=1 Inversion Une matrice carrée A est dite inversible s’il existe une matrice carrée A−1 (appelée matrice inverse) telle que AA−1 = A−1 A = I Propriétés (A−1 )−1 = A (A−1 )T = (AT )−1 (AB)−1 = B−1 A−1 Si la matrice A est orthogonale, alors A−1 = AT . 4 Déterminant d’une matrice carrée Pour une matrice 2 x 2, on peut montrer que la matrice inverse est donnée par 1 a b d −b −1 ⇒A = A= c d ab − bc −c a Le nombre ad − bc est appelé déterminant de la matice A. On le note a b |A| = det(A) = c d La matrice inverse A−1 n’existe donc que si det(A) est différent de 0. Le déterminant peut se calculer de manière récursive. Par exemple pour n = 3, on a, en développant la première ligne : a b c e f d f d e A = d e f = a − b g i + c g h h i g h i = a(ei − f h) − b(di − f g) + c(dh − eg) = aei − af h − bdi + bf g + cdh − ceg Dans ce développement, chaque déterminant d’ordre 2 est appelé mineur du terme qui le précède. Le mineur de l’élément xij est la sous-matrice obtenue en supprimant la ligne i et la colonne j. Par exemple, le mineur de a est : e f = ei − f h mineur(a) = h i Le cofacteur de l’élément xij est donné par l’expression : cofacteur(xij ) = (−1)i+j mineur(xij ) Le cofacteur est donc le mineur précédé d’un signe donné par le tableau suivant : + − + ... − + − ... + ... − ... + ... ... On peut développer le détermiant par rapport à n’importe quelle ligne ou colonne. En pratique, quand faciliter les calculs, on choisira la ligne (ou colonne) qui contient le plus de 0. Pour chaque élément aij de la ligne ou colonne choisie, Cette méthode est valable pour un déterminant de taille quelconque. En pratique pour n > 3, il vaut mieux recourir à un algorithme spécifique. Propriétés det(AT ) = det(A) det(AB) = det(A) det(B) 5 Le déterminant d’une matrice triangulaire ou diagonale est égal au produit des éléments diagonaux. En particulier, det(I) = 1. 1 Si A est inversible, alors det(A−1 ) = det(A) Si A est orthogonale, alors det(A) = ±1 Quelques opérations élémentaires sur les matrices Multiplication d’une ligne d’une matrice pas un scalaire α Pour multiplier tous les éléments d’une ligne i de A par une valeur α sans modifier les autres lignes, on peut multiplier A par une matrice Iα identique à la matrice identité excepté l’élément ii qui est remplacé par α. Exemple : 1 0 0 a b c a b c 0 α 0 d e f = αd αe αf 0 0 1 g h i g h i Lorsque α 6= 0, il existe toujours une matrice I−1 α qui effectue l’opération inverse. La matrice I−1 est simplement la matrice I dans laquelle α est remplacé par 1/α. α α Echange de deux lignes d’une matrice Une autre opération élémentaire est celle qui consiste à permuter deux lignes d’une matrice. Cela est effectué par la multiplication par une matrice IP qui est la matrice identité I dans laquelle les lignes correspondantes ont été permutées. De façon générale, on peut permuter les lignes k et l d’une matrice A (n × p) en la multipliant par une matrice Ip dont les éléments sont Ipij = 0 pour tout i 6= j sauf Ipkl = Iplk = 1 et Ipii = 1 pour tout i sauf Ipkk = Ipll = 0. Exemple : 0 1 0 a b c d e f 1 0 0 d e f = a b c 0 0 1 g h i g h i On s’aperçoit rapidement que multiplier deux fois A par Ip nous ramène à la situation de départ. Addition de deux lignes d’une matrice Une troisième opération élémentaire sur les lignes d’une matrices A consiste à additionner à une ligne de A une autre ligne, éventuellement multipliée par une scalaire α. Par exemple ajouter α fois la ligne k à la ligne l peut se faire en multipliant A par une matrice Ia , qui est un matrice identité I dans laquelle l’élément lk est remplacé par α. 6 Exemple : a + αg b + αh c + αi 1 0 α a b c 0 1 0 d e f = d e f g h i 0 0 1 g h i L’opération inverse est assurée par la soustraction de ces éléments, c’est-à-dire par la multiplication de la matrice A par la matrice I−a , cette dernière étant Ia dans laquelle on a remplacé l’élément lk par −α. Application aux systèmes d’équations linéaires Formulation matricielle Un système de n équations linéaires à n inconnues est de la forme a11 x1 + a12 x2 + ... + a1n xn = b1 a21 x1 + a22 x2 + ... + a2n xn = b2 ... an1 x1 + an2 x2 + ... + ann xn = bn où les xi sont les inconnues du système, les aij sont les coefficients et les bi sont les termes constants Un tel système peut s’écrire sous la forme matricielle : Ax = b avec a11 a12 a21 a22 A= ... ... an1 an1 ... a1n ... a2n x= ... ... ... ann x1 x2 b= ... xn b1 b2 ... bn Résolution d’équations linéaires Si la matrice est inversible (c’est-à-dire si son déterminant est non-nul), on a, en multipliant à gauche par A−1 A−1 Ax = A−1 b soit x = A−1 b Un simple produit matriciel et le système est résolu ! 7 Exemple : Considérons le système de deux équations à deux inconnues suivant : 2x1 + 3x2 = 9 x1 − x2 = 2 On a A= 2 3 1 −1 b= 9 2 det(A) = 2.(−1) − 3.1 = −5 A Et donc 1 x=− 5 −1 −1 −3 −1 2 1 =− 5 −1 −3 −1 2 1 =− 5 9 2 −15 −5 = 3 1 On vérifira que x1 = 3 et x2 = 1 est bien solution du système d’équations. Lorsque la matrice n’est pas inversible, c’est-à-dire quand son déterminant est nul, deux cas sont à envisager : • soit le système est indéterminé : c’est le cas lorsqu’une des équations est une combinaison linéaire des autres équations du système. Exemple : x1 + x2 = 3 2x1 + 2x2 = 6 • soit le système est impossible : c’est le cas lorsqu’aucune équation est une combinaison linéaire des autres équations du système. Exemple : x1 + x2 = 3 2x1 + 2x2 = 8 Enfin, on remarquera que le système d’équations homogènes Ax = 0 ne possède des solutions non triviales (c’est-à-dire autres que x = 0) que si det(A) = 0. 8 Valeurs propres et vecteurs propres Définitions On dit qu’une matrice carrée A possède une valeur propre λ et un vecteur propre v si Av = λv En général une matrice de dimension n x n possède n valeurs propres réelles. A chaque valeur propre est associé un vecteur propre (ou, plus précisément, une famille de vecteurs propres). Calcul des valeurs propres et vecteurs propres L’équation ci-dessus peut se réécrire Av − λv = (A − λI)v = 0 C’est-à-dire a11 − λ a12 a21 a22 − λ ... ... an1 an2 ... a1n x1 ... a2n x2 ... ... ... ... ann − λ xn Ce système aura des solutions autres que la solution a11 − λ a12 a21 a 22 − λ det(A − λI) = ... ... an1 an2 =0 triviale si et seulement si ... a1n ... a2n =0 ... ... ... ann − λ L’expression de ce déterminant est un polynôme de degré n en λ qui est appelé polynôme caractéristique de la matrice A et l’équation correspondante est dite équation caractéristique. En particulier, pour la matrice 2 x 2 a11 a12 a21 a22 l’équation caractéristique s’écrit a11 − λ a12 = λ2 − (a11 + a22 )λ + (a11 a22 − a12 a21 ) = 0 a21 a22 − λ Les valeurs propres sont donc λ1,2 = (a11 + a22 ) ± p (a11 + a22 )2 − 4(a11 a22 − a12 a21 ) 2 9 Exemple : Soit 2 2 1 A= 1 3 1 1 2 2 L’équation caractéristique correspondante est 2−λ 2 1 3−λ 1 det(A − λI) = 1 1 2 2−λ = λ3 − 7λ2 + 11λ − 5 = 0 Les solutions de cette équation sont λ1 = 5, λ2 = 1, et λ3 = 1. Quand λ = λ1 = 5, on a −3 2 1 x1 A − λI = 1 −2 1 x2 = 0 1 2 −3 x3 Une solution possible de cette équation est donnée par x1 = x2 = x3 = 1. Tout multiple de ces valeurs est aussi solution. Ainsi les vecteurs propres associés à la valeur propre T λ1 = 5 sont tous les vecteurs de type k k k . De même, les vecteurs propres associés aux valeurs propres λ2 = λ3 = 1 sont par exemple T T 2 −1 0 et 1 0 −1 et l’ensemble des vecteurs propres associés à λ2 = λ3 = 1 T est donné par c1 v1 + c2 v2 = 2c1 + c2 −c1 −c2 . Propriétés • Si une valeur propre (au moins) est nulle, alors le déterminant est nul. • Deux vecteurs propres associés à deux valeurs propres distinctes sont orthogonaux. Diagonalisation d’une matrice Une matrice X est diagonalisable s’il existe une matrice A inversible telle que D = AXA−1 est diagonale. Toute matrice symétrique S est toujours diagonalisable et la matrice diagonale D ainsi obtenue est composée des valeurs propres de S, et la matrice A est composée des vecteurs propres de S. Exemple : Diagonalisons la matrice S suivante : 7 −2 1 S = −2 10 −2 1 −2 7 10 L’équation caractéristique est 7−λ −2 1 −2 10 − λ −2 1 −2 7−λ = λ3 − 24λ2 + 180λ − 432 = 0 Les solutions de cette équation sont 6, 6, et 12 : Pour λ = 6, nous avons x1 −1 2 −1 2 −4 2 x2 = 0 x3 −1 2 −1 c’est-à-dire x1 − 2x2 + x3 = 0 Comme vecteurs propres, nous choisirons deux vecteurs orthogonaux, par exemple : 1 1 0 et 1 −1 1 De même, pour λ = 12, on choisira par exemple le vecteur 1 −2 1 En normant ces trois vecteurs, nous obtenons la matrice √ √ √ 1/ 2 1/√3 1/ √6 A= 0√ 1/√3 −2/√ 6 −1/ 2 1/ 3 1/ 6 Et on vérifiera que A diagonalise S, c’est-à-dire D = A−1 SA est diagonale, et que ses éléments sont bien les valeurs propres de S. Notons que la matrice A ne doit pas forcément être normée. Une matrice carrée X (n x n) est diagonalisable si elle possède n valeurs propres distinctes (condition suffisante mais pas nécéssaire). Exemple : Considérons la matrice 1 2 0 X= 0 3 0 2 −4 2 Les valeurs propres de cette matrice sont 3, 2 et 1. Ces trois valeurs étant distinctes, la matrice X est diagonalisable et la matrice A qui diagonalise X est composée des vecteurs propres de X : −1 0 −1 A = −1 0 0 2 1 2 On vérifiera que D = A−1 XA est une matrice diagonale dont les éléments sont les valeurs propres de X. 11 Références • Ayres F (1978) Matrices : Cours et problèmes, Serie Schaum. • Depiereux E (2000) Note de cours, DEA en Bioinformatique. 12