A Gauss-Jordan elimináció, mátrixinvertálás Gauss-Jordan módszer Ugyanazzal a technikával, mint ahogy a k-adik oszlopban az a kk alatti elemeket kinulláztuk, a fölötte lévő elemeket is zérussá lehet tenni. Azaz az eliminációs fázisban k minden értékére az i ciklusváltozót nemcsak k + 1-től n-ig, hanem 1-től n-ig futtathatjuk, kivéve az i = k esetet. (Ez annak felel meg, mintha az x k -nak az k-adik egyenletből való kifejezése után azt az összes többibe behelyettesítenénk.) Az I. fázis végeredménye így egy diagonálmátrixú egyenletrendszer, vagyis a II. fázis ekkor csupán az x i = b i /a ii (i = 1, 2,..., n) utasításokból áll (amiket menet közben, egy-egy oszlop teljes kinullázása után vagy még előtte azonnal is megtehetünk).
A Gauss-Jordan elimináció, mátrixinvertálás Persze, szekvenciálisan végrehajtva ez a módszer nem előnyös, hiszen jelentősen megnő a műveletek száma. Ha viszont csak azután kezdünk a főátló fölötti elemek nullázásával foglalkozni, miután kialakítottuk a felső háromszögmátrixot, és ezt a nullázást a k = n, n 1,..., 2 sorrendben végezzük (tehát az oszlopok szerint visszafelé haladva), akkor az A mátrix elemeihez már nem kell hozzányúlni. Ugyanis az i-edik sor l ik -szor a k-adik sor (i = 1, 2,..., k 1) elvégzése során a k-adik sorban az a kk elem kivételével minden elem (elvileg) már 0. A k-adik oszlopba sem kell a 0-át beírni. A II. fázis úgy tekinti, hogy ott zérus áll. A főátló fölötti elemek nullázása tehát nem más, mint a már tárgyalt Gauss-módszer II. fázisa.
A Gauss-Jordan elimináció, mátrixinvertálás Az algoritmus több, de ugyanolyan együttható mátrixú Ax = b j (b j R n, j = 1, 2,..., m) egyenletrendszert oldjon meg. Főátló alatti nullázás (I. fázis): Legyen B = [b 1, b 2,..., b m ] Legyen A = [A, B], azaz kibővítjük az A-t a jobboldali b vektorokkal 1 FOR k 1 TO n-1 DO 2 // Határozzuk meg a t indexet, hogy a tk = max k i n a ik. 3 IF k t 4 cseréljük fel a k-adik és t-edik sort 5 FOR i k + 1 TO n DO 6 l ik = a ik /a kk 7 FOR j k + 1 TO n + m DO 8 a ij = a ij l ik a kj
A Gauss-Jordan elimináció, mátrixinvertálás Főátló fölötti nullázás (II. fázis): 1 FOR k n DOWNTO 2 DO 2 FOR i 1 TO k 1 DO 3 l ik = A ik /A kk 4 FOR j n + 1 TO n + m DO 5 a ij = a ij l ik a kj 6 FOR j n + 1 TO n + m DO 7 x k,j n = a kj /a kk 8 FOR j n + 1 TO n + m DO 9 x 1,j n = a 1j /a 11 Végeredmény: [x 1, x 2,..., x m ] = X
A Gauss-Jordan elimináció, mátrixinvertálás Megjegyzés Fenti algoritmus alkalmas mátrixinvertálásra. Könnyen belátható ugyanis, hogy az Ax = e i egyenletrendszer megoldása éppen az inverz mátrix i-edik oszlopvektora. Ha az algoritmusban B az egységmátrix, akkor a végeredmény: X = A 1.
A legkisebb négyzetek módszere, egyenes eset Legyen N N és adottak az x 1, x 2,..., x N R alappontok és az y 1, y 2,..., y N R függvényértékek (pl. mérési eredmények). Keressük azt az egyenest y = a 0 + a 1 x, melyre a kifejezés minimális. [y i (a 0 + a 1 x i )] 2 i=0 A fenti feltételnek eleget tevő egyenest az (x i, y i ) i = i,..., N, értékeket négyzetesen legjobban közeĺıtő egyenesnek nevezzük.
A legkisebb négyzetek módszere, egyenes eset A feladat megoldásához az F (a 0, a 1 ) = [ yi (a 0 + a 1 x i ) ] 2 : R 2 R függvényt kell minimalizálnunk. A többváltozós függvények szélsőértékéről tanultak szerint az F a 0 (a 0, a 1 ) = 0 és F a 1 (a 0, a 1 ) = 0 feltételnek eleget tevő a 0, a 1 -et keressük. A parciális deriváltakra 2[y i (a 0 + a 1 x i )] = 0 2[y i (a 0 + a 1 x i )]x i = 0 egyenletrendszert kapjuk.
A legkisebb négyzetek módszere, egyenes eset Ezt az egyenletrendszert az alábbi alakban írhatjuk: y i Na 0 a 1 x i = 0 x i y i a 0 x i a 1 xi 2 = 0 amelyből adódik, hogy ( N ) Na 0 + x i a 1 = ( N ) ( N x i a 0 + ) xi 2 a 1 = y i x i y i
A legkisebb négyzetek módszere, egyenes eset Vezessük be a következő jelöléseket: 1 x 1 1 x 2 A =.. RN 2, b = 1 x N y 1 y 2. y N RN, a = ( a0 a 1 ) R 2. Ekkor A T A = N x i x i N xi 2 A T b = y i x i y i
A legkisebb négyzetek módszere, egyenes eset Így az egyenletrendszer alakban írható. A T Aa = A T b A det(a T A) = 0 csak akkor teljesülhet, ha x 1 = x 2 =... = x N (érdektelen eset). Tehát feltehetjük, hogy det(a T A) 0. Ekkor az egyenletrendszer egyértelműen megoldható. Például az A T A invertálható, így a = (A T A) 1 A T b.
A legkisebb négyzetek módszere, polinom eset Legyen n, N N úgy, hogy n << N, adottak az x 1, x 2,..., x N R alappontok és az y 1, y 2,..., y N R függvényértékek (pl. mérési n eredmények). Keressük azt a P n (x) = a j x j polinomot, melyre a kifejezés minimális. j=0 (y j P n (x i )) 2 j=0 A fenti feltételnek eleget tevő P n polinomot az (x i, y i ) i = i,..., N, értékeket négyzetesen legjobban közeĺıtő n-ed fokú polinomnak nevezzük.
A legkisebb négyzetek módszere, polinom eset A feladat megoldásához az F (a 0, a 1,..., a n ) = n y i n a j x j i j=0 2 : R n+1 R függvényt kell minimalizálnunk. A többváltozós függvények szélsőértékéről tanultak szerint az F (a 0, a 1,..., a n ) = 0 feltételnek eleget tevő a j -ket keressük. A parciális deriváltakra F a j (a 0, a 1,..., a n ) = (j = 0, 1,..., n). ( 2(y i P n (x i )) P ) n (x i ) = 0 a j
A legkisebb négyzetek módszere, polinom eset P n (x i ) P n a j (x i ) = y i P n a j (x i ) (j = 0, 1,..., n). Mivel P n a j (x i ) = (x i ) j, a fenti egyenlet a következő alakba írható: n (x i ) j a k (x i ) k = n k=0 k=0 a k N (x i ) j+k = y i (x i ) j (j = 0, 1,..., n). Ezzel a k -kra egy lineáris egyenletrendszert kaptunk (n + 1 darab egyenlet, n + 1 darab ismeretlennel).
A legkisebb négyzetek módszere, polinom eset Vezessük be a következő jelöléseket: 1 x 1... x n 1 1 x 2... x n 2 A =...... RN (n+1), 1 x N... xn n y 1 a 0 y 2 b =. a 1 RN, a =. Rn+1. a n y N Ekkor az egyenletrendszer alakban írható. A T Aa = A T b
A legkisebb négyzetek módszere, tetszőleges függvény eset Az f függvény helyettesítésére (közeĺıtésére) a szóba jöhető, előre rögzített H függvényosztályból azt a h H függvényt keressük, amely az f h min, h H feltételes szélsőérték feladat megoldása. Tulajdonképpen minden h H tekinthető közeĺıtésnek, ezért a feladatot kielégítő függvényt szokás legjobb approximációnak nevezni.
A legkisebb négyzetek módszere, tetszőleges függvény eset Függvények [a, b] intervallumon való legkisebb négyzetes közeĺıtéséről akkor beszélünk, ha a norma diszkrét esetben (a x 1 < x 2 <... < x m b) folytonos esetben pedig ( m f 2 = f 2 (x i ) w (x i ) ( b f 2 = a ) 1 2 ) 1 f 2 2 (x) w (x) dx, ahol a rögzített w (x) súlyfüggvényre diszkrétnél a w (x i ) > 0 (i = 1, 2,... m), folytonosnál pedig a w (x) C [a, b], w (x) > 0, x [a, b] teljesülését megköveteljük. Fontos speciális eset a w (x) 1.,
A legkisebb négyzetek módszere, tetszőleges függvény eset Lineáris eset Legyen a H függvényhalmaz olyan, hogy ismert φ i : [a, b] R(i = 1,..., n) függvények valamennyi lineáris kombinációját tartalmazza, tehát a h (x) függvény alakja h(x) = a 1 φ 1 (x) + a 2 φ 2 (x) +... + a n φ n (x) = n a i φ i (x). A φ i függvényeket alapfüggvényeknek vagy másképpen bázisfüggvényeknek nevezzük.
A legkisebb négyzetek módszere, tetszőleges függvény eset Diszkrét, lieáris eset Fontos kérdés az approximációs feladat megoldásának létezése és egyértelműsége. Lineáris approximációra igaz az alábbi álĺıtás. Tétel Ha {φ i } n C [a, b] lineárisan függetlenek, akkor bármilyen normában és minden f C [a, b] esetén létezik legjobban közeĺıtő h(x) = n a iφ i (x) függvény.
A legkisebb négyzetek módszere, tetszőleges függvény eset Diszkrét, lineáris eset Legyen F = F (a 0, a 1..., a n ). Ekkor meg kell oldani a F = m [ f (xi ) ( a 1 φ 1 (x i ) +... + a j φ j (x i ) +... + a n φ n (x i ) )] 2 min i=i szélsőértékfeladatot. Ennek megoldása pedig F a j = 0, (j = 1, 2,..., n), vagyis a 2 m [f (x i ) (a 1 φ 1 (x i ) +... + a j φ j (x i ) +... + a n φ n (x i )] φ j (x i ) = 0 i=i lineáris egyenletrendszer megoldása. (Az egyenlet teljesülése az approximációs feladat megoldásának már emĺıtett egyértelmű létezése miatt elegendő.)
A legkisebb négyzetek módszere, tetszőleges függvény eset Diszkrét, lineáris eset Egyszerűsítés és a szokásos alakra való rendezés után kapjuk, hogy a 1 m i=i φ 1 (x i )φ j (x i ) +... + a n m i=i φ n (x i )φ j (x i ) = m f (x i )φ j (x i ) i=i (j = 1, 2,..., n). Vezessük be az u, v = m u(x i )v(x i )w(x i ) i=i jelölést.
A legkisebb négyzetek módszere, tetszőleges függvény eset Diszkrét, lineáris eset Ezzel az egyenletrendszer alakja a következő: a 1 φ 1, φ 1 + a 1 φ 2, φ 1 +... + a n φ n, φ 1 = f, φ 1 a 1 φ 1, φ 2 + a 1 φ 2, φ 2 +... + a n φ n, φ 2 = f, φ 2 a 1 φ 1, φ n + a 1 φ 2, φ n +... + a n φ n, φ n = f, φ n.
A legkisebb négyzetek módszere, tetszőleges függvény eset Megjegyzések A u, v = m u(x i )v(x i )w(x i ) i=i összefüggéssel egy skaláris szorzatot definiáltunk a diszkrét pontokon értelmezett függvények között. Ez két R n -beli vektornak a szorzata (ha w(x) 1). Az egyenletrendszer az úgynevezett normálegyenletrendszer. A G = [ φ j, φ i ] n i,j=1, a = [a 1,..., a n ] T és a b = [ f, φ 1,..., f, φ n ] T jelölésekkel tömörebben: Ga = b. A G R n n mátrixot Gram-mátrixnak nevezzük.
A legkisebb négyzetek módszere, tetszőleges függvény eset Diszkrét, lineáris eset Legyen A = [φ j (x i )] m,n i,j=1 Rm n, a = [a 1,..., a n ] T R n, b = y = [y 1,..., y m ] T R m és m > n. Keresünk olyan a paramétervektort, amely az Aa b hibát valamilyen normában minimalizálja. Ha létezik a Aa = b egyenletnek megoldása, akkor a minimumfeladat egyenértékű vele. Az euklideszi normában megfogalmazott Aa b 2 min. minimumfeladat megoldása az alábbi tétel: Tétel Az a R n akkor és csak akkor megoldása a feladatnak, ha A T Aa = A T b.