Sunteți pe pagina 1din 7

2.

Interpolarea
În capitolele precedente ne-am ocupat de funcţii continue care puteau fi evaluate
relativ uşor. În practică apar însă numeroase cazuri în care funcţia apare ca un set de
valori discrete şi deseori se pune problems evaluării funcţiei pentru valori intermediare
punctelor date.
Cine nu-şi aminteşte, de exemplu, munca anostă din liceu când trebuia evaluat y
= lg x folosind tabelele de logaritmii. Atunci când x nu era în tabel trebuia început
procedeul de interpolare.
În acest caz se aplică cea mai simplă metoda de interpolare, interpolarea liniară.
Metoda de interpolare liniară presupune că variaţia funcţiei între două puncte date este
liniară. Nu în toate cazurile această metodă conduce la rezultate satisfăcatoare. Prin
generalizare au apărut metode care folosesc polinoame de interpolare. În aceste cazuri
se construiesc pentru fiecare interval polinoame de grad superior. Condiţia care se pune
este ca funcţia construită să fie continuă şi să treacă prin punctele nodale.
Există şi cazuri însă, când se impune ca şi derivatele funcţiei construite să fie
continue. Pentru aceste condiţii au apărut metodele "spline" care construiesc curbe
ajustate în aşa fel ca şi derivata de ordinul I sau şi derivatele de ordin superior să fie
continue. În toate aceste metode se presupune că valorile funcţiei în punctele nodale
sunt certe şi ca atare funcţia de interpolare construită trebuie să treacă prin aceste
puncte.
Mai sunt cazuri în care valorile funcţiei sunt rezultatul unor măsurători
experimentale sau de altă natură, care sunt afectate de erori. În aceste cazuri funcţia de
interpolare (care poate fi folosită pe un anumit domeniu şi ca extrapolare) nu trebuie să
treacă în mod obligatoriu prin punctele nodale, ci trebuie să reflecte tendinţa de variaţie
a datelor. Deşi aceasta este o problemă de corelare statistică a datelor, vom trata în acest
capitol şi metoda celor mai mici pătrate: ea fiind foarte des întâlnită în practica
inginerească.

2.1. Interpolarea liniară

Dându-se un set de puncte ordonate (puncte nodale) Pi(xi, yi), i=(1,n) (fig.9.1) se
pune problema determinării valorii y* = f(x*) pentru orice x1≤x*≤xn. Având n puncte,
vom avea (n-1) intervale.
O principală problemă la construirea unui algoritm de interpolare, atât prin
aceasta metodă cât şi prin cele care urmează, este determinarea intervalului în care se
găseşte x* pentru care se urmăreşte determinarea valorii interepolate a funcţiei.
Fig.2.1. Principiul metodei de interpolare
liniară.

Dat fiind setul de valori ordonate pentru x, numărul de ordine al intervalului se


află prin comparaţii succesive, aşa că x* se află în intervalul 1 atunci când x1≤ x*≤xi+1.
Scriem atunci ecuaţia dreptei prin punctele Pi fi Pi+1:
y − yi y − yi
= i +1 (1)
x − xi xi +1 − xi
de unde deducem:
y i +1 − y i
y* = y i + ( x * − xi ) (2)
xi +1 − xi
Această ecuaţie va fi scrisă pentru fiecare interval în parte, deci curba de
interpolare va fi formată din (n-1) segmente care au ca ecuaţie o ecuaţie de forma (2).
Se observă că pentru x*=xi avem y*=yi şi pentru x*=yi+1 rezultă y*=yi+1, deci funcţia de
interpolare verifică punctele de la capetele intervalului. În fiecare punct vom avea însă
două valori pentru derivata I: una la stânga şi cealaltă la dreapta punctului nodal,
diferite una de cealaltă; în calcule se va atribui una (oricare) din aceste două valori
pentru derivata I într-un punct nodal.

2.2. Metoda lui Lagrange

În cazul problemelor de interpolare, un singur lucru provoacă foarte mari


neajunsuri: de obicei nu se cunoaşte curba care interpolează perfect sau mai bine spus
nu se cunoaşte care expresia analitică a funcţiei care este descrisă de punctele nodale
date. După cum rezultă din figura 9.2, interpolarea liniara poate conduce la mari erori.
În acest caz valoarea interpolată depinde numai de valoarea funcţiei în cele două puncte
nodale alăturate. În general, valoarea funcţiei într-un punct nu depinde numai de cele
două puncte nodale vecine, ci şi de valorile funcţiei în celelalte noduri, deci de alura
generală a curbei dată de toate punctele nodale. În ideea reducerii erorilor de
interpolare au apărut metode care folosesc polinoame de interpolare de grad superior.

Fig.2.2. Eroarea în interpolarea liniară

Gradul polinomului de interpolare va depinde de numărul de puncte nodale


folosite pentru interpolare. Astfel, dacă se folosesc n puncte, nodul polinomului va fi (n-
1). Din păcate nu se poate cunoaşte încă de la început care este gradul optim al
polinomului de interpolare. Acest grad optim se evaluează abia ulterior când se verifică
dacă punctele interpolate se încadrează în tendinţa generală generată de întregul set de
puncte. Această evaluare trebuie în mod obligariu executată, deoarece pentru un grad
prea înalt al polinomului de interpolare se poate ajunge la situaţia descrisă de figura 3.
Aici chiar interpolarea liniară ar conduce la rezultate mult mai apropiate de realitate.

Fig. 2.4. Erori la interpolarea polinomială


de grad necorespunzător.
Polinomul de interpolare a lui Lagrange are forma generală:
n
y ( x) = ∑ y i ⋅ ai ( xi ) (3)
i =1

în care:
m x − xj
ai ( x) = ∏
x − xj
j= 1 i
(4)
j≠ i

şi unde m=(2, n) este numărul de puncte folosite pentru reprezentarea curbei de


interpolare pentru intervalul ales din cele (n-1) intervale date.
Se observă din (3) şi (4) că pentru m=2 se obţine formula de interpolare liniară
descrisă de relaţia (2).
Pentru m=3 se vor folosi trei puncte nodale adiacente iar curba interpolată este
de gradul doi. Obţinem deci o parabolă de interpolare pentru fiecare interval cu excepţia
intervalelor de capăt, (pentru primele două şi pentru ultimele două intervale se va
construi câte o singură parabolă de interpolare).
Şi în cazul interpolării polinomiale, dat fiind că pentru fiecare interval (cu
excepţia intervalelor de capăt) se construieşte câte o curbă de interpolare, curbele vor
trece prin punctele date, după cum rezultă de altfel din relaţiile (3) şi (4), pentru fiecare
punct nodal vom avea două derivate diferite una la stânga şi alta la dreapta punctului
nodal. Polinomul de interpolare poate fi folosit şi pentru intervalele adiacente, dar
eroarea făcută asupra valorii interpolate este mai mare; eroarea minimă la interpolare se
obţine pentru intervalul pentru care a fost construit polinomul.

2.3. Metoda celor mai mici pătrate

Fie Pi(xi, yi) un set de N puncte determinate prin observaţii într-un experiment
oarecare. Se care să se găsească legea analitică de variaţie a lui y în funcţie de x pe baza
analizei setului de puncte date. Se cere aşadar determinarea unei ecuaţii y=f(x).
Din păcate, aşa cum menţionam mai sus, nu putem şti încă de la început care este
polinomul care reprezintă cel mal bine datele, totuşi în foarte numeroase cazuri se
cunoaşte că variaţia este liniară şi ca atare în aceste cazuri se cere numai să se
determine care sunt parametri dreptei care aproximează cel mai bine aceste puncte.
Fie, de exemplu, setul de puncte din figura 4. Dat fiind că datele sunt rezultatul
unui experiment, abaterile punctelor de la o dreaptă, care reprezintă de fapt legea de
variaţie în acel experiment, sunt de natură statistică. Având în vedere acest lucru
punctele care au abateri foarte mari de la tendinţa de variaţie, cum este punctul A din
figura 4, vor fi eliminate încă de începutul procesului de calcul.
Fig. 2.5. Principiul metodei celor mai mici pătrate

Se presupune deci că, după eliminarea punctelor necorespunzătoare, au rămas n


puncte Pi (xi,yi).
Ecuaţia dreptei este:
y* = a + b ⋅ x (5)
Problema celor mai mici pătrate constă în determinarea parametrilor a şi b astfel
ca suma pătratelor abaterilor între punctele date şi cele de pe dreapta interpolată să fie
minimă.
Valoarea ordonatei unui punct xi de pe dreaptă este:
y i* = a + b ⋅ xi (6)
aşa că abaterea punctului Pi de la dreaptă este:
ε i = y i − yi
*
(7)
Se observă că abaterile εi pot fi pozitive sau negative. Pentru ca aceste abateri să
nu se anuleze reciproc la însumare, ajungându-se la un minim al sumei abaterilor fără ca
totuşi dreapta trasată să reprezinte legea de variaţie căutată, se impune ca suma
pătratelor abaterilor să fie minimă, adică:
S = ∑ε i2 = min . (8)
sau folosind (7) în (8):
n 2

S = ∑ ( a + b ⋅ xi − y i ) = min . (9)
i =1

Pentru ca (9) să aibă loc, trebuie ca:


 ∂S
 ∂ a = 0
 , (10)

 =0 S
 ∂ b
ceea ce conduce la:
n
 ∑ 2( a + b ⋅ xi − yi ) ⋅ (+ 1) = 0
 i= 1
n . (11)
 2( a + b ⋅ x − y ) ⋅ ( x ) = 0
 ∑i= 1 i i i

Ţinând seama că însumările se extind asupra tuturor datelor şi simplificând,


obţinem sistemul:
 n n

 n ⋅ a + ∑ xi = ∑ y i
 i= 1 i= 1
 n n n
, (12)
 a ⋅ x + b ⋅ x2 = x ⋅ y
 ∑i= 1 i ∑i= 1 i ∑i= 1 i i
care are soluţiile:
n n n n

∑ xi2 ⋅ ∑ yi − ∑ xi ⋅ ∑ xi ⋅ yi
a= i =1 i =1 i =1 i =1
2 , (13)
 n 
n
n ⋅ ∑ x −  ∑ xi 
2
i
i =1  i =1 

n n n
n ⋅ ∑ xi y i − ∑ x i ⋅ ∑ y i
b= i =1 i =1 i =1
2 , (14)
 n
 n
n ⋅ ∑ x −  ∑ xi 
2
i
i =1  i =1 
Se remarcă faptul că s-au folosit abaterile punctelor după y pentru un x dat. Acest
mod de lucru se mai numeşte regresie liniară a lui y în raport cu x. Analog se poate
executa o regresie liniară a lui x în raport cu y, dar cum este de aşteptat, dreapta găsită
în acest caz va fi diferită de cea determinată anterior.
Mai trebuie spus că în caz că punctele observate în experiment nu indică o lege de
variaţie liniară, în locul relaţiei (6) se poate folosi o relaţie polinomială de ordin
superior. Modul de lucru este similar celui redat mai sus. Problema care se pune însă
este determinarea gradului polinomului care aproximează cel mai bine legea de variaţie.
În orice caz, pentru aceste tipuri de probleme se impune executarea unor teste de
semnificaţie.