Gausselimination

Gausselimination eller radreduktion, är inom linjär algebra en effektiv algoritm för lösning av linjära ekvationssystem, finna matrisrangen för en matris eller för att beräkna inversen till en matris. Namnet kommer från den tyske matematikern Carl Friedrich Gauss (1777–1855).

Gausselimination är lämplig att använda för lösning av ekvationssystem på formen

  A x = b {\displaystyle \ A\mathbf {x} =\mathbf {b} }

där A är en kvadratisk matris och x och b är kolonnvektorer.

Elimineringen sker genom att med elementära radoperationer nollställa elementen under diagonalen i varje kolonn.

Översikt av metoden

Ett linjärt ekvationssystem

A x = b {\displaystyle Ax=b\,}

med n ekvationer och n obekanta

x = ( x 1 ,   x 2 , . . . ,   x n ) T {\displaystyle x=(x_{1},~x_{2},...,~x_{n})^{T}}

och högerledet

b = ( b 1 ,   b 2 , . . . ,   b n ) T {\displaystyle b=(b_{1},~b_{2},...,~b_{n})^{T}}

har formen

a 1 , 1 x 1 + a 1 , 2 x 2 + + a 1 , n x n = b 1 a 2 , 1 x 1 + a 2 , 2 x 2 + + a 2 , n x n = b 2 a n , 1 x 1 + a n , 2 x 2 + + a n , n x n = b n {\displaystyle {\begin{array}{ccc}a_{1,1}x_{1}+a_{1,2}x_{2}+&\cdots +a_{1,n}x_{n}&=b_{1}\\a_{2,1}x_{1}+a_{2,2}x_{2}+&\cdots +a_{2,n}x_{n}&=b_{2}\\\vdots &\vdots &\vdots \\a_{n,1}x_{1}+a_{n,2}x_{2}+&\cdots +a_{n,n}x_{n}&=b_{n}\end{array}}}

Ekvationslösningen omfattar två steg. Först nollställs elementen under diagonalen i matris A. Därefter beräknas de obekanta genom till exempel bakåtsubstituering.

Gausseliminering innebär division med diagonalens element, pivotelementen, som därmed måste vara nollskilda och helst ej vara nära noll. Det är därför vanligt att med till exempel radomkastning placera det tal i diagonalen som har det största absolutbeloppet i den kolonn som skall nollställas räknat från och med diagonalelementet. Om inget nollskilt element kan hittas avbryts elimineringen då lösningar till ekvationssystemet saknas.

Nedanstående ger ett exempel på en teknik med radomkastning för att undvika division med tal lika med eller nära noll.

Steg 1: Triangulering

Antag att elementen under diagonalen i kolumn k skall nollställas.

a 1 , 1 a 1 , 2 a 1 , k a 1 , n b 1 0 a 2 , 2 a 2 , k a 2 , n b 2 0 0 a k , k b k 0 0 a k + 1 , k b k + 1 0 0 a n , k a n , n b n {\displaystyle {\begin{array}{cccccc|c}a_{1,1}&a_{1,2}&\cdots &a_{1,k}&\cdots &a_{1,n}&b_{1}\\0&a_{2,2}&\cdots &a_{2,k}&\cdots &a_{2,n}&b_{2}\\\vdots &&&&\vdots &&\vdots \\0&0&\cdots &a_{k,k}&\cdots &\cdots &b_{k}\\0&0&\cdots &a_{k+1,k}&\cdots &\cdots &b_{k+1}\\\vdots &&&&\vdots &&\vdots \\0&0&\cdots &a_{n,k}&\cdots &a_{n,n}&b_{n}\end{array}}}

Först söks bland elementen

a k , k , . . . , a n , k {\displaystyle a_{k,k},...,a_{n,k}\,}

det element, pivotelementet, som har det största absolutbeloppet. Om pivotelementets radnummer är skilt från k, kastas rad k och pivotelementets rad om.

Därefter multipliceras en kopia av varje nollskilt element i diagonalens rad med multiplikatorn

a ( j , k ) a ( k , k ) {\displaystyle {\frac {a(j,k)}{a(k,k)}}}

där a(k, k) är diagonalens element och a(j, k) med j > k är det element i kolonnen som skall nollställas och respektive produkt subtraheras från motsvarande element i den rad där nollställning skall ske.

Detta upprepas för de återstående kolonnelementen.

Steg 2: Bakåtsubstitution

När matrisen är triangulerad utförs bakåtsubstitueringen med början i den sista raden

a 1 , 1 x 1 a 1 , 2 x 2 a 1 , n x n b 1 0 a 2 , 2 x 2 a 2 , n x n b 2 0 0 a n , n x n b n {\displaystyle {\begin{array}{cccc|c}a_{1,1}x_{1}&a_{1,2}x_{2}&\cdots &a_{1,n}x_{n}&b_{1}\\0&a_{2,2}x_{2}&\cdots &a_{2,n}x_{n}&b_{2}\\\vdots &&&&\vdots \\0&0&\cdots &a_{n,n}x_{n}&b_{n}\end{array}}}

där xn beräknas som

x n = b n a n , n {\displaystyle x_{n}={\frac {b_{n}}{a_{n,n}}}\,}

Värdet av xn sätts därefter in i föregående rad och xn-1 beräknas som

x n 1 = b n 1 a n 1 , n   x n a n 1 , n 1 {\displaystyle x_{n-1}={\frac {b_{n-1}-a_{n-1,n}~x_{n}}{a_{n-1,n-1}}}}

Detta upprepas tills alla xj beräknats.

Exempel

Lös ekvationssystemet

x 1 + 2 x 2 + x 3 = 8 x 1 + x 2 + x 3 = 6 4 x 1 x 2 + 2 x 3 = 8 {\displaystyle {\begin{array}{cccccc}x_{1}&+&2x_{2}&+&x_{3}&=8\\x_{1}&+&x_{2}&+&x_{3}&=6\\4x_{1}&-&x_{2}&+&2x_{3}&=8\\\end{array}}}

Nollställning i kolumn 1 av rad 2 och 3. Rad 3 är pivotraden och rad 1 och rad 3 kastas om:

1 2 1 8 1 1 1 6 4 1 2 8 4 1 2 8 1 1 1 6 1 2 1 8 4 1 2 8 0 5 4 1 2 4 0 9 4 1 2 6 {\displaystyle {\begin{array}{ccc|c}1&2&1&8\\1&1&1&6\\4&-1&2&8\\\end{array}}\quad \Rightarrow \quad {\begin{array}{ccc|c}4&-1&2&8\\1&1&1&6\\1&2&1&8\end{array}}\quad \Rightarrow \quad {\begin{array}{ccc|c}4&-1&2&8\\0&{\frac {5}{4}}&{\frac {1}{2}}&4\\0&{\frac {9}{4}}&{\frac {1}{2}}&6\\\end{array}}}

Nollställning i kolumn 2 av rad 3. Rad 3 är pivotraden och rad 2 och rad 3 kastas om:

4 1 2 8 0 5 4 1 2 4 0 9 4 1 2 6 4 1 2 8 0 9 4 1 2 6 0 5 4 1 2 4 4 1 2 8 0 9 4 1 2 6 0 0 2 9 2 3 {\displaystyle {\begin{array}{ccc|c}4&-1&2&8\\0&{\frac {5}{4}}&{\frac {1}{2}}&4\\0&{\frac {9}{4}}&{\frac {1}{2}}&6\\\end{array}}\quad \Rightarrow \quad {\begin{array}{ccc|c}4&-1&2&8\\0&{\frac {9}{4}}&{\frac {1}{2}}&6\\0&{\frac {5}{4}}&{\frac {1}{2}}&4\\\end{array}}\quad \Rightarrow \quad {\begin{array}{ccc|c}4&-1&2&8\\0&{\frac {9}{4}}&{\frac {1}{2}}&6\\0&0&{\frac {2}{9}}&{\frac {2}{3}}\\\end{array}}}

Bakåtsubstituering:

x 3 = 2 3 2 9 = 3 {\displaystyle x_{3}={\frac {\frac {2}{3}}{\frac {2}{9}}}=3}
x 2 = 6 1 2 3 9 4 = 2 {\displaystyle x_{2}={\frac {6-{\frac {1}{2}}\cdot 3}{\frac {9}{4}}}=2}
x 1 = 8 ( 1 ) 2 2 3 4 = 1 {\displaystyle x_{1}={\frac {8-(-1)\cdot 2-2\cdot 3}{4}}=1}

Gauss-Jordan-elimination

Efter Gausselimination erhålls en övertriangulär matris som med liknande teknik som vid Gausselimination kan överföras till en diagonalmatris vilket kallas Gauss-Jordan-elimination.

a 11 a 12 a 13 b 1 0 a 22 a 23 b 2 0 0 a 33 b 3 a 11 0 0 b 1 0 a 22 0 b 2 0 0 a 33 b 3 {\displaystyle {\begin{array}{ccc|c}a_{11}&a_{12}&a_{13}&b_{1}\\0&a_{22}&a_{23}&b_{2}\\0&0&a_{33}&b_{3}\\\end{array}}\Rightarrow {\begin{array}{ccc|c}a_{11}'&0&0&b_{1}'\\0&a_{22}'&0&b_{2}'\\0&0&a_{33}'&b_{3}'\\\end{array}}}

Tillämpning av Gauss-Jordan för beräkning av invers

Om Gauss-Jordan-elimination tillämpas på en kvadratisk matris, kan den användas för att beräkna matrisens invers. Detta kan göras genom att till höger lägga till en enhetsmatris av samma dimensioner som matrisen. Exempel:

Låt matrisen A vara

A = [ 2 1 0 1 2 1 0 1 2 ] {\displaystyle A={\begin{bmatrix}2&-1&0\\-1&2&-1\\0&-1&2\end{bmatrix}}}

och bilda genom tillägg av enhetsmatrisen

[ A I ] = [ 2 1 0 1 0 0 1 2 1 0 1 0 0 1 2 0 0 1 ] {\displaystyle [AI]={\begin{bmatrix}2&-1&0&1&0&0\\-1&2&-1&0&1&0\\0&-1&2&0&0&1\end{bmatrix}}}

Genom elementära radoperationer kan A överföras till en diagonalmatris:

[ I A 1 ] = [ 1 0 0 3 4 1 2 1 4 0 1 0 1 2 1 1 2 0 0 1 1 4 1 2 3 4 ] {\displaystyle [IA^{-1}]={\begin{bmatrix}1&0&0&{\frac {3}{4}}&{\frac {1}{2}}&{\frac {1}{4}}\\0&1&0&{\frac {1}{2}}&1&{\frac {1}{2}}\\0&0&1&{\frac {1}{4}}&{\frac {1}{2}}&{\frac {3}{4}}\end{bmatrix}}}

Matrisens invers är den högra halvan av [ I A 1 ] {\displaystyle [IA^{-1}]} :

A 1 = [ 3 4 1 2 1 4 1 2 1 1 2 1 4 1 2 3 4 ] {\displaystyle A^{-1}={\begin{bmatrix}{\frac {3}{4}}&{\frac {1}{2}}&{\frac {1}{4}}\\{\frac {1}{2}}&1&{\frac {1}{2}}\\{\frac {1}{4}}&{\frac {1}{2}}&{\frac {3}{4}}\end{bmatrix}}}

Källor

  • Sparr, Gunnar, 1942– (1995 ;). Linjär algebra. Studentlitteratur. OCLC 187001658. http://worldcat.org/oclc/187001658. Läst 19 april 2019 


v  r
Linjär algebra
Grundläggande begrepp
Skalär · Vektor · Noll · Ortogonalitet · Ekvationssystem · Rum · Linjärkombination · Inre produkt · Oberoende · Bas · Radrum · Kolonnrum · Nollrum · Gram-Schimdt · Egenvärde · Hölje · Linjäritet
Bild på euklidiska rummet
Vektoralgebra
Matriser
Elementär · Block · Enhet · Determinant · Norm · Rang · Transformation · Rotation · Invers · Cramers regel · Trappstegsform · Spår · Transponat · Gausselimination · Symmetri · Addition
Multilinjär algebra
Geometrisk algebra · Yttre algebra · Bivektor · Multivektor · Tensor
Konstruktioner
Delrum · Dualrum · Funktionsrum · Kvotrum · Tensorprodukt
Numerik
Kategori Kategori