ตัวอย่างของฟังก์ชันต่อเนื่องที่ยากที่จะประมาณค่าด้วยพหุนาม


16

เพื่อวัตถุประสงค์ในการสอนฉันต้องการฟังก์ชั่นต่อเนื่องของตัวแปรเดี่ยวที่ "ยาก" เพื่อประมาณค่ากับชื่อพหุนามนั่นคือต้องมีพลังสูงมากในชุดพลังงานเพื่อ "พอดี" กับฟังก์ชั่นนี้ ฉันตั้งใจจะแสดงให้นักเรียนเห็นถึง "ขีด จำกัด " ของสิ่งที่สามารถทำได้ด้วยชุดพลัง

ฉันคิดเกี่ยวกับ concocting บางอย่าง "ที่มีเสียงดัง" แต่แทนที่จะกลิ้งของฉันเองฉันเพียงแค่สงสัยว่ามีชนิดของมาตรฐาน "ฟังก์ชั่นที่ยากลำบาก" ที่ผู้คนใช้สำหรับการทดสอบขั้นตอนวิธีการประมาณ / การแก้ไขค่อนข้างคล้ายกับผู้ที่ฟังก์ชั่นการทดสอบการเพิ่มประสิทธิภาพที่มีจำนวนมาก local minima ที่อัลกอริธึมไร้เดียงสาติดอยู่ได้ง่าย

ขอโทษถ้าคำถามนี้ไม่ได้เกิดขึ้นอย่างดี; โปรดเมตตาผู้ที่ไม่ใช่นักคณิตศาสตร์

คำตอบ:


14

ทำไมไม่แสดงฟังก์ชันค่าสัมบูรณ์?

การประมาณด้วยการขยายตัวอย่างเช่น Legendre-polynomial แต่ค่อนข้างแย่ :

การประมาณตามลำดับของฟังก์ชันค่าสัมบูรณ์โดยพหุนาม

แน่นอนว่าการขยายตัวของเทย์เลอร์นั้นไร้ประโยชน์อย่างสมบูรณ์ที่นี่เพียงให้ฟังก์ชันเชิงเส้นเสมอไม่ว่าจะลดลงหรือเพิ่มขึ้นอยู่เสมอ (ขึ้นอยู่กับว่าจุดที่คุณขยายเป็นลบหรือบวก)


คุณสามารถแก้ไข | x | ใช้การแก้ไข Chebyshev ให้ดูnbviewer.jupyter.org/github/cpraveen/na/blob/master/ …ซึ่งเข้ากันได้ค่อนข้างเร็ว เช่นคุณสามารถเปลี่ยน N = 2 * i ในรหัสเป็น N = 15 + i และทดสอบระดับที่ใหญ่ขึ้น มันไม่ใช่วิธีการขยายตัว แต่ยังคงยึดตามชื่อพหุนาม
cfdlab

@PraveenChandrashekar Chebyshev ทำงานได้ดีขึ้นเพราะมีน้ำหนักมากขึ้นในส่วนนอกของช่วงเวลาซึ่งฟังก์ชั่นนั้นเรียบ ดังนั้นการหลีกเลี่ยงการแกว่งมากเกินไป แต่การบอกว่ามันใกล้เคียงกับการทำงานที่ดีกว่านั้นน่าสงสัย - โดยเฉพาะการเลี้ยวที่คมชัดที่ยิ่งแย่กว่าเครื่องแบบจุดแยกหรือL 2 -imimation หากเป้าหมายของคุณคือหลีกเลี่ยงส่วนประกอบที่มีความถี่สูงควรใช้การแปลงแบบอินทิกรัลที่ดีกว่าเพื่อลดความชื้นของส่วนประกอบเหล่านี้ x=0L2
leftaroundabout

มันเป็นเรื่องที่สมบูรณ์แบบที่จะมีจุดที่ไม่เหมือนกันในการแก้ไข Chebyshev ด้วยระดับประมาณ 20 จะให้การประมาณที่แม่นยำกว่า Legendre ที่คุณแสดงในโพสต์ วัดข้อผิดพลาดที่จะเชิงปริมาณมากขึ้น คุณสามารถทำแบบประมาณ Chebyshev เป็น | x | ซึ่งแม่นยำกว่าการขยาย Legendre
cfdlab

@PraveenChandrashekar ประเด็นก็คือว่าชื่อพหุนามอยู่ในหลักการที่ไม่สามารถประมาณฟังก์ชั่นเช่นอย่างถูกต้อง มีวิธีการที่แตกต่างกันซึ่งแต่ละอันไม่น่าตื่นเต้นมากกว่าหรือน้อยกว่าเล็กน้อย แต่ไม่มีวิธีใดที่ทำงานได้ดีในแง่ของ“ มีเพียงไม่กี่คำเท่านั้นที่ให้บางสิ่งที่อาจผิดสำหรับฟังก์ชั่นดั้งเดิม” หากคุณต้องใช้ชื่อที่ประกอบด้วยหลายคำคุณต้องพิจารณาว่าข้อผิดพลาดชนิดใดที่เป็นปัญหามากกว่า Legendre และ Chebyshev มีกรณีการใช้งานของพวกเขา แต่ไม่มีกระสุนเงิน ในที่สุดวิธีการที่มีเส้นโค้งเช่นมักจะมีประสิทธิภาพมากขึ้น x|x|
leftaroundabout

เรารู้ว่าไม่มีวิธีที่สมบูรณ์แบบ คำถามคือสิ่งที่ฟังก์ชั่นนั้นยากสำหรับการประมาณชื่อพหุนาม ดังนั้นเราต้องเห็นวิธีที่เป็นไปได้ทั้งหมดที่เกี่ยวข้องกับพหุนามเพื่อสรุปว่าไม่มีวิธีใดที่ทำได้ดี The Legendre ไม่ใช่วิธีที่ดีที่สุดในการประมาณ | x | และด้วยเหตุนี้มันจึงให้ความรู้สึกที่ผิดพลาดซึ่งมีหลายชื่อที่ไม่ดีสำหรับ | x | ด้วย Chebyshev คุณมีการบรรจบกันและการประมาณที่ดีกว่า Legendre พวกเขาไม่ได้สั่นคลอนมากอย่าง Legendre แม้ว่าจะมาบรรจบกันอย่างช้า ๆ ใกล้ x = 0 ซึ่งฟังก์ชั่นไม่ราบรื่นพอ
cfdlab

10

มันเป็นกรณีทางพยาธิวิทยา แต่คุณสามารถใช้ฟังก์ชันมอนสเตอร์ Weierstrassได้ตลอดเวลา มันแสดงให้เห็นถึงจุดที่กว้างขึ้นนั่นคือฟังก์ชั่นที่ไม่ราบรื่น - เช่นที่มีหงิกงอ - ยากที่จะประมาณได้เนื่องจากการประมาณค่าความคลาดเคลื่อนการประมาณค่าผิดพลาดจำเป็นต้องใช้ฟังก์ชันที่ถูกแก้ไขเพื่อให้สามารถหาค่าได้หลายครั้ง กล่าวอีกนัยหนึ่งถ้าคุณไม่ชอบฟังก์ชัน Weierstrass มากเกินไปคุณสามารถเลือก.|x|


ขอบคุณนี่คือสิ่งที่ฉันหมายถึงโดย "ฉันคิดเกี่ยวกับบางสิ่งบางอย่าง" ที่มีเสียงดัง " ตัวอย่างที่ดีมาก IMO
กล่องเสียง Decidua

6

การประมาณไม่เพียงทำให้ยากขึ้นโดยฟังก์ชันที่จะประมาณ แต่ตามช่วงเวลาที่การประมาณควรจะเป็น "แบบพอดี" และคุณควรกำหนดมาตรการสำหรับ "ความพอดี" คือข้อผิดพลาดสูงสุด (สัมบูรณ์หรือญาติ) ที่คุณต้องการทนคืออะไร

ประสบการณ์(x)[0,10]บาป(x)[0,2π]ป้อนคำอธิบายรูปภาพที่นี่ป้อนคำอธิบายรูปภาพที่นี่


ฉันแสดงตัวอย่างดังกล่าวในหลักสูตรของฉันเพื่อทำให้ประเด็นที่ว่าการขยายตัวของเทย์เลอร์ไม่ใช่วิธีที่ดีสำหรับฟังก์ชั่นโดยประมาณ
cfdlab

6

พหุนามมีประสิทธิภาพอย่างน่าประหลาดใจที่ฟังก์ชันประมาณ [1] หากคุณมีความต่อเนื่องของ Lipschitz เป็นอย่างน้อยการประมาณ Chebyshev จะมาบรรจบกัน แน่นอนว่าการลู่เข้าอาจช้าและนั่นคือราคาที่เราจ่ายสำหรับการจัดการกับฟังก์ชั่นที่ไม่ราบรื่น

วันนี้คอมพิวเตอร์เร็วกว่าวันที่เขียนหนังสือการวิเคราะห์เชิงตัวเลขจำนวนมากและอัลกอริธึมที่ชาญฉลาดได้เพิ่มความเร็วขึ้นอีกเพื่อให้การใช้คำศัพท์มากขึ้นอาจไม่เลวเท่าที่เคยเป็นมา

ตัวอย่างทางพยาธิวิทยาเช่นฟังก์ชั่นมอนสเตอร์ Weierstrass น่าสนใจจากมุมมองทางทฤษฎี แต่ไม่ได้เป็นตัวแทนของบริบทการใช้งานจริงมากที่สุด

|x|x=0

เป็นสิ่งสำคัญที่จะต้องสอนความยากลำบากในการประมาณค่าด้วยพหุนาม แต่ก็สำคัญที่จะต้องบอกนักเรียนว่าเราสามารถสร้างการประเมินข้อผิดพลาดและอัลกอริทึมแบบปรับตัวที่สามารถจัดการกับปัญหาเหล่านี้ได้

[1] https://people.maths.ox.ac.uk/trefethen/mythspaper.pdf

[2] http://www.chebfun.org


+1 สำหรับการเชื่อมโยง "กระดาษตำนาน" โดย Lloyd Trefethen การสำรวจที่ดีมากของ IMO หัวข้อขอบคุณ
Laryx Decidua

2

(x)=1x2+1

1x2+1=1-x2+x4-x6+x8-x10+x12-...

สิ่งนี้มาบรรจบกัน -1<x<1แต่มันเบี่ยงเบนไปทุกที่อื่น การประมาณพหุนามประมาณx=0 จะไม่ได้รับคุณทุกที่ใกล้คำตอบที่ถูกต้องสำหรับ x=2.


0

Y=sผมn(x)? ฟังก์ชั่นเป็นระยะ ๆ นั้นยากที่จะประมาณโดยใช้พหุนามยกเว้นว่ามีตัวเลือกในการ จำกัด พหุนามให้อยู่ในช่วง จำกัด


หรือแม้กระทั่ง Y=บาป(1x)หากคุณต้องการได้รับป่ารอบต้นกำเนิด
sfmiller940
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.