Обусловленность СЛАУ. Число обусловленности матрицы Понятия согласованных норм матриц и векторов позволяют оценить погрешности, возникающие при численном решении СЛАУ. Пусть и матрица, и правая часть системы заданы с некоторой погрешностью, тогда наряду с системой Au = f (2.4) рассматривается система ( A A)(u u) f f . (2.5) Теорема. Пусть правая часть и невырожденная матрица СЛАУ (2.4) вида Au = f, u Ln , f Ln , получили приращения f и A соответственно. Пусть существует обратная матрица А–1 и выполнены условия А 0, А А 1, где A A1 . В этом случае оценка относительной погрешности решения u / u удовлетворяет неравенству f u A . A u f A 1 A Доказательство. Из (2.5) следует, что u A 1 (f A u A u). Переходя в этом равенстве к норме и использовав неравенство треугольника, получаем u A 1 f A 1 A u A 1 A u , или u A1 f f f A1 A A A u A1 A A A u . Вводя обозначение (A) A1 A , перепишем последнее равенство в виде f ΔA f f A f A A u 1 u u u u . Заметим, A f A A f A A f что f A u , т.к. f Au A u . Тогда для оценки относительной погрешности решения окончательно получим u f A ( ). (2.6) A u f A 1 A При A 0 получаем оценку при наличии погрешности только правых частей u Δf , (2.7) u f если в (2.5) положить A u 0, то u f A ( ). (2.8) u f A В результате получено важное соотношение, показывающее, на сколько возрастают относительные ошибки решения СЛАУ в случае наличия относительных ошибок при задании правых частей и элементов матриц. Величина ( A) A 1 A , (2.9) называется числом обусловленности матрицы A. Число обусловленности определяет, насколько погрешность входных данных может повлиять на решение системы (2.1). Почти очевидно, что всегда 1. Действительно 1 Е A 1A A 1 A . При 1 10 , то ошибки входных данных слабо сказываются на решении и система (2.1) считается хорошо обусловленной. При 102 103 система является плохо обусловленной. Пример. Решением системы 100u 99v 199 99u 98v 197 будет пара чисел u v 1 . Внесем возмущение в правые части системы: 100u 99v 198,99 99u 98v 197, 01. При этом решение заметно изменится: u = 2,97; v = –0,99. Воспользовавшись выбранными согласованными нормами, получим f 1 f 1 102 , (это очень малая величина), f 0,5 104 f 1 199, f1 A 1 A 1 199 , 199 199 4 104 . 1 u Значит u u f f 4 104 104 2 2 , что согласуется с результатами решения возмущенной и невозмущенной задач. Для невозмущенной задачи u 2, u 1. Рассмотрим еще одно важное свойство. Число обусловленности матрицы, как было показано ранее, можно определить, как u / f ( A), если A 0 при u u u . Можно ли найти более тонкую оценку отношения u / f , учитывающую зависимость обусловленности СЛАУ от выбора правых частей. В этом случае параметр обусловленности системы, вообще говоря, зависит и от f, и от Δf и удовлетворяет неравенству (f , f ) отношения (f ) sup f u f u u f f . Его можно определить как точную верхнюю грань u по Δf, что соответствует наихудшей ситуации. Тогда f u f u f sup f f u u f f u sup f A 1f f f u A 1 . Далее f Au A 1 sup A 1 A ( A), u u f f с другой стороны sup A 1 1 1 1 A f u 1 inf (f ) inf A inf A sup A sup 1. f f f f u f f f Параметр ν(f), характеризующий обусловленность системы, зависит от правых частей. 1 f 1 Более тонкая его оценка есть (f ) A1 f u , причем 1 (f ) . Так как такую оценку провести не всегда возможно, то чаще используется точная верхняя грань A 1 A . Такая оценка, конечно, может быть существенно завышенной. Можно также показать, что для симметричной матрицы А имеет место max kA / min kA , т.е. обусловленность СЛАУ зависит от ее спектральных свойств. k k Это следует из определения третьей нормы матрицы A 3 max kA и соотношения k A 1 min kA 3 k 1 , которое предлагается доказать самостоятельно. LU-разложение Среды прямых методов численного решения СЛАУ широко используется также LUразложение матрицы А и метод Холецкого (или метод квадратного корня). Если матрица А представима в виде произведений матриц LU, то СЛАУ может быть представлена в виде (LU )u f . (2.13) Перепишем (2.13), вводя вспомогательный вектор v, в следующем виде Lv f , Uu v (2.14) Решение СЛАУ свелось к последовательному решению двух систем с треугольными матрицами. Первый этап решения системы Lv = f: v1 f1 , l v v f , 21 1 2 2 ln1v1 ln 2v2 ln,n1vn1 vn f n , откуда можно вычислить все vk последовательно по формулам k 1 vk f k lkj v j ; k 2, ,n. j 1 Далее, рассмотрим систему Uu = v или d11u1 d 2u2 d1nun v1 , d 22u2 d 2 nun v2 , . d nnun vn , решение которой находятся в обратном порядке, т.е. при k = n – 1,…,1 по очевидным 1 формулам uk dkk (vk n dkj u j ). j k 1 Условия существования такого разложения даются следующей теоремой [5] (без доказательства). Теорема. Если все главные миноры квадратной матрицы А отличны от нуля, то существуют единственные нижняя и верхняя треугольные матрицы L = {lij} и U = {dij} такие, что А = LU. При этом все диагональные коэффициенты матрицы L фиксированы и равны единице. Опишем алгоритм нахождения элементов lij dij матриц L, U. Выписав равенство А = LU в компонентах, получим a1n 1 0 0 d11 d12 d1n a11 a12 a2 n l21 1 0 0 d 22 d2n a21 a22 . a ann ln1 ln 2 1 0 d nn n1 an 2 0 Выполнив умножение матриц, приходим к системе линейных уравнений размером n n: d11 = a11, d12 = a12,…, d1n = a1n, l21d11 = a21, l21d12 + d22 = a22, …, l21d1n + d2n = a2n, … ln1d11 = an1, ln1d12 + ln2d22 = an2 ,…, ln1d1n + … + ln,n–1dn–1,n + dnn = ann относительно неизвестных d11, d12, …, d1n, l21, d22, …, d2n, ln1, ln2, …, dnn. Специфика этой системы позволяет решить ее последовательно. Из первой строки находим d1j = a1j (j = 1,…, n). Из уравнений, входящих в первый столбец приведенной выше системы, находим li1 = ai1/d11, i = 1,…, n. Теперь можно из уравнений второй строки найти d2j = a2j – l21d1j, j = 2,…, n, а из уравнений, входящих во второй столбец, получим li2 = d 221 (ai2 – li1d12), n 1 i = 2,…, n и так далее. Последним вычисляется элемент d nn ann lnk d kn . k 1 Можно выписать общий вид этих формул j 1 dij aij lik d kj , i j, k 1 j 1 lij dij1 aij lik dkj , i > j. k 1 Приведение матриц к треугольному виду аналогично приведению матрицы в методе Гаусса и также требует количества арифметических действий порядка O(n3), точнее, 2 n3. Итерационные методы решения СЛАУ Метод простой итерации Рассмотрим систему линейных алгебраических уравнений Au = f. Проведем несколько равносильных преобразований. Умножим обе части системы на один и тот же скалярный множитель τ, затем прибавим к правой и левой частям системы вектор u. Систему уравнений можно теперь записать в виде, удобном для итераций u = Bu + F, (2.15) где B = E – τA, F = τf. Теперь построим последовательность приближений к решению системы. Выберем произвольный вектор u0 — начальное приближение к решению. Чаще всего его просто полагают нулевым вектором. Скорее всего, начальное приближение не удовлетворяет (2.15) и, следовательно, исходной системе. При подстановке его в исходное уравнение возникает невязка r0 = f – Au0. Вычислив невязку, с помощью (2.15) можно уточнить приближение к решению, считая что u1 u0 r0 . По первому приближению снова вычисляется невязка, процесс продолжается. В ходе итерации получаем uk 1 uk rk , rk f Auk . Эквивалентная формулировка метода, называемого методом простых итераций, заключается в следующем. Решение (2.15) находится как предел последовательности {u0 , u1 , u 2 , } приближений, члены которой связаны рекуррентным соотношением (оно эквивалентно приведенному выше, из записи исключен вектор невязки): (2.16) u k 1 Βu k F, u0 0 (или любому произвольному вектору). Если предел такой последовательности существует, то говорят о сходимости итерационного процесса к решению СЛАУ. Существуют другие формы записи метода итераций, например (2.17) uk1 (E A)u k f . Канонической формой записи двухслойного итерационного процесса называется следующая: u k 1 u k Dk 1 Au k f . (2.18) k 1 При D k E , k последняя формула соответствует однопараметрическому итерационному процессу — рассмотренному выше методу простых итераций. При D k E , k k , k 1, , n — n-шаговому явному итерационному процессу, при D k D , k 1 — методу простой итерации без итерационного параметра. В случае, когда D E итерационный метод называется неявным — для вычисления следующего приближения к решению придется решать (как правило, более простую, чем исходную) систему линейных уравнений. Теорема (достаточное условие сходимости метода простой итерации). Итерационный процесс (2.16) сходится к решению U СЛАУ Au F со скоростью геометрической прогрессии при выполнении условия: B q 1. Доказательство. Пусть U — точное решение системы (2). Вычитая из (2.16)-(2.15), получим u k U B(u k 1 U ) , или, обозначив погрешность ε k u k U , получим для эволюции погрешности уравнение ε k Bε k 1 . Справедлива цепочка неравенств: u k U ε k B ε k 1 q ε k 1 q k ε0 q k u 0 U , где 0 q B . Отсюда следует, что при q < 1 lim u k U. Из неравенства ε k q k ε 0 можно получить k оценку количества итераций, необходимых для достижения точности ε, т.е. для / ln q. выполнения условия u k U ε k . Эта оценка имеет вид k ln ε 0 Теорема (критерий сходимости метода простой итерации) (без доказательства). Пусть СЛАУ (2.15) имеет единственное решение. Тогда для сходимости итерационного процесса (2.16) необходимо и достаточно, чтобы все собственные значения матрицы В по абсолютной величине были меньше единицы. Сравним по количеству арифметических действий прямые и итерационные методы. Метод Гаусса без выбора главного элемента при n >> 1 требует ( 23 n 3 ) арифметических действий; метод простой итерации (2.16) (2n 2 I ) , где I — число приближений, необходимое для достижения заданной точности. Значит, при I n 3 метод итераций становиться предпочтительнее. В реальных задачах, в основном, I << n. Кроме того, итерационные методы можно делать более эффективными, изменяя итерационные параметры. В ряде случаев итерационные методы оказываются более устойчивыми по отношению к накоплению ошибок округления, чем прямые.