Bij het oplossen van lineaire vergelijkingen speelt de methode van Gaussian eliminatie een essentiële rol. Deze techniek, die gebruik maakt van rijoperaties, stelt ons in staat om systemen van lineaire vergelijkingen op een systematische manier op te lossen. Het proces kan worden opgesplitst in twee fasen: voorwaartse eliminatie en achterwaartse substitutie, waarbij elke stap zorgvuldig wordt uitgevoerd om de matrix in een vorm te brengen die het oplossen vergemakkelijkt.

De basis van deze methode ligt in het concept van pivots, die dienen als sleutels voor de aanpak. Bij een systeem van mm vergelijkingen voor nn onbekenden, wordt eerst de augmented matrix opgesteld. De rij-omrekeningen beginnen met het zoeken naar een niet-nul element in de eerste kolom en blijven doorgaan naar de volgende kolommen totdat de pivots zijn gevonden. Deze pivots markeren de plaats van de leidende variabelen in het systeem. Vervolgens worden de onderliggende rijen zodanig aangepast dat er nullen onder elke pivot verschijnen. Dit maakt het makkelijker om de onbekenden één voor één te isoleren.

Nadat de matrix is gebracht in een zogenaamde echelonvorm — een vorm die het makkelijk maakt om de oplossingen van het systeem te identificeren — wordt het proces van achterwaartse substitutie gestart. Als het aantal niet-nul rijen in de echelonmatrix gelijk is aan het aantal onbekenden, dan heeft het systeem een unieke oplossing. Als er echter vrije variabelen aanwezig zijn (onbekenden die niet direct afhankelijk zijn van de andere onbekenden), dan wordt het systeem uitgedrukt in termen van parameters, waardoor er een oneindig aantal oplossingen mogelijk is.

De rank van een matrix, die het aantal niet-nul rijen in de echelonmatrix vertegenwoordigt, is van cruciaal belang voor het begrijpen van de oplossingen van een systeem. Het bepaalt of een systeem van vergelijkingen inconsistent is (geen oplossing heeft), consistent maar oneindig veel oplossingen heeft, of consistent met een unieke oplossing. Het aantal pivots, dat overeenkomt met de rank van de matrix, speelt hierbij een belangrijke rol. Als er bijvoorbeeld meer onbekenden dan rijen zijn, zullen er vrije variabelen zijn die bepalen hoe de oplossingen zich voordoen.

Het concept van een echelonmatrix is van fundamenteel belang in de Gaussian eliminatie. Een matrix bevindt zich in echelonvorm als:

  1. Alle rijen die alleen nullen bevatten, staan onderaan.

  2. De eerste niet-nul waarde in elke rij (de leading entry) bevindt zich altijd in een kolom die verder naar rechts ligt dan de leading entry van de rij erboven.

De echelonvorm biedt een duidelijke structuur die het mogelijk maakt om de oplossingen systematisch te vinden. De pivots vormen de leidende onbekenden, en de rest van de onbekenden kunnen worden geïsoleerd door de juiste substituties door te voeren.

Bijvoorbeeld, stel je voor dat je een systeem van drie lineaire vergelijkingen hebt. Door Gaussian eliminatie krijg je een matrix waarbij de eerste twee kolommen pivots bevatten, en de derde kolom een vrije variabele. Dit betekent dat je twee parameters kunt gebruiken om de oplossing te beschrijven, wat overeenkomt met een vlak in R4\mathbb{R}^4, waarbij de onbekenden x2x_2 en x4x_4 als vrije variabelen worden ingesteld.

Als er echter een inconsistente rij ontstaat, zoals een rij met alleen nullen, maar de bijbehorende waarde niet nul is, zoals 0=10 = 1, dan is het systeem inconsistent en heeft het geen oplossing. Dit kan bijvoorbeeld voorkomen in situaties waar de rijen niet lineair onafhankelijk zijn, wat leidt tot een tegenstrijdigheid.

Het belang van de rank en het aantal vrije variabelen kan niet genoeg benadrukt worden. Wanneer een systeem bijvoorbeeld meer onbekenden dan rijen heeft, kunnen er vrije variabelen bestaan die de mogelijke oplossingen beïnvloeden. In dergelijke gevallen zijn de oplossingen parametrisch, en het systeem kan oneindig veel oplossingen hebben, die allemaal door verschillende waarden van de vrije variabelen kunnen worden beschreven.

Naast het bovenstaande, is het belangrijk te begrijpen dat de volgorde van de rijoperaties invloed heeft op het eindresultaat, maar dat het uiteindelijke resultaat niet afhankelijk is van de specifieke volgorde. Alle rij-equivalente matrices hebben dezelfde rank en leiden tot dezelfde set van oplossingen, maar de specifieke waarden van de parameters kunnen variëren afhankelijk van de gekozen eliminatiestappen.

In sommige gevallen, zoals bij een inconsistente matrix, kan de eliminatie echter tot een situatie leiden waarin geen oplossingen bestaan, wat aangeeft dat het systeem onoplosbaar is. Dit kan worden vastgesteld door de laatste fase van de achterwaartse substitutie, waarin de inconsistentie direct naar voren komt.

Bij de toepassing van Gaussian eliminatie is het ook cruciaal om de fundamentele eigenschappen van de echelonvorm te herkennen. De structuur die de echelonmatrix biedt, is niet alleen een teken van de oplosbaarheid van een systeem, maar ook een indicatie van de dimensie van de oplossingsruimte. In gevallen waarin het systeem een unieke oplossing heeft, betekent dit dat de rank van de matrix gelijk is aan het aantal onbekenden, en er dus geen vrije variabelen zijn.

Hoe bepaal je de oplossing van lineaire systemen met behulp van de rij- en kolomruimtes van een matrix?

We beschouwen de matrix AA gedefinieerd als:

A=[1232453669]A = \begin{bmatrix} 1 & 2 & 3 \\ 2 & 4 & 5 \\ 3 & 6 & 6 \\ 9
\end{bmatrix}

De overeenkomstige vergelijking As=bA \mathbf{s} = \mathbf{b} kan worden herschreven als:

[123245366][s1s2s3]=[569]\begin{bmatrix} 1 & 2 & 3 \\ 2 & 4 & 5 \\ 3 & 6 & 6 \\ \end{bmatrix} \begin{bmatrix} s_1 \\ s_2 \\ s_3 \\ \end{bmatrix} = \begin{bmatrix} 5 \\ 6 \\ 9 \\ \end{bmatrix}

Bij het toepassen van elementaire rijbewerkingen, zoals het aftrekken van 2r12r_1 van r2r_2 en 3r13r_1 van r3r_3, wordt de matrix getransformeerd naar een nieuwe vorm:

[123001000]\begin{bmatrix}
1 & 2 & 3 \\ 0 & 0 & -1 \\ 0 & 0 & 0 \\ \end{bmatrix}

Van hieruit wordt de algemene oplossing voor de onbekenden s1s_1, s2s_2, en s3s_3 uitgedrukt in termen van een vrije variabele tt, zoals weergegeven in de volgende vergelijking:

s=[501]+t[210]\mathbf{s} = \begin{bmatrix} 5 \\ 0 \\ -1 \end{bmatrix} + t \begin{bmatrix} -2 \\ 1 \\ 0 \end{bmatrix}

Het vector s\mathbf{s} is de oplossing van As=bA \mathbf{s} = \mathbf{b}, en de vector s0=(5,0,1)T\mathbf{s_0} = (5, 0, -1)^T is een particuliere oplossing van de inhomogene vergelijking As=bA \mathbf{s} = \mathbf{b}, terwijl de vector t[210]t \begin{bmatrix} -2 \\ 1 \\ 0 \end{bmatrix} de algemene oplossing is van de homogene vergelijking As=0A \mathbf{s} = 0. Dit volgt uit de stelling van lineaire systemen, waarbij de rij- en kolomruimten van een matrix cruciale rol spelen.

De basis van de kolomruimte van een matrix is belangrijk omdat de vectoren van de kolomruimte van AA lineaire combinaties zijn van de kolomvectoren van de matrix. In dit geval hebben we de basis van de kolomruimte van AA bepaald door de pivotelementen van de gereduceerde echelonmatrix UU, en we hebben gezien dat de bijbehorende basisvectoren u1\mathbf{u_1} en u3\mathbf{u_3} zijn, hetgeen leidt tot de set B={a1,a3}B = \{ \mathbf{a_1}, \mathbf{a_3} \}, die een basis vormt voor Col(A)\text{Col}(A).

De gereduceerde echelonmatrix UU voor matrix AA is uniek, zoals gesteld in de stelling van de uniciteit van de gereduceerde echelonmatrix. Elke andere echelonvorm van AA heeft de pivotelementen op dezelfde posities als UU, maar kan verschillende niet-nulgetallen als pivotelementen bevatten. Dit betekent dat de structuur van de echelonvorm essentieel is voor het vinden van de oplossing van het lineaire systeem, omdat de pivotelementen aangeven welke kolommen van de matrix lineair onafhankelijk zijn en dus bijdragen aan de oplossing.

De rijruimte van een matrix wordt gedefinieerd als de subruimte van Rn\mathbb{R}^n die wordt opgespannen door de transponering van de rijen van de matrix. Een basis voor de rijruimte wordt gemakkelijk gevonden door de gereduceerde echelonvorm UU van de matrix te gebruiken. In het geval van de matrix AA, door de transponering van de niet-nulrijen van de gereduceerde matrix UU, krijgen we een basis voor de rijruimte van AA.

Er is een opmerkelijke relatie tussen de rijruimte en de kolomruimte van de matrix en haar transponaat. Voor elke matrix AA geldt:

Row(A)=Col(AT)\text{Row}(A) = \text{Col}(A^T)
Col(A)=Row(AT)\text{Col}(A) = \text{Row}(A^T)

Deze gelijkheden geven aan dat de rijen van AA overeenkomen met de kolommen van ATA^T, en vice versa. Dit is belangrijk omdat het ons helpt om het gedrag van lineaire systemen beter te begrijpen. Als we de basis van de kolomruimte van AA willen vinden, kunnen we ATA^T gebruiken en de transponering van de niet-nulrijen van de gereduceerde echelonmatrix van ATA^T als basis nemen, zoals aangegeven door de corollary van de stelling over het vinden van een basis voor de kolomruimte.

Naast de kolom- en rijruimtes, is de nulruimte van een matrix AA ook een belangrijk concept. Het vinden van een basis voor de nulruimte van een matrix wordt gedaan door de homogene vergelijking Ax=0A \mathbf{x} = 0 op te lossen, bijvoorbeeld door Gauss-eliminatie toe te passen. De oplossing van deze vergelijking levert een lineaire combinatie van onafhankelijke vectoren, die samen een basis vormen voor de nulruimte van de matrix. Dit proces is essentieel voor het begrijpen van de oplossingen van lineaire systemen, omdat het ons vertelt welke vrije variabelen bijdragen aan de niet-gedefinieerde of triviale oplossingen.

Bijvoorbeeld, voor een matrix AA:

A=[012342668286]A = \begin{bmatrix}
0 & 1 & 2 & 3 \\ 4 & 2 & 6 & 6 \\ 8 & 2 & 8 & 6 \end{bmatrix}

Na het reduceren naar de echelonvorm, wordt de oplossing van Ax=0A \mathbf{x} = 0 eenvoudig verkregen door terugsubstitutie, wat resulteert in de basis van de nulruimte:

x=s1[1/2210]+s2[0301]\mathbf{x} = s_1 \begin{bmatrix} -1/2 \\ -2 \\ 1 \\ 0 \end{bmatrix} + s_2 \begin{bmatrix} 0 \\ -3 \\ 0 \\ 1 \end{bmatrix}

Deze basis geeft ons de onafhankelijke vectoren die de nulruimte van AA beschrijven, en helpt ons bij het verder begrijpen van de oplossing van lineaire systemen en hun eigenschappen.

Hoe kunnen we orthogonale projecties gebruiken voor de oplossing van least-squaresproblemen?

In de context van lineaire algebra speelt het idee van orthogonale projecties een sleutelrol bij de oplossing van veel problemen die te maken hebben met het minimaliseren van fouten in systemen van lineaire vergelijkingen. Dit wordt vooral duidelijk in het geval van least-squaresbenaderingen, waarin we de beste benadering van een oplossing zoeken voor een mogelijk inconsistent systeem van lineaire vergelijkingen.

Bijvoorbeeld, beschouwen we een situatie waarbij we een vector pp hebben in Rm\mathbb{R}^m en een subruimte VV van Rm\mathbb{R}^m, waar VV de kolomruimte van een matrix AA is. De orthogonale projectie van pp op VV kan worden gevonden door het oplossen van het zogenaamde normale systeem:

ATAx=ATpA^T A x = A^T p

De oplossing xx kan expliciet worden uitgedrukt als:

x=(ATA)1ATpx = (A^T A)^{ -1} A^T p

en de bijbehorende projectie qq is dan:

q=A(ATA)1ATpq = A (A^T A)^{ -1} A^T p

Deze formule toont aan hoe we, door gebruik te maken van matrixinversie en transposities, een vector kunnen projecteren op een subruimte die wordt gegenereerd door de kolommen van de matrix AA. Het proces is een centrale techniek in de least-squares methode, die veel wordt toegepast in statistiek, data-analyse en machine learning.

Wanneer we het hebben over de oplossing van een least-squaresprobleem, zoals het vinden van de beste rechte lijn die een verzameling punten in het vlak benadert, wordt de oplossing als volgt gepresenteerd. Stel, we hebben een verzameling punten (xi,yi)(x_i, y_i), en we willen een lijn van de vorm y=ax+by = ax + b vinden die de verticale afstanden van deze punten naar de lijn minimaliseert. Dit kan worden herschreven als een projectieprobleem in Rm\mathbb{R}^m, waarbij we zoeken naar de vector ss die de afstand minimaliseert van de vector yy naar de kolomruimte van een matrix AA, die de gegevens van de punten bevat. Het normale systeem dat we moeten oplossen is:

ATAs=ATyA^T A s = A^T y

Hieruit volgt dat de oplossing ss de coëfficiënten van de beste lijn geeft, en het projectieprincipe wordt gebruikt om deze coëfficiënten te berekenen.

De matrix P=A(ATA)1ATP = A (A^T A)^{ -1} A^T wordt in deze context vaak de projectiematrix genoemd. Deze matrix heeft twee belangrijke eigenschappen die kenmerkend zijn voor projectiematrices. Ten eerste is PP idempotent, wat betekent dat:

P2=PP^2 = P

Ten tweede is PP symmetrisch:

PT=PP^T = P

Deze eigenschappen kunnen worden gebruikt om belangrijke relaties te trekken tussen de kolomruimte van PP en zijn nulruimte. Specifiek, de nulruimte van PP is de orthogonale complement van de kolomruimte van PP, wat inhoudt dat de projectie van een vector op de kolomruimte van PP gelijk is aan de originele vector als deze al in de kolomruimte ligt. Dit blijkt uit het feit dat voor elke vector xx in de kolomruimte van PP, Px=xPx = x, en de vectoren in de nulruimte van PP zijn orthogonaal aan de kolomruimte.

Bijvoorbeeld, stel dat we de beste rechte lijn willen vinden voor de punten (1,0),(1,1),(2,1),(3,2),(5,3)(-1, 0), (1, 1), (2, 1), (3, 2), (5, 3). Eerst berekenen we de benodigde waarden voor het normale systeem:

xi2=40,xi=10,yi=7,xiyi=24\sum x_i^2 = 40, \quad \sum x_i = 10, \quad \sum y_i = 7, \quad \sum x_i y_i = 24

Met deze waarden kunnen we het normale systeem oplossen en de coëfficiënten van de beste lijn aa en bb vinden. Dit levert de vergelijking van de lijn:

y=12x+25y = \frac{1}{2} x + \frac{2}{5}

Tot slot kan de concepten van orthogonale projecties en de bijbehorende least-squares oplossingen worden uitgebreid naar hogere dimensies, zoals in het geval van een vlak in R3\mathbb{R}^3, waar we drie onbekenden hebben (de coëfficiënten a,b,ca, b, c) in plaats van twee. De methodologie blijft hetzelfde, waarbij de oplossing weer wordt gevonden door het oplossen van het normale systeem dat voortkomt uit de projectie van de gegevenspunten op de kolomruimte van de bijbehorende matrix.

Het is essentieel te begrijpen dat de least-squaresoplossing een benadering is, zelfs als het systeem van lineaire vergelijkingen inconsistente is. De projectie die wordt berekend is de beste benadering in de zin van het minimaliseren van de kwadratische fouten, maar er is geen garantie dat de benadering precies overeenkomt met de werkelijke oplossing, vooral in gevallen waarin het systeem inconsistent is.

Hoe wordt de LU-decompositie toegepast bij de oplossing van lineaire systemen?

De LU-decompositie is een krachtige methode om lineaire systemen van vergelijkingen op te lossen. Het doel is om de matrix AA te schrijven als een product van twee matrices: een lagere driehoekige matrix LL en een bovenste driehoekige matrix UU. Dit proces speelt een cruciale rol in de numerieke lineaire algebra, vooral bij het oplossen van stelsels van lineaire vergelijkingen en het vinden van determinanten.

Laten we het proces van de LU-decompositie stap voor stap bekijken. We beginnen met een matrix AA, die we willen ontbinden in de vorm A=LUA = LU, waar LL een lagere driehoekige matrix is met enen op de hoofddiagonaal, en UU een bovenste driehoekige matrix. Deze decompositie wordt vaak gebruikt in de context van de Gauss-eliminatie, waarbij de matrix AA in de voorwaartse eliminatiefase wordt gemodificeerd om een bovenste driehoekige matrix UU te verkrijgen.

In de voorwaartse eliminatiefase van Gauss-eliminatie wordt elk element onder de diagonaal van AA weggewerkt door een geschikte vermenigvuldiging van de rijen van de matrix. De factoren die de rijen beïnvloeden, worden opgeslagen in de matrix LL. Bijgevolg worden de elementen lijl_{ij} in LL gelijk aan de vermenigvuldigers die in de voorwaartse eliminatie worden gebruikt om de respectieve rijvectoren te verminderen. Dit betekent dat we de matrix LL niet apart hoeven te berekenen: we kunnen de waarden van LL eenvoudig verkrijgen uit de koëfficiënten die zich tijdens de eliminatie voordoen.

Na de eliminatiefase wordt het systeem Ax=bA \cdot x = b omgezet in twee eenvoudiger te lossen systemen: Lc=bL \cdot c = b en Ux=cU \cdot x = c. De eerste vergelijking wordt opgelost door een directe vooruitgaande substitutie (oftewel forward substitution), en de tweede door achterwaartse substitutie (back substitution).

Het idee van de LU-decompositie kan verder worden verduidelijkt met het voorbeeld van een 3×33 \times 3-matrix. Stel dat we een matrix AA hebben, die we willen decomponeren. We beginnen met het toepassen van de elementaire rijoperaties van Gauss-eliminatie op AA om UU te verkrijgen, terwijl we tegelijkertijd de vermenigvuldigingsfactoren die we gebruiken om de rijen te elimineren, opslaan in LL. Als de matrix geen rijverwisselingen vereist, kunnen we de LU-decompositie eenvoudig vinden door de matrix AA te schrijven als A=LUA = L \cdot U.

In sommige gevallen kan het nodig zijn om een LDULDU-factorisatie te gebruiken, wat betekent dat de matrix AA wordt geschreven als A=LDUA = L \cdot D \cdot U, waarbij DD een diagonale matrix is die de pivotelementen van UU bevat. Dit gebeurt vooral in situaties waar we werken met de Gauss-Jordan-eliminatie, waarbij we de pivotelementen uit de matrix UU extraheren en het effect van deze pivots als een aparte diagonaalmatrix DD beschouwen.

Naast deze standaardmethoden zijn er situaties waarin rijverwisselingen noodzakelijk zijn, bijvoorbeeld wanneer we een nul pivotelement tegenkomen. In zulke gevallen wordt de LU-decompositie uitgevoerd op de permutatiematrix PAP \cdot A, waarbij PP een permutatiematrix is die de rijverwisselingen representeert. Dit zorgt ervoor dat de matrix geen nulwaarden op de hoofddiagonaal heeft, wat de stabiliteit van het algoritme waarborgt.

Het belangrijkste voordeel van de LU-decompositie is de efficiënte oplossing van meerdere systemen van lineaire vergelijkingen met dezelfde matrix AA maar verschillende rechterleden bb. Zodra de LU-decompositie van AA eenmaal is berekend, kunnen we elk stelsel Ax=bA \cdot x = b snel oplossen door eenvoudigweg de twee systemen Lc=bL \cdot c = b en Ux=cU \cdot x = c op te lossen.

Wanneer we de efficiëntie van de LU-decompositie vergelijken met die van de directe Gauss-eliminatie, wordt het duidelijk dat de LU-decompositie, hoewel het meer bewerkingen vereist om de matrix AA te decomponeren, een aanzienlijke tijdsbesparing oplevert bij het oplossen van meerdere stelsels van vergelijkingen. Het proces van LU-decompositie is vooral nuttig wanneer we herhaaldelijk met dezelfde matrix werken, omdat we de decompositie slechts eenmaal hoeven uit te voeren.

Hoewel de LU-decompositie robuust en krachtig is, is het belangrijk om te beseffen dat in de praktijk de prestaties van dit algoritme sterk afhangen van de eigenschappen van de matrix AA. Als de matrix slecht geconditioneerd is of als er veel rijverwisselingen nodig zijn, kan de numerieke stabiliteit van de decompositie in gevaar komen. In dergelijke gevallen kunnen alternatieve technieken, zoals de QR-decompositie of de Cholesky-decompositie, nuttiger zijn.

De LU-decompositie is dus een essentieel hulpmiddel in de numerieke wiskunde en vormt de basis voor vele geavanceerde technieken in lineaire algebra. Het is belangrijk om te begrijpen dat, hoewel de LU-decompositie zeer krachtig is, de efficiëntie en stabiliteit ervan sterk afhankelijk zijn van de structuur van de matrix en de implementatie van het algoritme.