Чисельні методи в комп‘ютерних науках. Том 2

Автор(и): 
Андруник В.А., Висоцька В.А., Пасічник В.В., Чирун Л.Б., Чирун Л.В.
Тип видання: 
навчальний посібник
Анотація: 

Навчальний посібник містить матеріал для вивчення основних теоретичних засад, функціональних можливостей та практичного застосування теорії чисельних методів, розроблення прикладних засобів та інформаційних систем аналізу та опрацювання інформації за допомогою чисельних методів. Теоретичний та практичний матеріал викладено у доступній формі. Виклад матеріалу супроводжується значною кількістю прикладів, що полегшує його сприйняття та засвоєння. Подається перелік питань та тестів для самоконтролю, а також завдання для самостійного виконання трьох рівнів складності та довідкова інформація для розв’язування задач. Навчальний посібник призначається для студентів, що навчаються за спеціальностями 122 «Комп’ютерні науки» та 124 «Системний аналіз» і споріднених спеціальностей, які пов’язані з вивченням чисельних методів в інформатиці та інформаційних технологіях. Може бути використаний аспірантами в якості підгрунтя для наукових досліджень та викладачами в якості дидактичного матеріалу, а також для самостійного вивчення та підвищення кваліфікації. Книга призначена для спеціалістів із проектування, розроблення та впровадження інтелектуальних систем опрацювання інформаційних ресурсів, науковців в галузі глобальних інформаційних системи, систем штучного інтелекту, Інтернет-технологій, фахівців з електронної комерції, Інтернет-маркетингу та Інтернет-реклами, менеджерів комплексних Web-проектів, а також для здобувачів 3-ого (освітньо-наукового) рівня вищої освіти в галузі знань 12 «Інформаційні технології».

Зміст: 

Зміст      3

Передмова наукового редактора серії підручників та навчальних посібників «КОМП’ЮТИНҐ»         6

Вступне слово авторів     10

Розділ 1.  Чисельні методи розв’язування звичайних диференціальних рівнянь

  • Загальна постановка задачі
  • Метод Ейлера
    • Загальна постановка задачі
    • Графічна інтерпретація
  • Метод Рунге-Кутта
    • Загальна постановка задачі
    • Метод Рунге-Кутта другого порядку точності
  • Багатокрокові методи розв’язування звичайних диференціальних рівнянь
    • Метод Рунге-Кутта третього порядку точності
    • Метод Рунге-Кутта четвертого порядку точності
  • Особливості методу Рунге-Кутта
    • Ідея методу Рунге-Кутта
    • Загальний підхід отримання формул Рунге-Кутта
    • Часткові випадки методу Рунге-Кутта
  • Різницеві методи розв’язування задачі Коші для звичайних диференціальних рівнянь (ЗДР)
    • Екстраполяційні та інтерполяційні різницеві формули
    • Часткові випадки різницевих формул. Екстраполяційні формули Адамса
    • Часткові випадки різницевих формул. Інтерполяційні формули Адамса
  • Методи скінчених різниць розв’язування крайових задач для диференціальних рівнянь
    • Загальна постановка задачі
    • Основні різницеві співвідношення
    • Метод скінченних різниць розв’язування крайової задачі для диференціальних рівнянь
    • Метод прогонки розв’язування апроксимуючої СЛАР для крайової задачі диференціальних рівнянь з точністю o(h)
    • Метод прогонки розв’язування апроксимуючої СЛАР з точністю o(h2)
  • Чисельні методи розв’язування крайових задач для диференціальних рівнянь в частинних похідних. Метод сіток розв’язування крайових задач для диференціальних рівнянь еліптичного типу
    • Метод розв’язування задачі Діріхле
    • Розв’язування рівняння Пуассона
  • Метод невизначених коефіцієнтів розв’язування задачі Діріхле (метод Рейхенбаха)
  • Часткові випадки методу Рейхенбаха
    • Перша різницева схема розв’язування рівняння Пуассона
    • Друга різницева схема розв’язування рівняння Пуассона
    • Третя різницева схема розв’язування рівняння Пуассона
  • Апроксимація крайових умов методом Коллатца
  • Розв’язування різницевих рівнянь
    • Різницевий принцип максимуму
    • Розв’язування різницевої системи
  • Розв’язування рівнянь гіперболічного типу
    • Метод сіток розв’язування задачі Коші для рівнянь гіперболічного типу
    • Вибір сітки для рівнянь гіперболічного типу
  • Метод сіток розв’язування лінійного рівняння параболічного типу (для розв’язування задачі Коші)
  • Контрольні питання
  • Задачі для самостійної роботи
  • Завдання до лабораторної роботи

Розділ 2.   Чисельні методи розв’язування задач оптимізації

  • Загальна постановка задачі оптимізації
    • Визначення цільової функції
    • Формальне визначення задачі оптимізації
    • Класифікація задач оптимізації
    • Метод переведення критеріїв в обмеження
    • Метод контрольних показників
    • Задача багатокритеріального математичного програмування
    • Деякі методи багатокритеріальної оптимізації
    • Метод квазіоптимізації локальних критеріїв (метод послідовних поступок)
    • Метод згортання векторного критерію в суперкритерій
  • Безумовна оптимізація
    • Метод штрафних функцій
    • Геометрична інтерпретація штрафних функцій
    • Аналіз алгоритмів розв’язування задачі методом штрафних функцій
    • Обчислювальні складнощі, що пов’язані зі штрафними функціями
    • Аналіз та інтерпретація отриманих результатів
  • Багатокритеріальні задачі оптимізації та основні підходи до їх розв’язування
    • Основні поняття багатокритеріальної задачі оптимізації
    • Геометрична ілюстрація багатокритеріальної задачі
    • Постановка задачі багатокритеріальної оптимізації
    • Еталонні точки
    • Критерії оптимальності. Критерій Парето
    • Лексикографічний порядок
    • Скаляризація
    • Зважена сума
    • Функція скаляризації Чебишева
    • Метод зміни обмежень (ε-обмеження)
    • Методи розв’язування. Інтерактивність. Еволюційні методи
  • Лінійне програмування
    • Місце лінійного програмування в системі задач математичного програмування
    • Формальна постановка задачі лінійного програмування
    • Чисельні методи оптимізації. Методи прямого пошуку
    • Лінійний пошук без використання похідних
    • Інтервал невизначеності
    • Функції однієї змінної
    • Функції n змінних
    • Методи прямого пошуку для функції однієї змінної
    • Задача оптимізації методом Ньютона
  • Порівняння методів лінійного пошуку без розрахунку похідної
    • Класифікація методів лінійного пошуку без розрахунку похідної
    • Рівномірний пошук
    • Послідовний пошук
    • Задача оптимізації методом дихотомічного пошуку (ділення пополам)
    • Задача оптимізації за методом золотого січення
    • Задача оптимізації за методом Фібоначчі
    • Методи апроксимації. Квадратична інтерполяція
  • Аналіз методів та алгоритмів розв’язування задачі нелінійного програмування
    • Класифікація методів нелінійного програмування
    • Формальна постановка задачі з використанням методів прямого пошуку для оптимізації унімодальних функцій якості без обмежень
    • Визначення та основні властивості опуклих функцій
  • Методи прямого пошуку для функцій n змінних
    • Метод покоординатного спуску
    • Метод Хука – Дживса
    • Метод Нелдера – Міда
    • Метод циклічного покоординатного спуску
    • Метод Розенброка
    • Метод спряжених градієнтів Флетчера та Рівса
  • Контрольні питання
  • Задачі для самостійної роботи
  • Завдання до лабораторної роботи

Розділ 3.  Основи статистичного моделювання

  • Моделювання випадкових величин на комп’ютері
    • Моделювання на комп’ютері рівномірно розподіленої величини α на [0,1], [a,b]
    • Моделювання на комп’ютері випадкової величини з довільним законом розподілу
    • Моделювання нормально-розподіленої випадкової величини ξ з =0, =1
  • Обчислення інтегралів методом статистичного моделювання
    • Аналітичний метод обчислення однократного інтеграла
    • Метод площ обчислення визначеного інтеграла
    • Обчислення кратних інтегралів
      • Метод n-кратних об’ємів
      • Метод середнього значення (аналітичний метод)
  • Розв’язання систем лінійних алгебраїчних рівнянь
    • Метод Дж. фон Неймана-Улама
    • Побудова імітаційної моделі розв’язання системи лінійних алгебраїчних рівнянь (СЛАР)
    • Випадкове блукання частинки з поглинаючим екраном
    • Теорема про побудову
    • Обчислення оберненої матриці методом статистичного моделювання
    • Алгоритм методу статистичного моделювання розв’язку СЛАР
  • Розв’язок першої крайової задачі для рівняння ∆u=f
  • Марківські ланцюги та інтегральні рівняння
    • Загальна постановка задачі
    • Лінійні оцінки та умови неусувності
  • Методи статистичного моделювання для розв’язування стохастичних диференціальних рівнянь
    • Загальна постановка задачі
    • Збіжність методу Ейлера в середньому квадратичному
    • Збіжність методу Ейлера як збіжність розподілів
    • Оптимальні різницеві схеми розв’язку стохастичних рівнянь
  • Наближене інтегрування стохастичних диференціальних рівнянь
    • Однокрокова апроксимація
    • Апроксимація на скінченному проміжку
    • Узагальнення на системи рівнянь
  • Методи побудови емпіричних формул за вибірковими значеннями
    • Загальна постановка задачі
    • Лінійна залежність
    • Метод вирівнювання
    • Квадратична (параболічна) залежність
    • Визначення параметрів емпіричної формули
    • Метод вибраних точок
    • Метод середніх
    • Метод найменших квадратів
    • Деякі міркування про вибір емпіричної формули з двома параметрами
    • Емпіричні формули, які містять три параметри
    • Уточнення отриманої емпіричної формули
    • Загальний метод визначення параметрів емпіричної формули
  • Метод статистичного аналізу економетрики
    • Метод кореляційного аналізу
    • Метод регресійного аналізу
    • Задача оптимізації статистичного аналізу складних процесів
    • Алгебра планування експерименту
    • Метод Бокса-Вілсона
  • Приклади математичного опису складних об’єктів експериментально-статистичними методами
    • Математичний опис промислового об’єкту методом пасивного експерименту
    • Математичний опис напіввиробничого об’єкту методом активного експерименту
  • Кількість спостережень
  • Квантування за часом
  • Метод експертних оцінок перевірки адекватності математичних моделей
  • Комп’ютерні технології ідентифікації виробничих агрегатів
  • Методичні прийоми дослідження впливу факторів на виробничі та економічні процеси
  • Контрольні питання
  • Задачі для самостійної роботи
  • Завдання до лабораторної роботи

Комп’ютерний проект 1. Аналіз статистичних даних

  • Форми та методи подання і попереднє статистичне опрацювання числових даних часових послідовностей
    • Попереднє опрацювання даних та подання результатів
    • Формування файлу даних у формі Excel та Word таблиць
    • Графічне подання даних
    • Описова статистика – кількісні характеристики даних
    • Побудова гістограми
    • Побудова кумуляти
  • Виявлення тенденції часового ряду методами згладжування
    • Методи згладжування часових рядів
    • Метод рухомого середнього
    • Метод зваженого рухомого середнього
    • Властивості рухомого середнього
    • Медіанна фільтрація
    • Нормування часових послідовностей
    • Критерії ефективності згладжування часових рядів
    • Формули для зваженого рухомого середнього
  • Кореляційний аналіз часових послідовностей
    • Кореляційне поле
    • Коефіцієнт кореляції
    • Кореляційне відношення
    • Властивості кореляційного відношення
    • Кореляційна матриця
    • Автокореляція
    • Автокореляція в часових рядах
    • Розрахунок автокореляції
  • Ієрархічний агломеративний кластерний аналіз багатовимірних даних
  • Порядок роботи
  • Хід роботи
  • Форма звітності

Комп’ютерний проект 2. Розрахункова робота реалізації чисельних методів

  • Алгоритми розв’язування нелінійних рівнянь
    • Основні поняття та визначення
    • Метод половинного ділення
      • Постановка задачі
      • Алгоритм методу
    • Метод хорд
      • Постановка задачі
      • Алгоритм методу
    • Метод Ньютона (метод дотичних)
      • Постановка задачі
      • Правила визначення рухомого кінця для методу Ньютона
    • Метод ітерацій (метод послідовних наближень)
  • Система лінійних алгебраїчних рівнянь
    • Основні поняття та визначення
      • Поняття матриці
      • Приклади матриць
      • Рівність матриць
      • Додавання матриць
      • Множення матриці на число
      • Віднімання матриць
      • Множення матриць
      • Транспонування матриць
      • Обернена матриця
      • Властивості оберненої матриці
    • Класифікація методів розв’язання СЛАР на ПК
    • Особливості методів Гаусса
    • Метод Гаусса з послідовним виключенням невідомих
    • Метод Крамера
    • Метод оберненої матриці
    • Матричний метод.
  • Інтерполювання функцій
    • Математична постановка задачі інтерполювання
    • Інтерполяційний багаточлен Лагранжа
    • Перша інтерполяційна формула Ньютона для рівновіддалених вузлів інтерполяції
    • Метод Гаусса
    • Метод Стірлінга
    • Метод Бесселя
  • Розв’язання нелінійних та трансцендентних рівнянь
    • Метод половинного ділення
    • Метод пропорційних частин (хорд)
    • Метод Рибакова
    • Метод простих ітерацій
  • Точність чисельного інтегрування
  • Методи розв’язку крайових задач
    • Метод прогону
    • Проекційні методи (на прикладі методу Гальоркіна)
  • Методи пошуку максимуму функції двох змінних
    • Метод координатного спуска.
    • Метод спірального координатного спуска.
  • Розв’язання чисельними методами диференціальних рівнянь
    • Основні поняття та визначення
    • Класифікація численних методів розв’язування задачі Коші
    • Одноточкові методи розв’язування задачі Коші на ПК
      • Метод Ейлера
      • Метод Рунге-Кутта
  • Градієнтні методи пошуку екстремуму
    • Лінії рівня
    • Найпростіший градієнтний метод оптимізації функцій
      • Властивості градієнтів
      • Алгоритм градієнтного методу
      • Вплив величини кроку на градієнтний пошук.
      • Критерій закінчення пошуку.
      • Недоліки градієнтного методу.
      • Обчислення похідних
      • Модифікації алгоритмів градієнтного методу
    • Метод найшвидшого спуску
    • Метод Ньютона
    • Модифікований метод Ньютона
    • Методи змінної метрики
  • Диференційні рівняння в частинних похідних
    • Різницеві методи розв’язування диференційних рівнянь у частинних похідних
    • Етапи чисельного розв’язування диференційних рівнянь (ДР) у частинних похідних на ПК
    • Гіперболічні рівняння
    • . Параболічні рівняння
    • Приклади розв’язання диференціальних рівнянь в частинних похідних в середовищі MathCAD
  • Контрольні питання
  • Задачі для самостійної роботи
  • Завдання до розрахункової роботи

Список літератури

Додатки

Додаток A. Таблиці

Додаток B. Тестові завдання

Додаток C. Лістинги програм

Вступ: 

Суспільство розпочало важливий період свого розвитку – еру інформатизації. Для вирішення теоретичних і практичних задач, що виникають під час діяльності людини у різних галузях науки, техніки та виробництва з метою звільнення людини від надмірного інтелектуального навантаження, значний ефект отримуємо за рахунок використання обчислювальної техніки при умові достатнього програмного забезпечення та ефективного його використання. Тому дисципліни «Методи обчислень» та «Чисельні методи» набувають особливо великого значення у підготовці фахівців високої кваліфікації.

Сучасний розвиток науки та обчислювальної техніки характеризується все більш зростаючим рівнем використання комп’ютерних моделей як для дослідження поведінки явищ та процесів, що оточують людину, так і для розв’язування практичних задач, що пов’язані з управлінням та прогнозуванням [1-93, 103-109, 112-114, 125-136, 293-302]. Вивчення навчальної дисципліни «Чисельні методи в комп’ютерних науках» дозволяє студентам оволодіти знаннями в галузі практичних методів вирішення математичних проблем, що виникають у процесі інженерної діяльності та моделювання фізичних систем: засвоїти способи обчислення на сучасних комп’ютерах із застосуванням пакетів спеціальних прикладних програм. Об’єктом вивчення навчальної дисципліни є типові математичні задачі, до яких зводиться розв’язування практичних проблем, що виникають в процесі розроблення інформаційних систем та систем моделювання. Предметом вивчення навчальної дисципліни є чисельні методи розв’язування типових математичних задач. Мета навчального посібника – ознайомлення студентів із постановками основних математичних задач і чисельних методів їх розв’язування, набуття студентами навичок реалізації на комп’ютері чисельних методів, навичок роботи з відомими комп’ютерними математичними пакетами.

Чисельні методи – методи наближеного або точного розв’язування задач прикладної математики, які ґрунтуються на побудові послідовності дій над скінченною множиною чисел [94-102, 110-111, 137-292, 303-320]. Згідно основних вимог чисельні методи мають бути стійкими та збіжними [234]. Основне питання теорії чисельних методів: отримання чисельних методів, які задовольняють вимоги високої точності, стійкості та економічності. Знаходження чисельних методів, що задовольняють ці вимоги, є складною задачею оптимізації чисельних методів. Статистичне опрацювання експериментальних даних зазвичай ґрунтується на граничних теоремах теорії ймовірностей та обчисленні порівняльних оцінок. Однак, для підвищення якості оцінок необхідна велика кількість даних, обсяг обчислень може виявитися дуже великим. Чисельні методи націлені на скорочення кількості обчислень при збереженні якості результатів. До найбільш ефективних чисельних методів в цій галузі відносяться методи, які застосовують швидке перетворення Фур’є. Для розв’язування задач апроксимації та обчислення функцій різних класів застосовують чисельні методи інтерполювання, найменших квадратів, ортогоналізації, врівноваження значень, умовної мінімізації тощо. Найбільш актуальними є методи кусково-многочленної та раціональної сплайнової апроксимації, а також адаптивної апроксимації та нелінійної за параметром апроксимації [91-93].

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

Чисельне інтегрування та диференціювання починається із визначення відповідних операцій. Однак, з урахуванням необхідності економії обсягу обчислень та з урахуванням некоректності задачі диференціювання з’являється велика кількість чисельних методів для різних класів функцій та різного роду вихідних даних.

Інженери часто зіштовхуються з диференційними рівняннями та системами диференційних рівнянь при розробці нових виробів чи технологічних процесів, так як більша частина законів фізики формалізується саме у вигляді диференційних рівнянь. Будь-яка задача проектування, яка пов’язана з розрахунком потоків енергії чи руху тіл, в кінцевому результаті зводиться до розв’язку диференційних рівнянь. Нажаль, лише дуже малу частину з них можливо вирішити без використання обчислювальних машин. Тому чисельні методи розв’язку диференційних рівнянь відіграють важливу роль у практиці інженерних розрахунків.

Основою чисельних методів розв’язування багатьох класів рівнянь є дискретизація задачі з наступним приведенням отриманих нелінійних рівнянь до послідовності систем алгебраїчних рівнянь. У зв’язку з цим чисельні методи можна поділити за способом дискретизації на проекційні, скінченно-різницеві та проекційно-різницеві, а за способом розв’язування лінійної системи – на прямі методи, ітераційні методи та комбіновані.

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

Обчислювальна математика – розділ математики, що включає коло питань, які пов’язані із виконанням обчислень та використанням комп’ютерів. Точніше, обчислювальна математика – теорія чисельних методів розв’язування типових математичних задач. Класи задач чисельних методів та обчислювальної математики поділяють на:

  1. розв’язування лінійних рівнянь;
  2. знаходження власних значень та векторів матриці;
  3. знаходження сингулярних значень і векторів матриці;
  4. чисельне розв’язування нелінійних алгебраїчних рівнянь та їх систем;
  5. чисельне розв’язування систем нелінійних алгебраїчних рівнянь;
  6. чисельне розв’язування диференціальних рівнянь та систем (як звичайних диференціальних рівнянь, так і рівнянь з частинними похідними);
  7. чисельне розв’язування систем диференціальних рівнянь;
  8. чисельне розв’язування інтегральних рівнянь;
  9. задачі апроксимації функцій;
  10. задачі інтерполяції функцій;
  11. чисельне інтегрування та обчислення похідної;
  12. задачі екстраполяції;
  13. задачі оптимізації;
  14. обернені задачі.

Чисельні методи використовувалися ще за часів Ньютона (1642-1727рр.) для розв’язування задач з астрономії, геодезії та обчислення механічних конструкцій. На той час обчислення з використанням чисельних методів виконувалися з доволі високою точністю (до восьми знаків після коми). Наприклад, французький математик і астроном Урбен Левер’є (1811-1878 рр.), уточнюючи траєкторію руху планети Уран, виявив відхилення від обчисленої траєкторії. Він припустив, що ці відхилення спричиняє інша планета, яка до того не спостерігалась астрономами. Використовуючи чисельні методи, він за півроку обчислив масу і орбіту невідомої планети, що справляє дію на Уран і виводить планету із рівноваги. Один примірник своїх розрахунків Левер’є відразу ж послав Йогану Галле з Берлінської обсерваторії, який отримавши лист 23 вересня 1846 року, негайно почав спостереження і в ту ж ніч, дуже близько від місця вказаного Левер’є, знайшов невідому планету, яку пізніше назвали Нептуном.

Статистичне опрацювання експериментальних даних зазвичай ґрунтується на граничних теоремах теорії ймовірностей та вимагає обчислення оцінок в порівнянні з простими формулами. Однак, для підвищення якості оцінок необхідна велика кількість даних, і обсяг обчислень може виявитися дуже великим. Тому чисельні методи тут націлені на скорочення обсягу обчислень при збереженні якості результатів. Найефективнішими чисельними методами в цій галузі є методи, які застосовують швидке перетворення Фур’є.

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

Чисельне інтегрування та диференціювання здійснюється на основі означення відповідних операцій. Однак, через необхідність економії обсягу обчислень та некоректність задачі диференціювання розроблено велику кількість чисельних методів для різних класів функцій та різного роду вихідних даних.

Основою чисельних методів розв’язування багатьох класів рівнянь є дискретизація задачі з наступним зведенням отриманих, взагалі кажучи, нелінійних рівнянь до послідовності систем алгебраїчних рівнянь. У зв’язку з цим чисельні методи можна поділити за способом дискретизації на проекційні, скінченно-різницеві та проекційно-різницеві, а за способом розв’язування лінійної системи — на прямі, ітераційні та комбіновані методи.

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

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

Складність методу оцінюється кількістю та якістю обчислень, які необхідні для досягнення достатньо близького наближення розв’язку задачі.

Порядок методу – вимоги до знань про функції, що входять до математичного формулювання задачі (наприклад, використання в методі похідних цих функцій):

  • метод нульового порядку – використовує тільки значення цих функцій;
  • метод першого порядку – використовує значення функцій та їх перших похідних;
  • метод другого порядку – використовує значення функцій, їх перших та других похідних тощо.

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

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

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

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

Чисельні методи називаються збіжними, якщо результати прямують до точного розв’язку задачі при прямуванні параметрів чисельних методів до певних граничних значень.

Основне питання теорії чисельних методів: отримання чисельних методів, які задовольняють вимоги високої точності, стійкості та економічності. Розробка чисельних методів, що задовольняють ці вимоги, є складною задачею оптимізації чисельних методів.

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

  1. Чисельні методи алгебри.
  2. Чисельні методи аналізу.
  3. Чисельні методи розв’язування звичайних диференціальних рівнянь.
  4. Чисельні методи розв’язування диференціальних рівнянь з частинними похідними.
  5. Чисельні методи математичної статистики.
  6. Математичне програмування: методи оптимізації, дослідження операцій та теорія ігор.

Спочатку для розв’язування математичних задач існували та набули значного розвитку аналітичні методи, які реалізувати на комп’ютері не було можливості. А всі результати, які можна було отримати на комп’ютері, були числовими. З появою систем символьної математики (Eureka, Reduce, SciCalculator, MathCad, MatLab, Mathematica, Maple, Derive) стала можлива комп’ютерна реалізація символьних методів. Всі числові методи поділяються на 2 класи – аналітичні та чисельні. Як одні, так і другі поділяють на точні та наближені. Основну частину всіх обчислювальних методів складають наближені чисельні методи.

Досвід розв’язування науково-дослідних і прикладних задач показує, що, незалежно від складності, кінцевої мети досягають постановкою експерименту або методом математичного моделювання. Кожен з цих методів має переваги й недоліки. За допомогою експерименту розв’язують навіть дуже складні задачі, при цьому достовірність результатів тим вища, чим ретельніше відпрацьована методика експерименту. Водночас здобуті результати відносяться лише до умов проведення експерименту, внаслідок чого узагальнення результатів на інші умови є некоректним. Також враховують економічний важіль постановки складного експерименту. В цьому випадку кращі можливості має метод математичного моделювання за допомогою комп’ютера, коли аналізують не реальну задачу, а її модельне представлення. Процес математичного моделювання подають у такій послідовності:

  • фізична постановка задачі;
  • математична постановка задачі;
  • математичне дослідження задачі;
  • аналіз та осмислення математичного розв’язку;
  • порівняння розв’язку з експериментом.

Розглянемо докладніше математичну постановку та математичне дослідження задачі. Математична постановка полягає у формуванні математичної моделі досліджуваної задачі, яка звичайно є системою рівнянь математичної фізики (диференціальних, інтегральних, інтегрально-диференціальних). Математичне дослідження задачі зводиться до розв’язування системи рівнянь і аналізу здобутих результатів. Для порівняно простих задач вдається розв’язати систему рівнянь і розв’язок подати у вигляді залежностей, які виражені через елементарні та інші відомі функції. Якщо це можливо, то говорять, що знайдено аналітичний (точний) розв’язок задачі. Однак, переважна більшість практично важливих задач аналітичних розв’язків не має. До таких належать, наприклад, задачі будівництва: визначення напружено-деформованого стану пластин, плит, фундаментів; задачі стійкості, теплопровідності для твердих тіл; напрямленої дифузії тощо. У цих випадках використовують чисельні методи, які, оперуючи системою алгебраїчних рівнянь (аналогів рівнянь математичної фізики), дають можливість побудувати деяку послідовність арифметичних операцій, збільшення кількості яких до нескінченності дає точний розв’язок. Оскільки на практиці здійснюють скінченне число кроків (операцій), то знайдений розв’язок є наближеним. А тому що обчислювальні операції виконують над числами, то відповідні методи дістали назву чисельних. Найбільшого розвитку чисельні методи набули останнім часом завдяки застосуванню комп’ютерів, що мають високу швидкість обчислень і великий об’єм оперативної пам’яті. Проте основна роль при цьому відводиться, звичайно, людині, яка повинна вміти сформулювати і поставити задачу, описати її математичними залежностями (створити математичну модель об’єкта), скласти алгоритм розв’язування задачі на комп’ютері, написати програму на алгоритмічній мові, розв’язати задачу й оцінити результати. При оцінюванні результатів розрахунку поєднання чисельних методів та комп’ютера отримують оперативно ефективний результат, варіюючи найсуттєвіші параметри розрахункової схеми задачі з наступним чисельним аналізом впливу їх на кінцевий результат. Це чисельний експеримент, оскільки умови задачі можна змінювати багато разів. Незважаючи на відмінності в методології, до чисельного експерименту дотичний фізичний експеримент/дослідження, де необхідна оцінка достовірності здобутих результатів.

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

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

Розширення можливостей прикладної математики обумовило математизацію різних галузей науки: хімії, біології, економіки, геології, психології, медицини, техніки тощо. Дослідження реальних фізичних процесів та явищ полягає у побудові відповідних математичних моделей i розробленні методів їх дослідження. У зв’язку з цим студентам технічних спеціальностей вищих закладів освіти читають курси, пов’язані із чисельними методами математики. У результаті вивчення курсів «Чисельні методи» та «Методи обчислень» студенти повинні знати чисельні методи та вміти їх використовувати при розв’язування наукових та науково-технiчних задач із таких галузей як комп’ютерні науки та інформаційні технології. Досвід роботи на кафедрі «Інформаційні системи та мережі» Національного університету «Львівська політехніка» показує, що при вивченні цих курсів найбільші складнощі у студентів виникають при побудові та дослідженні математичних моделей в технічних науках, вивченні та реалізації чисельних методів їх розв’язування. В посібнику викладено курс лекцій у відповідності до програми із математичних методів для технічних спеціальностей. Навчальний посібник містить матеріал для вивчення основних теоретичних засад, функціональних можливостей та практичного застосування теорії чисельних методів, розроблення прикладних засобів та інформаційних систем аналізу та опрацювання інформації за допомогою чисельних методів. Теоретичний та практичний матеріал викладено у доступній формі. Викладення матеріалу супроводжується значною кількістю прикладів, що полегшує його сприйняття та засвоєння. Подається перелік питань та тестів для самоконтролю, а також завдання для самостійного виконання трьох рівнів складності та довідкова інформація для розв’язування задач. Навчальний посібник призначений для студентів, що навчаються за спеціальностями 122 «Комп’ютерні науки та інформаційні технології» та 124 «Системний аналіз» і споріднених спеціальностей, які пов’язані з вивченням чисельних методів в інформатиці та інформаційних технологій. Може бути використаний аспірантами як підґрунтя для наукових досліджень та викладачами як дидактичний матеріал, а також для самостійного вивчення та підвищення кваліфікації. Книга призначена для фахівців із проектування, розроблення та впровадження інтелектуальних систем опрацювання інформаційних ресурсів, науковців у галузі глобальних інформаційних системи, систем штучного інтелекту, Інтернет-технологій, фахівців з електронної комерції, Інтернет-маркетингу та Інтернет-реклами, менеджерів комплексних Web-проектів, а також для здобувачів 3-ого (освітньо-наукового) рівня вищої освіти в галузі знань 12 «Інформаційні технології». Весь матеріал розбито на 10 тем у 2-х томах. Кожна тема розрахована на 2-4 аудиторних години (1-2 лекції), i, таким чином, на весь курс відводиться 16 лекцій. До кожної теми подано контрольні питання та завдання для самоконтролю. Основну увагу в лекціях звернено на роз’яснення принципових моментів та аспектів теоретичного матеріалу, які часто викликають у студентів труднощі. Складні доведення в посібнику не подаються, оскільки їх розглядають під час аудиторних занять та на консультаціях із самостійного опрацювання дисципліни за рекомендованою літературою. Вивчення чисельних методів базується на розв’язуванні практичних задач, тому теоретичний матеріал супроводжується прикладами, що полегшує його розуміння. Згідно з вимогами освітньо-професійної програми підготовки бакалаврів напряму 12 «Інформаційні системи» студенти після вивчення навчальної дисципліни «Чисельні методи» або «Методи обчислень» повинні оволодіти такими компетентностями:

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

Одним із способів розв’язування практичної задачі є експеримент. Наприклад, будують ракету, запускають і перевіряють характеристики, які цікавлять. Якщо вони не задовольняють, то будують нову ракету тощо. Зрозуміло, що потрібний результат (при необмежених ресурсах) буде, врешті-решт, досягнутий, проте занадто дорогою ціною. Інший спосіб – побудова математичної (комп’ютерної) моделі об’єкта або явища, що вивчається, і проведення всіх розрахунків на комп’ютері. Для фізичних процесів математична модель зазвичай записується у вигляді набору рівнянь, в які як коефіцієнти входять характеристики тіл або речовин, що беруть участь у процесі. Для того щоб зрозуміти місце чисельних методів у процесі розв’язування задач, що виникають у практичній діяльності людини, з використанням комп’ютера, слід навести основні етапи цього процесу. Етапи розв’язування практичних задач на комп’ютері.

1. Постановка задачі: формулювання задачі та визначення кінцевої мети розв’язку.

2. Побудова математичної моделі, тобто математичне формулювання задачі.

3. Вибір чисельного методу для розв’язування математичної задачі.

4. Розроблення алгоритму.

5. Програмна реалізація алгоритму.

6. Тестування програми (налагодження на тестових задачах).

7. Проведення розрахунків на реальних даних.

8. Аналіз результатів.

Найскладнішим із перерахованих етапів є другий етап, а вивчення методів його реалізації є предметом інших навчальних дисциплін (наприклад, моделювання систем й інших). У подальшому викладенні матеріалу цього навчального посібника передбачено, що математичне формулювання задачі вже є, потрібно тільки навчитися її розв’язувати на комп’ютері з використанням чисельних методів. Варто зазначити, що якщо математична модель вибрана недостатньо коректно, то які б методи не застосовувалися для розрахунків з її використанням, отримані висновки будуть ненадійні, або й зовсім неправильні. Так, для рівняння розрахунків запуску ракети з поверхні Землі, бо в ньому може бути не враховано опір повітря. Розв’язок, отриманий за допомогою чисельного методу, зазвичай є наближеним, тобто містить деяку похибку. Джерелами похибок (у порядку значимості) є:

  • невідповідність математичної постановки задачі досліджуваному реальному явищу;
  • похибка початкових даних;
  • похибка чисельного методу розв’язування;
  • помилки заокруглення та розрахунків.

У навчальному посібнику висвітлюються питання, які пов’язані з розкриттям основних понять предметної області: математичної постановки задачі, чисельного методу, ітерації, характеристик чисельних методів, абсолютної та відносної похибок розв’язку, джерел похибок та інших; розглянуті постановки основних математичних задач та найбільш відомі чисельні методи їх розв’язання; наведені приклади програмної реалізації чисельних методів. У ході розв’язання конкретної практичної задачі спеціаліст повинен, перш за все, визначити, до якого типу математичної задачі належить ця практична задача, вибрати чисельний метод для її розв’язання, розробити програмну реалізацію методу самостійно чи вміти застосувати для її розв’язання один із відомих комп’ютерних математичних пакетів. Підведемо підсумки. Мета вивчення дисципліни «Методи обчислень» та «Чисельні методи»:

– надання основних знань з методів обчислень, а також практичних навичок використання методів та засобів сучасних інформаційних технологій у повсякденній практичній діяльності;

– підготувати студентів до ефективного використання сучасних комп’ютерних технологій при розв’язуванні фахових завдань.

Прослухавши курс “«Методи обчислень» та «Чисельні методи», студент повинен вміти обґрунтувати вибір чисельного методу розв’язування математичної задачі, знати особливості його реалізації на комп’ютері, володіти алгоритмом методу, провести необхідні обчислення та аналіз отриманих результатів, а також мати навички практичного використання програмного забезпечення для розв’язування математичних задач.

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

– етапи розв’язування задач з використанням комп’ютера;

– суть математичного моделювання; схему обчислювального експерименту;

– основні групи методів, які використовуються для розв’язування математичних задач;

– вимоги до чисельних методів;

– джерела похибок, їх класифікацію;

– означення абсолютної і відносної похибок, правильної, сумнівної, значущої цифр наближеного числа;

– правила заокруглення;

– загальні формули для похибок;

– правила підрахунку цифр;

– формули подання і способи заокруглення чисел в комп’ютері;

– способи зменшення обчислювальних похибок;

– суть методів, особливості реалізації на комп’ютері, швидкість і умови збіжності, оцінки для наближень до кореня;

– суть методу Жордана-Гауса і його модифікацій, особливості реалізації на комп’ютері;

– методи простих ітерацій і Зейделя, умови збіжності методів;

– суть методу квадратного кореня й особливості його реалізації;

– особливості розв’язування систем із погано обумовленими матрицями;

– постановку задачі наближення функцій, суть методів наближення (інтерполювання, середньоквадратичне наближення, рівномірне), як оптимально вибрати вузли інтерполювання, найпростіші інтерполяційні методи для розв’язування рівнянь з одним невідомим, особливості реалізації методів на комп’ютері;

– суть задач чисельного диференціювання та інтегрування, різні підходи до побудови формул чисельного інтегрування, особливості реалізації на комп’ютері диференціювання та інтегрування;

– постановку задачі, класифікацію методів і суть методів Рунге-Кутта та Ейлера;

– геометричну інтерпретацію різновидів методу Ейлера;

– підходи до оцінки точності методів;

– методи розв’язування задач про власні значення;

– метод скінчених різниць;

– особливості розв’язування крайових задач;

– метод скінчених елементів;

– чисельні методи розв’язування інтегральних рівнянь.

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

– будувати математичні моделі найпростіших об’єктів;

– вивести загальну формулу для обчислення похибок (абсолютної, відносної) функції;

– виконувати дії з наближеними числами;

– оцінювати похибки результатів та обґрунтовувати правила підрахунку цифр;

– виконувати обчислення без точного врахування похибок і розв’язувати пряму і обернену задачі теорії похибок;

– оцінювати похибки заокруглень при виконанні арифметичних операцій на комп’ютері;

– навести приклади задач, які чутливі до похибок вхідних даних; приклади стійких і нестійких методів;

– обґрунтувати збіжність методів, дати їх геометричну інтерпретацію;

– написати алгоритми і програми, застосовувати їх для знаходження із заданою точністю коренів нелінійних рівнянь,

– користуватися бібліотечними програмами та прикладними програмними засобами;

– розв’язувати системи лінійних алгебраїчних рівнянь методами виключення, обчислювати визначники, ранги матриць, обернені матриці, підрахувати число арифметичних дій, що необхідні для розв’язування системи методами виключення, використовувати бібліотечні програми методів типу Жордана-Гауса;

– застосовувати методи простих ітерацій та Зейделя для розв’язування систем лінійних рівнянь, записувати відповідні алгоритми і програми для методів, обґрунтовувати збіжність, оцінити похибку наближення до розв’язку; розв’язувати системи лінійних рівнянь із симетричними матрицями методом квадратного кореня;

– обґрунтовувати існування та єдиність розв’язку задачі інтерполювання;

– виводити формули інтерполяційних многочленів Лагранжа і Ньютона;

– оцінювати похибку інтерполювання,

– будувати інтерполяційні многочлени і кубічні сплайни;

– обчислювати значення функцій за допомогою інтерполяційних многочленів;

– застосовувати інтерполяційні многочлени для обчислення значень функцій і розв’язування рівнянь;

– обґрунтувати умову застосовності лінійної та квадратичної інтерполяції;

– знаходити найкращу середньоквадратичну апроксимацію функції, що задана на відрізку;

– знаходити методом найменших квадратів наближення таблично заданих функцій;

– будувати емпіричні формули, виконувати згладжування таблично заданих функцій;

– будувати формули чисельного диференціювання та інтегрування, давати їх геометричну інтерпретацію, оцінювати похибки, обчислювати похідні й означені інтеграли, записувати відповідні алгоритми і програми, використовувати бібліотечні програми і прикладні програмні засоби;

– обґрунтовувати методи типу Ейлера, Рунге-Кутта;

– розв’язувати задачу Коші (для одного рівняння та системи першого і вищих порядків) за допомогою формули Тейлора, методами типу Ейлера, Рунге-Кутта;

– розв’язувати задачі на власні значення;

– застосовувати різницеві методи та метод скінчених елементів до розв’язування крайових задач;

– розв’язувати інтегральні рівняння чисельними методами;

– записувати відповідні алгоритми і програми;

– використовувати бібліотечні програми.

Предмети «Методи обчислень» та «Чисельні методи» є логічним продовженням курсів «Математичний аналіз», «Лінійна алгебра», «Диференціальні рівняння» та «Алгоритмізація та програмування» і змістовно пов’язані з базовими дисциплінами. Засвоєння студентами основних положень цих дисциплін має науково-прикладне значення на початковому етапі навчання і формування фахівця загалом. Навчальним планом передбачається: вивчення дисципліни на лекційних та лабораторних заняттях, самостійна робота студентів; перевірка основних теоретичних знань та практичних умінь студентів за допомогою тестових завдань та контрольної роботи; складання заліку. Основними труднощами при вивченні цієї дисципліни є багатоплановість матеріалу, який розглядається, і його великий обсяг. Тому успішне засвоєння курсу неможливе без регулярної самостійної роботи з літературою і творчого відношення до виконання практичних і лабораторних робіт. Під час викладання дисципліни використовуються комп'ютерні навчальні програми та практичні завдання і вправи. Всі лабораторні роботи виконуються на комп’ютері. При проведенні лабораторних робіт на комп’ютері звертається увага на охорону здоров'я студентів.

Кількість сторінок: 
805
Видавництво: 
«Новий світ – 2000»
Рік: 
2018
Бібліографічний опис: 
231. Андруник В.А., Висоцька В.А., Пасічник В.В., Чирун Л.Б., Чирун Л.В. Чисельні методи в комп’ютерних науках. Том 2: Навчальний посібник. – Львів: «Новий Світ - 2000», 2018. – 805 с (друк 536 с., електр. опт. диск 269 с.) – ISBN 978-617-7519-12-5.