Überblick
Interesse an solchen Algorithmen besteht meist aus einem der beiden folgenden Gründe:
- Es gibt zu dem Problem keine explizite Lösungsdarstellung (so zum Beispiel bei den Navier-Stokes-Gleichungen oder dem Dreikörperproblem) oder
- die Lösungsdarstellung existiert, ist jedoch nicht geeignet, um die Lösung schnell auszurechnen beziehungsweise sie liegt in einer Form vor, in der Rechenfehler sich stark bemerkbar machen (zum Beispiel bei vielen Potenzreihen).
Unterschieden werden zwei Typen von Verfahren. Einmal direkte, die nach endlicher Zeit bei unendlicher Rechnergenauigkeit die exakte Lösung eines Problems liefern und auf der anderen Seite Näherungsverfahren, welche – wie der Name sagt – nur Approximationen liefern. Ein Beispiel für ersteres ist das
Gaußsche Eliminationsverfahren, welches die Lösung eines
linearen Gleichungssystems liefert. Näherungsverfahren sind unter anderem
Quadraturformeln, die den Wert eines Integrals näherungsweise berechnen oder auch das
Newton-Verfahren, das
iterativ bessere Approximationen an eine Nullstelle einer Funktion liefert.
Unterschiedliche Verfahren werden nach Laufzeit, Stabilität und Robustheit verglichen.
Geschichte
Der Wunsch, mathematische Gleichungen zahlenmäßig (auch näherungsweise) lösen zu können, besteht seit der Antike. Die alten Griechen kannten bereits Probleme, die sie nur näherungsweise lösen konnten, wie die Berechnung von Flächen (Integralrechnung) oder der Kreiszahl π. In diesem Sinne kann Archimedes, der für beide Probleme Algorithmen lieferte, als der erste bedeutende Numeriker bezeichnet werden. Im Zeitalter der Computer-Technik gewinnt das numerische Verfahren dagegen dramatisch an Bedeutung.
Die Namen klassischer Verfahren zeigen deutlich, dass der algorithmische und approximative Zugang zu mathematischen Problemen immer wichtig war, um rein theoretische Aussagen fruchtbar nutzen zu können. Konzepte wie Konvergenzgeschwindigkeit oder Stabilität waren auch beim Rechnen per Hand sehr wichtig. So lässt beispielsweise eine hohe Konvergenzgeschwindigkeit darauf hoffen, schnell mit der Berechnung fertig zu werden. Und schon Gauß bemerkte, dass sich seine Rechenfehler beim Gaußschen Eliminationsverfahren manchmal desaströs auf die Lösung auswirkten und sie so komplett unbrauchbar machten. Er zog deswegen das Gauß-Seidel-Verfahren vor, bei dem man Fehler durch das Ausführen eines weiteren Iterationsschrittes leicht ausgleichen konnte.
Um das monotone Durchführen von Algorithmen zu erleichtern, wurden im 19. Jahrhundert mechanische Rechenmaschinenn entwickelt und schließlich in den 1930er der erste Computer von Konrad Zuse. Der Zweite Weltkrieg beschleunigte die Entwicklung dramatisch und insbesondere John von Neumann trieb im Rahmen des Manhattan Projects sowohl mathematisch als auch technisch die Numerik voran. Die Zeit des Kalten Kriegessproblemensproblemen war vor allem von militärischen Anwendungen wie Wiedereintritt geprägt, doch die explosionsartige Steigerung der Rechnerleistung seit den 1980ern hat zivile Anwendungen in den Vordergrund treten lassen. Ferner hat sich der Bedarf nach schnellen Algorithmen mit dem Geschwindigkeitszuwachs entsprechend verstärkt. Für viele Probleme hat die Forschung dies leisten können und so hat sich die Geschwindigkeit der Algorithmen in den letzten 20 Jahren um etwa dieselbe Größenordnung verbessert wie die CPU-Leistungen. Heutzutage sind numerische Verfahren in jedem technischen oder wissenschaftlichen Bereich präsent und Alltagswerkzeug.
Fehleranalyse
Ein Aspekt bei der Analyse der Algorithmen in der Numerik ist die Fehleranalyse. Bei einer numerischen Berechnung kommen verschiedene Typen von Fehlern zum Tragen: Beim Rechnen mit Gleitkommazahlen treten unvermeidlich Rundungsfehler auf. Diese Fehler lassen sich zwar zum Beispiel durch eine Erhöhung der Stellenzahl verkleinern. Ganz beseitigen kann man sie aber nicht, da jeder Computer prinzipiell nur mit endlich vielen Stellen rechnen kann.
Wie das Problem auf Störungen in den Anfangsdaten reagiert, wird mit der Kondition gemessen. Hat ein Problem eine große Kondition, so hängt die Lösung des Problems empfindlich von den Anfangsdaten ab, was eine numerische Lösung erschwert, insbesondere da Rundungsfehler als Störung der Anfangsdaten aufgefasst werden können. Man spricht von einem schlecht gestellten Problem, das nach Möglichkeit durch eine Umformulierung umgangen werden sollte.
Das numerische Verfahren ersetzt ferner das kontinuierliche mathematische Problem durch ein diskretes, also endliches Problem. Dabei tritt bereits der so genannte Diskretisierungsfehler auf, der im Rahmen der Konsistenzanalyseanalyse abgeschätzt und bewertet wird. Dies ist notwendig, da ein numerisches Verfahren im Regelfall nicht die exakte Lösung liefert.
Wie sich solche Fehler beim Weiterrechnen vergrößern, wird mit Hilfe der Stabilitätsanalysesanalyse bewertet.
Konsistenz und Stabilität des Algorithmus führen im Regelfall zu Konvergenz.
Teilgebiete
Teilgebiete der Numerik sind unter anderem:
Eine kommentierte Zusammenstellung von ausgewählten numerischen Verfahren findet man unter:
Liste numerischer Verfahren.
Literatur
- Martin Hanke-Bourgeois, Grundlagen der numerischen Mathematik und des wissenschaftlichen Rechnens, B.G. Teubner Stuttgart 2002, ISBN 3-8351-0090-4
- Peter Deuflhard, Andreas Hohmann: Numerische Mathematik I, deGruyter, Berlin 2002, ISBN 3-110-17182-1.
- G. H. Golub, J. M. Ortega: Wissenschaftliches Rechnen und Differentialgleichungen. Eine Einführung in die Numerische Mathematik, Heldermann Verlag, Lemgo 1995, ISBN 3-88538-106-0.
- Martin Hermann: Numerische Mathematik, 2. Aufl., Oldenbourg, München 2006, ISBN 3-486-57935-5.
- Thomas Huckle, Stefan Schneider: Numerik für Informatiker, Springer, Berlin 2002, ISBN 3-540-42387-7.
- Ernst Kausen: Numerische Mathematik, Hüthig, Heidelberg 1989, ISBN 3-778-51477-6.
- Gerhard Opfer: Numerische Mathematik für Anfänger. Eine Einführung für Mathematiker, Ingenieure und Informatiker, 4. Aufl., Vieweg, Braunschweig 2002, ISBN 3-528-37265-6.
- Robert Plato: Numerische Mathematik kompakt. Grundlagenwissen für Studium und Praxis, Vieweg, Braunschweig 2000, ISBN 3-528-03153-0.
- Hans R. Schwarz, Norbert Köckler: Numerische Mathematik, 5. Aufl., Teubner, Stuttgart 2004, ISBN 3-519-42960-8.
-