Sunteți pe pagina 1din 125

PROBLEMA

APROXIMĂRII
FUNCȚIILOR
Tema N3
Problema aproximării funcțiilor definite pe o mulțime discretă de puncte

În rezolvarea problemelor de aplicație suntem puși în situația de a modela funcții definite doar prin
valorile lor în anumite puncte, nefiind cunoscute expresiile analitice ale acestora. Vom admite că este
cunoscută evoluția unui sistem la momentele ( x0 , y0 ) , ( x1 , y1 ) , ......, ( xn−1 , yn−1 ) , ( xn , yn ) (la momentul x0

sistemul se află în starea y0 ; la momentul x1 - în starea y1 ; …; la momentul xn - în starea y n ). Se pune

problema de a evalua starea sistemului în momente intermediare x  ( x0 , xn ) în condițiile în care este dificil

sau chiar imposibil de realizat acest lucru pe cale experimentală. Altfel spus, problema constă în a stabili o
metodă de calcul al valorilor funcției y = f ( x ) , ce descrie evoluția sistemului, în puncte intermediare celor

date. De fapt, de cele mai dese ori este posibilă doar aproximarea valorilor cerute.
Problema aproximării funcțiilor definite pe o mulțime discretă de puncte
Problema aproximării funcțiilor definite pe o mulțime discretă de puncte

Exemplul 1.1. În tabelul 1.1 sunt date ratele dobânzilor anuale și plățile lunare pe un credit ipotecar
pentru 5 ani. Dați o estimație pentru plata lunară corespunzătoare unei rate a dobânzii anuale de 8,25% în
anul 2013.
Tabelul 1.1.
Rata dobânzilor anuale Plata lunară
Anul
(în procente) (în euro)
2010 7.5 665.3
2011 10 877.57
2012 8 733.76
2014 9 804.62
Problema aproximării funcțiilor definite pe o mulțime discretă de puncte

Exemplul 1.2. Utilizând datele din tabelul 1.2 cu privire la populația Republicii Moldova (exceptând
teritoriul din stânga Nistrului) în perioada 1970 – 2013, estimați care a fost populația în 1968, 1978, 2002,
2015. Comparați estimațiile obținute cu rezultatele cunoscute: în 1968 – 2.96 miloane; 1978 – 3.339
miloane; 2002 – 3.623 milioane; 2015 – 3.555 milioane.
Tabelul 1.2.
Anul 1970 1975 1980 1985 1990 1995 2000 2005 2010 2013
Populația 3.045 3.252 3.397 3.57 3.696 3.675 3.64 3.595 3.562 3.559
(în milioane)
Problema aproximării funcțiilor definite pe o mulțime discretă de puncte

Un procedeu general aplicat la rezolvarea problemei formulate constă în aproximarea funcției f ( x )

cu o funcție g ( x ) a cărei expresie analitică este definită și evaluarea acesteia din urmă în punctele necesare

x   x0 , xn  . Metodele de aproximare a funcțiilor au ca obiectiv apropierea cât mai mare a graficului funcției

ce aproximează de graficul funcției aproximate. În problema de aproximare a funcției f ( x ) prin funcția

g ( x ) se va defini un criteriu de evaluare a aproximării. De regulă, criteriile de aproximare sunt de două

tipuri:
a) Se impune ca funcția g ( x ) să aproximeze cât mai bine valorile cunoscute (și nu numaidecât graficul

acesteia să treacă prin punctele date). Un exemplu în acest sens îl reprezintă metoda de aproximare
în sensul celor mai mici pătrate.
b) Se impune ca graficul funcției de aproximare să treacă prin punctele date:
g ( xi ) = yi ( = f ( xi ) ) , i = 0, n .

Procedeul respectiv este numit interpolare a funcției.


Problema aproximării funcțiilor definite pe o mulțime discretă de puncte

Se recomandă ca expresia analitică a funcției de aproximare g ( x ) să fie cât mai simplă. În acest sens,

pentru realizarea procedurii de aproximare a unei funcții, frecvent sunt utilizate polinoamele algebrice de
grad mai mic sau egal cu n din spațiul
 n

Pn :=  g :  x0 , xn  → g ( x ) =  ai x i , ai  , i = 1, n  .
 i =0 
Problema aproximării funcțiilor definite pe o mulțime discretă de puncte
Baza teoretica a aproximării cu polinoame o constituie teorema de aproximare a lui
Weierstrass, conform căreia orice funcție continuă f ( x ) , definită pe un interval închis și

mărginit  a, b , poate fi aproximată uniform cu orice precizie   0 dinainte dată, folosind

funcții polinomiale pn ( x ) (a se vedea figura 1.1):

f ( x ) − pn ( x )   , x   a, b .

Însă teorema lui Weierstrass nu oferă un criteriu practic pentru determinarea polinomului
corespunzător.
Problema aproximării funcțiilor definite pe o mulțime discretă de puncte

Un alt raționament în utilizarea polinoamelor pentru aproximarea funcțiilor constă în


aceea că polinoamele sunt funcții simplu de evaluat și, ceea ce este mai important, pentru
acestea simplu se calculează analitic derivatele și integralele nedefinite, care sunt la fel
polinoame. Ținând cont că graficul unei funcții polinomiale de grad n poate fi construit,
cunoscând n + 1 puncte ale acestuia, prin interpolare polinomială vom înțelege problema de
aflare a polinomului de grad cel mult n ce trece prin n + 1 puncte date.
Aproximarea prin interpolare

Procedeul conform căruia funcția f ( x ) este aproximată cu o funcție continuă g ( x ) a cărei expresie

analitică este definită și al cărei grafic trece prin cele n + 1 puncte este numit interpolare. În acest caz,

punctele x j , j = 1, n sunt numite noduri de interpolare, iar funcția g ( x ) - funcție de interpolare. Cuvântul

interpolare provine de la: ,,inter = între” și ,,pole = punct sau nod”, deci interpolarea este o metodă de
determinare a unui punct al graficului funcției situat între doua puncte cunoscute. Cu ajutorul funcției de
interpolare se aproximează valorile funcției f ( x ) în puncte x distincte de nodurile de interpolare și care

aparțin intervalului  x0 , xn  . Procedeul de interpolare se aplică și la aproximarea unor funcții f ( x ) a căror

expresie analitică este definită, dar care este „dificil” de evaluat.


Încă 2 exemple în care se poate aplica aproximarea prin interpolare

▪ Exemplul 1.3. Fiind măsurată salinitatea apei oceanice la adâncimile 0, 100, 200, ... , 500
m, este necesar de determinat care este salinitatea acesteia la orice adâncime între 0 si
500 m. Problema poate fi rezolvată prin modelarea graficului variației salinității în baza
datelor obținute experimental. Evident, graficul modelat poate să difere de cel real, dar la
adâncimile, în care salinitatea este cunoscută exact, valorile de pe grafice vor coincide.

▪ Exemplul 1.4. Temperatura unui pacient este măsurată pe parcursul a 24 ore la intervale
de 4 ore. Se va construi graficul de temperaturi ale pacientului pe durata unei zile. Graficul
modelat al temperaturii poate să difere de cel real, dar în momentele măsurărilor de
temperatură, acestea vor coincide.
Formularea problemei de interpolare polinomială

Fie pentru funcția continuă f :  x0 , xn  → cunoscute valorile ei yi = f ( xi ) în nodurile rețelei

 := {xi }in=0 , a  x0  x1  ...  xn  b (a, b  ) . Se va aproxima funcția f ( x ) pe intervalul  x0 , xn  cu un

polinom algebric de interpolare, adică se va construi polinomul algebric pm ( x) de grad minimal m , care în

nodurile xi , i = 0, n , ia valori egale cu yi :

pm ( xi ) = yi , i = 0, n . (1.3)

Folosind reprezentarea analitică a polinomului obținut, să se calculeze valoarea aproximativă a


funcției f ( x ) în punctul z   x0 , xn  , z  xi , i = 0, n .
Formularea problemei de interpolare polinomială

În mod firesc pot fi formulate următoarele întrebări:


1. există oare polinomul pm ( x ) = a0 + a1 x + a2 x 2 + ... + am x m ce satisface condițiile pm ( xi ) = yi , i = 0, n ?

2. dacă există polinomul pm ( x ) este oare acesta unic?

3. dacă există și este unic polinomul pm ( x ) , care este gradul său m ?

4. care este expresia polinomului pm ( x) în funcție de datele problemei de interpolare?


Existența și unicitatea polinomului de interpolare polinomială

Problema de interpolare formulată are soluție unică: pentru orice funcție continuă
f ( x ) și orice sistem de noduri distincte xi , i = 0, n , există un singur polinom algebric pm ( x)

de grad m  n ce satisface condițiile pm ( xi ) = yi , i = 0, n .

În continuare vom examina 2 abordări utilizate la soluționarea problemei de


interpolare polinomială: metoda directă de construcție a polinomului de interpolare și
metoda de construcție a polinomului de interpolare sub forma lui Lagrange.
Metoda directă de construcție a polinomului de interpolare

Polinomul de grad m scris sub forma pm ( x) = a0 + a1x + a2 x2 + ... + am xm are m + 1 coeficienți necunoscuți

a0 , a1 ,..., am . Deoarece condițiile pm ( xi ) = yi , i = 0, n , sunt în număr de n + 1, este natural să considerăm

m = n pentru a avea un număr de necunoscute egal cu numărul de condiții. Atunci, deoarece polinomul

pn ( x) = a0 + a1 x + a2 x2 + ... + an xn verifică condițiile pn ( xi ) = yi , i = 0, n , rezultă că coeficienții a0 , a1 ,..., an


sunt soluția sistemului de ecuații
a0 + a1 x0 + a2 x02 + ... + an x0n = y0

a0 + a1 x1 + a2 x1 + ... + an x1 = y1
2 n

 (1.4)

a + a x + a x 2 + ... + a x n = y
 0 1 n 2 n n n n
Metoda directă de construcție a polinomului de interpolare

Matricea coeficienților sistemului (1.4) este o matrice de tip Vandermonde:


1 x0 x02 x0n 
 n
1 x1 x12 x1 
V =  M ( n +1)( n +1) ( ).
 
 n

1 xn xn2 xn 
Metoda directă de construcție a polinomului de interpolare

Pentru calculul determinantului matricei de tip Vandermonde în cursul de algebră liniară a


fost stabilită formula:
1 x0 x02 x0n
x12 x1n
 (x − x ).
1 x1
det V = = i j
0 j i  n

1 xn xn2 xnn

Deoarece punctele xi sunt distincte, avem det V  0 , iar în baza teoremei lui Kramer,

sistemul (1.4) are soluție unică a0 , a1 ,..., an . Acest fapt demonstrează existența și unicitatea

polinomului de interpolare, deoarece componentele a0 , a1 ,..., an ale soluției sunt coeficienții

polinomului.
Metoda directă de construcție a polinomului de interpolare

Metoda directă de construcție a polinomului de interpolare constă în determinarea


soluției a0 , a1 ,..., an a sistemului (1.4) și înlocuirea acesteia în expresia polinomului

pn ( x) = a0 + a1 x + a2 x2 + ... + an xn . Însă în practică nu se aplică această metodă din cauza că


există procedee mai eficiente ce consumă un număr mai mic de operații aritmetice și un
volum de memorie ceva mai redus. În continuare, vom examina un procedeu de construcție
a unei exprimări speciale pentru polinomul de interpolare.
Metoda de construcție a polinomului de interpolare sub forma Lagrange

Conform acestei metode polinomul de interpolare este construit în două etape:


Etapa 1. Determinarea polinoamelor fundamentale Lagrange
Se determină polinoamele li  Pn , i = 0, n ce satisfac condițiile următoare:

li ( x0 ) = ... = li ( xi −1 ) = li ( xi +1 ) = ... = li ( xn ) = 0, li ( xi ) = 1 . (1.5)

Deoarece polinomul li ( x ) se anulează în punctele x0 , x1 ,..., xi −1 , xi +1 ,..., xn , conform teoremei

lui Bézout li ( x ) se divide cu produsul ( x − x0 )( x − x1 )  ...  ( x − xi −1 )( x − xi +1 )  ...  ( x − xn )


(pentru i = 0 se va considera ( x − x1 )  ...  ( x − xn ) ), care este un polinom de gradul n . Întrucât

li ( x ) este un polinom de grad maxim n , rezultă că acesta are forma următoare:

 (x − x ) ,
n
li ( x ) = ci ( x − x0 )( x − x1 )  ...  ( x − xi −1 )( x − xi +1 )  ...  ( x − xn ) = ci j
j = 0, j  i

unde ci este o constantă.


Metoda de construcție a polinomului de interpolare sub forma Lagrange

Condiția li ( xi ) = 1 permite determinarea constantei ci :

1 1
ci = = .
( i 0 )( i 1 ) ( i i −1 )( i i +1 ) ( i n )
− −   − −   −
 (x − x )
n
x x x x ... x x x x ... x x
i j
j = 0, j  i

Astfel, polinomul li ( x ) este de forma:

li ( x ) =
( x − x0 )( x − x1 )  ...  ( x − xi −1 )( x − xi +1 )  ...  ( x − xn )
= 
n
( x − xj )
.
( xi − x0 )( xi − x1 )  ...  ( xi − xi −1 )( xi − xi +1 )  ...  ( xi − xn ) j =0, j i ( xi − x j )
Polinoamele li ( x ) , i = 0, n sunt numite polinoame fundamentale de interpolare Lagrange.
Metoda de construcție a polinomului de interpolare sub forma Lagrange

Etapa 2. Determinarea polinomului de interpolare Lagrange


Polinomul de interpolare se va căuta sub forma
n
Ln ( x) =  yi li ( x) , (1.6)
i =0

unde li ( x ) , i = 0, n sunt polinoamele fundamentale Lagrange determinate la etapa I.

Polinomul Ln ( x ) este de grad cel mult n , asta chiar dacă fiecare polinom li ( x ) are gradul n

, în schimb, după însumare este posibil să se obțină coeficientul lui x n egal cu zero. La fel,
ținând cont că se satisfac condițiile (1.5), rezultă că polinomul Ln ( x ) satisface condițiile de

interpolare (1.3):

Ln ( x j ) =  yi li ( x j ) =  yi ij = y j , j = 0, n .
n n

i =0 i =0
Metoda de construcție a polinomului de interpolare sub forma Lagrange

Deoarece pentru noduri distincte x j , j = 0, n polinomul de interpolare este unic, rezultă că

polinomul definit prin relația (1.6) este cel căutat. Înlocuind polinoamele fundamentale de
interpolare Lagrange li ( x ) în relația (1.6), obținem

n
Ln ( x) =  yi
( x − x0 )( x − x1 )  ...  ( x − xi −1 )( x − xi +1 )  ...  ( x − xn ) n
=  yi 
n
( x − xj )
.
i =0 ( xi − x0 )( xi − x1 )  ...  ( xi − xi −1 )( xi − xi +1 )  ...  ( xi − xn ) i =0 j =0, j i ( xi − x j )
(1.7)
Polinomul definit prin relația (1.7) este numit polinom de interpolare sub forma lui
Lagrange.
Metoda de construcție a polinomului de interpolare sub forma Lagrange

Cazuri particulare:
Pentru n = 1 avem două noduri x0  x1 . Atunci polinomul de interpolare sub forma lui

Lagrange se scrie astfel:


1 1 x − xj x − x1 x − x0
L1 ( x ) =  yi  = y0l0 ( x ) + y1l1 ( x ) = y0 + y1 .
i =0 j = 0, j i xi − x j x0 − x1 x1 − x0
Metoda de construcție a polinomului de interpolare sub forma Lagrange

Pentru n = 2 avem trei noduri x0  x1  x2 , iar polinomul de interpolare Lagrange

L2 ( x ) ia forma:
2 2 x − xj
L2 ( x ) =  yi  = y0l0 ( x ) + y1l1 ( x ) + y2l2 ( x ) =
i =0 j = 0, j i xi − x j

= y0
( x − x1 )( x − x2 ) + y ( x − x0 )( x − x2 ) + y ( x − x0 )( x − x1 ) .
( x0 − x1 )( x0 − x2 ) 1 ( x1 − x0 )( x1 − x2 ) 2 ( x2 − x0 )( x2 − x1 )
Metoda de construcție a polinomului de interpolare sub forma Lagrange

Pentru n = 3 avem patru noduri x0  x1  x2  x3 , iar polinomul L3 ( x ) ia forma:


3
L3 ( x ) =  yi
3 x − xj ( x − x1 )( x − x2 )( x − x3 )
i =0

j = 0, j i xi − x j
= y0l0 ( x ) + y1l1 ( x ) + y2l2 ( x ) + y3l3 ( x ) = y0
( x0 − x1 )( x0 − x2 )( x0 − x3 )
+

+ y1
( x − x0 )( x − x2 )( x − x3 )
+ y2
( x − x0 )( x − x1 )( x − x3 )
+ y3
( x − x0 )( x − x1 )( x − x2 )
.
( x1 − x0 )( x1 − x2 )( x1 − x3 ) ( x2 − x0 )( x2 − x1 )( x2 − x3 ) ( x3 − x0 )( x3 − x1 )( x3 − x2 )
Metoda de construcție a polinomului de interpolare sub forma Lagrange
Metoda de construcție a polinomului de interpolare sub forma Lagrange
Metoda de construcție a polinomului de interpolare sub forma Lagrange

Efortul de calcul pentru evaluarea polinomului Lagrange în punctul z conform formulei (1.7) este de
4n 2 + 6n + 2 operații aritmetice (aditive și multiplicative). Complexitatea de ordinul O(4n 2 ) uneori este

inacceptabilă în practică și poate să conducă la apariția unor erori de calcul mari. Din această cauză au fost
elaborați alți algoritmi de calcul al valorilor polinomului de interpolare.
Metoda de construcție a polinomului de interpolare sub forma Lagrange

Pentru o scriere mai simplă a polinoamelor fundamentale de interpolare Lagrange se

consideră polinomul nodurilor n ( x ) :=  ( x − x j ) , a cărui derivată este


n

j =0

n ( x ) = ( x − x1 )  ...  ( x − xn ) + ( x − x0 )( x − x2 )  ...  ( x − xn ) + ...

+ ( x − x0 )  ...  ( x − xi −1 )( x − xi +1 )  ...  ( x − xn ) + ... + ( x − x0 )( x − x1 )  ...  ( x − xn−1 ) .

Fiind calculată în x = xi ultima sumă se reduce la un singur termen și anume

 (x − x ) .
n
n ( xi ) = ( xi − x0 )  ...  ( xi − xi −1 )( xi − xi +1 )  ...  ( xi − xn ) = i j
j = 0, j  i
Metoda de construcție a polinomului de interpolare sub forma Lagrange

Ținând cont de notațiile introduse, polinoamele fundamentale de interpolare Lagrange se


scriu sub forma
li ( x ) = n ( x ) ( ( x − x )   ( x ) ) , i = 0, n ,
i n i

iar polinomul de interpolare Lagrange are expresia


n
yi
Ln ( x) = n ( x )  .
i =0 ( x − xi ) n ( xi )
Dacă se calculează valorile polinomului Lagrange într-un număr mare de puncte
(diferite de nodurile rețelei de interpolare), atunci este avantajoasă următoarea formă:
n
Ln ( x) = n ( x )  ( ri ( x − xi ) ) , (1.9)
i =0

în care coeficienții ri (i = 0, n) sunt dați de relația ri = yi n ( xi ) .


Metoda de construcție a polinomului de interpolare sub forma Lagrange
Metoda de construcție a polinomului de interpolare sub forma Lagrange
Metoda de construcție a polinomului de interpolare sub forma Lagrange

Spre deosebire de cazul în care este utilizată formula (1.7), calculul valorii polinomului Ln ( x)

conform relației (1.9) necesită 2n 2 + 7n + 6 operații aritmetice. Dacă se efectuează m evaluări, efortul
global de calcul este de 2n2 + (5m + 2)n + 6m operații. Din punctul de vedere al eficienței spațiale, algoritmii
bazați pe formulele (1.7) și (1.9) necesită fiecare un spațiu de memorie de ordin O(2n) .
Metoda de construcție a polinomului de interpolare sub forma Lagrange

Estimarea erorii de aproximare. În cazul în care f ( x ) este continuă pe  x0 , xn  și mai

posedă și derivate continue până la ordinul n + 1 inclusiv (vom utiliza notația f  C n+1  x0 , xn 

), este adevărată următoarea estimație pentru eroarea EnL ( x ) := f ( x ) − Ln ( x ) a aproximării

funcției f ( x ) cu polinomul de interpolare sub forma lui Lagrange în punctul arbitrar

z   x0 , xn  :

EnL ( z )  n ( z ) M n+1 (n + 1)! , (1.10)

unde M n +1 = max f ( n +1) ( x ) , n ( z ) = ( z − x0 )( z − x1 )  ...  ( z − xn ) .


x x0 , xn 

Cum se stabilește estimația (1.10) puteți urmări în materialul teoretic transmis pe e-


mail, la pagina 13.
Metoda de construcție a polinomului de interpolare sub forma Lagrange

Exemplul 1.5. Care este precizia de aproximare a valorii 115 , folosind polinomul de interpolare
Lagrange construit pe sistemul de noduri x0 = 100, x1 = 121, x2 = 144 ?
Metoda de construcție a polinomului de interpolare sub forma Lagrange

Considerăm funcția f ( x ) = x și calculăm derivatele acesteia

f  ( x ) = 0.5 x −1 2 , f  ( x ) = −0.25 x −2 3 , f  ( x ) = 3x −5 2 8, f ( ( x ) = −15x −7 2


IV )
16 .

Deoarece f ( ) ( x )  0 pentru orice x  100,144 , f  ( x ) este strict descrescătoare pe 100,144 . Rezultă
IV

că f  ( x ) își atinge valoarea maximă pe intervalul 100,144 în x = 100 și

3 1 3
M 3 = max f  ( x ) = = 10 −5 .
x100,144 8 1005 8

În baza estimației (1.10) avem

(115 − 100 )(115 − 121)(115 −144 ) 3


115 − L2 (115 )   10−5 = 0.0016 .
3! 8
Metoda de construcție a polinomului de interpolare sub forma Lagrange

Analiza reprezentărilor grafice ale funcției n ( x) pentru diverse sisteme de noduri pe  x0 , xn  ,

permite să concluzionăm că eroarea interpolării EnL ( z ) va fi în medie mai mare dacă punctul z se află în

vecinătatea extremităților segmentului  x0 , xn  . Mai mult, dacă punctul z se află în exteriorul intervalului

 x0 , xn  valoarea n ( x ) crește rapid, prin urmare, la extrapolarea funcției pot fi obținute date total

eronate.
Metoda de construcție a polinomului de interpolare sub forma Lagrange

Exemplul 1.6. Să se aproximeze pe intervalul  −1.5,1.5 funcția f ( x ) = tg ( x ) cu polinomul de interpolare

sub forma lui Lagrange, construit pe o rețea de n = 12 noduri de interpolare generate aleator.
Metoda de construcție a polinomului de interpolare sub forma Lagrange

În figura 1.4 sunt date reprezentările grafice ale funcției f ( x ) și ale valorilor polinomului de

interpolare sub forma lui Lagrange în m = 100 de puncte, generate aleator pe intervalul  −1.5,1.5 .

Polinomul de interpolare este construit pe următorul sistem de noduri:


-1.5000 -1.0264 -1.0158 -0.9504 -0.7063 -0.5559 0.0260 0.3099 0.4064 0.8468 1.0318 1.5000

Fig. 1.4
Metoda de construcție a polinomului de interpolare sub forma Lagrange

În figurile 1.5 și 1.6 sunt date graficele polinomului nodurilor n ( x ) și cel al erorii f ( zi ) − Ln ( zi ) .

Fig. 1.4

Fig. 1.5 Fig. 1.6


Metoda de construcție a polinomului de interpolare sub forma Lagrange

Calitatea aproximării depinde de numărul nodurilor și în special de amplasarea nodurilor pe intervalul


 −1.5,1.5 , după cum demonstrează reprezentările grafice din figurile 1.7 – 1.8.

Fig. 1.4

Fig. 1.7 Fig. 1.8


Metoda de construcție a polinomului de interpolare sub forma Lagrange

Polinomul reprezentat în figura 1.7 este construit pe sistemul de noduri:


-1.5000 -1.4045 -1.3967 -1.3615 -1.2086 -0.6692 -0.5487 0.5845 0.6181 0.9704 1.3507 1.5000
iar cel din figura 1.8 – pe sistemul
-1.5000 -1.3456 -0.5775 -0.3659 0.1532 0.1876 0.3530 0.5229 0.9917 1.2944 1.3963 1.5000
La fel, în figurile 1.9-1.12 sunt date reprezentările grafice ale polinomului nodurilor și ale
erorii.
Metoda de construcție a polinomului de interpolare sub forma Lagrange

Fig. 1.9 Fig. 1.10


Metoda de construcție a polinomului de interpolare sub forma Lagrange

Fig. 1.11 Fig. 1.12


O aplicație a polinomului de interpolare Lagrange în criptografie
O aplicație a polinomului de interpolare Lagrange în criptografie
O aplicație a polinomului de interpolare Lagrange în criptografie
O aplicație a polinomului de interpolare Lagrange în criptografie
O aplicație a polinomului de interpolare Lagrange în criptografie
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare

Pentru valori suficient de mari ale lui n polinomul de interpolare Ln ( x ) coincide cu f ( x ) într-un număr

relativ mare de n + 1 puncte. Teoretic, se așteaptă ca eroarea aproximării En ( x ) = f ( x ) − Ln ( x ) , x   x0 , xn 

să fie mică, iar când n →  - că se va satisface relația lim En ( x ) = 0, x   x0 , xn  . În realitate, situația poate
n →

fi de altă natură.
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare

Exemplul 1.8. (Exemplul lui S. Bernstein) Funcția f ( x ) = x , x   −1,1 este aproximată cu polinomul

de interpolare sub forma lui Lagrange Ln ( x ) , construit pe sistemul de noduri echidistante

xi = −1 + 2i n , i = 0, n . În figurile 1.13 – 1.22 sunt date reprezentările grafice ale funcției f ( x ) și

polinomului Ln ( x ) , construit pentru diverse valori ale lui n :


Problema aproximării uniforme a funcțiilor cu polinomul de interpolare
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare

Analizând figurile 1.13 – 1.22 putem constata următoarele:


• avem o aproximare din ce în ce mai bună în centrul intervalului  −1,1 , o dată cu amplificarea

numărului de noduri;
• simultan cu amplificarea numărului de noduri începe să se manifeste efectul de bord (valorile
polinomului oscilează puternic în jurul valorilor funcției în vecinătatea extremităților).
De fapt, pentru x   −1,1 \ −1,0,1 avem lim En ( x )  0  lim Ln ( x )  f ( x ) .
n → n →
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare

S-ar putea crede că lipsa convergenței uniforme (în fiecare punct x   x0 , xn  ) a șirului de polinoame

de interpolare se datorează faptului că funcția modul nu este derivabilă în origine, însă C. Runge a formulat

Ln ( x )n=1 nu

un exemplu ce confirmă existența unor funcții infinit diferențiabile pentru care șirul

converge către f ( x ) .
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare

Exemplul 1.9. (Exemplul lui K. Runge) Funcția f ( x ) = 1 ( x 2 + 1) , x   −5,5 este aproximată cu polinomul

de interpolare sub forma lui Lagrange Ln ( x ) , construit pe sistemul de noduri echidistante

xi = −5 + 10i n , i = 0, n . Evident, funcția f ( x ) este de o infinitate de ori continuu diferențiabilă pe  −5,5 .

Cu toate acestea, șirul de polinoame Lagrange nu converge uniform pe  −5,5 . În figurile 1.23 – 1.32 sunt

date reprezentările grafice ale funcției f ( x ) și polinomului Ln ( x ) , construit pentru diverse valori ale lui

n:
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare

Se poate verifica că lim Ln ( x ) = f ( x ) dacă x  c și lim Ln ( x )  f ( x ) dacă x  c , unde c  3, 6334 .


n → n →
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare

Exemplele 1.7 și 1.8 confirmă faptul că șirul de polinoame de interpolare Ln ( x ) , construit pe

sistemul de noduri echidistante, poate să nu conveargă uniform către funcția continuă aproximată. Prin
convergență uniformă vom înțelege convergența în norma spațiului C  x0 , xn  , adică dacă se satisface

condiția:
f − Ln C  x0 , xn 
= max f ( x ) − Ln ( x ) → 0 când n →  .
x x0 , xn 

Dacă ultima condiție se satisface, rezultă că în fiecare punct x   x0 , xn  șirul de valori Ln ( x ) converge

către valoarea funcției f ( x ) când n →  .


Problema aproximării uniforme a funcțiilor cu polinomul de interpolare

Se pune problema dacă există un sistem de noduri de interpolare astfel încât șirul de polinoame

L ( x ) să conveargă uniform pentru orice funcție continuă. Soluția pentru această problemă este dată de
n

teorema lui Faber, din care rezultă că nici un sistem de noduri nu garantează convergența uniformă a
șirului Ln ( x ) pentru orice funcție continuă [Nat., p.511-519; Gonch., p.120-127; Tur., p.34]:

Teorema 1.1. (Faber) Pentru orice sistem de noduri xi(  )  , i = 0, n pe intervalul a, b există o funcție
n

continuă f :  a, b  → astfel încât șirul polinoamelor de interpolare Lagrange Ln ( x ) , care aproximează

funcția f ( x ) pe acest sistem de noduri, nu converge uniform către f ( x ) pe  a, b .


Problema aproximării uniforme a funcțiilor cu polinomul de interpolare

Se pune întrebarea dacă interpolarea Lagrange este utilă în practică, din moment ce în general șirul
polinoamelor de interpolare Ln ( x ) nu converge uniform către funcția f ( x ) . Răspunsul este că

interpolarea Lagrange este utilă, deoarece în problemele concrete se constată că pentru un punct
x   a, b eroarea f ( x ) − Ln ( x ) scade până la o anumită valoare, pe măsură ce n crește, iar pentru

n relativ mic, Ln ( x ) aproximează „suficient de bine” valoarea f ( x ) . Pentru valori mari ale lui n

interpolarea Lagrange nu este recomandată.


Problema aproximării uniforme a funcțiilor cu polinomul de interpolare

Amplasarea nodurilor de interpolare pe intervalul de aproximare a funcției influențează


asupra caracterului convergenței procesului de interpolare. Având ca scop aproximarea cât
mai bună pe intervalul  a, b a funcției f ( x ) cu polinomul de interpolare Lagrange Ln ( x ) ,

vom încerca să fixăm n + 1 noduri de interpolare xi , i = 0, n astfel încât să reducem la minim

eroarea maximă comisă în punctele x   a, b .


Problema aproximării uniforme a funcțiilor cu polinomul de interpolare

Din relația (1.10) rezultă inegalitatea


f − Ln C  x0 , xn 
 n C  x0 , xn 
M n+1 (n + 1)! , (1.11)

unde M n+1 = f ( n+1) , n ( x ) = ( x − x0 )( x − x1 )  ...  ( x − xn ) . Evident, M n+1 nu depinde de


C  x0 , xn 

amplasarea nodurilor pe  a, b , pe când norma n C  x0 , xn 


= max n ( x ) depinde de valorile
x x0 , xn 

concrete ale nodurilor x0 , x1 ,..., xn . Atunci, ținând cont de membrul drept al inegalității (1.11),

putem afirma că maximul erorii absolute f ( x ) − Ln ( x ) va fi minim pe intervalul  a, b atunci

când norma în C  x0 , xn  a polinomului nodurilor n ( x ) ia valoare minimă. Astfel putem

pune următoarea problemă: de găsit o distribuție a nodurilor de interpolare x0 , x1 ,..., xn pe

intervalul  a, b astfel încât norma n C  x0 , xn 


să ia valoare minimă. Această problemă și, prin

urmare, și problema aproximării optimale a unei funcții netede cu un polinom de interpolare


de grad fixat se va rezolva cu utilizarea polinoamelor Chebyshev de speța I, mai exact în baza
sistemului de noduri Chebyshev, care sunt zerouri ale acestor polinoame.
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare

Teorema 1.2. Norma uniformă n C  x0 , xn 


a polinomului nodurilor

n ( x ) = ( x − x0 )( x − x1 )  ...  ( x − xn ) , x   x0 , xn  , ia valoare minimă atunci când nodurile de

interpolare x0 , x1 ,..., xn pe  a, b sunt determinate conform relației

xi = (b + a) 2 + ti (b − a) 2, i = 0, n , (1.14)

unde ti = cos ((2i + 1) (2n + 2)) (i = 0, n) sunt zerourile polinomului Chebyshev de speţa I

Tn+1 ( x ) . În acest caz, pentru eroarea de interpolare a funcției f  C n+1  a, b este adevărată

estimația:
M n +1 ( xn − x0 )n +1
max f ( x ) − Ln ( x )   , (1.15)
x x0 , xn  (n + 1)! 22 n +1

unde M n+1 = max f ( n+1) ( x) .


x[ x0 , xn ]
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare

Estimația (1.15) ne arată că dacă funcția f ( x ) este de clasă C   a, b  , iar în calitate de

noduri de interpolare se consideră sistemul de noduri Chebyshev pe  a, b , atunci șirul de

polinoame Lagrange Ln ( x ) converge uniform către funcția f ( x ) :

f − Ln C  x0 , xn 
= max f ( x ) − Ln ( x ) → 0 .
x x0 , xn  n →
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare

Exemplul 1.10. (Exemplul lui K. Runge) Funcția f ( x ) = 1 ( x 2 + 1) , x   −5,5 este aproximată cu polinomul

de interpolare sub forma lui Lagrange Ln ( x ) , construit pe sistemul de noduri Chebyshev (1.14). Șirul de

polinoame Lagrange converge uniform pe  −5,5 . În figurile 1.33 – 1.42 sunt date reprezentările grafice

ale funcției f ( x ) și polinomului Ln ( x ) , construit pentru diverse valori ale lui n :


Problema aproximării uniforme a funcțiilor cu polinomul de interpolare
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare

Se vede că lim Ln ( x ) = f ( x ) pentru orice x   −5,5 .


n →
Problema aproximării uniforme a funcțiilor cu polinomul de interpolare

Remarca 1.7. În cazul interpolării cu noduri Chebyshev se constată o aproximare mai bună, o dată cu
creșterea numărului de noduri n , precum și dispariția efectului de bord. Eroarea interpolării unei funcții
netede cu un polinom de grad fixat va fi minimă atunci când în calitate de noduri de interpolare sunt
utilizate zerourile polinoamelor Chebyshev de speța I. Astfel, în cazul interpolării pe o rețea neuniformă,
se recomandă a alege în calitate de noduri de interpolare sistemul de noduri Chebyshev.
Evaluare
Evaluare
Evaluare
Aproximare cu polinoame pe porțiuni
Aproximare cu polinoame pe porțiuni
Aproximare cu polinoame pe porțiuni
Aproximare cu polinoame pe porțiuni
Aproximare cu polinoame pe porțiuni
Aproximare cu polinoame pe porțiuni
Aproximare cu polinoame pe porțiuni
Aproximare cu polinoame pe porțiuni
Aproximare cu polinoame pe porțiuni
Aproximare cu polinoame pe porțiuni
Aproximare cu polinoame pe porțiuni
Aproximare cu polinoame pe porțiuni
Aproximare cu polinoame pe porțiuni
Aproximare cu polinoame pe porțiuni
Aproximarea cu funcții spline
Aproximarea cu funcții spline
Aproximarea cu funcții spline
Aproximarea cu funcții spline
Aproximarea cu funcții spline
Aproximarea cu funcții spline
Aproximarea cu funcții spline
Aproximarea cu funcții spline
Aproximarea cu funcții spline
Aproximarea cu funcții spline
Aproximarea cu funcții spline
Aproximarea cu funcții spline cubice

Spline-ul cubic este o funcție definită astfel:


 yi +1 − yi 2mi + mi +1  mi +1 mi mi hi2 mi hi
S3 ( x ) = yi +  − hi  ( x − xi ) + ( x − xi ) + ( xi +1 − x ) − + ( x − xi )
3 3

 hi 6  6hi 6hi 6 2

,
unde x   xi , xi +1  , i = 0, n − 1 .
Aproximarea cu funcții spline cubice

Coeficienții m0 , m1 ,..., mn se determină ca și soluție a sistemului de n + 1 ecuații cu n + 1

necunoscute de forma:
2m0 + e0 m1 = b0
c m + 2m + e m = b1
1 0 1 1 2

 c2 m1 + 2m2 + e2 m3 = b2
 .

 cn −1mn − 2 + 2mn −1 + en −1mn = bn −1

 cn mn −1 + 2mn = bn
Aproximarea cu funcții spline cubice

Elementele matricei coeficienților sistemului și a membrului drept al acestuia se determină


în baza formulelor:

hi −1 hi 6  yi +1 − yi yi − yi −1 
ci := , ei := , bi :=  −  , i = 1, n − 1 ;
hi −1 + hi hi −1 + hi hi −1 + hi  hi hi −1 

Varianta spline-ului cubic cu condiții suplimentare de fixare la capete:

6  y1 − y0  6  yn − yn −1 
cn = 1, e0 = 1 , b0 :=  
− y0  , bn := 
 yn − ;
h0  h0  hn −1  hn −1 

Varianta spline-ului cubic cu condiții suplimentare naturale la capete:


e0 = 0, b0 = 0 , cn = 0, bn = 0 .
Aproximarea cu funcții spline cubice

Sub formă matricială sistemul se scrie astfel:


Am = b , (1.19)
unde
 2 e0 0 0 0   m0   b0 
     
 c1 2 e1 0 0  m
 1  b
 1 
 0 c2 2 e2 0   m2   b2 
A= , m =  , d =  .
     
0 0 cn −1 2 en −1   mn −1   bn −1 
     
0 0 0 cn 2   mn   bn 
Algoritmul aproximării cu spline-ul cubic de interpolare
Algoritmul aproximării cu spline-ul cubic de interpolare
Algoritmul aproximării cu spline-ul cubic de interpolare
Evaluarea
Evaluarea
Evaluarea
Evaluarea
Cerințe pentru laboratorul N2
Cerințe pentru laboratorul N2
Cerințe pentru laboratorul N2
Cerințe pentru laboratorul N2
Cerințe pentru laboratorul N2
Cerințe pentru laboratorul N2
Cerințe pentru laboratorul N2

S-ar putea să vă placă și