1. Trang chủ
  2. » Giáo Dục - Đào Tạo

(LUẬN văn THẠC sĩ) về kỹ thuật tiền tác động giải hệ phương trình tuyến tính cỡ lớn

44 3 0

Đ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 THÁI NGUYÊN TRƯỜNG ĐẠI HỌC KHOA HỌC PHẠM TRỊNH CƯƠNG CHÍNH VỀ KỸ THUẬT TIỀN TÁC ĐỘNG GIẢI HỆ PHƯƠNG TRÌNH TUYẾN TÍNH CỠ LỚN LUẬN VĂN THẠC SĨ TOÁN HỌC Thái Nguyên - 2015 download by : skknchat@gmail.com ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC KHOA HỌC PHẠM TRỊNH CƯƠNG CHÍNH VỀ KỸ THUẬT TIỀN TÁC ĐỘNG GIẢI HỆ PHƯƠNG TRÌNH TUYẾN TÍNH CỠ LỚN Chun ngành: Toán ứng dụng Mã số: 60 46 01 12 LUẬN VĂN THẠC SĨ TOÁN HỌC NGƯỜI HƯỚNG DẪN KHOA HỌC TS NGUYỄN THANH SƠN Thái Nguyên - 2015 download by : skknchat@gmail.com i Mục lục Lời cảm ơn iii Mở đầu 1 Kiến thức chuẩn bị 1.1 Hệ phương trình tuyến tính 1.1.1 Định lí Kronecker-Capelli 1.1.2 Định lí Cramer Phương pháp giải trực tiếp 1.2.1 Phương pháp khử Gauss 1.2.2 Phương pháp phân tích LU Phương pháp lặp cổ điển 1.3.1 Phương pháp lặp đơn 1.3.2 Phương pháp Jacobi 1.3.3 Phương pháp Gauss - Seidel Phương pháp không gian Krylov 10 1.4.1 Không gian Krylov Thuật toán Arnoldi 10 1.4.2 Phương pháp CG 12 1.4.3 Phương pháp GMRES 14 1.4.4 Phương pháp Arnoldi 15 1.2 1.3 1.4 Kĩ thuật tiền tác động 18 2.1 18 Tiền tác động phép lặp cổ điển download by : skknchat@gmail.com ii 2.1.1 2.2 2.3 2.4 Jacobi, SOR(Successive Overrelaxtion) SSOR(Symetric SOR) nhân tử tiền tác động 18 Kĩ thuật tiền tác động tổng quát 21 2.2.1 Giới thiệu 21 2.2.2 Phân tích ILU 22 2.2.3 Phân tích Cholesky thiếu (IC) 23 Tiền tác động khối thiếu 23 2.3.1 Phân tích Cholesky khối thiếu 23 2.3.2 Ý tưởng phân chia miền 25 2.3.3 Ma trận ba đường chéo khối 25 2.3.4 Ma trận với cấu trúc 26 2.3.5 Xấp xỉ nghịch đảo 26 2.3.6 Phép lặp toàn cục 27 Kỹ thuật tiền tác động với phương pháp lặp 28 2.4.1 PCG 28 2.4.2 PGMRES 29 Ví dụ số 35 3.1 Phương pháp CG PCG 35 3.2 Phương pháp GMRES PGMRES 36 3.3 Kết luận 37 Kết luận 38 Tài liệu tham khảo 39 download by : skknchat@gmail.com iii Lời cảm ơn Tơi xin bày tỏ lịng biết ơn chân thành sâu sắc đến thầy giáo, TS Nguyễn Thanh Sơn tận tình bảo, hướng dẫn tơi suốt thời gian làm luận văn Tôi xin chân thành cảm ơn giúp đỡ quý báu thầy, giáo tham gia giảng dạy khóa học Khoa Toán - Tin trường Đại học Khoa học - Đại học Thái Nguyên, truyền thụ kiến thức Tôi xin cảm ơn động viên, giúp đỡ, bảo gia đình, bạn bè, đồng nghiệp, Ban chuyên mơn, Ban giám hiệu, Ban chấp hành Đồn trường THPT Phạm Ngũ Lão - Ân Thi - Hưng Yên dành cho tơi q trình nghiên cứu hồn thành luận văn Luận văn thực khuôn khổ Đề tài Nghiên cứu Khoa học Tự nhiên tài trợ Quỹ phát triển Khoa học Công nghệ Quốc gia NAFOSTED, mã số 101.01-2014.36 Thái Nguyên, tháng 11 năm 2015 Phạm Trịnh Cương Chính Học viên Cao học Tốn K7Y, Trường Đại học Khoa học - Đại học Thái Nguyên download by : skknchat@gmail.com Mở đầu Hệ phương trình tuyến tính đời từ lâu phổ biến đời sống Rất nhiều tốn đơn giản quy hệ phương trình tuyến tính Trong số đó, ta phải kể đến tốn dân gian Vừa gà vừa chó Bó lại cho trịn Ba mươi sáu Một trăm chân chẵn Việc nghiên cứu lý thuyết hệ phương trình tuyến tính bắt đầu bậc đại học khuôn khổ môn đại số tuyến tính Liên quan đến nó, ta phải nhắc đến định lý đẹp như: Định lí Cramer định lý Kronecker - Capelli Định lý Cramer cung cấp cho ta công thức gọn gàng, dễ hiểu thu nghiệm (nếu có) hệ phương trình Tuy nhiên, cách tiếp cận dùng học đường với hệ có vài ẩn số Như chương ra, giải hệ phương trình theo phương pháp Cramer đắt đỏ không phù hợp với hệ sở từ vừa phải đến lớn Để khắc phục điều đó, người ta tìm phương pháp khử Gauss, phương pháp dựa phân tích LU Chúng phương pháp giải trực tiếp có độ phức tạp tính toán đa thức bậc ba Mặc dù, bước tiến đáng kể chúng áp dụng cho hệ có kích cỡ vừa phải Để giải hệ phương trình cỡ lớn, ta buộc phải dùng phương pháp lặp Chúng phương pháp gián tiếp, tính nghiệm xấp xỉ lại vô hiệu cho hệ lớn Bên cạnh phương pháp lặp cổ điển như: Jacobi, Gauss - Seidel, download by : skknchat@gmail.com phương pháp sử dụng công cụ đại phương pháp CG hay phương pháp GMRES trở thành công cụ khơng thể thiếu tốn học tính tốn Như chương 1, tốc độ hội tụ phương pháp lại phụ thuộc chặt chẽ vào số điều kiện ma trận hệ số Nếu ma trận có số điều kiện tốt, phương pháp hội tụ nhanh Tuy nhiên, không may mắn, ma trận hệ số có số điều kiện xấu, phương pháp hội tụ chậm Câu hỏi đặt làm để thay đổi thực tế đó? Kỹ thuật tiền tác động (preconditioning), câu trả lời Chính tầm quan trọng kỹ thuật trên, chọn "Về kỹ thuật tiền tác động giải hệ phương trình tuyến tính cỡ lớn" đề tài nghiên cứu cho luận văn thạc sĩ Mục đích luận văn nghiên cứu, trình bày cách có hệ thống việc giải hệ phương trình tuyến tính từ phương pháp thô sơ cho hệ nhỏ, đến phương pháp đại cho hệ lớn Cái đích quan trọng luận văn trình bày số kỹ thuật tiền tác động số thuật toán lặp tiền tác động, với ý định tiền tác động cơng cụ góp phần quan trọng vào giải hệ phương trình tuyến tính cỡ lớn Đối tượng nghiên cứu đề tài phương pháp tiền tác động để giải lặp hệ phương trình tuyến tính Phạm vi nghiên cứu kỹ thuật tổng quát cách thức áp dụng kỹ thuật vào hai phương pháp lặp thông dụng CG GMRES Phương pháp nghiên cứu sử dụng đọc hiểu tài liệu kinh điển trình bày lại cách có hệ thống Thêm vào đó, thực kiểm tra số phương pháp thơng qua việc lập trình MATLAB Ý nghĩa khoa học lớn đề tài thực nghiên cứu liền mạch phương pháp giải hệ phương trình tuyến tính, từ đơn giản đến phức tạp trình bày lại cách có hệ thống dễ hiểu Sau bảo vệ luận văn tài liệu tham khảo tốt cho sinh viên ngành toán học viên cao học chuyên ngành Toán ứng dụng, với thiên hướng tốn học tính tốn Để đạt mục tiêu trên, luận văn trình bày sau: Chương download by : skknchat@gmail.com dùng để trình bày kiến thức chuẩn bị vơ quan trọng như: Định lí Kronecker - Capelli, định lí Cramer, số phương pháp giải trực tiếp (khử Gauss, phân tích LU ) số phương pháp lặp cổ điển (lặp đơn, Jacobi, Gauss - Seidel), phương pháp không gian Krylov, làm kiến tảng cho nghiên cứu kỹ thuật tiền tác động Nội dung chương kỹ thuật tiền tác động tổng quát, kỹ thuật tiền tác động khối thiếu, kỹ thuật tiền tác động với phương pháp lặp Trong chương chúng tơi trình bày số ví dụ số để minh họa, kiểm chứng cho thuật toán Mặc dù cố gắng hết sức, điều kiện thời gian nghiên cứu hạn hẹp luận văn tránh khỏi thiếu xót Rất mong nhận ý kiến đóng góp q báu từ thầy, giáo anh, chị, em, bạn bè đồng nghiệp Thái Nguyên, ngày 01 tháng 11 năm 2015 Phạm Trịnh Cương Chính Học viên Cao học Tốn lớp Y, khóa 01/2014-01/2016 Chuyên ngành Toán ứng dụng Trường Đại học Khoa học - Đại học Thái Nguyên Email: cuongchinh85@gmail.com download by : skknchat@gmail.com Chương Kiến thức chuẩn bị Chương viết dựa tài liệu tham khảo [1],[2] Trước tiên, xét hệ phương tình tuyến tính tổng quát dạng Ax = b (1.1) A ma trận cỡ n × n, b ma trận cột Ma trận A gọi ma trận hệ số, b gọi ma trận hệ số tự 1.1 Hệ phương trình tuyến tính Khi giải hệ phương trình tuyến tính (1.1) ta thường quan tâm có nghiệm nghiệm tìm thấy cách Câu hỏi tồn nghiệm hệ (1.1) giải đáp Định lí Kronecker-Capelli 1.1.1 Định lí Kronecker-Capelli Định lí 1.1 (Định lí Kronecker-Capelli) 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 bổ sung A Trong đó, ma trận bổ sung ma trận (A|b) xác định cách đặt thêm ma trận cột tự b vào phía bên phải ma trận A Định lí Kronecker-Capelli điều kiện cần đủ để hệ (1.1) có nghiệm, mà chưa thể có cơng thức nghiệm Trong trường hợp A ma trận vng cấp n có định thức detA = 0, ta có Định lí Cramer download by : skknchat@gmail.com 1.1.2 Định lí Cramer Định lí 1.2 (Định lí Cramer) Gọi Aj ma trận nhận từ ma trận A cách thay cột thứ j cột b Khi đó, hệ (1.1) có nghiệm xj tính cơng thức xj = detAj detA Tuy nhiên, thực hành người ta khơng dùng cơng thức để tính nghiệm số lượng phép tính q lớn Có thể tính tốn độ phức tạp tính tốn phương pháp O(n.n!) 1.2 Phương pháp giải trực tiếp 1.2.1 Phương pháp khử Gauss Phương pháp khử Gauss phương pháp giải hệ phương trình tuyến tính dùng cách khử dần ẩn để đưa hệ phương trình cho dạng tam giác giải hệ tam giác từ lên mà ta tính định thức Phương pháp thực qua bước sau: • Bước 0: Dùng phương trình để khử x1 n − phương trình cịn lại Giả sử a11 = Để cho công thức đơn giản, trước khử ta chia phương trình thứ cho a11 Cụ thể, để khử x1 hàng thứ k(k = 2, 3, n) ta phải tính lại hệ số akj hàng thứ k (j = 1, 2, , n + 1) sau: akj = akj − a1j ak1 a11 • Bước 1: Dùng phương trình thứ để khử x2 n − phương trình cịn lại phía sau Giả sử a22 = Để cho công thức đơn giản, trước khử ta chia phương trình thứ hai cho a22 Cụ thể, để khử x2 hàng thứ k(k = 3, 4, n) ta phải tính lại hệ số akj hàng thứ k (j = 2, , n + 1) sau: akj = akj − a2j ak2 a22 download by : skknchat@gmail.com 25 Từ đó, ta có:   ˜ ω1 = r1  G   ˜ ω2 = r2 − F˜1 ω1 = r2 − E1 G ˜ −1 ω1 G    G ˜ ω3 = r3 − F˜2 ω2 = r3 − E2 G ˜ −1 ω2 ˜ −1 Λ1 Đặt T = B ˜ −1 = (tij ) phần Chú ý 2.1 Vấn đề lại xấp xỉ A1 B đường chéo đối xứng xác định dương Chúng ta có vài cách Cách 1: Λ = diag tii Cách 2: Λ phần đường chéo T −1 Cách 3: Đặt U phần đường chéo G−1 , T = GGT Sau đó, đặt Λ = U T U 2.3.2 Ý tưởng phân chia miền Xử lí ma trận dạng khối  A    ···    ···  B1T 2.3.3 Xét · · · · · · B1    ··· ··· ···    · · · Ap Bp   T · · · Bp Q Ma trận ba đường chéo khối  D E2    F2   A=    Em  Fm Dm            Đặt D phần đường chéo, L phần dưới, U phần Khi đó, A = L + D + U, download by : skknchat@gmail.com 26 ta được, M = (L + ∆)∆−1 (∆ + U ), đó, ∆ = diag(∆i ), ∆i = Di − Fi Ωi−1 Ei Ωj−1 xấp xỉ thưa ∆−1 j Đây điều khó khăn Trong trường hợp đặc biệt, Di ba đường chéo với Ei , Fi chéo Ta có cơng thức tính 2.3.4 Ma trận với cấu trúc Thường xuất phát từ việc rời rạc hóa phương trình cụ thể Chẳng hạn rời rạc → − −∆u + b u = f in Ω, u = on ∂Ω, phương pháp sai phân trung tâm Ta có cơng thức cụ thể để tính D, E, F Ta có M = (D − E)D−1 (D − F ) 2.3.5 Xấp xỉ nghịch đảo Ý tưởng xấp xỉ ma trận nghịch đảo hệ số Tìm ma trận thưa để tối thiểu hóa ba cách sau F (M ) = I − AM F F (M ) = I − M A F F (L, U ) = I − LAU (2.1) F Bài tốn (2.1) phân rã thành n ej − Amj F (M ) = 2 (2.2) j=1 ej , mj cột thứ j I M Tuy nhiên, cách làm không hiệu ma trận lớn download by : skknchat@gmail.com 27 2.3.6 Phép lặp toàn cục Tối ưu hóa với M biến, ma trận thưa sử dụng phương pháp kiểu giảm (descent-type) để giảm thiểu hàm mục tiêu (2.1) Hàm hàm bậc hai không gian ma trận cỡ n × n, với biến phần tử Rn Tích vơ hướng khơng gian ma trận, với bình phương chuẩn (2.2) X, Y = tr(Y T X) (2.3) Ở phần sau, biểu diễn ma trận n2 - vectơ X, nghĩa là, ma trận cỡ n × n mà vectơ cột n- vectơ X Trong thuật toán giảm, phép lặp Mnew tính cách dọc theo hướng chọn G, tức Mnew = M + αG, đó, α độ dài bước, chọn để hàm mục tiêu F (Mnew ) nhỏ Dễ thấy, tr(RT AG) R, AG = α= AG, AG tr((AG)T AG) Mẫu tính AG F Kết quả, ma trận M (2.4) gần trù mật sau bước giảm đó, cần thiết phải áp dụng chiến lược giảm số để đạt kết Tuy nhiên, việc giảm bước chậm, tức là, khơng đảm bảo M F (Mnew ) ≤ F (M ) Một phép lặp muốn có áp dụng chiến lược giảm số phải có hướng tìm G trước nói đến chuyện giảm số bước Trong trường hợp này, số lượng hoàn thành M có khơng thể điều khiển Cách chọn hướng giảm cho G đơn giản lấy ma trận thặng dư R = I − AM , đó, M bước lặp Ngoại trừ thuật toán MR giảm số bước, thuật toán giảm tương ứng khơng có, với hệ tuyến tính AM = I cỡ n2 × n2 Sau đây, chúng tơi trình bày thuật tốn giảm sâu tồn cục; trường hợp riêng thuật tốn kiểu - giảm download by : skknchat@gmail.com 28 Algorithm 2.2 Thuật tốn giảm MR tồn cục (mr) 1: Chọn ma trận ban đầu M , ngưỡng dừng tol 2: repeat 3: Tính C := AM G := I − C 4: Tính α = tr(GT AG)/ C 5: Tính M := M + αG 6: Ứng dụng số giảm đến M 7: until G 2.4 2.4.1 F F < tol Kỹ thuật tiền tác động với phương pháp lặp PCG Cho Ax = b với A ma trận đối xứng xác định dương i) Bảo tồn tính đối xứng Giả sử M = LLT phân tích Cholesky khuyết Khi đó, hệ (1.1) đưa L−1 AL−T u = L−1 b, x = L−1 u Cách khác, để bảo tồn tính đối xứng đổi tích vô hướng Giả sử M ma trận đối xứng xác định dương, ta định nghĩa tích vơ hướng (x, y)M = (M x, y) = (x, M y) Ta có (M −1 Ax, y)M = (Ax, y) = (x, Ay) = (x, M −1 Ay)M Vậy nên thuật tốn ta đổi tích vơ hướng Euclid thành tích theo M thuật tốn cho ma trận đối xứng Ta có vịng lặp (zj , zj )M 1: αj = (M −1 Apj , pj )M : xj+1 = xj + αj pj download by : skknchat@gmail.com 29 : rj+1 = rj − αj Apj zj+1 := M −1 rj+1 Lưu ý (zj , zj )M = (rj , zj )(M −1 Apj , pj )M = (Apj , pj ) Ở ta khơng dùng tích vơ hướng theo Euclid Algorithm 2.3 Thuật toán tiền tác động gradient liên hợp (pcg) 1: Nhập ngưỡng dừng tol 2: Tính r0 := b − Ax0 , z0 = M −1 r0 p0 := z0 3: for j = 0, 1, · · · , hội tụ, (ri , zj ) αj := (Apj , pj ) xj+1 := xj + αj pj 4: 5: rj+1 := rj − αj Apj rj+1 < tol dừng vòng lặp Nếu b zj+1 := M −1 rj+1 (rj+1 , zj+1 ) βj := rj , zj pj+1 := zj+1 + βj pj 6: 7: 8: 9: 10: 11: end for Chú ý 2.2 Thuật toán PCG tiền tác động tách trùng 2.4.2 PGMRES Trong trường hợp thặng dư cực tiểu suy rộng (GMRES) phương pháp lặp khơng đối xứng khác, ta có ba lựa chọn tương tự để áp dụng tiền tác động giống phương pháp CG(cụ thể, tiền tác động trái, tách phải) Tuy nhiên, có khác bản: Tiền tác động phải dẫn tới khái niệm gọi biến linh hoạt khác, tức là, tiền tác động thay đổi bước lặp download by : skknchat@gmail.com 30 i) GMRES tiền tác động trái Cũng tương tự phấn trước, định nghĩa thuật toán tiền tác động trái GMRES thuật toán GMRES mà áp dụng vào hệ M −1 Ax = M −1 b, (2.5) ứng dụng trực tiếp GMRES vào hệ phương trình tuyến tính cho ta thuật toán sau Algorithm 2.4 Thuật toán GMRES với tiền tác động trái (lp_gmres) r0 1: Tính r0 = M −1 (b − Ax0 ), β = r0 , v1 = β 2: for j = 1, · · · , m, 3: Tính w := M −1 Avj 4: for i = 1, · · · , j, 5: hi,j := (w, vi ) 6: w := w − hi,j vi 7: end for 8: Tính hj+1,j = w 9: vj+1 = end for w hj+1,j 10: Đặt Vm := [v1 , , vm ], H m = {hi,j }1≤i≤j+1,1≤j≤m 11: Tính ym = argminy βe1 − H m y 12: Nếu thỏa mãn dừng, ngược lại đặt x0 := xm chuyển đến bước xm = x0 + Vm ym Điểm thuật tốn sử dụng vịng lặp Arnoldi để xây dựng sở trực chuẩn không gian Krylov tiền tác động trái span r0 , M −1 Ar0 , , (M −1 A)m−1 r0 Nó sử dụng trình Gram-Schmidt cải biên (MGS), mà vectơ trực chuẩn hóa thu từ vectơ trước suốt q trình Mọi vectơ thặng dư chuẩn sinh từ thuật toán tương ứng với thặng dư tiền tác động, cụ thể, zm = M −1 (b − Axm ), download by : skknchat@gmail.com 31 thay thặng dư ban đầu b − Axm ii) GMRES tiền tác động phải Thuật toán GMRES tiền tác động phải dựa việc giải hệ AM −1 u = b, u = M x Chúng ta khơng cần phải tính biến u cách tường minh Thật vậy, thặng dư ban đầu b − Ax0 = b − AM −1 u0 tính rồi, vectơ sau khơng gian Krylov thu mà không cần đến biến u Cũng xin lưu ý ta không cần khởi tạo giá trị u0 Thặng dư ban đầu cho hệ tiền tác động tính r0 = b − Ax0 Nó b − AM −1 u0 Trong thực tiễn, thơng thường giá trị khởi tạo x0 cho u0 Tại bước lặp cuối cùng, nghiệm xấp xỉ u m um = u0 + vi ηi , i=1 với u0 = M x0 Nhân M −1 vào bên trái cho ta nghiệm xấp xỉ cần tìm m xm = x0 + M −1 vi ηi i=1 Do đó, ta cần thao tác tiền tác động vào bước lặp cuối thay bước lặp trường hợp tiền tác động trái Từ phân tích ta có Thuật tốn 2.5 Trong trường hợp này, vòng lặp Arnoldi xây dựng sở trực chuẩn cho không gian Krylov tiền tác động phải span r0 , AM −1 r0 , , (AM −1 )m−1 r0 Chú ý rằng, chuẩn thặng dư tương đối hệ ban đầu, tức b − Axm , thuật tốn ngầm tính toán thặng dư b − Axm = b − AM −1 um download by : skknchat@gmail.com 32 Algorithm 2.5 Thuật toán GMRES với tiền tác động phải (rp_gmres) r0 1: Tính r0 = b − Ax0 , β = r0 , v1 = β 2: for j = 1, · · · , m, 3: Tính w := AM −1 vj 4: for i = 1, · · · , j, 5: hi,j := (w, vi ) 6: w := w − hi,j vi 7: end for 8: Tính hj+1,j = w 9: vj+1 = end for w hj+1,j 10: Đặt Vm := [v1 , , vm ], H m = {hi,j }1≤i≤j+1,1≤j≤m 11: Tính ym = argminy βe1 − H m y 12: Nếu thỏa mãn dừng, ngược lại đặt x0 := xm chuyển đến bước xm = x0 + M −1 Vm ym Đây điểm khác biệt mấu chốt so với thuật toán GMRES tiền tác động trái iii) GMRES tiền tác động tách Trong nhiều trường hợp, M phân tích dạng M = LU Khi đó, ta sử dụng GMRES cho hệ tiền tác động tách L−1 AU −1 u = L−1 b, x = U −1 u Trong tình này, ta phải tác động vào thặng dư ban đầu L−1 bắt đầu thuật toán tác động lên tổ hợp tuyến tính Vm ym U −1 để tạo nên nghiệm xấp xỉ Khi đó, chuẩn thặng dư chuẩn L−1 (b − Axm ) iv) So sánh tiền tác động phải trái Có thể thấy tập giá trị riêng ma trận M −1 , AM −1 , L−1 AU −1 trùng Vì thế, ta dự đốn ba thuật tốn có tính hội tụ tương download by : skknchat@gmail.com 33 tự nhau, biết giá trị riêng lúc không điều khiển hội tụ Trong mục này, so sánh tính chất tối ưu đạt tiền tác động trái, phải GMRES Đối với tiền tác động trái, GMRES tối tiểu hóa chuẩn thặng dư M −1 b − M −1 Ax tập vectơ không gian affine L x0 + Km = x0 + span{z0 , M −1 Az0 , , (M −1 A)m−1 z0 }, (2.6) z0 thặng dư tiền tác động ban đầu z0 = M −1 r0 Vì vậy, nghiệm xấp xỉ biểu diễn xm = x0 + M −1 sm−1 (M −1 A)z0 , với sm−1 đa thức bậc m − mà cực tiểu hóa đại lượng z0 − M −1 As(M −1 A)z0 tập đa thức s bậc không vượt q m − ta ln ln biểu diễn điều kiện tối ưu ứng với vectơ thặng dư ban đầu r0 Thật vậy, z0 − M −1 As(M −1 A)z0 = M −1 [r0 − As(M −1 A)M −1 r0 ] tính tốn đại số đơn giản cho ta s(M −1 A)M −1 r = M −1 s(AM −1 )r, (2.7) với đa thức s Từ đó, thu z0 − M −1 As(M −1 A)z0 = M −1 [r0 − AM −1 s(AM −1 )r0 ] (2.8) Bây giờ, ta xét GMRES tiền tác động phải Ta cần phải phân biệt biến x ban đầu biến chuyển đổi u mà quan hệ với x x = M −1 u Với biến u, GMRES tiền tác động phải cực tiểu theo chuẩn hai r = b − AM −1 u, u thuộc R u + Km = u0 + span r0 , AM −1 r0 , , (AM −1 )m−1 r0 , download by : skknchat@gmail.com (2.9) 34 với r0 = b − AM −1 u0 Thặng dư đồng với thặng dư tương ứng với biến x ban đầu M −1 u0 = x0 Nhân M −1 vào bên trái (2.9) từ (2.7) ta thấy biến x tổng quát tương ứng với vectơ không gian (2.9) thuộc không gian affine R M −1 u0 + M −1 Km = x0 + span z0 , AM −1 z0 , , (AM −1 )m−1 z0 Tập trùng với không gian affine (2.6) mà sử dụng GNRES tiền tác động trái Nói cách khác GMRES tiền tác động phải nghiệm xấp xỉ x biểu diễn xm = x0 + sm−1 (AM −1 )r0 , Tuy nhiên, sm−1 đa thức bậc m − mà cực tiểu chuẩn r0 − AM −1 s(AM −1 )r0 (2.10) Trên tập đa thức s có bậc khơng q m − Điều đáng ngạc nhiên hai đại lượng (2.8) (2.10) khác nhân M −1 Đặc biệt, GMRES tiền tác động trái cực tiểu M −1 r, GMRES tiền tác động phải cực tiểu r, với r lấy không gian hai trường hợp Mệnh đề 2.1 Nghiệm gần nhận GMRES tiền tác động trái phải có dạng xm = x0 + sm−1 (M −1 A)z0 = x0 + M −1 sm−1 (AM −1 )r0 , z0 = M −1 r0 sm−1 đa thức bậc m − Đa thức sm−1 cực tiểu hóa chuẩn thặng dư b − Axm trường hợp tiền tác động phải cực tiểu hóa chuẩn thặng dư tiền tác động M −1 (b − Axm ) trường hợp tiền tác động trái Trong hầu hết trường hợp thực tế khác tính hội tụ hai cách tác động không đáng kể, trừ M điều kiện xấu download by : skknchat@gmail.com 35 Chương Ví dụ số Trong mục xét hệ phương trình giải phương pháp CG phương pháp GMRES với phương pháp CG phương pháp GMRES mà tiền tác động Tất tính tốn thực máy tính cá nhân sử dụng hệ điều hành Window 8.1, vi xử lí Core i7 - 4500U CPU, RAM 8GB, tốc độ 2.40GHz 3.1 Phương pháp CG PCG Ta xét hệ Ax = b, với ma trận A ma trận vuông cỡ 6084 lấy từ việc rời rạc hóa phương trình Laplace tạo MATLAB câu lệnh dlsq, b vế phải chọn cho nghiệm Để áp dụng phương pháp CG A phải ma trận đối xứng, xác định dương • Ta đặt tiêu chuẩn dừng thặng dư chuẩn hóa A˜ x − b / b nhỏ đại lượng cho trước, tol = 10−8 • Số bước lặp tối đa thực maxit = 150 • Sự hội tụ phương pháp CG, thực lệnh cgs, có thời gian chạy 0.092995s Bây giờ, ta sử dụng phương pháp PCG Ta sử dụng kỹ thuật phân tích Cholesky thiếu để tìm ma trận tiền tác động MATLAB download by : skknchat@gmail.com 36 lệnh pcg thời gian chạy PCG (đã bao gồm thời gian phân tích Cholesky thiếu) 0.057393s Quan sát hình vẽ minh họa sau ta thấy, để đạt tiêu chuẩn dừng 10−8 , với phương pháp CG mà chưa tiền tác động ta cần khoảng 120 bước, với phương pháp CG mà có tiền tác động ta cần 60 bước Như vậy, đẩy nhanh tốc độ tính tốn gần gấp đôi 3.2 Phương pháp GMRES PGMRES Trong mục ta xét hệ tuyến tính với ma trận hệ số A lấy từ liệu MATLAB, có tên W EST 0479 Đây phần liệu từ mơ hình nhà máy kỹ thuật hóa học, có cỡ 479 × 479, tạo lệnh load Nó khơng có tính chất đặc biệt Cịn vế phải b tạo tổng hàng tương ứng A Quan sát hình vẽ minh họa sau đây, ta thấy từ bước đến bước 20 tốc độ hội tụ GMRES chậm với sai số chưa đạt 10−1 Để tạo ma trận tiền tác động, ta sử dụng phân tích LU thiếu Sự hội tụ thể khơng số bước lặp mà thời gian thực hiện, cụ thể: thời gian chạy GMRES 0.117085s, thời gian chạy PGMRES 0.109164 download by : skknchat@gmail.com 37 3.3 Kết luận Nếu tìm tiền tác động thích hợp phương pháp vô hữu hiệu để cải thiện hội tụ phương pháp lặp truyền thống download by : skknchat@gmail.com 38 Kết luận Sau nghiên cứu đề tài: "Về kỹ thuật tiền tác động giải hệ phương trình tuyến tính cỡ lớn", rút số kết luận sau đây: 1) Ta tìm nghiệm hệ phương trình tuyến tính định lí Cramer, phạm vi áp dụng hệ phương trình cỡ nhỏ ẩn số 2) Một số phương pháp lặp như: Phương pháp lặp đơn, phương pháp Jacobi, phương pháp lặp Gauss - Seidel, phương pháp CG phương pháp GMRES có tốc độ hội tụ phụ thuộc vào điều kiện ma trận hệ số áp giải hệ phương trình tuyến tính tính hiệu khơng cao giải hệ phương trình tuyến tính cỡ lớn 3) Kỹ thuật tiền tác động giải pháp hữu hiệu giải hệ phương trình tuyến tính cỡ lớn 4) Có ba cách tiền tác động giải hệ phương trình tuyến tính cỡ lớn như: Tiền tác động phải, tiền tác động trái, tiền tác động tách 5) Kỹ thuật tiền tác động có diện số cách giải hệ phương trình tuyến tính biết như: Phương pháp CG phương pháp GMRES download by : skknchat@gmail.com 39 Tài liệu tham khảo [1] Golub J.H., Van Loan C.F (1996), Matrix computations, 3nd Ed., Johns Hopkins University Press, Baltimore, Maryland [2] Demmel J W (1997), Applied numerical linear algebra SIAM, Philadenphia [3] Saad Y (2003), Iterative methods for sparse linear systems SIAM, Philadenphia download by : skknchat@gmail.com ... tuyến tính tính hiệu khơng cao giải hệ phương trình tuyến tính cỡ lớn 3) Kỹ thuật tiền tác động giải pháp hữu hiệu giải hệ phương trình tuyến tính cỡ lớn 4) Có ba cách tiền tác động giải hệ phương. .. phương trình tuyến tính cỡ lớn như: Tiền tác động phải, tiền tác động trái, tiền tác động tách 5) Kỹ thuật tiền tác động có diện số cách giải hệ phương trình tuyến tính biết như: Phương pháp CG phương. .. thuật tiền tác động (preconditioning), câu trả lời Chính tầm quan trọng kỹ thuật trên, chọn "Về kỹ thuật tiền tác động giải hệ phương trình tuyến tính cỡ lớn" đề tài nghiên cứu cho luận văn thạc

Ngày đăng: 12/04/2022, 20:00

Xem thêm:

Mục lục

    Kiến thức chuẩn bị

    Hệ phương trình tuyến tính

    Phương pháp giải trực tiếp

    Phương pháp khử Gauss

    Phương pháp phân tích LU

    Phương pháp lặp cổ điển

    Phương pháp lặp đơn

    Phương pháp Gauss - Seidel

    Phương pháp không gian con Krylov

    Không gian con Krylov và Thuật toán Arnoldi

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN