I. ĐẶT BÀI TOÁN :
Hệ phương trình tuyến tính n pt và n
ẩn có dạng
Ax = b
CHƯƠNG 3
HỆ PHƯƠNG TRÌNH
TUYẾN TÍNH
với
a11 a12
a
a22
A = ( aij ) = 21
... ...
a n1 a n 2
... a1n
... a2 n
... ...
... ann
x1
b1
x
b
x = 2 b= 2
...
...
xn
bn
1
2
II. PHƯƠNG PHÁP GAUSS
Các phương pháp giải
Phương pháp giải chính xác
1. Các dạng ma trận đặc biệt :
Phương pháp Gauss
Phương pháp Gauss-Jordan
Phương pháp nhân tử LU
Phương pháp Cholesky
a. Ma trận chéo :
a11
0
A=
...
0
Phương pháp giải gần đúng
0
a 22
...
...
...
0
...
...
0
0
...
a nn
detA = a11a22 . . . ann ≠ 0 ⇔ aii ≠ 0, ∀i
Phương pháp lặp Jacobi
Phương pháp lặp Gauss-Seidel
Nghiệm xi = bi/aii
3
4
b. Ma trận tam giác dưới
a11
a
A= 21
...
a n1
0
a 22
...
...
...
an 2
...
...
c. Ma trận tam giác trên :
0
0
...
a nn
a11
0
A=
...
0
a12
...
a 22
...
0
...
...
...
a1 n
a 2 n
...
a nn
detA = a11a22 . . . ann ≠ 0 ⇔ aii ≠ 0, ∀i
detA = a11a22 . . . ann ≠ 0 ⇔ aii ≠ 0, ∀i
Phương trình có nghiệm
Phương trình có nghieäm
bn
xn = a
nn
x = 1 [b −
k a kk k
b1
x1 = a
11
k −1
x = 1 [ b − ∑ a x ] , k = 2, n
k
k
kj j
a kk
j =1
n
∑
a kj x j ] , k = n − 1..1
j = k +1
5
6
Ví dụ : Giải hệ phương trình
2. Phương pháp Gauss :
Ta sử dụng các phép biến đổi sơ cấp theo
dòng để chuyển ma trận A về ma trân
tam giác trên
Giải
x1 − x 2 + 2 x 3 − x 4 = − 8
2 x − 2 x + 3x − 3x = −20
1
2
3
4
+
+
=
−2
x
x
x
1
2
3
x1 − x 2 + 4 x 3 + 3 x 4 = 4
1 −1
2 −2
[ A / b] =
1 1
1 −1
Các phép biến đổi sơ cấp theo dòng
hoán chuyển 2 dòng
1
0
h4 = h4 /2
→
0
0
nhân 1 dòng với 1 số khác 0
h2 ↔ h3
cộng 1 dòng với dòng khác
7
2 −1 −8 h2 =h2 −2 h1 1 −1
h3 = h3 − h1
0 0
3 −3 −20
h4 = h4 − h1
→
1 0 −2
0 2
4 3 4
0 0
−1 2 −1 −8
1 −1
2 −1 1 6 h 4=h 4+h 3 0 2
→
0 −1 −1 −4
0 0
0 1 2 6
0 0
2 −1 −8
−1 −1 −4
−1 1 6
2 4 12
2 −1 −8
−1 1 6
−1 −1 −4
0 1 2
Giải pt ma trận tam giác trên, ta được nghiệm
x = (-7, 3, 2, 2)t
8
Phương pháp Doolittle :
III. PHƯƠNG PHÁP NHÂN TỬ LU
Giả sử A ma trận không suy biến và a11 ≠ 0
Ta có thể phân tích A thành
A = LU
Phân tích ma trận A thành tích 2 ma trận L và U
A = LU
L : ma trận tam giác dưới
U : ma trận tam giác trên
1
l
L = 21
...
ln1
Phương trình Ax = b ⇔ L(Ux) = b
Ta đưa về giải 2 hệ phương trình
0
1
...
...
...
ln 2
...
...
u11 u12
0 u
22
U=
... ...
0
0
Ly = b
Ux = y
0
0
...
1
Ma trân ∆ dưới
... u1n
... u2 n
... ...
... unn
Ma trân ∆ trên
10
9
Ví dụ : Giải hệ phương trình
Các phần tử của L và U được xác định theo
công thức
2 x1 + 2 x 2 − 3 x 3 = 9
− 4 x1 − 3 x 2 + 4 x 3 = − 15
2x + x + 2x = 3
1
2
3
u1 j = a1 j , 1 ≤ j ≤ n
li1 =
Giải
Ta phân tích
ai1
, 2≤i≤n
u11
i −1
2
A = − 4
2
k =1
u 22 = a 22 − l 21u12 = 1
uij = aij − ∑ lik ukj , 1 < i ≤ j
j −1
1
lij = [aij − ∑ lik ukj ], 1 < j < i
u jj
k =1
2
−3
1
−3 1
4 = − 2
2 1
0
1
l 32
02
0 0
1 0
2
u 22
0
−3
u 23
u 33
u 23 = a 23 − l 21u13 = − 2
l 32 =
11
1
( a 32 − l 31u12 ) = − 1
u 22
u 33 = a 33 − l 31u13 − l 32 u 23 = 3
12
TH đặc biệt : A ma trận 3 đường chéo
Giải heä Ly = b
0 0 y1 9
1
−2 1 0 y = −15
2
1 −1 1 y 3
3
a11 a12
a
21 a22
A = 0 a32
... ...
0
0
y1 9
⇒ y2 = 3
y −3
3
Giải hệ Ux = y
0
a23
a33
...
0
0
0
...
0
0
...
0
0
... ...
...
... ann −1 ann
...
Ta phân tích A thành LU với
2 2 −3 x1 9
x1 2
0 1 −2 x = 3
2 ⇒ x2 = 1
0 0 3 x −3
x −1
3
3
1 0 0 ...
l
21 1 0 ...
L = 0 l32 1 ...
... ... ... ...
0 0 0 ...
0
u11 u12
0 u
0
22
0
0 U = 0
...
... ...
0
0
1
0
0
... 0
... ...
... unn
0 ...
u23 ...
u33
...
0
13
14
Ví dụ : Giải hệ phương trình Ax = b
Các phần tử của L và U được xác định theo
công thức
2
A = −1
0
a21
u
=
a
,
u
=
a
,
l
=
11
11
12
12
21
u11
uii = aii − li i −1ui −1i , i = 2, n
ui i +1 = ai i +1 , i = 2, n − 1
a
li +1i = i +1i , i = 2, n − 1
uii
−1
2
−1
Giải
Ta phân tích
0
1
A = −1 / 2 1
0
l32
0
−1
2
2
b = 1
2
0 2 −1 0
0 0 u22 u23
1 0 0 u33
u22 = a22 − l21u12 = 3 / 2
u23 = a23 = −1, l32 =
15
a32
= −2 / 3
u22
u33 = a33 − l32u23 = 4 / 3
16
Giải hệ Ly = b
IV. PHƯƠNG PHÁP CHOLESKY
y1 2
⇒ y2 = 2
y 10 / 3
3
0
0 y1 2
1
−1 / 2
1
0 y2 = 1
0
−2 / 3 1 y3 2
Định nghóa :
Ma trân A gọi là đối xứng nếu
A = At
Giải hệ Ux = y
0 x1 2
2 −1
0 3 / 2 −1 x = 2
2
0
x 10 / 3
0
4
/
3
3
Ma trân A gọi là xác định dương nếu
x1 5 / 2
⇒ x2 = 3
x 5 / 2
3
n
n
x t Ax = ∑∑ aij xi x j > 0, ∀x = ( x1 , x2 ,..., xn )t ∈ R n , x ≠ 0
i =1 j =1
17
Để kiểm tra xác định dương, ta dùng đình lý sau:
Định lý :
Ma trận A là xác định dương khi và chỉ khi tất
cả các định thức con chính của nó đều dương
Ví dụ : Kiểm tra tính xác định dương của ma trận
1 1 −1
A = 1 2 0
−1 0 4
Giải
Các định thức con chính:
1
1
∆3 = 1 2
−1 0
−1
∆1 = 1 > 0, ∆ 2 =
1 1
1 2
=1> 0
1 2
1 1
1 1
0 = −1
−0
+4
=2>0
−1 0
−1 0
1 2
4
Vaäy A là xác định dương
19
18
Định lý (Cholesky) :
Nếu A ma trận đối xứng và xác định dương, thì
tồn tại ma trận ∆ dưới, khả đảo B sao cho
A = BBt
Ma trận B = (bij) tìm theo công thức sau :
b11 = a 1 1
b = a i1 , 2 ≤ i ≤ n
i 1 b1 1
i −1
b
a
bik2 , 2 ≤ i ≤ n
=
−
∑
ii
ii
k =1
j −1
1
b
=
a
−
bik b jk ], 2 ≤ j ≤ i
[
ij
∑
ij
b jj
k =1
20
Ví dụ : Giải hệ phương trình Ax = b
Giải
1
A= 1
−1
1
2
0
−1
0
4
Giải hệ By = b
1
b = 2
3
1 0
1 1
−1 1
0
0
b33
y1 1
⇒ y2 = 1
y
3 3 / 2
Giải hệ Bt x = y
Ta có A ma trận đối xứng và xác định dương
Phân tích A = BBt
1 0
B = 1 b22
−1 b
32
y1 1
y2 = 2
2 y3 3
0
0
1 1
0 1
0 0
Các hệ số
b = a − b 2 = 1
22
21
22
1
[a32 − b31b21 ] = 1
b32 =
b
22
2
2
b33 = a33 − b31 − b32 = 2
−1 x1 1
1 x2 = 1
2 x3 3 / 2
x1 3
⇒ x2 = −1 / 2
x 3/ 2
3
21
Ví dụ :
22
V. PHƯƠNG PHÁP LẶP
6
−9
9
A = 6 20 −22
−9 −22 26
1. Chuaån :
a. Chuaån vector :
Định nghóa :
Chuẩn của vector x∈Rn là hàm số thực
ký hiệu là ||x||, thỏa 3 điều kiện sau :
Phân tích A = BBT theo pp cholesky
Tính b11+b22+b33
(i) ||x||≥0, ∀x∈Rn và ||x|| = 0 ⇔ x=0
(ii) ||λx|| = |λ| ||x||, ∀x∈Rn, ∀ λ∈R
(iii) ||x+y|| ≤||x|| + ||y||, ∀x,y∈Rn
23
24
Có nhiều công thức chuẩn khác nhau, xét 2
công thức
b. Chuẩn ma trận :
Định nghóa :
Chuẩn của ma trân A được xác định theo
công thức
∀x= (x1,x2,…, xn)t
|| x ||∞ = max {| xi |}
1≤ i ≤ n
n
|| x ||1 = ∑ | xi |
|| A ||= max
x ≠0
i =1
Dễ dàng kiểm tra ||x||∞, ||x||1 là các chuẩn
gọi là chuẩn ∞ và chuẩn 1
Ví dụ :
−5
4
cho vector x =
3
−2
Định lý : Cho ma trận A = (aij), ta có
n
|| A ||∞ = max{∑ | aij |}
1≤ i ≤ n
|| x ||∞ = 5
|| x ||1 =
|| Ax ||
= max || Ax ||
||x||=1
|| x ||
j =1
n
|| A ||1 = max{∑ | aij |}
14
1≤ j ≤ n
i =1
25
Ví dụ :
26
c. Hội tụ theo chuẩn :
−1 3 6
Cho ma traän A = 3 −5 3
8 −2 −4
Định nghóa :
Dãy các vector {x(m)}∈Rn hội tụ về x
theo chuẩn nếu ||x(m) –x|| →0 khi m→∞
Tính
Định lý :
Dãy {x(m)=(x1(m), x2(m),…, xn(m) )}∈Rn hội tụ về
x = (x1, x2, …, xn) theo chuẩn nếu và chỉ nếu
dãy {xk(m)}hội tụ về xk khi m→∞, ∀k=1,n
|| A ||∞ = 14
|| A ||1 = 13
27
28
2. Phương pháp lặp :
Ta chuyển hệ pt về dạng
x = Tx + c
Với T là ma trận vuông cấp n và c là 1 vector
Để tìm nghiệm gần đúng, với vector ban đầu
x(0), ta xây dựng dãy lặp theo công thức
x(m) = Tx(m-1)+ c, ∀m=1,2,…
Ta cần khảo sát sự hội tụ của dãy {x(m)}
Ta có định lý sau
Định lý :
Nếu ||T|| < 1 thì dãy lặp x(m) sẽ hội tụ về nghiệm
x của hệ pt, với mọi vector ban đầu x(0).
Ta có công thức đánh giá sai số :
(1) || x
(m)
|| T ||m
− x ||≤
|| x (1) − x (0) || tiền nghiệm
1− || T ||
hoặc (2) || x ( m ) − x ||≤
|| T ||
|| x ( m ) − x ( m−1) || hậu nghiệm
1− || T ||
29
Phương trình
VI. PHƯƠNG PHÁP LẶP JACOBI
Ta phân tích
A=D+L+U
trong đó
a11
0
D=
...
0
0
a22
...
0
...
0
... 0
ma trận chéo
... ...
0 ann
0
a
L = 21
...
an1
0
0
...
an 2
0 a12
0 0
U =
... ...
0 0
30
... 0
... 0
ma trận ∆ dưới
... ...
... 0
... a1n
... a2 n
ma trận ∆ trên
... ...
0 0
31
Ax = b
⇔
(D+L+U)x = b
⇔
Dx = -(L+U)x + b
⇔
x = -D-1(L+U)x + D-1b
⇔
x = Tx + c
với T = -D-1(L+U) và c = D-1b
pp lặp theo phân tích trên gọi là pp lặp Jacobi
Bây giờ ta tìm điều kiện để pp laëp Jacobi HT
32
Định nghóa :
Định lý :
Ma trận A gọi là ma trận đường chéo trội nghiêm
ngặt nếu nó thỏa điều kiện sau :
Nếu A là ma trận đường chéo trội nghiêm ngặt, thì
pp lặp Jacobi hội tụ với mọi vector ban ñaàu x(0)
n
∑ |a
j =1, j ≠i
ij
| <| aii |, ∀i = 1, n
Ta có công thức lặp Jacobi
Nhận xét :
Nếu A là ma trận đường chéo trội nghiêm ngặt thì
detA ≠ 0 vaø aii ≠ 0 ∀i=1,n
xi( m ) =
n
1 i −1
[−∑ aij x (jm −1) − ∑ aij x (j m −1) + bi ], ∀i = 1, n
aii j =1
j =i +1
33
CM
34
Ta coù x(m) = Tx(m-1)+ c
Ta coù T = -D-1(L+U) vaø c = D-1b
1 / a11
0
...
0
0
1
/
a
...
0
22
D −1 =
...
...
...
...
0
0
0
1
/
ann
0
a
− 21
T = a22
...
an1
−
ann
a
− 12
a11
0
...
−
an 2
ann
a
... − 1n
a11
a2 n
... −
a22
...
...
...
0
x1(m) 0
−a12 / a11
(m)
0
x2 = −a21 / a22
...
...
(m)
x −a / a −a / a
n2
nn
n n1 nn
b1
a11
b
2
c = a22
..
bn
ann
Vậy
A ma trân đường chéo trội nghiêm ngặt neân
n
| aij |
j =1, j ≠i
| aii |
|| T ||∞ = max{ ∑
1≤i ≤ n
... −a1n / a11 x1(m−1) b1 / a11
... −a2n / a22 x2(m−1) b2 / a22
+
...
...
...
...
0 xn(m−1) bn / ann
xi( m ) =
}<1
n
1
[−∑ aij x (jm −1) + bi ], ∀i = 1, n
aii j =1
j ≠i
xi( m ) =
⇒ pp lặp hội tụ
35
n
1
[−∑ aij x (jm −1) − ∑ aij x (j m −1) + bi ], ∀i = 1, n
aii j =1
j =i +1
i −1
36
a.
Ví dụ : Cho hệ phương trình
10 x1 + x 2 − x 3 = 7
x1 + 10 x 2 + x 3 = 8
− x1 + x 2 + 10 x 3 = 9
10 1
A = 1 10
−1 1
−1
1
10
ma traän đườn g chéo trội nghiêm ngặt
Công thức lặp Jacobi
( m) 1
− x2( m −1) + x3( m−1) + 7)
x1 = 10 (
( m) 1
( m −1)
− x3( m −1) + 8)
x2 = (− x1
10
( m ) 1 ( m −1)
− x2( m −1)
+ 9)
x3 = 10 ( x1
a. Tìm nghiệm gần đúng x(5) với vector ban đầu
x(0) = 0
b. Tính ma trận T và c
c. Tính sai số của nghiệm x(5) theo công thức
hậu nghiệm
m
0
1
2
3
4
5
x1(m)
0
0.7
0.71
0.725
0.7267
0.72717
x2(m)
0
0.8
0.64
0.640
0.6368
0.63648
x3(m)
0
0.9
0.89
0.907
0.9085
0.90899
37
VII. Phương pháp lặp Gauss-Seidel :
b. Ta có
Ta phân tích
A=D+L+U
như trong phần trước
0
−0.1 0.1
0.7
T = −0.1 0
−0.1 c = 0.8
0.1 −0.1 0
0.9
c. Công thức sai số
|| x
38
(5)
Phương trình
⇔
⇔
⇔
|| T ||
|| x (5) − x (4) ||
− x ||≤
1− || T ||
Ta có ||T||∞=0.2, nên
|| x (5) − x ||≤
0.2
4.9 *10−4 = 0.1225*10−3
0.8
39
Ax = b
(D+L+U)x = b
(D+L)x = -Ux + b
x = -(D+L)-1Ux + (D+L)-1b
⇔ x = Tx + c
với T = -(D+L)-1U và c = (D+L)-1b
pp lặp theo phân tích này gọi là pp lặp Gauss-Seidel
40
Ví dụ : Cho hệ phương trình
Định lý :
20 x1 − x 2 + 2 x 3 = 12
x1 + 20 x 2 − x 3 = 13
− 2 x1 − x 2 + 20 x 3 = 14
Nếu A là ma trận đường chéo trội nghiêm ngặt,
thì pp lặp Gauss-Seidel hội tụ với mọi vector
ban đầu x(0)
a. Tìm nghiệm gần đúng x(4) với vector ban đầu
x(0) = 0
b. Tính ma trận T và c
c. Tính sai số của nghiệm x(4)
Ta có công thức lặp Gauss-Seidel
xi( m ) =
n
1 i −1
[−∑ aij x (j m ) − ∑ aij x (j m −1) + bi ], ∀i = 1, n
aii j =1
j =i +1
41
a.
20
A= 1
−2
−1
20
−1
2
−1
20
b. Ta có
ma trận đườn g chéo trội nghiêm ngặt
20 0 0
D + L = 1 20 0 ⇒ ( D + L )−1 =
−2 −1 20
Công thức lặp Gauss-Seidel
( m) 1
+ x2( m −1) − 2 x3( m −1) + 12)
x1 = 20 (
( m) 1
(− x1( m )
+ x3( m−1) + 13)
x2 =
20
( m) 1
( m)
+ x2( m )
+ 14)
x3 = 20 (2 x1
m
42
x1(m)
0
0
1
0.6
2
0.5519
3
4
0.554268975 0.554233852
x2(m)
0
0.62
0.661955
0.661700938 0.661713904
x3(m)
0
0.791 0.78828775
0.05
0
0
0.05
0
−0.0025
0.004875 0.0025 0.05
0 −1 2
0
0.05
−0.1
−1
U = 0 0 −1 ⇒ T = −( D + L ) U = 0 −0.0025
0.055
0 0 0
0 0.004875 −0.00725
0.6
c = ( D + L )−1 b = 0.62
0.791
0.788511944 0.788509080
43
44
c. Công thức sai số
|| x
(4)
VIII. Hệ pt ổn định và số điều kiện :
|| T ||
− x ||≤
|| x (4) − x (3) ||
1− || T ||
1. Heä pt ổn định :
Ta có ||T||∞=0.15, nên
|| x (4) − x ||≤
Xét hệ phương trình Ax = b
0.15
3.5123*10−5 = 0.6199 *10−5
0.85
Định nghóa :
Hệ phương trình gọi là ổn định nếu mọi thay
đổi nhỏ của A hay b thì nghiệm của hệ chỉ
thay đổi nhỏ
45
Ví dụ : Xét hệ phương trình Ax = b với
Ví dụ : Xét hệ phương trình Ax = b với
10
7
A=
8
7
1 2
3
A=
b=
1 2.01
3.01
Hệ phương trình có nghiệm x = (1, 1)T
Thay đổi
46
7
32
5 6 5
23
b=
33
6 10 9
5 9 10
31
7
8
Hệ có nghiệm x = (1, 1, 1, 1)T
Thay đổi A một ít
3
b=
3.1
7
8.1 7.2
10
7.08
5.04
6
5
A=
8
5.98 9.98
9
9
9.98
6.99 4.99
Nghiệm của hệ : x=(-17, 10)T
Nghiệm của hệ : x=(-81, 137, -34, 22)T
Ta thấy nghiệm của hệ khác rất xa khi b
thay đổi nhỏ. Vậy hệ không ổn định
Ta thấy nghiệm của hệ khác rất xa khi A
thay đổi nhỏ. Vậy hệ không ổn định
47
48
Nhận xét :
Số điều kiện của ma trận đặc trưng cho tính
ổn định của hệ phương trình
k(A) càng gần 1 thì hệ càng ổn định
k(A) càng xa 1 thì hệ càng không ổn định
2. Số điều kiện :
Ta tìm điều kiện để hệ ổn định
Định nghóa : Số
k(A) = ||A|| ||A-1||
Gọi là số điều kiện của ma trận A
Ví dụ :
Ta có các tính chất :
(i ) 1 ≤ k ( A)
|| ∆x ||
|| ∆b ||
(ii )
≤ k ( A)
|| x ||
|| b ||
|| ∆x ||
|| ∆A ||
(iii )
≤ k ( A)
|| x + ∆x ||
|| A + ∆A ||
Trong đó
Ta có
∆b thay đổi của b
∆A thay đổi của A
∆x thay đổi của nghiệm
49
Ví dụ :
Ta có
3 1 −1
A= 1 2 1
−1 1 4
Tính số điều kiện
k(A) theo chuẩn ∞
7 /13 −5 /13 3 /13
A = −5 /13 11/13 −4 / 13
3 /13 −4 /13 5 /13
−1
⇒ k(A) = 6 x 20/13 = 9.2308 >> 1
Vậy hệ không ổn định
51
1 2
Tính số điều kiện
A=
k(A) theo chuẩn ∞
1 2.01
201 −200
A−1 =
−100 100
⇒ k(A) = 3.01 x 401 = 1207.01 >> 1
Vậy hệ không ổn định
50