Votre question concerne le modèle de vérification. Vous pouvez trouver de nombreuses ressources sur les méthodes et les normes en recherchant Vérification et validation ( Roache 1997 , 2002 , 2004 , Oberkampf et Trucano 2002 , Salari et Knupp 2000 , Babuska et Oden 2004 ), ainsi que le thème plus général de la quantification de l’ incertitude . Plutôt que de développer des méthodes, je voudrais mettre en évidence une communauté qui a pris une position ferme sur la question.
En 1986, Roache, Ghia et White ont établi la déclaration de politique éditoriale du Journal of Fluids Engineering sur le contrôle de la précision numérique qui s'ouvre par
Un problème professionnel existe dans la communauté de la dynamique des fluides computationnelle ainsi que dans le domaine plus large de la physique computationnelle. À savoir, il existe un besoin de normes plus élevées sur le contrôle de la précision numérique.
[...] Le problème n’est certainement pas propre à la JFE et a été encore plus souligné lors de la Conférence AFOSRHTTM-Stanford de 1980-1981 sur les écoulements complexes turbulents. Le comité d’évaluation de cette conférence a conclu que, dans la plupart des communications soumises à cette conférence, il était impossible d’évaluer et de comparer la précision de différents modèles de turbulence, car on ne pouvait pas distinguer les erreurs de modélisation physiques des erreurs numériques liées à l’algorithme et la grille. C'est particulièrement le cas pour les méthodes précises du premier ordre et les méthodes hybrides.
Ils concluent avec des directives très directes:
Le Journal of Fluids Engineering n'acceptera pas de publication tout article présentant la solution numérique d'un problème d'ingénierie des fluides qui n'aborde pas la tâche du test systématique des erreurs de troncature et de l'estimation de la précision.
[...] nous devons préciser qu'un seul calcul dans un réseau fixe ne sera pas acceptable , car il est impossible de déduire une estimation de la précision à partir d'un tel calcul. En outre, les éditeurs ne considéreront pas qu'un accord raisonnable avec des données expérimentales constitue une preuve suffisante de la précision, en particulier si des paramètres ajustables sont impliqués, comme dans la modélisation de la turbulence.
La version actuelle contient un ensemble complet de critères et représente un standard auquel, à mon avis, d’autres domaines doivent aspirer. Il est honteux que, même aujourd’hui, la prise de conscience de l’importance de la vérification des modèles soit absente dans de nombreux domaines.
De telles normes n'existent pas, car des estimations d'erreur fiables coûtent souvent beaucoup plus cher que les calculs approximatifs.
Il existe essentiellement quatre types d'estimations d'erreur:
(i) Analyses théoriques prouvant qu'une méthode numérique est numériquement stable. Cela ne donne pas vraiment une barre d'erreur car l'analyse garantit uniquement que l'erreur commise n'est pas pire qu'une erreur quantifiée dans les arguments d'entrée. Cela suffit pour la plupart des calculs scientifiques, car les entrées sont également approximatives, de sorte que l'erreur commise avec une méthode numériquement stable n'est pas pire que d'avoir utilisé une entrée légèrement différente (mais inconnue). Les méthodes numériques les plus réputées sont accompagnées d'une analyse numérique stable, bien que l'on ne trouve pratiquement aucune implémentation qui rend compte sur demande de la soi-disant erreur rétrograde résultante.
(ii) Estimation de l'erreur asymptotique. Celles-ci supposent que les produits de toutes les erreurs (les erreurs de saisie, les erreurs d'arrondi ou de discrétisation étant les sources les plus courantes) peuvent être négligés (discutable si les fonctions sont très non linéaires), et utilisent une analyse de sensibilité pour propager les erreurs de saisie. Associée à une analyse de stabilité numérique, elle permet également de saisir l’effet des erreurs d’arrondi ou de discrétisation. Les barres d'erreur résultantes sont aussi réaliables que la validité des hypothèses sur lesquelles elles sont basées. À l'aide d'outils de différenciation automatique, le coût de l'estimation de l'erreur est généralement 1 ou 2, en plus du coût de l'approximation. Ainsi, ce type d’estimation d’erreur est assez fréquent dans la pratique.
[Éditer] Par exemple, le théorème de Oettli-Prager donne des estimations d'erreur rétrocédent facilement calculables pour la solution de systèmes linéaires. L'analyse de sensibilité indique que ces erreurs doivent être multipliées par la norme de l'inverse de la matrice, qui peut être estimée à l'aide de l'estimateur de Hager (intégré dans les estimateurs modernes du nombre de conditions).
(iii) Analyse d'erreur stochastique: (CESTAC, http://www.sciencedirect.com/science/article/pii/0378475488900705) Ceci est effectué en surchargeant toutes les opérations avec une variante stochastique correspondante qui évalue trois jeux d'arguments et ajoute ensuite une erreur artificielle d'arrondi aléatoire. Les trois derniers résultats servent à calculer une moyenne et un écart-type à la racine carrée de (somme des carrés des écarts par rapport à la moyenne divisée par 2 = 3-1). Cela donne une estimation assez utile de la précision de la partie erreur d’arrondi. Cela ne tient cependant pas compte de l'erreur de discrétisation, qui est généralement l'erreur dominante dans les calculs ODE et PDE. Le coût dépend du langage de programmation en raison de la surcharge liée à l'exécution d'opérations surchargées. En supposant (ce qui n’est presque jamais le cas) que la surcharge n’entraîne aucune pénalité temporelle, le coût du résultat et de l’erreur estimée est un facteur de 3 par rapport au calcul de l’approximation uniquement.
(iv) Analyse par intervalles: ceci donne des limites rigoureuses pour toutes les sources d'erreur si cela est fait correctement, mais, sauf dans des cas simples, une longue expérience (ou un logiciel l'incarnant) est nécessaire pour le faire de manière à ce que les limites ne surestiment pas sérieusement les erreurs vraies. . Un bon logiciel d'intervalle est disponible, entre autres, pour l'algèbre linéaire (par exemple, IntLab http://www.ti3.tu-harburg.de/rump/intlab/ ; coût un facteur d'environ 6 si la dimension est grande) et l'optimisation globale (par exemple , COCONUT http://www.mat.univie.ac.at/~coconut/coconut-environment/; peut être beaucoup plus cher ou même être moins cher que l'optimisation globale approximative, en fonction des caractéristiques du problème). Mais de nombreuses autres catégories de problèmes faciles à traiter avec précision (par exemple, en englobant les trajectoires des grandes planètes du système solaire sur 10 ans) sont complètement hors de portée pour la génération actuelle de méthodes à intervalles.
la source
Sorte de. Les analystes numériques ont déduit des marges d'erreur théoriques qui sont généralement surestimées et qui risquent de ne pas être aussi utiles dans la pratique car elles peuvent impliquer des informations difficiles à obtenir pour des problèmes concrets. Un bon exemple serait les limites des erreurs numériques dans la solution des équations ordinaires, que vous pouvez trouver dans les livres de Hairer et Wanner. Le livre de Nick Higham, Exactitude et stabilité des algorithmes numériques (je peux être légèrement différent du titre), fournit également des limites d'erreur sur les opérations numériques courantes et les algorithmes d'algèbre linéaire. La littérature d'analyse numérique est en proie à de telles limites.
Des méthodes d'analyse par intervalles ont également été utilisées pour calculer les limites d'erreur; ces méthodes sont rigoureuses et tendent à fournir des limites d'erreur plus fortes que les limites d'erreur théoriques, mais elles peuvent toujours surestimer de manière flagrante l'erreur dans un calcul numérique. Ces méthodes ont été mieux exploitées (à ma connaissance) dans l'optimisation globale, mais trouvent également une utilisation dans la quantification de l'incertitude. Arnold Neumaier a écrit au moins un livre sur les méthodes d'analyse par intervalles et est mieux qualifié pour commenter ce sujet en détail. Outre les problèmes de surestimation potentiels, les méthodes d'analyse par intervalles souffrent de la nécessité de disposer d'une infrastructure informatique supplémentaire qui nécessite la mise à niveau de logiciels de simulation numérique volumineux existants (tels que PETSc, Trilinos, CLAWPACK / PyClaw, etc.). ) pour inclure l’arithmétique des intervalles et la différenciation automatique (pour les méthodes basées sur Taylor). D'après ce que j'ai vu, il n'y a pas beaucoup de formules d'arithmétique par intervalles et de différenciation automatique autorisées par licence, bien qu'il y en ait. Même alors, parfois, ces bibliothèques ont une fonctionnalité limitée; Il a été difficile de trouver une bibliothèque arithmétique par intervalles avec licence permissive (LGPL ou BSD) avec une fonctionnalité similaire à BLAS.
Des estimations d'erreur a posteriori peuvent être obtenues plus facilement, mais ne sont pas rigoureuses. Je connais le mieux ces estimations tirées de travaux sur des équations différentielles ordinaires, mais elles existent également pour de nombreuses méthodes utilisées pour calculer des solutions d'équations aux dérivées partielles.
Plus généralement, les méthodes de quantification de l'incertitude, telles que l'utilisation d'expansions de chaos polynomiales, les méthodes de Monte Carlo ou d'autres méthodes d'échantillonnage peuvent être utilisées pour quantifier l'incertitude dans les calculs en raison de variations des paramètres d'entrée. Ces méthodes devraient pouvoir fournir une sorte de "barre d'erreur" heuristique en raison de variations dans les paramètres, mais ne donneront pas de limites rigoureuses.
Je pense que vous avez parfaitement raison en ce qui concerne la spécification des erreurs numériques: la science informatique devrait être tout aussi rigoureuse en ce qui concerne la présentation des résultats que les sciences physiques expérimentales. De nombreux travaux sont en cours dans ce domaine (sous les termes génériques de "quantification de l'incertitude" et "analyse numérique"), et j'espère que des barres d'erreur seront incluses lors de la discussion de la plupart des résultats de calcul à l'avenir. .
la source
Outre les autres réponses, quelques points supplémentaires doivent être pris en compte.
la source