Professional Documents
Culture Documents
Chuong 3, He Phuong Trinh Tuyen Tinh
Chuong 3, He Phuong Trinh Tuyen Tinh
Võ Trần An
1 ĐẶT VẤN ĐỀ
2 PHƯƠNG PHÁP GAUSS
3 PHUONG PHÁP NHÂN TỬ LU
4 CHUẨN VECTO, CHUẨN MA TRẬN
5 NHỮNG PHƯƠNG PHÁP LẶP
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Đặt vấn đề
ĐẶT VẤN ĐỀ
Nếu thực hiện các phép biến đổi sơ cấp sau trên hệ (1):
1 Đổi chỗ các phương trình của hệ (hi ↔ hj ) hay (ci ↔ cj ) có
đánh số lại các ẩn.
2 Nhân vào một phương trình của hệ 1 số λ 6= 0.
3 Cộng vào một phương trình của hệ một phương trình khác đã
được nhân với một số (hi → hi λhj ).
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Phương pháp Gauss
Phương pháp Gauss
Ví dụ 1
Giải hệ phương trình:
x1 + 2x2 + 3x3 + 4x4 = 7
2x1 + x2 + 2x3 + 3x4 = 6
3x + 2x2 + x3 + 2x4 = 7
1
4x1 + 3x2 + 2x3 + x4 = 18
Giải:
1 2 3 4
7 1 2 3 4
7
2 1 2 3 6 0 1 4 5 6
→
3 2 1 2 7 0 0 1 1 2
4 3 2 1 18 0 0 0 2 −6
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Phương pháp Gauss
Phương pháp Gauss
1 2 3 4
7
0 1 4 5 6
0 0 1 1 2
0 0 0 2 −6
Vậy hệ đã cho tương đương với hệ sau
x1 + 2x2 + 3x3 + 4x4 = 7
x2 + 4x3 + 5x4 = 6
x3 + x4 = 2
2x4 = −6
x1 = 2
x2 = 1
↔
x = 5
3
x4 = −3
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Phương pháp Gauss
Phương pháp Gauss-Jordan
Định nghĩa 1
Phần tử trội là phần tử có trị tuyệt đối lớn nhất, sao cho không
cùng hàng và cột với những phần tử đã chọn trước.
Ví dụ 2
Giải hệ phương trình
x1 − x2 + 2x3 − x4 = −8
2x1 − 2x2 + 3x3 − 3x4 = −20
x1 + x2
+ x3 = −2
x1 − x2 + 4x3 + 3x4 = 4
h3 → 4h3 − h4
h2 → 4h2 − 3h4
1 −1 0 −5
−20
h1 → 2h1 − h4 5 −5 0 −21 −91
−−−−−−−−−−−−−→
3 5 0 −3 −12
1 −1 4 3 4
Chọn phần tử trội không được nằm trên hàng 4 và cột 3 là
a24 = −21
h1 → 21h1 − 5h2
h3 → 7h3 − h2 −4 4 0 0
40
h4 → 7h4 + h2
5 −5 0 -21 −92
−−−−−−−−−−−−−−→
16 40 0 0
8
12 −12 28 0
−64
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Phương pháp Gauss
Phương pháp Gauss-Jordan
Chọn phần tử trội không được nằm trên hàng 4,2 và cột 3,4 là
phần tử a3 2 = 40
h1 → 10h1 − h3
h2 → 8h2 + h3 −56 0 0 0
392
h4 → 10h4 + 3h3 56 0 0 −168 −728
−−−−−−−−−−−−−−→
16 40 0 0
8
−616
168 0 280 0
Chọn phần tử trội không được nằm trên hàng 4,2,3 và cột 3,4,2 là
phần tử a11 = −56
h2 → h2 + h1
h3 → 7h3 + 2h1
-56 0 0 0 392
h4 → h4 + 3h1
−−−−−−−−−−−−−→ 0 0 0 −168 −336
0 280 0 0
840
0 0 280 0
560
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Phương pháp Gauss
Bài tập
BÀI TẬP
Vậy
hệ đã cho tương đươngvới hệ sau:
−56x1 = 392
x1 = −7
−168x4 = −336 x2 = 3
↔
280x2 = 840 x = 2
3
280x3 = 560 x4 = 2
Bài 1
Sử dụng phương pháp phần tử trội giải hệ phương trình
2x1 − 1.5x2 + 3x3 = 1
−x1 2x3 = 3
4x1 − 4.5x2 + 5x3 = 1
LY = B
UX = y
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Phương pháp nhân tử LU
Nội dung phương pháp
Có nhiều phương pháp phân tích A = LU, tuy nhiên ta thường xét
trường hợp L có đường chéo chính bằng 1 và gọi là phương pháp
Doolittle. Khi L và U có dạng
1 0 0 0
l21 1 · · · 0
L= .
.. . . ..
.. . . .
ln1 ln2 · · · 1
u11 u12 · · · u1n
0 u22 · · · u2n
U=
.. .. .. ..
. . . .
0 0 ··· unn
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Phương pháp nhân tử LU
Nội dung phương pháp
Các phần tử của 2 ma trận L và U được xác định theo công thức
u1j = a1j (1 ≤ j ≤ n)
ai1
li1 = (2 ≤ i ≤ n)
Pui−1
11
uij = aij − k=1 lik ukj (1 < i ≤ j)
1 Pj−1
= uij (aij − k=1 lik ukj )
l
ij (1 < j < i)
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Phương pháp nhân tử LU
Nội dung phương pháp
Ví dụ 3
Giải hệ phương trình bằng phương pháp LU
2x1 + 2x2 − 3x3 = 9
−4x1 − 3x2 + 4x3 = −15
2x1 + x2 + 2x3 = 3
Giải:
2 2 −3 1 0 0 u11 u12 u13
−4 −3 4 = l21 1 0 0 u22 u23
2 1 2 l31 l32 1 0 0 u33
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Phương pháp nhân tử LU
Nội dung phương pháp
Do đó
1 0 0 y1 9
LY = B ↔ −2 1 0 y2 = −15
1 −1 1 y3 3
9
→ Y = L−1 .B = 3
−3
2 2 −3 x1 9
Ta có: UX = Y ↔ 0 1 −2 x2 = 3
0 0 3 x3 −3
2
→ X = U −1 .Y = 1
−1
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Phương pháp nhân tử LU
Bài tập
BÀI TẬP
Bài 1
Sử dụng phương pháp nhân tử LU giải hệ phương trình
2x1 − 5x2 + 4x3 = 1
3x1 + 3x2 + 9x3 = 0
3x1 + 6x2 + 5x3 = 4
2 −31
Đáp số: (x1 , x2 , x3 ) = ( 89
34 , 17 , 34 )
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Phương pháp nhân tử LU
Bài tập
BÀI TẬP
Bài 2
2 3 3
Cho A = 2 2 8 . Phân tích A = LU theo phương pháp
6 5 2
Doolittle, phần tử l32 trong ma trận L là?
a. 3.0000
b. 4.0000
c. 5.0000
d. 6.0000
e. Các câu kia sai.
BÀI TẬP
Bài 3
2 1 8
Cho A = 6 5 3 . Phân tích A = LU theo phương pháp
1 6 9
Doolittle, phần tử u11 + u22 + u33 trong ma trận U là?
a. 63.7500
b. 64.7500
c. 65.7500
d. 66.7500
e. Các câu kia sai.
Định nghĩa 2
Ma trận vuông A được gọi là đối xứng nếu AT = A.
Định nghĩa 3
Ma trận vuông A được gọi là xác định dương nếu như
∀x ∈ Rn , x 6= 0 : x T Ax > 0
Định lí 1
Ma trận vuông A xác định dương khi và chỉ khi tất cả những định
thức con chính của nó đều lớn hơn 0.
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Phương pháp nhân tử LU
Phương pháp Choleski
Định lí 2
Cho ma trận vuông A là đối xứng và xác định dương. Khi đó
A = B.B T , với B là ma trận tam giác dưới và được xác định như
sau:
√
b = a , bi1 = ba11
i1
(2 ≤ i ≤ n)
11 q 11 P
i−1 2
bii = aii − k=1 bik (1 < i ≤ n)
bij = 1 (aij − Pj−1 bik bjk ), (1 < j < i)
bij k=1
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Phương pháp nhân tử LU
Phương pháp Choleski
Ví dụ 4
Giải hệ phương trình bằng phương pháp Choleski
x1 + x2 − x3 = 1
x1 + 2x2 = 2
−x1 + 4x3 = 3
Giải:Ta có
1 1 −1
A = 1 2 0 là ma trận đối xứng.
−1 0 4
Ngoài ra dễ thấy ∆1 = 1 > 0; ∆2 = 1 > 0; ∆3 = 2 > 0 nên A là
ma trận xác định dương.
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Phương pháp nhân tử LU
Phương pháp Choleski
b11 0 0 b11 b21 b31
A = B.B T = b21 b22 0 0 b22 b32
b31 b32 b33 0 0 b33
Từ đây ta tính được √
b11 = 1; b21 = 1; b31 = −1; b22 = 1; b32 = 1; b33 = 2
Hệ phương trình viết lại dưới dạng ma trận:
T By = b
Ax = b → B.B .x = b ↔
BT x = y
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Phương pháp nhân tử LU
Phương pháp Choleski
−1
1 0 0 1
By = b → y = B −1 b = 1 1 √0 2
−1 1 2 3
−1
1
1 1 −1 3
B T x = y → x = 0 1 √1 1 = −1/2
0 0 2 √3 3/2
2
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Phương pháp nhân tử LU
Phương pháp Choleski
Ví dụ 5
Tìm ma trận B trong phép phân tích Choleski của ma trận
4 −3 0
A = −3 4 2
0 −2 4
Đáp án:
2 √ 0 0
B = −3/2 √7/2 √0
0 −4 7/7 2 21/7
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Phương pháp nhân tử LU
Bài tập
BÀI TẬP
Bài 1
4 4 α
Cho ma trận A = 4 6 2 . Với những giá trị nguyên nào
α 2 7
của α thì ma trận A là ma trận xác định dương
a. -4
b. -2
c. 0
d. 6
e. Các câu kia sai
BÀI TẬP
Bài 2
4 2
Cho ma trận A = . Phân tích A = BB T theo phương
2 6
pháp Choleski, ma trận B là?
2 0
a. A = .
1 2.24
2 0
b. A = .
−1 2.24
2 0
c. A =
0 2.28
2 0
d. A =
−1 2.28
BÀI TẬP
Bài 3
4 2 −5
Cho ma trận A = 2 3 3 . Phân tích A = BB T theo
−5 3 25
phương pháp Choleski, tổng các phần tử b11 + b22 + b33 của ma
trận B là?
a. 5.3182
b. 5.3184
c. 5.3186
d. 5.3188
e. Các câu kia sai.
Định nghĩa 4
Trong không gian tuyến tính thực Rn . Chuẩn của vecto X ∈ Rn là
một số thực, ký hiệu ||X || thỏa các điều kiện sau:
1 ∀X ∈ R, ||X || ≥ 0, ||X | = 0 ↔ X = 0
2 ∀X ∈ R, ∀λ ∈ R, ||λX || = |λ|.||X ||
3 ∀X , Y ∈ R, ||X + Y || ≤ ||X || + ||Y ||
Trong không gian Rn có rất nhiều chuẩn, tuy nhiên ta chỉ xét chủ
yếu 2 chuẩn thường dùng sau: ∀X = (x1 , x2 , ..., xn )T ∈ Rn
Pn
1 ||X ||1 = |x1 | + |x2 | + .... + |xn | = k=1 |xk |
2 ||X ||∞ = max{|x1 |, |x2 |, ..., |xn |}
Ví dụ: Cho X = (1, 2, 3, −5)T => ||X ||1 = 1 + 2 + 3 + 5 =
11; ||X ||∞ = max1, 2, 3, 5 = 5
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Chuẩn của vecto, chuẩn của ma trận
Chuẩn của ma trận
Định nghĩa 5
Chuẩn của ma trận tương ứng với chuẩn của vecto được xác định
theo công thức
||AX ||
||A|| = max||AX || = max
||X ||
Ví dụ 6
1 2
Xác định chuẩn của ma trận A = . tương ứng với chuẩn
3 4
x1
||X ||1 . Với mọi X = thỏa ||X ||1 = |x1 | + |x2 | = 1, ta có
x2
Do đó ||A|| = 6
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Chuẩn của vecto, chuẩn của ma trận
Chuẩn của ma trận
Định lí 3
Chuẩn của ma trận A = (aij ) được xác định như sau:
Pn
1 ||A||1 = max i=1 |aij |- chuẩn cột.
1≤j≤n
Pn
2 ||A||∞ = max j=1 |aij |- chuẩn hàng.
1≤i≤n
2 −1 4
Ví dụ: Cho A = 5 3 2 .
6 −7 3
||A||1 = max{2 + 5 + 6, 1 + 3 + 7, 4 + 2 + 3} = 13.
||A||∞ = max{2 + 1 + 4, 5 + 3 + 2, 6 + 7 + 3} = 16.
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Chuẩn của vecto, chuẩn của ma trận
Bài tập
BÀI TẬP
Bài 1
3 1 −1
Tính chuẩn ||.||1 và ||.||∞ của ma trận A = 1 2 1 .
−1 1 4
Đáp số:
||A||1 = 6; ||A||∞ = 6
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Những phương pháp lặp
Số điều kiện của ma trận
Định nghĩa 6
Số nhỏ nhất k(A) thỏa điều kiện k(A) ≤ Cond(A) = ||A||.||A−1 ||
được gọi là số điều kiện của ma trận A.
Trong thực hành tính toán, ta có thể gặp những hệ phương trình
tuyến tính mà những thay đổi nhỏ trên hệ số tự do sẽ gây ra sự
thay đổi lớn về nghiệm. Hệ phương trình như vậy được gọi là hệ
không ổn định. Ngược lại, hệ được gọi là hệ ổn định. Chú ý: Người
ta chứng minh được rằng, 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 tuyến tính. Số điều kiện càng
gần 1 thì hệ càng ổn định, ngược lại số điều kiện càng lớn, hệ càng
mất ổn định
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Những phương pháp lặp
Sự không ổn định của hệ phương trình tuyến tính
Ví dụ 7
1 2
Xét hệ phương trình AX = B với A = và
1 2.01
3 1
B= . Dễ dàng thấy được hệ có nghiệm X =
3.01 1
3
Bây giờ ta xét hệ AX = B với B = .
3.1
−17
Nghiệm bây giờ của hệ là .
10
Ta thấy k∞ (A) = 1207.01 1. Do đó B ≈ B nhưng kết quả của
chúng lại rất xa nhau
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Những phương pháp lặp
Bài tập
BÀI TẬP
Bài 1
2 −4
Cho A = . Số điều kiện tính theo chuẩn một của ma
6 9
trận A là:
a. 3.6429
b. 4.6429
c. 5.6429
d. 6.6429
e. Các câu kia sai.
BÀI TẬP
Bài 2
−6 −4 7
Cho A = 4 −3 −8 . Số điều kiện tính theo chuẩn vô
−4 5 −4
cùng của ma trận A là:
a. 4.6854
b. 4.6954
c. 4.7054
d. 4.7154
e. Các câu kia sai.
Định nghĩa 7
Ma trận A được gọi là ma trận đường chéo trội nghiêm ngặt nếu
nó thỏa mãn điều kiện
n
X
|aij | < |aii |, i = 1, 2, ..., n
j=1,j6=i
Xét hệ phương trình (1) với A là ma trận đường chéo trội nghiệm
ngặt.Ta
phân tích ma trận Athành
a11 a12 · · · a1n a11 0 · · · 0
a21 a22 · · · a2n 0 a22 · · · 0
A= ··· ··· ··· ··· = ··· ··· ··· ··· −
Ta có
AX = B ↔ (D − L − U)X = B
↔ (D)X = (L + U)X + B
↔ X = D −1 (L + U)X + D −1 B
Ví dụ 8
Bằng phương pháp lặp Jacobi, tìm nghiệm gần đúng của hệ
phương trình với sai số 10−4 , chọn chuẩn vô cùng
4x1 + 0.24x2 − 0.08x3 = 8
0.09x1 + 3x2 − 0.15x3 = 9
0.04x1 − 0.08x2 + 4x3 = 20
Giải: Ta thấy |0.24| + | − 0.08| < |4|; |0.09| + | − 0.15| < |3|;
|0.04| + | − 0.08| < |4| nên ma trận A trội nghiêm ngăt. Do đó
phương trình lặp Jacobi luôn hội tụ. Ta tiến hành đưa về dạng
X = T j X + Cj
−1
4 0 0 0 −0.24 0.08
Tj = D −1 (L + U) = 0 3 0 . −0.09 0 0.15
0 0 4 −0.04 0.08 0
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Những phương pháp lặp
Phương pháp lặp Jacobi
0 −0.06 0.02
Vậy Tj = −0.03 0 0.05
−0.01 0.02 0
x1 2 0 −0.06 0.02 x1
↔ x2 = 3 + −0.03 0 0.05 . x2
x3 5 −0.01 0.02 0 x3
BẤM MÁY:
Ví dụ 9
12x1 − 4x2 = 4
Cho hệ phương trình . Với
2x1 + 13x2 = 3
x (0) = [0.5, 0.3]T , vecto x (3) tính theo phương pháp Jacobi là
0.384
a.
0.176
0.386
b.
0.174
0.388
c.
0.172
0.390
d.
0.170
e. Các câu kia sai
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Những phương pháp lặp
Phương pháp lặp Jacobi
1
x1 = 12 (4 + 4x2 )
1
x2 = 13 (3 − 2x1 )
Bấm máy:
4 + 4B 3 − 2A
X = :B= :A=X
12 13
CALC B = 0.3, A = 0.5
(3) (3)
Nhấn tiếp dấu ”=” cho tới
nghiệm x1 , x2
0.388
Kết quả: x (3) = . Chọn C.
0.172
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Những phương pháp lặp
Phương pháp Gauss-Seidel
Điều kiện hội tụ của phương pháp Gauss-Seidel hoàn toàn giống
với phương pháp Jacobi. Công thức đánh giá sai số của nghiệm
gần đúng:
||Tg ||
||X (m) − X || ≤ .||X (m) − X (m−1) ||
1 − ||Tg ||
hoặc
||Tg ||(m)
||X (m) − X || ≤ .||X (1) − X (0) ||
1 − ||Tg ||
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Những phương pháp lặp
Phương pháp Gauss-Seidel
Ví dụ 10
Bằng phương pháp Gauss-Seidel, tìm nghiệm gần đúng của hệ
phương trình với sai số 10−4 , chọn chuẩn vô cùng
4x1 + 0.24x2 − 0.08x3 = 8
0.09x1 + 3x2 − 0.15x3 = 9
0.04x1 − 0.08x2 + 4x3 = 20
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Những phương pháp lặp
Phương pháp Gauss-Seidel
Giải:Ta thấy |0.24| + | − 0.08| < |4|, .. Tương tự với hàng thứ 2
và 3 nên ma trận hệ số A là ma trận đường chéo trội nghiệm ngặt.
Đưa hệ về dạng X (m) = Tg X (m−1) + Cg , m = 1, 2, ...
(m) (m−1) (m−1)
x1
= 41 (8 − 0.24.x2 + 0.08.x3 )
(m) 1 (m) (m−1)
x2 = 3 (9 − 0.09.x1 + 0.15.x3 )
(m)
1 (m) (m)
x3 = 4 (20 − 0.04.x1 + 0.08.x2 )
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Những phương pháp lặp
Phương pháp Gauss-Seidel
−1
4 0 0 0 −0.24 0.08
Tg = (D −L)−1 U = 0.09 3 0 . 0 0 0.15
0.04 0.08 4 0 0.08 0
0 −0.06 0.02
= 0 1.8 × 10−3 0.0494
0 5.64 × 10 −4 −1.188 × 10 −3
Bấm máy
8 − 0.24B + 0.08C
A= :
4
9 − 0.09A + 0.15C
B= :
3
20 − 0.04A + 0.08B
C=
4
CALC B = 3, C = 5 (Không nhập A)
(3) (3) (3)
Nhấn tiếp dấu ”=” cho tới nghiệm x1 , x2 , x3 .
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Những phương pháp lặp
Phương pháp Gauss-Seidel
Ví dụ 11
15x1 − 6x2 = 5
Cho hệ phương trình . Với
−5x1 + 8x2 = 5
x (0) = [0.3, 0.2]T , vecto x (3) tính theo phương pháp Gauss-Seidel
là:
0.753
a. x (3) =
1.099
0.755
b. x (3) =
1.097
0.757
c. x (3) =
1.095
0.759
d. x (3) =
1.093
e. Các câu kia sai.
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Những phương pháp lặp
Phương pháp Gauss-Seidel
Bấm máy:
5 + 6B 5 + 5A
A= :B=
15 8
CALC B = 0.2 không nhập A
(3) (3)
Nhấn tiếp dấu ”=”cho tới nghiệm
x1 , x2
0.755
Vậy x (3) = x (3) = . Chọn B.
1.097
HỆ PHƯƠNG TRÌNH TUYẾN TÍNH
Những phương pháp lặp
Phương pháp Gauss-Seidel