I matematik er Gaussisk eliminering (også kaldet rækkereduktion) en systematisk metode til at løse systemer af lineære ligninger. Metoden er opkaldt efter Carl Friedrich Gauss, en berømt tysk matematiker, som skrev om teknikken (men som ikke var dens eneste opfinder). Gaussisk eliminering omfatter omskrivning af ligningssystemet til en matrixform og anvendelse af elementære rækkeoperationer for at forenkle systemet og finde de ukendte variable.

Grundidé og forstærket matrix

Man starter normalt med at skrive koefficienterne for de ukendte og konstanterne i en forstærket matrix (augmented matrix). For eksempel for systemet

 a11 x1 + a12 x2 + ... + a1n xn = b1 ... am1 x1 + am2 x2 + ... + amn xn = bm 

skrives det som en m×(n+1)-matrix, hvor den sidste kolonne indeholder konstanterne (b1,...,bm).

Elementære rækkeoperationer

Under Gaussisk eliminering må man kun anvende tre typer elementære rækkeoperationer:

  • Type 1: Udskiftning af en række med en anden række.
  • Type 2: Multiplikation af en række med et tal, der ikke er nul.
  • Type 3: Tilføjelse til en række af en skalar gange en anden række (dvs. erstat række i med række i + k·række j).

Målformer: række-echelon og reduceret række-echelon

Målet er typisk at bringe matrixen i række-echelonform (row-echelon form). En matrix i række-echelonform har følgende egenskaber:

  • Alle nullerader (hvis nogen) ligger nederst.
  • Første ikke-nul-element (pivot) i hver ikke-null række ligger til højre for pivot i rækken over.

Nogle gange går man videre til reduceret række-echelonform (reduced row-echelon form), hvor hver pivot er 1, og pivoterne er de eneste ikke-nul elementer i deres kolonner. At reducere helt til denne form kaldes ofte Gauss–Jordan-eliminering.

Algoritmen i korte træk

  1. Opskriv forstærket matrix for ligningssystemet.
  2. Udfør fremad eliminering (forward elimination): vælg en pivot i den første kolonne (ikke-nul), brug rækkeoperationer til at gøre alle elementer under pivot til nul, flyt derefter til næste kolonne og gentag. Dette giver en øvre trekantsmatrix eller række-echelonform.
  3. Hvis man kun ønsker løsningen, brug tilbage-substitution (back substitution) på den resulterende trekantsform til at finde variable én for én fra bund til top.
  4. Hvis man ønsker reduceret række-echelonform, fortsæt med baglæns elimination (Gauss–Jordan): gør elementerne over hver pivot til nul og skaler pivoterne til 1.

Eksempel (2×2)

Vind et hurtigt eksempel til illustration:

System:

 2x +  y = 5  x -  y = 1 

Forstærket matrix:

 [ 2  1 | 5 ] [ 1 -1 | 1 ] 

Trin 1: Brug rækkeoperationer for at få 0 under første pivot. Erstat række2 med række2 - (1/2)·række1:

 [ 2   1  | 5 ] [ 0  -1.5 | -1.5 ] 

Trin 2: Divider række2 med -1.5 for at få pivot 1:

 [ 2   1  | 5 ] [ 0   1  | 1 ] 

Trin 3: Frembring 0 over anden pivote ved at erstatte række1 med række1 - række2:

 [ 2  0 | 4 ] [ 0  1 | 1 ] 

Trin 4: Divider række1 med 2:

 [ 1  0 | 2 ] [ 0  1 | 1 ] 

Så x = 2, y = 1.

Mulige udfald

  • En unik løsning: Når matrixens rang (antal pivoter) er lig med antallet af ukendte.
  • Uendeligt mange løsninger: Når rang < antal ukendte (frie variable) — man kan udtrykke løsningen med parametre.
  • Ingen løsning (inkonsistent): Når en række ender med formen [0 0 ... 0 | c] hvor c ≠ 0 — altså 0 = c, en modsigelse.

Numeriske hensyn og pivotstrategier

Ved beregninger med flydende decimaler kan man få numerisk ustabilitet, hvis pivoter er meget små. Derfor anvendes typisk partial pivoting (bytte rækker så den største absolutværdi i kolonnen bliver pivot) eller fuld pivoting (bytte både rækker og kolonner). Partial pivoting er ofte tilstrækkelig i praksis og forbedrer stabiliteten betydeligt.

Tidskompleksitet og implementering

Den klassiske Gaussiske eliminering kræver O(n^3) beregninger for et n×n-system. For store, sparse systemer (hvor mange koefficienter er 0) bruges specialiserede metoder, som udnytter sparsiteten for at spare både tid og hukommelse.

Anvendelser

Gaussisk eliminering er grundlæggende i mange områder af matematik, naturvidenskab og teknik: løsning af lineære systemer, beregning af matrixinverser, bestemmelse af matrixrangs, beregning af determinanter (ved at reducere til trekantsform) og som underbygning af mange numeriske metoder inden for f.eks. mekanik, elektroteknik og datalogi.

Samlet set er Gaussisk eliminering en enkel, systematisk og kraftfuld metode til at analysere og løse lineære ligningssystemer, både symbolsk og numerisk.