אינטרפולציה

מתוך ויקיפדיה, האנציקלופדיה החופשית
קפיצה אל: ניווט, חיפוש

אינטרפולציהאנגלית: Interpolation) היא שם כולל לשיטה בתחום האנליזה הנומרית. הרעיון המרכזי העומד מאחורי גישה זו הוא האפשרות לייצר מידע חדש מאוסף נתונים סופי. בפרט, היכולת לשחזר או ליצור פונקציה שערכה או נגזרותיה ידועים בנקודות מסוימות.

בשימושים ההנדסיים, פיזיקליים וכדומה - מטרת האינטרפולציה היא להתאים פונקציה שתקרב בצורה הטובה ביותר את התנהגותו האמיתית של אובייקט הניסוי. לדוגמה, נניח שבמסגרת ניסוי פיזיקלי נדגום מיקום של גוף במרחב בכל 5 שניות, כשהניסוי נמשך דקה. נקבל 13 נתונים: מיקומו של הגוף בזמן ההתחלה, מיקומו כעבור 5 שניות וכן הלאה. ברור כי אוסף מידע זה אינו מספק את כל המידע על התנהגות הגוף בכל נקודת זמן שהיא במהלך דקת הניסוי. בשלב זה נכנס כלי האינטרפולציה לפעולה ומאפשר ליצור פונקציה המגדירה את המיקום המשוער לכל אורך הניסוי על בסיס הנתונים שנדגמו.

הגדרה[עריכת קוד מקור | עריכה]

בהינתן סדרה של  n נקודות  x_k הנקראות צמתים ו- n נקודות מתאימות  y_k , אזי הפונקציה:

 f(x) : f(x_i) = y_i \quad \forall i=1 \ldots n

נקראת אינטרפולציה של נקודות המידע  (x_i,y_i),i=1\ldots n.

דוגמה[עריכת קוד מקור | עריכה]

נקודות מידע לאינטרפולציה

נניח כי נתונות 6 נקודות המידע הבאות, המיצגות למשל תוצאות מדידה כלשהי:

x \ f(x)
0 0
1 0.8415
2 0.9093
3 0.1411
4 0.7568-
5 0.9589-
6 0.2794-

נרצה לדעת מה ערך הפונקציה הנעלמת בנקודה  x=2.5 - לשם כך נוכל להיעזר באינטרפולציה.

כאן המקום להסביר, כי אינטרפולציה הוא שם למגוון רחב של כלים נומרים אשר מטרתם לאפשר קירוב של פונקציה שאינה ידועה, או לקרב על ידי עקום נקודות במישור או במרחב (או שילוב של שני האלמנטים הללו). לכל שיטת אינטרפולציה יש יתרונות וחסרונות, ולפני בחירת שיטה זו או אחרת יש להתייחס לכמה בחינות, כגון: מידת החלקות של הפונקציה המבוקשת, מספר נקודות המידע העומדות לרשותינו, מידת הדיוק הדרושה, כמות משאבי החישוב הנדרשים כדי לעמוד בדרישותינו, ועוד. לאחר שנענה על שאלות מסוג זה נוכל לבחור בשיטה לביצוע אינטרפולציה. בדרך כלל ננסה לדעת בנוגע לכל שיטת איטנרפולציה מהי מידת החלקות של הפונקציה המתקבלת מחד, ומאידך לחקור את ה"טעות" המתקבלת מחישוב ערכים חדשים על ידי הפונקציה המתקבלת מהאינטרפולציה.

אינטרפולציה לינארית[עריכת קוד מקור | עריכה]

אינטרפולציה לינארית של הנקודות מהדוגמה

בשיטה זו, שהיא הפשוטה ביותר לחישוב, נחבר בקו ישר כל שתי נקודות מידע עוקבות. באופן כללי, בהינתן:  (x_a,y_a),(x_b,y_b) שתי נקודות מידע עוקבות, אזי הפונקציה הלינארית המחברת אותן היא:

 f(x) = \frac{x-x_b}{x_a-x_b} y_a - \frac{x-x_a}{x_a-x_b} y_b

כעת נוכל לענות על השאלה מה ערכה של הפונקציה בנקודה  x=2.5. נעשה זאת על ידי בחירת  x_a = 2, x_b = 3 והצבת הערך המבוקש בפונקציה המתקבלת.

ברור כי מחד גישה זו קלה לחישוב, אך מאידך תוצאתה אינה מדויקת על פי רוב.

חסרון נוסף בשיטה זו היא שהפונקציה המתקבלת אינה גזירה בנקודות  x_k (הצמתים).

אינטרפולציה באמצעות פולינום[עריכת קוד מקור | עריכה]

אינטרפולציה פולינומית של הנקודות מהדוגמה

אינטרפולציה באמצעות פולינום היא הכללה של האינטרפולציה הלינארית. בהינתן אוסף נקודות  (x_k,y_k),k=1\ldots n קיים פולינום אחד ויחיד ממעלה שאינה עולה על \ n-1 אשר עובר דרך כל הנקודות הנתונות, וכל שנותר הוא לחשב אותו.

צורת לגראנז'[עריכת קוד מקור | עריכה]

דרך אחת לחשב את הפולינום היא באמצעות השיטה שמכונה "הפולינום בצורת לגראנז'": עבור אוסף הנקודות, הפולינום בצורת לגראנז' המתאים הוא:

 p(x) = \sum_{j=1}^{n} y_j \prod_{k=1;k \neq j}^{n} \frac{x-x_k}{x_j-x_k}

קל לראות כי לכל \ q \neq j מתקיים \ P_j(x_q) = 0 וכן: \ P_j(x_j) = y_j . לכן ברור כי:  \forall k: P(x_k) = y_k , כלומר הפולינום שהוגדר בצורת לגראנז' אכן עובר דרך הנקודות הנתונות.

צורת ניוטון[עריכת קוד מקור | עריכה]

דרך נוספת לחשב את הפולינום היא באמצעות צורת ניוטון. לשיטה זו יתרונות על פני השיטה הקודמת בכך שהיא דורשת פחות פעולות חישוב, וקל להוסיף לפולינום הקיים נקודות נוספות, בעוד שבשיטת לגראנז' יש לחשב הכול מחדש.

צורת ניוטון מחושבת כך:

\ p(x) = \sum_{i=1}^{n} [x_1,x_2,\dots,x_i]\prod_{k=1}^{i-1}\left(x-x_k\right)

כאשר הביטוי  [x_1,x_2,\dots,x_i] נקרא "הפרש מחולק", והוא מוגדר בצורה הרקורסיבית הבאה:

 \ [x_k]=y_k

 [x_1,x_2,\dots,x_k]=\frac{[x_2,\dots,x_k]-[x_1,x_2,\dots,x_{k-1}]}{x_k-x_1}

שיטה זו מניבה אותו הפולינום שהניבה שיטת לגראנז', אך השימוש בה יעיל יותר; כדי להוסיף נקודה נוספת לאינטרפולציה די לחשב את האיבר החדש שמוסיפים לסכום, ואין צורך לחשב את הסכום כולו מחדש.

ראו גם[עריכת קוד מקור | עריכה]