21/01/2010
Erreur absolue, relative et propagation des erreurs
suivant: Types composés. monter: Les réels précédent: Erreurs Index
Erreur absolue, relative et propagation des erreurs.
On a vu précédemment que pour représenter un réel, on devait l'arrondir, ce qui introduit une erreur même si le réel est connu exactement (par exemple 1/10). Voyons comment se propagent les erreurs dans les opérations arithmétiques de base : on distingue l'addition, la multiplication et l'inversion. La soustraction se ramène à l'addition car le calcul de l'opposé n'introduit aucune erreur nouvelle. Pour l'addition, si |x - x0| et si | y - y0| alors par l'inégalité triangulaire ( | a + b| | a| + | b|), on a :
on dit que les erreurs absolues s'additionnent.
Mais comme il faut représenter x0 + y0 en machine, on doit ajouter une erreur d'arrondi, qui est proportionnelle à la valeur absolue de x0 + y0 d'où la notion d'erreur relative :
Remarquons au passage que les erreurs de mesure expérimentales sont pratiquement toujours des erreurs relatives.
Donc lorsqu'on effectue une addition (ou une soustraction) de deux réels sur machine, on doit additionner les deux erreurs absolues sur les opérandes et ajouter une erreur d'arrondi (relative de 2-53, à titre d'exercice, on pourra vérifier que cette erreur d'arrondi est majorée par l'erreur absolue de la somme x + y dès l'instant où x et y ont eux-même une erreur d'arrondi).
Lorsqu'on effectue une multiplication de deux nombres x, y dont les représentants x0, y0 sont non nuls, on a
l'erreur relative est donc la somme des erreurs relatives et du produit des erreurs relatives (on peut souvent négliger le produit devant la somme). Il faut aussi y ajouter une erreur relative d'arrondi de 2-53 surx0y0.
On observe que la multiplication est une opération posant moins de problèmes que l'addition, car on manipule toujours des erreurs relatives, par exemple si l'erreur relative sur deux doubles x et y non nuls est de 2-53, alors l'erreur relative sur xy sera de
Lorsque l'erreur relative sur les données est grande devant 2-53, l'erreur relative d'arrondi final est négligeable, on peut alors dire que les erreurs relatives s'additionnent pour un produit (c'est aussi vrai pour un quotient: exercice!). Par contre, si on additionne deux nombres dont le représentant de la somme est proche de 0, la somme des erreurs absolues peut devenir non négligeable par rapport à la somme des représentants, entrainant une erreur relative très grande. Par exemple si x est représenté par x0 = 1 + 2-52 avec une erreur d'arrondi de 2-53 et y par y0 = - 1 avec la même erreur d'arrondi, l'addition de x et yrenvoie 2-52 avec une erreur absolue de 2*2-53 (ici il n'y a pas d'arrondi lorsqu'on fait la somme). C'est une erreur relative de 1 (qui domine largement l'erreur d'arrondi) ce qui signifie que dans la mantisse, seul le premier bit sur les 52 a un sens, la perte de précision est très grande.
Une autre conséquence importante est que l'addition de réels sur machine n'est pas une opération associative, par exemple
alors que
Si on a plusieurs termes à additionner, il faut commencer par additionner entre eux les termes les plus petits, pour que les petits termes ne soient pas absorbés un à un dans les erreurs d'arrondi (les petits ruisseaux font les grands fleuves).
Exercice : pour calculer la valeur numérique d'une dérivée de fonction, il vaut mieux calculer (f (x + h) - f (x - h))/(2h) que (f (x + h) - f (x))/h. Attention à ne pas prendre h trop petit, sinon x + h = x.
Remarquons néanmoins que les erreurs calculées ici sont des majorations des erreurs réelles (ou si on préfère l'erreur obtenue dans le pire des cas), statistiquement les erreurs sur les résultats sont moindres. Il est d'ailleurs souvent trop difficile de calculer la majoration rigoureuse de l'erreur pour des calculs complexes. Lorsqu'on doute de la précision d'un calcul, un test peu couteux consiste à refaire ce calcul en utilisant des flottants en précision plus grande et tester si le résultat varie en fonction du nombre de chiffres significatifs utilisés. On peut aussi faire varier légèrement les données et observer la sensibilité du résultat. Si on veut travailler en toute rigueur sans pour autant calculer les erreurs à priori, il faut utiliser un logiciel utilisant des intervalles pour représenter les réels (par exemple la bibliothèque C MPFI).
suivant: Types composés. monter: Les réels précédent: Erreurs Index Retour à la page principale de mat249 Source : http://www-fourier.ujf-grenoble.fr/~parisse/mat249/mat249...
11:08 Publié dans Erreur absolue, relative et propagation des erreur | Lien permanent | Commentaires (0) | Tags : erreur absolue, relative et propagation des erreurshttp:www-fourier.ujf-grenoble | | del.icio.us | | Digg | Facebook