5.7 Matrix Division - Lineare Gleichungssysteme

Die Division von Matrizen kann man sich am besten mit Hilfe von linearen Gleichungssystemen vorstellen. Solche Gleichungssysteme können sehr elegant mit Hilfe von Matrizen formuliert werden. Bei bekanntem $ {\bf A}$ und $ {\bf b}$ kann eine Gleichung für $ {\bf x}$ folgendermaßen geschrieben werden

$\displaystyle {\bf A}{\bf x}= {\bf b}\; .$ (5.31)

Im Allgemeinen ist die Koeffizientenmatrix $ {\bf A}= [a_{jk}]$ die $ m \times n$ Matrix

$\displaystyle {\bf A}= \begin{bmatrix}a_{11} & a_{12} & \dots & a_{1n}  a_{21...
...\vdots & \ddots & \vdots  a_{m1} & a_{m2} & \dots & a_{mn} \end{bmatrix} \; ,$   und$\displaystyle \; {\bf x}= \begin{bmatrix}x_1  \vdots  \vdots  x_n \end{bmatrix} \;$   und$\displaystyle \; {\bf b}= \begin{bmatrix}b_1  \vdots  b_m \end{bmatrix}$ (5.32)

sind Spaltenvektoren. Man sieht, dass die Anzahl der Elemente von $ {\bf x}$ gleich $ n$ und von $ {\bf b}$ gleich $ m$ ist. Dadurch wird ein lineares System von $ m$ Gleichungen in $ n$ Unbekannten beschrieben:

\begin{displaymath}\begin{array}{cccccccccc} a_{11}x_{1} & + & a_{12}x_{2} & + &...
...}x_{2} & + & \dots & + & a_{mn}x_{n} & = & b_{m}  \end{array}\end{displaymath} (5.33)

Die $ a_{jk}$ sind gegebene Zahlen, die Koeffizienten des Systems genannt werden. die $ b_{i}$ sind ebenfalls gegebene Zahlen. Wenn alle $ b_{i}$ gleich Null sind, handelt es sich um ein homogenes System, wenn hingegen zumindest ein $ b_{i}$ ungleich Null ist, handelt es sich um ein inhomogenes System.

Die Lösung von 5.33 ist ein Vektor $ {\bf x}$ der Länge $ n$, der alle $ m$ Gleichungen erfüllt. Ist das System 5.33 homogen, hat es zumindest die triviale Lösung

$\displaystyle x_{1} = 0 \; , \; x_{2} = 0 \; ,\; \dots \; , \; x_{n} = 0 \; .$ (5.34)

Ein System heißt
überbestimmt,
wenn es mehr Gleichungen als Unbekannte hat ($ m>n$);
bestimmt,
wenn es gleich viel Gleichungen wie Unbekannte hat ($ m=n$);
unterbestimmt,
wenn es weniger Gleichungen als Unbekannte hat ($ m<n$).
Ein unterbestimmtes System hat immer eine Lösungsschar, ein bestimmtes Gleichungssystem hat mindestens eine Lösung, und ein überbestimmtes System hat nur eventuell eine Lösung.

Um $ {\bf x}$ zu berechnen, kann man nun formal 5.31 von Links mit $ {\bf A}^{-1}$ multiplizieren

$\displaystyle {\bf A}^{-1} {\bf A}{\bf x}= {\bf A}^{-1} {\bf b}\; \Longrightarrow \; {\bf x}= {\bf A}^{-1} {\bf b}= {\bf A}\backslash {\bf b}.$ (5.35)

Dafür steht in MATLAB der Befehl x=A\b bereit. Das Zeichen \ steht für die sogenannte ``Matrix-Linksdivision''. Es wird hier in der Numerik verwendet, in der mathematischen Beschreibung der linearen Algebra aber nicht.

Handelt es sich um ein bestimmtes Gleichungsystem, löst MATLAB das System mit Hilfe des Gaußschen Eliminierungsverfahrens.

Handelt es sich um eine über- oder unterbestimmtes Gleichungssystem, findet MATLAB die Lösung mit Hilfe des ``Least Squares''-Verfahrens, dass später besprochen wird.

Lautet das lineare Gleichungssystem hingegen

$\displaystyle {\bf y}{\bf A}= {\bf c}\; ,$ (5.36)

wobei $ {\bf y}$ und $ {\bf c}$ jetzt Zeilenvektoren der Länge $ m$ bzw. $ n$ sind, muss man von rechts mit $ {\bf A}^{-1}$ multiplizieren und erhält

$\displaystyle {\bf y}{\bf A}{\bf A}^{-1} = {\bf c}{\bf A}^{-1} \; \Longrightarrow \; {\bf y}= {\bf c}{\bf A}^{-1} = {\bf c}/ {\bf A}\; .$ (5.37)

Dafür steht in MATLAB der Befehl y=c/A bereit. Das Zeichen / steht dafür für ''Matrix-Rechtsdivision''. Mit Hilfe der Regeln für das Transponieren, kann 5.37 umgeformt werden in

$\displaystyle {\bf y}= \left( ({\bf A}^{-1})^{T} {\bf c}^{T} \right)^{T} = \left( {\bf A}^{T} \backslash {\bf c}^{T} \right)^{T} \; ,$ (5.38)

wobei dies die Form ist, die MATLAB intern verwendet (y=(A.'\c.').').

Für die Skalare $ s$ und $ r$ würde gelten

\begin{displaymath}\begin{array}{lclcl} s / r & = & s r^{-1} & = & s/r  r \backslash s & = & r^{-1} s & = & s/r , \end{array}\end{displaymath} (5.39)

was in beiden Fällen das Gleiche ist, da die Multiplikation von Skalaren kommutativ ist. Dies gilt jedoch nicht für die Matrizenmultiplikation.

MATLAB hat darüber hinaus den Vorteil, dass lineare Gleichungssysteme simultan für verschiedene inhomogene Vektoren $ {\bf b}$, die in einer Matrix $ {\bf B}$ zusammengefasst sind, gelöst werden können. Man kann 5.33 umschreiben als:

\begin{displaymath}\begin{array}{cccccccccc} a_{11}x_{11} & + & a_{12}x_{21} & +...
...{2p} & + & \dots & + & a_{mn}x_{np} & = & b_{mp}  \end{array}\end{displaymath} (5.40)

Dieses Gleichungssystem kann formal geschrieben werden als

$\displaystyle {\bf A}{\bf X}= {\bf B}\; ,$ (5.41)

wobei die $ m \times p$ Inhomogenitätsmatrix $ {\bf B}$ aus $ p$ nebeneinander angeordneten Spaltenvektoren $ {\bf b}$ besteht. Auf die genau gleiche Weise liegen die Lösungen in den $ p$ Spaltenvektoren der $ n \times p$ Matrix $ {\bf X}$. Die Lösung erfolgt in MATLAB mit dem analogen Befehl X=A\B.

Winfried Kernbichler 2005-04-26