Một số phương pháp tìm nghiệm hệ phương trình tuyến tính

68 10 0
Một số phương pháp tìm nghiệm hệ phương trình tuyến tính

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC SƯ PHẠM −−−⋆−−− ĐẶNG NGUYỄN HẠ GIANG MỘT SỐ PHƯƠNG PHÁP TÌM NGHIỆM HỆ PHƯƠNG TRÌNH TUYẾN TÍNH KHĨA LUẬN TỐT NGHIỆP Đà Nẵng -2015 ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC SƯ PHẠM −−−⋆−−− ĐẶNG NGUYỄN HẠ GIANG MỘT SỐ PHƯƠNG PHÁP TÌM NGHIỆM HỆ PHƯƠNG TRÌNH TUYẾN TÍNH Chun ngành: Tốn ứng dụng Lớp: 11CTUD2 KHÓA LUẬN TỐT NGHIỆP NGƯỜI HƯỚNG DẪN KHOA HỌC TS PHAN ĐỨC TUẤN Đà Nẵng -2015 LỜI CẢM ƠN Sau thời gian học tập, nghiên cứu hướng dẫn, dạy tận tình thầy Phan Đức Tuấn, đến luận văn tốt nghiệp em hoàn thành Em xin bày tỏ lòng biết ơn sâu sắc đến thầy giáo Phan Đức Tuấn, người thầy trực tiếp hướng dẫn, giới thiệu đề tài, cung cấp tài liệu, dạy cho em sử dụng phần mềm LaTex tận tình bảo cho em suốt thời gian thực đề tài Em xin gửi lời cảm ơn chân thành đến ban Chủ nhiệm khoa thầy cô khoa Toán trường Đại học Sư phạm Đà Nẵng tạo điều kiện, giúp đỡ cho em hoàn thành tốt luận văn Cuối em xin kính chúc tất quý thầy cô dồi sức khỏe, hạnh phúc, thành cơng sống nghiệp Đặng Nguyễn Hạ Giang Mục lục Lời cảm ơn Mở đầu Một số khái niệm 1.1 Hệ phương trình tuyến tính 1.1.1 Hệ phương trình tuyến tính tổng qt 1.1.2 Nghiệm hệ phương trình tuyến tính 1.1.3 Các hệ phương trình tương đương 1.1.4 Dạng ma trận, dạng vectơ hệ phương tuyến tính 1.1.5 Hệ Cramer 1.2 Ma trận 1.2.1 Định nghĩa 1.2.2 Các phép toán ma trận 1.2.3 Định thức 1.2.4 Hạng ma trận 1.3 Giá trị riêng vectơ riêng Ma trận chéo hóa 1.3.1 Giá trị riêng vectơ riêng 1.3.2 Ma trận chéo hóa trình Một số phương pháp tìm nghiệm hệ phương trình tuyến tính 2.1 Phương pháp trực tiếp 2.1.1 Các phương pháp khử 2.1.2 Phương pháp phân rã LU 2.1.3 Phương pháp Cholesky 2.1.4 Phương pháp phân rã QR 2.1.5 Tinh chỉnh nghiệm nhận phương pháp giải trực tiếp 8 9 10 10 11 11 15 17 19 21 21 22 24 24 24 33 37 40 43 2.2 Phương pháp lặp 2.2.1 Phương pháp lặp đơn 2.2.2 Phương pháp lặp theo Seidel 2.2.3 Hệ đường chéo trội Lặp theo Jacobi lặp theo Gauss-Seidel 2.2.4 Phương pháp lắc 2.3 Các phương pháp giải hệ phương trình có ma trận hệ số thưa 2.3.1 Hệ ba đường chéo Phương pháp Thomas 2.3.2 Hệ ma trận đường chéo khối 2.3.3 Hệ tựa đường chéo 2.4 Giải hệ phương trình với thể trạng xấu gần suy biến 2.4.1 Cơ sở phương pháp 2.4.2 Mô tả phương pháp giải hệ phương trình với thể trạng xấu gần suy biến Ax = b Kết luận Tài liệu tham khảo 44 44 46 49 50 51 52 54 58 61 61 62 66 67 MỞ ĐẦU Lịch sử vấn đề lí lựa chọn đề tài Trong thực tiễn ứng dụng phương pháp số phương pháp giải số tốn đại số có ý nghĩa quan trọng hàng đầu thuật toán giải toán hay toán có một vài khâu liên quan đến việc tìm nghiệm phương trình hay hệ phương trình tuyến tính phi tuyến Hầu khơng có ngoại lệ, toán học, vật lý chứa phương trình vi phân thường hay đạo hàm riêng giải phương pháp sai phân hữu hạn phương pháp phần tử hữu hạn phương pháp thể tích hữu hạn dẫn đến giải hệ phương trình đại số khâu cuối trình tính nghiệm số.Đối với tốn khơng chứa phương trình vi phân, mà có phương trình đại số điều lại rõ ràng Có thể nói, phương pháp số để giải tốn đại số đóng vai trị trung tâm thực hành phương pháp tính, mà việc tính nghiệm phương pháp số gắn liền với phương pháp tìm nghiệm hệ phương trình đại số hay siêu việt Vì vậy, việc nghiên cứu phương pháp giải hệ phương trình đóng vai trị quan trọng thực tiễn Xét hệ phương trình đại số tuyến tính dạng tổng quát sau   a11 x1 + a12 x2 + · · · + a1n xn = b1     a x + a x + · · · + a x = b2 21 22 2n n (0.1)      an1 x1 + an2 x2 + · · · + amn xn = bm dạng ma trận Ax = b (0.2) Nếu hệ (0.1) hệ Cramer có nghiệm det(A) = Lời giải hệ biểu diễn dạng tổng quát, gọi quy tắc Cramer xi = det(Ai ) det(A) Ai ma trận nhận từ ma trận A cách thay cột thứ i cột vế phải b Tuy nhiên, ý nghĩa sử dụng thực tế công thức có n đủ nhỏ n = (2, 3), n đủ lớn riêng số phép nhân tăng lên theo mức (n − 1)(n + 1)n!, cần n = 30 (hệ phương trình 30 ẩn) 378080 tỷ năm để tính nghiệm theo cơng thức máy tính có tốc độ tính khoảng 20 ngàn tỷ phép tính giây Nhưng quan trọng sau gần 400 ngàn tỷ năm ta nhận lời giải nghiệm hệ đơn giản số phép toán lớn nên riêng sai số làm trịn số thơi cho ta kết chẳng liên quan đến hệ phương trình cho Nếu det(A) ≈ ta nói hệ (0.1) gần suy biến Khi việc làm trịn số q trình tính nghiệm, dù phương pháp tốt có, dễ dẫn đến hệ suy biến làm ta nhận lời giải mà lẽ tồn Hơn nữa, ta lấy đại lượng cond(A) ≡ sup x=0 Ax Ax / inf x=0 x x làm đại lượng đặc trưng cho ma trận A hệ phương trình với cond(A) lớn gọi hệ trạng yếu (hoặc điều kiện xấu) nhạy cảm với thay đổi vế phải, dù nhỏ (như làm tròn số chẳng hạn) Như vậy, giải hệ phương trình với thể trạng yếu khơng có độ tin cậy nghiệm nhận Một khó khăn liên quan đến số ẩn cần tìm Nếu số lớn số phép toán cần làm thuật toán giải lớn sai số thực phép tốn dẫn đến nghiệm khơng cịn nghiệm cần tìm Chính tất lý trên, chọn đề tài: "Một số phương pháp tìm nghiệm hệ phương trình tuyến tính" Mục đích nghiên cứu đề tài Mục tiêu đề tài nhằm nghiên cứu tìm số phương pháp tìm nghiệm hệ phương trình tuyến tính, đặc biệt hệ phương trình có ma trận hệ số thưa phương pháp khắc phục tính gần suy biến hay thể trạng yếu hệ phương trình Đối tượng phạm vi nghiên cứu Đối tượng nghiên cứu luận văn hệ phương trình tuyến tính, đặc biệt hệ phương trình có ma trận hệ số thưa, hệ phương trình với thể trạng xấu gần suy biến Phạm vi nghiên cứu luận văn xây dựng số phương pháp tìm nghiệm hệ phương trình tuyến tính, đặc biệt hệ phương trình có ma trận hệ số thưa, hệ phương trình với thể trạng xấu gần suy biến Phương pháp nghiên cứu - Thu thập báo khoa học tài liệu tác giả nghiên cứu liên quan đến hệ phương trình tuyến tính - Phân tích, nghiên cứu tài liệu để thực đề tài - Trao đổi, thảo luận, tham khảo ý kiến giảng viên hướng dẫn Cấu trúc luận án kết Luận văn gồm hai chương: Chương 1: chương này, tơi trình bày số khái niệm, tính chất hệ phương trình tuyến tính, ma trận, giá trị riêng, vectơ riêng ma trận chéo hóa được, dùng làm sở sử dụng chương Một số khái niệm khác xem tài liệu " Đại số tuyến tính hình học giải tích" Trần Trọng Huệ, Nhà xuất Giáo dục Việt Nam Chương 2: chương này, đưa số phương pháp giải hệ phương trình tuyến tính, đặc biệt hệ phương trình có ma trận hệ số thưa, hệ phương trình với thể trạng xấu gần suy biến Chương MỘT SỐ KHÁI NIỆM CƠ BẢN 1.1 1.1.1 HỆ PHƯƠNG TRÌNH TUYẾN TÍNH Hệ phương trình tuyến tính tổng qt Hệ m phương trình tuyến tính n ẩn x1 , , xn hệ có dạng:   a11x1 + a12 x2 + · · · + a1n xn = b1     a x + a x + · · · + a x = b2 21 22 2n n      am1x1 + am2x2 + · · · + amn xn = bm (1.1) Hay viết gọn hơn: n aik xk = bi i = 1, , m k=1 aik , bi phần tử thuộc trường số K; aik gọi hệ số ẩn xk ; bi gọi hệ số tự do, i = 1, , m; k = 1, , n Hệ phương trình (1.1) gọi hệ phương trình tuyến tính tổng quát Đặc biệt, b1 = = bm = hệ (1.1) có dạng: n aik xk = i = 1, , m (1.2) k=1 Hệ phương trình (1.2) gọi hệ phương trình tuyến tính 1.1.2 Nghiệm hệ phương trình tuyến tính Mỗi nghiệm hệ (1.1) vectơ α = (α1 , , αn ) không gian vectơ K n , cho thay ẩn xk thành phần αk , k = 1, , n vào hệ (1.1) ta m đẳng thức - Nếu hệ (1.1) có nghiệm gọi hệ xác định - Nếu hệ (1.1) có nhiều nghiệm gọi hệ khơng xác định - Nếu hệ (1.1) khơng có nghiệm gọi hệ vơ nghiệm Dễ thấy rằng, vectơ θ = (0, , 0) luôn nghiệm hệ (1.2), nghiệm gọi nghiệm tầm thường Định lý 1.1 (Định lý Crơnecke-Capelli, [1]) Hệ phương trình tuyến tính (1.1) có nghiệm hạng ma trận A hạng ma trận mở rộng A 1.1.3 Các hệ phương trình tương đương Hai hệ phương trình tuyến tính: n aik xk = bi i = 1, , m a′jk xk = b′j j = 1, , p k=1 n k=1 gọi tương đương nghiệm hệ nghiệm hệ ngược lại Tức tập nghiệm hai hệ trùng Phép biến đổi tương đương: Một phép biến đổi không làm thay đổi tập nghiệm hệ phương trình gọi phép biến đổi tương đương Các phép biến đổi sau phép biến đổi tương đương: - Thay đổi thứ tự phương trình hệ (1.1) - Loại khỏi hệ (1.1) phương trình có hệ số ẩn hệ số tự - Nhân hai vế phương trình với số k = - Cộng hai vế phương trình vào vế phương trình khác Dùng (2.62), từ phương trình thứ hai ta nhận được: y2 + p2 y3 = q2 ; p2 = Nói chung, ta viết: c2 d2 − a2 q1 ; q2 = b2 − a2 p1 b2 − a2p1 (2.63) dk − ak qk−1 ck ; qk = ; k = 1, , n bk − ak pk−1 bk − ak pk−1 (2.64) Phương trình (2.64) cuối ứng với k = n cho ta giá trị yn Biết yn ta tính ẩn số khác từ yn−1 đến y1 cách dùng (2.64) để tính ngược lại Đó thuật tốn Thomas Thuật toán Thomas hữu hiệu việc giảm nhớ máy tính thời gian tính tốn Nói chung, thuật toán ổn định, điều kiện đủ là: yk + pk yk+1 = qk ; pk = (2.65) |bk | > |ak | + |ck |; (k = ÷ n) nghĩa A ma trận chéo trội Thực tế tính tốn cho thấy, điều kiện (2.65) bảo đảm tính chất vật lý tốn dẫn đến hệ phương trình sai phân dạng (2.61) Ví dụ 2.7 Tính nghiệm tốn sau: y ′′ + 4y = sin 5x − cos 7x (0 ≤ x ≤ 2π) π π ) − 2y ′ ( ) = 10 10 π π Ta chia đoạn 0, thành 10 đoạn nhỏ (h = ) sử dụng sơ đồ 10 100 sai phân trung tâm bậc hai cho y ′′ Khi ta có: 2y(0) + y ′ (0) = 0; y( yk−1 + (4h2 − 2)yk + yk+1 = h2(2 sin 5xk − cos 7xk ) ak = 1; bk = 4h2 − 2; ck = 1; dk = h2(2 sin 5xk − cos 7xk ) π (k − 1) (k = ÷ 10) 100 Nếu ta sử dụng công thức xấp xỉ bậc theo sơ đồ tiến cho đạo hàm cấp x1 = công thức tương tự theo sơ đồ lùi cho đạo hàm cấp π x11 = ta có: xk = b1 = 2h−1; c1 = 1; d1 = 0; an = 2; 53 bn = h−2; dn = 5h Suy ta có hệ dạng (2.61)     y1 0 0   0 0   y2      0 0   y3         ×   =   4h2 −    y9     4h2 −  y10  y11 0 h−2   h2 (2 sin 5x − cos 7x )  2      h (2 sin 5x3 − cos 7x3 )     h (2 sin 5x4 − cos 7x4 )   =       h (2 sin 5x − cos 7x )  9    h (2 sin 5x10 − cos 7x10 ) 5h 2h − 1  4h −    4h −     0    0 0 0  0 0 Cuối cùng, dùng (2.64) ta viết lại hệ phương trình tương đương sau dùng cơng thức truy hồi ta dễ dàng thu nghiệm: y1 ≈ 0.907; y2 ≈ 0.85; y3 ≈ 0.787; y4 ≈ 0.719; y5 ≈ 0.646 y6 ≈ 0.571; y7 ≈ 0.493; y8 ≈ 0.414; y9 ≈ 0.335; y10 ≈ 0.257; y11 ≈ 0.182 2.3.2 Hệ ma trận đường chéo khối Phương pháp Thomas trình bày mục trước áp dụng cho hệ phương trình có ma trận hệ số dạng ba đường chéo Các hệ thông thường nhận từ sai phân phương trình vi phân Nếu phải tìm lời giải hệ gồm phương trình vi phân ta có hệ phương trình sai phân với ma trận hệ số có dạng ba đường chéo, phần tử ba đường chéo ma trận vuông cấp Sau đề cập đến phương pháp giải hệ phương trình Giả sử ta phải giải hệ gồm ba phương trình vi phân (tuyến tính) sau:  ′ ′ ′ ′′   y1 = f1 (x, y1 , y2 , y3 , y1 , y2 , y3 ) (2.66) y2′′ = f2 (x, y1 , y2 , y3 , y1′ , y2′ , y3′ )   y ′′ = f (x, y , y , y , y ′ , y ′ , y ′ ) 3 54 3 đoạn [a, b] với điều kiện biên (tuyến tính) điểm biên a b Nếu ta sử dụng công thức sai phân trung tâm điểm cho đạo hàm bậc bậc hai có (2.66) điều kiện biên ta nhận điểm x = xk ba phương trình sai phân dạng:  1 1 1 2 3   Ak yk−1 + Bk yk + Ck yk+1 + ak yk−1 + bk yk + ck yk+1 + αk yk−1 + βk yk + γk yk+1 = dk 1 2 3 A2k yk−1 + Bk2 yk1 + Ck2 yk+1 + a2k yk−1 + b2k yk2 + c2k yk+1 + αk2 yk−1 + βk2 yk3 + γk2 yk+1 = d2k    1 2 3 Ak yk−1 + Bk3 yk1 + Ck3 yk+1 + a3k yk−1 + b3k yk2 + c3k yk+1 + αk3 yk−1 + βk3 yk3 + γk3 yk+1 = d3k (2.67) Các phương trình (2.67) viết lại      Ck1 Bk1 b1k βk1 A1k a1k αk1  2   2   Ak ak αk  Bk bk βk  Ck Ck3 Bk3 b3k βk3 A3k a3k αk3 dạng:      yk−1 d1k c1k γk1      c2k γk2    = d2k  d3k c3k γk3 yk+1 (2.68) phần tử ma trận hệ số viết thành nhóm, nhóm ma trận vng cấp 3, cịn cột ẩn số có phần tử, gồm: yk−1 , 2 3 yk1 , yk+1 , yk−1 , yk2 , yk+1 , yk−1 , yk3 , yk+1 Khi hệ phương trình gồm hệ (2.68) viết n điểm nút, sau xử lý biểu thức sai phân điều kiện biên, có dạng:      F1 Y1 B1 C1      A2 B2 C2   Y2   F2           A3 B3 C3    Y3   F3            =   (2.69)        0 An−2 Bn−2 Cn−2  Yn−2  Fn−2          0  An−1 Bn−1 Cn−1  Yn−1  Fn−1    Fn Yn 0 An Bn ta dùng ký hiệu:         yk1 Ck1 c1k γk1 Bk1 b1k βk1 A1k a1k αk1         Ak = A2k a2k αk2  ; Bk = Bk2 b2k βk2  ; Ck = Ck2 c2k γk2  ; Yk = yk2  yk3 Ck3 c3k γk3 Bk3 b3k βk3 A3k a3k αk3   d1k   (2.70) Fk = d2k  d3k 55 Các biểu thức B1 , C1 , F1, An , Bn , Fn biến đổi từ biểu thức sai phân điều kiện biên a b phương trình sai phân nút (nếu cần) Bây ta xem xét phương pháp giải hệ (2.69): Từ dòng đầu (2.69) ta nhận được: Y1 + P1 Y2 = Q1 ; P1 = B1−1 C1 ; Q1 = B1−1 F1 (2.71) Tổng quát, ta có: Yi +Pi Yi+1 = Qi; Pi = Bi′−1 Ci ; Qi = Bi′−1 Fi−Bi′−1 Ai Qi−1 ; Bi′ = Bi −Ai Pi−1 (2.72) Để cho dòng cuối ta có: Yn = Qn (2.73) Từ (2.73), (2.72) (2.71) ta tính theo thứ tự: Yn−1 , , Y1 Đó thuật tốn Thomas dùng để giải hệ phương trình đường chéo khối Trên thực tế, thuật tốn trình bày có tính ứng dụng khơng cao, phương pháp phân rã (cũng dạng khác phương pháp Thomas) thích hợp Ý tưởng phương pháp trình bày sau: Ta dùng phân rã LU để phân rã ma trận hệ số hệ (2.69):   B1 C1   A2 B2 C2     A3 B3 C3      =     0 An−2 Bn−2 Cn−2    0  A B C  n−1 n−1 n−1  0 An Bn 56     L1 0 E U1     D2 L2 0   E U2       D3 L3   0 E U3  0         .        0 Dn−2 Ln−2   0 E Un−2  0     0   Dn−1 Ln−1   0 E Un−1    0 Dn Ln 0 E (2.74) Từ thấy: L1 = B1 ; L1 U1 = C1 (2.75) Để cho i = ÷ n ta có phương trình: Di = Ai (2.76) Di Ui−1 + Li = Bi (2.77) Li Ui = Ci (2.78) Thuật tốn tính nghiệm hệ (2.69) sau: Bằng (2.76) (2.77) ta tính Li theo Ui−1 (đã biết từ bước trước) Bi phép nhân hai ma trận biết trước Từ (2.78) ta tính tiếp Ui Để giải hệ phương trình (2.78) phương pháp thích hợp phương pháp phân rã hệ phương trình có chung ma trận hệ số Li vế phải cột ma trận Ci Sau tính Li Ui , nghiệm cần tìm Yi xác định qua hai bước Bước một, ta tính nghiệm trung gian Zi từ hệ phương trình:   L1 Z1 = F1       D2 Z1 + L2 Z2 = F2      (2.79)   D Z + L Z = F i i−1 i i i          D Z +L Z =F n n−1 n 57 n n Bước hai, ta tính Yi từ hệ sau:   Yn = Zn       Yn−1 = Zn − Un−1 Yn        Yi = Zi − Ui Yi+1          Y = Z − U Y 1 (2.80) Các hệ (2.79) giải phương pháp trực tiếp phương pháp Guass-Jordan phương pháp phần tử trội phương pháp phân rã 2.3.3 Hệ tựa đường chéo Thực tế tính tốn cho thấy, đơi gặp hệ phương trình đại số với ma trận hệ số khác so với ma trận đường chéo (2.61) vài phần tử khác khơng nằm số vị trí Chẳng hạn, xác định nghiệm tuần hồn tốn ví dụ (2.7), thay sử dụng điểm ảo để sai phân phương trình điều kiện biên hai điểm mút làm, ta sử dụng tính chất tuần hồn nghiệm để sai phân điều kiện biên cách dễ dàng sau: Ta nhận thấy, tính tuần hồn nên giá trị nghiệm cần tìm nút ảo x−1 giá trị nút xn−1 , giá trị nghiệm nút ảo xn+1 phải giá trị nút x2 Do đó, đạo hàm bậc y2 − yn−1 nghiệm nút x1 = tính theo cơng thức: y ′ (0) ≈ 2h y2 − y−1 ′ thay phải tính theo cơng thức y (0) ≈ trước Tương tự 2h y2 − yn−1 π Khi ma trận hệ số hệ vậy, ta có: y ′ ( ) ≈ 10 2h 58 phương trình sai phân  b1  a2  0     0  0  có dạng:  c1 p  b2 c2   a3 b3 c3      an−2 bn−2 cn−2   an−1 bn−1 cn−1   q an bn (2.81) Ma trận khác ma trận hệ số (2.61) chỗ có thêm hai phần tử khác khơng: p vị trí (1, n − 1) q nút (n, 2) Có thể thấy, ví dụ (2.7), p = q = −1 Câu hỏi đặt ra: liệu thuật tốn Thomas có cịn áp dụng cho hệ phương trình với ma trận hệ số dạng (2.81) hay không? Để trả lời câu hỏi trước tiên ta nhắc đến công thức Sherman-Morrison a Cơng thức Sherman-Morrison Giả sử ta có ma trận A˜ nhận từ ma trận A cách thay đổi phần tử ( chẳng hạn phần tử aij ) hay vài phần tử dòng hay cột lúc Giả thiết ta có A−1 Khi cơng thức Sherman-Morrison cho ta cách tính A˜−1 gián tiếp qua A−1 cách nhanh chóng hiệu Ta thấy, biến đổi A biểu diễn biểu thức tổng quát dạng sau: A˜ = A + (r ⊗ sT ) (2.82) ta ký hiệu (r ⊗ sT ) tích ma trận,và ta có: (r ⊗ sT )ij = ri sj (2.83) Khi đó, ta muốn có A˜ cách thay đổi giá trị phần tử aij A thành α ta việc lấy: r = (0, , 0, α − aij , 0, , 0)T ; s = (0, , 0, 1, 0, , 0)T phần tử khác không r s đứng vị trí tương ứng i j Nếu muốn đổi cột thứ j ma trận A ta lấy r 59 vectơ với phần tử giá trị trừ giá trị cũ cách tương ứng, vectơ s có phần tử khác khơng đứng vị trí thứ j Với cách biểu diễn (2.82) cơng thức Sherman-Morrison có dạng: (A−1 r) ⊗ (sT A−1 ) −1 −1 ˜ A =A − (2.84) + sT A−1 r Đặt: u = A−1 r; v = (A−1 )T s (2.85) Khi (2.84) viết lại sau: A˜−1 = A−1 − u ⊗ vT + (sT u) (2.86) b Ứng dụng công thức Sherman-Morrison để giải hệ phương trình có ma trận hệ số dạng tựa đường chéo A˜ Ta có: [A˜ = A + (r ⊗ sT )]x = b (2.87) Trước tiên ta tính nghiệm hai hệ phương trình sau: Ay = b; Au = r (2.88) Khi thấy rằng, nghiệm cuả hệ (2.87) biểu diễn dạng: sT y u x=y− + (sT u) (2.89) Như nghiệm hệ (2.87) với A˜ khơng cịn ma trận ba đường chéo (nhưng khác so với ma trận loại đó) tìm cách giải hệ (2.88) (bằng phương pháp Thomas), sau tính theo (2.89) Quay lại hệ (2.81), trường hợp ta lấy: r = (−1, 0, , 0, −1)T ; s = (0, 1, 0, , 0, 1, 0) Khi ta có: A = A˜ − r ⊗ sT có dạng ba đường chéo 60 2.4 GIẢI HỆ PHƯƠNG TRÌNH VỚI THỂ TRẠNG XẤU HOẶC GẦN SUY BIẾN 2.4.1 Cơ sở phương pháp Nếu A ma trận m dòng, n cột ln biểu diễn dạng: A = P DQT (2.90) với P Q ma trận vng trực chuẩn có kích thước m × m n × n tương ứng, cịn D ma trận m × n có phần tử đường chéo dương không Trong trường hợp A ma trận n × n P, D Q ma trận vuông cấp Khi D có dạng:   d1    d2   D=     0 dn d2k giá trị riêng ma trận đối xứng AAT Các giá trị dk gọi giá trị suy biến A Có thể thấy rank(A) = rank(D), số trị riêng khác khơng AAT Các cột P ứng với dk = tạo nên hệ trực giao (ker (T ))⊥ , cột Q ứng với dl = tạo nên hệ trực giao ker (T ) (T ánh xạ tuyến tính Rn với ma trận tương ứng A sở Rn ) Từ (0.2) (2.90) ta viết: QD−1 P T b = x; A−1 = QD−1 P T với:  d1  0  d2 =    0  D−1 61         1 dn (2.91) Từ (2.91) ta thấy, tồn dk gần khơng max dk hệ (0.2) gần suy biến, có: ≫ A trạng xấu dk Như vậy, A ma trận khơng thuộc vào hai dạng kể nghiệm (0.2) tính theo (2.91) với b ∈ Rn Đối với trường hợp A gần suy biến, ta thay D−1 ma trận S cách cho với dk ≪ nhận giá trị không, đại lượng khác đại lượng dk giữ ngun (áp dụng cơng thức Sherman-Morrison) Khi rằng, nghiệm có xấp xỉ tốt theo nghĩa nói nghiệm tính theo cơng thức: x = QSP T b + Q(r.sT )P T b (2.92) với b cho trước Đối với trường hợp A trạng xấu, ta thay D−1 ma trận S theo cách nói (đối với dk ≪ 1) nghiệm tính theo (2.92) thường tốt nghiệm nhận phương pháp giải trực tiếp, kể nghiệm nhận theo (2.91) với D−1 nguyên Như vậy, phương pháp phân rã suy biến cho phép ta nhận biết A có gần suy biến trạng xấu hay khơng dựa vào giá trị dk Nếu xảy hai khả cơng thức tính nghiệm theo (2.92) hữu hiệu 2.4.2 Mô tả phương pháp giải hệ phương trình với thể trạng xấu gần suy biến Ax = b Giải hệ phương trình với thể trạng xấu gần suy biến: Ax = b (2.93) Bước 1: Nhân hai vế hệ phương trình (2.93) với AT , ta hệ tương đương: AT Ax = AT b hay A′ x = b′ 62 A′ = AT A ma trận đối xứng Bước 2: Tìm ma trận D có dạng:  d21   d22 D=   0   0    dn d2k giá trị riêng ma trận đối xứng A′ = AT A Nếu bậc A không lớn ta tính giá trị riêng vectơ riêng ma trận A′ = AT A phương pháp thích hợp Tuy nhiên, n đủ lớn phương pháp tính trực tiếp khơng cịn hợp lý Khi ta dùng phương pháp khác, chẳng hạn phương pháp dùng biến đổi Householder để đưa A′ dạng ba đường chéo sử dụng tiếp phương pháp phân rã QR để tính giá trị riêng Chúng ta xem xét sơ qua phương pháp Trước tiên ta có nhận xét: Giả sử A′ có phân tích (2.90) B ma trận biểu diễn dạng: B = U A′ V T (2.94) U V ma trận trực giao Khi từ (2.90) (2.94) ta có: B = U P DQT V T = U P D(V Q)T Từ ta thấy, B có giá trị suy biến A′ Sau đây, ta dùng phép biến đổi Householder (có ma trận biến đổi ma trận trực giao) cách liên tiếp để đưa A′ B dạng ba đường chéo Qui trình mơ tả biểu thức: B = PN PN −1 P1A′ P1 PN −1PN Do Pk ma trận trực giao nên ta có: A′ = P1−1 P2−1 PN−1BPN−1 P2−1P1−1 (2.95) với (P1−1 P2−1 PN−1) (PN−1 P2−1P1−1 ) ma trận trực giao Mặt khác, phương pháp phân rã QR khẳng định rằng: ma trận B 63 phân rã dạng B = QR, Q ma trận trực giao, R ma trận tam giác Vì vậy, ta tạo ma trận theo cách sau: B1 ≡ B; B1 = Q1 R1; B2 = R1Q1 = Q−1 B1 Q1 = Q2 R2 ; ; Bi = Qi Ri; Bi+1 = Ri Qi (2.96) i → ∞ thấy rằng: Bi tiến tới ma trận đường chéo, phần tử giá trị riêng Bi Từ (2.96) suy Bi đồng dạng có chung giá trị riêng Cũng từ (2.95) (2.96) ta nhận được: −1 −1 −1 A′ = P1−1 P2−1 PN−1BPN−1 P2−1P1−1 = P1−1 P2−1 PN−1Q1 B2 Q−1 PN P2 P1 T −1 −1 −1 −1 −1 = = P1−1 P2−1 PN−1Q1 Q2 Qk Bk+1 Q−1 k Q2 Q1 PN P2 P1 = U Bk+1 V Vì vậy, A′ có giá trị suy biến giá trị riêng B Bước 3: Tìm nghiệm xấp xỉ hệ Qua phép biến đổi ta thu được: A′ = P DQT đó: D = Bk+1 P = U = P1−1 P2−1 PN−1Q1 Q2 Qk −1 −1 −1 −1 −1 QT = V T = Q−1 k Q2 Q1 PN P2 P1 Vậy ta suy nghiệm xấp xỉ hệ phương trình là: Nếu d2k ≪ ta sử dụng cơng thức (2.87) để đưa D−1 dạng D−1 = S + (r.sT ) tính x theo cơng thức sau: (2.97) x = QSP T b′ + Q(r.sT )P T b′ Ví dụ 2.8 Giải hệ Vandermond (hệ có nghiệm x1 = 1; x2 = 2; x3 = 3; x4 = 4)    x1 + 0.1x2 + 0.01x3 + 0.001x4 = 1.234     x + 0.11x + 0.112x + 0.113 x = 1.261624   x1 + 0.111x2 + 0.1112x3 + 0.1113x4     x1 + 0.1111x2 + 0.11112 x3 + 0.11113x4 64 = 1.264433524 = 1.264714953 Hệ dạng ma trận:      1.234 x1 0.1 0.01 0.001          1.261624  1 0.11 x 0.11 0.11      1 0.111 0.1112 0.1113  x  = 1.264433524    3   1.264714953 x4 0.1111 0.1111 0.1111 Hệ phương trình tương đương: AT Ax = AT b (2.98)   x1 0.4321 0.04676421 0.005069961631     −4 0.4321 0.04676421 0.005069961631 5.505718741041.10  x2        0.04676421 0.005069961631 5.505718741041.10−4 5.988230350886551.10−5  x3  x4 0.005069961631 5.505718741041.10−4 5.988230350886551.10−5 6.522523251679858161.10−6   5.024772477   0.5430405924423   =   0.05879537810422313  0.006376842383394269343  Sử dụng bước ta dễ dàng thu giá trị suy biến sau: d1 = 2.011773; d2 = 0.009461; d3 = 0.000009; d4 = 7.268 × 10−10 Tiếp tục thực bước 3, ta sử dụng (2.97) với S ma trận nhận từ D−1 cách thay đổi phần tử phần tử d4 ta thu nghiệm xấp xỉ hệ phương trình là: x1 ≈ 0.999079; x2 ≈ 2.025839; x3 ≈ 2.758073; x4 ≈ 4.7532557 Bộ nghiệm tốt nhiều so với nghiệm mà ta thu phương pháp trước hay nghiệm thu cách giữ nguyên D−1 65 KẾT LUẬN Đề tài "Một số phương pháp tìm nghiệm hệ phương trình tuyến tính" hồn thành mục tiêu nhiệm vụ đề Cụ thể thực được: Trình bày cụ thể (có ví dụ minh họa) số phương pháp trực tiếp giải hệ phương trình tuyến tính: Phương pháp Gauss, Gauss-Jordan, phương pháp phân rã LU, phân rã Cholesky phương pháp phân rã QR Trình bày cách tinh chỉnh nghiệm nhận phương pháp giải trực tiếp Trình bày cụ thể phương pháp lặp giải hệ phương trình tuyến tính: phương pháp lặp đơn, lặp thep Seidel, lặp theo Jacobi lặp theo Guass-Seidel, phương pháp lắc Trình bày phương pháp giải hệ phương trình có ma trận hệ số thưa cụ thể hệ ba đường chéo, hệ đường chéo khối hệ tựa đường chéo Trình bày cụ thể (có ví dụ minh họa) phương pháp giải hệ phương trình với thể trạng xấu gần suy biến Đề tài tài liệu tham khảo hữu ích cho học sinh, sinh viên muốn tìm hiểu hệ phương trình tuyến tính phương pháp giải Hy vọng rằng, thời gian tới, kỹ thuật khai thác đề tài bổ sung hồn thiện hơn, đặc biệt lập trình phần mềm ứng dụng để ta giải hệ phương trình nhanh xác 66 Tài liệu tham khảo [1] Trần Trọng Huệ (2011), Đại số tuyến tính hình học giải tích Nhà xuất Giáo Dục Việt Nam [2] Nguyễn Văn Mậu (2004), Đại số tuyến tính hình học giải tích Nhà xuất Đại học Quốc gia Hà Nội [3] Trần Văn Tràn (2007), Phương pháp số thực hành Nhà xuất Đại học Quốc gia Hà Nội [4] Hoàng Xuân Huấn (2004), Giáo trình phương pháp số Nhà xuất Đại học Quốc gia Hà Nội [5] Phạm Phú Triêm (2000), Giải tích số Nhà xuất Đại học Quốc gia Hà Nội 67 ... tài: "Một số phương pháp tìm nghiệm hệ phương trình tuyến tính" Mục đích nghiên cứu đề tài Mục tiêu đề tài nhằm nghiên cứu tìm số phương pháp tìm nghiệm hệ phương trình tuyến tính, đặc biệt hệ phương. .. thực hành phương pháp tính, mà việc tính nghiệm phương pháp số gắn liền với phương pháp tìm nghiệm hệ phương trình đại số hay siêu việt Vì vậy, việc nghiên cứu phương pháp giải hệ phương trình đóng... vectơ riêng độc lập tuyến tính 23 Chương MỘT SỐ PHƯƠNG PHÁP TÌM NGHIỆM HỆ PHƯƠNG TRÌNH TUYẾN TÍNH 2.1 2.1.1 PHƯƠNG PHÁP TRỰC TIẾP Các phương pháp khử a Phương pháp Gauss Phương pháp Gauss kết sử

Ngày đăng: 18/05/2021, 12:46

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan