Наукові стандарти числових помилок


40

У моєму дослідженні специфікація експериментальних помилок є загальноприйнятою, а публікації, які їх не надають, піддаються сильній критиці. У той же час я часто виявляю, що результати чисельних обчислень надаються без будь-якого обліку числових помилок, хоча (а може й тому, що) часто виникають сумнівні чисельні методи. Я говорю про помилки, що виникають внаслідок дискретизації та обмеженої точності чисельних обчислень тощо. Безумовно, ці оцінки помилок не завжди легко отримати, як, наприклад, у випадку гідродинамічних рівнянь, але часто це здається результатом ліні, хоча я вірю що специфікація числових оцінок помилок повинна бути стандартною так само, як і для експериментальних результатів. Звідси моє запитання:

Відповіді:


26

У вашому запитанні є питання про підтвердження моделі. Ви можете знайти численні ресурси щодо методів та стандартів, шукаючи перевірку та перевірку ( Roache 1997 , 2002 , 2004 , Oberkampf & Trucano 2002 , Salari & Knupp 2000 , Babuska & Oden 2004 ), а також більш широку тему кількісного визначення невизначеності . Замість того, щоб детальніше розглянути методи, я хотів би виділити громаду, яка зайняла тверду позицію з цього питання.

У 1986 р. Роаш, Гія та Уайт створили редакційну політику журналу Fluids Engineering із заявою про контроль числової точності, яка відкривається з

Професійна проблема існує в спільноті динаміки обчислювальної рідини, а також у більш широкій області обчислювальної фізики. А саме, є необхідність у вищих стандартах щодо контролю числової точності.

[...] Проблема, безумовно, не характерна лише для JFE і набула ще гострішої уваги на конференції AFOSRHTTM-Стенфорд 1980-81 рр. Про складні турбулентні потоки. Висновок комітету з оцінки цієї конференції був висновком, що в більшості подань на цю конференцію неможливо оцінити та порівняти точність різних моделей турбулентності, оскільки не можна було відрізнити помилки фізичного моделювання від числових помилок, пов'язаних з алгоритмом та сітка. Особливо це стосується точних методів першого порядку та гібридних методів.

Вони закінчуються дуже прямими вказівками:

Журнал інженерії рідин не приймає до публікації жодну статтю, що повідомляє про чисельне рішення проблеми інженерії рідин, яка не може вирішити завдання систематичного тестування помилок усікання та оцінки точності.

[...] ми повинні дати зрозуміти, що єдиний обчислення у фіксованій сітці буде неприйнятним , оскільки неможливо зробити оцінку точності з такого обчислення. Крім того, редактори не вважатимуть розумною згоду з експериментальними даними достатнім доказом точності, особливо якщо задіяні будь-які регульовані параметри, як при моделюванні турбулентності.

Поточна версія містить повний набір критеріїв, є стандартом , який, на мій погляд, інші поля повинні прагнути відповідати. Соромно, що навіть сьогодні обізнаність про важливість перевірки моделі відсутня у багатьох сферах.


1
Заключний пункт про налаштовані параметри нагадує мені цитату Джона фон Ноймана: "За допомогою чотирьох параметрів я можу підігнати слона, і за допомогою п'яти я можу змусити його помахувати стволом".
Джед Браун

Це стосується лише ефекту помилки дискретизації, а не помилки округлення, які майже універсально ігноруються при моделюванні рідини, оскільки вони, як правило, менше сприяють загальній помилці. Але в додатках, що не включають диференціальних рівнянь чи інтегралів, помилки дискретизації не існує. У цих проблемах домінуючим джерелом помилок є помилки округлення та ітерація вкорочення.
Арнольд Ноймаєр

Як ви вважаєте, суворі позитивні оцінки могли б замінити вимогу незалежності сітки? Як зазначається, це трохи неясно, наскільки ви вдосконалюєте сітку для забезпечення незалежності? З іншого боку, хороший оцінювач після, який не повинен залишати місця для двозначності.
Reid.Atcheson

2
@ Reid.Atcheson "Yo dawg, я чув, що ти любиш оцінки помилок, тому я отримав тобі оцінку помилки для вашої оцінки помилок, щоб ви могли оцінити помилку у вашому ...", але, на жаль, практичні оцінки помилок, як правило, не суворі. найгірші межі. Наявні межі існують часто песимістично і покладаються на припущення, які не відповідають правилам більшості інженерних проблем. Навіть за допомогою найвищого оцінювача помилок потрібно переконатися, що він був реалізований правильно. У будь-якому випадку використовуйте оцінювач помилок, якщо він у вас є, але оцінка помилок не є окремою верифікацією.
Джед Браун

19

Таких стандартів не існує, оскільки надійні оцінки помилок часто коштують набагато дорожче, ніж приблизні розрахунки.

В основному існує чотири види оцінок помилок:

(i) Теоретичні аналізи, що підтверджують, що числовий метод є чисельно стійким. Це насправді не дає рядка помилок, оскільки аналіз лише гарантує, що зроблена помилка не гірша, ніж кількісна помилка у вхідних аргументах. Це достатньо для більшості наукових розрахунків, оскільки вхідні дані також є лише приблизними, тому помилка, допущена чисельно стабільним методом, не гірша, ніж використання трохи іншого (але невідомого) введення. Більшість високо оцінених числових методів супроводжується чисельним стабільним аналізом, хоча навряд чи знайдеться реалізація, яка повідомляє на запит результуючу так звану відсталу помилку.

(ii) Оцінки асимптотичних помилок. Вони припускають, що продуктами всіх помилок (помилки введення, помилки округлення або помилки дискретизації є найпоширенішими джерелами) можна знехтувати (сумнівно, якщо функції дуже нелінійні), і використовувати аналіз чутливості для поширення вхідних помилок. Разом з числовим аналізом стійкості це також може фіксувати ефект помилок округлення або помилок дискретизації. Отримані рядки помилок такі ж надійні, як і обґрунтованість припущень, на яких вони ґрунтуються. Використовуючи автоматичні інструменти диференціації, вартість оцінки помилок, як правило, є коефіцієнтом 1 або 2 на додаток до вартості наближення. Таким чином, така оцінка помилок є досить частою на практиці.

[Редагувати] Наприклад, теорема Еттлі-Прагера дає легко обчислювані відсталі помилки для рішення лінійних систем. Аналіз чутливості говорить про те, що ці помилки повинні бути помножені на норму зворотної матриці, яку можна оцінити, використовуючи оцінювач Хагера (вбудований в сучасні оцінки кількості умов).

(iii) Стохастичний аналіз помилок: (CESTAC, http://www.sciencedirect.com/science/article/pii/0378475488900705) Це робиться шляхом перевантаження всіх операцій відповідним стохастичним варіантом, який оцінює три набори аргументів і після цього додає штучну помилку випадкового округлення. заключні три результати використовуються для обчислення середнього та стандартного відхилень квадратного кореня (сума квадратів відхилень від середнього, розділеного на 2 = 3-1). Це дає досить корисну оцінку точності частини похибки округлення. Однак це не враховує помилки дискретизації, яка, як правило, є домінуючою помилкою в обчисленнях ODE та PDE. Вартість залежить від мови програмування через накладні витрати при виконанні перевантажених операцій. Якщо припустити (що майже ніколи не буває) перевантаження не несе штрафу в часі, витрати на результат плюс оцінка помилок - це коефіцієнт 3 порівняно з обчисленням лише наближення.

(iv) Інтервальний аналіз: це дає чіткі межі для всіх джерел помилок, якщо вони зроблені належним чином, але, за винятком простих випадків, він вимагає великого досвіду (або програмного забезпечення, яке його втілює), щоб зробити це таким чином, щоб межі не сильно переоцінювали справжні помилки . Серед лінійних алгебр серед інших доступне програмне забезпечення для інтервалу (наприклад, IntLab http://www.ti3.tu-harburg.de/rump/intlab/ ; коштує в 6 разів, якщо розмірність великий) та глобальної оптимізації (наприклад, , COCONUT http://www.mat.univie.ac.at/~coconut/coconut-environment/; може бути набагато дорожчим або навіть дешевшим, ніж приблизна глобальна оптимізація, залежно від проблемних особливостей). Але багато інших класів проблем, які легко піддаються лікуванню приблизно (наприклад, що охоплюють траєкторії великих планет Сонячної системи протягом 10 років), повністю недоступні для поточного покоління інтервальних методів.


Спасибі. Я хотів би бачити (ii) на роботі. Чи можете ви навести приклад, коли автори поєднують аналіз чутливості та чисельний аналіз стійкості для визначення глобальних оцінок помилок.
highsciguy

@highsciguy: дивіться мою редакцію на (ii)
Арнольд Ноймаєр

Спасибі. Якобійська матриця обернена?
highsciguy

@highsciguy: не розумію останнього запитання. Прикладом було розв’язування лінійної системи рівнянь, ніяких фігур Якобії.
Арнольд Ноймайер

1
Я не помітив лінійного. Тоді зрозуміло. Чи є спроби узагальнити теорему Еттлі-Прагера до нелінійних систем?
highsciguy

13

Типу. Існують теоретичні межі помилок, які були отримані чисельними аналітиками, які зазвичай завищені, і можуть бути не настільки корисними на практиці, оскільки вони можуть містити інформацію, яку важко отримати для проблем на практиці. Хорошим прикладом можуть бути межі числових помилок у рішенні звичайних рівнянь, які ви можете знайти у книгах Хайрера та Ваннера. Книга Ніка Хігема « Точність та стабільність чисельних алгоритмів (я, можливо, трохи відхиляюсь від назви») також дає деякі межі помилок у загальних числових операціях та алгоритмах лінійної алгебри. Література чисельного аналізу рясніє таким меж.

Методи інтервального аналізу також використовувались для обчислення меж помилок; ці методи є суворими і, як правило, забезпечують більш сильні межі помилок, ніж теоретичні межі помилок, але ці методи все ж можуть значно переоцінити помилку в числовому обчисленні. Ці методи були найкращим чином використані (наскільки мені відомо) в глобальній оптимізації, але також знаходять застосування у кількісному визначенні невизначеності. Арнольд Ноймаєр написав принаймні одну книгу про методи інтервального аналізу, і краще кваліфікуватися, щоб детально коментувати цю тему. Окрім потенційних проблем із завищенням, методи інтервального аналізу потребують додаткової обчислювальної інфраструктури, яка потребує переобладнання існуючих великих чисельних пакетів моделювання (таких як PETSc, Trilinos, CLAWPACK / PyClaw тощо). ) включити арифметичну інтервал та автоматичну диференціацію (для методів на основі Тейлора). З того, що я бачив, існує не так багато дозвільно ліцензованих пакетів арифметичних інтервалів та автоматичної диференціації, хоча їх є. Навіть тоді, іноді, ці бібліотеки мають обмежений функціонал; важко знайти дозвільну ліцензовану арифметичну бібліотеку (LGPL або BSD-подібну) інтервалу з функцією, подібною до BLAS.

Послідовні оцінки помилок можна отримати простіше, але не є суворими. Мені найбільше знайомі ці оцінки з роботи над звичайними диференціальними рівняннями, але вони також існують для багатьох методів, що використовуються для обчислення розв’язків часткових диференціальних рівнянь.

Більш широко, методи кількісного визначення невизначеності, такі як використання поліноміальних розробок хаосу, методи Монте-Карло чи інші методи вибірки, можуть бути використані для кількісної оцінки невизначеності в розрахунках через зміни вхідних параметрів. Ці методи повинні бути в змозі забезпечити якусь евристичну "смужку помилок" через зміни параметрів, але не дадуть жорстких меж.

Я вважаю, що ви абсолютно праві, коли йдеться про конкретизацію числових помилок: обчислювальна наука повинна настільки ж суворо ставитися до представлення її результатів як фізичних наук, заснованих на експериментах. У цій галузі проводиться велика робота (під парасольовими термінами "кількісна оцінка невизначеності" та "числовий аналіз"), і я сподіваюся, що рядки помилок будуть включені під час обговорення більшості обчислювальних результатів в якийсь момент майбутнього .


чи добре ви посилаєтесь на оглядову статтю щодо цих поліноміальних хаосних розширень? Я бачив, як термін спливає регулярно і хотів би дізнатися трохи більше про них. Спасибі.
GertVdE

2
Донбін Сіу зазвичай пише доступні документи про розширення поліноміального хаосу. Ось один із загальних оглядових документів, про які він написав: dam.brown.edu/scicomp/media/report_files/BrownSC-2003-07.pdf
Джефф Оксберрі

7

Окрім інших відповідей, є ще кілька додаткових моментів.

  1. Числові похибки дискретизації або хоча б порядок схем можна визначити аналітично. Обговорення цих помилок може бути пропущено з робіт, якщо вони використовують загальновідому схему.
  2. Дослідження решітки сітки, коли одна і та ж проблема, як правило, щось просте, виконується на прогресивно більш тонких сітках. Вони порівнюються з точним рішенням або розчином на смішно тонкій сітці, щоб знайти L-норму, як правило, L2. Нахил цієї оцінки помилок задає порядок точності.
  3. У випадках, коли доступні різні чисельні схеми, але уточнення сітки або точні рішення їх немає, інший метод, який називається Екстраполяція Річардсона, буде визначати умови помилок. Хороший огляд із описом цих методів можна знайти в цій роботі
  4. Нарешті, кожен журнал встановлює власні стандарти прийняття. Одні суворі, інші ні. Наприклад, AIAA виклала тут свої стандарти . Інші журнали мають аналогічну інформацію для авторів.

Я просто хочу прокоментувати пункт 2. Я відчуваю, що в чисельному вирішенні реальної проблеми світу набагато більше шансів побачити норму, яка порівнює різницю між двома послідовними уточненнями, а не з "смішно тонкою сіткою". Якщо ви можете вирішити дуже тонку сітку, чому ви турбуєтесь із значно грубішими?
Годрік Провид

Дослідження вдосконалення сітки, як правило, не стосуються реальних проблем. Ось де надходить точка 3, набагато простіше визначити межі помилок, змінивши порядок схеми, ніж поступово вдосконалити сітку. Наприклад, ми перевіряємо свої коди, використовуючи невидимий вихор, який все ще є нелінійним, але ми можемо виконувати дуже точні "точні" рішення для перевірки точності. Але на повному вигорі, ми практично не можемо цього зробити, тому ми використовуємо різні схеми.
tpg2114

Також зауважте, що уточнення сітки та перевірка різниці у відповіді показує незалежність сітки, що відрізняється від перевірки меж помилок. Доопрацювання сітки все ще потрібно навіть у практичних випадках, хоча доопрацювання сітки для чогось такого, як Big Eddy Simulations відкриває цілу іншу банку глистів.
tpg2114

Дякую, я невірно пов’язав незалежність сітки з межами помилок. Я думаю, я завжди вважав, що незалежність сітки передбачає якісний рівень гарантії на помилку дискретизації.
Годрік Провид

3
Незалежність сітки передбачає, що більш тонка сітка не покращить відповідь, але вона не говорить про те, наскільки точна ваша відповідь або наскільки швидке уточнення сітки покращило точність.
tpg2114
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.