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

Этот метод применяется к СЛАУ

с симметрической положительно-определенной -матрицей A: ,

для любого q.

Его можно считать итерационным, так как решение ищется в виде

,

где – параметр, – так называемый вектор сопряженного гради-ента, k – номер итерации.

С другой стороны, пусть построена последовательность

.

И пусть эта последовательность векторов является линейно-независимой и образует базис пространства . В этом случае любой вектор пространства , и в частности вектор , может быть представлен в виде разложения по базису

и, следовательно,

,

или

.

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

Построим метод сопряженных градиентов. Предположим, что на k-й итерации каким-либо способом вычислено . Тогда

.

Как вычислить параметр ? Рассмотрим квадратичную функцию

.

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

.

Отсюда

.

Так как

, ,

то

,

где – текущий вектор невязки.

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

.

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

.

Так как вычислено при расчете , для нахождения потребуются лишь незначительные вычислительные затраты.

Рассмотрим теперь, как строятся на итерациях векторы сопряженных градиентов. Два вектора и являются сопряженными, или иначе A-ортогональными, если

.

Примем в качестве начального сопряженного градиента вектор , где . Построим следующее правило расчета сопряженного градиента:

.

Выберем параметр таким образом, чтобы векторы и были сопряженными. Умножим это соотношение слева сначала на матрицу A, затем на вектор :

.

Если учесть, что , нетрудно получить расчетное соотношение для параметра :

.

В итоге метод сопряженных градиентов можно представить следующим алгоритмом расчета:

1. Вычислить .

2. Вычислить в цикле (k=0,1,2,…):

2.1. ( – запомнить);

2.2. ;

2.3. ;

2.4. ;

2.5. .

Теоретически векторы и , построенные по этому алгоритму, должны удовлетворять условиям

.

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

Приведем в заключение оценку времени выполнения итерации метода сопряженных градиентов при решении СЛАУ с пятидиагональной матрицей A:

.

 








Дата добавления: 2016-01-26; просмотров: 691;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.011 сек.