
- •Алгоритм:
- •Дополнительные сведения о методе Ньютона
- •1.Минимизация неквадратичных функций
- •3.Скорость сходимости
- •4.Трудоемкость итерации
- •5.Итог
- •Квазиньютоновские методы
- •Общий алгоритм для квазиньютоновских методов:
- •Дополнительные сведения о квазиньютоновских методах.
- •1.Виды матрицы
- •2.Точность одномерной минимизации
- •4.Скорость сходимости
- •Сравнение квазиньютоновских методов с методом сопряженных градиентов и с методом Ньютона
Лабораторная работа 4.
Метод Ньютона и квазиньютоновские методы минимизации функций многих переменных.
Постановка задачи: Требуется найти |
безусловный минимум функции |
n |
|||||||
переменных f (x) = f (x , x |
2 |
,..., x |
n |
) , т.е. такую точку x* E |
n |
, что |
f (x* ) = min f (x) . |
|
|
1 |
|
|
|
|
x En |
|
|||
Предполагается, что целевая функция |
|
|
|
|
|||||
f (x) дважды дифференцируема в En |
и |
||||||||
возможно вычисление ее производных в произвольной точке En . |
|
Метод Ньютона
Стратегия поиска: Пусть целевая функция f (x) дважды дифференцируема в En .
Тогда, с помощью градиента и матрицы Гессе, для нее можно записать разложение в ряд по формуле Тейлора в окрестности точки xk
f (x) = f (xk ) + f (xk )T ∆x + 12 ∆xT H (xk )∆x +o(∆x
2 )
где o(∆x
2 ) - сумма всех членов разложения, имеющих порядок выше второго, ∆xT H (xk )∆x - квадратичная форма. Отсюда следует, что поведение функции f (x) с точностью до величины o(
∆x
2 ) может быть описано квадратичной функцией:
Φk (x) = f (xk ) + f (xk )T ∆x + 12 ∆xT H (xk )∆x
Минимизируем функцию Φk (x) вместо целевой функции f (x) . Найдем точку минимума xk +1 функции Φk (x) из условия стационарности градиента Φk (x) = 0
Φk (x) = H (xk )(x − xk ) + f (xk ) = 0 |
|
(1) |
Пусть матрица Гессе H (x) положительно определена при всех |
x En и, |
|
следовательно, невырождена (det H (x) > 0 ). Тогда |
существует обратная |
матрица |
[H (x)]−1 . Отметим, что квадратичная функция Φk (x) |
с положительно определенной |
матрицей H (xk ) сильно выпукла, и уравнение (1) определяет единственную точку глобального минимума функции Φk (x) . Умножим слева обе части равенства (1) на
матрицу [H (xk )]−1 и найдем точку минимума xk +1 |
квадратичной функции Φk (x) , |
аппроксимирующей f (x) в окрестности точки x = xk |
|
xk +1 = xk + pk , |
(2) |
где |
|
pk = −H −1 (xk ) f (xk ) |
(3) |
- направление минимизации на k +1 шаге. |
|
|
1 |
Итерационный процесс (2), начатый из произвольной точки x0 En , называется
методом Ньютона минимизации функции многих переменных и является обобщением метода Ньютона в одномерном случае.
Очевидно, для квадратичной функции с положительно определенной матрицей применение метода Ньютона обеспечивает получение точки глобального минимума ровно за один шаг из любой точки x0 .
Алгоритм:
1.Задать точность вычислений ε , выбрать начальное приближение x0 . 2.Положить k = 0 ( k - номер итерации). Вычислить значение p0 = −H −1 (x0 ) f (x0 ) .
3.Вычислить точку xk +1 = xk + pk , градиент f (xk +1 ) и гессиан H (xk +1 ) .
4.Проверить критерий окончания поиска f (xk +1 )
< ε . Если критерий выполнен, перейти к шагу 6.
5.Найти новое направление поиска pk +1 = −H −1 (xk +1 ) f (xk +1 ) . Положить k = k +1 и перейти к шагу 3.
6.Выбрать приближенно x* = xk +1 , f (x* ) = f (xk +1 ) . Поиск завершен.
Дополнительные сведения о методе Ньютона
1.Минимизация неквадратичных функций
При минимизации неквадратичной выпуклой функции применение метода Ньютона обеспечивает, как правило, быструю сходимость последовательности {xk }
к точке минимума x En . На каждом шаге итерационного процесса используется
информация о поведении функции в окрестности точки xk , содержащаяся в значениях не только первых, но и вторых ее частных производных. Поэтому при прочих равных условиях следует ожидать более быструю сходимость метода Ньютона по сравнению с градиентными методами.
Если график целевой функции имеет овражную структуру, то вектор pk из (3)
может составлять с осью оврага меньший угол, чем антиградиент. Эта особенность алгоритмов метода Ньютона делает их эффективнее алгоритмов метода градиентного спуска при минимизации овражных функций.
2.Монотонноеубывание
Вдали от решения параметр длины шага pk , характеризующий обычный метод
Ньютона, может не обеспечивать монотонного убывания минимизирующей последовательности (2), и в этом смысле классический метод Ньютона не является методом спуска. Даже сходящаяся минимизирующая последовательность при использовании метода Ньютона не всегда обеспечивает монотонное убывание
целевой функции f (x) , т.е. неравенство f (xk +1 ) < f (xk ) для некоторых k может нарушаться. Этот недостаток устранен в обобщенном методе Ньютона
2
|
xk +1 = xk −αk H −1 (xk ) f (xk ) , |
|
(4) |
||||||||||||||||
где величина αk |
> 0 находится на каждом шаге из условия исчерпывающего спуска |
||||||||||||||||||
по направлению |
pk = −H −1 (xk ) f (xk ) . Можно показать, что если целевая функция |
||||||||||||||||||
является сильно выпуклой и ее матрица Гессе H (x) |
для любых точек |
x, y En |
|||||||||||||||||
удовлетворяет |
неравенству |
|
|
|
H (x) − H (y) |
|
|
|
≤ L |
|
|
|
x − y |
|
|
|
, |
где L = const > 0 , |
то при |
|
|
|
|
|
|
|
|
произвольном выборе начальной точки x0 En обобщенный метод Ньютона (4) обладает квадратичной скоростью сходимости.
3.Скорость сходимости
При выборе достаточно хорошего начального приближения минимизирующая последовательность для сильно выпуклой дважды дифференцируемой функции сходится к точке минимума с квадратичной скоростью. Если начальная точка выбрана недостаточно близко к искомой точке минимума, или же целевая функция не является сильно выпуклой, то последовательность (2) может расходиться. Высокая скорость сходимости метода достигается за счет того, что он использует информацию о вторых производных целевой функции. Соответственно, итерация метода Ньютона существенно более трудоемка, чем, например, итерации градиентных методов.
4.Трудоемкость итерации
На каждой итерации необходимо вычислять и обращать матрицу порядка n , что в случае большой размерности пространства является достаточно трудоемкой операцией. На практике обычно не вычисляют матрицу, обратную к положительно
определенной матрице H k , а вектор pk находят из решения системы линейных алгебраических уравнений (СЛАУ): H k pk = − f (xk ) . Решение такой системы требует O(n3 ) действий на каждой итерации.
5.Итог
Главным достоинством метода Ньютона является высокая скорость сходимости. При выборе достаточно хорошего начального приближения минимизирующая последовательность для сильно выпуклой дважды дифференцируемой функции сходится к точке минимума с квадратичной скоростью. Это очень высокая скорость сходимости.
Существенный недостаток метода Ньютона – локальная сходимость. Если точка x0 выбрана недостаточно близко к точке x* , то последовательность {xk } может
расходиться. Отметим, что даже сходящаяся последовательность {xk } метода Ньютона не всегда обеспечивает монотонное убывание.
Другой существенный недостаток метода Ньютона состоит в том, что на каждой итерации метода нужно вычислять матрицу из вторых производных целевой функции и решать соответствующую систему линейных уравнений для
3