Введение в решение СЛАУ - mipt · 2014-10-11 · Введение в...
TRANSCRIPT
Введение в решение СЛАУНормы векторов и матриц. Число обусловленности матрицы СЛАУ
к.ф.-м.н. Уткин Павел Сергеевич 1
e-mail: [email protected], [email protected](926) 2766560
Данная лекция доступна по адресуhttp://mipt.ru/education/chair/computational_mathematics/study/materials/compmath/lectures/
11 октября 2014, МФТИ, Долгопрудный
1Конспект Ивана Цыбулина, email: [email protected]
Решение СЛАУ Введение
Задачи вычислительной линейной алгебры
• Решение систем линейных алгебраических уравнений
Ax = f
• Вычисление определителей и обратных матриц
detA, B = A−1
• Вычисление собственных и сингулярных чисел и векторов
AS = SΛ, AV = UΣ, UUT = VVT = E
На практике разные вычислительные задачи приводят кнеобходимости решать линейные системы уравнений.
Уткин П.С. Нормы. Число обусловленности 2 / 30
Решение СЛАУ Введение
Задача решения системы
Найти решение системы из n линейных уравнений с n неизвестнымиa11x1 + a12x2 + · · ·+ a1nxn = f1
a21x1 + a22x2 + · · ·+ a2nxn = f2...
an1x1 + an2x2 + · · ·+ annxn = fn
,
для краткости записанной в матричной форме
Ax = f .
Существование и единственность решения этой системы гарантируетсяпри detA 6= 0.
Уткин П.С. Нормы. Число обусловленности 3 / 30
Решение СЛАУ Методы
Метод Крамера
Известен явный способ получения решения системы линейныхуравнений — это метод Крамера:
xi =∆i
∆,
где ∆ — определитель матрицы A, а ∆i — определитель матрицы,полученной из A заменой i-го столбца на вектор f .Однако, вычислять определитель по формуле
∆ =∑
i1,i2,...,in
(−1)P(i1,i2,...,in)a1i1a2i2 · · · anin
оказывается весьма затратно. Сложность вычисления решенияметодом Крамера составляет O(n · n!). Практически этот методприменим лишь при небольших размерностях системы n . 10.
Уткин П.С. Нормы. Число обусловленности 4 / 30
Решение СЛАУ Методы
Прямы и итерационные методы решения СЛАУ
Методы решения систем алгебраических уравнений можно разделитьна два класса:• Прямые методы. Данные методы позволяют получить точноерешение задачи (без учета ошибок округления) за конечное числоарифметических действий.
• Итерационные методы или методы последовательныхприближений. Позволяют вычислять последовательностьвекторов x(n), которая при n → ∞ сходится к решению задачи. Напрактике используют некоторое конечное приближение взависимости от допустимого уровня погрешности.
Уткин П.С. Нормы. Число обусловленности 5 / 30
Решение СЛАУ Обусловленность системы уравнений
Влияние неустранимых погрешностей
Пусть решается система(10 99 8
)(x1
x2
)=
(19.17.
),
причем матрица известна точно, а правая часть получена округлениемдо целого (погрешность не более 3%). Посмотрим, на какую точностьможно рассчитывать при решении системы.Отметим, что определитель матрицы detA = 10 · 8− 92 = −1 6= 0. Сточки зрения линейной алгебры, проблем при решении даннойсистемы не должно быть.
Уткин П.С. Нормы. Число обусловленности 6 / 30
Решение СЛАУ Обусловленность системы уравнений
Решение при возмущениях правой части
0 5 10 15 20f10
5
10
15
20
f2
®
-4 -2 2 4x1
-4
-2
2
4
6
x2
(10 99 8
)(x1
x2
)=
(19.17.
)
Уткин П.С. Нормы. Число обусловленности 7 / 30
Решение СЛАУ Обусловленность системы уравнений
Геометрическая интерпретация
Фактически, при решении системы(10 99 8
)(x1
x2
)=
(19.17.
)мы пытаемся разложить векторf = (19, 17)T по базису из векторовe1 = (10, 9)T и e2 = (9, 8)T
e1
e2
0 2 4 6 8 10x10
2
4
6
8
10
x2
Уткин П.С. Нормы. Число обусловленности 8 / 30
Решение СЛАУ Обусловленность системы уравнений
Плохо обусловленные системы
Задача оказалась плохо обусловленной. Сравнительно небольшиевозмущения системы уравнений привели к существенным отклонениямв решении.Обусловленность задачи не связана с конкретным численнымметодом, это неустранимая ошибка. Существуют способы сниженияпогрешности, вызванной плохой обусловленностью:• Каким-то образом перейти к хорошо обусловленнойэквивалентной системе.
• Повысить точность определения коэффициентов СЛАУ и правойчасти.
Плохо обусловленные системы являются обобщением понятиявырожденных систем. Системы «близкие» к вырожденным скореевсего будут плохо обусловлены.
Уткин П.С. Нормы. Число обусловленности 9 / 30
Нормы векторов и матриц Стандартные нормы
Нормы векторов
В вычислительной математике широко распространены следующиенормы:• максимальная или бесконечная норма (иногда используетсяназвание норма Чебышёва)
‖x‖∞ = maxi
|xi |
• `1 норма (на западе используются также названия«Манхэттеновская норма» и «норма такси»)
‖x‖1 =∑i
|xi |
• евклидова норма
‖x‖e =√
(x,x) ≡√∑
i
x2i
Уткин П.С. Нормы. Число обусловленности 10 / 30
Нормы векторов и матриц Стандартные нормы
Норма матрицы
Норма матрицы должна удовлетворять стандартным аксиомам нормы:• ‖A‖ = 0 ⇔ A = 0• ‖αA‖ = |α|‖A‖, ∀α ∈ R• ‖A+B‖ 6 ‖A‖+ ‖B‖.
Определение 6.1
Матричная норма ‖A‖ называется согласованной с векторной нормой‖x‖, если выполняется соотношение
‖y‖ 6 ‖A‖ · ‖x‖, где y = Ax
Определение 6.2
Матричная норма ‖A‖ называется подчиненной векторной норме ‖x‖,если
‖A‖ ≡ supx 6=0
‖Ax‖‖x‖
= sup‖x‖=1
‖Ax‖
Уткин П.С. Нормы. Число обусловленности 11 / 30
Нормы векторов и матриц Стандартные нормы
Свойства нормы
Определение 6.3
Матричная норма ‖A‖ называется субмультипликативной, если
‖A ·B‖ 6 ‖A‖ · ‖B‖
Если норма ‖A‖ подчинена какой-то векторной норме ‖x‖, то онасубмультипликативна:
‖A·B‖ = supx 6=0
‖ABx‖‖x‖
= supBx6=0
‖ABx‖‖x‖
6 supBx 6=0
‖ABx‖‖Bx‖
supBx 6=0
‖Bx‖‖x‖
6
Последние два супремума взяты по части множества ненулевыхвекторов. От увеличения множества они не уменьшатся:
6 supy 6=0
‖Ay‖‖y‖
supz 6=0
‖Bz‖‖z‖
= ‖A‖ · ‖B‖
Уткин П.С. Нормы. Число обусловленности 12 / 30
Нормы векторов и матриц Стандартные нормы
Свойства нормы
Если норма ‖A‖ подчинена какой-то векторной норме ‖x‖, то она сней согласована:
‖A‖ = supx 6=0
‖Ax‖‖x‖
⇒ ‖Ax‖ 6 ‖A‖ · ‖x‖.
Кроме этого, из-за компактности множества {x ∈ Rn | ‖x‖ = 1}, точнаяверхняя грань достигается на некотором векторе x0 6= 0, то есть длянего справедливо
‖Ax0‖ = ‖A‖ · ‖x0‖
Уткин П.С. Нормы. Число обусловленности 13 / 30
Нормы векторов и матриц Стандартные подчиненные нормы
Максимальная норма
С одной стороны для любого x,
‖Ax‖∞ = maxi
∣∣∣∣∣∣∑j
aijxj
∣∣∣∣∣∣ 6 maxi
∑j
|aij |maxi
|xi | = ‖x‖∞ ·maxi
∑j
|aij |,
то есть величина maxi
∑j |aij | — какая-то (возможно, не точная)
верхняя грань отношения ‖Ax‖∞‖x‖∞ .
Пусть i0 — номер строки матрицы, в которой сумма модулейэлементов максимальна:
maxi
∑j
|aij | =∑j
|ai0j |
С другой стороны, на векторе x0 = (sgn ai01, sgn ai02, . . . , sgn ai0n)T
‖Ax0‖∞‖x0‖∞ ≥
∣∣∣∣∣∣∑j
ai0j sgn ai0j
∣∣∣∣∣∣ =∑j
|ai0j | = maxi
∑j
|aij |
Уткин П.С. Нормы. Число обусловленности 14 / 30
Нормы векторов и матриц Стандартные подчиненные нормы
Максимальная норма
Следовательно, величина maxi∑
j |aij | не только является верхней
гранью отношения ‖Ax‖∞‖x‖∞ , но и достигается при некотором x = x0.
Значит, она является точной верхней гранью:
‖A‖∞ ≡ supx 6=0
‖Ax‖∞‖x‖∞ = max
i
∑j
|aij |
Утверждение 6.1Матричная норма, подчиненная максимальной векторной норме имеетвид
‖A‖∞ = maxi
∑j
|aij |,
и достигается на векторе x0, составленном из знаков строки матрицыA с максимальной суммой модулей элементов:
‖Ax0‖∞ = ‖A‖∞ · ‖x0‖∞Уткин П.С. Нормы. Число обусловленности 15 / 30
Нормы векторов и матриц Стандартные подчиненные нормы
`1 норма
С одной стороны для любого x,
‖Ax‖1 =∑i
∣∣∣∣∣∣∑j
aijxj
∣∣∣∣∣∣ 6∑i ,j
|aij ||xj | =∑j
|xj |∑i
|aij | 6 ‖x‖1 maxj
∑i
|aij |
то есть величина maxj
∑i
|aij | — верхняя грань отношения‖Ax‖1‖x‖1
.
Пусть j0 — номер столбца матрицы, в котором сумма модулейэлементов максимальна:
maxj
∑i
|aij | =∑i
|aij0 |
На векторе x0 = (0, . . . , 0, 1, 0, . . . , 0)T (1 на j0-м месте)
‖Ax0‖1‖x0‖1
=∑i
∣∣∣∣∣∣∑j
aijδjj0
∣∣∣∣∣∣ =∑i
|aij0 | = maxj
∑i
|aij |
Уткин П.С. Нормы. Число обусловленности 16 / 30
Нормы векторов и матриц Стандартные подчиненные нормы
`1 норма
Аналогично случаю максимальной нормы, мы показали, что величинаmaxj
∑i |aij | является точной верхней гранью отношения ‖Ax‖1
‖x‖1:
‖A‖1 ≡ supx 6=0
‖Ax‖1‖x‖1
= maxj
∑i
|aij | = ‖AT‖∞
Утверждение 6.2Матричная норма, подчиненная `1 векторной норме имеет вид
‖A‖1 = maxj
∑i
|aij | = ‖AT‖∞,и достигается на векторе x0 — j0-м столбце единичной матрицы:
‖Ax0‖1 = ‖A‖1 · ‖x0‖1
Уткин П.С. Нормы. Число обусловленности 17 / 30
Нормы векторов и матриц Стандартные подчиненные нормы
Евклидова норма
Воспользуемся связью между евклидовой нормой вектора искалярным произведением:
‖x‖2e = (x,x),
а также тем свойством, что ортогональные матрицы U−1 = UT
сохраняют скалярное произведение:
(Ux,Ux) = (x,x).
Представим матрицу A в виде
A = UΣVT, где UUT = VVT = E
Σ = diag(σ1, . . . , σn)
то есть осуществим ее сингулярное разложение.
Уткин П.С. Нормы. Число обусловленности 18 / 30
Нормы векторов и матриц Стандартные подчиненные нормы
Евклидова норма
Подставим сингулярное разложение
A = UΣVT
в определение подчиненной евклидовой нормы (для удобства возведемв квадрат):
‖A‖2e = supx 6=0
(Ax,Ax)
(x,x)= sup
VTx 6=0
(UΣVTx,UΣVTx)
(VTx,VTx)= sup
z 6=0
(Σz,Σz)
(z, z).
Евклидова норма матрицы равна евклидовой норме диагональнойматрицы из ее сингулярных чисел Σ.Максимальное значение отношения (Σz,Σz)
(z,z) равно σ2max и достигается
на векторе z0 = (0, . . . , 0, 1, 0, . . . , 0)T, где единица стоит на j0 месте,где j0 — номер максимального сингулярного числа матрицы A.
Уткин П.С. Нормы. Число обусловленности 19 / 30
Нормы векторов и матриц Стандартные подчиненные нормы
Евклидова норма
Утверждение 6.3Евклидова норма матрицы A равна ее максимальному сингулярномучислу
‖A‖e = σmax(A) =
√λmax(A
TA),
и достигается на соответствующем правом сингулярном векторе
x0 = Vz0 = vj0 , ATAvj0 = λmaxvj0
где j0 — номер максимального сингулярного числа, vj0 — j0-й столбецматрицы V.
Для симметричных матриц A = AT сингулярные числа совпадают смодулями собственных чисел, а сингулярные вектора совпадают ссобственными векторами.
Уткин П.С. Нормы. Число обусловленности 20 / 30
Обусловленность систем уравнений Обусловленность при фиксированной правой части
Число обусловленности
Рассмотрим систему линейных уравнений
Ax = f ,
а также систему, получающуюся из нее возмущением правой части навектор δf (это не δ умноженное на f , а вектор возмущения):
Ax ′ = f + δf .
В силу линейности,δx ≡ x ′ − x = A−1δf .
Оценим относительную погрешность решения в некоторой норме
‖δx‖‖x‖
=‖A−1δf‖‖x‖
6‖A−1‖‖δf‖‖x‖
=‖A−1‖‖f‖‖x‖
· ‖δf‖‖f‖
.
Считаем, что матричная норма согласована с векторной, и мы можемоценить ‖A−1δf‖ сверху произведением норм ‖A−1‖ · ‖δf‖.
Уткин П.С. Нормы. Число обусловленности 21 / 30
Обусловленность систем уравнений Обусловленность при фиксированной правой части
Число обусловленности
Мы получили связь между относительной погрешностью решения иотносительной погрешностью правой части системы уравнений:
‖δx‖‖x‖
6‖A−1‖‖f‖‖x‖
· ‖δf‖‖f‖
.
Величина
ν(A, f) =‖A−1‖‖f‖‖x‖
=‖A−1‖‖f‖‖A−1f‖
называется числом обусловленности системы при заданной правойчасти и показывает, во сколько раз может возрасти относительнаяпогрешность решения по сравнению с погрешностью правой части прирешении системы Ax = f .Отметим, что ‖A−1f‖ 6 ‖A−1‖‖f‖, и число ν всегда не меньшеединицы.
Уткин П.С. Нормы. Число обусловленности 22 / 30
Обусловленность систем уравнений Обусловленность при фиксированной правой части
Число обусловленности
При выводе оценки
‖δx‖‖x‖
6 ν(A, f)‖δf‖‖f‖
, ν(A, f) =‖A−1‖‖f‖‖x‖
.
неравенство возникло из оценки
‖A−1δf‖ 6 ‖A−1‖ · ‖δf‖,
которое для подчиненных норм является точным. То есть, можнопредъявить такой вектор δf , что для него неравенство превратится вравенство, а оценка
‖δx‖‖x‖
6 ν(A, f)‖δf‖‖f‖
станет равенством‖δx‖‖x‖
= ν(A, f)‖δf‖‖f‖
.
Уткин П.С. Нормы. Число обусловленности 23 / 30
Обусловленность систем уравнений Обусловленность при фиксированной правой части
Число обусловленности
С одной стороны, число обусловленности ν(A, f) не может бытьменьше единицы (опять-таки, можно предъявить f , на которомν(A, f) = 1), но может ли оно для заданной матрицы A приниматьсколь угодно большие значения?Найдем универсальную, не зависящую от f оценку сверху числаобусловленности:
ν(A, f) ≤ supf 6=0
‖A−1‖‖f‖‖A−1f‖
= ‖A−1‖ supx 6=0
‖Ax‖‖x‖
= ‖A−1‖ · ‖A‖.
Данная оценка достигается, когда ‖Ax‖ = ‖A‖ · ‖x‖.
Уткин П.С. Нормы. Число обусловленности 24 / 30
Обусловленность систем уравнений Обусловленность матрицы
Число обусловленности матрицы
Число µ(A) ≡ ‖A‖ · ‖A−1‖ называется числом обусловленностиматрицы и дает универсальную оценку относительной погрешностирешения системы с матрицей A:
‖δx‖‖x‖
6 µ(A)‖δf‖‖f‖
какой бы ни была правая часть f .Можно показать, что если возмущается не только правая часть f , но исама матрица A, то при условии ‖A−1‖ · ‖δA‖ < 1 верно
‖δx‖‖x‖
6µ(A)
1− µ(A)‖δA‖‖A‖
(‖δf‖‖f‖
+‖δA‖‖A‖
)
Доказательство можно найти в Петров И.Б., Лобанов А.И. Лекции повычислительной математике, 2006, стр. 37.
Уткин П.С. Нормы. Число обусловленности 25 / 30
Обусловленность систем уравнений Число обусловленности в разных нормах
Евклидова норма
Число обусловленности µ(A) зависит от выбранной матричной нормы.Например, для евклидовой нормы σmax(A
−1) = 1σmin(A) и число
обусловленности матрицы в евклидовой норме принимает вид
µe(A) =σmax(A)
σmin(A).
Геометрически, µe(A) показывает насколько неравномернопреобразование A растягивает пространство по своим главнымнаправлениям.
A =
(2 −30 2
)
µ(A) =σmax(A)
σmin(A)=
41= 4
-4 -2 0 2 4-3
-2
-1
0
1
2
3
Уткин П.С. Нормы. Число обусловленности 26 / 30
Обусловленность систем уравнений Число обусловленности в разных нормах
Бесконечная и `1 нормы
Поскольку бесконечная и `1 матричные нормы связаны соотношением
‖A‖∞ = ‖AT‖1,
аналогично оказываются связанными числа обусловленности
µ∞(A) = µ1(AT)
Трудность практической оценки числа обусловленности заключается воценке нормы ‖A−1‖. Введем важное понятие диагональногопреобладания:
Определение 6.4
Обозначим di = |aii |−∑
j 6=i |aij |. Говорят, что матрица имеет строгоедиагональное преобладание, если для каждой строки
di > 0 ⇔ |aii | >∑j 6=i
|aij |, ∀i = 1, . . . , n
Уткин П.С. Нормы. Число обусловленности 27 / 30
Обусловленность систем уравнений Число обусловленности в разных нормах
Бесконечная норма
Теорема (Varah, 1974)
Если матрица A имеет строгое диагональное преобладание, то
‖A−1‖∞ <1
mini
di=
1
mini
|aii |−∑j 6=i
|aij |
Подставляя эту оценку в определение µ∞(A), получаем
µ∞(A) <
maxi
|aii |+∑j 6=i
|aij |
mini
|aii |−∑j 6=i
|aij |.
Аналогичная оценка для µ1(A) получается при наличии у матрицыдиагонального преобладания по столбцам.
Уткин П.С. Нормы. Число обусловленности 28 / 30
Обусловленность систем уравнений Число обусловленности в разных нормах
Оценка для конкретной задачи
Вернемся к системе(10 99 8
)(x1
x2
)=
(19.17.
), A−1 =
1−1
(8 −9−9 10
)и посчитаем ее числа обусловленности в разных нормах:
‖A‖∞ = ‖A‖1 = 19, ‖A−1‖∞ = ‖A−1‖1 = 19,
µ1(A) = µ∞(A) = 19 · 19 = 361.
Матрица симметрична, значит
µe(A) =
∣∣∣∣λmax(A)
λmin(A)
∣∣∣∣ = √82+ 9√82− 9
≈ 326.
Таким образом, погрешность в 3% в правой части решения приводитпримерно к ∼ 1000% ошибки в решении.
Уткин П.С. Нормы. Число обусловленности 29 / 30
Заключение
Список использованных источников
1 В.И. Косарев. 12 лекций по вычислительной математике, 2-еиздание, Москва, Изд-во МФТИ, 2000, 224 с.
2 И.Б. Петров, А.И. Лобанов. Лекции по вычислительнойматематике: Учебное пособие, Москва, БИНОМ, Лабораториязнаний, 2006, 523 с.
3 J.M. Varah. A lower bound for the smallest singular value of a matrix// Linear Algebra and its Applications, V. 11, N. 1, 1975, Pp. 3-5.
Уткин П.С. Нормы. Число обусловленности 30 / 30