- •Д. Р. Воденин Численные методы оптимизации Учебно-методическое пособие
- •Оглавление
- •Глава 1. Одномерная оптимизация 14
- •Глава 2. Многомерная оптимизация без ограничений 25
- •Глава 3. Многомерная оптимизация с ограничениями 43
- •Глава 1. Одномерная оптимизация
- •Основные понятия
- •Классический подход
- •Метод деления отрезка пополам.
- •Метод золотого сечения
- •Метод Фибоначчи.
- •Симметричные методы
- •Метод Ньютона.
- •Глава 2. Многомерная оптимизация без ограничений
- •Основные понятия
- •Классический подход.
- •Классификация численных методов поиска экстремума функции нескольких переменных без ограничений
- •Метод покоординатного спуска
- •1. Задать: начальную точку ;точность ;шаги по координатам
- •Метод Хука и Дживса(метод конфигураций)
- •1.Задать: начальную точку ;точность ;шаги по координатам
- •2.Осуществить исследовательский поиск
- •4. Провести поиск по образцу.
- •Метод наискорейшего спуска
- •1.Задать: начальную точку ;точность ;
- •Метод Флетчера-Ривса
- •1.Задать: начальную точку ;точность ; ;
- •Эвристический выбор начального интервала одномерной минимизации
- •Алгоритм
- •Вычислить функцию в трех точках ;
- •Проверить условие окончания:
- •Метод Давидона-Флетчера-Пауэлла
- •1.Задать: начальную точку ;точность ; ;
- •Методы Ньютона и Ньютона-Рафсона.
- •1.Задать: начальную точку ;точность ; ;
- •1. Задать: начальную точку ;точность ; ;
- •О методе наименьших квадратов
- •Глава 3. Многомерная оптимизация с ограничениями
- •Классическая задача на условный экстремум
- •Нелинейное программирование
- •Классификация численных методов многомерной оптимизации при наличии ограничений
- •Метод внешних штрафных функций
- •Алгоритм
- •1.Задать: начальную точку ;точность ; ; ;
- •Замечания
- •Метод барьерных функций
- •Алгоритм
- •1.Задать: начальную точку внутри области ;точность ; ; ; ;
- •Замечания
- •Комбинированный метод штрафных функций
- •Алгоритм
- •Замечания
- •4. Справедливы замечания для внешних штрафных функций и для барьерных функций.
- •Алгоритм
- •1. Задать: начальную точку точность ; ; ; ; ит начальные значения параметра
- •Замечания
- •Метод точных штрафных функций
- •Алгоритм
- •Замечания
- •Метод проекции градиента
- •Алгоритм
- •1. Задать: начальную точку ; точность ; ;
- •Замечания
- •Литература
Глава 1. Одномерная оптимизация
Основные понятия
R- множество действительных(вещественных чисел).
.
функция
определенная на множестве
и
принимающая во всех точках этого
множества конечные значения.
Рассмотрим
задачу
Задача
сводится к данной заменой знака целевой
функции.
Определение
1.
Точку
назовем точкой
минимума функции
на множестве
,
если
.
Величину
назовем наименьшим
или минимальным значение функции
на множестве
.
Множество
всех точек минимума обозначим через
Определение
2.
Функция
называется
ограниченной
снизу на
множестве
,
если
Определение
3.
Функция
называется не
ограниченной снизу
на множестве
,
если
Определение
4.
Пусть функция
ограничена снизу
на множестве
.
Число
назовем
точной нижней гранью функции
на множестве
,
если
1.
2.
Определение
5.
Последовательность
называется
минимизирующей
для функции
на множестве
,
если
Определение
6.
окрестностью
точки
называется
множество
Определение
7. .[2]
Пусть функция
определена и
непрерывна на отрезке
.Назовем
ее унимодальной
на этом отрезке, если
такие, что
1.
строго монотонно
убывает при
(если
)
2.
строго монотонно
возрастает при
(если
)
3.
при
Замечание. Случаи,
когда один или два из отрезков
вырождаются в точку не исключены.
Классический подход
Под классическим мы будем понимать тот подход, который основан на дифференциальном исчислении и подробно описан в учебниках по математическому анализу.
Пусть функция кусочно-непрерывна и кусочно-гладкая на отрезке . Тогда, как известно, точками экстремума могут быть лишь те точки, где выполняется одно из следующих условий:
либо терпит разрыв.
либо непрерывна, но ее производная терпит разрыв.
либо производна существует и
.либо
или
.
Приведем без доказательства сначала необходимые, а потом достаточны условия существования экстремума.
Теорема
1.
Пусть функция
определена, непрерывна и дифференцируема
на множестве
.Если
точка
-
точка локального минимума, то
.
Теорема
2.
Пусть функция
определена, непрерывна и дважды
дифференцируема на множестве
.Если
точка
-
точка локального минимума, то
.
Теорема 3. Пусть функция определена, непрерывна и дифференцируема на множестве . Если в точке - выполняются следующие условия:
1. .
2.
и
то
точка
‑ точка локального
минимума.
Теорема 4. Пусть функция определена, непрерывна и дважды дифференцируема на множестве . Если в точке - выполняются следующие условия:
1. .
2.
то
точка
-
точка локального
минимума.
Теорема
5.
Пусть функция
определена, непрерывна и имеет на
множестве
непрерывные производные до порядка n
включительно.
Если в точке
-:
а
то точка
-
точка локального
минимума если
и
не является точкой экстремума, если
.
2. то точка - точка локального минимума.
Метод деления отрезка пополам.
Простейшим
методом минимизации функции одной
переменной является метод деления
отрезка пополам (метод дихотомии). Опишем
его. Будем считать, что функция
определена и унимодальна на отрезке
.
Пусть
требуемая точность вычислений,
- параметр метода. Начинаем с выбора
двух точек
(1.1)
. (1.2)
После этого вычисляем значения функции в этих точках и сравниваем между собой.
Если
то полагаем
;
иначе
Так
как функция
определена и унимодальна на отрезке
,
то ясно, что
Ø,
а его длина равна
(1.3)
Применим
метод математической индукции. Пусть
отрезок
уже известен, и его длина равна
(1.4)
Тогда на этом отрезке берем точки
,
(1.5)
расположенные на отрезке симметрично относительно его середины и вычисляем значение функции в этих точках.
Если
то полагаем
;
иначе
Длина
получившегося отрезка
равна
(1.6)
Ø
Описанный
процесс можно продолжать до тех пор
пока не будет выполнено неравенство
,
где
- заданная точность.
Отсюда имеем:
(1.7)
Так как каждое деление пополам требует двух вычислений значений функции, то для достижения точности потребуется всего
таких вычислений.
После
определения отрезка
в качестве приближения точки
выбираем
- внутреннюю точку данного отрезка. При
этом достигается максимальная абсолютная
погрешность
(1.8)
Разумеется, можно
вместо
взять точку
,
однако в этом случае
для нахождения
требуется
дополнительное вычисление функции.
