- •Часть 2
- •Оглавление введение
- •Глава 1. Методы одномерной безусловной оптимизации § 1.1. Основные понятия
- •§ 1.2. Метод половинного деления
- •§ 1.3. Метод золотого сечения
- •§ 1.4. Метод Ньютона
- •Глава 2. Методы многомерной безусловной оптимизации § 2.1. Основные понятия
- •§ 2.2. Метод сопряженных направлений
- •§ 2.3. Метод наискорейшего спуска
- •§ 2.4. Метод Ньютона
- •Глава 3. Интерполирование и аппроксимация функций, заданных таблично § 3.1. Основные понятия
- •§ 3.2. Интерполяционный полином в форме Лагранжа
- •§ 3.3. Интерполяционный полином в форме Ньютона
- •§ 3.4. Сплайн-интерполяция таблично заданной функции
- •§ 3.5. Аппроксимация таблично заданных функций методом наименьших квадратов
- •Глава 4. Численное дифференцирование и интегрирование функций § 4.1. Основные понятия
- •§ 4.2. Численное дифференцирование
- •§ 4.3. Численное интегрирование
- •4.3.1. Квадратурные формулы прямоугольников, трапеций и Симпсона. Квадратурные формулы прямоугольников
- •Квадратурная формула трапеций
- •Квадратурная формула Симпсона
- •4.3.2. Автоматический выбор шага. Правило Рунге
- •Глава 5. Численные методы решения задачи Коши для обыкновенных дифференциальных уравнений и их систем § 5.1. Основные понятия
- •§ 5.2. Метод Эйлера
- •§ 5.3. Явный 4-шаговый метод Адамса
- •§ 5.4. Метод Рунге Кутта четвертого порядка
- •Литература
Глава 1. Методы одномерной безусловной оптимизации § 1.1. Основные понятия
Пусть на множестве X E1, где E1 – множество всех действительных чисел, определена функция f(x). Требуется найти x* X, для которого выполнено условие
f(x*) = min f(x). (1.1.1)
x X
Задачу (1.1.1) называют задачей одномерной минимизации.
Отметим, что для определения максимума функции (x) достаточно взять функцию f(x) = – (x) и найти минимум функции f(x) на заданном множестве X. Поэтому в дальнейшем будет рассматриваться только задача минимизации (1.1.1), что не умаляет их общности.
При решении задачи используется следующая терминология:
– f(x) – функция цели или целевая функция;
– x E1 – решение задачи (1.1.1);
– X – множество допустимых решений задачи (1.1.1);
– x* – оптимальное решение задачи (1.1.1).
Если X совпадает с E1, то задачу (1.1.1) называют задачей безусловной одномерной минимизации, так как на значения аргумента x не накладывается никаких условий и он может принимать значения на всей числовой оси. В противном случае задача (1.1.1) называется задачей условной одномерной минимизации, потому что условие x X ограничивает выбор допустимых значений аргумента функции f(x). В дальнейшем предполагается, что X – открытое множество.
Определение 1.1.1. Локальный минимум
x* X – точка локального минимума функции f(x) на множестве X, если найдется такое число > 0, при котором будет выполнено условие |
f(x*) < f(x) x:x – x* < , x x*.
Определение 1.1.2. Многоэкстремальная функция
Функция f(x) называется многоэкстремальной1 на множестве X, если она имеет более одного локального минимума на этом множестве. В противном случае функция f(x) называется одноэкстремальной на множестве X. |
Для многоэкстремальной функции на множестве X целесообразно ввести понятие глобального минимума.
Определение 1.1.3. Глобальный минимум
x* X – точка глобального минимума функции f(x) на множестве X, если выполнено условие |
f(x*) < f(x) x X, x x*.
Очевидно, что для одноэкстремальной функции точка ее локального минимума одновременно является и точкой ее глобального минимума. Для многоэкстремальной функции точка глобального минимума совпадает с точкой (точками) локального минимума, в которой функция достигает наименьшего значения по сравнению с ее значениями в точках других локальных минимумов.
К одноэкстремальным функциям на интервале (a, b) относятся, в частности, унимодальные на этом интервале.
Определение 1.1.4. Унимодальная функция
Пусть x* (a, b) – точка минимума функции f(x). Функция f(x) называется унимодальной на интервале (a, b), если для любой пары точек x1, x2 (таких что x1 < x2) интервала (a, b), выполнены условия: f(x1) < f(x2), если x1 > x* f(x1) > f(x2), если x2 < x*. |
Существенно, что понятие унимодальной функции не требует ее дифференцируемости.
Точка глобального минимума функции f(x) на множестве X является оптимальным решением задачи (1.1.1). Однако практически все используемые методы одномерной оптимизации ориентированы на поиск только одного экстремума функции, в общем случае являющегося локальным, поскольку отыскание глобального экстремума для многоэкстремальных функций чрезвычайно затруднено и требует, как правило, просмотра всех ее локальных экстремумов. Поэтому в дальнейшем будем считать, что построение оптимального решения задачи (1.1.1) эквивалентно нахождению локального экстремума функции f(x) на множестве X.
Для решения задачи (1.1.1) необходимы условия, позволяющие идентифицировать оптимальное решение – локальный экстремум функции f(x). Такие условия называются условиями (признаками) оптимальности.
Сформулируем условия оптимальности для случая дифференциру-емой на множестве X функции f(x), которые являются необходимыми и достаточными условиями наличия локального экстремума функции, дифференцируемой в некоторой окрестности точки x X.
Определение 1.1.5. Необходимые условия оптимальности
Пусть точка x* X является точкой экстремума дифференцируемой на множестве X функции f(x), тогда производная функции в точке x* равна нулю. Точка x* X, в которой f(x) = 0, называется также стационарной точкой функции f(x). |
Определение 1.1.6. Достаточные условия оптимальности
(по первой производной)
Пусть точка x* X – стационарная точка функции f(x) по первой производной. Тогда x* X является точкой локального минимума функции f(x), если существует такое число > 0, при котором выполнены условия f(x) < 0 x : x* – < x < x*, f(x) > 0 x : x* > x < x* + , т. е. при переходе через точку x* слева направо производная функции f(x) меняет знак с минуса на плюс. |
Определение 1.1.7. Достаточные условия оптимальности
(по второй производной)
Пусть точка x* X – стационарная точка функции f(x), которая в некоторой окрестности x* дважды непрерывно дифференцируема. Тогда x* X является точкой локального минимума функции f(x), если f(x*) > 0. |
Используя сформулированные необходимые и достаточные условия, поиск оптимального решения задачи (1.1.1) для случая дифференцируемой на множестве X функции f(x) можно осуществить, выполнив, например, следующие действия:
1. Определить множество стационарных точек функции f(x), принадлежащих множеству X.
2. Проверить в каждой стационарной точке выполнение достаточного условия минимума функции f(x) и вычислить ее значение в тех точках, в которых это условие выполнено.
3. Из всех точек, в которых вычислялось значение функции1, выбрать точку с наименьшим значением.
В заключение отметим характерные особенности рассмотренного метода решения задачи (1.1.1):
– он может быть практически реализован, если число стационарных точек функции f(x) на множестве X, определяемых в п. 1, и число граничных точек в случае замкнутого множества X, анализируемых в п. 3, конечно. В этом случае метод позволяет определить глобальный минимум функции f(x) на множестве X;
– в общем случае рассмотренный метод достаточно трудоемкий, так как требует вычисления производных первого и, возможно, второго порядков в подозрительных на экстремум точках, число которых может быть очень велико;
– нахождение производных минимизируемой функции далеко не всегда возможно в реальных задачах, часто функции не задаются аналитически.
В практическом отношении рассмотренный метод не имеет большой ценности, тем не менее многие известные методы решения задачи (1.1.1) используют необходимые условия экстремума в том смысле, что они ориентированы на поиск решения уравнения f(x) = 0, т. е. на поиск стационарных точек минимизируемой функции. Если это уравнение не может быть решено аналитически, то для его решения применяются численные методы. Для решения задачи (1.1.1) используются численные методы, которые могут быть классифицированы по различным характерным признакам. В частности, если в качестве такого признака используется необходимость вычисления производных минимизируемой функции, все рассматриваемые в данном пособии методы можно разделить на две группы:
– методы нулевого порядка – их реализация не требует вычисления производных минимизируемой функции;
– методы второго порядка – их реализация требует вычисления производных второго порядка минимизируемой функции.
Рассматриваемые методы одномерной
оптимизации являются итерационными. С
их помощью, начиная с некоторого
начального приближения х(0),
строят
– бесконечную последовательность точек
х(0), х(1), х(2),
…, х(k), …, где
х(k) – k-е
приближение к искомой точке х*
локального минимума функции f(x).
Для итерационных методов важным является понятие сходимости метода.
Определение 1.1.8
Пусть итерационный метод сходится, если генерируемая в процессе его работы последовательность сходится к х* – искомому решению, т. е. выполнено условие lim х(k) = х*. (1.1.2) k В противном случае метод расходится. |
Помимо понятия сходимости итерационного метода не менее важным является понятие скорости его сходимости. Различают линейную, сверхлинейную и квадратическую скорости сходимости итерационного метода.
Определение 1.1.9
Пусть х* – искомое решение и сходящийся итерационный метод генерирует в процессе своей работы последовательность . Тогда будут справедливы следующие утверждения: 1. Метод сходится с линейной скоростью (или со cкоростью гео-метрической прогрессии, если для всех k, начиная с некоторого k* 0 и 0 q < 1, выполнено условие х(k + 1) – х* qх(k) – х*. (1.1.3) 2. Метод сходится со сверхлинейной скоростью, если для всех k, начиная с некоторого k* 0, выполнено условие х(k + 1) – х* qkх(k) – х*, (1.1.4) где последовательность
3. Метод сходится с квадратической скоростью, если для всех k, начиная с некоторого k* 0 и q 0, выполнено условие х(k + 1) – х* qх(k) – х*2. (1.1.5) |
Методы нулевого порядка, рассматриваемые в § 1.2 и 1.3, имеют следующие особенности.
1. Они ориентированы на исследование
функции, унимодальной
на некотором
начальном интервале
,
содержащем искомую точку локального
минимума.
Начальный интервал 0 будем называть исходным интервалом неопределенности, длину этого интервала обозначим L0. Определение интервала 0 осуществляется на первом (подготовительном) этапе, который называется этапом отделения (локализации) положения локального минимума. В зависимости от предполагаемых свойств минимизируемой функции для выполнения этого этапа используются различные способы, в том числе графические.
2. На втором этапе – этапе уточнения положения локального минимума – осуществляется последовательное уменьшение длины исходного интервала неопределенности, чтобы обеспечить требуемую точность вычисления оптимального решения х*.
Действительно, если известно,
что х*
,
то точка х0 =
/2
(середина интервала) определяет значение
х* с погрешностью, не превышающей
L0 / 2 –
половины длины интервала неопределенности.
Пусть теперь число
> 0 задает требуемую точность определения
х*. Тогда если в процессе работы
метода одномерной оптимизации длина
текущего интервала Lk,
содержащего х*, равна 2,
то требуемая точность определения будет
достигнута, если в качестве х*
выбрать точку
– среднюю точку текущего интервала
неопределенности k.
Таким образом, в процессе работы рассматриваемых методов итерационно строится некоторая последовательность вложенных интервалов неопределенности i, i = 0, 2, 3, …, k, … :
1 =
…
k
=
…
При этом если исходный интервал 0 содержит искомую точку х*, то ее содержат и все остальные интервалы строящейся последовательности.
Работа метода завершается, когда длина очередного k-го интервала неопределенности окажется достаточно малой. Тогда искомую точку минимума определяют как середину последнего интервала неопределен-ности k.
Построение последовательности вложенных
интервалов базируется на свойстве
унимодальности функции на начальном
интервале неопределенности. Рассмотрим
основное правило, позволяющее
последовательно
уменьшать длину этого интервала. Пусть
.
Внутри этого интервала выберем каким-либо
образом две точки – х1, х2,
такие, что х1 < х2.
Тогда возможны три случая (в
силу унимодальности функции f(x)):
– если f(х1)
> f(х2),
точка минимума может быть только на
интервале
;
– если f(х1)
< f(х2), точка
минимума может быть только на интервале
;
– если f(х1) = f(х2), точка минимума может быть только на интервале (х1, х2).
Во всех случаях исходный интервал неопределенности уменьшился на некоторую величину, в результате чего был получен новый интервал 1, содержащий точку минимума. Этот интервал также может быть уменьшен аналогичным образом. Методы, которые будут рассмотрены ниже, отличаются друг от друга способом выбора на каждом шаге пробных значений х1 < х2 внутри текущего интервала неопределенности.
