Do đó, bài toán nộisuy đang là vấn đề cấp bách và cần tìm giải pháp nhằm đáp ứng các yêu cầu trên.Nhận thấy tầm quan trọng của bài toán nội suy trong thực tế và với các kiến thức đãđược
Trang 1KHOA TOÁN-TIN
******
BÁO CÁO MÔN HỌC
PHƯƠNG PHÁP SỐ
BÀI TOÁN NỘI SUY
BÀI TOÁN TỐI ƯU MỐC NỘI SUY
Giảng viên hướng dẫn: TS Hà Thị Ngọc Yến
Trang 2BẢNG PHÂN CÔNG VÀ ĐÁNH GIÁ CÁC THÀNH
Trang 3MỤC LỤC
1.1 Khái niệm bài toán nội suy 5
1.2 Các định nghĩa trong bài toán nội suy 5
1.3 Định lý về sự tồn tại duy nhất của đa thức nội suy 6
2 Sai số của đa thức nội suy 8 3 Tối ưu mốc nội suy 14 3.1 Đa thức Chebyshev 15
3.2 Định lý về mốc nội suy tối ưu 16
3.3 Cách xác định các mốc nội suy tối ưu trên đoạn [a, b] 17
4 Thuật toán và chương trình 20 4.1 Gói đọc dữ liệu và gói trực quan kết quả 21
4.2 Gói tìm đa thức nội suy xấp xỉ hàm số 21
4.3 Gói tối ưu mốc nội suy 23
4.4 Ví dụ và chạy thử chương trình 23
Trang 2
Trang 4Với sự phát triển không ngừng của các ngành công nghiệp và sự bùng nổ của côngnghệ thông tin, máy tính cần phải xử lí các dữ liệu với sai số rất nhỏ Do đó, bài toán nộisuy đang là vấn đề cấp bách và cần tìm giải pháp nhằm đáp ứng các yêu cầu trên.Nhận thấy tầm quan trọng của bài toán nội suy trong thực tế và với các kiến thức đã
được học trong môn học Phương pháp số, nhóm chúng em đã tìm hiểu về "Bài toán nội suy" và "Bài toán tối ưu mốc nội suy"
Để tìm hiểu về hai bài toán trên, chúng em sẽ trình bày các nội dung như sau:
• Giới thiệu về bài toán nội suy,
• Sai số của đa thức nội suy,
• Bài toán tối ưu mốc nội suy,
• Thuật toán và chương trình
Cuối cùng, chúng em xin gửi lời cảm ơn đến cô Hà Thị Ngọc Yến, người đã trực tiếpgiảng dạy bộ môn Phương pháp số và cũng là người luôn sát cánh đồng hành cùng chúng
em trong hành trình truyền tải tri thức Cảm ơn cô đã truyền tải cho chúng em rất nhiềukiến thức hay và bổ ích
Trong quá trình hoàn thành báo cáo, mặc dù chúng em đã cố gắng hoàn thiện nhưngkhông thể tránh khỏi những thiếu sót Chúng em mong nhận được sự góp ý, nhận xét của
cô để bài báo cáo của nhóm chúng em được hoàn thiện hơn
Chúng em xin chân thành cảm ơn!
Trang 3
Trang 5Hình 1 Xấp xỉ hàm số 1
25x2+ 1với số lượng mốc nội suy khác nhau 11
Hình 2 Xấp xỉ hàm số 1 25x2+ 1với các mốc nội suy được phân bố đều 12
Hình 3 Xấp xỉ hàm số 1 25x2+ 1bằng đa thức nội suy với bộ điểm nội suy bất kì 12
Hình 4 Xấp xỉ hàm số 1 25x2+ 1khi có nhiều thông tin tập trung tại biên 13
Hình 5 5 mốc nội suy tối ưu trên khoảng[−1 1], 18
Hình 6 9 mốc nội suy tối ưu trên khoảng[−1 1], 18
Hình 7 11 mốc nội suy tối ưu trên khoảng[ 1 1]− , 18
Hình 8 Xấp xỉ hàm số 1 25x2+ 1bằng các mốc nội suy tối ưu 19
Hình 9 Sơ đồ khối của chương trình 20
Hình 10 Trực quan hóa hàm nội suy và hàm f(x) 24
Hình 11 Sai số điểm của đa thức nội suy trong khoảng nội suy 24
Hình 12 Sai số điểm của đa thức nội suy Chebyshev so sánh với đa thức nội suy mốc ngẫu nhiên 25
Trang 6BÀI TOÁN NỘI SUY
1 Bài toán nội suy
1.1 Khái niệm bài toán nội suy
Giả thiết: Cho 1 hàm sốy = f (x)trên đoạn[a, b]có đồ thị chứa tập các điểm
Đa thức thỏa mãn điều kiện trên được gọi làđa thức nội suy, ký hiệuPn(x)
1.2 Các định nghĩa trong bài toán nội suy
Các định nghĩa trong bài toán nội suy:
•xi, i= 0, nđược gọi là các mốc nội suy,
•yi, i= 0, nđược gọi là các giá trị nội suy,
•(xi, yi)được gọi là các điểm nội suy,
•[a, b]được gọi là khoảng nội suy,
•f (x) ≈ P ( )x vớix ∈ (a, b)được gọi là phép nội suy,
•f (x) ≈ P ( )x vớix /∈ (a, b)được gọi là phép ngoại suy,
• Hiệu sốR(x) = f (x) − Pn( )x được gọi là sai số của phép tính nội suy tại điểm x
Trang 5
Trang 71.3 Định lý về sự tồn tại duy nhất của đa thức nội suy
Định lý 1.1 Tồn tại duy nhất một đa thức nội suy ứng với tập điểm nội suy cho trước :
Dễ dàng chứng minh được rằng ma trậnVandermonde là ma trận có định thức luôn khác
Trang 8Với việc thực hiện phép biển đổi:
Bằng cách quy nạp, ta thu được công thức tính định thức ma trậnVandermonde Do
đó đa thức nội suy luôntồn tạido định thức của ma trận luôn khác 0, hạng của ma trậnVandemonde bằng hạng của ma trận hệ số bổ sung (*)
2 Sự duy nhất:
Giả sử từ tập điểm nội suy cho trước, ta thu được 2 đa thức nội suyPn(x)vàQn(x).Xét hiệuH(x) = Pn( ) − Qx n( )x thìH(x)cũng là đa thức có bậc không quá n, đồng thời:
H(xi) = Pn(xi) − Qn(xi) = yi−yi= 0, ∀i = 0, n
Như vậy đa thứcH(x)có bậc không quá n mà có n+1 nghiệm làx0, x , , x1 n, chứng tỏ
H(x) = 0trên[x0, xn], hayPn(x) = Qn( )x Suy ra chỉ có duy nhất một đa thức nội suythỏa mãn tập điểm nội suy cho trước (**)
Từ (*) và (**) ta có điều phải chứng minh
Phần chứng minh trong định lý trên đồng thời cho ta một phương pháp để tìm đathức nội suy, đó là phương pháp giải hệ đại số tuyến tính với ma trận liên kết là ma trậnVandermonde, chi tiết thuật toán và ví dụ áp dụng sẽ được trình bày ở phần sau Trongtrường hợp các mốc nội suy cách xa nhau, phép nội suy có thể không chính xác Ngượclại, nếu các mốc nội suy gần nhau, đặc biệt là trong trường hợp giá trị tuyệt đối của chúngnhỏ hơn một, phương pháp này có thể gây ra bất lợi do ma trận Vandermonde rất dễ trởthành ma trận suy biến, ngoài ra khối lượng tính toán đến từ việc giải hệ rất lớn Vì vậytrong thực tế, người ta thường sử dụng các phương pháp tìm đa thức nội suy khác để giảm
độ phức tạp, giảm sai số tính toán hoặc để việc xây dựng đa thức nội suy trở nên linh hoạthơn
Trang 7
Trang 92 Sai số của đa thức nội suy
Một trong những yếu tố được quan tâm khi nghiên cứu về các phương pháp số đó làsai số của phương pháp Đối với bài toán nội suy bằng đa thức nội suy, độ chính xác của
đa thức nội suy được thể hiện qua hai loại sai số: sai số điểm và sai số hàm Sai số điểmcho ta sai lệch giữa giá trị của đa thức nội suy và giá trị thực tế của hàm số tại một điểmbất kì Trái lại, sai số hàm cho ta thấy được sai lệch của đa thức nội suy so với hàm chínhxác trên một khoảng Trong nhiều trường hợp, đa thức nội suy đem lại các sai số điểm tốtnhưng có sai lệch tổng thể rất lớn và ngược lại Do đó trong thực tế, người ta phải nghiêncứu về cả hai loại sai số này để có các chiến lược tối ưu độ chính xác của phép nội suyhoặc áp dụng vào các bài toán cụ thể trong thực tế Phần này sẽ tập trung trình bày về hailoại sai số và các yếu tố ảnh hưởng đến độ chính xác của phép nội suy
Một trong những ứng dụng của phép nội suy đó là dự đoán giá trị hàm số tại các điểm
mà ta chưa biết thông tin Do vậy người ta nghiên cứu về sai số điểm để có thể đánh giáđược độ chính xác của giá trị dự báo này Cụ thể, ta xấp xỉ hàm sốf (x)bằng đa thức bậc
n Pn(x)sử dụngn + 1mốc nội suyx0, x , x , , x1 2 n, xét cố định,x x = xi, i = 0, n, gọi
Rn(x) = f (x) − Pn( )x (1)
là sai số tại điểm x
Trước khi trình bày các kết quả về sai số điểm, ta nhắc lại về khai triển Taylor, xét hàm
sốg(x)khả vi đến cấpn + 1và điểmx0cố định Khi đó giá trị của hàm số tại các điểmnằm trong lân cận củax0được tính bởi công thức
n+ Lx,
trong đóLx=g
(n+1)(c)
(n + 1)!(x − x0) (
(n+1) cnằm giữax0vàx) được gọi là phần dư Lagrange
Ý tưởng của việc đánh giá sai số điểm làRn(x)sẽ có dạng giống với phần dư Lagrangetrong khai triển Taylor, trong đó(x − x0)n+1được thay bởi
F (z) := Rn(z) −kωn+1( ),z (3)với hằng số được chọn từ điều kiệnk F (x) = 0, nghĩa là
Trang 10Dễ thấyF (xi) = 0, do đóF (z)cón + 2nghiệm phân biệtx, x , x , , x0 1 n.
Theo định lý Rolle,F′(z)cón + 1nghiệm phân biệt, .,F(n+1)(z)có nghiệmξ ∈ [a, b] :
F(n+1)(ξ) = f(n+1)(ξ) − k(n + 1)! = 0 =⇒ k =f
(n+1)(ξ)(n + 1)!. (5)Kết hợp (4) và (5), ta thu được công thức cho phần dưRn(x):
Rn(x) =f
(n+1)(ξ)(n + 1)!ωn+1(x). (6)GọiMn+1= sup
đó, việc đánh giá chính xác sai số điểm chỉ có thể áp dụng đối với các hàm số đã biếttrước
Ví dụ 1 Đánh giá sai số của hàmf (x) = sin xtạix = 6◦khi xấp xỉ hàmf (x)bởi đa thức nội suy thu được từ bốn mốc:
− P3
6π180
6π
180−
7π180
6π
180−
9π180
6π
180−
11π180
• Độ lớn của|ωn+1(x)|: Giá trị này nhỏ khi các mốc nội suyxiở gầnxvà lớn khi ở xa
xhoặc các mốc nội suy ở xa nhau Có thể thấy rằng khoảng nội suy tốt nhất chính là
Trang 9
Trang 11các khoảng nội suy có độ dài bằng một do khoảng cách từxđến các mốc nội suyđều nhỏ hơn một, khi đó|ωn+1(x)|sẽ càng gần không khi số lượng mốc nội suy ngàycàng nhiều Tuy nhiên kích thước khoảng nội suy này quá nhỏ, do vậy trong thực
tế, người ta thường thực hiện nội suy trên các khoảng có độ lớn bằng hai Ngoài ra,việc sử dụng đa thức nội suy để thực hiện ngoại suy sẽ cho ta kết quả không tốt dokhoảng cách giữaxđến các mốc nội suy lớn, vì thế giá trị|ωn+1(x)|càng lớn khi sốlượng mốc nội suy càng nhiều
• Số lượng mốc nội suy: Khinlớn thì 1
(n + 1)!nhỏ, tuy nhiên hai đại lượng phía trênthường có xu hướng tăng khintăng, do vậy sai số điểm sẽ thuộc vào việc yếu tố nàochiếm ưu thế khi số lượng mốc nội suy ngày càng lớn
Đa thức nội suy không chỉ được sử dụng để xấp xỉ giá trị của hàm số tại một số điểmnhất định mà còn được dùng để xấp xỉ giá trị của hàm số trên một khoảng Trong trườnghợp này, người ta quan tâm đến sai số hàm Cụ thể, sai số tổng thể của phép nội suy đượcđánh giá dựa trên hệ quả của công thức (7):
• Số lượng mốc nội suy
Như đã trình bày ở trên, giá trịMn+1thường khó để thay đổi và tính toán Do đó người taquan tâm đến sự ảnh hưởng của hai yếu tố còn lại đến sai số của phép nội suy Phần tiếptheo sẽ tập trung vào việc mô phỏng số với một ví dụ cụ thể để làm rõ sự ảnh hưởng củahai yếu tố này đến độ chính xác của phép nội suy Xét ví dụ cụ thể sau:
Ví dụ 2 Xấp xỉ hàm sốf (x) = 1
25x2+ 1trên đoạn[ 1− , 1]bằng đa thức nội suy.
Trường hợp hay gặp và đơn giản nhất đó là trường hợp các mốc nội suy cách đều nhau
Do vậy ta sẽ tìm hiểu sự ảnh hưởng của số lượng mốc nội suy đến sai số của phép nội suytrong trường hợp này Cụ thể, kết quả mô phỏng số được biểu diễn trong hình 1
Trang 10
Trang 12Hình 1: Xấp xỉ hàm số 1
25x2+ 1với số lượng mốc nội suy khác nhau
Từ kết quả mô phỏng trong hình 1, ta thấy rằng trong trường hợp các mốc nội suycách đều nhau, phép nội suy cho ta sai số tốt nhất ở trung tâm khoảng nội suy và khicàng tiến dần về biên, sai lệch này càng lớn Khi số lượng mốc nội suy tăng lên, phépnội suy ở trung tâm càng chính xác và phép nội suy trên biên ngày càng tệ Do đó, việctăng số lượng mốc nội suy cho ta xấp xỉ tốt ở khoảng trung tâm nhưng nó cũng khiến chosai số tổng thể bị tăng lên Vì lí do này, các đa thức nội suy với mốc nội suy cách đềuthường được sử dụng để tính toán giá trị của hàm số tại các điểm chưa biết bằng cáchchọn khoảng nội suy đủ nhỏ (các khoảng này thường có độ lớn từ một đến hai) sao chođiểm cần tính toán nằm ở trung tâm khoảng nội suy
Kết quả trên cho thấy rằng việc tăng số lượng mốc nội suy không phải lúc nào cũngtốt, đặc biệt trong trường hợp xấp xỉ hàm số bằng đa thức nội suy để ước lượng giá trị củahàm trên toàn bộ khoảng nội suy, do càng tăng số mốc nội suy thì sai lệch ở biên cànglớn khiến cho sai số hàm ngày càng tăng Khi này người ta quan tâm đến sự phân bố củacác mốc nội suy và việc thay đổi sự phân bố này có ảnh hưởng đến sai lệch như thế nào,
từ đó có các chiến lược tối ưu phép nội suy hợp lý Để có thể thấy rõ hơn sự ảnh hưởngnày, ta tiến hành xấp xỉ hàm số đã cho bằng đa thức nội suy với mười một mốc nội suy.Trường hợp đơn giản nhất là khi các mốc nội suy phân bố cách đều nhau, kết quả được
mô tả trong hình 2
Trang 11
Trang 13Hình 2: Xấp xỉ hàm số 1
25x2+ 1với các mốc nội suy được phân bố đềuNhư đã trình bày ở trên, khi các mốc nội suy phân bố đều, sai số điểm ở trung tâmkhoảng nội suy là tốt nhất và sai số này sẽ lớn dần khi tiến về biên Thực hiện mô phỏngvới một bộ điểm nội suy bất kì sẽ cho thấy rõ hơn ảnh hưởng của sự phân bố các mốc nộisuy đến sai lệch tổng thể Kết quả mô phỏng được biểu diễn trên hình 3
Hình 3: Xấp xỉ hàm số 1
25x2+ 1bằng đa thức nội suy với bộ điểm nội suy bất kì
Trang 12
Trang 14Quan sát các điểm giao nhau của hai đồ thị, ta thấy rằng bộ điểm nội suy cho ta haikhoảng mà tại đó tập trung nhiều thông tin, đó là tại biên bên trái và phần sườn bên phải.
Đồ thị của đa thức nội suy tại hai khoảng này gần như khớp với đồ thị của hàm số đã cho,nghĩa là phép nội suy cho ta xấp xỉ tốt trên các khoảng này Ngược lại, phần sườn bêntrái và biên bên phải là các nơi có ít thông tin, do vậy các giá trị dự đoán ở đây là khôngchính xác Điều này rất hợp lý với thực tế: việc có càng nhiều thông tin sẽ cho ra kết luậncàng chính xác
Ngoài ra, tại các khu vực có ít thông tin (sườn bên trái và biên bên phải), ta thấy rằngsai lệch tại biên lớn hơn rất nhiều so với sai lệch tại khu vực gần trung tâm Điều này chothấy một nhận xét nữa về ảnh hưởng của sự phân bố các mốc nội suy đến độ chính xáccủa phép nội suy: với cùng một lượng thông tin, sai lệch của các khu vực ở xa trung tâmkhoảng nội suy có xu hướng lớn hơn
Có thể thấy rằng sai lệch tại biên trong các trường hợp trên là rất lớn và sai số hàmcủa đa thức nội suy chịu ảnh hưởng bởi phần sai lệch này Một câu hỏi đặt ra là: liệu việctập trung nhiều thông tin tại biên hơn có làm giảm sai số tổng thể của phép nội suy haykhông? Kết quả mô phỏng đa thức nội suy được xây dựng từ một bộ điểm nội suy màthông tin tập trung tại biên được biểu diễn trong hình 4
Hình 4: Xấp xỉ hàm số 1
25x2+ 1khi có nhiều thông tin tập trung tại biên.Kết quả mô phỏng trong hình 4 cho thấy rằng khi thông tin tập trung nhiều tại biên,các giá trị dự đoán tại đây sẽ chính xác hơn Thêm vào đó, sai lệch tại hai bên sườn (là
Trang 13
Trang 15các nơi tập trung ít thông tin) lớn hơn rất nhiều so với sai lệch tại các khu vực còn lại, vàsai số tổng thể của phép nội suy được tính theo phần sai lệch này Tuy nhiên, như đã trìnhbày ở trên, với cùng một lượng thông tin, sai lệch sẽ ngày càng nhỏ khi càng tiến gần vềtrung tâm Do vậy, sai lệch tổng thể của phép nội suy trong trường hợp này nhỏ hơn rấtnhiều so với các trường hợp trước đó.
Tổng kết lại, sai số của phép nội suy được đánh giá dựa trên hai yếu tố: sai số điểm,được đánh giá dựa trên công thức (6), (7) và sai số hàm, được đánh giá dựa trên côngthức (8) Độ chính xác của phép nội suy phụ thuộc vào ba yếu tố chính: bản thân hàmf,
số lượng mốc nội suy và sự phân bố của các mốc nội suy Trong thực tế, hàmfthườngkhông biết trước, do vậy các đại lượng liên quan đến hàm số cần xấp xỉ gần như khôngthể tính toán và thay đổi Ngược lại, số lượng mốc nội suy và sự phân bố của chúng là cácyếu tố có thể thay đổi một cách linh hoạt
Đối với các bài toán thực tế, người ta thưởng sử dụng phép nội suy để xấp xỉ hàm sốtrên một khoảng thay vì tính toán tại một điểm cụ thể, vì thế mà sai số hàm được quantâm nhiều hơn Câu hỏi đặt ra là làm thế nào để phép nội suy mang lại độ chính xác tổngthể cao nhất (hay sai lệch tổng thể nhỏ nhất) Từ việc thực hiện các quan sát về các yếu tốảnh hưởng đến độ chính xác đã trình bày ở trên, người ta xây dựng một chiến thuật phân
bổ các mốc nội suy dựa trên ý tưởng đưa các mốc nội suy về gần biên hơn thay vì phân
bố đều Phần tiếp theo sẽ trình bày cụ thể hơn về chiến thuật tối ưu mốc nội suy này
3 Tối ưu mốc nội suy
Quay trở lại công thức sai số của đa thức nội suy:
Trang 163.1 Đa thức Chebyshev
Xét khoảng nội suy[−1 1], , từ các kết quả mô phỏng số ở phần trước, nhận thấy rằng:
• Đối với trường hợp các mốc nội suy cách đều, sai số tốt nhất tại trung tâm khoảngnội suy và lớn dần khi tiến về biên,
• Khoảng nào tập trung nhiều thông tin thì phép nội suy trên khoảng đó càng chínhxác,
• Khi có ít thông tin, sai số tại biên có xu hướng lớn hơn sai số tại khu vực trung tâm.Vậy để giảm sai số của đa thức nội suy, cách đầu tiên có thể nghĩ tới là di chuyển các mốcnội suy ra gần các đầu mút hơn và người ta đã tìm ra các mốc nội suy tối ưu là nghiệmcủa đa thức Chebyshev:
Tn(x) = cos[n arccos(x)], |x| ≤ 1 (12)Đặtθ = arccos(x) Do
cos(n + 1)θ = cos θ cos nθ − sin sinθ nθ,cos(n −1)θ = cos θ cos nθ + sin θ sin nθ,
Suy ra
cos(n + 1) + cos(θ n −1)θ = 2 cos θ cos nθ = 2x cos nθ,
hay
Tn+1(x) +Tn−1(x) = 2xTn(x) (13)Công thức này được gọi là công thức Chebyshev loại 1
Lưu ý: Nghiệm củaTn(x) = cos[n arccos(x)] = 0là
xi= cos2i + 12n π, (i = 0, n −1),
Định lý 3.1.Tn(x)là đa thức bậc với hệ số đầu làn 2n−1.
Chứng minh Định lý trên sẽ được chứng minh bằng quy nạp toán học Nhận thấy
•T1(x) =x,
Trang 15