Лекция №5 Обусловленность СЛАУ. Число обусловленности

advertisement
Обусловленность СЛАУ. Число обусловленности матрицы
Понятия согласованных норм матриц и векторов позволяют оценить погрешности,
возникающие при численном решении СЛАУ. Пусть и матрица, и правая часть системы
заданы с некоторой погрешностью, тогда наряду с системой
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  A1 . В этом случае
оценка относительной погрешности решения 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  A1
f
f
f  A1
A
A
A u  A1 A
A
A
u .
Вводя обозначение (A)  A1  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  102 ,
(это
очень
малая
величина),
f 
 0,5 104
f 1  199,
f1
A 1  A 1  199 ,   199 199  4 104 .
1
u 
Значит
u
u

f
f
 4 104 
104
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 1f
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 )  A1
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,n1vn1  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  dij1  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)
uk1  (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. Кроме того,
итерационные методы можно делать более эффективными, изменяя итерационные
параметры. В ряде случаев итерационные методы оказываются более устойчивыми по
отношению к накоплению ошибок округления, чем прямые.
Related documents
Download