Numerikus módszerek 1. 9. előadás: Paraméteres iterációk, relaxációs módszerek Lócsi Levente ELTE IK
Tartalomjegyzék 1 A Richardson-iteráció 2 Relaxált Jacobi-iteráció 3 Relaxált Gauss Seidel-iteráció
Emlékeztető: Iterációs módszerek Az Ax = b LER megoldása érdekében alakítsuk azt át x = Bx + c alakúra, és valamely x (0) kezdőpontból végezzük az x (k+1) = B x (k) + c (k N 0 ) iterációt. Ez a vektorsorozat bizonyos feltételek mellett konvergál a LER megoldásához. (Ekvivalens feltétel: (B) < 1.) Volt: Banach-féle fixponttétel, Jacobi-, Gauss Seidel-iterációk. Megjegyzés: 2 3 változó: felesleges megértés sok változó (100, 1000): használják
Tartalomjegyzék 1 A Richardson-iteráció 2 Relaxált Jacobi-iteráció 3 Relaxált Gauss Seidel-iteráció
Richardson-iteráció Tekintsük az Ax = b LER-t, ahol A szimmetrikus, pozitív definit mátrix (azaz minden sajátértéke valós, sőt pozitív), és p : R. Ax = b p Ax = p b 0 = pax + pb x = x pax + pb = (I pa)x + pb Ezek alapján az iteráció a következő. Definíció: Richardson-iteráció p paraméterrel R(p) x (k+1) = (I pa) x (k) + pb = B } {{ } }{{} R(p) x (k) + c R(p) B R(p) c R(p)
Richardson-iteráció Példa Vizsgáljuk meg a Richardson-iterációt néhány p R paraméter mellett a következő egyenletrendszer esetén. Ax = b, ( ) 3 1 x = 1 3 ( ) 1. 5 A mátrix szimm., poz. def., a megoldás pedig x = ( ) 1. 2
Richardson-iteráció Tétel: A Richardson-iteráció konvergenciája Ha az A R n n mátrix szimmetrikus, pozitív definit és sajátértékeire m = λ 1 λ n = M teljesül, akkor R(p) (azaz egy A mátrixú LER-re felírt p R paraméterű Richardson-iteráció) konvergens, ha ( p 0, 2 ), M az optimális paraméter és a hozzá kapcsolódó kontrakciós együttható pedig: p opt = 2 M + m, opt := (B R(popt)) = M m M + m.
Richardson-iteráció Bizonyítás: 1 B R(p) sajátértékei: λ i (p) = 1 p λ i, hiszen Av = λ i v (I pa)v = v pav = v pλ i v = (1 pλ i )v. Vagyis: λ 1 (p) = 1 p λ 1 = 1 pm, λ 2 (p) = 1 p λ 2,. λ n (p) = 1 p λ n = 1 pm. 2 B R(p) spektrálsugara így (B R(p) ) = n max i=1 1 p λ i.
Richardson-iteráció 3 Ábrázoljuk az 1 p λ i függvényeket (i = 1, 2,..., n)! (Ezek p-től függenek.) 1 p λ i = 0 p = 1 λ i (B R(p) ) 1 pm 1 pm 1 opt 1 M p opt 2 M 1 m p
4 R(p) konvergens, ha (B R(p) ) < 1, azaz ha p Ezek az 1 pm = 1 egyenlet megoldásai. 5 Továbbá az optimális paramétert az 1 pm = 1 pm Richardson-iteráció ( 0, 2 ). M egyenlet megoldása adja. (Nem a 0, hanem a másik.) 6 Ekkor 1 + pm = 1 pm pm + pm = 2 p(m + m) = 2 = p opt = 2 M + m (B R(popt)) = 1 p opt m = M + m M + m 2m M + m = M m M + m.
Richardson-iteráció Példa Adjuk meg, hogy a Richardson-iteráció mely p R paraméterek mellett konvergens a következő egyenletrendszer esetén mely ugyanaz, mint az imént. Mi az optimális paraméter és a hozzá tartozó átmenetmátrix spektrálsugara? Ax = b, A mátrix sajátértékei 2 és 4. ( ) 3 1 x = 1 3 ( ) 1. 5
Tartalomjegyzék 1 A Richardson-iteráció 2 Relaxált Jacobi-iteráció 3 Relaxált Gauss Seidel-iteráció
Relaxáció A relaxáció, avagy csillapítás, avagy tompítás alapötlete: x (k+1) helyett (1 ω) x (k) + ω x (k+1) x (k) x (k+1) Megj.: alulrelaxálás (0 < ω < 1), túlrelaxálás (ω > 1) ω = 1 az eredeti módszert adja
Relaxált Jacobi-módszer Induljunk a Jacobi-módszerből és a helyben hagyásból : x = D 1 (L + U) x + D 1 b / ω x = x / (1 ω) A kettő súlyozott összege: x = [ (1 ω)i ωd 1 (L + U) ] x + ωd 1 b Ezek alapján az iteráció a következő. Definíció: relaxált Jacobi-iteráció ω paraméterrel J(ω) [ ] x (k+1) = (1 ω)i ωd 1 (L + U) x (k) + ωd } {{ 1 b} } {{ } c J(ω) B J(ω)
Relaxált Jacobi-módszer Írjuk fel koordinátánként! Állítás: J(ω) komponensenkénti alakja x (k+1) i = (1 ω) x (k) i + ω x (k+1) i,j(1), ahol x (k+1) i,j(1) a hagyományos Jacobi-módszer (J(1)) által adott, azaz x (k+1) i,j(1) = 1 n a i,i j=1, j i a i,j x (k) j b i. Biz.: Házi feladat meggondolni. Nem nehéz.
Relaxált Jacobi-módszer Tétel: a relaxált Jacobi-módszer konvergenciájáról Ha egy mátrixra a J(1) módszer konvergens, akkor 0 < ω < 1 esetén a J(ω) módszer is konvergens. (Az ω = 0 esetben nem.) Biz.: Rövid, táblán. Meggondoltuk. Megj.: A relaxált Jacobi-módszert nem szokták alkalmazni...
Tartalomjegyzék 1 A Richardson-iteráció 2 Relaxált Jacobi-iteráció 3 Relaxált Gauss Seidel-iteráció
Induljunk a Seidel-iteráció következő alakjából: Relaxált Gauss Seidel-iteráció (L + D) x = U x + b / ω D x = D x / (1 ω) A kettő súlyozott összege: (D + ωl) x = [(1 ω)d ωu] x + ωb Ezek alapján az iteráció a következő. Definíció: relaxált Seidel-iteráció ω paraméterrel S(ω) x (k+1) = (D + ωl) 1 [(1 ω)d ωu] x (k) + ω(d + ωl) 1 b } {{ } } {{ } B S(ω) c S(ω)
Relaxált Gauss Seidel-iteráció Írjuk fel koordinátánként! (Kiderül, hogy helyben számolható.) Állítás: S(ω) komponensenkénti alakja ahol x (k+1) i,s(1) x (k+1) i = (1 ω) x (k) i + ω x (k+1) i,s(1), a hagyományos Seidel-módszer (S(1)) által adott, azaz x (k+1) i,s(1) = 1 a i,i i 1 n a i,j x (k+1) j + j=1 j=i+1 a i,j x (k) j b i. Minden k lépés az i = 1, 2,..., n sorrendben számolandó.
Relaxált Gauss Seidel-iteráció Biz.: Alakítsunk át, majd gondoljunk bele a mátrixszorzásba. (D + ωl)x (k+1) = (1 ω)dx (k) ωux (k) + ωb Dx (k+1) = (1 ω)dx (k) ωlx (k+1) ωux (k) + ωb ) x (k+1) = (1 ω)x (k) ω D 1 Lx (k+1) + Ux (k) b } {{ } Lásd S(1)-nél. Megj.: Vigyázat! x (k+1) = (1 ω) x (k) + ω x (k+1) S(1) (tehát az egész vektorra); csak komponensenként. nem igaz
Relaxált Gauss Seidel-iteráció Tétel: a relaxált Seidel-módszer konvergenciájáról Ha egy mátrixra az S(ω) módszer konvergens, akkor 0 < ω < 2. Lemma det B = n λ i (B) i=1 Biz.: Előbb a lemma, azután a tétel. Táblán. Meggondoltuk. Megjegyzés: Ha ω / (0, 2), akkor általában nem konvergál. A relaxált Seidel-módszert gyakran alkalmazzák...
Relaxált Gauss Seidel-iteráció Tétel: a relaxált Seidel-módszer konvergenciájáról Ha az egyenletrendszer mátrixa szimmetrikus, pozitív definit és ω (0, 2), akkor az S(ω) módszer konvergens. Biz.: nélkül.
Példák Matlab-ban 1 A Richardson-iteráció viselkedésének vizsgálata különböző paraméterek mellett.