Методы предварительных эквивалентных преобразований и итерационные методы с минимизацией невязки для решения СЛАУ

Реферат «Введение в численные методы»



	Тема: «Методы предварительных эквивалентных преобразований и итерационные методы с минимизацией невязки для решения СЛАУ»






1. Методы предварительных эквивалентных преобразований



1.1 Преобразование вращения



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

Смысл этого подхода состоит в том, чтобы последовательно, умножением слева и / или справа на специальные унитарные матрицы, превратить некоторые компоненты исходной матрицы в нуль.

Матрица S называется унитарной, если ее произведение со своей комплексно сопряженной равно единичной матрице. Это означает, что комплексно сопряженная матрица равна обратной матрице:







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







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

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

Частные повороты вектора в многомерном пространстве с помощью матрицы вращения можно выполнять, если ее расширить до матрицы размера  следующим образом:



.



Индексы i, j обозначают матрицу вращения, поворачивающую вектор в плоскости  на угол .

Теперь частное эквивалентное преобразование матрицы A вращением на угол  записываются так:



.



Условие превращения в нуль ij-тых элементов симметричной матрицы A можно получить методом неопределенных коэффициентов на двумерной матрице:



.



.


Угол поворота, при котором , находится из уравнения



.



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



.



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







Для получения результирующей матрицы выполнять матричное умножение трех матриц совсем необязательно. Структура матриц вращения вызывает при умножениях изменение только тех элементов исходной матрицы, которые находятся на i-той и j-той строчках и на i-том и j-том столбцах. Изменения представляются суммами элементов, стоящих в строчках и столбцах, умноженных на синус или косинус угла  в соответствии с формулами, где j>i:



преобразования строк – ;

преобразование столбцов –.



На пересечениях i-й строки и i-того столбца и j-й строки и j-того столбца располагаются соответственно вычисленные выше  и , а на местах ij-того и ji-того элементов вставляются нули.

Для приведения к диагональной матрице необходимо выполнить  таких элементарных преобразований.



1.2 Ортогональные преобразования отражением



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

Смысл этого подхода состоит в том, чтобы умножением матрицы A слева на специально подобранную унитарную матрицу  один из столбцов исходной матрицы (например, ) преобразовать в вектор, параллельный единичному координатному вектору  (или ). Тогда, последовательно подбирая нужные унитарные матрицы  и соответствующие единичные векторы , после n циклов эквивалентных преобразований можно будет получить верхнюю треугольную матрицу:








При выборе в качестве начального вектора  и умножениях матрицы A на ортогональные матрицы справа в конечном счете можно получить нижнюю треугольную матрицу.

Весь вопрос состоит в том, как формировать унитарную матрицу с заданными свойствами из векторов  и столбцов  матрицы A.

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

Чтобы (k+1) – мерный векторный треугольник  сделать параллельным k-мерной гиперплоскости с нормалью n (вектор единичной длины, перпендикулярный плоскости), необходимо приравнять нулю скалярное произведение: (n, y)=0.

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







Разрешив первое относительно  и подставив его в , получим






Проекцию вектора  можно заменить скалярным произведением (n, z) и подставить в выражение для , выразив тем самым зеркально отраженный вектор через исходный вектор и нормаль гиперплоскости:







Здесь M представляет унитарную матрицу, преобразующую произвольный вектор в зеркально отраженный. В том, что матрица унитарная, нетрудно убедиться, проверив ее произведение со своей комплексно сопряженной:







Выражение для зеркально отраженного вектора позволяет представить нормальный вектор в виде линейной функции от задаваемого вектора z:







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








Выбрав  для комплексных матриц или  – для действительных матриц, будем иметь







Такое нормирование не нарушает коллинеарности отраженного и единичного векторов:









Рассмотрим пример воздействия ортогонального преобразования на матрицу





.














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






2. Итерационные методы с минимизацией невязки



2.1 Ускорение сходимости итерационных методов



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

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

Процедуры ускорения связаны с построением очередного вектора по одному или нескольким его значениям на предыдущих итерационных циклах. Фактически речь идет о построении на каждом шаге итераций интерполирующей функции с векторным аргументом, по которой вычисляют очередной вектор для подстановки. Для вычисления вектора  на (k+1) – ом шаге итераций необходимо сначала получить величину  и единичный вектор направления  и просуммировать предыдущий вектор  с добавочным вектором:



.


Подстановка последнего в уравнение () образует вектор  из покомпонентных невязок. Для задания структурной взаимосвязи каждой невязки с соответствующей компонентой вектора  и образования функционала (скалярной функции от вектора невязок) возмем скалярное произведение вектора невязки на вектор-строку :



.



После подстановки очередного вектора функционал получит новое значение, которое будет зависеть от некоторого скаляра :



.



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











Из последнего равенства для (k+1) – й итерации величина шага  в направлении вектора  должна быть вычислена так:



.


Если единичные векторы направления последовательно выбирать равными координатным, т.е. , то будет реализован метод Гаусса-Зейделя (метод покоординатного спуска в задачах оптимизации).

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







2.2 Метод сопряженных направлений



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

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

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







Выбрав в начале итераций  и , после выполнения приведенных вычислений в (n-1) цикле будут получены векторы направлений, удовлетворяющие соотношениям



,



а векторы невязок будут ортогональными:



.



Относительно метода сопряженных градиентов доказывается, что, если матрица (положительно определенная и симметричная) имеет только m (m<n) различных собственных значений, то итерационный процесс сходится не более, чем за m итераций. Однако в практической реализации скорость сходимости существенно зависит от величины меры обусловленности  и в итерационном процессе может быть оценена согласно неравенству:



,


где	 – коэффициент, степень которого на каждом шаге итерационного процесса показывает во сколько раз уменьшилось расстояние до вектора точного решения x*.

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






Литература



		Бахвалов И.В. Численные методы. БИНОМ, 2008. – 636c.

		Волков Е.А. Численные методы. Изд-во ЛАНЬ, 2004. – 256.

		Демидович Б.П., ред., Марон И.А., Шувалова Э.З. Численные методы анализа. Издательство ЛАНЬ, 2008.

		Пантелеев А.В., Киреев В.И., Пантелеев В.И., Киреев А.В. Численные методы в примерах и задачах. М: Высшая школа, 2004. – 480c.

		Пирумов У.Г., Пирумов О.Г. Численные методы. Изд-во: ДРОФА, 2004. – 224c.

2