Kurs:Numerik I/Stabilität und Kondition

Einführung - Stabilität und Kondition Bearbeiten

In dem folgenden Abschnitt wird zunächst der Fehler von algebraischen Operationen betrachtet, um später über die Definition der Matrixnorm und die Eigenschaften von Normen für die Definition der Kondition einer Matrix zu verwenden.

Definition - Algorithmus Bearbeiten

Unter einem Algorithmus verstehen wir eine eindeutig festgelegte Folge von elementaren Operationen  , d. h. ein eindeutig festgelegtes Verfahren zur numerischen Lösung eines Problems oder einer Klasse von Problemen.

Fehler und Algorithmenwahl Bearbeiten

Zumeist gibt es mehrere unterschiedliche Algorithmen zur Lösung eines Problems, die bei exakter Rechnung zu demselben Ergebnis führen würden, die dies jedoch numerisch aufgrund von Rundungsfehlern, Speicherplatz etc. auf dem Computer im Allgemeinen nicht tun.

Beispiele - numerische Grundideen Bearbeiten

In den folgenden Beispielen werden mathematische Berechnungen mit einer unterschiedlichen Genauigkeit ausgeführt. Dabei wird zunächst eine exakte Berechnung mit den mathematischen Verknüpfungen durchgeführt und danach mit einer gewissen Genauigkeit der Gleitkommadarstellung gerechnet.

Beispiel - exakte Berechnung Bearbeiten

Seien   und  . Dann gilt bei exakter Rechnung

 

Rundung auf darstellbare Genauigkeit Bearbeiten

Der  -Operator bildet eine reelle Zahl   auf die mit der  -adisch darstellbare Gleitkommadarstellung   ab. Dieser Schritt ist fehlerbehaftet und es gilt  . Beispielsweise erhält man bei einer Rundung auf 4 Nachkommastellen

 

Beispiel - Fehler in Abhängigkeit von Berechnungsreihenfolge Bearbeiten

Bei 4-stelliger Rechnung untersucht man nun die Abhängigkeit des Fehlers von der Berechnungsreihenfolge. Allgemein ohne numerische Effekte gilt:

 

Berechnet man allerdings mit einer Genauigkeit von 4 Nachkommastellen, ergibt sich hingegen

 

wobei 4 korrekte Stellen in Bezug auf das exakte Ergebnis vorliegen und die alternativ mathematisch äquivalente Berechnungsreihenfolge liefert

 

wober das Ergebnis lediglich bzgl. des exakten Ergebnisses 2 korrekte Stellen aufweist.

Bemerkung - Mathematische Gesetze für gl-Operationen Bearbeiten

Die  -Operationen genügen also weder dem Assoziativ- noch dem Distributivgesetz.

Ziel bzgl. Fehlerrechnung Bearbeiten

Das Ziel der numerischen Mathematik ist die Konstruktion und Analyse von effizienten Algorithmen. Dabei meinen wir mit effizient, dass ein Algorithmus

  • schnell ein Ergebnis für eine bestimmt Genauigkeit liefert,
  • sparsam im Ressourcenverbrauch auf einem Rechner und
  • stabile bzgl. Eongabefehlern sein.

Schnellkeit und Sparsamkeit Bearbeiten

Schnelligkeit und Sparsamkeit betrachtet man in der Regel nicht unabhängig voneinander. Dabei bedeutet schnell und sparsam zu sein, dass möglichst wenige Rechenoperationen und dabei mit geringem Speicherplatzbedarf wenig Rechenzeit zur Berechnung des gewünschten Resultates benötigen sollten. Wenn moglichst viele Zwischenresutate im Hauptspeicher gehalten werden müssen, um schnell zu berechnen, muss man im Einzelfall Geschwindigkeit und Speicherplatzbedarf bzgl. Effizienz abstimmen.


Stabilität Bearbeiten

Wenn ein Algorithmus numerisch stabil sein sollte, heißt das, dass die Verfälschung der Resultate durch Rundungsfehler nicht wesentlich größer sein sollte als die Verfälschung durch die Eingabefehler.


Eingabefehler Bearbeiten

Unter Eingabefehler versteht man dabei die durch Rundung der Eingabedaten auf dem Rechner sich bereits ergebenden (im Allgemeinen kleinen) Fehler. Ein mathematisches Problem kann aber selbst schon „gutartig“ oder „bösartig“ sein. So nennt man ein mathematisches Problem gut konditioniert, wenn kleine Störungen in den Daten auch nur kleine Fehler in den Lösungen zur Folge haben, und es heißt schlecht konditioniert (ill-conditioned), wenn kleine Störungen in den Daten große Fehler in den Lösungen bewirken können. Bei schlecht konditionierten Problemen ziehen also Eingabefehler auf dem Rechner üblicherweise automatisch große Fehler in den erzielten Resultaten nach sich und zwar für jeden Algorithmus.

Beispiel - Kondition Bearbeiten

Die Kondition wird nun für bestimmte algebraische Operationen betrachtet.

Subtraktion S1 - Behandlung des Fehlers Bearbeiten

Die Subtraktion   etwa gleich großer reeller Zahlen   und   ist ein schlecht konditioniertes Problem. Denn sind   und   mit Fehlern   und   gestört, d. h. hat man statt   und  

 

dann ergibt sich

 

Subtraktion S2 - Fehlerverstärkung Bearbeiten

Für  ,   und   hat man bezüglich   im Ergebnis eine Fehlerverstärkung gegenüber   bzw.   von

 

Subtraktion S3 - Auslöschung von korrekten Stellen Bearbeiten

Auf dem Rechner führt dies zum Phänomen der Auslöschung von korrekten Stellen. Hat man z. B. bei 8-stelliger Rechnung

  (6 korrekte Stellen),
  (7 korrekte Stellen),

so erhält man nach der Subtraktion nur noch 2 korrekte Stelle in dezimalen Darstellung

 

Bemerkung - Markierung des Fehlers im der b-adischen Darstellung Bearbeiten

Die   stehen für Stellen im Stellenwertsystem, ab der ein Fehler in der Zahldarstellung auftritt.

Schnittpunkt von Geraden G1 Bearbeiten

Das Problem, den Schnittpunkt zweier Geraden   und  , die fast parallel zueinander sind, zu berechnen, ist schlecht konditioniert. Um dies einzusehen, mache man sich geometrisch klar, dass im Fall zweier sich im rechten Winkel schneidender Geraden kleine „Störungen“ der Geraden auch nur kleine Störungen bezüglich des gemeinsamen Schnittpunktes zur Folge haben, während solche Störungen großen Einfluss haben, wenn die Geraden fast parallel zueinander sind.

Schnittpunkt von Geraden G2 - Aufgabe Bearbeiten

Begrechnen Sie mit Sätzen aus der Geometrie und drei Punkte   eines rechtwinkligen Dreiecks mit rechtem Winkel bei   sind. Eine Gerade   als Gerade durch die beiden   und   definiert ist und die zweite Gerade   mit dem Winkel   ist. Der Fehler bei diesem Winkel einmal um   und einmal   und berechnen Sie die Abweichung der Schnittpunkt zu dem Schnittpunkt des Winkels  ,

Bemerkung Bearbeiten

Bei der Konstruktion von Algorithmen sollte man also, wenn möglich, schlecht konditionierte Teilprobleme vermeiden.

Beispiel B1 - 3. Binomische Formel = Bearbeiten

Der Ausdruck

 

sollte mittels der numerisch stabileren Darstellung

 

berechnet werden.

Beispiel B2 - 3. Binomische Formel Bearbeiten

Die Funktion

 

erlaubt die stabilisierte Darstellung

 

welche sich zur Berechnung von Funktionswerten für   anbietet. Man mache sich klar, dass bei der Auswertung der stabilisierten Darstellung keine Auslöschung auftritt.

Siehe auch Bearbeiten

Seiteninformation Bearbeiten

Diese Lernresource können Sie als Wiki2Reveal-Foliensatz darstellen.

Wiki2Reveal Bearbeiten

Dieser Wiki2Reveal Foliensatz wurde für den Lerneinheit Kurs:Numerik I' erstellt der Link für die Wiki2Reveal-Folien wurde mit dem Wiki2Reveal-Linkgenerator erstellt.