§ 2. Методы переменной метрики.
Зададим направление спуска в (1.1) по формуле:
=-D , (2.1)
где D - симметричная положительно определенная матрица (следовательно, представимая в виде D=GkGk′, где Gk - невырожденная матрица).
Рассмотрим сначала случай квадратичной функции
Q
>
0, при
(2.2)
Оценить скорость сходимости метода (2.1) для таких функций позволяет неравенство Л.В. Канторовича [8]:
,
(2.3)
где A
– положительно определенная симметричная
матрица nxn
с собственными значениями
.
Справедливость данного неравенства (2.3) следует из свойств матрицы A и понятия выпуклого множества. В силу положительной определенности и симметричности A всегда ортогональная матрица B (B′=B-1) такая, что
B′AB-1
=
= C.
Обозначая
=B
,
неравенство (2.3) при
0
можем представить в виде:
1≤
=(
)(
)
≤
,
где
- квадрат отношения соответствующей
координаты на норму вектора y,
то есть:
≥ 0, i=
;
.
(2.4)
На плоскости
рассмотрим n
точек
.
Все они расположены
на одной ветви гиперболы
.
При этом для всех
,
удовлетворяющих (2.4), точка
является выпуклой комбинацией точек
и поэтому принадлежит выпуклому
многоугольнику
(рис.5).
Наибольшего r
значения произведение
будет достигаться в точке
*
касания гиперболы
=r
с многоугольником
.
Искомая точка
.
Причем, число
является решением следующей задачи:
(2.5)
Упражнение 10. Решить задачу (2.5) и убедиться в справедливости неравенства (2.3)
Упражнение 11.
Доказать, что если
≠0,
то при выборе
из одномерной минимизации (1.7) c
для метода (1.1), (2.1) в случае квадратичной
функции (2.2) будем иметь:
(2.6)
*Упражнение 12.
Пусть
- число обусловленности Gk′QGk
(
, где
и
- соответственно максимальное и
минимальное значения матрицы),
где Gk′Gk = Dk.
Если определяется по формуле (2.6), то для квадратичной функции (2.2) на каждой итерации выполняется неравенство:
.
(2.7)
Указание: Воспользоваться неравенством Л.В. Канторовича.
Если ≠ * для всех , то неравенство (2.7) можно представить в виде:
(2.8)
Обозначим правую часть неравенства (2.8) через l. Для положительно определенной симметричной матрицы Gk′QGk l≤1. И если l<1 , то при достаточно больших последовательность { } можарируется геометрической прогрессией const∙qk со знаменателем q (l,1). В этом случае последовательность { } будет сходиться не медленнее, чем геометрическая прогрессия со знаменателем l ( т.е. медленнее, чем линейно со знаменателем l).
Упражнение 13.
Доказать, что последовательность {
},
построенная по методу (1.1). (2.1) для
квадратичной функции (2.2), сходится
сверхлинейно
(т.е. быстрее, чем любая геометрическая
прогрессия со знаменателем q(0;1))
тогда и только тогда, когда сверхлинейно
сходится последовательность {
}.
Указание:
Для выполнения упражнения 13 докажите,
что если
и
- соответственно минимальное и максимальное
собственные значения положительно
определенной симметричной матрицы Q,
то
,
x
Rn.
(2.9)
Из неравенства
(2.7) (как и из (2.8)) следует, что для ускорения
сходимости последовательности {f(xk)}
матрицы Dk
= Gk′Gk
не обходимо выбирать так, чтобы числа
обусловленности матриц Gk′QGk
были близки
к 1 (т.е. собственные значения каждой
матрицы были близки между собой). И при
Dk≈Q-1
в силу (2.6) шаговый множитель, определяемый
с помощью одномерной минимизации, будет
близок к 1. В частности, выбирая Dk=Q-1,
получим Gk′QGk
= Gk′(
Gk′Gk)-1Gk
= E
и
,
,
а l=0.
Поэтому
=
– Q-1
=
*,
и в данном случае для получения точки
минимума
*
требуется всего одна итерация.
Для произвольной целевой функции из класса C2 в окрестности точки локального минимума * будем иметь:
.
И так как =0, то
Поэтому, если для
функции
последовательность {
}
строится с помощью обобщенного
градиентного метода (1.1), (1.7), (2.1) и сходится
к точке невырожденного
(матрица
определена положительно) локального
минимума
*,
то как и для квадратичной функции,
выполняется неравенство:
,
(2.10)
Где - число обусловленности матрицы Gk′ Gk, а Gk′Gk = Dk.
Соотношение (2.10), как и в случае квадратичной функции, свидетельствуют о том, что для быстро сходимости процесса (1.1), (2.1) матрицы Dk необходимо по возможности выбирать близкими к [ ]-1 чтобы . Это относительно ко всем рассмотренным выше способам выбора шагового множителя .
Всякая симметричная
положительно определенная матрица Dk-1
задает скалярное произведение
=
Dk-1
и связанную с ним метрику. Линейную
часть разложения функции f(x)
в окрестности точки x
можно представить в виде:
=
(Dk-1Dk
,
)
= (Dk
,
)k
Следовательно, вектор Dk можно рассматривать как градиент функции в точке в пространстве со скалярным произведением (∙ , ∙)k, а метод (1.1), (2.1) – как градиентный метод в пространстве с переменной метрикой, определяемой матрицей Dk-1 = [D( )]-1. В частности, если в процессе перехода от одной точки к другой метрику не изменять, то во всем пространстве она будет определена постоянной положительно определенной симметричной матрицей D-1, которую можно представить в виде:
D-1 = (GG′)-1
где G
– невырожденная матрица размерности
.
В этом случае матрица G
будет определять переход к новой системе
координат, в которой алгоритм (1.1), (2.1)
будет представлен как обычный градиентный
метод (1.6) [9]. Действительно, имеем:
=
D-1
=
(G-1)′
G-1
= (G-1
,
D-1
)
=
,
где
=
D-1
,
то есть
= D , (2.11)
И осуществляя данное линейное преобразование, получим:
=
G
=g(
),
g(
)
=
G
= G′G
G
= G′
= G′
,
= G-1
= G-1
-
G-1D
=
-
G-1
=
-
g(
).
Скорость сходимости
процесса
=
-
g(
)
(или, что то же самое, процесса
=
-
D
)
будет определяться числами обусловленности
матриц Gk′
G
=
g(
),
где
= G-1
.
Поэтому алгоритм будет эффективным,
если D
≈ [
]-1,
то есть
g(
)
≈ G′(GG′)-1G
= E.
На рис.6 изображены линии уровня ( =const) в окрестности точки =0 локального невырожденного минимума “овражной” функции двух переменных.
Применение в этом
случае обычного градиентного метода
(1.6) будет неэффективно, так как векторы
=
всякий раз будут ортогональны линиям
уровня (см.рис.1), что, вероятнее всего,
приведет к колебаниям от одной стенки
оврага к другой и медленному продвижению
к точке минимума вдоль оси оврага l.
В то же время удачное линейное
преобразование координат
=G
(что равносильно выбору матриц D
≈ [
]-1)
может существенно изменить характер
линий уровня и тем самым ускорить
сходимость процесса (рис.7).
Упражнение 14.
Рассмотрим пример функции
.
Сделайте несколько
итераций из начальной точки
= (2;2)′ по методу (1.6), (1.7) и с использованием
(2.11). В соответствующих системах координат
изобразите линии уровня и проделанные
итерации.
В действительности, при поиске точки минимума функция , матрица неизвестна. Поэтому на практике обычно полагают D ≈ [ ]-1 , что приводит к методу Ньютона.
