Các kỹ thuật RBF được sử dụng ngày càng nhiều trong việc giải số phương trình đạo hàm riêng, đặc biệt là các bài toán phi tuyến và/hoặc các bài toán trong các miền hình học phức tạp.. Nộ
Trang 1MỤC LỤC
1.3 Tính gần đúng đạo hàm bằng đa thức nội suy 13 1.4.1 Hàm hàm cơ sở bán kính (Radial Basis Function networks) 16
Trang 2và lý thuyết điều khiển Một số phần mềm về hàm RBF và các ứng dụng cũng
đã được phát triển Ngoài ra, một lĩnh vực ứng dụng khác rất hiệu quả của nội suy RBF là tính toán khoa học Các kỹ thuật RBF được sử dụng ngày càng nhiều trong việc giải số phương trình đạo hàm riêng, đặc biệt là các bài toán phi tuyến và/hoặc các bài toán trong các miền hình học phức tạp Lĩnh vực này được phát triển dựa trên nền tảng của hình học họa hình, hình học tính toán, hình học vi phân cùng nhiều kiến thức toán học của đại số và giải tích, cũng như các thành tựu của phần cứng máy tính
Luận văn gồm có ba chương:
Chương 1 Nội suy hàm nhiều biến bởi hàm RBF
Khái niệm cơ bản về nội suy và xấp xỉ hàm số
Một số phương pháp nội suy hàm một biến
Nội suy hàm nhiều biến
Hàm cơ sở bán kính và các tính chất
Nội suy bởi hàm RBF
Chương 2 Phương trình khuyếch tán - truyền tải
Giới thiệu bài toán
Phương pháp sai phân giải phương trình khuyếch tán - truyền tải
Một số thí dụ tính toán
Chương 3 Giải phương trình khuếch tán - truyền tải bằng phương pháp không lưới
Trang 3Chương trình MATLAB giải bài toán bằng phương pháp sai phân và phương pháp RBF
Em xin được bày tỏ lòng biết ơn đến thầy giáo PGS.TS Đặng Quang Á đã
tận tình hướng dẫn em hoàn thành luận văn này Em cũng xin chân thành cảm
ơn các thầy cô giáo, bạn bè, đồng nghiệp, Khoa Công nghệ Thông tin – Đại học Thái Nguyên đã động viên, giúp đỡ em trong quá trình học tập và nghiên cứu
Thái Nguyên, ngày 30 tháng 10 năm 2010
Trang 4CHƯƠNG 1 : NỘI SUY HÀM NHIỀU BIẾN BỞI HÀM RBF
1.1 XẤP XỈ HÀM BẰNG NỘI SUY
1.1 1Bài toán nội suy.
Giả sử chúng ta có hàm số y=f(x), và biết giá trị của nó tại các điểm x0
=a < x1<x2 < <xn=b; yi = f(xi) với ∀i=0, ,n Hãy tìm biểu thức g(x) đủ đơn giản xácđịnh trên [a,b] sao cho: y= f(x) ≅ g(x) và g(xi) =yi
Hàm f(x) thường là hàm thực nghiệm hoặc hàm khó tính giá trị nên chỉ xác định giá trị tại một số điểm nhất định Các điểm xi (i=0, ,n) gọi là các mốc nội suy
Về mặt hình học bài toán nội suy được diễn đạt như sau: Tìm hàm g(x) có
đồ thị đi qua các điểm (xi, f(xi))
f(xi)
Lược đồ giải bài toán nội suy
Người ta cố gắng tìm hàm G(c0, , cn, x) khá đơn giản, thỏa mãn một số điều kiện nhất định và phụ thuộc n+1 tham số ci Các tham số ci này sẽ được xác định nhờ hệ phương trình sau:
Trang 5k =0
Trong đó các hàm {ϕk(x)} (k=0;n) là họ hàm độc lập tuyến tính cho trước
và thỏa mãn điều kiện
Khi đó hệ (2.2) là luôn giải được và có duy nhất nghiệm đối với ci
Các hàm {ϕk(x)} (k=0;n) được chọn theo kinh nghiệm hoặc bằng hàm
xk để dễ tính toán
Với các ci (i=0;n) tìm được, hàm g(x) = G(c0, , cn, x) gọi là hàm nội suy và dùng làm công thức để tính giá trị của hàm f(x) với các x trong đoạn[a,b]
1.1.2 Đa thức nội suy Lagrange
Lagrange đã xét trường hợp ϕk(x) = xk, (k=0;n), khi đó hàm nội suy là đa thức bậc n Còn định thức | ϕk(xi) | là định thức Vandermon nên khác không
Tuy vậy giải hệ (1.2) với n lớn vẫn rất khó khăn nên Lagrange đã xây dựng đa thức nội suy đơn giản sau
1.1.2.1 Xây dựng đa thức nội suy
Ký hiệu L(n)(x) là đa thức nội suy cần tìm Lagrange chọn đa thức này dưới
Trang 6Ví dụ: Giả sử với hàm y = f(x) ta đo được tại các điểm x0, và x1 tương ứng
Đây chính là đường thẳng đi qua 2 điểm (x0,y0) và (x1,y1)
Ví dụ: hàm y = f(x) đo được tại 4 điểm như sau:
xi 0 0.1 0.3 0.5
yi -0.5 0 0.2 1Khi đó ta có:
1.1.2.2 Sai số nội suy
Với x∈[a,b] ta ước lựong sai số f(x) – Ln(x), trong đó x cho trước.
Trang 7F(n+1)(c) = f(n+1) (c) – 0 – k (n+1)! =0
( 1)
( ) ( 1)!
1.1.3 Đa thức nội suy với mốc cách đều.
Ta xét trường hợp đặc biệt khi các mốc nội suy cách nhau một đoạn bằng nhau:
∆xi= xi+1 – xi = h = (b-a) /n (với i=0; n –1)(2.9)
Dùng phép đổi biến (x – x0)/h = t , các đa thức k( )
n
L x sẽ là đa thức theo t chỉ phụ thuộc vào số mốc n và có nhiều cách biểu diễn đơn giản, dễ sử dụng
Trang 8hơn.
Trang 91.1.3.2 Sai phân hữu hạn
Trong trường hợp các mốc nội suy cách đều xi+1 – xi =∆xi = h =const với i=0, ,n-1 Các sai phân hữu hạn được định nghĩa như sau:
Sai phân cấp 1: ∆yi = yi+1 – yi
Sai phân cấp 2: ∆2yi =∆yi+1 –∆yi
Sai phân cấp k: ∆kyi =∆k-1yi+1 –∆k-1yi
Để tính sai phân hữu hạn bằng tay người ta thường dùng bảng như sau:
Trang 101,8771,9722,074
0,0950,102
0,007
1.1.3.3 Công thức nội suy Newton
Với các sai phân định nghĩa như trên ta có công thức nội suy Newton hay còn gọi là công thức Newton
Với phép biến đổi x-x0 = ht như trên ta có
!
n n
1.2 XẤP XỈ BÌNH PHƯƠNG TỐI THIỂU
Trên đây chúng ta đã xét bài toán xấp xỉ hàm với đòi hỏi hàm gần đúng phải có giá trị trùng với giá trị đã biết tại các mốc nội suy Khi số mốc nội suy lớn thì số tham số cần tìm để xác định hàm g(x) càng nhiều Nếu nội suy bằng đa thức thì bậc đa thức sẽ lớn khi có nhiều mốc nội suy, kết quả không ổn định Để khắc phục nhược điểm trên người ta chấp nhận giá trị gần đúng ở các mốc đo được và chọn hàm dạng đơn giản có sai số bình phương nhỏ nhất Đó chính là phương pháp bình phương tối thiểu
1.2.1 Xấp xỉ thực nghiệm.
Trang 11Bài toán: Giả sử có thể đo dược giá trị của hàm y=f(x) tại n điểm thuộc đoạn [a,b]:
1 ( ( ) )
Về mặt hình học, đồ thị hàm y=ϕ(x) không đòi hỏi đi qua các điểm (xi,
f(xi)) như trong phép nội suy
Bài toán tìm cực tiểu hàm trong trường hợp tổng quát là rất khó Trong trường hợp hàm Φ( c1, ck, x) có dạng:
trong đó ϕk(x) là các hàm độc lập tuyến tính và có dạng đơn giản thì cực
trị toàn cục của hàm Σ có thể xác định được nhờ giải hệ phương trình đại số tuyến tính của điều kiện các đạo hàm cấp 1 bằng không
1.2.2 Xấp xỉ bằng đa thức
Với k ≤ n – 2 ta tìm xấp xỉ tốt nhất của y(x) dưới dạng đa thức bậc k:
j 0
k k
n = =
Trang 12Để tìm cực tiểu của (2.4) ta giải hệ phương trình đại số tuyến tính :
0; 0,
p
p k a
Gọi L2(a,b) là tập các hàm bình phương khả tích trên đoạn [a,b] và
y = f(x) ∈L2(a,b) Ta muốn xấp xỉ y(x) bởi hàm ϕ(x) có dạng:
Trang 13trong đó c1, ck là các hệ số được xác định sao cho sai số bình phương trung bình:
2
1 ( ( ) ( )) ( )
1.3 Tính gần đúng đạo hàm bằng đa thức nội suy
- Giả sử người ta phải tính xấp xỉ đạo hàm của hàm số f(x) trên đoạn (a,b) Trước hết người ta thay hàm f(x) bằng đa thức nội suy p(x), sau đó lấy đạo hàm p'(x) và coi là xấp xỉ của đạo hàm f'(x)
Ta có thể dùng công thức nội suy Lagrange để tính đạo hàm:
Vì điểm c phụ thuộc x nên ước lượng (3.3) chỉ đánh giá được khi x là các mốc nội suy x=xi;
Thông thường người ta xét đa thức nội suy với mốc cách đều với h=xi+1 – xi
Đạo hàm tại các điểm biên
Khi x là điểm biên x0 hoặc xn ta dùng công thức nội suy bậc nhất với hai mốc nội suy để tính gần đúng đạo hàm:
Trang 14y’(x0) = (y1-y0)/h
y’(xn) = (yn-yn-1)/h
Vì yn = yn-1 + y’(xn) h + 0(h2) nên sai số của ước lượng O(h2)
Đạo hàm tại các điểm trong
Khi x=xi là các điểm trong (i=1,2, ,n-1) ta dùng công thức nội suy bậc 2 có xi là điểm giữa
với x = xi-1 +ht
Đạo hàm theo x ta được:
thay x=xi hay t=1 vào công thức trên ta được:
hay
với ∀i=1,2,…,n-1
Để tính ước lượng sai số ta có các công thức:
Trang 15hay công thức có sai số là O(h2).
Đạo hàm cấp 2
Để tính đạo hàm cấp 2 ta dùng công thức nội suy cấp 2 để tính y’’(xi) Đạo hàm hai lần liên tiếp biểu thức ta có:
ta có các công thức sau:
Vậy sai số có bậc O(h2)
Chúng ta đã có công thức tính đạo hàm cấp 1 và cấp 2 tại các mốc nội suy
Để tính đạo hàm tại các điểm không là mốc ta lại áp dụng phương pháp nội suy Lagrange
Sai số khi tính đạo hàm ngoài sai số của công thức còn phải tính đến sai số làm tròn, và các bước nội suy h phải đủ nhỏ
Ví dụ: Hàm y=f(x) được cho tại các mốc sẽ có đạo hàm cấp 1 và cấp 2 tại các mốc này được tính và cho trong bảng sau:
Trang 161.4 HÀM CƠ SỞ BÁN KÍNH VÀ CÁC TÍNH CHẤT
1.4.1 Hàm hàm cơ sở bán kính (Radial Basis Function networks)
Hàm phân lớp tuyến tính đơn thuần (Perceptron) không thể phân lớp trong một số trường hợp Ví dụ như hàm XOR: {(0,0),{1,1)} Є ω1 {(1,0),(0,1)} Є ω2
Khả năng nhớ các mẫu học: nếu đầu vào của hàm phân lớp “gần giống” với một mẫu học đã biết trước đó thì kết quả phân lớp cũng phải “gần giống” kết quả phân lớp đã được học
Ý tưởng phân lớp trên không gian có nhiều chiều hơn: có nhiều ví dụ cho thấy, khi được ánh xạ lên không gian nhiều chiều hơn lúc đầu, bài toán phân lớp trở nên dễ dàng hơn
1.4.2 Tính chất hàm bán kính (radial function): Hàm bán kính là hàm chỉ phụ thuộc vào khoảng cách từ đối số x đến một điểm c (gọi là tâm) cho trước.
A – Véc tơ chứa các tâm RBF
W – Hàm cơ sở hoặc hàm kích hoạt của hàm
r – Bán kính
σ, β – Các thông số tỷ lệ
|| || - Chuẩn euclidean, tức là nếu x chứa n phần tử thì:
2 1
n i i
=
Trang 17vì vậy, đây là hàm tuyến tính phân lớp dữ liệu trên không gian
3.Hàm RBF còn có thể dùng để xấp xỉ hàm số nếu ta trực tiếp dùng đầu ra
Hàm RBF: Với tập mẫu học D= {(xi, yi)}N với i = 1 N
ta phải tìm các tham số của hàm bao gồm: trọng số W = ( ω1 ……., ωD)T
tâm của các hàm bán kính C= C1 ….CD, tham số của các hàm bán kính B= {β1 … βD}
Hàm sai số (error function): Để xác định các tham số của hàm, ta phải đưa
ra một tiêu chí đánh giá các tham số này khi áp dụng hàm RBF trên tập mẫu học Một tiêu chí đánh giá hay dùng là hàm tổng bình phương sai số
Trang 18Hàm tổng bình phương sai số hay được sử dụng vì thuận tiện trong tính toán đạo hàm Gần đây, người ta nhận ra một số nhược điểm của loại hàm sai số này và có xu hướng chuyển sang các hàm sai số khác Ví dụ, hàm tổng sai số tuyệt đối
hoặc hàm sai số tuyệt đối lớn nhất
Trường hợp B, C cố định: giải bài toán tối ưu
Nếu ta đặt thì bài toán trên tương đương với
Đây là bài toán tối thiểu bình phương sai số kinh điển Trường hợp có hạng đầy đủ (full rank), giá trị tối ưu của là
trong đó gọi là ma trận giả nghịch đảo.Trong thực hành, người ta không dùng ma trận giả nghịch đảo mà sử dụng biến đổi Gauss để giải (giống như giải hệ phương trình tuyến tính) Một đặc điểm nữa của theo công thức trên là
nghĩa là là vectơ có độ dài nhỏ nhất trong các véctơ tối thiểu hóa Đặc điểm này có ý nghĩa lớn vì nó làm tăng tính ổn định của hệ thống (không làm f(x) quá lớn)
Trang 19Trường hợp C= {x1……xN}: Nghĩa là tâm của các hàm bán kính chính là các mẫu học Khi đó, ma trận là ma trận vuông, ta có giá trị tối ưu của trọng số
Tất nhiên, trong thực hành, người ta không tính nghịch đảo của mà dùng biến đổi Gauss để giải phương trình
Trường hợp B, C cũng là tham số cần tìm: Ta cần giải bài toán tối ưu
Do hàm sai số này không còn là hàm lồi, cách giải quyết thường dùng là sử dụng phương pháp xuống đồi theo véctơ đạo hàm Khi đó, người ta lấy đạo hàm của e2(W, B, C) theo các biến W, B, C rồi chỉnh lại các tham số này Một cách tối ưu hóa khác là:
1.Cố định B, C, tính theo phương pháp trên
2.Cố định , chỉnh sửa B,C theo phương pháp đạo hàm
3.Lặp bước 1,2
Trong thực hành, người ta thấy việc tìm B,C rất mất thời gian Do đó, các tâm
C thường được chọn là chính các mẫu học Còn đặt giá trị
sau đó chọn thử một vài giá trị β đến khi đạt được kết quả như ý
Ví dụ 1: Hàm XOR
Giả sử ta chọn , các tâm chính là các mẫu học, khi đó ma trận là
Thế W mới tìm được vào hàm f(x):
ta có thể tính được f(x) như trong hình sau
Trang 21Xấp xỉ hàm XOR bằng hàm RBF với 3 tâm
Như vậy, nếu số tâm ít hơn số mẫu học, hàm có thể không học được toàn bộ tập mẫu học Tuy nhiên, ở những vị trí mẫu học gần tâm, kết quả phân lớp vẫn chính xác
Xác định số tâm của hàm: Ta thấy ở ví dụ trên, số tâm của hàm ảnh hưởng
đến chất lượng xấp xỉ hàm số Để xác định số tâm người ta thường làm như sau:1.Bắt đầu với số tâm bằng D= 0 hay f(x)= 0 ∀x
2.Tính sai số và chọn i max = arg max e(xi)
3.Thêm một tâm
4.Tính trọng số của hàm mới và giá trị hàm sai số
5.Dừng nếu cho trước, ngược lại, quay về bước 2
Như vậy mỗi lần thêm 1 tâm tức là ta thêm 1 cột mới vào ma trận
Dùng biến đổi QR (Gram-Schmidt QR decomposition) để trực giao hóa cột mới thêm vào
Lợi dụng tính trực giao của các cột để tính sai số e (xi)
Trang 22Kỹ thuật sau chậm hơn kỹ thuật trước, nhưng nếu tập dữ liệu bị giới hạn thì kỹ thuật sau sẽ cho kết quả tốt hơn.
Nếu ma trận W không vuông nhưng có hạng đầy đủ ta có thể tính W-1 theo công thức sau:
Trang 23Hàm Gaussian thể hiện hình ảnh mỗi đầu ra của hàm cơ sở sẽ xa hơn hoặc gần hơn so với các điểm dữ liệu x = Ai – tâm hàm cơ sở Mặt khác dạng Gauss của RBF cung cấp các ghép nối qua logic mờ và mỗi vị trí tâm hàm cơ sở
có ý nghĩa vật lý nhất định Xa hơn nữa mỗi tâm có thể được xem như một dạng hành vi hoặc phản ứng không chỉ của RBF mà còn là của hệ thống mà RBF thực hiện nhận dạng Ngoài ra có thể có các lựa chọn khác đối với hàm cơ sở như hàm spline làm việc rất hiệu quả trong bài toán nhận dạng mô hình
vì vậy, đây là hàm tuyến tính phân lớp dữ liệu trên không gian RM
• Hàm RBF còn có thể dùng để xấp xỉ hàm số nếu ta trực tiếp dùng đầu ra
( )
y x
Khi sử dụng hàm RBF trong bài toán nhận dạng cần chú ý một vài điểm sau:
- Dạng W nào cần chọn? (Thường chọn Hàm Gaussian)
- Bao nhiêu tâm sẽ cho kết quả tốt nhất và tâm cần đặt ở đâu?
- Bao nhiêu dữ liệu cần thiết đủ để luyện hàm?
Nhưng chưa có thuật nào chọn trọng số ban đầu mà thường chỉ là cho trước ngẫu nhiên Muốn tìm mô hình tốt nhất cho đối tượng điều khiển thì cần thiết phải tìm số lượng tâm tối ưu Có quá nhiều tâm hoặc quá ít tâm sẽ cho kết quả không tốt Nhiều tâm quá sẽ không đủ dữ liệu luyện hàm, nhưng ít tâm quá sẽ cho mô hình sai lệch Thuật bình phương tối thiểu trong trường hợp có nhiều tâm sẽ tạo ra trọng số liên kết wi lớn
Trang 24CHƯƠNG 2: PHƯƠNG TRÌNH KHUẾCH TÁN TRUYỀN TẢI
2.1 Giới thiệu bài toán
Hiện nay có rất nhiều thuật toán với các sơ đồ sai phân khác nhau để giải bài toán truyền tải khuếch tán vật chất một, hai và ba chiều
bao giờ bậc xấp xỉ cao cũng tốt hơn bậc xấp xỉ thấp Điều đó cụ thể do Δt và h
= max{Δx, Δy, Δz} không thể lấy quá nhỏ, hoặc thuật toán có bậc xấp xỉ cao
phức tạp hơn nên sai số tính toán, làm tròn của máy tính lớn hơn, hoặc do điều
kiện ràng buộc của Δt và h, hoặc do điều kiện địa hình quá phức tạp
Thực tiễn tính toán trên máy cho thấy: Đối với nhiều bài toán thực tiễn hoặc các bài toán có nghiệm giải tích, khi lấy φ = 0.6, nghĩa là bậc xấp xỉ O(τ
+ h) hoặc O(τ + h2) thì kết quả tính toán ổn định nhanh hơn và phù hợp
với các số liệu đo đạc thực tiễn hơn, hoặc gần với giá trị nghiệm giải tích hơn là khi lấy φ = 0.5, nghĩa là bậc xấp xỉ O(τ2+ h) hoặc O(τ2+ h2).
2.2 Mô hình toán học
Mô hình toán học mô tả quá trình truyền tải và khuếch tán vật chất
Trang 25Hình trụ G = {(x,y,z): (x,y) ∈ Ω⊂ R2, z0(x,y) < z < δ(x,y)}, trong đó
C - nồng độ vật chất, (u,v,w) - véc tơ vận tốc dòng chảy, v>= 0 - hệ số khuếch tán ngang, µ - hệ số khuếch tán đứng, δ ≥0 - hệ số phân huỷ, f
Trang 26Phương trình (1) thuộc loại parabolic (xem [6]) với các điều kiện đầu và điều kiện biên là C(x,y,z,0) = C0(x,y,z) khi t = 0 C(x,y,z,t)= (x,y,z,t) trên ∑
khi un <0 c 0
x
∂ =
∂ trên ∑ khi un >=0.(cũng có thể cho C = ϕ hoặc
phương trình truyền tải trên ∑ khi khi un >=0) c C
∂ +Ω =