Erreurs d'arrondi
Ce que le calcul en flottants fait aux résultats : erreurs absolue et relative, epsilon machine, absorption, annulation catastrophique, accumulation, comparaison avec tolérance, et la différence avec l'erreur de méthode.
- 26 cartes
- 5 thèmes
- Gratuit
Le programme, thème par thème
Le poids de chaque thème suit celui que lui donne l'examen.
- Notions
- Questions
- Ranger et relier
- Les chiffres
- Comprendre
Quelques cartes du deck
Erreur d'arrondi : de quoi s'agit-il ?
Voir la réponse
Écart entre un nombre réel et sa représentation dans le format fini de l'ordinateur, ou entre le résultat exact d'une opération et celui que la machine range.
Chaque opération peut ajouter une petite erreur relative (de l'ordre de 10⁻¹⁶ en double précision) ; c'est leur accumulation ou leur amplification qui fait des dégâts.
Qu'affiche ce programme ?
```python
s = 0.0
for _ in range(10):
s += 0.1
print(s == 1.0)
print(s)`Falsepuis0.9999999999999999Truepuis1.0, car dix fois 0.1 font 1Falsepuis1.0000000000000002, par excèsFalsepuis1.0, l'affichage arrondissant la valeur
Voir la réponse
Falsepuis0.99999999999999990.1 n'a pas d'écriture finie en binaire : chaque addition ajoute une petite erreur, et dix additions donnent 0.9999999999999999. print affiche assez de chiffres pour distinguer ce nombre de 1.0.
Quand on ajoute un très petit nombre à un très grand, le petit peut disparaître : c'est l'…. En double précision, 1e16 + 1 donne ….
Voir la réponse
Quand on ajoute un très petit nombre à un très grand, le petit peut disparaître : c'est l'absorption. En double précision, 1e16 + 1 donne 1e16.
Autour de 1e16, deux flottants consécutifs sont distants de 2 : 1e16 + 1 tombe entre deux flottants et est arrondi à 1e16. D'où 1e16 + 1 − 1e16 = 0.0, alors que 1e16 − 1e16 + 1 = 1.0.
Erreur relative : de quoi s'agit-il ?
Voir la réponse
Erreur absolue divisée par la valeur exacte, en valeur absolue : |x̃ − x|/|x|, souvent exprimée en pourcentage.
Un millimètre d'erreur n'a pas le même poids sur 10 mm et sur 10 km. L'erreur relative mesure la précision, l'erreur absolue seulement l'écart.