Lineare Gleichungssysteme und Gauß`scher Algorithmus

Zurück Letzter Update 7.01.2016. Lineare Gleichungssysteme und Gauß'scher Algorithmus
In der Mathematik bezeichnet man mit Matrix ein rechteckiges Schema, in dem Zahlen oder Funktionen angeordnet werden.
Hier geht es zunächst nur um Matrizen, deren Elemente Zahlen sind (reelle oder komplexe). In der allgemeinen Darstellung
haben die Zahlen zwei Indizes, den ersten für die Zeilennummern, den zweiten für die Spaltennummer.
⎛
a11
a12
....
a1n
a21
a22
....
a2n
.....
.....
am2
....
⎜
A = ⎜
⎜.....
⎝
am1
⎞
⎟
⎟ = (aik )i=1...m, k=1...´n
..... ⎟
amn
⎠
Die dargestellte Matrix hat m Zeilen (erster Index) und n Spalten (zweiter Index). In der Matrix sind also m ∗ n Zahlen
gespeichert, etwa reelle oder komplexe. Dazu unten mehr. Lineare Gleichungssysteme Gauß­Algorithmus (Eliminationsverfahren) Vorbemerkung: Das Gauß'sche Eliminationsverfahren ist ein Algorithmus zur Lösung linearer Gleichungssysteme, gleichgültig
aus welchem Modellkontext sie stammen. Ich stelle das Verfahren hier vorwiegend an Beispielen der
Vektorrechnung/analytischen Geometrie vor, weil man sich dann unter der Lösungsmenge konkrete Objekte wie Geraden,
Punke, Ebenen vorstellen kann. Und auch, weil dieser Kontext aus der Schule schon bekannt ist. Das Verfahren ist jedoch
generell auf beliebige lineare Gleichungssysteme anwendbar und nicht auf diesen Kontext beschränkt. Siehe dazu auch Aufgaben . 3
Motivation: Beispiel 1: Wir möchten die Schnittmenge der folgenden drei Ebenen im IR bestimmen:
E1 : 2x + y + z = 0,
E2 : x + y + z = 1,
E3 : x + z = 1
Die Schnittmenge ist die Menge aller Punkte, die alle drei Gleichungen simultan erfüllt. Dies könnte in diesem Kontext
prinzipiell hier ein Punkt, die leere Menge, eine Gerade oder eine Ebene sein. Welcher Fall hier vorliegt, zeigt uns gleich eine
kurze Rechnung mit dem Gauß­Algorithmus. Wir fassen diese drei Ebenengleichungen in ein Gleichungssystem zusammen. Daneben schreiben wir nur die Koeffizienten
des Systems und die rechte Seite der Gleichungen als Matrix mit 3 Zeilen und 4 Spalten auf. (Die sogenannte erweiterte
Koeffzientenmatrix, die 3x3 Matrix links ist die eigentliche Koeffizientenmatrix. )
2x + y + z = 0
x + y + z = 2
x + 0y + z = 1
x
y
z
⎜2
⎜
⎜1
1
1
1
1
0⎟
⎟
2⎟
0
1
1
⎛
⎝
1
rechte Seite ⎞
⎠
In der ersten Spalte der erweiterten Koeffizientenmatrix stehen also die Koeffizienten der x , in der zweiten die der y usw. und
in der vierten Spalte die rechten Seiten der Gleichungen. Die Überschrift können wir in Zukunft weglassen, sofern wir keine
Spalten vertauschen. Den Clou an der Sache erkannte schon Gauß: Man kann mit der Koeffizientenmatrix genauso rechnen wie mit dem
Gleichungssystem. Also etwa Vielfache von Zeilen auf andere Zeilen addieren mit dem Ziel, in der Matrix möglichst viele Nullen
zu erzeugen und dann "rückwärts" durch Auflösen die Unbekannten x, y, z zu bestimmen. Man bildet also bei der hier vorgestellten Version des Verfahrens nur Linearkombinationen von Zeilen der erweiterten
Koeffizientenmatrix so, dass in einer Spalte Nullen enstehen und fährt dann mit den nächsten Spalte fort. Das ist der Kern des sogenannten Gauß'schen Eliminationsverfahrens oder auch Gauß­Algorithmus. Der Vorteil des Rechnens
mit dem reinen Zahlenschema wird sofort klar, wenn man es einmal parallel durchführt. Übersichtlicher und schneller, da
weniger Schreibarbeit, als das rechnen mit Gleichungen, in denen Unbekannte stehen. Gauß schrieb dazu einem Freund:
"Hast du einmal so gerechnet, wirst du niemals wieder anders rechnen wollen". Der Nachteil soll auch erwähnt werden: Das
Verfahren ist natürlich etwas unflexibler als eine Kombination von den aus der Schule bekannten Additions, Einsetz­ und
Gleichsetzungsverfahren. Bei größeren Gleichungssystemen verliert man jedoch bei diesen gemischten Verfahren schnell die
Übersicht, bzw erstickt an der Schreibarbeit. Nicht so beim Gauß­Verfahren. Man kann diesen Algorithmus daher auch gut
programmieren. Wir führen dieses Verfahren einmal parallel durch, damit man die Äquivalenz erkennt. Ab dann nur noch mit der
Koeffizientenmatrix. Wir picken uns den ersten Koeffizienten von x heraus, also die Zahl in der 1. Zeile und 1. Spalte, die 2, das sogenannte
Pivotelement (1;1) (pivot (engl./frz.): Dreh­ und Angelpunkt). Dann soll mit diesem Element in der darunter stehenden Spalte Nullen erzeugt werden, indem man zum Beispiel (1.
Möglichkeit) Vielfache der ersten Zeile auf die anderen Zeilen addiert. Zeilen werden hier mit römischen Buchstaben
bezeichnet. Also etwa
−0, 5 ∗ I + II → II,
−0, 5 ∗ I + III → III
Lies: Multipliziere die erste Zeile (I) mit −0, 5 , addiere das auf die zweite Zeile (II) und speichere das Ergebnis in der zweiten
Zeile (II) usw. Ergebnis:
2x + y + z = 0
x + y + z = 2
2x + y + z = 0
0, 5y + 0, 5z = 2
→
x + 0y + z = 1
−0, 5y + 0, 5z = 1
2
1
1
0
2
1
1
⎜1
1
1
2⎟ → ⎜0
0, 5
0, 5
2⎟
0
1
1
−0, 5
0, 5
1
⎛
⎝
1
⎞
⎛
⎠
⎝
0
0
⎞
⎠
2. Möglichkeit. Oder man addiert die erste Zeile auf Vielfache der anderen, mit dem Ziel, die Koeffizienten von x zu Null zu
machen. I + (−2) ∗ II → II,
2x + y + z = 0
x + y + z = 2
2x + y + z = 0
→
−y − z = −4
x + 0y + z = 1
y − z = −2
I + (−2) ∗ III → III
2
1
1
0
2
1
1
⎜1
1
1
2⎟ → ⎜0
−1
−1
−4 ⎟
0
1
1
1
−1
−2
⎛
⎝
1
⎞
⎠
⎛
⎝
0
0
⎞
⎠
Es gäbe auch noch mehr Möglichkeiten, die wir aber hier unterdrücken. Wenn man ganzzahlig rechnen will, was sich für die
Handrechnung empfiehlt, muss man beide Möglichkeiten kombinieren, sofern beide Koeffizienten verschieden von 1 sind. In beiden Fällen stehen unterhalb des Pivotelementes 2 nur noch Nullen. Die erste Zeile ist unverändert. Man hat hier natürlich implizit einen Satz benutzt: Die Addition von Vielfachen einer Zeile (Gleichung) auf eine andere Zeile ändert die Lösungsmenge nicht! Wir wählen uns nun ein neues Pivotelemenent, etwa den Koeffzienten von y aus der zweiten Gleichung (Zeile) und erzeugen
mit diesem nach unten Nullen. Dabei gehe ich hier vom ganzzahligen (zweiten ) Zwischenresultat aus. Hier also Pivot −1 . Der
Leser kann zum Vergleich auch den ersten Fall weiterrechnen. Operation: II + III → III ergibt:
2x + y + z = 0
−y − z = −4
−2z = −6
2
1
1
⎜0
−1
−1
−4 ⎟
0
−2
−6
⎛
⎝
0
0
⎞
⎠
Nun beginnt die Phase "Rückwärtsauflösen":
III : − 2z = −6 ⇒ z = 3,
II : −y − 3 = −2 ⇒ y = 1,
I : 2x + 1 + 3 = 0 ⇒ x = −2
Die Schnittmenge ist somit der Punkt mit den Koordinaten (−2|1|3). Den Gauß­Algorithmus haben wir hier mit der Pivotfolge (1;1) und (2;2) durchgeführt. Diese Zahlen bezeichnen die Indizes des
Pivotelemente.
In den Aufgaben finden Sie zwei Beispiele zu typischen Gauß­Tableaus zum übersichtlichen Rechnen
Weitere Beispiele Beispiel 2: Gesucht: Schnittmenge der Ebenen
E1 : 2x + y + z = 0,
E2 : 4x + 3y + 3z = 1,
E3 : 8x + 6y + 6z = 2
Wir stellen die Koeffizientenmatrix des Gleichungssystems auf und führen zwei Schritte des Gauß­Algorithmus durch mit der
Pivotfolge (1;1), (2;2):
⎛
⎞
⎛
⎞
⎛
⎞
2
1
1
0
2
1
1
0
2
1
1
0
⎜4
3
3
1⎟ → ⎜0
1
1
1 ⎟ → ⎜0
1
1
1⎟
6
6
2
2
2
2
0
0
0
⎛
⎝
8
⎞
⎛
⎠
⎝
0
⎞
⎛
⎠
⎝
0
⎞
⎠
Das Gleichungssystem ist lösbar, Rückwärtsauflösen ergibt
1
y + z = 1 ⇒ y = 1 − z,
2x + y + z = 0 ⇒ x = −
Die Schnittmenge ist also eine Gerade. In Parameterdarstellung (als Parameter z
= t
2
gewählt) kann man sie zum Beispiel so
schreiben:
⎛
x
⎛
⎞
−
1
2
z
⎠
0
⎛
⎞
1 ⎟ + t ⎜ −1 ⎟ ,
⎜ y⎟ = ⎜
⎝
⎞
⎝
0
⎝
⎠
1
t ∈ IR
⎠
Bei genauem Hinsehen ist klar: Die zweite und die dritte Ebenengleichung stellen dieselbe Ebene dar, die dritte Gleichung
bringt also keine neue Bedingung in das Gleichungssystem. Beispiel 3: Gesucht ist wieder die Schnittmenge der Ebenen
E1 : 2x + y + z = 0,
E2 : 4x + 3y + 3z = 1,
E3 : 8x + 6y + 6z = 5
Wieder Gauß­Algorithmus mit Pivot (1;1), Rechnung : und danach
2
1
1
0
⎜4
3
3
1 ⎟ 6
6
5
⎛
⎝
8
⎞
⎠
P ivot(1; 1)
(−2) ∗ I + II → II
2
1
1
0
→ ⎜0
1
1
1⎟
2
2
5
⎛
⎝
(−4) ∗ I + III → III
0
P ivot(2; 2)
⎞
⎠
2
1
1
0
→ ⎜0
1
1
1⎟
0
0
3
⎛
(−2) ∗ II + III → III.
⎝
0
⎞
⎠
Die letzte Zeile der umgeformten Matrix steht für die Gleichung
0 = 0x + 0y + 0z = 3
Diese Gleichung besitzt keine Lösung, die Lösungsmenge ist die leere Menge, die Schnittmenge der drei Ebenen ist also leer.
Dies hätte man bei genauem Hinsehen schon anhand der Gleichungen sehen können. Die Ebenen E2 und E3 sind parallel
(derselbe Normalenvektor), aber verschieden (rechte Seite!). Beispiel 4: Schnittmenge der Ebenen
E1 : 2x + y + z = 1,
E2 : 6x + 3y + 3z = 3,
E3 : −2x + −y − z = −1
Hier genügt ein Gauß­Schritt, Pivot (1;1):
2
1
1
1
2
1
1
1
6
3
3
3⎟ → ⎜ 0
0
0
0⎟
−2
−1
−1
0
0
0
⎛
⎜
⎝
Die Lösungsmenge ist also die Ebene E1
= E2 = E3
−1
⎞
⎠
⎛
⎝
0
⎞
⎠
, alle Gleichungen stellen also dieselbe Ebene dar. Berechtigte Frage: Warum rechnet man überhaupt mit dem Gauß­Algorithmus und löst dies nicht gleich durch "genaues
Hinsehen"? Antwort: Unsere Demonstartionsbeispiele sind bewusst kleine (n=3) Beispiele, die den geometrischen Hintergrund illustrieren
sollen. Bei technischen Berechnungen (z.B. Finite­Element Methoden ) treten Gleichungssysteme mit tausenden oder gar
Millionen Unbekannten auf. Da kann niemand mehr die Lösungsstruktur "per genaues Hinsehen" ermitteln. Den Gauß­
Algorithmus kann man hingegen progammieren und dem Rechner dann die Lösung überlassen.
Wenn eine einfache Pivotfolge nicht möglich ist/Varianten des Gauß Verfahrens Hin und und wieder kommt es vor, dass bei einer Rechnung gerade der Koeffizient Null wird, den man normalerweise gerne als
nächstes Pivot­Element gewählt hätte. Beispiel 5 ⎛
⎞
⎛
⎞
2
1
1
0
2
1
1
0
⎜4
2
3
1⎟ → ⎜ 0
0
1
1⎟
6
6
2
2
2
2
⎛
⎝
8
⎞
⎛
⎠
⎝
0
⎞
⎠
Hier könnte man mit dem Rückwärtsauflösen einfach in Zeile II beginnen, also im Prinzip zweite und dritte Zeile vertauschen. Wir betrachten nun ein größeres Gleichungssystem (4 Gleichungen, 4 Unbekannte x,y,z, w), hier nur Koeffizientenmatrix und
rechte Seite als erweiterte Matrix geschrieben:
2
1
1
2
0
2
1
1
2
0
⎜4
⎜
⎜8
2
3
6
0
1
2
6
6
10
1⎟
⎜0
⎟ → ⎜
⎜0
2⎟
2
2
2
1⎟
⎟
2⎟
−2
−2
−4
⎛
P ivot(1; 1)
(−2) ∗ I + II → II,
(−1) ∗ I + IV → IV
⎝
2
−1
−1
−2
0
⎞
⎛
⎠
⎝
0
0
⎞
⎠
Das nächste übliche Pivotelement (2;2) ist leider Null. Welche Möglichkeiten hätte man, um die Rechnung weiter zu führen? 1. Man könnte Zeilen vertauschen, etwa II und IV. Das ist an sich unproblematisch, man muss allerdings die Matrix noch einmal
abschreiben, das bedeutet höherer Aufwand, Fehlerquelle. 2. Man könnte Spalten vertauschen. Dabei muss man aber dann auch die geänderte Zuordnung zu den Variablen beachten,
sonst kommt man bei Handrechnung bei größeren Systemen leicht durcheinander. Man sollte dann unbedingt die aktuellen
Variablennamen über den Spalten notieren, damit das Rückwärtsauflösen klappt. Ich rate von diesem Vorgehen allerdings
generell ab, weil es Verwirrung stiftet und fehleranfällig ist. 3. Mit dem Gauß­Algorithmus flexibler rechnen und einfach andere Pivots wählen. Wesentlich ist doch nur, dass man nachher
zum Rückwärtsauflösen genügend viele Nullen in der Matrix stehen hat. Es böte sich als Pivot Element (2,3) an, wie bereits
oben markiert. Mit einer Eins als Pivot rechnet es sich ohnehin einfach. 2
1
1
2
0
2
1
1
2
0
2
1
1
2
0
⎜0
⎜
⎜0
0
1
2
0
1
2
1
2
2
2
2
0
−2
1⎟
⎜0
⎟ → ⎜
⎜0
0⎟
0
2
1⎟
⎜0
⎟ → ⎜
⎜0
2⎟
2
0
−2
1⎟
⎟
0⎟
0
0
−2
2
⎛
P ivot(2; 3)
(−2) ∗ II + III → III,
2II + IV → IV
⎝
0
−2
−2
−4
0
⎞
⎠
⎛
⎝
0
−2
0
0
2
⎞
⎠
⎛
⎝
0
⎞
⎠
Den letzten Gauß­schritt mit Pivot (3,2), also III + IV → IV habe ich nur eingefügt, damit man den Rang dann leichter
bestimmen zu kann (s.u.). Mit einer Zeilenvertauschung kann man die letzte Matrix dann auf die obere Dreiecksform
/gestaffeltes Gleichungssystem bringen. Zum Gleichungslösen wäre der letzte eigentlich gar nicht mehr nötig gewesen, da in der vorletzten Matrix bereits genug Nullen
in der Matrix standen , um rückwärts auflösen zu können.
Die Lösung ist damit (x; y; z; w)
IV :
−2w = −2, ⇒
w = −1,
III :
2y − 2w = 0 ⇒
w = y = −1,
II :
z + 2w = 1 ⇒
z = 3,
I :
2x + y + z + 2w = 0 ⇒
x = 0
= (0; −1; 3; −1)
Gauß­Jordan Verfahren: Nullen nach oben und unten erzeugen Wir betrachten noch einmal Beispiel 1, aber erzeugen mit den Pivotelementen Nullen unterhalb und oberhalb in der jeweiligen
Spalte.
2
1
1
0
2
1
1
⎜1
1
1
2 ⎟ → ⎜0
−1
0
1
1
1
⎛
⎝
1
⎞
⎠
⎛
⎝
0
Im letzten Schritt haben wir −0, 5 ∗ III
Lösungen fast ablesen.
0
2
0
0
−1
−4 ⎟ → ⎜ 0
−1
−1
−1
−2
0
−2
+ II → II
⎞
⎠
⎛
⎝
0
−4
2
0
0
−4
−4 ⎟ → ⎜ 0
−1
0
−1 ⎟
0
−2
−6
⎞
⎠
⎛
⎝
0
−6
⎞
⎠
gerechnet. Nun ist das System vollständig entkoppelt, wir können die
2x = −4 ⇒ x = −2,
−1y = −1,
−2z = −6 ⇒ z = 3.
Das Gauß­Jordan Verfahren verwendet man also zum Beispiel, um die Inverse einer Matrix zu bestimmen. Dazu muss man
simultan n Gleichungssysteme lösen, als Matrizengleichung (E bezeichnet die Einheitsmatrix).
AX = E,
Gauss-Jordan: (A|E) → (E|A
−1
)
Gleichungssysteme bei denen die Zahl der Gleichungen (m) nicht der Zahl der Unbekannten (n)
entspricht. Beispiel 6: n > m Mehr Unbekannte als Gleichungen. (vergleiche Beispiel 3) Zwei Fälle sind möglich: Unendlich viele Lösungen oder keine Lösung. (a) Gesucht ist die Schnittmenge der Ebenen
E1 : 2x + y + z = 0,
E2 : 4x + 3y + 3z = 1,
Gleichungssystem aufstellen, Gauß­Algorithmus mit Pivot (1;1) ( (−2) ∗ I
2x + y + z = 0
2
1
1
0
(
4x + 3y + 3z = 1,
+ II → II, (−4) ∗ I + III → III
2
1
1
0
0
1
1
1
) → (
4
3
3
1
) .
)
Rückwärtsauflösen: y + z = 1, y = 1 − z, 2x + y + z = 0, x = −1/2. Die Schnittmenge ist also eine Gerade (unendlich viele Lösungen), Lösungsdarstellung durch Parametrisierung wie in Beispiel
2. (b) Gesucht ist die Schnittmenge der Ebenen
E2 : 4x + 3y + 3z = 1,
E3 : 8x + 6y + 6z = 5
Gleichungssystem aufstellen, wieder Gauß­Algorithmus mit Pivot (1;1), ein Schritt genügt.
4x + 3y + 3z = 1,
4
3
3
1
(
8x + 6y + 6z = 5
8
Die letzte Zeile der letzten Matrix bedeutet rückübersetzt 0
4
3
3
1
0
0
0
3
) → (
6
= 3
6
5
)
, das Gleichungssystem hat somit keine Lösung. Beispiel 7: n < m Gleichungssystem mit mehr Gleichungen als Unbekannte. Drei Fälle sind möglich: Keine Lösung, genau eine Lösung, unendlich viele Lösungen. Die Beispiele (3 Gleichungen, zwei
Unbekannte) können vom Leser mit wenigen Gauß­Schritten durchgerechnet werden.
ö
ö
(a) keine L sung: ö
(b) genau eine L sung: x + y = 1,
(c) unendlich viele L sungen: x + y = 1,
,
x + y = 1,
,
x − y = 3
x − y = 3
−x − y = −1
2x + y = 2
2x + y = 3
2x + 2y = 2
Regeln und Tipps für die effiziente Rechnung mit dem Gauß­Algorithmus. Für die Handrechnung beachte man folgendes: 1. Wenn man nicht unbedingt an die starre Pivotfolge (1;1) , (2;2) usw. gebunden ist, wählt man möglichst Pivots ganzzahlig
und betragsklein, etwa 1, ­1 oder 2. Brüche oder große Zahlen machen die Matrizen schnell unübersichtlich, erhöhen den
Rechenaufwand und die Fehlerquote. Der Gauß­Algorithmus hat die unangenehme Eigenschaft, dass sich anfängliche
Fehler bis zum Ende fortpflanzen!
2. Ganz wichtig: Aus jeder Zeile und jeder Spalte höchstens einmal ein Pivotelement wählen! Wenn man dies nicht
beachtet, zerstört man sich schon mühsam erzeugte Nullen wieder und rechnet redundant.
3. Wenn möglich beim Rechnen nur multiplizieren, nicht dividieren. Auf oft unnütze Schritte wie Normierungen von Zeilen in
der Matrix verzichten, wenn dadurch komplizierte Brüche entstehen. Generell die Matrizen so wenig wie möglich
umschreiben und abschreiben (Fehlerquelle!). Beim Rückwärtsauflösen die Variablenreihenfolge beachten.
4. Gewöhnen Sie sich ein festes System beim Rechnen an. Etwa Zeilen immer nur zu addieren, nicht einmal eine addieren,
dann wieder eine subtrahieren usw. Durcheinander erhöht die Fehlerrate.
5. Wenn Parameter in der Matrix stecken, dann sollte man diese möglichst nicht, oder erst so spät wie möglich als Pivot
wählen, weil ab dann oft Fallunterscheidungen und somit parallele Rechnungen nötig werden. Wenn viele Nullen in einer
Zeile sind, kann es günstig sein, diese als Pivot­Zeile zu wählen, vorausgesetzt das mögliche Pivotlelement ist nicht
unangenehm.
6. Anders als hier in meiner HTML Darstellung, in der ich aus Übersichtsgründen die Matrizen meist nebeneinander gepackt
habe (weil man sonst zum Vergleiche zuviel hin und her scrollen muss) sollten Sie bei Handrechnung die Matrizen
untereinander schreiben. Die an den Zeilen vorgenommenen Rechenoperationen schreiben Sie daneben. Manche Leute
zeichnen sich auch regelrechte Tableaus mit Kästchen. Das hilft die Übersicht zu bewahren.
7. Wenn man das Verfahren programmiert und mit Gleitkommazahlen rechnet, dann wählt man anders als bei der
Handrechnung immer das betragsgrößte Element einer Spalte als Pivotelement. Grund:Rundungsfehlerdämpfung.
Rang einer Matrix und Lösbarkeit von Gleichungssystemen. Der Rang einer Matrix ist die Anzahl der linear unabhängigen Zeilen (oder Spalten, Zeilenrang=Spaltenrang). Man kann dem Rang ablesen, wenn man den Gauss­Algorithmus so weit wie möglich durchführt, d.h, bis kein Pivotelement
mehr gewählt werden kann. Die Ergebnismatrix besteht dann aus Zeilen, in denen mindestens ein Element nicht Null ist, sowie
eventuell auch Zeilen, die nur Nullen enthalten, den Nullzeilen. Die Zahl der Zeilen, in denen nicht alle Elemente Null sind, bestimmt dann den Rang. Kurz: Rang (A) ist die Zahl der Nichtnullzeilen nach vollständiger Gauß­Rechnung. Der Rang ist maximal, wenn er das Minimum aus Zeilen­ und Spaltenanzahl beträgt (min(m,n)) Bei einer 3x4 Matrix kann der Rang z.B. höchstens 3 sein, bei einer 4x3 Matrix ebenso. Rang(A ) = Anzahl der Nichtnullzeilen (mindestens ein Element ungleich Null) der Matrix nach vollständiger
Durchführung des Gauß­Algorithmus Bei Verwendung der Pivotfolge (1;1), (2;2) (3;3) ... (Diagonalelemente) erhält man automatisch eine obere Dreiecksmatrix
(gestaffeltes Gleichungssystem). Der Rang ist hier leicht abzulesen. Vergleiche Beispiel 3 in Vektorräume Bei anderen Pivotwahlen kann man aus dem Ergebnis durch Zeilenvertauschung eine obere Dreieicksmatrix herstellen, der
Rang bleibt erhalten. Siehe Beispiel 5, Rang(A) =4. Beispiel 8: (a)Jeweils 1 Gauß­Schritt, Pivot immer (1;1):
3
1
Rang (
9
3
3
1
0
0
) = Rang (
1
3
2
Rang (
) = 1
3
1
2
0
0
−5
) = Rang (
9
3
3
1
1
) = 2
2
Rang (
3
1
2
0
0
0
) = Rang (
9
3
6
) = 1
(b) 5x5 Matrix mit Rang=4 durch Zeilenvertauschung (ändert Rang nicht) auf obere Dreieicksform gebracht
Zeilenvertauschungen II → II I
III → V
IV → I I
V → IV
′
′
′
′
2
1
1
2
0
2
1
1
2
⎜0
⎜
⎜0
⎜
⎜
⎜0
0
1
2
2
0
−2
0
0
0
0
1
2
2
0
−2
1⎟
⎜0
⎟
⎜
0 ⎟ → ⎜0
⎟
⎜
⎟
⎜
⎜0
0⎟
0
0
0
0⎟
⎟
1⎟
⎟
⎟
2⎟
0
0
0
0
⎛
⎝
0
0
0
0
2
⎞
⎛
⎠
⎝
0
0
⎞
⎠
Die Matrix hat 4 linear unabhängige Zeilen, wie man an der "Nullenstruktur" abliest. Nach etwas Training mit Matrizen muss man diese Vertauschung nicht immer schriftlich ausführen. Man muss nur sicher sein,
den Gauß­Algorithmus so weit wie möglich gerechnet zu haben. Ein Gleichungssystem in Matrixform schreiben Ein Gleichungssystem wie in den Beispielen 1­5 kann man sich auch in folgender Form geschrieben denken (vergleiche
Matrixmultiplikation):
2x + y + z = 0
Ax⃗ = b
⃗ in Beispiel 1: x + y + z = 2
2
1
1
⎜1
1
1 ⎟ ⋅ ⎜ y ⎟ = ⎜2 ⎟
0
1
⎛
⟺
x + 0y + z = 1
⎝
1
⎞
⎠
⎛
⎝
x
z
⎞
⎠
⎛
⎝
0
1
⎞
⎠
Allgemein: A ist hier die mxn­Koeffizientenmatrix. Gleichungssystem:
Ax⃗ = b
⃗ m
n
⃗ m Gleichungen, n Unbekannte b ∈ R , x⃗ ∈ R
Wir hatten in Beispiel 1­5 auf die erweiterte Koeffizientenmatrix (A|b) (Größe mx(n+1) ) den Gauß­Algorithmus angewendet.
Aus den Ergebnissen können wir Informationen über den Rang ablesen: Rangbestimmmung in dem Beispielen: Quadratische Gleichungssysteme (quadratische Koeffizientenmatrix n=m). Beispiel 1: Rang(A) = Rang(A|b) = 3 , maximaler Rang, Gleichung war nach Rechnung eindeutig lösbar. Beispiel 2: Rang(A) = Rang(A|b) = 2 , kein maximaler Rang, Gleichung war nach Rechnung lösbar, aber nicht eindeutig. Beispiel 3: Rang(A) = 2 < Rang(A|b) = 3 : Gleichung nicht lösbar. Beispiel 4: Rang(A) = Rang(A|b) = 1 , kein maximaler Rang, Gleichung war nach Rechnung lösbar, aber nicht eindeutig. Beispiel 5: Rang(A) = Rang(A|b) = 4 , maximaler Rang, Gleichung war nach Rechnung eindeutig lösbar. Weniger Gleichungen als Unbekannte, m
< n
, "flache Koeffizientenmatrix" : Beispiel 6a: A 2x3 Matrix, Rang(A) = 2 = Rang(A,b) < 3=n : Unendlich viele Lösungen. Beispiel 6b: A 2x3 Matrix, Rang (A) = 2 < Rang(A|b) = 3: Keine Lösung. Beispiel 7(a) Rang(A) = 2 < Rang(A|b) = 3 : Keine Lösung. Beispiel 7(b) Rang(A) = 2 = Rang(A|b) = 2 : Genau eine Lösung. Beispiel 7(c) Rang(A) = 1 = Rang(A|b) = 1 < n=2 : Unendlich viele Lösungen, 1=n­1 freie Parameter. Hinter dieser Beobachtung an den Beispielen steht auch ein allgemeiner Satz: Kriterien für die Lösbarkeit des Gleichungssystemen Ax⃗ = b ⃗ Bezeichnungen: A sei eine reelle (oder komplexe) mxn­Matrix. Homogenes Gleichungssystem Ax⃗ = 0 Inhomogenes Gleichungssystem Ax⃗ =
⃗ b ≠ 0
1. Allgemeines Kriterium für beliebige A mxn ­Matrix (n, m
Das inhomogene Gleichungssystem Ax⃗ =
m
⃗ b ∈ IR
≥ 1, )
, m Gleichungen, n Unbekannte. : ist genau dann lösbar mit Lösung(en) x⃗ ∈
IR
n
, wenn
r = Rang(A) = Rang(A|b)
vorliegt. Die Lösung enthält dann genau n − r freie Parameter. Im einzelnen bedeutet das: 2. Sonderfall quadratische Gleichungssysteme n = m : Folgende Fälle sind möglich: (a) A hat maximalen Rang: Falls Rang(A) = n vorliegt, dann ist das Gleichungssystem für jede rechte Seite b ∈ Rn
eindeutig lösbar. Die Erweiterung mit b kann den bereits maximalen Rang nicht mehr erhöhen, zwangsläufig also auch Rang(A|b) = n,
somit ist die rechte Seite b für die Lösbarkeit nicht relevant. r = n : Somit keine freien Parameter in der Lösung. Ferner: Die homogene Gleichung Ax = 0 hat dann auch nur die eindeutige Lösung x = 0 . (b) A hat nicht den maximalen Rang: r = Rang(A) < n UND es ist r = Rang(A) = Rang(A|b). Dann ist das Gleichungsystem lösbar, jedoch nicht eindeutig. Die Lösbarkeit hängt in diesem Fall von b ab, das Gleichungssystem ist nicht für jede rechte Seite lösbar. Es gibt dann unendlich viele Lösungen mit n − r freien Parametern. Der Nullraum (Kern) N (A) = {x ∈ Rn |Ax = 0} ist ein Untervektorraum von Rn mit der Dimension n − r . In diesem Fall lässt sich jede Lösung x des Systems in der Form
x = xs + xh ,
ö
xh ∈ N (A), xs eine spezielle L sung von Ax = b
darstellen. (Zerlegungssatz). Zerlegung der Lösung in homogenen Anteil xh und inhomogenen Anteil xs . , Vergleiche
Beispiel 2 und 4. ) (c) Falls Rang(A) < Rang(A|b) dann gibt es keine Lösung des inhomogenen Gleichungssystems. 3. m < n , Gleichungssysteme mit mehr Unbekannten (n) als Gleichungen (m), flache Koeffizientenmatrix: Ax = b
ist nur lösbar wenn r
= Rang(A) = Rang(A|b),
der Zerlegungssatz aus 2(b) gilt auch hier. n − r
4. m
> n
≥ 1
jedoch nie eindeutig lösbar. Wieder ist dim(N(A) ) = n­r und
freie Parameter.
­mehr Gleichungen (m) als Unbekannte (n), "hohe" Koeffizientenmatrix: Generell lösbar wenn Rang(A)=Rang(A|b), eindeutig lösbar wenn noch Rang(A)=Rang(A|b)= n,
nicht eindeutig lösbar wenn r= Rang(A)=Rang(A|b) <
unlösbar wenn Rang(A)
n
, Zerlegungssatz aus 2(b) gilt auch hier. ≠ Rang(A|b).
Bemerkung: Für eine quadratische nxn Matrix besteht noch folgender äquivalenter Zusammenhang mit der Determinante:
Rang(A) = n
⟺ det(A) ≠ 0
Rang(A) < n
⟺ det(A) = 0
Reguläre und singuläre Matrix : eine nxn Matrix mit Rang n heißt regulär, ist der Rang <
n
so heißt sie singulär Nochmal: Mit der Determinante kann man nur feststellen, ob der Rang maximal ist oder nicht. Den genauen Rang kann man für
Rang(A) <
n
nur an der z.B. mit dem Gauß­Verfahren bearbeiteten Matrix ablesen. Es ist also völlig überflüssig und sinnlos zuerst die Determinante der Koeffizientenmatrix auszurechen, und dann
nochmal ein Gauß­Verfahren beim Gleichungssystem zu starten! Die Determinante kann man allenfalls ausrechnen, wenn
man lediglich wissen will, ob das System überhaupt eindeutig lösbar ist ­ aber an der Lösung selber gar nicht interessiert ist. Und auch das macht man nur dann, wenn die Determinante aufgrund der Matrixstruktur schneller/einfacher zu rechnen ist, als
ein Gauß­Verfahren. In der Regel erleichtert man sich die Determinantenberechnung aber doch wieder durch einige Gauß­
Schritte (Entwicklungssatz), dann kann also besser das Gauß­Verfahren auch gleich auf die Koeffizientenmatrix loslassen und
alle gewünschten Infos am Ergebnis ablesen.
Unangenehme Koeffizienten und parameterabhängige Gleichungen Kleiner Test: Sie haben den Gauß­Algorithmus gut verstanden, können flexibel damit rechnen und damit die Lösbarkeit von
Gleichungssystemen entscheiden, und ihre Lösungen berechnen? Prima dann versuchen Sie sich doch mal an folgender
Aufgaben. 1. Aufgabe.
7x + 2y + 9z = 1
3x + y + z = 1
11x + 5y + 4z = 1
Tipp: Pivots geschickt wählen.´ Wenn Sie viel Zeit haben und gerne rechnen, dürfen Sie natürlich auch gerne die Pivot­Folge
(1;1) , (2;2) probieren. ;) 2. Aufgabe: Hier sind die Koeffizienten teilweise Parameter (s, t ), wie in technischen Problemstellungen häufig vorkommend. Gesucht ist die Lösungsmenge (Achtung: diese ist parameterabhängig, Parameter sind s, t !) des folgenden linearen
Gleichungssystems.
tx + y + 3z + 2w = 2
x + z + w = s
2x + y + 2z + w = 1
Für welche Parameter t ist das folgende Vektorsystem eine Basis des R3 ?
⎛
Weitere Aufgaben hier
t
⎞
⎛
1
⎞
⎛
3
⎞
⎜1 ⎟,
⎜0 ⎟,
⎜1 ⎟
⎝
⎝
⎝
2
⎠
1
⎠
2
⎠