KAPITEL 2. Fehleranalyse: Kondition, Rundungsfehler, Stabilität. Datenfehler. Dahmen-Reusken Kapitel 2 1

Ähnliche Dokumente
Numerisches Rechnen. (für Informatiker) M. Grepl P. Esser & G. Welper & L. Zhang. Institut für Geometrie und Praktische Mathematik RWTH Aachen

Gleitkommaarithmetik und Pivotsuche bei Gauß-Elimination. Lehrstuhl für Angewandte Mathematik Wintersemester 2009/

1. Einführung. Umwelt-Campus Birkenfeld Numerische Mathematik

Computerarithmetik ( )

Elemente der Analysis I Kapitel 2: Einführung II, Gleichungen

Beispiel Wenn p ein Polynom vom Grad größer gleich 1 ist, ist q : C Ĉ definiert durch q (z) =

KAPITEL 4. Lineare Ausgleichsrechnung Beispiel 4.1. Das Ohmsche Gesetz: U = RI. Eine Meßreihe von Daten:

9.2. DER SATZ ÜBER IMPLIZITE FUNKTIONEN 83

Optimalitätskriterien

Lineare Algebra - alles was man wissen muß

Lösungen: zu 1. a.) b.) c.)

2 Die Darstellung linearer Abbildungen durch Matrizen

Fehler in numerischen Rechnungen

Mathematik für Informatiker II. Beispiellösungen zur Probeklausur. Aufgabe 1. Aufgabe 2 (5+5 Punkte) Christoph Eisinger Sommersemester 2011

Computergrundlagen Boolesche Logik, Zahlensysteme und Arithmetik

Die Gleichung A x = a hat für A 0 die eindeutig bestimmte Lösung. Für A=0 und a 0 existiert keine Lösung.

2 Gleitpunktarithmetik und Fehleranalyse

1 Zahlen. 1.1 Die reellen Zahlen

Lineare Gleichungssysteme

Einführung in die Numerische Mathematik

3.3 Eigenwerte und Eigenräume, Diagonalisierung

Gleichungen - Aufgabenstellung und Lösungsstrategien

Übungen zur Ingenieur-Mathematik III WS 2009/10 Blatt

GF(2 2 ) Beispiel eines Erweiterungskörpers (1)

Bitte unbedingt beachten: a) Gewertet werden alle acht gestellten Aufgaben.

klar. Um die zweite Bedingung zu zeigen, betrachte u i U i mit u i = 0. Das mittlere -Zeichen liefert s

Lösungen zum 3. Aufgabenblatt

Elemente der Analysis II

Numerisches Programmieren, Übungen

Modulabschlussklausur Analysis II

Nichtlineare Optimierung ohne Nebenbedingungen

Kapitel 2. Zahlensysteme, Darstellung von Informationen

Gleitkommaarithmetik und Fehleranalyse

Technische Informatik I

, WS2012 Übungsgruppen: Mo.,

Mathematik für Studierende der Biologie und des Lehramtes Chemie Wintersemester 2013/14. Auswahl vorausgesetzter Vorkenntnisse

Erinnerung/Zusammenfassung zu Abbildungsmatrizen

7 Rechnen mit Polynomen

Kommentierte Musterlösung zur Klausur HM I für Naturwissenschaftler

17. Penalty- und Barriere-Methoden

Rekursionen. Georg Anegg 25. November Methoden und Techniken an Beispielen erklärt

3.1. Die komplexen Zahlen

Übungen zum Ferienkurs Lineare Algebra WS 14/15

Teil II. Nichtlineare Optimierung

Vorlesung Programmieren. Agenda. Dezimalsystem. Zahlendarstellung. Zahlendarstellung. Oder: wie rechnen Computer?

u + v = v + u. u + (v + w) = (u + v) + w. 0 V + v = v + 0 V = v v + u = u + v = 0 V. t (u + v) = t u + t v, (t + s) u = t u + s u.

Vorlesung. Funktionen/Abbildungen 1

Kapitel 4. Euklidische Ringe und die Jordansche Normalform. 4.1 Euklidische Ringe

Bestimmung einer ersten

Einführung in die Vektor- und Matrizenrechnung. Matrizen

Zuammenfassung: Reelle Funktionen

Höhere Mathematik 3. Apl. Prof. Dr. Norbert Knarr. Wintersemester 2015/16. FB Mathematik

Vorkurs Mathematik Übungen zu Polynomgleichungen

Division Für diesen Abschnitt setzen wir voraus, dass der Koeffizientenring ein Körper ist. Betrachte das Schema

Mathematik 1 für Wirtschaftsinformatik

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?

Praktische Mathematik I

KAPITEL 3. Lineare Gleichungssysteme, direkte Lösungsverfahren

Einstieg in die Informatik mit Java

Ergänzungen zur Analysis I

Wirtschaftsmathematik für International Management (BA) und Betriebswirtschaft (BA)

Mathematische Ökologie

Kapitel 15: Differentialgleichungen

OPERATIONS-RESEARCH (OR)

Numerische Verfahren und Grundlagen der Analysis

a n := ( 1) n 3n n 2. a n := 5n4 + 2n 2 2n n + 1. a n := n 5n 2 n 2 + 7n + 8 b n := ( 1) n

13. Lineare DGL höherer Ordnung. Eine DGL heißt von n-ter Ordnung, wenn Ableitungen y, y, y,... bis zur n-ten Ableitung y (n) darin vorkommen.

DIFFERENTIALGLEICHUNGEN

Ein polyadisches Zahlensystem mit der Basis B ist ein Zahlensystem, in dem eine Zahl x nach Potenzen von B zerlegt wird.

4. Übungsblatt zu Mathematik für Informatiker I, WS 2003/04

Neuronale Netze mit mehreren Schichten

Lektion 1: Von Nullen und Einsen _ Die binäre Welt der Informatik

Einführung in die Informatik I

Eigenwerte und Eigenvektoren von Matrizen

11. Primfaktorzerlegungen

Hinweise zu Anforderungen des Faches Mathematik in Klasse 11 des Beruflichen Gymnasiums Wirtschaft

Computer Vision I. Nikos Canterakis. Lehrstuhl für Mustererkennung, Universität Freiburg

Mathematikaufgaben zur Vorbereitung auf das Studium

In diesem Abschnitt werden die verschiedenen (diskreten) Zahldarstellungen im Computer diskutiert, insbesondere die floating point Darstellung.

in vielen technischen und wissenschaftlichen Anwendungen erforderlich: hohe Präzision große Dynamik möglich durch Verwendung von Gleitkommazahlen

Grundstrukturen: Speicherorganisation und Zahlenmengen

2 Rechnen auf einem Computer

Vorkurs Mathematik Übungen zu Differentialgleichungen

Zahlendarstellungen und Rechnerarithmetik*

3. Die Eigenschaften der reellen Zahlen II: Geordnete Körper

Technische Informatik - Eine Einführung

Grundlagen der Technischen Informatik Wintersemester 12/13 J. Kaiser, IVS-EOS

Wie viele Nullstellen hat ein Polynom?

Kapitel 15. Lösung linearer Gleichungssysteme

Information in einem Computer ist ein

Binäre Gleitkommazahlen

Codierungstheorie Rudolf Scharlau, SoSe

Logische Verknüpfungen. while-schleifen. Zahlendarstellung auf dem Computer. Formatierung von Zahlen in MATLAB.

Kapitel 6. Komplexität von Algorithmen. Xiaoyi Jiang Informatik I Grundlagen der Programmierung

Mathematische Grundlagen der Kryptographie. 1. Ganze Zahlen 2. Kongruenzen und Restklassenringe. Stefan Brandstädter Jennifer Karstens

Einführung in die Numerische Mathematik

Extremwertverteilungen

Vorlesung. Komplexe Zahlen

Numerische Verfahren zur Lösung nichtlinearer Gleichungen

Algorithmische Mathematik

Transkript:

KAPITEL 2 Fehleranalyse: Kondition, Rundungsfehler, Stabilität Datenfehler Fehler im Algorithmus Fehler im Resultat Dahmen-Reusken Kapitel 2 1

Kondition eines Problems Analyse der Fehlerverstärkung bei Datenfehlern: Konzept der Kondition eines Problems Dies ist zunächst unabhängig von einem speziellen Lösungsweg (Algorithmus) und gibt nur an, welche Genauigkeit man bestenfalls (bei exakter Rechnung) bei gestörten Eingangsdaten erwarten kann Um dies etwas präziser beschreiben zu können, fassen wir den mathematischen Prozeß oder das Problem als Aufgabe auf, eine gegebene Funktion an einer Stelle x X auszuwerten f : X Y Dahmen-Reusken Kapitel 2 2

Elementare Beispiele Beispiel 21 Die Berechnung der Multiplikation von x 1 und x 2 : f(x 1, x 2 ) = x 1 x 2, und X = R 2, Y = R Beispiel 22 Die Berechnung der Summe von x 1 und x 2 : f(x 1, x 2 ) = x 1 + x 2, und X = R 2, Y = R Dahmen-Reusken Kapitel 2 3

Beispiel 23 Man bestimme die kleinere der Nullstellen der Gleichung y 2 2x 1 y + x 2 = 0, mit x 2 1 > x 2 Die Lösung y ist y = f(x 1, x 2 ) = x 1 x 2 1 x 2 In diesem Fall gilt X = {(x 1, x 2 ) R 2 x 2 1 > x 2 }, Y = R Dahmen-Reusken Kapitel 2 4

Beispiel 24 Bestimmung des Schnittpunktes zweier Geraden: G 1 = {(y 1, y 2 ) R 2 a 1,1 y 1 + a 1,2 y 2 = x 1 } G 2 = {(y 1, y 2 ) R 2 a 2,1 y 1 + a 2,2 y 2 = x 2 }, wobei x = (x 1, x 2 ) T R 2 und a i,j gegeben seien Schreibt man kurz so gilt A = ( ) a1,1 a 1,2 a 2,1 a 2,2 Ay = x Annahme: det A 0, Dann ist u gerade durch y = A 1 x, gegeben Also Auswertung der Funktion dh X = Y = R 2 f(x) = A 1 x, Dahmen-Reusken Kapitel 2 5

Beispiel 25 Es soll das Integral I n = 1 0 t n t + 5 dt für n = 30 berechnet werden Für I n (n = 1,2, ) gilt die Rekursionsformel I n + 5I n 1 = Durch die Rekursion 1 0 t n + 5t n 1 t + 5 dt = 1 0 tn 1 dt = 1 n J 0 R, J n = 1 n 5J n 1, n = 1,2,,30, wird eine Funktion f : R R, f(j 0 ) = J 30 definiert Das Problem besteht in der Auswertung dieser Funktion an der Stelle I 0 : I 30 = f(i 0 ) = f(ln( 6 5 )), X = Y = R Dahmen-Reusken Kapitel 2 6

Allgemeiner Rahmen Eingabedaten x X, die mit Fehlern x = x x behaftet sind Problem, Prozeß f Ausgabedaten y = f( x) Y mit Fehlern y = f( x) f(x) Es geht nun darum, den Ausgabefehler y ins Verhältnis zum Eingabefehler x zu setzen Dahmen-Reusken Kapitel 2 7

Abbildung 22 Kondition bei der Bestimmung des Schnittpunktes: Dahmen-Reusken Kapitel 2 8

Bemessen, Normen Eine Abbildung : V R heißt Norm auf V, falls (N1) v 0, v V und v = 0 impliziert v = 0; (N2) Für alle a K, v V gilt av = a v ; (N3) Für alle v, w V gilt die Dreiecksungleichung v + w v + w Wenn eine Norm auf V definiert ist, nennt man V oft einen linearen normierten Raum Dahmen-Reusken Kapitel 2 9

Beispiele Die - oder Sup-Norm x := max x i, x R n, i=1,,n f := f L (I) := max f(t), t I definiert eine Norm auf R n bzw C(I) f C(I), Es kostet etwas mehr Mühe zu zeigen, daß für 1 p < auch mit x p := n i=1 x i p 1/p, x R n, ( 1/p, f p = f Lp (I) dt) I := f(t) p f C(I), Normen auf R n bzw C(I) gegeben sind Für p = 2: x 2 = (x, x) 1/2, (x, y) := x T y = dh, Norm wird durch ein Skalarprodukt induziert n i=1 x i y i, Dahmen-Reusken Kapitel 2 10

Beispiele Beispiel 29 Man sollte beim Begriff endlich-dimensionaler Vektorraum nicht nur an R n denken: Π m := { m i=0 a i x i a i R } ist ein R-Vektorraum der Dimension m + 1 Die Monome m i (x) := x i, i = 0,, m, dienen hier als Basis (ein System von Elementen, deren Linearkombinationen den ganzen Raum ausfüllen und die linear unabhängig sind) Π m läßt sich zb folgendermaßen normieren Man fixiere ein Intervall, zb I = [0,1] und verwende die Sup-Norm für Funktionen P := P L (I) = max x I P(x) Dahmen-Reusken Kapitel 2 11

Satz 210 Auf einem endlich-dimensionalen Vektorraum V sind alle Normen äquivalent Das heißt, zu je zwei Normen, existieren beschränkte, positive Konstanten c, C, so daß c v v C v für alle v V Beispiel: x x 2 n x, für alle x R n Dahmen-Reusken Kapitel 2 12

Relative und Absolute Kondition absolute Fehler: x X, y Y, relative Fehler: δ x = x X x X, δ y = y Y y Y Mit der relativen/absoluten Kondition eines (durch f beschriebenen) Problems bezeichnet man nun das Verhältnis δ y y bzw Y δ x x X des relativen/absoluten Ausgabefehlers zum relativen/absoluten Eingabefehler also die Sensitivität des Problems unter Störung der Eingabedaten Wenn man über die Kondition eines Problems spricht, wird meistens die relative Kondition gemeint Ein Problem ist umso besser konditioniert, je kleinere Schranken für δ y /δ x (mit δ x 0) existieren Dahmen-Reusken Kapitel 2 13

Landau-Symbol Seien g, h : R n R m und R n, R m Normen auf R n bzw R m Sei x 0 R n Wenn es Konstanten C > 0, δ > 0 gibt, so daß für alle x mit x x 0 R n < δ gilt, sagt man: g(x) R m C h(x) R m g ist von der Ordnung groß O von h für x gegen x 0 Dafür wird oft die Notation g(x) = O(h(x)) (x x 0 ) verwendet Dahmen-Reusken Kapitel 2 14

Beispiel 211 Für n = m = 1 gilt sin x = O(x) (x a) für alle a R, x 2 + 3x = O(x) (x 0), x 2 x 6 = O(x 3) (x 3) Für n = 2, m = 1, g(x 1, x 2 ) = x 2 1 (1 x 2) + (x 3 2 + x 1)(1 x 2 1 ) gilt g(x 1, x 2 ) = O(x 1 + x 3 2 ) ((x 1, x 2 ) (0,0)), g(x 1, x 2 ) = O( 1 x 1 + 1 x 2 ) ((x 1, x 2 ) (1,1)) Dahmen-Reusken Kapitel 2 15

Taylorentwicklung Für hinreichend oft differenzierbares f : R R gilt f( x) = f(x) + f (x)( x x) + f(2) (x) ( x x) 2 + 2 + f(k 1) (x) (k 1)! ( x x)k 1 + f(k) (ξ) ( x x) k, k! wobei ξ eine Zahl zwischen x und x ist Das Polynom p k 1 ( x) := f(x)+f (x)( x x)+ f(2) (x) ( x x) 2 + + f(k 1) (x) 2 (k 1)! ( x x)k 1 wird das Taylorpolynom vom Grad k 1 in x genannt Für k = 1 erhält man als Spezialfall den Mittelwertsatz f( x) f(x) = f (ξ), x x wobei ξ eine Zahl zwischen x und x ist Oft wird die Darstellung verwendet f( x) = p k 1 ( x) + O( x x k ) ( x x) Dahmen-Reusken Kapitel 2 16

Für hinreichend oft differenzierbares f : R n R gilt f( x) = f(x) + + n i,j=1 Setzt man kurz 1 2 n j=1 f(x) = f (x) = f x j (x)( x j x j ) 2 f(x) ( x i x i )( x j x j ) + O( x x 3 2 ), x x x i x j ( f(x),, f(x) ) T Gradient, x 1 x n ( 2 ) n f(x) Hesse-Matrix, x i x j i,j=1 läßt sich dies kompakt auch folgendermaßen schreiben: f( x) = f(x) + ( f(x) ) T ( x x) + 1 2 ( x x)t f (x)( x x) + O( x x 3 2 ) f( x) = f(x) + ( f(x) ) T ( x x) + O( x x 2 ), ( x x) Dahmen-Reusken Kapitel 2 17

Man schreibt f( x) = f(x) + ( f(x) ) T ( x x), um anzudeuten, daß beide Seiten nur in den Anteilen nullter und erster Ordnung übereinstimmen Hieraus folgt dann f( x) f(x) f(x) = n j=1 f(x) x j Definiert man also die Verstärkungsfaktoren erhält man φ j (x) = f(x) x j x j f(x) x j x j x j x j f(x), f( x) f(x) } f(x) {{ } rel Fehler der Ausgabe = n φ j (x) j=1 }{{} Fehlerverstärkung x j x j x j }{{} rel Fehler der Eingabe Dahmen-Reusken Kapitel 2 18

f( x) f(x) mit f(x) κ rel (x) n j=1 x j x j x j κ rel (x) = κ rel (x) = max φ j (x) j, Ein besonders einfacher Fall ergibt sich noch, wenn n = 1 ist, die Funktion f also nur von einer Variablen abhängt, X = Y = R Man erhält dann die Form f( x) f(x) x x = κ f(x) rel (x) x mit κ rel (x) := f (x) x f(x), Dahmen-Reusken Kapitel 2 19

Beispiel 212 Gegeben sei die Funktion f : R R, f(x) = e 3x2 Für die relative Konditionszahl erhält man κ rel (x) = f (x) x f(x) = 6x2 Daraus folgt, daß diese Funktion für x klein (groß) gut (schlecht) konditioniert ist Zum Beispiel: x = 01, x = 010001 x x x = 10 4 f f(x) f( x) f(x) = 603 10 6 x = 4, x = 40004 x x x = 10 4 f f(x) f( x) f(x) = 965 10 3 Dahmen-Reusken Kapitel 2 20

Beispiel 213 (Multiplikation) x = (x 1, x 2 ) T, f(x) = x 1 x 2, φ j (x) = x 1x 2 f(x) = 1, j = 1,2 f(x) x 1 = x 2, f(x) x 2 = x 1, Daraus folgt, daß κ rel (x) = 1 (von x unabhängig!) Die Multiplikation ist also für alle Eingangsdaten gut konditioniert Für die Multiplikation ergibt sich dann x 1 x 2 x 1 x 2 x 1 x 2 = f( x 1, x 2 ) f(x 1, x 2 ) f(x 1, x 2 ) κ rel 1 ( δ x1 + δ x2 ) 2ǫ ( x 1 x 1 x 1 + x 2 x 2 x 2 ) Für die Division gilt ein ähnliches Resultat: Eine Verstärkung des relativen Fehlers um einen beschränkten Faktor (κ rel 1) Dahmen-Reusken Kapitel 2 21

Beispiel 214 (Addition) x = (x 1, x 2 ) T, f(x) = x 1 + x 2, Daraus folgt φ j (x) = f(x) x j κ rel (x) = max { x j f(x) = Mit f(x 1, x 2 ) = x 1 + x 2 gilt dann ( x 1 + x 2 ) (x 1 + x 2 ) x 1 + x 2 = x 1 x 1 + x 2 f(x) f(x) = 1, = 1, x 1 x 2 x j, j = 1,2 x 1 + x 2, x 2 x 1 + x 2 f( x 1, x 2 ) f(x 1, x 2 ) f(x 1, x 2 ) κ rel ( x 1 x 1 x 1 + Bei zwei Zahlen mit gleichem Vorzeichen: κ rel 1 Aber: κ rel (x) 1 wenn x 1 x 2 } x 2 x 2 x 2 ) κ rel 2ǫ Dahmen-Reusken Kapitel 2 22

Beispiel 215 (Nullstelle) Bestimmung der kleineren Nullstelle y von y 2 2x 1 y + x 2 = 0: x = (x 1, x 2 ) T, f(x) = x 1 x 2 1 x 2 = y f(x) x 1 = φ 1 (x) = φ 2 (x) = x 2 1 x 2 x 1 x 2 1 x 2 y x 1 x 2 1 x 2 x 2 2y x 2 1 x 2 = y x 2, 1 x 2 y = x 1 x 2 1 x 2 = x 1 + 2 x 2 1 x 2 x 2 1 x 2 f(x) x 2 = 1 2 x 2 1 x 2 = 1 2 1 2 φ 1(x) Die Kondition hängt stark von der Stelle (x 1, x 2 ) ab Wenn x 2 < 0: φ 1 (x) 1 und κ rel (x) 1 Wenn x 2 x 2 1 : φ 1(x) 1 und κ rel 1 Dahmen-Reusken Kapitel 2 23

Operatornormen, Konditionszahlen linearer Abbildungen Eine Abbildung L : X Y heißt linear, falls für x, z X und α, β R L(αx + βz) = αl(x) + βl(z) Operatornorm von L: L X Y := sup L(x) Y x X =1 Man sagt, L ist beschränkt, wenn L X Y endlich ist Diese Definition ist äquivalent zu L X Y := sup x 0 L(x) Y x X Daraus wiederum folgt sofort folgende wichtige Eigenschaft L(x) Y L X Y x X, x X Dahmen-Reusken Kapitel 2 24

Beispiel: Bemerkung 220 Sei X = R n, Y R m und B R m n eine (m n)-matrix Stattet man X und Y mit der p-norm für 1 p aus, bezeichnet man die entsprechende Operatornorm kurz als B p := B X Y Es gilt: sowie Ferner gilt für A R n n B = max i=1,,m B 1 = max i=1,,n A 2 = n k=1 m k=1 b i,k, b k,i, λ max (A T A), wobei A T die Transponierte von A ist, (dh ( A T ) i,j = a j,i) und λ max der größte Eigenwert ist Dahmen-Reusken Kapitel 2 25

Beispiel 221 Für A = ( ) 2 3 1 1 ergibt sich: A = 5, A 1 = 4 Die Eigenwerte der Matrix A T A = ( 5 λ 5 det 5 10 λ bestimmen Also ) ( ) 5 5 5 10 kann man über = 0 (5 λ)(10 λ) 25 = 0 λ 1 = 1 2 (15 5 5), λ 2 = 1 2 (15 + 5 5), und damit A 2 = 12 (15 + 5 5) Dahmen-Reusken Kapitel 2 26

Unter obigen Voraussetzungen gilt Satz 223 L( x) L(x) Y L(x) Y κ(l) x x X x X, wobei κ(l) = sup x X =1 L(x) Y inf x X =1 L(x) Y = L X Y inf x X =1 L(x) Y κ(l) wird (relative) Konditionszahl von L (bezüglich der Normen X, Y ) Offensichtlich gilt stets κ(l) 1 Wenn L : X Y bijektiv ist, dann erhält man κ(l) = L X Y L 1 Y X Dahmen-Reusken Kapitel 2 27

Bemerkung 226 (i) Die Zahl κ(l) ist eine obere Schranke für die relative Kondition des Problems der Auswertung der Funktion L(x) Sie ist unabhängig vom speziellen Auswertungspunkt x und wird oft (relative) Konditionszahl von L genannt (ii) Die Zahl κ(l) hängt von den Normen V, W ab (iv) Falls L bijektiv ist, haben L und L 1 dieselbe Konditionszahl! (v) Geometrische Interpretation: L(x) x L Dahmen-Reusken Kapitel 2 28

Beispiel 228 Die Bestimmung des Schnittpunktes der Geraden 3u 1 + 1001u 2 = 1999 6u 1 + 1997u 2 = 4003, (fast parallel!) ergibt das Problem u = A 1 b mit ( ) ( 3 1001 1999 A =, b = 6 1997 4003 ) Die Lösung ist u = (1, 1) T Wir berechnen den Effekt einer Störung in b: ( ) 2002 b =, ũ := A 1 b 4 Man rechnet einfach nach, daß A 1 = 1 0015 ( 1997 1001 6 3 ), ũ = ( ) 04004 08 Dahmen-Reusken Kapitel 2 29

Als Norm wird die Maximumnorm genommen: Es gilt x = x := max i x i und b b x = 3 10 3 4003 75 10 4 (Störung der Daten) ũ u = 18 u 1 = 18 (Änderung des Resultats) Schlechte Kondition wird quantifiziert durch A A 1 = 47982 Dahmen-Reusken Kapitel 2 30

Beispiel 229 (Integralberechnung über Rekursion) Sei Ĩ 0 I 0 ein gestörter Startwert f(ĩ 0 ) = Ĩ 30 folgt aus Ĩ n = 1 n 5Ĩ n 1, n = 1,2,,30 Für das Resultat ohne Störung, I 30 = f(i 0 ), gilt I n = 1 n 5I n 1, n = 1,2,,30 Daraus folgt, daß Ĩ 30 I 30 = 5(Ĩ 29 I 29 ) = 5 2 (Ĩ 28 I 28 ) = = 5 30 (Ĩ 0 I 0 ) und damit f(ĩ 0 ) f(i 0 ) f(i 0 ) = Ĩ 30 I 30 I 30 = 530 I 0 I 30 Ĩ 0 I 0 I 0 Für den gesuchten Wert I 30 gilt I 30 = 1 155 Also: κ rel := 530 I 0 I 30 155 5 30 ln( 6 5 ) = 26 1022 Dahmen-Reusken Kapitel 2 31

Tabelle 21 Integralberechnung über Rekursion n I n 0 18232156e 01 1 88392216e 02 2 58038920e 02 3 43138734e 02 4 34306330e 02 5 28468352e 02 6 24324906e 02 7 21232615e 02 8 18836924e 02 9 16926490e 02 10 15367550e 02 11 14071341e 02 12 12976630e 02 13 12039925e 02 14 11228946e 02 15 10521935e 02 n I n 16 98903245e 03 17 93719069e 03 18 86960213e 03 19 91514726e 03 20 42426370e 03 21 26405862e 02 22 86574767e 02 23 47635209e 01 24 23400938e+00 25 11740469e+01 26 58663883e+01 27 29335645e+02 28 14667466e+03 29 73337673e+03 30 36668803e+04 Dahmen-Reusken Kapitel 2 32

Rundungfehler und Gleitpunktarithmetik Zahlendarstellungen Man kann zeigen, daß für jedes feste b N, b > 1, jede beliebige reelle Zahl x 0 sich in der Form ( ) x = ± d j b j j=1 darstellen läßt, wobei der ganzzahlige Exponent e so gewählt werden kann, daß d 1 0 gilt b e Dahmen-Reusken Kapitel 2 33

Rundungfehler und Gleitpunktarithmetik Normalisierte Gleitpunktdarstellung (floating point representation): x = f b e, wobei b N \ {1} die Basis (oder Grundzahl) ist, der Exponent e eine ganze Zahl ist: r e R, die Mantisse f eine feste Anzahl m (die Mantissenlänge) von Stellen hat: f = ± 0d 1 d m, d j {0,1,, b 1} für alle j Um die Eindeutigkeit der Darstellung zu erreichen, wird für x 0 die Forderung d 1 0 gestellt (Normalisierung) ( ) mj=1 Mit dieser Darstellung erhält man somit: x = ± d j b j b e Dahmen-Reusken Kapitel 2 34

Beispiel 231 Wir betrachten als Beispiel die Zahl 12375 = 1 2 6 + 1 2 5 + 1 2 4 + 1 2 3 + 0 2 2 + 1 2 1 + 1 2 0 + 1 2 1 + 1 2 2 = 2 7 (1 2 1 + 1 2 2 + 1 2 3 + 1 2 4 + 0 2 5 + 1 2 6 + 1 2 7 + 1 2 8 + 1 2 9 ) Diese Zahl wird in einem sechsstelligen dezimalen Gleitpunkt-Zahlensyste (b = 10, m = 6) als 0123750 10 3 dargestellt In einem 12-stelligen binären Gleitpunkt-Zahlensystem (b = 2, m = 12) wird sie als 0111101111000 2 111 dargestellt Dahmen-Reusken Kapitel 2 35

Beispiel 232 Menge M(2,48, 1024,1024) enthält 2 47 2049 positive Zahlen Anzahl der Zahlen in dieser Menge: 2 2 47 2049 + 1 58 10 17 x MIN = 2 1025 28 10 309, x MAX = (1 2 48 ) 2 1024 18 10 308 2 k 48 2 k+1 48 2 k+2 48 2 k 1 2 k 2 k+1 2 k+2 0 10 01 }{{} 48 2 k 0 11 1 }{{} 48 2 k 0 10 } {{ 010 } 2 k+2 48 Dahmen-Reusken Kapitel 2 36

Rundung, Maschinengenauigkeit x ±[x MIN, x MAX ] habe die Darstellung ( ) x = ± d j b j b e j=1 Die Reduktionsabbildung wird definiert durch fl(x) := ± ( mj=1 d j b j) b e falls d m+1 < b 2, ( mj=1 d j b j + b m) b e falls d m+1 b 2, dh, die letzte Stelle der Mantisse wird um eins erhöht bzw beibehalten, falls die Ziffer in der nächsten Stelle b 2 bzw < b 2 ist Dahmen-Reusken Kapitel 2 37

Beispiel 233 In einem Gleitpunkt-Zahlensystem mit Basis b = 10 und Mantissenlänge m = 6 erhält man folgende gerundete Resultate: x fl(x) fl(x) x x 1 3 = 033333333 0333333 100 10 10 6 2 = 141421356 0141421 10 1 25 10 6 e 10 = 0000045399927 0453999 10 4 66 10 7 e 10 = 2202646579 0220265 10 5 16 10 6 1 10 = 01 0100000 100 00 Im Fall b = 2, m = 10 erhält man: x fl(x) fl(x) x x 1 3 01010101011 2 1 49 10 4 2 01011010100 2 1 11 10 4 e 10 01011111010 2 111 33 10 4 e 10 01010110000 2 1111 48 10 4 1 10 01100110011 2 11 24 10 4 Dahmen-Reusken Kapitel 2 38

Maschinengenauigkeit fl(x) x x b m 2 be b 1 b e = b1 m 2 Die Zahl eps := b1 m 2 wird (relative) Maschinengenauigkeit genannt Diese Zahl charakterisiert das Auflösungsvermögen des Rechners Es gilt nämlich: eps = inf{δ > 0 fl(1 + δ) > 1} Diese Abschätzung besagt ferner, daß für eine Zahl ǫ mit ǫ eps, nämlich ǫ = fl(x) x x, gilt fl(x) = x(1 + ǫ) Dahmen-Reusken Kapitel 2 39

Beispiel 234 Für die Zahlensysteme in Beispiel 233 ergibt sich: b = 10, m = 6 eps = 1 2 10 5 b = 2, m = 10 eps = 1 2 2 9 = 98 10 4 Die Werte für den relativen Rundungsfehler ǫ, mit ǫ wie in (248), findet man in der dritten Spalte der Tabellen in Beispiel 233 Dahmen-Reusken Kapitel 2 40

Gleitpunktarithmetik bei elementaren Rechenoperationen Die Verknüpfung von Maschinenzahlen durch eine exakte elementare arithmetische Operation liefert nicht notwendig eine Maschinenzahl Beispiel 235 b = 10, m = 3 : 0346 10 2 + 0785 10 2 = 01131 10 3 0113 10 3 Ähnliches passiert bei Multiplikation und Division Die üblichen arithmetischen Operationen müssen also durch geeignete Gleitpunktoperationen, {+,,, }, ersetzt werden (Pseudoarithmetik) Dahmen-Reusken Kapitel 2 41

Forderung: Für {+,,, } gelte x y = fl(x y) für x, y M(b, m, r, R) Wegen (248) werden wir also stets annehmen, daß für {+,,, } x y = (x y)(1 + ǫ) für x, y M(b, m, r, R) und ein ǫ mit ǫ eps gilt Nichtsdestoweniger hat die Realisierung einer solchen Pseudoarithmetik eine Reihe unliebsamer Konsequenzen: Zum Beispiel geht die Assoziativität der Addition verloren, dh, im Gegensatz zur exakten Arithmetik spielt es eine Rolle, welche Zahlen zuerst verknüpft werden Dahmen-Reusken Kapitel 2 42

Beispiel 236 Zahlensystem mit b = 10, m = 3 Maschinenzahlen x=6590=0659 10 4 y= 1 =0100 10 1 z= 4 =0400 10 1 Exakte Rechnung: (x+y)+z = (y+z)+x = 6595 Pseudoarithmetik: aber x y = 0659 10 4 und (x y) z = 0659 10 4, y z = 0500 10 1 und (y z) x = 0660 10 4 Entsprechend gilt auch das Distributivgesetz nicht mehr: Beispiel 237 Für b = 10, m = 3, x = 0156 10 2 und y = 0157 10 2 aber (x y) (x y) = 001 (x y) (x y) = 0100 10 1, (x x) (x y) (y x) (y y) = 0100 10 1 Dahmen-Reusken Kapitel 2 43

Bezeichne wieder δ x, δ y die relativen Fehler der Größen x, ỹ gegenüber den exakten Werten x, y, dh x = x(1 + δ x ), ỹ = y(1 + δ y ) Ferner nehmen wir an, daß δ x, δ y ǫ < 1 In Beispiel 213 hatten wir bereits gesehen, κ rel für die Multiplikation f(x, y) = xy den Wert κ rel = 1 hat Falls insbesondere δ x, δ y ǫ eps, bleibt bei der Multiplikation der relative Fehler im Rahmen der Maschinengenauigkeit, denn aus Beispiel 213 folgt xỹ xy xy 2 eps Für die Division gilt ein ähnliches Resultat Dahmen-Reusken Kapitel 2 44

Beispiel 238 (Auslöschung) Betrachte x = 073563, y = 073441, x y = 000122 Bei 3-stelliger Rechnung (b = 10, m = 3,eps = 1 2 10 2 ) ergibt sich x = fl(x) = 0736, δ x = 050 10 3 ỹ = fl(y) = 0734, δ y = 056 10 3 Die relative Störung im Resultat der Subtraktion ist hier ( x ỹ) (x y) x y = 0002 000122 000122 = 064, also sehr groß im Vergleich zu δ x, δ y Dahmen-Reusken Kapitel 2 45

Zusammenfassend: (x y) (x y) (x y) eps x, y M, {+,,, } dh, die relativen Rundungsfehler bei den elementaren Gleitpunktoperationen sind betragsmäßig kleiner als die Maschinengenauigkeit, wenn die Eingangsdaten x, y Maschinenzahlen sind Sei f(x, y) = x y, x, y R, {+,,, } und κ rel die relative Konditionszahl von f Es gilt {, } : κ rel 1 für alle x, y, {+, } : κ rel 1 wenn x y max{ x, y } Also: möglich sehr große Fehlerverstärkung bei +, (Auslöschung) Dahmen-Reusken Kapitel 2 46

Stabilität eines Algorithmus Ein Algorithmus heißt gutartig oder stabil, wenn die durch ihn im Laufe der Rechnung erzeugten Fehler in der Größenordnung des durch die Kondition des Problems bedingten unvermeidbaren Fehlers bleiben Dahmen-Reusken Kapitel 2 47

Beispiel 239 Bestimmung von u = f(a 1, a 2 ) = a 1 a 2 1 a 2 Algorithmus I: y 1 = a 1 a 1 y 2 = y 1 a 2 y 3 = y 2 u = y 4 = a 1 y 3 Für a 1 = 6000227, a 2 = 001 in einem Gleitpunkt-Zahlensystem mit b = 10, m = 5 bekommt man das Ergebnis Exakte Lösung: ũ = 090000 10 3 u = 083336 10 3 Da das Problem für diese Eingangsdaten a 1, a 2, gut konditioniert ist, ist der durch den Algorithmus erzeugte Fehler sehr viel größer als der unvermeidbare Fehler Algorithmus I ist also nicht stabil Dahmen-Reusken Kapitel 2 48

Alternative: Algorithmus II: u = a 1 + a 2 a 2 1 a 2 y 1 = a 1 a 1 y 2 = y 1 a 2 y 3 = y 2 y 4 = a 1 + y 3 u = y 5 = a 2 y 4 Hiermit ergibt sich mit b = 10, m = 5 ũ = 083333 10 3 Hier tritt keine Auslöschung auf Der Gesamtfehler bleibt im Rahmen der Maschinengenauigkeit Algorithmus II ist somit stabil Dahmen-Reusken Kapitel 2 49

Rückwärtsanalyse Interpretiere sämtliche im Laufe der Rechnung auftretenden Fehler als Ergebnis exakter Rechnung zu geeignet gestörten Daten Abschätzungen für diese Störung der Daten, verbunden mit Abschätzungen für die Kondition des Problems, ergeben dann Abschätzungen für den Gesamtfehler exakte Daten x f (exakt) f(x) Rückwärtsfehler gestörte Daten x f (numerisch) Fehler im Resultat f (exakt) f(x) = f( x) Dahmen-Reusken Kapitel 2 50

Beispiel 240 x 1, x 2, x 3 seien Maschinenzahlen Maschinengenauigkeit = eps Aufgabe: Berechne die Summe S = (x 1 + x 2 ) + x 3 Man erhält S = ((x 1 + x 2 )(1 + ǫ 2 ) + x 3 )(1 + ǫ 3 ), mit ǫ i eps, i = 2,3 Daraus folgt wobei S = x 1 (1 + ǫ 2 )(1 + ǫ 3 ) + x 2 (1 + ǫ 2 )(1 + ǫ 3 ) + x 3 (1 + ǫ 3 ) = x 1 (1 + ǫ 2 + ǫ 3 ) + x 2 (1 + ǫ 2 + ǫ 3 ) + x 3 (1 + ǫ 3 ) = x 1 (1 + δ 1 ) + x 2 (1 + δ 2 ) + x 3 (1 + δ 3 ) =: ˆx 1 + ˆx 2 + ˆx 3, δ 1 = δ 2 = ǫ 2 + ǫ 3 2 eps, δ 3 = ǫ 3 eps Also: fehlerbehaftetes Resultat S als exaktes Ergebnis zu gestörten Eingabedaten ˆx i = x i (1 + δ i ) Dahmen-Reusken Kapitel 2 51

Sei f(x) = f(x 1, x 2, x 3 ) = x 1 + x 2 + x 3 mit rel Konditionszahl κ rel, dann gilt für den unvermeidbaren Fehler F Daten (x) = j=1 f( x) f(x) 3 f(x) κ rel (x) x j x j κ rel (x)3 eps, wobei angenommen wird, daß die Daten mit höchstens Maschinengenauigkeit gestört werden ( x i = x i (1 + ǫ), ǫ eps) Der durch Rechnung bedingte Fehler ist höchstens F Rechnung (x) = x j f(ˆx) f(x) 3 f(x) κ rel (x) κ rel (x) 3 j=1 j=1 δ j κrel (x)5 eps ˆx j x j Man sieht: F Rechnung (x) ist höchstens in der Größenordnung F Daten (x) x j Deshalb ist die Berechnung von S ein stabiler Algorithmus Dahmen-Reusken Kapitel 2 52

Zusammenfassend: Kenntnisse über die Kondition eines Problems sind oft für die Interpretation oder Bewertung der Ergebnisse von entscheidender Bedeutung und sind Operationen die für alle Eingangsdaten gut konditioniert sind ± kann schlecht konditioniert sein Dadurch können bei einer Subtraktion Rundungsfehler enorm verstärkt werden: Auslöschung In einem Algorithmus sollen (wegen Stabilität) Auslöschungseffekte vermieden werden Bei einem stabilen Lösungsverfahren bleiben die im Laufe der Rechnung erzeugten Rundungsfehler in der Größenordnung der durch die Kondition des Problems bedingten unvermeidbaren Fehler Dahmen-Reusken Kapitel 2 53