- •1. Введение в оптимизацию 4
- •2. Безусловная оптимизация функции одной переменной 13
- •1. Введение в оптимизацию
- •Ограничения на допустимое множество
- •Структура оптимизационных задач математического программирования
- •Примеры постановки задачи оптимизации для решения методами математического программирования
- •Классификация методов оптимизации
- •2. Безусловная оптимизация функции одной переменной
- •Свойства функции одной переменной
- •Идентификация экстремумов функции одной переменной
- •Прямые методы поиска экстремума функции одной переменной
- •Метод равномерного поиска
- •Метод золотого сечения
- •Сравнение методов исключения интервалов
- •Полиномиальная аппроксимация
- •Методы с использованием производных
- •Метод Ньютона-Рафсона
- •Метод средней точки
- •Метод секущих
- •3. Безусловная оптимизация функции нескольких переменных
- •Критерии оптимальности для функции нескольких переменных
- •Методы прямого поиска для нескольких переменных
- •Метод эволюционной оптимизации
- •Метод поиска по симплексу ( метод)
- •Градиентные методы
- •Метод Коши (Наискорейшего спуска)
- •Метод покоординатного спуска.
- •С хема метода Гаусса – Зейделя
- •4. Условная оптимизация. Линейное программирование
- •Общие сведения о линейном программировании
- •Постановка задачи линейного программирования
- •Пример постановки задачи линейного программирования
- •Геометрическая интерпретация задачи линейного программирования
- •Симплекс-метод решения задачи линейного программирования.
- •5. Классическое вариационное исчисление
- •Критерий оптимизации в задачах вариационного исчисления
- •Вариация функционала
- •Необходимые условия экстремума. Уравнение Эйлера.
- •Уравнение Эйлера и условия Лежандра для функционалов, зависящих от нескольких функций и от высших производных
- •6. Динамическое программирование
- •Задача о Черепашке
- •Оптимальное управление представляет собой вектор, определяемый последовательностью оптимальных пошаговых управлений
- •Организация процесса оптимизации в динамическом программировании
Критерии оптимальности для функции нескольких переменных
Критерии оптимальности
необходимы для распознавания решений,
а также составляют основу методов поиска
решений. Как и для одномерной системы
рассмотрим разложение Тейлора для
функции нескольких переменных. Для
простоты, начнем с двух переменных
и
.
Разложение производим в окрестности
точки
.
Имеем
.
Здесь
- величина изменения
,
- сумма всех членов ряда выше второго
порядка по
.
То же самое разложение можно записать иначе
,
где
- градиент функции
,
вычисленный в точке
,
симметрическая матрица
порядка
вторых частных производных функции
,
вычисленных в точке
.
Пренебрегая членами высших порядков, определим величину изменения целевой функции, соответствующего произвольному изменению :
.
Напомним, что по определению, во всех точках окрестности минимума выполняется условие
.
Точка
будет точкой глобального минимума, если
данное неравенство выполняется для
всех
.
Если формула справедлива лишь в некоторой -окрестности точки , то минимум локальный.
Если
,
то точка
есть точка минимума. В случае, если
принимает положительные, отрицательные
и нулевые значения в зависимости от
выбора точек из
-окрестности,
точка
представляет собой седловую точку.
Чтобы знак не менялся при произвольном варьировании , градиент должен быть равен нулю, т.е. должна быть стационарной точкой. Если выполняется условие стационарности, то выражение для приращения функции приобретает вид
.
Очевидно, что знак
определяется квадратичной формой
.
Из линейной алгебры
известно, что если задана квадратичная
форма
,
то матрица
:
положительно определена, если
;положительно полуопределена, если
;отрицательно определена, если
;отрицательно полуопределена, если
;является неопределенной матрицей, если для некоторых и для других.
Таким образом,
стационарная точка
есть точка минимума, если
- положительно полуопределенная матрица.
Стационарная точка есть точка максимума, если - отрицательно полуопределенная матрица.
Методы прямого поиска для нескольких переменных
Как и для одномерной оптимизации, методы, ориентированные на решение задач безусловной оптимизации можно разделить на три широких класса в соответствии с типом используемой информации:
Методы прямого поиска, основанные на вычислении только целевой функции;
Градиентные методы, в которых используются значения первых производных целевой функции;
Методы второго порядка, в которых наряду с первыми используются вторые производные .
Для оптимизационных
задач разных типов подходят разные
методы. В прямых методах обычно считается,
что
непрерывна, а
не существует, либо его вычисление
слишком сложно. Кроме того, будем считать,
что целевая функция унимодальна.
Метод эволюционной оптимизации
Идея метода заключается в выборе базовой точки и оценивании значений целевой функции в точках, окружающих базовую точку. Например, при решении задачи с двумя переменными можно воспользоваться квадратным образцом, изображенным на рисунке 3.1.
Рис.3.1. Иллюстрация метода эволюционной оптимизации
Затем, наилучшая из пяти исследованных точек выбирается в качестве следующей базовой точки, вокруг которой строится аналогичный образец. Если ни одна из угловых точек не имеет преимущества перед базовой, размеры образца уменьшаются и поиск продолжается. Такой поиск называется эволюционной оптимизацией.
В задачах большой
размерности расчеты проводятся в
вершинах гиперкуба. Если число переменных
равно
,
то поиск по гиперкубическому образцу
требует
вычислений функции для одного образца.
К сожалению, это число растет очень
быстро с ростом числа переменных и,
несмотря на логическую простоту,
эффективность метода для больших
низка.
