- •«Численные методы»
- •Оглавление
- •§1. Теоретические основы численных методов 10
- •§2. Особенности математических вычислений на эвм. Погрешности вычислений 13
- •§3. Численные методы решения алгебраических и трансцендентных уравнений 25
- •§4. Методы решения систем уравнений 38
- •Введение
- •Из истории вычислительной математики
- •§1. Теоретические основы численных методов
- •§2. Особенности математических вычислений на эвм. Погрешности вычислений
- •Задания для самостоятельного решения
- •Практическая работа №1
- •Примеры выполнения заданий работы
- •Контрольные вопросы.
- •§3. Численные методы решения алгебраических и трансцендентных уравнений
- •3.1 Задача решения алгебраических и трансцендентных уравнений
- •3.2 Локализация корней
- •3.3 Метод деления отрезка пополам (метод бисекции, метод дихотомии)
- •3.4 Метод простой итерации
- •Задания для самостоятельного решения
- •Практическая работа №2
- •Примеры выполнения заданий работы
- •Контрольные вопросы.
- •3.5 Методы Ньютона
- •3.6. Решение уравнений с помощью табличного процессора Excel
- •Задания для самостоятельного решения
- •Практическая работа №3
- •Примеры выполнения заданий работы
- •Контрольные вопросы.
- •§4. Методы решения систем уравнений
- •4.1 Система линейных уравнений
- •4.1.1 Прямые методы решения систем линейных уравнений
- •Задания для самостоятельного решения
- •Практическая работа №4
- •Примеры выполнения заданий работы
- •4.1.2 Вычисление определителей и обратной матрицы
- •Задания для самостоятельного решения
- •Контрольные вопросы.
- •4.1.3 Итерационные методы решения систем линейных уравнений. Метод простой итерации
- •4.2. Решение системы уравнений и вычисление определителя с помощью табличного процессора Excel
- •Задания для самостоятельного решения
- •Практическая работа №5
- •Примеры выполнения заданий работы
- •Контрольные вопросы
- •§5. Методы приближения и аппроксимации функций
- •5.1 Понятия интерполяции и экстраполяции
- •5.2 Интерполяционный многочлен Лагранжа
- •Задания для самостоятельного решения
- •5.3 Приближение функций с помощью табличного процессора Excel
- •Задания для самостоятельного решения
- •Практическая работа №6
- •Примеры выполнения заданий работы
- •Контрольные вопросы
- •5.3 Интерполяционные формулы Ньютона
- •Задания для самостоятельного решения
- •§6. Численное интегрирование
- •6.1 Задача численного интегрирования
- •6.2 Методы прямоугольников и трапеций
- •6.3 Метод Симпсона (метод парабол)
- •Задания для самостоятельного решения
- •Практическая работа №7
- •Примеры выполнения заданий работы
- •Контрольные вопросы
- •6.4 Квадратурная формула Гаусса
- •6.5. Вычисление интеграла с использованием табличного процессора Excel.
- •Задания для самостоятельного решения
- •Практическая работа №8
- •Примеры выполнения заданий работы
- •Контрольные вопросы
- •§7. Решение обыкновенных дифференциальных уравнений
- •7.1. Задача численного решения обыкновенных дифференциальных уравнений
- •7.2. Методы Эйлера
- •7.3 Метод Рунге – Кутта
- •Задания для самостоятельного решения
- •Практическая работа №9
- •Примеры выполнения заданий работы
- •Контрольные вопросы
- •§8. Методы оптимизации
- •8.1 Методы одномерной оптимизации
- •Задания для самостоятельного решения
- •8.2 Методы многомерной оптимизации
- •8.3. Решение задач оптимизации с помощью табличного процессора Excel
- •Задания для самостоятельного решения
- •Практическая работа №10
- •Примеры выполнения заданий работы
- •Контрольные вопросы
- •Литература
Задания для самостоятельного решения
Найти точку минимума функции с точностью 0,1, используя метод деления отрезка пополам.
Найти точку минимума функции с точностью 0,1, используя метод золотого сечения.
Найти точку минимума функции с точностью 0,1, используя метод деления отрезка пополам.
Найти точку минимума функции с точностью 0,1, используя оптимально-пассивный поиск.
Найти точку минимума функции с точностью 0,1, используя оптимально-пассивный поиск.
8.2 Методы многомерной оптимизации
Покоординатный спуск
В методе покоординатного спуска выбирается точка с координатами . Фиксируются все координаты кроме первой. Тогда функция является функцией одной переменной x1. Решается одномерная задача минимизации одним из методов, изложенных в предыдущем разделе. В результате определяется точка , где принимает минимальное значение. На этом заканчивается первый шаг поиска минимума, состоящий в спускании по координате x1. Этот процесс наглядно иллюстрируется в случае функций двух переменных. Далее фиксируются все координаты, кроме x2 и повторяется процесс одномерной минимизации по этой координате. В результате находится точка , полученная в результате спуска по координате x2. В результате последовательного спуска по всем остальным координатам определяется точка с координатами . На этом первая итерация заканчивается. Обозначим точку как точку с координатами . Потом процесс повторяется, начиная с координаты x1. В результате k итераций получается последовательность точек стремящихся к точке минимума .
На практике используются следующие критерии окончания итерационного процесса:
(8.2) (2.9)
где 1,2,3 - заданные положительные числа.
Выбирается либо один из этих критериев, либо их различные сочетания, либо все три вместе одновременно.
В методе покоординатного спуска важным является вопрос о сходимости рассмотренного процесса минимизации. Это зависит от выбора самой функции, а также от начального приближения.
Если линии уровня имеют изломы, то данный метод может оказаться быть непременным. Изломы соответствуют так называемому “оврагу” на поверхности, задаваемой уравнением U=f(x1,x2). На рисунке 8.3 представлены линии уровня соответствующие “оврагу”. Дно оврага соответствует пунктирной линии соединяющей изломы. Спускаясь по какой-либо координате, мы можем попасть в точку , соответствующей дну “оврага”. Проведем с одной и другой стороны от точки касательные к линии уровня. В результате мы получим две касательные из которых можно образовать сектор, имеющий угол раскрыва , который включает все направления движения от точки по которым функция f(x1,x2) убывает. Назовем этот сектор “сектором “оврага” убывания” функции f(x1,x2). Естественно движения по направлениям от точки не принадлежащим “сектору оврага” будут приводить к возрастанию функции f(x1,x2).
Таким образом, при покоординатном спуске возможна такая ситуация, что любое движение от точки по координатам будет происходить в направлениях, лежащих вне “сектора оврага”, т.е. приводить к возрастанию функции. Следовательно, итерационный процесс на основании признаков (8.2) закончится в точке . Спуститься ниже мы не можем, а точки минимума мы еще не достигли.
Простой градиентный метод.
Идея метода состоит в следующем. Выбирается точка и вычисляется в ней градиент функции
.
Делаем шаг в направлении обратном градиенту (рис.8.4). В результате вычисляем точку
для которой выполняется условие: . Если это условие не выполняется, то шаг h0 уменьшают до тех пор, пока это условие не будет выполнено. Далее в точке вычисляется значение и делаем шаг h1 в противоположном направлении и вычисляется значение .
Процесс продолжается до выполнения условия:
, или , i=1,2,...,n. (8.3)
Данный метод представляет собой полный аналог метода оптимального пассивного поиска точки минимума для функции одной переменной, там и здесь изменяется только один параметр - величина шага h.
В описанном методе требуется вычисление градиента функции на каждом шаге. Расчетные формулы для частных производных можно получить только в том случае, если функция задана аналитически. В противном случае эти производные вычисляются численно с помощью формул численного дифференцирования:
(8.4)
При использовании градиентного спуска основной объем вычислений приходится на вычисление самого градиента. Поэтому были созданы различные модификации этого метода. Одной из них является следующий метод.
Метод наискорейшего спуска.
Через точку перпендикулярно линии уровня (в направлении антиградиента) проводится прямая линия. По этой прямой двигаются до тех пор, пока функция убывает. Так как точки на этой прямой определяются уравнением:
,
где 0 - параметр, то такое движение представляет собой решение одномерной задачи минимизации функции
относительно параметра . В результате находится такое значение параметра 1, а следовательно такая точка
,
которая соответствует минимальному значению функции на выбранной прямой.