- •Множество и функция Множество
- •Функция
- •Поле и пространство Поле
- •Пространство
- •Обозначение векторов и скаляров
- •Вопросы для самопроверки
- •Экстремумы. Критические и стационарные точки. Задача оптимизации Экстремумы
- •Локальные и глобальные минимумы
- •Задача оптимизации
- •Вопросы для самопроверки
- •Ряд тейлора и его свойства Градиент и матрица Гессе
- •Ряд Тейлора
- •Квадратичная форма Квадратичная форма и ее виды
- •Собственные числа и собственные вектора
- •Гессиан и квадратичная функция
- •Вопросы для самопроверки
- •Окончание поиска и численное дифференцирование Критерий останова для методов оптимизации
- •Численное дифференцирование
- •Вопросы для самопроверки
- •Методы дихотомии и трехточечного деления Метод дихотомии
- •Теорема
- •Метод трехточечного деления
- •Вопросы для самопроверки
- •Метод золотого сечения
- •Метод Фибоначчи
- •Метод ньютона, метод секущих Метод Ньютона
- •Метод секущих
- •Вопросы для самопроверки
- •Метод Мюллера
- •Методы градиентного спуска Условные обозначения
- •Градиентный методы спуска с постоянным шагом
- •Градиентный метод спуска с убывающим шагом
- •Вопросы для самопроверки
- •Метод наискорейшего спуска. Овражные задачи Метод наискорейшего спуска
- •Вопросы для самопроверки
- •Метод Ньютона
- •Модифицированные ньютоновские методы Демпфированный метод Ньютона с переменным αk
- •Метод Левенберга-Марквардта
- •Вопросы для самопроверки
- •Методы барзилая-борвейна
- •Стабилизированный метод Барзилая-Борвейна
- •Вопросы для самопроверки
- •Условия вульфа
- •Алгоритм 2: Линейный поиск на основе условий Вульфа
- •Вопросы для самопроверки
- •Методы сопряженных градиентов
- •Методы сопряженных градиентов
- •Дополнение
- •Вопросы для самопроверки
- •Метод бфгш с ограниченной памятью Классический метод бфгш и его проблемы
- •Алгоритм экономии памяти для метода l-bfgs
- •Алгоритм l-bfgs
- •Вопросы для самопроверки
- •Идея метода доверительных областей
- •Основные положения
- •Метод доверительных областей
- •Вопросы для самопроверки
- •Метод хука-дживса Описание метода
- •Вопросы для самопроверки
Метод доверительных областей
Сформулируем алгоритм доверительных областей.
Алгоритм 1: Алгоритм доверительных областей
Важной особенностью метода доверительных областей является возможность использо- вания квазиньютоновского подхода к формированию модели, которая не будет требовать
вычисления матрицы Гессе. В этом случае мы рассматриваем квадратичную задачу
где вместо матрицы Гессе используется квазиньютоновская матрица Bk. Два ее важных преимущества таковы: во-первых, нет необходимости вычислять набор вторых производ- ных целевой функции, во-вторых, скорее всего, Bk положительно определенная. Недостат- ком будет то, что точность ее меньше, чем если используется матрица Гессе, но в данном контексте это несущественно.
Рассмотрим пример работы метода доверительных областей на функции Розенброка. Начальная точка x0 = (−1, −1)⊤, точность e = 10−3, начальный радиус области ∆0 = 1.
Траектория оптимизации показана на рисунке 4.
Х
отя
метод немного уступает квазиньютоновским
методам по скорости, он менее скло- нен
к
неустойчивому
поведению.
Таким
образом,
он
является
одним
из
лучших
методов
оптимизации
в
плане
достижения
компромисса
между
скоростью
и
надежностью.
Вопросы для самопроверки
1. Зачем метод доверительных областей использует линейный поиск, когда можно найти минимум квадратичной модели аналитически?
2. Известно улучшение метода доверительных областей, когда доверительная область имеет форму эллипсоида, а не шара. Каким образом расчитать эту область? Пред- ложите формулы, которые нужно использовать для работы с такой модфицикацией метода.
Метод хука-дживса Описание метода
П
усть
имеется
точка
x0,
задан
шаг
по
каждому
измерению
pi
=
P
ei,
где
P
–
скаляр,
ei
–
единичный
вектор
соответствующей
оси.
Из
текущей
точки
в
направлениях
вдоль
координатных
осей
можно
сделать
2n
шагов,
где
n
–
число
измерений,
как
показано
на
рисунке 1.
Если просто перебирать все 2n шагов, то эффективность метода будет существенно уменьшаться с ростом размерности. Поэтому первая идея, используемая в методе Хука- Дживса, такова. По каждой из координат нужно выбрать из точки x0 первую точку, где целевая функция уменьшится, и перейти в нее. Если улучшения нет, оставить данную ко- ординату без изменений и перейти к следующей координате. Примеры последовательности перебора шагов для случая двух измерений показаны на рисунке 2. Этот шаг носит назва- ние исследующего шага. Если ни одно подходящее x1 не было найдено, то мы уменьшаем P в 2 раза и повторяем исследующий шаг.
Р
ис.
2 –
Примеры
исследуюшего
шага.
Красным
отмечены
номера
непринятых
точек,
где
целевая функция увеличилась, зеленым
– принятых, где целевая функция
уменьшилась.
Вторая идея, используемая в методе Хука-Дживса – шаг по образцу. Если было найдено новое подходящее значение x1 : f (x1) < f (x0), то делаем шаг по образцу:
x2 = a(x1 − x0) + x0, a > 1.
Иллюстрация шага по образцу приведена на рисунке 3.
Сразу после шага по образцу делается исследующий шаг. Суть этой идеи в том, что если мы нашли некоторое удачное направление, то в этом направлении следует сразу сделать еще один шаг «по образцук, а затем уточнить его с помощью исследующего шага.
Алгоритм 1: Алгоритм Хука-Дживса
Рассмотрим в качестве примера работу метода Хука-Дживса на функции Химмельблау. Начальная точка x0 = (1, 1)T, точность ε = 10—2, параметры P = 1, a = 2. Траектория метода показана на рисунке 4.
Рис. 4 – Траектория метода Хука-Дживса на функции Химмельблау. Пустыми квадрати- ками отмечены точки, где вычислялась целевая функция, зелеными кружками отмечены точки, принятые после исследующего шага, черными квадратиками отмечены точки, полу- ченные после шага по образцу. Синий кружок – стартовая точка, красный кружок – найден- ная точка минимума.
Преимущества метода Хука-Дживса:
1. Метод нулевого порядка, не требует вычисления производной.
2. Надежен, сходится почти всегда. Проблемы метода Хука-Дживса:
1. Сходимость линейная.
2. На больших размерностях становится неэффективен.
3. Испытывает трудности на овражных задачах.
В качестве второго примера рассмотрим работу метода Хука-Дживса на функции Ро- зенброка. Начальная точка x0 = (−2, 0)T, точность ε = 10—3, параметры P = 1, a = 2. Траектория метода показана на рисунке 5.
Рис. 5 – Траектория метода Хука-Дживса на функции Розенброка.
Метод действительно оказался не очень эффективен на овражной задаче.
