NuMa: Kondition berechnen


    Was ist die Kondition?

    Die Kondition ist ein zentraler Begriff in der Numerik. Die Kondition ist eine problembezogene und verfahrensunabhängige Größe. Sie wird also auf Funktionen angewendet. Die Kondition eines Problems beschreibt dessen Sentivität gegenüber Störung der Eingabedaten. Mit Störung eines Eingangsdatums ist die Abweichung des zur Rechnung herangezogenen Wertes vom exakten Wert des Eingangsdatums. Weil es so wichtig ist nochmal wiederholt: Die Kondition ist also diejenige Größe, die angibt welcher problemspezifischer, unvermeidlicher Fehler bei Störung der Eingabedaten auftritt.

    Absolute und relative Fehler

    Das Ganze in mathematischen Symbolen:

    Sei $x$ die tatsächliche Eingabegröße, auf die die Ausgabefunktion angewendet werden soll. Sei weiter $\tilde{x}$ die gestörte Eingabegröße, also eine durch Fehler abweichende Eingabegröße.

    Dann bezeichnen:
    $ \lvert x-\tilde{x} \rvert $ den absoluten Eingangsfehler.
    $\delta_x := \left\lvert \frac{x-\tilde{x}}{x} \right\rvert$
    den relativen Eingabefehler.

    Analoge Definition des absoluten bzw. relativen Ausgabefehlers:

    $ \lvert f(x)-f(\tilde{x}) \rvert $ bzw.
    $ \delta_y := \left\lvert \frac{f(x)-f(\tilde{x})}{f(x)} \right\rvert $

    Gute Kondition, schlechte Kondition

    Man sagt ein Problem ist gut konditioniert, wenn ein kleiner Fehler in der Eingabe auch einen kleinen Fehler in der Ausgabe erzeugt. D.h.
    $
    \left\lvert \delta_y \right\rvert
    = \phi \cdot \left\lvert \delta_x \right\rvert
    $
    mit $\phi$ klein. $\phi$ nennen wir Fehlerversärkung. Welchen expliziten Wert $\phi$ nicht überschreiten darf, damit das Problem noch gut konditioniert ist, ist nicht definiert. Eine solche Definition wäre auch nicht sinnvoll, da es vom Anwendungsfall abhängig ist, welche Präzision notwendig, bzw. noch akzeptabel ist. Genaueres zur Motivation aus der Taylorreihe, Definition/Berechnung von $\phi$ finden Sie in “Numerische Mathematik für Ingenieure” von Dahmen/Reusken S.22 (2.Auflage).

    Ansonsten ist sagt man, dass das Problem schlecht konditioniert ist.

    Die Konditionszahl

    Da $x$ und damit $\delta_x$ i.A. vektorwertig ist, hängt der relative Fehler von der Wahl der Norm ab.

    Der Einfachheit halber bezieht sich das folgende auf die Einsnorm. Das Folgende glauben wir einfach.

    $ \kappa_{rel}^\infty (x) $ ist hierbei die (relative) Konditionszahl. Ähnlich wie die Fehlerverstärkung, dient sie zur Abschätzung des Ausgabefehlers.

    Allerdings gelten hier zwei Einschränkungen:
    (1) Aufgrund der noch folgenden Definition der Konditionszahl ist sie nur eine gute/richtige Abschätzung, falls $ \delta_x $ klein. (Grund: Motivation aus Taylor-Reihe, Vernachlässigung Terme höherer Ordnung.)

    (2) Wir verwenden $\kappa_{rel}$ zur Fehlerabschätzung, d.h. falls (1) erfüllt ist, dann ist der Fehler maximal so groß wie $\kappa_{rel}(x) \cdot \delta_x$, wegen der Definition von $\kappa_{rel}(x)$ (s.u.). Für $n$-wertige Funktionen, gilt für die, also Funktionen mit $n$ Argumenten gilt:
    $$
    \left\lvert \frac{f(x)-f(\tilde{x})}{f(x)} \right\rvert
    \le \kappa_{rel}(x) \sum_{j=1}^n \left\lvert
    \frac{\tilde{x_j}-x_j}{x_j} \right\rvert
    \quad \text{mit} \quad
    \kappa_{rel}(x) = \kappa_{rel}^\infty (x) = \underset{j}{max}
    \left\lvert \frac{\partial f(x)}{\partial x_j}
    \cdot \frac{x_j}{f(x)} \right\rvert
    $$

    Für $1$-wertige Funktionen gilt:
    $$
    \left\lvert \frac{f(x)-f(\tilde{x})}{f(x)} \right\rvert
    = \kappa_{rel}(x)
    \left\lvert \frac{\tilde{x}-x}{x} \right\rvert
    \quad \text{mit} \quad
    \kappa_{rel}(x) =
    \left\lvert f'(x)
    \cdot \frac{x_j}{f(x)} \right\rvert
    $$

    Sei $A(x+\Delta x) = (b+\Delta b) $ ein Gleichungssystem. Wobei $(x+\Delta x)$ die Lösung dieses Gleichungssystems ist und $A$ eine reguläre Matrix, dann gilt:
    $$
    \norm{\frac{\Delta x}{x}}
    \le \kappa_{rel}(A) \cdot \norm{\frac{\Delta b}{b}}
    $$

    Die Konditionszahl einer Matrix berechnet sich als Norm der Matrix multipliziert mit der Norm der Inversen Matrix.
    $$
    \kappa_{rel}(A) = \norm{A}\norm{A^{-1}}
    $$
    Bemerkung: daraus folgt direkt $ \kappa_{rel}(A) = \kappa_{rel}(A^{-1}) $. Dies hat zur Folge, dass die Lösung des LGS $Ax = b \Leftrightarrow x = A^{-1}b $ die gleiche Konditioierung hat wie die Berechnung von $Ax$.

    Anmerkung zur regulären Matrix: Falls $Ax = b$ wobei, $A$ eine Matrix, $x$ die Lösung dieses GLS, $b, x \in \mathbb{R}^n$, dann sind folgende Aussagen sind äquivalent (vgl. S.57 Dahmen/Reusken):

    • A ist regulär.
    • A ist nichtsingulär.
    • A ist invertierbar.
    • A hat vollen Rang.
    • $det(A)\ne 0$
    • Das GLS ist für jedes $b$ eindeutig lösbar und hat die Lösung $x$.
    • Das GLS $Ax = 0$ hat nur die triviale Lösung $x = 0$.

    Genauere Informationen im Artikel zur linearen Algebra.

    Anmerkung zur Norm: Der Begriff der Norm ist in diesem Artikel erklärt.

    Kondition verbessern – Zeilenskalierung

    Um Ihre Kondition verbessern, sollten Sie regelmäßig Ausduaersport machen. Um die Kondition einer Matrix zu verbessern können Sie die Einträge einer Matrix zeilenweise skalieren, d.h. mit einer geeigneten Zahl multiplizieren. Diesen Vorgang
    nennt man Zeilenskalierung oder Zeilenäquilibrierung. Wie diese Zahlen im Einzelnen zu wählen sind, ist nicht für jede Norm bekannt. Um nun die Zeilen der Matrix skalieren, multiplizieren wir von links eine Diagonalmatrix $D$ an $A$, deren Einträge $d_i$ jeweils das Skalar sind mit dem die $i$-te Zeile der Matrix $A$ gewichtet werden soll.

    Bezogen auf die Maximumsnorm ($\norm{\cdot}_\infty$) wählen wir die Gewichte in $D$ als reziproke Summe der Beträge der Einträge der jeweiligen Zeile in $A$.

    Als Formel:
    $$
    d_{i,\norm{\cdot}_\infty} =
    \frac{1}{\sum_{j=1}^n \lvert a_{i,j} \rvert}
    $$

    Beispiel: Sei $A$ =
    $$
    \begin{pmatrix}
    5 & -2 & 3\\
    -1 & 8 & 1\\
    0 & -3 & 6
    \end{pmatrix}
    $$

    Dann ist $D$ =
    $$
    \begin{pmatrix}
    \frac{1}{10} & 0 & 0\\
    0 & \frac{1}{10} & 0\\
    0 & 0 & \frac{1}{9}
    \end{pmatrix}
    $$

    $ \newcommand{\norm}[1]{\left\lVert#1\right\rVert} $

    Leave a Reply

    Your email address will not be published. Required fields are marked *

    Prove, that you are human! *