1. Trang chủ
  2. » Cao đẳng - Đại học

chương 3 đường cong khớp

58 1,4K 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Chương 3 Đường Cong Khớp
Tác giả Nguyễn Đức Nghĩa, Vũ Văn Thiệu, Trịnh Anh Phỳc
Người hướng dẫn Trịnh Anh Phỳc, Bộ môn Khoa Học Máy Tính, Viện CNTT & TT, Trường Đại Học Bách Khoa Hà Nội
Trường học Trường Đại Học Bách Khoa Hà Nội
Chuyên ngành Khoa Học Máy Tính
Thể loại Chương
Năm xuất bản 2012
Thành phố Hà Nội
Định dạng
Số trang 58
Dung lượng 677,61 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

1 Đặt vấn đề2 Nội suy Nội suy Lagrange Nội suy spline 3 Hồi qui Hồi qui tuyến tính Đương cong khớp bậc cao Đường cong khớp tổng quát... Hồi quy Regression dùng tiêu chí bình phương bé nh

Trang 1

Nguyễn Đức Nghĩa, Vũ Văn Thiệu, Trịnh Anh Phúc 1

1 Bộ môn Khoa Học Máy Tính, Viện CNTT & TT, Trường Đại Học Bách Khoa Hà Nội.

Ngày 13 tháng 12 năm 2012

Trang 2

1 Đặt vấn đề

2 Nội suy

Nội suy Lagrange

Nội suy spline

3 Hồi qui

Hồi qui tuyến tính

Đương cong khớp bậc cao

Đường cong khớp tổng quát

Trang 3

Vấn đề đặt ra là :

Giả sử cần tính xấp xỉ hàm f (x ) không biết rõ công thức, tuy nhiên bằngthực nghiệm ta xác định được giá trị f (x ) tại n + 1 điểm rời rạc

fi = f (xi) i = 0, 1, · · · , NCho bộ dữ liệu {(xi, fi), i =0, N}, cần tìm cách xấp xỉ hàm f (x ) bởi mộthàm (có thể được tính theo công thức giải tích) p(x ) sao cho ’khoảngcách’ giữa chúng trên bộ dữ liệu nhỏ nhất có thể

Trang 4

Hồi quy (Regression) dùng tiêu chí bình phương bé nhất (least

squares) : cho trước dạng f (x ) có tham số, ta phải điều chỉnh cáctham số này bằng cách cực tiểu nó theo tiêu chí nào đó

Trang 6

Nội suy

Định nghĩa : Ta nói hàm p(x ) là hàm nội suy bộ dữ liệu

{(xi, fi), i = 0, N} nếu thực hiện các điều kiện sau

pi = fi i = 0, 1, · · · , N

hệ N + 1 đẳng thức gọi là điều kiện nội suy Sở dĩ hàm đa thức đượcchọn vì việc tính giá trị, đạo hàm, vi phân dễ dàng (tính chất giải tích củahàm rõ ràng)

Đa thức nội suy bộ dữ liệu được gọi là đa thức nội suy (interpolatingpolynominal)

Định nghĩa : Ta gọi đa thức bậc không quá K là hàm

pK(x ) = a0+ a1x + · · · + aKxKtrong đó a0, a1, · · · , aK là các hằng số

Trang 7

Nội suy tuyến tính

Ta có hai điểm dữ liệu (x0, f0) và (x1, f1) cần nội suy bởi đa thức

p1(x0) ≡ a0+ a1x0= f0

p1(x1) ≡ a0+ a1x1= f1Giải ra, ta có

Khi x06= x1 xảy ra hai trường hợp

Trang 8

Nội suy tuyến tính (tiếp)

x

f

(4,3)

(9,6)p1(x ) = 0.6 + 0.6x

Trang 9

Công thức nội suy Lagrange

Cần xây dựng đường cong đi qua 3,4 hay nhiều điểm (xem hình)

Trang 10

Công thức nội suy Lagrange (tiếp)

Xét đa thức

pM(x ) = a0+ a1x + a2x2+ · · · + aMxMVậy đa thức pM(x ) nội suy bộ dữ liệu {(xi, fi), i = 0, N} nếu các điều kiệnnội suy :

pM(x0) ≡ a0+ a1x0+ a2x02+ · · · + aMx0M = f0

pM(x1) ≡ a0+ a1x1+ a2x12+ · · · + aMx1M = f1

· · ·pM(xN) ≡ aN+ a1xN+ a2xN2 + · · · + aMxNM = fNĐây là một hệ phương trình tuyến tính nên ta có thể biểu diễn bằng côngthức dạng ma trận

Trang 11

Công thức nội suy Lagrange (tiếp)

Như vậy dạng ma trận của điều kiện nội suy

N=M : hệ phương trình có nghiệm duy nhất

M<N : có thể chọn bộ dữ liệu để nó vô nghiệm

M>N : nếu hệ có nghiệm thì nó có vô số nghiệm

Trang 12

Công thức nội suy Lagrange (tiếp)

Khi N = M ma trận hệ số của hệ phương trình trên là ma trận

Vandermonde (Không phải Voldemort)

suy ra hệ có nghiệm khi x0, x1, · · · , xN là phân biệt từng đôi

Trang 13

Công thức nội suy Lagrange (tiếp)

Định lý (Tính duy nhất của đa thức nội suy) : Nếu các nút dữ liệu

x0, x1, · · · , xN là khác nhau từng đôi thì tồn tại duy nhất đa thức nội suy

pN(x ) bậc không quá N nội suy bộ dữ liệu {(xi, fi), i = 0, N}

Bậc của đa thức nội suy có thể nhỏ hơn N

Ví dụ, khi 3 điểm dữ liệu (x0, f0), (x1, f1), (x3, f3) thằng hàng thì phươngtrình nội suy trở thành bậc không quá hai do nó là đường thẳng

Trang 14

Ví dụ 1 :

Xác định các hệ số của đa thức nội suy p2(x ) = a0+ a1x + a2x2 nội suy

bộ dữ liệu {(-1,0),(0,1),(1,3)}, ta có điều kiện nội suy

Trang 15

Công thức nội suy Lagrange (tiếp)

Việc dùng giải trực tiếp hệ phương trình điều kiện nội suy dùng phép khử

thừa của hệ số x có thể rất cao nên độ sai số lại càng lớn do hiệu ứng việclàm tròn số, thậm chí còn tràn số (nhớ lại là số dấu phẩy động IEEE754/85 độ chính xác kép chỉ là ≈ ±1038)

⇒ ta có thể dùng công thức nội suy Lagrange để tính hằng số của đathức nội suy mà không cần giải hệ phương trình tuyến tính trên

Trang 16

Công thức nội suy Lagrange (tiếp)

Xét bộ dữ liệu {(xi, fi), i = 0, N} dạng Lagrange của đa thức nội suy đốivới bộ dữ liệu là như sau :

pN(x ) = f0V0(x ) + f1V1(x ) + · · · + fNVN(x )trong đó Vi(x ) : i = 0, 1, · · · , N là các đa thức bậc N thỏa mãn điều kiện :

Vi(xj) =

(

1, i = j

0, i 6= j

Họ các đa thức Vi(x ) : i = 0, 1, · · · , N được gọi là họ các đa thức cơ sở

Dễ dàng kiểm tra được rằng :

pN(xi) = fi i = 0, 1, · · · , N

Trang 17

Công thức nội suy Lagrange (tiếp)

Một trong lớp đa thức cơ sở có thể xây dựng theo công thức như sau

Vi(x ) =

Q

i 6=j(x − xj)Q

i 6=j(xi − xj)

Trang 18

Công thức nội suy Lagrange (tiếp)

Vậy công thức nội suy Lagrange

Trang 20

Cài đặt Vi(x ) bẳng Matlab (tiếp)

Hai vectơ x,y chứa hoàng độ và tung độ của bộ dữ liệu

u là vec tơ chứa các hoàng độ của các điểm cần tính theo công thứcnội suy Lagrange

v là vectơ chứa giá trị hàm nội suy tại các điểm cho trong u

Trang 23

Sai số nội suy

Định nghĩa : Sai số của đa thức nội suy g (x ) được xác định bởi công thức :

e(x ) = f (x ) − g (x )

Độ lớn của e(x) phụ thuộc vào

Hoàng độ của các điểm dữ liệu

Kích thước của miền nội suy D = xn− x0

Bậc của đa thức nội suy

Đối với đa thức nội suy Lagrange, sai số được xác định bới công thức :

e(x ) = f (x ) − g (x ) = L(x )f(N+1)(ξ)

L(x ) = (x −x0 )(x −x 1 )···(x −x n )

(N+1)!

Trang 24

Sai số nội suy (tiếp)

tiếp tục công thức :

e(x ) = f (x ) − g (x ) = L(x )f(N+1)(ξ)

ξ phụ thuộc x nhưng thỏa mãn điều kiện x0 < ξ < xN Cũng theo công

tiêu, nghĩa là sai số bằng không Do L(x ) = (x −x0 )(x −x 1 )···(x −x n )

các kết luận sau

Với một lưới cách đều, biên độ dao động của L(x ) nhỏ nhất tại tâm

và tăng dần về biên của miền nội suy

Kích thước nội suy tăng lên, độ lớn của dao động tăng nhanh chóng

Trang 26

Đặt vấn đề

Trong trường hợp này ta xét phép nội suy bởi một tập các các đa thứcbậc thấp thay vì một đa thức bậc cao duy nhất

Nội suy bởi spline tuyến tính

Nội suy bởi spline bậc ba

Nhớ lại công thức đánh giá sai số nội suy Lagrange

f (x ) − pN(x ) = [wN+1(x )/(N + 1)!]f(N+1)(ξx)trong đó wN+1(x ) = (x − x0)(x − x1) · · · (x − xN) và ξx là một giá trịtrong khoảng (x0, xN).

Trang 27

approximation) : Như vậy đoạn [a, b] sẽ được chia thành nhiều đoạn nhỏkhông đè nhau và các đa thức khác nhau sẽ được xấp xỉ trên từngđoạn con.

Trang 29

Spline tuyến tính từng khúc (tiếp)

f N −fN−1

x N −x N−1(x − xN) + fN, nếux ∈ [xN−1, xN]

Trang 30

Spline tuyến tính từng khúc (tiếp)

Sử dụng công thức sai số cho đa thức nội suy với x ∈ [a, b] cho từng đoạn[xi −1, xi] ta được

Trang 36

pi(x ) = ai ,0+ ai ,1x + ai ,2x2+ ai ,3x3, nếux ∈ [xi −1, xi]

pN(x ) = aN,0+ aN,1x + aN,2x2+ aN,3x3, nếux ∈ [xN−1, xN]S3,N(x ) là hàm liên tục có đạo hàm cấp một và hai liên tục trên đoạn[x0, xN] (kể cả tại các nút)

Trang 37

Điều kiện về tính trơn tại điểm x i thì

pi0(x i ) = p0i +1(x i ); p i ”(x i ) = p i +1 ”(x i ); i = 1, 2, · · · , N − 1 Điều kiện nội suy dữ liệu đảm bảo

p i (x i ) = p i +1 (x i ) = f i ; i = 0, 1, 2, · · · , N − 1

Trang 41

» yy = polyval(coef,xx);

» plot(x,y,’o’,xx,yy,’r’)

Trang 42

Như vậy khi ta nôi suy bằng spline bậc 3 thì tốt hơn nội suy đa thức vớihàm sin(10x)

Trang 46

k=1(f (xk) − yk)2

!1/2

Trang 47

Hồi qui tuyến tính

Hồi qui tuyến tính là việc tìm một đường thẳng khớp với các điểm dữ liệutheo nghĩa bình phương tối thiểu

Cho tập N cặp điểm dữ liệu {(xi, fi) : i = 1, · · · , N}

Tìm hệ số m và hằng số tự do b của đường thẳng

y (x ) = mx + bsao cho đường thẳng này khớp với dữ liệu theo tiêu chí bình phươngtối thiểu

L(m, b) =

NX

i =1(fi − (mxi + b))2

Trang 48

Hồi qui tuyến tính (tiếp)

Nghĩa là ta cần tìm m và b để đạt cực tiểu hàm

L(m, b) =

NX

i =1(fi − (mxi + b))2

để tìm cực tiểu này, ta cần giải hệ phương trình tìm điểm dừng

∂L

NX

i =12(fi − (mxi+ b))(−xi) = 0

∂L

NX

i =12(fi − (mxi+ b))(−1) = 0

Trang 49

Hồi qui tuyến tính (tiếp)

" NX

i =1

xifi

" NX

i =11

#

b =

NX

! mb

!

=

PN

i =1xifiPN

i =1fi

!

Giải hệ phương trình ta có được hệ số m và b

Trang 50

từ đó tìm được b = 107/35 và m = −6/35, đường thẳng cần tìm là

y = (−6/35)x + 107/35

Trang 51

Đường cong khớp bậc cao

Xây dựng đường cong khớp

pM(x ) = a0+ a1x + a2x2+ · · · + aMxMkhớp với bộ dữ liệu {(xi, fi)i = 1, · · · , N} theo tiêu chí bình phương tốithiểu

σM ≡ (pM(x1) − f1)2+ (pM(x2) − f2)2+ · · · + (pM(xN) − fN)2Giải hệ phương trình tìm điểm dừng

Trang 52

Đường cong khớp bậc cao (tiếp)

Viết dưới dạng ma trận hệ phương trình chuẩn

i =1fixi

.PN

Trang 53

Ví dụ 7 :

Xác định các tham số a, b, c ccủa đường cong

y = ax2+ bx + ckhớp với bộ dữ liệu sau

Trang 56

Đường cong khớp tổng quát

Giả sử ta muốn khớp N điểm đa cho {(xi, fi) : i = 1, · · · , N} bởi họ gồm

m hàm độc lập tuyến tính ϕj(x ), j = 1, 2, · · · , m tức là hàm f (x ) cần tìm

có dạng

f (x ) =

mX

Trang 57

Đường cong khớp tổng quát (tiếp)

Ta cần xác định các số c1, c2, · · · , cm để cực tiểu hóa sai số căn bậc haicủa tổng các bình phương sai số :

E (c1, c2, · · · , cm) =

nX

k=1(f (xk) − fk)2 =

nX

Để tìm các hệ số c1, c2, · · · , cm, ta cần giải hệ phương trình

∂E

∂cj = 0, j = 1, 2, · · · , m

Ngày đăng: 22/05/2014, 12:27

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w