4. Комп'ютерний аналіз даних і дослідження функцій.
2.1. Інтерполяція. Визначення. Способи інтерполяції. Лінійна інтерполяція. Метод HYPERLINK "http://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BD%D0%B5%D1%87%D0%BD%D1%8B%D0%B5_%D1%80%D0%B0%D0%B7%D0%BD%D0%BE%D1%81%D1%82%D0%B8" \o "Конечные разности" кінцевих різниць. Аналітична машина Чарльза Беббіджа. Апроксимація і екстраполяція. Інтерполяційні формули Ньютона. Інтерполяційна формула Лагранжа. Тригонометрична інтерполяція. – 6 год.
Математичне моделювання процесів і явищ є невід'ємною частиною досліджень в різних областях науки і техніки. Складні обчислювальні завдання, що виникають при дослідженні фізичних і технічних проблем, можна розбити на ряд елементарних - таких як обчислення інтегралів, вирішення диференціальних рівнянь і так далі Нами будуть розглянуті різні методи інтерполяції функцій, знаходження мінімуму функцій багатьох змінних, а також різноманітні методи чисельної інтеграції.
2.1. Інтерполяція.
Інтерполяція (від HYPERLINK "http://uk.wikipedia.org/wiki/%D0%9B%D0%B0%D1%82%D0%B8%D0%BD%D1%81%D1%8C%D0%BA%D0%B0_%D0%BC%D0%BE%D0%B2%D0%B0" \o "Латинська мова" лат. interpolatio — перетворення — HYPERLINK "http://uk.wikipedia.org/wiki/%D0%A2%D0%B5%D1%80%D0%BC%D1%96%D0%BD" \o "Термін" термін, що вживається в HYPERLINK "http://uk.wikipedia.org/wiki/%D0%9C%D0%B0%D1%82%D0%B5%D0%BC%D0%B0%D1%82%D0%B8%D0%BA%D0%B0" \o "Математика" математиці — HYPERLINK "http://uk.wikipedia.org/w/index.php?title=%D0%A1%D0%BF%D0%BE%D1%81%D1%96%D0%B1&action=edit&redlink=1" \o "Спосіб (ще не написана)" спосіб, за допомогою якого за таблицею, що містить деякі числові дані, можна знайти проміжні результати, яких нема безпосередньо в таблиці.
Наприклад, визначення функції f(X) для аргументів X, які знаходяться між значеннями INCLUDEPICTURE "http://upload.wikimedia.org/math/e/a/1/ea1d87f8d5de9aa072bea1e48d07184b.png" \* MERGEFORMATINET , за відомими значеннями f(Xi).
Якщо X лежить зовні HYPERLINK "http://uk.wikipedia.org/wiki/%D0%86%D0%BD%D1%82%D0%B5%D1%80%D0%B2%D0%B0%D0%BB" \o "Інтервал" інтервалу [X0,Xn], аналогічна процедура називається HYPERLINK "http://uk.wikipedia.org/wiki/%D0%95%D0%BA%D1%81%D1%82%D1%80%D0%B0%D0%BF%D0%BE%D0%BB%D1%8F%D1%86%D1%96%D1%8F" \o "Екстраполяція" екстраполяцією. Найпростішою є HYPERLINK "http://uk.wikipedia.org/wiki/%D0%9B%D1%96%D0%BD%D1%96%D0%B9%D0%BD%D0%B0_%D1%96%D0%BD%D1%82%D0%B5%D1%80%D0%BF%D0%BE%D0%BB%D1%8F%D1%86%D1%96%D1%8F" \o "Лінійна інтерполяція" лінійна інтерполяція, при якій приріст функції вважають пропорційним приросту HYPERLINK "http://uk.wikipedia.org/wiki/%D0%90%D1%80%D0%B3%D1%83%D0%BC%D0%B5%D0%BD%D1%82" \o "Аргумент" аргументу.
Визначення інтерполяції
Нехай маємо n значень xі, кожному з якого відповідає своє значення yі. Потрібно знайти таку функцію F, що:
INCLUDEPICTURE "http://upload.wikimedia.org/math/3/8/6/38615bcf96d745835a25cf8e26915219.png" \* MERGEFORMATINET
При цьому:
хі називають вузлами інтерполяції
пари (xі, yі) називають точками даних чи базовими точками
різницю між «сусідніми» значеннями xі-xі-1 — кроком
функцію F (x) — функцією, що інтерполює чи інтерполянтом.
Приклад
Нехай маємо табличну функцію, що для кількох значень х визначає відповідні значення f.
Рис. 1. Задані точки (з приведеної таблиці) в HYPERLINK "http://uk.wikipedia.org/wiki/%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0_%D0%BA%D0%BE%D0%BE%D1%80%D0%B4%D0%B8%D0%BD%D0%B0%D1%82" \o "Система координат" декартовій системі координат.
Інтерполяція дозволяє дізнатися яке значення може мати функція в точці, відмінній від зазначених, наприклад, при х = 2,5.
Способи інтерполяції
Існує багато різних способів інтерполяції. Вибір найбільш придатного HYPERLINK "http://uk.wikipedia.org/wiki/%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC" \o "Алгоритм" алгоритму залежить від відповідей на питання: наскільки точний обраний метод, які затрати на його використання, наскільки гладкою є інтерполяційна функція, яку кількість точок даних вона вимагає і т.д.
1) Інтерполяція функції однієї змінної
HYPERLINK "http://uk.wikipedia.org/wiki/%D0%9B%D1%96%D0%BD%D1%96%D0%B9%D0%BD%D0%B0_%D1%96%D0%BD%D1%82%D0%B5%D1%80%D0%BF%D0%BE%D0%BB%D1%8F%D1%86%D1%96%D1%8F" \o "Лінійна інтерполяція" Лінійна інтерполяція
HYPERLINK "http://uk.wikipedia.org/w/index.php?title=%D0%9C%D0%B5%D1%82%D0%BE%D0%B4_%D1%81%D0%BA%D1%96%D0%BD%D1%87%D0%B5%D0%BD%D0%BD%D0%B8%D1%85_%D1%80%D1%96%D0%B7%D0%BD%D0%B8%D1%86%D1%8C&action=edit&redlink=1" \o "Метод скінченних різниць (ще не написана)" Метод кінцевих різниць
HYPERLINK "http://uk.wikipedia.org/w/index.php?title=%D0%9F%D0%BE%D0%BB%D1%96%D0%BD%D0%BE%D0%BC_%D0%9B%D0%B0%D0%B3%D1%80%D0%B0%D0%BD%D0%B6%D0%B0&action=edit&redlink=1" \o "Поліном Лагранжа (ще не написана)" Поліном Лагранжа (інтерполяційний поліном)
HYPERLINK "http://uk.wikipedia.org/wiki/%D0%A1%D0%BF%D0%BB%D0%B0%D0%B9%D0%BD" \o "Сплайн" Сплайн-функція
2) Зворотна інтерполяція (обчислення x при заданому y)
HYPERLINK "http://uk.wikipedia.org/w/index.php?title=%D0%9F%D0%BE%D0%BB%D1%96%D0%BD%D0%BE%D0%BC_%D0%9B%D0%B0%D0%B3%D1%80%D0%B0%D0%BD%D0%B6%D0%B0&action=edit&redlink=1" \o "Поліном Лагранжа (ще не написана)" Поліном Лагранжа
HYPERLINK "http://uk.wikipedia.org/w/index.php?title=%D0%97%D0%B2%D0%BE%D1%80%D0%BE%D1%82%D0%BD%D0%B0_%D1%96%D0%BD%D1%82%D0%B5%D1%80%D0%BF%D0%BE%D0%BB%D1%8F%D1%86%D1%96%D1%8F_%D0%BF%D0%BE_%D1%84%D0%BE%D1%80%D0%BC%D1%83%D0%BB%D1%96_%D0%9D%D1%8C%D1%8E%D1%82%D0%BE%D0%BD%D0%B0&action=edit&redlink=1" \o "Зворотна інтерполяція по формулі Ньютона (ще не написана)" Зворотна інтерполяція по формулі Ньютона
HYPERLINK "http://uk.wikipedia.org/w/index.php?title=%D0%97%D0%B2%D0%BE%D1%80%D0%BE%D1%82%D0%BD%D0%B0_%D1%96%D0%BD%D1%82%D0%B5%D1%80%D0%BF%D0%BE%D0%BB%D1%8F%D1%86%D1%96%D1%8F_%D0%BF%D0%BE_%D1%84%D0%BE%D1%80%D0%BC%D1%83%D0%BB%D1%96_%D0%93%D0%B0%D1%83%D1%81%D1%81%D0%B0&action=edit&redlink=1" \o "Зворотна інтерполяція по формулі Гаусса (ще не написана)" Зворотна інтерполяція по формулі Гаусса
3) Інтерполяція функції двох (і більше) змінних
Суміжні концепції
HYPERLINK "http://uk.wikipedia.org/wiki/%D0%95%D0%BA%D1%81%D1%82%D1%80%D0%B0%D0%BF%D0%BE%D0%BB%D1%8F%D1%86%D1%96%D1%8F" \o "Екстраполяція" Екстраполяція - методи перебування точок за межами заданого інтервалу (продовження кривої)
HYPERLINK "http://uk.wikipedia.org/wiki/%D0%90%D0%BF%D1%80%D0%BE%D0%BA%D1%81%D0%B8%D0%BC%D0%B0%D1%86%D1%96%D1%8F" \o "Апроксимація" Апроксимація - методи побудови наближених кривих
Лінійна інтерполяція
Лінійна інтерполяція — це HYPERLINK "http://uk.wikipedia.org/wiki/%D0%86%D0%BD%D1%82%D0%B5%D1%80%D0%BF%D0%BE%D0%BB%D1%8F%D1%86%D1%96%D1%8F_%28%D0%BC%D0%B0%D1%82%D0%B5%D0%BC%D0%B0%D1%82%D0%B8%D0%BA%D0%B0%29" \o "Інтерполяція (математика)" інтерполяція HYPERLINK "http://uk.wikipedia.org/wiki/%D0%A4%D1%83%D0%BD%D0%BA%D1%86%D1%96%D1%8F_%28%D0%BC%D0%B0%D1%82%D0%B5%D0%BC%D0%B0%D1%82%D0%B8%D0%BA%D0%B0%29" \o "Функція (математика)" функції f HYPERLINK "http://uk.wikipedia.org/wiki/%D0%90%D0%BB%D0%B3%D0%B5%D0%B1%D1%80%D0%B0" \o "Алгебра" алгебраїчним HYPERLINK "http://uk.wikipedia.org/wiki/%D0%9C%D0%BD%D0%BE%D0%B3%D0%BE%D1%87%D0%BB%D0%B5%D0%BD" \o "Многочлен" двочленом P1(x) = kx + c в точках x0 та x1, які належать відрізку [a, b].
З геометричної точки зору це означає заміну функції f прямою, яка проходить через точки (x0,f(x0)) та (x1,f(x1)).
Рівняння такої прямої має вигляд:
INCLUDEPICTURE "http://upload.wikimedia.org/math/4/4/2/4427438a2062a0d8e2fcfa5daa71ee1b.png" \* MERGEFORMATINET
звідси для INCLUDEPICTURE "http://upload.wikimedia.org/math/f/4/2/f42ce47d818d368caab5d2bae32310a5.png" \* MERGEFORMATINET маємо:
INCLUDEPICTURE "http://upload.wikimedia.org/math/f/d/5/fd53e75977c5b94a7c32f2c577efefe5.png" \* MERGEFORMATINET (1)
Це і є формула лінійної інтерполяції (1), причому
INCLUDEPICTURE "http://upload.wikimedia.org/math/b/2/7/b27e59a366c2bc27b89d08c798a0a632.png" \* MERGEFORMATINET
де R1(x) — похибка формули, яка обчислюється за формулою:
INCLUDEPICTURE "http://upload.wikimedia.org/math/3/0/0/300bfd865faed604a1fe82e88e331d02.png" \* MERGEFORMATINET
HYPERLINK "http://uk.wikipedia.org/wiki/%D0%A4%D0%B0%D0%B9%D0%BB:Interpolation_example_linear.svg" \o "Лінійна інтерполяція функції (сині прямі)." INCLUDEPICTURE "http://upload.wikimedia.org/wikipedia/commons/thumb/6/67/Interpolation_example_linear.svg/300px-Interpolation_example_linear.svg.png" \* MERGEFORMATINET
Рис. 2. Лінійна інтерполяція функції на рис. 1 (сині прямі).
Метод HYPERLINK "http://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BD%D0%B5%D1%87%D0%BD%D1%8B%D0%B5_%D1%80%D0%B0%D0%B7%D0%BD%D0%BE%D1%81%D1%82%D0%B8" \o "Конечные разности" кінцевих різниць
Широко відомий і простий метод інтерполяції. Його суть полягає в заміні диференціальних коефіцієнтів рівняння на різницеві коефіцієнти, що дозволяє звести вирішення диференціального рівняння до вирішення його різницевого аналога, тобто побудувати його кінечно-різницеву схему.
Так, замінивши похідну в звичайному диференціальному рівнянні
u'(x) = 3u(x) + 2
на кінцеву різницю
INCLUDEPICTURE "http://upload.wikimedia.org/math/3/b/0/3b0d133d795370f2d8ddabfb76bbcf44.png" \* MERGEFORMATINET ,
отримуємо апроксимовану форму (кінечно-різницеву схему)
INCLUDEPICTURE "http://upload.wikimedia.org/math/e/5/e/e5eadf2e8673c98f1aa65db29bfbb75e.png" \* MERGEFORMATINET (2)
Останній вираз носить назву HYPERLINK "http://ru.wikipedia.org/w/index.php?title=%D0%A0%D0%B0%D0%B7%D0%BD%D0%BE%D1%81%D1%82%D0%BD%D0%BE%D0%B5_%D1%83%D1%80%D0%B0%D0%B2%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5&action=edit&redlink=1" \o "Разностное уравнение (страница отсутствует)" кінечно-різницевого рівняння, а його рішення відповідає наближеному вирішенню первинного диференціального рівняння.
Приклад.
Розглянемо квадратичний багат HYPERLINK "http://ru.wikipedia.org/wiki/%D0%9C%D0%BD%D0%BE%D0%B3%D0%BE%D1%87%D0%BB%D0%B5%D0%BD" \o "Многочлен" очлен
p(x) = 2x² − 3x + 2
і припустимо, що відомі його табличні значення p(0), p(0,1), p(0,2), p(0,3), p(0,4) і т. д.
В представленій нижче таблиці перша колонка містить табличні значення полінома, друга – різниця між двома верхніми сусідніми значеннями з першої колонки, а третя - різниця між двома сусідніми значеннями з другої колонки:
Відмітимо, що значення в третьому стовпці - однакові. Це не випадковість. Фактично, якщо починати таблицю для будь-якого полінома ступеня n, колонка з номером n + 1 завжди буде містити константу. Цей факт робить вказаний метод працездатним.
Таблицю складали зліва-направо, але точно також її можна розрахувати і справа-наліво, обчисливши, таким чином, бракуючі значення полінома.
Для обчислення p(0,5) скористаємося значеннями самої нижньої діагоналі. Починаючи з самого нижнього значення в останній колонці 0.04. Потім продовжимо другу колонку віднявши 0,04 з 0,16 і отримавши значення 0,12. Таким же чином заповнимо першу колонку, віднімаючи з її нижнього значення 1,12 отримане на попередньому кроці число 0,12 з другої колонки. p(0,5) буде рівним 1,12-0,12 = 1,0. Для обчислення p(0,6) використовується той же самий алгоритм: береться 0,04 з третьої колонки, віднімається з нижнього значення (тепер уже 0,12) в другій колонці, що вийшло 0,08 прописується в нижню частину другої колонки і потім віднімається з нижнього значення в першій колонці (як пам'ятаємо - 1,0). Результат - 0,92 є значенням p(0,6).
Процес може бути продовжений до незкінечності. Значення полінома виходять при цьому без застосування операції множення. На цьому факті, зокрема, була заснована робота різницевої машини Чарльза Беббіджа. Для виконання кожного наступного циклу розрахунку значень квадратичного полінома, досить зберегти 2 числа (останні елементи, в другій і в першій колонці); для табулювання поліномів ступеня n число необхідних значень більше, - а саме, потрібно зберегти n значень.
Аналітична машина Чарльза Беббіджа.
Не дивлячись на те, що різницева машина не була побудована її винахідником, для майбутнього розвитку обчислювальної техніки головним з'явилося інше: в ході роботи у Беббіджа виникла ідея створення універсальної обчислювальної машини, яку він назвав аналітичною і яка стала прообразом сучасного комп'ютера. У єдину логічну схему Беббідж пов'язав арифметичний пристрій (назване їм «млином»), регістри пам'яті, об'єднані в єдине ціле («склад»), і пристрій введення/виводу, реалізований за допомогою перфокарт трьох типів. Перфокарти операцій перемикали машину між режимами складання, віднімання, ділення і множення. Перфокарти змінних управляли передачею інформації з «складу» на «млин» і назад. Числові перфокарти могли бути використані як для введення даних в машину, так і для збереження результатів обчислень, якщо місце на «складі» було обмежене.
Апроксимація
Апроксимація, або наближення - математичний метод, що полягає в заміні одних математичних об'єктів іншими, в тому або іншому сенсі близькими до початкових, але простішими. Апроксимація дозволяє досліджувати числові характеристики і якісні властивості об'єкту, зводячи завдання до вивчення простіших або зручніших об'єктів (наприклад, таких, характеристики яких легко обчислюються, або властивості яких вже відомі). В теорії чисел, наприклад, вивчаються наближення ірраціональних чисел з раціональними. В геометрії розглядаються апроксимації кривих ламаними. Деякі розділи математики по суті цілком присвячені апроксимації, наприклад, теорія наближення функцій, чисельні методи аналізу.
Приклади
·1) Для наближеного обчислення інтеграла використовується формула прямокутників або формула трапецій, або складніша квадратурна формула. Фактично при цьому відбувається наближення підінтегральної функції ступінчастою функцією або вписаною ламаною.
·2) Для обчислення значень складних функцій часто використовується обчислення значення відрізка ряду, що апроксимує функцію.
Екстраполяція
Екстраполяція (від екстра. і лат. polio - пригладжую, виправляю, змінюю) в математиці - особливий тип апроксимації (наближення), при якому функція апроксимується не між заданими значеннями, а поза заданим інтервалом.
Екстраполяція - наближене визначення значень функції f(x) в точках х, які лежать поза відрізком [х0, хn], по її значеннях в точках х0< x1 < . . . < xn.
Найбільш поширеним видом екстраполяції є параболічна екстраполяція, при якій як значення f(x) в точці х береться значення багаточлена Рn(х) степені n, що приймає в n + 1 точці xn задані значення yi = f(xi). Для параболічної екстраполяції користуються інтерполяційними формулами.
Застосовується в маркетингу. Екстраполяція - розповсюдження виявлених в аналізі рядів динаміки закономірності розвитку предмету, що вивчається, на майбутнє. Даний метод заснований на застосуванні математичних функцій. Наприклад: побудова графіка екстраполяції.
Екстраполяція (від лат.extra - понад, зовні і polio - виправляю, змінюю)
1) розповсюдження виводів, отриманих із спостереження над однією частиною явища, на іншу частину його;
2) у статистиці - розповсюдження встановлених у минулому тенденцій на майбутній період (екстраполяція в часі застосовується для перспективних розрахунків населення); розповсюдження вибіркових даних на іншу частину сукупності, не піддану спостереженню (екстраполяція в просторі). Методи екстраполяції у багатьох випадках схожі з методами інтерполяції.