1. Rechnerzahlen, Kondition, Stabilität

Ähnliche Dokumente
Computerarithmetik ( )

2 Rechnen auf einem Computer

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

Dezimalkomma (decimal point) rechts von Stelle mit Wertigkeit 100 nachfolgende Stellen haben Wertigkeit 10-1, 10-2, etc.

2 Gleitpunktarithmetik und Fehleranalyse

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

Fehler in numerischen Rechnungen

Numerisches Programmieren, Übungen

Gleitkommaarithmetik und Fehleranalyse

Rechnerarithmetik Ganzzahlen und Gleitkommazahlen Ac 2013

Einstieg in die Informatik mit Java

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

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

Binäre Gleitkommazahlen

Computergrundlagen Boolesche Logik, Zahlensysteme und Arithmetik

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

1 Zahlen. 1.1 Die reellen Zahlen

1. Stellenwerte im Dualsystem

Binäre Division. Binäre Division (Forts.)

Kapitel 2. Zahlensysteme, Darstellung von Informationen

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

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

Programmieren. Kapitel 3: Wie funktioniert ein moderner Computer? Wintersemester 2008/2009. Prof. Dr. Christian Werner

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

2 Darstellung von Zahlen und Zeichen

Kapitel 1. Zahlendarstellung. Prof. Dr. Dirk W. Hoffmann. Hochschule Karlsruhe w University of Applied Sciences w Fakultät für Informatik

Kapitel 2 Grundlegende Konzepte. Xiaoyi Jiang Informatik I Grundlagen der Programmierung

Technische Grundlagen der Informatik Kapitel 8. Prof. Dr. Sorin A. Huss Fachbereich Informatik TU Darmstadt

Zahlensysteme. Formale Methoden der Informatik WiSe 2010/2011 Folie 1 (von 71)

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

Grundstrukturen: Speicherorganisation und Zahlenmengen

Technische Informatik - Eine Einführung

Technische Informatik I

3 Rechnen und Schaltnetze

Rechnerstrukturen WS 2012/13

, WS2012 Übungsgruppen: Mo.,

Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Zahlensysteme und Datendarstellung

Einführung in die Informatik I

Musterlösung 2. Mikroprozessor & Eingebettete Systeme 1

1. 4-Bit Binärzahlen ohne Vorzeichen 2. 4-Bit Binärzahlen mit Vorzeichen 3. 4-Bit Binärzahlen im 2er Komplement 4. Rechnen im 2er Komplement

Noch für heute: primitive Datentypen in JAVA. Primitive Datentypen. Pseudocode. Dezimal-, Binär- und Hexadezimalsystem. der logische Typ boolean

Ein erstes Java-Programm

Softwareentwicklung in der Wissenschaft

Wozu wird ein Rechensystem genutzt? Informationsverarbeitung Information. Information. Interpretation, Abstraktion. Repräsentation.

Beispiel: e x. Fehler

Aufbau und Funktionsweise eines Computers

Einführung in die Numerische Mathematik

TOTAL DIGITAL - Wie Computer Daten darstellen

Informationssysteme Gleitkommazahlen nach dem IEEE-Standard 754. Berechnung von Gleitkommazahlen aus Dezimalzahlen. HSLU T&A Informatik HS10

Binärdarstellung von Fliesskommazahlen

Repräsentation von Daten Binärcodierung von rationalen Zahlen und Zeichen

Numerische Datentypen. Simon Weidmann

Algorithmische Mathematik

Gleitkomma-Arithmetik führt zu ungenauen Ergebnissen in Excel

5. Übung: Binäres Rechnen und Fließkommazahlen Abteilung Verteilte Systeme, Universität Ulm

bereits in A,3 und A.4: Betrachtung von Addierschaltungen als Beispiele für Schaltnetze und Schaltwerke

Arithmetik. Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck

Zur Universalität der Informatik. Gott ist ein Informatiker. Die Grundordnung der Welt läßt sich mathematisch formulieren:

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

Das Rechnermodell - Funktion

Darstellung von Informationen

Zahlendarstellungen und Rechnerarithmetik*

a) Da die Zahlen im IEEE-32Bit-Format dargestellt werden sollen, ist der Bias = 127.

Grundlagen der Informatik 2 Grundlagen der Digitaltechnik. 1. Zahlensysteme

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

Musterlösung 2. Mikroprozessor & Eingebettete Systeme 1

Inhalt: Binärsystem 7.Klasse - 1 -

Inhalt 1 Natürliche Zahlen 2 Addition und Subtraktion natürlicher Zahlen 3 Multiplikation und Division natürlicher Zahlen

Das Maschinenmodell Datenrepräsentation

Propädeutikum zur Programmierung

Teil II. Schaltfunktionen

Leseprobe. Taschenbuch Mikroprozessortechnik. Herausgegeben von Thomas Beierlein, Olaf Hagenbruch ISBN:

D A T E N... 1 Daten Micheuz Peter

2 Einfache Rechnungen

Einführung in die Informatik für Hörer aller Fakultäten II. Andreas Podelski Stephan Diehl Uwe Waldmann

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

Zahlen und Zeichen (1)

MATTHIAS GERDTS NUMERISCHE MATHEMATIK I. Universität Würzburg WiSe 2009/2010

Negative Zahlen. Lösung: Ordne in einen Zahlenstrahl ein! 7;5; 3; 6. Das Dezimalsystem

2.0 Zahlendarstellung, Konvertierungsalgorithmen und arithmetische Algorithmen

Numerische Mathematik

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 16

Extremwertverteilungen

Grundlagen der Informatik

Tool zur Steuerung & Regelung

Modul Einführung in die Informatik : Aufgaben zur Großübung 4 Thema: Python I

Praktische Mathematik I

Übung RA, Kapitel 1.2

Füllmenge. Füllmenge. Füllmenge. Füllmenge. Mean = 500,0029 Std. Dev. = 3,96016 N = ,00 490,00 495,00 500,00 505,00 510,00 515,00 Füllmenge

Informatik II. Kodierung. Kodierung. Kodierung Kodierung. Rainer Schrader. 24. Oktober Ein Alphabet Σ ist eine endliche Menge.

Übungsaufgaben Java. Vorlesung Cloud Computing SoSe Cloud Computing SoSe 2009 Dr. M.Kunze 1

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

1. Grundlegende Konzepte der Informatik

Rechnerarithmetik. Vorlesung im Sommersemester Eberhard Zehendner. FSU Jena. Thema: Die Standards ANSI/IEEE 754 und 854

Vertiefungsstoff zum Thema Darstellung von Zahlen

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

1 : Die Rechnungsarten

6. KLASSE MATHEMATIK GRUNDWISSEN

Einführung in die Java- Programmierung

2 3 x3 17. x k dx = x k x k+1 k +1. Mit jeder weiteren partiellen Integration reduziert sich der Grad des Faktors x n, induktiv erhalten wir also

Transkript:

1. Rechnerzahlen, Kondition, Stabilität 1 1.1. Rechnerzahlen 2 1.2. Kondition 3 1.3. Stabilität 1. Rechnerzahlen, Kondition, Stabilität 1 / 18

1.1. Rechnerzahlen allgemeine Zahlendarstellung zur Basis b: jedes x R hat eine exakte (ggf. unendliche) Darstellung ( x = s a k b k) b e k=1 wobei s { 1, +1} Vorzeichen a k {0, 1,..., b 1} Ziffern b 2 Basis (z.b. 10, 2, 16) e Z Exponent 1. Rechnerzahlen, Kondition, Stabilität 2 / 18

normalisierte Gleitpunktzahlen Definition (1.1) Menge der normalisierten Gleitpunktzahlen (Rechnerzahlen) G = G(b, l, E min, E max ) zur Basis b, mit Mantissenlänge l und Exponentenschranken E min < 0 < E max ist definiert als Menge aller Zahlen x mit der Darstellung x = s ( l a k b k) b e mit s { 1, +1}, a k {0,..., b 1}, a 1 0, k=1 und der Zahl 0. E min e E max, e Z Schreibweise: (0.a 1 a 2... a l ) b := l k=1 a kb k 1. Rechnerzahlen, Kondition, Stabilität 3 / 18

Das Gitter der Rechnerzahlen!! Auf jedem Rechner kann man nur endlich viele Zahlen darstellen!! darstellbarer Bereich D (sei B := b 1) x = a b e > 0 x min = (0.10... 0) b b E min = b E min 1 x max = (0.BB... B) b b Emax = b Emax (1 b l ) also G D := [ x max, x min ] {0} [x min, x max ] Beispiel : double precision numbers (IEEE-Standard) G = G(b, l, E min, E max ) = G(2, 53, 1021, 1024) Eine Rechnerzahl x G beansprucht 64 Bit = 8 Byte. x min 2.23 10 308, x max 1.80 10 +308 1. Rechnerzahlen, Kondition, Stabilität 4 / 18

relative Genauigkeit der Gleitpunkt-Darstellung Theorem (1.2.) Voraussetzung: G = G(b, l, E min, E max ) x R, x min x x max Behauptung: x x min 1 x G x 2 b1 l =: ε Beispiel: relative Maschinengenauigkeit ε beim IEEE-Standard b = 2, l = 53 ε = 2 53 1.11022 e 16 Man beachte: ε Matlab-Konstante eps = 2 52 = Abstand zwischen 1 und der nächst größeren Rechnerzahl 1. Rechnerzahlen, Kondition, Stabilität 5 / 18

Die Rundung Ziel: zu jeder Zahl x R eine Rechnerzahl rd(x) G finden mit x rd(x) = min x x x G Intervallschachtelung: betrachten nur den Fall x > 0 sei e so dass x [b e 1, b e [ sei x 1 = a b e so dass x [ x 1, x 1 + b l b e [, a = (0.a 1 a 2... a l ) b x = ( (0.a 1... a l z l+1... ) b ) b e z l+1 erste wegfallende Ziffer a b e, falls z l+1 < 1 2 b (abrunden) (a + b l )b e, falls z l+1 1 2 rd(x) := b (aufrunden) 0, falls x < x min (underflow) NaN, falls x > x max (overflow) 1. Rechnerzahlen, Kondition, Stabilität 6 / 18

Rundungsfehler Definition (relative Rundungsgenauigkeit) Zu gegebenem x R mit x 0 heißt ε x := rd(x) x x relative Rundungsgenauigkeit von x. Für x = 0 sei ε x := 0, da 0 G. Genauigkeit der Rundung: Theorem 1.2 ε x ε = 1 2 b1 l 10 16 beim IEEE-Standard Bemerkung: ε x = 0.12 bedeutet 12 % Rundungsfehler 1. Rechnerzahlen, Kondition, Stabilität 7 / 18

Maschinenoperationen auf dem Computer wird jede arithmetische Grundoperation {+,,, /} mit : R R R durch eine entsprechende Maschinenoperation ersetzt: {,,, } mit : G G G Realisierung durch: { rd(a b), falls a b xmax a b := NaN (not a number), falls a b > x max Man beachte: i.a. sind Rechengesetze verletzt, d.h. (a b) c a (b c) und (a b) c a c b c 1. Rechnerzahlen, Kondition, Stabilität 8 / 18

Realisierung mathematischer Funktionen auf dem Computer werden auch elementare math. Funktionen f : R R, z.b f (x) = sin(x), f (x) = e x, f (x) = x näherungsweise dargestellt durch: f f : G G Realisierung durch: { rd(f (x)), f (x) := falls f (x) xmax NaN (not a number), falls f (x) > x max + endliche Stellengenauigkeit 1. Rechnerzahlen, Kondition, Stabilität 9 / 18

1.2. Kondition eines Problems Definition (Problem) Unter einem Problem verstehen wir im folgenden die Aufgabe, aus einem gegebenen Vektor von Daten x R n ein Resultat y R nach einer Vorschrift f : R n R, d.h. y = f (x), zu berechnen. Beispiele: f : R 2 R, y = f (x 1, x 2 ) = x 1 x 2 f : R 2 R, y = f (x 1, x 2 ) = x 1 x1 2 x 2 f : R 2 R, y = f (x 1, x 2 ) = 1 0 sin(x 1t 2 + x 2 ) dt 1. Rechnerzahlen, Kondition, Stabilität 10 / 18

Fehlerquellen Eingangsdaten berechne Lsg. x R n y = f (x) Eingangsfehler x = x x exakte Lsg. y R Resultatsfehler y = y ỹ Beispiele: Messfehler Rundung von x j R auf Rechnerzahl x j = rd(x j ) G Bsp. : x j = 1 3 = 0. 3 0. 33 }{{... 3 } = x j x j = 1 3 10 l l - Stellen 1. Rechnerzahlen, Kondition, Stabilität 11 / 18

absoluter und relativer Fehler Definition (absoluter und relativer Fehler) Sei x R n eine Näherung von x R n. Dann heißt ε abs := x x ε rel := x x x absoluter Fehler der Näherung x relativer Fehler der Näherung x (Vor. x 0), wobei x die Norm des Vektors x bezeichnet z.b. x = x 2 := x1 2 + + x n 2 oder x = x := max x j. 1 j n Beispiele: x = 3000, x = 3060 : ε abs = 60 groß, ε rel = 0.02 2 % x = 0.003, x = 0.0036 : ε abs = 0.0006 klein, ε rel = 0.2 20 % 1. Rechnerzahlen, Kondition, Stabilität 12 / 18

Kondition eines Problems Definition (Kondition eines Problems) Die Kondition K f (x) eines Problems y = f (x) ist der größte auftretende Verstärkungsfaktor für den Einfluß des relativen Eingangsfehlers x / x auf den relativen Resultatsfehler y / y mit ỹ = f ( x), d.h. y / y K f (x) := sup x E x / x wobei E = Menge der möglichen Eingangsfehler ( 0) und y := y. Folgerung : y f (x) f ( x) = y f (x) }{{} rel. Resultatsfehler K f (x) }{{} Kondition x x x }{{} rel. Eingangsfehler 1. Rechnerzahlen, Kondition, Stabilität 13 / 18

Beispiel für schlechte Kondition Problem : berechne y = f (x) = 2 x für x = 2 δ, wobei 0 < δ < 0.1 klein sei x = x + x fehlerhafter Eingangswert rel. Eingangsfehler e = x < x 2 δ relativer Resultatsfehler y ỹ r = = ( 2 x) ( 2 x) y 2 ( 2 δ) r K f (x) = sup x E e x /δ x = 1 δ = x δ große Fehlerverstärkung für kleines δ ( Auslöschung ) Subtraktion von fast gleichen Zahlen i.a. schlecht konditioniert!! 1. Rechnerzahlen, Kondition, Stabilität 14 / 18

Berechnung relativer Konditionszahlen Problem: berechne y = f (x), x = (x 1,..., x n ), f : R n R Frage: wie wirken sich fehlerhafte Eingangsdaten x j = x j + x j, j = 1,..., n aus auf den relativen Resultatsfehler ε rel = Ergebnis: ε rel n x j f (x) f (x) x x j j x j }{{}}{{} =:k j (x) =ε j j=1 f (x + x) f (x) f (x) k j (x) = Verstärkungsfaktor des rel. Eingangsfehlers ε j von x j die k j (x) heißen relative Konditionszahlen des Problems 1. Rechnerzahlen, Kondition, Stabilität 15 / 18

Begriff: schlecht konditioniert Definition (Konditionierung eines Problems) Problem berechne y = f (x) heißt schlecht konditioniert, wenn sonst heißt es gut konditioniert. k(x) := max 1 j n {k j(x)} >> 1, 1. Rechnerzahlen, Kondition, Stabilität 16 / 18

1.3. Stabilität eines numerischen Verfahrens Definition (1.3) Ein numerisches Verfahren heißt instabil, wenn es die relativen Eingangsfehler wesentlich mehr verstärkt als die Kondition des Problems. Es heißt stabil, wenn die relativen Eingangsfehler in gleicher Größenordnung verstärkt werden wie durch die Kondition des Problems. Man beachte: hat ein Problem eine schlechte Kondition, so kann dies niemals durch ein numerisches Verfahren behoben werden aber: auch bei einem gut konditionierten Problem kann ein numerisches Verfahren eine extreme Fehlerverstärkung aufweisen (siehe folgendes Beispiel... ) 1. Rechnerzahlen, Kondition, Stabilität 17 / 18

Beispiel für stabiles und instabiles numer. Verfahren Problem : zu geg. x > 0 berechne y = f (x) := 1 + x 2 1 x 2 Verfahren A : nach Formel y = 1 + x 2 1 x 2 u 1 = x x u 2 = u 1 + 1 u 3 = u 2 u 4 = u 3 1 y = u 4 /u 1 Verfahren B : nach äquivalenter Formel y = 1 1 + 1 + x 2 v 1 = x x v 2 = v 1 + 1 v 3 = v 2 v 4 = v 3 + 1 y = 1/v 4 siehe Übungsaufgabe!! 1. Rechnerzahlen, Kondition, Stabilität 18 / 18