אינטרפולציה ליניארית

שמאל|ממוזער|300x300 פיקסלים|בהינתן שתי הנקודות האדומות, הקו הכחול הוא אינטרפולנט ליניארי בין הנקודות, ואת הערך ''של y'' עבור ''x'' ניתן למצוא על ידי אינטרפולציה ליניארית.
במתמטיקה, **אינטרפולציה ליניארית** היא שיטה של התאמת עקומה תוך שימוש בפולינום ליניארי כדי לבנות נקודות חדשות בטווח של נקודות נתונים בדידות ידועות.

## אינטרפולציה ליניארית בין שתי נקודות ידועות
ממוזער|בהמחשה הגאומטריות שלמעלה, הערך על העיגול הירוק כפול המרחק בין העיגול הכחול לאדום, שווה לסכום הערך בעיגול האדום כפול המרחק בין העיגול הירוק לכחול, והערך בעיגול הכחול כפול המרחק בין העיגול הירוק לאדום.
אם שתי נקודות ידועות ניתנות על ידי הקואורדינטות (x_0,y_0) ו (x_1,y_1), האינטרפונט הליניארי הוא קו ישר בין נקודות אלה. עבור ערך *x* במרווח (x_0, x_1) את הערך *y* לאורך קו ישר ניתן למצוא על ידי המשוואה:
:
\frac{y - y_0}{x - x_0} = \frac{y_1 - y_0}{x_1 - x_0}

אשר יכול להיות נגזר גאומטרית מן האיור משמאל. זהו מקרה מיוחד של אינטרפולציה פולינומית עם *n*&#x20;=&#x20;1.

פתרון המשוואה עבור *y*, כאשר ידוע ערך *x*, נותן:
:y = y_0 + (y_1-y_0)\frac{x - x_0}{x_1-x_0} 

וזו הנוסחה של אינטרפולציה ליניארית במרווח (x_0,x_1). מחוץ למרווח זה, הנוסחה זהה לאקסטרפולציה.

נוסחה זו יכולה גם להיות מובנת כממוצע משוקלל. המשקלים תלויים ביחס הפוך למרחק בין נקודות הקצה לנקודה ידועה; לנקודה קרובה יותר יש השפעה רבה יותר מאשר לנקודה רחוקה. לפיכך, המשקולות הם \frac{x-x_0}{x_1-x_0} ו \frac{x_1-x}{x_1-x_0} אשר הן מרחקים מנורמלים בין הנקודה הלא ידועה, ונקודות הקצה הידועות. מכיוון שאלו נסכמות ל-1:
:y = y_0 \left(1-\frac{x - x_0}{x_1-x_0}\right) + y_1 \left(1-\frac{x_1 - x}{x_1-x_0}\right) = y_0 \left(1-\frac{x - x_0}{x_1-x_0}\right) + y_1 \left(\frac{x - x_0}{x_1-x_0}\right) 

אשר מניב את נוסחת האינטרפולציה הליניארית הנתונה לעיל.

## אינטרפולציה של קבוצת נתונים
שמאל|ממוזער|300x300 פיקסלים|אינטרפולציה ליניארית על מערך נתונים (נקודות אדומות) מורכב ממקטעים של אינטרפולנטים ליניאריים (קווים כחולים).
אינטרפולציה ליניארית על קבוצה של נקודות נתונים (x_0,y_0), (x_1,y_1), (x_2,y_2) ... (x_n,y_n) מוגדר כשרשור אינטרפולנטים ליניאריים בין כל זוג של נקודות נתונות. התוצאה היא עקומה רציפה, בדרך כלל עם נגזרת בלתי-רציפה, היינו פונקציה חלקה - C^0.

## אינטרפולציה ליניארית כקירוב
אינטרפולציה ליניארית משמשת לעיתים קרובות כדי לאמוד ערך של פונקציה מסוימת *f* באמצעות שני ערכים ידועים של הפונקציה בנקודות אחרות. *השגיאה* של קירוב זה מוגדרת:
:R_T = f(x) - p(x) \,\!

כאשר *p* מציין את פולינום האינטרפולציה הליניארית שהוגדר לעיל
:p(x) = f(x_0) + \frac{f(x_1)-f(x_0)}{x_1-x_0}(x-x_0). \,\!

ניתן להוכיח באמצעות משפט רול שאם ל- *f* נגזרת שנייה רציפה, השגיאה תחומה על ידי:
:|R_T| \leq \frac{(x_1-x_0)^2}{8} \max_{x_0 \leq x \leq x_1} |f*(x)|. \,\!</math>

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

== יישומים ==
אינטרפולציה ליניארית משמשת לעיתים קרובות כדי למלא פערים בטבלה. נניח שיש טבלה שמכילה אוכלוסיית ארץ מסוימת ב-1970, 1980, 1990 ו-2000, ורוצים להעריך את האוכלוסייה ב-1994. אינטרפולציה ליניארית היא דרך קלה לעשות את זה.

הפעולה הבסיסית של אינטרפולציה ליניארית בין שני ערכים נפוצה ב[[גרפיקה ממוחשבת]]. בז'רגון, פעולה זו נקראת *'lerp*'. המונח יכול לשמש [[פועל (בלשנות)|פועל]] או [[שם עצם]] של הפעולה. 

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

== הרחבות ==
[[קובץ:Bilininterp.png|שמאל|ממוזער|דוגמה [[אינטרפולציה ביליניארית]] על מרובע היחידה עם z-הערכים 0, 1, 1, 0.5, כמצוין. ערך האינטרפולציה בכל נקודה מיוצג על ידי הצבע באותה נקודה]]
[[קובץ:Piecewise_linear_function2D.svg|שמאל|ממוזער|חיבור משטחים של פונקציה ליניארית בשני ממדים (למעלה) ו מצולעים קמורים שבהם הוא ליניארי (למטה).]]
=== דיוק ===
אם פונקציית [[פונקציה חלקה|*C0*]] אינה מספיקה, למשל אם התהליך הזה הפיק נקודות נתונים הידועות כחלקות יותר מ - *C0*, מקובל להחליף אינטרפולציה ליניארית עם "אינטרפולציית שֶׁגֶם" (spline interpolation), או אפילו אינטרפולציה פולינומית במקרים מסוימים.

=== רב משתנים ===
אינטרפולציה ליניארית כפי שמתוארת כאן היא עבור נקודות נתונים בממד המרחבי הבודד. במקרה של שני ממדים מרחביים, הרחבה של אינטרפולציה ליניארית נקרא [[אינטרפולציה ביליניארית|אינטרפולציה בילנארית]], בשלושה ממדים, אינטרפולציה תרילינארית. יש לשים לב, כי אינטרפולנטים אלו כבר אינם פונקציות ליניאריות של קואורדינטות מרחביות, אלא תוצרים של פונקציות ליניאריות; תופעה זו של איבוד ליניאריות באה לידי ביטוי בבירור באיור שלמטה של [[אינטרפולציה ביליניארית|אינטרפולציה בילנארית]]. הרחבות אחרות של אינטרפולציה ליניארית יכולות להיות מיושמות בסוגים אחרים של רשת (mesh), כגון רשת משולשת או טטראהדרלית, כולל "משטח בזייה" (Bézier surface). אלה עשויים להיות מוגדרים כ[[פונקציה ליניארית למקוטעין|פונקציה ליניארית]] רב ממדית (האיור התחתון).

== ראו גם ==
* [[עקום בזייה]]

== קישורים חיצוניים ==
* [http://tools.timodenk.com/?p=linear-interpolation אינטרפולציה ליניארית באינטרנט חישוב והדמיה כלי]
* [http://www.cut-the-knot.org/Curriculum/Calculus/StraightLine.shtml משוואות הקו הישר] על Cut-the-knot
* [https://web.archive.org/web/20160805015603/http://www.blueleafsoftware.com/Products/Dagra/LinearInterpolationExcel.php יישום אינטרפולציה ליניארית ב-Microsoft Excel]
* <cite class="citation" id="CITEREFHazewinkel2001">Hazewinkel, מיכאל, אד. (2001), [http://www.encyclopediaofmath.org/index.php?title=p/l059330 "אינטרפולציה ליניארית"], *אנציקלופדיה של המתמטיקה*, [[הוצאת שפרינגר|שפרינגר]], [[מסת"ב|ISBN]]: 978-1-55608-010-4</cite><cite class="citation" id="CITEREFHazewinkel2001"></cite>
* <cite class="citation">Hazewinkel, מיכאל, אד. (2001), [http://www.encyclopediaofmath.org/index.php?title=p/f040300 "סופי-במרווחים נוסחה"], *אנציקלופדיה של המתמטיקה'', שפרינגר, ISBN: 978-1-55608-010-4
* לראות OrangeOwlSolutions על CUDA מימושים של אינטרפולציה ליניארית.
* APLJaK אינטרפולציה ליניארית מחשבון אחד מני רבים מחשבונים זמינים.

קטגוריה:אינטרפולציה
קטגוריה:אנליזה נומרית