- Pojasnilo z uporabo preprostega primera
- Koraki za sledenje
- Analiza metode
- Prijave
- Primeri metode Gauss-Seidela
- - Primer 1
- Rešitev
- - Primer 2
- Rešitev
- - Primer 3
- Rešitev
- - Primer 4
- Rešitev
- Reference
Metoda Gauss-Seidela je iterativni postopek za iskanje približnih rešitev sistema linearnih algebričnih enačb s poljubno izbrano natančnostjo. Metoda se uporablja za kvadratne matrike z ničelnimi elementi v njihovih diagonalah in konvergenca je zagotovljena, če je matrica diagonalno prevladujoča.
Ustvaril ga je Carl Friedrich Gauss (1777-1855), ki je zasebnemu demonstraciji predstavil enega izmed svojih študentov leta 1823. Kasneje ga je leta 1874 uradno objavil Philipp Ludwig von Seidel (1821-1896), od tod tudi ime obeh matematikov.
Slika 1. Metoda Gauss-Seidela se hitro približa, da bi dobili rešitev sistema enačb. Vir: F. Zapata.
Za popolno razumevanje metode je potrebno vedeti, da je matrica diagonalno prevladujoča, kadar je absolutna vrednost diagonalnega elementa vsake vrstice večja ali enaka vsoti absolutnih vrednosti drugih elementov iste vrstice.
Matematično je izraženo takole:
Pojasnilo z uporabo preprostega primera
Za ponazoritev, iz česa sestavlja metoda Gaussa-Seidela, bomo vzeli preprost primer, v katerem lahko vrednosti X in Y najdemo v sistemu 2 × 2 linearnih enačb, prikazanem spodaj:
5X + 2Y = 1
X - 4Y = 0
Koraki za sledenje
1- Najprej je treba ugotoviti, ali je konvergenca varna. Takoj opazimo, da gre v resnici za diagonalno prevladujoč sistem, saj ima v prvem vrstici prvi koeficient višjo absolutno vrednost kot drugi v prvi vrsti:
-5 -> - 2-
Prav tako je diagonalno prevladujoč drugi koeficient v drugi vrsti:
--4 -> - 1-
2 - Spremeni se spremenljivki X in Y:
X = (1 - 2Y) / 5
Y = X / 4
3- Postavljena je poljubna začetna vrednost, imenovana "seme": Xo = 1, I = 2.
4-Iteracija se začne: da dobimo prvi približek X1, Y1, seme nadomestimo v prvi enačbi koraka 2 in rezultat v drugi enačbi koraka 2:
X1 = (1 - 2 I) / 5 = (1 - 2 × 2) / 5 = -3/5
Y1 = X1 / 4 = (-3/5) / 4 = -3/20
5- Nadaljujemo na podoben način, da dobimo drugi približek rešitve sistema enačb:
X2 = (1 - 2 Y1) / 5 = (1 - 2x (-3/20)) / 5 = 13/50
Y2 = X2 / 4 = (13/50) / 4 = 13/200
6- Tretja ponovitev:
X3 = (1 - 2 Y2) / 5 = (1 - 2 (13/200)) / 5 = 87/500
Y3 = X3 / 4 = (87/500) / 4 = 87/2000
7- Četrta iteracija kot zadnja ponovitev tega ilustracijskega primera:
X4 = (1 - 2 Y3) / 5 = (1 - 2 (87/2000)) / 5 = 913/5000
Y4 = X4 / 4 = (913/5000) / 4 = 913/20000
Te vrednosti se precej ujemajo z rešitvijo, ki jo najdejo druge metode ločevanja. Bralec ga lahko hitro preveri s pomočjo spletnega matematičnega programa.
Analiza metode
Kot je razvidno, je treba pri metodi Gauss-Seidela približne vrednosti, dobljene za prejšnjo spremenljivko v istem koraku, nadomestiti z naslednjo spremenljivko. To ga razlikuje od drugih iterativnih metod, kot je Jacobijeva, pri katerih vsak korak zahteva približke prejšnje stopnje.
Metoda Gauss-Seidel ni vzporeden postopek, medtem ko je Gauss-Jordan metoda. To je tudi razlog, da ima metoda Gauss-Seidel hitrejšo konvergenco - v manj korakih - kot metoda Jordana.
Kar zadeva diagonalno prevladujoče stanje matrike, to ni vedno izpolnjeno. Vendar pa v večini primerov zadostuje zgolj zamenjava vrstic iz prvotnega sistema. Poleg tega se metoda skoraj vedno zbliža, tudi če pogoj diagonalne prevlade ni izpolnjen.
Prejšnji rezultat, dobljen s štirimi ponovitvami metode Gauss-Seidel, je mogoče zapisati v decimalni obliki:
X4 = 0,1826
Y4 = 0,04565
Natančna rešitev predlaganega sistema enačb je:
X = 2/11 = 0,1818
Y = 1/22 = 0,04545.
Torej s samo 4 ponovitvami dobite rezultat z eno tisočino natančnosti (0,001).
Slika 1 prikazuje, kako se zaporedne iteracije hitro približajo natančni rešitvi.
Prijave
Metoda Gauss-Seidela ni omejena samo na sistem 2 linearnih enačb 2 × 2. Prejšnji postopek lahko posplošimo za reševanje linearnega sistema n enačb z n neznank, ki je predstavljen v takšni matrici:
A X = b
Kjer je A matrika nxn, medtem ko je X vektorske n komponente n spremenljivk, ki jih je treba izračunati; in b je vektor, ki vsebuje vrednosti neodvisnih izrazov.
Za posplošitev zaporedja ponovitev, uporabljenih v ilustrativnem primeru, v nxn sistem, iz katerega želi izračunati spremenljivko Xi, se uporabi naslednja formula:
V tej enačbi:
- k je indeks za vrednost, dobljeno v iteraciji k.
-k + 1 označuje novo vrednost v nadaljevanju.
Končno število iteracij se določi, ko se vrednost, dobljena v iteraciji k + 1, razlikuje od vrednosti, dobljene neposredno pred tem, s količino ε, ki je natančno želena natančnost.
Primeri metode Gauss-Seidela
- Primer 1
Napišite splošni algoritem, ki omogoča izračunavanje vektorja približnih rešitev X linearnega sistema enačb nxn, glede na matrico koeficientov A, vektor neodvisnih izrazov b , število iteracij (i ter) in začetno vrednost ali "seme "vektorja X .
Rešitev
Algoritem je sestavljen iz dveh ciklov "To", enega za število ponovitev in drugega za število spremenljivk. To bi bilo naslednje:
Za k ∊
Za i ∊
X: = (1 / A) * (b - ∑ j = 1 n (A * X) + A * X)
- Primer 2
Preverite delovanje prejšnjega algoritma prek njegove uporabe v brezplačni in brezplačni matematični programski opremi SMath Studio, ki je na voljo za Windows in Android. Vzemimo za primer primer matrice 2 × 2, ki nam je pomagala prikazati Gauss-Seidlovo metodo.
Rešitev
Slika 2. Rešitev sistema enačb iz primera 2 x 2 s pomočjo programske opreme SMath Studio. Vir: F. Zapata.
- Primer 3
Uporabite algoritem Gauss-Seidela za naslednji sistem enačb 3 × 3, ki je bil predhodno urejen tako, da prevladujejo koeficienti diagonale (to je večje absolutne vrednosti od absolutnih vrednosti koeficientov ista vrstica):
9 X1 + 2 X2 - X3 = -2
7 X1 + 8 X2 + 5 X3 = 3
3 X1 + 4 X2 - 10 X3 = 6
Uporabite ničelni vektor kot seme in upoštevajte pet iteracij. Komentirajte rezultat.
Rešitev
Slika 3. Rešitev sistema enačb rešenega primera 3 z uporabo SMath Studio. Vir: F. Zapata.
Za isti sistem z 10 ponovitvami namesto 5 dobimo naslednje rezultate: X1 = -0.485; X2 = 1.0123; X3 = -0,3406
To nam pove, da je pet ponovitev dovolj, da dobimo tri decimalna mesta natančnosti in da metoda hitro konvergira v rešitev.
- Primer 4
Z zgoraj navedenim algoritmom Gauss-Seidel poiščite rešitev 4 × 4 sistema enačb, podanega spodaj:
10 x1 - x2 + 2 x3 + 0 x4 = 6
-1 x1 + 11 x2 - 1 x3 + 3 x4 = 25
2 x1 - 1 x2 + 10 x3 - 1 x4 = -11
0 x1 + 3 x2 - 1 x3 + 8 x4 = 15
Za začetek metode uporabite to seme:
x1 = 0, x2 = 0, x3 = 0 in x4 = 0
Razmislite o 10 iteracijah in ocenite napako rezultata, če primerjate s iteracijsko številko 11.
Rešitev
Slika 4. Rešitev sistema enačb rešenega primera 4 z uporabo SMath Studio. Vir: F. Zapata.
Pri primerjavi z naslednjo ponovitvijo (številka 11) je rezultat enak. Največje razlike med obema iteracijama so v vrstnem redu 2 × 10 -8 , kar pomeni, da ima prikazana rešitev natančnost vsaj sedem decimalnih mest.
Reference
- Iterativne metode rešitve. Gauss-Seidel. Pridobljeno: cimat.mx
- Numerične metode. Gauss-Seidel. Pridobljeno iz: test.cua.uam.mx
- Numerična: Gauss-Seidlova metoda. Pridobljeno: aprendeenlinea.udea.edu.co
- Wikipedija. Gauss-Seidelova metoda. Pridobljeno: en. wikipedia.com
- Wikipedija. Gauss-Seidelova metoda. Pridobljeno: es.wikipedia.com