Metode
numerice - Aplicatii
Lucrarea 3.
Criteriul de aproximare dupa cele mai mici patrate: regresia polinomiala
si regresia liniara
Tema A - Regresia polinomiala
Tema B - Regresia liniara
Tema C - Regresia parabolica
Criteriul de aproximare prin interpolare
determina functia aproximant F(x) impunand conditia ca aceasta sa
coincida cu functia de aproximat f(x) in toate nodurile de interpolare.
In felul acesta, curba asociata functiei F(x) este fortata sa urmeze
o traiectorie impusa de pozitia nodurilor de interpolare. Acest criteriu
este insa prea putin eficient in cazul unui numar mare de noduri
de interpolare,
deoarece determinarea coeficientilor polinomului de aproximare necesita
un volum mare de calcul si exista riscul aparitiei oscilatiilor
intre noduri. In plus, daca insesi valorile indicate pentru functia f(x)
nu sunt exacte, provenind de exemplu din masuratori afectate de erori,
nu are sens sa impunem replicarea lor de catre functia de aproximare. In
aceste situatii este convenabila aplicarea unei metode care sa determine
cea mai "buna" functie care sa minimizeze abaterea medie patratica intre
f(x) si F(x) in toate punctele in care se cunoaste
valoarea functiei originare.
Apreciati si dvs. cum ar arata curbele ce ar descrie functia F(x)
pentru punctele de definitie din figurile alaturate daca s-ar folosi criteriul
de aproximare prin interpolare.
Aproximarea dupa criteriul celor mai mici patrate determina o functie F(x)
care nu mai trece prin punctele de definitie, ci printre
ele, astfel incat suma patratelor abaterilor intre functiile F(x)
si f(x) in aceste puncte sa fie minima.
Pentru formalizarea acestui criteriu, se considera functia sub forma tabelara,
avand n+1 masuratori (x_k, f_k) afectate de erori inerente
si se urmareste determinarea unei functii de aproximare F(x), astfel
definita incat suma patratelor abaterilor in punctele de definitie sa fie
minima:
Aceasta expresie a abaterii
I se utilizeaza atunci cand erorile
inerente sunt localizate la nivelul functiei
f(x)=y. In acest caz
se spune ca functia
F(x) se determina prin
regresie in x.
Este posibil insa ca erorile inerente sa se regaseasca in variabila
x,
caz in care
F(x) se determina prin
regresie in y.
In functie de forma functiei de aproximare
F(x) pot fi aplicate
mai multe tipuri de regresie: polinomiala, exponentiala, logaritmica, hiperbolica,
etc.
Tema
A - Regresia polinomiala
Pentru functia tabelara considerata, regresia polinomiala foloseste o functie
de aproximare de forma unui polinom de grad p, in general diferit
de n :
pentru care abaterea
I are
forma:
respectiv:
Determinarea functiei
F(x)
presupune calculul celor
p+1 coeficienti
a_1, a_2,...,a_(p+1)
folosind cele
n+1 perechi
(x_k, f_k) asociate punctelor in
care este definita functia
f(x), astfel incat sa se asigure valoarea
minima a abaterii
I. Prin anularea derivatelor partiale ale lui
I
in raport cu cele
p+1 necunoscute
a_i:
se obtine un sistem de
p+1
ecuatii liniare cu
p+1 necunoscute, de forma extinsa:
Deoarece functiile
x^(j-1),
j=1,...,p+1 sunt liniar independente, determinantul acestui sistem
va fi intotdeauna nenul, astfel incat solutia calculata va fi unica. In
general insa, sistemul liniar astfel obtinut este rau conditionat, astfel
incat erorile de rotunjire care apar in cursul calculelor conduc
la obtinerea unor rezultate mult diferite de cele reale. Acest lucru se
intampla cu atat mai probabil cu cat gradul polinomului de aproximare
F(x)
este mai mare. In practica, atunci cand se lucreaza in
simpla precizie, un grad
p>7 conduce, de regula, la rezultate fara
semnificatie reala. Din acest motiv, precum si in scopul reducerii timpului
de calcul, in practica se utilizeaza polinoame de regresie cu grad cat
mai redus si adesea se apeleaza la regresia liniara sau parabolica.
Algoritmul 1 - Aproximarea functiilor prin regresie polinomiala
- Definirea functiei tabelare: numarul punctelor cunoscute n+1,
valorile nodurilor de interpolare x_k si ale functiei aproximate
f_k(k=1,..., n+1).
- Definirea gradului polinomului de regresie p.
- Formarea matricei coeficientilor C = [c_i,j]
i,j=1, ... ,p+1 si a vectorului termenilor liberi D =
[d_ j] j=1, ... , p+1:
- Rezolvarea sistemului de ecuatii C a = D si determinarea
coeficientilor a_j , j=1, ... , p+1.
- Aproximarea functiei in punctul de calcul:
Tema
B - Regresia liniara
Daca polinomul de aproximare are gradul p=1, aplicarea criteriului
celor mai mici patrate conduce la regresia liniara:
iar sistemul de ecuatii liniare a
carei solutie asigura minimizarea abaterii medii patratice devine:
In continuare se folosesc notatiile:
- valoarea medie a variabilei statistice x;
- valoarea medie a variabilei statistice f;
- valoarea medie patratica a variabilei statistice x;
- valoarea medie a variabilei x * f;
cov (x,f) - covarianta statistica a variabilelor x si f;
- dispersia variabilei x in raport cu valoarea sa medie,
unde :
Solutia sistemului de ecuatii este:
sau:
iar polinomul de regresie are forma:
adica o dreapta de panta
cov(x,f)
/
,
care trece prin punctul de coordonate
(
,
)
, care poate fi privit ca un
centru de greutate statistic al tuturor
punctelor
(x_k, f_k), k=1,...,n+1.
Algoritmul pentru regresia liniara este asemanator si reprezinta un caz
particular al algoritmului pentru regresia polinomiala.
Tema
C - Regresia parabolica
Pentru aceasta tema, care este un caz particular al regeresiei polinomiale,
suportul teoretic si algoritmul se pregatesc individual de catre studenti,
dupa modelul regresiei liniare.
Pentru implementarea algoritmelor
corespunzatoare diferitelor forme de regresie
se poate consulta cartea
"Calcul numeric cu aplicatii in Turbo Pascal".
Aplicatii - Lista lucrarilor de laborator