Метод ортогонализации и метод сопряженных градиентов (85790)

Посмотреть архив целиком

Введение


К решению систем линейных алгебраических уравнений приводятся многие задачи численного анализа.

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

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

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



  1. Метод ортогонализации


1.1 Метод ортогонализации в случае симметрической матрицы


Пусть дана система


(1)


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


, (2)


где n векторов, удовлетворяющих условиям


при (3)


Здесь рассматривается обычное скалярное произведение векторов в n-мерном векторном пространстве, т.е. если и , то . Пусть такие векторы найдены. Как это делается, будет показано ниже. Рассмотрим скалярное произведение обеих частей системы (1) с


(4)


Используя (2) получим:



(5)


или, в силу выбора векторов ,


. (6)


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


. (7)


Следовательно, если , то возможно найти и находятся они без труда.

Особенно легко определятся , если матрица А симметрическая. В этом случае, очевидно,


(8)


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


=0 при . (9)


Тогда система для определения примет вид


(10)



и


. (11)


Метод можно обобщить. Пусть каким-то образом удалось найти систему 2n векторов так, что


=0 при . (12)


Умножая обе части равенства (1) на и используя представление через , как и ранее, получим:


. (13)


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


(14)


(15)



(16)


Тогда


, (17)


так как при i<r


(18)


и при i>r


(19)


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


(20)


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


=0 . (21)


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


(22)


Далее проводим «ортогонализацию». Принимаем и ищем в виде


. (23)


Из условия находим:


(24)


Ищем в виде


. (25)


Условия влекут за собой


(26)


Далее поступаем также.

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


. (26)


Нетрудно проверить, что введенное таким способом скалярное произведение будет удовлетворять всем требованиям, которые к нему предъявляются.

При решении системы n уравнений по настоящей схеме требуется произвести


(28)


операций умножения и деления.


    1. Метод ортогонализации в случае несимметрической матрицы


В случае несимметрической матрицы процесс ортогонализации проводится точно также. Пусть векторы уже построены. Тогда ищется в виде


(29)


Коэффициенты определяются из системы


(30)


Система в случае несимметрической матрицы будет треугольной.

Аналогично строится система «биортогональных» векторов, т.е. система 2n векторов, удовлетворяющих условию (12). При этом n произвольных линейно независимых векторов, а векторы строятся последовательно в виде


(31)


Коэффициенты находятся из системы


(32)


Также поступаем, отыскивая коэффициенты и , при построении систем векторов (14) и (15), удовлетворяющих условиям (16).

При этом получим две системы:


(33)


из которых и определяем и .

Остановимся еще на одном методе ортогонализации. Будем рассматривать строки матрицы А как векторы:


(34)


Ортонормируем эту систему векторов. Первое уравнение системы делим на . При этом получим


(35)


где


(36)


Второе уравнение системы заменится на


(37)


где

(38)


Аналогично поступаем дальше. Уравнение с номером i примет вид



(39)


где



(40)


Процесс будет осуществим, если система уравнений линейно независима. В результате мы придем к новой системе , где матрица С будет ортогональной, т.е. обладает свойством СС=I.

Таким образом, решение системы можно записать в виде


. (41)


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



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


2.1 Первый алгоритм метода


Пусть требуется решить систему линейных алгебраических уравнений


(1)


с положительно определенной матрицей A порядка n.

Рассмотрим функционал


, (2)


представляющий многочлен второго порядка относительно x1, x2, …, xn. Обозначим через решение системы (1), т.е. . В силу симметричности и положительной определенности матрицы, имеем:



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

Для отыскания такого вектора применим следующий метод.

Пусть – произвольный начальный вектор, а


(4)


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

имеет наибольшее значение. Но



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


. (5)


Вектор


(6)


и принимаем за новое приближение к решению.

В методе сопряженных градиентов следующее приближение находится так. Через точку проведем гиперплоскость (n-1) – го измерения


(7)


и через обозначим новую невязку системы


. (8)


Вектор направлен по нормали к поверхности в точке , а вектор параллелен касательной плоскости в этой точке. Поэтому


. (9)


Гиперплоскость (7) проходит через точку , так как


.


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


,


или


. (10)


Вектор


(11)


имеет направление нормали к сечению поверхности гиперплоскости (7) в точке . Будем двигаться из точки в направлении вектора до тех пор, пока функция достигнет минимума. Это будет при


Случайные файлы

Файл
7839-1.rtf
СН 428-74.doc
148649.rtf
46581.rtf
29014-1.rtf




Чтобы не видеть здесь видео-рекламу достаточно стать зарегистрированным пользователем.
Чтобы не видеть никакую рекламу на сайте, нужно стать VIP-пользователем.
Это можно сделать совершенно бесплатно. Читайте подробности тут.