п, b e= R"1,
min II Ax — b На,
(3.6.1)
JCSR"
которая является частным случаем нелинейной задачи о наи-
меньших квадратах:
заданы /-, {х}: R"->R, г'=1, ..., т,
т
min Е ri (х)2
деР"1"!
при ri(x)==(di.)x—bi, где i=\, ..., tn. Основанием для изу-
чения задачи (3.6.1) служит то, что часто необходимо решать
ее как подзадачу нелинейной задачи о наименьших квадратах
и, кроме того, понимание этой линейной задачи способствует
лучшему пониманию ее нелинейного аналога. В связи с изуче-
нием линейной задачи о наименьших квадратах вводится по-
нятие сингулярного разложения, представляющего собой мощ-
ное средство вычислительной линейной алгебры, которое ока-
зывается полезным во многих ситуациях.
К линейным задачам о наименьших квадратах обычно при-
водит желание наилучшим образом приблизить набор из т то-
чек-данных (/;, г/;) с помощью функции f(x,t), которая явля-
ется линейной относительно ее п свободных параметров
Рис. 3.6.1. Пример линейной задачи о наименьших квадратах.
3.6. Линейная задача о наименьших квадратах
83
л'1, ..., Хп. Предположим, например, что желательно прибли-
зить три пары (1,2), (2,3), (3,5) с помощью функции f(x,t)=
== x\t + X2et (рис. 3.6.1). Для точного совпадения f{x,ti)==y„
( == 1, 2, 3, потребовалось бы выполнение равенства Ax = Ь, где
[1 е
2 е2
3 е3.
[3
5J
Г2"!
^i
Л=
(3.6.2)
Так как система уравнений Ax =b является переопределенной,
то, не предполагая решать ее в обычном смысле, мы вместо
этого выбираем х, которое минимизирует некоторую меру ве-
личины вектора невязок Ах—Ь. В (3.6.1) /з-норма выбрана
потому, что получающаяся в результате этого задача обладает
хорошими с математической точки зрения свойствами и, кроме
того, имеет статистическое обоснование.
Отметим, что нахождение решения рассматриваемого при-
мера задачи (3.6.1) эквивалентно поиску ответа на вопрос:
«Какая из линейных комбинаций векторов (1, 2, 3)1' и
(е.е2^3)7 оказывается ближе всего в /2-норме к (2,3, б)7?».
В общем случае можно переформулировать задачу (3.6.1) так:
«Найти линейную комбинацию столбцов а.\, ..., а.п матрицы Л,
ближайшую к 6 в /2-норме». Геометрически это означает на-
хождение такой точки в п-мерном подпространстве С (Л), на-
тянутом на столбцы матрицы Л, которая находится ближе
всего к вектору b в евклидовой норме (рис. 3.6.2). Такая ин-
терпретация приводит к простому решению линейной задачи
о наименьших квадратах.
Известно, что ближайшей к b в С (Л) будет точка Лл-„(=
^С(Л), такая, что Ах^—Ь ортогонален ко всему подпростран-
ству С (Л). Таким образом, х„ должно удовлетворять ра-
венствам [алУ{Ах^— Ь) =0, i = 1, ..., п, что эквивалентно
AT(Ax^—й)==0. Ясно, что Ах^ единственно, и если столбцы
матрицы Л линейно независимы, то значение х», которое дает
точку Лх», также единственно и является решением невырож-
Рис. 3.6.2. Решение линейной задачи о наименьших квадратах.
84
Гл. 3. Основы вычислительной линейной алгебры
денной системы уравнений
{ATA)x,==Aтb. (3.6.3)
Эти сведения резюмируются в теореме 3.6.1, а ее формаль-
ное доказательство оставлено в качестве простого упражнения.
Теорема 3.6.1. Пусть m $г /г > 0, AsR»^", Ь <== R'". Тогда
решение задачи
min || Ax — Ь На
^eR"
представляет собой множество точек {х»: AT(Ax^—Ь)==0}.
Если столбцы матрицы Л линейно независимы, то х» един-
ственно, ATA не вырождена и ;с„ == (Л^Л)-^^.
Уравнения (3.6.3) известны как нормальные уравнения.
Хотя они и однозначно определяют х^ в случае, когда Л пол-
ного столбцового ранга, но не всегда указывают путь, по ко-
торому следует идти при вычислении х». Это объясняется тем,
что формирование матрицы ATA может привести к антипере-
полнению и переполнению, а также к возведению в квадрат
числа обусловленности задачи по сравнению с методами, ко-
торые непосредственно используют Л. Если Л имеет полный
столбцовый ранг, то можно воспользоваться Q^-разложением
матрицы Л,
п m
"» п
m
А
——l г^—11
m Q m о\}^
_J | о
R
где ортогональная матрица Q^Rmxm и верхняя треугольная
матрица RGRmxn получаются тем же способом, что при
Q/р-разложении квадратной матрицы. Это разложение обеспе-
чивает численно устойчивую ортогонализацию столбцов мат-
рицы Л. Следующая теорема показывает, как применять (3.6.4)
для решения (3.6.1).
Теорема 3.6.2. Пусть т sSs п > 0, b^R'", и матрица Л-_
е R'"x" имеет полный столбцовый ранг. Тогда существует раз-
ложение Л == QR вида (3.6.4), где тпХ /га-матрица Q ортого-
нальна, R^Rmxrl есть верхняя треугольная матрица, и Ru, об-
разованная первыми п строками матрицы R, представляет со-
бой невырожденную верхнюю треугольную матрицу. Единствен-
ным решением задачи (3.6.1) является
^.=/?«'(QH,
(3.6.4)
3.6. Линейная задача о наименьших квадратах 85
где (Q^L^aQ^i, ..., (Q^nf. Минимум \\Ах-Ь^ равен
т
.I:,[(QW.
Доказательство. Существование Q^-разложения матрицы Л
вытекает из возможности его получения преобразованиями Ха-
усхолдера, а невырожденность Ru следует из того, что Л имеет
полный столбцовый ранг. Используя (3.1.23), получаем
I! Ах - Ь Иг = || QRx - Ь 1Ь == || Rx - <УЬ Из,
так что (3.6.1) может быть переписано в виде
min \\Рх-<УЬ\\,.
х^к"
Тогда, если (Q^h -((Q^L+i, ..., {<УЬ}пУ, имеем
|| Rx - Q^ II;; = || R,x - (Q^ |g + В (Q% t.
Ясно, что это выражение принимает наименьшее значение при
x=Rul(Qтb^. О
Если Л не имеет полного ранга, то существует целое мно-
жество решений х задачи (3.6.1). Поэтому в задачу можно вне-
сти дополнительное требование найти наименьшее в /г-норме
из этих решений:
заданы Л <= R"1 х ", 6 е R'",
min {II х Ib: || Ax - b Hz < || Ax - Ь Ik ^fx e R"}. (3.6.5)
xeR"
Задача (3.6.5) представляет интерес независимо от того, боль-
ше, равно или меньше т, чем п. Она может быть решена во
всех перечисленных случаях с использованием сингулярного
разложения (SVD1)) матрицы Л. Это более трудоемкое разло-
жение матрицы на множители, нежели обсуждавшиеся до сих
пор разложения, но как средство оно более мощное. Определе-
ние SVD приводится ниже. Характерные свойства множителей
этого разложения приведены в теореме 3.6.4. Теорема 3.6.5 по-
казывает, как использовать SVD для решения задачи (3.6.5).
Определение 3.6.3. Пусть Л <=. К'"х" и k •==тт{т,п}. Син-
гулярным разложением матрицы Л называется разложение
вида Л == UDV7', где U e R'7^"1 и V е R"^" есть ортогональные
матрицы, a DsR"^" имеет вид da == CT( ^ 0, t=l, ..., k,
di, = 0, i=j^j. Величины о\, ..., Gk называются сингулярными
числами матрицы Л.
') SVD—аббревиатура singular value decomposition.—Прим. перед.
86 Гл. 3. Основы вычислительной линейной алгебры
Заметим, что U используется для обозначения ортогональ-
ной матрицы, несмотря на то что в разд. 3.3 та же буква ис-
пользовалась для нижних треугольных матриц. Это прочно
укоренившееся обозначение не должно запутать внимательного
читателя. Кроме того, использование обозначений U и V тра-
диционно для матриц, столбцы которых представляют собой
собственные векторы, и следующая теорема демонстрирует это.
Теорема 3.6.4. Пусть Л s R"^". Тогда для А существует
SVD, в котором диагональные элементы Стг матрицы D есть не-
отрицательные квадратные корни из собственных значений
матрицы АА7, если т ^ п, или матрицы ArA, если т^-п, а
столбцами матриц U и V являются собственные векторы мат-
риц ЛЛ7' и ATA соответственно. Количество ненулевых сингу-
лярных чисел равно рангу матрицы Л.
Доказательство. Доказательство существования SVD можно
найти в работах, цитированных в начале главы. Так как
AAT=UDDTUT и ATA=--VDTDVT, имеем (ЛЛО • U == U • (DD7'),
(ATA)V==V(DTD). Таким образом, если и,, и v.j есть соответ-
ствующие /-е столбцы в U и V, то
{АА7') и.г == К,и.,, j = 1, ..., m,
(ATA)v.^=^^v.^, j=l, .... п,
где К, представляют собой диагональные элементы матриц DD1'
и DTD, причем X/== (ст/)2, /==1, .... min {/га, п}, и ^ == О, j ==
== min{/n, ra}+ 1, ..., max{m,n}. Поскольку умножение матри-
цы на невырожденную матрицу не изменяет ее ранга, то
rank (Л) == rank(Z)), и это равно количеству ненулевых ст/. D
Теорема 3.6.5. Пусть Л е R"^" имеет SVD вида Л == UDV1',
где U, D, V имеют тот же смысл, что в определении 3.6.3. Пусть
матрица, псевдообратная к Л, определяется как
4-4
t at, = О,
г + ^ f i/^> ^ > о,
A^=VD+UT, D^==\ " I О, (T,==O, (3.6.6)
I dtf =0, i Ф j,
D+^R'^"1. Тогда единственным решением задачи (3.6.5) яв-
ляется д'» == А+Ь.
Доказательство. Из разложения Л=L'Z)l/r и равенства
(3.1.23) следует, что (3.6.5) эквивалентно
min {|| V^v Из: || DV^x - иЧ Из < f| DV4 - ^b ^ Vx e R"},
A:eR"
3.6. Линейная задача о наименьших квадратах 87
что для г = Vтx эквивалентно
min {II z На: И Dz - U^-b ||, < || Dz - U^ \\, Vz e= R"}. (3.6.7)
zeR"
Пусть & равно количеству ненулевых а, в D. Тогда
Ic m
\\Dг-Uтb\\:!,=^(o^Zi-(Uтb)^)2+ Е ((^)<)2.
«=1 »=й-Н
Это выражение принимает минимальное значение при любом z,
таком, что г; == (Uтb)^/G^, f==l, ..., k. Среди всех таких г
норма Hzllz минимальна для того из них, у которого z; == О,
t==/s+l, •••, m. Таким образом, решением задачи (3.6.7) яв-
ляется z = О+ШЬ, откуда х^= VD+Uтb=A+b. D
Сингулярное разложение находится с помощью итерацион-
ного процесса, тесно связанного с алгоритмом отыскания соб-
ственных значений и собственных векторов симметричной мат-
рицы, поэтому его труднее получить, чем другие наши матрич-
ные разложения. Этот метод рекомендуется, когда про мат-
рицу Л не известно, имеет ли она полный строковый или столб-
цовый ранг. Если m < п и Л имеет полный строковый ранг, то
(3.6.5) решается более эффективно с помощью LQ-разложения
(упр. 27). Способ SVD наиболее надежен при вычислении ранга
матрицы, или, что эквивалентно, вычислении количества линей-
но независимых векторов в множестве векторов. Можно также
использовать SVD для определения чувствительности x=A~lb
по отношению к изменениям в исходных данных А&, где Л есть
квадратная матрица. Кроме того, если Л не вырождена, то
к^(А)== Oi/Gn, и тогда SVD представляет собой самый надеж-
ный способ вычисления ^(Л).
Заключительное замечание относительно определения ранга
матрицы на основе ее SVD состоит в том, что D в действитель-
ности дает нам больше информации о линейной независимости
столбцов в Л, чем мы могли бы «втиснуть» в единственное це-
лое число, отведенное под ранг Л, Например, если п == 3 и
(TI = 1, 02 == 0.1, (Тз = 0, то следует согласиться, что Л имеет
ранг, равный 2. Если стз заменить на macheps, то, вероятно, и
в этом случае следует все же считать, что вся информация пе-
редана фразой «rank(A) = 2». Ну а как быть в случае, когда
(TI==I, erg = macheps и Ста == (macheps)1/2 или 100-macheps
и т. д.? С увеличением п растет число ситуаций, вызывающих
тревогу из-за более сложного распределения в них сингулярных
чисел. Никто на самом деле не знает, что в таком случае де-
лать, однако весьма разумным здесь будет подыскать «раз-
рывы» в расположении сингулярных чисел, и те из них, кото-
рые имеют примерно один и тот же порядок величины, счи-
88 Гл. 3. Основы вычислительной линейной алгебры
тать в зависимости от этого порядка все либо нулевыми, либо
ненулевыми.
Важно, чтобы пользователь программ, имеющихся у него
в записи, понимал суть этих вопросов. Дело в том, что в паке-
тах программ ROSEPACK и EISPACK при решении (3.6.1)
с использованием SVD принимается в некоторый момент ре-
шение, по которому Л модифицируется так, что ее «малые»
сингулярные числа полагаются равными нулю, и затем реша-
ется модифицированная задача. Несмотря на это, ничего не
происходит в тайне от пользователя, и необходимо всего лишь
прочитать программную документацию для понимания того,
что же в действительности делается. Можно с уверенностью
сказать, что любая подпрограмма, вычисляющая SVD, из со-
ображений своей эффективности будет присваивать нулевые
значения всем сингулярным числам, которые пренебрежимо
малы с точки зрения проводимых вычислений. Донгарра и др.
(1979) дали очень краткое объяснение типичной проверке на
«пренебрежимую малость».
3.7. УПРАЖНЕНИЯ
1. Докажите, что для любого х<= R"
lim \\x\\ =\\x\\
р->оо р
Заметим, что здесь на самом деле подразумевается, что для каждой после-
довательности действительных чисел {pi,}, стремящейся к оо, имеет место
lim || л: || .
k-> 00 ^k
2. (Трудное упражнение.) Докажите теорему 3.1.2.
3. Докажите соотношения (3.1.5).
4. Докажите, что для любых р ^ 1 индуцированная матричная /р-нор-
ма (3.7.1) обладает тремя определяющими свойствами нормы [(3.1.1) при-
менительно к матрицам] плюс свойство мультипликативности [(3.1.10)].
5. Докажите, что (3.1.8а) правильно вычисляет индуцированную мат-
ричную /i-норму. [Указание: покажите, что для всех у е R",
"^< max ||а/|1,
м' i<"11 •/111>
причем равенство имеет место по крайней мере для одного v.] Проделайте
то же самое для индуцированной матричной /оо-нормы.
6. Докажите (3.1.8Ь). (Воспользуйтесь методикой доказательства тео-
ремы 3.5.4.)
7. Покажите, что ^'г(ATB) представляет собой обычное скалярное про-
изведение А на 5, рассматриваемых как «длинные векторы». Свяжите это
с нормой Фробениуса, т.е. докажите (3.1.14).
3.7. Упражнения 89
8. Докажите, что || А \\ == II Aт \\ как для /а-нормы, так и для нормы
Фробениуса. Обратите внимание, что (АВ)., == AB.i, и посмотрите, не дадут
ли вам эти факты возможность доказать (3.1.15) и (3.1.16).
9. Докажите (3.1.17).
10. Завершите доказательство теоремы 3.1.4.
11. Докажите, что для любой А е R^" и любой ортонормированной
последовательности векторов vi e R", i = 1, ..., п, имеет место
12. Докажите теорему 3.1.7.
13. Решите блочно-диагональную систему Ах == Ь, где
ГЗ 1 О
1 2 О
002
000
Lo о о -i
0^
о
о
-1
4
6=
5l
5
6
3
L16
14. Получите преобразование Хаусхолдера: дано v е R", v ч4= 0, найти
и е R", такое, что матрица (/ — ии7') ортогональна и (/ — ии1') v == («, 0, ...
..., ОУ, ос =?ь 0. [Указание: и должно иметь вид р(у, Oz, ..., VnV, где
р, veR.]
15. Примените преобразование Хаусхолдера для разложения А на мно-
жители QR, где
Г1 -1-1
л» ! °.
(1 2 \
16. Является ли матрица - „ ) положительно определенной? Для
выяснения этого воспользуйтесь разложением Холесского.
17. Найдите разложение Холесского для
Г 4 6 -2-j
6 10 1 I
L —2 1 22 J
А если заменить 10 на 7?
18. Докажите, что если Л = Q-R, то
•^•к.1 (Л)<»<1 (/?) \\Ах# —Ь \\г для всех жеР", причем
строгое неравенство имеет место, когда Л имеет полный столбцовый ранг и
х. =/= х„. Покажите также, что если Л имеет полный столбцовый ранг, то
ATA не вырождена.
24. Имеется Q^-разложение прямоугольной матрицы А полного столб-
цового ранга, определенное в теореме 3.6.2. Покажите, что первые п столб-
цов в Q образуют ортонормированный базис пространства, натянутого на
столбцы матрицы Л.
25. Подберите прямую Xi + Xit, приближающую данные (t,, t/i) =
= (—1.3), (0,2), (1,0), (2,4). Выполните поставленную задачу, исполь-
зуя Q^-разлежение и нормальные уравнения. [Указание: вы делали vnp. 15?]
26. Имеются я > от > 0, 6 е= R'" и матрица Л е= R"^" полного строко-
вого ранга. Покажите, как решить задачу
min {||-elk: Ax= Ь},
JCSR"
используя разложение вида Л = LQ, где матрица L е р'»Х"_ нижняя тре-
угольная, а Q e ^пхп —ортогональная. [Указание: воспользуйтесь методи-
кой, аналогичной той, что применялась в доказательствах теорем 3.6.2 и
3.6.5.]
27. Покажите, как выполнить LQ-разложение в предыдущем упражне-
нии, используя преобразования Хаусхолдера.
28. Имеется сингулярное разложение Л = UDV1' невырожденной матри-
цы Л (= R'-X". Докажите, что кг(А} = оч/о-л. Пусть и, и v , обозначают со-
ответствующие столбцы матриц U и V. Покажите также, что изменение
Дй = ecu., в правой части линейной системы Ах == /; приведет к изменению
A.V = (<х/ст/)у./ в решении.
4
Основы анализа функций
многих переменных
В этой главе содержатся сведения из анализа функций многих
переменных, необходимые в дальнейшем для изучения вопро-
сов численного решения нелинейных задач. В разд. 4.1 обсуж-
даются производные, определенные интегралы, ряды Тейлора
и связанные с ними свойства, которые будут впоследствии ис-
пользованы при построении и анализе предлагаемых методов.
В разд. 4.2 вводятся формулы для построения конечно-разност-
ных аппроксимаций производных от функции многих перемен-
ных, а в разд. 4.3 приведены необходимые и достаточные усло-
вия, характеризующие точку минимума при отсутствии ограни-
чений. Книга Ортеги и Рейнболдта (1970) может служить под-
робным справочным пособием как по данной теме, так и по
теоретическому исследованию нелинейных алгебраических за-
дач общего вида.
4.1. ПРОИЗВОДНЫЕ И МНОГОМЕРНЫЕ МОДЕЛИ
При изучении минимизации функции одной переменной для по-
строения локальной квадратичной модели минимизируемой
функции использовались производные первого и второго поряд-
ка. Поэтому мы стремились к тому, чтобы модельная задача
соответствовала реальной задаче по значению, тангенсу угла
наклона и кривизне в точке, которая на текущий момент явля-
ется наилучшим приближением к точке минимума. Формула
Тейлора с остаточным членом оказалась полезным аналитиче-
ским аппаратом для оценки погрешности аппроксимации квад-
ратичной моделью. Она в той же степени будет нам полезна
и здесь.
Мы начинаем этот раздел с описания, без излишних подроб-
ностей, формулы Тейлора второго порядка для скалярной функ-
ции, зависящей от векторной переменной. Затем, для того что-
бы перейти к этапу рассмотрения систем нелинейных уравне-
92 Гл. 4. Основы анализа функций многих переменных
ний, мы изучим задачу построения локальной аффинной мо-
дели для функции F: R"—-0"1. В этом случае подход, исполь-
зующий ряды Тейлора, является весьма неудовлетворительным,
потому что здесь не выполняется теорема о среднем. Предвидя
это, в гл. 2 мы использовали теорему Ньютона для построения
аффинных моделей. Вторая часть этого раздела будет посвя-
щена построению аппарата, позволяющего провести аналогич-
ный анализ в многомерном случае.
Рассмотрим сначала непрерывную функцию: f: R"-^-R,
п~> 1. Если существуют первые частные производные от функ-
ции п переменных f и они непрерывны, то вектор-столбец, со-
ставленный из п частных производных, называется градиентом
Vf(x} функции f в точке х, и он в данном случае представляет
собой то же самое, что и первая производная от функций од-
ной переменной. В частности, существует соответствующая тео-
рема о среднем, которая утверждает, что разность между зна-
чениями функции в двух точках равна скалярному произведе-
нию разности между точками на градиент функции в некото-
рой промежуточной точке прямой, соединяющей эти две точки.
Аналогично, если п2 вторых частных производных от f также
существуют и непрерывны, то матрица, составленная из них,
называется гессианом1) У^(х) функции f в точке х, и он тоже
удовлетворяет условиям теоремы о среднем, представленной
в виде формулы Тейлора с остаточным членом. Точные опреде-
ления и леммы приведены ниже. Причины, по которым важные
результаты одномерного анализа остаются справедливыми для
функций многих переменных, состоят в том, что они исполь-
зуют значения действительной функции в двух точках х и
х 4- р пространства R", а прямая, соединяющая эти две точки,
может быть параметризована с помощью одной переменной.
Таким образом, результаты следуют непосредственно из соот-
ветствующих теорем одномерного анализа.
Обозначим открытый и замкнутый линейный сегмент, соеди-
няющий х, ^eR", через (х, х) и [х, х} соответственно, а также
напомним читателю, что DczR" называют выпуклым множе-
ством, если [х, х] с D для любых х, х е D.
Определение 4.1.1. Будем говорить, что непрерывная функ-
ция f: R"->-R непрерывно дифференцируема в .veR", если
производные (дf/дx^) (х), i=l, ..., п, существуют и непре-
рывны. Тогда градиент функции f в точке х определяется как
УЖ^М,...,^)]' (4.1.1)
') Гессианом принято называть определитель матрицы Гессе V^f^x).
Однако, учитывая замечание авторов после примера 4.1.8 относительно тер-
минов «якобиан» и «матрица Якоби», мы все же решили придерживаться
при переводе терминологии, принятой в данной книге. — Прим. перев.
4.1. Производные и многомерные модели 93
Будем говорить, что f непрерывно дифференцируема в открытой
области DaR", и обозначать это как feC'(D), если она не-
прерывно дифференцируема в любой точке из D.
Лемма 4.1.2. Пусть f: R"—-R непрерывно дифференцируема
на некоторой открытой выпуклой области DcR". Тогда для
х (= D и произвольного ненулевого приращения р е R" произ-
водная по направлению р от f в точке х, определяемая как
-^)==Hm f^+^-f^ ,
д? ' ' е->0 е
существует и равна Уf(x)т•p. Для любых x,x+pe.D, выпол-
нено
1 х+р
f(x+p)=f(x}+\Vf(x+tp)тpdt=f(x)+ \ Vf(z)dz, (4.1.2)
J ^
О Х
и существует г е (л:, х + р), такое, что
f(x+p}=f(x}+vf{г}тp. (4.1.3)
Доказательство. Проведем элементарным образом парамет-
ризацию f как функции одной переменной вдоль прямой, со-
единяющей х и (х+ р),
g:R-^R, g(t)=f(x+tp)
и обратимся к анализу функции одной переменной. Определим
x(t)=x+ tp. Затем по цепному правилу дифференцирования
сложной функции для 0 ^ « ^ 1 имеем
de.
dt
f-1
дх (t),
(x(a))
dx (t),
dt
(»)=
9f
=^-J^(x(a))-pi==7f{x+apyp. (4.1.4)
i=\
Подстановка ое==0 сводит (4.1.4) к виду
^=vfW..
Пользуясь фундаментальной теоремой анализа, теоремой Нью-
тона, запишем
94 Гл. 4. Основы анализа функций многих переменных
что по определению g и согласно (4.1.4) эквивалентно
f(x+p)==f(x)+\Vf'(x+tp)тpdt•,
*J
О
тем самым (4.1.2) доказано. Окончательно по теореме о сред-
нем для функции одной переменной имеем
^(1)==^(0)+^(1), Se(0,l),
что по определению g и согласно (4.1.4) эквивалентно
f(x + р) = f(x) + Vf (x + Wp, g e (0, 1),
и (4.1.3) доказано. D
Пример 4.1.3. Пусть f: R2-^, / (л;) •= х\ - 2л;, + Зл;,х| + 4х^
x,=(\,\Y, р=(-2, 1У. Тогда
Г 2х, - 2 + ЗхП
^-l. 6^ +12x| J'
^)=6, f(A;,+p)==23, уЦ^)=(3, 18f.
В обозначениях леммы 4.1.2
g(t)=f(x,+tp)=f(l-2t, l+t)=6+l2f+7t2-2tз.
Читатель может убедиться, что (4.1.3) справедливо для z==
=x,+tp при t = (7 — V'19")/6 ^ 0.44.
Определение 4.1.4. Будем говорить, что непрерывно диффе-
ренцируемая функция /: R"—>-R дважды непрерывно диффе-
ренцируема в л-s R", если производные (д^/дх{дх,) (x), 1 s$ /,
/ ^ /г, существуют и непрерывны. Тогда гессиан функции fax
по определению есть матрица размера /гХ", и ее (<,/')-й эле-
мент равен
v2^ ^/= -И?-- 1 о
существует и равна pт'\?2f(x}p. Для любых x,A'+psD, суще-
ствует г Е (x, x + р), такое, что
/ (x + р} = f (x) + Vf W р + ^ p^f (г) р. (4.1.6)
Доказательство аналогично доказательству леммы 4.1.2. D
Всякий раз, когда f дважды непрерывно дифференцируема,
гессиан будет симметричен. Именно поэтому мы проявляли ин-
терес к симметричным матрицам в главе по линейной алгебре.
Пример 4.1.6. Пусть f, Хс и р заданы так, как в приме-
ре 4.1.3. Тогда
Г 2 6л:2 "1 Г 2 6 -|
n2f (у)==\ 2 у2^ (X } ' '
.6 30 J'
vlw [бх, 6xi+24x,]' "^
Читатель может убедиться, что (4.1.6) справедливо для г ==
=Хс+ tp, ^==-3".
Лемма 4.1.5 наводит нас на мысль, что можно было бы опи-
сывать поведение функции f в окрестности точки Хс квадратич-
ной моделью
. (Хс + Р) = f (Хс) + Vf (х,У р + у /W (Хс) Р, (4.1.7)
m
именно так мы впоследствии и поступим. Действительно, эта
лемма показывает, что погрешность данной модели имеет вид
f (x, + р) - m, {x, +p)=-^pт (^f (г) - ^f (x,)) р
при некотором ге(хс, Хс+р). Другую оценку погрешности
дает следствие 4.1.14.
Перейдем теперь к менее простому случаю, в котором
F: К"-»^"', где m = п соответствует задачам решения систем
нелинейных уравнений, а m ~> п—нелинейным задачам о наи-
меньших квадратах. Было бы удобно иметь специальное обо-
значение е[ для t-й строки единичной матрицы. Это не должно
вызвать путаницы с основанием натурального логарифма. Так
как значение f-й компоненты функции F можно записать как
f^ (x) = e\F (x), то по правилу дифференцирования произведения
имеем ^{x)==e[F' (x), что представляет собой г-ю строку F'{x).
96 Гл. 4. Основы анализа функций многих переменных
Таким образом, F'{x) должна быть матрицей размера теХ"
и ее f-й строкой будет V^x)1'. Ниже дается формальное опре-
деление.
Определение 4.1.7. Непрерывная функция F: R"->-R'" явля-
ется непрерывно дифференцируемой в х е R", если каждая ком-
понента fi, f=l, ..., т, непрерывно дифференцируема в х.
Производную от F в точке х иногда называют якобианом (мат-
рицей Якоби) F в точке х, а транспонированную к ней матрицу
иногда называют градиентом F в точке х. Общепринятые обо-
значения таковы:
Ff(x)sRmxn, ^(х)^=^-(х), F'(x)==/(x)==VF(xy.
Будем говорить, что функция F непрерывно дифференцируема
в открытой области DcR", и обозначать F^C^D), если F
непрерывно дифференцируема в каждой точке из D.
Пример 4.1.8. Пусть
Тогда
— у 2 _ 9 г
— -с, ^.Ху
У
J(x)=\
^ -^
\2xi —2}'
В оставшейся части книги будем обозначать матрицу Якоби
функции F в х через J(x). Кроме того, мы часто будем гово-
рить о якобиане функции F, а не о матрице Якоби функции F
в точке х. Единственно возможную двусмысленность может вы-
звать то, что первый термин иногда используется для детерми-
нанта матрицы /(л-). Однако здесь вряд ли возникнет какая-
либо путаница, поскольку мы редко прибегаем к использова-
нию детерминантов.
Перейдем теперь к тому, что существенно отличает свойства
скалярных функций от векторнозначных, а именно, для непре-
рывно дифференцируемых вектор-функций не существует тео-
ремы о среднем. Другими словами, может, вообще говоря, не
существовать Z(=R", такого, что F{x-{- р)== F(x)+ J{z)p. Ин-
туитивно понятно, что, несмотря на то что каждая функция fi
удовлетворяет соотношению fi {х + р) = fi (х) + Vfi (г:) Tp, точ-
ки г, все же могут быть различными. Для иллюстрации рас-
смотрим функцию из примера 4.1.8. Не существует г<= R", для
которого F(l, 1)== F(0,0)+ J(z) (1, I)7', поскольку это означало
бы, что
г^
L
+
е2'
.2z,
_ 1 -
-2
][
1 и 2г\ == 1, а это, очевидно, невозможно.
4.1. Производные и многомерные модели
Хотя обычная теорема о среднем не выполняется, имеется
возможность заменить ее в нашем дальнейшем анализе теоре-
мой Ньютона и неравенством треугольника для определенных
интегралов. Эти результаты приведены ниже. Интеграл от век-
тор-функции действительной переменной можно понимать как
вектор, состоящий из интегралов Римана от каждой компонен-
ты функции.
Лемма 4.1.9. Пусть функция F: !R"->-R'" непрерывно диф-
ференцируема в выпуклой открытой области D с: R". Тогда для
любых х, х+ Рs D,
1 х+р
F(x+p)-F{x)=\J{x+tp)pdt=\ Р'(г)йг. (4.1.8)
J J
Доказательство непосредственно следует из определения
4.1.7 и применения покомпонентно формулы Ньютона (4.1.2). D
Отметим, что соотношение (4.1.8) напоминает теорему
о среднем, если представить его как
F{x+p)-F{x)=\[J(x^tp}dl\p,
где подразумевается покомпонентное интегрирование матрично-
значной функции. В некоторых случаях эта форма представ-
ления окажется нам полезной. Для использования (4.1.8) в на-
ших рассуждениях необходимо иметь возможность получать
оценки интеграла в терминах подынтегрального выражения.
Следующая лемма дает как раз то, что нам нужно.
Лемма 4.1.10. Пусть G: D с R"-»-R"^", где D—открытое
выпуклое множество, причем х, х + р е D. Если G интегрируе-
ма на [х, х + р], то для любой нормы в R"1
II 1 II '
\\G(x+tp}pdt [^\\\G(x+ip)p\\dt. (4.1.9)
ll - 1й
Доказательство оставлено в качестве упражнения. Оно сле-
дует из представления интеграла в виде векторных интеграль-
ных сумм Римана и последующего применения неравенства тре-
угольника (3.6.1с). Затем можно воспользоваться переходом
к пределу. D
За к. C6U
98 Гл. 4. Основы анализа функций многих переменных
Лемма 4.1.9 наводит на мысль описывать поведение
Р{хс+р) аффинной моделью
(4.1.10)
Именно так мы впоследствии и поступим. Для получения оцен-
ки разности между F(xc-)-p) и Мс(Хс-\-р) необходимо пред-
положить непрерывность J (х) подобно тому, как это делалось
в разд. 2.4. Тогда мы получим оценку, аналогичную данной
в лемме 2.4.2 для функций одной переменной.
Определение 4.1.11. Пусть т, п > О, G: Р'1-^"^", xsR",
и пусть ||-|| есть норма в R", а ||[ • ||| —норма в R'"x". Будем го-
ворить, что функция G непрерывна по Липшицу в точке х, если
существуют открытое множество DcR", x<=D и константа у,
такие, что для всех и г D
(4.1.11)
Константа у называется константой Липшица для G в точке х.
Для любой конкретной D, которая содержит х и для которой
выполняется (4.1.11), говорят, что G непрерывна по Липшицу
в окрестности D точки х. Если (4.1.11) верно для каждого
x<=D, то Ge=Lip,y(D).
Заметим, что величина у в (4.1.11) зависит от нормы, но от
нормы не зависит само существование у.
Лемма 4.1.12. Пусть F: Р"-^"1 непрерывно дифференци-
руема в открытом выпуклом множестве D с= R", х s D. Пусть
при заданной векторной норме, индуцированной матричной
норме и константе у якобиан / непрерывен по Липшицу в
окрестности D точки х. Тогда для любых х + р s D
(4.1.12)
Доказательство. По лемме 4.1.9
/(^=4 $/(л-+^)/^
Ln J
i
=\[J(x+tp)-J(x)]pdt.
*J
Используя (4.1.9), определение индуцированной матричной
нормы и непрерывность по Липшицу / в окрестности D точ-
4.1. Производные и многомерные модели 99
ки л', окончательно получаем
i
\\F(x+p)-F(x)-f{x)p\\^[y(x+tp)-J(x)\\\\p\\dt^
о
! 1
<\\Уp\\\\P\\dt=y\\p\\2\fdt==^\\p\\2. О
J J —
О О
Пример 4.1.13. Пусть F: R2 -» R2, ^ (х) == х\ - х\ - а, ^ (х) =
===2х^— р, а, peR. [Система уравнений F(x)==0 эквива-
лентна уравнению x^ + 1х^ == -^а + ф .] Тогда
Г 2^, —2л-2 1
ж== \2х 2х\-
|_ ZA:2 •ь-Ч J
Здесь читатель может легко убедиться, используя /i-норму, что
J {х) удовлетворяет (4.1.11) для любых х, v e R2 при у = 2.
Используя непрерывность по Липшицу, можно также полу-
чить полезные оценки погрешности для квадратичной модели
(4.1.7), аппроксимирующей f(Xc-{-p). Это сделано ниже. Дока-
зательство аналогично доказательству леммы 4.1.12, и поэтому
оно оставлено в качестве упражнения.
Лемма 4.1.14. Пусть f: R"->-R дважды непрерывно диффе-
ренцируема в открытом выпуклом множестве Dc:R" и гес-
сиан V^(x) непрерывен по Липшицу с константой у в окрест-
ности D точки х при заданных векторной и индуцированной
матричной нормах. Тогда для любых х + Р s D
f {х + р} - (f(x) + Vf (xY р + 4 /W W р) 1 < ^ || р ||3. (4.1.13)
Мы завершаем этот раздел двумя неравенствами, связан-
ными с (4.1.12), которые нам понадобятся для оценки
\\F(v)— F(u) || в доказательствах сходимости. Доказательство
леммы 4.1.15, обобщающей лемму 4.1.12, оставлено в качестве
упражнения.
Лемма 4.1.15. Пусть F и / удовлетворяют условиям лем-
мы 4.1.12. Тогда для любых v, и s D
\\F(v}-F(u)-!(x)(v-u}\\^y 11"-^11«-^11 ||1,-иЦ.
(4.1.14)
Лемма 4.1.16. Пусть F и / удовлетворяют условиям лем-
мы 4.1.12. Предположим, что существует /(х)-'. Тогда суще-
4*
100 Гл. 4. Основы анализа функций многих переменных
ствуют е >• 0, 0 •< а •< р, такие, что
a||o-u|K||F(u)-F(y)|l[(ll^(xl)-l|l)~i(ll"~лll+ll"~^ll)]llo~"ll>
^117(^-4"°-""•
Таким образом, если е < 1/(||/(л:)-4|у), то первая часть
(4.1.15) выполнена при
1
4.2. КОНЕЧНО-РАЗНОСТНЫЕ ПРОИЗВОДНЫЕ
В МНОГОМЕРНОМ СЛУЧАЕ
В предыдущем разделе мы убедились, что якобиан, градиент
и гессиан будут полезными величинами при построении моде-
лей нелинейных функций многих переменных. Однако в при-
ложениях указанные производные зачастую не заданы анали-
тически. В настоящем разделе вводятся формулы для аппрокси-
мации производных конечными разностями и даются оценки
погрешностей этих формул. В разд. 5.4 и 5.6 обсуждаются в'оп-
росы выбора шага конечно-разностных аппроксимаций с уче-
том машинной арифметики и вопросы использования конечно-
разностных производных в предлагаемых алгоритмах.
Напомним, что для функции одной переменной f конечно-
разностная аппроксимация производной f'(x) задавалась по
формуле
f(x+h)-f(x)
и —~.,
4.2. Конечно-разностные производные 101
где h достаточно мало. Из оценки погрешности аффинной мо-
дели функции f(x-lгh) мы имели |а—f {х) \ == 0(h) для до-
статочно малых h. В случае когда F: R"->-R'", есть смысл
использовать ту же самую идею для аппроксимации {i,j)-u
компоненты /{х) с помощью аппроксимации по разности вперед
f, (х + he,) - f, (х)
ац — ————д—————,
где е, обозначает /-и единичный вектор. Это эквивалентно
аппроксимации j-то столбца J{х} по формуле
Л
F (х + he,) - F (х)
(4.2.1)
Здесь тоже следует ожидать, что ||Л./—(/(л:)).,||= 0(/i) для
достаточно малых h. Этот факт обоснован в лемме 4.2.1.
Лемма 4.2.1. Пусть F: R"-»-R"1 удовлетворяет условиям
леммы 4.1.12 в векторной норме Ц-11, для которой ||е/||= 1, /=
==1, ..., п. Пусть, далее, А е. R'"x", где Л., определены по
(4.2.1), /==1, ..., п. Тогда
Если пользоваться /i-нормой, то
(4.2.2)
(4.2.3)
Доказательство. Подстановка p=^he, в (4.1.12) дает
\\F(x+he|)-F(x)-J{x)he|\\^^\\he^\\2==^\h\'^.
Разделив обе части неравенства на h, приходим к (4.2.2). Так
как /i-норма матрицы есть не что иное, как максимум /i-норм
ее столбцов, отсюда непосредственна вытекает (4.2.3). D
Следует упомянуть, что хотя, согласно (4.2.3), при построе-
нии всей Л используется один и тот же шаг h, из-за арифме-
тики конечной точности мы будем вынуждены применять шаги
различных размеров для каждого столбца матрицы Л. Заме-
тим также, что конечно-разностная аппроксимация якобиана
требует п дополнительных вычислений функции F. Таким обра-
зом, это может оказаться сравнительно трудоемким, если тру-
доемко вычисление самой F или п довольно велико.
Если нелинейная задача состоит в минимизации функции
/: R"-»-R, то может возникнуть необходимость в аппроксима-
ции градиента Vf(.v) и (или) гессиана У^(л'). Аппроксимация
102 Гл. 4. Основы анализа функций многих переменных
градиента всего лишь частный случай рассмотренной выше ап-
проксимации / (х) при т = 1. В некоторых случаях из-за ко-
нечной точности вычислений приходится подбирать более точ-
ную конечно-разностную аппроксимацию, с использованием
центральных разностей, приведенных в лемме 4.2.2. Отметим,
что такая аппроксимация требует вдвое больше вычислений /
по сравнению с разностью вперед.
'Лемма 4.2.2. Пусть f: R"—-R удовлетворяет условиям лем-
мы 4.1.14 в векторной норме с тем свойством, что ||е(|[== 1, i=
==1, ..., п. Предположим х + h-ei, х—hei e D, i==l, ..., п.
Пусть а е R", где а, имеют вид
2h
Тогда
Если пользоваться /^-нормой, то
(4.2.4)
(4.2.5)
(4.2.6)
Доказательство. Определим действительные величины а и |3
следующим образом:
а = / {х + he^) - f{x) - h^f (х), - W (л:)„,
Р = f(x - hef) -f(x)+ h\?f (x), - h^f (х)ц.
Применение (4.1.13) при p=±hei приводит к
|а|<
yh3
и по неравенству треугольника имеем
|а-РК^.
Таким образом,
=2h(ai—^f{x)i)
к (4.2.6). а
(4.2.5) .следует из соотношения к—13 ==
Определение /ос-нормы и (4.2.5) приводит
В некоторых случаях градиент Vf задан аналитически, а V2/'—
нет. В этих ситуациях V2} можно аппроксимировать, применяя
формулу (4.2.1) к функции F A,Vf, и затем, полагая Л==
=у(Л-г-Л7'), так как аппроксимация гессиана V2/' должна
быть симметричной. Из леммы 4.2.1 известно, что ||Л—V2/^)!! ==
4.3. Необходимые и достаточные условия 103
== 0(/г) для достаточно малого h. Легко показать, что ||Л—
—^2f(x)\\F<^\\A—V2f{x)\\F (см. упр. 12). Таким образом, ||Л —
- УВД ||== О (/г).
Если V/ не задан, имеется возможность аппроксимировать
V2/, используя лишь значения f(x}, как это описано в лем-
ме 4.2.3. Здесь погрешность также имеет порядок 0(/i) для до-
статочно малых h. Заметим, однако, что такая аппроксимация
требует дополнительно (n2-{-3n)/2 вычислений f.
Лемма 4.2.3. Пусть f удовлетворяет условию леммы 4.2.2
Предположим, что х, х + й„ х -\- he;, х + hei + he, e D, 1 sS: /,
/ sS; п. Пусть Л s R^", где Ац имеет вид
л - f (х + hei + he^ ~f ^ + Ае1) ~ ^х + he^ + f (x) а^7\
Лц————————————————————————————————————————————-д————————————————————————————————————————. ^.^./)
h2
Тогда
(4.2.8)
Если пользоваться матричной /г, /оо-нормой или нормой Фро-
бениуса, то
\\A-^f{x}\\^ynh. (4.2.9)
Доказательство очень похоже на доказательство леммы 4.2.2.
Для доказательства (4.2.8) вначале подставим последователь-
но р == he,•+ he,, p = hei и р = he, в (4.1.13). В результате
получим три неравенства. Обозначим величины, стоящие в их
левых частях под знаком модуля, через а, р и ц соответственно.
Тогда к—р—т1==(Л,7—''\f2f{x}i^}h2. Используя |а—|3—T]]^
s?a |(х|+ |Р|+ |il| и разделив результат на h2, получим (4.2.8).
Таким образом, (4.2.9) непосредственно следует из (3.1.8а),
(3.1.8с) и определения нормы Фробениуса. D
4.3. НЕОБХОДИМЫЕ И ДОСТАТОЧНЫЕ УСЛОВИЯ
В ЗАДАЧАХ БЕЗУСЛОВНОЙ МИНИМИЗАЦИИ
В этом разделе приведем необходимые и достаточные условия
первого и второго порядков того, что точка х» является ло-
кальным минимумом непрерывно дифференцируемой функции
f: R"-»-R, n"^. 1. Естественно, что эти условия будут ключевыми
в наших алгоритмах решения задачи безусловной минимиза-
ции. Они тесно связаны со следующими условиями, касающи-
мися задачи с одной переменной, которые уже рассматривались
в гл. 2. Итак, в одномерном случае, для того чтобы л"» была
точкой локального минимума /, необходимо, чтобы ^(х»)=0;
104 Гл. 4. Основы анализа функций многих переменных
достаточно дополнительно выполнения неравенства /'"(.\'»)>U
и необходимо /'"(.v'«)^0. В многомерном случае, для того чтобы
х» была точкой локального минимума требуется У/(л:»)==0;
достаточное условие, кроме того, требует положительной опре-
деленности V2^^»), а необходимое—по крайней мере положи-
тельной полуопределенности ^2f{x„}.
Доказательство и интерпретация этих условий но существу,
такие же, как и в случае функций одной переменной. Равен-
ство нулю градиента просто говорит о том, что не существует
направления из х„, вдоль которого f{x} с необходимостью нач-
нет увеличиваться или уменьшаться. Таким образом, точка,
имеющая нулевой градиент, является точкой минимума или
максимума f либо седловой точкой, которая представляет со-
бой точку максимума в одном поперечном сечении простран-
ства переменных и в то же время точку минимума в другом
(по аналогии с центром седла в двумерном случае). Положи-
тельная определенность ^2f(x^,) соответствует геометрическому
представлению о строгой локальной выпуклости и как раз
означает, что / изгибается вверх из точки х^ во всех направ-
лениях.
Лемма 4.3.1. Пусть f: R"-»-R непрерывно дифференцируема
в открытом выпуклом множестве D с: R". Тогда х s D может
быть точкой локального минимума f, только если Vf(x)==0.
Доказательство. Как и в случае одной переменной, здесь
доказательство от противного предпочтительней, чем прямое
доказательство, потому что сама лемма и доказательство, вме-
сте взятые, указывают, как распознать возможный минимум
и как улучшить текущее приближение, если оно не является
точкой минимума.
Если Vf(x}=^0, то выберем произвольное р s R", для кото-
рого pт\^?f(x)<^0. Такое р, несомненно, существует, поскольку
достаточно взять p==—Vf(x). В целях сохранения простоты
обозначений, умножим предварительно р на положительную
константу, так чтобы ,\-+pi=D. Это можно сделать, поскольку
множество D открыто и выпукло, и поэтому х + tp e D для
любых 0 ss: / г$ 1.
Тогда, в силу непрерывности Vf на D, существует некото-
рое ?s[0, I], такое, что \^{х-\-tp)1'? f(x).
Это доказывает, что х есть точка локального минимума f. Не-
обходимость того, чтобы V^(x) был положительно полуопре-
деленным, оставим для упражнения. D
Доказательство данного ниже следствия также является лег-
ким упражнением. Мы приводим его потому, что оно представ-
ляет собой утверждение непосредственно той части теоре-
мы 4.3.2, которая наиболее соответствует условиям, обеспечи-
вающим нахождение точки локального минимума методом
Ньютона путем отыскания нуля Vf.
Следствие 4.3.3. Пусть /: R"-»-R дважды непрерывно диф-
ференцируема в открытом выпуклом множестве DcR". Если
x„e.D, Vf(x^)=0 и гессиан V2f непрерывен по Липшицу в х*,
причем \!2f(x^ не вырожден, то JC, является точкой локального
минимума f тогда и только тогда, когда &^2f(x^,) положительно
определен.
Необходимые и достаточные условия того, чтобы л"» была
точкой локального максимума f, в точности такие же, как для
106 Гл. 4. Основы анализа функций многих переменных
случая, когда л-» является точкой локального минимума для
—f, а именно: Vf(x«)==0 есть необходимое условие и, вдобавок,
необходимо, чтобы ^'2f{x^) был отрицательно полуопределен-
ным; отрицательная определенность \v2f{x») является достаточ-
ным условием. Если V2^») не является знакоопределенным, то
х^ не может быть ни точкой локального минимума, ни точкой
локального максимума.
Достаточные условия минимума частично объясняют про-
явленный нами интерес к симметричным и положительно опре-
деленным матрицам в гл. 3. Они приобретают еще более важ-
ное значение из-за того, что предлагаемые алгоритмы миними-
зации обычно описывают поведение f при приращении р
к точке Хс с помощью квадратичной функции
те (х, + Р) = f (Хс} + V/ (х,У р + у Р^р.
Незначительная модификация доказательства теоремы 4.3.2
показывает, что /Пс имеет единственный минимум тогда и толь-
ко тогда, когда Н положительно определено. Таким образом,
при построении моделей будут часто использоваться симмет-
ричность и положительная определенность матриц Н. Важно
представить себе вид графиков квадратичных функций многих
переменных: они строго выпуклы или выпуклы соответственно
чашеобразны или желобообразны в двумерном случае, когда
Н положительно определена или положительно полуопределена;
они строго вогнуты или вогнуты (в форме перевернутых чаши
или желоба) в тех случаях, когда Н отрицательно определена
или отрицательно полуопределена; они имеют вид. седла (в
/г-мерном случае), если Н не является знакоопределенной.
4.4. УПРАЖНЕНИЯ
1. Вычислите якобиан следующей системы трех уравнений с тремя неиз-
вестными:
г х^+4-4 1
FW==\ x,x^
L 2л:1^2 — Зх-гХз + XiXa -I
2. Пусть f: R^R, ^(x)=xзx^+x^x^. Найдите 7/(х) и ^{х).
3. Докажите лемму 4.1.5.
4. Имеется иное 'определение, согласно которому якобианом функции
F: R" —>- R" в х i= R" называется линейный оператор J(x) (если он суще-
ствует), для которого
lim
t-ro
4.4. Упражнения 107
Докажите, что если каждая компонента F непрерывно дифференцируема в
открытом множестве D, содержащем х, и / соответствует определению 4.1.5,
то !(х) = J(x}. Замечание. Существование такого J(x) в (4.4.1) является
определением дифференцируемое™ по Гато F в точке х. Более сильным
условием на F является его дифференцируемость (в х) по Фреше, когда
требуется, чтобы 7(х) е ^пхп удовлетворяло
lim ^(х+р)-Р(х)-Т(х)р\\ _ Q
р-»о llpll
[Более подробную информацию см. в книге Ортеги и Рейнболдта (1970).]
5. Пусть
^^I^"^- x?s0'
I 0, х=0.
Докажите, что f(x) непрерывно по Липшицу, но не дифференцируемо в точ-
ке л: = 0.
6. Докажите лемму 4.1.14. [Указание: вам понадобится обобщение тео-
ремы Ньютона на случай двойных интегралов.]
7. Докажите лемму 4.1.15. (Техника доказательства очень похожа на ту,
что использовалась при доказательстве леммы 4.1.12.)
8. Если в определении непрерывности по Липшицу равенство (4.1.11)
заменить на
||G(a)-GWi| 0, такие, что
N(x^, г) с: D, F(x^)==0, существует /(д'„)-1, причем II / (х»)-111 :SS (3
и / <= Lipv(./V(x», /•)). Тогда существует s > 0, такое, что для
всех XQ G N(Xf, e) последовательность х\,хч, ..., порождаемая
соотношением
Xkл-\=LXk—J(Xk}~\F{Xk), k=0,l,...,
корректно определена, сходится к х» и удовлетворяет неравен-
ству
ll^+1-^IKPvll^-^.ll2, ^=0,1,.... (5.2.1)
Доказательство. Выберем е так, чтобы якобиан J(x) был
невырожденным для любых x<^N(x„,s), и затем покажем, что,
поскольку локальная погрешность аффинной модели, исполь-
зуемой для проведения всех итераций метода Ньютона, имеет
порядок 0(11^:^—A'J]2), сходимость ^-квадратична. Пусть
e=min{r, ^}.
(5.2.2)
Покажем индукцией по k, что на каждом шаге выполняется
(5.2.1), а также, что
II Xk+1 — X, |Г< -у- 1] Xk — X, II,
5.2. Локальная сходимость метода Ньютона 115
и тогда
x„+ie=N{x„ в). (5.2.3)
Сначала покажем, что якобиан J {хо) не вырожден. Из ||хо—
—х || ^ е, непрерывности J по Липшицу в х^ и (5.2.2) следует,
что
1 I to)"' [f to) - J to)] II < II / to)"' II II / to) - J to) 11 <
0, Хо s R", F: R"-^ R",
и предположим, что функция F непрерывно дифференцируема
в N{xQ,r). Пусть для заданных векторной и индуцированной
операторной норм / s Lipv(^V(xo, г)), причем J {хо) не вырожден,
и существуют константы (3, T) ^ 0, такие, что
i! {хо}~1 ct==YReii1. Если ci^— и г>:/-о=
=s(l — Vl —2а)/(ру)> то последовательность {х/с}, задаваемая
соотношением
Xk+l=Xk—J(Xk)~t F(Xk), ^==0,1,...,
корректно определена и сходится к Хц., который является един-
ственным нулем F в замыкании множества N{xo,ro). Если же
в этом случае а < -п-, то х^ будет единственным нулем F в
N(xo, т-i), где ri=3min[r, (l + л/1 - 2а)/((3у)], и
Й==0, 1, ... .
(5.3.1)
Теорема 5.3.1 имеет довольно длинное доказательство. Его
схема дана в упр. 6—8. В ее основе лежит простая и весьма
здравая идея. Итак, зафиксируем в п-мерном пространстве ите-
рации XQ, х\, ... и протянем нить, соединяющую их в указанном
порядке. Пометим на нити те места, где находятся х^, а затем
вытянем ее в одну прямую, возможно, при этом немного растя-
нув ее в длину. То, что в результате получится, представляет
собой линейный сегмент, состоящий из последовательности верх-
них оценок для расстояний \\Xk+\—Xk\\, k = О, 1, ... . Доказа-
тельство теоремы Канторовича по существу показывает, что для
любой последовательности {х/г}, построенной согласно предпо-
ложениям теоремы 5.3.1, эти расстояния меньше или равны со-
ответственно \tk+i—tk\- Последние получаются, если приме-
нить метод Ньютона, начиная с to = 0, к функции
f:R^R, f(/)==^^-^+f
(видно, что она удовлетворяет условиям теоремы 5.3.1). По-
скольку последовательность {tk} сходится монотонно к мень-
118 Гл. 5. Метод Ньютона
шему корню /,==(l — V1 —2ct)/(Pv) функции f(t}, общая длина
части х-нити, лежащей за Xk, не должна превосходить \tk—t^\.
Таким образом, {хь} является последовательностью Коши и по-
этому она сходится к некоторому х„, причем погрешности
\\Xk—^«11 ограничены ^-квадратично сходящейся последователь-
ностью \tk—t^\. Эта методика доказательства называется ма-
жоризацией. Она нигде не использует конечность размерности
пространства R". Говорят, что последовательность {tic} мажори-
рует последовательность {х/г}- Дальнейшее развитие доказатель-
ства можно найти в упражнениях или, например, в работе Дэн-
ниса (1971).
Благоприятным обстоятельством в теореме Канторовича яв-
ляется то, что она не предполагает существования х# и невы-
рожденности J(x^); в действительности существуют функции F
и точки хо, которые удовлетворяют условиям теоремы 5.3.1, хотя
/(х*) вырожден. Неудачным моментом здесь является то, что
/"-порядок сходимости ничего не говорит о продвижениях на
каждой итерации, а даваемые теоремой оценки погрешности на
практике часто слишком неточны. Но это не так важно, так как
Дэннисом (1971) показано, что
-^•\\Xk+i—Xk\\<^\\Xk—xJ<^2\\Xk+i—Xk\\.
Кроме того, проверку предположений теоремы 5.3.1 традиционно
представляют себе как выяснение вопроса о том, будет ли ме-
тод Ньютона сходиться из некоторого хо для конкретной функ-
ции F. Однако на практике фактически всегда для тщательной
оценки константы Липшица у требуется больше труда, чем для
того, чтобы просто попробовать метод Ньютона и посмотреть,
сходится он или нет. Так что, за исключением частных случаев,
практическим приложением это не назовешь.
Теорема Канторовича по своему виду очень сходна с теоре-
мой о сжимающем отображении. Это — другая классическая
теорема. Она рассматривает произвольный итерационный метод
вида Xfc+i = G{xk) и устанавливает условия, касающиеся G, при
которых последовательность {Xk} будет сходиться (7-линейно к
точке л", из любой точки хо в области D. Более того, доказы-
вается, что х* является единственной точкой в D, такой, что
G(x*)=x„. Таким образом, теорема о сжимающем отображении
представляет собой более общий, но вместе с тем и более сла-
бый результат, чем теорема Канторовича.
Теорема 5.3.2 (теорема о сжимающем отображении). Пусть
G: D->-D, где D есть замкнутое подмножество R". Если для не-
которой нормы 11-И существует ссе [О, 1), такое, что
\\G{x)-G(y}\\<^a\\x-y}\, V;c, 0, такие, что если {hk} есть последовательность действи-
тельных чисел, причем 0<|/i<:|s$/i и ХоеМ(х^б), то последо-
вательность х\, xs, ..., задаваемая формулами
, j== 1,..., п,
k=0,\, ....
(5.4.1)
Xk+\=Xk— Ak^ixk),
корректно определена и сходится ^-линейно к х^. Если
lim /4=0,
k->0
то сходимость (/-сверхлинейна. Если существует некоторая кон-
станта Ci, такая, что
\hk\ macheps |x/[, и тогда,
прежде чем использовать hj в (5.4.9Ь), проводятся вычисления')
temp == Xj + hj,
hj == temp — Xj.
Этот прием улучшает точность, поэтому мы используем его на
практике. Теперь легко убедиться, что погрешность, возникаю-
щая при вычислении А., по формуле (5.4.9Ь) из-за ошибок округ-
') Здесь temp есть сокращение от temporary (временный).—Прим. перев.
5.5. Метод Ньютона безусловной минимизации 125
ления и погрешностей вычисления функции, ограничена вели-
чиной
2 (т] + macheps) F ic, л )\\
\hj\ ' (0.^4)
где Р есть верхняя граница для ||.F(x)H при х <= [х, х + h,e,\.
[Мы не включаем сюда пренебрежимо малые ошибки от деле-
ния в (5.4.9Ь).] Кроме того, по лемме 4.2.1 разница в точной
арифметике между А., и J(x)., ограничена величиной
^1, (5.4.12)
где у, есть константа Липшица, такая, что
||[/(д;+^/)-/(л:)]./||<у/Ш
для всех te.[Q,h,}. Значение ft„ "минимизирующее сумму вели-
чин (5.4.11) и (5.4.12), равно
^^4(т,+ macheps) p^ ^.13)
При достаточно разумных предположениях (см. упр. 14) о том,
что
.),
F
(max {| х, [, typ х,}}
(5.4.13) сводится к (5.4.10) с точностью до некоторого постоян-
ного множителя со знаком. Заметим в заключение, что прове-
денный анализ можно модифицировать с учетом абсолютной
погрешности в вычисленном значении F(x).
5.5. МЕТОД НЬЮТОНА БЕЗУСЛОВНОЙ
МИНИМИЗАЦИИ
Рассмотрим теперь метод Ньютона для задачи
min f: R"->R,
x<=R"
(5.5.1)
где предполагается, что f дважды непрерывно дифференци-
руема. Точно так же как в гл. 2, мы моделируем f в текущей
точке Хс квадратичной функцией
т, (х, + р) === f (х,) + Vf (xf р + ^ p^f (х,) р
и находим точку х+ = Хс + s,v. Здесь У/Пс(^+)=0 является не-
обходимым условием того, что х+ есть точка минимума для те-
Это соответствует следующему алгоритму:
126 Гл. 5. Метод Ньютона
Алгоритм 5.5.1 (метод Ньютона для безусловной минимиза-
ции).
Заданы: дважды непрерывно дифференцируемая функция
f: R"-> R и л-о<= R"; на каждой итерации k
решить У^(^)5^=—У/(^),
"k+\
— у -L. oN
~~ •"'ft1 "fe-
Алгоритм 5.5.1 просто является применением метода Нью-
тона (алгоритм 5.1.1) к системе Vf(x)=0 из п нелинейных урав-
нений с п неизвестными, так как в нем на каждой итерации
делается шаг в нуль аффинной модели для Vf, определяемой
как
Mk (Xk + р) = V [mk (Xk + р)] = V/ (Xk) + V2/ (Xk) p.
С этой точки зрения некоторые из достоинств и недостатков
алгоритма для решения задачи минимизации (5.5.1), несом-
ненно, совпадают с приведенными в табл. 5.1.2. Положительным
здесь является то, что если XQ достаточно близко к точке ло-
кального минимума х» функции f с невырожденной матрицей
У^(х») (и поэтому положительно определенной согласно след-
ствию 4.3.3), то последовательность {х^, генерируемая алго-
ритмом 5.5.1, будет сходиться ^-квадратично к х„, что с очевид-
ностью продемонстрировано примером 5.5.2. Кроме того, если
f—строго выпуклая квадратичная функция, то Vf аффинно и
поэтому х\ будет единственной точкой минимума f.
Пример 5.5.2. Пусть функция
^„X,)==(;c,-2y+(^-2)2^+(^+l)2
имеет минимум в х*==(2,—I)7. Алгоритм 5.5.1, стартующий из
xo=(l,\)т, вырабатывает следующую последовательность то-
чек (с точностью до восьми цифр на ЭВМ CDC при одинарной
точности)'
,/К)
Хо = =(1.0 , 1.0 )7' 6.0
Xi = =(1.0 , -0.5 f 1.5
Хд = =(1.3913043 , - 0.69565217)7' 4.09 X 10-1
^з = .(1.7459441 , -0.94879809)7 6.49 X 10-2
Х4- =(1.9862783 , -1.0482081)'' 2.53 X 10-'
-^ '- = (1.9987342 , -1.0001700)'' 1.63 X Ю"6
xь= =(1.9999996 , - 1.0000016)''' 2.75 X 10-12
5.5. Метод Ньютона безусловной минимизации 127
Что касается отрицательных сторон алгоритма 5.5.1, то он
разделяет с методом Ньютона для решения F(x)=0 его недо-
статки и имеет к тому же дополнительный минус. Старые труд-
ности заключаются в том, что метод не сходится глобально,
требует решения систем линейных уравнений и аналитически
заданных производных, причем в данном случае это V^ и V2/.
Указанные вопросы обсуждаются в такой последовательности:
конечно-разностная аппроксимация производных для задач ми-
нимизации в разд. 5.6, глобальные методы в гл. 6, а аппрокси-
мация гессиана по секущим ') в гл. 9.
Мы должны также принять во внимание тот факт, что даже
как локальный, метод Ньютона не приспособлен специальным
образом для задачи минимизации, поскольку в нем нет ничего,
что удерживало бы его от продвижения в сторону максимума
или седловой точки функции f, где V/ тоже равен нулю. С точки
зрения моделирования трудность в случае алгоритма 5.5.1 со-
стоит в том, что каждый шаг направляется просто-напросто
в сторону стационарной точки локальной квадратичной модели
независимо от того, является ли стационарная точка миниму-
мом, максимумом или седловой точкой модели. Этот шаг оправ-
дан при попытке минимизировать f(x), только когда гессиан
V^(^c) положительно определен, т. е. когда критическая точка
есть точка минимума. Даже если метод Ньютона рассматривать
прежде всего как локальный метод, который следует применять,
когда Хс достаточно близко к точке минимума, где ^}(хс) по-
ложительно определен, то мы все же хотели бы провести неко-
торую полезную адаптацию в случае, когда ^f(Xc) не является
положительно определенной.
Имеются, по-видимому, две приемлемые модификации ме-
тода Ньютона для случая, когда ^2}(xc) не является положи-
тельно определенной. Первая заключается в попытке использо-
вать внешний вид модели, в частности «направления отрица-
тельной кривизны» р, для которых pтV2f(xc)p <0, с тем чтобы
быстро уменьшить f(x). Было приложено немало усилий к раз-
работке таких стратегий [см., например, Морэ и Соренеен
(1979)], но они пока еще не оправдали себя. Мы рекомендуем
вторую альтернативу, которая заключается в том, чтобы изме-
нять модель, когда это необходимо, так чтобы она имела един-
ственную точку минимума, и затем воспользоваться этой точ-
кой минимума для определения ньютоновского шага. В частно-
сти, мы увидим в гл. 6, что имеется несколько доводов в пользу
выбора шагов вида —(V2f(Xc)-{-v,cI}~l\/f(Xc), где (Ac $s 0, а
У^х^+Цс/ положительно определена Поэтому, когда 'V2f(Xc)
не является положительно определенной, рекомендуется заме-
1) В оригинале secant approximations of the Hessian.—Прим. перев.
128 Гл. 5. Метод Ньютона
нять гессиан модели на ^2f{xc)-!г^c^, где (Лс > 0 в идеале не-
намного превышает то наименьшее (J,, которое делает V2^^)^- |^/
положительно определенной и достаточно хорошо обусловлен-
ной. Наш алгоритм, выполняющий это, обсуждается в конце
данного раздела. Он представляет собой некоторое видоизмене-
ние модификации разложения Холесского, приведенной в книге
Гилла, Мюррея и Райт (1981, с. 147). Результатом является
следующий вариант метода Ньютона.
Алгоритм 5.5.3. Модифицированный метод Ньютона безус-
ловной минимизации
Заданы: дважды непрерывно дифференцируемая функция
/: R"->- R и XQ e R"; на каждой итерации k'.
применить к 'V2f(xtг) алгоритм А5.5.1 для нахождения разло-
жения Холесского матрицы Hk = V2/(.<&)+ V^kl, где ^ = О, если
У2f(xk) надежно положительно определена'), и [\.k > 0 доста-
точно велико, так что Hk надежно положительно определена,
в противном случае:
решить Н,^ = - Vf (^),
fe+i
Если у.о достаточно близко к точке минимума х* функции f
и если V2/^*) положительно определена и достаточно хорошо
обусловлена, то алгоритм 5.5.3 будет эквивалентен алгоритму
5.5.1 и, следовательно, будет (7-квадратично сходящимся. Пере-
смотренный вариант доказательства леммы 4.3.1 покажет, что
алгоритм 5.5.3 имеет дополнительное преимущество, состоя-
щее в том, что модифицированное ньютоновское направление
—H^\f(xc) является направлением, в котором любая дважды
дифференцируемая функция f(x} начинает уменьшаться из лю-
бой точки Хс.
Алгоритм 5.5.3 также имеет две важные интерпретации в
терминах квадратичных моделей функции f(x). Первая заклю-
чается в том, что он полагает х+ равным точке минимума Хс + р
для аппроксимации
ГПс (X, + р) = f (X,) + W {xf Р + у Р^сР.
') То есть не только положительно определена, но также и достаточно
хорошо обусловлена.—Прим. перев.
S.5. Метод Ньютона безусловной минимизации 129
В разд. 6.4 мы убедимся, что х+ есть также точка минимума не-
модифицированной модели
пгс {Хс + Р) = / (х,) + Vf (xf р + -} /W (Хс}
при наличии ограничения
\\P\W(x+-x,}\\,,
что, возможно, является более привлекательным объяснением.
Обе интерпретации можно использовать для объяснения основ-
ной проблемы, связанной с модифицированным ньютоновским
алгоритмом: в некоторых ситуациях он может вырабатывать
чрезмерно большие шаги s^. Эта проблема будет рассмотрена
вполне удовлетворительным образом в гл. 6. Длину шага можно
отрегулировать, если поработать с параметрами алгоритма
А5.5.1. Однако любая такая регулировка слишком сильно зави-
сит от характерных масштабов задачи, чтобы ее включать
в алгоритм общего назначения.
Мы завершаем этот раздел кратким описанием нашего алго-
ритма (алгоритм А5.5.1 приложения), в котором определяется
как цс ^ 0, такое, что Не = у^(Хс)-}- ^с/ положительно опреде-
лена и хорошо обусловлена, так и разложение Не по Холес-
скому. Хотя этот алгоритм является центральным в нашем про-
граммном обеспечении по минимизации, все же он имеет не на-
столько решающее значение, чтобы читатель изучал его в де-
талях.
Ясно, что наименьшее среди возможных ^с (в случае, когда
\f2f(xc) не является положительно определенной) несколько
больше, чем абсолютная величина крайнего слева отрицатель-
ного собственного значения матрицы \?2f(xc). Несмотря на то
что его можно вычислить без слишком больших хлопот, мы ре-
шили предоставить гораздо более простой алгоритм, который
может приводить к большим |д.с. Применим сначала алгоритм
Гилла и Мюррея модифицированного разложения Холесского
к \/2f(xc), что даст в результате V2f(A"c)+ D = LU, где D есть
диагональная матрица с неотрицательными диагональными эле-
ментами, которые равны нулю, если \f2f(Xc) надежно положи-
тельно определена. Если D = 0, то ц.с = 0, и этим завершаем ра-
боту алгоритма. Если D ^ 0, то вычисляем верхнюю границу Ь\
для цс, используя теорему о кругах Гершгорнна (теорема 3.5.9).
Поскольку величина
&2 == rnax {da}
1 < 1 < П
также представляет собой верхнюю границу для ^г, то пола-
гаем цс = mi.n{&i, b-г} и завершаем работу алгоритма вычисле-
нием разложения Холесского для Не == V2f(xг}+ ^с1.
5 Зак. 660
130 Гл. 5. Метод Ньютона
5.6. МЕТОДЫ С КОНЕЧНО-РАЗНОСТНЫМИ ПРОИЗВОДНЫМИ
ДЛЯ БЕЗУСЛОВНОЙ МИНИМИЗАЦИИ
В этом разделе рассматривается влияние на метод Ньютона для
безусловной минимизации, которое оказывает замена конечно-
разностными аппроксимациями аналитических производных
Vf(x) и \/2f(x), а также практический выбор длины шага при
вычислении этих аппроксимаций. Мы увидим, что здесь имеется
несколько существенных отличий в теории и в практике от ис-
пользования конечно-разностных якобианов, рассмотренных
в разд. 5.4.
Обсудим сначала использование конечно-разностных аппрок-
симаций гессианов. В разд. 4.2 мы видели два способа аппрок-
симации ^2f(xc) конечными разностями: один, когда Vf(x) задан
аналитически, а другой, когда не задан. Обе аппроксимации
удовлетворяют оценке
II A.-V2^) 11= О (/г,)
(he—длина конечно-разностного шага) при стандартных пред-
положениях, и поэтому, используя ту же технику, что в доказа-
тельстве теоремы 5.4.1, легко показать, что если he = 0(1|ес||),
где вс = Хс—л"*, то метод Ньютона, использующий конечно-раз-
ностные гессианы, сходится по-прежнему (7-квадратично. Остает-
ся вопрос о выборе длины конечно-разностного шага на прак-
тике.
Если V/(A") задан аналитически, то Ас вычисляется по фор-
мулам
Л.
Vf(x,+h,e,}-Vf(x,)
hi
Л+Л7'
/ = 1, ..., п,
(5.6.1а)
(5.6.1Ь)
Поскольку (5.6.1 а) представляет собой ту же самую формулу,
как в случае конечно-разностных якобианов, то рекомендуется.
та же самая длина шага
h,- = л/Л max {| x, \. typ x,} sign (.r,), (5.6.2)
где T] ^ macheps есть оценка для относительной погрешности
вычисления V/(-v). Для этой аппроксимации используется алго-
ритм А5.6.1. Напомним, что мы ожидаем получать правильной
примерно первую половину разрядов ^2f(xc} при условии, если
Vf(x) вычисляется точно (см. приведенный ниже пример 5.6.1).
5.6. Методы с конечно-разностными производными 131
Вспомним, что, когда Vf(x} не задан аналитически, Ас вы-
числяется по формуле
,,, _ [f (x, + h,e, + h,e,) - f (x, + /^,)] - [f (x, + h,e,) - f (x,)}
Wii— h{hj
(5.6.3)
1<гг.
Пример 5.6.1 показывает, что использование длины шага (5.6.2)
в этой формуле может иметь катастрофические последствия.
Пример 5.6.1. Пусть задана f(xi,Xs), как в примере 5.5.2, и
пусть Хс = (1, 1)г. Тогда
№[-': -:]•
Если V^-fc) аппроксимируется по формуле (5.6.1) с использо-
ванием hj == Ю-7^/ на ЭВМ CDC с 48 двоичными разрядами
(^14.4 десятичных разрядов), то в результате имеем
А.
Г 13.999999737280 —4.00000018885291
c ~ L - 4.000001888529 4.0000003309615 J'
Однако если V^^c) аппроксимируется по формуле (5.6.3) с ис-
пользованием той же самой длины шага, то в результате имеем
Г 19.895196601283 -5.68434188608081
/\ —— | |
c L-5.6843418860808 0 J
Если длину шага в (5.6.3) заменить на h,= Ю-4^', то в резуль-
тате имеем
__Г 13.997603787175 — 4.0000003309615 -j
с — [ -4.0000003309611 3.9999974887906 J '
Неверные результаты во втором случае примера 5.6.1 легко
объяснить. Если взять, как это было в примере, hi == л/macheps Xi
и h, = -\/macheps л"/, то знаменатель в (5.6.3) окажется равным
(macheps •Хг x/). Поскольку числитель в (5.6.3) будет, вероятно,
вычисляться с ошибками конечной арифметики, по меньшей
мере равными macheps- \f(Xc} |, то (Лс);у будет иметь ошибку в
конечной арифметике, по меньшей мере равную \f(Xc)\/\Xi-Xi\,
что не должно быть малым по сравнению с V^^c);/. Мы часто
сталкивались с тем, что формула (5.6.3) давала полностью не-
верные результаты при использовании длины шага (5.6.2), при-
чем нуль является довольно обычным результатом в нашей
практике. [ЕСЛИ в нашем примере взять h^==\0~sx^, то по-
лучим') /85.2+ 0 \-I
_______ '"Л О 85.2+^'J
') Запись «85.2+» означает «85.2 с избытком». —Прим. перев.
5*
132 Гл. 5. Метод Ньютона
Такие же рассуждения и анализ, как и в разд. 5.4, показы-
вают, что следует выбирать вместо рассмотренного способа
длину конечно-разностного шага в формуле (5.6.3) так, чтобы
этим вносить возмущение в правые две трети достоверных раз-
рядов f(xc). Это можно обычно сделать, выбирая
h, == т]'/3 max {| x, \, typ x/} sign {х,} (5.6.4)
или выбирая во многих случаях просто h, =(macheps}\/зx^. Здесь
У] ^ macheps есть по-прежнему относительная ошибка при вы-
числении f(x). Эта длина шага довольно хорошо работает на
практике, как продемонстрировано в последнем из рассмотрен-
ных в примере 5.6.1 случаев, где использовалось /г/= 10-4;»:, и
было получено по меньшей мере четыре верных разряда в каж-
дой компоненте V'^f{Xc). Алгоритм А5.6.2 в приложении А—это
наш алгоритм для вычисления конечно-разностных гессианов с
использованием значений функции по формуле (5.6.3) с длиной
шага (5.6.4). Заметим, что разумно ожидать получения верных
значений первой трети разрядов \/2f{x), причем число верных
разрядов будет даже меньше, если f{x} представляет собой
функцию, вычисляемую с высоким уровнем помех.
Резюмируя, отметим следующее. Когда гессиан непосред-
ственно не задан аналитически, его аппроксимация либо по ко-
нечно-разностному алгоритму А5.6.1, использующему аналити-
чески заданные значения Vf(^), либо по алгоритму А5.6.2, ис-
пользующему только значения функции, не изменит, как пра-
вило, поведение метода Ньютона. Вместе с тем ясно, что алго-
ритм А5.6.1 предпочтительнее, если ^f(x) задан аналитически.
Если f(x} вычисляется с довольно высоким уровнем помех, то
алгоритм А5.6.2 может оказаться неудовлетворительным, и
тогда, вероятно, вместо него следует использовать аппроксима-
цию V2f(x) по секущим (см. гл. 9). Аппроксимация гессиана по
секущим должна, несомненно, использоваться, когда слишком
велика стоимость конечно-разностной аппроксимации, опреде-
ляемая п вычислениями ^f{x} пли (п2 + Зп)/2 вычислениями
f(x) за итерацию.
Перейдем теперь к конечно-разностной аппроксимации гра-
диента в алгоритмах минимизации. Читатель может догадаться,
что этот вопрос будет еще более трудным, чем аппроксимация
якобиана и гессиана, так как градиент является величиной, ко-
торую в алгоритмах минимизации мы стараемся сделать нуле-
вой. Поэтому конечно-разностная аппроксимация градиента
должна производиться с высокой степенью точности.
Напомним, что у нас имелись две формулы для аппроксима-
ции Vf(Xi) по конечным разностям: формула разностей вперед
flx„+h,e,}—f(x„}
(gc}t= V- / /==!,...,«, (5.6.5)
5.6. Методы с конечно-разностными производными 133
которая является как раз частным случаем аппроксимации яко-
биана и имеет ошибку О (h,) в /-и компоненте, и формула цен-
тральных разностей
/ (х, + h,ej} - f (x, - h,ej)
2h,
/=!,...,/z, (5.6.6)
которая имеет ошибку О (/г;2)- Вспомним также, что в случае
конечно-разностных якобианов и гессианов мы видели, что если
длина шага обладает свойством h, = 0(||ecll), где вс=Хс—-У»,
то при обычных предположениях сохраняется (7-квадратичная
сходимость метода Ньютона. Однако это, вероятно, не имеет
места для аппроксимации градиента по разностям вперед (5.6.5),
так как по мере приближения Хс к точке минимума функции
f(x} величина ||Vf(^c)|| ^0(||ee|l), и поэтому длина шага порядка
0(l|edl) в (5.6.5) привела бы к ошибке аппроксимации llgc—
—^f{xc}\\ того же порядка, что и аппроксимируемое значение.
Вместо этого можно легко обобщить проведенный в теореме
5.4.1 анализ и показать, что если подправить ньютоновскую
итерацию для минимизации, так что
Х+ = Хс — Лс~1 go'
где gc и Ас аппроксимируют соответственно \7(хс) и \f2f(xc), то
при аналогичных предположениях
^l^-^llх\ + (л:2 - З)2 - 9 = О
имеет решение х» == (1, I)7'. Выполните одну итерацию метода Ньютона из
точки х» = (2, 0)г.
цх' "'^
^ -iJ-
2. Выполните вторую итерацию метода Ньютона для системы
\ы: -4=0,
начнная из Хо == (—10, —Ю)7. (Первая итерация была сделана в разд. 5.1.)
Что произойдет, если эта задача будет продолжать решаться методом Нью-
тона с использованием машинной арифметики?
Подразумевается, что упр. 3 и 4 дадут представление об области схо-
димости, задаваемой теоремами сходимости для метода Ньютона.
5.7. Упражнения 135
3. Для каждой из функций f(x) == х, f{x) == х1 + х, f(x) == е" — 1 от-
ветьте на следующие вопросы:
(a) Чему равно f (х) в корне х* == О?
(b) Чему равна константа Липшица для f'(x) на отрезке [—а, а]? Чему
равна верхняя граница для | (f (х) —f'(0))/x\ на этом отрезке?
(c) Какая область сходимости метода Ньютона для f(x) предсказы-
вается теоремой 2.4.3?
(d) На каком отрезке [&, с], Ь < 0 < с, метод Ньютона для f(x) в дей-
ствительности сходится к х„ == О?
4. Используя свои ответы на вопросы из упр. 3, рассмотрите применение
метода Ньютона к
F(x)==
Xi
Х^ + Ху
(a) Чему равно 1{х) в корне Хч, = (О, О, О)7?
(b) Чему равна константа Липшица для J(х) в шаре радиуса а с цен-
тром в .f»?
(c) Какая область сходимости метода Ньютона для F(x) предсказы-
вается теоремой 5.2.1?
(d) Какой стала бы область сходимости, если (х»)з = О? Ну, а если
(.У») 2= (Х„)з=0')?
5. Покажите, что, если предположение / <= Lip„ (N (х„ г)) в теореме 5.2.1
заменить предположением о непрерывности по Гёльдеру (см. упр. 4.8), то
теорема 5.2.1 останется в силе с той лишь разницей, что вместо (5.2.1)
будет
II^+i-^IKPvll^fe-^ll'^ k=o, i,....
[Указание: замените (5.2.2) на 8== min {г, (а/((1 + ") PV))1^1}' чт0 означает
Рув"<а/(1+а).]
В упражнениях с 6 по 8 излагается доказательство теоремы Канто-
ровича.
6. Докажите, что условия и заключения теоремы Канторовича справед-
ливы для квадратичной функции
f(t)=^t2--+- /„=0.
z р р
[Указание: докажите (5.3.1), показав, что выполняется более сильное нера-
венство
\t^-t^\<^2-k(l-^T^2a)l!tk^-, fe=0,l,....
Для его получения покажите по индукции, что
ir(wi>^.
') Здесь в первом случае имеется в виду пересечение реальной области
сходимости с координатной плоскостью 1-й и 2-й осей, а во втором—пересе-
чение с 1-й координатной осью.—Прим. перев.
136 Гл. 5. Метод Ньютона
ii, используя это, покажите, что
/г-1
l^+.-M^-'pvl^
7. Пусть F: Р"->-Р" и хо s R" удовлетворяют условиям теоремы Кан-
торовича и f(t] и to определяются как в примере 6. Пусть {xic} и {tis} есть
последовательности, полученные в результате применения метода Ньютона
к F(x) и f(t) из Хц и /о соответственно. Докажите по индукции, что
II /(^)-'|<1Г(^)-1
где /г = О, 1, ... . [Указание: рассматривая индуктивное предположение,
используйте (3.1.20), что поможет доказать первое соотношение. Для дока-
зательства второго сначала воспользуйтесь равенством
F {Ч) == F {Ч) - F (^-1) - / (^-1) (^ - ^-l),
с тем чтобы показать что
Аналогично покажите, что
l/^l-^^-^-i)2-
Затем воспользуйтесь этими двумя соотношениями и первым неравенством,
доказанным по индукции, чтобы доказать второе.]
8. Воспользуйтесь упр. 6 и 7 и докажите теорему Канторовича.
9. Прочтите работу Брайяна (1968), и вы получите удовольствие от
красивого приложения теоремы Канторовича.
10. Докажите теорему о сжимающем отображении. Для этого, предпо-
лагая выполненными условия теоремы 5.3.2, покажите:
(а) используя соотношение (5.3.3), что для любых j ^ О
Zi
f=0
• х. И <
• Xo|
1 —а
(b) используя (а), что последовательность {х,} имеет предел х., так
как {xi} представляет собой последовательность Коши, а также что
G(x«) =х„;
(c) используя (Ь) и соотношение (5.3.3), что х« есть единственная не-
подвижная точка для О в D и что имеют место (/-линейная сходимость и
оценки погрешностей, приведенные в теореме 5.3.2.
Используя (а), докажите другой вариант теоремы о сжимающем отоб-
ражении без предположения о том, что F(D} c= D.
11. Пусть f(x) = х2—1, а е R, а> 1. Докажите, что для некоторого
6 > 0 (6 зависит от а) последовательность точек {х:}, построенная, начи-
ная с Хо е (1 — 6, 1 + 6), по формуле
.,,,-,.-'?.1,
сходится (/-линейно к х* = 1. Покажите, что при этом
lim
f->oo
"•f-н
>0,
если только a -yb 2.
5.7. Упражнения 137
12. Завершите доказательство теоремы 5.4.1.
13. Пусть F: R2--?2 таково, что
(^
F(x)=\
Допустим Xk = (107, Ю-7)7 и предположим, что используется ЭВМ с 14 де-
сятичными разрядами. Что получится, если вычислять аппроксимацию для
/(х*) по формуле (5.4.1) при /и = I? Ну а при /it = Ю-14? Существует ли
в этом случае какой-либо выбор hi,, который годился бы для аппроксимации
как /(Xt)ii, так и /(^4)22?
14. Пусть р е R, р Ф 0, р =/= 1, fi{x) = х", fz(x) == е"". Полагая
р = f(x) и y=f"{x), определите по формуле (5.4.13) оптимальную длину
шага для fi(x}, а затем для {г(х). Как это сопоставляется с длиной шага
(5.4.10)? Какие особые проблемы возникают при конечно-разностной аппро-
ксимации fy (х) в случае, когда х равен очень большому положительному
числу?
15. Пусть / (х), Ху\ ==— (х\ — Ху\2 + — (l — х,')2. Что является точкой
минимума для /(л:)? Выполните одну итерацию метода Ньютона для мини-
мизации f(x) из начальной точки Хо = (2, 2}7. Хороший ли сделан шаг?
Прежде чем ответить, вычислите f(x») и f(xi).
16. Рассмотрите вопрос применения метода Ньютона к отысканию точки
минимума f(x) = sin х при Хо е [—я, л]. Искомым решением является
Xsf = —л/2. Пусть е есть небольшое положительное число. Покажите, что
если Хо = —е, то'метод Ньютона дает Xi ss:—1/е. Аналогично выясните, что
произойдет, если взять А'о = +8, но при этом заменить f"(xa) малым поло-
жительным числом?
17. Пусть f, (х) = — х\ — xj, /а (х) == -с? — ^ч- Покажите, что алгоритм
5.5.3 не будет сходиться к точке максимума х* = (О, О)7 функции fi(x),
если Хо Ф Xit. Покажите также, что алгоритм 5.5.3 будет сходиться к седло-
вой точке х* == (0, 0)'" функции fz (х), если только (ха)г ф 0.
18. На какой-либо ЭВМ по вашему выбору вычислите конечно-разност-
ную аппроксимацию гессиана функции f(x), заданной в упр. 15, в точке
Хц = (2, 2)7', используя формулу (5.6.3) при h, == (macheps)172^', а затем
при h, = (macheps)1''3^. Сравните ваши результаты со значением УД-Уо),
полученным аналитически.
19. Пусть /: R"->R удовлетворяет условию у2/(х) s Lip D для некото-
рого D cr R". Предположим, что существует х* е D, для которого V/(x*)==0.
Покажите, что если Хс <= D, g-csR", и матрица Ac e R"^ не вырождена,
то х+, порождаемое формулой х,=х—A'^'^gy удовлетворяет (5.6.7).
20. Покажите, как построить эффективным образом единую комбиниро-
ванную процедуру на базе алгоритма для вычисления V/(x) по центральным
разностям (алгоритм А5.6.4) и алгоритма для вычисления V2/^) по разно-
стям вперед (алгоритм А5.6.2). Как сопоставляется требуемое в этом случае
количество вычислений функции: (а) с использованием каждой из процедур
в отдельности, и (Ь) с использованием алгоритмов Ао.6.3 для аппроксима-
ции градиента и А5.6.2 для аппроксимации гессиана по разностям вперед?
Какие недостатки проявлялись бы при использовании вашей новой процеду-
ры на практике?
6
Глобально сходящиеся 1)
модификации метода Ньютона
В предыдущей главе было показано, что метод Ньютона явля-
ется локально ^-квадратично сходящимся. Это означает, что
если имеется достаточно хорошее текущее приближенное ре-
шение, то оно будет быстро и с относительной легкостью улуч-
шено. К сожалению, нет ничего необычного в том, что прихо-
дится затрачивать значительные вычислительные усилия на до-
стижение достаточной близости 2) к решению. Кроме того, стра-
тегии по достижению такой близости составляют большую
часть вычислительной программы и усилий по программирова-
нию. Эти стратегии могут быть чувствительны к небольшим
отличиям в их реализации на ЭВМ.
Эта глава посвящена двум основным идеям относительно
того, как следует поступать в том случае, когда ньютоновский
шаг является неудовлетворительным. В разд. 6.1 устанавлива-
ется общая структура класса алгоритмов, которые мы хотим
впоследствии рассмотреть. В разд. 6.2 вводится понятие «на-
правление спуска», которое уже вскользь упоминалось в дока-
зательстве леммы 4.3.1. В разд. 6.3 обсуждается первый из
основных подходов по глобализации. Он, по сути, является
современным вариантом известной идеи дробления шага вдоль
ньютоновского направления в тех случаях, когда полный нью-
тоновский шаг оказывается неудовлетворительным. В разд. 6.4
рассматривается второй основной подход, базирующийся на
оценке области, в которой можно верить тому, что локальная
модель, лежащая в основе метода Ньютона, адекватно пред-
ставляет функцию. Он также опирается на выбор шага, кото-
рый приближенно минимизирует модель в этой области. Оба
1) Относительно определения понятия «глобально сходящийся» см. по-
следний абзац разд. 1.1.
2) Имеется п виду близость текущего приближения, достаточная для
того, чтобы метод Ньютона смог реализовать свою высокую скорость схо-
1ПМОСТН. — Прим. персп.
6.1. Общая квазиньютоновская схема 139
подхода выводятся сначала для задач безусловной минимиза-
ции. Их применение к решению систем нелинейных уравнений
является темой разд. 6.5.
6.1. ОБЩАЯ КВАЗИНЬЮТОНОВСКАЯ СХЕМА
Основная идея построения успешно работающих нелинейных
алгоритмов заключается в таком комбинировании стратегии
глобальной сходимости со стратегией высокой локальной схо-
димости, при котором извлекается польза из них обеих. Общая
схема, реализующая эту идею, представляет собой незначитель-
ное обобщение гибридного алгоритма, рассмотренного в гл. 2
(см. алгоритм 2.5.1). Она описана ниже в алгоритме 6.1.1.
Наиболее важный момент состоит в попытке на каждой итера-
ции сначала попробовать метод Ньютона или некоторую его
модификацию. Если кажется, что берется приемлемый шаг
(например, если в случае минимизации f уменьшается), то
нужно применить именно его. Если же—нет, то обратиться
к шагу, который предписывается глобальным методом. Такая
стратегия будет всегда заканчиваться использованием вблизи
от решения метода Ньютона, и поэтому будет сохранять высо-
кую скорость его локальной сходимости. Если глобальный ме-
тод надлежащим образом выбирается и включается в общую
схему, то алгоритм также будет глобально сходящимся. Алго-
ритмы, использующие этот подход, будут называться квазинью-
тоновскими.
Алгоритм 6.1.1. Квазиньютоновский алгоритм для решения.
нелинейных уравнений и безусловной оптимизации [в случае
оптимизации заменить F(xk) на ^f(Xk) и Jk на Hk\
Заданы: непрерывно дифференцируемая F: R"-»- R" и Хо^ R".
На k-vi итерации:
1. Вычислить F(xk), если этого не было сделано раньше, и
решить—остановиться или продолжить дальше.
2. Вычислить матрицу Jk, равную J(xk) или ее аппрокси-
мации.
3. Применить к Jk некоторый способ разложения на множи-
тели и оценить ее число обусловленности. Если Jk плохо обус-
ловлена, то внести в нее соответствующее возмущение.
4. Решить J^=—F[x^).
5. Принять решение—либо взять ньютоновский шаг д^,,=
==^+s^, либо выбрать А-А-Ц согласно глобальной стратегии.
Этот шаг алгоритма часто дает F(xn) для 1-го шага.
140 Гл. 6. Глобально сходящиеся модификации
К настоящему моменту нами уже были рассмотрены шаги 2,
3 и 4. Шаг 5 служит основной темой данной главы. К концу
этой главы читатель мог бы построить квазиньютоновский ал-
горитм в завершенном виде, за исключением критерия оста-
нова, который рассматривается в гл. 7. Формулы пересчета по
секущим из гл. 8 и 9 служат альтернативными вариантами
шага 2.
Напомним читателю, что в приложении А представлена мо-
дульная система алгоритмов для решения нелинейных уравне-
ний и безусловной минимизации. Она содержит целый ряд пол-
ностью детализированных квазиньютоновских алгоритмов для
решения этих двух задач. Алгоритм 6.1.1 лежит в основе драй-
вера (управляющей программы) для этих алгоритмов, который
в приложении представлен алгоритмом D6.1.1 для минимиза-
ции и алгоритмом D6.1.3 для нелинейных уравнений. Основная
разница между приведенным выше алгоритмом 6.1.1 и двумя
драйверами из приложения заключается в том, что данные
драйверы содержат самостоятельную инициализирующую часть,
предшествующую итерационной части.
Назначение, структура и вопросы использования модульной
системы алгоритмов обсуждаются в начале приложения А. Мы
рекомендуем прочитать это обсуждение сейчас, если вы не сде-
лали этого раньше, и затем обращаться к приложению для вы-
яснения деталей по мере появления алгоритмов в тексте.
6.2. НАПРАВЛЕНИЯ СПУСКА
Начнем обсуждение глобальных методов с рассмотрения за-
дачи безусловной минимизации
min f:
.-ceR"
R" ^ D
—>• К,
(6.2.1)
поскольку для задач минимизации существует естественная
глобальная стратегия, которая состоит в обеспечении того, что-
бы каждый шаг уменьшал значение f. Существуют соответ-
ствующие стратегии и для систем нелинейных уравнений,обес-
печивающие уменьшение каждым шагом значения некоторой
нормы функции F: R"—>-R". Однако использование нормы в
действительности сводит задачу решения системы нелинейных
уравнений F(x)=0 к задаче минимизации функции вида
^Ду!!Л1: R" •R. (6.2.2)
Поэтому на протяжении последующих двух разделов будут
рассматриваться глобальные стратегии для безусловной мини-
6.5. Направления спуска 141
мизации. В разд. 6.5 мы применим эти стратегии к системам
нелинейных уравнений, используя преобразование (6.2.2).
Основная идея глобальных методов для безусловной мини-
мизации геометрически очевидна: делать шаги, которые ведут
«вниз по склону» для функции /. Точнее говоря, выбирается
направление р из текущей точки Хс, вдоль которого f начинает
уменьшаться, и новая точка х+ в этом направлении из точки Хс
такова, что f(x+} < f{Xc). Такое направление называется на-
правлением спуска. С математической точки зрения р является
направлением спуска из Хс, если производная функции f по на-
правлению р в точке Хс отрицательна, т. е. согласно разд. 4.1,
если
—.р/ \т
vf(x,y р<о.
Если выполнено (6.2.3), то гарантируется, что f(xc-\-6p) --R и л-о^К".
На k-v. итерации:
найти для f в направлении —^f(Xk) из Xk точку, располо-
женную ниже всего, т. е. найти \k, являющееся решением для
min / (Xk — ^f (Xk});
^>о
Xk+i = Xk — A.&V/ (Xk).
Это не является вычислительным методом, так как каждый
шаг включает в себя задачу точной одномерной минимизации,
но его можно реализовать на ЭВМ, выполняя минимизацию
неточно. В обоих случаях при довольно слабых предположениях
можно показать, что они сходятся к точке локального мини-
мума или седловой точке функции f{x). [См., например, Голд-
стейн (1967).] Однако сходимость здесь только линейная, а
иногда очень медленная линейная. А именно, если алго-
ритм 6.2.1 сходится к точке локального минимума х», в кото-
рой гессиан V2f(x^) положительно определен, и если обозна-
чить через evmax и evmin наибольшее и наименьшее собственные
значения для У2f(x^^}, тогда можно показать, что последователь-
') То есть направление, противоположное градиенту.—Прим. перев.
6.2. Направления спуска 143
ность {Xk} удовлетворяет
—— \\x•k+\ ~ х II
im -"-————-<с,
fc-^oo [1^-^11 ^ '
д ( бУтах - avrnin Л
=== \ ev -4- ev . /
\ max ' min /
(6.2.4)
в некоторой специальной взвешенной /а-норме, и показать, что
оценка с достижима для некоторых начальных хо. Если V2^^)
прекрасно масштабирован, т. е. evmax ^ evmin, то с будет мало
и сходимость будет быстрой. Однако если У^(л'») плохо мас-
штабирован даже в незначительной степени, например evmax=
= Wevmin, то с будет равно почти 1, а сходимость может ока-
заться очень медленной (см. рис. 6.2.1). Случай, когда с == 0.8
и на каждой итерации ||x&+i — л-Л = c\\Xk—x^\\, приведен в при-
мере 6.2.2. Для вас будет совсем легким упражнением обоб-
щить это, сделав с сколь угодно близким к 1.
Пример 6.2.2. Пусть f (х,, ^) ==-|г х]+ ^-^j. Это положи-
тельно определенная квадратичная функция с точкой мини-
мума в ^==(0, О)7' и
я, , , Г i 0 1
V7 W == \ для всех х.
Таким образом, с, определенное в (6.2.4), равно (9—1)/(9+
+1)=0.8. Читатель также может убедиться, что если f(x)
есть положительно определенная квадратичная функция, то
шаг наискорейшего спуска по алгоритму 6.2.1 имеет вид
Xk+l = Xk
(6.2.5)
где g='vf(xk). Используя (6.2.5), можно легко убедиться, что
при заданных f(x} и Хо={9, I)7 последовательность точек, вы-
рабатываемых алгоритмом 6.2.1, есть
^-( _9 ,)(0.8)6, k^l, 2, .... (6.2.6)
Рис. 6.2.1. Метод наискорейшего спуска в несколько неудачно
масштабированной квадратичной задаче.
144 Гл. 6. Глобально сходящиеся модификации
Поэтому \\Xk+i—x,\[/\\Xk—x,\\=\\Xk+i\\/\\Xk\i=^c в любой /р-нор-
ме.
Последовательность {х/г}, заданная в (6.2.6), представлена
на рис. 6.2.1.
Таким образом, в большинстве случаев методом наискорей-
шего спуска как вычислительным алгоритмом пользоваться не
следует, так как квазиньютоновский алгоритм будет гораздо
более эффективным. Однако, когда наша глобальная стратегия
должна делать шаги, существенно меньшие, чем ньютоновский
шаг, она, как это будет видно в разд. 6.4, может делать шаги
вдоль направления наискорейшего спуска или вдоль близкого
к нему направления.
В заключение заметим, что направление наискорейшего
спуска очень чувствительно к изменениям масштаба перемен-
ной х, в то время как ньютоновское направление не зависит
от таких изменений. По этой причине, когда кажется, что в на-
ших алгоритмах из разд. 6.4 используется направление наи-
скорейшего спуска, в соответствующих им программных реали-
зациях из приложения это направление будет на самом деле
предварительно умножено на некоторую масштабирующую
диагональную матрицу. Мы откладываем до разд. 7.1 обсужде-
ние этой важной с практической точки зрения темы, так назы-
ваемого масштабирования.
6.3. ЛИНЕЙНЫЙ ПОИСК
Первой стратегией, которая предназначается для продвижения
из приближенного решения, находящегося вне области сходи-
мости метода Ньютона, является метод линейного поиска. Его
идея выглядит, в самом деле, очень естественной после обсуж-
дения в разд. 6.2 направлений спуска.
Идея алгоритма с линейным поиском проста: дано направ-
ление спуска pk, мы делаем такой шаг в этом направлении,
который дает «приемлемое» Xk+\. Это означает, что
на k-w. итерации:
вычислить направление спуска pk,
положить Xk+\ == Xk + ^kpk для некоторого Kk > 0,
которое делает Xk+\ приемлемой следующей итера-
цией.
Графически это означает выбор Xk+i с учетом той половины
одномерного поперечного сечения функции f{x), в котором f(x}
первоначально уменьшается, начиная с Xk, как изображено на
рис. 6.3.1. Однако, вместо того чтобы брать, как в алгорит-
ме 6.2.1, в качестве pk направление наискорейшего спуска
6.3. Линейный поиск 145
—УДА'*), мы будем использовать рассмотренное в разд. 5.5
квазиньютоновское направление — H^^fixk), где матрица Hk ===
==^2f(xk}Jt-v^kI положительно определена, причем |^/; == 0, если
V^Xfe) надежно положительно определена. Это позволит нам
сохранить высокую локальную сходимость.
Термин «линейный поиск» относится к процедуре выбора К/г
в (6.3.1). До середины 60-х годов господствовало убеждение,
что Kk следует выбирать исходя из точного решения задачи
одномерной минимизации. Более тщательное численное тести-
рование привело к полному пересмотру взглядов'). В этом раз-
деле будет описан не столь жесткий критерий приемлемости
{Kk}, который приводит к методам, столь же хорошим теорети-
чески и еще лучше проявляющим себя на практике.
Общая процедура теперь такова: сначала попробовать сде-
лать полный квазиньютоновский шаг, и если Kk == 1 не удовлет-
воряет используемому критерию, то дробить методично длину
шага вдоль квазиньютоновского направления. Вычислительный
опыт показал важность выполнения полного квазиньютонов-
ского шага всякий раз, когда это возможно. Нарушение этого
правила приводит к потере того преимущества, которое имеет
метод Ньютона вблизи от решения. Поэтому важно, чтобы в
нашей процедуре выбора Х& был предусмотрен выбор \k = 1
вблизи от решения.
В оставшейся части этого раздела мы обсудим теоретиче-
ские и практические вопросы выбора ^/г. Поскольку не суще-
ствует убедительных причин ограничиваться рассмотрением
линейного поиска лишь вдоль квазиньютоновского направле-
ния, рассматривается поиск х+ == Хс + Кср вдоль произвольного
направления спуска р из текущего приближенного решения Хс.
Правила приемлемости шага, оптимального во всех случаях,
перев.
ft^+A^)
Тангенс
угла наклона =
=V(W/>A)}, тогда {х,} = {2, -|-, ^,
—о, • •.} =={(—1^(1 + 2~6)}, каждое р^ является' направле-
нием спуска из Xk и f (х^ монотонно уменьшается, причем
lim f (Xk) = 1
k->oa
[см. рис. 6.3.2 (а)]. Это, конечно, никакой не минимум для f,
и, более того, {xis} имеет предельные точки ±1, следовательно,
она вообще не сходится.
Теперь рассмотрим ту же самую функцию при том же началь-
ном приближении и возьмем {pk} ={— 1}, {Kk} ={2-й+l}. Тогда
[Xk}=\2,-J, ^-, -g-, ...J={1 + 2-^}, каждое pk есть опять
направление спуска, f(xk) уменьшается монотонно, и
limk-^xXk == 1, что опять не является точкой минимума для /
[см. рис. 6.3.2 (Ь)].
В первом случае проблема состоит в том, что было достиг-
нуто малое убывание значения f по сравнению с длиной шагов.
f(X] f(A)
Рис. 6.3.2. Монотонно убывающие последовательности итераций, которые
н? сходятся к точке минимума.
6.3. Линейный поиск 147
Разрешить эту проблему можно, потребовав, чтобы средняя
скорость убывания от f(xc) до f{x+) составляла заданную долю
от первоначальной скорости убывания в этом направлении'),
т. е. мы задаем as (0,1) и выбираем Кс среди тех К>0, кото-
рые удовлетворяют неравенству
(б.З.За)
f (^ + ^):< П^) + ^f ^ ^
(см. рис. 6.3.3). Это равноценно выбору Кс из условия
f (^+) < / (^) + "Vf (xf (x., - х,). (б.З.ЗЬ)
Можно убедиться, что это предотвращает первый из неудач-
ных выборов точек, но не второй.
Во втором примере проблема состоит в том, что шаги слиш-
ком малы по сравнению с первоначальной скоростью убывания
функции f. Существуют разнообразные условия, гарантирую-
щие достаточно большие шаги. Мы познакомимся с условием,
которое будет также полезно нам в гл. 9. Потребуем, чтобы
скорость уменьшения функции f вдоль направления р в х+ была
больше, чем некоторая заданная доля скорости уменьшения
вдоль направления р в Хс, т. е.
Vf (x+f p^f (х, + ^pf р > (3V/ (xf p, (б.ЗЛа)
или, что эквивалентно,
V^ (л:-,)7' (х+ - х,} > pVf {xf (^ - х,) (б.ЗЛЬ)
при некоторой заданной константе ре(«,1) (см. рис. 6.3.4).
Условие р > ее гарантирует, что (6.3.3) и (6.3.4) могут быть
'- }--f(^)+aXVf(Ar)7/)
ЗначенияА, допускаемые условием(6.?3)(с1'0,1)
Рис. 6.3.3. Значения \, допускаемые условием (6.3.3.) (ct=0.1).
)) Здесь под средней скоростью убывания понимается величина
(f(xc+Kp)—f(xc)}!^, а под первоначальной скоростью убывания—величи-
на \^(Xc}rp^—Пp^tм. пррев.
148 Гл. 6. Глобально сходящиеся модификации
удовлетворены одновременно. На практике выполнение (6.3.4)
обычно не требуется, так как стратегия дробления шага позво-
ляет избегать чрезвычайно малых шагов. Условие, альтерна-
тивное к (6.3.4), приведено в упр. 7.
В основе условий (6.3.3) и (6.3.4) лежат работы Армийо
(1966) и Голдстейна (1967). В примере 6.3.1 демонстрируется
применение этих условий к простой функции. В разд. 6.3.1 при-
ведены сильные результаты по доказательству сходимости про-
извольного алгоритма, удовлетворяющего этим условиям.
В разд. 6.3.2 обсуждаются практические алгоритмы линейного
поиска.
Пример 6.3.1. Пусть f(x^, х^) ==xf+ х\А- 4 ^=(l,lf>
^==(_3,-1)7'. Пусть в (6.3.3) а==0.1, а в (6.3.4) Р==0.5.
Поскольку
W (xf Рс = (6, 2) (- 3, - 1)' = - 20,
то рс является направлением спуска из Хс для f(x). Рассмотрим
теперь х (К) == Хс + ^Рс. Если х+ == х (1) = (—2, 0)т, то
Vf(x^fp,=(- 36, 0) (- 3, - lf= 108 > - 10= pvW^.
следовательно, х+ удовлетворяет (6.3.4), но
f (х^) = 20 > 1 == / (х,) + aV/ (xf p„
и, значит, х+ не удовлетворяет (6.3.3). Читатель может анало-
гичным образом убедиться, что х+== x(OЛ)=(0.7,0.9)т удовлет-
воряет (6.3.3), но не (6.3.4) и что х+ =х{0.5) = (—0.5, 0.5)г
удовлетворяет как (6.3.3), так и (6.3.4). Эти три точки лежат
на рис. 6.3.4 соответственно среди точек справа, точек слева и
в самой «допустимой» области.
Условие(63.4)
(Р-0.5)
f{>c + ^)
Условие
(Б.3.3)
lct-0.1)
Точки, допускаемые
условиями ^6.3.3) и (6.3.4^1
Рис. 6.3.4. Два условия линейного поиска.
6.3. Линейный поиск 149
6.3.1. Результаты исследования сходимости
при надлежащем выборе шагов
Использование условий (6.3.3) и (6.3.4) позволяет получить
следующие удивительно сильные результаты: для любого за-
данного направления pk, такого, что 'Vf{Xk)тpk < 0, существует
^k > 0, удовлетворяющее (6.3.3) и (6.3.4); любой метод, кото-
рый вырабатывает последовательность {х/г}, удовлетворяющую
на каждой итерации неравенствам ^vf{xk)т{xk+l—Xk) < О,
(6.3.3) и (6.3.4), является по существу глобально сходящимся;
вблизи от точки минимума функции f, где гессиан V2/ положи-
тельно определен, ньютоновские шаги удовлетворяют (6.3.3)
и (6.3.4). Это означает, что мы можем легко создать алгорит-
мы, которые сходятся глобально и благодаря тому, что мы
в первую очередь пробуем сделать ньютоновский шаг, обладают
также быстрой локальной сходимостью для большинства
функций.
Теорема 6.3.2, принадлежащая Вольфу (1969, 1971), пока-
зывает, что для любого направления спуска р/г существуют
точки Xk + ^kpk, удовлетворяющие (6.3.3) и (6.3.4).
Теорема 6.3.2. Пусть функция f: R"->R непрерывно диф-
ференцируема в R". Пусть Xk s R", pk s R" удовлетворяют
условию Vf {Xkf pk < 0, и предположим, что {f {Xk + ^pk) I ^ > 0}
ограничено снизу. Тогда если 0<а<р<1, то существуют
А.» > Ki > 0, такие, что Xk+i= Xk-\- ^kpk удовлетворяет (6.3.3) и
(6.3.4) при всех Kk <= (^,Я,у)".
Доказательство. Поскольку а<1, имеем f (х^-\- ^pk) <
< f {xk} ~}~ 0'^'Vf {х^ pk для всех достаточно малых К > о. Так
как f(Xk+^pk) ограничено также снизу, то существует некото-
рое наименьшее положительное К, такое, что
f (х) = f {Xk + W == f {Xk) + a^f {x/ pk. (6.3.5)
Таким образом, любое x^{xk,x) удовлетворяет (6.3.3). По
теореме о среднем значении существует ?^е(0,Х), такое, что
f (•<-) - f {Xk) == Vf {х„ + W {х - Xk) == V/ {Xk + W Kpk, (6.3.6)
и поэтому из (6.3.5) и (6.3.6) имеем
V/ (Xk + W pk == aV^ (Xfef pk > PV/ {Xkf pk, (6.3.7)
Ч Числа ^ и К зависят от к^ и р^. — Прим. перед.
150 Гл. 6. Глобально сходящиеся модификаций
так как сх < (3 и УП.^)7/^ < 0. Согласно непрерывности \'f,
(6.3.7) выполняется еще и для К, составляющих некоторый ин-
тервал (Ki,Ku), содержащий А. Следовательно, если (А,;, Кц}
ограничить интервалом (ОД), то Xk+\ == Xk + ^kpk будет удов-
летворять (6.3.3) и (6.3.4) при любых 'К/с s(^,7,„). a
Теорема 6.3.3 также принадлежит Вольфу (1969, 1971).
Она показывает, что если вырабатываемая последователь-
ность {Xk} удовлетворяет неравенствам \'f(Xk)т(Xk+l —х/г) < О,
(6.3.3) и (6.3.4) и если угол между V/(A'&) и (Xk+i—xis) не
стремится к 90° при k—f-oo, то либо градиент стремится к О,
либо f не ограничена снизу. Возможны, конечно, и оба случая
одновременно. Ниже мы поясним, что случай, когда угол меж-
ду Vf(Xk) и {xk+i—х^ стремится к 90°, может быть предотвра-
щен самим алгоритмом.
Теорема 6.3.3. Пусть f: R"->R непрерывно дифференцируе-
ма в R", и предположим, что существует у ^ 0, такое, что
(6.3.8)
для любых х, zs R". Тогда при произвольно заданном хо '= R"
либо f не ограничена снизу, либо существует последователь-
ность {xk}, k=0,l, .... удовлетворяющая (6.3.3), (6.3.4), при-
чем такая, что для каждого k ^ 0 либо
\?f(Xkfsk<0, (6.3.9)
либо
V/(^)==0 и Sfe=0,
где
SkA^Xk+i — Xk. 1)
Более того, для любой такой последовательности или
(a) V/ (х^ = 0 для некоторого k ^ 0, или
(b) lim f(Xk)=—°o, или
k->°°
(С)„„^Ц^=0.
ft->00
"fel|2
Доказательство. Каково бы ни было k, если \'f(xk)=0, то
имеет место (а), и в дальнейшем последовательность не ме-
няется. Если V/ {Xk) ^= 0, то существует pk, например pk ==
== — V/' (х^, такое, что V/' (х^) pk < 0. По теореме 6.3.2 либо /
1) Это утверждение не исключает существование такой последователь-
ности и в случае неограниченной снизу f. — Прим. перев.
6.3. Линейный поиск 151
не ограничена снизу, либо существует Kk > 0, такое, что Xk+\=
== Xk + ^-kpk удовлетворяет (6.3.3) и (6.3.4). Без ограничения
общности предположим в целях упрощения обозначений, что
\\pk\\^=\, тогда ^k==\\Sk\\r
Мы пока видим, что либо / не ограничена снизу, либо суще-
ствует {Xk}, и при этом либо {xk} удовлетворяет (а), либо в
противном случае Sk Ф 0 для каждого k. Теперь нам необхо-
димо показать, что если ни один из элементов в {s^} не равен
нулю, то должно выполняться (Ь) или (с). Было бы полезно
иметь обозначение
Согласно неравенствам (6.3.3) и ^бд < 0, справедливым для
каждого k, имеем
/-1 /-1
f {X,) - f (Xu) = Z f (-^+l) - / (Xk) < ? "Vf (Xkf Sk ==
k=0 . h=Q
/-1
-aE^A<0.
ft=o
для любого / > 0. Следовательно, либо
оо, либо — Z-f '^h^k < 00'
k=0
т. е. ряд сходится.
В первом случае справедливо (Ь), что и требовалось дока-
зать, поэтому рассмотрим второй случай. Мы, в частности, по-
лучаем limft-»oo^&6fe == 0. Теперь нам хотелось бы сделать вывод,
что Или-».,» б&= 0, и поэтому необходимо воспользоваться усло-
вием (6.3.4), поскольку оно было принято для предотвращения
чрезмерной малости шагов.
Для каждого k имеем
VfiXk+^Sk^^^Xkfsk,
и поэтому, учитывая (6.3.9) и р < 1,
[V^ (^ft+i) - V/ {х^ Sk >(P - 1) V/ (Xkf Sk > 0.
Применение к левой части последнего соотношения неравенств
Коши-Шварца и (6.3.8), а также использование определения
для бй дают
0<(P--1Ц,Дoo
Это показывает, что
lim 6<;=0
fe-»00
[т. е. справедливо (с)], и тем самым завершает доказатель-
ство. D
Отметим, что в то время как теорема 6.3.3 без труда при-
меняется к любому алгоритму с линейным поиском, она абсо-
лютно не зависит от метода выбора направлений спуска и дли-
ны шагов. Следовательно, эта теорема дает достаточные усло-
вия глобальной сходимости (в слабом смысле) любого алго-
ритма оптимизации, включая алгоритмы типа «модель—дове-
рительная область» из разд. 6.4. Кроме того, в то время как
условие Липшица (6.3.8) предполагается выполненным во всем
R", оно используется только в окрестности решения х^. На-
конец, хотя в теореме 6.3.3 {(7<.}—-0 и не означает, что обяза-
тельно {Vf(x/;)}-^-0, последнее имеет место всякий раз, когда
угол между \!f{Xk} и Sk отграничен от 90°. Можно легко до-
биться выполнения этого условия на практике. Например, в
квазиньютоновском алгоритме с линейным поиском, где р^==
==— Hk\f(xk) и tik положительно определено, требуется лишь,
чтобы число обусловленности матриц {И/с} было равномерно
ограничено сверху. Таким образом, теорему 6.3.3 можно рас-
сматривать как утверждение, означающее сходимость к f == —оо
или к Vf == 0, однако ее условия слишком слабы, чтобы обеспе-
чивать сходимость {х/:}-
Теорема 6.3.4, принадлежащая Деннису и Морэ (1974), по-
казывает, что наша глобальная стратегия позволит делать
вблизи от точки минимума функции f полные квазиньютонов-
ские шаги Xk+\==Xk—Hk^f^Xk), если, конечно, при этом
— Hk'VfiXk} достаточно близко к ньютоновскому шагу.
Теорема 6.3.4. Пусть f: R"-^R дважды непрерывно диффе-
ренцируема в открытом выпуклом множестве D, и предполо-
жим, что V^sLip^D). Рассмотрим последовательность {xk}
вида л-t-j-i == Xk + ^kpk, где Vf(xk)тp^! •< 0 для всех k и ?.<• выби-
рается так, что оно удовлетворяет (6.3.3) при а < -у- и (6.3.4).
153
6.3. Линейный поиск
Если {xk} сходится к точке л'« Е D, в которой гессиан \~2f{x^)
положительно определен, и если
lim
k->00
^f{xk}+J^k)_^
IPfell,
(6.3.10)
то существует индекс ko ^ 0, такой, что Kk == 1 является при-
емлемым для всех k ^ ko. Более того, V^(x») == 0, и если Kk = 1
для всех k"^ ko, то {xk} сходится ^-сверхлинейно к х».
Доказательство. Доказательство является на самом деле
всего лишь обобщением простого упражнения, в котором тре-
буется показать, что если f{x) есть положительно определен-
ная квадратичная функция и pk ==—'\г2f{xk)~l^f(Xk), то
Vf(xk)тpk < 0 и Xk+i = Xk + Pk удовлетворяет (6.3.3) при лю-
бых asSS— и (6.3.4) при любых (3 s5: 0. Некоторые читатели
могут при желании лишь бегло посмотреть его или вовсе про-
пустить, так как его детали проясняют не слишком многое.
Положим
р&=-
(6.3.11)
а. Покажем
||У^)+У^)РЛ
IP&II
означает
Здесь и далее в доказательстве || • ||
сначала, что
lim ||^1|=0.
ft-» оо
Если х достаточно близко к х^, то по уже известным рассуж-
дениям V2^ (x)~1 существует и положительно определено, и если
ц-^йу^.ГТто y^-i^llvW1!]^^-1. Отсюда, поско-
льку
yf (x,Y р, ^ р1 ^ (х,) р\ (Vf (х,) + ^f (^) p.f p,
IIPJI HPfell IIPJI
и pyf(x^p,,>-^ti\\p^f, то (6.3.11) и (6.3.10) показывают, что
для достаточно больших k имеет место
-^>f^-P^II>T
Поскольку из теоремы 6.3.3 мы имеем
,.„, ^)7^
lim
ft->00
Ipfel
154 Гл. 6. Глобально сходящиеся модификации
то (6.3.12) означает, что
lim \\pk\\=0. •
k->00
Покажем теперь, что \ц == 1 удовлетворяет (6.3.3) при всех
k, больших или равных некоторому ko. По теореме о среднем
значении для некоторого f^e [xk, х/г + Pk\ получаем
ИЛИ
f {Ч + Pk) - f (^) = V/ W Pk + 4- PW (^) Pk •
/ (Xk + Pk) - f W - 4 v/ W Pk = т ^ ^ + ^f ^ P^ Pk ==
= у (v^ (^) + ^ (^) ^r ^ + ^Pl т (^) - v2/ Ы] ^ <
^-^P^^11)"^"2- (6-3-13)
что имеет место благодаря (6.3.11) и непрерывности V2/ по
Липшицу. Теперь выберем ko таким, чтобы при k ^э ko выпол-
нялось (6.3.12) и
pk+V\\Pk\\<^-mm^,l-2a). (6.3.14)
Если k ^s ko, то А,<; == 1 удовлетворяет (6.3.3), так как, согласно
(6.3.13), (6.3.12) и (6.3.14),
f(Xk+Pk)-f(XkX^f(Xk)тp„+^•(l-2a)\\p,f^
< i-(l - (1 -2а))^(х/р„=а.^(х/р1,.
Для того чтобы показать, что (6.3.4) выполняется для
^k == 1 при k sS? ko, воспользуемся еще раз теоремой о среднем
в целях получения для некоторого Zk^(Xk, Xk-\-pk) соотно-
шения
V/ (Xk + Pkf Pk = (V/ (Xk) + V2/ (z„) Pkf Pk =
= (V/ (^) + V2/ (^) P,Y p, + p\ (y2! (^) - V2/ (x,)) p,.
Следовательно,
I Vf (x, + pf Pk\ f (Xk) + a^f (Xkf pk do
Kk == p^k Д-451 некоторого р е [I, и};
(*р выбирается в линейном поиске каждый раз заново *)
Xk+l == Xk + ^kpk',
156 Гл. 6. Глобально сходящиеся модификации
На практике <х берется довольно малым, едва ли большим,
чем требуемое уменьшение значения функции. В нашем алго-
ритме используется (х==10-4. Теперь остается обсудить стра-
тегию уменьшения Kk, т. е. выбора р. Определим
fWAf(Xk+^
— одномерное сужение функции f относительно прямой, прохо-
дящей через Xk в направлении pk. Если понадобится дробить
шаг, то мы будем моделировать f, используя самую последнюю
информацию о ней, и затем брать в алгоритме 6.3.5 в каче-
стве Kk то значение К, которое минимизирует эту модель.
Первоначально у нас имеются две порции информации об
f(^), а именно:
f(0)=f{Xk) и f'(0)=Vf(xfpk. (6.3.15)
После вычисления f (х^ + рд) нам известно, что
f(D=n^+^), (6.3.16)
поэтому если f(Xk-}-pk) не удовлетворяет (6.3.3) [т. е. f(l)>
> f(0) + "Г(0)], то мы моделируем f(^) одномерной квадратич-
ной функцией
т, W = [ f(l) - f (0) - f' (0)] ^ + Г (0) ^ + f (0),
удовлетворяющей (6.3.15) и (6.3.16), и вычисляем точку
^=———-ff(^ ——, (6.3.17)
2[f(l)-/(0)-f'(0)]
для которой m'q (^) = 0. Здесь
m",W==2[f(l}-f(0}-f'(0}]>0,
так как f (1) > f (0) + «Г (0)>^(0)+^ (0). Таким образом, К мини^
мизирует т у (К'). К тому же^> О, поскольку f(0) < 0. Поэтому Л
Рис. 6.3.5. Дробление шага на первой итерации, используется квадратичная
модель,
6.3. Линейный поиск 157
берется в качестве нового значения Kk в алгоритме 6.3.5
(рис. 6.3.5). Заметим, что в силу неравенства f (1) > f (0) + af (0),
имеем
" l
^< 2(1-а) •
Действительно, если f(l)^f(0), то ^ ^—. Таким образом,
(6.3.17) задает неявно вполне приемлемую верхнюю границу
и ?» у для первого значения р в алгоритме 6.3.5. С другой сто-
роны, если f(l) гораздо больше, чем f(0), то 7, может ока-
заться очень малым. Мы, вероятно, не нуждаемся в слишком
сильном уменьшении Kk на основе данной информации, так как
это, по-видимому, свидетельствовало бы о том, что f{K) плохо
моделируется в данной области квадратичной функцией, по-
этому в алгоритме 6.3.5 устанавливается нижняя граница
Это означает, что если на какой-либо итерации при
ю '
0.1, то следующее пробное
первом дроблении шага было К ^
значение К^ ==Тп-
Пример 6.3.6. Пусть f: R"—>-R, Хс и р заданы, как в при-
мере 6.3.1. Поскольку f(xc)=3 и f(Xc + р) = 20, то Хс + Р
не является приемлемым, и требуется дробление шага. Тогда
т, (°)= f (^с) = 3' т/, (0) == Vf (V Р = - 20, т, (1) = f(x, + р)=
==20 и, согласно {.(6.3.17), X ==-^-^ 0.270. Точка х,+Кр^
ss (0.189, О^ЗО)7^ теперь уже удовлетворяет условию (6.3.3) при
а = 10~4, так как f (х, + 1р) ^ 0.570 < 2.99946 == f (x,) +
+ a^f(Xcfp. Поэтому х+==Хс+^р. В данном случае мини-
мум f (Хс + ^р) находится в 7,, ^ 0.40.
Предположим теперь, что f(^k} == f(Xk + ^kpk) не удовлетво-
ряет (6.3.3). В этом случае опять необходимо дробить шаг.
Хотя можно было бы воспользоваться квадратичной моделью,
Рис. 6.3.6. Дробление шага на основе кубической модели, две возможности.
158 Гл. 6. Глобально сходящиеся модификации
как это делалось при первом дроблении, но теперь имеются
четыре порции информации об f(^). Поэтому на протяжении
всей текущей итерации мы в этом и во всех последующих дроб-
лениях используем кубическую модель функции f, подбираем
nicuW по f(0), f (0) и по последним двум значениям f{K} и,
устанавливая верхний и нижний пределы того же типа, что
и раньше, полагаем ^ равным значению К, в котором /Пси(^-)
имеет локальный минимум (рис. 6.3.6). Причина использования
кубической модели состоит в том, что она может более точно
моделировать ситуации, в которых f имеет отрицательную кри-
визну, что весьма возможно, когда (6.3.3) не выполнялось для
двух положительных значений К. Кроме того, такая кубическая
функция имеет единственный локальный минимум, что нагляд-
но демонстрируется рис. 6.3.6.
Вычисление К происходит следующим образом. Пусть
^prev и ^,2prev1)—последние два из предыдущих значений К/с-
Тогда кубическая функция, в точности соответствующая значе-
ниям f(0), f'(0), f (A, prev) и f(A,2prev), имеет вид
mcu W = а73 + ЬК2 + f (0) ^ + f (0),
где
Га
т-
Х
- А,2 prev
Ь J ^ prev -
—1
L ^ prev2 Л2 prev'
Точкой его локального минимума К является
— b + V&2 — 3af' (0)
„ Г К prev2 K2 prev2 1 Г f (^ prev) - f (0) - f' (0) X prev "
L^prev^A&J^^^-^^-^0^2^-
За
(6.3.18)
Можно показать, что если f (7. prev) ^ f (0), то Х < -„- К prev.
о
Такое уменьшение2) может реально встретиться, но оно счи-
тается незначительным (см. пример 6.5.1). Поэтому устанавли-
вается верхняя граница и ==0.5, т. е. если Л, > —К prev, то мы
полагаем новое Д^ == п-^, prev. Кроме того, поскольку К может
составлять произвольно малую долю от К prev, то опять ис-
1) Здесь prev есть сокращение от previous (предыдущий).—Прим. псрев.
^ 9
2) Имеется в виду Л а; -„- К prev. — Прим. перев.
о
6.3. Линейный поиск 15^
I 1 ( • ^ \ 1
пользуется нижняя Граница I -- -тт, 1 т. е. если л <-„т-Л prev,
то полагаем новое л;; == "т л pi^v) • Можно показать, что (6.3.18)
никогда не будет иметь комплексных значений, если а в алго-
ритме 6.3.5 меньше—-.
Существует один важный случай, в котором дробление шага
на основе кубической интерполяции можно использовать на
каждом шаге алгоритма 6.3.5. Иногда имеется возможность
получать Vf(xk + Aft/?/;) за очень малую дополнительную цену
при вычислении f(Xk+^kpis)- В этом случае при каждом дроб-
лении шага можно строить тси(д) на основе f(0), f' (0),
f(^prev) и ^'(К prev). Ценное упражнение для студентов состоит
в том, чтобы разработать в деталях получающийся в резуль-
тате этого алгоритм.
Алгоритм А6.3.1 из приложения содержит нашу процедуру
линейного поиска с дроблением шага. Он имеет две дополни-
тельные особенности. Так, введена минимальная длина шага,
названная minstep. Эта величина используется для проверки
сходимости в алгоритме А7.2.1, вызывающем рассматриваемый
алгоритм. Если условие (6.3.3) не выполняется, а ЦХй/^Цг ока-
зывается меньше, чем minstep, то линейный поиск прекраща-
ется, так как сходимость к Xk будет, так или иначе, выявлена
в конце текущей итерации. Этот критерий предотвращает за-
цикливание линейного поиска, если pk не является направле-
нием спуска. (Такое иногда встречается на заключительной
итерации алгоритмов минимизации из-за ошибок конечной
арифметики, особенно когда градиент вычисляется по конеч-
ным разностям.) Поскольку это обстоятельство может также
указывать на сходимость к ложному решению, должно печа-
таться предостерегающее сообщение. Максимально допустимая
длина шага также устанавливается пользователем, так как на
практике могут встретиться чрезмерно большие шаги, когда
Pk=sk=—^k ^f (^fe) и '"з'1'?11".3 ^k почти вырождена. Мак-
симальная длина шага устанавливается специально для того,
чтобы предотвратить выполнение таких шагов, которые могли
бы вывести алгоритм из интересующей нас области, а также,
вероятно, вызвать переполнение при вычислении f(l).
Когда будет использоваться линейный поиск совместно с ал-
горитмами секущих из гл. 9, мы увидим, что нам та-кже необ-
ходимо предположить, что на каждой итерации выполняется
условие (6.3.4). Алгоритм А6.3.1 mod представляет собой мо-
дификацию алгоритма А6.3.1, которая реализует это условие
в явном виде. Обычно она даст те же самые шаги, что и алго-
ритм Л6.3.1.
160 Гл. 6. Глобально сходящиеся модификации •
6.4. ПОДХОД: МОДЕЛЬ—ДОВЕРИТЕЛЬНАЯ
ОБЛАСТЬ
В последнем разделе рассматривались исключительно пробле-
мы отыскания приемлемой длины шага в заданном направле-
нии поиска. Основные предположения заключались в том,
чтобы направлением было квазиньютоновское направление и
полный квазиньютоновский шаг был всегда первым пробным
шагом. Получающийся в результате алгоритм с дроблением
шага объединил в себе эти предположения, с тем чтобы попы-
таться достичь глобальной сходимости, не жертвуя при этом
свойствами локальной сходимости квазиныотоновских методов.
Такие цели, очевидно, стоят перед любой глобальной страте-
гией. В этом разделе мы преследуем ту же цель, но мы отхо-
дим от предположения, что укороченные шаги должны обяза-
тельно лежать на квазиньютоновском направлении.
Допустим, что квазиньютоновский шаг оказался неудовлет-
ворительным. Это указывает на то, что наша квадратичная
модель неадекватно моделирует f в области, содержащей пол-
ный квазиньютоновский шаг. В алгоритмах с линейным поис-
ком сохраняется одно и то же направление шага и выбирается
более короткая длина шага. Эта новая длина определяется с
помощью построения новой одномерной квадратичной или ку-
бической модели на основе информации, полученной только
при вычислении значений функции и градиента вдоль квази-
ньютоновского направления. Хотя эта стратегия имеет успех,
у нее есть и недостаток, состоящий в том, что она никак боль-
ше не использует /г-мерную квадратичную модель, включая
гессиан модели. В этом разделе, когда возникнет необходимость
делать более короткие шаги, мы сначала выберем более корот-
кую длину шага, а уж затем воспользуемся полной п-мерной
квадратичной моделью для выбора направления шага.
Прежде чем приступать к рассмотрению способов выбора
таких направлений, полезно сделать несколько предваритель-
ных замечаний относительно того, как заранее задавать длину
шага. По-видимому, целесообразно после первой итерации на-
чать придерживаться некоторых соображений относительно
длины шага, который, как мы могли бы с достаточным осно-
ванием надеяться, будет сделан. Например, можно было бы
на основе длины шага, сделанного на k-fi итерации, получить
верхнюю границу длины шага, который, вероятно, будет успеш-
ным на итерации ^+1. Действительно, в разд. 6.4.3 мы уви-
дим, как использовать информацию об f, полученную в ходе
итерации, для того чтобы получше оценить длину шага, кото-
рый, вероятно, окажется успешным. Имея эту оценку, было бы
желательно начать следующую итерацию с шага приблизи-
тельно такой длины и не тратить вычислений функции, быть
6.4. Подход; модель — доверительная область 161
может очень дорогостоящих, на более длинные шаги, которые
вряд ли окажутся успешными. Это, конечно, означает, что, ис-
ходя из экономии количества вычислений функции, мы могли
бы отказаться от попытки сделать полный квазиныотоновский
шаг на такой итерации, когда он мог оказаться удовлетвори-
тельным. В разд. 6.4.3 будут приведены некоторые эвристиче-
ские соображения относительно минимизации вероятности этого
события.
Теперь допустим, что имеются Хс и некоторая оценка сверху
бс длины успешного шага, который нам, вероятно, удастся вы-
полнить из точки Хс. Здесь возникает вопрос: как наилучшим
образом выбирать шаг из Хс максимальной длины бс? Суще-
ствует естественный ответ, если вернуться к идее использова-
ния квадратичной модели. С самого начала мы придерживались
той точки зрения, что квазиньютоновский шаг s^ является
приемлемым, так как он представляет собой шаг из л-с в точку
глобального минимума локальной квадратичной модели те
(если гессиан Яс модели положительно определен). Если до-
бавить идею об ограничении максимальной длины шага вели-
чиной бе > 0, то соответствующий ответ на наш вопрос состоит
в том, чтобы попробовать сделать шаг Sc, который является ре-
шением задачи
min т^ (Хс + s) = f (Хс) + W (Хс)7' s + ^ s^s
ПрИ УСЛОВИИ ||s||2^6c.
^с + S) = f (X,) + W (Х,}Т S + 4- S^S
Задача (6.4.1) служит основой для подхода «модель—дове-
рительная область» к решению задач минимизации. Ее решение
приводится ниже в лемме 6.4.1. Это название происходит из
взгляда на 6с, как на величину, порождающую область, в кото-
рой можно доверять Отс в том, что она адекватно моделирует f.
В следующей главе мы увидим преимущество использова-
ния масштабированного варианта /а-нормы при ограничении
длины шага, но, поступая так именно сейчас, можно только
запутать дело.
Лемма 6.4.1. Пусть f: IR"->-R дважды непрерывно диффе-
ренцируема, Не е R^" симметрична и положительно опреде-
лена, а также пусть || • || обозначает /а-норму. Тогда решением
задачи (6.4.1) является
s W А - (Н, + ц/)-' Vf (x,} (6.4.2)
для единственного ^ ^ 0, такого, что ||s(u)|| == бс, если только
не имеет место неравенство |s(0)l|^6c, в случае выполнения
которого решением задачи является s(0)==s^. Для любого
^^0 вектор s(^i) задает направление спуска для f из л"с.
6 Зак, 6fi0
162 Гл. 6. Глобально сходящиеся модификации
Доказательство. Формула (6.4.2) вытекает непосредственно
из необходимых и достаточных условий для задач условной оп-
тимизации, однако нигде в книге нам не требуется привлечения
результатов такой общности. При желании, читая доказатель-
ство, можно обращаться к рис. 6.4.1. На нем изображены Хс,
положительно определенная квадратичная модель nic с мини-
мумом в точке х^, окруженной линиями уровня для некоторых
возрастающих
шага 6с.
Обозначим
значений те, а также изображена граница
решение задачи (6.4.1) через s„ и пусть
х^ = х^ 4- s„. Поскольку ньютоновская точка л:д + s^ служит
точкой глобального минимума для /Пд, то ясно, что если
H^YI^^c' т0 s^==s.• Рассмотрим теперь случай, когда д:д + s^
выходит за границу шага, как изображено на рис. 6.4.1. Пусть
х—произвольная точка, находящаяся строго внутри допусти-
мой области, заданной ограничением, т. е. \\х—Хс|1-<6с. Тогда
Vm.c{x)=/=0, поэтому имеется возможность уменьшить те из х,
оставаясь внутри допустимой области и рассматривая точки
вида х—^Vmc(Jc). Отсюда следует, что s не может быть реше-
нием задачи (6.4.1), поэтому s^ должно удовлетворять равенству
llsJ=6c, если только не имеет место неравенство ||s(0) || < 6с.
Кроме того, поскольку допустимая область задачи (6.4.1) за-
мкнута и ограничена, то должно существовать решение s, та-
кое, что ||s||==6c.
Рассмотрим теперь s, такое, что ||s||=6c. Для того чтобы s
было решением задачи (6.4.1), необходимо, чтобы при движе-
нии на сколь угодно малое расстояние из Хс + s вдоль любого
Рис. 6.4.1. Решение задачи (6.4.1).
6.4. Подход: модель—доверительная область 163
)4
направления, являющегося направлением спуска для /Пс, уве-
личивалось расстояние от Хс. Направлением спуска для те из
Хс + s служит любой вектор р, для которого
О > р^тс (х, + s) == pт [H,s + V/ (х,)}. (6.4.3)
Аналогично, направление р из Хс + s увеличивает расстояние
от Хс тогда и только тогда, когда
^s > 0. (6.4.4)
Сказанное сводится к следующему: чтобы s было решением
для (6.4.1), любое р, удовлетворяющее (6.4.3), должно также
удовлетворять (6.4.4). Поскольку известно, что Vmc(xc + s)^0,
это может иметь место, только если Vmc(Xc+s) и —s имеют
одно и то же направление, или, другими словами, если для не-
которого [\ ~> О
(IS = — V/Пс (Хс + S) = — (H^S + V/ (Хс}),
что в точности есть уравнение (//c+H^)s==—Vf(Xc). Таким
образом, s,=s(^i) для некоторого ^>0 при ||s^j>6^. По-
скольку |л^0 и матрица Не симметрична и положительно
определена, (Не + ^1} является симметричной и положительно
определенной, поэтому s([i) есть направление спуска для f
из Хс. Для завершения доказательства необходимо показать
единственность s,, которая вытекает из более сильного резуль-
тата, состоящего в том, что если |^i>U2^0> т0 1|s(ui)||<
< |[ s (^2) II. Это показывает, что |[ s (ц) || = 6д имеет единственное
решение, которое должно быть решением и для (6.4.1). Дока-
зательство является простым, поскольку если ц ^ 0 и
П W А 1] s W Из = || (Не + ц/)"1 Vf (х,} ||,
-^(x^J^i+ffcr3^^) _ -sWT(H^+v.I)~lsW
11s(ц) II
II 5(^)11
и поэтому т]/((^)<;0 всякий раз, когда V^(xc)=/=0. Таким обра-
зом, г| есть монотонно убывающая функция от ^. D
Трудность использования леммы 6.4.1 в качестве основы
для вычисления шага в алгоритме минимизации состоит в том,
что не существует конечного метода определения ^с > 0, та-
кого, ЧТО || S (|Лс) Ib = 6с При бс < lU^^f (Хс}\\2- ПОЭТОМУ В СЛС-
дующих двух подразделах описываются два вычислительных
метода для приближенного решения задачи (6.4.1). Первый—
метод с локально ограниченным оптимальным (или «криволи-
нейным») шагом, в котором находится [ic, такое, что |[s(}Xc)ll2^
^ бс, и берется х+ = Хс + s(^c). Второй — метод с шагом в виде
ломаной линии, в котором производится кусочно-линейная ап-
проксимация кривой s((i) ив качестве х+ берется точка на
б*
164 Гл. 6. Глобально сходящиеся модификации
этой аппроксимации, удовлетворяющая равенству ЦА-+—
—Хс\\= 6с.
Нет никакой гарантии, что х+, являющееся приближенным
решением (6.4.1), будет приемлемой следующей точкой, од-
нако мы надеемся, что она будет таковой, если бс служит хо-
рошим ограничением шага. Поэтому алгоритм доверительной
области в своем завершенном виде будет выглядеть так:
Алгоритм 6.4.2. Шаг глобальной стратегии на основе под-
хода «модель — доверительная область»
Заданы: f: R"-^R, бс > 0, ^csR", симметричная положи-
тельно определенная матрица //деР"^.
repeat
(1) Sc= приближенное решение для (6.4.1),
Х+ == ^с Т" Sc,
(2) решить — приемлемо ли х+, и вычислить новое значе-
ние бд,
until x+ — приемлемая следующая точка;
б+ = бд.
Описание алгоритма «модель—доверительная область» за-
вершается в разд. 6.4.3 рассмотрением приведенного выше
шага 2.
В заключение уместно сделать некоторые замечания. Во-
первых, как показал Гэй (1981), даже если Не имеет отрица-
Рис. 6.4.2. Кривая s (ц)
6.4. Подход: модель—доверительная область 165
тельные собственные значения, решением (6.4.1) является s»,
удовлетворяющее равенству (Яс+Р-О5* ==—^f(xc) для неко-
торого ц > 0, такого, что матрица Не + (V по крайней мере
положительно полуопределена. Это приводит к еще одному
обоснованию описанной в разд. 5.5 стратегии внесения возмуще-
ний в гессиан модели, когда \v2f{Xc) не является положительно
определенным, таких, что Яс == V2^:(xc)+ (А/ положительно опре-
делена. Получающийся в результате этого квазиньютоновский
шаг —Hc^^f {xc} представляет собой шаг в точку минимума
исходной (неположительно определенной) квадратичной мо-
дели в некоторой сферической области с центром в Xc. В остав-
шейся части разд. 6.4 предполагается, что Не положительно
определена.
Во-вторых, важно отметить, что s(^) непрерывно изменяется
от квазиньютоновского шага — Hc^^f (Xc), соответствующего
р, == 0, до 5(ц)^—(l/}i)Vf(xc), когда [А, становится большим.
Таким образом, когда бс очень мало, решение задачи (6.4.1)
представляет собой шаг длиной бс примерно в направлении
наискорейшего спуска. На рис. 6.4.2 изображена кривая S(|J),
О ^ [^ <: оо, для той же самой модели, что и на рис. 6.4.1. За-
метим, что при п ~> 2 эта кривая, вообще говоря, не лежит в
подпространстве, натянутом на Vf(xc) и Яс^У/ (xc} (см. упр. 10).
Флетчер (1980) называет эти алгоритмы методами с огра-
ниченным шагом. Этот термин отвечает больше всего рассмот-
ренной в разд. 6.4.3 процедуре пересчета бс, которая может
быть использована также и в алгоритмах с линейным поиском.
Важной основой для алгоритмов из этого раздела служат ра-
боты, выполненные Левенбергом (1944), Марквартом (1963),
Голдфельдом, Куандом и Троттером (1966). На последующих
страницах приводятся ссылки на более свежие работы.
6.4.1. Локально ограниченный оптимальный
(«криволинейный») шаг
Первый из наших подходов к вычислению шага в алгорит-
ме 6.4.2 «модель—доверительная область» при lls(0)||2>Sc
состоит в нахождении s(^i)^—(Не + |^/)~1 V/ {Xc), такого, что
lls(p) Цг^ бс, и далее в выполнении пробного шага в точку х+=
=JCc+s([.i). В этом разделе рассматривается алгоритм для
нахождения приближенного решения Цс скалярного уравнения
(6.4.5)
Фактически мы вовсе не будем требовать очень точного реше-
ния, но обсуждение этого вопроса откладываем до конца дан-
ного подраздела.
166 Гл. 6. Глобально сходящиеся модификации
Применение идей гл. 2 заставило бы нас использовать ме-
тод Ньютона для решения (6.4.5). Хотя это и оправдало бы
себя, тем не менее можно показать, что Ф'(ц)<0 и Ф"(^)>0
для всех [А дЭ: 0, поэтому метод Ньютона всегда давал бы оцен-
ку снизу для точного решения ^i. (см. рис. 6.4.3). Поэтому бу-
дет построен другой метод, специально предназначенный для
(6.4.5).
Воспользуемся идеей из гл. 2, заключающейся в использо-
вании аппарата локальных моделей решаемых задач. В дан-
ном случае одномерный вариант
Ф(ц)=l-(ц+^)-lgJ
подсказывает нам общий вид локальной модели
тс ^ = 6 -^-и ~~ 6С
с двумя свободными параметрами а и р. Прежде чем обсудить
а и |3, заметим, что мы незаметно пришли к новым обозначе-
ниям, необходимым нам, когда дело касается итерации по [i,
которая порождается приведенной выше моделью, имеет ме-
сто внутри основной итерации по х и предназначается для оты-
скания [ic, удовлетворяющего равенству (6.4.5). Жирный
шрифт будет использоваться для текущих значений величин
«д, Р^ и ц^, которые изменяются на внутренней итерации по j-i,
а светлый—для текущих значений величин бс, Хс, Vf{Xc) и Не,
которые порождаются на внешней итерации и не меняются на
протяжении решения (6.4.5). Таким образом, ^с получается в
результате внутренней итерации как последнее приближение
Цс к ц,, т. е. к точному решению уравнения (6.4.5). Далее Хс
и [АС используются для определения х+ = Хс + s (цс).
Рис. 6.4.3. Метод Ньютона для решения Ф (ц) = О'
6.4. Подход: модель—доверительная область 167
Модель m^(,u) имеет два свободных параметра а^ и Рд, по-
этому, как и при выводе метода Ньютона, целесообразно вы-
брать их такими, чтобы они удовлетворяли двум условиям:
tttc К) = —————— - бс == Ф Ы = II S (Цс) Ik - 6.
Рд "1 t"c
^--^^^'^
Это дает
(tc=
Ф' (^) '
д (Ф(^)+^) „
''с— ф'^) 'V
(Ф (^) + б,)2
(6.4.6)
(6.4.7)
Заметим, что для вычисления s (fie) требуется разложение
матрицы Не + V^d и, следовательно, на это необходимо затра-
тить О (га3) арифметических операций. Раз уж мы имеем это
разложение, то вычисление {Нс-{-^cl)~1 s{uc) обходится только
в О (га2) операций, поэтому вычисление Ф^Цс) сравнительно
дешево.
Теперь, когда имеется модель те (ц), естественно выби-
рать ц^ так, чтобы Стд(^)==0, т. е.
СЕ,
^-^-Р.-
Читатель может убедиться, что подстановка (6.4.6), (6.4.7) и
(6.4.5) в приведенную выше формулу дает
„ „ гФ^+^г^) 1 „ ll ^n Г °(^)1 (вля)
^=и.-[—^—\[-Ф^\=^-—67~[~<^\' (6•4•8)
что выступает в качестве итерации для решения Ф(|л)==0. Вид
формулы (6.4.8) показывает, что при Цс < М. делается шаг,
больший, чем мог бы сделать метод Ньютона, но при Цс > ц,
шаг оказывается меньшим, чем ньютоновский. По мере стрем-
ления Цс к ц. (6.4.8) все более и более напоминает метод
Ньютона и, действительно, локально ^-квадратично сходится
к ц..
Остаются невыясненными несколько вопросов, связанных
с превращением (6.4.8) в вычислительный алгоритм. Дальней-
шие рассуждения и наш алгоритм основываются на работах
Хебдена (1973) и Морэ (1977). Можно порекомендовать также
работу Гандера (1978). Читатели, не интересующиеся деталями
численной реализации, могут при желании пропустить следую-
щие три абзаца.
168 Гл. 6, Глобально сходящиеся модификации
Первое соображение касается начального значения для ц
при решении (6.4.5). Райнш (1971) показал, что если процесс
(6.4.8) начинается с ^о = 0, то итерации по уь сходятся моно-
тонно снизу к ц», но нам хотелось бы начинать еще ближе, так
как каждая итерация в (6.4.8) требует решения линейной си-
стемы. В численной реализации, предложенной Морэ, исполь-
зуется приближенное решение (А_ последнего варианта уравне-
ния (6.4.5) для получения начального приближения в текущем
варианте этого уравнения. Способ, применяемый Морэ, прост:
если текущее значение верхней границы шага бс равно послед-
нему значению верхней границы шага б-, умноженной на р,
то для начала в (6.4.8) используется ^^,o:=^^._/^?. Мы предпочи-
таем стратегию, отличающуюся от описанной. Напомним, в ка-
кой ситуации мы находимся на итерации: только что был сде-
лан шаг по х, равный s(^x-), из х- в Хс, и хотелось бы полу-
чить х+, причем 6с уже получено из б— Перед тем как получить
Не, мы все же имеем (Я-+^_/) в факторизованном виде, и
поэтому вычисление
ФА||5((-1_)||-6„
^ л s (ц-)7' (Я- + ц_/)"1 s(y„)
'= |Щц-)||
обходится только в О (/г2) операций. По аналогии с (6.4.8) ис-
пользуется
,,=,_-1^)1° (6.4.9)
6с Ф' ' \".^/
т. е. значение ц, полученное на основе ^-, предыдущей модели
и нового радиуса бс доверительной области. Если 6с === б_, то
Но представляет собой в точности то же значение, что мы по-
лучили бы, сделав на основе предыдущей модели еще одну
итерацию по |J. С другой стороны, если на предыдущей итера-
ции') был сделан ньютоновский шаг, то будем выбирать цо
по другому правилу, речь о котором пойдет ниже.
Другая вычислительная деталь, имеющая важное значение
для работы алгоритма по решению (6.4.5), состоит в выработке
и пересчете нижней и верхней границ у+ и /+ для ц+. Эти гра-
ницы используются наряду с (6.4.8) таким же образом, как
границы, которые использовались, чтобы обезопасить процесс
дробления шага в алгоритме 6.3.5, т. е. значение ^ ограни-
чивается так, чтобы оно принадлежало [l„ U.J. Поскольку ре-
зультат ньютоновской итерации, примененной к (6.4.5), всегда
не дотягивает до значения^,, то мы берем 1у==—Ф(0)/Ф'(0).
Затем наряду с каждым вычислением (6.4.8) вычисляется
____ и-Т = ^ - Ф (Цс)/Ф' (^с)
*) Имеется в виду итерация по х. — Прим. перев.
6.4. Подход: модель—доверительная область 169
и пересчитывается нижняя граница 1^ = max \l^, ц^}, где 1^—
текущее значение нижней границы. Кроме того, поскольку
б.Ч(Яe+•^J)-lVWff2 0, то || V/' (Хс) llz/Sc берется в качестве начального зна-
чения нижней границы «д для ц,. Затем на каждой итерации
при Ф (,"<•)< О пересчитывается верхняя граница по формуле
ы^==тш^,цЛ, где йд— текущее значение верхней границы.
Если на какой-либо итерации оказывается, что ц, не при-
надлежит \1^, и ], то мы следуем Морэ в выборе |и, по фор-
муле
^ = max {(^ . u^yi2. 10-3 M.J, (6.4.10)
где второй член предохраняет от близких к нулю значений /+.
На практике к этим границам наиболее часто обращаются при
вычислении "о. В частности, (6.4.10) используется для задания
[ID всякий раз, когда (6.4.9) не может быть использована, по-
тому что на предыдущей итерации применялся ньютоновский
шаг.
И наконец, мы не решаем (6.4.5) со сколь-нибудь высокой
точностью, довольствуясь вместо этого значениями
I sells'
Збс
L 4
Збс 1
2 j'
Причина состоит в том, что доверительная область, как это
будет видно в разд. 6.4.3, никогда не увеличивается и не умень-
шается менее чем в 2 раза. Так что если радиус текущей довери-
тельной области равняется бс, то предыдущий был либо больше
или равен 2бс, либо меньше или равен бс/2. Таким образом, мы
считаем, что фактическое значение бс является довольно произ-
вольным в пределах отрезка [Збс/4, Збс/2], который занимает
среднее положение в обоих направлениях, и представляется
разумным допускать любые значения ||s(|i,)||2 из этого отрезка.
В некоторых других численных реализациях [см., например,
Морэ (1977)] требуется, чтобы ||s(^) \\z е [0.96с, 1.16с], и не
ясно, какой из этих отрезков лучше. Опыт показывает, что лю-
бое из условий удовлетворяется за число вычислений значения
ц, лежащее в среднем на итерацию по х между 1 и 2.
На этом завершается наше обсуждение алгоритма прибли-
женного решения уравнения (6.4.5). Ниже приведен простой
пример.
170 Гл. 6. Глобально сходящиеся модификации
Пример 6.4.3. Пусть f (х^, х^) = х\ + х2 + х^, х^=(1, I)7',
Я,=V2Ц^), бс==у. Ц-==0. Тогда
V^)=(6,2)7-,
/Ч'; ^.
^=-^-'Vf(^)(-|-, -l)7',
[]<||,-1.088.
з
Поскольку fls^j > -п-бс,то ньютоновский шаг оказывается слиш-
ком большим по длине, и мы стараемся найти некоторое |А > О,
такое, что
| (Я, + ^)-1 V/ (^) L s [-^ , ^] == [0.375, 0.75]
?5; 1.25,
; 12.6,
(рис. 6.4.4). Поскольку ^-=0, то вычисления дают
Ф (0) 0.588
Ф' (0) — 0.472
IIW(^)ll2 ^ 6.325 ^
6,. — 0.5 -
Цо^о-йо^З^.
Затем вычисляется s (цо)=- (^с+Цо/)"1 Vf (х,)^(-0.334, -0.335)7'.
Поскольку
|| s(fio)ll2^ 0.473s [0.375, 0.75],
то берем t-i(;=h) и x+=л:с+s(}ic) ^ (0.666, 0.665)7' в качестве
нашего приближенного решения задачи (6.4.1). Заметим, что
Рис. 6.4.4. «Криволинейный» шаг из примера 6.4.3.
6.4. Подход: модель—доверительная область 171
в данном случае итерация (6.4.8) не использовалась. Для наг-
лядности читатель может убедиться, что однократное примене-
ние (6.4.8) дало бы
®(^o) II ^^}\\2
ф/ (^о)
= 3.97
—0.0271 +0.473
+0.528 ' +0.5
-3.49
и что s(ui)=(—0.343, —0.365)г, |[s()ii)||2= 0.5006. В данном
случае точное решение уравнения (6.4.5) имеет вид ц, ^ 3.496.
Наш алгоритм для вычисления локально ограниченного
оптимального («криволинейного») шага, использующий описан-
ные в этом разделе приемы, представлен в приложении алго-
ритмом А6.4.2. В работе ему предшествует драйверный алгоритм
А6.4.1, осуществляющий полный глобальный шаг с использова-
нием принципов выбора локально ограниченного оптимального
шага. Полный шаг включает в себя выбор новой точки х+ алго-
ритмом А6.4.2, проверку приемлемости х+ и пересчет радиуса
доверительной области (алгоритм А6.4.5), а также при необхо-
димости повторение этого процесса. Все эти алгоритмы исполь-
зуют диагональную матрицу масштабирования в пространстве
переменных, которое будет рассмотрено в разд. 7.1.
Некоторые недавние исследования [Гэй (1981), Соренсен
(1982)] были сконцентрированы на приближенном решении ло-
кально ограниченной модельной задачи (6.4.1) с использованием
описанных в этом разделе приемов, распространенных на тот
случай, когда Не не является положительно определенной. Эти
приемы могут стать важным дополнением к алгоритмам из дан-
ного раздела.
6.4.2. Шаг с двойным изломом
Другой реализацией рассматриваемого подхода «модель—до-
верительная область» служит модификация алгоритма довери-
тельной области, предложенная Пауэллом (1970а). В этой моди-
фикации тоже ищется приближенное решение задачи (6.4.1).
Однако вместо того чтобы находить точку х+==^с+5(цс) на
кривой s(}x), такую, что ||л-+—A-clk^Sc, в ней аппроксимируется
эта кривая кусочно-линейной функцией, соединяющей «точку
Коши» С. Р.'), т. е. точку минимума квадратичной модели те
на направлении наискорейшего спуска, с ньютоновским для т.с
направлением, как это указано на рис. 6.4.5. Затем в качестве
х+ выбирается точка на этой ломаной линии, такая, что
\\х+—Хс\\2=^>с, если только не имеет место неравенство
ll^c'Vf (^c)fl2< f>c, причем в последнем случае х+—ньютонов-
ская точка. Такую стратегию можно еще рассматривать и как
1) с. Р.—сокращение от «Cauchy point» (точка Кошп).—Прим. перев.
172 Гл. 6. Глобально сходящиеся модификации
., -Vf(A-c)
Рис. 6.4.5. Кривая с двойным изломом Хд —>• С.Р. -> N -> х
с •
простую стратегию поиска в направлении наискорейшего спуска,
если бс мало, а по мере роста 6с—в направлении, все более и
более приближающемся к квазиньютоновскому.
Специальный способ выбора кривой с двойным изломом
обеспечивает наличие у нее двух важных свойств. Первое: по
мере продвижения вдоль кусочно-линейной кривой от Хс к С. Р.,
затем к Я и далее к х^ расстояние от Хс монотонно увеличи-
вается. Следовательно, для'любого б^НЯс'1^^))! существует
единственная точка на кривой, такая, что \\х+—Хс\\ч=^- Имен-
но это делает процесс корректно определенным. Второе свой-
ство состоит в том, что значение квадратичной модели mc(xc+s)
монотонно уменьшается по мере продвижения s вдоль кривой от
Хс к С.Р., затем к N и далее к х^. Это делает процесс вполне
обоснованным.
Точка С. Р. на рис. 6.4.5 находится путем решения задачи
min т.с (Хс
».sR
Wf (х,)) = f (х,) -W {х,} ||j + 4 ^ (XcY H^f (х,),
которая имеет единственное решение
Следовательно,
и если
'• 7f (x^ ff^f (xc) '
C.P.=x,-^f(x,),
6с < ^.11 Vf (Хс} ^ = 11 Vf (X,) l^/Vf (Л-с)7' /W (Хс),
6.4. Подход: модель—доверительная область 173
то алгоритмом делается шаг длиной бс в направлении наискорей-
шего спуска:
х+ = хс ~ l|V/(^)ll2 v/ (хс}-
Для того чтобы кривая с двойным изломом обладала первым
из с4)ормулированных выше свойств, необходимо показать, что
точка Коши С. Р. находится не дальше от Хс, чем ньютоновская
точка х"
Пусть
С.Р.
тогда
I 0е-Р' II •
\S Hz •
V/ W H^f (Xe)
(Vf (xf fl^f (x,)) (V/ (х,/ H^Vf (x,))
^IkATll^lL. (6.4.11)
В качестве упражнения можно показать, что -у s?a 1 для любой
положительно определенной матрицы Не, причем у = 1 тогда
и только тогда, когда s^1'- =sl\l. Мы исключаем из рассмотрения
этот случай до конца данного раздела. Итак,
ils^-lb^Vll^lla^ll^lk.
Точка N на кривой с двойным изломом выбирается так, чтобы
она имела вид
N=x,-^\f(xc)
для некоторого T}, такого, что
V^-^^f(x^^sN-sc•p•})=
= (1 - Л) (V - r\) (V^ (x/ H^Vf Ы),
которое должно выполняться для всех T) е(у, 1).
Таким образом, в качестве N можно выбирать любую точку
на ньютоновском направлении Хс + т^, для которой T] лежит
между 1 и величиной у, определенной в (6.4.11). Первоначаль-
ным выбором Пауэлла было T|=I, чему соответствует кривая
с одним изломом. Численное тестирование, однако, показало,
что более ранний переход на ньютоновское направление, по-ви-
димому, улучшает работоспособность алгоритма. Поэтому Ден-
нис и Мей (1979) предложили выбор T] = 0.8у + 0.2, который
приводит к кривой с двойным изломом, наподобие той, что изо-
бражена на рис. 6.4.5.
Выбор точек С. Р. и Л^ полностью определяет кривую с двой-
ным изломом. Нахождение на кривой точки х+, такой, что
||х+—Хс^ч^бс, представляет собой простую и нетрудоемкую
алгебраическую задачу, что и будет продемонстрировано в при-
веденном ниже примере 6.4.4. Отметим, что полные затраты
алгоритма составляют после вычисления s^f только О (/г2) ариф-
метических операций.
Пример 6.4.4. Пусть f(x}, Хс и Не заданы, как в примере
6.4.3, и пусть бс == 0.75. Напомним, что
V^)=(6,2)., Я,=[^ ^], ^(--l-,-!)7
Поскольку ||s^|L= 1.088 > 6д, то алгоритм, использующий кри-
вую с двойным изломом, сначала вычисляет шаг в точку Коши.
Читатель может убедиться, что она имеет вид
6.4. Подход: модель—доверительная область 175
Так как Hs^-lb ^ 0.494 < 6с, то далее алгоритм вычисляет шаг
в точку N. Читатель может убедиться, что
У=—%Т- °-684.
(512) (^)
т] = 0.8у + 0.2 ^ 0.747,
SN A, TIS^ ^
^( -0-320 Л
-Л-0.747^
-0.320'
-0.747.
Поскольку II s^ На ^ 0.813 > 6с, то шаг с двойным изломом дол-
жен проходить через прямую, соединяющую С. Р. и N, т. е.
s, = «с. Р. + ^ (дЯ _ дс. Р.) для 7,^(0, 1), такого, что ]|sJ2==6c.
Величина К получается в результате нахождения положитель-
ного корня квадратного уравнения
[]sC.P.+^_sC.P.)||^6;i.
Этим корнем является К s= 0.867. Таким образом,
сС. Р.\ ^
/-0.340 \
V -0.669 )'
-0.340 •
-0.669.
X^. == Хц -\- Sc
( 0.660 \
V 0.331 )•
0.660 \
0.331;'
Полностью эти вычисления отражены на рис. 6.4.6.
Наш алгоритм выбора точки в соответствии со стратегией
шага вдоль кривой с двойным изломом представлен в приложе-
нии алгоритмом А6.4.4. Вычислительный опыт показывает, что
выбранные, согласно этой стратегии, точки в худшем случае
лишь слегка уступают тем, что выбираются в соответствии с
локально ограниченным оптимальным шагом алгоритма А6.4.2.
Рис. 6.4.6. Шаг с двойным изломом из примера 6.4.4.
176 Гл. 6. Глобально сходящиеся модификации
Однако здесь есть, что сравнивать, а именно сложность и время
счета алгоритма А6.4.4 значительно меньше, чем у алгоритма
А6.4.2. Это делает привлекательной стратегию поиска вдоль
ломаной, особенно в случае задач, в которых невысока трудо-
емкость вычисления функции и производной.
Алгоритм А6.4.3 содержит драйвер для полного глобального
шага, использующего алгоритм поиска вдоль кривой с двойным
изломом с целью нахождения претендента для точки х+. Оба
алгоритма включают в себя диагональное масштабирование
пространства переменных, описанное в разд. 7.1.
6.4.3. Пересчет доверительной области
Для того чтобы глобальный шаг, описанный в алгоритме 6.4.2,
принял завершенный вид, необходимо решить, является ли
точка х+, найденная с использованием техники из разд. 6.4.1
или 6.4.2, удовлетворительным следующим приближением. Если
х+ оказывается неприемлемой, то размеры доверительной обла-
сти уменьшаются и производится минимизация той же самой
квадратичной модели на уменьшенной области. Если х+ явля-
ется удовлетворительной, то нужно решить, увеличивать, умень-
шать, или оставлять неизменной доверительную область на сле-
дующем шаге алгоритма 6.1.1. Основой для такого решения слу-
жат приведенные ниже рассуждения.
Условием приемлемости х+ служит то, что было изложено
в разд. 6.3, а именно:
f(^)<^)+<(^-^), (6.4.14)
где gc равно Vf(Xc) или его аппроксимации, а а—константа из
интервала [0, —). В нашем алгоритме мы опять полагаем
а==10-4, так что условие (6.4.14) вряд ли более строгое, чем
f{x+)<. f(xc). Если х+ не удовлетворяет (6.4.14), то размеры
доверительной области уменьшаются умножением на коэффи-
циент, лежащий в пределах от -,„- до -п, и мы снова возвра-
щаемся к приближенному решению локально ограниченной за-
дачи минимизации, используя идею локально ограниченного
оптимального шага или шага вдоль кривой с двойным изломом.
Коэффициент уменьшения определяется с помощью той же са-
мой стратегии дробления шага на базе квадратичной аппрокси-
мации, которая использовалась в алгоритме А6.3.1 для уменьше-
ния параметра линейного поиска. Функция /(^с-т-М-Ч-—Хс))
моделируется квадратичной m.q(K'}, совпадающей с f{xc) и f(x+),
а также с производной по направлению g^ (х,—хЛ функции f
и Хс вдоль направления л'+—Хс. Затем мы предполагаем, что
6.4. Подход: модель—доверительная область 177
радиус доверительной области 6+ совпадает с точкой минимума
этой модели, которая находится в
2[f(x^-f(x,)-gт,(x^-x,)}
(см. рис. 6.4.7). Таким образом, 6+=^,||л-+—Хс\\ч. Если
^||^-^||^[-^6„ ^6,],
то вместо этого значения, исходя из тех же соображений, что
и в алгоритме линейного поиска, в качестве б+ выбирается бли-
жайший из концов указанного отрезка. Заметим, что если х+
выбирается в соответствии с описанной в разд. 6.4.2 стратегией
ПОИСКа ВДОЛЬ КрИВОЙ С ДВОЙНЫМ ИЗЛОМОМ, ТО \\Х+—Хс\\2=6с, НО
если х+ выбирается в соответствии с описанной в разд. 6.4.2
стратегией локально ограниченного оптимального шага, то нам
[3 3 ^
известно лишь, что \\х+—xdIgS -. бд, у 6с .
Теперь предположим, что уже найдено х+, удовлетворяющее
(6.4.14). Если JC+ представляет собой полный ньютоновский шаг
из Хс, то этот шаг выполняется, пересчитывается б, строится
новая модель и происходит переход к следующей итерации. Од-
нако если х+—Хс не является ньютоновским шагом, то сначала
рассматривается вопрос о том, следует ли пытаться сделать шаг
побольше, используя текущую модель. Довод в пользу того, что
это может быть оправданным, состоит в том, что таким образом
можно избежать необходимости вычислений в х+ градиента (гес-
сиана), стоимость которых в трудоемких задачах часто является
Рис. 6.4.7. Уменьшение доверительной области в случае, когда х+ неприем-
лемо.
178 Гл. 6. Глобально сходящиеся модификации
доминирующей. Причина, по которой возможен более длинный
шаг, заключается в том, что в ходе предыдущей работы алго-
ритма доверительная область может стать малой, а в данный
момент может возникнуть необходимость в ее увеличении. Это
имеет место, когда мы выходим из области, где граница длины
шага должна быть малой из-за того, что в ней функция не очень
удачно описывалась квадратичной, и попадаем в область с бо-
лее хорошим поведением функции.
Для того чтобы решить—пытаться ли сделать более длин-
ный шаг из Хс, мы сравниваем реальное уменьшение функции
^f^f{x+)—f (х^ предсказанным уменьшением Af ^д^т (л:,)—
—1(хЛ. Берем х+ в качестве следующего приближения, если
либо соответствие между ними настолько хорошее, т.е. A^pred —
—Af|s^0.1|Af[, что величина бс, как мы подозреваем, недооце-
нивает радиуса области, в которой те адекватно представляет
f, либо реальное уменьшение f настолько велико, что оно гово-
рит о наличии отрицательной кривизны, т. е. f (х+) -?s f (Хс) +
+ \if(xc}т(x+—Хс), и, таким образом, это обещает продолже-
ние быстрого изменения f(x}. В обоих этих случаях запомина-
ются значения х+ и f{x+), однако, вместо того чтобы переходить
непосредственно к х+, сначала удваивается бс, а затем с исполь-
зованием нашей текущей модели вычисляется новое х+. Если
для нового х+ не выполняется (6.4.14), то мы возвращаемся
к последнему хорошему шагу, который уже вычислен, но если
это соотношение выполняется, то производится очередное удвое-
ние. На практике таким образом можно сэкономить значитель-
ное число вычислений градиента.
Интересная ситуация, в которой граница длины шага долж-
на сжиматься, а затем увеличиваться, встречается, когда алго-
ритм проходит вблизи точки, напоминающей точку минимума.
Ньютоновские шаги становятся все короче, и тогда алгоритм,
выполняя эти ньютоновские шаги, ведет себя так, как если бы
он сходился. Затем алгоритм обнаруживает выход из сложив-
шегося положения, ньютоновские шаги увеличиваются, и алго-
ритм уходит прочь от этого места. Такое поведение является
желательным, так как возмущенная задача могла в самом деле
иметь точку минимума в том месте, на которое было отвлечено
внимание. Для нас желательно, чтобы в этом случае мы могли
быстро увеличивать бс. В одном примере нам встретилось шесть
таких удваиваний границы шага на внутренней итерации после
прохождения точки, привлекшей к себе внимание.
Предположим теперь, что мы уже остановили наш выбор на
х+, как на точке следующей итерации, и поэтому необходимо
произвести пересчет бс в б+. Для получения б+ допускаются три
варианта: удвоить границу шага, уменьшить ее вдвое или оста-
вить неизменной. Реальные обстоятельства довольно разнооб-
6.4. Подход: модель—доверительная область 179
разны, однако важно то, что если текущая квадратичная модель
хорошо предсказывает поведение функции, то доверительную
область увеличиваем, но если она предсказывает плохо, то мы
уменьшаем доверительную область. Если квадратичная модель
довольно хорошо предсказала реальное уменьшение функции,
т. е. если Л/ < 0.75Д/ргеч, то берется 6+ = 2бс. Если модель слиш-
ком переоценила уменьшение в f{x), т. е. если Л^ ~> O.lAfpred, то
берем б+=бс/2. В противном случае б+== бс.
Пример 6.4.5. Пусть f(x), Хс, Не и 6с задаются, как в при-
мере 6.4.3. Предположим, что шаг, описанный в этом примере,
уже сделан, т. е.
__ _(\ ^ У 0.334 \ / 0.666 \
-A-c+Sc—^J ^0.335; 10.665 /
/1\ / 0.334 \ ^0.666
х,
Напомним, что
^^-)==(Q,2Y, H,=^f{x,}=[^ ^]-
Мы хотим выяснить, является ли точка х+ удовлетворительной,
и хотим произвести пересчет доверительной области. Сначала
вычислим
f{x^}= 1.083,
f {х,} + a^f (x,Y (x+ - xc) = 3 - Ю-4 (2.673) = 2.9997.
Следовательно, х+ приемлемо. Затем мы решаем, нужно ли по-
пробовать на текущей итерации сделать более длинный шаг.
Для этого вычислим
Л^=Цх+)-^)=-1.917
^ = ^ (^) - f (^ = v^ W ^ + у ^А. -
= -2.673 + 0.892 = -1.781.
Поскольку |Л^-Л^ J/1 АД =0.07 К 0.1, то мы увеличиваем
доверительную область вдвое и возвращаемся к локально огра-
ниченному оптимальному шагу (см. алгоритм А6.4.1). Читатель
может убедиться, что при новом радиусе доверительной области
бс= 1 алгоритмом А6.4.1 будет сделан ньютоновский шаг. Оста^-
вим в качестве упражнения завершить пересчет доверительной
области на этой глобальной итерации.
Алгоритм пересчета доверительной области представлен в
приложении алгоритмом А6.4.5. Он имеет несколько дополни-
тельных особенностей.
1 Он использует минимальную и максимальную длину шага,
оассмотренную в разд. 7.2. Радиусу доверительной области не
разрешается выходить за эти пределы. Максимальная длина
180 Гл. 6. Глобально сходящиеся модификации
шага задается пользователем. Минимальная длина шага слу-
жит величиной, используемой для проверки на сходимость в ал-
горитме 7.2.1. Если х+ неприемлемо, но размеры текущей до-
верительной области оказываются меньшими, чем minstep, то
происходит остановка глобального шага, так как в конце теку-
щей глобальной итерации была бы обязательно выявлена схо-
димость. Эта ситуация может указывать на сходимость к точке,
не являющейся решением, поэтому должно выдаваться предосте-
регающее сообщение.
2. Если полученным с помощью алгоритма А6.4.2 или А6.4.4
приближенным решением модельной задачи с ограничением
является ньютоновский шаг, т. е. шаг более короткий, чем те-
кущий радиус доверительной области, то эти алгоритмы сразу
уменьшают размеры доверительной области до размеров ньюто-
новского шага. Затем он все же уточняется алгоритмом Аб.4.5.
Это представляет собой дополнительный механизм регулировки
размеров доверительной области.
3. Алгоритм реализован с использованием рассматривае-
мого в разд. 7.1 диагонального масштабирования имеющегося
пространства.
В заключение обсудим вопрос о том, как получается началь-
ная оценка радиуса доверительной области, или, другими сло-
вами, оценка границы шага. Иногда пользователь может сам
задать разумную оценку на основе его знания задачи. Если же
нет, то для этого случая Пауэлл (1970а) предлагает использо-
вать шаг по методу Коши (см. разд. 6.4.2) в качестве началь-
ного радиуса доверительной области. Возможны и другие стра-
тегии. Стратегия пересчета в алгоритме Аб.4.5 действительно
позволяет алгоритму доверительной области избавиться на прак-
тике от плохого начального значения для б, но обычно за это
надо платить дополнительными итерациями. Поэтому начальная
доверительная область имеет довольно важное значение.
6.5. ГЛОБАЛЬНЫЕ МЕТОДЫ РЕШЕНИЯ СИСТЕМ
НЕЛИНЕЙНЫХ УРАВНЕНИЙ
Вернемся теперь к задаче решения системы нелинейных урав-
нений:
задано: t". К' ->к ,
найти х. е R", такое, что F(x^)==0.
F: R"-^R",
(6.5.1)
В этом разделе будет показано, каким образом можно объеди-
нить метод Ньютона для (6.5.1) с глобальными методами без-
условной минимизации в целях создания глобального метода
для (6.5.1).
6.5. Глобальные методы решения систем 181
Ньютоновский шаг для (6.5.1) имеет вид
x+==Xc—J(Xc)~[F(Xc},
(6.5.2)
где !(хс) есть матрица Якоби функции F в Хс. Из разд. 5.2 из-
вестно, что (6.5.2) локально ^-квадратично сходится к х^, но не
обязательно глобально сходится. Теперь предположим, что Хс не
находится вблизи от какого-либо решения л:» задачи (6.5.1). Как
тогда решать вопрос о том, принять или нет х+ в качестве сле-
дующего приближения? Разумный ответ состоит в том, что в
некоторой норме || • || величина ||F(^+)|| должна быть меньше,
чем II/7 (^с) II, причем подходящим вариантом здесь служит /г-
норма: i\F(x}\\^==F(x}TF(x).
Требование, чтобы наш шаг приводил к уменьшению ||F(^)||2,
отвечает тому, что требуется при поиске минимума функции
!l^(^")ll2. Таким образом, мы в действительности переключили
внимание на соответствующую задачу минимизации:
(6.5.3)
xeR"
где «1/2» добавлено, исходя из удобства дальнейших выкладок.
Заметим, что любое решение (6.5.1) является решением и
(6.5.3), однако (6.5.3) может иметь много локальных миниму-
мов, которые не являются решениями для (6.5.1) (рис. 6.5.1).
Поэтому хотя можно было бы пытаться решать (6.5.1), просто
применяя процедуру минимизации к (6.5.3), все же лучше ис-
пользовать специфику исходной задачи всякий раз, когда это
возможно, в частности, вычисляя ньютоновский шаг (6.5.2).
Тем не менее наша глобальная стратегия для (6.5.1) будет ба-
зироваться на глобальной стратегии решения связанной с ней
задачи минимизации (6.5.3).
Зададим важный вопрос: «Что является направлением убы-
вания для задачи (6.5.3)?» Им служит произвольное направле-
Рис. 6.5.1. Нелинейные уравнения и соответствующая задача минимизации,
одномерный случай.
182 Гл. 6. Глобально сходящиеся модификации
ние р, для которого \^f{Xc)тp <. О, где
п п
^^^-^^(ii^cW^^h^-i^^JWF^.
Следовательно, направление наискорейшего спуска для (6.5,3)
направлено вдоль —J(xc)TF(xc). Кроме того, ньютоновское на-
правление вдоль s^ ==—J(xc}~\F(xc) представляет собой на-
правление спуска, так как
V/ (xf s" == - F {xf J (x,) J (x,)-' F (x,) = - F (xf'F {x,} < 0
всякий раз, когда F(xc)=гl=0. Этот факт может показаться уди-
вительным, но геометрически он вполне очевиден. Поскольку
ньютоновский шаг дает корень для
M,(x,+s)=F(x,)+!(x,}s,
он также приводит в точку минимума квадратичной функции
rhc (,Хс + s) А у Мс (л-с + •s)7' Me {.Хс + s) ==
= ^ F (х/ F (х,} + (J (x,Y F {x,W s + { sт (/ (^г / (х,)) s, (6.5.4)
так как rhc{xc + s)^ 0 для всех s и rhc {Хс + s^} = 0. Это озна-
чает, что 8м представляет собой направление спуска для rhc, и
поскольку градиенты функций rhc и f совпадают в точке Хс, то
оно также является направлением спуска для f.
Полученный выше вывод обосновывает наши дальнейшие
действия по созданию глобальных методов для (6.5.1). Эти
методы будут основаны на применении алгоритмов из разд. 6.3
и 6.4 к квадратичной модели rhc(x), заданной в (6.5.4). По-
скольку \f2ttl(xc)= J{xc}TJ{Xc), то рассматриваемая модель по-
ложительно определена всякий раз, когда J (хс) не вырождено.
Это в данном случае соответствует тому факту, что Хс + s^ есть
единственный корень для Мс(х), и, следовательно, это есть един-
ственная точка минимума для rhc(x). Таким образом, модель
rhc{x) имеет привлекательные свойства, состоящие в том, что
ее направления спуска являются направлениями спуска для
f(x), поскольку УШс(Хс)= Vf(xc). Поэтому методы, основываю-
щиеся на этой модели, которые используют направление «вниз
по склону» и минимизацию rhc(x), будут объединять в себе ме-
тод Ньютона для решения нелинейных уравнений с глобаль-
ными методами для решения связанной с ними задачи миними-
зации. Заметим, что rhc(x) не тождественно в окрестности точки
Хс квадратичной модели
т, {х, + s) = f (х,) + Vf (х^ s + 4 W (Хс} s
6.5. Глобальные методы решения систем 183
функции f(x)==-^-F (xf F (х}, потому что V2^ (х^) ?= J {XcY J (Хд)
(см. упр. 18 из гл. 5).
Применение глобальных методов из разд. 6.3 и 6.4 к задаче
решения нелинейных уравнений становится теперь вполне оче-
видным. Когда матрица /(д'с) достаточно хорошо обусловлена,
тогда J{xc}rJ(xc) надежно положительно определена, и алго-
ритмы применяются без каких-либо изменений, если определить
целевую функцию как у II/7 (х)\\1, ньютоновское направление как
—J(x}~\F(x} и положительно определенную квадратичную мо-
дель согласно (6.5.4). Это означает, что в алгоритмах с линей-
ным поиском этот поиск производится вдоль ньютоновского на-
правления в целях существенного уменьшения ]|.Р(х) На. В алго-
ритмах доверительной области приближенно минимизируется
mc(Xc+s) при условии ЦхЦг ^ бс. Если бс Ss \\J (Xc)-lF(Xc)\\•„
то пробным является ньютоновский шаг, в противном случае
пробным служит локально ограниченный оптимальный шаг
s=-(f (х^ J (х,) + МГ' / (x^F (х,), (6.5.5)
где ц,: таково, что Hsllz^Sc. Используя ту пли иную глобальную
стратегию, мы ожидаем, что в конце концов начнут выполняться
ньютоновские шаги для F(x)=0. В примере 6.5.1 показано, как
глобальная стратегия, использующая линейный поиск, работала
бы на примере из разд. 5.4, начиная из другой точки. В этой
точке ньютоновский шаг является неприемлемым.
Пример 6.5.1. Пусть F: R2-^ R2
г у2 _L у2 _ 9 -i
Р(х)=Г ' 2 1
\ / |^.-1+^-2_|-
Имеется корень х+==(1, \)T. Положим Хц=(2, 0.5)7'. Определим
f{x}=-^F(x}TF(x}. Тогда
,, , [41 -| -/ , Г 2.25 -|
^-Ь 0.75 J' F ^l 0.843 J •
^=-/(^)-^(хо)-[^].
Алгоритм А6.3.1 с линейным поиском вычислит х =х^-\-К^,
начиная с Ко==\ и, если необходимо, уменьшая 7,о' пока не
выполнится неравенство f(x^.) -9" ^i, то алго-
ритм полагает ^ ==
х^+0.05<-[^
0.987
F(x
Эта точка все еще не является удовлетворительной, так как
f(x+}s^3.7\ >f{xo), поэтому алгоритмом производится следую-
щее дробление шага с кубической аппроксимацией. Это дает
^з^О.ОИб, которое и используется, так как его величина при-
надлежит интервалу [7,2/10, W2] = [0.005, 0.025]. Теперь
х ^х Ч-ООНб^-Г1-96^ F(. ^f2-23^
+ ""'"•^'"^-[.О.бПГ ' (x+)=[ 0.856 j-
Эта точка удовлетворительна, так как
f(x^) ^ 2.87 < 2.89 -fG^+lO-^O.Ol 16) Vf^ofso",
поэтому мы полагаем л"1 == л'+ и переходим к следующей ите-
рации.
Интересно проследить дальнейший ход решения задачи. На
следующей итерации
^-^,г.^[-^],
."-.^-[^°]. ^Ч,^].
что опять является неудовлетворительным. Однако первое же
дробление шага оказывается успешным. Действительно, алго-
6.5. Глобальные методы решения систем 185
ритм А6.3.1 вычисляет ^i ==0.0156, и поскольку это меньше 0.1,
то он полагает ^1 = O.I,
, -^+01^-Г1-84 1 F(x ^Г2-07 1
x+-^+u•lsl - L 0.820 J' г^ +-'-1 0.876 J-
Этот шаг будет приемлемым, так как
f (х+) ^ 2.53 < 2.87 ^ f{Xi)-^-lO~\0.\)Vf(x,) s,.
На следующей итерации
^_ f^.гlF(r}^[~o•0756~\
s.,--/(x,) F{x,)=Y o.0437 J'
„ , л, Г 1.088 "I _, .,, Г 0.762 "1
^==^+S^L 1.257 J- F (^)^l 1.077 J-
таким образом, ньютоновский шаг очень хорош. Начиная с этого
момента метод Ньютона сходится ^-квадратично к л;«=(1, 1)".
Единственное осложнение в этой глобальной стратегии воз-
никает, когда матрица / почти вырождена в текущей точке Хс.
В таком случае мы не можем аккуратно вычислить ньютонов-
ское направление 5^==—J(xc)~lF(Xc), и гессиан модели
J{xc)TJ{xc) является почти вырожденным. Для выявления этой
ситуации выполняется Q^-разложение матрицы /(хс), и если
матрица R не вырождена, то оценивается ее число обусловлен-
ности по алгоритму АЗ.3.1. Если R вырождена или оценка ее
числа обусловленности больше, чем macheps-1/2, то произво-
дится возмущение квадратичной модели, так что
где
ifi, (х, + s) == ^- F (ХсУ F (х,) + (/ (XcY F (х,)У s + } s^s,
Нс==1 (xf J {Xc) + (га • macheps)"2 fl / (х^ J (x,) ||i • /.
(Число обусловленности матрицы Не есть величина порядка
macheps-172. Более точное обоснование имеется в упр. 23.) Как
известно из разд. 6.4, ньютоновский шаг в точку минимума этой
модели s^ = — Hc\J{.XcfF(xc} представляет собой решение за-
дачи
min me (х, + s) = || / (х,) s+F (х,) ^
seR"
ПРИ УСЛОВИИ II 5 И 2 ^ б
при некотором б > 0. Он также является направлением спуска
для / (х) == -„ || F (х) \\2,. Поэтому мы предпочитаем вместо этого
модифицированного ньютоновского шага использовать некото-
186 Гл. 6. Глобально сходящиеся модификации
рое s =—J(хс)^?'(Хс), которое бы получалось на основе воз-
мущенного значения J {Хс) Q^-разложения матрицы /{Хс}. Даль-
нейшее обсуждение этого шага можно найти в упр. 24.
В драйвере D6.1.3 можно увидеть наши принципы использо-
вания глобальных алгоритмов безусловной минимизации для ре-
шения систем нелинейных уравнений. В начале каждой итерации
алгоритмом А6.5.1 вычисляется Qc^c-разложение для /(Хс) и
оценивается число обусловленности матрицы Re. Если оценка
числа обусловленности меньше, чем macheps-1/2, то в нем вы-
числяется ньютоновский шаг —J {Xc)~lF{Xc), в противном случае
вычисляется описанный выше возмущенный ньютоновский шаг.
Затем по выбору пользователя драйвером вызывается алгоритм
линейного поиска, поиска вдоль кривой с двойным изломом или
локально ограниченного оптимального шага. Для всех глобаль-
ных алгоритмов требуется значение Vf(xc)=J(xc}TF(xc), кото-
рое также вычисляется алгоритмом D6.3.1. Кроме того, в алго-
ритмах доверительной области требуется разложение Холес-
ского LcZJ для Не = J(Xc)TJ(Xc) (за исключением случая, когда
в Не внесено описанное выше возмущение). Поскольку J(Xc)=
= QcRc, отсюда сразу же получаем La==Rl. И наконец, все
наши алгоритмы решения систем нелинейных уравнений реали-
зованы с использованием диагональной матрицы Dp для мас-
штабирования F (х), рассмотренного в разд. 7.2. Это приводит
к тому, что
f(x)=-^\\DpF(x}^, ^f(x}=J(x}TD],F(x), Н == J (xf DpJ (х).
Имеется один важный случай, в котором эти глобальные
алгоритмы решения систем нелинейных уравнений могут потер-
петь неудачу. Это происходит, когда точка локального мини-
мума f (х) =-п-\\ F (х) \\~^ не является корнем F(x) (см. рис. 6.5.1).
Процедура глобальной минимизации, стартующая вблизи от та-
кой точки, может сойтись к ней'). Не много можно сделать в
такой ситуации сверх того, чтобы сообщить пользователю о слу-
чившемся и предложить ему попытаться начать счет заново
вблизи корня F(x}, если, конечно, это возможно. Процедура
останова для нелинейных уравнений (алгоритм А7.2.3) выяв-
ляет эту ситуацию и вырабатывает такое сообщение. В настоя-
щее время проводятся исследования по созданию методов, ко-
торые могли бы сами продолжить счет из таких точек локаль-
ного минимума [см. Алговер и Джордж (1980) и Зирилли
(1982)].
') Одним из признаков этого является вырожденность матрицы J(Xc) (см.
упр. 17). — Прим. пе рев.
6.6. Упражнения 187
6.6. УПРАЖНЕНИЯ
1. Пусть f (х) =3л^+ 2-с^з + -"I. Хц=(1, I)7'. Что является направле-
нием наискорейшего спуска для / в Хо? Будет ли (1, —I)7' направлением
спуска?
2. Покажите, что для положительно определенной квадратичной функции
f(xit-[-s) = g^s +—s^^x^s шаг наискорейшего спуска из Xi, задается ра-
Zi
венством (6.2.5).
3. Задано с е (О, 1). Обобщите пример 6.2.2. на случай, когда последо-
вательность точек, вырабатываемая алгоритмом наискорейшего спуска из
определенной точки Хо, удовлетворяет соотношению II Xk+i — л"» II ==
==с\\х„—х^\\, fe=0, I, ....
4. Пусть f(x} = х2. Покажите, что бесконечная последовательность точек
xi = (—1)'(1-)-2-'), f == О, 1, ..., изображенная на рис. 6.3.2, не удовлетво-
ряет условию (6.3.3), каково бы ни было к > 0.
5. Пусть f(x) = х2. Покажите, что бесконечная последовательность точек
Xi == 1 + 2~1, ('==0, 1, .... допускается условием (6.3.3) при любом а ^—,
^
но запрещается условием (6.3.4), каково бы ни было (3 > 0.
6. Покажите, что если f(x) является положительно определенной квадра-
тичной функцией, то ньютоновский шаг из произвольного Xk e R" удовлетво-
ряет условию (6.3.3) при а^--- и (6.3.4) при любом |3 > 0.
7. Докажите, что если (6.3.4) заменить на
^fe+l)>^)+ l^(V(^+l -^)- P s ("• 1).
то теоремы 6.3.2 и 6.3.3 останутся в силе, и докажите, что если, кроме того,
Р > -„-, то также остается справедливой и теорема 6.3.4. Это представляет
собой условие Гольдстейна в его первоначальном виде.
8. Пусть f {х} = х^-\- -с|, х^= (1, I)7' и направление поиска рс задается
ньютоновским шагом. Что будет представлять собой х+, если использовать:
(a) ньютоновский шаг;
(b) алгоритм линейного поиска А6.3.1;
(c) алгоритм «идеального линейного поиска», полагающий х+ равным
точке минимума f(x) в направлении рс из XcJ [Ответьте на (с) приближенно.]
9. Пусть f(x) =—л:^+xj, JCg == (1, l)7. Каково точное решение (6.4.1)
л.
при 6=2? А при 6==—? [Указание: во второй части вопроса попробуйте
взять ц = 1.]
10. Докажите, что локально ограниченная оптимальная кривая s(p,), изо-
браженная на рис. 6.4.2, не обязательно является плоской кривой. Для этого
постройте простой трехмерный пример, в котором Хс и какие-либо три точки
кривой не лежат в одной плоскости. [Достаточно рассмотреть /(-»")= х^ +
+2л:|+з4]
11. Пусть матрица Н е ^пхп симметрична и положительно определена
и Vi, ..., Vn есть ортонормированный базис собственных векторов для Н,
188 Гл. 6. Глобально сходящиеся модификации
которым соответствуют собственные значения Ki, ..
ц S& О и
Кп. Покажите, что для
имеет место соотношение
п
(^+,/)-g=^(-^)^.
Как это связано с моделью mc(}i) для II (Я + Ц/)"'^ Ч
алгоритме локально ограниченного оптимального шага?
- б, используемой в
12. Пусть Н v. g заданы, как в упр. 11. Для у, ^ 0 определим s((i) =
(Н-{-[11)~^ и ^(Ю = lls(H)ll2. Используя методику упр. 11 покажите,
что
Т) ((!)=-
sd^ff+l^r1^)
11 s (ц) Ц,
[Используя эту методику, вы можете также показать, что (d'/dii2)^^^) > О
для всех (А > 0, однако доказательство является громоздким.]
13. Пусть Ж =у^'+4 л:о=(1,1)7', g=7f(^), Я=72^). Вы-
числите точку Коши функции f из точки х» (см. разд. 6.4.2), а также точку
А? = Хо —(0.8у + 0.2) Я-*^, которая используется в алгоритме поиска вдоль
кривой с двойным изломом. Затем начертите кривую с двойным изломом и
укажите на ней значения Xi, соответствующие б = 1 и б =-,-.
14. Пусть матрица Н е R "х" симметрична и положительно определена,
geR". Докажите, что (gтg)'l ^ (gтHg) (gтH-^g). [Указание: положите
и == Hi/2g, v == Я-172^ и примените неравенство Коши—Шварца.]
15. Завершите выкладки в примере 6.4.5.
16. Пусть F(x) == (xi, 2хгУ, Ха == (1, I)7. Используя технику разд. 6.5,
ответьте, что представляет собой шаг «наискорейшего спуска» из Ху для си-
стемы F = О? Если бы все ваши шаги производились вдоль направлений на-
искорейшего спуска, то какую скорость сходимости к корню F вы бы ожи-
дали?
17. Пусть функция F: R"->R" непрерывно дифференцируема и х е R".
Предположим, что х является точкой локального минимума f (х) ^
^-J-F (х)7 F (х), но F(x) -^ 0. Вырождена ли матрица f[x)? Если 1(х)
?i
вырождена, то должно ли х быть точкой локального минимума f(x}?
18. Квадратичной моделью для F == 0, альтернативной к той, что исполь-
зовалась в глобальных алгоритмах разд. 6.5, служат первые три члена раз-
ложения в ряд Тейлора функции -n-\\.F (Хс + s) ||2. Покажите, что эта модель
имеет вид
те (Хс + s) = ' F (Хс)7' F (Хс) + [f (Xcf F (л-с)]7' s +
[ 1
+-sT I (Хс)7 I (Хс) + У ft (Хс) V'fi (Хс) s.
^ L—1 \
1-1
6.6. Упражнения 189
Как ее сравнить с моделью, используемой в разд. 6.5? Совпадает ли ньюто-
новский шаг для минимизации Шс(х) с ньютоновским шагом для F(x) = О?
Каково ваше мнение относительно достоинств этой модели по сравнению с
той, что использовалась в разд. 6.5? (Аналогичная ситуация, но с другими
выводами встречается при решении нелинейной задачи о наименьших квадра-
тах (см. гл. 10).)
19. Почему ньютоновский шаг из х» в примере 6.5.1 является плохим?
[Указание: что произошло бы, если х» было заменено на (2, е/6)1'^
^ (2, 0.45)г?]
20. Какой шаг был бы сделан из Хц в примере 6.5.1 с использованием
стратегии поиска вдоль кривой с двойным изломом (алгоритм А6.4.4) при
во=4?
21. Выясните, что представляет собой алгоритм сопряженных градиентов
для минимизации выпуклых квадратичных функций, и покажите, что лома-
ная с N = х, есть результат применения метода сопряженных градиентов
к тс(х) в подпространстве, натянутом на направление наискорейшего спуска
и ньютоновское направление.
22. Один из часто упоминаемых недостатков алгоритма поиска вдоль
ломаной заключается в ограниченности его шагов тем, что они на каждой
итерации должны лежать в двумерном подпространстве, натянутом на на-
правление наискорейшего спуска и ньютоновское направление. Предложите
на базе упр. 21 способы смягчения остроты этих критических замечаний [см.
также Штайхауг (1981)].
23. Пусть / е [эгехп вырождена. Покажите, что
-——щ < ха (/г/ + (п • macheps)"2 || /г/ Ц,/) - 1 <
п (macheps)
(macheps)'/2
[Указание: воспользуйтесь (3.1.13) и теоремой 3.5.7.] Обобщите это неравен-
ство на случай, когда Kt(J) Ss= macheps""172.
24. Пусть вектор F е R" является ненулевым и матрица / е R"^ вы-
рождена. Другим шагом, предложенным для решения нелинейных уравнений,
является решение s задачи
minHsfl,: s есть решение^для min [| F + Is U. (6.6.1)
5 S К
Как было показано в разд. 3.6, решением (6.6.1) является s = —I'^F, где
/+ есть матрица, псевдообратная к /. Покажите, что при малых к > 0 этот
шаг аналогичен § = —(/г/ + а/)"1/7/7, доказав для этого, что:
(a) lim (^r^+a/)-l/г=^+;
а->+0
(b) для любых а > 0 и v е R" как (/г/+ а/)"1/7'», так и У4'!) перпен-
дикулярны ко всем векторам w из аннулирующего подпространства мат-
рицы /.
25. Глобальная сходимость алгоритмов доверительной области с линей-
ным поиском, описанных в разд. 6.3.2, 6.4.1 и 6.4.2, не вытекает непосред-
ственно из теории, имеющейся в разд. 6.3.1, так как ни один из этих алго-
ритмов не обеспечивает выполнение условия (6.3.4). Тем не менее теорети-
чески такой же эффект дают имеющиеся в алгоритмах границы каждой
регулировки параметра линейного поиска К или радиуса доверительной об-
ласти бс. Доказательство того, что все рассмотренные нами алгоритмы имеют
глобальную сходимость, см. в работе Шульца, Шнабеля и Бирда (1982).
Критерии останова,
масштабирование и тестирование
В этой главе рассматриваются три вопроса, которые лежат в
стороне от основных математических рассуждении относитель-
но решения нелинейных уравнений и задач минимизации, од-
нако эти вопросы существенны для решения на ЭВМ реальных
задач. Первый состоит в том, как приспособиться к решению
задач, плохо обусловленных в том смысле, что зависимые или
независимые переменные сильно различаются по величине. Вто-
рой—как определять, когда останавливать итерационный ал-
горитм, работающий в условиях машинной арифметики. Тре-
тий—как отлаживать, тестировать и сравнивать нелинейные
алгоритмы.
7.1. МАСШТАБИРОВАНИЕ
Существенным моментом при решении многих реальных задач
является то, что некоторые зависимые или независимые пере-
менные могут сильно различаться по величине. Например, нам
могла бы встретиться задача минимизации, в которой первая
независимая переменная х\ лежит в области [102, 103] метров,
а вторая переменная ху, лежит в области [10-7, 10-6] секунд.
Эти области называются масштабами соответствующих пере-
менных. В настоящем разделе рассматривается влияние на
наши алгоритмы, оказываемое таким большим разбросом в
масштабах. Одним из мест, где масштабирование будет влиять
на работу наших алгоритмов, является вычисление величин, та-
ких, как ||д:+—Хс||2, которая использовалась в алгоритмах гл. 6.
В приведенном выше примере любое такое вычисление факти-
чески не будет учитывать значение второй переменной (время).
Однако существует очевидное средство: перемасштабировать
независимые переменные, т. е. изменить единицы их измерения.
Например, если изменить единицы измерения х\ на километры
и х,ч на микросекунды, то обе переменные будут иметь областью
7.1. Масштабирование 191
изменения [10-1, 1] и будет устранена проблема масштабов
при вычислении \\х+—Хс\\2- Заметим, что это соответствует за-
мене независимых переменных на х = DxX, где Dx есть диаго-
нальная матрица масштабирования вида
Dx= \
10
О
-з
О
106
(7.1.1)
Здесь возникает важный вопрос. Мы, скажем, преобразовали
переменные нашей задачи так, что х = DxX, или, в более общей
постановке, преобразовали пространство переменных так, что
х == Тх, где матрица ГеК"^ не вырождена, затем вычислили
глобальный шаг в пространстве новых переменных, а потом
произвели обратные преобразования. Будет ли результат этого
шага таким же, как и в случае, когда мы вычисляли его в про-
странстве старых переменных, используя ту же самую страте-
гию глобализации? Ответ довольно неожиданный: в отличие
от ньютоновского шага, который не подвержен влиянию этого
преобразования, направление наискорейшего спуска меняется,
так что на шаг линейного поиска вдоль ньютоновского направ-
ления не влияет изменение единиц измерения, тогда как шаг
алгоритма доверительной области может измениться.
Чтобы убедиться в этом, рассмотрим задачу минимизации
и обозначим х = Тх, f{x)=f(T~lx). Тогда, как нетрудно по-
казать,
Vf (х) = T-\f (х) '), : V'f (х) = Г-V/ Ос):Г-',
так что ньютоновский шаг и направление наискорейшего спуска
в пространстве новых переменных имеют вид2)
^ = - (Г-V/ (х) Г-')"' {T-^f (х)) = - T^f (х)-1 Vf (x},
^SD__^-T^^
или в пространстве старых переменных имеем
s^T-'s^-V'Wv^),
s50 = Ty's50 = —T-'T-^f (х} = - (Г^)-' V/ (х).
Эти выводы действительно находятся в рамках здравого смыс-
ла. Ньютоновский шаг приводит в точку с наименьшим значе-
нием квадратичной модели, которая не меняется с изменением
единиц измерения х. (Аналогично, в случае решения систем
') Условная запись Г-7' используется для обозначения (T~l)r.—Прим.
перев.
2) Здесь индексы N и SD есть сокращения от Newton и steepest-des-
cent. — Прим. перев.
/92 Гл. 7. Критерии останова
нелинейных уравнений ньютоновское направление остается не-
изменным при преобразовании независимых переменных.) Од-
нако определение того, какое из направлений считать направ-
лением «наискорейшего спуска», зависит от того, что понимать
под единичным шагом в каждом направлении. Говорить о на-
правлении наискорейшего спуска имеет смысл тогда, когда еди-
ничный шаг в направлении переменной xi имеет примерно та-
кую же относительную длину, что и единичный шаг в направ-
лении любой другой переменной х/.
По этим причинам наиболее предпочтительным решением
при масштабировании задач, как мы полагаем, будет выбор
пользователем таких единиц измерения в пространстве пере-
менных, чтобы каждая компонента вектора х имела приблизи-
тельно одну и ту же величину. Однако если это затруднительно,
то равносильный результат можно получить, преобразуя в ал-
горитме пространство переменных с помощью соответствующей
диагональной матрицы масштабирования Dx. Это есть та са-
мая стратегия масштабирования в пространстве независимых
переменных, которая реализована в наших алгоритмах. Все,
что должен сделать пользователь, это установить матрицу Dx
такой, чтобы она соответствовала желаемым изменениям еди-
ниц измерения, и тогда алгоритмы будут действовать так, как
если бы они работали в преобразованном пространстве пере-
менных. Алгоритмы все же записываются в исходном простран-
стве переменных, так что выражение типа \\х+—Хс\\ч принимает
вид \\Dx(x+ — Хс)\\а, а шаги наискорейшего спуска и криволи-
нейный принимают соответственно вид
x+=Xc—^Dx2Vf(,Xc)'
s{vt)=-{Hc+liD^~\f{x,-)
(см. упр. 3). Однако ньютоновское направление, как мы уже
видели, остается неизменным.
Положительная диагональная матрица масштабирования Dx
задается пользователем как входная информация простым за-
данием п значений typxi, /==1, ..., п, отражающих «харак-
терные» значения каждого х:. Затем алгоритмом устанавлива-
ется (Dx)a =(typ Xi)~1, при этом значения каждой из преобра-
зованных переменных Xi=(Dx)a Xi становятся порядка 1. Если
в нашем примере пользователь задал, скажем typA"i==103 и
typ.<2= 10-6, то Dx будет иметь вид (7.1.1). Если считается,
что нет необходимости в масштабировании л-„ то typ Xi должно
быть взято равным 1. Дальнейшие инструкции по выбору
typ Xi приведены в руководстве 2 приложения. Естественно, что
наши алгоритмы хранят в памяти не диагональную матрицу Dx,
а вектор Sx (5 означает масштаб), где (Sx)i =={Dx)u =
=(typx,)-1.
7.1. Масштабирование 193
Приведенной выше стратегии не всегда оказывается доста-
точно. Например, имеются исключительные случаи, в которых
необходимо динамическое масштабирование, так как некото-
рые Xi в них меняются на много порядков величины. Это соот-*
ветствует точно такому же использованию матрицы Dx, как
и во всех наших алгоритмах, но она периодически перевычис-
ляется. Поскольку опыт, накопленный в этой области, мал,
мы не включили динамическое масштабирование в наши алго-
ритмы, несмотря на то что достаточно было бы добавить мо-
дуль, производящий периодическое перевычисление Dx с учетом -.
результатов итерации алгоритма D6.1.1 или D6.1.3.
Пример, иллюстрирующий важность учета масштабов неза-
висимых переменных, приведен ниже.
Пример 7.1.1. Распространенной тестовой задачей для алго-
ритмов минимизации является функция Розенброка с линиями
уровня в форме банана
(7.1.2)
которая имеет минимум в х»=(1,1)7". Двумя типичными на-
чальными точками являются хо== (—1.2, I)7'nxo=(6.S9,—0.221)7'.
Эта задача хорошо масштабирована, но при к =т^ 1 масштабы
переменных могут быть ухудшены подстановкой в (7.1.2) v.x\
вместо х\ и ^2/<х вместо хч, что в результате даст
f (х) = f (а^„ ^) == 100 ((axf - ^-)2 - (1 - ax,)2,
^(W-
Это соответствует преобразованию
- [± 01
х== а \х.
L 0 cJ
Если приведенные в приложении алгоритмы минимизации при-
менить к f(x), начиная из хо=(—1.2/(х,, а)7 и хо = (6.39/к,
а(—0.221))'', воспользоваться при этом аналитическими произ-
водными, «криволинейным» шагом глобализации и параметра-
ми'), значения которых заданы по умолчанию, а также прене-
бречь масштабами переменных, положив typxi == typ х^= 1,то
требуемое для сходимости число итераций при различных зна-
') В оригинале—tolerance, что означает допуск, допустимое отклонение
от чего-либо. Под этим термином подразумеваются задаваемые пользовате-
лем параметры алгоритмов, не всегда имеющие смысл допуска. Сокращение
tol присутствует в именах многих параметров. — Прим. перев.
Зак. 660
194 Гл. 7. Критерии останова
чениях ос, имеет следующий вид (звездочка указывает на отсут-
ствие сходимости после 150 итераций):
Итерации из Итерации из
,vo -- (- 1.2/«, й)7' Хо = (6.39/а, а( - 0.22I))7'
0.01 150 + * 1504- '
0.1 94 47
1 24 29
10 52 48
100 150 + * ! 50 + *
= 1/К и typxa^ct, то во всех
точности такая же, что и для
что значения х преобразуются
Однако если положить typ-ti
случаях выдача программы в
я==1, за исключением того,
с помощью
•°
L о raj
["
L о
Необходимо также рассмотреть масштабы зависимых пере-
менных. В задачах минимизации масштаб целевой функции f
имеет значение только в критериях останова, рассматриваемых
в разд. 7.2. Во всех других вычислениях, таких, как проверка
f(x+), W], то
условие (7.2.1) может оказаться слишком строгим. Кроме того,
если х неудачно масштабировано, например Xie[106, 107] и
Хч<= [10-', I], то (7.2.1), видимо, будет учитывать переменные
неодинаковым образом. Обычно используют неравенство
Iv^^V^^r'Vf^l^e, (7.2.2)
7»
196 Гл. 7. Критерии останова
инвариантное относительно любого линейного преобразования
независимых переменных и поэтому не зависящее от масшта-
бирования х. Однако оно все же зависит от масштабирования f.
Более непосредственная модификация (7.2.1) состоит в опреде-
лении относительного градиента функции f в х по формуле
relgrad (x)^ ••
Относительная скорость изменения f
Относительная скорость f(x+ изменения бе;) - / (х) xl ^f(x),Xi
fW
6->Q 6 ~^i fW
(7.2.3)
и в проверке неравенства
|| relgrad (^)IL1. Действительно, если Sc Ф 0, то суще-
ствует п(п— 1)-мерное аффинное подпространство матриц,
206 Гл. 8. Методы секущих для решения систем
удовлетворяющих (8.1.3). Построение удачной аппроксимации
по секущим состоит в нахождении подходящего способа выбора
среди этих возможностей. Было бы логично, чтобы этот выбор
расширял набор свойств аппроксимации якобиана Л+ или об-
легчал бы его использование в квазиньютоновском алгоритме.
Видимо, наиболее очевидная стратегия состоит в требова-
нии, чтобы модель (8.1.1) интерполировала F(x) также в не-
которых других предыдущих точках, т. е.
F{x-i)=F(x+)+A+(x-i-x+).
Это приводит к равенствам
A+s-i=y-i, i=\,...,m, (8.1.4)
где
s-iAx-i-x+, y-iAF(.x-i)-F{x+).
Если т == п ~ 1 и Sc, s-i, ..., s-(n-i) линейно независимы, то
п уравнений') (8.1.3) и (8.1.4) однозначно определяют Л+.
К сожалению, это—та самая стратегия, о которой упомина-
лось в предисловии к данной главе и которая имеет /"-порядок,
равный наибольшему корню уравнения /-"+1—г"—1=0, но на
практике она не приводит к успеху. Одна из трудностей со-
стоит в том, что направления Sc,s-i, ..., s-(yi-i) стремятся к ли-
нейно зависимым или близки к этому. Это делает вычисле-
ние Л+ плохо обусловленной вычислительной задачей. Более
того, такая стратегия требует дополнительно га2 ячеек памяти.
Подход, приводящий к удачной аппроксимации, состоит
совсем в другом. Мы видим, что кроме соотношения секущих
у нас нет никакой новой информации ни о матрице Якоби, ни
о модели, так что желательно сохранить как можно больше из
того, что уже имеется. Поэтому будем выбирать Л+, стремясь
минимизировать изменение в аффинной модели при условии
выполнения равенства Л+5с==г/с. Разность между новой и ста-
рой аффинными моделями для любого xeR" равна
М^ (х) - М, (х} == F (л:+) + Л+ (х - х+) - F (л,) - А,(х - х,) =
== F (х+) - F (х,) - Л+ (л:+ - х,} + (Л., - Л,) (х - х,} ==
=г= (Л+ — Лс) {х — Хс),
где в последнем равенстве использовано соотношение секущих
(8.1.2). Теперь для любого х<= R" представим
х — Хс == asc + /,
где f's == 0. Тогда выражение, которое необходимо минимизи-
ровать, примет вид
М+ (х) - М, (х) = а (Л+ - Л,) s, + (Л+ - Л,) /.
') Эти п уравнений образуют я2 скалярных уравнений относительно л2
скалярных неизвестных, элементов матрицы Л+.—Прим. перев.
8.1. Метод Бройдена 207
У нас нет никакой возможности влиять на величину первого
члена в правой части, так как из соотношения секущих следует
(Л+—Ac)sc=yc—AcSc. Однако можно обратить в нуль вто-
рой член для всех х е R", выбрав Л+ так, чтобы (Л+—Лс)г=0
для всех /, ортогональных к Sc. Это требует, чтобы Л+—Ас
было матрицей ранга один вида us^, и е R". Теперь, для того
чтобы удовлетворить соотношению секущих, которое эквива-
лентно {A+—Ac)Sc==yc—AcSc, и должно равняться^—
— A^s^/s^s^. Это дает формулу
(.Ус
Acsc) '•
(8.1.5)
которая отвечает минимальной поправке в аффинной модели и
удовлетворяет равенству A+Sc == г/с.
Формула (8.1.5) была предложена в 1965 г. С. Бройденом,
и мы будем называть ее формулой пересчета Бройдена, или,
проще, формулой секущих. Слово пересчет указывает на то,
что мы не аппроксимируем полностью /(х+), а скорее пересчи-
тываем аппроксимацию Ас матрицы f(xc) в аппроксимацию Л+
матрицы J(x+). Это свойство пересчета присуще всем удачным
способам аппроксимации по секущим.
Приведенный вывод формулы соответствует тому способу,
с помощью которого ее вывел Бройден, но его можно сделать
гораздо более строгим. В лемме 8.1.1 будет показано, что фор-
мула пересчета Бройдена отвечает минимальной поправке мат-
рицы Ас, удовлетворяющей равенству Л+Sc == г/с, где эта по-
правка Л+—Ас измеряется в норме Фробениуса. После дока-
зательства мы прокомментируем выбор нормы. Далее будет
полезно еще одно обозначение:
Q(y,s)={B.eR"x": Bs==y}.
Оно означает, что Q(y,s) есть множество матриц, которые дей-
ствуют как частное от деления у на s.
Лемма 8.1.1. Пусть Л е R^", s.t/sR", s ф 0. Пусть мат-
ричные нормы 11-11 и HI • II) таковы, что
||В.С|К||В||. 1ЦСЦ1
для любых В, С е R" х ", и
II .,.,т III -,-i
(8.1.6)
(8.1.7)
208 Гл. 8. Методы секущих для решения систем
для любого ненулевого oeR". Тогда, каковы бы ни были эти
нормы, решением задачи
является
min |[ В— А ||
В е Q [у. s)
„ „ | (у — As) s7'
/4—-Л+——-J-——.
(8.1.8)
(8.1.9)
В частности, (8.1.9) будет решением задачи (8.1.8), когда ]] • ||
есть матричная /а-норма, причем (8.1.9)—единственное реше-
ние задачи (8.1.8), если || • || есть норма Фробениуса.
Доказательство. Пусть В s Q(y,s}, тогда
\А,
А\\=\
(y-As)sт
(В — A) ss7'
<\\В •А\
Если в качестве || • || и 11 • ||| взять /з-норму матриц, то (8.1.6)
и (8.1.7) .следуют соответственно из (3.1.10) и (3.1.17). Если
11-11 и HI • ||j обозначает соответственно норму Фробениуса и
/2-норму матриц, то (8.1.6) и (8.1.7) вытекает из (3.1.15) и
(3.1.17). Для того чтобы читатель убедился в единственности
решения (8.1.9) задачи (8.1.8) в норме Фробениуса, напомним,
что эта норма строго выпукла, так как она является векторной
/2-нормой матрицы, представленной в виде ^-мерного вектора.
Поскольку множество Q(y,s), как аффинное подмножество
множества ^^•"•{или R"'), является выпуклым, то решение за-
дачи (8.1.8) единственно в любой строго выпуклой норме. D
Использование нормы Фробениуса в лемме 8.1.1 разумно,
потому что она способна отражать изменение в любой компо-
ненте аппроксимации якобиана. Такая операторная норма, как
/2-норма, меньше подходит для этих целей. В самом деле, ин-
тересное упражнение—показать, что (8.1.8) может иметь в
операторной /а-норме целое множество решений, причем неко-
торые из них явно менее желательны, нежели пересчет по Брой-
дену (см. упр. 2). Это к тому же указывает на непригодность
использования операторной нормы в (8.1.8).
Теперь, когда мы дополнили нашу аффинную модель (8.1.1)
выбором А+, очевидный способ использования этого состоит
в выборе корня такой модели в качестве следующей итерации.
Это просто иной способ сказать, что в методе Ньютона f(x+)
заменяется на А+. Получающийся в результате алгоритм имеет
вид
8.1. Метод Бройдена 209
Алгоритм 8.1.2. Метод Бройдена.
Заданы: F: R»->R", ^sR", AosR"^.
ioTk==0, 1, ... do:
Решить Л^ == — F (Xk) относительно Sfc',
Xk+\ = Xk + Sk',
yk=F(xk+\)—F(xk};
л _. i (^-л^)5!
(8.1.10)
Будем называть данный метод методом секущих. В этом
месте у читателя могут зародиться серьезные сомнения—а ра-
ботает ли он? На самом деле локально он работает довольно
хорошо, что будет продемонстрировано ниже при рассмотрении
его поведения на той же задаче, что решалась методом Нью-
тона в разд. 5.1. Конечно, для сходимости из некоторых началь-
ных точек он, как и метод Ньютона, может нуждаться в ис-
пользовании способов, описанных в гл. 6.
В алгоритме 8.1.1 имеется одна неопределенность: как вы-
бирать начальную аппроксимацию Ло матрицы /(^о)? На прак-
тике для обеспечения хорошего начала итерационного процесса
здесь единственный раз используются конечные разности. Это
также делает более привлекательным свойство минимально-
сти поправки, характерное для формулы пересчета Бройдена.
В примере 8.1.3 для простоты предполагается, что Ао=1(хц).
Пример 8.1.3. Пусть
F(x)=\
л:, + х-г — 3
IL ^ + ^ - 9
Эта функция имеет корни (О, З)7 и (3, О)7'. Возьмем Xo=(l, 5)7
и воспользуемся алгоритмом 8.1.2 с
Тогда
A,=J{^=.[\ ^].
W=[,73} ^=-Ao-F(.o)=[:;^],
_ i Г-0.6251 Г 0 -1
xi-^o+so-|_ gg^J, f №'-[453125 J-
1-Г \ \ 1
JL 0.375 8.625 J'
-0.625
3.625
Следовательно, (8.1.10) дает
О О
.625 -1.375
210 Гл. 8. Методы секущих для решения систем
Читатель может убедиться, что AiSo=yo, Отметим, что
^^^[-i.25 7.25]'
Таким образом, матрица Ai не очень близка к J(x\}. На сле-
дующей итерации
--^Ч-0:5499} ————+-[-S].
^Но^бб]- ^[-о^ 8.т]
Матрица Лз опять не очень близка к
/(^)==['
Г 0.549-1 . Г -0.076
4-0.549} ^=^+^-[ з.076
1 1 1
-0.152 6.152J'
- О 1 \ 1 11
. 0.466 J' "2^[ -0,799 8.20 iJ"
Полностью последовательности итераций, вырабатываемых ме-
тодом Бройдена и, для сравнения методом Ньютона, приведены
ниже. Для обоих методов (Xk)i +(xft)2 ==3 при k^sl, поэтому
ниже приводятся только значения (xk}i.
Метод Бройдена Метод Ньютона
(1, 5f •^0 (1,5)7'
3.625 •^1 3.625
3.0757575757575 ^2 3.0919117647059
3.0127942681679 Хз 3.0026533419372
3.0003138243387 Х4 3.0000023425973
3.0000013325618 •V5 3.0000000000018
3.0000000001394 Хб 3.0
3.0 XJ
Пример 8.1.3 является типичным для поведения метода Брой-
дена в локальной окрестности корня. Если какие-либо из ком-
понент функции F(x) линейны, как, скажем, fi(x) в нашем при-
мере, то соответствующие строки аппроксимации якобиана бу-
дут иметь точное значение при k ~^ 0, а отвечающие им
компоненты функции F{xk) будут равны нулю при k~^ 1 (см.
упр. 4). Строки в А/г, соответствующие нелинейным компонен-
там функции F(Xk), могут оказаться не очень близкими к стро-
кам якобиана, однако соотношение секущих все же содержит
достаточно хорошую информацию, обеспечивающую быструю
сходимость к корню. В разд. 8.2 мы покажем, что скорость
сходимости алгоритма <7-сверхлинейна, но не ^-квадратична.
8.2. Анализ локальной сходимости метода Бройдена 211
8.2. АНАЛИЗ ЛОКАЛЬНОЙ СХОДИМОСТИ
МЕТОДА БРОЙДЕНА
В этом разделе исследуются свойства локальной сходимости
метода Бройдена. Будет показано, что если хо достаточно близко
к корню JC», где матрица J(x,) не вырождена, и если Ло доста-
точно близка к J(xo}, то последовательность итераций {х/г}
сходится ^-сверхлинейно к х^. Доказательство представляет со-
бой частный случай более общего способа доказательства, ко-
торый применяется также и к методам секущих для задач ми-
нимизации. Здесь излагается лишь частный случай, так как он
проще и легче для понимания, чем общий способ, и, кроме того,
он дает представление о том, как работают многомерные ме-
тоды секущих. В гл. 9 результаты, касающиеся сходимости, бу-
дут сформулированы без доказательства. Читателю, заинтере-
сованному в более глубокой проработке материала, рекомен-
дуется обратиться к работе Бройдена, Дэнниса и Морэ (1973)
или Дэнниса и Уолкера (1981).
Мы разъясняем наш подход, используя фактически тот же
простой анализ, который использовался при исследовании ме-
тода секущих в разд. 2.6 и метода Ньютона в разд. 5.2. Если
F(^)==0, то в результате итерации
имеем
или
Xk+i==Xk— Ak'F^Xk)
Xk+i — х, = Xk — x, — Ль' {F {xk) — F (л;.))
Ak (Xk+i — x.) = Ak {Xk —x^—F (Xk) + F {x,).
Определение е^^х^—x^, а также прибавление и вычитание
J{x^)ek к правой части приведенного выше равенства, дает
AkCk+i = [- F (Xk) + F (л:.) + / (A;.) ek\ + {Ak - J М е„. (8.2.1)
При наших традиционных предположениях
|| - F {х^ + F (х.) + / (х.) е„ II = О (|| е, ||2),
поэтому ключом к анализу локальной сходимости метода Брой-
дена будет анализ второго слагаемого [A/s—J(Xf)}ek- Сначала
мы докажем локальную (/-линейную сходимость {е&} к нулю,
показав, что последовательность {||Л<;—J(x^) ||} остается огра-
ниченной сверху некоторой подходящей постоянной. Соотно-
шение
lim ||Afe-/(x.)||=0
ft-» 00
212 Гл. 8. Методы секущих для решения систем
может и не выполняться, тем не менее мы докажем локальную
у-сверхлинейную сходимость, показав, что
lim
k->00
=0.
Отсюда следует, что шаг метода секущих — Ak \? (xis) стремится
к ньютоновскому шагу —J{xk)~lF{xk) по величине и по направ-
лению. Это есть именно то, что требуется от аппроксимации
якобиана.
Начнем с вопроса о том, насколько хорошей ожидается за-
даваемая формулой пересчета Бройдена аппроксимация Л+ ма-
трицы 7(х»). Если F(x} есть аффинная функция с якобианом /,
то / будет всегда удовлетворять соотношению секущих, т. е.
/sQ(t/c, Sc) (см. упр. 5). Поскольку Л+ является ближайшим
элементом в Q(yc,Sc) к Ас в норме Фробениуса, то по теореме
Пифагора имеем
•nfp,
т. е. ||Л+—/ll/'^IIAc—J\\p (рис. 8.2.1). Следовательно, в аф-
финном случае формула пересчета Бройдена не может ухудшить
норму Фробениуса погрешности аппроксимации якобиана. К со-
жалению, это необязательно имеет место для нелинейных функ-
ций. Например, могло бы случиться, что Лс==^(д"*), но AcSc =7^
=т^ Ус, и тогда [|Л+—/(х*),|| > ||Лс—/(л'*)||. В свете такого при-
мера трудно себе представить, какой полезный результат здесь
можно получить относительно того, насколько хорошо Лд ап-
проксимирует /(х,). Все, что можно здесь сделать, это показать
в лемме 8.2.1, что если аппроксимация становится хуже, то она
ухудшается довольно медленно, в той достаточной для нас сте-
пени, чтобы доказать сходимость {xk} к А'«.
Лемма 8.2.1. Пусть D s R" есть открытое выпуклое мно-
жество, содержащее л:с и х^, причем Хс =т^ х^. Пусть F: R"->R",
f (х) е Lipy (D), Ар s R"x ", и Л+ определено согласно (8.1.5).
,/ ^
Рис. 8.2.1. Метод Бройдена в аффинном случае.
8.2. Анализ локальной сходимости метода Бройдена 213
Тогда как в норме Фробениуса, так и в 1унорме матриц, имеет
место
II Л+ - / (х+) || < || Л, - / (^) || + ^ II Лч- - х, \\,. (8.2.2)
Кроме того, если x,^D и J{x) удовлетворяет ослабленному
условию Липшица:
II/ (х) - J (х.) || < у II х - х, || для всех х е D,
то
II Л+ - J (х.) || < || Л, - / (х,) || + ^ (1| х+ - х, \\, + || х, - х. ||,). (8.2.3)
Доказательство. Докажем неравенство (8.2.3), которым в
дальнейшем мы и воспользуемся. Аналогично доказывается
(8.2.2).
Пусть f,A,J{x^. Вычитая /, из обеих частей (8.1.5), имеем
=л„
, , (^Л - АЛ) ^ {Ус - •^с) ^
^s
^"с
S S7'
"с^с
'•'.I Г. I""
Г/ s^ 1 i (^--^л)
s^
"c"c
г
^c
' — ~f— т ———г——
L s's„ J s,s,
= (Ас -/.)/-
(8.2.4)
Теперь для нормы Фробениуса и /2-нормы матриц на основании
(3.1.15), (3.1.10) и (3.1.17) получаем
1|Л,-/.||<||Л.-^.||||/-^||+"УC-/•SC«2
Использование равенства
s^
"с "с
[так как / — (^с5?/5^) представляет собой матрицу проектиро-
вания в евклидовой норме] и неравенства
II Ус - ^ \\, <^ (II ^ - х, \\, +1| х, - х, ||з) || s, IL,
вытекающего из леммы 4.1.15, завершает доказательство. D
Неравенства (8.2.2) и (8.2.3) служат примером свойства,
названного ограниченным ухудшением. Это означает, что если
аппроксимация якобиана ухудшается, то весьма умеренно. Брой-
ден, Дэннис и Морэ (1973) показали, что любой квазиньюто-
новский алгоритм, в котором способ аппроксимации якобиана
214 Гл. 8. Методы секущих для решения систем
удовлетворяет этому свойству, локально q-линейно сходится к
корню х», где J(x#) не вырождено. В теореме 8.2.2 приводится
частный случай их доказательства, соответствующий методу
Бройдена. Получив затем более тонкую оценку нормы выра-
жения
(Л,-/.))/-^-] -
•- •>с с -J
в (8.2.4), покажем, что метод Бройдена является локально
(/-сверхлинейно сходящимся.
В оставшейся части раздела предполагается, что x/s+i^Xk,
k = О, 1, ... . Поскольку, как показано ниже, наши предполо-
жения гарантируют невырожденность А/г, k == О, 1, .... и по-
скольку x/t+i — Xk= — Ak^Fixic), то предположение о том, что
x'k+i?=Xk, эквивалентно предположению о том, что F(Xk)?^0,
k=0, I, ... . Следовательно, из рассмотрения исключается про-
стой случай, когда алгоритм находит корень точно, т. е. за ко-
нечное число шагов.
Теорема 8.2.2. Пусть выполнены все предположения теоремы
5.2.1. Существуют положительные постоянные е и б, такие, что
если ||хо—.xJla s^ е и ||Ло—/(х*) Ik ^ б, то последовательность
{xk}, генерируемая алгоритмом 8.1.2, корректно определена и
сходится <7-сверхлинейно к х#. Если предположить лишь, что
{Ak} удовлетворяет (8.2.3), то {х/г} сходится к х» по меньшей
мере <7-линейно.
Доказательство. Пусть || • || обозначает векторную и матрич-
ную 1ч-нормы, ^Ад^—д"., /.А/(л",), |3 ^/(л:,)"' ||. Выберем
е и 6 так, чтобы
6р6<1, (8.2.5)
Зуе<26. (8.2.6)
Доказательство локальной ^/-линейной сходимости будет со-
стоять в доказательстве по индукции неравенств
\Ak-JJ'^(2-2-k)6,
11^+1 II <11^1
(8.2.7)
(8.2.8)
для k = О, 1, ... . Если говорить вкратце, то первое неравенство
доказывается для каждого номера итерации с использованием
свойства ограниченного ухудшения (8.2.3), которое дает
11 Ak -JJ< II Л,-, - /. II + ^ (II ен II +11 е.-i ||). (8.2.9)
8.2. Анализ локальной сходимости метода Бройдена 215
Читатель может убедиться, что если
Zlle/11
1=0
равномерно ограничено сверху для любого k, то последователь-
ность {||Лй—/»||} будет ограничена сверху. Используя два пред-
положения индукции и (8.2.6), получаем (8.2.7). Затем нетрудно
доказать (8.2.8), используя (8.2.1), (8.2.7) и (8.2.5).
Для k = 0 неравенство (8.2.7) тривиально выполнено. До-
казательство (8.2.8) идентично доказательству шага индукции,
поэтому мы его здесь опускаем.
Теперь предположим, что (8.2.7) и (8.2.8) справедливы для
всех k=0, ..., f—1. Для k=i, согласно (8.2.9) и двум пред-
положениям индукции, имеем
(8.2.10)
Зу
|Л.-^JI<(2-2-(l-l))6+^||e,•-l||..
Из (8.2.8) и неравенства |[ео||^8 получаем
Це,-,!!^-"-0!!^!!^-"-1^
Подстановка этого соотношения в (8.2.10) и использование
(8.2.6) дает
||Л,-^J<(2-2-((-l))6+^в.2-(t-l><
< (2 - 2-(t-l) + 2-') 6 = (2 - 2-') б,
что подтверждает справедливость (8.2.7).
Для проверки (8.2.8) мы должны сначала показать, что Л,
обратимо, так что итерация корректно определена. Из нера-
венств ||/(х,)-Ч1 s?P, (8.2.7) и (8.2.5) следует, что
П^-Чл.-/.)»^
Отсюда по теореме 3.1.4 Ai не вырождено и
|Л,-/. ^^^-Об^рб^.
А71 <-
\}~
^. -
-зр-
2
(8.2.11)
Таким образом, xi+i корректно определено, и, согласно (8.2.1),
\\ew\\<\\AT\\[\\-F(x,)-{-F{x,)+J,e.\\+\\A,-J^\e^\\}. (8.2.12)
По лемме 4.1.12 имеем
|| - F (Xt) + F (^) + /.е< II < ^ilL .
Подстановка этого неравенства, (8.2.7) и (8.2.11) в (8.2.12) дает
11^,11<И^-К11+(2-2-')б]||^||. (8.2.13)
216 Гл. 8. Методы секущих для решения систем
Из неравенств (8.2.8), ||eol|^e и (8.2.6) имеем
-(W) 2-'б
что после подстановки в (8.2.13) дает
11^+1||<^р[4-2-'+2-2-']б||^||<Зрб||^||<1М,
где последнее неравенство вытекает из (8.2.5). Это доказывает
(8.2.8) и завершает доказательство (/-линейной сходимости. Мы
откладываем на время доказательство (7-сверхлинейной сходи-
мости и вернемся к нему позже в этом разделе. D
Мы доказали (/-линейную сходимость метода Бройдена, по-
казав, что свойство ограниченного ухудшения (8.2.3) обеспечи-
вает то, что величина ЦЛд—J(x^)\\ остается достаточно малой.
Заметим, что если все известное нам о последовательности
аппроксимаций {Лд.} якобиана сводилось к (8.2.3), то мы не
могли рассчитывать на большее, чем доказательство (7-линейной
сходимости, поскольку, например, аппроксимации Ak=Ay-^
^=I(x„), k==0, 1, ..., очевидно удовлетворяют (8.2.3), но, со-
гласно упр. 11 из гл. 5, получающийся в результате метод схо-
дится не быстрее, чем ^-линейно. Таким образом, та часть дока-
зательства теоремы 8.2.2, которая относится к у-линейной схо-
димости, представляет теоретический интерес отчасти потому,
что она показывает нам, насколько плохо мы можем аппрокси-
мировать якобиан и насколько в этом можно преуспеть. Тем не
менее ее реальная польза состоит в том, что она гарантирует
сходимость {xk} к х^, такую, что
00
Z 11^ II < 00.
fe=0
Это неравенство будет использовано при доказательстве ^-сверх-
линейной сходимости.
Как указывалось в начале этого раздела, достаточным для
(/-сверхлинейной сходимости метода секущих является условие
lim I'^-^l' ^o. (8.2.14)
fe->oo 11^11
На самом деле мы будем пользоваться им в несколько изме-
ненной форме. В лемме 8.2.3 показано, что если {xk} сходится
(7-сверхлинейно к х», то
lim -—„-=== 1,
^"oll^ll
где Sk=Xk+\—Xk и ek=Xk—x». Это наводит на мысль о том,
что можно заменить в (8.2.14) е/, на Sii и в результате по-преж-
8.2. Анализ локальной сходимости метода Бройдена 217
нему иметь достаточное условие <7-сверхлинейной сходимости
метода секущих. Это доказано в теореме 8.2.4. С помощью дан-
ного условия мы доказываем (/-сверхлинейную сходимость ме-
тода Бройдена.
Лемма 8.2.3. Пусть Xk'
дится (/-сверхлинейно к х«
lim
fe->00
; R", k = О, 1, ... . Если {Xk} cxo-
: R", то в любой норме ||-|1
Доказательство. Обозначим Sk==Xk+i—Xk, ek=Xk—х^. До-
казательство наглядно представляется следующим рисунком:
Ясно, что если
lim 1——1=0, то 1,т«^„
fe-»°o \\ek\\ fe-»°° 11е* II
1.
lim
fe->00
11^1
I eft I
Формальные выкладки дают
1Ы1-Ы1 <11 ^+^11 \\е =lim1„ &+i ek\
== limй->°° 11^11< limfe->°0
11^11 &->°° 11
=0.
Здесь последнее равенство есть определение -сверхлинейной
сходимости для случая, когда е<; •=/=• 0 при всех k. D
Заметим, что лемма 8.2.3 представляет также интерес и для
критерия останова в наших алгоритмах. Она показывает, что
как только алгоритм достигает по меньшей мере ^-сверхлиней-
ной сходимости, то любой критерий останова, использующий Sk,
по сути, эквивалентен тому же самому критерию, но использую-
щему ek, т. е. ту величину, которая представляет для нас реаль-
ный интерес.
Теорема 8.2.4 показывает, что соотношение (8.2.14) с заме-
ной Qk на s/г является необходимым и достаточным условием
<7-сверхлинейной сходимости квазиньютоновского метода.
Теорема 8.2.4 (Дэннис—Морэ, 1974). Пусть D ?= R" есть вы-
пуклое открытое множество, F: R"-*-R", /(л-)е Lipy(D), x«eD,
и матрица /(л:,) не вырождена. Пусть {Лд} есть последователь-
218 Гл. 8. Методы секущих для решения систем
ность невырожденных матриц в Rnx'г, и предположим для неко-
торого Хо s D, что последовательность точек, генерируемая фор-
мулой
(8.2.15)
остается в D и имеет место х/с ^?= х^ для любого k, а также, что
Um^-xx, xk = Xf- Пусть || • || есть какая-либо норма. Тогда {х/:}
сходится (/-сверхлинейно к х„ н Р(х#)==0 в том и только в том
случае, когда
|| (А,, — 1 (х,)) s. ||
lim-11—6——,, ' k" ==0, (8.2.16)
k^ \\h\\ '
где SkA^Xk+i—Xk.
Доказательство. Обозначим /*=/(.»:»), ek=Xk—л"*. Снача-
ла мы предположим, что имеет место (8.2.16), и покажем, что
F(x^}==0 и {Xk} сходится (/-сверхлинейно к хц.. Из (8.2.15) имеем
О == A„Sk + F {х^ == (Ak - /.) Sk+F (х„) + /.Sft,
поэтому
- F (Xk+i) = (Ak - /.) Sk + [- F (Xk+,) + F (Xk) + J.Sft], (8.2.17)
ll^ft+Qll^ll^ft-^ftll , \\-F{xk+l)+F{Ч')+^^\\ ^
||sJ| 5^ ||s, II "1 lie 11 ^
^- II (Ak /') sk II l V /II - || I ,1 -, 1|\ /on 1 0\
^ —«т"»— ' т\11 k \\ 1 \\ k+1"'' (0 • )
п k (1
где последнее неравенство вытекает из леммы 4.1.15. Исполь-
зование в (8.2.18) соотношений liiTi,,_^„J|e<;||= 0 и (8.2.16) дает
1,т1ф-1Д=0. (8.2.19)
&-»°° 11^11
Поскольку lim^^ II 5^(1== 0, то это означает, что
F(x,)=UmF(Xk)=0.
k-> 00
Согласно лемме 4.1.16, существуют а > 0 и ko'^0, такие, что
11 F (^й+i) || = || F (Xk+i) - F (x,) || > a 1| eft+, || (8.2.20)
для всех k'^ko. Комбинируя (8.2.19) и (8.2.20), получаем
О^Пт^^Ъпта",^^
ft-» 00
ft-» 00
fc-»», llsJI — ^ . ll < ii "
"ii^+ill .. ^ь
lim ~ .
ft-^.со 1+^
> lim ""•-^'l
ft-»- ll^ll+lf^ft+ill
8.2. Анализ локальной сходимости метода Бройдена 219
где rfe^Jleft+i |1/|| ей ||. Отсюда следует, что
lim г&==0.
fe->°0
Это завершает доказательство ^-сверхлинейной сходимости.
Настоящее доказательство того, что из ^-сверхлинейной схо-
димости и равенства Р(х^)=0 следует (8.2.16), почти полностью
повторяет в обратном порядке приведенные выше рассуждения.
Согласно лемме 4.1.16, существуют |3 > 0 и ka ^ 0, такие, что
ll^+OIKPII^+ill
для всех k ^ ko. Таким образом, (/-сверхлинейная сходимость
приводит к соотношениям
0= lim-
k->0°
,. llf(^+l)ll ,.„ 1
: lim —o-„—„—== lim д-
Pll^ll ft-»°° P
ft-» 00
I F (^+1)11 11^11 /о поп
—П—п—— • иТ-ТГ^0-2-2^
Поскольку lim^_^^]|Sfel|/||efe||= 1, то из леммы 8.2.3 и соотноше-
ний (8.2.21) вытекает справедливость (8.2.19). Из (8.2.17) и
леммы 4.1.15 окончательно получаем
•+
II ^fe-^)^ 11^ II77 (^+1)11
II "ft II
l^ft+l)
что совместно с (8.2.19) и соотношением lim^^||efe[|=0 дока-
зывает (8.2.16). a
Поскольку 1{х) непрерывно по Липшицу, нетрудно показать,
что лемма 8.2.4 остается в силе, если (8.2.16) заменить на
\(Ak-J_(xk)}^\_
(8.2.22)
=0.
lim Us и
ft->oo ||°й11
Это условие имеет интересную интерпретацию. Поскольку
Sft== — A^F^Xk}, то (8.2.22) эквивалентно тому, что
lim
ft-» 00
где s^ =—J(x.)~\ F(x^ есть ньютоновский шаг из хц. Таким
образом, необходимым и достаточным условием (/-сверхлинейной
сходимости метода секущих является то, что шаги метода секу-
щих стремятся по величине и по направлению к ньютоновским
шагам из тех же самых точек, о г> о с
Теперь мы завершим доказательство теоремы 8.2.2. Ьму пред-
шествует лемма, которая имеет методическое значение и исполь-
зуется в этом доказательстве.
220 Гл. 8. Методы секущих для решения систем
Лемма 8.2.5. Пусть имеются ненулевое s e R" и fsR"^,
а также пусть || • || обозначает векторную /а-норму. Тогда
I/ SST\\\ У 9 /lI.E'll^V/2
Ч7-^)!^^"^-^)) < (8•2•23a)
^'^-iraC-YI1)2 (8•2•28b)
Доказательство. Как отмечалось ранее, /—{ssт/sтs} есть
матрица проектирования в евклидовой норме. Таковой является
и матрица ssr/sтs. Поэтому по теореме Пифагора
imiHI^r+bf7-
II s- s II/? . . II V,
Так как
<^г
^Л|р
\Е
SS-
~Г~1 '•
s s \\р
\\Es\\
1И1
то это доказывает справедливость (8.2.23а). Поскольку
(а2 — (З2) '/г ^ а — р2/2й для любых ст ^ | р | > 0, то из (8.2.23а)
следует (8.2.23b). D
Завершение доказательства теоремы 8.2.2 {q-сверхлинейная
сходимость). Обозначим Ek=Ak—/*, и пусть |[-|| обозначает
векторную /2-норму. Согласно теореме 8.2.4, достаточным усло-
вием того, чтобы {xk} сходилось <7-сверхлинейно к д:„, служит
IIm "i^-».
ft->°° 1Ы1
(8.2.24)
Из (8.2.4) имеем
11^+il|^< ?,f/-^)|+
II \ 4^)1
SkS
(8.2.25)
В доказательстве леммы 8.2.1 было установлено, что
|| ^-/^Ч<^ (и. .ц+11 ^.ii).
II Vk \\F 2
Использование в (8.2.25) этого неравенства наряду с неравен-
ством || ek+i II s^ll 6^11/2, (8.2.8) и леммой 8.2.5 дает
II С' II /^" II 27 II li A fe ii l ' [1 /-, II
II ^+1 11^ < II ^ 11^ - , + ^- II ^ 11>
- II '-kW II "ft N
8.2. Анализ локальной сходимости метода Бройдена 221
ИЛИ
|?,s,||° Г Зу "i
^- < 2 || ^ 1|^ |i Ek \\p - 11 ?ft+i 11^ + — II е„ II . (8.2.26)
^11 1- 4 J
Из доказательства теоремы 8.2.2 имеем [l?&||^sS:26 для всех
- /г>0 и
00
Xll^ll<2e.
7г=0
Поэтому из (8.2.26) следует
|| E.s, ||9 Г Зу 1
^-^ ^ 46 Ц ^ \\, -1| fife+i [|^ + — II е„ II . (8.2.27)
ll^ll 1- 4 -•
Суммируя левые и правые части (8.2.27) по k==0, 1, ..., г,
получаем
^
4
II ^&
fe=0 "fell 1- ft=0 -'
<4б[||?oll^+lIe-]<46[б+^]• (8.2.28)
Поскольку (8.2.28) справедливо для любого i ^ 0, то сумма
\E.s
Е-
7=0 11°&1
конечна. Отсюда вытекает (8.2.24), что завершает доказатель-
ство. D
Приведем еще один пример, который иллюстрирует сходи-
мость метода Бройдена на полностью нелинейной задаче. Этот
пример используется нами как отправная точка, чтобы выяс-
нить, насколько близким оказывается в решении предельное
значение аппроксимации якобиана Л^ к самому якобиану У(х«).
Пример 8.2.6. Пусть
/ х\ + х2 - 2
Т~1 / \ s - ~
w==\ex^-[+x^-2
имеет корень х»==(1, 1)7". Ниже приведены последовательности
точек, генерируемых методом Бройдена и методом Ньютона из
-со =(1.5, 2У при AQ==J(xo) для метода Бройдена.
222 Гл. 8. Методы секущих для решения систем
Метод Бройдена Метод Ньютона
1.5 2.0 Л',| 1.5 2.0
0.8060692 1.457948 •00
Из '(8.2.30) и (8.2.31) получаем
lim (A^i = 1.5 и lim (A^22==7.5. a
fe->00 k->°°
Выводы леммы 8.2.7 в точности воспроизводятся на ЭВМ;
так, в примере 8.1.1 получено
/ 1 1 ^
л-в
1.5- Ю"0 7.5 + 10'
Легко обобщить доказательство леммы 8.2.7 и показать, что
lim Ak^J (л:.)
й->°°
почти для любой частично линейной системы уравнений, кото-
рая решается с помощью метода Бройдена. Упражнение 11 слу-
жит примером полностью нелинейной системы уравнений, для
которой {xk} сходится к корню Хц, однако предельное значение
Ak существенно отличается от J(x^).
Резюмируя, заметим, что, когда метод Бройдена сходится
^-сверхлинейно к корню х», нельзя предполагать, что последняя
из аппроксимаций якобиана Лд будет приблизительно равняться
/(^*), хотя часто это именно так.
Если мы могли бы сказать, насколько быстро {||?&Sft||/||sft||}
приближается к 0, то могли бы сказать больше о порядке схо-
димости метода Бройдена. Наиболее близким к такому резуль-
тату является доказательство, данное Гэем (1979). Он доказал,
что для любой аффинной F метод Бройдена дает х^п+\ = х^, что
эквивалентно ||?'2rtS2nll/l|s2nll ==0. Это позволило ему в предполо-
жениях теоремы 8.2.2 доказать 2п-шаговую (/-квадратичную
сходимость метода Бройдена для общего случая нелинейных
функций. Как следствие из упр. 2.6 это означает, что г-порядок
равен 21/2".
8.3. РЕАЛИЗАЦИЯ КВАЗИНЬЮТОНОВСКИХ
АЛГОРИТМОВ, ИСПОЛЬЗУЮЩИХ ФОРМУЛУ ПЕРЕСЧЕТА
БРОЙДЕНА
В этом разделе обсуждаются два вопроса, касающиеся исполь-
зования в одном из наших квазиньютоновских алгоритмов ре-
шения систем нелинейных уравнений вместо якобиана, задан-
224 Гл. 8. Методы секущих для решения систем
ного аналитически или конечно-разностно, его аппроксимации
по секущим. Имеется в виду следующее: (1) детали, относя-
щиеся к численной аппроксимации, и (2) те изменения, если они
вообще требуются, которые нужно внести в остальную часть
алгоритма.
Первая из проблем использования формул пересчета по се-
кущим для аппроксимации якобиана заключается в том, как
получать начальную аппроксимацию Ац. Мы уже говорили о
том, что нами используется конечно-разностная аппроксимация
якобиана J(xy}, которая вычисляется с помощью алгоритма
А5.4.1. Разработанная Морэ численная реализация HYBRD в
пакете программ MINPACK [Морэ, Гарбов и Хиллстром (1980)]
использует модификацию этого алгоритма, которая более эф-
фективна, когда J (х) имеет много ненулевых элементов. Его
обсуждение откладывается до гл. 11.
Если формулу пересчета Бройдена реализовывать непосред-
ственно так, как она записывается, то в данном случае мало
что можно сказать о ее реализации; это просто-напросто
f=y—As,
о - --sтs,
/=1, ..., п.
Однако, напомним, что первое действие, которое выполнит наш
алгоритм с матрицей Л+, это определение ее Q^-разложения,
необходимого для вычисления шага — A~^F (х+). Следовательно,
как читатель уже мог догадаться, поскольку формула пересчета
Бройдена идеально соответствует алгебраической структуре ра-
венства (3.4.1), то более эффективная стратегия пересчета со-
стоит в применении алгоритма АЗ.4.1 для пересчета разложения
QcRc матрицы Ас в разложение Q+R+ матрицы Л+ за 0{п.ч) опе-
раций. На всех, последующих за первой итерациях это дает
экономию порядка 0(п3) на стоимости Q^-разложения Л/г. Чи-
татель может подтвердить, что целиком вся итерация квази-
ньютоновского алгоритма, использующего формулу пересчета
Бройдена в форме Q^-разложения и линейный поиск или стра-
тегию глобализации с поиском вдоль кривой, стоит только 0(п2)
арифметических операций.
Эти две возможные реализации формулы пересчета Бройдена
будут называться формулами пересчета соответственно в не-
факторизованной и факторизованной формах. Приложение А
содержит обе формы, представленные соответственно алгорит-
мами А8.3.1 и А8.3.2. Факторизованная форма делает алгоритм
более эффективным, и ее следует использовать в любой серьез-
ной программной реализации. Нефакторизованную форму проще
8.3. Реализация квазиньютоновских алгоритмов 225
программировать, и ей можно отдать предпочтение при предва-
рительной программной реализации.
Обе формы пересчета, представленные в приложении, имеют
еще две особенности. Во-первых, читатель может убедиться (см.
упр. 12), что диагональное масштабирование независимых пере-
менных, рассмотренное в разд. 7.1, приводит формулу пересчета
Бройдена к виду
Л^Л.+fc^^. (8.3.1)
SCL'XSC
Это та формула пересчета, которая фактически реализована.
Читатель может также убедиться, что формула пересчета не за-
висит от диагонального масштабирования зависимых пере-
менных.
Во-вторых, при некоторых обстоятельствах мы принимаем
решение не менять строку матрицы Ас. Заметим, что если
(г/с—Лс5с)(==0, то (8.3.1) вызывает автоматически совпадение
t'-x строк в Ас и Л+. Наши действия оправданы, так как формула
пересчета Бройдена вносит минимальные') изменения в г-ю
строку Ас, приводящие к равенству (A+)(.SC =={yc)i, и если
(г/с—AcSc)i==0, то необходимость в каких-либо изменениях от-
падает. Наш алгоритм оставляет также i-ю строку в Лд неиз-
менной, если | (г/с—AcSc)i| оказывается меньше вычислительной
погрешности в (г/с)», измеряемой с помощью r\ (\ fi (хс) \ +
+|^(х+) |), где т] есть уровень относительной величины шума в
значениях функции (об этом шла речь в разд. 5.4). Это условие
предназначается для того, чтобы в формуле пересчета препят-
ствовать попаданию в Л+ случайного шума вместо полезной
информации о производной.
Существует еще одна реализация метода Бройдена, которая
тоже требует на итерации О (/г2) арифметических операций. Она
использует приведенную ниже формулу Шермана—Моррисо-
на — Вудбери.
Лемма 8.3.1 (Шерман—Моррисон—Вудбери). Пусть и, v s
s R" и предположим, что матрица Л е R^" не вырождена.
В этом случае Л + uv7' не вырождена тогда и только тогда,
когда
l-}-vтA~\u^a^O.
Кроме того,
-'-A-'u^A-1.
ст
(Л+УУТ^Л-1
*) Это связано с тем, что в норме Фробениуса задача (8.1.8) распадает-
ся на п независимых задач, соответствующих строкам матрицы А. — Прим.
перев.
226 Гл. 8. Методы секущих для решения систем
Доказательство. Упр. 13. D
Непосредственное применение леммы 8.3.1 показывает, что
если известно Ac'\, то этим можно воспользоваться, представив
формулу пересчета Бройдена как
-1„ \ „Гл-1
(8.3.2)
s^Ac 'Ус
что требует 0(п2) операций. Тогда направление метода секу-
щих —A'+lF(x+) может быть вычислено умножением матрицы
на вектор, что требует дополнительно 0(п2) операций. Поэто-
му, до того как Гиллом и Мюрреем (1972) было введено поня-
тие последовательности Q^-разложений, в алгоритмах, исполь-
зующих формулу пересчета Бройдена, сначала вычислялось зна-
чение Ло'1, а затем применялась формула (8.3.2). Такая реали-
зация обычно прекрасно работает на практике, но у нее есть
тот недостаток, что при ней с трудом выявляется плохая обус-
ловленность Л+. Поскольку факторизованная формула пересчета
из Ас в Л+ свободна от этого недостатка и требует по существу
такого же количества арифметических операций, что и (8.3.2),
в готовой программной продукции отдается предпочтение ей, а
не (8.3.2).
В данном разделе дается ответ и на другой вопрос: «Какие
изменения в случае использования формул пересчета по секу-
щим необходимо произвести в остальной части квазиньютонов-
ского алгоритма решения нелинейных уравнений?». Исходя из
способа представления общей квазиньютоновской схемы, нам
хотелось бы ответить «никаких», но имеются два исключения.
Первое изменение тривиально: если формула пересчета исполь-
зуется в факторизованной форме, то на каждой итерации не
производится Q^-разложение якобиана модели, и на это на-
строены отдельные детали реализации в том виде, как это об-
суждается в приложении А.
Второе изменение более существенно: теперь уже не гаран-
тируется, что квазиньютоновское направление Sc = — Ac F {хс}
будет направлением убывания для f {х) = у || F (x) ||j. Вспомним
из разд. 6.5, что Vf(xc)== J(xc)TF(xc), поэтому
s^f (хс} ••
Если Ас=/(хс), то эта величина неположительна, что необяза-
тельно имеет место в противном случае. Кроме того, не суще-
ствует способа, по которому можно проверить, является ли Sc
в алгоритме секущих направлением убывания для f(x), так как
отсутствует возможность вычислить ^?f[Xc), не используя J(xc).
Это означает, что Sc может быть направлением вверх для гра-
8.4. Другие формулы секущих 227
фика f(x), и наш шаг глобализации может потерпеть неудачу
в попытке найти какую-либо подходящую точку. К счастью, на
практике это случается не часто, так как Ас представляет собой
аппроксимацию J(xc). Если же это происходит, то имеется про-
стой выход: мы восстанавливаем Ас, используя конечно-разност-
ную аппроксимацию для J(xc), и продолжаем счет алгоритмом.
Такая мера предосторожности предусмотрена в драйвере для
нашего алгоритма решения нелинейных уравнений. Это по су-
ществу—то же, что делается в программе Морэ пакета
MINPACK.
8.4. ДРУГИЕ ФОРМУЛЫ СЕКУЩИХ
ДЛЯ НЕЛИНЕЙНЫХ УРАВНЕНИЙ
До сих пор в этой главе для аппроксимации якобиана рассма-
тривалась одна формула пересчета по секущим, а именно, фор-
мула Бройдена. Мы видели, что среди всех элементов множе-
ства Q(t/c, Sc), которое представляет собой аффинное подпро-
странство матриц, удовлетворяющих соотношению секущих
(8.4.1)
формула пересчета Бройдена дает ближайший к Ас в норме
Фробениуса. В этом разделе упоминаются некоторые другие из
предложенных аппроксимаций, принадлежащих QQ/c, Sc).
Альтернатива, может быть, наиболее известная, была пред-
ложена Бройденом в статье, где он предлагал формулу пере-
счета Бройдена. Изложенная в предыдущем разделе идея по-
строения последовательности Л^"' вместо Л& привела Бройдена
к выбору
{s^-A^y^yl
(8.4.2)
УсУс
Прямое применение леммы 8.1.1 показывает, что (8.4.2) является
решением задачи:
(8.4.3)
в
mm
B<=Q(^),
В не вырождена
По лемме 8.3.1 равенство (8.4.2) эквивалентно
, _, | (Ус-^у^А,
Л+ — Л с -Г —————•J—————— ,
Ус^с
(8.4.4)
что представляет собой формулу пересчета, очевидно отличную
от формулы Бройдена.
228 Гл. 8. Методы секущих для решения систем
Формула пересчета (8.4.2) имеет то привлекательное свой-
ство, что она непосредственно генерирует значения Л+' без
каких-либо проблем нулевого знаменателя. Кроме того, она
разделяет с формулой пересчета Бройдена все ее положитель-
ные теоретические свойства. То есть можно модифицировать
доказательство леммы 8.2.1 и показать, что этот метод аппрок-
симации J (х)~1 обладает с точки зрения аппроксимации J {х^}~1
свойством ограниченного ухудшения. Отсюда можно показать,
что имеет место теорема 8.2.2 с использованием (8.4.2) вместо
формулы пересчета Бройдена. Однако на практике методы, ис-
пользующие (8.4.2), оказались значительно менее успешными,
чем те же методы, использующие формулу пересчета Бройдена.
Поэтому (8.4.2) фактически стала известна как «плохая фор-
мула пересчета Бройдена».
Хотя мы не претендуем на полное понимание отсутствия
вычислительного успеха плохой формулы пересчета Бройдена,
интересно то, что хорошая формула пересчета Бройдена происте-
кает из минимизации изменения в аффинной модели при условии
выполнения соотношения секущих, тогда как плохая формула
пересчета Бройдена связана с минимизацией изменения в реше-
нии модельной задачи. Возможно, тот факт, что при формиро-
вании модели типа секущих используется информация о функ-
ции, а не о ее решении, служит причиной, по которой первый из
подходов является более желательным. Во всяком случае, мы
встретимся в разд. 9.2 с аналогичной ситуацией, когда формула
пересчета для безусловной минимизации, выведенная из хоро-
шей формулы Бройдена, превосходит аналогичный метод, выве-
денный из плохой формулы Бройдена, хотя оба имеют анало-
гичные теоретические свойства.
Существует для нелинейных уравнений множество других
возможных формул пересчета; некоторые из них могут ока-
заться в будущем перспективными. Например, формула пере-
счета
(Vk - ^k) vk
(8.4.5)
корректно определена и удовлетворяет (8.4.1) при любых
Uk <= R", для которых v\s^ ^ 0. Хорошая и плохая формулы
пересчета Бройдена отвечают выбору u^=s^ и u^=A'^y^ соот-
ветственно. Барнес (1965), Гэй и Шнабель (1978) предложили
формулу пересчета вида (8.4.5), где Vk является проекцией Sk
в евклидовой норме на ортогональное дополнение к Sk-i, .. •
..., Sk-m, 0 ^ т < п. Это делает возможным для Л+ удовлет-
ворить т+1 соотношениям секущих A^+iSi == yi, l==k—
— т, ..., k, означающим, что аффинная модель интерполирует
наряду с F(xk) и F(xk+i} еще и F(xi), i=k—m, ..., k—\.
8.5. Упражнения 229
В программных реализациях, где т < п выбирается так, чтобы
Sk-m, ..., Sk были сильно линейно независимы'), эта формула
пересчета несколько превосходит в работе формулу Бройдена,
однако опыт здесь все еще ограничен. Поэтому мы все же ре-
комендуем формулу пересчета Бройдена. в качестве аппрокси-
мации по секущим для решения систем нелинейных уравнений.
8.5. УПРАЖНЕНИЯ
1. Пусть s,, у, е R", 1= 1, ..., п, и предположим, что векторы si, ...
..., Sn линейно независимы. Как бы вы вычислили матрицу А е R^", та-
кую, что As, = yi, i = 1, ...., я? Почему это является плохим способом по-
строения модели (8.1.1) в'том случае, когда направления Si, ..., Sn близки
к тому, чтобы быть линейно зависимыми?
2. Покажите, что если
'[J i]. ^[i]- у-[Л}'
то решением задачи
min ЦМ—ЛПг
Л1 <= Q (у, s)
является
Л+=Л+[ ° при любом а е [—1, I].
Что представляет собой решение в норме Фробениуса? Если F(x) линейно
по x-t, то какому из решений следует отдать предпочтение?
_ pi + ^ - 3-j
-|^+^_9_|'
3. (а) Выполните две итерации метода Бройдеиа для
•Xt + л;а - 3-1
F{x)
начиная из Хц == (2, 7) и Ло == / (хо).
(О) Продолжите выполнение п. (а) (на ЭВМ) до тех пор, пока не станет
ll-^+l — ^fell^ (niacheps)1/2. Чему равно последнее значение Л^? Сравните
его с / (х,).
4. Предположим, что метод Бройдена применяется к функции F: R"->R",
у которой fi, ..., fm линейны, т < п. Покажите, что если Ло вычисляется
аналитически или с помощью конечных разностей, то ('4ь). =^(xk}^ '
i == 1, ..., т, для всех k~^Q, а при & ^ 1 f, {хЛ =0, i = 1, ..., т.
5. Предположим, что / е R" х ", & s R'1, F (х) == Ix + Ь. Покажите, что
если Кс и х+ есть две произвольные несовпадающие точки в R", такие, что
Sc = х+ — Хс и ус = F {х+) — F (Хс), то / es Q (ус, Sc).
6. Докажите (8.2.2), используя для этого технику доказательства лем-
мы 8.2.1.
') В результате т зависит от k.—Прим. перед.
230 Гл. 8. Методы секущих для решения систем
7. Предположим, что s i
Покажите, что
: R", s т^= 0, и / есть единичная п X га-матрица.
„Г (I
/—
SS
77
8. Докажите теорему 8.2.4 с (8.2.22) вместо (8.2.16).
9. Примените при счете на ЭВМ метод Бройдена с целью выяснения его
сходимости на функции из примера 8.2.6, используя начальную точку хо =
== (2, З)7' (которая использовалась для этой же функции в примере 5.4.2).
Почему мы не воспользовались Хо == (2, З)7 в примере 8.2.6?
10. Обобщите лемму 8.2.7 следующим образом:
^_г^+м
"'•L F,(x) ]'
пусть 1 ^ т < п,
где /I s ^тхп, bi е R'", и функция Ft: R"-^""'" нелинейна. Предположим,
что для решения F (х) == 0 используется метод Бройдена, и он генерирует
последовательность аппроксимаций якобиана Ло, AI, Ач, ... . Пусть Ak раз-
деляется на блоки:
А
k2
зот Хп
lfe2^
>(га-т)Х п
Покажите, что если Ло вычисляется аналитически или с помощью конечных
разностей, то Л^ = /j для всех k ^s 0, и (Л^ — Л,з) ]\ = 0 для всех k ^ 1.
Какой вывод отсюда можно сделать относительно сходимости последова-
тельности {Л^} к истинному значению F^(x )?
11. Численные примеры плохой сходимости {Л;;} к J{х#} для полностью
нелинейных функций. Примените при счете на ЭВМ метод Бройдена для
выяснения его сходимости на функции из примера 8.2.6, используя начальную
точку Хц == (0.5, 0.5)Т и выводя на печать значения Ak. Сравните последнее
значение Ak с 7(х»). Проделайте то же самое, используя начальную точку
х, = (2, З)7.
12. Предположим, что мы преобразовали переменные х и F(x) так, что
х == 0^ • х, F {х) = Dp • F (х\
где Dx и Dp — положительно определенные диагональные матрицы. Произ-
ведите пересчет аппроксимаций по формуле Бройдена в новых пространствах
переменных и функции, а затем сделайте обратное преобразование к исход-
ным переменным. Покажите, что этот процесс эквивалентен использованию
формулы пересчета (8.3.1) в исходных переменных х и F{x). [Указание: но-
вый якобиан J(x) связан со старым якобианом 1{х} соотношением J{x) =
^DpI(x)D;1.]
13. Докажите лемму 8.3.1.
14. Воспользуйтесь алгоритмами из приложения, запрограммируйте и
пропустите на ЭВМ алгоритм решения систем нелинейных уравнений, исполь-
зующий для аппроксимации якобиана метод Бройдена. Когда ваша програм-
ма заработает нормально, постарайтесь подыскать задачу, в которой методом
секущих вырабатывается направление «вверх по склону графика функции»
[т. е. —Р (х,,) А^ J (Хь) F (Хь) > О], так что необходимо восстановить Ak
переходом к I(Xk}.
8.5. Упражнения 231
15. Воспользуйтесь леммой 8.1.1 и покажите, что (8.4.2) есть решение
задачи (8.4.3). Затем, используя лемму 8.3.1, покажите эквивалентность
(8.4.2) и (8.4.4) в случае, когда Ас не вырождена и г/^Лд5д ?= 0.
16. (Трудное упражнение.) Подойдите с более удачным объяснением к
тому факту, что «хороший» метод Бройдена (8.1.5) с вычислительной точки
зрения имеет больший успех, чем «плохой» метод Бройдена (8.4.4).
Упражнения 17 и 18 взяты из работы Гэя и Шнабеля (1978).
17. Пусть Лд е R" х ", s,, у, е R", i = k — 1, k, причем s^_, и s^ линейно
независимы, и предположим, что А^$у_, = г/д,.
(a) Получите условие на Vy в (8.4.5), такое, что Ль ,S,L_, ==;/,_,.
(b) Покажите, что матрица Л^ , заданная в (8.4.5), является при
^-l {sksk-i)
"k-i
решением задачи:
найти . min
BsR"Xra
при условии В е
\В-А.
18. Обобщите упр. 17 следующим образом: предположите дополнительно,
что для некоторого m < п существуют s., y.eR", i=k—in, ..., k, такие,
что s^_^, ..., s^ линейно независимы и A^s, = у., i == k — m, ..., k — 1.
(a) Получите условие на и. в (8.4.5), такое, что Л. .s. = у., i == k —
— от, ..., k — 1.
(b) Найдите такой способ выбора v^, что Л^ , заданная в (8.4.5), явля-
лось бы решением задачи:
найти min || 5—Л, II,-,
B^R"xJ' k\\F
при условии В е Q (у ., s.), г == k — от, ..., k.
9
Методы секущих для безусловной
минимизации
В этой главе рассматриваются методы секущих для решения
задачи безусловной минимизации. В алгоритмах для этой за-
дачи в качестве производных использовались градиент V/(^) и
гессиан У^(-к). В алгоритмах минимизации градиент должен
быть известен довольно точно как для вычисления направлений
спуска, так и для критериев останова. Из гл. 8 читатель мог
понять, что аппроксимация по секущим не обеспечивает этой
точности. Поэтому в квазиньютоновских алгоритмах аппрокси-
мация градиента по секущим не используется. С другой сторо-
ны, гессиан можно аппроксимировать с привлечением идей ме-
тода секущих почти таким же образом, как аппроксимируется
якобиан в гл. 8. Это и является темой настоящей главы. Здесь
будут представлены наиболее успешно работающие формулы
пересчета по секущим для гессиана и сопутствующая им тео-
рия. Формулы пересчета не требуют дополнительных вычисле-
ний функции или градиента и вновь приводят к локально
(7-сверхлинейно сходящимся алгоритмам.
Поскольку гессиан есть не что иное, как якобиан системы
нелинейных уравнений ^f(x}=0, его можно было бы аппрокси-
мировать, используя технику гл. 8. Однако при этом не учиты-
вались-бы два важных свойства гессиана: он всегда симмет-
ричен и часто положительно определен. Включение этих двух
свойств в аппроксимацию гессиана по секущим — наиболее
важный новый аспект главы. В разд. 9.1 вводится симметрич-
ная формула пересчета по секущим, а в разд. 9.2—формула,
сохраняющая к тому же положительную определенность. По-
следняя из формул, называемая положительно определенной
формулой пересчета по секущим (или BFGS-формулой),—наи-
более успешно работающая на практике формула пересчета по
секущим для гессиана. В разд. 9.3 представлен еще один вывод
положительно определенной формулы пересчета по секущим,
который приводит к доказательству ее локальной сходимости.
Вопросы программной реализации обсуждаются в разд. 9.4.
' 9.1, Симметричная формула секущих Пауэлла 233
Глава заканчивается изложением в разд. 9.5 результатов, ка-
сающихся глобальной сходимости положительно определенной
формулы пересчета по секущим, и кратким обсуждением в
разд. 9.6 других аппроксимаций по секущим.
9.1. СИММЕТРИЧНАЯ ФОРМУЛА СЕКУЩИХ ПАУЭЛЛА
Предположим, что решается задача:
min f: R"^R,
iceR"
был сделан шаг из Хс в х+ и мы хотим аппроксимировать
У^(х+} матрицей Я+, используя технику метода секущих. Сле-
дуя рассуждениям разд. 8.1, выясним сначала, что должно
представлять собой соотношение секущих. Если представить
гессиан как матрицу первых производных для системы нели-
нейных уравнений Vf(^)==0, то аналогом соотношения секу-
щих (8.1.3) будет
Я+^=у„ (9.1.1 а)
где
s,=x+-x„ yc=V/(^+)-Vf(^). (9.1.1b)
Будем называть (9.1.1) соотношением секущих для задачи без-
условной минимизации. Заметим, что если Я+ удовлетворяет
(9.1.1), то квадратичная модель
/п+ (х) = f (л:+) + Vf {х^ (х - х^) +^(х- x^Y Н+ (х - Л4)
удовлетворяет соотношениям т+ (х+) == f (х+), Vm+(n:+)==V^(^+)
и Vm+(xc) == ^f(xc). Это еще один способ объяснения соотноше-
ния (9.1.1).
Мы могли бы теперь воспользоваться формулой секущих из
гл. 8 для аппроксимации ^2f(x+') по формуле
STS
"с-с
(9.1.2)
где Не е R"^ есть аппроксимация \'2f(Xc}. Основная проблема
в связи с (9.1.2) состоит в том, что даже если матрица Не сим-
метрична, то (H+)i не будет таковой, если, конечно, г/с—HcSc
не параллелен Sc. Мы уже выявили несколько причин, по кото-
рым аппроксимации гессиана следует быть симметричной.
(См., например, упр. 12 из гл. 4.) Поэтому мы стремимся найти
Я+, которая бы наряду с (9.1.1) обладала свойством H+=Hr+•
Поскольку в гл. 8 проектирование в норме Фробениуса на
Q{yc,Sc) оказалось удачным способом пересчета Ас, в целях
построения симметричной матрицы (Н+)^ на основе [Н+)\ ра-
зумной представляется идея проектирования (Я+) i в норме
234 Гл. 9. Методы секущих для безусловной минимизации
Фробенпуса на подпространство S симметричных матриц. Не-
трудным упражнением будет показать, что это достигается по-
средством следующих действий:
(Н \ \ КН \ Л-(Н \Т\—Н i (Ус ~ нcsc) ^ + «с (Ус - W1'
{H+h = — ((Л+h + (Я+); } — Яд + ———————————Г————————— •
1 "с "с
Теперь (Я+)2 симметрична (как и Не), но она в общем случае
не удовлетворяет соотношению секущих. Однако можно
было бы рассмотреть продолжение этого процесса, генерируя
(Я+)з, (H+)t, ... по формулам
(Я+)2^+1 =={H^k +
(^^-l-^^-H+^L+i).
Здесь каждое {Н+}<цг+\ есть ближайшая в Q(i)c,Sc) матрица
к (H+}ik, а каждое {Н+)'цг+2 есть симметричная матрица, бли-
жайшая к (Я+)2й+1 (рис. 9.1.1). Как было показано Пауэллом
(1970Ь),эта последовательность матриц сходится к
„ „ i (Ус - ^А) ^ + s, (у, - H,s,y
л+==^с+———————j- ————
{Ус
^C^^S^
~ГТ—^2—————• ""•1-0'
•^с (Л^с)
Будем называть формулу пересчета (9.1.3) симметричной
формулой секущих^. Она известна как симметричная фор-
мула пересчета Пауэлла — Бройдена (PSB). Легким упражне-
нием можно убедиться, что Я+, заданная согласно (9.1.3),
удовлетворяет соотношению секущих (9.1.1) и Н+—Не есть
симметричная матрица ранга два. В действительности Дэннис
и Морэ (1977) доказали следующую теорему.
^ sc ?= О,
найти симметричную и положительно определенную Я+еР"^,
такую, что Н+8с==Ус- (9.2.1)
Для обеспечения симметричности и положительной определен-
ности матрицы Н+ воспользуемся аналогом распространенного
в математическом программировании приема: если некоторая
переменная h e R должна быть неотрицательной, то ее заме-
няют на j2, где j e R есть новая независимая переменная, на
которую теперь не накладывается никаких ограничений. Анало-
гично, как нетрудно показать, матрица Н+ будет симметричной
и положительно определенной тогда и только тогда, когда
Н+ = J+f+ для некоторой невырожденной /+ <= R"^.
Таким образом, (9.2.1) можно переписать как:
238 Гл. 9. Методы секущих для безусловной минимизации
задано: «с. у с <= К", Sp =/= О,
найти невырожденную J^
R"^, такую, что J^s,==y,.
(9.2.2)
Для любого решения /+ задачи (9.2.2) матрица //+==/+/+
будет решением для (9.2.1).
Даже для п = 1 видно, что не существует решения задачи
(9.2.2), если г/с =т^ 0 не имеет того же знака, что и Sc. Поэтому
мы в первую очередь должны определить условия, при которых
(9.2.2) будет иметь решение. Лемма 9.2.1 дает ответ на этот
вопрос, а также предлагает процедуру нахождения /+.
Лемма 9.2.1. Пусть Sc,z/c<=R", Sc Ф 0. Невырожденная мат-
рица /еК"^, такая, что J_,f!is^=y^, существует тогда и
только тогда, когда
s,y, > 0. (9.2.3)
Доказательство. Предположим, что существует невырожден-
ная/+, такая, что /,/^5д=г/^. Обозначим Од ==/^. Тогда
о<"^=Л^=^.
Это доказывает ту часть леммы, к которой относится выраже-
ние «только тогда». Часть, относящаяся к «тогда», доказыва-
ется с помощью приведенных ниже выкладок, но прежде мы
сделаем некоторое отступление, с тем чтобы обсудить условие
^ > 0.
Поскольку ус = Vf(x+}— ^f(xc), то условие (9.2.3) эквива-
лентно условию
W^)> ps^ (^), Р е (О, 1), (9.2.5)
которое используется для того, чтобы воспрепятствовать появ-
лению исключительно малых шагов. Даже если критерий при-
емлемости шага не нацелен явно на выполнение (9.2.5), то
производимые нашими алгоритмами шаги будут, как правило,
удовлетворять (9.2.4), если только мы не окажемся в области
со значительной отрицательной кривизной.
Вернемся теперь к первой части доказательства леммы 9.2.1.
Она указывает, что для любой /+, являющейся решением
9.2. Симметричные положительно определенные формулы 239
(9.2.2), найдется Vc <= R", такое, что
/+^=^ и /^,=Ус-
Это подсказывает идею следующей процедуры решения (9.2.2):
1. Выбрать J+^R"-^, такую, что /+vc=yc. Матрица /+
будет зависеть от Vc и г/с.
2. Подобрать Уд так, чтобы /^==u^.
Вспомним, в каком месте нашего алгоритма мы находимся,
когда хотим найти Я+. Шаг Sc определен с помощью разложе-
ния Холесского LcL7: положительно определенного гессиана мо-
дели Не. Это, по-видимому, будет полностью соответствовать
духу гл. 8, если выбирать матрицу /+ настолько близкой к Lc,
насколько это возможно. Это означает, что мы удовлетворим
приведенному выше шагу 1, выбирая матрицу
V U
"г -/»
(9.2.6)
которая по лемме 8.1.1 является ближайшей к Lc в Q(yc,Vc).
Далее шаг 2 требует, чтобы
(9.2.7)
последнее выполняется, только если
при некотором ас s k
которого упрощения дает уравнение
(9.2.8)
. Подстановка (9.2.8) в (9.2.7) после не-
"с^с^с-с °с"с"е
которое имеет действительное решение тогда и только тогда,
когда г/^д > 0, так как s^ff.s, > 0. Мы выберем положитель-
ное значение квадратного корня
( Ус^с Y
\ s^H.. )
/ «Fs- V/2
(9.2.9)
•^Л
потому что это делает /+ ближе к Lc при г/с s= HcSc. В качестве
упражнения предлагается показать, что /+, заданная согласно
(9.2.6) и (9.2.9), не вырождена и, таким образом, является ре-
шением задачи (9.2.2). Это завершает доказательство леммы
9.2.1, поскольку при любой заданной невырожденной Lc, соглас-
но (9.2.6) и (9.2.9), справедливо утверждение части «тогда»
леммы 9.2.1. П
Итак, выведена симметричная формула секущих, которая
всякий раз, когда это возможно, сохраняет положительную
определенность путем пересчета сомножителя Lc разложения
240 Гл. 9. Методы секущих для безусловной минимизации
Холесского матрицы Не в сомножитель J+, такой, что
/4-7+=Я+. Однако действительно полезной для /+ была бы
форма нижней треугольной матрицы L+, так как тогда мы
имели бы разложение Холесского для Н+. Читатель, по-видимо-
му, уже догадался, как получить L+ из /+ за 0(п2) операций,
привлекая для этого технику пересчета Q^-разложения, вве-
денную в разд. 3.4 и применявшуюся в разд. 8.3. Если для по-
лучения y^Q.L^ за О (га2) операций использовать алгоритм
АЗ.4.1, то Я^=/^===г-^0^0^.^==г-^г-^, и нет никакой необ-
ходимости накапливать Q+. Аналогично, можно получить
г^+Д+^-разложение Н+ непосредственно из LeZVJ-разложения
Не за 0(п2) операций путем пересчета LDV-разложения.
Можно также представить (9.2.6) и (9.2.9) непосредственно
в виде формулы пересчета матрицы Не в Н+. Если построить
//+=7+7^, используя (9.2.6) и (9.2.9), и вспомнить, чтоЯс==
' LcLc, то в результате получим
Н,=Н,+ (9.2.10)
Этот вид формулы пересчета [или, что э.квивалентно, заданный
равенством (9.3.5)] был независимо предложен в 1970 г. Брой-
деном, Флетчером, Голдфарбом и Шанно, и формула пересчета
стала известна как BFGS-формула. Мы будем называть ее про-
сто как положительно определенная формула секущих1). Про-
цедуру прямого пересчета сомножителя Холесского Lc в L+
можно найти в работе Голдфарба (1976). Читатель может убе-
диться, что (9.2.10), как и симметричная формула секущих из
разд. 9.1, удовлетворяет соотношению H+Sc = Ус, и (Я+—Не)
представляет собой симметричную матрицу ранга не более чем
два.
Является ли вообще пригодной эта положительно опреде-
ленная формула секущих? Да, она наилучшая среди известных
в настоящее время формул пересчета аппроксимаций гессиана.
Это иллюстрируется примером 9.2.2, где применяются квази-
ньютоновские методы, использующие соответственно симмет-
ричную формулу секущих и положительно определенную фор-
мулу секущих для решения той же задачи, которая решалась
в разд. 5.5 методом Ньютона. По аналогии с гл. 8 полагаем
До = V^Xo). Однако в разд. 9.4 мы увидим, что на практике
рекомендуется другая стратегия выбора Ну.
Пример 9.2.2.
ПуСТЬ ФУНКЦИЯ f(A-,,A:g
-Г "2J
О == (^i - 2)4 +
+ (х, — 2)2д:|+ (^2+ I)2- ^)на имеет точку минимума х^ ==
==(2,—I)7. В этом случае последовательность точек, выраба-
') В оригинале—positive definite secant update.—Прим. перев.
9.2. Симметричные положительно определенные формулы 241
тываемых положительно определенным методом секущих,
Xk+\ == Xk — Hk V^ (Xk), (9.2.11 а)
Sk=Xk^—Xk, Уй==УЦА:й+1) -Vf(Xk), (9.2. llb)
ff„ „ , yf/k нksksтkнk (9.2.11с)
т,.
y^k ^"k^
с начальными значениями Хо=(\,1У И Но = ^^(хо) такова
(с точностью до восьми значащих цифр на ЭВМ CDC с 14 де-
сятичными разрядами):
Л-^)
Хо = =(1 1 ^ 6.0
^1 -- =(1 -0.5 ^ 1.5
V2 ~- =(1.45 -0.3875 )т 5.12 X Ю-1
X3 - =(1.5889290, - -0.63729087)'' 2.29 X Ю-1
.\4 =(1.8254150, - -0.97155747)' 3.05 X Ю-2
•^5 =(1.9460278, - -1.0705597 )'' 8.33 X Ю-3
Лб =(1.9641387, - -1.0450875 )' 3.44 X Ю-3
.\7 -(1.9952140, - -1.0017148 )7 2.59 X Ю-5
л». = (2.0000653, - -1.0004294 )г 1.89 X Ю-7
.\-„ =(1.9999853, - -0.99995203)7 2.52 X Ю-9
x\0 = (2.0 -1.0 )' 0
Последовательность точек, которая вырабатывается симметрич-
ным методом секущих (9.2.4), использующим те же самые хо
и Но, такова:
j '(.V t)
-^0= =(1 1 )' 6.0
Л"! ~- -(I 0,5 ^ 1.5
^2 -- =(1.3272727, - 0.41818182^ 6.22 X ,0-1
УЗ = =(1.5094933, - 0.60145121)7' 3,04 X Ю-1
^4~- =(1.7711111, - 0.88948020)7' 5.64 X Ю-2
-^5 -- =(1.9585530, - 1.0632382 ^ 5.94 X ю-3
Лб = =(1.9618742, - 1.0398148 )г 3.16 X ю-3
Х-, = =(1.9839076, - 0.99851156)1' 2.60 X Ю-4
-\» ~- =(1.9938584, - 0.99730502)7' 4.48 X ю-5
-\9.= ==(1,9999506, - 0,99940456)г 3.57 X ю-7
Л"10 ; = (2.0000343, - 0.99991078)'' 9.13 X ю-9
^11 : =(2.0000021, - 0.99999965)7" 1.72 X 10-и
^12= = (2.0 -1,0 )'" 0
242 Гл. 9. Методы секущих для безусловной минимизации
Для достижения такой же точности методу Ньютона требуется
шесть или семь итераций.
Причины, по которым положительно определенная формула
секущих оказалась столь успешной, все еще до конца не по-
. няты, хотя в следующем разделе предлагается этому некоторое
объяснение. Там мы также обсудим другой вариант пересчета,
вытекающий из рассуждении, аналогичных тем, которые исполь-
зуются в настоящем разделе для нахождения Н~^
такой, что /^/^y^^Sc. Результатом является
Г_ ,-Т , (Л-^^сХ
J+ —L,c -г——————,;——————,
Vc
/ „Т \1/2
-te) L^'
-J+J
+ i
(9.2.12)
где снова Hc=LcL7:. Можно показать, что использование фор-
мулы Шермана—Моррисона—Вудбери (лемма 8.3.1) и (9.2.12)
дает
^ ^д- , (Ус - ^А) ^ + у, (у, - H^f (у, - H,s„ s,) y^
г С i Т '/Ti \ п«
ii1 о /..I „ V
У с3 с
(9.2.13)
Формулу пересчета (9.2.13) часто называют DFP-формулой
по именам ее авторов: Дэвидона (1959), Флетчера и Пауэлла
(1963). Она была первой среди всех когда-либо предлагавших-
ся формул секущих, причем ее первоначальный вывод пол-
ностью отличался от приведенного выше. Как легко показать
из (9.2.12), DFP-формула тоже обладает тем свойством, что
матрица Н+ положительно определена, если положительно
определена Яд, и г/^д > 0. По этой причине мы иногда будем
называть данную формулу пересчета обратной положительно
определенной формулой секущих').
В начале 70-х годов было проведено множество исследова-
ний по сравнению квазиньютоновских методов, использующих
две введенные в этом разделе формулы секущих [см., напри-
мер, Диксон (1972) и Бродли (1977)]'. Единодушно признается,
по-видимому, то, что положительно определенная формула се-
кущих (BFGS) работает лучше в совокупности с алгоритмами
из гл. 6 и что DFP-формула иногда вырабатывает вырожден-
ные с вычислительной точки зрения аппроксимации гессиана.
Тем не менее DFP-формула нашла плодотворное применение
') В оригинале—inverse positive definite secant update. — Прим. перев.
9.3. Локальная сходимость 243
во многих хорошо зарекомендовавших себя программах, и в
следующем разделе она также будет играть в анализе важ-
ную роль.
9.3. ЛОКАЛЬНАЯ СХОДИМОСТЬ ПОЛОЖИТЕЛЬНО
ОПРЕДЕЛЕННЫХ МЕТОДОВ СЕКУЩИХ
В этом разделе дается альтернативный вывод положительно
определенной формулы секущих и DFP-формулы. Простой спо-
соб вывода, приведенный в предыдущем разделе, все же не
привел к успеху в анализе сходимости, тогда как способ, рас-
смотренный в этом разделе, оказался успешным. Мы увидим,
что если применить в задаче минимизации некоторое естествен-
ное преобразование пространства переменных, то две симмет-
ричные положительно определенные формулы пересчета из
разд. 9.2 получаются из двух симметричных формул пересчета,
рассмотренных в разд. 9.1, в результате применения последних
к преобразованной задаче. Очень тесно с ним связанное пре-
образование приводит к результатам, касающимся сходимости.
45; В гл. 7 мы увидели, сколь важно иметь дело с хорошо обус-
ловленной задачей минимизации. Задачу минимизации квадра-
тичной функции можно было бы считать идеально масштаби-
рованной, если бы ее гессиан был единичной матрицей, так как
это приводило бы к сферическим линиям уровня и к тому, что
методы Ньютона и наискорейшего спуска были идентичны. Это
«идеальное» масштабирование будет ключом к нашим выводам
формул.
В разд. 7.1 было показано, что если преобразовать простран-
ство переменных по формуле
х=Тх,
то в новом пространстве переменных квадратичной моделью
в окрестности точки х+ будет
т+ (х) = f (Л4) + [T-^f (x}Y (х - х^) +
где Н+ есть гессиан модели в исходном пространстве перемен-
ных. Это означает, что градиент переходит в T•~~т'^ff(x), а гес-
сиан модели—в Т^Н+Т-1. Таким образом, перемасштабирова-
ние, приводящее к единичному гессиану модели, построенной
в окрестности точки х+, удовлетворяет соотношению
Г;rЯ+r+l=/, т. е. H+=TT+T+.
Было бы замечательно построить формулу пересчета Не по
секущим в пространстве переменных, преобразованном с по-
244 Гл. 9. Методы секущих для безусловной минимизации
мощью этой матрицы Г+, так как для получения новой квадра-
тичной модели использовалось бы идеальное перемасштабиро-
вание. Однако Г+ и Н+ заранее не известны, так что рассмот-
рим вместо этого произвольную матрицу масштабирования Т,
такую, что
rf^HeQiy^s,).
Теперь рассмотрим в этом пространстве переменных симметрич-
ную формулу секущих из разд. 9.1. Она имеет вид
ff S , (yc-^^+M^-W' <У,-ЯД,^4
П^—Пс-Л-———————^———————-———77r7-^2———• ^y••j•l)
где
5д — Х^. — Лд — TX^. — ТХц — TS(:,
Ус = T~^f (х^) - f-^f (х,) = f^y,,
Н, = Т~'Н,Т Н,=Т~'Н,Г
Читатель может убедиться, что если воспользоваться приве-
денными выше соотношениями, с тем чтобы переписать (9.3.1)
заново в исходном пространстве переменных, то в результате
получится
„ „ , (Ус - ffcSc} ^ + н^ic {Ус - ffc^f {y,-H^s,)Hs^H
П 4- == П г 1 ——————————————7~=—————————————— — ——————. __———————— .
^ {s^Hs^
(9.3.2)
Поскольку HSc == HTSc == Ус для любой симметричной Н s
^Q(yc,Sc), соотношение (9.3.2) не зависит от конкретных Я
или Т и принимает вид
{Ус - нc^so) У? + Ус (Ус - нcsc)т {УС - нcsc^ ^) УсУ^
т
У с8 с
(9.3.3)
а это и есть DFP-формула! Заметим, что если бы Н^ было
заранее известно, то мы смогли бы воспользоваться матри-
цей Г+, такой, что Т\.Т^=Н^., и результат оказался тем же
самым.
Другой способ изложения состоит в следующем. Если Не
симметрична и г/Js^ > 0, то для любого rsR"><", такого, что
T^rs Q(t/c, Sc), (9.3.3) является единственным решением за-
дачи:
найти min Цг"^//.,. — H^T^ip
Н^. е R" Х "
при условии Н+ eQ(t/c, Sc)nS.
(9.3.4)
9.3. Локальная сходимость 245
Это означает, что DFP-формула представляет собой проекцию
Не на <3(ус,5с)П5 в рассматриваемой взвешенной норме Фро-
бениуса.
Если применить то же перемасштабирование, использовать
формулу Гринстадта (9.1.5) для пересчета H'c\ в Н+1 и затем
произвести обратное преобразование пространства, то в ре-
зультате получится
-1 „-. , (^-^••W+^-^'V
Н
=Нс + ————————————f——————————
У^с
(9.3.5)
Простые, но утомительные выкладки показывают, что (9.3.5)
представляет собой выражение, которое получается после об-
ращения обеих частей равенства (9.2.10), т. е. Я-представления
положительно определенной формулы секущих (BFGS). Таким
образом, если Не симметрична и г/^$д > 0, то для любой мат-
рицы TsR"^, такой, что Т7'! eQ(t/c,Sc), положительно опре-
деленная формула секущих является единственным решением
задачи:
найти )Т1
min
Я+ е R" Х "
т(н
при условии Я+eQ(t/c, Sc)f15. (9.3.6)
Читатель, вероятно, заметил интригующую двойственность, ко-
торой пронизан в разд. 9.2 и 9.3 вывод положительно опреде-
ленной и обратной положительно определенной формул секу-
щих. Поскольку каждая из этих формул пересчета может быть
выведена с помощью преобразования (масштабирования) про-
странства переменных, для каждой итерации своего, то исполь-
зующие их методы называют иногда методами переменной
метрики.
В доказательстве локальной сходимости положительно опре-
деленного метода секущих центральное место занимает идея
масштабирования. Доказательство показывает, что последова-
тельность аппроксимаций гессиана {Hk} обладает свойством
ограниченного ухудшения в виде, приведенном в гл. 8. Для
установления этого факта в доказательстве используется взве-
шенная норма Фробениуса, подобная (9.3.6), но с заменой Т
на Г», для которой Г^Г, = V2^ (x,}. Это как раз то масштабиро-
вание, при котором матрица Гессе в точке минимума равна
единичной. Если последовательность аппроксимаций гессиана
сходится к ^2f{x^), то это есть предел матриц перемасштабиро-
вания, которые используются в приведенных выше выводах.
Та же техника применяется для доказательства локальной
246 Гл. 9. Методы секущих для безусловной минимизации
сходимости DFP-метода. В этом случае используется норма из
(9.3.4) с Т, замененным на Г„.
Доказательство следующей теоремы основано на технике из
разд. 8.2; его можно найти в работе Бройдена, Дэнниса и Морэ
(1973).
Теорема 9.3.1 (Бройден—Дэннис—Морэ). Пусть выполня-
ются условия теоремы 9.1.2 и дополнительно предполагается,
что V2f(x^) положительно определено. Тогда существуют поло-
жительные постоянные е и 6, такие, что если [!л'о—хЛа ^ е и
||Яо—V2/^.»:») На :$: б, где матрица Ну симметрична, то положи-
тельно определенный метод секущих (BFGS) (9.2.11) коррект-
но определен, а последовательность {х/г} остается в D и схо-
дится <7-сверхлинейно к х^. То же остается в силе, если (9.2.11с)
заменить обратной положительно определенной формулой се-
кущих (DFP)
^fe+i — Hk-{-
(Vk - нksk) УЦ + Vk (Vk - ^fe)
{Vk - нksk^ sk) yi/k
w
Этот результат, касающийся сходимости положительно опре-
деленного метода секущих, не является более строгим, чем тео-
рема 9.1.2, где сформулирован результат относительно сходи-
мости симметричного метода секущих. Однако положительно
определенный метод секущих работает на практике значитель-
но лучше, что воспроизводится ниже в примере 9.3.2. В этом
примере также изучается сходимость последовательности ап-
проксимаций гессиана {Я*} к значению гессиана в точке мини-
мума V2f{x^). В примере видно на промежуточных шагах, что
аппроксимации, генерируемые положительно определенной фор-
мулой секущих, более точны, чем генерируемые симметричной
формулой секущих. Такое поведение, обычное на практике, час-
тично объясняет превосходство положительно определенного
метода секущих.
Другое преимущество положительно определенного метода
секущих связано с выводом формул, с которых начинался этот
раздел. Не составит труда показать, что положительно опреде-
ленная и обратная положительно определенная формулы се-
кущих инвариантны относительно линейных преобразований
пространства переменных, тогда как симметричная формула
секущих не инвариантна (упр. 13). Благодаря инвариантности,
которая разделяется методом Ньютона, но не методом наи-
скорейшего спуска, соответствующие машинные программы
почти не зависят от масштабирования задачи минимизации.
Пример 9.3.2. Пусть f (д:,, ^) =х\+ (л:, + x.^f + (^2 — I)2.
Эта функция имеет точку минимума в x^,=(0,0)т. В случаях
9.3. Локальная сходимость 247
л;о=(1, \Y и Хц=(—1, З)7' указанным ниже методам требуется
для достижения точности \\Xk—л:*11оо^10-8 следующее число
итераций:
Число итераций из
Метод XQ= =(1, 1)Г XQ= =(-1, 3)^
Метод Ньютона 6 11
Положительно определенный метод
секущих, Яп = V2/(-Vo) 13 20
Метод Ньютона
Положительно определенный метод
секущих, Яо=У^(-Уо)
Симметричный метод секущих
H^^f(Xo) 14 41
Для Хо==(—1,3)7' ниже приводятся значения Н/г, выраба-
тываемые двумя методами секущих на некоторых промежуточ-
ных и заключительной итерациях. Значение \f2f{x} в точке ми-
нимума равно
Г2 21
1-2 4J-
Значения
l-v'fe+il!s$T:
н„
на первой из итераций k, для которых
Положительно
определенный
метод
секущих
10-
Ю-3
10'
я,
н
16
я,
= 5.485 6.996 6.9961 11.78 J
= "2.365 2.264 2.264" 4.160
= "2.009 1.993 1.993~ 4.004
Н-,
Н
Н
40 ~
Симметричным метод секущих
16.86 11.35 I
J1.35 9.645J
"3.147 3.783'
3.783 6.797
"2.003 2.021"
2.021 4.143
В примере 9.3.2 заключительное значение положительно
определенной аппроксимации по секущим согласуется с
\^/2f(x^t) в пределах примерно 0.5%. Такое поведение типично
для формул пересчета аппроксимаций гессиана по секущим:
заключительное значение Hk часто совпадает с V2^'») в не-
скольких значащих цифрах. На практике случаи, когда заклю-
чительная аппроксимация гессиана заметно отличается от
У2^»), по-видимому, менее распространены, чем случай, когда
заключительная аппроксимация якобиана заметно отличается
от /(.<»). Одна из причин состоит в том, что, хотя последова-
тельность аппроксимаций якобиана по секущим обычно не схо-
дится к J{x^), когда некоторые компоненты F(x} линейны (что
248 Гл. 9. Методы секущих для безусловной минимизации
мы наблюдали в примере 8.2,7), тем не менее аппроксимации
гессиана из этой главы не имеют такой проблемы в аналогич-
ном случае, когда у Vf(x) имеются линейные компоненты (см.
упр. 14). Это различие обусловлено симметричностью формул
пересчета аппроксимаций гессиана. Более подробную инфор-
мацию по данному вопросу можно найти в работе Шнабеля
(1982).
9.4. РЕАЛИЗАЦИЯ КВАЗИНЬЮТОНОВСКИХ
АЛГОРИТМОВ, ИСПОЛЬЗУЮЩИХ ПОЛОЖИТЕЛЬНО
ОПРЕДЕЛЕННЫЕ ФОРМУЛЫ СЕКУЩИХ
В этом разделе обсуждаются вопросы включения формул се-
кущих в наши квазиньютоновские алгоритмы безусловной ми-
нимизации. Поскольку наиболее успешной аппроксимацией по
секущим для минимизации оказалась положительно определен-
ная формула секущих (BFGS), то именно этой аппроксимацией
по секущим снабжены алгоритмы из приложения. Нами пред-
ставлены формулы пересчета как в нефакторизованном, так и
в факторизованном видах соответственно в алгоритмах А9.4.1
и А9.4.2. Нефакторизованный алгоритм непосредственно реали-
зует формулу пересчета ранга два (9.2.10). После обращения
к формуле пересчета вызывается процедура обработки гессиа-
на модели, которая производит разложение аппроксимации гес-
сиана модели по Холесскому. Факторизованный алгоритм реали-
зует формулу пересчета в том виде, в каком она была выведена
в разд. 9.2. В нем производится одноранговый пересчет Lc в /+
[формулы (9.2.6) и (9.2.9)], а затем вызывается алгоритм
A3.4.1 для вычисления нижней треугольной матрицы L,==J.Q
Коль скоро L^L^ представляет собой разложение новой ап-
проксимации гессиана по Холесскому, то в факторизованной
форме формулы пересчета процедура обработки гессиана мо-
дели не используется.
Основное преимущество факторизованной формулы пере-
счета заключается в том, что общая трудоемкость пересчета
аппроксимации гессиана и получения его разложения по Хо-
лесскому составляет О(га2), тогда как при использовании не-
факторизованной формулы пересчета—О (га3). Недостатком яв-
ляется то, что для нее добавляется работа по программирова-
нию и отладке, особенно если уже написана программа обра-
ботки гессиана модели. Кроме того, факторизованную формулу
пересчета трудно совместить с криволинейным шагом, так как
для этого шага требуется Не в явном виде, а также потому, что
обычно имеется возможность записи на место Lc сомножителя
разложения Не + а.с1 по Холесскому. По этой причине мы
9.4. Реализация квазиньютоновских алгоритмов 249
^
рекомендуем факторизованную формулу пересчета для раз-
работки программ, использующих линейный поиск или поиск
вдоль ломаной, но не для криволинейного шага. Что касается
курсовых проектов или предварительной исследовательской ра-
боты, то во всех случаях предпочтение может быть отдано не-
факторизованной форме. При использовании факторизованной
формулы пересчета имеется возможность оценивать число обус-
ловленности матрицы Lc, используя для этого алгоритм A3.3.1,
и если полученная оценка превосходит величину (macheps)-172,
то можно вернуться к матрице Не == LcLc и воспользоваться ал-
горитмом А5.5.1 для того, чтобы внести поправку к Не добавле-
нием к ней единичной матрицы, умноженной на соответствую-
щий скаляр, и Lc заново положить равной сомножителю Хо-
лесского, но теперь уже для этого измененного гессиана. Ради
простоты мы исключили эту возможность из алгоритмов, при-
веденных в приложении.
Единственная дополнительная особенность обоих алгорит-
мов, реализующих формулу пересчета, состоит в том, что пере-
счет не происходит в следующих двух случаях. В первом он
пропускается, если s^
0, да
и знаменатель иногда оказывается фактически нулевым, тогда
как в тех же случаях положительно определенная формула пе-
ресчета работает нормально.
Бройден (1970) был первым, кто рассмотрел непрерывный
класс формул пересчета
„ | (УС - HCSc) УС + УС (УС - "С^У
'' пс г ———————————^Г-—————————
—ф
№..) f-^-
L У 0s с
Ус^
Ус HcSc
1Г Ус
\ [ У^с
(Ус-^с.^УсУГ
W
HcSc У
"^J'
(9.6.2)
который включает в себя DFP-формулу при <р == 0, положи-
тельно определенную формулу секущих (BFQS-формулу) при
ср== 1 и SRl-формулу при ^=s'^H^s^(s'^H^^—sтcУc). Каково бы
ни было (peR, матрица Я+((р)—Яс есть симметричная матри-
ца ранга два, строки и столбцы которой представляют собой
линейные комбинации векторов г/с и HcSc. Были проведены зна-
чительные теоретические исследования этого класса формул
пересчета и некоторых его обобщений. Они широко обсужда-
ются в работе Флетчера (1980). Однако эти исследования не
привели к появлению формулы пересчета, которая бы превосхо-
дила на практике BFGS-формулу.
Интересно, что все представители класса (9.6.2), такие, что
Я+(ср)—Не имеет одно положительное и одно отрицательное
собственное значение, могут быть эквивалентно выражены как
Н — ff Л. (^-/УЛ)^+t'c(^-/W (Ус-^с^с}^ ,Q р. о,
^/+ - tf, + ———————„,——————— -—————————, (9.6.3)
254 Гл. 9. Методы секущих для безусловной минимизации
где Vc есть линейная комбинация векторов ус и HcSc [см. Шна-
бель (1977) или упр. 22]. В частности, положительно опреде-
ленная формула секущих (BFGS-формула) соответствует вы-
бору
^^ГГ^+а^^ (9-6-4)
где а ===(^5/s7//s У72. Таким образом, положительно опреде-
ленную формулу секущих можно получить с помощью рассмот-
ренных в разд. 9.3 взвешенной нормы или способа вывода, осно-
ванного на масштабировании. С этой целью нужно взять Г^Г
равной соответствующей выпуклой комбинации матриц Не и Н+.
Другой класс формул секущих для минимизации, который
привлек к себе значительное внимание, состоит из так назы-
ваемых «проекционных, оптимально обусловленных» формул
Дэвидона (1975) [см. также Шнабель (1977)]. Для методов,
использующих эти формулы пересчета, могут быть тоже уста-
новлены некоторые интересные теоретические свойства, но при
численных проверках [см., например, Шанно и Фуа (1978Ь)]
они работали не лучше, чем BFGS-метод.
9.7. УПРАЖНЕНИЯ
1. Приведите несколько причин, по которым аппроксимация гессиана по
секущим должна быть симметричной.
2. Покажите, что задача
найти min [|В—Л|]р при условии, что В симметрична,
В е R» Х »
имеет решение
А+А7'
В=
3. Пусть Я+ вычислена по симметричной формуле секущих (9.1.3). Убе-
дитесь, что H+Sc = Ус и что Н+ — Не представляет собой симметричную
матрицу ранга не более чем два.
4. Докажите теорему 9.1.1. [Указание: воспользуйтесь техникой доказа-
тельства теоремы 8.1.1 и покажите, что если Я+ задано согласно (9.1.3) и
ffeR"x" таково, что Н — Не симметрично и Hsc = у с, то (H—Hc)Sc=
=(H+—Hc)Sc и \\(H—Hc)t\\2^\\(H+—Hc)t\\2 для любого f, такого, что
Psc = 0. Затем для завершения доказательства воспользуйтесь упр. 11 из
гл. 3.]
В упр. 5 и 6 намечается в общих чертах доказательство теоремы 9.1.2.
Она взята из работы Бройдена, Дэнниса и Морэ (1973).
5. Пусть Н^. задано согласно (9.1.3), Я, = V2/(ж.) и Рд = / — s^/s^s^.
Используя предположения теоремы 9.1.2 и тождество
(у. — H,s„\ s7' s„ (у. — Я.5„)7' Р,
Н+-Н.^Рс(Нс-Н,)Рс+ \!": г е + с\^ т ' • (9.7.1)
s^c ^
9.7. Упражнения 255
покажите, что Н+ удовлетворяет неравенству
|| ^ -я. ь < II ^ - я. Иг + i (11 ^ - \ Иг + и \ - \ У- (9-7-2)
которое аналогично (8.2.3). Воспользовавшись (9.7.2) и техникой доказатель-
ства линейной сходимости метода секущих (теорема 8.2.2), докажите локаль-
ную (/-линейную сходимость симметричного метода секущих.
6. Воспользуйтесь (9.7.1) для доказательства более сильного, чем (9.7.2),
неравенства
II и —Н II 00
и что симметричный метод секущих вырабатывает идентичную последователь-
ность итераций {Xk}, но при этом последовательность аппроксимаций гессиа-
на {Hi,} обладает свойством
lim Я,-[5 5-!.
fc->oo LO 7J
[Указание: обобщите технику доказательства леммы 8.2.7.]
(b) Обобщите п. (а) на случай произвольной задачи, в которой градиент
Vf(x) линеен в некоторых из его компонент Vf(x}i, причем Vf(xa) имеет ну-
левые значения во всех этих компонентах.
(c) Установите экспериментально, как изменятся п. (а) и (b), если
Vf(xa) имеет ненулевые значения в тех компонентах Vf(x), которые линейны.
15. Дана функция
/(х,, л:,) = xf + ;»t| + .4
Она имеет минимум в х» == (О, О)7', и
w«.>-[^ ^.
Для Ха = (0, —l)7 и Яо == / покажите, что положительно определенный ме-
тод секущих и симметричный метод секущих вырабатывают идентичные по-
следовательности точек {Xk} и аппроксимаций гессиана {Я*}, а также, что
Urn^m.
fe->°0 LU_^J
16. Запрограммируйте минимизационный алгоритм из приложения А, ко-
торый использует положительно определенную формулу секущих. Сделайте
прогон вашего алгоритма на какой-либо тестовой задаче из приложения В.
Затем замените формулу секущих в вашем алгоритме конечно-разностной
формулой аппроксимации гессиана (оставляя при этом неизменной остальную
часть алгоритма) и сделайте заново прогон вашего алгоритма на той же
самой задаче. Как соотносятся количества итераций, требуемых этими двумя
методами для решения одной и той же задачи? Как соотносятся количества
вычислений функции и градиента? (Не забудьте учесть вычисления функции
и градиента, потребовавшиеся при конечно-разностной аппроксимации гессиа-
на.) Как соотносятся длительности счета?
17. Запрограммируйте минимизационный алгоритм из приложения А, ко-
торый использует положительно определенную формулу секущих и модифи-
цированный линейный поиск. Сделайте прогон вашего алгоритма на той же
самой тестовой задаче из приложения В.
(а) Как часто происходит обращение к этой модификации линейного по-
иска, т. е. как часто точка х+, которую дает традиционный линейный поиск,
не удовлетворяет неравенству
. V/ (x+f (х+ - Хс) > (0.9) 7/ (xcf (х+ - Хс) ?
9.7. Упражнения 257
(b) Насколько близким в ваших тестовых задачах оказываете,' послед-
нее значение Hie к V2f(x/t)? Попробуйте найти случаи, в которых это расхо-
ждение велико.
18. Пусть f: R"-»-R есть положительно определенная квадратичная
функция с гессианом Я е R"x", Хс и л-+— две произвольные несовпадающие
точки в R", s == х+ — Хс, у = Vf(x+)—Vf{Xc). Покажите, что диапазон
собственных значений матрицы Я содержит собственное значение матрицы
(sWV.
19. Что представляет собой шаг метода секущих х,-=Хц—Яп'1^^,,)
для задачи и начальных точек из примера 9.4.2, если ffy='\f(xo) |/? А если
Яд==/? Прокомментируйте результаты сравнения.
20. Покажите, что Я+, заданная согласно (9.6.1), является единственной
матрицей, для которой Я+Sc = ус, и (Я+ — Не) представляет собой симмет-
ричную матрицу ранга один.
21. Убедитесь, что SRl-формула (9.6.1) соответствует выбору (р ==
=^А/№^-^) в (9.6.2).
22. (а) Покажите, что если о с = у с + сгЯдЯс, где cr — решение любого
из уравнений
т т ± (У^с} (^^л}
о (у, - ff^f s, + у^ = I . н ,т » О-7-5)
scнcsc+^f(Уc-нcsc} sc
то (9.6.3) совпадает с (9.6.2).
(b) Воспользуйтесь (9.7.5) и докажите, что положительно определенная
формула секущих [ф = 1 в (9.6.2)] эквивалентна (9.6.3) при Vc, заданном
согласно (9.6.4).
9 Зак. ббо
Заключительное программное замечание
На этом завершается изложение основного материала книги, посвященного
методам решения задач безусловной оптимизации и нелинейных уравнений
малой и средней размерности без специальной структуры. В последних двух
главах обсуждаются обобщения этих методов на задачи, существенной осо-
бенностью которых является их специальная структура. Важным примером
служит задача оценивания параметров по нелинейному принципу наимень-
ших квадратов. Это частный случай безусловной минимизации, который со-
ставляет тему гл. 10. В гл. 11 рассматривается более общий класс задач, где
часть матрицы производных определяется легко, а остальная часть — нет.
К этой категории относятся задачи с разреженной матрицей производных.
Мы кратко обсуждаем разреженные задачи, а затем даем вывод и анализ
сходимости методов секущих с минимальными поправками, справедливые для
любой задачи из указанного общего класса.
10
Нелинейная задача о наименьших
квадратах
В этой главе обсуждается решение нелинейной задачи о наи-
меньших квадратах, введенной в гл. 1. Эта задача тесно свя-
зана с задачами безусловной минимизации и решения нелиней-
ных уравнений, которые уже обсуждались в книге, и проработка
материала будет состоять главным образом из применения пред-
ставленной нами методики. В разд. 10.1 заново вводится нели-
нейная задача о наименьших квадратах и обсуждаются произ-
водные, имеющие далее для нас важное значение. В разд. 10.2
и 10.3 объясняются два различных подхода к построению алго-
ритмов для нелинейной задачи о наименьших квадратах. Пер-
вый из них наиболее тесно связан с решением систем нелиней-
ных уравнений и приводит к алгоритмам Гаусса — Ньютона и
Левенберга—Маркварта. Второй, тесно связанный с безуслов-
ной минимизацией, приводит к методу Ньютона для нелиней-
ных наименьших квадратов, а также к успешно работающим
методам секущих. Конечно, методы этих двух типов тесно свя-
заны друг с другом, и нами используется эта связь. В разд. 10.4
кратко упоминаются некоторые другие аспекты проблемы не-
линейных наименьших квадратов, включающие критерии оста-
нова и обработку смешанных линейно-нелинейных задач о наи-
меньших квадратах.
10.1. ПОСТАНОВКА НЕЛИНЕЙНОЙ ЗАДАЧИ
О НАИМЕНЬШИХ КВАДРАТАХ
Нелинейная задача о наименьших квадратах имеет вид
m
найти mms(x}=-R(x)TR(x)==-lУr^(x)2, (10.1.1)
.sR" 2 2^
где m > п, функция невязки
/?:R"-»-R'"
9*
260 Гл. 10. Нелинейная задача о наименьших квадратах
нелинейна по х, и через ri(x) обозначена г-я компонента функ-
ции R(x). Если R(x) линейна, то (10.1.1) представляет собой
линейную задачу о наименьших квадратах, решение которой
обсуждалось в разд. 3.6. Нелинейная задача о наименьших ква-
дратах обычно возникает из приложений, связанных с наилуч-
шим приближением данных, где стараются наилучшим образом
приблизить данные (ti, yi), l-==\, ..., т, с помощью модели
т(х, <)'), которая нелинейна по х. В этом случае ri(x)=
=m(x,ti}—yi и нелинейная задача о наименьших квадратах
заключается в таком выборе х, что приближение является на-
столько близким к данным, насколько это возможно с точки
зрения минимизации суммы квадратов невязок п(х}. Обычно т
гораздо больше, чем п (например, п ==5, т == 100). Выбор сум-
мы квадратов в качестве меры для наилучшего приближения
данных оправдывается статистическими соображениями [см.,
например, Бард (1970)]. В статистической литературе, однако,
та же задача записывается так:
п
найти min 5(Р)==-У(ПР, ^)-^)2,
^р 2 ^
где р есть переменная, состоящая из р параметров, ^((3, х)—
моделирующая функция, и имеется набор данных, представляю-
щих собой п точек (xi, г/,), .^•еР'", г/i-sR, m^l. (Иногда
вместо S и р используются другие символы.) В целях согласова-
ния обозначений с остальной частью книги мы будем использо-
вать принятую в численном анализе запись (10.1.1).
Нелинейная задача о наименьших квадратах исключительно
тесно связана с ранее изучавшимися в этой книге задачами.
Так, при т == п она включает в себя как частный случай задачу
решения системы нелинейных уравнений, и для любого значе-
ния т она представляет собой лишь частный случай задачи
безусловной минимизации. Причины, по которым мы не реко-
мендуем решать ее с помощью программ безусловной миними-
зации общего назначения, станут ясными далее в этой главе.
Главным образом это—желание учесть специальную структуру
(10.1.1). Приступая к делу, исследуем производные функций
R(x) и f(x)==—R(x}TR(x). Пример нелинейной задачи о наи-
меньших квадратах и ее производных дан в конце этого раздела.
Матрица первых производных для R{x)—это просто матри-
ца Якоби /(^eR"^", где J{x}l!=дгl{x}/дx,. Таким образом,
аффинной моделью функции R(x) в окрестности точки Хс будет
М, (х) = R (х,) + / (х,) (х - х,),
)) Не следует путать обозначаемые одним и тем же символом m количе-
ство элементов в наборе данных и модель. — Прим. перев.
10.1. Постановка нелинейной задачи 261
что является обобщением на случай m ^= п аффинной модели
для системы нелинейных уравнений, которой мы пользовались
на протяжении всей книги. Эта модель будет базовой для об-
суждаемых в разд. 10.2 методов, которые связаны с интерпрета-
цией нелинейной задачи о наименьших квадратах как переопре-
деленной системы уравнений.
В разд. 6.5 мы видели, что первой производной от f{x)==
=-^R(x)TR(x) является
Vf (х) == Е ri (х) • V/-, (х) = J (хУ R {х).
«=|
Аналогично, вторая производная
m
^f (х) == Е (V/-, (х) • W, {xY + г, (х} • V2^ (х)):
<=1
==/(x}TJ(x)+S(x),
где
обозначает в \^(х} информацию о производных второго поряд-
ка. Тогда квадратичной моделью для f(x) в окрестности Хс будет
^ (х) = f (х,} + Vf W {х - х,) + у (х - x,Y ^f (х,)[(х - х,) ==
= у R {Хс7 R (Хс} + R (х,У J (х,} (х - х,}\ +
+ J (х - x,Y (J (x,Y J (х,) + 5 (х,)} (х - х,), (10.1.2)
что представляет собой специальную форму квадратичной мо-
дели для минимизации целевой функции вида (10.1.1), получен-
ную из разложения в ряд Тейлора.
Согласно (10.1.2), метод Ньютона применительно к (10.1.1)
имеет вид
x+==x,-(!(x,)т/(x,)+S(x,))~\J(x,)TR(x,). (10.1.3)
Несомненно, (10.1.3) был бы быстрым локальным методом
для нелинейной задачи о наименьших квадратах, так как он
является локально (/-квадратично сходящимся при стандартных
предположениях. Трудность полномасштабного использования
ньютоновского подхода состоит в том, что S(x) обычно либо от-
сутствует, либо получение ее затруднительно, а аппроксимация
262 Гл. 10. Нелинейная задача о наименьших квадратах
с помощью конечных разностей слишком дорога. Хотя аппрокси-
мация по секущим часто используется на практике, применять
ее ко всему выражению У2/^') нежелательно, поскольку часть
этого выражения — J (х)7"/ (х)— будет в нашем распоряжении.
Это связано с тем, что матрица 1(х) должна быть обязательно
вычислена (аналитически или с помощью конечных разностей)
при вычислении Vf(x). Методы разд. 10.3 будут относиться к
методам безусловной минимизации, несмотря на то что мы бу-
дем использовать структуру квадратичной модели (10.1.2) при
решении нелинейной задачи о наименьших квадратах в случае,
если S(x} недоступна в аналитическом виде.
Обсуждая различные методы для нелинейной задачи о наи-
меньших квадратах, мы хотим различать между собой задачи
с нулевой невязкой, малой невязкой и большой невязкой. Эти
термины относятся к значению R(x) [или f(x)} в точке мини-
мума х» для (10.1.1). Задача, для которой R(x^}=0, называется
задачей с нулевой невязкой; применительно к наилучшему при-
ближению данных это означает, что модель т(х^, t) точно при-
ближает yi в каждой точке набора данных. Различие между за-
дачами с малой и большой невязкой мы поясним в разд. 10.2.
Окажется, что методы из разд. 10.2 работают лучше на задачах
с нулевой и малой невязкой, чем на задачах с большой невязкой,
тогда как методы из разд. 10.3 одинаково эффективны во всех
этих случаях.
Пример 10.1.1. Предположим, что мы хотим наилучшим об-
разом приблизить данные (ti, yi), i= 1, ..., 4, с помощью мо-
дели от (х, t) == е'-"' + е1"1 исходя из принципа нелинейных наи-
меньших квадратов. Тогда R: R"->R\ ri(x}=ei
''= 1, ..., 4, и нелинейная задача о наименьших квадратах со-
стоит в минимизации f(A:)=-g-^?(д;)г^?(л;).Taким образом, J{x')f=
Г t^1
f^t^
1,е^
Кроме того, V/ (х) е= R2,
Vf (xf == R (xfJ(x) == ft r, (x) ^'\ Z ri (x) tie^}
\t'=i 1=1 •/
2, fix,
tV^.
Г tie1
[ Q
^ Vf (x)
u v^WesR^2. Используя
V^)=
10.2. Методы типа Гаусса—Ньютона 2б5
и 5 (х) == Z Li/". (х) V^i (x), имеем
^f(x)==J(xYJ(x)+S{x)==
4
10.2. МЕТОДЫ ТИПА ГАУССА—НЬЮТОНА
Первый из рассматриваемого нами класса методов решения не-
линейной задачи о наименьших квадратах получается в резуль-
тате использования аффинной модели для R(x) в окрестности Хс:
(10.2.1)
где М,: R"->R"1 и т>п.
Мы не можем в общем случае рассчитывать найти х+, для
которого Мс {х+) == 0, так как это—переопределенная система
линейных уравнений. Однако логичным здесь будет способ ис-
пользования (10.2.1) для решения нелинейной задачи о наимень-
ших квадратах, состоящий в выборе в качестве следующей ите-
рации х+ решения линейной задачи о наименьших квадратах:
найти min -5-1| Мс (х) ||2 А, те (х).
хе=К'1
(10.2.2)
Предположим, что J(xc) имеет полный столбцовый ранг.
Тогда, как мы убедились в разд. 3.6, решением для (10.2.2) яв-
ляется
х,. = х, - (У (x,)TJ(x,}Г\ J {x,Y R (х,). (10.2.3)
Обычно мы, конечно же, не вычисляем х+ согласно (10.2.3), а
вместо этого всегда решаем (10.2.2), используя Q^-разложение
для J{Xc).
Итерационный метод, состоящий в использовании (10.2.3) на
каждой итерации, называется методом Гаусса—Ньютона. Для
того чтобы понять его поведение вблизи решения х^ задачи
(10.1.1), сравним его с методом Ньютона для нелинейных наи-
меньших квадратов, заданным формулой (10.1.3). Два выраже-
ния отличаются лишь членом S(x), входящим в методе Ньютона
в матрицу вторых производных J (xc)TJ (хс)+S(xc), но зато опу-
щенным в методе Гаусса—Ньютона. Другими словами, един-
ственное различие между квадратичной моделью тс(х), (10.1.2),
из которой получается метод Ньютона, и квадратичной моделью
/"(.(А:), (Ю.2.2), которая дает метод Гаусса—Ньютона, состоит
264 Гл. 10. Нелинейная задача о наименьших квадратах
в том, что слагаемое, соответствующее S{Xc} в У2/'^), отсут-
ствует в гНс(х). Поскольку метод Ньютона в рамках стандарт-
ных предположений сходится локально и ^-квадратично, то, как
читатель мог догадаться, успех применения метода Гаусса—
Ньютона будет зависеть от того, насколько важным оказыва-
ется опущенное слагаемое S{xc), т. е. от того, насколько боль-
шой вклад оно вносит в V'гf(xc)=J(xc}TJ(xc)-sгS{xc). Это по
существу подтверждается теоремой 10.2.1 и следствием 10.2.2.
В них показано, что если S(x*)=0, то метод Гаусса—Ньютона
тоже сходится (/-квадратично. Это происходит в том случае,
когда R{x) линейно, или когда имеет место задача с нулевой
невязкой в решении. Если 5(х») мало по сравнению с
/ (х«)г/ (х»), то метод Гаусса—Ньютона сходится локально
(/-линейно. Однако если S(x») слишком велико, то метод Гаус-
са — Ньютона может вообще не быть локально сходящимся. Да-
лее, сразу после следствия 10.2.2, мы прокомментируем эти ре-
зультаты.
Теорема 10.2.1. Пусть R: R"-^R'", и функция f(x}==
= -у- R (х)7' R (х) дважды непрерывно дифференцируема в откры-
том выпуклом множестве D e R". Предположим, что /(х)е
sLip^(D), причем |Щх) На sS, а для всех х <= D, а также, что
существуют х, е D и Л,, сг^О, такие что / (л;.)7' R (х.) = О,
К—наименьшее собственное значение для J (хУ J (х^}, и
][ (/ (х) - / (x.)f R (х.) |Ь < a 1] х - х. Ib (10.2.4)
для всех xeD. Если а <: 'К, то для любого с<=(1Д/о) сущест-
вует е >• О, такое, что для всех Хо е N(x,f, е) последовательность,
порожденная методом Гаусса — Ньютона
^+i ==^-{J WJ (х,))-'3 (XkY R (x,),
корректно определена, сходится к х« и удовлетворяет неравен-
ствам
(10.2.5)
112. (10.2.6)
\xk+\
доказательство. Доказательство проводится по индукции.
Мы можем предположить, что К > о ^ 0, так как утверждения
теоремы относятся только к этому случаю. Пусть с есть фикси-
рованная константа из интервала (1, К/с), выражения /(хо),
R{xo) и R(x^) для краткости обозначены соответственно через
/о, RO и R*, и через || • || обозначена векторная и матричная
10.2. Методы типа Гауссам—Ньютона 265
/2-нормы. Согласно знакомым теперь нам доводам, существует
ei > 0, такое, что /д7д не вырождена и
Пусть
!№)'|<Т Для всех Хо е W (^, ei). (10.2.7)
e==min{e„ -^Ч- (10.2.8)
Тогда на первом шаге x^ корректно определено и
x^ — х^ == XQ — х^ — (7(/n) Ai^o^
--W'W+W^-^}-
= - (W № - ^ (^ - ^ - /о (^ - ^о))]. (10.2.9)
По лемме 4.1.12
ll^.-^o-/o(^-^)IK-Ill^-^112. (10.2.10)
Из (10.2.4), вспоминая, что / {хУ R (х,) = 0, имеем
(10.2.11)
Объединяя (10.2.9), (10.2.7), (10.2.10), (10.2.11) и неравенство
|| /о II ^ ct, получим
О ^"« ••0)
что доказывает (10.2.5) для случая /;==0. Из (10.2.8) и приве-
денного выше соотношения имеем
1 II ^- и II Г ест | сау 11 iil ^
1 ^1 - ^JK II XQ - А-. |] [^- + ^- II Хо - X, Ц <
сау
^Г""
А, — со
"ЗГ
[ест , л — ест'] _
тч ~w~\ ~
ест + ^
2Г—
|у __ Г II <-^ 11 f __ t- II
I XQ — Х^ || <. || XQ — Х^ |[,
что доказывает (10.2.6) для случая k == 0. Аналогичным обра-
зом проводится шаг индукции. D
Следствие 10.2.2. Пусть выполнены предположения теоремы
10.2.1. Если R{x^)=0, то существует е > 0, такое, что для всех
Xoe:N(x^, е) последовательность {xk}, порожденная методом
Гаусса — Ньютона, корректно определена и сходится <7-квадра-
тнчно к х».
266 Гл. 10. Нелинейная задача о наименьших квадратах
Доказательство. Если R(x,)==0, то в (10.2.4) можпп поло-
жить о равным нулю. Тогда, согласно (10.2.6), последователь-
ность {xk} сходится к л:„ а согласно (10.2.5), скорость сходи-
мости будет ^/-квадратичной. D
Из теоремы 10.2.1 видно, что метод Гаусса—Ньютона не
столь хорош, как большинство ранее рассмотренных в книге
локальных методов, потому что на многих задачах с невырож-
денной матрицей / (х»)7'/(А-„) он обладает невысокой локальной
сходимостью, а на некоторых из них он вообще не является
локально сходящимся. Константа о, входящая в (10.2.4), играет
решающую роль в доказательстве сходимости и заслуживает
дальнейшего исследования.
Удобно рассматривать а как обозначение для ||S(A-*)]|2, так
как для х, достаточно близких к д'„ можно показать в качестве
упражнения, что
(/ (х) - 1 W R (х.) ^ S (х.) (х - х.).
Из этой интерпретации, равно как и из (10.2.4), а является аб-
солютной совокупной мерой нелинейности и величины невязки
в решении задачи. Так, если функция R(x) линейна или R{x^)==
=0, то непосредственно из (10.2.4) следует, что а==0. Отно-
шение б/К, которое для гарантии сходимости должно быть
меньше 1, может рассматриваться как относительная совокуп-
ная мера'нелинейности и величины невязки в решении задачи.
Таким образом, теорема 10.2.1 утверждает, что скорость сходи-
мости метода Гаусса—Ньютона уменьшается с ростом относи-
тельной нелинейности или относительной величины невязки в
решении задачи, причем если любая из этих двух величин слиш-
ком велика, то метод может вообще не сходиться. Иначе говоря,
это указывает на то, что чем больше S(x^ по сравнению с
J(x^тJ(x^, тем, вероятно, хуже будет работать метод Гаусса-
Ньютона.
Хотя метод Гаусса — Ньютона имеет ряд проблем, он служит
основой для некоторых важных и успешно работающих практи-
ческих методов решения нелинейных задач о наименьших ква-
дратах В табл. 10.2.3 подытожены преимущества метода Гаус-
са—Ньютона, которые желательно сохранить, и недостатки, ко-
торые хотелось бы преодолеть. В примерах 10.2.4 и 10.2.5 по-
казано поведение метода Гаусса—Ньютона на простой задаче
с одной переменной.
В примере 10.2.4 исследуется поведение метода Гаусса-
Ньютона при наилучшем приближении моделью е1" == у набора
данных вида (t,y): (1,2), (2,4), (3, уз) для различных значе-
ний Уз Когда уз ==8, модель точно приближает данные при
л-, =Лп 2 а; 0.69315, и в этом случае метод Гаусса—Ньютона
сходится квадратично. По мере уменьшения уз оптимальное зна-
10.2. Методы типа Гаусса—Ньютона 267
Таблица 10.2.3. Преимущества и недостатки метода Гаусса — Ньютона
Преимущества
1. Локальная ^-квадратичная сходимость для задач с нулевой
невязкой в решении.
2. Быстрая локальная (у-яинейная сходимость для задач, кото-
рые не являются слишком нелинейными или имеют в решении
достаточно малые невязки.
3. Решает линейную задачу о наименьших квадратах за одну
итерацию.
Недостатки
1. Медленная локальная д-линейная сходимость на задачах, ко-
торые довольно нелинейны или имеют в решении достаточно
большие невязки.
2. Отсутствие локальной сходимости на задачах, которые сильно
нелинейны или имеют в решении очень большие невязки.
3. Не является корректно определенным, если I{Xk) не имеет
полного столбцового ранга.
4. Не гарантирована глобальная сходимость.
чение Хц. становится все меньше, невязка R(x^) в решении—все
больше и эффективность метода Гаусса — Ньютона ухудша-
ется. При уз = 3 и уз ==—1 метод Гаусса—Ньютона является
все еще линейно сходящимся, хотя в последнем случае сходи-
мость очень медленная. В случаях уз = —4 и уз == —8 метод
Гаусса — Ньютона вообще не сходится локально.
Для сравнения в примере 10.2.4 показано также поведение
метода Ньютона для нелинейных наименьших квадратов (10.1.3)
на всех этих задачах. Тогда как действие метода Гаусса —
Ньютона сильно зависит от размера невязки, для метода Ньюто-
на это не существенно, и он работает нормально на всех этих
задачах. Для каждой задачи мы рассматриваем две начальные
точки: XQ = 1 и значение хц, отличающееся от х« не более чем
на 0.1. Поведение алгоритмов при начальной точке, более близ-
кой к решению, наилучшим образом передает их свойства
локальной сходимости.
Пример 10.2.4. Пусть R: R'-^R4, г,(х)==е' -У{, г==1, ...,4,
f{x)==-^R(x)TR{x), где ^=1,