Factorisation des matrices creuses

Save this PDF as:
 WORD  PNG  TXT  JPG

Dimension: px
Commencer à balayer dès la page:

Download "Factorisation des matrices creuses"

Transcription

1 Chapitre 5 Factorisation des matrices creuses 5.1 Matrices creuses La plupart des codes de simulation numérique en mécanique des fluides ou des structures et en électromagnétisme utilisent des discrétisations des équations aux dérivées partielles de la physique à l aide de méthodes de différences finies, de volumes finis ou d éléments finis. Ces méthodes repose sur l approximation de la solution à l aide de fonctions polynomiales par morceaux définies sur un maillage du domaine de calcul. Elles transforment le problème aux dérivées partielles continu en un problème algébrique de dimension fini. Ses inconnues sont les coefficients de la solution approchée dans une base de fonctions dont les supports sont limités à une seule maille, ou au petit nombre de mailles possédant un point, une arête ou une facette donnés en commun. Dans le cas où chaque fonction de base est associée à un point du maillage, prenant la valeur 1 en celui-ci et en tous les autres, le support d une fonction de base est limité aux mailles contenant ce point, comme sur la figure 5.1. Les coefficients des matrices des problèmes discrétisés représentent les interactions entre les fonctions de base et résultent d une intégration spatiale. Du fait du caractère borné des supports des fonctions de bases, la plupart des coefficients son nuls, puisque l intégration spatiale ne se fait que dans les mailles appartenant à l intersection des supports. De ce fait, ces matrices sont qualifiées de creuses. Ces matrices creuses ont des propriétés particulières. En particulier elles ont une structure symétrique : comme c est l existence d une intersection non vide entre les supports des fonctions de base qui détermine l apparition d un coefficient non nul, lorsqu un coefficient (i,j) est non nul, il en est de même pour le coefficient (j,i). De même, les coefficients diagonaux sont en général non nuls. La structure d une matrice creuse peut donc se décrire en terme de graphe. Les sommets du graphe sont les numéros de ligne, c est à dire les numéros d équations du système, les arêtes du graphe représentant les coefficients non 1

2 2 CHAPITRE 5. FACTORISATION DES MATRICES CREUSES Fig. 5.1 Supports des fonctions de base associées à deux sommets. nuls de la matrice. Puisque les arêtes (i,j) et (j,i) existent toujours simultanément, on peut les identifier. Le graphe, dit de connectivité, de la matrice est donc non orienté. Le graphe de connectivité de la matrice se déduit du maillage. Dans le cas de fonctions de base associées à des sommets de mailles triangulaires en dimension 2 ou tétrahèdriques en dimension 3, le graphe de la matrice s identifie exactement au maillage, comme dans la figure 5.2. Dans un cas plus général, Fig. 5.2 Maillage et matrice creuse la solution peut être un champ vectoriel, de sorte que l on a plusieurs fonctions de bases associées au même point, une par composant du vecteur. La matrice a alors la même structure par blocs de dimension égale au nombre de composants. De même, pour des mailles qui ne sont pas des simplex, les fonctions de base associées à deux sommets de la même maille sont connectés dans la matrice, alors qu il n existe pas nécessairement d arête joignant les points dans le maillage, comme c est le cas pour deux sommets situés sur la diagonale d un quadrilatère. Néanmoins, dans tous les cas, le graphe de la matrice se déduit immédiatement

3 5.2. REMPLISSAGE 3 du maillage. Le graphe de la matrice creuse définit, pour chaque ligne, la liste des numéros de colonnes des coefficients non nuls. Seuls ces coefficients sont stockés. Si on range respectivement dans les tableaux liste colonne i et coef i, les n i numéros de colonnes des coefficients non nuls et les coefficients eux-mêmes, pour la ligne numéro i, l algorithme de produit d une matrice creuse par un vecteur peut s écrire : for i = 1 to n do y(i) = for k = 1 to n i do y(i) = y(i) + coef i(k) x(liste colonne i(k)) end for end for 5.2 Remplissage La première étape de la factorisation de Gauss consiste à calculer la première ligne de U et la première colonne de L puis le complément de Schur des lignes 2 à n. l(1,1) = 1 u(1,1) = a(1,1) for i = 2 to n do l(i,1) = a(i,1) / u(1,1) end for for j = 2 to n do u(1,j) = a(1,j) end for for j = 2 to n do for i = 2 to n do s(i,j) = a(i,j) - l(i,1) u(1,j) end for end for La première ligne de U et la première colonne de L ont donc des coefficients non nuls exactement aux emplacements des coefficients non nuls de la première colonne et la première ligne de la matrice initiale. Du fait de la symétrie de la structure de la matrice initiale, l ensemble des indices de colonne j > 1 pour lesquels u(1,j) est non nul est identique à l ensemble des indices de ligne i > 1 pour lesquels l(i,1) est non nul. Notons cet ensemble C 1. Le calcul du complément de Schur n a d impact que sur les coefficients (i,j) pour lesquels l(i, 1) et u(1, j) sont simultanément non nuls, c est-à-dire sur la sous-matrice formée des termes (i,j) tels que i et j appartiennent tous deux à C 1. Pour un des coefficients de cette sous-matrice, deux situations peuvent se produire : Le coefficient existait déjà dans la matrice initiale ; il est modifié par le

4 4 CHAPITRE 5. FACTORISATION DES MATRICES CREUSES calcul du complément de Schur. Le coefficient n existait pas dans la matrice initiale ; il va être créé. L apparition, au cours de la factorisation, de termes non nuls à des emplacements où la matrice creuse initiale n avait pas de coefficients, entraîne que la structure de la matrice factorisée sera moins creuse que celle de la matrice initiale. Ce phénomène est appelé remplissage. Puisque les coefficients modifiés ou créés forment une sous-matrice, le remplissage conserve une structure symétrique au complément de Schur. Fig. 5.3 Remplissage. Dans la figure 5.3, les coefficients non nuls de la première ligne de U et la première colonne de L apparaissent comme des cases rayées de vert. La matrice des coefficients modifiés lors du calcul du complément de Schur est représentée par des cases rayées de rouge. Parmi ces cases, celles qui correspondent à des coefficients qui existaient déjà ont des rayures bleues, perpendiculaires aux rayures

5 5.3. FACTORISATION SYMBOLIQUE ET RENUMÉROTATION 5 rouges. A chaque itération de l algorithme de Gauss, le même phénomène va se produire lors de la factorisation de la première ligne et de la première colonne du complément de Schur. Le remplissage a donc un effet cumulatif, les lignes et colonnes des compléments de Schur successifs étant de moins en moins creuses, du fait du remplissage provoqué par les itérations précédentes. En terme de graphe, le graphe du complément de Schur à l issue de la première étape de factorisation se déduit du graphe de la matrice initiale, dans lequel on a supprimé le sommet numéro 1, mais dans lequel tous les sommets de l ensemble C 1 sont reliés deux à deux par des arêtes (figure 5.4). Le sous-graphe formé de cet ensemble de sommets totalement connectés deux à deux est qualifié de clique. Chaque arête de la clique qui n existait pas initialement correspond à un couple Fig. 5.4 Graphe initial, apparition d une clique. de coefficients (i,j) et (j,i) qui apparaissent dans le complément de Schur. Le graphe du complément de Schur à l étape k + 1 de la factorisation de Gauss se déduit de la même manière de celui du complément de Schur résultant des k premières itérations de l algorithme. 5.3 Factorisation symbolique et renumérotation Au cours de la factorisation, le graphe de la matrice est modifié, du fait du phénomène de remplissage. Afin de pouvoir factoriser la matrice sans être obligé de modifier les structures de données à chaque étape, il faut déterminer auparavant la structure de la matrice factorisée. Or il n est pas possible de calculer simplement le remplissage a priori. En effet, il ne dépend pas uniquement de la dimension et du nombre de coefficients non nuls de la matrice, mais aussi de leur position. Une renumérotation des inconnues peut donc le modifier comme

6 6 CHAPITRE 5. FACTORISATION DES MATRICES CREUSES le montre clairement le petit exemple suivant. La factorisation de la matrice de gauche crée une structure pleine. En renumérotant les équations en ordre inverse du plus grand au plus petit, on obtient la structure de droite pour laquelle il n y a aucun remplissage au cours de la factorisation. Pour calculer le remplissage effectif, il faut procéder à une phase dite de factorisation symbolique de la matrice, qui consiste à déterminer le nombre et la position des nouveaux coefficients créés au cours de la factorisation. Cette procédure permet de construire la structure de données capable d accueillir tous les coefficients des compléments de Schur au cours de la factorisation et, finalement, les coefficients de L et de U. C est dans cette structure que l on procédera ensuite à la factorisation numérique, c est-à-dire au calcul effectif des coefficients de L et U. A priori, la factorisation symbolique de la matrice requiert de faire toutes les itérations de l algorithme de Gauss, d examiner pour chacune d elle la liste des coefficients sur lesquels le calcul du complément de Schur a un impact et de rajouter dans la structure de la matrice ceux qui sont créés. Ce qui revient à faire toutes les itérations en remplaçant le calcul des coefficients par un test sur leur pré-existence, d où le nom de factorisation symbolique. La numérotation des équations joue un rôle essentiel dans le remplissage et donc dans le coût de la factorisation, aussi bien en terme de volume de données que de nombre d opérations arithmétiques. Avant de procéder à la factorisation symbolique de la matrice, on va tâcher de trouver une renumérotation des équations permettant de réduire le remplissage. Il n existe pas d algorithmes de renumérotation optimale des matricse creuses dont le coût ne varie pas exponentiellement avec la dimension. Un tel problème est dit NP-Complet. On se contente donc d algorithmes dits heuristiques, qui donnent, pour un coût réduit, une solution raisonnable à défaut d être optimale. Parmi ces algorithmes, l un des plus anciens est celui de la renumérotation dite frontale. Elle part du principe que, dans une colonne de la partie triangulaire supérieure de la matrice, il ne peut apparaître de terme non nul au cours de la factorisation, au-dessus du premier coefficient non nul de la matrice initiale. En effet, on a vu que si le coefficient situé dans une colonne j sur la première ligne de la matrice est nul, alors la première itération de l algorithme de Gauss ne modifie pas la colonne en question. Par récurrence, on voit que si les i (j) premiers coefficients de la colonne sont initialement nuls, alors ils le restent au cours des i (j) premières itérations de la factorisation. Par symétrie de la structure de la matrice factorisée, il en est de même pour la i (j) premiers coefficients de la ligne numéro j. La zone de la partie triangulaire supérieure de la matrice située, pour chaque colonne, entre le premier coefficient non nul de la

7 5.3. FACTORISATION SYMBOLIQUE ET RENUMÉROTATION 7 colonne et la diagonale, s appelle le profil de celle-ci. Évidemment, le profil de la partie triangulaire inférieure, qui est la zone comprise, sur chaque ligne, entre le premier coefficient non nul de la ligne et la diagonale, est le symétrique du profil de la partie triangulaire supérieure (figure 5.5). Plus la surface du profil Fig. 5.5 Profil supérieur et inférieur. est petite, plus le remplissage maximal possible est faible. Pour réduire le profil, il faut que les équations connectées entre elle dans le graphe de la matrice aient des numéros proches. C est l objectif de la numérotation frontale. Celle-ci consiste à partir d un sommet quelconque, à numéroter d abord ceux ceux à qui il est connecté, ses voisins, puis les voisins non encore numérotés du sommet numéro 2, et ainsi de suite. 5.6). Cette numérotation fait apparaître des fronts, Fig. 5.6 Numérotation frontale. le premier étant constitué du sommet initial, chaque front étant formé par l en-

8 8 CHAPITRE 5. FACTORISATION DES MATRICES CREUSES semble des sommets numérotés à partir des sommets du front précédent (figure 5.6). La numérotation frontale donne des propriétés particulières au profil de la matrice. Théorème 5.1 La numérotation frontale crée un profil monotone qui est totalement rempli au cours de la factorisation. Démonstration Démontrons tout d abord que le profil est monotone, c est-à-dire que la fonction i premier (j) qui, à un numéro de colonne j, associe le numéro de ligne du premier coefficient non nul dans la colonne, est croissante. En effet, i premier (j) est le premier sommet voisin de j numéroté au cours de la numérotation frontale. C est donc lors de la numérotation des voisins non encore numérotés de i premier (j) que j s est vu affecter son numéro. Donc si j 1 < j 2, j 2 a été numéroté après j 1 et donc i premier (j 1 ) i premier (j 2 ). Pour chaque ligne i, appelons j dernier (i) le numéro du dernier coefficient non nul Fig. 5.7 Remplissage du profil monotone. sur la ligne, après les i 1 premières étapes de la factorisation. On va démontrer

9 5.4. ARBRE D ÉLIMINATION 9 que la fonction j dernier est croissante et que tous les termes de la ligne i de U de numéro de colonne compris entre i et j dernier (i) sont non nuls. Du fait de la monotonie du profil, les j dernier (1) premiers coefficients de la première ligne sont non nuls. Le calcul du complément de Schur à la première itération de la factorisation de Gauss va donc remplir complètement le bloc diagonal de 1 à j dernier (1). En particulier, sur la ligne numéro 2, tous les coefficients de numéros de colonne compris entre 2 et j dernier (1) seront non nuls dans la matrice factorisée, et donc j dernier (2) j dernier (1). Si j dernier (2) > j dernier (1) tous les coefficients de numéros de colonne compris entre j dernier (1) et j dernier (2) dans la ligne 2 sont non nuls, du fait de la monotonie du profil. Tous les coefficients de 2 à j dernier (2) sont donc non nuls dans la ligne 2 après la première étape de la factorisation de Gauss, de sorte que le calcul du complément de Schur à la deuxième itération va complètement remplir le bloc diagonal de 2 à j dernier (2). La démonstration se complète par récurrence. On suppose que, dans la ligne numéro k + 1, tous les coefficients de numéro de colonne compris entre k + 1 et j dernier (k) sont non nuls à l issue des k premières itérations de la factorisation de Gauss. Donc j dernier (k + 1) j dernier (k). Si j dernier (k + 1) > j dernier (k), la monotonie du profil impose que tous les coefficients de numéros de colonne compris entre j dernier (k) et j dernier (k + 1) sont non nuls. Le calcul du complément de Schur à l itération k + 1 de la factorisation de Gauss remplit complètement le bloc diagonal de k + 1 à j dernier (k + 1). La figure 5.7 illustre ce mécanisme de remplissage complet d un profil monotone. Dans le cas d une numérotation frontale, la factorisation symbolique est donc extrêmement simple. Il suffit de calculer le profil, ce qui signifie en pratique déterminer, pour chaque équation j, le plus petit numéro de sommet connecté à j dans le graphe de la matrice, i premier (j). La matrice factorisée sera stockée sous forme de profil, c est-à-dire comme un ensemble de colonnes de longueur variable pour la partie triangulaire supérieure, et de lignes pour la partie triangulaire inférieure, tous deux ayant la même structure du fait de la symétrie du profil. 5.4 Arbre d élimination Il existe des algorithmes donnant un remplissage moins important que la numérotation frontale. Mais ils conduisent à des profils non monotones qui ne seront donc pas totalement remplis lors de la factorisation. Pour bénéficier réellement de l amélioration apportée par ces algorithmes, il faut gérer exactement le remplissage de la matrice et stocker la matrice factorisée sous forme creuse. La factorisation symbolique est beaucoup plus complexe dans ce cas. Si on fait toutes les itérations de l algorithme de Gauss, en remplaçant le calcul des coefficients par un test sur leur pré-existence, et en modifiant à chaque fois en conséquence la structure creuse de la matrice, la factorisation symbolique va être aussi coûteuse, si ce n est même plus, que la factorisation numérique. Il y a

10 1 CHAPITRE 5. FACTORISATION DES MATRICES CREUSES cependant une différence essentielle entre les deux phases. En effet, une fois un coefficient créé au cours de la factorisation symbolique, il n est plus nécessaire de le ré-examiner dans les étapes suivantes, alors que les modifications successives du même coefficient au cours de la factorisation numérique doivent évidemment être toutes calculées. Le problème est de savoir comment éviter de tester plusieurs fois de suite l existence du même coefficient. Or, il est justement impossible de savoir si un coefficient existe déjà sans faire un test. En revanche, si l on sait qu un coefficient va être ré-examiné plus tard, on peut remettre à plus tard sa création éventuelle. Par exemple, dans la figure 5.8, tous les termes créés ou modifiés lors de l élimination de la première ligne sont tous ceux qui se trouvent à l intersection des traits commençant en pointillés rouges. Ceux qui sont créés ou modifiés lors de l élimination de la ligne de numéro égal au numéro de colonne du premier coefficient non nul de la première se trouvent à l intersection des traits en pointillés bleus. Tous les traits pointillés rouges se prolongent en pointillés bleus. La raison en est que l élimination de la première ligne provoque forcément dans la seconde l apparition de termes non nuls dans les colonnes des coefficients non nuls de la première. Pour la factorisation symbolique, il suffirait donc de calculer le remplissage provoqué par la seconde ligne dans le bloc diagonal inférieur. Pour toute ligne i, on note C i l ensemble des indices j > i pour lesquels u(i,j), et donc aussi l(j,i), sont non nuls. Cet ensemble est connu à l issue des i 1 premières étapes de la factorisation symbolique. Les ensembles C i déterminent la structure de la matrice factorisée. Le calcul du complément de Schur à l étape i de la factorisation de Gauss modifie ou fait apparaître tous les coefficients (k,l), où k et l appartiennent à C i. Pour formaliser le mécanisme de modifications successives illustré dans la figure 5.8 on va commencer par démontrer un lemme. Lemme 5.1 Si i 1 est un élément de C i, alors {j > i 1 / j C i } C i1. Démonstration Si i 1 et j appartiennent à C i, alors les coefficients u(i,i 1 ) et u(i,j), et de même l(i 1,i) et l(j,i), sont non nuls. Donc, si i 1 < j, l étape i de la factorisation de Gauss va faire apparaître des coefficients (i 1,j) et (j,i 1 ) dans le complément de Schur ou les modifier s ils existent déjà. Ceci implique que les coefficients de la ligne j de la partie triangulaire supérieure et de la colonne j de la partie triangulaire inférieure de la matrice qui sont créés par l étape i de la factorisation seront de nouveau examinés à l étape i 1. Du coup, si l on omet d examiner la ligne et la colonne j à l étape i, ces coefficients seront créés à l étape i 1. D où l idée, lors de la factorisation symbolique, de n examiner, lors de l étape i, que le remplissage provoqué dans la ligne et la colonne i 1, i 1 étant le plus petit élément de C i. La question qui se pose alors est de savoir si, ce faisant, on ne peut pas oublier de créer certains termes. En effet, dans la situation ou j appartient à C i avec j > i 1, les termes qui auraient dû apparaître dans la ligne et la colonne j lors de l étape i de la factorisation symbolique, ne seront effectivement créés à l étape

11 5.4. ARBRE D ÉLIMINATION 11 Fig. 5.8 Coefficients successivement modifiés. i 1 que si j est le plus petit élément de C i1. Si le plus petit élément de C i1 est i 2 < j, la ligne et la colonne j ne seront pas examinées lors de l étape i 1. En fait, ces termes seront effectivement créés, mais plus tard. La démonstration va s appuyer sur le lemme suivant. Lemme 5.2 Si j est un élément de C i, alors il existe une suite, i = i < i 1 <... < i p = j, telle que pour tout k compris entre et p 1, j C ik et i k+1 est le plus petit élément de C ik. Démonstration D après le lemme 5.1, si i 1 est le plus petit élément de C i, alors j C i1. De même, si j C ik et si on note i k+1 le plus petit élément de C ik, j C ik+1. Par récurrence, il existe une suite croissante vérifiant les deux propriétés : j C ik et i k+1 est le plus petit élément de C ik. Cette suite étant bornée par j, elle est finie. Si i p 1 est le dernier terme de la suite, alors i p, le plus petit élément de C ip 1 est égal à j. Ceci conduit à la définition d une méthode de coût minimal pour effectuer la factorisation symbolique dans le théorème suivant.

12 12 CHAPITRE 5. FACTORISATION DES MATRICES CREUSES Théorème 5.2 Pour calculer le remplissage total de la matrice au cours de la factorisation, il suffit, à l étape i de la factorisation symbolique, de déterminer le remplissage dans la ligne et la colonne i 1, i 1 étant le plus petit élément de C i. Démonstration Considérons la suite définie au lemme 5.2. Le lemme 5.1 implique que pour tout k compris entre et p 1, {j > i k / j C ik 1 } C ik. On en déduit immédiatement par récurrence que {j > i p 1 / j C i } C ip 1. Donc, en calculant le remplissage provoqué dans la ligne et la colonne j à l étape i p 1, on crée forcément les coefficients qui apparaissent normalement à l étape i de la factorisation. L ensemble des couples (i,i 1 ), où i 1 est le plus petit élément de C i, qui permet de définir la méthode de factorisation symbolique précédente possède des propriétés remarquables. Théorème 5.3 Le sous-graphe non orienté du graphe de la matrice factorisée formé des arêtes (i,i 1 ), où i 1 est le plus petit élément de C i, est un arbre maximal, c est-à-dire un graphe possédant n 1 arêtes, sans cycle et connexe. Ce sous-graphe est appelé Arbre d élimination. Démonstration Commençons par démontrer que l arbre d élimination possède n 1 arêtes. Par définition, il existe au plus une arête (i,i 1 ) avec i < i 1 partant de tout i compris entre 1 et n 1. Montrons qu il en existe effectivement une. On suppose que le graphe de la matrice initiale est connexe. Sinon, on a plusieurs systèmes indépendants à factoriser et on appliquera la méthode de factorisation à chacun d entre eux. Comme on l a vu (figure 5.4), chaque étape de la factorisation modifie le graphe de la matrice en faisant disparaître un sommet et en créant la clique de ses voisins. Si le graphe initial est connexe, le nouveau l est donc évidemment aussi. Par récurrence, les graphes des compléments de Schur sont donc tous connexes, ce qui signifie que, lorsque l on a effectué i 1 étapes de la factorisation, il y a nécessairement au moins un terme extra-diagonal non nul dans la ligne et la colonne i. C i est donc non vide pour tout i < n. L arbre d élimination est sans cycle. En effet, s il existait un cycle, (i,i 1 ), (i 1,i 2 ),...,(i p 1,i p ), avec i p = i, alors, pour k tel que i k est le minimum des numéros des sommets du cycle, les deux arêtes (i k 1,i k ) et (i k,i k+1 ) vérifient : i k i k+1, (i k < i k 1 ) et (i k < i k+1 ), ce qui est évidemment impossible, puisqu il part au plus une arête de l arbre de i k vers j avec j > i k. L arbre d élimination a donc n 1 arêtes et il est sans cycle. Il est nécessairement connexe. En effet, s il avait p composantes connexes possédant respectivement n 1, n 2,..., et n p sommets, l une de ces composantes aurait forcément un nombre d arêtes au moins égal à son nombre de sommets. Ce qui est en contradiction avec le fait que l arbre d élimination est sans cycle, car un graphe connexe possédant un nombre d arêtes supérieur ou égal au nombre de ses sommets présente nécessairement un cycle. En effet, réalisons une renumérotation frontale d un tel graphe. A partir du point numéro 1, on connecte ses nv 1 voisins

13 5.5. ARBRE D ÉLIMINATION ET DÉPENDANCE 13 par nv 1 arêtes. De même, les nv 2 voisins du point 2 non encore renumérotés peuvent être connectés à 2 par nv 2 arêtes, ce qui permet de connecter nv 1 +nv 2 sommets au premier sommet avec nv 1 +nv 2 arêtes. Par récurrence, on démontre que l on peut connecter n 1 sommets du graphe au premier à l aide de n 1 arêtes. S il existe une arête de plus dans le graphe, elle connecte nécessairement deux sommets déjà connectés par un autre chemin, ce qui fait apparaître un cycle. Corollaire 5.1 Le calcul du complément de Schur à l étape i de la factorisation de Gauss ne modifie la ligne et la colonne de numéro j que s il existe un chemin allant de i à j, formé d arêtes (i k,i k+1 ), avec (i k < i k+1 ), dans l arbre d élimination. Démonstration Ce corollaire est une simple reformulation du lemme 5.2. Le calcul du complément de Schur à l étape i de la factorisation de Gauss ne modifie la ligne et la colonne de numéro j que si j est un élément de C i. La suite i = i < i 1 <... < i p = j, définit bien un chemin de i à j, dans l arbre d élimination, formé des arêtes (i k,i k+1 ), avec (i k < i k+1 ), pour k compris entre et p 1. Remarque La condition est nécessaire, mais pas suffisante. Pour savoir quels sont les sommets situés plus bas que i dans l arbre qui sont effectivement concernés par l étape i de la factorisation, il faut examiner quels sont tous les termes non nuls de la ligne numéro i de U, alors que l arbre d élimination ne donne que le premier. Le fait qu une matrice pleine et une matrice tridiagonale aient le même arbre d élimination formé des arêtes (i,i + 1), pour tout i compris entre 1 et n 1 illustre bien ce problème. Pour la première, le graphe de la matrice factorisée est la clique complète, pour la seconde, il est identique à l arbre d élimination. En conséquence, à chaque itération de l algorithme de Gauss pour une matrice pleine, toutes les lignes et colonnes du bloc diagonal inférieur sont modifiées, alors que pour une matrice tridiagonale, seules la ligne et la colonne suivantes sont touchées. 5.5 Arbre d élimination et dépendance Le corollaire 5.1 donne un premier outil d analyse de la dépendance pour la factorisation de Gauss d une matrice creuse. En effet, il signifie que si deux sommets i < j ne sont pas reliés entre eux par un chemin formé d arêtes (i k,i k+1 ) de l arbre d élimination, avec (i k < i k+1 ), alors les valeurs des coefficients de la ligne et la colonne numéro j ne dépendent pas de l itération i de la factorisation de Gauss. Ce qui permet d envisager de réaliser une partie au moins des calculs des itérations i et j en parallèle. Plus précisément, si on isole plusieurs sous-ensembles de sommets qui ne sont pas

14 14 CHAPITRE 5. FACTORISATION DES MATRICES CREUSES reliés entre eux par un chemin formé d arêtes (i k,i k+1 ) de l arbre d élimination, avec (i k < i k+1 ), alors les factorisations des sous-blocs diagonaux associés à ces différents sous-ensembles peuvent être effectuées en parallèles (figure 5.9). En Fig. 5.9 Arbre d élimination et dépendance. revanche, le calcul des compléments de Schur des différents sous-blocs vont modifier certaines des lignes et des colonnes situées plus bas dans l arbre d élimination. Ces corrections multiples doivent être cumulées. Il apparaît donc que le degré de parallélisme et la granularité seront a priori d autant plus élevés que l arbre d élimination sera plus large et moins profond. La numérotation des équations va donc jouer un rôle fondamental sur les possibilités de parallélisation. Le dernier paragraphe va s attacher à l un des algorithmes de renumérotation permettant de bonnes performances parallèles tout en assurant un remplissage réduit. 5.6 Bissections emboîtées Pour obtenir du parallélisme de degré 2, avec une granularité maximale, il faut faire apparaître, dans l arbre d élimination, deux branches les plus grosses possibles, reliées à un tronc le plus réduit possible, comme dans la figure (5.1). Avec un tel arbre d élimination, la matrice factorisée, ainsi que la matrice initiale par conséquent, ont la même structure par blocs : A 11 A 13 A 22 A 23 A 31 A 32 A 33 = L 11 L 22 L 31 L 32 L 33 U 11 U 13 U 22 U 23 U 33 (5.1)

15 5.6. BISSECTIONS EMBOÎTÉES Fig. 5.1 Arbre binaire de niveau 1. Le calcul du complément de Schur sur le bloc 3 va nécessiter l accumulation de contributions provenant des blocs 1 et 2. On peut découpler la phase de calcul des corrections de la phase de sommation en décomposant arbitrairement le bloc diagonal inférieur initial sous la forme : A 33 = A (1) 33 + A(2) 33 (5.2) L application de l algorithme par blocs de factorisation de Gauss fait apparaître deux phases. Une phase parallèle de degré 2 pour la factorisation incomplète des deux premiers blocs diagonaux : A 11 = L 11 U 11 A 22 = L 22 U 22 L 31 = A 31 U11 1 L 32 = A 32 U22 1 U 13 = L 1 11 A 13 U 23 = L 1 22 A 23 S (1) 33 = A (1) 33 L 31U 13 S (2) 33 = A (2) 33 L 32U 23 (5.3) Une phase non parallèle d assemblage et de factorisation du complément de Schur : S 33 = S (1) 33 + S(2) 33 (5.4) S 33 = L 33 U 33 Le découpage du graphe de la matrice en deux sous-ensembles disjoints 1 et 2 connectés à un séparateur 3, comme dans la figure (5.1) a évidemment son pendant au niveau du maillage. Il correspond à un découpage du domaine spatial représenté par le maillage en deux sous-domaines, séparés par une interface, comme sur la figure (5.11). Un tel découpage consiste en fait à partitionner l ensemble des cellules du maillage en deux sous-ensembles, ce qui répartit les sommets en trois blocs : les sommets internes du premier sous-domaine, ceux du second et enfin les sommets situés à l interface entre les sous-domaines qui forment le séparateur. Pour

16 16 CHAPITRE 5. FACTORISATION DES MATRICES CREUSES Ω 1 Ω 2 Γ 3 Fig Découpage en deux sous-domaines. obtenir l équilibrage des charges, il faudra faire en sorte d avoir le même nombre de sommets dans chaque sous-domaines, tout en veillant à ce que le séparateur soit minimal, de façon à ce que la phase non parallèle d assemblage et de factorisation du complément de Schur soit de coût le plus réduit possible. L approche du découpage par le maillage présente l intérêt de conduire à une parallélisation naturelle de la phase de formation de la matrice. En effet, supposons que l on attribue à deux processus différents les sous-maillages distincts associés aux deux sous-domaines (figure (5.12)). Alors, vu que les coefficients sont obtenus par intégration spatiale et que le support d une fonction de base associée à un sommet interne d un sous-domaine est inclus dans ce sous-domaine, les matrices calculées par les deux processus valent : A 1 = A 11 A 13 A 31 A (1) 33 A 2 = A 22 A 23 A 32 A (2) 33 (5.5) Les blocs A (1) 33 et A(1) 33 représentent respectivement les coefficients d interaction entre fonctions de base associées aux sommets de l interface calculés dans chacun des sous-domaines. Ces fonctions de base sont les seules à avoir des supports qui sont réunion de deux parties non vides respectivement incluses dans chacun des deux sous-domaines. L intégration locale conduit donc naturellement à un découpage qui vérifie : A 33 = A (1) 33 + A(2) 33 (5.6) On voit que la phase parallèle de factorisation des deux blocs diagonaux (5.3) correspond tout simplement à la factorisation partielle des deux matrices A 1 et A 2 (5.5), dans lesquelles on a décalé la numérotation des équations de

17 5.6. BISSECTIONS EMBOÎTÉES 17 Γ 3 Ω Ω 2 1 Γ 3 Fig Maillages distincts des sous-domaines. façon à faire disparaître les lignes et colonnes vides : [ A11 A 13 A 31 A (1) 33 [ A22 A 23 A 32 A (2) 33 ] ] = = [ L11 I L 31 [ L22 I L 32 ] [ U11 U 13 S (1) 33 ] [ U22 U 23 S (2) 33 ] ] (5.7) Pour obtenir un degré de parallélisme d ordre 2 p, on peut appliquer récursivement la même stratégie de découpage, comme dans la figure (5.13). Cette méthode s appelle découpage par bissections emboîtées. Fig Découpage de maillage par bissections emboîtées.

18 18 CHAPITRE 5. FACTORISATION DES MATRICES CREUSES La matrice obtenue par bissections emboîtées de niveau p a une structure par blocs semblable à celle de l équation (5.1) dans laquelle chacun des deux blocs diagonaux a lui-même une structure de matrice obtenue par bissections emboîtées de niveau p 1. Dans le cas du découpage en 8 sous-domaines de la figure (5.13), cela donne la matrice de niveau 3 de la figure (5.14). Fig Structure de la matrice obtenue par bissections emboîtées. La factorisation partielle de la matrice obtenue en éliminant les 2 p blocs de niveau p donne un complément de Schur qui a lui-même une structure de matrice obtenue par bissections emboîtées de niveau p 1 (figure (5.14)). Les blocs de niveau supérieurs, qui correspondent aux sommets intérieurs des 2 p sous domaines, sont creux. Après la première factorisation partielle, les blocs sont denses, puisque le complément de Schur de chaque sous-domaine est une matrice pleine. Si l on se contente d une stratégie de parallélisation basée sur les blocs, le degré de parallélisme décroît de 2 p à 1 au cours des p étapes de factorisation partielle. Ce qui est d autant plus gênant que les blocs sont denses et de plus en plus gros : un séparateur est d autant plus grand que le domaine qu ils coupe en deux l est aussi. Il faut donc, pour atteindre une bonne efficacité, paralléliser la factorisation des blocs de niveaux inférieurs. De plus, ces blocs sont de taille très variable : autant il est possible d assurer que les différents sous-domaines ont le même nombre de sommets, autant les séparateurs de même niveau n ont aucune raison d être de même taille, lorsque le maillage n est pas régulier. Il faudrait donc adapter le nombre de processeurs alloué à chaque blocs.

19 5.6. BISSECTIONS EMBOÎTÉES 19 Fig Structure de la matrice après la première factorisation partielle. Tout ceci rend la mise en œuvre dans un environnement de programmation par échanges de messages très complexe. Au niveau de découpage le plus élevé, les choses sont certes très simples. Chacun des 2 p processus va traiter un des sous-domaines, ce qui veut dire former la matrice locale et réaliser la factorisation partielle des sommets intérieurs de façon à calculer le complément de Schur sur les interfaces. Cela devient beaucoup plus compliqué après, comme le suggère le découpage de la figure (5.13). Le complément de Schur calculé sur un sous-domaine contribue à une partie seulement des matrices associées aux séparateurs de niveaux inférieurs. Qui plus est, il faudrait redistribuer ces matrices sur les différents processeurs en fonction de leur taille et paralléliser leur factorisation à l aide des méthodes par blocs étudiées au chapitre précédent. Du fait de ces difficultés, les méthodes de factorisation parallèle des matrices creuses présentent en général une extensibilité limitée.

À propos des matrices échelonnées

À propos des matrices échelonnées À propos des matrices échelonnées Antoine Ducros appendice au cours de Géométrie affine et euclidienne dispensé à l Université Paris 6 Année universitaire 2011-2012 Introduction Soit k un corps, soit E

Plus en détail

Eteindre. les. lumières MATH EN JEAN 2013-2014. Mme BACHOC. Elèves de seconde, première et terminale scientifiques :

Eteindre. les. lumières MATH EN JEAN 2013-2014. Mme BACHOC. Elèves de seconde, première et terminale scientifiques : MTH EN JEN 2013-2014 Elèves de seconde, première et terminale scientifiques : Lycée Michel Montaigne : HERITEL ôme T S POLLOZE Hélène 1 S SOK Sophie 1 S Eteindre Lycée Sud Médoc : ROSIO Gauthier 2 nd PELGE

Plus en détail

Sur l algorithme RSA

Sur l algorithme RSA Sur l algorithme RSA Le RSA a été inventé par Rivest, Shamir et Adleman en 1978. C est l exemple le plus courant de cryptographie asymétrique, toujours considéré comme sûr, avec la technologie actuelle,

Plus en détail

Affichage rapide de scènes 3D

Affichage rapide de scènes 3D ÉPREUVE COMMUNE DE TIPE 2010 - Partie D TITRE : Affichage rapide de scènes 3D Temps de préparation :.. 2 h 15 minutes Temps de présentation devant les examinateurs :.10 minutes Entretien avec les examinateurs

Plus en détail

Fondements de l informatique: Examen Durée: 3h

Fondements de l informatique: Examen Durée: 3h École polytechnique X2013 INF412 Fondements de l informatique Fondements de l informatique: Examen Durée: 3h Sujet proposé par Olivier Bournez Version 3 (corrigé) L énoncé comporte 4 parties (sections),

Plus en détail

SOMMES ET PRODUITS. 1 Techniques de calcul. 1.1 Le symbole. 1.2 Règles de calcul. Laurent Garcin MPSI Lycée Jean-Baptiste Corot

SOMMES ET PRODUITS. 1 Techniques de calcul. 1.1 Le symbole. 1.2 Règles de calcul. Laurent Garcin MPSI Lycée Jean-Baptiste Corot SOMMES ET PRODUITS 1 Techniques de calcul 1.1 Le symbole Notation 1.1 Soient m et n deux entiers naturels. Alors { a m + a m+1 + + a + a n si m n, a = 0 sinon. On peut aussi noter m n =m a ou encore m,n

Plus en détail

Résolution de systèmes linéaires par des méthodes directes

Résolution de systèmes linéaires par des méthodes directes Résolution de systèmes linéaires par des méthodes directes J. Erhel Janvier 2014 1 Inverse d une matrice carrée et systèmes linéaires Ce paragraphe a pour objet les matrices carrées et les systèmes linéaires.

Plus en détail

6.11 Bases de Lanczos bi-orthogonales pour des matrices non symétriques

6.11 Bases de Lanczos bi-orthogonales pour des matrices non symétriques Chapitre 6 Méthodes de Krylov 611 Bases de Lanczos bi-orthogonales pour des matrices non symétriques Dans le cas où la matrice A n est pas symétrique, comment peut-on retrouver une matrice de corrélation

Plus en détail

Les calculatrices, téléphones, tablettes, ordinateurs et autres appareils électroniques similaires, ainsi que les documents sont interdits.

Les calculatrices, téléphones, tablettes, ordinateurs et autres appareils électroniques similaires, ainsi que les documents sont interdits. Les calculatrices, téléphones, tablettes, ordinateurs et autres appareils électroniques similaires, ainsi que les documents sont interdits 1 La qualité de la rédaction est un facteur important dans l appréciation

Plus en détail

Formules d inclusion-exclusion

Formules d inclusion-exclusion Université de Rouen L1 M.I.EEA 2011 2012 Mathématiques discrètes Formules d inclusion-exclusion Je présente ici une correction détaillée de l Exercice 5 de la Feuille d exercices 1, en reprenant le problème

Plus en détail

Université Joseph Fourier, Grenoble. Systèmes linéaires. Bernard Ycart

Université Joseph Fourier, Grenoble. Systèmes linéaires. Bernard Ycart Université Joseph Fourier, Grenoble Maths en Ligne Systèmes linéaires Bernard Ycart Si vous savez déjà résoudre un système linéaire par la méthode de Gauss, vous n apprendrez pas grand chose de neuf dans

Plus en détail

Architecture des calculateurs

Architecture des calculateurs Chapitre 1 Architecture des calculateurs 1.1 Introduction Ce paragraphe n a pas la prétention de présenter un cours d informatique. D une manière générale, seuls les caractéristiques architecturales qui

Plus en détail

Exercices théoriques

Exercices théoriques École normale supérieure 2008-2009 Département d informatique Algorithmique et Programmation TD n 9 : Programmation Linéaire Avec Solutions Exercices théoriques Rappel : Dual d un programme linéaire cf.

Plus en détail

Correction de l épreuve intermédiaire de mai 2009.

Correction de l épreuve intermédiaire de mai 2009. Licence de Gestion. 3ème Année Année universitaire 8-9 Optimisation Appliquée C. Léonard Correction de l épreuve intermédiaire de mai 9. Exercice 1 Avec les notations du cours démontrer que la solution

Plus en détail

Partie I : Automates et langages

Partie I : Automates et langages 2 Les calculatrices sont interdites. N.B. : Le candidat attachera la plus grande importance à la clarté, à la précision et à la concision de la rédaction. Si un candidat est amené à repérer ce qui peut

Plus en détail

Applications linéaires

Applications linéaires Applications linéaires I) Applications linéaires - Généralités 1.1) Introduction L'idée d'application linéaire est intimement liée à celle d'espace vectoriel. Elle traduit la stabilité par combinaison

Plus en détail

Chapitre 6. Modélisation en P.L.I. 6.1 Lien entre PL et PLI. 6.1.1 Approximation de la PLI

Chapitre 6. Modélisation en P.L.I. 6.1 Lien entre PL et PLI. 6.1.1 Approximation de la PLI Chapitre 6 Modélisation en P.L.I. 6.1 Lien entre PL et PLI (P) problème de PL. On restreint les variables à être entières : on a un problème de PLI (ILP en anglais). On restreint certaines variables à

Plus en détail

Rappels sur les applications linéaires

Rappels sur les applications linéaires Rappels sur les applications linéaires 1 Définition d une application linéaire Définition 1 Soient E et F deux espaces vectoriels sur un même corps K et f une application de E dans F Dire que f est linéaire

Plus en détail

Représentation des Nombres

Représentation des Nombres Chapitre 5 Représentation des Nombres 5. Representation des entiers 5.. Principe des représentations en base b Base L entier écrit 344 correspond a 3 mille + 4 cent + dix + 4. Plus généralement a n a n...

Plus en détail

Marches, permutations et arbres binaires aléatoires

Marches, permutations et arbres binaires aléatoires Marches, permutations et arbres binaires aléatoires Épreuve pratique d algorithmique et de programmation Concours commun des Écoles Normales Supérieures Durée de l épreuve: 4 heures Cœfficient: 4 Juillet

Plus en détail

Exo7. Matrice d une application linéaire. Corrections d Arnaud Bodin.

Exo7. Matrice d une application linéaire. Corrections d Arnaud Bodin. Exo7 Matrice d une application linéaire Corrections d Arnaud odin. Exercice Soit R muni de la base canonique = ( i, j). Soit f : R R la projection sur l axe des abscisses R i parallèlement à R( i + j).

Plus en détail

Mathématiques appliquées à l informatique

Mathématiques appliquées à l informatique Mathématiques appliquées à l informatique Jean-Etienne Poirrier 15 décembre 2005 Table des matières 1 Matrices 3 1.1 Définition......................................... 3 1.2 Les différents types de matrices.............................

Plus en détail

Programmation linéaire

Programmation linéaire 1 Programmation linéaire 1. Le problème, un exemple. 2. Le cas b = 0 3. Théorème de dualité 4. L algorithme du simplexe 5. Problèmes équivalents 6. Complexité de l Algorithme 2 Position du problème Soit

Plus en détail

Master de mathématiques Analyse numérique matricielle

Master de mathématiques Analyse numérique matricielle Master de mathématiques Analyse numérique matricielle 2009 2010 CHAPITRE 1 Méthodes itératives de résolution de systèmes linéaires On veut résoudre un système linéaire Ax = b, où A est une matrice inversible

Plus en détail

Problèmes de Mathématiques Noyaux et images itérés

Problèmes de Mathématiques Noyaux et images itérés Énoncé Soit E un espace vectoriel sur IK (IK = IR ou lc). Soit f un endomorphisme de E. On pose f 0 = Id E, et pour tout entier k 1, f k = f f k 1. 1. Montrer que (Im f k ) k 0 et (Ker f k ) k 0 forment

Plus en détail

Image d un intervalle par une fonction continue

Image d un intervalle par une fonction continue DOCUMENT 27 Image d un intervalle par une fonction continue La continuité d une fonction en un point est une propriété locale : une fonction est continue en un point x 0 si et seulement si sa restriction

Plus en détail

1 Fiche méthodologique Passage d un mode de représentation d un sev à l autre

1 Fiche méthodologique Passage d un mode de représentation d un sev à l autre 1 Fiche méthodologique Passage d un mode de représentation d un sev à l autre BCPST Lycée Hoche $\ CC BY: Pelletier Sylvain Les deux modes de représentation des sous-espaces vectoriels Il existe deux modes

Plus en détail

Calcul Matriciel. Chapitre 10. 10.1 Qu est-ce qu une matrice? 10.2 Indexation des coefficients. 10.3 Exemples de matrices carrées.

Calcul Matriciel. Chapitre 10. 10.1 Qu est-ce qu une matrice? 10.2 Indexation des coefficients. 10.3 Exemples de matrices carrées. Chapitre 10 Calcul Matriciel 101 Qu est-ce qu une matrice? Définition : Soit K un ensemble de nombres exemples, K = N, Z, Q, R, C, n, p N On appelle matrice à n lignes et p colonnes la données de np nombres

Plus en détail

Ensimag 2A. Rapport de TER. Application de la Recherche Opérationnelle à la Finance

Ensimag 2A. Rapport de TER. Application de la Recherche Opérationnelle à la Finance Ensimag 2A Rapport de TER Application de la Recherche Opérationnelle à la Finance Elève : Yuefei HUANG Tuteur : Zoltán SZIGETI Mai, 2010 2 Sommaire 1. Introduction... 3 2. Le marché des changes et arbitrage...

Plus en détail

Option Informatique Arbres binaires équilibrés

Option Informatique Arbres binaires équilibrés Option Informatique Arbres binaires équilibrés Sujet novembre 2 Partie II : Algorithmique et programmation en CaML Cette partie doit être traitée par les étudiants qui ont utilisé le langage CaML dans

Plus en détail

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications A. Optimisation sans contrainte.... Généralités.... Condition nécessaire et condition suffisante

Plus en détail

Programmation linéaire

Programmation linéaire Programmation linéaire DIDIER MAQUIN Ecole Nationale Supérieure d Electricité et de Mécanique Institut National Polytechnique de Lorraine Mathématiques discrètes cours de 2ème année Programmation linéaire

Plus en détail

Implanter les algorithmes Oum-Seymour et Oum

Implanter les algorithmes Oum-Seymour et Oum Implanter les algorithmes Oum-Seymour et Oum J.-F Raymond, B.-M Bui-Xuan et P. Trébuchet jeanflorent.raymond@ens-lyon.fr LIP6, Université Pierre et Marie Curie 17/11/2011 J.-F Raymond, B.-M Bui-Xuan et

Plus en détail

Calculs approchés d un point fixe

Calculs approchés d un point fixe M11 ÉPREUVE COMMUNE DE TIPE 2013 - Partie D TITRE : Calculs approchés d un point fixe Temps de préparation :.. 2 h 15 minutes Temps de présentation devant les examinateurs :.10 minutes Dialogue avec les

Plus en détail

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Recherche opérationnelle Les démonstrations et les exemples seront traités en cours Souad EL Bernoussi Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Table des matières 1 Programmation

Plus en détail

chapitre 4 Nombres de Catalan

chapitre 4 Nombres de Catalan chapitre 4 Nombres de Catalan I Dénitions Dénition 1 La suite de Catalan (C n ) n est la suite dénie par C 0 = 1 et, pour tout n N, C n+1 = C k C n k. Exemple 2 On trouve rapidement C 0 = 1, C 1 = 1, C

Plus en détail

Chapitre 5 : Flot maximal dans un graphe

Chapitre 5 : Flot maximal dans un graphe Graphes et RO TELECOM Nancy A Chapitre 5 : Flot maximal dans un graphe J.-F. Scheid 1 Plan du chapitre I. Définitions 1 Graphe Graphe valué 3 Représentation d un graphe (matrice d incidence, matrice d

Plus en détail

Sujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes.

Sujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes. Promotion X 004 COURS D ANALYSE DES STRUCTURES MÉCANIQUES PAR LA MÉTHODE DES ELEMENTS FINIS (MEC 568) contrôle non classant (7 mars 007, heures) Documents autorisés : polycopié ; documents et notes de

Plus en détail

Exercices Corrigés Premières notions sur les espaces vectoriels

Exercices Corrigés Premières notions sur les espaces vectoriels Exercices Corrigés Premières notions sur les espaces vectoriels Exercice 1 On considére le sous-espace vectoriel F de R formé des solutions du système suivant : x1 x 2 x 3 + 2x = 0 E 1 x 1 + 2x 2 + x 3

Plus en détail

Applications #2 Problème du voyageur de commerce (TSP)

Applications #2 Problème du voyageur de commerce (TSP) Applications #2 Problème du voyageur de commerce (TSP) MTH6311 S. Le Digabel, École Polytechnique de Montréal H2014 (v2) MTH6311: Heuristiques pour le TSP 1/34 Plan 1. Introduction 2. Formulations MIP

Plus en détail

Aspects théoriques et algorithmiques du calcul réparti Placement - Compléments

Aspects théoriques et algorithmiques du calcul réparti Placement - Compléments A- 0/0 Aspects théoriques et algorithmiques du calcul réparti Placement - Compléments Patrick CIARLET Enseignant-Chercheur UMA patrick.ciarlet@ensta-paristech.fr Françoise LAMOUR franc.lamour@gmail.com

Plus en détail

Structures de données non linéaires

Structures de données non linéaires Structures de données non linéaires I. Graphes Définition Un graphe (simple) orienté G est un couple (S, A), où : S est un ensemble dont les éléments sont appelés les sommets. A est un ensemble de couples

Plus en détail

Soit la fonction affine qui, pour représentant le nombre de mois écoulés, renvoie la somme économisée.

Soit la fonction affine qui, pour représentant le nombre de mois écoulés, renvoie la somme économisée. ANALYSE 5 points Exercice 1 : Léonie souhaite acheter un lecteur MP3. Le prix affiché (49 ) dépasse largement la somme dont elle dispose. Elle décide donc d économiser régulièrement. Elle a relevé qu elle

Plus en détail

Épreuve pratique de mathématiques Printemps 2009. Descriptifs. (Page vide)

Épreuve pratique de mathématiques Printemps 2009. Descriptifs. (Page vide) Épreuve pratique de mathématiques Printemps 2009 Descriptifs (Page vide) Sujet 001 Épreuve pratique de mathématiques Descriptif Étude d une fonction dépendant d un paramètre Étant donné une fonction dépendant

Plus en détail

Table des matières. 3 Suites de nombres réels 29. 3.2 Limites... 30

Table des matières. 3 Suites de nombres réels 29. 3.2 Limites... 30 Table des matières 1 Généralités 3 1.1 Un peu de logique................................. 3 1.1.1 Vocabulaire................................ 3 1.1.2 Opérations logiques............................ 4 1.1.3

Plus en détail

Programmation linéaire et Optimisation. Didier Smets

Programmation linéaire et Optimisation. Didier Smets Programmation linéaire et Optimisation Didier Smets Chapitre 1 Un problème d optimisation linéaire en dimension 2 On considère le cas d un fabricant d automobiles qui propose deux modèles à la vente, des

Plus en détail

Actions de groupes. Exemples et applications

Actions de groupes. Exemples et applications 4 Actions de groupes. Exemples et applications G, ) est un groupe multiplicatif et on note ou G si nécessaire) l élément neutre. E est un ensemble non vide et S E) est le groupe des permutations de E.

Plus en détail

Recherche Opérationnelle 1A Programmation Linéaire Résolution d un Programme Linéaire Introduction

Recherche Opérationnelle 1A Programmation Linéaire Résolution d un Programme Linéaire Introduction Recherche Opérationnelle 1A Programmation Linéaire Résolution d un Programme Linéaire Introduction Zoltán Szigeti Ensimag April 4, 2015 Z. Szigeti (Ensimag) RO 1A April 4, 2015 1 / 16 Forme Générale Définition

Plus en détail

Document créé le 27 novembre 2013 Lien vers la dernière mise à jour de ce document Lien vers les exercices de ce chapitre

Document créé le 27 novembre 2013 Lien vers la dernière mise à jour de ce document Lien vers les exercices de ce chapitre Document créé le 27 novembre 2013 Lien vers la dernière mise à jour de ce document Lien vers les exercices de ce chapitre Chapitre 17 Matrices et applications linéaires Sommaire 171 Matrices et applications

Plus en détail

Exercices - Polynômes : corrigé. Opérations sur les polynômes

Exercices - Polynômes : corrigé. Opérations sur les polynômes Opérations sur les polynômes Exercice 1 - Carré - L1/Math Sup - Si P = Q est le carré d un polynôme, alors Q est nécessairement de degré, et son coefficient dominant est égal à 1. On peut donc écrire Q(X)

Plus en détail

EXAMEN FINAL. 2 Février 2006-2 heures Aucun document autorisé

EXAMEN FINAL. 2 Février 2006-2 heures Aucun document autorisé MIE - E ANNÉE ALGORITHMIQUE GÉNÉRALE Vincent Mousseau EXAMEN FINAL Février 006 - heures Aucun document autorisé Exercice : On s intéresse à la gestion informatique des réservations sur l année d une salle

Plus en détail

Mathématiques assistées par ordinateur

Mathématiques assistées par ordinateur Mathématiques assistées par ordinateur Chapitre 4 : Racines des polynômes réels et complexes Michael Eisermann Mat249, DLST L2S4, Année 2008-2009 www-fourier.ujf-grenoble.fr/ eiserm/cours # mao Document

Plus en détail

Chapitre 2. Matrices

Chapitre 2. Matrices Département de mathématiques et informatique L1S1, module A ou B Chapitre 2 Matrices Emmanuel Royer emmanuelroyer@mathuniv-bpclermontfr Ce texte mis gratuitement à votre disposition a été rédigé grâce

Plus en détail

CH.8 Décidabilité. Propriétés des langages récursifs : Fermés par complémentation, union et intersection. oui. non. oui M 1. non. oui M 2.

CH.8 Décidabilité. Propriétés des langages récursifs : Fermés par complémentation, union et intersection. oui. non. oui M 1. non. oui M 2. CH.8 Décidabilité 8.1 Les langages récursifs 8.2 La machine de Turing universelle 8.3 Des problèmes de langages indécidables 8.4 D'autres problèmes indécidables Automates ch8 1 8.1 Les langages récursifs

Plus en détail

La notion de dualité

La notion de dualité La notion de dualité Dual d un PL sous forme standard Un programme linéaire est caractérisé par le tableau simplexe [ ] A b. c Par définition, le problème dual est obtenu en transposant ce tableau. [ A

Plus en détail

UNIVERSITÉ DE POITIERS

UNIVERSITÉ DE POITIERS UNIVERSITÉ DE POITIERS Faculté des Sciences Fondamentales et Appliquées Mathématiques PREMIÈRE ANNEE DE LA LICENCE DE SCIENCES ET TECHNOLOGIES UE L «algèbre linéaire» Plan du cours Exercices Enoncés des

Plus en détail

2. MATRICES ET APPLICATIONS LINÉAIRES

2. MATRICES ET APPLICATIONS LINÉAIRES 2. MATRICES ET APPLICATIONS LINÉAIRES 2.1 Définition Une matrice n m est un tableau rectangulaire de nombres (réels en général) à n lignes et m colonnes ; n et m sont les dimensions de la matrice. Notation.

Plus en détail

Combien de fois faut-il battre un jeu de cartes?

Combien de fois faut-il battre un jeu de cartes? Combien de fois faut-il battre un jeu de cartes? Ce texte est tiré d un article de D. Bayer et P. Diaconis Trailing the dovetail shuffle to its lair Ann. Appl. Prob. 992, vol 2, No 2, 294-33. Introduction

Plus en détail

Les graphes planaires

Les graphes planaires Les graphes planaires Complément au chapitre 2 «Les villas du Bellevue» Dans le chapitre «Les villas du Bellevue», Manori donne la définition suivante à Sébastien. Définition Un graphe est «planaire» si

Plus en détail

Le corps R des nombres réels

Le corps R des nombres réels Le corps R des nombres réels. Construction de R à l aide des suites de Cauchy de nombres rationnels On explique brièvement dans ce paragraphe comment construire le corps R des nombres réels à partir du

Plus en détail

Outils d analyse fonctionnelle Cours 5 Théorie spectrale

Outils d analyse fonctionnelle Cours 5 Théorie spectrale Outils d analyse fonctionnelle Cours 5 Théorie spectrale 22 septembre 2015 Généralités Dans tout ce qui suit V désigne un espace de Hilbert réel muni d un produit scalaire x, y. Définition Soit A une application

Plus en détail

Université Bordeaux 1 Master d informatique UE Bases de Données Sujet et correction de l examen du 27 mai 2004 8h00 9h30 (sans documents)

Université Bordeaux 1 Master d informatique UE Bases de Données Sujet et correction de l examen du 27 mai 2004 8h00 9h30 (sans documents) Numéro d anonymat: 1 Université Bordeaux 1 Master d informatique UE Bases de Données Sujet et correction de l examen du 27 mai 2004 8h00 9h30 (sans documents) Sauf mention contraire en caractères gras,

Plus en détail

I Arbres binaires. Lycée Faidherbe 2014-2015. 1 Rappels 2 1.1 Définition... 2 1.2 Dénombrements... 2 1.3 Parcours... 3

I Arbres binaires. Lycée Faidherbe 2014-2015. 1 Rappels 2 1.1 Définition... 2 1.2 Dénombrements... 2 1.3 Parcours... 3 I Arbres binaires 2014-2015 Table des matières 1 Rappels 2 1.1 Définition................................................ 2 1.2 Dénombrements............................................ 2 1.3 Parcours.................................................

Plus en détail

La demande Du consommateur. Contrainte budgétaire Préférences Choix optimal

La demande Du consommateur. Contrainte budgétaire Préférences Choix optimal La demande Du consommateur Contrainte budgétaire Préférences Choix optimal Plan du cours Préambule : Rationalité du consommateur I II III IV V La contrainte budgétaire Les préférences Le choix optimal

Plus en détail

La mesure de Lebesgue sur la droite réelle

La mesure de Lebesgue sur la droite réelle Chapitre 1 La mesure de Lebesgue sur la droite réelle 1.1 Ensemble mesurable au sens de Lebesgue 1.1.1 Mesure extérieure Définition 1.1.1. Un intervalle est une partie convexe de R. L ensemble vide et

Plus en détail

Université Paris-Dauphine DUMI2E 1ère année, 2009-2010. Applications

Université Paris-Dauphine DUMI2E 1ère année, 2009-2010. Applications Université Paris-Dauphine DUMI2E 1ère année, 2009-2010 Applications 1 Introduction Une fonction f (plus précisément, une fonction réelle d une variable réelle) est une règle qui associe à tout réel x au

Plus en détail

Recherche opérationnelle. Programmation linéaire et recherche opérationnelle. Programmation linéaire. Des problèmes de RO que vous savez résoudre

Recherche opérationnelle. Programmation linéaire et recherche opérationnelle. Programmation linéaire. Des problèmes de RO que vous savez résoudre Recherche opérationnelle Programmation linéaire et recherche opérationnelle Ioan Todinca Ioan.Todinca@univ-orleans.fr tél. 0 38 41 7 93 bureau : en bas à gauche Tentative de définition Ensemble de méthodes

Plus en détail

Théorie et codage de l information

Théorie et codage de l information Théorie et codage de l information Les codes linéaires - Chapitre 6 - Principe Définition d un code linéaire Soient p un nombre premier et s est un entier positif. Il existe un unique corps de taille q

Plus en détail

La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.

La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France. La NP-complétude Johanne Cohen PRISM/CNRS, Versailles, France. Références 1. Algorithm Design, Jon Kleinberg, Eva Tardos, Addison-Wesley, 2006. 2. Computers and Intractability : A Guide to the Theory of

Plus en détail

ALGORITHMES POUR LA VISUALISATION SCIENTIFIQUE

ALGORITHMES POUR LA VISUALISATION SCIENTIFIQUE BAZEILLE Stéphane MOUGEL Baptiste IUP3 ALGORITHMES POUR LA VISUALISATION SCIENTIFIQUE EN Année 2003/2004 1 TABLE DES MATIERES Home... 3 Introduction.... 3 Marching Square... 4 Algorithme....4 Programmation...4

Plus en détail

X-ENS PSI - 2009 Un corrigé

X-ENS PSI - 2009 Un corrigé X-ENS PSI - 009 Un corrigé Première partie.. Des calculs élémentaires donnent χ A(α) = χ B(α) = X X + et χ A(α)+B(α) = X X + 4α + 4 On en déduit que Sp(A(α)) = Sp(B(α)) = {j, j } où j = e iπ 3 Sp(A(α)

Plus en détail

1 Récupération des données

1 Récupération des données Lycée Buffon MP*/PSI 014-15 Épreuve d informatique du concours blanc, jeudi 5 mars 015 (3h00) Les documents, téléphones portables, ordinateurs et calculatrices sont interdits. Le sujet de cette épreuve

Plus en détail

Programme de mathématiques TSI1

Programme de mathématiques TSI1 Programme de mathématiques TSI1 1. PROGRAMME DE DÉBUT D ANNÉE I. Nombres complexes et géométrie élémentaire 1. Nombres complexes 1 2. Géométrie élémentaire du plan 3 3. Géométrie élémentaire de l espace

Plus en détail

Théorie des ensembles

Théorie des ensembles Théorie des ensembles Cours de licence d informatique Saint-Etienne 2002/2003 Bruno Deschamps 2 Contents 1 Eléments de théorie des ensembles 3 1.1 Introduction au calcul propositionnel..................

Plus en détail

Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot

Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot Chapitre 5 Arithmétique binaire L es codes sont manipulés au quotidien sans qu on s en rende compte, et leur compréhension est quasi instinctive. Le seul fait de lire fait appel au codage alphabétique,

Plus en détail

Contexte. Pour cela, elles doivent être très compliquées, c est-à-dire elles doivent être très différentes des fonctions simples,

Contexte. Pour cela, elles doivent être très compliquées, c est-à-dire elles doivent être très différentes des fonctions simples, Non-linéarité Contexte Pour permettre aux algorithmes de cryptographie d être sûrs, les fonctions booléennes qu ils utilisent ne doivent pas être inversées facilement. Pour cela, elles doivent être très

Plus en détail

Groupe symétrique. Chapitre II. 1 Définitions et généralités

Groupe symétrique. Chapitre II. 1 Définitions et généralités Chapitre II Groupe symétrique 1 Définitions et généralités Définition. Soient n et X l ensemble 1,..., n. On appelle permutation de X toute application bijective f : X X. On note S n l ensemble des permutations

Plus en détail

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que Introduction. On suppose connus les ensembles N (des entiers naturels), Z des entiers relatifs et Q (des nombres rationnels). On s est rendu compte, depuis l antiquité, que l on ne peut pas tout mesurer

Plus en détail

Projet CLANU en 3GE: Compléments d algèbre linéaire numérique

Projet CLANU en 3GE: Compléments d algèbre linéaire numérique Projet CLANU en 3GE: Compléments d algèbre linéaire numérique Année 2008/2009 1 Décomposition QR On rappelle que la multiplication avec une matrice unitaire Q C n n (c est-à-dire Q 1 = Q = Q T ) ne change

Plus en détail

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes. 1 Définitions, notations Calcul matriciel Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes. On utilise aussi la notation m n pour le

Plus en détail

3 Approximation de solutions d équations

3 Approximation de solutions d équations 3 Approximation de solutions d équations Une équation scalaire a la forme générale f(x) =0où f est une fonction de IR dans IR. Un système de n équations à n inconnues peut aussi se mettre sous une telle

Plus en détail

Jeux à somme nulle : le cas fini

Jeux à somme nulle : le cas fini CHAPITRE 2 Jeux à somme nulle : le cas fini Les jeux à somme nulle sont les jeux à deux joueurs où la somme des fonctions de paiement est nulle. Dans ce type d interaction stratégique, les intérêts des

Plus en détail

Fonctions de plusieurs variables

Fonctions de plusieurs variables Module : Analyse 03 Chapitre 00 : Fonctions de plusieurs variables Généralités et Rappels des notions topologiques dans : Qu est- ce que?: Mathématiquement, n étant un entier non nul, on définit comme

Plus en détail

Exercices de dénombrement

Exercices de dénombrement Exercices de dénombrement Exercice En turbo Pascal, un entier relatif (type integer) est codé sur 6 bits. Cela signifie que l'on réserve 6 cases mémoires contenant des "0" ou des "" pour écrire un entier.

Plus en détail

Cours de mathématiques - Alternance Gea

Cours de mathématiques - Alternance Gea Cours de mathématiques - Alternance Gea Anne Fredet 11 décembre 005 1 Calcul matriciel Une matrice n m est un tableau de nombres à n lignes( et m colonnes. 1 0 Par exemple, avec n = et m =, on peut considérer

Plus en détail

Exo7. Calculs de déterminants. Fiche corrigée par Arnaud Bodin. Exercice 1 Calculer les déterminants des matrices suivantes : Exercice 2.

Exo7. Calculs de déterminants. Fiche corrigée par Arnaud Bodin. Exercice 1 Calculer les déterminants des matrices suivantes : Exercice 2. Eo7 Calculs de déterminants Fiche corrigée par Arnaud Bodin Eercice Calculer les déterminants des matrices suivantes : Correction Vidéo ( ) 0 6 7 3 4 5 8 4 5 6 0 3 4 5 5 6 7 0 3 5 4 3 0 3 0 0 3 0 0 0 3

Plus en détail

Définition 0,752 = 0,7 + 0,05 + 0,002 SYSTÈMES DE NUMÉRATION POSITIONNELS = 7 10 1 + 5 10 2 + 2 10 3

Définition 0,752 = 0,7 + 0,05 + 0,002 SYSTÈMES DE NUMÉRATION POSITIONNELS = 7 10 1 + 5 10 2 + 2 10 3 8 Systèmes de numération INTRODUCTION SYSTÈMES DE NUMÉRATION POSITIONNELS Dans un système positionnel, le nombre de symboles est fixe On représente par un symbole chaque chiffre inférieur à la base, incluant

Plus en détail

Résolution d équations non linéaires

Résolution d équations non linéaires Analyse Numérique Résolution d équations non linéaires Said EL HAJJI et Touria GHEMIRES Université Mohammed V - Agdal. Faculté des Sciences Département de Mathématiques. Laboratoire de Mathématiques, Informatique

Plus en détail

Traitement des données avec EXCEL 2007

Traitement des données avec EXCEL 2007 Traitement des données avec EXCEL 2007 Vincent Jalby Octobre 2010 1 Saisie des données Les données collectées sont saisies dans une feuille Excel. Chaque ligne correspond à une observation (questionnaire),

Plus en détail

Leçon 6. Savoir compter

Leçon 6. Savoir compter Leçon 6. Savoir compter Cette leçon est une introduction aux questions de dénombrements. Il s agit, d une part, de compter certains objets mathématiques (éléments, parties, applications,...) et, d autre

Plus en détail

Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé

Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé A. P. M. E. P. Exercice 1 5 points 1. Réponse d. : 1 e Le coefficient directeur de la tangente est négatif et n est manifestement pas 2e

Plus en détail

1 Recherche en table par balayage

1 Recherche en table par balayage 1 Recherche en table par balayage 1.1 Problème de la recherche en table Une table désigne une liste ou un tableau d éléments. Le problème de la recherche en table est celui de la recherche d un élément

Plus en détail

Introduction à l étude des Corps Finis

Introduction à l étude des Corps Finis Introduction à l étude des Corps Finis Robert Rolland (Résumé) 1 Introduction La structure de corps fini intervient dans divers domaines des mathématiques, en particulier dans la théorie de Galois sur

Plus en détail

Fonctions homographiques

Fonctions homographiques Fonctions homographiques On donne ci-dessous deux définitions des fonctions homographiques, et on montre que ces deux définitions sont équivalentes. On décrit la courbe représentative d une fonction homographique.

Plus en détail

BJ - RELATIONS BINAIRES

BJ - RELATIONS BINAIRES BJ - RELATIONS BINAIRES Définitions Soit A et B deux ensembles non vides, et G une partie de A B. On dit qu un élément x de A est relié à un élément y de B par une relation binaire de graphe G, si le couple

Plus en détail

Intégration et probabilités TD1 Espaces mesurés Corrigé

Intégration et probabilités TD1 Espaces mesurés Corrigé Intégration et probabilités TD1 Espaces mesurés Corrigé 2012-2013 1 Petites questions 1 Est-ce que l ensemble des ouverts de R est une tribu? Réponse : Non, car le complémentaire de ], 0[ n est pas ouvert.

Plus en détail

Modèle probabiliste: Algorithmes et Complexité

Modèle probabiliste: Algorithmes et Complexité Modèles de calcul, Complexité, Approximation et Heuristiques Modèle probabiliste: Algorithmes et Complexité Jean-Louis Roch Master-2 Mathématique Informatique Grenoble-INP UJF Grenoble University, France

Plus en détail

Chp. 4. Minimisation d une fonction d une variable

Chp. 4. Minimisation d une fonction d une variable Chp. 4. Minimisation d une fonction d une variable Avertissement! Dans tout ce chapître, I désigne un intervalle de IR. 4.1 Fonctions convexes d une variable Définition 9 Une fonction ϕ, partout définie

Plus en détail

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2) Objectifs du cours d aujourd hui Informatique II : Cours d introduction à l informatique et à la programmation objet Complexité des problèmes Introduire la notion de complexité d un problème Présenter

Plus en détail

Exercices : VAR discrètes

Exercices : VAR discrètes Exercices : VAR discrètes Exercice 1: Une urne contient 2 boules blanches et 4 boules noires. On tire les boules une à une sans les remettre jusqu à ce qu il ne reste que des boules d une seule couleur

Plus en détail