26
บทที่4 การประมาณค่าในช่วง การใช้งานข้อมูลสำรวจระยะไกลมีความนิยมอย่างมากสำหรับงานทางด้านภูมิสารสนเทศในปัจจุบัน ก่อนการ นำข้อมูลจากภาพถ่ายดาวเทียมไปใช้ประโยชน์มีความจำเป็นต้องปรับแก้เชิงเรขาคณิต เพื่อลดข้อบกพร่องทางเครื่อง รับสัญญาณและรูปลักษณะของวัตถุ ขั้นตอนหนึ่งที่สำคัญคือการประมาณค่าของจุดภาพ หรือค่าความสว่างของจุด ภาพใหม่ วิธีการที่ใช้ได้แก่ การประมาณค่าจากตำแหน่งใกล้สุด (Nearest neighbor interpolation) การประมาณ ค่าแบบเส้นคู้ (Bi-linear interpolation) และการประมาณค่าแบบการประสานเชิงลูกบาศก์ (Cubic convolution interpolation) หลังการปรับแก้ค่าความสว่างจะทำให้ข้อมูลเกิดความเรียบต่อเนื่อง แต่อาจมีรายละเอียดลดลงจาก ข้อมูลภาพเริ่มต้น Original Nearest neighbor interpolation Bi-linear interpolation Cubic convolution interpolation รูปที่ 4.1: พื้นผิวที่ผ่านกระบวนการคำนวณค่าความสว่างของจุดภาพใหม่ 1

การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

  • Upload
    others

  • View
    10

  • Download
    0

Embed Size (px)

Citation preview

Page 1: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

บทท 4

การประมาณคาในชวง

การใชงานขอมลสำรวจระยะไกลมความนยมอยางมากสำหรบงานทางดานภมสารสนเทศในปจจบน กอนการนำขอมลจากภาพถายดาวเทยมไปใชประโยชนมความจำเปนตองปรบแกเชงเรขาคณต เพอลดขอบกพรองทางเครองรบสญญาณและรปลกษณะของวตถ ขนตอนหนงทสำคญคอการประมาณคาของจดภาพ หรอคาความสวางของจดภาพใหม วธการทใชไดแก การประมาณคาจากตำแหนงใกลสด (Nearest neighbor interpolation) การประมาณคาแบบเสนค (Bi-linear interpolation) และการประมาณคาแบบการประสานเชงลกบาศก (Cubic convolutioninterpolation) หลงการปรบแกคาความสวางจะทำใหขอมลเกดความเรยบตอเนอง แตอาจมรายละเอยดลดลงจากขอมลภาพเรมตน

Original Nearest neighbor interpolation

Bi-linear interpolation Cubic convolution interpolation

รปท 4.1: พนผวทผานกระบวนการคำนวณคาความสวางของจดภาพใหม

1

Page 2: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

2 บทท 4. การประมาณคาในชวง

การปรบคาของจดภาพขางตนเปนตวอยางหนงของการประยกตใชการประมาณคาในชวงซงเราจะกลาวถงแนวคดดงกลาวในบทน การประมาณคาในชวง (interpolation) เปนกระบวนการสรางพหนามทมกราฟผานขอมลทกำหนดสมมตชดขอมลดงตาราง 4.1 ทมขอมลจำนวน n+ 1 คาโดยทx0 < x1 < x2 < : : : < xnx x0 x1 � � � xny y0 y1 � � � yn

ตารางท 4.1:

เราจะหาพหนามทมกราฟผานจด (xi; yi); i = 0; 1; : : : ; n กลาวคอเราจะหาพหนาม p(x) โดยทp(xi) = yi; i = 0; 1; : : : ; n (4.0.1)

พหนามทสรางขนจะผานขอมลทกตวทกำหนด ซงแตกตางจากการประมาณขอมลดวยการประมาณคากำลงสองนอยสด (curve fitting) ภาพ 4.2 เปรยบเทยบแนวคดของการประมาณคาในชวงและการประมาณคากำลงสองนอยสด

รปท 4.2: Interpolation and curve fitting data

Page 3: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

4.1. การประมาณคาในชวงดวยฟงกชนพหนาม 3

4.1 การประมาณคาในชวงดวยฟงกชนพหนาม

ในหวขอนเราจะพจารณาพหนามทอยในรปp(x) = anxn + � � �+ a2x2 + a1x+ a0 (4.1.2)

ถา n = 1 เราจะไดการประมาณคาในชวงแบบเชงเสน อกนยหนงคอเราเชอมจ (x0; y0) และ (x1; y1) ดวยเสนตรง p(x) = y0 +� y1 � y0x1 � x0� (x � x0) = x� x1x0 � x1 y0 + x� x0x1 � x0 y1 (4.1.3)

สตรแรกใน (4.1.3) เราเรยกวา การประมาณคาในชวงดวยผลตางของนวตน และสตรทสองเราเรยกวาการมาณคาในชวงดวยลากรางจ เนองจากพหนามดกร n กำหนดโดยสมประสทธ a0; : : : ; an จำนวน n+ 1 ตว จากเงอนไขp(xi) = yi; i = 0; 1; : : : ; n จะไดระบบสมการดงนanxn0 + � � �+ a2x20 + a1x0 + a0 = y0anxn1 + � � �+ a2x21 + a1x1 + a0 = y1

... = ... (4.1.4)anxnn + � � �+ a2x2n + a1xn + a0 = ynระบบสมการ (4.1.5) ประกอบดวย n + 1 สมการและ n + 1 ตวแปร ให L = �xji� ; i; j = 0; 1; : : : ; n,� = [a0; : : : an℄T และ � = [y0; : : : ; yn℄T ดงนนเราเขยน (4.1.5) ไดดงนL� = � (4.1.5)

เราเรยกเมทรกซ L วา Vandermonde matrixระบบสมการ (4.1.5) มผลเฉลยเพยงหนงเดยวกตอเมอเมทรกซสมประสทธ L มอนเวอรส นนคอดเทอรมแนนทของ L ไมเปนศนย เราเรยกดเทอรมแนนทของเมทรกซสมประสทธวา Vandermonde determinant ซงคำนวณไดจาก ���������� xn0 xn�10 . . . x0 1xn1 xn�11 . . . x1 1

...... . . .

......xnn xn�1n . . . xn 1

���������� = nYi=0 nYj=i+1(xi � xj)ถา xi 6= xj เมอ i 6= j (ทกจดแตกตางกนทงหมด) แลวผลเฉลยของ (4.1.5) มเพยงหนงเดยว

ทฤษฎบท 4.1.1. กำหนดจำนวน x0; x1; : : : ; xn ท แตกตาง กนจำนวน n + 1 คาและจำนวนจรง ใดๆy0; y1; : : : ; yn จำนวน n + 1 คา จะมพหนาม p ดกร � n เพยงหนงเดยวทประมาณคาในชวง (interpo-late) ของชดขอมลในตาราง 4.1

Page 4: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

4 บทท 4. การประมาณคาในชวง

ตวอยาง 4.1.1. จงหาพหนามทประมาณคาในชวงของชดขอมลในตาราง 4.2x 4.5 6.1y 7.1 2.3

ตารางท 4.2: ชดขอมล

วธทำ พหนามทตองการอยในรป p(x) = a1x+ a0จากชดขอมลในตาราง 4.2 เราจะได 4:5a1 + a0 = 7:16:1a1 + a0 = 2:3ผลเฉลยของระบบสมการคอ a0 = 20:6; a1 = �3:0 ดงนน p(x) = 20:6� 3:0xตวอยาง 4.1.2. จงหาพหนามทประมาณคาในชวงของชดขอมลในตาราง 4.3x 1 2 3 4 5 6y 3.31 18.28 57.97 134.44 259.75 445.96

ตารางท 4.3: ชดขอมล

วธทำ พหนามทตองการอยในรปp(x) = a5x5 + a4x4 + a3x3 + a2x2 + a1x+ a0จากชดขอมลในตาราง 4.3 เราจะได a5 + a4 + a3 + a2 + a1 + a0 = 3:3132a5 + 16a4 + 8a3 + 4a2 + 2a1 + a0 = 18:28243a5 + 81a4 + 27a3 + 9a2 + 3a1 + a0 = 57:971024a5 + 256a4 + 64a3 + 16a2 + 4a1 + a0 = 134:443125a5 + 625a4 + 125a3 + 25a2 + 5a1 + a0 = 259:757776a5 + 1296a4 + 216a3 + 36a2 + 6a1 + a0 = 445:96ผลเฉลยของระบบสมการคอ a5 = a4 = 0; a3 = 2:01; a2 = 0:3; a1 = 0; และ a0 = 1ดงนน p(x) = 2:01x3 + 0:3x2 + 1

Page 5: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

4.1. การประมาณคาในชวงดวยฟงกชนพหนาม 5

Matlabในโปรแกรม Matlab เราสามารถสราง Vandermonde matrix ไดดวยคำสง vander>> x = [1 2 3 4 5 6];>> y = [3.31 18.28 57.97 134.44 259.75 445.96];>> V = vander(x)>> a = Vny’

ดงนน พหนามทตองการอยในรป y = a(1)x5+a(2)x4+a(3)x3+a(4)x2+a(5)x+a(6)สำหรบพหนามทมดกรสงๆ การประมาณคาในชวงดวยพหนามโดยใช Vandermone matrix อาจประสบปญหา

เรองการคำนวณคาอนเวอรส ถา Vandermone matrix มขนาดใหญ สดสวนระหวางคาเอกฐาน (singular values)ทมคามากทสดตอคาเอกฐานทมคานอยสด มคามาก นนแสดงวา Vandermone matrix เกอบจะเปนเมทรกซเอกฐาน ทำใหความแมนในการคำนวณผลเฉลยนอย เราเรยกสดสวนระหวางคาเอกฐานทมคามากทสดตอคาเอกฐานทมคานอยสดวา condition number ในโปรแกรม Matlab เราคำนวณคาของ conditon number ไดดวยคำสงcond(V)

เราทราบวาฟงกชน xk; k = 0; 1; : : : ; n เปนฐานของปรภมเวกเตอร Pn ดงนนพหนาม pn(x) ใดๆสามารถเขยนไดในรปของผลบวกเชงเสนของฟงกชน xk; k = 0; 1; : : : ; n ในรป 4.3 แสดงฟงกชนฐานใน P12 สงเกตวาเมอ n มคามากๆเสนโคงเกอบจะซอนทบกน ปรากฎการณเชนนทำใหผลเฉลยของระบบสมการเชงเสนไมนาเชอถอเพราะความคลาดเคลอนจากการปดเศษคอนขางสง

0 0.2 0.4 0.6 0.8 10

0.2

0.4

0.6

0.8

1

x

xk

x3

x12

x

x2

1

รปท 4.3: กราฟของฟงกชนฐานของใน P12เราสามารถประยกตใชความรเรองการประมาณคาในชวงหาคาประมาณของผลเฉลยของสมการไมเชงเสน f(x) =0 สมมตวาเรามขอมล (f(xi); xi) และ g เปนพหนามประมาณคาในชวงของชดขอมลทม f(xi) = yi เปนตวแปร

อสระ ดงนน g(yi) = xi ถา xi เปนขอมลทอยใกลกบผลเฉลย x� ของสมการ f(x) = 0 แลว x� � g(0)เราเรยกกระบวนการสรางพหนามประมาณคาในชวงทม yi เปนตวแปรอสระวา การประมาณคาในชวงผกผน (in-verse interpolation)

Page 6: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

6 บทท 4. การประมาณคาในชวง

Y

y=f(x)

x*

f(x*)=0

X

X

Y

x=g(y)

g(0)=x*

(a) (b)

รปท 4.4: กราฟของฟงกชน y = f(x) (a) และอนเวอรสฟงกชน x = g(y) (b)

ตวอยาง 4.1.3. ใหกราฟของพหนาม y = f(x) ผานชดขอมลในตาราง 4.4 จงหาผลเฉลยของสมการ f(x) = 0x 0.5 1.0 1.5 2.0y -0.4219 -0.0156 0.0156 0.4219

ตารางท 4.4: ชดขอมล

วธทำ เราสามารถสราง Vandermonde matrix และหาคาสมประสทธใน Matlab ดงน>> x = [0.5 1.0 1.5 2.0];>> y = [-0.4219 -0.0156 0.0156 0.4219];>> V = vander(y)>> a = Vnx’จากการคำนวณขางตน เราจะได x = �80:0195y3 + 16:0195y+ 1:2500เพราะฉะนนผลเฉลยทตองการคอ x� = 1:25ตวอยาง 4.1.4. จงใชความรเรองการประมาณคาในชวงผกผนหาผลเฉลยของสมการ osx = 0 ในชวง [1:0; 2:0℄วธทำ ให y = osx เราสรางตารางขอมลดงนx 1.0 1.2 1.4 1.6 1.8 2.0y 0.5403 0.3624 0.1700 -0.0292 -0.2272 -0.4161

ตารางท 4.5: ชดขอมล

จากนนสราง Vandermonde matrix และหาคาสมประสทธดวย Matlab เชนเดยวกบตวอยาง 4.1.3เราจะได x = �0:0990y5 � 0:0014y4 � 0:1637y3 + 0:0002y2 � 1:0001y+ 1:5708เพราะฉะนนผลเฉลยทตองการคอ x� = 1:5708 ซงใกลเคยงกบผลเฉลยจรง �=2 มาก

Page 7: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

4.1. การประมาณคาในชวงดวยฟงกชนพหนาม 7

แบบฝกหด 4.1. 1. จงหาพหนามทประมาณคาในชวงของชดขอมลในตาราง 4.6x 0.2 0.4 0.6y -.95 -.82 -.65

ตารางท 4.6: ชดขอมล

2. ใหกราฟของพหนาม y = f(x) ผานชดขอมลในตาราง 4.7 จงหาผลเฉลยของสมการ f(x) = 0x 1.2 2.1 3.0 3.6y 0.7 8.1 27.7 45.1

ตารางท 4.7: ชดขอมล

3. สำหรบฟงกชนทกำหนดใหในแตละขอ ให x0 = 0; x1 = 0:6 และ x2 = 0:9 จงสรางพหนามทประมาณคาในชวงสำหรบประมาณคาของ f(0:45) และจงหาคาคาคลาดเคลอน

3.1 f(x) = os(x)3.2 f(x) = p1 + x3.3 f(x) = ln(x+ 1)3.4 f(x) = tan(x)

4. จงหาขอบเขตของคาคลาดเคลอนสำหรบการประมาณคาในโจทยขอ 3.

5. จงหาพหนามทประมาณคาในชวงของชดขอมลในตาราง 4.8x 0 1 2y a b ตารางท 4.8: ชดขอมล คาพารามเตอร a; b และ เปนจำนวนจรง

Page 8: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

8 บทท 4. การประมาณคาในชวง

6. จงหาพหนามทประมาณคาในชวงของชดขอมลในตาราง 4.9x �2 �1 0 1 2y a b b aตารางท 4.9: ชดขอมล คาพารามเตอร a; b และ เปนจำนวนจรง

7. จงสรางพหนาม p(x; y) = a1 + a2x + a3y + a4xy ทสอดคลองเงอนไข p(0; 0) = 1; p(0; 1) = 2;p(1; 0) = �1; และ p(1; 1) = 68. เซลลทรงกลมถกเลยงในจานเพาะเชอ ถาสารสอกลาง (cell media) อยในสภาพสมดลและไมถกกวน

สารอาหารจะแพรผานของเหลวไปยงผวของเซลล ถา D แทนคาคงตวของการแพรในนำและ C แทน

a

Concentration far from cell C=C0

C =0 surface

r

cell

รปท 4.5: การแพรของสารอาหารสผวของเซลล

ความเขมขนของสารละลาย จากสมการสมดลมวลในระบบพกดทรงกลม ความเขมขนของสารละลายทเวลาt คำนวณไดจาก CC0 = 1� ar erfc� r � a2pDt� (4.1.6)

เมอ C0 แทนความเขมขนเมอเวลา t = 0 ให D = 10�7cm2s�1 และ a = 10�m คำนวณคาของcomplementary error function ในสมการ (4.1.6) ณ ตำแหนง r = 10; 12; 14; 20; 30; 40; 50 ทเวลาt = 10s จะไดคาความเขมขนดงตาราง 4.10 จงใชขอมลในตาราง 4.10 สรางพหนามกำลงสามโดยแบงการแบงพหนามออกเปนสองชวง r(�m) z erfc(z) C=C0

10 0.0 1.0000 012 0.1 0.8875 0.260414 0.2 0.7773 0.444820 0.5 0.4795 0.760230 1.0 0.1573 0.947640 1.5 0.0339 0.991550 2.0 0.0047 0.9991

ตารางท 4.10: ความเขมขน

Page 9: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

4.2. พหนามลากรางจ 9

4.2 พหนามลากรางจสมการเสนตรงเขยนไดในรป y = P (x) = y0 + (y1 � y0) x� x0x1 � x0 (4.2.1)

สงเกตวา P (x0) = y0 + (y1 � y0)0 = y0 และ P (x1) = y0 + (y1 � y0)1 = y1นนแสดงวาเสนตรง (4.2.1) ผานจด (x0; y0) และ (x1; y1)จาก (4.2.1) เราอาจเขยนใหมดงน y = P1(x) = y0 x� x1x0 � x1 + y1 x� x0x1 � x0 (4.2.2)

ให L1;0(x) = x� x1x0 � x1 และ L1;1(x) = x� x0x1 � x0 (4.2.3)

เพราะฉะนน (4.2.2) เขยนไดในรป P1(x) = 1Xk=0 ykL1;k(x) (4.2.4)

บทนยาม 4.2.1. เราเรยก P1(x) วาพหนามลากรางจ (Lagrange polynomial) และเรยกพหนาม L1;k(x) ในสมการ (4.2.4) วาสมประสทธของลากรางจ (Lagrange coefficient) หรอ ฐานลากรางจ (Lagrange basis)

บทนยาม 4.2.2. ถาเราประมาณ f(x) ดวย P1(x) ภายในชวง [x0; x1℄ เราเรยกขนตอนนวา การประมาณคาในชวง (interpolation) ถา x < x0 หรอ x > x1 เราเรยกขนตอนนวา การประมาณคานอกชวง (extrapolation)

ตวอยาง 4.2.1. จงสรางพหนามลากรางจทผานจด (0:0; 1:0) และ (1:2; 0:3623) พรอมทงคำนวณคาของ P1(1:1)วธทำ จากสตร (4.2.3) แทน x0 = 0:1 และ x1 = 1:2 จะไดL1;0(x) = �x� 1:21:2 และ L1;1(x) = x1:2ดงนนพหนามลากรางจทผานจด (0:0; 1:0) และ (1:2; 0:3623) คอP1(x) = �1:0x� 1:21:2 + 0:3623 x1:2 = �0:8333(x� 1:2) + 0:3019x = 1:0000� 0:5314x (4.2.5)

แทน x = 1:1 ในสมการ (4.2.5) จะได P1(1:1) = 0:4155สมมตวาเราทราบคาของฟงกชน y = f(x) ทจด (x0; y0); : : : ; (xN ; yN) โดยทa � x1 < x2 < : : : < xN � b และ yk = f(xk)

โดยหลกการเดยวกบการสราง P1(x) เราสามารถสรางพหนาม PN (x) ทมดกร � N และผานจด (x0; y0); : : : ;(xN ; yN) ไดดงน PN (x) = NXk=0 ykLN;k(x) (4.2.6)

เมอสมประสทธของลากรางจกำหนดโดยLN;k(x) = QNj=0;j 6=k(x� xj)QNj=0;j 6=k(xk � xj) (4.2.7)

Page 10: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

10 บทท 4. การประมาณคาในชวง

ประพจน 4.2.1. ถาพหนามลากรางจ PN (x) กำหนดโดย (4.2.6) และสมประสทธของลากรางจ LN;k กำหนดโดย (4.2.7) แลว

1. LN;k(xj) = 1 เมอ j = k2. LN;k(xj) = 0 เมอ j 6= k3. พหนาม y = PN (x) ผานจด (xj ; yj)พหนามลากรางจกำลงสองทผานจด (x0; y0); (x1; y1) และ (x2; y2) กำหนดโดยP2(x) = y0 (x� x1)(x� x2)(x0 � x1)(x0 � x2) + y1 (x� x0)(x� x2)(x1 � x0)(x1 � x2) + y2 (x� x0)(x � x1)(x2 � x0)(x2 � x1) (4.2.8)

พหนามลากรางจกำลงสามทผานจด (x0; y0); (x1; y1); (x2; y2) และ (x3; y3) กำหนดโดยP3(x) = y0 (x� x1)(x � x2)(x � x3)(x0 � x1)(x0 � x2)(x0 � x3) + y1 (x� x0)(x� x2)(x� x3)(x1 � x0)(x1 � x2)(x1 � x3)+y2 (x� x0)(x� x1)(x� x3)(x2 � x0)(x2 � x1)(x2 � x3) + y3 (x � x0)(x � x1)(x � x2)(x3 � x0)(x3 � x1)(x3 � x2) (4.2.9)

ตวอยาง 4.2.2. จงคำนวณคาของ ln 9:2 โดยสรางพหนามลากรางจจาก ln 9:0 = 2:1972, ln 9:5 = 2:2513 และln 10:0 = 2:3026วธทำ แทน x0 = 9:0, x1 = 9:5, x2 = 10:0, y0 = 2:1972, y1 = 2:2513 และ y2 = 2:3026 ใน (4.2.8)จะได P2(x) = 2:1972 (x� 9:5)(x� 10:0)(9:0� 9:5)(9:0� 10:0) + 2:2513 (x� 9:0)(x� 10:0)(9:5� 9:0)(9:5� 10:0)+2:3026 (x� 9:0)(x� 9:5)(10:0� 9:0)(10:0� 9:5)= 4:3944(x� 9:5)(x� 10:0)� 9:0052(x� 9:0)(x� 10:0)+4:6052(x� 9:0)(x� 9:5) (4.2.10)

แทน x = 9:2 ใน (4.2.10) จะได ln 9:2 � P2(9:2) = 2:2192ทฤษฎบท 4.2.1. สมมตวา f 2 CN+1[a; b℄ และ x0; x1; : : : ; xN 2 [a; b℄ ถา x 2 [a; b℄ แลวf(x) = PN (x) +EN (x) (4.2.11)

โดยท PN (x) เปนพหนามทใชประมาณคาของ f(x) นนคอf(x) � PN (x) = NXk=0 f(xk)LN;k(x) (4.2.12)

และ EN (x) = 1(N + 1)! h(x� x0)(x� x1) � � � (x� xn)f (N+1)( )i (4.2.13)

สำหรบ = (x) 2 [a; b℄

Page 11: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

4.2. พหนามลากรางจ 11

ทฤษฎบท 4.2.2. กำหนดให f(x) นยามบนชวง [a; b℄ ทม xk = x0 + hk สำหรบ k = 0; 1; : : : ; N และh = b� aN สมมตวา f(x) และอนพนธของ f(x) จนถงอนดบท N + 1 ตอเนองและมขอบเขตบนชวงยอย[x0; x1℄; [x1; x2℄ และ [x2; x3℄ นนคอjf (N+1)(x)j �MN+1; x0 � x � xN (4.2.14)

สำหรบ N = 1; 2; 3 ขอบเขตบนของคาคลาดเคลอน (4.2.13) เมอ N = 1; 2; 3 คำนวณไดดงนjE1(x)j � h2M28 ; x 2 [x0; x1℄ (4.2.15)jE2(x)j � h3M39p3 ; x 2 [x0; x2℄ (4.2.16)jE3(x)j � h4M424 ; x 2 [x0; x3℄ (4.2.17)

ตวอยาง 4.2.3. จงหาขอบเขตของคาคลาดเคลอนในตวอยาง 4.2.2

วธทำ เนองจากอนพนธอนดบสามของ f(x) = lnx คอ f (3)(x) = 2x�3 ซงมคาสงสดทขอบทางซายคอf (3)(9:0) = 0:0027 ดงนน M3 = 0:0027 จากทบ.4.2.2 เราแทน h = 0:5 และ M3 = 0:0027 ใน (4.2.16)จะได jE2(x)j � 0:53 � 0:00279p3 = 2:1651� 10�5

ในทบ.4.2.2 ขนาดของคาคลาดเคลอน jEN (x)j เปนสดสวนกบ hN+1 แสดงวา jEN (x)j ขนอยกบขนาดของชวงยอย h นอกจากนคาของ MN+1 ยงลเขาส jf (N+1)(x0)j เมอ h ลเขาส 0 ดงนนเมอ h ลเขาส 0 คาของ jEN (x)j ลเขาส 0 ดวยความเรวเทากบ hN+1 ลเขาส 0 และเราเขยนแทนดวยสญลกษณ O(hN+1) เชนjE2(x)j = O(h3) สำหรบ x 2 [x0; x2℄ การเขยนสญลกษณ O(h3) แทน h3M39p3 ใน (4.2.16) ทำใหเหนวาขอบเขตของคาคลาดเคลอนเปนสดสวนกบ h3jE2(x)j � Ch3 � O(h3)เพราะฉะนน ถาอนพนธของ f มขอบเขตแบบเอกรป (uniformly bounded) บนชวง jhj < 1 แลวเราสามารถเลอกคา N ทมคามากๆททำให hN+1 นอยๆ

ตวอยาง 4.2.4. จากตวอยาง 4.2.2 จงหาจำนวนขอมลททำใหคาคลาดเคลอนไมเกน 10�5วธทำ จากตวอยาง 4.2.3 เราทราบวา M3 = 0:0027 แทนคา M3 ในสมการ (4.2.16) จากนนเราแกสมการ0:0027h39p3 = 10�5จะไดวา h = 0:3864972939 หรอ N = 2:587340237 แสดงวาพหนามลากรางจทตองการจะตองมดกร 3เพราะฉะนน จำนวนขอมลคอ 4 ชด

Page 12: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

12 บทท 4. การประมาณคาในชวง

−1 −0.5 0 0.5 1−0.5

0

0.5

1

1.5

2

x

Lagrange PolynomialExpected BehaviorData Points

−1 −0.5 0 0.5 1−0.5

0

0.5

1

x

Lagrange PolynomialExpected BehaviorData Points

(a) (b)

รปท 4.6: การประมาณคาในชวงดวยพหนามลากรางจดวยขอมลทมระยะหางระหวาง xk เทาๆกน (a) และ ขอมลทมระยะหางระหวาง xk ไมเทากน (b)

การสรางพหนามลากรางจประมาณคาในชวงดวย N มากๆอาจทำใหคาคลาดเคลอนลดลง แตสำหรบฟงกชนy = (1 + 25x2)�1 การประมาณดวยพหนามลากรางจไมเกดประโยชนเมอขอมลมระยะหางระหวาง xk เทาๆกนโดยเฉพาะขอมลทมจำนวนมากกวา 10 การสรางพหนามลากรางจอาจเกดปญหาทขอบของชวง ดงตวอยางตอไปน

ตวอยาง 4.2.5. ให f(x) = (1+25x2)�1 จงสรางพหนามลากรางจสำหรบขอมล (�1:0; f(�1:0)), (�0:8; f(�0:8)),(�0:6; f(�0:6)), (�0:4; f(�0:4)), (�0:2; f(�0:2)), (0:0; f(0:0)), (0:2; f(0:2)), (0:4; f(0:4)), (0:6; f(0:6)),(0:8; f(0:8)) และ (1:0; f(1:0))วธทำ แทนขอมลใน (4.2.6) จะไดสมการพหนามดงนP10(x) = 0:1023(x + 0:8)(x+ 0:6)(x+ 0:4)(x+ 0:2)x(x� 0:2)(x� 0:4)(x� 0:6)(x� 0:8)(x� 1:0)�1:5609(x + 1)(x+ 0:6)(x+ 0:4)(x+ 0:2)x(x� 0:2)(x� 0:4)(x� 0:6)(x� 0:8)(x� 1:0)+12:1102(x + 1)(x+ 0:8)(x+ 0:4)(x+ 0:2)x(x� 0:2)(x� 0:4)(x� 0:6)(x� 0:8)(x� 1:0)�64:5875(x + 1)(x+ 0:8)(x+ 0:6)(x+ 0:2)x(x� 0:2)(x� 0:4)(x� 0:6)(x� 0:8)(x� 1:0)+282:5702(x + 1)(x+ 0:8)(x+ 0:6)(x+ 0:4)x(x� 0:2)(x� 0:4)(x� 0:6)(x� 0:8)(x� 1:0)�678:1684(x + 1)(x+ 0:8)(x+ 0:6)(x+ 0:4)(x+ 0:2)(x� 0:2)(x� 0:4)(x� 0:6)(x� 0:8)(x� 1:0)+282:5702(x + 1)(x+ 0:8)(x+ 0:6)(x+ 0:4)(x+ 0:2)x(x� 0:4)(x� 0:6)(x� 0:8)(x� 1:0)�64:5875(x + 1)(x+ 0:8)(x+ 0:6)(x+ 0:4)(x+ 0:2)x(x� 0:2)(x� 0:6)(x� 0:8)(x� 1:0)+12:1102(x + 1)(x+ 0:8)(x+ 0:6)(x+ 0:4)(x+ 0:2)x(x� 0:2)(x� 0:4)(x� 0:8)(x� 1:0)�1:5609(x + 1)(x+ 0:8)(x+ 0:6)(x+ 0:4)(x+ 0:2)x(x� 0:2)(x� 0:4)(x� 0:6)(x� 1:0)+0:1023(x + 1)(x+ 0:8)(x+ 0:6)(x+ 0:4)(x+ 0:2)x(x� 0:2)(x� 0:4)(x� 0:6)(x� 0:8) (4.2.18)

ในรป 4.6(a) เราวาดกราฟของพหนามลากรางจ (4.2.18) ชดขอมลทกำหนดในโจทย พรอมทงกราฟของ y =(1 + 25x2)�1 สงเกตวา คาคลาดเคลอนมลกษณะกวดแกวงและเพมมากขนบรเวณขอบ การกวดแกวงของคาคลาดเคลอนจะเพมมากยงขนหากเราเพมจำนวนของขอมลมากขน จากลกษณะของคาคลาดเคลอนถาเราเลอกคาxk ทมความละเอยดทขอบมากขน อาจทำใหปญหาทขอบของชวงลดลงดงแสดงในรป 4.6(b) สำหรบการเลอกจดในรป 4.6(b) ใหดในหวขอ 4.4

Page 13: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

4.2. พหนามลากรางจ 13

Algorithm : Lagrange Interpolationขนตอนวธการสรางพหนามลากรางจจากชดขอมล (xi; yi) ในชวง t = [t1; tM ℄ใหกำหนด Input เปนเวกเตอร x, y และ t

1. คำนวณ n ขนาดของเวกเตอร x

2. สำหรบ i=1 ถง n ใหทำขนตอน 2.1-2.4

2.1 กำหนดผลคณเรมตน T2.2 กำหนดตวนบเรมตน j=12.3 ในขณะท j�n

ถา j6=i ใหปรบปรงผลคณ T=T(t-xj)/(xi-xj) ไมเชนนนให T=T2.4 เพมขนาดของตวนบ j=j+1

3. กำหนดสมประสทธลากรางจ Li(t)=T4. คำนวณพหนามลากรางจพจนท i โดยท Pi=yiLi(t)5. คำนวณพหนามลากรางจโดยหาผลบวกของพหนามลากรางจพจนท i

แบบฝกหด 4.2.

1. จงสรางพหนามลากรางจกำลง 1, 2 หรอ 3 ทเหมาะสมกบขอมล คำนวณคาประมาณทตองการ

1.1 f(8:4) เมอ f(8:1) = 16:94410; f(8:3) = 17:56492; f(8:6) = 18:50515; f(8:7) = 18:820911.2 f(�1=3) เมอ f(�0:75) = �0:07181250; f(�0:5) = �0:02475000; f(�0:25) = 0:33493750; f(0) =1:101000001.3 f(0:25) เมอ f(0:1) = 0:62049958; f(0:2) = �0:28398668; f(0:3) = 0:00660095; f(0:4) =0:248424401.4 f(0:9) เมอ f(0:6) = �0:17694460; f(0:7) = 0:01375227; f(0:8) = 0:22363362; f(1:0) =0:65809197

2. จงคำนวนขอบเขตของคาคลาดเคลอนสำหรบโจทยขอ (1) เมอฟงกชนของแตละขอยอยกำหนดโดย

2.1 f(x) = x ln x2.2 f(x) = x3 + 4:002x+ 1:1012.3 f(x) = x os(x)� 2x2 + 3x� 12.4 f(x) = sin(ex � 2)

Page 14: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

14 บทท 4. การประมาณคาในชวง

3. จงสรางพหนามลากรางจกำลง n สำหรบฟงกชนทกำหนดตอไปน พรอมทงหาขอบเขตของคาคลาดเคลอนบนชวง [x0; xn℄3.1 f(x) = e2x os(3x); x0 = 0; x1 = 0:3; x2 = 0:6; n = 23.2 f(x) = sin(ln x); x0 = 2:0; x1 = 2:4; x2 = 2:6; n = 23.3 f(x) = lnx; x0 = 1; x1 = 1:1; x2 = 1:3; x3 = 1:4; n = 33.4 f(x) = os(x) + sin(x); x0 = 0; x1 = 0:25; x2 = 0:5; x3 = 1:0; n = 3

4. จงประยกตใชความรเรองการประมาณคาในชวงดวยพหนามลากรางจหาผลเฉลยของสมการไมชงเสนf(x) = 0 ตอไปน

4.1 f(x) = x� e�x4.2 f(x) = e2x os(3x)4.3 f(x) = sin (ln x)4.4 f(x) = osx+ sinx

5. จงประยกต Algorithm สำหรบพหนามลากรางจขางตนเขยนคำสงดวยโปรแกรม matlab หาผลเฉลยของสมการไมชงเสน f(x) = 0

6. ให f(x) = e�x สำหรบ x 2 [0; 1℄ จงหาขนาดของชวงยอยททำใหคาคลาดเคลอนไมเกด 10�6 โดยใชการประมาณคาในชวงดวยพหนามลากรางจเชงเสน พหนามลากรางจกำลงสองและกำลงสาม

7. ให LN;0(x); LN ; 1(x); : : : ; LN;N(x) เปนสมประสทธลากรางจ จงแสดงวาNXk=0LN;k(x) = 1; x 2 R8. ให f(x) = aNxN + aN�1xN�1 + � � � + a1x + a0 และ PN (x) เปนพหนามลากรางจทผานจด(x0; f(x0)), (x1; f(x1)),. . . ,(xN ; f(xN )) จงแสดงวาสำหรบจำนวนจรง x ใดๆ f(x) = PN (x)9. ให f เปนฟงกชนของสองตวแปร x และ y สมมตวาเรารคาของ f ทจด (x1; y1), (x1; y2), (x2; y1) และ(x2; y2) จงแสดงวาพหนามลากรางจของสองตวแปรเขยนไดในรปP (x; y) = f(x1; y1) (x2 � x)(y2 � y)(x2 � x1)(y2 � y1) + f(x1; y2) (x2 � x)(y � y1)(x2 � x1)(y2 � y1)+f(x2; y1) (x� x1)(y2 � y)(x2 � x1)(y2 � y1) + f(x2; y2) (x� x1)(y � y1)(x2 � x1)(y2 � y1)

10. ให f(0; 0) = 1; f(0; 1) = 2; f(1; 0) = 2; f(1; 1) = 3 จงใชการประมาณคาในชวงหาคาของ f(0:5; 0:5)

Page 15: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

4.3. พหนามนวตน 15

4.3 พหนามนวตน

ในบางสถานการณ เราอาจตองสรางพหนาม P1(x); P2(x); : : : ; PN (x) จำนวนหนงแลวเลอกพหนามทเราตองการถาพหนามเหลานเปนพหนามลากรางจและเรารความสมพนธระหวาง PN�1(x) และ PN (x) จะชวยลดขนตอนการคำนวณไดอยางมาก พจารณารปแบบของการทำซำ (recursive pattern) ตอไปนP1(x) = a0 + a1(x� x0) (4.3.1)P2(x) = a0 + a1(x� x0) + a2(x� x0)(x� x1) (4.3.2)P3(x) = a0 + a1(x� x0) + a2(x� x0)(x� x1)+a3(x� x0)(x � x1)(x � x2) (4.3.3)

...PN (x) = a0 + a1(x� x0) + a2(x� x0)(x� x1) + a3(x� x0)(x� x1)(x� x2)+a4(x� x0)(x � x1)(x � x2)(x � x3) + � � �+aN (x� x0)(x� x1) � � � (x� xN�1) (4.3.4)

สงเกตวาพหนาม PN (x) อาจคำนวณไดจาก PN�1(x) โดยใชความสมพนธPN (x) = PN�1(x) + aN(x � x0)(x � x1) � � � (x � xN�1) (4.3.5)

เราเรยกพหนามขางตนนวาพหนามนวตนดกร � N ทสรางจากจด x0; x1; : : : ; xN�1 การประมาณคาในชวงดวยพหนามนวตนเปนอกวธทไมเกดปญหาในเรองของ ill-conditioned ของเมทรกซดงเชนทประสบกบ Vander-monde matrix ในหวขอ 4.1

ตวอยาง 4.3.1. จงสรางพหนามนวตนทมสมประสทธ a0 = 5; a1 = �2; A2 = 0:5; a3 = �0:1; a4 = 0:003โดยใชจด x0 = 1; x1 = 3; x2 = 4; x3 = 4:5 และจงหาคา Pk(2:5) เมอ k = 1; 2; 3; 4วธทำ จากสตร (4.3.1)-(4.3.4) จะไดวาP1(x) = 5� 2(x� 1)P2(x) = 5� 2(x� 1) + 0:5(x� 1)(x� 3)P3(x) = 5� 2(x� 1) + 0:5(x� 1)(x� 3)� 0:1(x� 1)(x� 3)(x� 4)P4(x) = P3(x) + 0:003(x� 1)(x� 3)(x� 4)(x� 4:5)คำนวณคาของพหนามนวตนท x = 2:5 จะไดP1(2:5) = 5� 2(1:5) = 2P2(2:5) = P1(2:5) + 0:5(1:5)(�0:5) = 1:625P3(2:5) = P2(2:5)� 0:1(1:5)(�0:5)(�1:5) = 1:5125P4(2:5) = P3(2:5) + 0:003(1:5)(�0:5)(�1:5)(�2:0) = 1:50575

Page 16: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

16 บทท 4. การประมาณคาในชวง

สมมต N = 3 พหนามนวตน P3(x) เขยนใหมไดในรปP3(x) = [[a3(x� x2) + a2℄ (x� x1) + a1℄ (x� x0) + a0 (4.3.6)

การคำนวณคาของพหนาม P3(x) อาจเรมจากพจนทอยดานในกอนดงนS3 = a3S2 = S3(x� x2) + a2S1 = S2(x� x1) + a1S0 = S1(x� x0) + a0 (4.3.7)

เราจะเหนวา S0 = P3(x) เราเรยกกระบวนการคำนวณ S3; S2; S1; S0 เชนนวา nested multiplication

ตวอยาง 4.3.2. จงหาคาของ P3(2:5) ในตวอยาง 4.3.1 โดยใช nested multiplication

วธทำ จากสตร (4.3.6) จะไดP3(x) = [[�0:1(x� 4) + 0:5℄ (x� 3)� 2℄ (x� 1) + 5คำนวณคาของ S0 จาก (4.3.7) ดงนS3 = �0:1S2 = �0:1(2:5� 4) + 0:5 = 0:65S1 = 0:65(2:5� 3)� 2 = �2:325S0 = �2:325(2:5� 1) + 5 = 1:5125ดงนน P3(2:5) = 1:5125ตอไปเราจะหาสมประสทธ a0; a1; : : : ; aN สำหรบการประมาณฟงกชน y = f(x) ดวยพหนามนวตน เราสงเกตวา P1(x) = f(x0) และ P1(x1) = f(x1) (4.3.8)

จาก (4.3.1) และ (4.3.8) จะไดวาf(x0) = P1(x0) = a0 + a1(x0 � x0) = a0 (4.3.9)

ดงนน a0 = f(x0) จาก (4.3.1), (4.3.8) และ (4.3.9) จะไดวาf(x1) = P1(x1) = a0 + a1(x1 � x0) = f(x0) + a1(x1 � x0)แกสมการหาคา a1 จะไดวา a1 = f(x1)� f(x0)x1 � x0 (4.3.10)

สำหรบการหาคา a2 เราใชความสมพนธ P2(x2) = f(x2) จะไดf(x2) = P2(x2) = a0 + a1(x2 � x0) + a2(x2 � x0)(x2 � x1) (4.3.11)

Page 17: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

4.3. พหนามนวตน 17

คาสมประสทธ a0 และ a1 ไดจาก (4.3.8) และ (4.3.10) ดงนนa2 = f(x2)� a0 � a1(x2 � x0)(x2 � x0)(x2 � x1)= �f(x2)� f(x0)x2 � x0 � f(x1)� f(x0)x1 � x0 � =(x2 � x1)จดรปสมการใหมจะได a2 = �f(x2)� f(x1)x2 � x1 � f(x1)� f(x0)x1 � x0 � =(x2 � x0)

ในการหาคาสมประสทธอนๆไดแก a3; a4; a5; : : : ; aN เราจะใชหลกของผลตางสดสวนดงตอไปน

บทนยาม 4.3.1. ผลตางสดสวน (divided difference) ของฟงกชน f(x) กำหนดโดยf [xk℄ = f(xk)f [xk�1; xk℄ = f [xk℄� f [xk�1℄xk � xk�1f [xk�2; xk�1; xk℄ = f [xk�1; xk ℄� f [xk�2; xk�1℄xk � xk�2f [xk�3; xk�2; xk�1; xk℄ = f [xk�2; xk�1; xk℄� f [xk�3; xk�2; xk�1℄xk � xk�3...f [xk�j ; xk�j+1; : : : ; xk℄ = f [xk�j+1; : : : ; xk℄� f [xk�j ; : : : ; xk�1℄xk � xk�j

เราสามารถแสดงผลตางสดสวนในรปของตาราง ดงแสดงในตาราง 4.11x0 f [x0℄ = f(x0)x1 f [x1℄ = f(x1) f [x0; x1℄ = f [x1℄� f [x0℄x1 � x0x2 f [x2℄ = f(x2) f [x1; x2℄ = f [x2℄� f [x1℄x2 � x1 f [x0; x1; x2℄ = f [x1; x2℄� f [x0; x1℄x2 � x0ตารางท 4.11: ผลตางสดสวน

ทฤษฎบท 4.3.1. กำหนดจด x0; x1; : : : ; xN เปนจำนวนทแตกตางกนบนชวง [a; b℄ จะมพหนาม PN (x) ดกร� N เพยงหนงเดยวทมคณสมบต f(xj) = PN (xj); j = 0; 1; : : : ; Nและ PN (x) = a0 + a1(x � x0) + � � �+ aN (x� x0)(x � x1) � � � (x� xN�1)โดยท ak = f [x0; x1; : : : ; xk℄ สำหรบ k = 0; 1; : : : ; N

Page 18: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

18 บทท 4. การประมาณคาในชวง

ทฤษฎบท 4.3.2. สมมตฟงกชน f(x) ประมาณไดดวยพหนามนวตน PN (x) ตามทบ. 4.3.1 ถา f 2CN+1[a; b℄ และ f(x) = PN (x) +EN (x)แลวสำหรบแตละ x 2 [a; b℄ จะมจำนวนจรง = (x) 2 (a; b) ททำใหEN (x) = (x� x0)(x� x1) � � � (x� xN )(N + 1)! f (N+1)( )

ตวอยาง 4.3.3. ให f(x) = x3 � 4x จงสรางพหนามนวตน P3(x) ประมาณฟงกชน f(x) โดยใชจด x0 = 1,x1 = 2; x2 = 3; x3 = 4วธทำ สรางตารางสำหรบผลตางสดสวนดงน จากตาราง 4.12 จะไดวา a0 = �3; a1 = 3; a2 = 6 และ a3 = 1x0 �3x1 0 3x2 15 15 6x3 48 33 9 1

ตารางท 4.12: ผลตางสดสวนสำหรบตวอยาง 4.3.3

ดงนนพหนามนวตนทตองการคอP3(x) = �3 + 3(x� 1) + 6(x� 1)(x� 2) + (x � 1)(x� 2)(x� 3)ตวอยาง 4.3.4. จงสรางตารางผลตางสดสวนสำหรบ f(x) = osx โดยใชจด (k; os k) เมอ k = 0; 1; 2; 3; 4และจงหาพหนามนวตน Pk(x) เมอ k = 1; 2; 3; 4วธทำ สรางตารางสำหรบผลตางสดสวนดงนx0 = 0:0 1:0000000x1 = 1:0 0:5403023 �0:4596977x2 = 2:0 �0:4161468 �0:9564491 �0:2483757x3 = 3:0 �0:9899925 �0:5738457 0:1913017 0:1465592x4 = 4:0 �0:6536436 0:3363489 0:4550973 0:0879318 �0:0146568

ตารางท 4.13: ผลตางสดสวนสำหรบตวอยาง 4.3.4

จากตาราง 4.13 เราสามารถสรางพหนามนวตนไดดงนP1(x) = 1:0000000� 0:4596977(x� 0:0)P2(x) = 1:0000000� 0:4596977(x� 0:0)� 0:2483757(x� 0:0)(x� 1:0)

Page 19: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

4.3. พหนามนวตน 19

P3(x) = 1:0000000� 0:4596977(x� 0:0)� 0:2483757(x� 0:0)(x� 1:0)+0:1465592(x� 0:0)(x� 1:0)(x� 2:0)P4(x) = 1:0000000� 0:4596977(x� 0:0)� 0:2483757(x� 0:0)(x� 1:0)+0:1465592(x� 0:0)(x� 1:0)(x� 2:0)�0:0146568(x� 0:0)(x� 1:0)(x� 2:0)(x� 3:0)Algorithm : Newton Coeffient

ขนตอนวธการคำนวณสมประสทธ a0; a1; : : : ; aNใหกำหนด Input เปนเวกเตอร x, y

1. คำนวณ n ขนาดของเวกเตอร x

2. กำหนดเมทรกซ d ใหเปนเมทรกซศนยทมขนาดเทากบ n�n3. คำนวณสมาชกหลกท 1 ของเมทรกซ d โดยทสมาชกแตละแถวเทากบคาของ y

4. สำหรบ j=2 ถง n ใหคำนวณคาของ

di;j=(di;j�1-di�1;j�1)/(xi-xi�j+1) สำหรบ i=j ถง n

5. สมประสทธ a0 =d1,. . . ,aN =dN

Page 20: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

20 บทท 4. การประมาณคาในชวง

แบบฝกหด 4.3.

1. จงสรางพหนามนวตน P1(x); P2(x); P3(x) และ P4(x) เมอกำหนดสมประสทธดงตอไปน

1.1 a0 = 3; a1 = 1; a2 = 4; a3 = 0:05; a4 = 0:01, x0 = 2; x1 = 3; x2 = 4; x3 = 4:51.2 a0 = 1:0; a1 = 0:5; a2 = 0:8; a3 = 0:1; a4 = �0:1, x0 = 1; x1 = 2; x2 = 3; x3 = 41.3 a0 = 3:6; a1 = �2:0; a2 = 0:8; a3 = �0:07; a4 = 0:04, x0 = �2; x1 = �1; x2 = 0; x3 = 11.4 a0 = 2; a1 = 4; a2 = 0:01; a3 = 0:03; a4 = �0:04, x0 = �1; x1 = 0; x2 = 1; x3 = 3

2. จงหาคาของ f(r) โดยใชการประมาณคาในชวงดวยพหนามนวตนทผานจดทกำหนดให

2.1 f(0:25) เมอ f(0:1) = 1:0212, f(0:2) = 1:0888, f(0:3) = 1:2089 และ f(0:4) = 1:38772.2 f(5:6) เมอ f(5:1) = 0:3780, f(5:3) = 0:5544, f(5:5) = 0:7087, f(5:7) = 0:8347 และf(5:9) = 0:92752.3 f(1:1) เมอ f(1:0) = �0:6156, f(2:0) = �0:8767 และ f(3:0) = �0:01012.4 f(0:25) เมอ f(�1:0) = �0:3012, f(�0:5) = 0:3982, f(0:0) = 1:0000, f(0:5) = 1:3570

และ f(1:0) = 1:38183. ให PN (x) = f [x0℄ + f [x0; x1℄(x� x0) + a2(x � x0)(x � x1)+a3(x � x0)(x � x1)(x� x2) + : : :+ an(x� x0)(x� x1) � � � (x� xN�1)

จงแสดงวา a2 = f [x0; x1; x2℄ โดยใช PN (x2)4. กำหนดตาราง 4.14 เปนผลตางสดสวนของฟงกชน f จงคำนวณคาสมประสทธทยงไมทราบคาx0 = 8:1 f [x0℄x1 = 8:3 f [x1℄ f [x0; x1℄x2 = 8:5 2:1401 0:1191 �0:0073

ตารางท 4.14: ผลตางสดสวนแบบฝกหดขอ 4.

5. กำหนดตาราง 4.15 เปนผลตางสดสวนของฟงกชน f จงคำนวณคาสมประสทธทยงไมทราบคาx0 = 1:0 0:8415x1 = 2:0 f [x1℄ f [x0; x1℄x2 = 3:0 f [x2℄ f [x1; x2℄ f [x0; x1; x2℄x3 = 4:0 �0:7568 �0:8979 �0:0649 0:1177ตารางท 4.15: ผลตางสดสวนแบบฝกหดขอ 5.

6. สมมตวาสมประสทธ aM ในตารางผลตางสดสวนเปนศนย จงแสดงวาสมประสทธ aM+1 ถงสมประสทธaN+1 เปนศนยเชนกน

Page 21: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

4.3. พหนามนวตน 21

7. สมมตวาสมประสทธ aM ในตารางผลตางสดสวนเปนศนย จงแสดงวามพหนาม PM�1(x) ททำใหPM�1(xk) = yk; k = 0; 1; : : : ; N + 18. สมมตวา x0 � x1 � x2 � � � � � xN โดยท xi+1 = xi + h ให x = x0 + sh จงแสดงวาPN (x) = f(x0) + NXk=1 sk !�kf(x0)

เมอ �f(x0) = f(x1)� f(x0) และ �2f(x0) = �f(x1)��f(x0)9. ให f เปนฟงกชนทผานจด (x0; f(x0)); : : : ; (xN ; f(xN )) และwj = 0� Yi=0;i 6=j(xj � xi)1A�1 ; j = 1 < : : : ; N

ถา PN (x) เปนพหนามลากรางจ จงแสดงวาPN (x) = NPj=0 wjx� xjf(xj)NPj=0 wjx� xjเมอ x 6= xj ; j = 0; : : : ; N

Page 22: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

22 บทท 4. การประมาณคาในชวง

4.4 พหนามเชบเชพ

หวขอทผานมาเราศกษาพหนามลากรางจและพหนามนวตนซงตางกสามารถเขยนไดในรปแบบf(x) = PN (x) +EN (x)เมอ EN (x) = Q(x)f (N+1)( )(N + 1)! (4.4.1)

และ Q(x) เปนพหนามดกร N + 1 กลาวคอQ(x) = (x� x0)(x� x1) � � � (x� xN ) (4.4.2)

หากกำหนดชวงการประมาณฟงกชน f(x) บนชวง [�1; 1℄ เราจะไดวาjEN (x)j � jQ(x)j max�1�x�1 jf (N+1)(x)j(N + 1)!แนวคดในหวขอนจะเปนการเลอกเซตของจด fxkgNk=0 ททำให max�1�x�1 jQ(x)j มคานอยทสดเพอทำใหขนาด

ของคาคลาดเคลอนนอยทสดโดยใชสมบตของพหนามเชบเชพ

4.4.1 สมบตของพหนามเชบเชพ

1. เรานยามพหนามเชบเชพโดยใชความสมพนธเวยนเกด (recurrence relation) ไดดงนT0(x) = 1T1(x) = xTk(x) = 2xTk�1 � Tk�22. สมประสทธของพหนามเชบเชพ TN (x) ของพจน xN กำหนดโดย 2N�1 เมอ N � 13. พหนามเชบเชพ T2M (x) เปนฟงกชนค กลาวคอT2M (�x) = T2M (x) (4.4.3)

พหนามเชบเชพ T2M+1(x) เปนฟงกชนค กลาวคอT2M+1(�x) = �T2M+1(x) (4.4.4)

4. สำหรบ x 2 [�1; 1℄ พหนามเชบเชพเขยนไดในเทอมของฟงกชนตรโกณมตคอTN (x) = os (N ar osx) (4.4.5)

5. ผลเฉลยของ TN (x) = 0 ในชวง [�1; 1℄ มจำนวน N คาทแตกตางกนและxk = os� (2k + 1)�2N � ; k = 0; 1; : : : ; N � 1 (4.4.6)

เราเรยกผลเฉลยเหลานวา โหนดของเชบเชพ (Chebyshev nodes)

6. สำหรบ x 2 [�1; 1℄ พหนามเชบเชพมขอบเขตแบบเอกรปjTN(x)j � 1 (4.4.7)

Page 23: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

4.4. พหนามเชบเชพ 23

4.4.2 Minimaxการทำใหคาของ max�1�x�1 jQ(x)j นอยทสดอาจทำไดโดยการเลอกจด x0; x1; : : : ; xN ททำใหQ(x) = 2�NTN+1(x)ทฤษฎบท 4.4.1. สำหรบทกๆพหนาม Q(x) และทกเซต fxkgNk=0 พหนาม T (x) = TN+1(x)=2N เปนพหนามเพยงหนงเดยวทสอดคลอง max�1�x�1 jT (x)j � max�1�x�1 jQ(x)j (4.4.8)

และ max�1�x�1 jT (x)j = 12N (4.4.9)

จาก ทบ.4.4.1 เราอาจกลาวไดวาการประมาณคาพหนาม f(x) ในชวงดวยพหนามลากรางจบนชวง [�1; 1℄ มคาคลาดเคลอนนอยทสดเมอ fxkg เปนโหนดของเชบเชพ TN+1(x) เชน ถาเราสรางพหนามลากรางจV (x) = f(x0)C0(x) + f(x1)C1(x) + f(x2)C2(x) + f(x3)C3(x) (4.4.10)

โดยใชโหนดของเชบเชพ x0 = os � 7�8 �, x1 = os � 5�8 �, x2 = os � 3�8 �, x3 = os ��8 � เราจะไดสมประสทธแสดงในตาราง 4.16 สมมตวาเราตองการเปรยบเทยบพหนามลากรางจ (4.4.10) กบพหนามลากรางจทสรางจากC0(x) = �0:10355339+ 0:11208538x+ 0:7071678x2 � 0:76536686x3C1(x) = 0:60355339� 1:57716102x� 0:70710678x2 + 1:84775906x3C2(x) = 0:60355339+ 1:57716102x� 0:70710678x2� 1:84775906x3C3(x) = 0:10355339� 0:11208538x+ 0:7071678x2 + 0:76536686x3

ตารางท 4.16: สมประสทธของพหนามลากรางจเมอใชโหนดของเชบเชพ

เซตของจดทมระยะหางระหวางจดเทาๆกนคอ x0 = �1, x1 = �1=3, x2 = 1=3 และ x3 = 1 พหนามลากรางจในกรณนกำหนดโดยP (x) = f(x0)L3;0(x) + f(x1)L3;1(x) + f(x2)L3;2(x) + f(x3)L3;3(x) (4.4.11)

สมประสทธแสดงในตาราง 4.17L3;0(x) = �0:06250000+ 0:06250000x+ 0:56250000x2� 0:56250000x3L3;1(x) = 0:56250000� 1:68750000x� 0:56250000x2 + 1:68750000x3L3;2(x) = 0:56250000+ 1:68750000x� 0:56250000x2� 1:68750000x3L3;3(x) = �0:06250000� 0:06250000x+ 0:56250000x2� 0:56250000x3ตารางท 4.17: สมประสทธของพหนามลากรางจเมอใชจด x0 = �1, x1 = �1=3, x2 = 1=3 และ x3 = 1

Page 24: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

24 บทท 4. การประมาณคาในชวง

ตวอยาง 4.4.1. จงเปรยบเทยบการประมาณฟงกชน f(x) = exp(x) ดวยพหนามลากรางจเมอสมประสทธของพหนามกำหนดในตาราง 4.16 และ 4.17

วธทำ คำนวณคาของ f(xi); i = 0; 1; 2; 3 สำหรบกรณทแตละจดมระยะหางเทาๆกน จะไดf(x0) = exp (�1) = 0:36787944f(x1) = exp (�1=3) = 0:71653131f(x2) = exp (1=3) = 1:39561243f(x3) = exp (1) = 2:71828183นำคาของฟงกชนไปแทนใน (4.4.11) จะไดP (x) = 0:36787944L3;0(x) + 0:71653131L3;1(x) + 1:39561243L3;2(x) + 2:71828183L3;3(x)จากตารางคาสมประสทธ (ตาราง 4.17) เราจะไดP (x) = 0:99519577+ 0:99904923x+ 0:5478848x2 + 0:17615196x3 (4.4.12)

ในทำนองเดยวกนเราคำนวณคาของ f(xi); i = 0; 1; 2; 3 สำหรบโหนดของเชบเชพ x0 = os � 7�8 �, x1 = os � 5�8 �, x2 = os � 3�8 �, x3 = os ��8 � จะไดf(x0) = exp (�0:92387953) = 0:39697597f(x1) = exp (�0:38268343) = 0:68202877f(x2) = exp (0:38268343) = 1:46621380f(x3) = exp (0:92387953) = 2:51904417นำคาของฟงกชนไปแทนใน (4.4.10) จะไดV (x) = 0:39697597C0(x) + 0:68202877C1(x) + 1:46621380C2(x) + 2:51904417C3(x)จากตารางคาสมประสทธ (ตาราง 4.16) เราจะไดV (x) = 0:99461532+ 0:99893323x+ 0:54290072x2+ 0:17517569x3 (4.4.13)

คำนวณคาสงสดของคาคลาดเคลอนทงสองกรณj exp(x)� P (x)j � 0:00998481; สำหรบ � 1 � x � 1j exp(x)� V (x)j � 0:00665687; สำหรบ � 1 � x � 1เราพบวาคาคลาดเคลอนจกา V (x) คดเปน 2=3 ของคาคลาดเคลอนจาก P (x)4.4.3 การแปลงชวงถาตองการประมาณคาฟงกชน f(x) ดวยพหนาม PN (x) ในชวง [a; b℄ กอนอนเราจะเปลยนตวแปรใหอยในชวง[�1; 1℄ โดยกำหนด x = � b� a2 t�+ a+ b2 หรอ t = 2x� ab� a � 1 (4.4.14)

Page 25: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

4.4. พหนามเชบเชพ 25

เมอ a � x � b และ �1 � t � 1โหนดของเชบเชพ TN+1(t) บนชวง [�1; 1℄ กำหนดโดยtk = os�(2N + 1� 2k) �2N + 2� ; k = 0; 1; : : :N (4.4.15)

และจดสำหรบการประมาณคาในชวงไดแกxk = tk b� a2 + a+ b2 ; k = 0; 1; : : :N (4.4.16)

ทฤษฎบท 4.4.2. สมมตวา PN (x) เปนพหนามลากรางจทสรางจากโหนดของเชบเชพ ถา f 2 CN+1[a; b℄แลว jf(x)� PN (x)j � 2(b� a)N+14N+1(N + 1)! maxa�x�bfjf (N+1)(x)jg (4.4.17)

ตวอยาง 4.4.2. จงหาโหนดของเชบเชพและขนาดของคาคลาดเคลอนสำหรบพหนามลากรางจ P5(x) ทใชประมาณคาของฟงกชน f(x) = sinx บนชวง [0; �=4℄วธทำ จาก (4.4.14) และ (4.4.15) จะไดxk = os� (11� 2k)�12 � �8 + �8 ; k = 0; 1; : : : ; 5เนองจาก jf (6)(x)j � j � sin(�=4)j = 2�1=2 ดงนนjf(x)� P5(x)j � � �16�6� 26!� 2�1=2 � 0:00000011255แบบฝกหด 4.4.

1. ให f(x) = os(x + 2) บนชวง [�1; 1℄ จงสรางพหนามลากรางจ P3(x) โดยโหนดของเชบเชพ พรอมทงหาขอบเขตของคาคลาดเคลอน

2. ให f(x) = ln(x2) บนชวง [�1; 1℄ จงสรางพหนามลากรางจ P3(x) โดยโหนดของเชบเชพ พรอมทงหาขอบเขตของคาคลาดเคลอน

3. ถาพหนามลากรางจ P2(x) ของฟงกชน f(x) เขยนอยในรปP2(x) = f(x0)L2;0(x) + f(x1)L2;1(x) + f(x2)L2;2(x)เมอ x0; x1; x2 เปนโหนดของเชบเชพ จงแสดงวาL2;0(x) = � xp3 + 2x23 ; L2;1(x) = 1� 4x23 ; L2;2(x) = xp3 + 2x23

Page 26: การประมาณคาในชวง¸•้นปี55/Interpolation.pdf · รูปที่ 4.3: กราฟของฟงกชันฐานของใน P

26 บทท 4. การประมาณคาในชวง

4. ให f(x) = sinx บนชวง [�1; 1℄ จงสรางพหนามลากรางจ P2(x) โดยโหนดของเชบเชพและพหนามสมประสทธกำหนดโดย L2;0; L2;1; L2;2 ในขอ 3. พรอมทงหาขอบเขตของคาคลาดเคลอน

5. ให f(x) = exp(�x) บนชวง [�1; 1℄ จงสรางพหนามลากรางจ P2(x) โดยโหนดของเชบเชพและพหนามสมประสทธกำหนดโดย L2;0; L2;1; L2;2 ในขอ 3. พรอมทงหาขอบเขตของคาคลาดเคลอน

6. ให T0(x) = 1 และ T1(x) = x จงพสจนวาTk(x) = 2xTk�1 � Tk�27. จงใชความสมพนธเวยนเกดหาคาของ T8(x)8. จงพสจนวา T2M (x) เปนฟงกชนค

9. จงพสจนวา T2M+1(x) เปนฟงกชนค

10. จงแสดงวา TN(x) = os (N ar osx) สำหรบ x 2 [�1; 1℄11. ให f(x) = expx บนชวง [1; 5℄ จงสรางพหนามลากรางจ P3(x) โดยโหนดของเชบเชพ

12. ให f(x) = (1 + 25x2)�1 บนชวง [�1; 1℄ จงสรางพหนามนวตน P3(x) โดยโหนดของเชบเชพ

13. ให f(x) = sinx บนชวง [0; �℄ จงสรางพหนามนวตน P3(x) โดยโหนดของเชบเชพ

14. จงหาผลเฉลยของสมการ exp(sinx) = x โดยสรางพหนามนวตนจากโหนดของเชบเชพ

15. ให xk = os (2k + 1)�2N + 2 ! ; k = 0; 1; : : : ; Nจงแสดงวา

15.1NPk=0 Ti(xk)Tj(xk) = 0; i 6= j

15.2NPk=0 Ti(xk)Tj(xk) = N + 12 ; i = j 6= 0

15.3NPk=0 T0(xk)T0(xk) = N + 1

16. สมมตวาการประมาณคาในชวงโดยใชโหนดของเชบเชพเขยนไดในรป f(x) � PN (x) = NPk=1 kTk(x) จง

ใช 15.1-15.3 แสดงวา

16.1 0 = 1N + 1 NPk=0 f(xk)16.2 j = 2N + 1 NPk=0 f(xk) os j�(2k + 1)2N + 2 ! ; j = 1; : : : ; N