Conditionnement (analyse numérique)

De testwiki
Aller à la navigation Aller à la recherche

Modèle:Voir homonymes

En analyse numérique, une discipline des mathématiques, le conditionnement mesure la dépendance de la solution d'un problème numérique par rapport aux données du problème, ceci afin de contrôler la validité d'une solution calculée par rapport à ces données. En effet, les données d'un problème numérique dépendent en général de mesures expérimentales et sont donc entachées d'erreurs.

Il s'agit le plus souvent d'une quantité numérique.

De façon plus générale, on peut dire que le conditionnement associé à un problème est une mesure de la difficulté de calcul numérique du problème. Un problème possédant un conditionnement bas est dit bien conditionné et un problème possédant un conditionnement élevé est dit mal conditionné.

Conditionnement d'un problème

Soit un problème . Soit aussi une variable perturbée , avec , où ε est la précision de la machine. Alors, la condition Modèle:Math du problème est le plus petit nombre tel que :

Le problème Modèle:Math est bien conditionné si Modèle:Math n'est pas très grand par rapport à . Sinon, ce problème P est mal conditionné[1].

Selon N. Higham[2], il semble que la notion de conditionnement ait été introduite par Alan Turing[3] qui, par exemple, a défini le conditionnement d'une matrice carrée de taille n à partir de la norme de Frobenius par :

Conditionnement d'une matrice

Le conditionnement d'une matrice inversible Modèle:Math relativement à une norme subordonnée, notée est défini par la formule:

.

Comme on suppose que la norme est subordonnée, le conditionnement est supérieur à 1 :

Notons que la matrice vide 0 × 0 est son propre inverse et que sa norme est nulle quelle que soit la norme retenue. Son conditionnement est donc 0 selon cette définition[4]. Certains définissent cependant cond()0 × 0 = 1 car l'application linéaire nulle a une précision parfaite (donc un score de 1) et cette matrice vide est une identité, les matrices unités ayant toutes un conditionnement de 1[5].

Pour le système linéaire Modèle:Math, où les données sont la matrice Modèle:Math et le vecteur du second membre Modèle:Math, le conditionnement donne une borne de l'erreur relative commise sur la solution Modèle:Math lorsque les données Modèle:Math ou Modèle:Math sont perturbées. Il peut s'avérer que cette borne soit très grande, de sorte que l'erreur qui pourrait en découler rende la solution numérique inexploitable.

Le conditionnement dépend de la norme utilisée. Pour la norme d'espace ℓ2 , notée Modèle:Math, on a alors :

Modèle:Math et Modèle:Math sont les valeurs singulières maximales et minimales de Modèle:Math. En conséquence :

Pour la norme d'espace ℓ, notée Modèle:Math, si A est une matrice triangulaire inférieure non singulière (c'est-à-dire que Modèle:Math), alors :

Formules de majoration de l'erreur

Dans les formules suivantes, les calculs sont supposés faits avec une précision infinie, c'est-à-dire que les systèmes perturbés sont résolus de manière exacte.

On considère deux cas, selon que c'est le second membre Modèle:Math ou la matrice Modèle:Math qui n'est pas connu précisément.

Cas où le second membre varie

Le calcul effectif de l'inversion du système Modèle:Math, où la matrice Modèle:Math est connue avec précision et où la valeur du second membre Modèle:Math, supposé non nul, est entachée d'une erreur , produira une erreur relative théorique sur la solution Modèle:Math majorée par

.

Cas où la matrice varie

Si la matrice Modèle:Math subit une modification de , on dispose d'une majoration de l'erreur par rapport au calcul avec la matrice exacte Modèle:Math donnée par

.

Un exemple de matrice mal conditionnée

Soit la matrice

,

et le vecteur

.

La résolution du système Modèle:Math donne

.


Si on substitue au second membre Modèle:Math le second membre perturbé

,

la solution Modèle:Math correspondante sera

Les erreurs relatives de Modèle:Math et Modèle:Math sont respectivement de 0,004 et 3,4108 ce qui représente une multiplication par environ 860 de l'erreur relative. Ce nombre est du même ordre que le conditionnement de la matrice Modèle:Math qui est de 1 425 (le conditionnement est pris relativement à la norme matricielle induite par la norme euclidienne sur ).

Annexes

Note

Modèle:Références

Articles connexes

Modèle:Portail

  1. F. Kwok - Analyse Numérique (Université de Genève)
  2. Modèle:Ouvrage
  3. Modèle:Ouvrage
  4. Modèle:Lien web
  5. C'est par exemple le choix du logiciel Scilab des versions 5.3 à 6.0, voir Modèle:Lien web et Modèle:Lien web.