Северин Методы БМ
.pdf29.Как заканчиваются вычисления в методе Флетчера – Ривса?
30.Какого порядка метод Флетчера – Ривса?
31.Составьте алгоритм метода Флетчера – Ривса.
32.Составьте алгоритм экономного метода Флетчера – Ривса.
33.Укажите достоинства и недостатки метода Флетчера – Ривса.
34.Дайте определение рестарта в методе Флетчера – Ривса.
35.Обоснуйте необходимость применения рестартов в методе Флетчера – Ривса.
36.Раскройте роль рестартов в повышении эффективности метода Флетчера – Ривса.
37.Запишите и обоснуйте формулу Полака – Рибьера.
38.Запишите итерационные формулы метода Полака – Рибьера.
39.Опишите метод Полака – Рибьера.
40.Как вычисляется величина шага в методе Полака – Рибьера?
41.Как заканчиваются вычисления в методе Полака – Рибьера?
42.Какого порядка метод Полака – Рибьера?
43.Составьте алгоритм метода Полака – Рибьера.
44.Чем отличается алгоритм метода Полака – Рибьера от алгоритма метода Флетчера – Ривса?
45.Укажите достоинства и недостатки метода Полака – Рибьера.
46.Обоснуйте преимущество метода Полака – Рибьера перед методом Флетчера – Ривса.
47.Какие вы еще знаете методы сопряженных градиентов?
48.Запишите и обоснуйте формулу Хестенса – Штифеля.
49.Запишите и обоснуйте формулу Диксона.
50.Запишите и обоснуйте формулу Даи – Юана.
101
4. КВАЗИНЬЮТОНОВСКИЕ МЕТОДЫ
Не существует единственного самого эффективного метода для безусловной минимизации функции многих переменных. В этом разделе рассматриваются квазиньютоновские методы первого порядка, основанные на формуле Ньютона и на аппроксимации матрицы Гессе или обратной к ней матрицы с использованием значений градиента. Приводятся теоретические основы квазиньютоновских методов, вводится понятие поправки, уточняющей аппроксимацию и вычисляемой по градиентам. Обосновывается метод Бройдена с поправкой ранга один, анализируются его свойства. Вводится поправка ранга два, конструируется метод Девидона – Флетчера – Пауэлла с аппроксимацией обратной матрицы Гессе, рассматриваются его свойства, перечисляются преимущества и недостатки. Обосновывается метод Бройдена – Флетчера – Гольдфарба – Шанно с аппроксимацией матрицы Гессе, приводящей к необходимости решения системы уравнений, и отмечается его малая чувствительность к точности одномерного поиска. Модифицируется метод Бройдена – Флетчера – Гольдфарба – Шанно путем перехода к аппроксимации обратной матрицы Гессе. Приводятся алгоритмы для всех рассмотренных методов. Рассматривается скорость сходимости методов многомерной безусловной минимизации и проводится сравнение методов. Дается описание лабораторной работы по изучению квазиньютоновских методов оптимизации.
4.1. Основы квазиньютоновских методов
Модифицированный метод Ньютона с одномерным поиском (2.5)
для минимизации целевой функции f (x) с x Rn |
представляется ите- |
рационной формулой |
|
xk 1 xk k dk , |
(4.1) |
102 |
|
где k – значение параметра одномерной минимизации целевой функции из точки xk в направлении dk Hk1gk , Hk 2 f (xk ) –
матрица Гессе, gk f (xk ) – градиент. Модифицированный метод Ньютона – это метод второго порядка. Для многих задач оптимизации вычисление матрицы Гессе, состоящей из вторых частных производных, требует больших затрат машинного времени.
Квазиньютоновские методы также основаны на итерационной формуле (4.1). Однако при вычислении направления одномерного поиска dk выполняется аппроксимация матрицы Гессе или обратной к ней матрицы с использованием значений градиента. Таким образом, все квазиньютоновские методы – это методы первого порядка.
Рассмотрим принципы построения аппроксимирующей матрицы для обратной матрицы Гессе G(x) H(x) 1 . Поскольку матрицы H(x)
и G(x) симметрические, то начальное приближение матрицы G(x) задается в виде некоторой симметрической положительно определенной матрицы G0 .
Положительная определенность матрицы обеспечивает соответствующее направление одномерного поиска d0 G0g0 из начальной точки x0 с градиентом целевой функции g0 как направление спуска.
Обычно полагают G0 E , тогда d0 g0 – направление наискорей-
шего спуска. Из начальной точки x0 в направлении d0 выполняют одномерный поиск минимума целевой функции:
0 |
arg min f (x0 d0 ) , |
x1 x0 0d0 . |
|
|
|
В точке x1 вычисляется значение градиента целевой функции g1 . Для последующих итераций построение аппроксимирующей матрицы основано на свойстве (3.8) квадратичной функции (3.1) с A H
gk 1 gk H(xk 1 xk ) . |
(4.2) |
103
С обозначениями |
|
|
pk gk 1 gk , sk |
xk 1 xk |
(4.3) |
свойство (4.2) примет вид |
|
|
pk Hsk . |
|
(4.4) |
Умножая это равенство слева на обратную матрицу Гессе G H 1 , получим Gpk sk . Если известна аппроксимация матрицы Гессе G k в
точке xk , то следующее ее приближение Gk 1 в точке xk 1 должно удовлетворять уравнению
Gk 1pk sk . |
(4.5) |
Это матрично-векторное уравнение называется квазиньютоновским условием. Оно представляет собой систему n линейных алгебраических уравнений. С учетом свойства симметричности матрица Gk 1 имеет
N n (n2 n)
2 n(n 1)
2
неизвестных элементов, то есть система линейных алгебраических уравнений (4.5) содержит больше неизвестных, чем уравнений. Для ее решения необходимо дополнительное условие, которое записывается в виде уравнения коррекции
Gk 1 Gk Gk . |
(4.6) |
Здесь Gk – симметрическая матрица, называемая поправкой и формируемая так, чтобы выполнялась система уравнений (4.5). Различные квазиньютоновские методы отличаются между собой формулами для поправки Gk .
После определения аппроксимирующей матрицы G k на последующих итерациях квазиньютоновского метода направление одномерного поиска определяется по формуле
104
dk |
Gk gk . |
(4.7) |
|
В этом направлении из точки xk |
выполняется одномерный поиск: |
|
|
k arg min f (xk dk ) , |
xk 1 xk k dk . |
(4.8) |
|
|
|
|
|
Итерации продолжаются, пока не выполнится условие окончания процесса оптимизации
xk 1 xk |
|
, |
|
где – допустимая погрешность.
Направление поиска (4.7) отличается от направления метода наискорейшего спуска в формуле (1.20) gk умножением gk на из-
меняющуюся на каждой итерации матрицу G k . Направление (4.7) можно представить как направление метода наискорейшего спуска в пространстве переменных с измененной метрикой. Поэтому квазиньютоновские методы называются также методами переменной метрики.
4.2. Метод Бройдена
Для того, чтобы аппроксимация обратной матрицы Гессе давала симметрическую матрицу, поправка Gk в формуле (4.6) должна быть также симметрической матрицей. Возьмем произвольный нену-
левой вектор u ( u |
|
u |
2 |
|
u |
n |
)T и построим матрицу |
|
|
|
|||||||||||
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
u |
|
|
|
|
|
|
|
|
u u u u |
|
u u |
|
||||||||
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
1 1 |
1 2 |
|
1 |
n |
|||
uuT |
u |
|
|
|
|
|
|
|
|
|
u u u |
|
u |
|
u |
|
u |
|
|||
|
|
2 |
( u u |
2 |
u |
n |
) |
|
2 1 |
2 |
|
2 |
|
2 |
|
n . |
|||||
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
u |
n |
|
|
|
|
|
|
|
|
u |
u u |
n |
u |
2 |
u |
n |
u |
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
n 1 |
|
|
|
n |
||||
Это симметрическая матрица с пропорциональными строками, поэтому она имеет единичный ранг rank (uuT ) 1 . Сформируем поправку
105
ранга один в виде Gk |
uuT , где |
– некоторый вещественный |
|||||||
коэффициент. По формуле (4.6) |
|
|
|
|
|
|
|
||
|
Gk 1 |
Gk uuT . |
(4.9) |
||||||
Система линейных алгебраических уравнений (4.5) принимает вид |
|||||||||
|
(Gk uuT )pk sk . |
|
|||||||
Раскрывая скобки, имеем |
|
|
|
|
|
|
|
|
|
|
Gk pk uuT pk sk , |
|
|||||||
то есть |
|
|
|
|
|
|
|
|
|
(uT p |
k |
)u s |
k |
G |
k |
p |
k |
, |
|
|
|
|
|
|
|
||||
где скобки содержат скалярную величину. Это векторное равенство
удовлетворяется, если положить u s |
k |
G |
k |
p |
k |
|
и 1 (uT p |
k |
) при |
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
условии uT p |
k |
0 . Тогда равенство (4.9) примет вид |
|
|
|
||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Gk 1 Gk |
(s |
k |
G |
k |
p |
k |
)(s |
k |
G |
k |
p |
k |
)T |
. |
|
(4.10) |
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
(s |
k |
|
G |
k |
p |
k |
)T p |
k |
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
Эта формула коррекции аппроксимации обратной матрицы Гессе представлена в 1967 году английским математиком Ч. Д. Бройденом и называется формулой Бройдена, а использующий ее квазиньютоновский метод называется методом Бройдена. Таким образом, метод Бройдена основан на формулах (4.3), (4.7), (4.8) и (4.10). Первая итерация начинается из заданной начальной точки x0 , и в направлении антиградиента выполняется одномерный поиск:
G0 E , |
d0 g0 , |
0 |
arg min f (x0 d0 ) , |
x1 x0 0d0 . (4.11) |
|
|
|
|
|
Последующие итерации для k 1, 2, 3, выполняются по формулам:
pk 1 gk gk 1 , sk 1 xk xk 1 , (4.12)
106
u |
k 1 |
s |
k 1 |
G |
p |
, |
G |
k |
G |
k 1 |
|
uk 1uTk 1 |
, |
(4.13) |
|
||||||||||||||
|
|
|
k 1 k 1 |
|
|
|
|
uTk 1pk 1 |
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
dk Gkgk , |
k arg min f (xk dk ) , |
xk 1 xk kdk . (4.14) |
|||
|
|
|
|
||
Итерации продолжаются до тех пор, пока выполняется условие |
|||||
|
|
xk 1 xk |
|
, |
|
|
|
|
|
||
где – допустимая погрешность. По формулам (4.11)–(4.14) составим алгоритм метода Бройдена.
А л г о р и т м м е т о д а Б р о й д е н а .
Входные параметры: x – начальная точка поиска, f (x) – процедура вычисления функции, – допустимая погрешность.
Выходной параметр x – конечная точка поиска.
1. |
Вычислить |
gx f (x) и положить d gx , G E . |
2. |
Вычислить |
r arg min f (x d) , s r d . |
|
|
|
3.Положить x x s , gy gx .
4.Вычислить gx f (x) , p gx gy , u s G p .
5.Положить G G u uT
(uT p) .
6.Вычислить d G gx .
7.Если 
s 
, то перейти к шагу 2.
8.Остановиться.
П р и м е р 4 . 1 . На рис. 4.1 представлена траектория минимизации квадратичной функции (1.3) методом Бройдена. Для вычисления точки минимума с допустимой погрешностью 10–3 метод затратил 3 итерации и 19 вычислений функции. За две итерации получено приближение точки минимума с погрешностью 9,7∙10–8. При этом траектория минимизации квадратичной функции методом Бройдена такая же, как и траектория минимизации этой же функции методом Флетчера – Ривса из примера 3.3, представленная на рис. 3.5.
107
Рис. 4.1. Минимизация квадратичной функции методом Бройдена
П р и м е р 4 . 2 . На рис. 4.2 представлена траектория минимизации функции Розенброка методом Бройдена. Вычисление точки минимума с допустимой погрешностью 10–3 потребовало 17 итераций и 269 вычислений функции, что сравнимо с результатами метода Полака – Рибьера из примера 3.7. Траектория поиска такая же, как и на рис. 3.8 для метода Полака – Рибьера.
4.3. Свойства метода Бройдена
Рассмотрим и обоснуем свойства метода Бройдена.
С в о й с т в о 1 . Если в формуле Бройдена (4.10) матрица G k
симметрическая, то матрица Gk 1 также симметрическая.
Д о к а з а т е л ь с т в о . Пусть матрица G k симметрическая, то есть GTk Gk . Тогда по формуле Бройдена (4.10) с обозначениями
u sk Gk pk и 1 (uT pk ) придем к формуле (4.9). Применяя свойства матриц, получим:
108
GT (G uuT )T GT (uT )T uT G uuT .
k 1 k k k
Следовательно, GT G .
k 1 k 1
Рис. 4.2. Минимизация функции Розенброка методом Бройдена
С в о й с т в о 2 . |
|
Если в формуле Бройдена (4.10) матрица G k |
|||||||||||||||||||
положительно определенная и (s |
k |
G |
k |
p |
k |
)T p |
k |
0 , то матрица G |
k 1 |
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
также положительно определенная. |
|
|
|
|
|
|
|
|
|
||||||||||||
Д о к а з а т е л ь с т в о . |
|
Пусть матрица G k |
положительно опреде- |
||||||||||||||||||
ленная, то есть xT G |
k |
x 0 |
x 0 . Тогда по формуле Бройдена (4.10) |
||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
с обозначениями u s |
k |
G |
k |
p |
k |
и |
1 (uT p |
k |
) получим: |
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
xT G |
x xT G |
k |
x xT uuT x xT G |
k |
x (xT u)2 . |
|
|||||||||||||||
|
k 1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
При x 0 в правой части этого равенства первое слагаемое положи-
тельно, а второе неотрицательно, если 1 [(s |
k |
G |
k |
p |
k |
)T p |
k |
] 0 , то |
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
есть если (s |
k |
G |
k |
p |
k |
)T p |
k |
0 . Тогда xT G |
x 0 |
x 0 . |
|
|
||||||
|
|
|
|
|
|
k 1 |
|
|
|
|
|
|
|
|
||||
С в о й с т в о |
3 . |
При минимизации квадратичной функции с по- |
||||||||||||||||
|
|
|
|
|
|
|
|
|
109 |
|
|
|
|
|
|
|
|
|
ложительно определенной матрицей Гессе H методом Бройдена выполняются равенства:
Gkpi si , i 0, k 1 . (4.15)
Д о к а з а т е л ь с т в о . Применим метод математической индукции. При k 1 равенство (4.15) вытекает из квазиньютоновского условия (4.5) в виде G1p0 s0 . Предположим, что равенства (4.15) выпол-
нены для некоторого k . Тогда для i 0, k 1 с учетом свойства квад-
ратичной функции (4.4) в виде pi Hsi получим:
(s |
k |
G |
k |
p |
k |
)T p |
i |
sT p |
i |
pT G |
k |
p |
i |
sT p |
i |
pT s |
i |
sT Hs |
i |
|
sT Hs |
i |
0 . |
|||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
k |
|
|
|
|
k |
|
|
|
|
|
|
k |
|
|
|
k |
|
|
k |
|
|
|
k |
|
|
|
|
|||||||||||||||||
Отсюда по формуле Бройдена (4.10) и гипотезе индукции имеем: |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
(s |
k |
G |
k |
p |
k |
)(s |
k |
G |
k |
p |
k |
)T p |
i |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
G |
|
|
p |
G |
|
p |
|
|
G |
|
p |
|
s |
|
, |
i 0, k 1 . |
||||||||||||||||||||||||||||||||||||||
|
|
k |
i |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
k |
i |
i |
||||||||||||||||||||||
|
k 1 i |
|
|
|
|
|
|
|
|
|
(s |
|
|
G |
|
|
p |
|
|
)T p |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
k |
k |
k |
k |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
С учетом квазиньютоновского условия (4.5) Gk 1pk |
sk |
|
окончательно |
|||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||
получим: |
Gk 1pi |
si , i 0, k . |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||||
|
|
С в о й с т в о |
4 . Если при минимизации квадратичной функции с |
|||||||||||||||||||||||||||||||||||||||||||||||||||
положительно |
|
определенной |
матрицей |
Гессе |
|
H метод |
Бройдена |
|||||||||||||||||||||||||||||||||||||||||||||||
производит линейно независимые направления |
|
s0 , |
s1 , |
…, |
sn 1 , то |
|||||||||||||||||||||||||||||||||||||||||||||||||
Gn H 1 и минимум находится не более чем за n 1 итерацию.
До к а з а т е л ь с т в о . При сделанных предположениях после n итераций метода Бройдена выполняются равенства (4.15) при k n в
виде Gnpi si , i 0, n 1 . Отсюда с учетом свойства квадратичной функции (4.4) в виде pi Hsi имеем: GnHsi si , i 0, n 1 . По-
скольку векторы si образуют n линейно независимых направлений, которые можно представить столбцами невырожденной матрицы S , то справедливо матричное уравнение GnHS S . Умножая это равенство
110
