Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2793.Методы оптимизации..pdf
Скачиваний:
175
Добавлен:
15.11.2022
Размер:
33.68 Mб
Скачать

где хо — наибольшее из значений параметра щ (со значения хо на каждой к-й итерации начинают при необходимости дро­ бление шага спуска). В результате имеем

Тогда для любого т > к получим

По условию теоремы последовательность {ж771} сходится к точ­ ке х *. Поэтому из последнего неравенства, обозначая С =

-—

приходим при га -» оо ко второй оценке в (4.47). ►

1 -

VQ

Отметим, что условию (4.46) удовлетворяет, в частнос­ ти, сильно выпуклая дифференцируемая функция (см. теоре­ му 3.18). Кроме того, этому условию удовлетворяет любая квадратичная функция с положительно определенной матри­ цей, поскольку она также является сильно выпуклой функци­ ей (см. пример 3.13).

4.4.Минимизация квадратичной функции

Втеории численных методов многомерной оптимизации большое внимание уделено поиску минимума квадратичных функций. Применение численных методов к решению задачи оптимизации, в которой целевая функция является квадратич­ ной, представляет интерес по нескольким причинам.

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

на котором можно проверить работоспособность численного метода (если метод малопригоден для минимизации квадратич­ ной функции, то, скорее всего, он будет неработоспособен, ко­ гда целевая функция является более сложной). Наконец, при представлении в окрестности некоторой точки произвольной дважды дифференцируемой функции формулой Тейлора мож­ но ограничиться членами второго порядка, т.е. аппроксимиро­ вать эту функцию квадратичной. Тогда задачу минимизации исходной функции удается свести к последовательности задач для аппроксимирующих квадратичных функций. Такой подход особенно эффективен применительно к функциям, имеющим в окрестности искомой точки минимума положительно опреде­ ленную матрицу Гессе и поэтому достаточно хорошо аппрокси­ мируемым сильно выпуклой квадратичной функцией. Некото­ рые алгоритмы, разработанные с учетом свойств квадратич­ ных функций, позволяют найти точку минимума за конечное число итераций.

Особое место в теории многомерной оптимизации занима­ ют задачи безусловной минимизации выпуклых квадратичных функций двух переменных, или двумерные задачи безуслов­ ной минимизации. Изучение идей конструирования вычисли­ тельных алгоритмов на примере решения задач двумерной минимизации позволяет наглядно, с помощью геометрических построений на плоскости, представить отличительные черты каждого метода, выявить их вычислительные свойства, обсу­ дить достоинства и недостатки, а также на основе результатов вычислительного эксперимента получить представление о срав­ нительных характеристиках различных методов.

В общем случае квадратичная целевая функция имеет вид (см. 1.5)

F(z) = ±{Qz,z) + {ctz ) t z e l T ,

(4.48)

где Q — симметрическая матрица порядка n, а с G Rn — задан­ ный вектор. Пусть Q — положительно определенная матрица,

имеющая обратную матрицу Q х. Тогда функция F(z) являет­ ся сильно выпуклой и достигает наименьшего значения в точке z* = —Q~lc (см. 3.6), причем F(z*) = ^(с, Q_1c).

Для упрощения выкладок далее будем рассматривать в ка­ честве целевой функции положительно определенную квадра­ тичную форму

f{x) = ^{Qx,x), х € Г ,

(4.49)

которую можно получить из (4.48) параллельным переносом прямоугольной системы координат [IV]. Функция (4.49) не­ отрицательна при всех ж и достигает наименьшего значения О в единственной точке ж* = 0.

Для минимизации функции (4.49) используем метод гра­ диентного спуска. Найдем в произвольной начальной точке х° ф х* градиент grad f(x°) = Qx° этой функции и выберем на первой итерации (k = 1) в качестве направления спуска анти­ градиент w l = —grad/(ж 0) = —Qx°. Тогда в соответствии с

(4.43) для следующей точки

получим

 

х 1 = х° + K \W 1= ж0 -

x\Qx° = (1п - Х1(Э)ж°,

(4.50)

где 1п — единичная матрица порядка п.

Из (4.50) можно сделать важный вывод, в значительной степени определяющий стратегию построения эффективных численных методов безусловной минимизации: можно достичт точки ж* наименьшего значения квадратичной функции (4.49) за одну итерацию, если ж0 — один из собственных векторов у-7, j = 1, гг., матрицы Q. Тогда при выборе н\ = 1/А^, где Aj > 0 — собственное значение этой матрицы, соответствую­ щее собственному вектору у; , из (4.50), согласно определению собственных значений и собственных векторов матрицы [IV], получим

Ж 1= (in -

= -JjiQv* - Хз У з ) = 0 = х*

В двумерном случае графи­ ком функции f(x) = i(Qcc, х)

является эллиптический парабо­ лоид, а ее линиями уровня — подобные эллипсы с общим цен­ тром (рис. 4.5). Метод гради­ ентного спуска в этом случае может привести в точку (0, 0) наименьшего значения за одну

итерацию лишь при выборе на­

Рис. 4.5

чальной точки на одной из осей эллипсов: в этом случае радиус-вектор точки является соб­

ственным вектором положительно определенной матрицы Q второго порядка. При одинаковых значениях собственных зна­ чений матрицы Q графиком функции f(x) будет параболоид вращения, а линиями уровня этой функции — окружности. Здесь радиус-вектор любой точки ж0 ф х* является собствен­ ным, а точка наименьшего значения достигается за одну ите­ рацию при любом выборе начальной точки х°

Последняя геометрическая иллюстрация подсказывает, ка­ залось бы, простой с теоретической точки зрения путь повы­ шения эффективности метода градиентного спуска в случае произвольной положительно определенной матрицы Q. Для этого сначала поворотом системы координат квадратичную форму (4.49) нужно привести к каноническому виду, а затем изменением масштабов по осям новой системы координат, ба­ зисом которой будет система собственных векторов матрицы Q, обеспечить равенство всех диагональных элементов пре­ образованной матрицы. После ортогонального преобразования функция (4.49) в новой системе координат с осями 0£j, j = 1, n, примет вид

3=1

а после изменения масштабов путем замены

j = 1, n,

получим

 

гг

 

/2(о = Е <?’ с = (Сь...,Сп),

 

т.е. квадратичную форму / 2(C) = (-ГС? С) с единичной матрицей 1п порядка п.

Минимизация функции / 2(C) методом градиентного спуска реализуется за один шаг ( х = 1), но это упрощение не оправ­ дывает большой трудоемкости решения задачи на собственные значения матрицы Q (особенно в случае достаточно высокого порядка п). Тем не менее такой прием полезно использовать, если график исходной квадратичной функции имеет так на­ зываемую овражную структуру, когда убывание функции по одному или нескольким направлениям существенно больше, чем по остальным. В двумерном случае график такой функции в окрестности точки минимума напоминает овраг с круты­ ми склонами и пологим дном, а линии уровня оказываются сильно вытянутыми (рис. 4.6). В этом случае преобразование, состоящее в изменении масштабов переменных и называемое масштабированием, превращает график минимизируемой квадратичной функции двух переменных в параболоид враще­ ния, а линии уровня — в окружности.

Рис. 4.6

Вернемся к случаю поиска минимума квадратичной функ­ ции f(x ) = ^ (Qx, х) с произвольным выбором начальной точки и используем вариант метода градиентного спуска с посто­ янным значением х^ = х const на всех итерациях. Тогда в соответствии с (4.40) на к-й итерации получим

х к = х к~1 + HWk = х к~1- xgradЯ ® *"1) =

= x k~l xQ xk~l = (In —xQ )xk~1, к е N. (4.51)

Последовательность {хк} будет сходиться к точке х* = 0, ес­ ли линейный оператор у — (In xQ)x является сжимающим от ображ ением, для чего достаточно выполнения неравенства ||7П—xQ II = q{x) < 1- Это условие зависит от выбора нормы ли­ нейного оператора (нормы матрицы). В Шп часто используют спектральную норму матрицы. Для этой нормы имеем [IV]

\\In-xQ\\ = m ax{|l-xAi|, |1 - х А п|} = д (х),

где Ai, Хп — наименьшее и наибольшее собственные значения матрицы Q соответственно.

Таким образом, при выборе значения х нужно обеспечить одновременное выполнение неравенств 11 —xAi |< 1 и 11 — хАп|< < 1 . Если выбрать х Е (0, 2/Ап) в соответствии со вторым не­ равенством, то первое неравенство также будет выполнено, поскольку 0 < Ai ^ Ап. Для сжимающего отображения верна оценка \xk - х*\ ^ qk\x° - х*\ [I].

Поэтому для уменьшения количе­ ства итераций, обеспечивающих

заданную

точность,

желательно

выбрать

значение х

так, что­

бы знаменатель д(х)

геометри­

ческой прогрессии был наимень­ шим. На рис. 4.7 показаны за­ висимости 11 —xA i|, |1 —хАп| и q(x) от х при Ai < Хп. Ясно, что наименьшее значение д(х) соот-

ветствует равенству |1

— xAi| = |1 — хАп|, из

которого при

Ai < Хп заключаем, что

1 — xAi = —(1 — хАп).

В результате

 

 

2

2

приходим к оптимальным значениям х* = ------г—^ — и

 

 

A i *f An

An

 

An - Ai _

c(Q) - 1

(4.52)

q* = q{x*) = An + Ai

c(Q) + 1 ’

 

где c(Q) —An/Aiчисло обусловленности матрицы Q. Для единичной матрицы 1п все собственные значения одинаковы и равны единице, так что c(In) = 1 и д* = 0. Это говорит о том, что, как уже было отмечено, точка х* достигается за одну итерацию при любом выборе начальной точки х°. Если же Q плохо обусловлена, т.е. c(Q) » 1 , то значение q* мало отличается от единицы и поэтому последовательность {ж^} сходится медленно.

Покажем, что оценку

 

\хк- ж*| ^ qk\x° - х*\ =

1®°-®*]? fcGN, (4.53)

нельзя улучшить. Для этого достаточно привести пример, в ко­ тором эта оценка окажется точной. Положим ж0 = х* + у 1 + уп, где у 1 и уп — единичные собственные векторы матрицы Q, отвечающие собственным значениям Ai и Ап. Тогда с учетом (4.51) имеем х кх* = (In xQ )(xk~l ж*), откуда, используя свойства собственных векторов [IV], получаем

х к- х * = (In - xQ)k(x° - X * ) = (ln - *Q) V + уп) =

= (1 — x\i)ky l + (1 яХп)ку п

Следовательно,

|xfc - х *|2 = ((1 - я\г)2к + (1 - яХп)2к) fr .-y f l 2,

(4.54)

поскольку с учетом ортонормированности собственных векто­ ров |х° — х *|2 = ly1 + у п|2 = 2. Правая часть соотношения (4.54)

при х = х* = ------г— принимает значение qlk\x° ж*|2, что при-

A i + Ап

водит к точному равенству в (4.53).

На рис. 4.8 приведена графическая иллюстрация процесса сходимости метода градиентного спуска в плоскости к точ­ ке минимума х* = 0 для квадратичной функции f(x ) = х\ + + 10#2 ПРИ использовании (4.51) и различных значениях х: на рис. 4.8, а х = 0,01, на рис. 4.8, б х = 0,09.

Отметим, что собственные значения для соответствующей квадратичной формы (Qcc, х) = х\ + равны Ai = 2 и Л2 = 20. Поэтому условием сходимости метода градиентного спуска с постоянным значением х = const является выбор х G (0, 22) = = (0, 0,1). Если х ^ 0,1, то последовательность {х к} не является релаксационной. При использовании (4.51) это приводит к расходимости метода или к его пзацикливанию “. На рис. 4.9 представлена графическая иллюстрация этих ситуаций: a — „зацикливание“ при х = 0,10 и б — расходимость при х = 0,1 1 .

Для пояснения полученных результатов подробнее рассмо­ трим первые три итерации, выполненные в соответствии с (4.51) и с выбором начальной точки х° = (1, 2):

” 1 = - ( 4o) ’ * , = x 0 + *UI =(2 - 4te) ;

w

= _ (

2 ~ 4 х

^

X 2 =

X 1 + X W 2 = (

1 _ 4 х + 4х2 V

 

\ 40 — 800х ) '

 

+

\ 2 — 80х + 800х2 ) '

 

 

W

(

 

2 8х + 8х 2

\

 

 

20-1600х+1б000х2; ’

 

 

-

 

х 3 =

х 2 + X1W3 =

(

1 6х + 12х 2 8х 3

 

 

 

 

\ 2 -

120х + 2400х2 —16000х3

Отсюда при х = 0,10 получаем

т.е. для А: = 1 , 2, 3 имеем la^l = 2 — эффект „ зацикливания“ метода. При х = 0,11 находим

1 _ ( 0,7818

\

2 _ / 0,6112\

г _ ( 0,4779 \

(-2,3636

J ’

V2>7934/ ’

v - 3-3013)

и

f i x 1) = 56,479 < f{x 2) = 78,404 < f i x 3) = 109,213,

что свидетельствует о тенденции к расходимости метода. На­ конец, при х = 0,09 имеем

i

( 0,8182 \

2

/

0,6694 \

з ( 0,5477

* "

—1,6364 J ’

*

— (

1,3388 )

* ” (-1,0954

и

f i x 1) = 27,446 > fix 2) = 18,373 > f i x 3) = 12,299,

т.е. можно ожидать, что последовательность {®fe} является релаксационной, а метод градиентного спуска сходится.