Introduction

Une matrice creuse obtenue lors de la résolution d'un problème éléments finis. Les éléments non-nuls sont représentés en noir.
Dans la discipline de l'analyse numérique des mathématiques, une matrice creuse est une matrice contenant beaucoup de zéros.
Conceptuellement, les matrices creuses correspondent aux systèmes qui sont peu couplés. Si on considère une ligne de balles dont chacune est reliées à ses voisines directes par des élastiques, ce système serait représenté par une matrice creuse. Au contraire, si chaque balle de la ligne est reliée à toutes les autres balles, ce système serait représenté par une matrice dense. Ce concept de matrice creuse est très utilisée en analyse combinatoire et ses domaines d'applications tels que la théorie des réseaux, qui ont une faible densité de connexions.
Des matrices de taille importante apparaissent souvent en science ou en ingénierie pour la résolution des équations aux dérivées partielles.
Quand on veut manipuler ou stocker des matrices creuses à l'aide de l'outil informatique, il est avantageux voire souvent nécessaire d'utiliser des algorithmes et des structure de données qui prennent en compte la structure peu dense de la matrice. Les opérations utilisant les structures et les algorithmes de base sur les matrices sont lents et utilisent une grande quantité de mémoire quand ils sont utilisés sur de grandes matrices creuses. Ces données sont facilement compressibles, et cette compression amène presque à chaque fois une baisse significative de la consommation mémoire. De plus, certaines matrices creuses de très grande taille ne sont pas manipulables par les algorithmes classiques.