Sunteți pe pagina 1din 6

Conferina Naional de nvmnt Virtual, ediia a IV-a, 2006

139

Metoda celor mai mici ptrate cu Matlab


Constantin I.Popovici-Universitatea Tehnic Gh. Asachi Iai, email:constantin.popovici@rdslink.ro Emilia Popovici-Universitatea Tehnic Gh. Asachi Iai, e-mail:emiliapopovici@yahoo.com Gheorghe Sufaru-Universitatea Tehnic Gh. Asachi Iai, e-mail:geocos1981@yahoo.com Abstract
Lucrarea reflect modul n care se poate folosi mediul de programare Matlab pentru nvarea i nelegerea modului de aplicare n practic a cursului de Analiz Numeric prezentat studenilor Facultii de Construcii din Universitatea Tehnic Gh. Asachi Iai. Este prezentat algoritmul numeric asociat metodei celor mai mici ptrate n cazul sistemelor de ecuaii algebrice liniare supradimensionate i tratate doua exemple adecvate, cu aplicatii n practica. n concluzie, studenii pot utiliza softul Matlab pentru rezolvarea problemelor de matematic, care apar n cercetare, proiectare, inginerie, iar utilizarea softului este o metod complementar i nu substitutiv [2].

1. Introducere Metodele numerice care se folosesc astzi, fie cele clasice, fie cele noi, se utilizeaz numai prin intermediul calculatorului. innd cont de complexitatea problemelor utilizatorul trebuie s studieze cazurile n care trebuie s decid ce sistem de calcul va fi adecvat pentru problema n cauz, dar n acelai timp i s intuiasc modul de abordare a raionamentelor ce trebuie implementate pentru rezolvarea problemei. Metodele numerice trebuie concepute astfel nct s fie eficiente i numeric stabile. Eficiena se asigur prin elaborarea unor algoritmi care s implice un numr ct mai mic de operaii aritmetice elementare. Ituitiv vorbind, stabilitatea numeric a unui algoritm nseamn ca acesta este ct mai puin sensibil la erorile de rotunjire sau la alte incertitudini numerice care pot aparea n procesul de calcul. Dac toate calculele se fac pe baza unor combinaii convexe, atunci toate rezultatele intermediare i chiar rezultatul final vor fi n domeniul de mrime al datelor iniiale, asigurnd stabilitatea algoritmului. Elaborarea unui algoritm numai pe baza unor combinaii convexe nu se poate realiza n toate cazurile, dar aceast cerin constituie un principiu general ce trebuie avut n vedere ntotdeauna la implementarea metodelor numerice pe calculator. 2. Aproximarea discret n sensul celor mai mici ptrate Portrivirea (netezirea) datelor n sensul celor mai mici ptrate s-a dovedit un instument indispensabil nc de la inventarea sa de ctre Gauss i Legendre, n jurul anului 1800, cu ramificaii n tiinele experimentale.

139

140

Facultatea de Matematic i Informatic, Bucureti

n limbajul algebrei liniare, problema este de a rezolva un sistem de ecuaii algebrice liniare supradimensionat (numrul ecuaiilor fiind mai mare dect numrul necunoscutelor) sau a unui sistem de ecuaii subdimensionat (numrul ecuatiilor fiind mai mic decat numrul necunoscutelor), adica sisteme dreptunghiulare de forma Ax = b . Abordm problema sistemelor supradimensionate. Ideea este de a rezolva sistemul prin minimizarea normei euclidiene a reziduului b + Ax . Considerm sistemul Ax = b , cu n necunoscute i cu m >n ecuaii. Simbolic, dorim s gasim un vector x C n ce satisface sistemul Ax = b , unde A C mn i b C m . n general, o astfel de problem nu are nici o soluie. Un vector x corespunztor poate exist numai dac b Im( A) i deoarece b este un vector cu m componente i Im( A) are dimensiunea cel mult n , acest lucru este adevarat numai pentru alegeri cu totul speciale ale lui b. Vectorul r definit de relaia, r = b + Ax, r C m , (1) numit reziduu, poate fi fcut mic printr-o alegere adecvat a lui x, dar n general nu poate fi fcut egal cu zero. Ce nseamn s rezolvm o problem care nu are nici o soluie? n cazul unui sistem supradimensionat exist un rspuns natural la aceasta ntrebare. Deoarece reziduul r nu poate fi fcut zero, trebuie s-l facem ct mai mic posibil ntr-o anumit norm. Dac alegem norma 2 , problema poate fi reformulat astfel. Dat fiind matricea A C mn , m n , b C m , s se gaseasca vectorul x C n astfel ncat Ax b 2 s fie minim. Aceast problem se numete problem liniar discret de aproximare n sensul celor mai mici ptrate. Alegerea normei 2 poate fi justificat prin diverse argumente geometrice i statistice i, aa cum vom vedea, conduce la algoritmi simpli datorit faptului c derivata unei funcii ptratice, care trebuie anulat pentru a se obtine minimul, este liniar. Interpretarea geometric a problemei este simpl: cutam un vector x C n ,astfel nct vectorul Ax C m s fie punctul din Im( A) cel mai apropiat de b. 3. Metoda celor mai mici ptrate n procesul de prelucrare i ajustare a datelor apar sisteme de ecuaii algebrice liniare supradimensionate sau subdimensionate. Abordam problema sistemelor supradimensionate. Fie sistemul:
a11 x1 + a12 x 2 + " + a1n x n = b1 a 21 x1 + a 22 x 2 + " + a 2 n x n = b2 , m>n " " " " " a x + a x + " + a x = bm m2 2 mn n m1 1

(2)

Evident, un asemenea sistem poate s nu aib soluie. Fie vectorul rezidual,


r = Ax b = (r1 , r2 , " , rm ) T

(3)

140

Conferina Naional de nvmnt Virtual, ediia a IV-a, 2006 unde


ri = a i1 + " + a in x n bi , i = 1, m .

141

Considerm funcia ptratic,


2 . f ( x) = f ( x1 , x 2 , " , x n ) =< r , r >= r12 + r22 + " + rm

(4)

Definiia 1. Se numete soluie n sensul celor mai mici ptrate a sistemului (2), acel vector x*, pentru care funcia (4) are valoarea minim. Dac: min f ( x) = f ( x * ) = 0 , atunci ri ( x * ) = 0 , pentru orice i = 1, m. Rezult c sistemul (2) este compatibil i atunci x=x* este soluia exact a sa. n general, sistemul (2) nu este compatibil i min f ( x) = f ( x * ) > 0 , iar x=x* este un
xR n

xR n

substituit pentru soluia sistemului, i anume soluia n sensul celor mai mici ptrate. Funcia f se poate pune sub forma : f ( x) =< r , r >=< Ax b, Ax b >=< Ax, Ax > 2 < Ax, b > + < b, b > , i astfel avem
f ( x) =< A T Ax, x > 2 < A T b, x > + < b, b >

(5)

Teorema 1. Dac rang A = n, atunci sistemul (2) admite o singur soluie n sensul celor mai mici ptrate i aceasta este soluia (unic) a sistemului ATAx = ATb (6) Sistemul (6) se numete sistemul normal al lui Gauss. Demonstraie. Punctele de extrem ale funciei ptratice f, dat de relaia (5), se caut printre punctele sale critice, iar acestea se afl rezolvnd sistemul: grad f = 0 Cum grad f = ATAx ATb, obinem sistemul ATAx = ATb. innd cont c : rang A = rang AT = rang (ATA) =rang (AAT), atunci matricea B = ATA este o matrice ptratic de ordinul n i rang B = n, conform celor de mai sus. Rezult c sistemul (6) admite o soluie unic, x = x*, care este punct critic pentru f. Matricea B este evident simetric i semipozitiv definit. Mai mult, n ipoteza noastr, matricea B este pozitiv definit. ntr-adevr dac presupunem ca <Bx,x> = 0, atunci rezult c <Ax,Ax> =0 i deci Ax =0. Cum rang A = n <m rezult x = 0. Pe de alt parte avem
d 2 f ( x) =

b dx dx
ij i i =1 j =1

>0,

de unde rezult c x = x* este punct de minim pentru f i cu aceasta teorem este demonstrat. Aadar, n ipoteza rang A = n ,soluia sistemului (2), n sensul celor mai mici ptrate, este unic i se afl rezolvnd sistemul (6). Acest sistem este simetric pozitiv definit. Rezolvarea sa se poate face prin metoda Cholesky sau una din metodele de relaxare.

141

142

Facultatea de Matematic i Informatic, Bucureti

Factorizarea Cholesky pentru sistemul (6) este o metoda direct de rezolvare a unui sistem de ecuaii liniare, cu matricea coeficienilor pozitiv definit. Exist o matrice unic R superior triunghiular, nesingular, care satisface relaia: AT A = RTR Factorizarea Cholesky pentru (6) se realizeaz cu funcia Matlab chol; aceasta funcie se poate apela cu una dintre sintaxele: R = chol (ATA) sau [ R,p] = chol (ATA), unde: A - este o matrice pozitiv definita; R - este o matrice superior triunghiulara, astfel incat RTR = ATA ; p - este un scalar de test , egal cu zero daca matricea A este pozitiv definita i, un ntreg pozitiv n caz contrar. Rezolvarea cu Matlab a unui sistem de ecuaii liniare presupune etapele: - se calculeaza factorul Cholesky, R = chol (AT*A) ; - se rezolva sistemul RTy = b cu relatia : y = RT \AT b ; - se rezolva sistemul Rx = y cu relatia : x = R \ y. Rezolvarea practic a sistemului (6) ridic probleme din cauza faptului ca numrul de condiionare al matricei B = ATA este mare. Numrul de condiionare a lui B se calculeaz cu functia Matlab cond. Observatie. Teoretic, soluia sistemului (6) este x* = (ATA)-1ATb. Matricea P = (ATA)-1AT se numeste pseudoinversa matricei (dreptunghiulare) A. Noiunea de matrice pseudoinvers generalizeaz noiunea de matrice invers (pentru matrice dreptunghiulare ). 4. Exemple Dreapta de regresie 1) S se determine traseul optim pentru o conduct de gaze naturale care s treac prin apropierea localitilor Li , i = 1, 2, ... , 10, care, raportate la un sistem cartezian de referin, au coordonatele urmtoare: L1(1,2), L2(2,2), L3(5,3), L4(7,4), L5(10,2), L6(11,3), L7(15,4), L8(16,5), L9(18,1), L10(20,4). Rezolvare Lund traseul dup o dreapt, se obine sistemul :
m + n = 2 2 m + n = 2 5m + n = 3 7 m + n = 4 10m + n = 2 11m + n = 3 , 15m + n = 4 16m + n = 5 18m + n = 1 20m + n = 4 1 2 5 7 cu A = 10 11 15 16 18 20 1 1 1 1 T 1 i b = (2 2 3 4 2 3 4 5 1 4) . 1 1 1 1 1

142

Conferina Naional de nvmnt Virtual, ediia a IV-a, 2006

143

Sistemul este supradimensionat i incompatibil. Se formeaz sistemul normal al lui Gauss B u = C unde B = ATA, C = AT b i u este necunoscut; n cazul nostru: B=
1505 105 , C = 105 10 340 30

Matricea B este o matrice pozitiv definit. Secvena Matlab : clc B = [1505 105; 105 10]; C = [340 30]; [R,p] = chol (B); y = R \ C; x = R \ y; end Metoda Cholesky poate fi aplicat i avem soluia u1=0,06211, u2=2,34783. Raportat la acel sistem de coordonate, traseul conductei trebuie s urmeze drepta: y = 0,06211 x + 2,34783. cond (B) = 568,2405; 1 = 1512,3 i 2 = 2,7. Avem cond (B) > 1 i sistemul normal Gauss este bine condiionat. 2 Dreapta de regresie n acest caz este: y = 0,06211 x + 2,34783. Aceast dreapt nu trece exact prin punctele Li , dar este acea dreapt din plan care trece cel mai aproape de aceste puncte. 2) S presupunem c vrem s determinm dreapta de regresie corespunzatoare punctelor Mi (xi,yi), i + 1,2,...,n. Matricele A i B sunt:
1 2 A= # n

1 1 i B = ATA = # 1

n(n + 1)(2n + 1) 6 n(n + 1) 2

n(n + 1) 2 . n

Pentru n =100, cond (B) > 13333 i deci sistemul normal al lui Gauss este prost condiionat. 5. Concluzii Matlab ofer o soluie complet i unitar pentru o rezolvare numeric a sistemelor de ecuaii liniare i neliniare, a ecuaiilor difereniale, a problemelor de aproximare. Este utilizat att de matematicieni, informaticieni, ct i de ingineri i fizicieni. Acest mediu de programare este flexibil i usor de utilizat.

143

144 Bibliografie

Facultatea de Matematic i Informatic, Bucureti

[1] Marin Vlada, Tehnologiile societatii informationale, Conferinta Nationala de Invatamant Virtual, editia a III-a, 2005, Facultatea de Matematica i Informatica Bucuresti, pp. 19-32. [2] Ariadna Lucia Pletea, Rezolvarea ecuatiilor diferentiale cu Mathematica, Conferinta Nationala de Invatamant Virtual, editia a II-a, 2004, Facultatea de Matematica i Informatica Bucuresti, pp. 153-160. [3] Marin Vlada, Maple and MapleNet-integrated solutions for Web Based Learning n Mathematics, Science and Engineering, Conferinta Nationala de Invatamant Virtual, editia a IIa, 2004, Facultatea de Matematica i Informatica Bucuresti, pp. 121-130. [4] Nicolae Danet, Metode de constructie a curbelor plane. O introducere folosind Mathcad, Conferinta Nationala de Invatamant Virtual, editia a II-a, 2004, Facultatea de Matematica i Informatica Bucuresti, pp. 309-316. [5] Constantin I. Popovici , Emilia Popovici, Metode numerice cu Matlab, Conferinta Nationala de Invatamant Virtual, editia a III-a, 2005, Facultatea de Matematica i Informatica Bucuresti, pp. 147-152. [6] Gavril Paltineanu, Pavel Matei, Romica Trandafir, Analiza numerica, Editura Conspress, Bucuresti, 1998.

144

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