Matheseiten-Überblick
Rechner
für lineare Gleichungssysteme
interaktive Beispiele zum Gaußschen
Verfahren
zurück
Auf dieser Seite wird an einem Beispiel das Gaußsche Verfahren zum Lösen von linearen Gleichungssystemen erläutert, das sich insbesondere für programmierte Abläufe und für Gleichungssysteme mit vielen Unbekannten eignet.
Gesucht sei die Lösung für das lineare Gleichungssystem
6 = -12z - 10x -5x = -17 - 4w + 8z + 2y 23 = 4z + 5x -10x - 16z = 2 - 4w
Zuerst werden die Gleichungen so umgeformt, daß alle Variablen links vom Gleichheitszeichen stehen und das absolute Glied (also die Zahl ohne Variable) rechts:
I: 6 = -12z - 10x | +10x +12z -6 10x + 12z = -6 II: -5x = -17 - 4w + 8z + 2y | +4w -2y -8z 4w - 5x - 2y - 8z = -17 III: 23 = 4z + 5x | -5x -4z -23 -5x - 4z = -23 IV: -10x - 16z = 2 - 4w | +4w 4w - 10x - 16z = 2
Die so umgeformten Gleichungen werden nun so untereinander geschrieben, daß entsprechende Variablen untereinander stehen:
10x + 12z = -6 4w - 5x - 2y - 8z = -17 -5x - 4z = -23 4w - 10x - 16z = 2
Man vereinfacht sich die Schreibarbeit, indem man nur die Zahlen erfaßt, also die Koeffizienten (Faktoren vor den Variablen) aus der linken Seite und die absoluten Zahlen aus der rechten Seite der Gleichungen. Dabei müssen die Vorzeichen beachtet und übernommen werden. Für alle fehlenden Variablen wird eine Null geschrieben:
0 10 0 12 -6 4 -5 -2 -8 -17 0 -5 0 -4 -23 4 -10 0 -16 2
Eine derartige Zahlentabelle nennt man Matrix; und da es sich um die Koeffizienten eines linearen Gleichungssystems handel, heißt diese hier Koeffizientenmatrix.
Durch geeignete Umformungen versucht man, diese Matrix in die Form
1 0 0 0 a 0 1 0 0 b 0 0 1 0 c 0 0 0 1 d
zu überführen, wobei a, b, c und d für irgendwelche Zahlen stehen, die sich an diesen Stellen ergeben. Es sind allerdings keine Zahlen, die uns nicht interessieren, sondern es handelt sich bei ihnen um nichts geringeres als die Lösungen, nach denen wir eigentlich suchen. Denn die erste Zeile steht ja für w = a, die zweite für x = b, usw.
Man darf zu diesem Zwecke folgende Umformungtypen verwenden:
Ein Beispiel für den dritten Typus: Von der 4. Zeile
In der ersten Spalte muß von 4 das Vierfache von 0
abgezogen werden, d.h. die 4 bleibt.
in der zweiten Spalte muß von -10 das
Vierfache von -5 abgezogen werden: -10 - 4·(-5) ergibt 10.
in der dritten
Spalte: 0 - 4·0 = 0
in der vierten Spalte: -16 - 4·(-4) = 0
in der
fünften Spalte: 2 - 4·(-23) = 94
Warum sind diese Umformungen möglich?
Das Vertauschen von
Zeilen entspricht dem Umnumerieren der Gleichungen. Das verändert die
Lösungsmenge sicher nicht.
Das Multiplizieren von Gleichungen mit einer Zahl
verändert bekanntlicherweise auch die Lösungsmenge nicht.
Der dritte Typus
bedarf einiger Überlegung: Bei Gleichungen sind die Terme links und rechts des
Gleichheitszeichens wertgleich. Wenn man nun auf beiden Seiten Gleiches addiert,
bleibt die Waage ausgewogen; d.h. man kann auf beiden Seiten der Gleichung die
jeweiligen Seiten einer anderen Gleichung (oder entsprechende Vielfache davon)
addieren, ohne die Aussage zu verändern, denn man addiert auf beiden Seiten
denselben Wert.
Um nun das Ziel zu erreichen, geht man schrittweise und systematisch vor. Das Verfahren folgt einem schematischen Ablaufplan (Algorithmus), der nach Carl Friedrich Gauß auch Gaußscher Algorithmus oder Gaußsches Eliminationsverfahren genannt wird. Eliminieren heißt auslöschen; und tatsächlich werden nacheinander, d.h. zeilenweise, alle Zahlen zu Null gemacht (also ausgelöscht), die in unserer Ergebnismatrix Null sein sollen.
Im Ablaufplan verwenden wir für die Anzahl der Zeilen (d.h. der Gleichungen
bzw. Unbekannten) den Buchstaben n, damit der Algorithmus allgemeingültig ist
(n nimmt Bezug auf die Tatsache, daß diese Anzahl immer eine
Natürliche Zahl ist). In unserem Beispiel ist n=4.
Für die jeweilige
Zeile verwenden wir den Buchstaben i (von Index). Das i durchläuft in
diesem Verfahren systematisch nacheinander alle Zahlen von 1 bis 4. Man nennt
eine solche Variable auch „Laufvariable”.
Ich führe das Verfahren nun anhand dieses Ablaufplanes für das Beispiel durch.
Schritt A: i=1 0 10 0 12 -6 4 -5 -2 -8 -17 0 -5 0 -4 -23 4 -10 0 -16 2 Schritt B: Da in der 1. Zeile in der 1. Spalte eine 0 steht, vertausche die erste und die zweite Zeile. 4 -5 -2 -8 -17 0 10 0 12 -6 0 -5 0 -4 -23 4 -10 0 -16 2 Schritt C: Nun dividiere jede Zahl in der 1. Zeile durch 4 (die Zahl in der 1. Spalte der ersten Zeile): 1 -1,25 -0,5 -2 -4,25 0 10 0 12 -6 0 -5 0 -4 -23 4 -10 0 -16 2 Nun steht in der ersten Zeile in der ersten Spalte eine 1. Im folgenden Schritt D müssen alle anderen Zahlen in dieser Spalte zu 0 gemacht werden. Dies geschieht durch Addition (Subtraktion) geeigneter Vielfacher der ersten Zeile. Nur in der vierten Zeile steht keine 0, sondern eine 4. Man bekommt die Null, wenn man das 4fache der ersten Zeile subtrahiert: Rechne: 4-4·1=0 -10-4·(-1,25)=-10+5=-5 0-4·(-0,5)=2 -16-4·(-2)=-16+8=-8 2-4·(-4,25)=2+17=19 1 -1,25 -0,5 -2 -4,25 0 10 0 12 -6 0 -5 0 -4 -23 0 -5 2 -8 19 Schritt E: Da i=1<n=4, erhöhe i um 1: i=2 und fahre fort bei... Schritt B: In der zweiten Zeile steht in der zweiten Spalte keine 0. Also ist kein Tausch nötig. Schritt C: Dividiere die zweite Zeile durch 10, so daß dort eine 1 steht: 1 -1,25 -0,5 -2 -4,25 0 1 0 1,2 -0,6 0 -5 0 -4 -23 0 -5 2 -8 19 Schritt D: Addiere/subtrahiere geeignete Vielfache der zweiten Zeile zu den anderen, so daß dort in der zweiten Spalte überall 0 steht: addiere zur ersten Zeile das 1,25fache der zweiten Zeile, addiere zur dritte Zeile das 5fache der zweiten Zeile, addiere zur vierten Zeile das 5fache der zweiten Zeile: 1 0 -0,5 -0,5 -5 0 1 0 1,2 -0,6 0 0 0 2 -26 0 0 2 -2 16 Schritt E: Erhöhe i um 1 (i=3<4) und gehe zu B. Schritt B: Weil in der 3. Zeile in der 3. Spalte 0 steht, vertausche die vierte mit der dritten Zeile: 1 0 -0,5 -0,5 -5 0 1 0 1,2 -0,6 0 0 2 -2 16 0 0 0 2 -26 Schritt C: Dividiere die 3. Zeile durch 2: 1 0 -0,5 -0,5 -5 0 1 0 1,2 -0,6 0 0 1 -1 8 0 0 0 2 -26 Schritt D: Addiere zur ersten Zeile das 0,5fache der dritten, damit die -0,5 in der dritten Spalte der ersten Zeile verschwindet. Rechne: -0,5+0,5·1=0 -0,5+0,5·(-1)=-0,5-0,5=-1 -5+0,5·(8)=-1 1 0 0 -1 -1 0 1 0 1,2 -0,6 0 0 1 -1 8 0 0 0 2 -26 Schritt E: i=4 und zurück zu Schritt B: vierte Spalte in vierter Zeile OK. (Tauschen wäre auch nicht mehr möglich, weil unterhalb keine Zeile mehr existiert.) Schritt C: Dividiere die vierte Zeile durch 2: 1 0 0 -1 -1 0 1 0 1,2 -0,6 0 0 1 -1 8 0 0 0 1 -13 Schritt D: Addiere die vierte zur ersten Zeile, subtrahiere das 1,2fache der vierten von der zweiten Zeile, addiere die vierte zur dritten Zeile: 1 0 0 0 -14 0 1 0 0 15 0 0 1 0 -5 0 0 0 1 -13 Schritt E: i=4=n, daher weiter bei... Schritt F: Lies die Lösungen in der letzten Spalte ab: w = -14 x = 15 y = -5 z = -13 Zur Erinnerung: Die Zahlen 1 0 0 0 -14 in der ersten Zeile stehen für die Gleichung 1w + 0x + 0y + 0z = -14. Das ist vereinfacht: w = -14.
In dieser schematischen Form läßt sich dieser Algorithmus sehr gut in Computerprogramme übersetzen. Das Skript des Rechners für lineare Gleichungssysteme auf diesen Seiten (→hier klicken) funktioniert exakt nach diesem Algorithmus. Dort kann man sich auch die einzelnen Lösungsschritte für beliebig eingebbare lineare Gleichungssysteme anschauen.
Man kann das Verfahren allerdings auch intelligent an passenden Stellen
abkürzen oder vereinfachen. Zum Beispiel bietet sich oftmals an, eine bestimmte
Variable bereits vor ihrer Zeit im Algorithmus zu eliminieren, wenn sie nämlich
bereits in einer Gleichung alleine steht. Es taucht beispielsweise relativ früh
die Zeile
Das Dividieren der Zeilen durch ihr Diagonalelement läßt sich unter Umständen gewinnbringend bis zum Schluß verzögern, um nämlich Brüche oder „Kommazahlen” zu vermeiden. Wenn man im Beispiel die vertauschte erste Zeile erst ganz zuletzt durch 4 teilt und die zweite zunächst durch 2 und am Ende durch 5, kann man vollständig mit ganzen Zahlen rechnen und hat zudem einfachere Subtraktionen, was erheblich übersichtlicher ist:
0 10 0 12 -6 Zeilen I und II vertauschen 4 -5 -2 -8 -17 0 -5 0 -4 -23 4 -10 0 -16 2 4 -5 -2 -8 -17 0 10 0 12 -6 0 -5 0 -4 -23 4 -10 0 -16 2 | -I 4 -5 -2 -8 -17 0 10 0 12 -6 | :2 0 -5 0 -4 -23 0 -5 2 -8 19 4 -5 -2 -8 -17 | +II 0 5 0 6 -3 0 -5 0 -4 -23 | +II 0 -5 2 -8 19 | +II 4 0 -2 -2 -20 0 5 0 6 -3 0 0 0 2 -26 Zeilen III und IV vertauschen 0 0 2 -2 16 4 0 -2 -2 -20 | +IV 0 5 0 6 -3 | -3·IV 0 0 2 -2 16 | +IV 0 0 0 2 -26 4 0 -2 0 -46 | +III 0 5 0 0 75 0 0 2 0 -10 0 0 0 2 -26 4 0 0 0 -56 | :4 0 5 0 0 75 | :5 0 0 2 0 -10 | :2 0 0 0 2 -26 | :2 1 0 0 0 -14 0 1 0 0 15 0 0 1 0 -5 0 0 0 1 -13
© Arndt Brünner, 12. 11. 2003 — Version: 17. 11. 2003
eMail
→
lineare Gleichungssysteme berechnen
→
Additionsverfahren
→
Einsetzungs-, Gleichsetzungsverfahren