Чисельні методиЧисельні ме́тоди, або Числові методи[1][2] (також числови́й ана́ліз) — методи наближеного або точного розв'язування задач чистої або прикладної математики, які ґрунтуються на побудові послідовності дій над скінченною множиною чи́сел. Дана наука вивчає алгоритми, які застосовують числову апроксимацію (на відміну від загальних символьних обчислень) для розв'язування задач математичного аналізу (чим відрізняється від дискретної математики). Основні вимоги до числових методів, щоб вони були стійкими та збіжними. Класи задач, що розв'язують за допомогою числових методівЗа допомогою чисельних методів можливо розв'язати багато різних класів задач, які є під-дисциплінами цієї області. Деякими з них є :
Розрахунок значень функцій
Однією із найпростіших задач є розрахунок значення функції в заданій точці. Найбільш прямолінійний підхід — просто підставити значення в формулу — може бути не найефективнішим способом. Для поліномів краще використовувати схему Горнера, позаяк вона дозволяє зменшити необхідну кількість операцій множення і додавання. Як правило, важливо враховувати і контролювати похибку округлення, яка виникає при виконанні арифметики чисел із рухомою комою. Інтерполяція, екстраполяція і регресіяІнтерполяція вирішує наступну задачу: дані значення деякої невідомої функції у вигляді набору точок, яке значення матиме функція в деякій іншій точці, між цими даними точками? Екстраполяція дуже подібна до інтерполяції, але необхідно знайти значення невідомої функції у точці, що заходиться за межами даних точок. Регресія також подібна до попередніх методів, але враховує те, що дані можуть бути не точними. Дані деякі точки, і вимірювання значень деякої функції в цих точках (що містять похибку), необхідно встановити невідому функцію. Популярним методом вирішення цієї задачі є метод найменших квадратів. Розв'язання рівнянь і систем рівняньІншою фундаментальною задачею є розрахунок рішення для даного рівняння. Як правило виділяють два випадки, в залежності від того чи є рівняння лінійним чи ні. Наприклад, рівняння є лінійним рівнянням, а не є таким. Багато зусиль було покладено на розробку методів для вирішення систем лінійних рівнянь. До стандартних методів, які використовують розклад матриць відносяться Метод Гауса, LU-розклад матриці, Розклад Холецького для симетричних (або ермітових матриць) і додатньоозначених матриць, і QR-розклад матриці для не квадратних матриць. Ітеративні методи, такі як Метод Якобі, Метод Гауса — Зейделя, Метод релаксації і метод сполучених градієнтів як правило використовують для великих систем рівнянь. Загальні ітеративні методи можуть застосовувати розділення матриць. Методи розв'язання нелінійних рівнянь дозволяють вирішити нелінійні рівняння і знайти їх корені (такі аргументи при яких функція дорівнює нулю). Якщо функція диференційована і її похідна відома, тоді як правило використовують метод Ньютона. Іншою технікою, яку використовують для вирішення нелінійних рівнянь є лінеаризація. Вирішення задач власного чи сингулярного розкладуДекілька важливих задач можна сформулювати і розв'язати застосовуючи власний розклад або сингулярний розклад матриць. Наприклад, алгоритм стиснення спектральних зображень[3] оснований на сингулярному розкладі. В статистиці відповідний інструмент називається методом головних компонент. ОптимізаціяВідповідно до задачі оптимізації, необхідно знайти таку точку, в який функція приймає максимальне (або мінімальне) значення. Часто, ця точка також повинна задовольняти певним обмеженням. Далі область дослідження задач оптимізації розділяється на декілька напрямків, в залежності від форми цільової функції і заданих обмежень. Наприклад, лінійне програмування вирішує задачі в яких цільова функція і обмеження обидва є лінійними. Відомим методом із області лінійного програмування є симплекс-метод. Метод невизначених множників Лагранжа використовують для спрощення задач оптимізації із обмеженнями до задачі оптимізації без визначених обмежень. Числове визначення інтегралівЧисельне інтегрування, що в деяких контекстах також відоме як чисельна квадратура, визначає значення певного заданого інтеграла. У найпопулярніших методах використовують одну із формул Ньютона-Коте[en] (такі як правило середньої точки, правило Сімсона) або квадратури Гауса. Ці методи використовують стратегію за принципом «Розділяй та володарюй», відповідно до якої інтеграл по відносно великій множині значень розбивається на інтеграли по меншим областям. У випадках із більшою кількістю вимірів, коли ці методи стають непомірно неефективними з точки зору обчислюваних зусиль, використовують Метод Монте-Карло або методи Квазі-Монте Карло (див. Інтегрування Монте-Карло[en]). Диференціальні рівнянняЧисельні методи також використовуються для розрахунку (наближеного) розв'язку диференціальних рівнянь, як для звичайних диференціальних рівнянь, так і для диференціальних рівнянь із частинними похідними. Диференціальні рівняння із частинними похідними розв'язують шляхом дискретизації рівняння, що приводить їх до скінченномірного підпростору. Це можна здійснити за допомогою методу скінченних елементів, методу скінченних різниць, або методу скінченних об'ємів. Теоретичне обґрунтування цих методів часто використовують теореми функціонального аналізу. Ці методи зводять задачу до розв'язання алгебраїчних рівнянь. Історія розвиткуЧисельні методи використовувалися ще за часів Ньютона (1642—1727) для розв'язання задач з астрономії, геодезії та обчислення механічних конструкцій. На той час обчислення з використовуванням чисельних методів виконувалися з доволі високою точністю (до восьми знаків після коми). Наприклад, французький математик і астроном Урбен Левер'є(1811 — 1878 рр.), уточнюючи траєкторію руху планети Уран, виявив відхилення від розрахованої траєкторії. Він припустив, що ці відхилення спричиняє інша планета, яка до того не спостерігалась астрономами. Використовуючи чисельні методи, він за півроку обчислив масу і орбіту невідомої планети, що справляє дію на Уран і виводить планету із рівноваги. Один примірник своїх розрахунків Левер'є відразу ж послав Йогану Галле з Берлінської обсерваторії, який отримавши лист 23 вересня 1846 року, негайно почав спостереження і в ту ж ніч дуже близько від місця, вказаного Левер'є, знайшов невідому планету, яку пізніше назвали Нептуном. Основні види числових методів
Статистична обробка експериментальних даних зазвичай ґрунтується на граничних теоремах теорії ймовірностей та вимагає обчислення оцінок в порівнянні з простими формулами. Однак для підвищення якості оцінок необхідна велика кількість даних, і обсяг обчислень може виявитися дуже великим. Тому чисельні методи тут націлені на скорочення обсягу обчислень при збереженні якості результатів. Найефективнішими числовими методами в цій галузі є методи, які застосовують швидке перетворення Фур'є. Для розв'язання задач апроксимації та обчислення функцій різних класів застосовують чисельні методи інтерполювання, найменших квадратів, ортогоналізації, врівноваження значень, умовної мінімізації та ін. Найактуальнішими є методи кусково-многочленної та раціональної сплайнової апроксимації, а також адаптивної апроксимації та нелінійної за параметром апроксимації. Числове інтегрування та диференціювання здійснюється на основі означення відповідних операцій, однак через необхідність економії обсягу обчислень та некоректність задачі диференціювання розроблено велику кількість чисельних методів для різних класів функцій та різного роду вихідних даних. Основою числових методів розв'язання багатьох класів рівнянь є дискретизація задачі з наступним зведенням отриманих, загалом кажучи, нелінійних рівнянь до послідовності систем алгебраїчних рівнянь. У зв'язку з цим чисельні методи можна поділити за способом дискретизації на проєкційні, скінченно-різницеві та проєкційно-різницеві, а за способом розв'язання лінійної системи — на прямі, ітераційні та комбіновані методи.
, де — номер ітерації (). Розв'язання різних класів рівнянь та багатьох інших задач зводиться до задач мінімізації функцій та функціоналів за наявності або відсутності обмежень. чисельні методи розв'язання задач мінімізації випливають із різних ідей швидкого спуску поверхнею, яка відповідає мінімізованій функції. До них належать методи швидкого спуску, градієнтного, загального градієнтного та найшвидшого спуску, методів можливих та спряжених напрямів і т. д. Характеристики числових методівДля оцінки числових методів, вводять такі їх основні характеристики[джерело?]:
ТрудомісткістьТрудомісткість методу оцінюється кількістю та якістю обчислень[джерело?], необхідних для досягнення достатньо близького наближення розв'язку задачі. Порядок методуПорядок методу — вимоги до знань про функції, що входять у математичне формулювання задачі (наприклад, використання в методі похідних цих функцій):
Збіжність методуЧисловий метод називається таким, що збігається, якщо наближення прямує до розв'язку зі збільшенням . Основні швидкості збіжності методів: 1. Лінійна збіжність. Послідовність збігається до розв'язку лінійно (або із швидкістю геометричної прогресії), якщо існують числа і такі, що
Тут норма означає відстань між і . 2. Надлінійна збіжність. Послідовність збігається до розв'язку надлінійно, якщо існує послідовність для всіх , така, що
3. Квадратична збіжність. Послідовність збігається до розв'язку квадратично, якщо існують числа і такі, що
Стійкі та збіжні чисельні методиЧисельні методи називаються стійкими, якщо результати неперервно залежать від вихідних даних задачі або якщо похибка округлення, пов'язана з реалізацією чисельних методів на ЕОМ, залишається обмеженою при заданих межах зміни параметрів. Чисельні методи називаються збіжними, якщо результати прямують до точного розв'язку задачі при прямуванні параметрів чисельних методів до певних граничних значень. Основне питання теорії числових методів: створення методів, які задовольняють вимоги високої точності, стійкості та економічності. Розробка чисельних методів, що задовольняють ці вимоги, є складною задачею оптимізації цих методів. Стійкість до похибок обчисленьСтійкість до похибок обчислень характеризує чисельний метод, застосування якого приводить до розв'язку задачі, незважаючи на помилки округлень і обчислень. Для цього в чисельних методах, якщо потрібно, передбачаються додаткові операції, що не змінюють суть методу, але забезпечують його стійкість до помилок обчислень. Стійкість до похибок вихідних данихСтійкість до похибок вихідних даних — характеристика чисельного методу[джерело?][сумнівно ], що при невеликих похибках вихідних даних забезпечує отримання наближеного розв'язку задачі з незначною похибкою. Стійкість до похибок вихідних даних досягається, як правило, шляхом модифікації чисельного методу, тобто внесенням змін до суті методу. Утворення та поширення похибокВивчення природи помилок є важливою частиною числових методів. Існує декілька основних шляхів, через які можуть виникати помилки при вирішені задач. ОкругленняПохибка округлення виникає через неможливість точно представити всі дійсні числа в машинах із обмеженою пам'яттю (що стосується практично усіх цифрових комп'ютерів). Помилка відсікання та дискретизаціїПохибка відсікання[en] виникає коли ітеративний метод завершує свій розрахунок або математична процедура є наближеною, і наближене рішення відрізняється від точного рішення. Аналогічним чином, процедура дискретизації вносить похибку дискретизації, оскільки рішення дискретної задачі не співпадатиме точно із рішенням неперервної задачі. Наприклад, якщо ми розрахуємо рішення рівняння ітеративним способом, то після 10 ітерацій ми матимемо рішення, що корінь дорівнюватиме близько 1,99 (наприклад). Таким чином похибка відсікання становить 0,01. Як тільки була отримана похибка, вона як правило буде поширюватися на усі наступні розрахунки. Наприклад, ми вже відмічали що виконання операції + на калькуляторі (або комп'ютері) не буде точною. Звідси випливає, що виконання розрахунку виду буде ще більш неточним. Що означає, коли говорять що похибка відсікання виникає у разі коли математична процедура є наближеною? Ми знаємо, що при точному інтегруванні функції необхідно знайти суму нескінченної кількості трапецій. Але на практиці можливо розрахувати суму тільки скінченної кількості трапецій, і таким чином застосувати наближену математичну процедуру. Аналогічно, при диференціюванні функції, елемент диференціювання наближається до нуля, але на практиці ми можемо застосувати лише обмежене значення величини елементу диференціювання. Числова стійкість і добре обумовлені задачіЧислова стійкість є важливим поняттям в числових методах. Алгоритм називають чисельно стабільним якщо похибка, якою б не була її причина, не зростає в більшу сторону під час розрахунків. Це відбувається коли задача є добре обумовленою, що означає, що при невеликій зміні значень вхідних даних, рішення також змінюється на невелике значення. На противагу цьому, задача буде погано обумовленою, якщо будь-яка невелика похибка в даних буде приводити до великого зростання помилки. Погано або добре обумовленими можуть бути як початкова задача, що вирішується, так і алгоритм що застосовується для її вирішення. Таким чином алгоритм який вирішує добре обумовлену задачу може бути або чисельно стійким або нестійким. Задачею числового аналізу є знайти стійкий алгоритм вирішення добре обумовленої математичної задачі. Наприклад, розрахунок квадратного кореня числа 2 (наближене значення якого становить 1.41421) це добре обумовлена задача. Більшість алгоритмів вирішують цю задачу починаючи із початкового наближеного значення x0 для , наприклад x0 = 1.4, і потім розраховують покращені оцінки x1, x2, і так далі. Одним із відомих методів є Вавилонський метод[en], який задається як послідовність розрахунків xk+1 = xk/2 + 1/xk. Інший метод, назвемо його Метод X, виглядатиме як xk+1 = (xk2 − 2)2 + xk. (Це метод простої ітерації для розв'язання рівняння , рішенням якого є . Ітеративний метод завжди збігається до правого кореня, оскільки . Оскільки збігається, а є розбіжним.) Розрахуємо декілька ітерацій за цими методами, вони наведені у таблиці, при чому початковими значеннями x0 = 1.4 і x0 = 1.42.
Зауважте, що Вавилонський метод наближається до рішення дуже швидко завдяки вибраному початковому значенню, в той час як Метод X наближається дуже повільно при початковому значенні в x0 = 1.4 і є розбіжним при початковому значенні x0 = 1.42. Оскільки Вавилонський метод є розрахунково стійким, в той час як Метод X є розрахунково не стійким. Див. такожПримітки
Посилання
Література
|