Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Северин Методы БМ

.pdf
Скачиваний:
92
Добавлен:
02.02.2015
Размер:
3.8 Mб
Скачать

справа на матрицу S 1 , получим GnH E , откуда Gn H 1 . Поэтому следующая итерация метода Бройдена является итерацией метода Ньютона и приведет к точке минимума квадратичной функции.

Заметим, что в доказательстве этого свойства не используется условие точного одномерного поиска.

С в о й с т в о 5 . Если при минимизации квадратичной функции с положительно определенной матрицей Гессе H методом Бройдена выполняется точный одномерный поиск, то направления поиска s0 ,

s1 , …, sn 1 являются H -сопряженными.

Д о к а з а т е л ь с т в о . При выполнении условий данного утвер-

ждения требуется доказать, что

 

 

sTi Hsk 0 ,

i 0, k 1 .

(4.16)

Докажем это свойство методом математической индукции. При k 1 с учетом (4.14) имеем:

sT0 Hs1 sT0 H 1d1 sT0 H(1G1g1) 1sT0 HG1g1 1(G1Hs0 )T g1 .

Отсюда по свойству 3 в виде G1p0 s0 и по условию точного одно-

мерного поиска (3.7) в виде sT0 g1 0 получим:

 

 

 

sT Hs (G p

0

)T g sT g 0 .

 

 

 

 

 

0

1

 

1

1

1

1 0

1

 

 

 

 

 

Предположим, что равенства (4.16) выполнены для некоторого k .

 

 

 

 

Докажем, что они выполняются и для k 1 . Для i 0, k имеем:

 

sT Hs

k 1

sT H

 

d

 

 

sT H(G

g

 

)

 

sT HG

g

 

i

i

k 1 k 1

 

k 1 i

 

 

k 1 k 1

 

 

k 1 i

k 1 k 1

 

k 1(Gk 1Hsi )T gk 1 k 1(Gk 1pi )T gk 1 .

По свойству 3 получим

 

 

 

 

 

 

 

 

 

sT Hs

 

 

sT g

 

 

 

 

 

 

k 1

 

k 1

,

i 0, k .

(4.17)

i

 

k 1 i

 

 

 

 

 

111

Очевидно, что

gk 1 gi 1 (gi 2 gi 1) (gi 3 gi 2 ) (gk 1 gk ) .

С учетом обозначений (4.3) имеем:

 

 

k

 

 

k

 

 

gk 1 gi 1 (g j 1 g j ) gi 1

p j .

 

 

 

j i 1

 

 

j i 1

 

По свойству квадратичной функции (4.4) в виде p j Hs j получим

 

 

 

 

 

k

 

 

 

 

gk 1

gi 1 Hs j .

 

(4.18)

 

 

 

 

j i 1

 

 

Равенство (4.17) примет вид

 

 

 

 

 

 

 

k

 

 

k

 

sTi Hsk 1

k 1sTi

gi 1

Hs j

 

k 1 sTi

gi 1 sTi Hs j

.

 

 

 

 

 

 

 

 

 

 

 

j i 1

 

 

j i 1

 

По условию точного одномерного поиска (3.7) в виде sT g 0 и сде-

i i 1

ланного предположения индукции (4.16) окончательно получим для

i 0, k условие сопряженности sT Hs 0 . Следовательно, равен-

i k 1

ства (4.16) выполняются для всех k 1, n 1.

Это свойство показывает, что метод Бройдена является методом сопряженных направлений, поэтому он минимизирует квадратичную функцию с положительно определенной матрицей Гессе H при выполнении точного одномерного поиска не более чем за n итераций.

В случае, когда целевая функция не является квадратичной, применение уравнения (4.10) может привести к нежелательным явлениям. Во-первых, матрица G k может перестать быть положительно опреде-

ленной. Во-вторых, поправка Gk может стать неограниченной. В-

третьих, если направление sk случайно совпадет с направлением

112

предыдущей итерации, матрица Gk 1 становится вырожденной или неопределенной. В алгоритме Бройдена это тоже будет иметь место, если либо Gk pk sk , либо (sk Gk pk )T pk 0 . Тогда знаменатель формулы (4.10) обращается в нуль. Эта особенность снижает надежность метода Бройдена.

4.4. Метод Девидона – Флетчера – Пауэлла

По аналогии с формулой (4.9) коррекции ранга один рассмотрим формулу коррекции ранга два

Gk 1 Gk uuT vvT ,

 

(4.19)

где используются ненулевые векторы u , v Rn и скаляры

,

R .

Для системы линейных алгебраических уравнений (4.5) получим

(Gk uuT vvT )pk sk .

Раскрывая скобки, после преобразований имеем

Gk pk (uT pk )u (vT pk )v sk ,

где скобки содержат скалярные величины. Это уравнение превратится

в тождество, если

 

положить

u s

k

,

1 (uT p

k

) ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 (vT p

k

) . Тогда равенство (4.19) примет вид

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

G

 

1

G

 

 

sk sTk

 

 

Gk pk (Gk pk )T

.

 

 

 

 

k

k

 

 

 

 

 

 

 

 

 

 

sTk pk

 

 

(Gk pk )T pk

 

 

 

 

 

 

 

 

 

 

 

 

 

 

v Gk pk ,

(4.20)

Эта формула называется формулой Девидона – Флетчера – Пауэлла

(ДФП), а использующий ее квазиньютоновский метод называется ме-

тодом Девидона – Флетчера – Пауэлла. Формула (4.14) впервые пред-

ставлена в 1959 году американским математиком В. Девидоном как часть метода оптимизации, а в 1963 году метод, основанный на фор-

113

муле (4.20), развит английскими математиками Р. Флетчером и М. Д. Д. Пауэллом. Таким образом, метод ДФП основан на формулах (4.3), (4.7), (4.8) и (4.20). Как и в методе Бройдена первая итерация начинается из заданной начальной точки x0 , и в направлении антиградиента выполняется одномерный поиск:

G0 E ,

d0 g0 ,

0

arg min f (x0 d0 ) ,

x1 x0 0d0 . (4.21)

 

 

 

 

 

Последующие итерации для k 1, 2, 3, выполняются по формулам:

 

 

pk 1

gk gk 1 ,

 

sk 1 xk xk 1 ,

(4.22)

v

k 1

G

p

 

,

 

G

k

G

k 1

 

sk 1sTk 1

 

vk 1vTk 1

,

(4.23)

 

 

 

 

 

k 1 k 1

 

 

 

 

 

sTk 1pk 1

 

vTk 1pk 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

dk Gkgk

, k arg min f (xk dk ) ,

xk 1

xk k dk .

(4.24)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Итерации продолжаются до тех пор, пока выполняется условие

 

 

 

 

 

 

 

xk 1 xk

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

По формулам (4.21)–(4.24) составим алгоритм метода ДФП.

 

А л г о р и т м м е т о д а Д Ф П .

 

 

 

 

 

 

 

 

Входные параметры: 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 , v G p .

5.Положить G G s sT (sT p) v vT (vT p) .

6.Вычислить d G gx .

114

7.Если s , то перейти к шагу 2.

8.Остановиться.

Пр и м е р 4 . 3 . Для вычисления точки минимума квадратичной функции (1.3) с допустимой погрешностью 10–3 метод Девидона – Флетчера – Пауэлла затратил 3 итерации и 19 вычислений функции. При этом траектория минимизации квадратичной функции методом ДФП такая же, как и траектория минимизации этой же функции методом Бройдена из примера 4.1, представленная на рис. 4.1.

Пр и м е р 4 . 4 . На рис. 4.3 представлена траектория минимизации функции Розенброка методом Девидона – Флетчера – Пауэлла. Одномерный поиск с начальным единичным шагом производился комбинацией метода Свенна и метода квадратичной интерполяции с тремя точками при допустимой погрешности шага 10–5. Для нахождения точки минимума с допустимой погрешностью 10–3 метод ДФП использовал 17 итераций и 265 вычислений функции. Траектория минимизации такая же, как и траектория метода Бройдена из примера 4.2, представленная на рис. 4.2.

Рис. 4.3. Минимизация функции Розенброка методом ДФП

115

4.5. Свойства метода Девидона – Флетчера – Пауэлла

Эффективность метода ДФП определяется его свойствами.

 

 

 

С в о й с т в о

1 .

Если в формуле ДФП (4.20) матрица G k

сим-

метрическая, то матрица Gk 1 также симметрическая.

 

 

 

Д о к а з а т е л ь с т в о .

Пусть матрица

 

G k

симметрическая, то

есть GT G

k

. Тогда, по формуле ДФП (4.20) с обозначениями u s

k

,

k

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 (uT p

k

) ,

 

v G

k

p

k

,

 

1 (vT p

k

) придем к формуле (4.19). Ис-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

пользуя свойства матриц, получим:

 

 

 

 

 

 

 

 

 

 

 

 

GTk 1 (Gk uuT vvT )T GTk (uT )T uT (vT )T vT

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Gk uuT vvT .

 

 

 

 

 

 

 

Следовательно, GTk 1 Gk 1 .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

С в о й с т в о

2 .

Если в формуле ДФП (4.20) матрица G k

поло-

жительно определенная и sTk pk 0 , то матрица

Gk 1 также поло-

жительно определенная.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Д о к а з а т е л ь с т в о .

Пусть матрица G k положительно опреде-

ленная и xT G

k

x 0

x 0 . Тогда по формуле ДФП (4.20) имеем

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

T

 

 

 

 

 

 

 

T

 

 

 

(xT sk )2

 

(xT Gkpk )2

 

 

 

 

 

 

 

 

x G

k

 

x x

G

k

x

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

sTk pk

 

 

pTk Gkpk

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Обозначая a G1k

2x и b G1k

2pk , получим

 

 

 

 

 

 

 

 

 

 

 

 

 

 

T

 

 

 

x

 

(aT a)(bT b) (aT b)2

 

(xT sk )2

 

 

 

 

 

 

 

 

x G

k

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

bT b

 

 

 

 

 

sTk pk

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

В правой части этого равенства первое слагаемое неотрицательно в силу неравенства Коши – Буняковского – Шварца aT b a b , а

116

второе слагаемое неотрицательно, если sTk pk 0 . Покажем, что эти слагаемые не могут одновременно обращаться в нуль. Если первое

слагаемое равно нулю, то a b ,

а, значит, и x pk при 0 . Но

тогда по условию xT s

k

pT s

k

0

. Поэтому xT G

 

x 0 x 0 .

 

k

 

 

k 1

Заметим, что условие этого свойства sTk pk 0

выполняется при

условии точного одномерного поиска (3.7) в виде sT g 0 и обеспе-

k k 1

чении sk как направления спуска, для которого sTk gk 0 . Действи-

тельно, в силу равенств (4.22) и (4.24) sk kGkgk , k 0 . Поэтому

sT p sT (g g ) sT g sT g sT g gT G g 0 .

k k k k 1 k k k 1 k k k k k k k k

Свойство сохранения положительной определенности матрицы G k

гарантирует, что направление dk является направлением спуска.

С в о й с т в о 3 . При минимизации квадратичной функции с по-

ложительно определенной матрицей Гессе

H методом ДФП с точ-

ным одномерным поиском выполняются равенства:

Gk 1Hsi si ,

 

 

 

 

 

i 0, k ;

(4.25)

sTi Hsk 0 ,

 

 

 

 

i 0, k 1 .

(4.26)

Д о к а з а т е л ь с т в о . Применим метод математической индук-

ции. Из квазиньютоновского условия (4.5) в виде

G1p0 s0 с учетом

свойства квадратичной функции

(4.4) в

 

виде

p0 Hs0 имеем

G1Hs0 s0 . Отсюда по формулам (4.24) с точным одномерным поиском получим:

sT0 Hs1 sT0 H 1d1 sT0 H(1G1g1) 1(G1Hs0 )T g1 1sT0 g1 0 .

Таким образом, равенства (4.25) и (4.26) выполняются при начальных значениях k 0 и k 1 соответственно.

117

Предположим, что равенства (4.25) и (4.26) выполнены для неко-

 

 

 

 

 

торого k . Докажем, что они выполняются и для

k 1 . Для

i 0, k с

использованием равенств (4.24) получим:

 

 

 

 

 

 

 

 

sT Hs

k 1

sT H

d

 

 

sT H(G

 

g

 

)

 

 

 

i

 

i

 

 

k 1 k 1

 

 

k 1 i

 

k 1 k 1

 

 

 

 

 

k 1

(G

 

Hs )T g

k 1

 

sT g

k 1

.

 

 

 

 

 

 

 

 

k 1 i

 

 

k 1 i

 

 

 

 

 

 

Применяя формулу (4.18) для градиента квадратичной функции, имеем

 

 

 

k

 

 

k

 

 

sTi Hsk 1

k 1sTi

gi 1

Hs j

 

k 1 sTi gi 1

sTi

Hs j

.

 

 

 

 

 

 

 

 

 

 

 

 

j i 1

 

 

j i 1

 

 

По условию точного одномерного поиска (3.7) в виде sT g 0 и сде-

i i 1

 

 

 

ланного предположения индукции (4.26) получим для i 0, k

условие

сопряженности

sTi Hsk 1 0 . Это и доказывает справедливость ра-

венств (4.26) для произвольного k .

 

С учетом

свойства квадратичной функции (4.4)

в виде

pk 1 Hsk 1 , предположения индукции (4.25) и доказанного равенства

sTi Hsk 1 0 для i 0, k имеем:

 

 

 

 

pT

 

G Hs pT

 

s

sT

Hs 0 .

 

 

 

 

 

 

 

 

 

k

1 k 1 i

 

k

1 i

k

1 i

 

 

 

 

 

Отсюда по формуле ДФП (4.20) получим:

 

 

 

 

 

 

 

 

 

G

Hs G

Hs

sk 1(sTk 1Hsi )

 

Gk 1pk 1(pTk 1Gk 1Hsi )

 

G

Hs ,

 

 

 

 

 

k 2

i

k 1

i

 

sTk 1pk 1

 

 

 

 

pTk 1Gk 1pk 1

 

 

 

 

k 1 i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

то есть по предположениям индукции Gk 2Hsi

si для i 0, k . С уче-

том квазиньютоновского условия (4.5) в виде Gk 2pk 1 sk 1

и свой-

ства

квадратичной

 

функции

(4.4)

в

виде

pk 1

Hsk 1

имеем

 

 

 

 

 

 

 

Gk 2Hsk 1 sk 1 .

Итак Gk 2Hsi si

для

i 0, k 1 ,

что доказывает

118

справедливость равенств (4.25) для произвольного k .

Это свойство показывает, что в силу равенств (4.26) метод ДФП является методом сопряженных направлений, поэтому он минимизирует квадратичную функцию с положительно определенной матрицей Гессе H при точном одномерном поиске не более чем за n итераций.

С в о й с т в о 4 . При минимизации квадратичной функции с положительно определенной матрицей Гессе H методом ДФП с точ-

ным одномерным поиском после n итераций Gn H 1 .

Д о к а з а т е л ь с т в о . При сделанных предположениях после n итераций метода ДФП в силу выполнения равенств (4.26) при k n 1 векторы s0 , s1 , …, sn 1 являются сопряженными. Поэтому по лемме 3.1 они линейно независимы. Представим их столбцами невырожденной матрицы S . Поскольку при этом выполняются равенства (4.25)

при k n 1 в виде GnHsi si для i

 

 

 

0, n 1 , то имеем GnHS S .

Умножая это равенство справа на S 1 ,

придем к равенству G

n

H E ,

 

 

 

 

 

 

 

 

 

откуда получим G

n

H 1 . Это означает, что после n итераций метода

 

 

 

 

 

 

 

 

 

ДФП аппроксимация обратной матрицы Гессе совпадет с ней.

 

С в о й с т в о

5 . При минимизации квадратичной функции с по-

ложительно определенной матрицей Гессе H методом ДФП с точ-

ным одномерным поиском после n итераций

 

 

 

 

 

n 1

T

 

 

 

 

 

H 1

sisi

.

 

(4.27)

 

 

 

T

 

 

 

 

i 0 si

pi

 

 

Д о к а з а т е л ь с т в о .

После n итераций метода ДФП в силу ра-

венств (4.26) при

k n 1

векторы s0 , s1 , …, sn 1 являются сопря-

женными и линейно независимыми. Сформируем из них невырожденную матрицу S . Из условий сопряженности (4.26) ST HS D , где D

диагональная матрица с элементами sTi Hsi . Поэтому H (ST ) 1DS 1 .

Тогда H 1 SD 1ST , где D 1 – диагональная матрица с элементами

119

1 (sTi Hsi ) . Перемножим матрицы в правой части последнего равенства

n 1

T

H 1

sisi

.

T

i 0 si

Hsi

Отсюда с использованием свойства квадратичной функции (4.4) в виде pi Hsi получим равенство (4.27).

Представим формулу ДФП (4.20) в виде

Gk 1 Gk Ak Bk ,

где

A

 

 

sk sTk

, B

k

 

Gk pk (Gk pk )T

.

k

 

 

 

sTk pk

 

 

(Gk pk )T pk

 

 

 

 

 

 

 

 

 

 

Тогда

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n 1

 

n 1

 

 

 

 

Gn G0 Ak Bk .

 

 

 

 

 

 

 

k 0

 

k 0

 

 

Для квадратичной функции по свойствам 4 и 5 имеем:

n 1

 

n 1

 

 

 

n 1

 

n 1

H 1 G0 Ak Bk ,

 

H 1 Ak ,

G0 Bk .

k 0

 

k 0

 

 

 

k 0

 

k 0

Отсюда следует, что начальное задание аппроксимирующей матрицы G0 E в процессе минимизации квадратичной функции компенсируются последней дробью в формуле (4.20).

Приведенные свойства метода Девидона – Флетчера – Пауэлла проявляются и при минимизации дифференцируемой целевой функции общего вида.

Вычислительные эксперименты, проведенные многими исследователями, показали, что метод Девидона – Флетчера – Пауэлла очень чувствителен к точности одномерного поиска. Если одномерная минимизация целевой функции проводится с невысокой точностью, то эффективность этого метода снижается.

120