Processing math: 100%
Skip to main content
LibreTexts - Ukrayinska

9: Адекватність рішень

Цілі навчання

Прочитавши цю главу, ви повинні мати можливість:

  1. знати різницю між погано обумовленими та умовленими системами рівнянь,
  2. визначити і знайти норму матриці
  3. визначити та оцінити номер умови оборотної квадратної матриці
  4. співвіднести номер умови матриці коефіцієнтів з поганим або свердловинним кондиціонуванням системи одночасних лінійних рівнянь, тобто наскільки можна довіряти розв'язку одночасних лінійних рівнянь.

Що ви маєте на увазі під погано обумовленою та умовленою системою рівнянь?

Система рівнянь вважається добре обумовленою, якщо невелика зміна матриці коефіцієнтів або невелика зміна правого боку призводить до невеликої зміни вектора розв'язку.

Система рівнянь вважається погано обумовленою, якщо невелика зміна матриці коефіцієнтів або мала зміна правого боку призводить до великої зміни вектора розв'язку.

Приклад 1

Чи добре обумовлена ця система рівнянь?

[1223.999][xy]=[47.999] 

Рішення

Рішення вищевказаної множини рівнянь є

[xy]=[21]

Зробіть невелику зміну правого вектора рівнянь

[1223.999][xy]=[4.0017.998]  

дає

[xy]=[3.9994.000]

Зробіть невелику зміну в матриці коефіцієнтів рівнянь

[1.0012.0012.0013.998][xy]=[47.999]  

дає

[xy]=[3.9940.001388]

Ця остання система рівняння «виглядає» погано обумовленою, оскільки невелика зміна матриці коефіцієнтів або правої сторони призвела до великої зміни вектора розв'язку.

Приклад 2

Чи добре обумовлена ця система рівнянь?

[1223][xy]=[47]  

Рішення

Рішення вищевказаних рівнянь є

[xy]=[21]

Зробіть невелику зміну правого вектора рівнянь.

[1223][xy]=[4.0017.001]  

дає

[xy]=[1.9991.001]

Зробіть невелику зміну в матриці коефіцієнтів рівнянь.

[1.0012.0012.0013.001][xy]=[47]  

дає

[xy]=[2.0030.997]

Ця система рівнянь «виглядає» добре обумовленою, оскільки невеликі зміни в матриці коефіцієнтів або правій частині призвели до невеликих змін вектора розв'язку.

Отже, що робити, якщо система рівнянь погано умовлена або добре умовлена?

Ну, якщо система рівнянь погано обумовлена, ми не можемо довіряти рішенню так сильно. Повторно переглядайте задачу швидкості, приклад 5.1 у главі 5. Значення в матриці коефіцієнтів[A] є квадратами часу тощо Наприклад, якщо замістьa11=25, вас використовується, виa11=24.99, хочете, щоб ця невелика зміна мала мала значення у векторі розв'язку. Якби це сталося, ви б довіряли рішенню?

Пізніше ми побачимо, скільки (кількісних термінів) ми можемо довіряти розв'язку в системі рівнянь. Кожна оборотна квадратна матриця має номер умови і в поєднанні з машиною epsilon, ми можемо кількісно оцінити, скільки значущих цифр можна довіряти в рішенні.

Щоб обчислити номер умови оборотної квадратної матриці, мені потрібно знати, що означає норма матриці. Як визначається норма матриці?

Так само, як і детермінант, норма матриці - це просте унікальне скалярне число. Однак норма завжди позитивна і визначається для всіх матриць — квадратних або прямокутних, а також оборотних або незворотних квадратних матриць.

Одне з популярних визначень норми - норма суми рядків (також називається рівномірно-матричною нормою). Дляm×n[A] матриці норма суми рядків[A] визначається як

A=max1imnj=1|aij|

тобто знайти суму абсолютного значення елементів кожного рядка матриці[A]. Максимум зm таких значень - норма суми рядків матриці[A].

Приклад 3

Знайти норму суми рядків наступної матриці [A].

A=[107032.0996515]

Рішення

A=max1i33j=1|aij|=max[(|10|+|7|+|0|),(|3|+|2.099|+|6|),(|5|+|1|+|5|)]=max[(10+7+0),(3+2.099+6),(5+1+5)]=max[17, 11.099, 11]=17

Як норма пов'язана з кондиціонуванням матриці?

Почнемо відповідати на це питання на прикладі. Повертаємося до погано обумовленої системи рівнянь,

[1223.999][xy]=[47.999]

що дає рішення як

[xy]=[21]

Позначення наведеного вище набору рівнянь як

[A][X]=[C]

X=2

C=7.999

Здійснюючи невелику зміну в правій частині,

[1223.999][xy]=[4.0017.998]

дає

[xy]=[3.9994.000]

Позначення вищевказаного набору рівнянь

[A][X]=[C]

правий бік вектор знаходить по

[ΔC]=[C][C]

і зміна вектора розв'язку знаходить

[ΔX]=[X][X]

потім

[ΔC]=[4.0017.998][47.999]=[0.0010.001]

і

[ΔX]=[3.9994.000][21]=[5.9993.000]

потім

ΔC=0.001

ΔX=5.999

Відносна зміна норми вектора розчину дорівнює

ΔXX=5.9992

 =2.9995

Відносна зміна норми вектора правого боку дорівнює

ΔCC=0.0017.999

 =1.250×104

1.250×104Див. Мала відносна зміна норми правого вектора призводить до великої відносної зміни норми вектора розв'язку 2,9995.

По суті, співвідношення між відносною зміною норми вектора розв'язку і відносною зміною норми правого вектора дорівнює

ΔX/XΔC/C=2.99951.250×104=23993

Давайте тепер повернемося до добре обумовленої системи рівнянь.

[1223] [xy]=[47]

дає

[xy]=[21]

Позначення системи рівнянь по

[A][X]=[C]

X=2

C=7

Внесення невеликої зміни в правій частині вектора

[1223][xy]=[4.0017.001]

дає

[xy]=[1.9991.001]

Позначення вищевказаного набору рівнянь

[A][X]=[C]

зміна вектора правого боку потім знаходить

[ΔC]=[C][C]

і зміна вектора розв'язку

[ΔX]=[X][X]

потім

[ΔC]=[4.0017.001][47]=[0.0010.001]

і

[ΔX]=[1.9991.001][21]=[0.0010.001]

потім

ΔC=0.001

ΔX=0.001

Відносна зміна норми вектора розчину дорівнює

ΔXX=0.0012=5×104

Відносна зміна норми вектора правого боку дорівнює

ΔCC=0.0017=1.429×104

Див. Малу відносну зміну норми правого вектора1.429×104 результатів при малій відносній зміні вектора розв'язку норми5×104.

По суті, співвідношення між відносною зміною норми вектора розв'язку і відносною зміною норми правого вектора дорівнює

ΔX/XΔC/C=5×1041.429×104=3.5

Які деякі властивості норм?

  1. Для матриці[A],A0
  2. Для матриці[A] і скаляра k,kA=|k|A
  3. Для двох матриць[A] і[B] одного порядку,A+BA+B
  4. Для двох матриць[A] і[B] які можна помножити як[A] [B],ABAB

Чи існує загальний зв'язок, який існує міжΔX/X іΔC/C або міжΔX/X іΔA/A? Якщо так, то це може допомогти нам визначити добре обумовлену і погано обумовлену систему рівнянь.

Якщо є такий зв'язок, чи допоможе це нам кількісно оцінити обумовлення матриці? Тобто, чи скаже це нам, скільки значущих цифр ми могли б довіряти у розв'язанні системи одночасних лінійних рівнянь?

Існує зв'язок, яка існує між

ΔXXandΔCC

і між

ΔXXandΔAA

Ці відносини

ΔXXA  A1ΔCC

і

ΔXX+ΔXA  A1ΔAA

Наведені вище дві нерівності показують, що відносна зміна норми правого вектора або матриці коефіцієнта може посилюватися на стільки ж, скількиAA1.

Це числоAA1 називається умовою номер матриці і в поєднанні з машиною епсилон, ми можемо кількісно оцінити точність рішення[A] [X]=[C].

Доведіть для

[A] [X]=[C]

що

ΔXX+ΔX  A  A1ΔAA

Доказ

Нехай

[A]  [X]=[C](1)

Тоді якщо буде[A] змінено на[A], то[X] зміниться на[X], такий

що

[A]  [X]=[C](2)

З рівнянь (1) і (2),

[A]  [X]=[A][X]

Позначення зміни[X] матриць[A] і як[ΔA] і[ΔX], відповідно

[ΔA]=[A][A]

[ΔX]=[X][X]

потім

[A][X]=  ([A]+[ΔA]) ([X]+[ΔX])

Розширення вищевказаного виразу

[A][X]= [A][X]+[A][ΔX]+[ΔA][X]+[ΔA][ΔX]

[0]=[A][ΔX]+[ΔA]([X]+[ΔX])

[A][ΔX]=[ΔA]([X]+[ΔX])

[ΔX]=[A]1[ΔA]([X]+[ΔX])

Застосовуючи теорему норм, що норма множених матриць менше множення окремих норм матриць,

ΔXA1ΔAX+ΔX

Множення обох сторін наA

A ΔXAA1ΔAX+ΔX

ΔXX+ΔXA A1 ΔAA

Як використовувати наведені вище теореми, щоб знайти, скільки значущих цифр є правильними в моєму векторі рішення?

Відносна похибка в нормі вектора розв'язку дорівнює× відносній похибці Cond (A) у нормі правого вектора.

Можлива відносна похибка в нормі вектора розв'язку дорівнюєCond(A)×mach

ЗвідсиCond(A)×mach слід дати нам кількість значущих цифр, m які є хоча б правильними в нашому рішенні, з'ясувавши найбільше значення m дляCond(A)×mach якого менше0.5×10m.

Приклад 4

Скільки значущих цифр можна довіряти в розв'язанні наступної системи рівнянь?

[1223.999] [xy]=[24]

Рішення

Для

[A]=[1223.999] 

це може бути показано

[A]1=[3999200020001000] 

A=5.999

A1=5999

Cond(A)=AA1=5.999×5999.4=35990

Припускаючи одинарну точність з 23 бітами, що використовуються в мантиссі для дійсних чисел, машина epsilon є

mach=223=0.119209×106

Cond(A)×mach=35990×0.119209×106=0.4290×102

Для чого максимальне додатне значення m,Cond(A)×mach буде менше або дорівнює0.5×10m

0.4290×1020.5×10m

0.8580×10210m

log(0.8580×102)log(10m)

2.067m

m2.067

m2

Отже, дві значущі цифри є принаймні правильними в векторі розв'язку.

Приклад 5

Скільки значущих цифр можна довіряти в розв'язанні наступної системи рівнянь?

[1223] [xy]=[47]

Рішення

Для

[A]=[1223] 

це може бути показано

[A]1=[3221] 

Тоді

A=5,

A1=5.

Cond (A)=A  A1=5×5=25

Припускаючи одинарну точність з 23 бітами, що використовуються в мантиссі для дійсних чисел, машина epsilon

mach=223=0.119209×106

Cond(A)×mach=25×0.119209×106=0.2980×105

Для чого максимальне додатне значення m,Cond(A)×mach буде менше або дорівнює0.5×10m

0.2980×1050.5×10m

m5

Отже, п'ять значущих цифр є принаймні правильними в векторі розв'язку.

Адекватність рішень вікторини

Вікторина 1

Норма суми рядків матриці

[A]=[673131921232941475161]є

(А)29

(Б)61

(С)98

(D)200

Вікторина 2

Адекватність розв'язку одночасних лінійних рівнянь[A][X]=[C] залежить від

(A) умова номер матриці коефіцієнта[A]

(B) машина епсилон

(C) номер умови для матриці[A] та машини epsilon

(D) норма матриці коефіцієнтів[A]

Вікторина 3

З огляду на набір рівнянь у матричній формі,[A][X]=[C],A=250,A1=40andεmach=0.119×106, то кількість значущих цифр, яким можна хоча б довіряти розв'язку, дорівнює.

(А)1

(Б)2

(С)3

(D)4

Вікторина 4

Розв'язок множини одночасних лінійних рівнянь

[a11a12a13a21a22a23a31a32a33][x1x2x3]=[4494138]дається як

[x1x2x3]=[247]Розв'язок іншого набору одночасних лінійних рівнянь задається (зверніть увагу, що матриця коефіцієнтів така ж, як і вище)

[a11a12a13a21a22a23a31a32a33][x1x2x3]=[43.9993.98138.03]

дається як

[x1x2x3]=[214.01208.0160]

Виходячи з норми суми рядків, номер умови матриці коефіцієнтів більше (вибираємо максимально можливе значення)

(А)1

(Б)138

(С)4500

(D)139320

Вікторина 5

Номер умови матриціn×n ідентичності на основі норми суми рядків дорівнює

(А)0

(Б)1

(С)n

(D)n2

Вікторина 6

Нехай[A]=[12+δ2δ1]. Виходячи з норми суми рядків і враховуючиδ0δ>0, що, умова номер матриці дорівнює

(А)3δ3+δ

(Б)9δ23δ2

(С)(3+δ)23δ2

(D)32δδ23δ2

Адекватність рішень вправи

Вправа 1

Адекватність розв'язку одночасних лінійних рівнянь залежить від

  1. Номер умови
  2. машина Епсілон
  3. Твір номера стану та машина epsilon
  4. Норма матриці.
Відповідь

C

Вправа 2

Якщо система рівнянь погано[A] [X]=[C] обумовлена, то

  1. det(A)=0
  2. Cond(A)=1
  3. Cond(A)великий.
  4. Aвеликий.
Відповідь

C

Вправа 3

ЯкщоCond(A)=104 іmach = 0,119× 10 -6, то в[A] [X]=[C], принаймні ці багато значущих цифр вірні у вашому рішенні,

  1. 0
  2. 1
  3. 2
  4. 3
Відповідь

C

Вправа 4

Зробіть невелику зміну в матриці коефіцієнтів[1223.999][xy]=[47.999]
і знайдіть
ΔX/XΔA/A

Це велика чи мала кількість? Як це число пов'язане з номером умови матриці коефіцієнтів?

Відповідь

Зміна[A] на

[1.0012.0012.0014.000]

Результати в розв'язці

[59992999]

ΔXXΔAA=5999.720.0025.999

4=8.994×106 $

Вправа 5

Зробіть невелику зміну в матриці коефіцієнтів
[1223][xy]=[4 7]
і знайдіть
ΔX/XΔA/A. це велике чи маленьке число? Порівняйте свої результати з попередньою проблемою. Як це число пов'язане з номером умови матриці коефіцієнтів?

Відповідь

Зміна[A] на

[1.0012.0012.0013.000]

Результати в розв'язці

[2.0030.9970]

ΔXXΔAA=0.0032.0000.0025

=3.75

Вправа 6

Довести

ΔXX  A A1 ΔCC

Відповідь

Використовуйте теорему, що якщо[A][B]=[C] тодіABC

Вправа 7

Для

[A]=[107032.0996515]

дає

[A]1=[0.10990.23330.27990.29990.33320.39990.049950.16666.664×105]

  1. Що таке умова номер[A]?
  2. Скільки значущих цифр ми можемо хоча б довіряти в рішенні[A] [X]=[C] ifmach=0.1192×106?
  3. Не обчислюючи обернену матрицю[A], чи можете ви оцінити номер умови[A] використання теореми в задачі #6?
Відповідь

А.A=17
A1=1.033
Cond(A)=17.56

Б. 5

Спробуйте різні значення правої сторони з знаками,C=[±1  ±1  ±1]T вибраними випадковим чином. ПотімA1X отримане від розв'язання рівняння встановлюється[A] [X]=[C] якC=1.

Вправа 8

Доведіть, щоCond(A)1.

Відповідь

Ми знаємо, що

A BAB

то якщо

[B]=[A]1,

A A1AA1

IAA1

1AA1

AA11

Cond(A)1