Phân tích sai số...15 Chương 2: Một số phương pháp giải gần đúng hệ phương trình tuyến tính... Nói đến toán học ứng dụng phải kể đến Giải tích số-môn học nghiêncứu các phương pháp giải g
Trang 1LỜI CẢM ƠN
Tôi xin chân thành cảm ơn thầy giáo Nguyễn Văn Hùng đã tận tình
hướng dẫn giúp đỡ tôi trong suốt thời gian thực hiện khóa luận
Xin chân thành cảm ơn các thầy, các cô trong tổ Giải tích-Khoa Toán,Trường Đại học Sư phạm Hà Nội 2 đã tạo mọi điều kiện giúp đỡ tôi hoànthành khóa luận này
Xin chân thành cảm ơn gia đình và bạn bè đã tạo mọi điều kiện thuậnlợi cho tôi trong quá trình thực hiện khóa luận
Tôi xin chân thành cảm ơn!
Hà Nội, tháng 05 năm 2010
Sinh viên Nguyễn Thị Ngọc
Trang 2LỜI CAM ĐOAN
Tôi xin cam đoan khoá luận là công trình nghiên cứu của riêng tôi.Trong khi nghiên cứu, tôi đã kế thừa những thành quả nghiên cứu củacác nhà khoa học, nhà nghiên cứu với sự chân trọng và biết ơn
Những kết quả nêu trong khoá luận chưa được công bố trên bất kỳ côngtrình nào khác
Hà Nội, tháng 05 năm 2010
Sinh viên Nguyễn Thị Ngọc
Trang 3Nội dung
MỤC LỤC
Lời cảm ơn 1
Lời cam đoan 2
Lời nói đầu 4
Chương 1: Một số kiến thức cơ bản 6
1.1 Số gần đúng và sai số 6
1.2 Hệ phương trình tuyến tính 13
1.3 Phân tích sai số 15
Chương 2: Một số phương pháp giải gần đúng hệ phương trình tuyến tính 17 2.1 Phương pháp Gauss 17
2.2 Phương pháp Cholesky 25
2.3 Phương pháp trực giao hóa 29
2.4 Phương pháp lặp đơn 32
2.5 Phương pháp Jacobi 37
2.6 Phương pháp Seidel 41
2.7 Phương pháp Gauss-Seidel 46
Chương 3: Bài tập áp dụng 49 Kết luận
Tài liệu tham khảo
Trang 4LỜI NÓI ĐẦU
Toán học là một môn khoa học bắt nguồn từ nhu cầu giải quyết bài toán
có nguồn gốc thực tiễn và quay trở lại phục vụ thực tiễn Cùng với thời gian
và sự tiến bộ của loài người toán học ngày càng phát triển và được chia thànhhai lĩnh vực đó là toán học lý thuyết và toán học ứng dụng
Nói đến toán học ứng dụng phải kể đến Giải tích số-môn học nghiêncứu các phương pháp giải gần đúng các bài toán thực tế được mô hình hoábằng ngôn ngữ toán học
Để có lời giải đúng cho bất kì bài toán nào cũng cần phải có dữ kiệncủa bài toán, xây dựng mô hình bài toán, tìm thuật toán hiệu quả nhất Vàcuối cùng là xây dựng chương trình trên máy tính sao cho tiết kiệm thời gian
và bộ nhớ Tuy nhiên trong thời gian sử lý số liệu không tránh khỏi sai số dù
là rất nhỏ nhưng ảnh hưởng trực tiếp đến quá trình tính toán
Chính vì vậy phải sử dụng các thuật toán hữu hiệu để giảm thiểu sự sai
số đồng thời thuận lợi cho công việc lập trình tiết kiệm số lượng các phép tính
và thời gian tính toán
Phương pháp số có ý nghĩa rất lớn trong đại số tuyến tính, đặc biệt làđối với việc giải hệ phương trình tuyến tính Khi số các phương trình lớn cácphương pháp truyền thống nhiều khi gặp khó khăn, chúng ta không thể giảiquyết một cách chính xác mà chỉ có thể đưa ra lời giải gần đúng cho một bàitoán Các nhà toán học đã tìm ra nhiều phương pháp để giải gần đúng hệphương trình tuyến tính
Hệ phương trình tuyến tính có dạng tổng quát là hệ gồm m phươngtrình n ẩn Trong khuôn khổ khoá luận này em xin trình bày mảng nhỏ đó là
hệ n phương trình, n ẩn
Trang 5Với lòng yêu thích toán học, đam mê nghiên cứu khoa học em đã quyết
định chọn đề tài cho mình là: “Một số phương pháp giải gần đúng hệ phương
trình tuyến tính”.
Có khá nhiều phương pháp giải hệ phương trình tuyến tính nhưng domới bước đầu làm quen với việc nghiên cứu khoa học và thời gian nghiên cứucòn ít nên trong khuôn khổ khoá luận này em xin trình bày một số vấn đề sau:
Chương 1: Một số kiến thức cơ bản về sai số, làm tròn số, số gần đúng,
hệ phương trình tuyến tính, tập nghiệm của hệ phương trình, số điều kiện của
ma trận, phân tích sai số
Chương 2: Một số phương pháp giải gần đúng hệ phường trình tuyếntính Chương này gồm 7 phương pháp giải gần đúng hệ phương trình tuyếntính gồm phương pháp trực tiếp và các phương pháp lặp được trình bày theothứ tự: cơ sở lý thuyết, thuật toán, ứng dụng và đánh giá sai số (nếu có)
Chương 3: Bài tập áp dụng
Trang 6CHƯƠNG 1: MỘT SỐ KIẾN THỨC CƠ BẢN
1.1 Số gần đúng và sai số
1.1.1 Định nghĩa
Trong thực tế tính toán ta thường không biết số đúng a* mà chỉ biết
số đủ gần nó là a Ta nói a là số gần đúng của a* , nếu a không sai khác
Số ∆ a thoả mãn (1.1) được gọi là sai số tuyệt đối của a
Trong phép đo nói chung sai số tuyệt đối càng nhỏ càng tốt
Ví dụ 1.1.1 2 Đo độ dài hai đoạn đường ta được:
a
Trang 8Nhận xét:
Từ ví dụ trên ta thấy rằng phép đo b chính xác hơn phép do a mặc dù
a b Như vậy độ chính xác của phép đo phản ánh qua sai số
Thu gọn a là vứt bỏ một số các chữ số bên phải của a để được
số ngắn gọn hơn nhưng vẫn đảm bảo độ chính xác cần thiết
Trang 10tính toán với số chẵn tiện hơn.
a a a a .
Từ đánh giá trên ta có nhận xét: Khi thu gọn số a thì sai số tuyệt đối
Trang 12(i+1) thì Muốn vậy phải có:
Trang 13Trong thực tế người ta chọn 1 hoặc 1
Trang 14 là các giá trị đúng Giả sử ta không
biết các giá trị đúng này, mà ta chỉ biết các giá trị x x1, x2
(với i=1,2, ,n) là các sai số tuyệt đối và tương đối của
các đối số Khi đó sai số của hàm
Trang 15yy
Trang 16y y
2.00
0.012.01 2.00
1.1.4.2 Sai số của phép toán nhân, chia:
Sai số của phép nhân
Trang 18(phép khai căn) thì độ chính xác tăng lên.
1.1.4.4 Sai số của phép tính logarit.
Trang 19f '
n xi
f x1, x2 , , x n Cần
Trang 201.2 Hệ phương trình đại số tuyến tính
1.2.1 Dạng tổng quát của hệ phương trình tuyến tính
Một hệ phương trình tuyến tính tổng quát là hệ có m phương trình n ẩn
Hay viết dưới dạng tường minh:
a11x1 a12 x2 a 1n x n b1
Trang 21a21x1 22 2 2n n 2
a n1 x1 a n2 x2 a nn x n b n
1.2.2 Định lý về sự tồn tại và duy nhất nghiệm
Trang 22Nếu det A =0 ta nói ma trận A suy biến và hệ (2.1) suy biến Khi đó
hệ phương trình vô nghiệm hoặc vô số nghiệm
1.2.3 Biện luận về số nghiệm
Cho hệ phương trình (2.1) với ma trận hệ số A và ma trận bổ sung
Nếu rank A
Nếu rank A =rank A bs = r thì có 2 trường hợp: r = n và r < n
Trang 24Axx
Cho các ẩn
x r1 , x r2 , , x n
(là các ẩn tự do) những giá trị tuỳ ý ta tính
Trang 25được gọi là số điều kiện của ma trận A và đại
lượng đó kí hiệu là cond ( A).
Ma trận A được gọi là ma trận điều kiện xấu nếu cond( A ) là khá lớn
Trang 26m
1M
Trang 27phải cho gần đúng là một bài toán khó của toán học tính toán.
Trang 28CHƯƠNG 2: MỘT SỐ PHƯƠNG PHÁP GIẢI GẦN ĐÚNG HỆ
ta xét một số phương pháp thực tế giải hệ phương trình (2.1) với đặc điểm
là khối lượng tính toán được giảm nhẹ
Trong số các phương pháp đó có thể chia ra làm 2 nhóm lớn là:
- Nhóm phương pháp trực tiếp: phương pháp Gauss, trực giao hoáHilbert-Schmidt, Cholesky
- Nhóm phương pháp gián tiếp: lặp đơn, Jacobi, phương pháp Seidel vàGauss-Seidel
Đặc điểm:
- Nhóm phương pháp trực tiếp là sau một số hữu hạn phép tính sẽ cho
ta kết quả, vì vậy nhóm phương pháp này thường được áp dụng với các bàitoán có kích cỡ nhỏ, và các số liệu ban đầu là đúng Tuy nhiên, do phải thựchiện một số phép tính tương đối là lớn nên có nguy cơ tích lũy sai số, nhất làđối với trường hợp số liệu ban đầu không thật chính xác
- Nhóm phương pháp gián tiếp (phương pháp lặp) thường được áp dụngcho lớp các bài toán có kích cỡ lớn, số liệu ban đầu có sai số
Trang 29Quá trình xuôi: đưa hệ (2.1) về dạng tam giác nhờ phép biến đổi tươngđương
Quá trình ngược: Tìm từ hệ tam giác
Hệ phương trình tuyến tính 4 phương trình, 4 ẩn có dạng:
a11x1 a12 x2 a13 x3 a14 x4 a15
a31x1 a32 x2 a33 x3
a34 x4 a35 a41x1
a42
Trang 31a a
11(j>1)
Như vậy công thức (2.1.4) với k=1 đã được chứng minh
Trang 32a a
44 4 45
Trang 33Hay viết dưới dạng tường minh:
a11x1 a12 x2 a1n xn b1
Trang 37- Phương pháp Gauss là phương pháp trực tiếp thường sử dụng để giải
hệ tuyến tính có kích cỡ nhỏ, các số liệu cho đúng
- Khối lượng tính toán của phương pháp Gauss:
Trong đó:
n
n23
Trang 38ak 1
0
thì phương pháp Gauss có thể cho ta kết quả không chính xác
- Để giảm sai số tính toán, khi sử dụng phương pháp Gauss người tathường chọn trụ tối đa Quá trình này được thực hiện như sau:
Trang 39Bước 2: Thêm bớt các tổ hợp tuyến tính các dòng chứa phần tử dẫn.
Trang 40A1
x
n
i, j1
ta phải giải hệ n phương trình
Ví dụ Tìm ma trận nghịch đảo của ma trận A cho dưới đây:
Trang 41Vậy hệ (2.1) phân rã thành hai hệ sau đây: Cx y
Để giải hệ phương trình trên, trước tiên ta giải hệ By b Với y
Trang 43c b c 0 suy ra b c 0
a21 a22 11 11 22 22 22 22Tiếp tục lập luận như trên, ta xác định được tất cả các ẩn còn lại trong
hệ (2.2.2)
Tuy nhiên ta chỉ xét trường hợp ma trận A đối xứng A A T
Khi đó
A B.B T với B là ma trận tam giác dưới, BT là ma trận chuyển vị của B
với ma trận B có dạng tam giác
trên Dùng phép thế ngược ta sẽ có được nghiệm của hệ phương trình (2.1)
2.2.2 Sơ đồ tính toán
1 Cho hệ phương trình tuyến tính: Ax b
Trang 442 Kiểm tra tính đối xứng của ma trận A
3 Tìm ma trận B theo công thức:
b11
Trang 46
1
bằng phương pháp Cholesky Với số
Trang 48Kết luận: Nghiệm của hệ phương trình là:
2.2.3 Nhận xét
x 6; 2; 1
- Thuật toán áp dụng cho cả trường hợp b ij là những số thuần ảo.
Trang 49i
n
i i
u
- Phương pháp Cholesky thường áp dụng cho hệ chuẩn tắc nhận đượckhi sử lý bằng phương pháp bình phương tối thiểu Khi đó ma trận A của hệ
là đối xứng, xác định dương và hệ (2.1) được giải duy nhất
- Khối lượng tính toán:
Số phép nhân là:
Số phép cộng là:
1 n3 9n2 2n6
1 n3 6n2 7n6
Số phép chia là n và số phép khai căn là n
0,0, ,1 thì hệ có (n+1) vectơ i1 a i trong đó
Trang 50k i i k
k
n1 t1 ,t2 , ,t n1
Trang 53 1
Trang 55- Phương pháp trực giao hóa tương đối đơn giản, dễ lập trình trên máy.
- Khối lượng tính toán ít ( cỡ n3 phép tính )
Nhược điểm:
- Tuy nhiên không ổn định và kém chính xác so với phương pháp Gauss Nguyên nhân là do quá trình trực giao hóa Hilber- Schmidt theo côngthức (2.3.2) không ổn định Sai số nhỏ có thể làm hệ vectơ
trực giao nữa
2.4 Phương pháp lặp đơn.
Trang 562.4.1 Cơ sở lí thuyết
Trang 57Nguyên lí ánh xạ co: Trong không gian metric đầy đủ, mọi ánh xạ co
đều có điểm bất động duy nhất
Để vận dụng nguyên lí ánh xạ co, trước hết ta nhắc lại các chuẩn quenthuộc trong không gian n
Trang 59Trong đó B là một trong các chuẩn
theo chuẩn của vectơ x
Trang 60x* là nghiệm duy nhất của phương trình (2.4.1)
x* là nghiệm duy nhất của phương trình (2.1)
Trang 63sau:
Trang 652.5 Phương pháp Jacobi (phương pháp đường chéo trội)
Để giải gần đúng hệ phương trình tuyến tính theo phương pháp lặp taphải đưa hệ (2.1) về dạng (2.4.1) với ma trận B 1 Vấn đề này là
khôngtầm thường Với mỗi ma trận A cụ thể phải có một kỹ thuật tương ứng kèmtheo Phương pháp Jacobi (hay còn được gọi là phương pháp đường chéo trội)dưới đây là một trường hợp điển hình
g
Trang 66B 1.
(2
1)(2.4
1)
Trang 68có nghiệm duy nhất x x* .
2 Kiểm tra tính chéo trội của ma trận A
3 Đưa hệ Ax
4 Chọn x0 tuỳ ý.
5 Tính xk 1Bxk g , k=1,2,…,n
Trang 71Giả sử sau k bước lặp ta tìm được nghiệm gần đúng
nghiệm đúng của hệ phương trình tuyến tính (2.1)
Trang 72.1)
Trang 73k n10.55
Vậy muốn tìm nghiệm x* của hệ phương trình (2.1.1) với sai số
phải thực hiện k bước lặp, với k nguyên được xác định ở trên
Ví dụ 2.5.5.Cho hệ phương trình sau, tìm số các bước lặp để sai số =10-4
Trang 74càng được sử dụng sớm bao nhiêu càng tốt bấy nhiêu”.
Trang 76hội tụ đến nghiệm duy nhất của hệ phương trình (2.1).
Theo định lí (2.4) thì hệ phương trình (2.4) có nghiệm duy nhấtnghĩa là:
x* ,
Trang 83n ,
Lấy xấp xỉ ban đầu: x 0 0, 0, 0
Kết quả được ghi trong bảng sau:
- Phương pháp Seidel hội tụ tốt hơn phương pháp lặp đơn
- Phương pháp Seidel tiết kiệm bộ nhớ, vì các thành phần vừa được tínhhuy động ngay để tính các thành phần tiếp theo
- Có thể nêu ví dụ phương pháp Seidel hội tụ còn phương pháp lặp đơnphân kì và ngược lại
- Do trong , 1
,
Seidel cũng hội tụ nếu B 1
Trang 87
1
Trang 92b) Tương tự ta thấy A là ma trận đối xứng, tìm ma trận B
Trang 94Chon x 0 0;0;0ta thu được kết quả trong bảng sau:
Trang 96Kiểm tra tính chéo trội của ma trận A.
Ta đưa hệ đã cho về dạng x=Bx+g: Trong đó:
Trang 98x4 0.1x1 0.5x2 0.3x3 1.8
Từ đó ta có:
Trang 100Kết luận: Nghiệm của hệ là: x
Bài 6
Hệ đã cho tương đương với hệ phương trình sau:
Trang 104KẾT LUẬN
Trên đây là toàn bộ đề tài: “Một số phương pháp giải gần đúng hệ
phương trình tuyến tính” Đối chiếu với mục đích nghiên cứu, đề tài cơ bản
đã hoàn thành những nhiệm vụ đặt ra
- Đề tài đã nghiên cứu về phương pháp giải gần đúng hệ phương trìnhtuyến tính Đưa ra hai nhóm phương pháp giải hệ phương trình tuyến tính đó
là các phương pháp trực tiếp và phương pháp lặp Chỉ ra tính ưu việt củaphương pháp lặp Từ cơ sở lý thuyết đến cách tiếp cận với phương pháp giải,sắp xếp theo trình tự hợp lý
- Mặc dù đã có nhiều cố gắng tìm tòi nghiên cứu nhưng khả năng vàthời gian có hạn nên đề tài không tránh khỏi thiếu xót Vì vậy em rất mongđược sự chỉ bảo, đóng góp ý kiến của các thầy cô giáo và các bạn sinh viên để
đề tài được hoàn chỉnh hơn
Trang 105TÀI LIỆU THAM KHẢO
1 Phạm Kỳ Anh(2005), Giải tích số- NXB Đại Học Quốc Gia Hà Nội
2 Nguyễn Minh Chương (Chủ biên), Nguyễn Văn Khải, Khuất Văn Ninh,
Nguyễn Văn Tuấn, Nguyễn Tường, Giải tích số-NXB Giáo Dục.
3 Tạ Văn Đĩnh, Phương pháp tính-NXB Giáo Dục.
4 Đoàn Quỳnh (Chủ biên), Nguyễn Anh Kiệt, Tạ Mân, Nguyễn Doãn Tuấn,
Đại số tuyến tính và hình học giải tích-NXB Đại Học Quốc Gia Hà Nội.
5 Nguyễn Đình (Chủ biên), Tạ Văn Đĩnh, Nguyễn Hồ Quỳnh-Toán học cao
cấp-NXB Giáo Dục.
6 Nguyễn Đình (Chủ biên), Tạ Văn Đĩnh, Nguyễn Hồ Quỳnh-Bài tập toán
học cao cấp-NXB Giáo Dục.