Читать в оригинале

<< ПредыдущаяОглавлениеСледующая >>


§ 2. Метод сопряженных градиентов

Метод сопряженных градиентов для нахождения максимума квадратичной формы имеет несколько модификаций.

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

Алгоритм получается таким (модификация I):

А. Начальный шаг.

1) Находится градиент  функции  в произвольной точке ;

2) полагается ;

3) находится точка , доставляющая максимум функции  на прямой  ( – параметр).

Б. Общий шаг. Пусть уже найдены точки .

1) находится градиент  функции  в точке .

2) полагается

,

где

;

3) находится точка , доставляющая условный максимум  на прямой

.

В. Останов алгоритма. Процесс обрывается в тот момент, когда градиент  обратится в нуль, т. е. достигается максимум  на всем пространстве .

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

В реальных условиях, при ограниченной точности вычислений, процесс поиска максимума следует остановить не при точном обращении в нуль градиента, а в тот момент, когда градиент станет достаточно мал. При этом на самом деле может потребоваться более  шагов. Более подробно эти вопросы будут рассмотрены ниже.

Чтобы придать алгоритму более «конструктивную» форму, найдем формулу, определяющую точку максимума квадратичной формы на прямой .

Подставляя уравнение прямой в выражение функции , получим

,

где  – градиент  в точке . Максимизируя по , получим

и соответственно

.                   (16.16)

Таким образом, вычисление в пункте 3) алгоритма может быть осуществлено по формуле

.

2. Более известна модификация метода, при которой для вычисления очередного направления  используются векторы  и  вместо  и .

Рассмотрим систему векторов , коллинеарных соответственно векторам  (т. е.  при некоторых действительных ). Для векторов  и  сохраняется условие -ортогональности

 при .                    (16.17)

Кроме того, из (16.11) следует, что

 при .                 (16.18)

Наконец, остается в силе соотношение типа (16.9)

.                      (16.19)

Умножая правую и левую части (16.19) на  и учитывая (16.17) и (16.18), получим при

,

откуда  при . При  получим

,

откуда

.                (16.20)

Соотношение (16.20) определяет  с точностью до произвольного множителя через  и ц. При выводе (16.20) использовались лишь соотношения (16.17), (16.18), (16.19). Поэтому процесс построения векторов  может рассматриваться как процесс -ортогонализации векторов .

Полагая в (16.20)  и , получим конкретную систему векторов , коллинеарных . Каждый вектор  задает направление прямой, исходящей из , на которой лежит . Алгоритм, таким образом, примет следующий вид (модификация II).

А. Начальный шаг, такой же как и в модификации I.

Б. Пусть уже найдены точка  и направление .

1) Находится градиент  функции  в точке ;

2) полагается

,

где

;                       (16.21)

3) находится точка , доставляющая условный максимум  на прямой

по формуле

.                     (16.22)

Формулы (16.21) и (16.22) могут быть преобразованы. Так, полагая

,

имеем из (16.22)

,

откуда получаем, применяя (16.12),

.                (16.23)

С другой стороны, поскольку

,

из (16.21) имеем

и, таким образом,

.                     (16.24)

Наконец, из (16.21), (16.23) и (16.24) получаем

.

Таким образом, формулы (16.21) и (16.22) могут быть записаны в виде

,

где

                       (16.25)

и

.                     (16.26)

Совпадение результатов действия по формулам (16.21) и (16.22), с одной стороны, и (16.25), (16.26), с другой, может служить критерием правильности вычислений.

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

При этом пункт 1) алгоритма может быть выполнен без изменений, пункт 2) должен выполняться по формуле (16.25), поскольку в эту формулу не входит явно матрица , а пункт 3), нахождение условного максимума на прямой, может быть выполнен одним из известных способов, например, методом Фибоначчи. Применение метода сопряженных градиентов дает обычно значительно более быструю сходимость к максимуму по сравнению с методами наискорейшего спуска, Гаусса – Зайделя и др.

4. Что будет, если применить метод сопряженных градиентов для максимизации квадратичной формы с положительно полуопределенной формой ?

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

,

где все  и некоторые из . При этом функция имеет максимум, если выполнено условие: когда , то и . Легко видеть, что максимум в этом случае достигается на целом гиперпространстве. А именно, пусть, например, при , меняющемся от 1 до , , а при , меняющемся от  до ,  и . Тогда максимум достигается в точках с координатами  при  и с произвольными значениями  при . Они образуют гиперпространство размерности .

Если же при некоторых  , a , то функция не имеет максимума и возрастает неограниченно. В самом деле, пусть, например,  и ; тогда, если положить  при  и устремить  к , то, очевидно, и  будет возрастать до бесконечности.

Оказывается, что метод сопряженных градиентов (при точном счете) позволяет в первом случае достигнуть максимума не более чем за  шагов, где  – число  не равных нулю, а во втором случае не более чем через  шагов выводит на направление, по которому функция  возрастает неограниченно.

В исходной системе координат функция  имеет вид

,

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

Рассмотрим применение метода сопряженных градиентов в форме II в этом случае. Здесь приходится изменить условие остановки, т. е. теперь возможно, что при вычислении длины шага

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

Таким образом, условие останова будет таким. Процесс останавливается, если:

на очередном шаге

или

на очередном шаге оказывается, что

.

В первом случае алгоритм, естественно, приводит в точку максимума. Во втором случае направление  будет направлением неограниченного возрастания функции . В самом деле, на прямой

при  функция  имеет вид

,

причем

,

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

Нам остается убедиться, что останов произойдет не более чем через  шагов, где  – ранг матрицы . В самом деле пусть при  выполнено условие . Тогда остаются в силе соотношения

 при  

(при выводе этих соотношений положительно-определенность не использовалась).

Отсюда следует, что векторы   образуют -ортогональный базис, а градиент  в точке  ортогонален гиперпространству  размерности , состоящему из векторов вида

,

причем

,

так что в точке  достигается условный максимум функции  на . Далее, на гиперпространстве  функция  имеет вид

,

где

,

и так как , то квадратичная часть  положительно определена. Но, как известно из линейной алгебры, это возможно только в том случае, когда размерность пространства  меньше или равна рангу  матрицы .

Следовательно, останов обязательно произойдет при .

 



<< ПредыдущаяОглавлениеСледующая >>