Gauss-Seidel iteráció

Hasonló dokumentumok
Gauss elimináció, LU felbontás

Numerikus módszerek beugró kérdések

6. gyakorlat. Gelle Kitti. Csendes Tibor Somogyi Viktor. London András. jegyzetei alapján

Gauss-eliminációval, Cholesky felbontás, QR felbontás

NUMERIKUS MÓDSZEREK I. BEUGRÓ KÉRDÉSEK

Konjugált gradiens módszer

Numerikus módszerek 1.

9. gyakorlat Lineáris egyenletrendszerek megoldási módszerei folyt. Néhány kiegészítés a Gauss- és a Gauss Jordan-eliminációhoz

Polinomok, Lagrange interpoláció

Numerikus módszerek I. zárthelyi dolgozat (2017/18. I., A. csoport) Megoldások

Diszkrét matematika I., 12. előadás Dr. Takách Géza NyME FMK Informatikai Intézet takach november 30.

Numerikus módszerek 1.

Numerikus matematika vizsga

Numerikus módszerek I. zárthelyi dolgozat, 2009/10. I. félév, A. csoport, MEGOLDÁSOK

Gyakorló feladatok. Agbeko Kwami Nutefe és Nagy Noémi

Eötvös Loránd Tudományegyetem Természettudományi Kar

Táblán. Numerikus módszerek 1. előadás (estis), 2017/2018 ősz. Lócsi Levente. Frissült: december 1.

Mátrixok 2017 Mátrixok

alakú számot normalizált lebegőpontos számnak nevezik, ha ,, és. ( : mantissza, : mantissza hossza, : karakterisztika) Jelölés: Gépi számhalmaz:

Gauss-Jordan módszer Legkisebb négyzetek módszere, egyenes LNM, polinom LNM, függvény. Lineáris algebra numerikus módszerei

Numerikus matematika. Irodalom: Stoyan Gisbert, Numerikus matematika mérnököknek és programozóknak, Typotex, Lebegőpontos számok

NUMERIKUS MÓDSZEREK I. TÉTELEK

1 Lebegőpontos számábrázolás

NUMERIKUS MÓDSZEREK PÉLDATÁR

Norma Determináns, inverz Kondíciószám Direkt és inverz hibák Lin. egyenletrendszerek A Gauss-módszer. Lineáris algebra numerikus módszerei

Lineáris algebrai egyenletrendszerek direkt és iterációs megoldási módszerei

Tétel: Ha,, akkor az ábrázolt szám hibája:

Legkisebb négyzetek módszere, Spline interpoláció

Feladat: megoldani az alábbi egyenletrendszert: A x = b,

Numerikus módszerek 1.

1. Determinánsok. Oldjuk meg az alábbi kétismeretlenes, két egyenletet tartalmaz lineáris egyenletrendszert:

Bevezetés az algebrába 2

Matematika A2 vizsga mgeoldása június 4.

minden x D esetén, akkor x 0 -at a függvény maximumhelyének mondjuk, f(x 0 )-at pedig az (abszolút) maximumértékének.

Numerikus integrálás

Sorozatok, sorok, függvények határértéke és folytonossága Leindler Schipp - Analízis I. könyve + jegyzetek, kidolgozások alapján

LINEÁRIS EGYENLETRENDSZEREK október 12. Irodalom A fogalmakat, definíciókat illetően két forrásra támaszkodhatnak: ezek egyrészt elhangzanak

Numerikus módszerek 1.

Lineáris egyenletrendszerek

Lineáris egyenletrendszerek

Numerikus módszerek 1.

Lineáris algebra és mátrixok alkalmazásai

Vektorok, mátrixok, lineáris egyenletrendszerek

KOVÁCS BÉLA, MATEMATIKA II.

9. Előadás. Megyesi László: Lineáris algebra, oldal. 9. előadás Mátrix inverze, mátrixegyenlet

41. Szimmetrikus mátrixok Cholesky-féle felbontása

Fraktálok. Kontrakciók Affin leképezések. Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék. TARTALOMJEGYZÉK Kontrakciók Affin transzformációk

Numerikus Analízis I.

Matematikai geodéziai számítások 8.

9. Előadás. Megyesi László: Lineáris algebra, oldal. 9. előadás Mátrix inverze, Leontyev-modell

Lineáris algebra numerikus módszerei

Megoldott feladatok november 30. n+3 szigorúan monoton csökken, 5. n+3. lim a n = lim. n+3 = 2n+3 n+4 2n+1

Diszkrét matematika II., 5. előadás. Lineáris egyenletrendszerek

3. Előadás. Megyesi László: Lineáris algebra, oldal. 3. előadás Lineáris egyenletrendszerek

Saj at ert ek-probl em ak febru ar 26.

11. Előadás. 11. előadás Bevezetés a lineáris programozásba

Lineáris algebrai egyenletrendszerek iteratív megoldási módszerei

Bevezetés az algebrába 2 Vektor- és mátrixnorma

Differenciálegyenletek numerikus megoldása

Numerikus Analízis. Király Balázs 2014.

5. Előadás. (5. előadás) Mátrixegyenlet, Mátrix inverze március 6. 1 / 39

A sorozat fogalma. függvényeket sorozatoknak nevezzük. Amennyiben az értékkészlet. az értékkészlet a komplex számok halmaza, akkor komplex

karakterisztikus egyenlet Ortogonális mátrixok. Kvadratikus alakok főtengelytranszformációja

A fontosabb definíciók

Lineáris algebra numerikus módszerei

3. Lineáris egyenletrendszerek megoldása február 19.

Rekurzív sorozatok. SZTE Bolyai Intézet nemeth. Rekurzív sorozatok p.1/26

LINEÁRIS ALGEBRAI EGYENLETRENDSZEREK

Bevezetés az algebrába 1

1. feladatsor: Vektorterek, lineáris kombináció, mátrixok, determináns (megoldás)

4. Fuzzy relációk. Gépi intelligencia I. Fodor János NIMGI1MIEM BMF NIK IMRI

összeadjuk 0-t kapunk. Képletben:

Kvadratikus alakok és euklideszi terek (előadásvázlat, október 5.) Maróti Miklós, Kátai-Urbán Kamilla

Analízis I. beugró vizsgakérdések

Analízis I. Vizsgatételsor

Numerikus módszerek példatár

II. Két speciális Fibonacci sorozat, szinguláris elemek, természetes indexelés

6. Előadás. Megyesi László: Lineáris algebra, oldal. 6. előadás Bázis, dimenzió

Matematika (mesterképzés)

Gyakorló feladatok I.

15. LINEÁRIS EGYENLETRENDSZEREK

Problémás regressziók

Vektorterek. Wettl Ferenc február 17. Wettl Ferenc Vektorterek február / 27

8. Előadás. Megyesi László: Lineáris algebra, , oldal. 8. előadás Mátrix rangja, Homogén lineáris egyenletrendszer

Markov-láncok stacionárius eloszlása

rank(a) == rank([a b])

2010. október 12. Dr. Vincze Szilvia

Irodalom. (a) A T, B T, (b) A + B, C + D, D C, (c) 3A, (d) AD, DA, B T A, 1 2 B = 1 C = A = 1 0 D = (a) 1 1 3, B T = = ( ) ; A T = 1 0

Matematikai geodéziai számítások 5.

10. Előadás. Megyesi László: Lineáris algebra, oldal. 10. előadás Sajátérték, Kvadaratikus alak

Matematikai geodéziai számítások 8.

Számsorok. 1. Definíció. Legyen adott valós számoknak egy (a n ) n=1 = (a 1, a 2,..., a n,...) végtelen sorozata. Az. a n

n n (n n ), lim ln(2 + 3e x ) x 3 + 2x 2e x e x + 1, sin x 1 cos x, lim e x2 1 + x 2 lim sin x 1 )

Matematikai geodéziai számítások 9.

12. előadás. Egyenletrendszerek, mátrixok. Dr. Szörényi Miklós, Dr. Kallós Gábor

Numerikus módszerek 1.

Sajátértékek és sajátvektorok. mf1n1a06- mf1n2a06 Csabai István

Osztályozóvizsga követelményei

Matematikai geodéziai számítások 9.

Átírás:

Közelítő és szimbolikus számítások 5. gyakorlat Iterációs módszerek: Jacobi és Gauss-Seidel iteráció Készítette: Gelle Kitti Csendes Tibor Somogyi Viktor London András Deák Gábor jegyzetei alapján

1 ITERÁCIÓS MÓDSZEREK 1. Iterációs módszerek Korábban már vettünk lineáris egyenletrendszerek megoldására szolgáló algoritmusokat (LU, Cholesky és QR felbontások). Az eddig tanult módszereket direkt módszerek nek nevezzük. Az ilyen típusú eljárások véges sok meghatározott számú lépésben megadják a megoldást, úgy, hogy az egyenletrendszert olyan alakra hozzák elemi átalakításokkal, hogy a megoldások könnyen leolvashatóak legyenek. Ezek a kisebb vagy közepes méretű lineáris egyenletrendszerek megoldására (esetleg olyanokra, amelyek nagyobb sávmátrix alakúak) ajánlottak, mivel a műveletigényük ott még elviselhető. Viszont a nagy méretű, nem feltétlenül ritka együttható-mátrixú egyenletrendszerek megoldásakor ezek igen nagy műveletigényűek lehetnek. Ezekre alkalmasabbak az iterációs módszerek (továbbá olyan esetekben is használják, amikor az eliminációs módszerek kerekítési hibáival terhelt eredményeket pontosítani kell). Az iterációs módszerek olyan eljárások, amelyek adott kezdeti értékből kiindulva minden iterációval jobb közelítését adják a megoldásnak, de azt általában véges sok lépésben nem érik el. Az iterációs módszerek lényege, hogy egy olyan x (0), x (1), x (),...,,... vektorsorozatot generálunk, mely az adott egyenletrendszer megoldásához konvergál. Mivel számításaink minden esetben véges pontosságúak, így a kívánt pontosságot gyakran igen kevés lépésben elérhetjük. Az iterációs módszerek alapja az ún. fixpontkeresés, melyet a következőképpen csinálunk: a Banach-féle fixponttétel szerint, ha f egy,,jó tulajdonságú függvény, akkor egyetlen olyan x pont létezik, hogy x = f(x ) (ezt hívjuk az f függvény fixpontjának), és ez megkapható úgy, hogy egy tetszőleges x 0 pontból kiindulva képezzük az x (0), x (1) = f(x (0) ), x () = f(x (1) ),..., = f( ),... sorozatot és vesszük a határértékét. Ekkor x = lim (k ). Tehát veszünk egy nekünk szimpatikus kezdővektort, és az új közelítő értéket úgy kapjuk, hogy az előzőn végrehajtjuk minden iterációban ugyanazt a műveletet. Az x = lim (k ) pedig azt jelenti, hogy ha,,elég sok iterációt csinálunk, akkor meg fogjuk kapni a megoldást (vagy legalábbis annak egy tetszőleges pontosságú közelítését). Egy iterációs módszernek két fontos tulajdonsága van. Egyrészt, hogy konvergál-e, azaz hogy tetszőleges kezdővektorból indulva tényleg a (jelen esetben egyenletrendszer) megoldásának közelítését kapjuk. Másrészt, hogy mit választunk leállási kritériumnak. Általában akkor fejezünk be egy iterációt, ha annak két egymás utáni közelítése elég közel van egymáshoz, azaz x (m) x (m+1) ɛ teljesül, adott ɛ-ra. E mellé szokás még megadni egy maximális iterációszámot is. 1

JACOBI ITERÁCIÓ. Jacobi iteráció A feladat tehát egy Ax = b egyenletrendszer megoldása. Itt az egyenletrendszert átrendezzük olyan alakra, hogy a bal oldalon a változók álljanak (x 1,..., x n ), jobb oldalon pedig az egyenletrendszer többi része és az eredeti jobb oldal. Ezt minden egyenletnél úgy tudjuk megoldani, hogy az i-edik egyenletben az i-edik változó együtthatójával osztunk, majd az i-edik tagon kívül mindegyiket kivonjuk az egyenletből. Formálisan a következő alakban írhatjuk fel: = D 1 b D 1 (A D). Itt a D egy diagonális mátrix, amely az A főátlóbeli elemeit tartalmazza. Ennek az inverze pont az a mátrix, ahol D diagonális elemeit felváltják azok reciprokai. Vegyük észre, hogy a D 1 -zel balról való szorzás pont azt eredményezi, mintha az i-edik egyenletet elosztottuk volna az i-edik változó együtthatójával. A képlet kifejezi továbbá a kivonást is, ugyanis az új egyenletünkben az eredeti A főátlóbeli elemein kívül minden tagját átvittük a jobb oldalra kivonással (ezt fejezi ki az A D tag). A továbbiakban legyen c = D 1 b és B = D 1 (A D). Ekkor az iterációs egyenletünk = c + B. Hogyan is néz ki ez egy konkrét sorra az egyenletrendszerből? Nézzük az i-edik egyenletet: n j=1 a ijx j = b i 1 i n. Tegyük fel, hogy 0 (i = 1,..., n). Az i-edik egyenletből fejezzük ki az i-edik változót, s ezzel megkapjuk a fenti alakú iterációs formát: i = b i (l=1,i l) a il l ahol i = 1,,..., n; k = 1,, 3... az iterációs index és x (0) 1, x (0), x (0) 3,..., x (0) n kezdőértékek. Példa. Hajtsunk végre néhány Jacobi iterációt a következő Ax = b alakú egyenletrendszerünkön: 5 1 0 1 0 0 1 3 x 1 x x 3 7 = 5

JACOBI ITERÁCIÓ Megoldás. Írjuk fel egyenletrendszer formájában a fenti mátrixos alakot: 5x 1 + x = 7 x 1 + x = 5 x + 3x 3 = Rendezzük át az egyenletrendszerünket = B + c alakúra: Írjuk vissza mátrix alakra: 1 3 Induljunk el az x (0) = 1. Iteráció. 1 = 1 5 x(k) + 7 5 = 1 x(k) 1 + 5 3 = 1 3 x(k) + 3 0 1/5 0 = 1/ 0 0 0 1/3 0 ( 1 1 1) T kezdővektorból. 1 3 7/5 + /3 0 1/5 0 1 7/5 6/5 x (1) = 1/ 0 0 1 + = 0 1/3 0 1 /3 1/3. Iteráció. 3. Iteráció. 0 1/5 0 6/5 7/5 1 x () = 1/ 0 0 + = 1.9 0 1/3 0 1/3 /3 0 0 1/5 0 1 7/5 1.0 x (3) = 1/ 0 0 1.9 + = 0 1/3 0 0 /3 0.03 A pontos gyökök az x = ( 1 0) T vektor elemei. 3

3 GAUSS-SEIDEL ITERÁCIÓ 3. Gauss-Seidel iteráció A módszer a Jacobi iteráció egy olyan módosítása, ahol a (k + 1)-edik közelítő vektor i-edik koordinátájának kiszámításakor figyelembe vesszük, hogy az 1.,.,..., (i 1). koordinátákat már kiszámítottuk, így azokat használjuk fel megfelelő koordinátái helyett. Tehát az i. komponensének kiszámításához az ebben az iterációs lépésben kapott értékeket is felhasználjuk és csak i-nél nagyobb komponensek esetén használjuk az i-nél nagyobb komponenseinek értékét. Az első komponensét a Jacobi eljárással határozzuk meg. (Ez egyébként egy bevett módszer az algoritmusok javítására, bár nem biztos, hogy minden esetben tényleg jobb lesz.) Képlete: i = b (i 1) i a il l l=1 (l=i+1) a il l ahol i = 1,,..., n; k = 1,, 3... az iterációs index és x (0) 1, x (0), x (0) 3,..., x (0) n kezdőértékek. Példa. Az előző feladat így nézne ki Gauss-Seidel iterációval: Induljunk el az x (0) = 1. Iteráció. 1 = 1 5 x(k) + 7 5 = 1 x(k+1) 1 + 5 3 = 1 3 x(k+1) + 3 ( 1 1 1) T kezdővektorból.. Iteráció. x (1) 1 = 1 5 1 + 7 5 x (1) = 1 1. + 5 x (1) 3 = 1 3 1.9 + 3 = x(1) 1 = 1. = x(1) = 1.9 = x(1) 3 = 0.03 x () 1 = 1 5 1.9 + 7 5 x () = 1 1.0 + 5 x () 3 = 1 3 1.99 + 3 = x() 1 = 1.0 = x() = 1.99 = x() 3 = 0.003 4

4 AZ ITERÁCIÓK KONVERGENCIÁJA 4. Az iterációk konvergenciája Mint az elején említettük, az iterációs módszerek egy fontos tulajdonsága, hogy konvergensek-e, azaz,,elég sok iterációt végrehajtva közelítjük-e a keresett megoldást. Ahhoz, hogy tudjunk beszélni a fenti iterációs módszerek konvergenciájáról, szükségünk van a következő fogalomra: Definíció 4.1. Szigorúan diagonális domináns mátrix: az n n-es A mátrix soronként (szigorúan) domináns főátlójú, ha a főátló minden eleme abszolút értékben nagyobb a sorában lévő többi elem abszolút értékeinek összegénél, azaz képletben: minden i = 1,,..., n-re. > a ij (j=1,j i) Definíció 4.. Akkor mondjuk, hogy egy iterációs sorozat globálisan konvergens, ha tetszőleges kezdővektorból indulva a módszer a megoldáshoz konvergál. Elegendő feltétel az iterációk konvergenciájára: Ha az n egyenletből álló n- ismeretlenes egyenletrendszer együtthatómátrixa szigorúan diagonális domináns, akkor bármely indulóvektor esetén a Jacobi- és a Gauss-Seidel iteráció is konvergens (tehát globálisan konvergens). Ez a feltétel csak elegendő, nem pedig szükséges a konvergenciához, tehát előfordulhat olyan, hogy valamelyik módszer konvergál olyan egyenletrendszer esetén, melynek nem szigorúan diagonális domináns az együttható mátrixa. Továbbá általánosan elmondható, hogy a Jacobi eljárás tetszőleges kezdeti vektor esetén konvergál, ha: oszlopösszeg feltétel, vagy a sorösszeg feltétel vagy a feltétel teljesül. max k max i ( (i=1,i k) (i=1,i k) (i=1,i k) a ik a ik < 1 ) 1/ a ik < 1 < 1 5

4 AZ ITERÁCIÓK KONVERGENCIÁJA Tétel(Sassenfeld kritérium 1 ): Tegyük fel hogy a fent definiált B mátrix eleget tesz a következő feltételnek:, ahol a p j számokat a: p 1 = (k=) a 1k a 11 p =, p j = max p j < 1 j=1,...,n (j 1) (k=1) a jk a jj p k + (k=j+1) (j =,..., n) rekurzióval határozzuk meg. Akkor a Gauss-Seidel iteráció minden kezdővektorból indítva konvergál a megoldáshoz annál gyorsabban, minél kisebb ez a p érték. Szükséges és elegendő feltétel az iterációk konvergenciájára: Mindkét iterációs eljárás pontosan akkor konvergens, ha a ρ(b) spektrálsugárra (azaz a legnagyobb abszolútértékű sajátérték abszolútértékére) teljesül, hogy ρ(b) < 1. (Erről még beszélünk egy későbbi gyakorlaton, az előadáson ennek a bizonyítása szerepel.) a jk a jj 1 R. Kress: Numerical Analysis, Springer Verlag, 1988 6