de Gruyter Lehrbuch Deuflhard/Hohmann · Numerische Mathematik 1
Peter Deuflhard Andreas Hohmann
Numerische Mathemati...
345 downloads
2100 Views
2MB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
de Gruyter Lehrbuch Deuflhard/Hohmann · Numerische Mathematik 1
Peter Deuflhard Andreas Hohmann
Numerische Mathematik 1 Eine algorithmisch orientierte Einführung 4., überarbeitete und erweiterte Auflage
≥
Walter de Gruyter Berlin · New York
Prof. Dr. Peter Deuflhard Zuse-Institut Berlin (ZIB) Takustr. 7 14195 Berlin und Freie Universität Berlin Institut für Mathematik Dr. Andreas Hohmann 10 French St. Watertown, MA 02472 USA Mathematics Subject Classification 2000: Primary 65-01; Secondary 65Bxx, 65Cxx, 65Dxx, 65Fxx, 65Gxx
앝 Gedruckt auf säurefreiem Papier, das die US-ANSI-Norm über Haltbarkeit erfüllt. 앪
ISBN 978-3-11-020354-7 Bibliografische Information der Deutschen Nationalbibliothek Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über http://dnb.d-nb.de abrufbar. 쑔 Copyright 2008 by Walter de Gruyter GmbH & Co. KG, 10785 Berlin. Dieses Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Jede Verwertung außerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung des Verlages unzulässig und strafbar. Das gilt insbesondere für Vervielfältigungen, Übersetzungen, Mikroverfilmungen und die Einspeicherung und Verarbeitung in elektronischen Systemen. Printed in Germany. Konvertierung von LaTeX-Dateien der Autoren: Kay Dimler, Müncheberg. Einbandgestaltung: Martin Zech, Bremen. Druck und Bindung: AZ Druck und Datentechnik GmbH, Kempten.
Vorwort
Numerische Mathematik in ihrer algorithmisch orientierten Ausprägung beinhaltet die Konstruktion und das mathematische Verständnis von numerischen Algorithmen, also von Rechenmethoden zur zahlenmäßigen Lösung mathematischer Probleme. Die meisten mathematischen Probleme kommen in unseren Tagen aus vielfältigen Anwendungsgebieten außerhalb der Mathematik. In der Tat haben sich mathematische Modelle zur näherungsweisen Beschreibung der Wirklichkeit in den letzten Jahren derart verfeinert, dass ihre Computersimulation die Realität zunehmend genauer widerspiegelt. Treibende Kraft dieser Entwicklung ist der gleichermaßen stürmische Fortschritt bei Computern und Algorithmen. Dabei hat sich gezeigt: nicht nur die Verfügbarkeit immer besserer Computer, sondern mehr noch die Entwicklung immer besserer Algorithmen macht heute immer komplexere Probleme lösbar. Bisher verschlossene Bereiche der Natur- und Ingenieurwissenschaften öffnen sich mehr und mehr einer mathematischen Modellierung und damit der Simulation auf dem Rechner. Angesichts dieser Entwicklung versteht sich Numerische Mathematik heute als Teil des übergeordneten Gebietes Scientific Computing, zu deutsch oft auch als Wissenschaftliches Rechnen übersetzt. Dieses Gebiet im interdisziplinären Spannungsfeld von Mathematik, Informatik, Natur- und Ingenieurwissenschaften ist erst in jüngerer Zeit zusammengewachsen. Es wirkt in zahlreiche Zweige der Industrie (Chemie, Elektronik, Robotik, Fahrzeugbau, Luft- und Raumfahrt etc.) hinein und leistet bei wichtigen gesellschaftlichen Fragen (sparsamer und zugleich umweltverträglicher Umgang mit Primärenergie, globale Klimamodelle, Verbreitung von Epidemien etc.) einen unverzichtbaren Beitrag. Als Konsequenz davon haben sich tiefgreifende Änderungen der Stoffauswahl und der Darstellungsweise in Vorlesungen und Seminaren der Numerischen Mathematik zwingend ergeben, und dies bereits in einführenden Veranstaltungen: manches früher für wichtig Gehaltene fällt ersatzlos weg, anderes kommt neu hinzu. Die hier getroffene Auswahl ist natürlich vom fachlichen Geschmack der Autoren geprägt, hat sich allerdings nun bereits in der dritten Auflage dieses erfreulich verbreiteten Lehrbuches bewährt. Das vorliegende Buch richtet sich in erster Linie an Studierende der Mathematik, Informatik, Natur- und Ingenieurwissenschaften. In zweiter Linie wollen wir aber auch bereits im Beruf stehende Kollegen (und Kolleginnen – hier ein für alle Mal) oder Quereinsteiger erreichen, die sich mit den etablierten modernen Konzepten der Numerischen Mathematik auf elementarer Ebene im Selbststudium vertraut machen
vi
Vorwort
wollen. Der Stoff setzt lediglich Grundkenntnisse der Mathematik voraus, wie sie an deutschsprachigen Universitäten in den Grundvorlesungen „Lineare Algebra I/II“ und „Analysis I/II“ üblicherweise vermittelt werden. Weitergehende Kenntnisse werden in diesem einführenden Lehrbuch nicht verlangt. In einer Reihe von Einzelthemen (wie Interpolation oder Integration) haben wir uns bewusst auf den eindimensionalen Fall beschränkt. Durchgängiges Muster dieser Einführung ist, wesentliche Konzepte der modernen Numerik, die später auch bei gewöhnlichen und partiellen Differentialgleichungen eine Rolle spielen, bereits hier am einfachst möglichen Problemtyp zu behandeln. Oberstes Ziel des Buches ist die Förderung des algorithmischen Denkens, das ja historisch eine der Wurzeln unserer heutigen Mathematik ist. Es ist kein Zufall, dass neben heutigen Namen auch historische Namen wie Gauß, Newton und Tschebyscheff an zahlreichen Stellen des Textes auftauchen. Die Orientierung auf Algorithmen sollte jedoch nicht missverstanden werden: gerade effektive Algorithmen erfordern ein gerüttelt Maß an mathematischer Theorie, die innerhalb des Textes auch aufgebaut wird. Die Argumentation ist in der Regel mathematisch elementar; wo immer sinnvoll, wird geometrische Anschauung herangezogen – was auch die hohe Anzahl an Abbildungen erklärt. Begriffe wie Skalarprodukt und Orthogonalität finden durchgängig Verwendung, bei endlicher Dimension ebenso wie in Funktionenräumen. Trotz der elementaren Darstellung enthält das Buch zahlreiche Resultate, die ansonsten unpubliziert sind. Darüber hinaus unterscheidet sich auch bei eher klassischen Themen unsere Herleitung von der in herkömmlichen Lehrbüchern. Der Erstautor hat seit 1978 Vorlesungen zur Numerischen Mathematik gehalten – u.a. an der Technischen Universität München, der Universiät Heidelberg und der Freien Universität Berlin. Er hat die Entwicklung des Gebietes Scientific Computing durch seine wissenschaftliche Tätigkeit über Jahre weltweit mit beeinflusst. Der Zweitautor hatte zunächst seine Ausbildung mit Schwerpunkt Reine Mathematik an der Universität Bonn und ist erst anschließend in das Gebiet der Numerischen Mathematik übergewechselt. Diese Kombination hat dem vorliegenden Buch sicher gutgetan, wie die unveränderte Aktualität der Themen auch in dieser vierten Auflage zeigt. Gegenüber der dritten Auflage ist das Kapitel 5.5 über stochastische Eigenwertprobleme noch weiter ausgearbeitet worden, unter anderem durch einen Einblick in das Prinzip der Google-Suchmaschine (sowie dazugehörige Übungsaufgaben). Obwohl wir uns im Kapitel 8 zur Quadratur im Wesentlichen auf eindimensionale Probleme einschränken, ist in dieser vierten Auflage noch eine Einführung in die Monte-CarloQuadratur für hochdimensionale Probleme hinzugekommen – einfach deshalb, weil diese Probleme in den Naturwissenschaften so häufig vorkommen und sich die verwendeten Monte-Carlo-Methoden mit den Vorkenntnissen aus Kapitel 5.5 über stochastische Eigenwertprobleme elementar analysieren lassen. An dieser Stelle nehmen wir gerne die Gelegenheit wahr, eine Reihe von Kollegen zu bedenken, die uns bei diesem Buch auf die eine oder andere Weise besonders un-
Vorwort
vii
terstützt haben. Der Erstautor blickt dankbar zurück auf seine Zeit als Assistent von R. Bulirsch (TU München, emeritiert seit 2001), in dessen Tradition sich sein heutiger Begriff von Scientific Computing geformt hat. Intensive Diskussionen und vielfältige Anregungen zahlreicher Kollegen sind in unsere Darstellung mit eingeflossen. Einigen Kollegen wollen wir hier zu folgenden Einzelthemen besonders danken: Ernst Hairer und Gerhard Wanner (Universität Genf) zur Diskussion des Gesamtkonzepts des Buches; Wolfgang Dahmen (RWTH Aachen) und Angela Kunoth (Universität Paderborn) zu Kapitel 7; Folkmar Bornemann (TU München) zur Darstellung der Fehlertheorie, der verschiedenen Konditionsbegriffe sowie zur Definition des Stabilitätsindikators in Kapitel 2; Dietrich Braess (Ruhruniversität Bochum) zur rekursiven Darstellung der schnellen Fourier-Transformation in Kapitel 7.2. Für die vorliegende vierte Auflage geht unser besonders herzlicher Dank an Susanna Kube, die insbesondere bei dem neu hinzugekommenen Kapitel 9.8 zur Monte-Carlo-Quadratur unschätzbare Hilfe geleistet hat. Berlin, Juni 2008
Peter Deuflhard Andreas Hohmann
Inhaltsverzeichnis
Überblick
1
1 Lineare Gleichungssysteme 1.1 Auflösung gestaffelter Systeme . . . . . . . . . . . . . . . . . . 1.2 Gaußsche Eliminationsmethode . . . . . . . . . . . . . . . . . 1.3 Pivot-Strategien und Nachiteration . . . . . . . . . . . . . . . . 1.4 Cholesky-Verfahren für symmetrische, positiv definite Matrizen Übungsaufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . .
. . . . .
. . . . .
5 7 8 12 19 22
2 Fehleranalyse 2.1 Fehlerquellen . . . . . . . . . . . . . . . . . . . 2.2 Kondition eines Problems . . . . . . . . . . . . . 2.2.1 Normweise Konditionsanalyse . . . . . . 2.2.2 Komponentenweise Konditionsanalyse . 2.3 Stabilität eines Algorithmus . . . . . . . . . . . 2.3.1 Stabilitätskonzepte . . . . . . . . . . . . 2.3.2 Vorwärtsanalyse . . . . . . . . . . . . . 2.3.3 Rückwärtsanalyse . . . . . . . . . . . . 2.4 Anwendung auf lineare Gleichungssysteme . . . 2.4.1 Lösbarkeit unter der Lupe . . . . . . . . 2.4.2 Rückwärtsanalyse der Gauß-Elimination 2.4.3 Beurteilung von Näherungslösungen . . . Übungsaufgaben . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
27 27 30 32 37 41 42 43 49 51 51 53 56 59
3 Lineare Ausgleichsprobleme 3.1 Gaußsche Methode der kleinsten Fehlerquadrate 3.1.1 Problemstellung . . . . . . . . . . . . 3.1.2 Normalgleichungen . . . . . . . . . . . 3.1.3 Kondition . . . . . . . . . . . . . . . . 3.1.4 Lösung der Normalgleichungen . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
66 66 66 69 71 74
. . . . .
x
Inhaltsverzeichnis
3.2
Orthogonalisierungsverfahren . . 3.2.1 Givens-Rotationen . . . . 3.2.2 Householder-Reflexionen . 3.3 Verallgemeinerte Inverse . . . . . Übungsaufgaben . . . . . . . . . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
76 78 80 84 89
4 Nichtlineare Gleichungssysteme und Ausgleichsprobleme 4.1 Fixpunktiteration . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Newton-Verfahren für nichtlineare Gleichungssysteme . . . . 4.3 Gauß-Newton-Verfahren für nichtlineare Ausgleichsprobleme 4.4 Parameterabhängige nichtlineare Gleichungssysteme . . . . . 4.4.1 Lösungsstruktur . . . . . . . . . . . . . . . . . . . . 4.4.2 Fortsetzungsmethoden . . . . . . . . . . . . . . . . . Übungsaufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
92 92 97 104 111 111 114 126
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
131 132 136 138 145 151 152 158 163 165
. . . . . . . . . .
171 172 173 176 179 180 187 189 190 193 197
5
6
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
Lineare Eigenwertprobleme 5.1 Kondition des allgemeinen Eigenwertproblems . . . . 5.2 Vektoriteration . . . . . . . . . . . . . . . . . . . . . 5.3 QR-Algorithmus für symmetrische Eigenwertprobleme 5.4 Singulärwertzerlegung . . . . . . . . . . . . . . . . . 5.5 Stochastische Eigenwertprobleme . . . . . . . . . . . 5.5.1 Perron-Frobenius-Theorie . . . . . . . . . . . 5.5.2 Fastentkoppelte Markov-Ketten . . . . . . . . 5.5.3 Prinzip der Google-Suchmaschine . . . . . . . Übungsaufgaben . . . . . . . . . . . . . . . . . . . . . . .
Drei-Term-Rekursionen 6.1 Theoretische Grundlagen . . . . . . . . . . . . . . 6.1.1 Orthogonalität und Drei-Term-Rekursionen 6.1.2 Homogene und inhomogene Rekursionen . 6.2 Numerische Aspekte . . . . . . . . . . . . . . . . 6.2.1 Kondition . . . . . . . . . . . . . . . . . . 6.2.2 Idee des Miller-Algorithmus . . . . . . . . 6.3 Adjungierte Summation . . . . . . . . . . . . . . . 6.3.1 Summation von dominanten Lösungen . . 6.3.2 Summation von Minimallösungen . . . . . Übungsaufgaben . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . .
. . . . . . . . .
. . . . . . . . . .
. . . . .
. . . . . . . . .
. . . . . . . . . .
. . . . .
. . . . . . . . .
. . . . . . . . . .
. . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
xi
Inhaltsverzeichnis
7 Interpolation und Approximation 7.1 Klassische Polynom-Interpolation . . . . . . . . . . . . . 7.1.1 Eindeutigkeit und Kondition . . . . . . . . . . . . 7.1.2 Hermite-Interpolation und dividierte Differenzen . 7.1.3 Approximationsfehler . . . . . . . . . . . . . . . 7.1.4 Minimax-Eigenschaft der Tschebyscheff-Polynome 7.2 Trigonometrische Interpolation . . . . . . . . . . . . . . . 7.3 Bézier-Technik . . . . . . . . . . . . . . . . . . . . . . . 7.3.1 Bernstein-Polynome und Bézier-Darstellung . . . 7.3.2 Algorithmus von de Casteljau . . . . . . . . . . . 7.4 Splines . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.4.1 Splineräume und B-Splines . . . . . . . . . . . . 7.4.2 Splineinterpolation . . . . . . . . . . . . . . . . . 7.4.3 Berechnung kubischer Splines . . . . . . . . . . . Übungsaufgaben . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
200 201 201 205 213 214 218 225 226 233 240 241 248 252 255
8 Große symmetrische Gleichungssysteme und Eigenwertprobleme 8.1 Klassische Iterationsverfahren . . . . . . . . . . . . . . . . . . 8.2 Tschebyscheff-Beschleunigung . . . . . . . . . . . . . . . . . . 8.3 Verfahren der konjugierten Gradienten . . . . . . . . . . . . . . 8.4 Vorkonditionierung . . . . . . . . . . . . . . . . . . . . . . . . 8.5 Lanczos-Methoden . . . . . . . . . . . . . . . . . . . . . . . . Übungsaufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . .
. . . . . .
. . . . . .
259 261 267 272 279 285 290
9 Bestimmte Integrale 9.1 Quadraturformeln . . . . . . . . . . . . . . . . . . . . 9.2 Newton-Cotes-Formeln . . . . . . . . . . . . . . . . . 9.3 Gauß-Christoffel-Quadratur . . . . . . . . . . . . . . . 9.3.1 Konstruktion der Quadraturformeln . . . . . . 9.3.2 Berechnung der Knoten und Gewichte . . . . . 9.4 Klassische Romberg-Quadratur . . . . . . . . . . . . . 9.4.1 Asymptotische Entwicklung der Trapezsumme 9.4.2 Idee der Extrapolation . . . . . . . . . . . . . 9.4.3 Details des Algorithmus . . . . . . . . . . . . 9.5 Adaptive Romberg-Quadratur . . . . . . . . . . . . . 9.5.1 Adaptives Prinzip . . . . . . . . . . . . . . . . 9.5.2 Schätzung des Approximationsfehlers . . . . . 9.5.3 Herleitung des Algorithmus . . . . . . . . . . 9.6 Schwierige Integranden . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
294 295 298 304 305 310 313 313 315 321 324 325 327 330 336
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
xii
Inhaltsverzeichnis
9.7
Adaptive Mehrgitter-Quadratur . . . . . . . . . . . . . . . . . 9.7.1 Lokale Fehlerschätzung und Verfeinerungsregeln . . . 9.7.2 Globale Fehlerschätzung und Details des Algorithmus 9.8 Monte-Carlo-Quadratur für hochdimensionale Integrale . . . . 9.8.1 Verwerfungsmethode . . . . . . . . . . . . . . . . . . 9.8.2 Markov-Ketten-Monte-Carlo-Methoden . . . . . . . . 9.8.3 Konvergenzgeschwindigkeit . . . . . . . . . . . . . . Übungsaufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
340 340 344 347 348 351 354 356
Software
361
Literatur
363
Index
369
Überblick
Dieses einführende Lehrbuch richtet sich in erster Linie an Studierende der Mathematik, der Informatik, der Natur- und Ingenieurwissenschaften. In zweiter Linie wendet es sich jedoch ausdrücklich auch an bereits im Beruf stehende Kollegen oder Quereinsteiger aus anderen Disziplinen, die sich mit den moderneren Konzepten der Numerischen Mathematik auf elementarer Ebene im Selbststudium vertraut machen wollen. Das Buch gliedert sich in neun Kapitel mit dazugehörigen Übungsaufgaben, ein Softwareverzeichnis, ein Literaturverzeichnis und einen Index. Die ersten fünf und die letzten vier Kapitel sind inhaltlich eng verknüpft. In Kapitel 1 beginnen wir mit der Gauß-Elimination für lineare Gleichungssysteme als dem klassischen Musterfall eines Algorithmus. Über die elementare Elimination hinaus diskutieren wir Pivotstrategien und Nachiteration als Zusatzelemente. Kapitel 2 enthält die unverzichtbare Fehleranalyse, fußend auf den Grundgedanken von Wilkinson. Kondition eines Problems und Stabilität eines Algorithmus werden einheitlich dargestellt, sauber auseinandergehalten und zunächst an einfachen Beispielen illustriert. Die leider noch allzu oft übliche "-Schlacht im Rahmen der linearisierten Fehlertheorie können wir vermeiden – was zu einer drastischen Vereinfachung in der Darstellung und im Verständnis führt. Als Besonderheit ergibt sich ein Stabilitätsindikator, der eine kompakte Klassifikation der numerischen Stabilität gestattet. Mit diesem Rüstzeug können wir schließlich die Frage, wann eine gegebene Näherungslösung eines linearen Gleichungssystems akzeptabel ist, algorithmisch beantworten. In Kapitel 3 behandeln wir Orthogonalisierungsverfahren im Zusammenhang mit der Gauß’schen linearen Ausgleichsrechnung und führen den äußerst nützlichen Kalkül der Pseudoinversen ein. Er findet im anschließenden Kapitel 4 unmittelbar Anwendung. Dort stellen wir Iterationsverfahren für nichtlineare Gleichungssysteme (Newton-Verfahren), nichtlineare Ausgleichsprobleme (Gauß-Newton-Verfahren) und parameterabhängige Probleme (Fortsetzungsmethoden) in engem inneren Zusammenhang dar. Besondere Aufmerksamkeit widmen wir der modernen affin-invarianten Form von Konvergenztheorie und iterativen Algorithmen. Kapitel 5 beginnt mit der Konditionsanalyse des linearen Eigenwertproblems für allgemeine Matrizen. Dies richtet das Augenmerk zunächst in natürlicher Weise auf den reell-symmetrischen Fall: für diesen Fall stellen wir Vektoriteration und QR-Algorithmus im Detail vor. In den gleichen Zusammenhang passt auch die in den Anwendungen so wichtige Singulärwertzerlegung für allgemeine Matrizen. Zuletzt betrachten wir stochastische Eigenwertprobleme, die gegenüber der dritten Auflage hier noch weiter ausgebaut worden
2
Überblick
sind. Sie spielen in der Perron-Clusteranalyse sowie bei der Google-Suchmaschine eine wichtige Rolle. Die zweite inhaltlich geschlossene Sequenz beginnt in Kapitel 6 mit einer ausführlichen Behandlung der Theorie von Drei-Term-Rekursionen, die bei der Realisierung von Orthogonalprojektionen in Funktionenräumen eine Schlüsselrolle spielen. Die Kondition von Drei-Term-Rekursionen stellen wir anhand der diskreten Greenschen Funktionen dar und bereiten so eine mathematische Struktur vor, die in Anfangs- und Randwertproblemen bei Differentialgleichungen wiederkehrt. Mit dem verstärkten Aufkommen des symbolischen Rechnens hat sich gerade in letzter Zeit das Interesse an Speziellen Funktionen auch in der Numerik wiederbelebt. Numerische Algorithmen für ihre effiziente Summation über die zugehörigen Drei-Term-Rekursionen illustrieren wir am Beispiel der Kugel- und Besselfunktionen. In Kapitel 7 behandeln wir zunächst die klassische polynomielle Interpolation und Approximation im eindimensionalen Fall. Wir führen sie sodann weiter über Bézier-Technik und Splines bis hin zu Methoden, die heute im CAD (Computer Aided Design) oder CAGD (Computer Aided Geometric Design), also in Disziplinen der Computergraphik, von zentraler Bedeutung sind. Unsere Darstellung in Kapitel 8 über iterative Methoden zur Lösung von großen symmetrischen Gleichungssystemen und Eigenwertproblemen stützt sich in bequemer Weise auf Kapitel 6 (Drei-Term-Rekursion) und Kapitel 7 (Minimaxeigenschaft von Tschebyscheff-Polynomen). Das gleiche gilt für den Lanczos-Algorithmus für große symmetrische Eigenwertprobleme. Das abschließende Kapitel 9 ist mit voller Absicht etwas länger geraten: Es trägt den Hauptteil der Last, Prinzipien der numerischen Lösung von gewöhnlichen und partiellen Differentialgleichungen vorab ohne technischen Ballast am einfachst möglichen Problemtyp vorzustellen, hier also an der numerischen Quadratur. Nach den historischen Newton-Cotes-Formeln und der Gauß-Quadratur stellen wir die klassische Romberg-Quadratur als einen ersten adaptiven Algorithmus dar, bei dem jedoch nur die Approximationsordnung variabel ist. Die Formulierung des Quadraturproblems als Anfangswertproblem bietet uns sodann die Möglichkeit, eine adaptive Romberg-Quadratur mit Ordnungs- und Schrittweitensteuerung auszuarbeiten; dies liefert uns zugleich den didaktischen Einstieg in adaptive Extrapolationsverfahren, die bei der Lösung gewöhnlicher Differentialgleichungen eine tragende Rolle spielen (vergleiche dazu Band 2). Die alternative Formulierung des Quadraturproblems als Randwertproblem nutzen wir zur Herleitung einer adaptiven Mehrgitter-Quadratur; auf diese Weise stellen wir das adaptive Prinzip bei Mehrgittermethoden für partielle Differentialgleichungen separiert vom Prinzip der „schnellen“ Lösung am einfachsten Modellfall dar. Die hier dargestellten adaptiven Techniken lassen sich also später bei der Behandlung von partiellen Differentialgleichungen mit nur geringfügigen Modifikationen direkt übernehmen. Obwohl wir uns ansonsten in diesem Kapitel auf den eindimensionalen Fall beschränken, behandeln wir in Kapitel 9.8 noch spezielle hochdimensionale Quadra-
Überblick
3
turprobleme, die in der Physik und Informatik häufig vorkommen. Die dort nahezu ausschließlich verwendeten Monte-Carlo-Methoden lassen sich im Rahmen dieses Lehrbuches einfach erklären und mit den Vorkenntnissen aus Kapitel 5.5 über stochastische Eigenwertprobleme elementar analysieren.
1 Lineare Gleichungssysteme
In diesem Kapitel behandeln wir die numerische Lösung eines Systems von n linearen Gleichungen a11 x1 C a12 x2 C C a1n xn D b1 a21 x1 C a22 x2 C C a2n xn D b2 :: :: :: : : : an1 x1 C an2 x2 C C ann xn D bn oder kurz Ax D b; wobei A 2 Matn .R/ eine reelle .n; n/-Matrix ist und b; x 2 Rn reelle n-Vektoren sind. Bevor wir mit der Berechnung der Lösung x beginnen, stellen wir uns die Frage: Wann ist ein lineares Gleichungssystem überhaupt lösbar? Aus der linearen Algebra kennen wir das folgende Resultat, das die Lösbarkeit mit Hilfe der Determinante der Matrix A charakterisiert. Satz 1.1. Sei A 2 Matn .R/ eine reelle quadratische Matrix mit det A ¤ 0 und b 2 Rn . Dann existiert genau ein x 2 Rn , so dass Ax D b. Falls det A ¤ 0, so lässt sich die Lösung x D A1 b mit der Cramerschen Regel berechnen, zumindest im Prinzip. Offenbar gibt es hier eine direkte Verbindung von Existenz- und Eindeutigkeitsaussagen zum Rechenverfahren. Allgemein werden wir fordern: Falls das Problem keine Lösung hat, darf ein verlässlicher Algorithmus auch keine „ausrechnen“. Das ist nicht selbstverständlich, es gibt Gegenbeispiele. Verlässlichkeit ist also ein erste wichtige Eigenschaft eines „guten“ Algorithmus. Allerdings kann die Cramersche Regel noch nicht das endgültige Ziel unserer Überlegungen zu sein: Wenn wir nämlich die Determinante in der Leibnizschen Darstellung X sgn a1;.1/ an;.n/ det A D 2Sn
als Summe über alle Permutationen 2 Sn der Menge f1; : : : ; ng berechnen, beträgt der Aufwand zur Berechnung von det A immerhin n nŠ Operationen. Selbst mit der
6
1 Lineare Gleichungssysteme
rekursiven Bestimmung über Unterdeterminanten nach dem Laplaceschen Entwicklungssatz n X det A D .1/iC1 a1i det A1i iD1
Operationen auszuführen, wobei A1i 2 Matn1 .R/ die Matrix bezeichnet, die aus A durch Streichen der ersten Zeile und der i -ten Spalte entsteht. Wie wir sehen werden, sind alle im Folgenden beschriebenen Verfahren bereits für n 3 effektiver als die Cramersche Regel. Schnelligkeit bei der Lösung des gewünschten Problems ist also sicher eine zweite wichtige Eigenschaft eines „guten“ Algorithmus. sind 2n
Bemerkung 1.2. Von einem guten Rechenverfahren erwarten wir sicherlich, dass es die gestellte Aufgabe mit möglichst geringem Aufwand (an Rechenoperationen) löst. Intuitiv gibt es zu jedem Problem einen minimal nötigen Aufwand, den wir als Komplexität des Problems bezeichnen. Ein Algorithmus ist umso effektiver, je näher der benötigte Rechenaufwand an der Komplexität des Problems liegt. Der Rechenaufwand eines konkreten Algorithmus ist also immer eine obere Schranke für die Komplexität eines Problems. Die Berechnung unterer Schranken ist im Allgemeinen wesentlich schwieriger – für Details sei das Buch von J. Traub und H. Wozniakowski [95] genannt. Die Schreibweise x D A1 b könnte den Gedanken aufkommen lassen, zur Berechnung der Lösung von Ax D b zunächst die inverse Matrix A1 zu berechnen und diese dann auf b anzuwenden. Die Berechnung von A1 beinhaltet jedoch die Schwierigkeiten der Lösung von Ax D b für sämtliche rechten Seiten b. Wir werden im zweiten Kapitel sehen, dass die Berechnung von A1 „bösartig“ sein kann, auch wenn sie für spezielle b „gutartig“ ist. Bei der Notation x D A1 b handelt es sich daher nur um eine formale Schreibweise, die nichts mit der tatsächlichen Berechnung der Lösung x zu tun hat. Man sollte deshalb tunlichst vermeiden, von der „Invertierung von Matrizen“ zu reden, wenn eigentlich die „Lösung linearer Gleichungssysteme“ gemeint ist. Bemerkung 1.3. Es gab über lange Zeit die offene Wette eines wissenschaftlich hochkarätigen Kollegen, der eine hohe Summe darauf setzte, dass in praktischen Fragestellungen niemals das Problem der „Invertierung einer Matrix“ unvermeidbar auftritt. Soweit bekannt, hat er seine Wette in allen Einzelfällen gewonnen. Auf der Suche nach einem effektiven Lösungsverfahren für beliebige lineare Gleichungssysteme werden wir im Folgenden zunächst besonders einfach zu lösenden Spezialfälle studieren. Der einfachste ist sicherlich der Fall einer diagonalen Matrix A: Dabei zerfällt das Gleichungssystem in n voneinander unabhängige skalare Gleichungen. Die Idee, ein allgemeines System in ein diagonales umzuformen, liegt dem Gauß-Jordan-Verfahren zugrunde. Da es jedoch weniger effektiv als das in Kapitel 1.2 beschriebene Verfahren ist, lassen wir es hier weg. Der nächst schwierigere Fall
7
1.1 Auflösung gestaffelter Systeme
ist der eines gestaffelten Gleichungssystems, den wir unmittelbar anschließend behandeln wollen.
1.1
Auflösung gestaffelter Systeme
Hier betrachten wir den Fall eines gestaffelten Gleichungssystems r11 x1 C r12 x2 C C r1n xn D z1 r22 x2 C C r2n xn D z2 :: :: :: : : : rnn xn D zn ; in Matrix-Vektor-Notation kurz Rx D z;
(1.1)
wobei R eine obere Dreiecksmatrix ist, d. h. rij D 0 für alle i > j . Offenbar erhalten wir x durch rekursive Auflösung, beginnend mit der Zeile n: xn
WD zn =rnn ;
falls rnn ¤ 0;
xn1 WD .zn1 rn1;n xn /=rn1;n1 ; :: : x1
falls rn1;n1 ¤ 0;
WD .z1 r12 x2 r1n xn /=r11 ; falls r11 ¤ 0:
Nun gilt für die obere Dreiecksmatrix R, dass det R D r11 rnn und daher det R ¤ 0 ” ri i ¤ 0
für alle i D 1; : : : ; n:
Der angegebene Algorithmus ist also wiederum (wie bei der Cramerschen Regel) genau dann anwendbar, wenn det R ¤ 0, also unter der Bedingung des Existenz- und Eindeutigkeitssatzes. Für den Rechenaufwand ergibt sich: a) für die i-te Zeile: je n i Additionen und Multiplikationen, eine Division; b) insgesamt für die Zeilen n bis 1: n X i D1
.i 1/ D
n.n 1/ : n2 D 2 2
Multiplikationen und ebenso viele Additionen.
8
1 Lineare Gleichungssysteme
: Dabei steht das Zeichen „D“ für „gleich bis auf Terme niedrigerer Ordnung“, d. h., wir betrachten nur den für große n entscheidenden Term mit dem größten Exponenten. Vollkommen analog lässt sich ein gestaffeltes Gleichungssystem der Form Lx D z
(1.2)
mit einer unteren Dreiecksmatrix L lösen, indem man jetzt in der ersten Zeile beginnt und sich bis zur letzten Zeile durcharbeitet. Diese Auflösung gestaffelter Systeme heißt im Fall von (1.1) Rückwärtssubstitution und im Fall von (1.2) Vorwärtssubstitution. Der Name Substitution, d. h. Ersetzung, rührt daher, dass der Vektor der rechten Seite jeweils komponentenweise durch die Lösung ersetzt werden kann, wie wir es in dem folgenden Speicherschema für die Rückwärtssubstitution andeuten wollen: .z1 ; z2 ; : : : ; zn1 ; zn / .z1 ; z2 ; : : : ; zn1 ; xn / :: : .z1 ; x2 ; : : : ; xn1 ; xn / .x1 ; x2 ; : : : ; xn1 ; xn /: Der Fall der Vorwärtssubstitution ist gerade umgekehrt.
1.2
Gaußsche Eliminationsmethode
Wir wenden uns nun dem effizientesten der klassischen Verfahren zur Auflösung eines linearen Gleichungssystems zu, der Gaußschen Eliminationsmethode. Carl Friedrich Gauß (1777 – 1855) beschreibt sie 1809 in seiner Arbeit über Himmelsmechanik „Theoria Motus Corporum Coelestium“ [39] mit den Worten „die Werte können mit der üblichen Methode der Elimination erhalten werden“. Er benutzte dort das Verfahren im Zusammenhang mit der Methode der kleinsten Fehlerquadrate (siehe Kapitel 3). Allerdings hatte Lagrange die Eliminationsmethode bereits 1759 vorweggenommen und in China war sie bereits im ersten Jahrhundert vor Christus bekannt. Kehren wir also wieder zurück zum allgemeinen Fall eines linearen Gleichungssystems a11 x1 C a12 x2 C C a1n xn D b1 a21 x1 C a22 x2 C C a2n xn D b2 :: :: :: :: : : : : an1 x1 C an2 x2 C C ann xn D bn
(1.3)
9
1.2 Gaußsche Eliminationsmethode
und versuchen, es in ein gestaffeltes umzuformen. Zielen wir auf eine obere Dreiecksmatrix ab, so muss die erste Zeile nicht verändert werden. Die restlichen Zeilen wollen wir so behandeln, dass die Koeffizienten vor x1 verschwinden, d. h. die Variable x1 aus den Zeilen 2 bis n eliminiert wird. So entsteht ein System der Art a11 x1 C a12 x2 C C a1n xn D b1 0
0
0
a22 x2 C C a2n xn D b2 :: : 0
:: : 0
(1.4)
0
an2 x2 C C ann xn D bn : Haben wir das erreicht, so können wir dasselbe Verfahren auf die letzten n 1 Zeilen anwenden und so rekursiv ein gestaffeltes System erhalten. Es genügt daher, den ersten Eliminationsschritt von (1.3) nach (1.4) zu untersuchen. Wir setzen voraus, dass a11 ¤ 0. Um den Term ai1 x1 in Zeile i .i D 2; : : : ; n/ zu eliminieren, subtrahieren wir von der Zeile i ein Vielfaches der unveränderten Zeile 1, d. h. Zeile i neu WD Zeile i li1 Zeile 1 oder explizit .a l a / x C .a l a / x C C .ai n li1 a1n / xn D bi li1 b1 : „ ƒ‚ … ƒ‚ … „ i1 ƒ‚i1 11… 1 „ i2 ƒ‚i1 12… 2 „ 0 0 0 D bi D0 D ai2 D ai n Aus ai1 li1 a11 D 0 folgt sofort li1 D ai1 =a11 . Damit ist der erste Eliminationsschritt unter der Annahme a11 ¤ 0 ausführbar. Das Element a11 heißt Pivotelement, die erste Zeile Pivotzeile. (Der aus dem Englischen stammende Begriff „pivot“ lässt sich dabei am besten mit „Dreh- und Angelpunkt“ übersetzen.) In den Zeilen 2 bis n bleibt nach diesem ersten Eliminationsschritt eine .n 1; n 1/-Restmatrix stehen. Wir sind damit in einer Situation wie zu Beginn, allerdings um eine Dimension kleiner. Wenden wir auf diese Restmatrix die Eliminationsvorschrift erneut an, so erhalten wir eine Folge A D A.1/ ! A.2/ ! ! A.n/ DW R
10
1 Lineare Gleichungssysteme
von Matrizen der speziellen Gestalt 2
.1/ 6 a11
A.k/
6 6 6 6 6 6 D6 6 6 6 6 6 4
.1/ a12 .2/ a22
.1/ a1n .2/ a2n
3
7 7 7 7 :: 7 :: : : 7 7 7 .k/ .k/ 7 akk ak n 7 :: :: 7 7 : : 7 5 .k/ .k/ ank ann
(1.5)
mit einer .n k C 1; n k C 1/-Restmatrix rechts unten. Auf jeder Restmatrix können wir den Eliminationsschritt .k/
.k/
lik WD aik =akk .kC1/
WD aij lik akj
.kC1/
WD bi
aij bi
.k/
für i D k C 1; : : : ; n;
.k/
.k/
für i; j D k C 1; : : : ; n;
.k/
für i D k C 1; : : : ; n
lik bk .k/
ausführen, falls das Pivotelement akk nicht verschwindet, was wir nicht von Anfang an wissen können. Da jeder Eliminationsschritt eine lineare Operation auf den Zeilen von A ist, lässt sich der Übergang von A.k/ und b .k/ zu A.kC1/ und b .kC1/ als Multiplikation mit eine Matrix Lk 2 Matn .R/ von links darstellen, d. h. A.kC1/ D Lk A.k/ und b .kC1/ D Lk b .k/ : (Bei Spaltenoperationen erhielte man analog eine Multiplikation von rechts.) Die Matrix 2 3 61 6 : 6 :: 6 6 6 1 6 Lk D 6 6 lkC1;k 1 6 6 :: 6 : 6 4 ln;k
::
7 7 7 7 7 7 7 7 7 7 7 7 7 5
: 1
ist dabei eine sogenannte Frobenius-Matrix. Sie hat die schöne Eigenschaft, dass die Inverse L1 aus Lk durch einen Vorzeichenwechsel in den Elementen lik entsteht. k
11
1.2 Gaußsche Eliminationsmethode
, dass Darüber hinaus gilt für das Produkt der L1 k 2
1 L WD L1 1 Ln1
3
1
6 6 6 l21 1 6 6 D 6 l31 l32 1 6 6 :: :: 6 : : 4
::
:
7 7 7 7 7 7; 7 7 7 5
L1 D Ln1 L1 :
ln1 : : : : : : ln;n1 1 Zusammengefasst erhalten wir auf diese Weise das zu Ax D b äquivalente gestaffelte Gleichungssystem Rx D z mit R D L1 A
und z D L1 b:
Eine untere oder obere Dreiecksmatrix, deren Diagonalelemente alle gleich eins sind, heißt unipotent. Die obige Darstellung A D LR der Matrix A als Produkt einer unipotenten unteren Dreiecksmatrix L und einer oberen Dreiecksmatrix R heißt Gaußsche Dreieckszerlegung oder auch LR-Zerlegung von A. Falls sie existiert, so sind L und R eindeutig bestimmt (siehe Aufgabe 1.2). Algorithmus 1.4. Gauß-Elimination. a) A D LR
Dreieckszerlegung, R obere und L untere Dreiecksmatrix;
b) Lz D b
Vorwärtssubstitution;
c) Rx D z
Rückwärtssubstitution.
Das Speicherschema für die Gauß-Elimination orientiert sich an der Darstellung (1.5) der Matrizen A.k/ . In die verbleibenden Speicherplätze können die lik eingetragen werden, da Elemente mit den Werten 0 oder 1 natürlich nicht eigens gespeichert werden müssen. Der gesamte Speicheraufwand für die Gauß-Elimination beträgt n.n C 1/ Speicherplätze, d. h. genau so viel, wie für die Eingabe benötigt wird. Für den Rechenaufwand, gezählt in Multiplikationen, ergibt sich P 2 : 3 n1 kD1 k D n =3 für a),
Pn1
kD1 k
: D n2 =2 jeweils für b) und c).
Der Hauptaufwand besteht also in der LR-Zerlegung, die für verschiedene rechte Seiten b1 ; : : : ; bj aber nur einmal durchgeführt werden muss.
12
1.3
1 Lineare Gleichungssysteme
Pivot-Strategien und Nachiteration
Wie man bereits an dem einfachen Beispiel 2 3 0 1 5; AD4 det A D 1; 1 0
a11 D 0
sieht, gibt es Fälle, bei denen die Dreieckszerlegung versagt, obwohl det A ¤ 0. Eine Vertauschung der Zeilen führt jedoch zur denkbar einfachsten LR-Zerlegung 2 3 2 3 0 1 1 0 5 ! AN D 4 5 D I D LR mit L D R D I: AD4 1 0 0 1 Bei der rechnerischen Realisierung des Gaußschen Eliminationsverfahrens können Schwierigkeiten nicht nur bei verschwindenden, sondern bereits bei „zu kleinen“ Pivotelementen entstehen. Beispiel 1.5 (siehe [35]). Wir berechnen die Lösung des Gleichungssystems .a/ 1:00 104 x1 C 1:00 x2 D 1:00 .b/
1:00 x1 C 1:00 x2 D 2:00
auf einem Rechner, der der Einfachheit halber mit nur drei Dezimalziffern arbeite. Ergänzen wir die Zahlen durch Nullen, so erhalten wir als „exakte“ Lösung auf vier gültige Ziffern x1 D 1:000; x2 D 0:9999; auf drei gültige also x1 D 1:00;
x2 D 1:00:
Wir führen nun die Gauß-Elimination mit unserem Rechner, d. h. auf 3 gültige Ziffern, aus: a21 1:00 D D 1:00 104 ; l21 D a11 1:00 104 .1:00 1:00 104 1:00 104 /x1 C .1:00 1:00 104 1:00/x2 D 2:00 1:00 104 1:00: Damit erhalten wir das gestaffelte System 1:00 104 x1 C
1:00 x2 D 1:00 1:00 104 x2 D 1:00 104
13
1.3 Pivot-Strategien und Nachiteration
und die „Lösung“ x2 D 1:00 (richtig);
x1 D 0:00 (falsch!):
Vertauschen wir jedoch vor der Elimination die beiden Zeilen 1:00 x1 C 1:00 x2 D 2:00
.Qa/
Q 1:00 104 x1 C 1:00 x2 D 1:00; .b/ so folgt lQ21 D 1:00 104 , und es ergibt sich das gestaffelte System 1:00 x1 C 1:00 x2 D 2:00 1:00 x2 D 1:00 sowie die „richtige Lösung“ x2 D 1:00;
x1 D 1:00:
Durch die Vertauschung der Zeilen hat man in obigem Beispiel erreicht, dass jlQ21 j < 1
und
jaQ 11 j jaQ 21 j:
Das neue Pivotelement aQ 11 ist also das betragsmäßig größte Element in der ersten Spalte. Aus dieser Überlegung leitet man die sogenannte Spaltenpivotstrategie (engl.: column pivoting oder partial pivoting) ab. Bei jeder Gauß-Elimination wählt man diejenige Zeile als Pivotzeile, die das betragsmäßig größte Element in der Pivotspalte besitzt. Genauer formuliert erhalten wir den folgenden Algorithmus: Algorithmus 1.6. Gauß-Elimination mit Spaltenpivotstrategie. a) Wähle im Eliminationsschritt A.k/ ! A.kC1/ ein p 2 fk; : : : ; ng, so dass .k/
.k/
japk j jaj k j
für j D k; : : : ; n:
Die Zeile p soll die Pivotzeile werden. b) Vertausche die Zeilen p und k
A.k/ ! AQ.k/
Nun gilt
mit
.k/ aQ ij
8 .k/ ˆ a ; ˆ ˆ < kj .k/ D apj ; ˆ ˆ ˆ : .k/ aij ;
falls i D p; falls i D k; sonst.
ˇ .k/ ˇ ˇˇ .k/ ˇˇ ˇ aQ ˇ ˇ aQ ˇ ˇ ˇ ik ˇ ˇ 1: jlQik j D ˇ ik ˇD ˇ aQ .k/ ˇ ˇˇ a.k/ ˇˇ kk
pk
14
1 Lineare Gleichungssysteme
c) Führe den nächsten Eliminationsschritt angewandt auf AQ.k/ aus, AQ.k/ ! A.kC1/ : Bemerkung 1.7. Anstelle der Spaltenpivotstrategie mit Zeilentausch kann man auch eine Zeilenpivotstrategie mit Spaltentausch durchführen. Beide Strategien erfordern im schlimmsten Fall O.n2 / zusätzliche Operationen. Kombinieren wir beide Möglichkeiten und suchen jeweils die gesamte Restmatrix nach dem betragsgrößten Element ab, so benötigen wir zusätzlich O.n3 / Operationen. Diese teure vollständige Pivotsuche (engl.: total pivoting) wird so gut wie nie angewandt. Zur formalen Beschreibung der Dreieckszerlegung mit Spaltenpivotsuche verwenden wir im Folgenden sogenannte Permutationsmatrizen P 2 Matn .R/. Jeder Permutation 2 Sn aus der symmetrischen Gruppe ordnen wir die Matrix P D e.1/ e.n/ zu, wobei ej D .ı1j ; : : : ; ınj /T der j -te Einheitsvektor ist. Eine Permutation der Zeilen einer Matrix A lässt sich durch die Multiplikation von links mit P ausdrücken Zeilenpermutation mit : A ! P A und analog eine Permutation der Spalten durch die Multiplikation von rechts Spaltenpermutation mit : A ! AP : Aus der linearen Algebra wissen wir, dass die Zuordnung 7! P ein Gruppenhomomorphismus Sn ! O.n/ der symmetrischen Gruppe Sn in die orthogonale Gruppe O.n/ ist. Insbesondere gilt P 1 D P T : Die Determinante einer Permutationsmatrix ist gerade das Vorzeichen der zugehörigen Permutation, det P D sgn 2 f˙1g; also C1, falls durch eine gerade, und 1, falls durch eine ungerade Anzahl von Transpositionen erzeugt wird. Der folgende Satz zeigt, dass die Dreieckszerlegung mit Spaltenpivotsuche theoretisch nur versagen kann, falls die Matrix A singulär ist. Satz 1.8. Für jede invertierbare Matrix A existiert eine Permutationsmatrix P derart, dass eine Dreieckszerlegung PA D LR möglich ist. Dabei kann P so gewählt werden, dass alle Elemente von L vom Betrag kleiner oder gleich 1 sind, d. h. jLj 1:
15
1.3 Pivot-Strategien und Nachiteration
Beweis. Wir führen den Algorithmus der LR-Zerlegung mit Spaltenpivotsuche aus. Da det A ¤ 0, gibt es eine Transposition 1 2 Sn (wobei wir hier auch die Identität .1/ zulassen), so dass das erste Diagonalelement a11 der Matrix A.1/ D P1 A von Null verschieden und das betragsgrößte Element in der ersten Spalte ist, d. h. .1/
.1/
0 ¤ ja11 j jai1 j
für i D 1; : : : ; n:
Nach der Elimination der restlichen Elemente der ersten Spalte erhalten wir mit der oben eingeführten Notation die Matrix 2 A.2/ D L1 A.1/
6 6 6 D L1 P1 A D 6 6 6 4
.1/
a11
0 :: :
B .2/
3 7 7 7 7; 7 7 5
0 wobei alle Elemente von L1 betragsmäßig kleiner oder gleich eins sind, d. h. jL1 j 1, .1/ und det L1 D 1. Da ja11 j ¤ 0, folgt aus .1/
0 ¤ sgn.1 / det A D det A.2/ D a11 det B .2/ ; dass die Restmatrix B .2/ wieder invertierbar ist. Nun können wir induktiv fortfahren und erhalten R D A.n/ D Ln1 Pn1 L1 P1 A;
(1.6)
wobei jLk j 1 und k entweder die Identität ist oder die Transposition zweier Zahlen k. Ist 2 Sn eine Permutation, die nur Zahlen k C 1 permutiert, so gilt für die Frobenius-Matrix 2 3 1 6 7 6 7 :: : 6 7 6 7 6 7 1 6 7 Lk D 6 7; 6 7 lkC1;k 1 6 7 6 7 : :: :: 6 7 : 4 5 ln;k 1
16
1 Lineare Gleichungssysteme
dass
2
LO k D P Lk P1
6 6 6 6 6 6 D6 6 6 6 6 4
3 1 ::
7 7 7 7 7 7 7: 7 7 7 7 5
: 1 l.kC1/;k 1 :: :
::
:
l.n/;k
(1.7)
1
Wir können damit die Frobenius-Matrizen Lk und die Permutationen Pk trennen, Pk einschieben, d. h. indem wir in (1.6) jeweils die Identität P1 k R D Ln1 Pn1 Ln2 P1 P P L L1 P1 A: n1 n1 n2 n3 Wir erhalten so O n1 LO 1 P0 A RDL
mit LO k D Pk Lk P1 ; k
wobei n1 WD id und k D n1 kC1 für k D 0; : : : ; n 2. Die Permutation k vertauscht tatsächlich nur Zahlen k C 1, so dass die Matrizen LO k von der Gestalt (1.7) sind. Daher gilt P0 A D LR O 1 LO 1 oder explizit mit L WD L 1 n1 2
3 1
6 6 l 1 6 1 .2/1 6 6 L D 6 l1 .3/1 l2 .3/2 1 6 :: :: 6 : : 4 l1 .n/1 ::: also auch jLj 1.
::
:
7 7 7 7 7; 7 7 7 5
ln1 .n/;n1 1
Man beachte, dass wir den Algorithmus der Gaußschen Dreieckszerlegung mit Spaltenpivotstrategie als konstruktive Beweismethode benutzt haben. Wir haben also auch hier, wie bei der Cramerschen Regel, einen direkten Zusammenhang zwischen Algorithmus und Existenz- und Eindeutigkeitsaussage. Mit anderen Worten: Die Gauß-Elimination mit Spaltenpivotsuche ist verlässlich.
17
1.3 Pivot-Strategien und Nachiteration
Bemerkung 1.9. Es sei noch angemerkt, dass wir die Determinante von A aus der Zerlegung PA D LR wie in Satz 1.8 leicht mit der Formel det A D det.P / det.LR/ D sgn.0 / r11 rnn berechnen können. Vor der allzu naiven Berechnung von Determinanten sei jedoch gewarnt! Bekanntlich ergibt die Multiplikation des linearen Gleichungssystems mit einem beliebigen skalaren Faktor ˛ det.˛A/ D ˛ n det A: Aus einer „kleinen“ Determinante kann man also durch diese triviale Transformation eine beliebig „große“ Determinante machen und umgekehrt. Über die ganze Klasse dieser Transformationen betrachtet bleibt von der Determinante nur die invariante Boolesche Größe det A D 0 oder det A ¤ 0 übrig, für gerade n zusätzlich noch das Vorzeichen sgn det A. Weiter unten wird dies zu einer Charakterisierung der Lösbarkeit linearer Gleichungssysteme führen, die nicht auf Determinanten aufbaut. Außerdem zeigt sich hier ein weiteres Kriterium zur Beurteilung von Algorithmen: Falls das Problem selbst invariant gegen eine bestimmte Transformation ist, so verlangen wir die gleiche Invarianz von einem „guten“ Algorithmus, wenn dies realisierbar ist. Aufmerksamen Beobachtern fällt rasch auf, dass sich die Pivotstrategie beliebig abändern lässt, indem man die verschiedenen Zeilen mit unterschiedlichen statt gleichen Skalaren multipliziert. Diese Beobachtung führt uns zur praktisch enorm wichtigen Frage der Skalierung. Unter einer Zeilenskalierung verstehen wir eine Multiplikation von A mit einer Diagonalmatrix von links A ! Dz A;
Dz Diagonalmatrix,
und analog unter einer Spaltenskalierung eine Multiplikation mit einer Diagonalmatrix von rechts A ! ADs ; Ds Diagonalmatrix: (Wie wir bereits bei der Gauß-Elimination gesehen haben, lässt sich eine lineare Operation auf den Zeilen einer Matrix durch die Multiplikation mit einer geeigneten Matrix von links und entsprechend eine Operation auf den Spalten durch eine Matrizenmultiplikation von rechts beschreiben.) Mathematisch gesprochen ändern wir mit der Skalierung die Länge der Basisvektoren des Bildraumes (Zeilenskalierung) bzw. Urbildraumes (Spaltenskalierung) der durch die Matrix A beschriebenen linearen Abbildung. Modelliert diese Abbildung einen physikalischen Sachverhalt, so kann man sich darunter die Änderung der Einheiten oder Umeichung vorstellen (z. B. von Å auf km). Damit die Lösung des linearen Gleichungssystems Ax D b nicht von dieser Wahl der Einheiten abhängt, muss das System in geeigneter Weise skaliert werden,
18
1 Lineare Gleichungssysteme
indem wir die Matrix A von rechts und von links mit geeigneten Diagonalmatrizen multiplizieren: A ! AQ WD Dz ADs ; wobei Dz D diag.1 ; : : : ; n /
Ds D diag.1 ; : : : ; n /:
und
Auf den ersten Blick vernünftig erscheinen die folgenden drei Strategien: a) Äquilibrierung der Zeilen von A bzgl. einer Vektornorm k k. Sei Ai die i -te Zeile von A, und sei vorausgesetzt, dass keine Zeile eine Nullzeile ist. Setzen wir dann Ds WD I und i WD kAi k1
für i D 1; : : : ; n;
so haben alle Zeilen von AQ die Norm 1. b) Äquilibrierung der Spalten. Seien alle Spalten Aj von A verschieden von Null. Setzen wir Dz WD I und j WD kAj k1
für j D 1; : : : ; n;
so haben alle Spalten von AQ die Norm 1. c) Nach a) und b) ist es ganz natürlich zu fordern, dass sowohl die Zeilen als auch die Spalten von A jeweils untereinander dieselbe Norm haben. Zur Bestimmung der i und j (bis auf jeweils einen gemeinsamen Faktor) hat man dann ein nichtlineares Gleichungssystem in 2n 2 Unbekannten zu lösen. Wie man sich leicht vorstellen kann, erfordert dies bei weitem mehr Aufwand als die Lösung des ursprünglichen Problems. Wie wir im vierten Kapitel sehen werden, muss dafür eine Folge von linearen Gleichungssystemen, jetzt mit 2n 2 Unbekannten, gelöst werden, für die sich natürlich wieder die Skalierungsfrage stellen würde. Aufgrund dieses Dilemmas wird die Skalierung in den meisten Programmen (z. B. in der Sammlung LAPACK [4]) dem Benutzer überlassen. Die oben diskutierten Pivotstrategien lassen offenbar nicht ausschließen, dass die so berechnete Lösung xQ immer noch „ziemlich ungenau“ ist. Wie lässt sich xQ ohne großen Aufwand verbessern? Natürlich können wir einfach die Lösung xQ verwerfen und versuchen, mit einer höheren Maschinengenauigkeit eine „bessere“ Lösung berechnen. Dabei würden jedoch alle Informationen verloren gehen, die wir bei der Berechnung von xQ gewonnen haben. Dies wird bei der sogenannten iterativen Verbesserung oder Nachiteration (engl.: iterative refinement) vermieden, bei der das Residuum r.y/ WD b Ay D A.x y/
1.4 Cholesky-Verfahren für symmetrische, positiv definite Matrizen
19
explizit ausgewertet wird. Offenbar wäre die „exakte“ Lösung x gefunden, falls das Residuum verschwindet. Der absolute Fehler x0 WD x x0 von x0 WD xQ genügt der Gleichung (1.8) Ax0 D r.x0 /: Bei der Lösung dieser Korrekturgleichung (1.8) erhalten wir im Allgemeinen eine Q 0 ¤ x0 . Trotzdem erwarten wir, dass die wiederum fehlerbehaftete Korrektur x Näherungslösung Q 0 x1 WD x0 C x „besser“ ist als x0 . Die Idee der Nachiteration besteht nun darin, diesen Prozess solange zu wiederholen, bis die Näherungslösung xi „genau genug“ ist. Dabei beachte man, dass sich das Gleichungssystem (1.8) nur in der rechten Seite von dem ursprünglichen unterscheidet, so dass die Berechnung der Korrekturen xi relativ wenig Aufwand erfordert. Die Nachiteration arbeitet speziell im Zusammenspiel mit Gauß-Elimination und Spaltenpivotsuche ganz hervorragend: In Kapitel 2.4.3 werden wir das substantielle Resultat von R. D. Skeel [89] formulieren, dass bei Verwendung dieses Algorithmus eine einzige Nachiteration ausreicht, um die Lösung „genau genug“ zu erhalten. Dort werden wir auch die bisher vage gehaltenen Begriffe „bessere Näherungslösung“ und „genau genug“ präzisieren.
1.4
Cholesky-Verfahren für symmetrische, positiv definite Matrizen
Wir wollen nun die Gauß-Elimination auf die eingeschränkte Klasse von Gleichungssystemen mit symmetrisch positiv definiten Matrizen anwenden. Es wird sich dabei herausstellen, dass die Dreieckszerlegung in diesem Fall stark vereinfacht werden kann. Wir erinnern daran, dass eine symmetrische Matrix A D AT 2 Matn .R/ genau dann positiv definit ist, falls hx; Axi > 0
für alle x ¤ 0:
(1.9)
Wir nennen solche Matrizen auch kurz spd-Matrizen. Satz 1.10. Für jede spd-Matrix A 2 Matn .R/ gilt: (i) A ist invertierbar. (ii) ai i > 0 für i D 1; : : : ; n. (iii) maxi;j D1;:::;n jaij j D maxi D1;:::;n ai i . (iv) Bei der Gauß-Elimination ohne Pivotsuche ist jede Restmatrix wiederum symmetrisch positiv definit.
20
1 Lineare Gleichungssysteme
Offensichtlich besagen (iii) und (iv), dass eine Spalten- oder Zeilenpivotsuche bei der LR-Zerlegung von A unnötig, ja sogar unsinnig wäre, da sie evtl. die spezielle Struktur von A zerstören würde. Insbesondere besagt (iii), dass sich vollständige Pivotsuche auf diagonale Pivotsuche reduzieren lässt. Beweis. Die Invertierbarkeit von A folgt sofort aus (1.9). Setzen wir in (1.9) für x einen Basisvektor ei , so folgt gerade ai i D hei ; Aei i > 0 und daher die zweite Behauptung. Ähnlich zeigt man die dritte Aussage, siehe Aufgabe 1.7. Um die Aussage (iv) zu beweisen, schreiben wir A D A.1/ als 2 3 a11 zT 6 7 6 7 A.1/ D 6 z 7; B .1/ 4 5 wobei z D .a12 ; : : : ; a1n /T und erhalten nach einem Eliminationsschritt 2 2 3 a11 zT 1 6 6 7 6 6 7 6 0 6 l 7 1 B .2/ 7 mit L1 D 6 21 A.2/ D L1 A.1/ D 6 6 :: 6 :: 7 :: 6 : 6 : 7 : 4 4 5 0
ln1
3 7 7 7 7: 7 7 5 1
Multiplizieren wir nun A.2/ von rechts mit LT1 , so wird auch z T in der ersten Zeile eliminiert und die Teilmatrix B .2/ bleibt unverändert, d. h. 2 3 a11 0 : : : 0 6 7 6 7 6 7 0 7: L1 A.1/ LT1 D 6 6 :: 7 .2/ 6 : 7 B 4 5 0 Die Operation A ! L1 ALT1 beschreibt einen Basiswechsel für die durch die symmetrische Matrix A gegebene Bilinearform. Nach dem Trägheitssatz von Sylvester ist daher L1 A.1/ LT1 und damit auch B .2/ wieder symmetrisch positiv definit. Zusammen mit dem Satz über die LR-Zerlegung können wir jetzt die rationale Cholesky-Zerlegung für symmetrische, positiv definite Matrizen herleiten. Satz 1.11. Für jede symmetrische, positiv definite Matrix A existiert eine eindeutig bestimmte Zerlegung der Form A D LDLT ;
1.4 Cholesky-Verfahren für symmetrische, positiv definite Matrizen
21
wobei L eine unipotente untere Dreiecksmatrix und D eine positive Diagonalmatrix ist. Beweis. Wir setzen die Konstruktion im Beweis von Satz 1.10 für k D 2; : : : ; n1 fort 1 und erhalten so unmittelbar L als Produkt der L1 1 ; : : : ; Ln1 und D als Diagonalmatrix der Pivotelemente. p 1 Korollar 1.12. Da D D diag.di / positiv ist, existiert D 2 D diag. di / und daher die Cholesky-Zerlegung (1.10) A D LN LN T ; 1 wobei LN die untere Dreiecksmatrix LN WD LD 2 ist.
Durch Benutzung der Matrix LN D .lij / erhalten wir somit das klassische Cholesky-Verfahren, das sich kompakt wie folgt darstellen lässt: Algorithmus 1.13. Cholesky-Zerlegung. for k WD 1 to n do P 2 1=2 ; lkk WD .akk jk1 D1 lkj / for i WD k C 1 to n do P lik D .aik jk1 D1 lij lkj /= lkk ; end for end for Die Herleitung dieses Algorithmus ist nichts weiter als die elementweise Auswertung der Gleichung (1.10) 32 3 2 3 2 a11 : : : a1n l11 : : : ln1 l11 76 7 6 7 6 : :: 76 7 6 :: 7 6 :: :: :: 76 7D6 : 7; 6 : : :: : : 54 5 4 5 4 ln1 : : : lnn lnn an1 : : : ann i DkW
2 2 2 akk D lk1 C C lk;k1 C lkk ;
i >kW
aik
D li1 lk1 C C li;k1 lk;k1 C lik lkk :
Die Raffinesse der Methode steckt in der Reihenfolge der Berechnung der Elemente N Für den Rechenaufwand zählen wir von L. 1 n3 Multiplikationen und n Quadratwurzeln: 6 Im Unterschied dazu kommt die rationale Cholesky-Zerlegung ohne Quadratwurzeln, also nur mit rationalen Operationen aus (daher der Name). Der Aufwand kann
22
1 Lineare Gleichungssysteme
auch hier durch geschickte Programmierung auf 61 n3 gehalten werden. Ein Vorteil der rationalen Cholesky-Zerlegung besteht darin, dass fast singuläre Matrizen D erkannt werden können. Auch kann das Verfahren auf symmetrische indefinite Matrizen (x T Ax ¤ 0 für alle x ¤ 0) erweitert werden. Bemerkung 1.14. Die spd-Zusatzstruktur der Matrizen führte offenbar zu einer spürbaren Reduktion des Rechenaufwandes. Sie ist zugleich die Basis für ganz anders gebaute iterative Lösungsverfahren, die wir in Kapitel 8 im Detail beschreiben werden. Solche Verfahren spielen dann eine Rolle, wenn die auftretenden Matrizen besonders groß werden, eventuell sogar noch dünnbesetzt.
Übungsaufgaben Aufgabe 1.1. Geben Sie eine vollbesetzte, nicht singuläre (3,3)-Matrix an, bei der das Gaußsche Eliminationsverfahren ohne Zeilentausch versagt. Aufgabe 1.2. a) Zeigen Sie, dass die unipotenten (nichtsingulären) unteren (oberen) Dreiecksmatrizen jeweils eine Untergruppe von GL.n/ bilden. b) Zeigen Sie unter Verwendung von a), dass die Darstellung A D LR einer nichtsingulären Matrix A 2 GL.n/ als Produkt einer unipotenten unteren Dreiecksmatrix L und einer nichtsingulären oberen Dreiecksmatrix R eindeutig ist, sofern sie existiert. c) Falls A D LR wie in b), so werden L und R mit der Gaußschen Dreieckszerlegung berechnet. Warum ist dies ein weiterer Beweis für b)? Hinweis: Induktion. Aufgabe 1.3. Eine Matrix A 2 Matn .R/ heißt strikt diagonaldominant, falls jai i j >
n X
jaij j
für i D 1; : : : ; n:
iD1 j ¤i
Zeigen Sie, dass für eine Matrix A 2 Matn .R/ mit strikt diagonaldominanter Transponierter AT die Gaußsche Dreieckszerlegung durchführbar und insbesondere A invertierbar ist. Hinweis: Induktion.
23
Übungsaufgaben
Aufgabe 1.4. Der numerische Wertebereich W.A/ einer Matrix A 2 Matn .R/ ist definiert als die Menge W.A/ WD fhAx; xi W hx; xi D 1; x 2 Rn g : Hierbei ist h; i das Euklidische Skalarprodukt auf Rn . a) Zeigen Sie, dass die Matrix A 2 Matn .R/ eine LR-Zerlegung (L unipotente untere, R obere Dreiecksmatrix) besitzt, wenn die Null nicht im Wertebereich von A liegt, d. h. 0 62 W.A/: Hinweis: Induktion. b) Benutzen Sie a), um zu zeigen, dass die Matrix 2
3 1 2 3
6 7 6 7 62 4 77 4 5 3 5 3 keine LR-Zerlegung besitzt. Aufgabe 1.5. Programmieren Sie die Gaußsche Dreieckszerlegung. Das Programm soll die Daten A und b aus einer Datei einlesen und mit folgenden Beispielen getestet werden: a) mit der Matrix aus Aufgabe 1.1, b) mit n D 1, A D 25 und b D 4, c) mit aij D i j 1 und bi D i für n D 7, 15 und 50. Vergleichen Sie jeweils die berechneten mit den exakten Lösungen. Aufgabe 1.6. Die Gauß-Zerlegung mit Spaltenpivotsuche liefere angewandt auf die Matrix A die Zerlegung PA D LR, wobei P die sich im Lauf der Elimination ergebende Permutationsmatrix ist. Zeigen Sie: a) Die Gauß-Elimination mit Spaltenpivotsuche ist invariant gegen (i) Permutationen der Zeilen von A (triviale Ausnahme: mehrere betragsgleiche Elemente pro Spalte), (ii) Multiplikation der Matrix mit einer Zahl ¤ 0, A ! A. b) Ist D eine Diagonalmatrix, so liefert die Gauß-Elimination mit Spaltenpivotsuche angewandt auf AN WD AD die Zerlegung P AN D LRN mit RN D RD.
24
1 Lineare Gleichungssysteme
Überlegen Sie sich das entsprechende Verhalten für die Zeilenpivotstrategie mit Spaltentausch sowie für die vollständige Pivotstrategie mit Zeilen- und Spaltentausch. Aufgabe 1.7. Die Matrix A 2 Matn .R/ sei symmetrisch positiv definit. a) Zeigen Sie, dass 1 p ai i ajj .ai i C ajj / für alle i; j D 1; : : : ; n. 2 ij Hinweis: Zeigen Sie zunächst, dass die Matrix aaji ii aajj für alle i; j symmetrisch positiv definit ist. jaij j
b) Folgern Sie aus a), dass max jaij j D max ai i : i;j
i
Interpretieren Sie das Resultat im Zusammenhang mit Pivotstrategien. Aufgabe 1.8. Zeigen Sie, dass für u; v 2 Rn gilt: a) .I C uv T /1 D I
uv T , 1Cv T u
falls uT v ¤ 1,
b) I C uv T ist singulär, falls uT v D 1. Aufgabe 1.9. Zu lösen sei das lineare Gleichungssystem Ax D b mit der Matrix 3 2 6 6 6 AD6 6 6 4
R
uT
7 7 v 7 7; 7 7 5 0
wobei R 2 Matn .R/ eine invertierbare obere Dreiecksmatrix ist, u; v 2 Rn und x; b 2 RnC1 . a) Geben Sie die Dreieckszerlegung der Matrix A an. b) Zeigen Sie: A ist nichtsingulär genau dann, wenn uT R1 v ¤ 0: c) Formulieren Sie einen sparsamen Algorithmus zur Lösung des obigen linearen Gleichungssystems (Aufwand?). Aufgabe 1.10. Im Zusammenhang mit Wahrscheinlichkeitsverteilungen treten Matrizen A 2 Matn .R/ auf mit den folgenden Eigenschaften: Pn (i) i D1 aij D 0 für j D 1; : : : ; n, (ii) ai i < 0 und aij 0 für i D 1; : : : ; n und j ¤ i .
25
Übungsaufgaben
Dabei bezeichne A D A.1/ ; A.2/ ; : : : ; A.n/ die bei der Gauß-Elimination entstehenden Matrizen. Zeigen Sie: a) ja11 j jai1 j für i D 2; : : : ; n, Pn .2/ b) i D2 aij D 0 für j D 2; : : : ; n, .1/
.2/
.2/
.1/
c) ai i ai i 0 für i D 2; : : : ; n, d) aij aij 0 für i; j D 2; : : : ; n und j ¤ i ; e) falls die bei den ersten n 2 Gauß-Eliminationsschritten nacheinander entste.i/ henden Diagonalelemente alle verschieden von Null sind, d. h. ai i < 0 für .n/ i D 1; : : : ; n 1, so gilt ann D 0. Aufgabe 1.11. Ein Problem aus der Astrophysik („kosmischer Maser“)1 lässt sich als ein System von .n C 1/ linearen Gleichungen in n Unbekannten der Form 2
3
0 1 0 7 x1 6 B C 7 B C B :: C 6 6 A 7B : C B : C 7 B :: C D B C 6 7@ A B C 6 7 6 B0C 5 x 4 @ A n 1 ::: 1 1 0
1
formulieren, wobei A die Matrix aus Aufgabe 1.10 ist. Zur Lösung dieses Systems wenden wir auf die Matrix A eine Gauß-Elimination ohne Pivotsuche mit folgenden zwei Zusatzregeln an, wobei wir die entstehenden Matrizen wieder mit A D A.1/ ; : : : ; A.n1/ und die relative Maschinengenauigkeit mit eps bezeichnen. .k/
a) Falls im Laufe des Algorithmus jakk j jakk j eps für ein k < n, so schiebe simultan die Zeile k und die Spalte k ans Ende und die übrigen Zeilen und Spalten nach vorne (Rotation der Zeilen und Spalten). .k/
b) Falls jakk j jakk j eps für alle noch verbleibenden k < n 1, so breche den Algorithmus ab. Zeigen Sie: (i) Der Algorithmus liefert, falls er nicht in b) abbricht, nach n 1 Eliminationsschritten eine Zerlegung von A in PAP T D LR, wobei P eine Permutation und R D A.n1/ eine obere Dreiecksmatrix mit rnn D 0, ri i < 0 für i D 1; : : : ; n 1 und rij 0 für j > i ist. 1 microwave
amplification by stimulated emission of radiation
26
1 Lineare Gleichungssysteme
(ii) Das System besitzt in diesem Fall eine eindeutige Lösung x, und alle Komponenten von x sind nicht negativ (Interpretation: Wahrscheinlichkeiten). Geben Sie eine einfache Vorschrift zur Berechnung von x an. Aufgabe 1.12. Programmieren Sie den in Aufgabe 1.11 entwickelten Algorithmus zur Lösung des speziellen Gleichungssystems, und testen Sie das Programm an zwei selbstgewählten Beispielen der Dimension n D 5 und n D 7 sowie mit der Matrix 2 3 2 2 0 1 6 7 6 7 6 2 4 1 1 7 6 7: 6 7 6 0 1 2 0 7 5 4 0 1 1 2 Aufgabe 1.13. Gegeben sei das lineare Gleichungssystem C x D b, wobei C eine invertierbare .2n; 2n/-Matrix der folgenden speziellen Gestalt ist: 2 3 A B 5 ; A; B invertierbar: C D4 B A a) Sei C 1 partitioniert wie C : 2
3
C 1 D 4
E
F
5:
G H Beweisen Sie die Identität von I. Schur: E D H D .A BA1 B/1
und
F D G D .B AB 1 A/1 :
b) Seien x D .x1 ; x2 /T und b D .b1 ; b2 /T ebenfalls partitioniert und .A C B/y1 D b1 C b2 ;
.A B/y2 D b1 b2 :
Zeigen Sie, dass 1 x1 D .y1 C y2 /; 2 Numerischer Vorteil?
1 x2 D .y1 y2 /: 2
2 Fehleranalyse
Im vorigen Kapitel haben wir eine Klasse von Verfahren kennengelernt, um ein lineares Gleichungssystem rechnerisch zu lösen. Formal haben wir dabei aus Eingabegrößen .A; b/ das Resultat f .A; b/ D A1 b berechnet. Mit diesem Beispiel im Hinterkopf wollen wir nun im vorliegenden Kapitel Algorithmen von einem abstrakteren Gesichtspunkt aus analysieren. Sei ein Problem abstrakt charakterisiert durch .f; x/ mit gegebener Abbildung f und gegebenen Eingabedaten x. Das Problem lösen heißt dann, das Resultat f .x/ mit Hilfe eines Algorithmus bestimmen, der evtl. noch Zwischengrößen produziert. Die Situation wird durch das Schema beschrieben: Eingabe
!
Algorithmus
!
Resultat
Wir wollen in diesem Kapitel untersuchen, wie sich Fehler auf diesen Vorgang auswirken, und nebenbei speziell klären, ob es sich bei der Gauß-Elimination um ein zuverlässiges Verfahren handelt. Fehler im Ergebnis rühren sowohl von Eingabefehlern als auch von Fehlern im Algorithmus her: Eingabefehler !
Fehler im Algorithmus
!
Fehler im Resultat
Gegenüber Eingabefehlern sind wir im Prinzip machtlos, sie gehören zum gegebenen Problem und können allenfalls durch eine Änderung der Problemstellung vermieden werden. Anders sieht es mit den vom Algorithmus verursachten Fehlern aus. Hier haben wir die Chance, Fehler zu vermeiden oder zu verringern, indem wir das Verfahren verändern. Die Unterscheidung dieser beiden Arten von Fehlern wird uns im Folgenden zu den Begriffen Kondition eines Problems und Stabilität eines Algorithmus führen. Zunächst wollen wir die möglichen Fehlerquellen eingehender diskutieren.
2.1
Fehlerquellen
Auch wenn die Eingabegrößen als exakt gegeben angesehen werden, treten durch die Darstellung nicht ganzzahliger Zahlen in einem Rechner Eingabefehler auf. Bei der
28
2 Fehleranalyse
heute üblichen normalisierten Gleitkommadarstellung (engl.: floating point representation) wird eine Zahl z von „reellem Typ“ dargestellt als z D ad e , wobei die Basis d eine Zweierpotenz ist (in der Regel 2; 8 oder 16) und der Exponent e eine ganze Zahl mit einer vorgegebenen maximalen Binärstellenzahl, e 2 femin ; : : : ; emax g Z: Die sogenannte Mantisse a ist entweder 0 oder eine Zahl mit d 1 jaj < 1 und hat die Form l X ai d i ; aDv iD1
wobei v 2 f˙1g das Vorzeichen ist, ai 2 f0; : : : ; d 1g die Ziffern mit a D 0 oder a1 ¤ 0 und l die Mantissenlänge. Die so darstellbaren Zahlen bilden eine endliche Teilmenge F WD fx 2 R W es gibt a, e wie oben, so dass x D ad e g der reellen Zahlen. Der Bereich, den der Exponent e überstreichen kann, bestimmt die betragsmäßig größte und kleinste Zahl, die sich auf der Maschine (damit ist immer der Rechner zusammen mit dem benutzten Compiler gemeint) darstellen lässt. Die Mantissenlänge l ist für die relative Genauigkeit der Darstellung reeller Zahlen in der Maschine verantwortlich. Jede Zahl x ¤ 0 mit d emin 1 jxj d emax .1 d l / lässt sich (durch Rundung auf die nächstliegende Maschinenzahl) durch eine Gleitkommazahl (engl.: floating point number) fl.x/ 2 F repräsentieren, deren relativer Fehler sich durch jx fl.x/j eps WD d 1l =2 jxj abschätzen lässt. Dabei verwenden wir für die Division durch Null die Konvention, dass 0=0 D 0 und x=0 D 1 für x > 0. Falls jxj kleiner als die betragsmäßig kleinste Maschinenzahl d emin 1 ist, spricht man von Exponentenunterlauf (engl.: underflow), im entgegengesetzten Fall jxj > d emax .1d l / von Exponentenüberlauf (engl.: overflow). Wir nennen eps die relative Maschinengenauigkeit, in der Literatur auch häufig mit u für „unit roundoff“ bezeichnet. Sie liegt bei einfacher Genauigkeit (single precision in FORTRAN und float in C ) in der Regel bei eps 107 . Stellen wir uns nun vor, wir wollten eine mathematisch exakt zu denkende reelle Zahl x, zum Beispiel x D D 3:141592653589 : : : ; in einen Rechner eingeben. Theoretisch ist bekannt, dass sich als eine irrationale Zahl nicht mit einer endlichen Mantissenlänge darstellen lässt und daher auf jedem
29
2.1 Fehlerquellen
Rechner eine fehlerbehaftete Eingabegröße ist, z. B. für eps D 107 7! fl./ D 3:141593;
j fl./ j eps :
Wesentlich ist dabei, dass die Zahl x nach der Eingabe in einen Rechner ununterscheidbar ist von allen anderen Zahlen x, Q die auf dieselbe Gleitkommazahl fl.x/ D fl.x/ Q gerundet werden. Insbesondere ist diejenige reelle Zahl, welche durch Anhängen von Nullen an die Maschinenzahl entstünde, in keiner Weise ausgezeichnet. Es ist demnach unsinnig, von einer „exakten“ Eingabe auszugehen. Diese Einsicht wird die folgende Fehleranalyse maßgeblich beeinflussen. Eine weitere wichtige Fehlerquelle bei den Eingabedaten sind Messfehler, wenn die Eingabegrößen aus experimentellen Daten gewonnen werden. Solche Daten x werden meist zusammen mit dem absoluten Fehler ıx, der sogenannten Toleranz angegeben: Der Abstand von x zum „wahren“ Wert xN lässt sich (komponentenweise) abschätzen durch jx xj N ıx: Die relative Genauigkeit jıx=xj liegt dabei in vielen praktisch wichtigen Fällen zwischen 102 und 103 – eine Größe, die die Rundung der Eingabe im Allgemeinen weit überwiegt. Man spricht in diesem Zusammenhang häufig auch von technischen Genauigkeiten. Gehen wir nun über zu der zweiten Gruppe von Fehlerquellen, den Fehlern im Algorithmus. Bei der Realisierung einer Elementaroperation ı 2 fC; ; ; = g O ; durch die entsprechende Gleitkommaoperation ıO 2 fC; O O; =O g lassen sich Rundungsfehler nicht vermeiden. Der relative Fehler ist dabei wieder kleiner oder gleich der relativen Maschinengenauigkeit, d. h., für x; y 2 F gilt x ıO y D .x ı y/.1 C "/ für ein " D ".x; y/ mit j"j eps : Dabei beachte man, dass die Operationen ıO im Allgemeinen nicht assoziativ sind (vgl. Aufgabe 2.1), so dass es in F sehr wohl auf die Reihenfolge der auszuführenden Operationen ankommt. Neben den Rundungsfehlern können in einem Algorithmus Näherungsfehler, die sogenannten Approximationsfehler, entstehen. Sie treten immer dann auf, wenn eine Funktion nicht exakt (bis auf Rundungsfehler) berechnet werden kann, sondern approximiert werden muss. Dies ist z. B. bei der Berechnung des Sinus durch eine abgebrochene Reihenentwicklung der Fall oder, um ein komplexeres Problem zu nennen, bei der Lösung von Differentialgleichungen. In diesem Kapitel werden wir uns im Wesentlichen auf die Behandlung von Rundungsfehlern beschränken. Approximationsfehler werden wir jeweils im Zusammenhang mit der Beschreibung der einzelnen Algorithmen in späteren Kapiteln studieren.
30
2.2
2 Fehleranalyse
Kondition eines Problems
Wir stellen uns nun die Frage: Wie wirken sich Störungen der Eingabegrößen auf das Resultat unabhängig vom gewählten Algorithmus aus? Wir haben oben bei der Beschreibung der Eingabefehler gesehen, dass die Eingabe x logisch ununterscheidbar ist von allen Eingaben x, Q die sich im Rahmen der vorgegebenen Genauigkeit befinden. Statt der „exakten“ Eingabe x sollten wir daher besser eine Eingabemenge E betrachten, die all diese gestörten Eingaben xQ enthält (siehe Abbildung 2.1). f E
x R
f .x/
Abbildung 2.1. Eingabe- und Resultatmenge
Eine Maschinenzahl x repräsentiert demnach die Eingabemenge E D fxQ 2 R W jxQ xj eps jxjg: Wüßten wir hingegen, dass die Eingabe x mit einer absoluten Toleranz ıx vorliegt, so wäre die entscheidende Eingabegröße die Menge E D fxQ 2 R W jxQ xj ıxg: Die Abbildung f , die unser Problem beschreibt, überführt die Eingabemenge E in eine Resultatmenge R D f .E/. So wie wir von der vermeintlich exakten Eingabe x zur Eingabemenge E geführt wurden, so ist es bei der Analyse von Eingabefehlern daher sinnvoll, statt der punktweisen Abbildung f W x 7! f .x/ die Mengenabbildung f W E 7! R D f .E/ zu untersuchen. Die Auswirkungen von Störungen der Eingabegrößen auf das Resultat lassen sich nun durch das Verhältnis der Eingabemenge zur Resultatmenge ablesen. Eine Charakterisierung des Verhältnisses von E und R nennen wir die Kondition des durch .f; x/ beschriebenen Problems. Beispiel 2.1. Um ein Gefühl für diesen noch nicht präzisen Begriff zu entwickeln, betrachten wir vorab das geometrische Problem der zeichnerischen Bestimmung des Schnittpunktes r zweier Geraden g und h in der Ebene (siehe Abbildung 2.2). Schon bei der zeichnerischen Lösung dieses Problems ist es nicht möglich, die Geraden g und h exakt darzustellen. Die Frage ist nun, wie stark der konstruierte Schnittpunkt r von den Zeichenfehlern (oder: Eingabefehlern) abhängt. Die Eingabemenge E beQ die nur innerhalb der steht in unserem Beispiel gerade aus allen Geraden gQ und h, Zeichengenauigkeit von g bzw. h abweichen, die Resultatmenge R aus den jeweiligen Schnittpunkten rQ . Wir sehen sofort, dass das Verhältnis der Eingabemenge zur
31
2.2 Kondition eines Problems
hQ
gQ rQ
g
h
r
Abbildung 2.2. Schnittpunkt r zweier Geraden g; h (gutkonditioniert) g
r
h Abbildung 2.3. Schleifender Schnitt (schlechtkonditioniert)
Resultatmenge stark davon abhängt, in welchem Winkel
oder
kxQ xk ıkxk (relativ)
oder
jxQ i xi j ıjxi j (relativ)
oder komponentenweise jxQ i xi j ı (absolut)
für i D 1; : : : ; n angegeben werden. Entsprechend messen wir auch die Resultatfehler f .x/ Q f .x/ bezüglich einer Norm oder komponentenweise.
32
2.2.1
2 Fehleranalyse
Normweise Konditionsanalyse
Um die Rechnungen bei der quantitativen Konditionsanalyse überschaubar halten zu können, geht man meistens von hinreichend kleinen Eingabefehlern ı aus und betrachtet daher in der sogenannten linearisierten Fehlertheorie das asymptotische Verhalten für ı ! 0. Dabei ist folgende verkürzende Schreibweise äußerst hilfreich: Zwei Funktionen g; h W Rn ! Rm sind in erster Näherung oder in führender Ordnung gleich für x ! x0 , kurz : g.x/ D h.x/ für x ! x0 ; falls g.x/ D h.x/ C o.kh.x/k/
für x ! x0 ,
wobei das Landau-Symbol „o.kh.x/k/ für x ! x0 “ eine Funktion '.x/ mit lim
x!x0
k'.x/k D0 kh.x/k
bezeichnet, die nicht näher spezifiziert werden soll. Für eine in x differenzierbare Abbildung f gilt damit : f .x/ Q f .x/ D f 0 .x/.xQ x/ für xQ ! x. P h.x/ für x ! x0 “ (komponentenweise) In analoger Weise definieren wir „g.x/ durch „g.x/ h.x/ C o.kh.x/k/ für x ! x0 “. Ohne direkten Rückgriff auf die Ableitung von f können wir das Verhältnis von Eingabe- und Resultatmenge in normweiser Sicht durch die folgende asymptotische Lipschitz-Bedingung charakterisieren. Definition 2.2. Die absolute normweise Kondition des Problems .f; x/ ist die kleinste Zahl abs 0, so dass P abs kxQ xk für xQ ! x. kf .x/ Q f .x/k Das Problem .f; x/ ist schlecht oder auch unsachgemäß gestellt (engl.: ill-posed), falls es keine solche Zahl gibt (formal: abs D 1). Analog ist die relative normweise Kondition von .f; x/ die kleinste Zahl rel 0, so dass kxQ xk kf .x/ Q f .x/k P rel kf .x/k kxk
für xQ ! x.
Also beschreibt abs gerade die Verstärkung des absoluten und rel die des relativen Fehlers. Ein Problem .f; x/ ist gutkonditioniert (engl.: well-conditioned), falls seine Kondition klein und schlechtkonditioniert (engl.: ill-conditioned), falls sie groß ist. Über die Begriffe „klein“ und „groß“ muss man natürlich für jedes Problem gesondert
33
2.2 Kondition eines Problems
nachdenken. Für die relative Kondition ist die Zahl 1 eine Orientierung: Sie entspricht dem Fall der reinen Rundung des Resultats (siehe die Diskussion in Kapitel 2.1). Weiter unten werden wir in einer Reihe illustrativer Beispiele klären, was jeweils „klein“ oder „groß“ ist. Ist f differenzierbar in x, so können wir aufgrund des Mittelwertsatzes die Konditionen über die Ableitung angeben: abs D kf 0 .x/k und
rel D
kxk kf 0 .x/k; kf .x/k
(2.1)
wobei kf 0 .x/k die Norm der Jacobimatrix f 0 .x/ 2 Matm;n .R/ in der zugeordneten Matrixnorm kAxk D sup kAxk kxkD1 x¤0 kxk
kAk WD sup
für A 2 Matm;n .R/
ist. Zur Illustration berechnen wir die Konditionen einiger einfacher Probleme. Beispiel 2.3. Kondition der Addition (bzw. Subtraktion). Die Addition ist eine lineare Abbildung 0 1 f W R2 ! R;
a @ A! 7 f .a; b/ WD a C b b
mit der Ableitung f 0 .a; b/ D .1; 1/ 2 Mat1;2 .R/. Wählen wir auf R2 die 1-Norm kŒa; bT k D jaj C jbj und auf R den Betrag, so folgt für die Ableitung in der zugeordneten Matrixnorm (siehe Aufgabe 2.8), dass kf 0 .a; b/k D k.1; 1/k D 1: Die Konditionszahlen der Addition sind daher abs D 1
und
rel D
jaj C jbj : ja C bj
Für die Addition zweier Zahlen mit gleichem Vorzeichen ergibt sich also rel D 1. Hingegen zeigt sich, dass die Subtraktion zweier annähernd gleicher Zahlen bezüglich der relativen Kondition schlechtkonditioniert ist, da in diesem Fall gilt ja C bj jaj C jbj ” rel 1: Das Phänomen heißt Auslöschung führender Ziffern (engl.: cancellation of leading digits).
34
2 Fehleranalyse
Beispiel 2.4. Unvermeidbare Auslöschung. Zur Illustration geben wir das folgende einfache Beispiel mit eps D 107 : a D 0: 1234 67
Störung an 7. Stelle
b D 0: 1234 56
Störung an 7. Stelle
a b D 0: „ƒ‚… 0000 11 „ƒ‚… 000
Störung an 3. Stelle.
führende Nullen nachgeschobene Nullen
Ein Fehler in der 7. Dezimalstelle der Eingabedaten a; b führt im Ergebnis a b zu einem Fehler in der 3. Dezimalstelle, d. h. rel 104 . Man beachte, dass man die Auslöschung dem vom Rechner ausgegebenen dezimalen Ergebnis nicht ansehen kann. Die nachgeschobenen Nullen sind Nullen in der binären Darstellung und gehen bei der Umwandlung ins Dezimalsystem verloren. Es gilt deshalb die Regel: Vermeidbare Subtraktionen annähernd gleicher Zahlen vermeiden! Für unvermeidbare Subtraktionen werden wir in Kapitel 2.3 eine weitere Regel herleiten. Beispiel 2.5. Quadratische Gleichung. Ein geradezu klassisches Beispiel für eine vermeidbare Auslöschung ist die Lösung einer quadratischen Gleichung (siehe auch Kapitel 4) f .x/ WD x 2 2px C q D 0; deren Lösungen bekanntlich durch x1;2 D p ˙
q
p2 q
gegeben sind. In dieser Formel tritt Auslöschung auf, wenn eine Nullstelle in der Nähe von Null liegt. Diese Auslöschung ist jedoch vermeidbar, da nach dem Satz von Vieta q das Produkt der Nullstellen ist und wir daher mit q x1 D p C sgn.p/ p 2 q; x2 D q=x1 ; die beiden Lösungen stabil berechnen können. Beispiel 2.6. Häufig lassen sich Auslöschungen vermeiden, indem man Reihenentwicklungen ausnutzt. Als Beispiel betrachten wir die Funktion 1 cos.x/ 1 x2 x4 x x2 D 1 Œ1 C ˙ D 1 ˙ : x x 2 24 2 12
35
2.2 Kondition eines Problems
Für x D 104 ist x 2 =12 < 109 und daher x=2 nach dem Satz von Leibniz über alternierende Reihen eine auf acht Dezimalziffern genaue Näherung für .1cos x/=x. Beispiel 2.7. Kondition eines linearen Gleichungssystems Ax D b. Betrachten wir bei der Lösung des linearen Gleichungssystems Ax D b nur den Vektor b 2 Rn als Eingabegröße, so wird das Problem von der Abbildung f W Rn ! R n ;
b 7! f .b/ WD A1 b
beschrieben. Sie ist bezüglich b linear. Die Ableitung ist daher natürlich f 0 .b/ D A1 , so dass sich für die Konditionen des Problems .A1 ; b/ gerade abs D kA1 k
und
rel D
kbk kAxk 1 kA1 k D kA k kA1 bk kxk
ergibt. Es lassen sich aber auch leicht Störungen in A berücksichtigen. Dazu betrachten wir die Matrix A als Eingabegröße f W GL.n/ Matn .R/ ! Rn ; A 7! f .A/ D A1 b und halten b fest. Diese Abbildung ist nichtlinear in A, aber differenzierbar. Dies folgt beispielsweise aus der Cramerschen Regel und der Tatsache, dass die Determinante einer Matrix ein Polynom in den Einträgen ist (siehe auch Bemerkung 2.9). Zur Berechnung der Ableitung benutzen wir folgendes Lemma. Lemma 2.8. Die Abbildung g W GL.n/ Matn .R/ ! GL.n/ mit g.A/ D A1 ist differenzierbar, und es gilt g 0 .A/C D A1 CA1
für alle C 2 Matn .R/:
(2.2)
Beweis. Wir differenzieren die Gleichung .A C t C /.A C t C /1 D I nach t und erhalten d 0 D C.A C t C /1 C .A C t C / .A C t C /1 : dt Daraus folgt speziell für t D 0, dass g 0 .A/C D
ˇ d .A C t C /1 ˇ tD0 D A1 CA1 : dt
Bemerkung 2.9. Die Differenzierbarkeit der Inversen folgt auch leicht aus der sogenannten Neumannschen Reihe. Ist C 2 Matn .R/ eine Matrix mit kC k < 1, so ist I C invertierbar und .I C /1 D
1 X kD0
Ck D I C C C C2 C :
36
2 Fehleranalyse
P k Dies zeigt man wie bei der Summenformel 1 kD0 q D 1=.1 q/ für jqj < 1 einer geometrischen Reihe. Für eine Matrix C 2 Matn .R/ mit kA1 C k < 1 folgt daher .A C C /1 D .A.I C A1 C //1 D .I C A1 C /1 A1 D .I A1 C C o.kC k// A1 D A1 A1 CA1 C o.kC k/ für kC k ! 0 und daher (2.2). Diese Argumentation behält ihre Gültigkeit auch für beschränkte Operatoren in Banach-Räumen. Aus Lemma 2.8 folgt nun für die Ableitung der Lösung f .A/ D A1 b des linearen Gleichungssystems nach A, dass f 0 .A/ C D A1 CA1 b D A1 C x
für C 2 Matn .R/:
Wir erhalten so die Konditionen abs D kf 0 .A/k D sup kA1 C xk kA1 kkxk; kC kD1
rel
kAk 0 kf .A/k kAkkA1 k: D kxk
Auch die relative Kondition bezüglich der Eingabe b lässt sich aufgrund der Submultiplikativität kAxk kAkkxk der Matrixnorm durch rel kAkkA1 k abschätzen. Die Größe
.A/ WD kAk kA1 k
wird daher auch Kondition der Matrix A genannt. Sie beschreibt insbesondere die relative Kondition eines linearen Gleichungssystems Ax D b für alle möglichen rechten Seiten b 2 Rn . Eine andere Darstellung für .A/ (siehe Aufgabe 2.12) ist max kAxk
.A/ WD
kxkD1
min kAxk
2 Œ0; 1:
(2.3)
kxkD1
Sie hat den Vorteil, dass sie auch für nicht invertierbare und rechteckige Matrizen wohldefiniert ist. Mit dieser Darstellung sind die folgenden drei Eigenschaften von .A/ offensichtlich: (i) .A/ 1, (ii) .˛A/ D .A/ für alle ˛ 2 R, ˛ ¤ 0, (iii) A ¤ 0 ist genau dann singulär, wenn .A/ D 1.
37
2.2 Kondition eines Problems
Wir sehen, dass die Kondition .A/ einer Matrix im Gegensatz zur Determinante det A invariant ist unter den skalaren Transformationen A ! ˛A. Zusammen mit den Eigenschaften (i) und (iii) kann diese Konditionszahl daher eher zur Charakterisierung der Lösbarkeit eines linearen Gleichungssystems herangezogen werden als die Determinante. Wir werden darauf in Kapitel 2.4.1 näher eingehen. Beispiel 2.10. Kondition eines nichtlinearen Gleichungssystems. Angenommen, wir wollen ein nichtlineares Gleichungssystem f .x/ D y lösen, wobei f W Rn ! Rn eine stetig differenzierbare Funktion und y 2 Rn die Eingabegröße ist (meist y D 0). Wir sehen sofort, dass das Problem nur dann wohlgestellt ist, wenn die Ableitung f 0 .x/ invertierbar ist. In diesem Fall ist auch f aufgrund des Satzes von der inversen Funktion lokal in einer Umgebung von y invertierbar, d. h. x D f 1 .y/. Für die Ableitung gilt .f 1 /0 .y/ D f 0 .x/1 : Die Konditionen des Problems .f 1 ; y/ sind daher abs D k.f 1 /0 .y/k D kf 0 .x/1 k
und
rel D
kf .x/k 0 1 kf .x/ k: kxk
Anschaulich deckt sich das Ergebnis mit der Analyse der geometrischen Bestimmung des Schnittpunkts zweier Geraden. Falls abs oder rel groß sind, liegt ein schleifender Schnitt vor (vgl. Abbildung 2.4). f
yD0
x0
x1
x
Abbildung 2.4. Schlechtkonditionierte Nullstelle bei x0 , gutkonditionierte bei x1
2.2.2
Komponentenweise Konditionsanalyse
Nachdem wir uns von der Schlagkraft der normweisen Konditionsanalyse überzeugt haben, wollen wir nun ähnliche Begriffe für die komponentenweise Fehleranalyse einführen. Sie erweist sich häufig schon deshalb als günstiger, weil alle Eingaben in
38
2 Fehleranalyse
einen Rechner mit einem relativen Fehler in den einzelnen Komponenten behaftet sind und so einige Phänomene bei der normweisen Betrachtung nicht erklärt werden können. Ferner nimmt die normweise Betrachtung z. B. bei linearen Gleichungssystemen keine Rücksicht auf eventuell vorliegende Spezialstrukturen einer Matrix A, sondern analysiert das Verhalten bezüglich beliebiger Störungen ıA, d. h. auch solcher, die diese Spezialstruktur nicht erhalten. Beispiel 2.11. Die Lösung eines Gleichungssystems Ax D b mit einer Diagonalmatrix 3 2 2 3 1 0 1 0 5; 5 ; A1 D 4 AD4 0 "1 0 " ist offensichtlich ein gutkonditioniertes Problem, da die Gleichungen vollkommen unabhängig voneinander (man sagt auch entkoppelt) sind. Dabei setzen wir natürlich implizit voraus, dass die zugelassenen Störungen die Diagonalgestalt erhalten. Die normweise Kondition 1 .A/, 1 1 .A/ D kA1 k1 kAk1 D ; " wird für kleine " 1 jedoch beliebig groß. Sie beschreibt die Kondition für beliebige Störungen der Matrix. Das Beispiel deutet an, dass der in Kapitel 2.2.1 definierte Konditionsbegriff in manchen Situationen Mängel aufweist. Intuitiv erwarten wir, dass die Kondition einer Diagonalmatrix, d. h. eines vollständig entkoppelten Gleichungssystems, stets 1 ist – wie für eine skalare Gleichung. Auf eine solche Kondition wird die nun folgende komponentenweise Analyse führen. Wollen wir das normweise Konzept von Kapitel 2.2.1 auf den komponentenweisen Ansatz übertragen, so müssen wir die Normen durch komponentenweise Beträge ersetzen. Wir führen dies nur für das relative Konzept durch. Definition 2.12. Die (im Urbild) komponentenweise Kondition des Problems .f; x/ ist die kleinste Zahl rel 0, so dass kf .x/ Q f .x/k1 jxQ xi j P rel max i i kf .x/k1 jxi j
für xQ ! x.
Bemerkung 2.13. Alternativ kann man die relative komponentenweise Kondition auch durch max i
jfi .x/ Q fi .x/j jxQ xi j P rel max i i jfi .x/j jxi j
für xQ ! x
definieren. Die so definierte Kondition ist sogar submultiplikativ, d. h., es gilt rel .g ı h; x/ rel .g; h.x// rel .h; x/:
39
2.2 Kondition eines Problems
In Analogie zu (2.1) lassen sich diese Konditionen für differenzierbare Abbildungen aus der Ableitung an der Stelle x berechnen. Die Anwendung des Mittelwertsatzes Z 1
f 0 .x C t .xQ x//.xQ x/ dt
f .x/ Q f .x/ D tD0
liefert komponentenweise Z
1
jf 0 .x C t .xQ x//j j.xQ x/j dt
jf .x/ Q f .x/j tD0
und daher rel D
kjf 0 .x/j jxjk1 : kf .x/k1
Auch die komponentenweise Kondition wollen wir für einige Probleme berechnen. Beispiel 2.14. Kondition der Multiplikation. Die Multiplikation zweier reeller Zahlen x; y wird durch die Abbildung f W R2 ! R;
.x; y/T 7! f .x; y/ D xy
beschrieben. Sie ist differenzierbar mit f 0 .x; y/ D .y; x/, und für die relative komponentenweise Kondition ergibt sich kjf 0 .x; y/j j.x; y/T jk1 jxyj D 2: D2 kf .x; y/k1 jxyj
rel D
Die Multiplikation ist daher noch gutkonditioniert zu nennen. Beispiel 2.15.PKondition des Skalarproduktes. Bei der Berechnung des Skalarproduktes hx; yi D niD1 xi yi gilt es, die Abbildung f W R2n ! R;
.x; y/ 7! hx; yi
an der Stelle .x; y/ auszuwerten. Da f differenzierbar ist mit f 0 .x; y/ D .y T ; x T /, folgt für die komponentenweise relative Kondition rel D
kj.y T ; x T /j j.x; y/jk1 hjxj; jyji : D2 khx; yik1 jhx; yij
Beispiel 2.16. Komponentenweise Kondition eines linearen Gleichungssystems (Skeelsche Kondition). Betrachten wir wie in Beispiel 2.7 das Problem .A1 ; b/ eines linearen Gleichungssystems mit b als Eingabegröße, so erhalten wir wegen L D jA1 j für die komponentenweise relative Kondition den Wert rel D
kjA1 j jbjk1 kjA1 j jbjk1 D : 1 kA bk1 kxk1
40
2 Fehleranalyse
Diese Zahl wurde von R. D. Skeel [88] eingeführt. Mit ihr lassen sich die Störungen Q durch xQ x; xQ D A1 b, kxQ xk1 rel " kxk1
für jbQ bj "jbj
abschätzen. Analog lassen sich die Überlegungen aus Beispiel 2.7 für Störungen in A übertragen. Wir wissen bereits, dass die Abbildung f W GL.n/ ! Rn , A 7! f .A/ D A1 b, differenzierbar ist mit f 0 .A/ C D A1 CA1 b D A1 C x
für C 2 Matn .R/:
Für die komponentenweise relative Kondition folgt daraus (siehe Aufgabe 2.14) rel D
kjf 0 .A/j jAjk1 kjA1 j jAj jxjk1 D : kf .A/k1 kxk1
Fassen wir die Ergebnisse zusammen und betrachten Störungen in A und b, so addieren sich die beiden relativen Konditionen auf, und wir erhalten die Kondition für das Gesamtproblem rel D
kjA1 j jAj jxj C jA1 j jbjk1 kjA1 j jAj jxjk1 2 : kxk1 kxk1
Setzen wir für x den Vektor e D .1; : : : ; 1/ ein, so ergibt sich eine Charakterisierung der komponentenweisen Kondition von Ax D b für alle möglichen rechten Seiten b 1 kjA1 j jAj jejk1 rel D kjA1 j jAjk1 2 kek1 mit der sogenannten Skeelschen Kondition C .A/ WD kjA1 j jAjk1
(2.4)
von A. Diese Kondition C .A/ erfüllt wie .A/ die Eigenschaften (i) bis (iii) aus Beispiel 2.7. Zusätzlich hat C .A/ die von uns eingangs intuitiv gewünschte Eigenschaft C .D/ D 1 für jede Diagonalmatrix D. Sie ist sogar invariant unter Zeilenskalierung, d. h. C .DA/ D C .A/; da j.DA/1 j jDAj D jA1 j jD 1 j jDj jAj D jA1 j jAj:
41
2.3 Stabilität eines Algorithmus
Beispiel 2.17. Komponentenweise Kondition eines nichtlinearen Gleichungssystems. Berechnen wir die komponentenweise Kondition des Problems .f 1 ; y/ eines nichtlinearen Gleichungssystems f .x/ D y, wobei f W Rn ! Rn wie in Beispiel 2.10 eine stetig differenzierbare Funktion ist, so folgt völlig analog rel D
kjf 0 .x/1 j jf .x/jk1 : kxk1
Der Ausdruck jf 0 .x/1 j jf .x/j ähnelt dabei stark dem Korrekturterm x D f 0 .x/1 f .x/ des Newton-Verfahrens zur Lösung eines nichtlinearen Gleichungssystems, das wir in Kapitel 4.2 kennenlernen werden.
2.3
Stabilität eines Algorithmus
Wir wenden uns in diesem Abschnitt der zweiten Gruppe von Fehlern zu, den Fehlern im Algorithmus. Die Abbildung f , die das gegebene Problem .f; x/ beschreibt, wird bei der numerischen Lösung durch eine Abbildung fQ realisiert. Diese Abbildung beinhaltet alle Rundungs- und Approximationsfehler und liefert anstelle von f .x/ ein gestörtes Resultat fQ.x/. Die Frage nach der Stabilität eines Algorithmus lautet nun: Ist das Resultat fQ.x/ anstelle von f .x/ akzeptabel ? Dazu müssen wir uns zunächst überlegen, wie wir die gestörte Abbildung fQ charakterisieren können. Wir haben oben gesehen, dass sich die Fehler bei der Ausführung einer Gleitkommaoperation ı 2 fC; ; ; =g durch aıO b D .a ı b/.1 C "/;
" D ".a; b/ mit j"j eps
(2.5)
abschätzen lassen. Dabei ist es natürlich wenig sinnvoll (wenn auch prinzipiell möglich), " D ".a; b/ für alle Werte a und b auf einem bestimmten Rechner zu bestimmen. Wir haben es insofern bei unserem Algorithmus nicht mit einer einzigen Abbildung fQ zu tun, sondern mit einer ganzen Klasse ffQg, die alle durch eine Abschätzung der Art (2.5) in den Zwischenschritten charakterisierten Abbildungen umfasst. Zu dieser Klasse gehört insbesondere auch das gestellte Problem f 2 ffQg. Die Abschätzung (2.5) des Fehlers einer Gleitkommaoperation hatten wir in Kapitel 2.1 nur für Maschinenzahlen hergeleitet. Da wir aber nur das Verhalten der ganzen Klasse von Abbildungen untersuchen wollen, können nun beliebige reelle Zahlen als Argumente zugelassen werden. Damit stehen uns die mathematischen Hilfsmittel der Analysis voll zur Verfügung. Unser Modell einer Algorithmus besteht also aus Abbildungen, die auf reellen Zahlen operieren und Abschätzungen der Form (2.5) genügen.
42
2 Fehleranalyse
Damit die Notation nicht unhandlich wird, bezeichnen wir die Familie ffQg ebenfalls mit fQ, d. h. fQ steht je nach Kontext für die ganze Familie oder für einen beliebigen Repräsentanten. Aussagen über einen solchen Algorithmus fQ (wie z. B. Fehlerabschätzungen) sind dementsprechend stets als Aussagen für alle Abbildungen der Familie zu interpretieren. Insbesondere definieren wir das Bild fQ.E/ einer Menge E als die Vereinigung [ .E/: fQ.E/ WD 2fQ
Es bleibt die Frage, wie wir die Fehler fQ.x/ f .x/ beurteilen wollen. Bei der Konditionsanalyse haben wir gesehen, dass die Eingabegrößen immer (zumindest bei Gleitkommazahlen) mit einem Eingabefehler behaftet sind, der durch die Kondition des Problems zu einem unvermeidbaren Fehler im Resultat führt. Wir können von unserem Algorithmus nicht erwarten, dass er mehr leistet als das Problem erlaubt. Daher sind wir zufrieden, wenn sich der durch den Algorithmus verursachte Fehler fQ.x/ f .x/ im Rahmen der Fehler f .x/ Q f .x/ bewegt, die durch Eingabefehler hervorgerufen werden. Um diese Überlegungen zu präzisieren, gibt es im Wesentlichen zwei Ansätze, die Vorwärtsanalyse und die Rückwärtsanalyse, die im Folgenden behandelt werden sollen.
2.3.1
Stabilitätskonzepte
Bei der Vorwärtsanalyse (engl.: forward analysis) analysieren wir die Menge RQ WD fQ.E/ aller durch Eingabefehler und Fehler im Algorithmus gestörten Resultate. Weil f 2 fQ ist, umfasst RQ insbesondere die Resultatmenge R D f .E/. Die Vergröße-
f
E
xQ
fQ
f .x/ Q RQ
R fQ.x/ Q
Abbildung 2.5. Eingabemenge und Resultatmengen bei der Vorwärtsanalyse
rung von R nach RQ kennzeichnet die Stabilität im Sinn der Vorwärtsanalyse. Ist RQ von der gleichen Größenordnung wie R, so nennen wir den Algorithmus stabil im Sinn der Vorwärtsanalyse.
43
2.3 Stabilität eines Algorithmus
Die Idee der von J. H. Wilkinson eingeführten Rückwärtsanalyse (engl.: backward analysis) besteht darin, die durch den Algorithmus verursachten Fehler auf die Eingabegrößen zurückzuspielen und so als zusätzliche Eingabefehler zu interpretieren. Dazu fassen wir die fehlerbehafteten Resultate yQ D fQ.x/ Q als exakte Ergebnisse yQ D f .x/ O zu gestörten Eingabegrößen xO auf. Dies gelingt offenbar nur, falls fQ.E/ im Bild von f liegt. Ist dies nicht der Fall, so ist eine Rückwärtsanalyse nicht möglich und der Algorithmus als instabil im Sinn der Rückwärtsanalyse anzusehen. Für nicht f fQ xO
yQ f
xQ E
R
f .x/ Q
EO Abbildung 2.6. Eingabemengen und Resultatmenge bei der Rückwärtsanalyse
injektive Abbildungen f wird es mehr als ein xO 2 f 1 .y/ Q geben. Im Konzept der Rückwärtsanalyse wählt man dasjenige Element xO mit der geringsten Abweichung von der Eingabe x, Q d. h. kxO xk Q D min : (Da f zumindest als stetig vorausgesetzt war, existiert mindestens ein solches x.) O Bilden wir die Menge ˚ EO WD xO W f .x/ O D fQ.x/ Q und kxO xk Q D min für ein xQ 2 E all dieser gestörten Eingabegrößen xO mit minimalem Abstand, so lässt sich jedes gestörte Resultat yQ 2 fQ.E/ als exaktes Ergebnis f .x/ O zu einer Eingabe xO 2 EO interpreO tieren. Das Verhältnis von E zur Eingabemenge E ist daher ein Maß für die Stabilität des Algorithmus im Sinn der Rückwärtsanalyse. Bei der nun folgenden quantitativen Beschreibung der Stabilität werden wir uns auf Rundungsfehler sowohl in der Eingabe als auch im Algorithmus beschränken und daher das relative Fehlerkonzept als adäquate Grundlage wählen.
2.3.2
Vorwärtsanalyse
Bei der Vorwärtsanalyse müssen wir den vom Algorithmus verursachten Fehler fQ.x/ f .x/ in Beziehung setzen zum unvermeidbaren Fehler, der sich nach Kapitel 2.2 durch das Produkt eps der relativen Kondition und des Eingabefehlers eps abschätzen lässt. Wir definieren daher einen Stabilitätsindikator als denjenigen Faktor, um den der Algorithmus den unvermeidbaren Fehler eps verstärkt.
44
2 Fehleranalyse
Definition 2.18. Sei fQ die Gleitkommarealisierung eines Algorithmus zur Lösung des Problems .f; x/ der relativen normweisen Kondition rel . Der Stabilitätsindikator der normweisen Vorwärtsanalyse ist die kleinstmögliche Zahl 0, so dass für alle xQ 2 E kfQ.x/ Q f .x/k Q P rel eps für eps ! 0: kf .x/k Q Analog ist der Stabilitätsindikator der komponentenweisen Vorwärtsanalyse die kleinstmögliche Zahl 0, so dass max i
jfQi .x/ Q fi .x/j Q P N rel eps jfi .x/j Q
für eps ! 0;
wobei N rel die komponentenweise relative Kondition von .f; x/ ist (siehe Bemerkung 2.13). Wir nennen den Algorithmus fQ stabil im Sinne der Vorwärtsanalyse, falls kleiner als die Anzahl der hintereinander ausgeführten Elementaroperationen ist. Lemma 2.19. Für die Elementaroperationen fC; ; ; = g und ihre GleitkommareaO ; O =O g gilt lisierungen fC; O ; 1: O ; O =O g gilt a ıO b D Beweis. Für jede elementare Gleitkommaoperation ıO 2 fC; O ; .a ı b/.1 C "/ für ein " mit j"j eps und daher j.a ı b/.1 C "/ a ı bj ja ıO b a ı bj D D j"j eps : ja ı bj ja ı bj
Beispiel 2.20. Subtraktion. Wir sehen insbesondere, dass im Fall der Auslöschung, 1, der Stabilitätsindikator sehr klein ist, 1. Die Subtraktion ist in diesem Fall also hervorragend stabil und bei totaler Auslöschung sogar fehlerfrei, a O b D a b. Bei der Berechnung des Stabilitätsindikators ist es vorteilhaft, zunächst Teilschritte des Algorithmus zu analysieren und aus diesen rekursiv auf die Stabilität des Gesamtalgorithmus zu schließen. Wir werden uns diesen Vorgang an der Zerlegung in zwei Schritte klarmachen. Dazu teilen wir das Problem .f; x/ auf in zwei Teilprobleme .g; x/ und .h; g.x//, wobei g
h
f D h ı g; Rn ! Rl ! Rn ; und gehen davon aus, dass die Stabilitätsindikatoren g ; h für zwei Teilalgorithmen gQ und hQ zur Realisierung von g bzw. h bekannt sind. Wie lässt sich daraus die Stabilität des zusammengesetzten Algorithmus fQ D hQ ı gQ WD f beurteilen?
ı W 2 g; Q
Q 2 hg
45
2.3 Stabilität eines Algorithmus
Lemma 2.21. Sowohl im norm- als auch im komponentenweise Konzept gilt für den Stabilitätsindikator f des zusammengesetzten Algorithmus fQ, dass f f h h C g g h :
(2.6)
Beweis. Wir führen den Beweis nur für das normweise Konzept aus. Seien gQ und hQ Q gQ sowie f D hıg. beliebige Repräsentanten der Algorithmen für g und h und fQ D hı Dann gilt Q g.x// kfQ.x/ f .x/k D kh. Q h.g.x//k Q g.x// P kh. Q h.g.x//k Q C kh.g.x// Q h.g.x//k kg.x/ Q g.x/k kh.g.x//k kg.x/k P h h eps kh.g.x//k Q C h g g eps kh.g.x//k P .h h C g g h / eps kf .x/k: P h h eps kh.g.x//k Q C h
Zusammen mit Lemma 2.19 können wir daraus bereits die Lehre ableiten (vgl. Seite 34): Unvermeidbare Subtraktionen möglichst an den Anfang des Algorithmus stellen! Denn da für jede Elementaroperation 1 gilt, droht Gefahr für die Stabilität der zusammengesetzten Abbildung f D hıg nur, falls es sich bei der zweiten Abbildung h um eine Subtraktion handelt, so dass h 1. Ein Beispiel dafür ist die Berechnung der Varianz, siehe Aufgabe 2.16. Wir analysieren nun durch die rekursive Anwendung der Formel (2.6) die Gleitkommarealisierungen der Summation von n reellen Zahlen und das Skalarprodukt. Beispiel 2.22. Summation. Der einfachste Algorithmus für die Summe sn W Rn ! R;
.x1 ; : : : ; xn / 7!
n X
xi
iD1
ist ihre rekursive Berechnung gemäß sn D sn1 ı ˛n für n > 2 und s2 D ˛2 , wobei ˛n W Rn ! Rn1 ;
.x1 ; : : : ; xn / 7! .x1 C x2 ; x3 ; : : : ; xn /
die Addition der ersten beiden Komponenten bezeichnet. Wir wollen diesen „Algorithmus“ komponentenweise untersuchen. Konditionszahl und Stabilitätsindikator von ˛n stimmen mit denen der Addition zweier Zahlen überein, d. h. ˛n D C und ˛n D C . Mit den Bezeichnungen j WD sj und j WD sj gilt nach Lemma 2.21, dass n n .n1 C C C /n1 .1 C n1 /n1 :
46
2 Fehleranalyse
Für die Konditionen n gilt nach Beispiel 2.3, dass Pn Pn jx j C jx1 C x2 j jxi j i D1 ˇ 1 und n1 D iD3 ˇPi n ˇ n D ˇPn n ˇ ˇ ˇ ˇ i D1 xi iD1 xi und daher n 1 C n1 . Da 2 D C 1=C 1, erhalten wir für den Stabilitätsindikator n n 1: Bei den benötigten n 1 Elementaroperationen ist der naive Algorithmus zur Summenbildung also numerisch stabil. Beispiel 2.23. Ausführung des Skalarproduktes. Die Berechnung des Skalarproduktes f .x; y/ D hx; yi für x; y 2 Rn unterteilen wir in die komponentenweise Multiplikation p W Rn Rn ! Rn ; ..xi /; .yi // 7! .xi yi /; gefolgt von der im letzten Beispiel analysierten Summenbildung, f D sn ı p. Nach Lemma 2.21 gilt zusammen mit Lemma 2.19 und der Abschätzung des Stabilitätsindikators n im letzten Beispiel, dass f f .n C p p /n .1 C n /n nn und daher
ˇ ı ˇPn Pn ˇ ˇ n iD1 jxi yi j iD1 xi yi ˇPn ˇ D n=2: D n Pn f n f 2 iD1 jxi yi j= ˇ iD1 xi yi ˇ
(2.7)
Bei 2n 1 Elementaroperationen ist dieser Algorithmus für das Skalarprodukt also numerisch stabil. Tatsächlich erweist sich diese Abschätzung in der Regel als zu pessimistisch. Häup fig ist anstelle des Faktors n in (2.7) eher n zu beobachten. Bemerkung 2.24. In manchen Rechnern gibt es eine „Skalarproduktfunktion“ mit variabler Mantissenlänge, das sogenannte Dot-Produkt ˇ. Hierbei werden die Mantissen derart verlängert, dass die Addition in Festkommaarithmetik ausgeführt werden kann. Damit lässt sich die gleiche Stabilität wie bei der Addition erreichen, d. h. 1. Im Folgenden wollen wir uns ansehen, wie sich die Vorwärtsanalyse bei skalaren Funktionen durchführen lässt. In diesem Spezialfall ergibt sich eine Vereinfachung von Lemma 2.21. Lemma 2.25. Sind die Funktionen g und h aus Lemma 2:21 skalar und differenzierbar, so gilt für den Stabilitätsindikator f des zusammengesetzten Algorithmus fQ D hQ ı g, Q dass h f C g : g
47
2.3 Stabilität eines Algorithmus
Beweis. In diesem Spezialfall ist die Kondition des Gesamtproblems das Produkt der Teilkonditionen, da f D
jg.x/j jh0 .g.x//j jg 0 .x/j jxj jxjjf 0 .x/j D D h g : jf .x/j jh.g.x//j jg.x/j
Aus Lemma 2.21 folgt daher f h g h h C g h g :
Ist die Kondition g des ersten Teilproblems sehr klein, g 1, so wird also der Algorithmus instabil. Eine kleine Kondition lässt sich auch als Informationsverlust interpretieren: Eine Änderung der Eingabe hat so gut wie keinen Einfluss auf das Resultat. Ein solcher Informationsverlust zu Anfang des Algorithmus hat daher Instabilität zur Folge. Des Weiteren sehen wir, dass eine Instabilität zu Beginn des Algorithmus (großes g ) voll auf den Gesamtalgorithmus durchschlägt. Als Beispiel dazu analysieren wir eine rekursive Methode zur Berechnung von cos mx mit einem Zwischenresultat vorab. Beispiel 2.26. Für die Abbildung f .x/ D cos x gilt abs D sin x
und
rel D x tan x:
: Für x ! 0 ergibt sich also rel D x 2 ! 0. Die Auswertung der Abbildung alleine ist für kleine x extrem gutkonditioniert. Wird jedoch die Information von x anschließend noch weiter benötigt, so ist sie durch diesen Zwischenschritt unzugänglich geworden. Wir werden darauf im folgenden Beispiel zurückkommen. Beispiel 2.27. Wir sind nun soweit, die rekursive Berechnung von cos mx analysieren zu können. Sie ist z. B. von Bedeutung in der Fourier-Synthese, d. h. der Auswertung trigonometrischer Polynome der Form N X
f .x/ D
ak cos kx C bk sin kx:
kD1
Aufgrund des Additionstheorems cos.k C 1/x D 2 cos x cos kx cos.k 1/x lässt sich cm WD f .x/ WD cos mx mit Hilfe einer Drei-Term-Rekursion ckC1 D 2 cos x ck ck1
für k D 1; 2; : : :
(2.8)
aus den Werten c0 D 1 und c1 D cos x berechnen. Ist dies ein stabiler Algorithmus? Die entscheidende Stelle ist offensichtlich die Auswertung von g.x/ WD cos x, die
48
2 Fehleranalyse
in jeden Schritt der Drei-Term-Rekursion eingeht. Wir haben in Beispiel 2.26 bereits gesehen, dass für kleine x bei der Auswertung von cos x Information verloren geht und dies zu Instabilitäten führen kann. In den zugehörigen Stabilitätsindikator geht in jeden Summanden der Faktor ˇ g.x/ ˇ ˇ 1 ˇ 1 ˇ ˇ ˇ ˇ Dˇ 0 ˇDˇ ˇ .x/ g .x/x x tan x ein. Da 1 1 ! 2 ! 1 .x/ x 1 1 x ! ) ! ! 1; .x/ .x / x ! 0 )
ist die Rekursion in den beiden Grenzfällen x ! 0, instabil, wobei der erste Fall x ! 0 der kritischere ist. Berechnen wir bei einer relativen Maschinengenauigkeit eps D 5 1012 den Wert cos mx für m D 1240 und x D 104 gemäß (2.8), so ergibt sich zum Beispiel ein relativer Fehler von 108 . Bei einer Kondition von D jmx tan mxj 1:5 102 folgt > 1:3 105 , d. h. die Berechnung ist offensichtlich instabil. Es gibt jedoch eine stabile Rekursion zur Berechnung von cos mx für kleine x, die von C. Reinsch [81] entwickelt wurde. Dabei führt man die Differenzen ck WD ckC1 ck ein und transformiert die Drei-Term-Rekursion (2.8) in ein System von zwei Zwei-TermRekursionen ck D 4 sin2 .x=2/ ck C ck1 ckC1 D ck C ck für k D 1; 2; : : : mit den Startwerten c0 D 1 und c0 D 2 sin2 .x=2/. Die Auswertung von h.x/ WD sin2 .x=2/ ist wegen ˇ ˇ ˇ ˇ ˇ h.x/ ˇ ˇ tan.x=2/ ˇ 1 ˇ ˇ ˇ ˇ ! 1 für x ! 0 Dˇ Dˇ 0 ˇ ˇ .h; x/ h .x/x x 2 stabil für kleine x 2 Œ=2; =2. Bei obigem Zahlenbeispiel ergibt die Anwendung dieser Rekursion eine deutlich bessere Lösung mit einem relativen Fehler von 1:5 1011 . Analog lässt sich auch die Rekursion für x ! stabilisieren. Nebenbei sei bemerkt: Diese Stabilisierung führt nur deshalb zu brauchbaren numerischen Resultaten, weil die Drei-Term-Rekursion (2.8) gutkonditioniert ist – zu Details siehe Kapitel 6.2.1.
49
2.3 Stabilität eines Algorithmus
2.3.3
Rückwärtsanalyse
Bei der quantitativen Beschreibung der Rückwärtsanalyse nach J. H. Wilkinson müssen wir den auf die Eingabeseite zurückgespielten Fehler des Algorithmus in Beziehung setzen zum Eingabefehler. Definition 2.28. Der normweise Rückwärtsfehler des Algorithmus fQ zur Lösung des Problems .f; x/, ist die kleinste Zahl 0, für die für alle xQ 2 E ein xO existiert, so dass kxO xk Q P für eps ! 0: kxk Q Der komponentenweise Rückwärtsfehler ist analog definiert, wobei die Ungleichung durch jxO i xQ i j P für eps ! 0 max i jxQ i j zu ersetzen ist. Der Algorithmus heißt stabil bezüglich des relativen Eingabefehlers ı, falls < ı: Für den durch Rundung verursachten Eingabefehler ı D eps definieren wir den Stabilitätsindikator der Rückwärtsanalyse als Quotienten R WD = eps : Wie wir sehen, taucht in der Definition die Kondition des Problems nicht auf. Die Rückwärtsanalyse benötigt also im Gegensatz zur Vorwärtsanalyse keine vorhergehende Konditionsanalyse des Problems. Ferner sind die Ergebnisse leicht durch den Vergleich von Eingabefehler und Rückwärtsfehler zu interpretieren. Dank dieser Eigenschaften ist die Rückwärtsanalyse insbesondere bei komplexeren Algorithmen vorzuziehen. Die im nächsten Abschnitt zusammengestellten Stabilitätsresultate für die Gauß-Elimination beziehen sich daher alle auf den Rückwärtsfehler. Die beiden Stabilitätsindikatoren und R sind im Allgemeinen nicht identisch. Vielmehr ist die Rückwärtsanalyse das strengere Konzept zur Beurteilung der Stabilität einer Algorithmus, wie das folgende Lemma zeigt. Lemma 2.29. Für die Stabilitätsindikatoren und R der Vorwärts- bzw. Rückwärtsanalyse gilt R : Insbesondere folgt aus der Rückwärtsstabilität die Vorwärtsstabilität. Beweis. Aufgrund der Definition des Rückwärtsfehlers gibt es zu jedem xQ 2 E ein x, O Q so dass f .x/ O D f .x/ Q und kxO xk Q P D R eps kxk Q
für eps ! 0:
50
2 Fehleranalyse
Daraus folgt für den relativen Fehler im Resultat, dass kf .x/ O f .x/k Q kxO xk Q kfQ.x/ Q f .x/k Q P P R eps D kf .x/k Q kf .x/k Q kxk Q für eps ! 0.
Als Beispiel für die Rückwärtsanalyse sehen wir uns noch einmal das Skalarprodukt hx; yi für x; y 2 Rn in seiner Gleitkommarealisierung an. Wir benutzen diesmal die rekursive Berechnung gemäß hx; yi WD xn yn C hx n1 ; y n1 i;
(2.9)
wobei x n1 WD .x1 ; : : : ; xn1 /T
und
y n1 WD .y1 ; : : : ; yn1 /T :
In dieser Form findet es sich meistens auf sequentiell arbeitenden Rechnern. Wir konzentrieren uns auf die Stabilität bezüglich der Eingabe x, da wir diese in Kapitel 2.4.2 für die Analyse der Rückwärtssubstitution benötigen. Lemma 2.30. Die Gleitkommarealisierung des Skalarproduktes gemäß .2:9/ berechnet für x; y 2 Rn eine Lösung hx; yifl , so dass O yi hx; yifl D hx; für ein xO 2 Rn mit
P n eps jxj; jx xj O
d. h., der relative komponentenweise Rückwärtsfehler beträgt n eps und das Skalarprodukt ist .bei 2n 1 Elementaroperationen/ stabil im Sinne der Rückwärtsanalyse. Beweis. Die rekursive Formulierung (2.9) des Algorithmus inspiriert natürlich einen induktiven Beweis. Für n D 1 ist die Behauptung klar. Sei also n > 1 und die Behauptung für n 1 bereits bewiesen. Für die Gleitkommarealisierung der Rekursion (2.9) gilt hx; yifl D .xn yn .1 C ı/ C hx n1 ; y n1 ifl /.1 C "/; wobei ı und " mit jıj; j"j eps die relativen Fehler der Multiplikation bzw. Addition charakterisieren. Ferner gilt nach Induktionsvoraussetzung, dass hx n1 ; y n1 ifl D hz; y n1 i
2.4 Anwendung auf lineare Gleichungssysteme
51
für ein z 2 Rn1 mit jx n1 zj .n 1/ eps jx n1 j: Setzen wir daher xO n WD xn .1 C ı/.1 C "/ und xO k WD zk .1 C "/ für k D 1; : : : ; n 1, so folgt hx; yi D xn yn .1 C ı/.1 C "/ C hz.1 C "/; yi D xO n yn C hxO n1 ; yi D hx; O yi; P 2 eps jxn j n eps jxn j und wobei jxn xO n j P .n 1/ eps jxk j C eps jxO k j P n eps jxk j jxk xO k j jxk zk j C jzk xO k j P n eps jxj. für k D 1; : : : ; n 1, also jx xj O
Bemerkung 2.31. Spielen wir die Fehler auf x und y gleichermaßen verteilt zurück, so ergibt sich wie bei der Vorwärtsanalyse für den Stabilitätsindikator R n=2.
2.4
Anwendung auf lineare Gleichungssysteme
Die obigen Konzepte für Kondition und Stabilität werden im Folgenden im Kontext der linearen Gleichungssysteme nochmals diskutiert und vertieft.
2.4.1
Lösbarkeit unter der Lupe
Wir stellen uns hier wie bereits in Kapitel 1.2 nochmals die Frage: Wann ist ein lineares Gleichungssystem Ax D b lösbar? Im Unterschied zu Kapitel 1.2, wo wir diese Frage auf der fiktiven Basis der reellen Zahlen beantwortet hatten, wollen wir hier die oben hergeleitete Fehlertheorie heranziehen. Entsprechend wird die charakteristische Größe det A durch Konditionszahlen zu ersetzen sein. Aus Kapitel 2.2.1 wiederholen wir das Resultat kxQ xk P rel ı; (2.10) kxk wobei ı der relative Eingabefehler von A (oder b) ist. Als Resultat für die relative Kondition erhielten wir bei normweiser Betrachtung rel D kA1 k
kAxk kA1 kkAk D .A/ kxk
und bei komponentenweiser Betrachtung rel D
kjA1 j jAj jxjk1 kjA1 j jAjk1 D C .A/: kxk1
52
2 Fehleranalyse
Wie wir in Beispiel 2.7 gesehen haben, gilt für eine Matrix A 2 Matn .R/, die nicht die Nullmatrix ist, dass det A D 0 ” .A/ D 1:
(2.11)
Falls .A/ < 1, wäre also das lineare Gleichungssystem für jede rechte Seite im Prinzip eindeutig lösbar. Andererseits lässt (2.10) nur ein numerisch brauchbares Resultat erwarten, falls rel ı hinreichend klein ist. Darüber hinaus haben wir gesehen, dass eine Punktbedingung vom Typus (2.11) schon deshalb nicht sinnvoll ist, weil wir anstelle einer einzelnen Matrix A die Menge aller von A nicht zu unterscheidenden Matrizen, also z. B. E WD fAQ W kAQ Ak ıkAkg zu betrachten haben. Es bietet sich deshalb an, eine Matrix A mit der relativen Genauigkeit ı „fast singulär“ oder „numerisch singulär“ zu nennen, falls die zugehörige Eingabemenge mindestens eine (exakt) singuläre Matrix enthält. Dies führt uns zu der folgenden Definition: Definition 2.32. Eine Matrix A heißt fast singulär oder numerisch singulär bzgl. der Kondition .A/, falls ı.A/ 1; wobei ı die relative Genauigkeit der Matrix A ist. Für die Rundungsfehler bei der Eingabe von A in einen Rechner nehmen wir z. B. an, dass ı D eps. Bei experimentellen Daten ist ı entsprechend deren Genauigkeit meist größer anzusetzen. Es sei jedoch ausdrücklich darauf hingewiesen, dass lineare Gleichungssysteme mit fast singulärer Matrix dennoch numerisch „gutartig“ sein können – was sich ja auch an der x-Abhängigkeit der Kondition rel ablesen lässt. Beispiel 2.33. Als Beispiel betrachten wir das Gleichungssystem Ax D b1 , 0 1 2 3 2 1 1 5 ; b1 WD @ A ; A WD 4 " 0 " wobei wir 0 < " 1 als Eingabe auffassen. Die Matrix A und die rechte Seite b1 haben den gemeinsamen Eingabewert "; sie sind miteinander verkoppelt. Daher ist die Kondition der Matrix 1 .A/ D kA1 k1 kAk1 D 1 " nicht aussagekräftig für die Lösung des Problems .f1 ; "/, 0 1 1 f1 ."/ D A1 b1 D @ A : 1
53
2.4 Anwendung auf lineare Gleichungssysteme
Die Lösung ist sogar unabhängig von ", d. h. f10 ."/ D 0, und somit ist das Problem für alle " (relativ und absolut) gutkonditioniert. Betrachten wir jedoch eine von " unabhängige rechte Seite b2 WD .0; 1/T , so erhalten wir die Lösung 0 1 1=" f2 ."/ D A1 b2 D x2 D @ A 1=" und die komponentenweisen Konditionen abs D kf20 ."/k D
1 "2
und
rel D
kjf20 ."/j j"jk D 1: kf2 ."/k
In diesem Fall ist nur noch die Richtung der Lösung gutkonditioniert, was sich in der relativen Kondition widerspiegelt. Eine derartige Situation wird uns in den Kapiteln 3.1.2 und 5.2 wieder begegnen.
2.4.2
Rückwärtsanalyse der Gauß-Elimination
Wir haben in Lemma 2.30 bereits gesehen, dass die Berechnung des Skalarproduktes f .x; y/ D hx; yi in Gleitkommaarithmetik stabil im Sinn der Rückwärtsanalyse ist. Die von uns im ersten Kapitel besprochenen Algorithmen zur Lösung eines linearen Gleichungssystems Ax D b erfordern im Einzelnen nur die Auswertung von Skalarprodukten bestimmter Zeilen und Spalten von Matrizen, so dass sich auf der Grundlage dieser Überlegung eine Rückwärtsanalyse des Gaußschen Eliminationsverfahrens durchführen lässt. Mit der Komplexität des Algorithmus steigt allerdings auch der beweistechnische Aufwand für die Rückwärtsanalyse, die wir daher noch für die Vorwärtssubstitution explizit nachvollziehen, während wir für die Gaußsche Dreieckszerlegung nur die Ergebnisse angeben, die im Wesentlichen in den Büchern [100] und [101] von J. H. Wilkinson zu finden sind. Eine sehr schöne Übersicht bietet auch der Artikel [58] von N. J. Higham. Satz 2.34. Die Gleitkommarealisierung der Vorwärtssubstitution zur Lösung eines gestaffelten Gleichungssystems Lx D b berechnet ein Lösung x, O so dass es eine untere Dreiecksmatrix LO gibt mit LO xO D b
und
O P n eps jLj; jL Lj
d. h., für den komponentenweisen relative Rückwärtsfehler gilt n eps und die Vorwärtssubstitution ist stabil im Sinne der Rückwärtsanalyse. Beweis. Der Algorithmus für die Vorwärtssubstitution lässt sich wie beim Skalarprodukt (siehe Lemma 2.30) rekursiv formulieren: lkk xk D bk hl k1 ; x k1 i
(2.12)
54
2 Fehleranalyse
für k D 1; : : : ; n, wobei x k1 D .x1 ; : : : ; xk1 /T
und
l k1 D .lk1 ; : : : ; lk;k1 /T :
Realisiert in Gleitkomma-Arithmetik ergibt sich aus (2.12) die Rekursion lkk .1 C ık /.1 C "k /xO k D bk hl k1 ; xO k1 ifl ; wobei die ık und "k mit jık j; j"k j eps die relativen Fehler der Multiplikation bzw. Addtition beschreiben. Über die Gleitkommarealisierung des Skalarproduktes wissen wir nach Lemma 2.30 bereits, dass hl k1 ; xO k1 ifl D hlOk1 ; xO k1 i für einen Vektor lOk1 D .lOk1 ; : : : ; lOk;k1 /T mit jl k1 lOk1 j .k 1/ eps jl k1 j: Setzen wir also noch lOkk WD lkk .1 C ık /.1 C "k /, so gilt wie behauptet O Db Lx
und
O n eps jLj: jL Lj
Als erstes Resultat zur Rückwärtsanalyse der Gauß-Elimination beurteilen wir die Qualität der LR-Zerlegung. Lemma 2.35. A besitze eine LR-Zerlegung. Dann berechnet die Gauß-Elimination LO O so dass und R, LO RO D AO für eine Matrix AO mit
O O jRj O eps : P njLj jA Aj
Beweis. Einen einfachen induktiven Beweis für die abgeschwächte Aussage mit 4n anstelle von n findet man in dem Buch von Golub und van Loan [47], Theorem 3.3.1. Die folgende Abschätzung des komponentenweisen Rückwärtsfehlers der GaußElimination wurde von Sautter [86] bewiesen. Die abgeschwächte Aussage mit 3n anstelle von 2n folgt leicht aus Satz 2.34 und Lemma 2.35. Satz 2.36. A besitze eine LR-Zerlegung. Dann berechnet das Gaußsche Eliminationsverfahren für das Gleichungssystem Ax D b eine Lösung xO mit AOxO D b für eine Matrix AO mit
O O jRj O eps : P 2njLj jA Aj
2.4 Anwendung auf lineare Gleichungssysteme
55
Daraus können wir die folgende Aussage über den normweisen Rückwärtsfehler der Gauß-Elimination mit Spaltenpivoting ableiten, die auf Wilkinson zurückgeht. Satz 2.37. Die Gauß-Elimination mit Spaltenpivoting für das Gleichungssystem Ax D b berechnet ein x, O so dass AOxO D b für eine Matrix AO mit O 1 kA Ak P 2n3 n .A/ eps; kAk1 wobei
n .A/ WD
˛max maxi;j jaij j
und ˛max der größte Betrag ˛max eines Elementes ist, welcher im Laufe der Elimination in den Restmatrizen A.1/ D A bis A.n/ D R auftritt. Beweis. Wir bezeichnen die im Laufe der Gauß-Elimination mit Spaltenpivoting O RO und x. PA D LR berechneten Größen mit PO , L, O Dann besitzt PO A eine LRO Zerlegung und nach Satz 2.36 gibt es eine Matrix A, so dass AOxO D b und O jRj O eps : O P 2n PO T jLj jA Aj Wenden wir darauf die Suprenumnorm an, folgt wegen kPO k1 D 1, dass O 1 O 1 kRk O 1 eps : P 2n kLk kA Ak
(2.13)
Die Spaltenpivotstrategie sorgt dafür, dass alle Komponenten von LO vom Betrag kleiner oder gleich eins sind, d. h. O 1 n: kLk Die Norm von RO können wir abschätzen durch O 1 n max jrOij j n ˛max : kRk i;j
Die Behauptung folgt daher aus (2.13), da maxi;j jaij j kAk1 .
Wie steht es also um die Stabilität der Gauß-Elimination? Diese Frage lässt sich nach Satz 2.37 nicht eindeutig beantworten. Es hängt offenbar von der Zahl n .A/ ab, ob sich die Matrix für die Gauß-Elimination eignet oder nicht. Im Allgemeinen lässt sich diese Größe nur durch
n .A/ 2n1
56
2 Fehleranalyse
abschätzen, wobei diese Abschätzung scharf ist, da die Grenze für die von Wilkinson angegebene (pathologische) Matrix 2 3 1 1 6 7 :: 7 6 : 6 1 : : :7 7 AW D 6 6 :: : : :: 7 :: 6 : 7 : : : 4 5 1 : : : 1 1 angenommen wird (siehe Aufgabe 2.20). Die Gauß-Elimination mit Spaltenpivoting ist also über die ganze Menge der invertierbaren Matrizen betrachtet nicht stabil. Für spezielle Klassen von Matrizen sieht die Situation jedoch wesentlich besser aus. Wir haben in Tabelle 2.1 einige Klassen von Matrizen und die zugehörigen AbschätzunSpaltenpivoting
n
invertierbar
ja
2n1
obere Hessenberg-Matrix
ja
n
überflüssig
2
ja
2
nein
1
ja
n2=3 (im Mittel)
Art der Matrix
A oder AT strikt diagonaldominant tridiagonal symmetrisch positiv definit Statistik
Tabelle 2.1. Stabilität der Gauß-Elimination für spezielle Matrizen
gen für n aufgelistet. So ist die Gauß-Elimination für symmetrisch positiv definite (Cholesky-Verfahren) ebenso wie für strikt diagonaldominante Matrizen, d. h. jai i j >
n X
jaij j
für i D 1; : : : ; n,
j D1 i¤j
stabil. Ferner kann man mit gutem Gewissen behaupten, dass die Gauß-Elimination „in der Regel“, d. h. für üblicherweise in der Praxis auftretende Matrizen, stabil ist. Diese Aussage wird auch von statistischen Überlegungen gestützt, die L. N. Trefethen und R. S. Schreiber [96] durchgeführt haben (siehe die letzte Zeile in Tabelle 2.1).
2.4.3
Beurteilung von Näherungslösungen
Wir nehmen nun an, dass wir zu einem gegebenen linearen Gleichungssystem Ax D b eine Näherungslösung xQ vorliegen haben, und wollen die Frage beantworten: Wie gut
2.4 Anwendung auf lineare Gleichungssysteme
57
ist eine Näherungslösung xQ des Problems Ax D b? Nun ist die Tatsache, dass x exakte Lösung der linearen Gleichung Ax D b ist, gleichbedeutend damit, dass das Residuum verschwindet, d. h. r.x/ WD b Ax D 0: Von einer „guten“ Näherungslösung xQ wird man daher verlangen, dass das Residuum r.x/ Q möglichst „klein“ ist. Die Frage ist nur: Wie klein ist „klein“? Bei der Suche nach einer vernünftigen Grenze stoßen wir auf das Problem, dass die Norm kr.x/k Q durch eine Zeilenskalierung Ax D b ! .Dz A/x D Dz b beliebig verändert werden kann, obwohl das Problem selbst dadurch nicht verändert wird. Dies lässt sich auch an der Invarianz der Skeelschen Kondition C .A/ bezüglich Zeilenskalierung ablesen. Das Residuum kann daher höchstens dann zur Beurteilung der Näherungslösung xQ herangezogen werden, wenn es eine problemspezifische Bedeutung besitzt. Besser geeignet ist das Konzept des Rückwärtsfehlers, wie wir es in Definition 2.28 kennengelernt haben. Für eine Näherungslösung xQ eines linearen Gleichungssystems lassen sich die normweisen und komponentenweisen Rückwärtsfehler direkt angeben. Satz 2.38. Der normweise relative Rückwärtsfehler einer Näherungslösung xQ eines linearen Gleichungssystems f .A; b/ D f 1 b bzgl. k.A; b/k WD kAk C kbk ist N .x/ Q D
kAxQ bk : kAkkxk Q C kbk
Beweis. Siehe J. L. Rigal und J. Gaches [82].
Der folgende Satz geht auf W. Prager und W. Oettli [79] zurück. Satz 2.39. Der komponentenweise relative Rückwärtsfehler einer Näherungslösung xQ von Ax D b ist jAxQ bji Q D max : (2.14) C .x/ i .jAj jxj Q C jbj/i Beweis. Es ist Q jAQ Aj wjAj und jbQ bj wjbjg: Q bQ mit AQxQ D b, C D minfw j es gibt A; Wir setzen ‚ WD max i
jr.x/j Q i . jAj jxj Q C ıb/i
58
2 Fehleranalyse
und haben zu zeigen, dass C .x/ Q D ‚. Die eine Hälfte der Aussage, ıC .x/ Q ‚, Q Q folgt aus der Tatsache, dass für jede Lösung A; b; w gilt Q xQ .bQ b/j jA Aj Q jxj jAxQ bj D j.A A/ Q jbQ bj w.jAj jxj Q jbj/; Q ‚, schreiben wir das und daher w ‚. Für die andere Hälfte der Aussage, ıC .x/ Residuum rQ D b AxQ als rQ D D.jAj jxj Q C jbj/ mit D D diag.d1 ; : : : ; dn /, wobei di D
rQi ‚: .jAj jxj Q C jbj/i
Setzen wir nun AQ WD A C DjAj diag.sgn.x// Q so gilt
jAQ Aj ‚jAj;
und
bQ WD b Djbj;
jbQ bj ‚jbj
und AQxQ bQ D AxQ C DjAjjxj Q b C Djbj D rQ C D.jAj jxj Q C jbj/ D 0:
Bemerkung 2.40. Die Formel (2.14) für den Rückwärtsfehler ist in der Praxis natürlich nur brauchbar, wenn die Fehler, die bei ihrer Auswertung entstehen, an der Aussagekraft des Ergebnisses nichts ändern. Von Skeel wurde gezeigt, dass sich der in Gleitkomma-Arithmetik berechnete Rückwärtsfehler Q von dem tatsächlichen Wert um höchstens n eps unterscheidet. Die Formel (2.14) kann also wirklich zur Beurteilung einer Näherungslösung xQ herangezogen werden. Wir haben in Kapitel 1.2 die Nachiteration als Möglichkeit der „Verbesserung“ von Näherungslösungen kennengelernt. Wie effektiv die Nachiteration arbeitet, zeigt das folgende Resultat von R. D. Skeel [89]. Für die Gauß-Elimination impliziert bereits eine Nachiteration die komponentenweise Stabilität. Satz 2.41. Falls
Kn C .A1 / .A; x/ eps < 1;
wobei C .A1 / D kjAj jA1 jk1 die Skeelsche Kondition und .A; x/ WD
maxi .jAjjxj/i mini .jAjjxj/i
und Kn eine Konstante nahe n ist, so hat die Gauß-Elimination mit Spaltenpivotsuche und einer Nachiteration einen komponentenweisen Stabilitätsindikator n C 1; d. h., diese Form der Gauß-Elimination ist stabil.
59
Übungsaufgaben
Die Größe .A; x/ ist dabei ein Maß für die Güte der Skalierung des Problems (siehe [89]). Beispiel 2.42. Beispiel von Hamming. 2 0 3 1 3 2 1 3 C 3" 6 B 7 C 6 B 7 C A D 62 2" 2" 7 ; b D B 6" C ; 4 @ 5 A 1 2" " 2"
0 1 " B C B C x D B1C : @ A 1
Wir setzen für " die relative Maschinengenauigkeit, hier " WD eps D 3 1010 , ein. Für die Skeelsche Kondition erhalten wir rel D
kjA1 j jAj jxj C jA1 j jbjk1 : D 6; kxk1
d. h., dieses Gleichungssystem ist gutkonditioniert. Bei der Gauß-Elimination mit Spaltenpivotsuche berechnen wir die Lösung xQ D x0 D .6:20881717 1010 ; 1; 1/T mit dem komponentenweisen Rückwärtsfehler (nach Satz 2.39) .x0 / D 0:15. An der Größe .A; x/ D 2:0 109 können wir ablesen, dass das Problem extrem schlecht skaliert ist. Mit einer Nachiteration erhalten wir trotzdem die Lösung x1 D x mit dem berechneten Rückwärtsfehler .x1 / D 1 109 .
Übungsaufgaben O in Gleitkommaarithmetik Aufgabe 2.1. Zeigen Sie, dass die Elementaroperation C nicht assoziativ ist. Aufgabe 2.2. Bestimmen Sie mit einem kurzen Testprogramm die relative Maschinengenauigkeit des von Ihnen benutzten Rechners. Aufgabe 2.3. Gesucht sei die Nullstelle des kubischen Polynoms z 3 C 3qz 2r D 0;
r; q > 0:
Nach Cardano-Tartaglia ist ein reelle Wurzel gegeben durch 13 13 q q C r q3 C r 2 : z D r C q3 C r 2 Diese Formel ist numerisch ungünstig, da zwei Kubikwurzeln berechnet werden müssen und für r ! 0 Totalauslöschung auftritt. Geben Sie eine auslöschungsfreie Form für z an, welche nur die Berechnung einer Kubik- und einer Quadratwurzel erfordert.
60
2 Fehleranalyse
Aufgabe 2.4. Die Nullstellenbestimmung von Polynomen in Koeffizientendarstellung ist im Allgemeinen ein schlechtkonditioniertes Problem. Zur Illustration betrachte man das folgende Polynom: P .x/ D x 4 4x 3 C 6x 2 4x C a;
a D 1:
Wie ändern sich die Nullstellen xi von P , wenn der Koeffizient a zu aN WD a ", 0 < " eps, verfälscht wird? Man gebe die Kondition des Problems an. Auf wie viele Stellen genau ist die Lösung bei einer relativen Maschinengenauigkeit von eps D 1016 berechenbar? Aufgabe 2.5. Bestimmen Sie ˛D
1C 1
1 2n 1 2n
!n
1 e 1C 12n2
>0
für n D 106 auf drei Stellen genau. Aufgabe 2.6. Berechnen Sie die Kondition der Auswertung eines durch die Koeffizienten a0 ; : : : ; an gegebenen Polynoms p.x/ D an x n C an1 x n1 C C a1 x C a0 an der Stelle x zum einen bezüglich Störungen ai ! aQ i D ai .1 C "i / der Koeffizienten und zum anderen bezüglich Störungen x ! xQ D x.1 C "/ von x. Betrachten Sie insbesondere das Polynom p.x/ D 8118x 4 11482x 3 C x 2 C 5741x 2030 an der Stelle x D 0:707107. Das „exakte“ Resultat ist p.x/ D 1:9152732527082 1011 : Ein Rechner liefere p.x/ Q D 1:9781509763561 1011 : Beurteilen Sie die Lösung anhand der Kondition des Problems. Aufgabe 2.7. Seien k k1 und k k2 Normen auf dem Rn bzw. Rm . Zeigen Sie, dass durch kAxk2 kAk WD sup x¤0 kxk1 eine Norm auf dem Raum Matm;n .R/ der reellen .m; n/ Matrizen definiert wird.
61
Übungsaufgaben
Aufgabe 2.8. Die p-Normen auf dem Rn sind für 1 p < 1 definiert durch kxkp WD
n X
jxi jp
p1
iD1
und für p D 1 durch kxk1 WD max jxi j: iD1;:::;n
Zeigen Sie für die zugeordneten Matrixnormen kAxkp x¤0 kxkp
kAkp WD sup die folgenden Aussagen: a) kAk1 D maxj D1;:::;n
Pm
i D1 jaij j,
Pn
b) kAk1 D maxi D1;:::;m p c) kAk2 kAk1 kAk1 ,
j D1 jaij j,
d) kABkp kAkp kBkp für 1 p 1. Aufgabe 2.9 (Spektralnorm und Frobeniusnorm). Sei A 2 Matn .R/. a) Zeigen Sie, dass kAk2 D kAT k2 . p b) Zeigen Sie, dass kAkF D tr.AT A/ D k.A/k2 , wobei .A/ D .1 ; : : : ; n /T der Vektor der Singulärwerte von A ist. c) Folgern Sie aus b), dass kAk2 kAkF
p
nkAk2 .
d) Zeigen Sie die Submultiplikativität der Frobeniusnorm k kF . e) Zeigen Sie, dass die Frobeniusnorm k kF keine Operatornorm ist. Aufgabe 2.10. Sei A eine Matrix mit den Spalten Aj , j D 1; : : : ; n. Wir definieren eine Matrixnorm durch kAk WD max kAj k2 : j
Zeigen Sie: a) Durch k k wird tatsächlich eine Norm auf Matm;n .R/ definiert. b) kAxk2 kAk kxk1 und kAT xk1 kAk kxk2 . p c) kAkF nkAk und kABk kAkF kBk .
62
2 Fehleranalyse
Aufgabe 2.11. Sei A eine nicht singuläre Matrix, die durch eine kleine Störung ıA zu AQ WD A C ıA verfälscht werde, und k k eine submultiplikative Norm mit kI k D 1. Zeigen Sie: P k a) Falls kBk < 1, so existiert .I B/1 D 1 kD0 B , und es gilt k.I B/1 k
1 : 1 kBk
b) Falls kA1 ıAk " < 1, so gilt Q 1 C " .A/: .A/ 1" Aufgabe 2.12. Zeigen Sie, dass für invertierbare Matrizen A 2 GL.n/ gilt .A/ D kAk kA1 k D
maxkxkD1 kAxk : minkxkD1 kAxk
Aufgabe 2.13. Sei A 2 GL.n/ symmetrisch positiv definit. Zeigen Sie, dass in diesem Fall max .A/ : .A/ D min .A/ Aufgabe 2.14. Zeigen Sie, dass für die Abbildung f W GL.n/ ! Rn , definiert durch f .A/ D A1 b, gilt jf 0 .A/j jC j D jA1 j jC j jA1 bj: AufgabeP 2.15. Bestimmen Sie die komponentenweise relative Konditionszahl der Summe niD1 xi von n reellen Zahlen x1 ; : : : ; xn und vergleichen Sie sie mit der normweisen relativen Konditionszahl bezüglich der 1-Norm k k1 . Aufgabe 2.16. Zur Berechnung der Varianz eines Vektors x 2 Rn liegen zwei Formeln vor: 1 X .xi x/ N 2; n1 n
a/ S 2 D
iD1
n
1 X 2 xi nxN 2 ; b/ S 2 D n1 iD1
1 Pn
wobei xN D n i D1 xi der Mittelwert der xi ist. Welche der beiden Formeln ist zur Berechnung von S 2 numerisch stabiler und daher vorzuziehen? Stützen Sie Ihre Begründung auf den Stabilitätsindikator und illustrieren Sie Ihre Wahl mit einem Zahlenbeispiel.
63
Übungsaufgaben
Aufgabe 2.17. Wir betrachten die Approximation der Exponentialfunktion exp.x/ durch die abgebrochene Taylor-Reihe N X xk : exp.x/ kŠ
(2.15)
kD0
Berechnen Sie Näherungswerte von exp.x/ für x D 5:5 auf folgende drei Arten mit N D 3; 6; 9; : : : ; 30: a) Mit Hilfe der Formel (2.15). b) Mit exp.5:5/ D 1= exp.5:5/ und der Formel (2.15) für exp.5:5/. c) Mit exp.5:5/ D .exp.0:5//11 und der Formel (2.15) für exp.0:5/. Der „exakte Wert“ beträgt exp.5:5/ D 0:0040867714 : : : : Wie sind die Ergebnisse zu interpretieren? Aufgabe 2.18. Gegeben sei die Matrix 2
3 1
A" D 4
1
5
1 1C"
und die beiden rechten Seiten b1T D .1; 1/;
b2T D .1; 1/:
Berechnen Sie die beiden Lösungen x1 und x2 der Gleichungen Axi D bi , die Kondition 1 .A" / und die Skeelschen Konditionen rel .A" ; x1 / und rel .A" ; x2 /. Wie sind diese Ergebnisse zu interpretieren? Aufgabe 2.19. Gegeben sei das lineare Gleichungssystem Ax D b mit 2 3 0 1 0:780 0:563 0:217 5; b D @ A AD4 0:913 0:659 0:254 auf die relative Genauigkeit eps D 104 . Beurteilen Sie mit Hilfe des Satzes von W. Prager und W. Oettli (Satz 2.39) die Genauigkeit der beiden Näherungslösungen 0 0 1 1 0:341 0:999 A: A und xQ 2 D @ xQ 1 D @ 0:087 1:001
64
2 Fehleranalyse
Aufgabe 2.20. Zeigen Sie, dass sich in dem pathologischen Beispiel von J. H. Wilkinson 2 3 1 1 7 6 :: 7 6 : 61 : : :7 7 AD6 6 :: : : : : :7 6 : : : :: 7 4 5 1
1 1
bei Spaltenpivotsuche für den Betrag des maximalen Pivotelements j˛max j D 2n1 ergibt. Aufgabe 2.21. Nach R. D. Skeel (1979) gilt für den komponentenweisen Rückwärtsfehler der Gaußelimination mit Spaltenpivoting zur Lösung von Ax D b, dass n .A; x/ eps; wobei die nur von der Dimension n abhängige Konstante n in der Regel bei n n liegt und maxi .jAj jxj/i : .A; x/ D mini .jAj jxj/i Geben Sie eine Zeilenskalierung A ! DA der Matrix A mit einer Diagonalmatrix D D diag.d1 ; : : : ; dn /, di > 0, an, so dass .DA; x/ D 1 gilt. Warum ist dies eine unpraktikable Methode der Stabilisierung? Aufgabe 2.22. Gegeben sei 2 1
6 6 60 AD6 6 60 4 1
1 " 0 0
3 1 1 7 7 0 07 7; 7 " 07 5 0 1
0 1 0 B C B C B1C C bDB B C: B1C @ A 2
Die Lösung des Gleichungssystems Ax D b ist x D .1; "1 ; "1 ; 1/T . a) Zeigen Sie, dass dieses System gutkonditioniert, aber schlecht skaliert ist, indem Sie die Kondition C .A/ D k jAj1 jAj k1 und die Skalierungsgröße .A; x/ (siehe Aufgabe 2.21) berechnen. Was erwarten Sie von der Gaußelimination, wenn für " die relative Maschinengenauigkeit eps eingesetzt wird?
Übungsaufgaben
65
b) Lösen Sie das System mit einem Programm zur Gaußelimination mit Spaltenpivoting für " D eps. Wie groß ist der berechnete Rückwärtsfehler ? O c) Überzeugen Sie sich davon, dass eine einzige Nachiteration ein stabiles Resultat liefert.
3 Lineare Ausgleichsprobleme
Inhalt dieses Kapitels ist die Lösung von überbestimmten linearen Gleichungssystemen nach der Methode der kleinsten Fehlerquadrate, die auch als lineare Ausgleichsrechnung im Gaußschen Sinn (engl.: linear least squares oder maximum-likelihoodmethod) bekannt ist. Aufgrund der Invarianzen dieses Problemtyps eignen sich orthogonale Transformationen sehr gut zur Lösung dieser Systeme. Wir fügen daher in Kapitel 3.2 die Beschreibung sogenannter Orthogonalisierungsverfahren hinzu, mit deren Hilfe sich lineare Ausgleichsprobleme stabil lösen lassen. Nebenbei fällt dabei auch eine (etwas teurere) Alternative zur Gauß-Elimination für lineare Gleichungssysteme ab.
3.1
Gaußsche Methode der kleinsten Fehlerquadrate
C. F. Gauß beschrieb die Methode erstmals 1809 in „Theoria Motus Corporum Coelestium“ (deutsch: Theorie der Bewegungen der Himmelskörper), ebenso wie das im ersten Kapitel besprochene Eliminationsverfahren, das er als Teil des Lösungsalgorithmus angibt (siehe Kapitel 3.1.4). Zugleich studierte er in dieser Arbeit auch wahrscheinlichkeitstheoretische Grundsatzfragen – für eine ausführliche Würdigung der historischen Zusammenhänge verweisen wir auf die jüngst erschienene Abhandlung [1].
3.1.1
Problemstellung
Wir gehen aus von folgender Problemstellung: Gegeben seien m Messpunkte .ti ; bi /;
ti ; bi 2 R; i D 1; : : : ; m;
die zum Beispiel die Zustände bi eines Objektes zu den Zeiten ti beschreiben. Wir nehmen an, dass diesen Messungen eine Gesetzmäßigkeit zugrunde liegt, so dass sich die Abhängigkeit von b von t durch eine Modellfunktion ' mit b.t / D '.t I x1 ; : : : ; xn / ausdrücken lässt, wobei in die Modellfunktion n unbekannte Parameter xi eingehen. Beispiel 3.1. Als Beispiel betrachten wir das Ohmsche Gesetz b D xt D '.t I x/, wobei t die Stromstärke, b die Spannung und x der Ohmsche Widerstand ist. Hier ist die
67
3.1 Gaußsche Methode der kleinsten Fehlerquadrate
Aufgabe, eine Gerade durch den Nullpunkt zu legen, die dem Verlauf der Messungen „möglichst nahe“ kommt. b
o
o
o o
o
+
+
t1
+
t2
+
+
t3 t4
t5
t
Abbildung 3.1. Lineare Ausgleichsrechnung beim Ohmschen Gesetz
Gäbe es keine Messfehler und würde das Modell exakt die Situation beschreiben, so sollten die Parameter x1 ; : : : ; xn so zu bestimmen sein, dass bi D b.ti / D '.ti I x1 ; : : : ; xn /
für i D 1; : : : ; m.
Tatsächlich sind die Messungen jedoch fehlerbehaftet, und auch die Modellfunktionen stellen stets nur eine ungefähre Beschreibung der Wirklichkeit dar. So gilt das Ohmsche Gesetz annähernd nur in einem mittleren Temperaturbereich, was spätestens beim Durchglühen eines Drahtes deutlich wird. Daher können wir nur fordern, dass bi '.ti I x1 ; : : : ; xn /
für i D 1; : : : ; m.
Nun gibt es mehrere Möglichkeiten, die einzelnen Abweichungen i WD bi '.ti I x1 ; : : : ; xn /
für i D 1; : : : ; m
zu gewichten. Gauß erwog zunächst die Minimierung geradzahliger Potenzen der Abweichungen. Aufgrund wahrscheinlichkeitstheoretischer Überlegungen wählte er 2 schließlich die Quadrate i aus. Dies führt zu der Aufgabe, die Parameter x1 ; : : : ; xn P m so zu bestimmen, dass i D1 2i minimal wird. Wir schreiben dafür auch einfach 2
WD
m X
2i D min :
(3.1)
iD1
Bemerkung 3.2. Der Zusammenhang des linearen Ausgleichsproblems mit der Wahrscheinlichkeitsrechnung zeigt sich in der Äquivalenz des Minimierungsproblems (3.1) mit dem Maximierungsproblem exp.2 / D max :
68
3 Lineare Ausgleichsprobleme
Der Exponentialterm charakterisiert hierbei eine Wahrscheinlichkeitsverteilung, die sogenannte Gaußsche Normalverteilung. Das gesamte Verfahren heißt MaximumLikelihood-Methode. (Die zugehörige sogenannte Gaußsche Glockenkurve war auf dem 1991 eingeführten und seit 2002 ungültigen deutschen 10-DM-Schein zu sehen.)
Abbildung 3.2. C. F. Gauß und die Glockenkurve auf dem 10-DM-Schein
In der Form (3.1) sind die Fehler der einzelnen Messungen alle gleich gewichtet. Normalerweise sind die Messungen .ti ; bi / jedoch unterschiedlich genau, sei es, weil die Messapparatur in verschiedenen Bereichen unterschiedlich genau arbeitet, sei es, weil die Messungen einmal mit mehr und einmal mit weniger Sorgfalt durchgeführt wurden. Zu jeder einzelnen Messung bi gehört also in natürlicher Weise eine absolute Messgenauigkeit bzw. Toleranz ıbi . Diese Toleranzen ıbi lassen sich in die Problemformulierung (3.1) einschließen, indem man die einzelnen Fehler mit der Toleranz wichtet, d. h. m X i 2 D min : ıbi iD1
Diese Form der Minimierung lässt auch eine vernünftige statistische Interpretation zu (normierte Standardabweichung in allen Komponenten). In manchen Fällen ist das lineare Ausgleichsproblem nur eindeutig lösbar, wenn die problemadäquaten Messgenauigkeiten explizit mit einbezogen werden! Wir betrachten hier zunächst nur den Spezialfall, dass die Modellfunktion ' linear in x ist, d. h. '.t I x1 ; : : : ; xn / D a1 .t /x1 C C an .t /xn ; Aus: H.-O. Georgii, Stochastik, Einführung in die Wahrscheinlichkeitstheorie und Statistik, 3. Aufl., Walter de Gruyter, Berlin 2007.
3.1 Gaußsche Methode der kleinsten Fehlerquadrate
69
wobei a1 ; : : : ; an W R ! R beliebige Funktionen sind. Der nichtlineare Fall wird uns in Kapitel 4.3 beschäftigen. In diesem Kapitel sei k k stets die Euklidische Norm k k2 . Im linearen Fall lässt sich das Ausgleichsproblem daher in der Kurzform kb Axk D min schreiben, wobei b D .b1 ; : : : ; bm /T , x D .x1 ; : : : ; xn /T und A D .aij / 2 Matm;n .R/
mit aij WD aj .ti /.
Als weitere Einschränkung betrachten wir hier nur den überbestimmten Fall m n, d. h., es liegen mehr Daten vor als Parameter zu bestimmen sind, was im statistischen Sinn vernünftig klingt. Wir erhalten somit die Aufgabenstellung des linearen Ausgleichsproblems: Suche zu gegebenem b 2 Rm und A 2 Matm;n .R/ mit m n ein x 2 Rn , so dass kb Axk D min : Bemerkung 3.3. Ersetzt man die 2-Norm durch die 1-Norm, so ergibt sich das Standardproblem der linearen Optimierung, das wir hier jedoch nicht behandeln, da es in den Natur- und Ingenieurwissenschaften eher selten auftritt. Es spielt aber in den Wirtschaftswissenschaften eine wichtige Rolle. Mit der Maximumsnorm anstelle der 2-Norm stoßen wir auf das Problem der sogenannten Tschebyscheffschen Ausgleichsrechnung. Dieses Problem kommt in den Naturwissenschaften des Öfteren vor, wenn auch nicht so häufig wie das der Gaußschen Ausgleichsrechnung. Da die Euklidische Norm durch ein Skalarprodukt induziert ist, lässt letztere der geometrischen Anschauung mehr Raum.
3.1.2
Normalgleichungen
Geometrisch gesprochen suchen wir bei der Lösung des linearen Ausgleichsproblems nach einem Punkt z D Ax aus dem Bildraum R.A/ von A, der den kleinsten Abstand zu dem gegebenen Punkt b hat. Für m D 2 und n D 1 ist R.A/ R2 entweder nur der Nullpunkt oder eine Gerade durch den Nullpunkt (siehe Abbildung 3.3). Anschaulich ist klar, dass die Differenz b Ax gerade senkrecht auf dem Unterraum R.A/ stehen muss, damit der Abstand kb Axk minimal ist. Mit anderen Worten: Ax ist die orthogonale Projektion von b auf den Unterraum R.A/. Da wir auf diese Ergebnisse später in anderem Zusammenhang zurückgreifen wollen, formulieren wir sie in etwas abstrakterer Form. Satz 3.4. Sei V ein endlich dimensionaler Euklidischer Vektorraum mit Skalarprodukt h; i, U V ein Unterraum und U ? D fv 2 V W hv; ui D 0 für alle u 2 U g
70
3 Lineare Ausgleichsprobleme
Rm
b Ax
b
.
.
R.A/
Ax
Abbildung 3.3. Projektion auf den Bildraum R.A/
sein orthogonales Komplement in V . Dann gilt p für alle v 2 V bezüglich der von dem Skalarprodukt h; i induzierten Norm kvk D hv; vi, dass kv uk D min kv u0 k ” v u 2 U ? : 0 u 2U
Beweis. Sei u 2 U der (eindeutig bestimmte) Punkt, so dass v u 2 U ? . Dann gilt für alle u0 2 U kv u0 k2 D kv uk2 C 2hv u; u u0 i C ku u0 k2 D kv uk2 C ku u0 k2 kv uk2 ; wobei Gleichheit genau dann gilt, wenn u D u0 .
Bemerkung 3.5. Damit ist die Lösung u 2 U von kv uk D min eindeutig bestimmt und heißt orthogonale Projektion von v auf U . Die Abbildung P W V ! U;
v 7! P v
mit kv P vk D minu2U kv uk
ist linear und wird orthogonale Projektion von V auf U genannt. Bemerkung 3.6. Der Satz gilt sinngemäß auch, wenn wir U durch einen affinen Unterraum W D w0 C U V ersetzen, wobei w0 2 V und U der zu W parallele lineare Unterraum von V ist. Für alle v 2 V und w 2 W folgt dann kv wk D min kv w 0 k ” v w 2 U ? : 0 w 2W
Die dadurch wie in Bemerkung 3.5 definierte Abbildung P W V ! W;
v 7! P v
mit kv P vk D minw2W kv wk
ist affin linear und heißt ebenfalls orthogonale Projektion von V auf den affinen Unterraum W . Diese Betrachtung wird uns in Kapitel 8 gute Dienste leisten.
71
3.1 Gaußsche Methode der kleinsten Fehlerquadrate
Mit Satz 3.4 können wir nun leicht eine Aussage über die Existenz und Eindeutigkeit einer Lösung des linearen Ausgleichsproblems beweisen. Satz 3.7. Der Vektor x 2 Rn ist genau dann Lösung des linearen Ausgleichsproblems kb Axk D min, falls er die sogenannten Normalgleichungen AT Ax D AT b erfüllt. Insbesondere ist das lineare Ausgleichsproblem genau dann eindeutig lösbar, wenn der Rang von A maximal ist, d. h. Rang A D n. Beweis. Nach Satz 3.4 angewandt auf V D Rm und U D R.A/ gilt kb Axk D min ” hb Ax; Ax 0 i D 0 für alle x 0 2 Rn ” hAT .b Ax/; x 0 i D 0 für alle x 0 2 Rn ” AT .b Ax/ D 0 ” AT Ax D AT b und daher die erste Aussage. Der zweite Teil folgt nun aus der Tatsache, dass AT A genau dann invertierbar ist, wenn Rang A D n. Bemerkung 3.8. Geometrisch besagen die Normalgleichungen gerade, dass b Ax eine Normale auf R.A/ Rm ist. Dies gibt ihnen den Namen.
3.1.3
Kondition
Wir beginnen die Konditionsanalyse mit der orthogonalen Projektion P W Rm ! V , b 7! P b, auf einen Unterraum V des Rm (siehe Abbildung 3.4). Die relative Konditi-
Rm
b Pb
b
.
#
.
V
Pb
Abbildung 3.4. Projektion auf den Unterraum V
on des Projektionsproblems .P; b/ bezüglich der Eingabe b hängt offenbar stark von dem Winkel # ab, den b mit dem Unterraum V einschließt. Ist der Winkel klein, d. h.
72
3 Lineare Ausgleichsprobleme
b P b, so finden sich Störungen von b nahezu unverändert im Ergebnis P b wieder. Andererseits äußert sich eine kleine Störung von b in großen relativen Schwankungen von P b, wenn b fast senkrecht auf V steht. Diese Beobachtungen spiegeln sich in folgendem Lemma wider. Lemma 3.9. Sei P W Rm ! V die orthogonale Projektion auf einen Unterraum V des Rn . Für die Eingabe b bezeichne # den Winkel zwischen b und V , d. h. sin # D
kb P bk2 : kbk2
Dann gilt für die relative Kondition des Problems .P; b/ bezüglich der Euklidischen Norm, dass 1 D kP k2 : cos # Beweis. Nach Pythagoras gilt kP bk2 D kbk2 kb P bk2 und daher kP bk2 D 1 sin2 # D cos2 #: kbk2 Da P linear ist, ergibt sich daraus für die relative Kondition von .P; b/ wie behauptet D
1 kbk kbk kP 0 .b/k D kP k D kP k: kP bk kP bk cos #
Für den nächsten Satz benötigen wir noch folgenden Zusammenhang zwischen den Konditionen von A und AT A bezüglich der Euklidischen Norm. Lemma 3.10. Für eine Matrix A 2 Matm;n .R/ von maximalem Rang p D n gilt 2 .AT A/ D 2 .A/2 : Beweis. Nach der Definition (2.3) der Kondition einer rechteckigen Matrix gilt 2 .A/2 D D
maxkxk2 D1 kAxk2 minkxk2 D1 kAxk2 maxkxk2 D1 hAT Ax; xi max .AT A/ D D 2 .AT A/: minkxk2 D1 hAT Ax; xi min .AT A/
Mit diesen Vorüberlegungen ist das folgende Ergebnis für die Kondition des linearen Ausgleichsproblems keine Überraschung mehr.
3.1 Gaußsche Methode der kleinsten Fehlerquadrate
73
Satz 3.11. Sei A 2 Matm;n .R/, m n, eine Matrix von vollem Spaltenrang, b 2 Rn , und x die .eindeutige/ Lösung des linearen Ausgleichsproblems kb Axk2 D min : Wir setzen voraus, dass x ¤ 0, und bezeichnen mit # den Winkel zwischen b und dem Bildraum R.A/ von A, d. h. sin # D
krk2 kb Axk2 D kbk2 kbk2
mit dem Residuum r D b Ax. Dann gilt für die relative Kondition von x in der Euklidischen Norm a) bezüglich Störungen in b
2 .A/ ; cos #
b) bezüglich Störungen in A 2 .A/ C 2 .A/2 tan #:
(3.2)
Beweis. a) Die Lösung x ist über die Normalgleichungen durch die lineare Abbildung x D .b/ D .AT A/1 AT b gegeben, so dass D
kAk2 k.AT A/1 AT k2 kbk2 k 0 .b/k2 kbk2 D : kxk2 kAk2 kxk2
Man rechnet leicht nach, dass für eine Matrix A mit vollem Spaltenrang die Kondition 2 .A/ gerade 2 .A/ D
maxkxk2 D1 kAxk2 D kAk2 k.AT A/1 AT k2 minkxk2 D1 kAxk2
ist. Wie in Lemma 3.9 folgt daher die Behauptung aus D
kbk2 kbk2 2 .A/ : 2 .A/ 2 .A/ D kAk2 kxk2 kAxk2 cos #
b) Hier betrachten wir die Abbildung x D .A/ D .AT A/1 AT b in Abhängigkeit von A. Da die Matrizen vom Rang n eine offene Teilmenge in Matm;n .R/ bilden, ist in einer Umgebung von A differenzierbar. Wir bilden die Richtungsableitung
74
3 Lineare Ausgleichsprobleme
0 .A/C für eine Matrix C 2 Matm;n .R/, indem wir die .ACt C / charakterisierende Gleichung .A C t C /T .A C t C /.A C t C / D .A C t C /T b nach t an der Stelle t D 0 differenzieren. Daraus folgt C T Ax C AT C x C AT A 0 .A/C D C T b; d. h.
0 .A/C D .AT A/1 .C T .b Ax/ AT C x/:
Wir können die Ableitung von daher abschätzen durch k 0 .A/k k.AT A/1 k2 krk2 C k.AT A/1 AT k2 kxk2 ; so dass D
krk2 k 0 .A/k2 kAk2 kAk2 k.AT A/1 AT k2 C kAk22 k.AT A/1 k2 : „ ƒ‚ … „ ƒ‚ … kAk2 kxk2 kxk2 D2 .A/
D2 .AT A/D2 .A/2
Die Behauptung folgt nun wie in b) aus krk2 krk2 kbk2 1 D tan #: D sin # kAk2 kxk2 kbk2 kAk2 kxk2 cos #
Ist das Residuum r D bAx des linearen Ausgleichsproblems klein gegenüber der Eingabe b, so gilt cos # 1 und tan # 0. In diesem Fall (der den Normalfall für lineare Ausgleichsprobleme darstellen sollte) verhält sich das Problem konditionell wie ein lineares Gleichungssystem. Für große Residuen, d. h. cos # 1 und tan > 1, tritt in der Abschätzung (3.2) neben der für ein lineares Gleichungssystem relevanten Kondition 2 .A/ zusätzlich deren Quadrat 2 .A/2 auf. Für große Residuen verhält sich das lineare Ausgleichsproblem wesentlich anders als lineare Gleichungssysteme.
3.1.4
Lösung der Normalgleichungen
Wir wenden uns nun der numerischen Lösung der Normalgleichungen zu. Gehen wir davon aus, dass das lineare Ausgleichsproblem eindeutig lösbar ist, d. h. Rang A D n, so ist AT A eine spd-Matrix. Nach Kapitel 1.4 bietet sich daher das CholeskyVerfahren an. Für den Aufwand zur Lösung des linearen Ausgleichsproblems mit Hilfe der Normalgleichungen ergibt sich dann (Anzahl der Multiplikationen): a) Berechnung von AT A: 21 n2 m, b) Cholesky-Zerlegung von AT A: 16 n3 .
3.1 Gaußsche Methode der kleinsten Fehlerquadrate
75
Für m n überwiegt der Anteil von a), so dass wir insgesamt einen Aufwand von 1 n2 m für m n 2
und
2 n3 für m n 3
erhalten. Die gerade diskutierte numerische Behandlung verlangt im ersten Schritt die Berechnung von AT A, also die Auswertung zahlreicher Skalarprodukte der Spalten von A untereinander. Die im zweiten Kapitel entwickelte numerische Intuition (vgl. Beispiel 2.33) lässt uns diesen Weg jedoch zweifelhaft erscheinen. In jedem zusätzlich eingeführten Schritt können Fehler entstehen, die dann bis zur Lösung propagiert werden. Daher ist es in den meisten Fällen besser, nach einer effizienten direkten Methode zu suchen, die nur auf A selbst operiert. Als weiterer Kritikpunkt erscheint, dass die Verstärkung der Fehler von AT b bei der Lösung des linearen Gleichungssystems AT Ax D AT b in etwa durch die Kondition 2 .AT A/ D 2 .A/2 beschrieben wird (siehe Lemma 3.10). Für große Residuen entspricht das nach (3.2) der Kondition des linearen Ausgleichsproblems, für kleine Residuen jedoch wird dessen Kondition eher durch .A/ beschrieben, so dass der Übergang zu den Normalgleichungen eine erhebliche Verschlechterung bedeutet. Hinzu kommt, dass die Matrizen, welche bei linearen Ausgleichsproblemen auftreten, gewöhnlich bereits schlechtkonditioniert sind, so dass äußerste Vorsicht geboten ist und die weitere Verschlechterung durch den Übergang zu AT A nicht hingenommen werden kann. Die Lösung linearer Ausgleichsprobleme über die Normalgleichungen mit Hilfe der Cholesky-Zerlegung kann also nur für große Residuen empfohlen werden. Bemerkung 3.12. Aufgrund der im letzten Abschnitt diskutierten Eigenschaften linearer Ausgleichsprobleme sollte man für große Residuen bei maximalem Rang der Matrix eine Nachiteration ausführen, wobei das Residuum r als explizite Variable mitgeführt wird (siehe Å. Bjørck [7] und Aufgabe 3.2). Dabei formt man die Normalgleichungen in ein äquivalentes symmetrisches System 2 I
4
AT
30 1 0 1 r b A 5@ A D @ A 0 x 0
doppelter Dimension um, bei dem die Eingabegrößen A und b direkt auftreten. Diese Formulierung eignet sich auch besonders gut für große dünnbesetzte Matrizen A und zur Nachiteration bei „großen“ Residuen [7].
76
3.2
3 Lineare Ausgleichsprobleme
Orthogonalisierungsverfahren
Jeder Eliminationsprozess für lineare Gleichungssysteme, wie z. B. die Gauß-Elimination aus Kapitel 1.2, lässt sich formal in der Form f1
f2
f3
fk
A ! B1 A ! B2 B1 A ! ! Bk B1 A D R darstellen, wobei die Matrizen Bj die Operationen auf der Matrix A beschreiben. Wir haben bei der rekursiven Stabilitätsanalyse in Lemma 2.21 gesehen, dass die Stabilitätsindikatoren der Teilschritte eines Algorithmus verstärkt werden durch die Konditionen aller folgenden Teilschritte. Bei einem wie oben beschriebenen Eliminationsprozess sind dies die Konditionen der Matrizen Bj . Diese Konditionen sind z. B. bei den Eliminationsmatrizen Bj D Lj der Gaußschen Dreieckszerlegung im Allgemeinen nicht nach oben beschränkt, so dass es dabei zu Instabilitäten kommen kann (siehe Kapitel 2.4.2). Wählt man hingegen statt der Lj orthogonale Transformationen Qj für die Elimination, so gilt bezüglich der Euklidischen Norm, dass .Qj / D kQj k2 kQj1 k2 D kQj k2 kQjT k2 D 1: Diese sogenannten Orthogonalisierungsverfahren sind also auf jeden Fall stabil. Leider ist diese inhärente Stabilität mit einem etwas höheren Aufwand verbunden als z. B. bei der Gauß-Elimination, wie wir im Folgenden sehen werden. Hinzu kommt jedoch, dass sich Orthogonalisierungsverfahren für lineare Ausgleichsprobleme als Alternative zur Lösung der Normalgleichungen aus einem weiteren Grund gut eignen. Tatsächlich drängt die Invarianz der Euklidischen Norm bezüglich orthogonaler Transformationen die Anwendung von Orthogonalisierungsmethoden zur Lösung des linearen Ausgleichsproblems geradezu auf. Nehmen wir an, wir hätten die Matrix A 2 Matm;n mit m n mit einer orthogonalen Matrix Q 2 O.m/ auf obere Dreiecksgestalt 3 2 ::: 7 2 3 6 :: 7 6 :: : 6 R :7 7D4 5 QT A D 6 7 6 6 0 7 5 4 mit einer oberen Dreiecksmatrix R gebracht. Dann können wir die Lösung des linearen Ausgleichsproblems kb Axk D min als Alternative zur Lösung der Normalgleichungen auch wie folgt bestimmen. Satz 3.13. Sei A 2 Matm;n .R/; m n, von maximalem Rang, b 2 Rm , und sei Q 2 O.m/ eine orthogonale Matrix mit 2 3 0 1 R b1 QT A D 4 5 und QT b D @ A ; b2 0
77
3.2 Orthogonalisierungsverfahren
wobei b1 2 Rn , b2 2 Rmn und R 2 Matn .R/ eine .invertierbare/ obere Dreiecksmatrix ist. Dann ist x D R1 b1 die Lösung des linearen Ausgleichsproblems kb Axk D min. Beweis. Da Q 2 O.m/, gilt für alle x 2 Rm 0 12 b Rx 1 2 T 2 D kb1 Rxk2 Ckb2 k2 kb2 k2 : @ A kb Axk D kQ .b Ax/k D b2 Wegen Rang A D Rang R D n ist R invertierbar. Der erste Summand kb1 Rxk2 verschwindet daher genau für x D R1 b1 . Man beachte, dass das Residuum r WD b Ax im Allgemeinen nicht verschwindet und dass krk D kb2 k. Die in Frage kommenden orthogonalen Transformationen lassen sich für m D 2 leicht geometrisch ableiten, nämlich als Drehungen (Rotationen) bzw. Spiegelungen (Reflexionen), siehe Abbildung 3.5. Wollen wir den Vektor a 2 R2 mit einer ortho-
l a
e1 ˛e1
2 hv;ai v hv;vi
v a e1 ˛e1
Abbildung 3.5. Drehung bzw. Spiegelung von a auf ˛e1
gonalen Transformation auf ein Vielfaches ˛e1 des ersten Einheitsvektors abbilden, so folgt ˛ D kak. Die erste Möglichkeit ist, a um den Winkel auf ˛e1 zu drehen. Wir erhalten 2 3 cos sin 5: a 7! ˛e1 D Qa mit Q WD 4 sin cos Als zweite Möglichkeit können wir a an der auf dem Vektor v senkrecht stehenden Gerade l spiegeln, d. h. hv; ai v; a 7! ˛e1 D a 2 hv; vi wobei v kollinear zur Differenz a ˛e1 ist. Die numerische Behandlung mittels Rotationen stellen wir in Kapitel 3.2.1, die mittels Reflexionen in Kapitel 3.2.2 vor.
78
3.2.1
3 Lineare Ausgleichsprobleme
Givens-Rotationen
Als Givens-Rotationen (Givens 1953) bezeichnet man Matrizen der Form 2 3 I 6 7 6 7 6 7 k c s 6 7 6 7 2 Matm .R/; kl WD 6 7 I 6 7 6 7 6 7 l s c 4 5 I wobei I jeweils die Einheitsmatrix der passenden Dimension ist und c 2 C s 2 D 1. Dabei sollen c und s natürlich an cos und sin erinnern. Geometrisch beschreibt die Matrix eine Drehung um den Winkel in der .k; l/-Ebene. Wenden wir kl auf einen Vektor x 2 Rm an, so folgt 8 ˆ falls i D k, jxk j, und WD xl =xk ;
p c WD 1= 1 C 2 ;
s WD c;
falls jxk j jxl j. Damit vermeidet man zugleich Exponentenüberlauf.
79
3.2 Orthogonalisierungsverfahren
Wir können nun eine gegebene Matrix A 2 Matm;n mit Hilfe von Givens-Rotationen auf obere Dreiecksgestalt R mit rij D 0 für i > j bringen, indem wir Spalte für Spalte die von Null verschiedenen Matrixkomponenten unterhalb der Diagonale eliminieren. Am Beispiel einer vollbesetzten .5; 4/-Matrix lässt sich der Algorithmus wie folgt veranschaulichen (die Indexpaare .k; l/ über den Pfeilen geben die Indices der ausgeführten Givens-Rotation kl an): 2 3 2 3 2 3 6 7 6 7 6 7 6 7 6 7 6 7 6 7 6 0 7 6 7 7 .4;3/ 6 7 6 7 .5;4/ 6 .2;1/ 6 6 7 7 6 7 A D 6 7 ! 6 7 ! ! 6 0 7 6 7 6 7 6 7 6 7 6 7 6 7 6 7 6 0 7 6 7 4 5 4 5 4 5 0 0 2
6 6 6 0 6 .5;4/ 6 ! 6 0 6 6 6 0 4 0 0
3
2
7 6 7 6 6 7 7 .4;3/ 6 .5;4/ 6 7 7 ! ! 6 7 6 7 6 7 6 5 4
3
7 7 0 7 7 7 0 0 7: 7 7 0 0 0 7 5 0 0 0 0
Als Aufwand für die QR-Zerlegung einer vollbesetzten Ausgangsmatrix A 2 Matm;n erhalten wir durch sorgfältiges Zählen der Operationen: a) n2 =2 Quadratwurzeln und 4n3 =3 Multiplikationen, falls m n, b) mn Quadratwurzeln und 2mn2 Multiplikationen, falls m n. Für m D n erhalten wir so eine Alternative zur Gaußschen Dreieckszerlegung aus Kapitel 1.2. Die größere Stabilität muss jedoch mit einem erheblich höheren Aufwand, 4n3 =3 Multiplikationen gegenüber n3 =3 bei der Gauß-Elimination, erkauft werden. Zu beachten ist aber, dass der Vergleich für dünnbesetzte Matrizen wesentlich günstiger ausfällt. So benötigt man nur n 1 Givens-Rotationen, um eine sogenannte Hessenberg-Matrix 3 2 6 6 6 6 6 AD6 6 6 6 6 4
::: : :: : 0 :: :: : : : :
::: ::
:
::
:
::
:
:: : :: : :: :
0 :::
0
:::
7 7 7 7 7 7 7 7 7 7 5
80
3 Lineare Ausgleichsprobleme
auf Dreiecksgestalt zu bringen, die fast schon eine obere Dreiecksmatrix ist und nur in der ersten Nebendiagonale weitere von Null verschiedene Komponenten besitzt. Bei der Gauß-Elimination würde die Pivotsuche evtl. das subdiagonale Band verdoppeln. Bemerkung 3.14. Speichert man A mit einer Zeilenskalierung DA, so lassen sich die Givens-Rotationen (ähnlich wie bei der rationalen Cholesky-Zerlegung) ohne Auswertungen von Quadratwurzeln realisieren. Von W. M. Gentleman [42] und S. Hammarling [55] wurde 1973 eine Variante entwickelt, der sogenannte schnelle Givens oder auch rationale Givens. Diese Art der Zerlegung ist sogar invariant gegen Spaltenskalierung, d. h. A D QR H) AD D Q.RD/ für eine Diagonalmatrix D:
3.2.2
Householder-Reflexionen
Im Jahre 1958 führte A. S. Householder [59] Matrizen Q 2 Matn .R/ der Form Q DI 2
vv T vT v
mit v 2 Rn ein; sie heißen heute Householder-Reflexionen. Solche Matrizen beschreiben gerade die Reflexion an der auf v senkrecht stehenden Ebene (vgl. Abbildung 3.5). Insbesondere hängt Q nur von der Richtung von v ab. Die Householder-Reflexionen Q haben folgende Eigenschaften: a) Q ist symmetrisch, d. h. QT D Q. b) Q ist orthogonal, d. h. QQT D QT Q D I . c) Q ist involutorisch, d. h. Q2 D I . Wenden wir Q auf einen Vektor y 2 Rn an, so gilt ! hv; yi vv T y Dy2 y 7! Qy D I 2 T v: hv; vi v v Soll y auf ein Vielfaches ˛e1 des ersten Einheitsvektors e1 abgebildet werden, d. h. ˛e1 D y 2
hv; yi v 2 span.e1 /; hv; vi
so folgt j˛j D kyk2
und
v 2 span.y ˛e1 /:
Daher können wir Q bestimmen durch v WD y ˛e1
mit ˛ D ˙kyk2 .
81
3.2 Orthogonalisierungsverfahren
Um Auslöschung bei der Berechnung von v D .y1 ˛; y2 ; : : : ; yn /T zu vermeiden, wählen wir ˛ WD sgn.y1 /kyk2 . Wegen hv; vi D hy ˛e1 ; y ˛e1 i D kyk22 2˛hy; e1 i C ˛ 2 D 2˛.y1 ˛/ lässt sich Qx für beliebige x 2 Rn am einfachsten berechnen durch Qx D x 2
hv; xi hv; xi vDxC v: hv; vi ˛.y1 ˛/
Mit Hilfe der Householder-Reflexionen können wir nun ebenfalls eine Matrix A D ŒA1 ; : : : ; An 2 Matm;n .R/ in eine obere Dreiecksmatrix transformieren, indem wir sukzessive die Elemente unterhalb der Diagonalen eliminieren. Im ersten Schritt „verkürzen“ wir die Spalte A1 und erhalten 3 2 ˛1 7 6 7 6 7 6 0 0 7; 6 A ! A WD Q1 A D 6 : 7 0 0 6 :: A2 An 7 5 4 0 wobei Q1 D I 2
v1 v1T v1T v1
mit v1 WD A1 ˛1 e1 und ˛1 WD sgn.a11 /kA1 k2 .
Nach dem k-ten Schritt haben wir somit die Ausgangsmatrix A bis auf eine Restmatrix T .kC1/ 2 Matmk;nk .R/ auf obere Dreiecksgestalt gebracht, 2 3 6 7 6 :: 7 :: 6 : : 7 6 7 6 7 6 ::: 7 6 7 .k/ A D6 7: 6 7 0 6 7 6 7 :: 6 7 : T .kC1/ 6 7 4 5 0 Bilden wir nun die orthogonale Matrix 2 QkC1 D 4
3 Ik
0
0
QN kC1
5;
82
3 Lineare Ausgleichsprobleme
wobei QN kC1 2 O.m k/ wie im ersten Schritt mit T .kC1/ anstelle von A konstruiert wird, so können wir die nächste Subspalte unterhalb der Diagonalen eliminieren. Insgesamt erhalten wir so nach p D min.m1; n/ Schritten die obere Dreiecksmatrix R D Qp Q1 A und daher wegen Qi2 D I die Zerlegung A D QR
mit Q D Q1 Qp .
Berechnen wir die Lösung des linearen Ausgleichsproblems kb Axk D min nach Satz 3.13, indem wir mit Hilfe der Householder-Reflexionen Qj 2 O.m/ die QR-Zerlegung der Matrix A 2 Matm;n .R/ mit m n berechnen, so gelangen wir zu folgendem Verfahren: 1) A D QR, QR-Zerlegung mit Householder-Reflexionen, 2) .b1 ; b2 /T D QT b mit b1 2 Rn und b2 2 Rmn , Transformation von b, 3) Rx D b1 , Auflösung eines gestaffelten Systems. Bei der Implementierung auf einem Rechner müssen neben der oberen Dreiecksmatrix R auch die Householder-Vektoren v1 ; : : : ; vp abgespeichert werden. Dazu speichert man die Diagonalelemente ri i D ˛i
für i D 1; : : : ; p
in einem separaten Vektor, so dass die Householder-Vektoren v1 ; : : : ; vp in der unteren Hälfte von A Platz finden (siehe Abbildung 3.6). Eine andere Möglichkeit besteht darin, die Householder-Vektoren so zu normieren, dass die erste Komponente hvi ; ei i jeweils 1 ist und nicht abgespeichert werden muss. Für den Aufwand erhalten wir bei dieser Methode a) 2n2 m Multiplikationen, falls m n, b) 32 n3 Multiplikationen, falls m n. Für m n benötigen wir also in etwa den gleichen Aufwand wie bei dem CholeskyVerfahren für die Normalgleichungen. Für m n schneidet die QR-Zerlegung um einen Faktor 2 schlechter ab, hat aber die oben diskutierten Stabilitätsvorteile. Ähnlich wie bei der Gauß-Elimination gibt es auch bei der QR-Zerlegung eine Vertauschungsstrategie, den Spaltentausch nach P. Businger und G. H. Golub [13]. Anders als bei der Gauß-Elimination ist diese Strategie jedoch für die numerische Stabilität des Algorithmus nebensächlich. Man tauscht die Spalte mit maximaler 2Norm nach vorne, so dass nach dem Tausch gilt: .k/
.k/
kT1 k2 D max kTj j
k2 :
83
3.2 Orthogonalisierungsverfahren
˛1
R !
A
C v1
v2
v3
v4
˛2 ˛3 ˛4
Abbildung 3.6. Speicheraufteilung bei der QR-Zerlegung mit Householder-Reflexionen für m D 5 und n D 4
Mit der Matrixnorm kAk WD maxj kAj k2 gilt dann jrkk j D kT .k/ k
jrkC1;kC1 j jrkk j
und
für die Diagonalelemente rkk von R. Ist p WD Rang.A/, so erhalten wir theoretisch nach p Schritten die Matrix 2 3 A.p/
6 6 6 D6 6 6 4
R
0
7 7 S 7 7 7 7 5 0
mit einer invertierbaren oberen Dreiecksmatrix R 2 Matp .R/ und S 2 Matp;np .R/. Aufgrund von Rundungsfehlern ergibt sich statt dessen jedoch die folgende Matrix 2 3 A.p/
6 6 6 D6 6 6 4
R
S
0
T .pC1/
7 7 7 7; 7 7 5
wobei die Elemente der Restmatrix T .pC1/ 2 Matmp;np .R/ „sehr klein“ sind. Da wir den Rang der Matrix im Allgemeinen nicht im Voraus kennen, müssen wir im Algorithmus entscheiden, wann die Restmatrix T .pC1/ als vernachlässigbar anzusehen ist. Im Zuge der QR-Zerlegung mit Spaltentausch bietet sich in bequemer Weise ein Kriterium für diesen sogenannten Rangentscheid an. Definieren wir den numerischen Rang p bei einer relativen Genauigkeit ı der Matrix A durch die Bedingung jrpC1;pC1 j < ı jr11 j jrpp j;
84
3 Lineare Ausgleichsprobleme
so gilt gerade kT .pC1/ k D jrpC1;pC1 j < ı jr11 j D ı kAk ; d. h., bezüglich der Norm k k liegt T .pC1/ unterhalb des Fehlers von A. Ist p D n, so können wir ferner die sogenannte Subkondition sc.A/ WD
jr11 j jrnn j
von P. Deuflhard und W. Sautter [29] einfach berechnen. Analog zu den Eigenschaften der Kondition .A/ gilt a) sc.A/ 1, b) sc.˛A/ D sc.A/, c) A ¤ 0 singulär ” sc.A/ D 1, d) sc.A/ 2 .A/ (daher der Name). In Einklang mit obiger Definition des numerischen Ranges heißt A fast singulär bei einer QR-Zerlegung mit Spaltentausch, falls ı sc.A/ 1
oder äquivalent
ı jr11 j jrnn j:
Dass dieser Begriff sinnvoll ist, haben wir oben begründet. Jede Matrix, die bezüglich dieser Definition fast singulär ist, ist aufgrund der Eigenschaft d) auch bezüglich der Kondition 2 .A/ fast singulär (vgl. Definition 2.32). Die Umkehrung gilt hingegen nicht.
3.3
Verallgemeinerte Inverse
Die nach Satz 3.7 eindeutig bestimmte Lösung x des linearen Ausgleichsproblems kb Axk D min für A 2 Matm;n .R/, m n und Rang A D n hängt offensichtlich linear von b ab und wird formal mit x D AC b bezeichnet. Aus den Normalgleichungen folgt unter obigen Voraussetzungen, dass AC D .AT A/1 AT : Da AC A D I gerade die Identität ergibt, nennt man AC auch die Pseudoinverse von A. Die Definition von AC lässt sich auf beliebige Matrizen A 2 Matm;n .R/ erweitern. In diesem Fall ist die Lösung von kb Axk D min im Allgemeinen nicht mehr eindeutig bestimmt. Bezeichnen wir mit PN W Rm ! R.A/ Rm
85
3.3 Verallgemeinerte Inverse
die orthogonale Projektion von Rm auf den Bildraum R.A/, so bilden die Lösungen vielmehr nach Satz 3.4 einen affinen Unterraum L.b/ WD fx 2 Rn W kb Axk D ming D fx 2 Rn W Ax D PN bg: Um dennoch Eindeutigkeit zu erzwingen, wählen wir die bezüglich der Euklidischen Norm k k kleinste Lösung x 2 L.b/, die wir wieder mit x D AC b bezeichnen. Nach Bemerkung 3.6 ist x gerade die orthogonale Projektion des Ursprungs 0 2 Rn auf den affinen Unterraum L.b/ (siehe Abbildung 3.7). Ist xN 2 L.b/ irgendeine Lösung
Rn L.b/ D x C N.A/ x
N.A/
.
Abbildung 3.7. „Kleinste“ Lösung des linearen Ausgleichsproblems als Projektion von 0 auf L.b/
von kb Axk D min, so erhalten wir alle Lösungen, indem wir den Nullraum N.A/ von A um xN verschieben, d. h. L.b/ D xN C N.A/: Daher muss die kleinste Lösung x senkrecht auf dem Nullraum N.A/ stehen, mit anderen Worten: x ist der eindeutig bestimmte Vektor x 2 N.A/? mit kb Axk D min. Definition 3.15. Die Pseudoinverse einer Matrix A 2 Matm;n .R/ ist die Matrix AC 2 Matn;m .R/, so dass für alle b 2 Rm der Vektor x D AC b die kleinste Lösung von kb Axk D min ist, d. h. AC b 2 N.A/?
und
kb AAC bk D min :
86
3 Lineare Ausgleichsprobleme
Die Situation lässt sich am übersichtlichsten durch das folgende kommutative Diagramm darstellen (wobei i jeweils die Inklusionen bezeichnet). Rn ?x ?? y? i
P D AC A
R.AC / D N.A/?
A ! AC
Š
Rm x? ?? i ?y PN D AAC R.A/
Wir lesen daran ab, dass die Projektion PN gerade AAC ist, während P D AC A die Projektion von Rn auf das orthogonale Komplement N.A/? des Nullraums beschreibt. Ferner gilt aufgrund der Projektionseigenschaft offenbar, dass AC AAC D AC und AAC A D A. Durch diese beiden Eigenschaften und die Symmetrie der orthogonalen Projektionen P D AC A und PN D AAC ist die Pseudoinverse bereits eindeutig bestimmt, wie folgender Satz zeigt: Satz 3.16. Die Pseudoinverse AC 2 Matn;m .R/ einer Matrix A 2 Matm;n .R/ ist eindeutig charakterisiert durch folgende vier Eigenschaften: (i) .AC A/T D AC A, (ii) .AAC /T D AAC , (iii) AC AAC D AC , (iv) AAC A D A. Die Eigenschaften (i) bis (iv) heißen auch Penrose-Axiome. Beweis. Wir haben bereits gesehen, dass AC die Eigenschaften (i) bis (iv) erfüllt, da AC A und AAC orthogonale Projektionen auf N.A/? D R.AC / bzw. R.A/ sind. Umgekehrt sind durch (i) bis (iv) orthogonale Projektionen P WD AC A und PN WD AAC definiert, da P T D P D P 2 und PN T D PN D PN 2 . Weiter folgt aus (iv) und PN D AAC , dass PN die orthogonale Projektion auf R.A/, d. h. R.A/ D R.PN /. Analog folgt aus (iii) und P D AC A, dass N.P / D N.A/. Damit sind die Projektionen P und PN unabhängig von AC eindeutig durch die Eigenschaften (i) bis (iv) bestimmt. C Daraus folgt aber bereits die Eindeutigkeit von AC : Erfüllen AC 1 und A2 die BedinC C C C gungen (i) bis (iv), so gilt P D A1 A D A2 A und PN D AA1 D AA2 und daher .iii/
.iii/
C C C C C AC 1 D A1 AA1 D A2 AA2 D A2 :
Bemerkung 3.17. Gilt nur ein Teil der Penrose-Axiome, so spricht man von einer verallgemeinerten Inversen. Eine eingehende Untersuchung dazu findet sich z. B. in dem Buch [72] von M. Z. Nashed.
87
3.3 Verallgemeinerte Inverse
Wir wollen nun herleiten, wie sich die kleinste Lösung x D AC b für eine beliebige Matrix A 2 Matm;n .R/ und b 2 Rm mit Hilfe der QR-Zerlegung berechnen lässt. Sei p WD Rang A min.m; n/ der Rang der Matrix A. Zur Vereinfachung der Notation verzichten wir auf Permutationen und bringen A durch orthogonale Transformationen Q 2 O.m/ (z. B. Householder-Reflexionen) auf obere Dreiecksgestalt, d. h. 2 3 6 6 6 QA D 6 6 6 4
7 7 S 7 7I 7 7 5 0
R
0
(3.4)
hier ist R 2 Matp .R/ eine invertierbare obere Dreiecksmatrix und S 2 Matp;np .R/. Wir zerlegen die Vektoren x und Qb analog formal in 0 1 x1 (3.5) x D @ A mit x1 2 Rp und x2 2 Rnp , x2 0 1 b1 Qb D @ A mit b1 2 Rp und b2 2 Rmp . (3.6) b2 Damit können wir die Lösung des Ausgleichsproblems kb Axk D min wie folgt charakterisieren: Lemma 3.18. Mit den obigen Bezeichnungen ist x genau dann eine Lösung von kb Axk D min, falls x1 D R1 b1 R1 S x2 : Beweis. Aufgrund der Invarianz der Euklidischen Norm unter orthogonalen Transformationen gilt kb Axk2 D kQb QAxk2 D kRx1 C S x2 b1 k2 C kb2 k2 : Der Ausdruck wird genau dann minimal, wenn Rx1 C S x2 b1 D 0.
Der Fall p D Rang A D n entspricht dem bereits behandelten überbestimmten Gleichungssystem mit vollem Rang. Die Matrix S verschwindet, und wir erhalten wie in Satz 3.13 die Lösung x D x1 D R1 b1 . Die Lösung im unterbestimmten oder rangdefekten Fall p < n lässt sich wie folgt berechnen: Lemma 3.19. Sei p < n, V WD R1 S 2 Matp;np .R/ und u WD R1 b1 2 Rp . Dann ist die kleinste Lösung x von kb Axk D min gegeben durch x D .x1 ; x2 / 2 Rp Rnp mit .I C V T V /x2 D V T u
und
x 1 D u V x2 :
88
3 Lineare Ausgleichsprobleme
Beweis. Nach Lemma 3.18 sind die Lösungen von kb Axk D min gekennzeichnet durch x1 D u V x2 . Eingesetzt in kxk erhalten wir kxk2 D kx1 k2 C kx2 k2 D ku V x2 k2 C kx2 k2 D kuk2 2hu; V x2 i C hV x2 ; V x2 i C hx2 ; x2 i D kuk2 C hx2 ; .I C V T V /x2 2V T ui DW '.x2 /: Dabei ist ' 0 .x2 / D 2V T u C 2.I C V T V /x2 und ' 00 .x2 / D 2.I C V T V /: Da I C V T V eine symmetrische, positiv definite Matrix ist, nimmt '.x2 / sein Minimum für x2 mit ' 0 .x2 / D 0 an, d. h. .I C V T V /x2 D V T u. Das ist die Behauptung. Für die Berechnung von x2 können wir die Cholesky-Zerlegung benutzen, da I C V T V eine spd-Matrix ist. Zusammengefasst erhalten wir folgendes Verfahren zur Berechnung der kleinsten Lösung x D AC b von kb Axk D min. Algorithmus 3.20. Pseudoinverse über QR-Zerlegung. Es sei A 2 Matm;n .R/, b 2 Rm . Dann berechnet sich x D AC b wie folgt: 1. QR-Zerlegung (3.4) von A mit p D Rang A, wobei Q 2 O.m/,R 2 Matp .R/ obere Dreiecksmatrix und S 2 Matp;np .R/. 2. Berechne V 2 Matp;np .R/ aus RV D S . 3. Cholesky-Zerlegung von I C V T V I C V T V D LLT ; wobei L 2 Matnp .R/ untere Dreiecksmatrix. 4. .b1 ; b2 /T WD Qb mit b1 2 Rp , b2 2 Rmp . 5. Berechne u 2 Rp aus Ru D b1 . 6. Berechne x2 2 Rnp aus LLT x2 D V T u. 7. Setze x1 WD u V x2 . Dann ist x D Œx1 ; x2 T D AC b. Man beachte, dass die Schritte 1. bis 3. für verschiedene rechte Seiten b nur einmal durchgeführt werden müssen.
89
Übungsaufgaben
Übungsaufgaben Aufgabe 3.1. Eine Givens-Rotation 2 3 c s 5; QD4 s c
c 2 C s 2 D 1;
lässt sich bis auf ihr Vorzeichen als eine einzige Zahl abspeichern (am besten natürlich an die Stelle des eliminierten Matrixeintrages): 8 ˆ falls c D 0, <1;
WD sgn.c/ s=2; falls jsj < jcj, ˆ : 2 sgn.s/ =c; falls jsj jcj ¤ 0. Geben Sie die Formeln an, mit denen man aus die Givens-Rotation ˙Q bis auf das Vorzeichen zurückgewinnt. Wieso ist diese Darstellung sinnvoll, obwohl das Vorzeichen verloren geht? Ist diese Darstellung stabil? Aufgabe 3.2. Die Matrix A 2 Matm;n .R/, m n, habe vollen Rang. Falls die mit Hilfe der an sich stabilen QR-Zerlegung berechnete Lösung xO eines linearen Ausgleichsproblems kb Axk2 D min nicht genau genug ist, so kann man nach Å. Bjørck auch bei diesem Problemtyp die Lösung mit Hilfe von Nachiterationen verbessern. Diese werden auf dem linearen Gleichungssystem 30 1 0 1 2 r I A b 5@ A D @ A 4 x AT 0 0 durchgeführt, wobei r das Residuum r D b Ax ist. a) Zeigen Sie, dass der Vektor .r; x/ genau dann eine Lösung des obigen Gleichungssystems ist, wenn x die Lösung des linearen Ausgleichsproblems kb Axk2 D min ist und r das Residuum r D b Ax. b) Konstruieren Sie einen Algorithmus zur Lösung des obigen Systems, der die vorhandene QR-Zerlegung von A nutzt. Wie hoch ist damit der Aufwand für eine Nachiteration? Aufgabe 3.3. Im Spezialfall Rang A D p D m D n 1 eines unterbestimmten Systems der Kodimension 1 ist die Matrix S der QR-Zerlegung (3.4) von A ein Vektor s 2 Rm . Zeigen Sie, dass sich der Algorithmus 3.20 zur Berechnung der Pseudoinversen x D AC b D .x1 ; x2 /T vereinfacht zu 1. QR-Zerlegung QA D ŒR; s.
90
3 Lineare Ausgleichsprobleme
2. v WD R1 s 2 Rm . 3. b1 WD Qb 2 Rm . 4. u WD R1 b1 2 Rm . 5. x2 WD hv; ui=.1 C hv; vi/ 2 R. 6. x1 WD u x2 v. Aufgabe 3.4. Ein Versuch mit m Messungen führt auf das lineare Ausgleichsproblem mit A 2 Matm;n .R/. A liege in QR-Zerlegung A D QR vor. Es werde a) ein (erster) Messwert hinzugefügt oder b) der (erste) Messwert weggelassen. Geben Sie Formeln an zur Berechnung von QQ RQ D AQ für 0 1 0 1 wT zT AQ D @ A bzw. A D @ A A AQ unter Benutzung der QR-Zerlegung von A an. Wie lauten die Formeln für eine Modifikation der k-ten Zeile von A? Aufgabe 3.5. In der Chemie werden häufig sogenannte Reaktionsgeschwindigkeitskonstanten Ki (i D 1; : : : ; m) bei Messtemperaturen Ti mit einer absoluten Messgenauigkeit (Toleranz) ıKi gemessen. Mit Hilfe des Arrhenius-Gesetzes E Ki D A exp RTi bestimmt man daraus im Sinne der kleinsten Fehlerquadrate die beiden Parameter, den präexponentiellen Faktor A und die Aktivierungsenergie E, wobei die allgemeine Gaskonstante R vorgegeben ist. Formulieren Sie das gestellte nichtlineare Problem als lineares Ausgleichsproblem. Welche Vereinfachungen erhält man für die beiden Spezialfälle a) ıKi D "Ki (konstanter relativer Fehler), b) ıKi D const (konstanter absoluter Fehler). Aufgabe 3.6. Programmieren Sie das Householder-Orthogonalisierungsverfahren (ohne Spaltentausch) für .m; n/-Matrizen, m n, und lösen Sie damit das lineare Ausgleichsproblem aus Aufgabe 3.5 für den Datensatz aus Tabelle 3.1 (ıKi D 1). Sie können sich das Abtippen der Daten sparen, wenn Sie unter folgender webAdresse nachsehen: http://www.zib.de/Numerik/numsoft/CodeLib/codes/ arrhenius/arrhenius.dat
91
Übungsaufgaben
i
Ti
Ki
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
728:79 728:61 728:77 728:84 750:36 750:31 750:66 750:79 766:34 766:53 766:88 764:88 790:95 790:23 790:02 790:02 809:95 810:36 810:13 810:36 809:67
7:4960 106 1:0062 105 9:0220 106 1:4217 105 3:6608 105 3:0642 105 3:4588 105 2:8875 105 6:2065 105 7:1908 105 7:6056 105 6:7110 105 3:1927 104 2:5538 104 2:7563 104 2:5474 104 1:0599 103 8:4354 104 8:9309 104 9:4770 104 8:3409 104
Tabelle 3.1. Datensatz zu Aufgabe 3.6
Aufgabe 3.7. Sei A D BC . Zeigen Sie, dass AC D C C B C gilt, wenn C oder B orthogonale Matrizen (passender Dimension) sind. Leiten Sie daraus formal die Lösung des linearen Ausgleichsproblems bei QR-Zerlegung her. Hinweis: Im rangdefekten Fall .p < n/ existiert eine Orthogonaltransformation von rechts derart, dass nur noch eine reguläre Dreiecksmatrix der Dimension p zu invertieren ist. Überlegen Sie sich eine solche Transformation im Detail. Aufgabe 3.8. Sei B C Pseudoinverse einer Matrix B und A WD LB C R verallgemeinerte Inverse, wobei L; R reguläre Matrizen sind. Leiten Sie Axiome für A her, die den Penrose-Axiomen entsprechen. Welche Konsequenzen ergeben sich für den Fall von Zeilen- bzw. Spaltenskalierung bei linearer Ausgleichsrechnung bei vollem Rang und im rangdefekten Fall? Überlegen Sie sich insbesondere den Einfluss auf die Rangentscheidung.
4 Nichtlineare Gleichungssysteme und Ausgleichsprobleme
Bis jetzt haben wir uns fast ausschließlich mit linearen Problemen beschäftigt. In diesem Kapitel wollen wir uns der Lösung von nichtlinearen Problemen zuwenden. Dabei sollten wir uns genau vor Augen führen, was wir unter „Lösung“ einer Gleichung verstehen wollen. So kennt wohl jeder aus der Schule die quadratische Gleichung (zur stabilen Lösung siehe Beispiel 2.5) f .x/ WD x 2 2px C q D 0 und ihre analytische, geschlossen darstellbare Lösung q x1;2 D p ˙ p 2 q: Tatsächlich haben wir dadurch das Problem der Lösung einer quadratischen Gleichung nur verschoben auf das Problem der Berechnung einer Wurzel, also der Lösung einer einfacheren quadratischen Gleichung der Form f .x/ WD x 2 c D 0
mit c D jp 2 qj:
Offen bleibt immer noch die Frage, wie eine solche Lösung zu bestimmen ist, d. h., wie ein solches Problem numerisch zu lösen ist.
4.1
Fixpunktiteration
Wir bleiben zunächst bei einer skalaren nichtlinearen Gleichung f .x/ D 0 mit einer beliebigen Funktion f W R ! R. Die Idee der Fixpunktiteration besteht darin, diese Gleichung äquivalent in eine Fixpunktgleichung .x/ D x umzuformen und mit Hilfe der Iterationsvorschrift xkC1 D .xk /
mit k D 0; 1; : : :
für einen gegebenen Startwert x0 eine Folge fx0 ; x1 ; : : : g zu konstruieren. Wir hoffen, dass die so definierte Folge fxk g gegen einen Fixpunkt x mit .x / D x konvergiert, der dann auch Lösung der nichtlinearen Gleichung ist, d. h. f .x / D 0.
93
4.1 Fixpunktiteration
Beispiel 4.1. Wir betrachten die Gleichung f .x/ WD 2x tan x D 0:
(4.1)
Aus Abbildung 4.1 lesen wir als Näherung für die Lösung im Intervall Œ0:5; 2 den Wert x 1:2 ab, den wir als Startwert x0 für eine Fixpunktiteration wählen. Die 4
+
2
+
y D 2x y D tan x +
+
1
x
+
=2
2
Abbildung 4.1. Graphische Lösung von 2x tan x D 0
Gleichung (4.1) können wir leicht in eine Fixpunktgleichung umformen, etwa in xD
1 tan x DW 1 .x/ oder 2
x D arctan.2x/ DW 2 .x/:
Probieren wir die beiden zugehörigen Fixpunktiterationen mit dem Startwert x0 D 1:2 aus, so ergeben sich die Zahlenwerte in Tabelle 4.1 Wie man sieht, divergiert die erste 1 2
k
xkC1 D
0 1 2 3 4 5 6 7
1:2 1:2860 1:70 > =2
tan xk
xkC1 D arctan.2xk / 1:2 1:1760 1:1687 1:1665 1:1658 1:1656 1:1655 1:1655
Tabelle 4.1. Vergleich der Fixpunktiterationen 1 und 2
Folge (tan x hat einen Pol bei =2 und x2 > =2), während die zweite konvergiert. Bei der konvergenten Folge tritt ungefähr bei jedem zweiten Iterationsschritt eine gültige Dezimalziffer mehr auf.
94
4 Nichtlineare Gleichungssysteme und Ausgleichsprobleme
Offensichtlich konvergiert nicht jede naiv konstruierte Fixpunktiteration. Wir betrachten deshalb nun allgemein Folgen fxk g, die durch eine Iterationsfunktion xkC1 D .xk / gegeben sind. Wollen wir die Differenz zweier Folgenglieder jxkC1 xk j D j.xk / .xk1 /j durch die Differenz jxk xk1 j der vorhergehenden abschätzen (wobei wir natürlich sofort an die geometrische Reihe denken), so führt dies zwingend zu der folgenden theoretischen Charakterisierung: Definition 4.2. Sei I D Œa; b R ein Intervall und W I ! R. ist kontrahierend auf I , falls es ein 0 < 1 gibt, so dass j.x/ .y/j jx yj
für alle x; y 2 I .
Für stetig differenzierbares ist die Lipschitz-Konstante leicht zu berechnen. Lemma 4.3. Ist W I ! R stetig differenzierbar, 2 C 1 .I /, so gilt sup x;y2I
j.x/ .y/j D sup j 0 .z/j < 1: jx yj z2I
Beweis. Dies ist eine einfache Anwendung des Mittelwertsatzes in R: Für alle x; y 2 I , x < y, existiert ein 2 Œx; y, so dass .x/ .y/ D 0 ./.x y/: Satz 4.4. Sei I D Œa; b R ein Intervall und W I ! I eine kontrahierende Abbildung mit Lipschitz-Konstante < 1. Dann folgt: a) Es existiert genau ein Fixpunkt x von , .x / D x . b) Für jeden Startwert x0 2 I konvergiert die Fixpunktiteration xkC1 D .xk / gegen x mit
k jx1 x0 j: jxkC1 xk j jxk xk1 j und jx xk j 1 Beweis. Es gilt für alle x0 2 I , dass jxkC1 xk j D j.xk / .xk1 /j jxk xk1 j und daher induktiv jxkC1 xk j k jx1 x0 j:
95
4.1 Fixpunktiteration
Wir wollen zeigen, dass fxk g eine Cauchy-Folge ist, und betrachten daher jxkCm xk j jxkCm xkCm1 j C C jxkC1 xk j . kCm1 C kCm2 C C k / jx1 x0 j ƒ‚ … „ k m1 D .1 C C C /
k jx1 x0 j; 1
wobei die Dreiecksungleichung und die Abschätzung für die geometrische Reihe P1 wir k D 1=.1 / benutzt haben. fx g ist also eine Cauchy-Folge, die in dem
k kD0 vollständigen Raum der reellen Zahlen gegen den Häufungspunkt x WD lim xk k!1
konvergiert.
x
ist aber auch Fixpunkt von , da
jx .x /j D jx xkC1 C xkC1 .x /j D jx xkC1 C .xk / .x /j jx xkC1 j C j.xk / .x /j jx xkC1 j C jx xk j ! 0
für k ! 1:
Damit haben wir den zweiten Teil des Satzes und die Existenz des Fixpunktes bewiesen. Sind x ; y zwei Fixpunkte, so gilt 0 jx y j D j.x / .y /j jx y j: Da < 1, ist dies nur für jx y j D 0 möglich. Daher ist der Fixpunkt von auch eindeutig bestimmt. Bemerkung 4.5. Satz 4.4 ist ein Spezialfall des Banachschen Fixpunktsatzes. In dem Beweis wurden nur die Dreiecksungleichung für den Betrag und die Vollständigkeit von R als Eigenschaften benutzt. Er gilt daher wesentlich allgemeiner, wenn man R durch einen Banach-Raum X, z. B. einen Funktionenraum, und den Betrag durch die zugehörige Norm ersetzt. Solche Sätze spielen nicht nur in der Theorie, sondern auch in der Numerik von Differential- und Integralgleichungen eine Rolle. Wir werden in diesem einführenden Lehrbuch lediglich die Erweiterung auf X D Rn mit einer Norm k k anstelle des Betrages j j benutzen. Bemerkung 4.6. Für skalare nichtlineare Gleichungen, bei denen lediglich ein Programm zur Auswertung von f .x/ zusammen mit einem die Lösung einschließenden Intervall vorliegt, hat sich inzwischen der Algorithmus von R. P. Brent [10] als Standard etabliert. Er beruht auf einer Mischung recht elementarer Techniken wie Bisektion und invers-quadratischer Interpolation, die wir hier nicht eigens ausführen wollen.
96
4 Nichtlineare Gleichungssysteme und Ausgleichsprobleme
Sie sind in [10] detailliert beschrieben. Falls mehr Informationen über f bekannt sind, etwa Konvexität oder Differenzierbarkeit, lassen sich rascher konvergente Verfahren konstruieren, auf die wir im Folgenden unser Augenmerk richten wollen. Zur Beurteilung der Konvergenzgeschwindigkeit einer Fixpunktiteration definieren wir den Begriff der Konvergenzordnung einer Folge fxk g. Definition 4.7. Eine Folge fxk g; xk 2 Rn , konvergiert mit der Ordnung .mindestens/ p 1 gegen x , falls es eine Konstante C 0 gibt, so dass kxkC1 x k C kxk x kp ; wobei wir im Fall p D 1 zusätzlich verlangen, dass C < 1. Im Fall p D 1 sprechen wir auch von linearer, für p D 2 von quadratischer Konvergenz. Weiter heißt fxk g superlinear konvergent, falls es eine nicht negative Nullfolge Ck 0 mit limk!1 Ck D 0 gibt, so dass kxkC1 x k Ck kxk x k: Bemerkung 4.8. Häufig definiert man die Konvergenzordnung p aus Gründen einer einfacheren Analysis alternativ durch die analogen Ungleichungen für die Iterierten kxkC1 xk k C kxk xk1 kp bzw. kxkC1 xk k Ck kxk xk1 k für die superlineare Konvergenz. Wie wir oben an dem einfachen Beispiel f .x/ D 2x tan x gesehen haben, muss man zur Lösung des nichtlinearen Problems f .x/ D 0 eine geeignete Fixpunktiteration unter mehreren möglichen auswählen. Dies ist im Allgemeinen keine einfache Aufgabe. Wegen jxkC1 x j D j.xk / .x /j jxk x j und 0 < 1 konvergiert die Fixpunktiteration xkC1 D .xk / für eine kontrahierende Abbildung im allgemeinen Fall nur linear. Von einem guten Iterationsverfahren erwarten wir jedoch, dass es zumindest superlinear oder linear mit einer kleinen Konstante C 1 konvergiert. Im nächsten Kapitel werden wir uns deshalb einem Verfahren mit quadratischer Konvergenz zuwenden.
97
4.2 Newton-Verfahren für nichtlineare Gleichungssysteme
4.2
Newton-Verfahren für nichtlineare Gleichungssysteme
Wir bleiben zunächst wiederum bei einer skalaren nichtlinearen Gleichung f .x/ D 0 und suchen eine Nullstelle x von f . Da uns die Funktion f nicht global zur Verfügung steht, sondern nur punktweise auswertbar ist, approximieren wir sie durch ihre Tangente p.x/ im Startpunkt x0 . Anstelle des Schnittpunktes x des Graphen von f mit der x-Achse berechnen wir dann den Schnittpunkt x1 der Tangente (siehe Abbildung 4.2). Das Tangentenpolynom hat die Darstellung p.x/ D f .x0 / C f 0 .x0 /.x x0 /:
p.x/ f .x/ x0
0 f .x0 /
+
+
x1
+
+
x
o
Abbildung 4.2. Idee des Newton-Verfahrens im R1
Die zugehörige Nullstelle x1 lässt sich im Fall von f 0 .x0 / ¤ 0 durch x 1 D x0
f .x0 / f 0 .x0 /
angeben. Die Grundidee des Newton-Verfahrens besteht nun in der wiederholten Anwendung dieser Vorschrift xkC1 WD xk
f .xk / ; f 0 .xk /
k D 0; 1; 2; : : : :
Offensichtlich ist dies eine spezielle Fixpunktiteration mit der Iterationsfunktion .x/ WD x
f .x/ : f 0 .x/
Sie kann natürlich nur gebildet werden, falls f differenzierbar ist und f 0 .x/ zumindest in einer Umgebung der Lösung nicht verschwindet. Die Konvergenzeigenschaften des Verfahrens werden wir weiter unten in allgemeinerem theoretischen Rahmen analysieren.
98
4 Nichtlineare Gleichungssysteme und Ausgleichsprobleme
Beispiel 4.9. Berechnung der Quadratwurzel. Zu lösen ist die Gleichung f .x/ WD x 2 c D 0: Im Rechner werde die Zahl c als Gleitkommazahl c D a2p
mit 0:5 < a 1
durch die Mantisse a und den Exponenten p 2 N dargestellt. Damit gilt ´ p p falls p D 2m; 2m a; c D mp p 2 a 0:5; falls p D 2m 1; wobei
p
p
a 1: p p Wird 0:5 D 1= 2 0:71 ein für allemal gesondert berechnet und auf die erforderliche Anzahl von Ziffern abgespeichert, so bleibt nur noch das Problem 0:5 <
f .x/ WD x 2 a D 0 zu lösen. Da
f 0 .x/ D 2x ¤ 0
für a 2 0:5; 1 für x 2 0:5; 1,
ist das Newton-Verfahren anwendbar und wir erhalten als Iterationsfunktion .x/ D x
f .x/ x2 a x a 1 a
D x D x C D x C ; f 0 .x/ 2x 2 2x 2 x
also die Newton-Iteration xkC1 WD
1 a : xk C 2 xk
Die Division durch 2 kann dabei sogar sehr billig durch die Subtraktion von 1 im Exponenten realisiert werden, so dass nur eine Division und eine Addition pro Iterationsschritt durchgeführt werden müssen. Für a D 0:81 und x0 D 1 haben wir die NewtonIteration in Tabelle 4.2 wiedergegeben. Es zeigt sich eine ungefähre Verdopplung der Anzahl der gültigen Ziffern pro Iterationsschritt, das typische Verhalten bei quadratischer Konvergenz. Das Newton-Verfahren lässt sich leicht auf Systeme nichtlinearer Gleichungen F .x/ D 0 übertragen, wobei F W Rn ! Rn eine stetig differenzierbare Funktion mit gewissen Zusatzeigenschaften ist. Die graphische Herleitung ist für Dimensionen n > 1
99
4.2 Newton-Verfahren für nichtlineare Gleichungssysteme
k xk 0 1:0000000000 1 0:9050000000 2 0:9000138122 3 0:90000000001 Tabelle 4.2. Newton-Iteration für a D 0:81 und x0 D 1
natürlich nicht mehr möglich. Im Kern müssen wir jedoch lediglich die nichtlineare Funktion F lokal durch eine lineare Funktion ersetzen. Die Taylor-Entwicklung von F um einen Startwert x 0 ergibt 0 D F .x/ D F .x 0 / C F 0 .x 0 /.x x 0 / Co .jx x 0 j/ „ ƒ‚ … N WD F .x/
für x ! x 0 .
(4.2)
Die Nullstelle x 1 der linearen Ersatzabbildung FN ist gerade x 1 D x 0 F 0 .x 0 /1 F .x 0 /; falls die Jacobimatrix F 0 .x 0 / an der Stelle x 0 invertierbar ist. Dies inspiriert die Newton-Iteration .k D 0; 1; : : : / F 0 .x k /x k D F .x k /
mit x kC1 D x k C x k .
(4.3)
Natürlich wird nicht etwa die Inverse F 0 .x k /1 in jedem Iterationsschritt berechnet, sondern nur die sogenannte Newton-Korrektur x k als Lösung des obigen linearen Gleichungssystems. Wir haben also die numerische Lösung eines nichtlinearen Gleichungssystems zurückgeführt auf die numerische Lösung einer Folge von linearen Gleichungssystemen. Bevor wir uns nun der Untersuchung der Konvergenzeigenschaften des oben definierten Newton-Verfahrens zuwenden, wollen wir noch auf eine Invarianzeigenschaft hinweisen. Offensichtlich ist das Problem der Lösung von F .x/ D 0 äquivalent zu dem Problem G.x/ WD AF .x/ D 0 für eine beliebige invertierbare Matrix A 2 GL.n/. Zugleich ist auch die NewtonFolge fx k g bei gegebenem x 0 unabhängig von A, da G 0 .x/1 G.x/ D .AF 0 .x//1 AF .x/ D F 0 .x/1 A1 AF .x/ D F 0 .x/1 F .x/: Die Transformation F ! G ist eine Affintransformation (ohne Translationsanteil). Deshalb hat sich die Sprechweise eingebürgert: Sowohl das zu lösende Problem
100
4 Nichtlineare Gleichungssysteme und Ausgleichsprobleme
F .x/ D 0 als auch das Newton-Verfahren ist affin-invariant. Entsprechend verlangen wir, dass die Konvergenzeigenschaften des Newton-Verfahrens durch eine affininvariante Theorie beschrieben werden. Unter den zahlreichen unterschiedlichen Konvergenzsätzen für das Newton-Verfahren greifen wir einen relativ neuen heraus, da er besonders klare Resultate liefert und trotzdem relativ einfach zu beweisen ist (vgl. [28]). Satz 4.10. Sei D Rn offen und konvex und F W D ! Rn eine stetig differenzierbare Funktion mit invertierbarer Jacobimatrix F 0 .x/ für alle x 2 D. Es gelte für ein ! 0 die folgende (affin-invariante) Lipschitz-Bedingung: kF 0 .x/1 .F 0 .x C sv/ F 0 .x//vk s!kvk2
(4.4)
für alle s 2 Œ0; 1, x 2 D und v 2 Rn , so dass x C v 2 D. Ferner existiere eine Lösung x 2 D und ein Startwert x 0 2 D derart, dass
WD kx x 0 k <
2 !
und
B .x / D:
Dann bleibt die durch das Newton-Verfahren definierte Folge fx k g für k > 0 in der offenen Kugel B .x / und konvergiert gegen x , d. h. kx k x k <
für k > 0
lim x k D x :
und
k!1
Die Konvergenzgeschwindigkeit lässt sich abschätzen durch kx kC1 x k
! k kx x k2 2
für k D 0; 1; : : : :
Darüber hinaus ist die Lösung x eindeutig in B2=! .x /. Beweis. Wir leiten zunächst aus der Lipschitz-Bedingung (4.4) das folgende Hilfsresultat für x; y 2 D ab: kF 0 .x/1 .F .y/ F .x/ F 0 .x/.y x//k
! ky xk2 : 2
(4.5)
Dazu benutzen wir die Lagrangesche Form des Mittelwertsatzes der Integralrechnung: Z 1 .F 0 .x C s.y x// F 0 .x//.y x/ ds: F .y/ F .x/ F 0 .x/.y x/ D sD0
Die linke Seite in (4.5) lässt sich damit umformen und abschätzen gemäß Z 1 0 1 0 0 F .x/ .F .x C s.y x// F .x//.y x/ ds sD0
Z
1
sD0
s!ky xk2 ds D
! ky xk2 ; 2
4.2 Newton-Verfahren für nichtlineare Gleichungssysteme
101
womit (4.5) bewiesen ist. Mit dieser Vorbereitung können wir uns nun der Frage der Konvergenz der Newton-Iteration zuwenden. Unter Verwendung der Iterationsvorschrift (4.3) sowie F .x / D 0 erhalten wir x kC1 x D x k F 0 .x k /1 F .x k / x D x k x F 0 .x k /1 .F .x k / F .x // D F 0 .x k /1 .F .x / F .x k / F 0 .x k /.x x k //: Mit Hilfe von (4.5) liefert dies die Abschätzung der Konvergenzgeschwindigkeit kx kC1 x k
! k kx x k2 : 2
Falls 0 < kx k x k , so folgt daraus kx kC1 x k
! k kx x k kx k x k < kx k x k: 2 „ ƒ‚ … !=2 < 1
Da kx 0 x k D , gilt daher kx k x k < für alle k > 0 und die Folge fx k g konvergiert gegen x . Zum Beweis der Eindeutigkeit in der Kugel B2=! .x / um x mit Radius 2=! benutzen wir nochmals das Hilfsresultat (4.5). Sei x 2 B2=! .x / eine weitere Lösung, also F .x / D 0 und kx x k < 2=!. Einsetzen in (4.5) liefert dann kx x k D kF 0 .x /1 .0 0 F 0 .x /.x x //k ! kx x k kx x k: „2 ƒ‚ … <1 Dies ist nur möglich, falls x D x .
In Kurzform lautet der obige Satz: Das Newton-Verfahren konvergiert lokal quadratisch. Bemerkung 4.11. Varianten des obigen Satzes liefern zusätzlich noch die Existenz einer Lösung x , die wir ja oben vorausgesetzt hatten. Die zugehörigen Beweise sind jedoch etwas anspruchsvoller (siehe [21]). Die theoretischen Annahmen von Satz 4.10 lassen sich in Unkenntnis der Lösung x leider nicht direkt überprüfen. Andererseits möchten wir natürlich möglichst früh wissen, ob eine Newton-Iteration konvergiert oder nicht, um uns unnötige Iterationsschritte zu ersparen. Wir suchen daher nach einem im Algorithmus überprüfbaren Konvergenzkriterium, das es uns erlaubt, die Konvergenz des Newton-Verfahrens bereits nach einem oder wenigen Schritten zu beurteilen. Wie bereits in Kapitel 2.4.3
102
4 Nichtlineare Gleichungssysteme und Ausgleichsprobleme
bei der Beurteilung der Lösungen linearer Gleichungssysteme, richtet sich auch hier unser Blick als Erstes auf das Residuum F .x k /. Offenbar ist die Lösung des nichtlinearen Gleichungssystems F .x/ D 0 äquivalent zur Minimierung des Residuums. Man könnte daher erwarten, dass dies monoton kleiner wird, d. h. kF .x kC1 /k N kF .x k /k für k D 0; 1; : : : und ein N < 1.
(4.6)
Dieser Standard-Monotonietest ist aber nicht affin-invariant. Eine Multiplikation von F mit einer invertierbaren Matrix A kann das Ergebnis des Monotonietests (4.6) beliebig verändern. Mit der Idee, die Ungleichung (4.6) in eine affin-invariante und zugleich einfach ausführbare Bedingung zu transformieren, schlug P. Deuflhard 1972 den sogenannten natürlichen Monotonietest kF 0 .x k /1 F .x kC1 /k N kF 0 .x k /1 F .x k /k
für ein N < 1
(4.7)
vor – für eine ausführliche Darstellung dieser Thematik siehe etwa [21]. Auf der rechten Seite entdecken wir die Newton-Korrektur x k wieder, die wir ohnehin berechnen müssen. Auf der linken Seite erkennen wir die vereinfachte Newton-Korrektur kC1 x als Lösung des linearen Gleichungssystems F 0 .x k /x
kC1
D F .x kC1 /:
Damit schreibt sich der natürliche Monotonietest (4.7) in Kurzform als kx
kC1
k N k kx k:
(4.8)
Für die vereinfachte Newton-Korrektur müssen wir offenbar ein weiteres lineares Gleichungssystem mit der gleichen Matrix F 0 .x k / zum veränderten Funktionswert F .x kC1 / am nächsten Iterationspunkt x kC1 D x k C x k lösen. Dies ist ohne viel Mehraufwand möglich: Bei der Verwendung eines Eliminationsverfahrens (mit Aufwand O.n3 / Operationen bei vollbesetzter Matrix) müssen wir nämlich lediglich die Vorwärts- und Rückwärtssubstitutionen zusätzlich ausführen (also nur O.n2 / Operationen). Die theoretische Analyse in [21] zeigt, dass im Konvergenzbereich des gewöhnlichen Newton-Verfahrens gilt: kx
kC1
1 k kx k k: 4
Wir „weichen“ diese Bedingung etwas auf und setzen die Konstante N WD 0:5 in den obigen natürlichen Monotonietest ein. Falls dieser Test (4.8) für ein k verletzt ist, d. h., falls sich 1 kC1 k > kx k k kx 2
4.2 Newton-Verfahren für nichtlineare Gleichungssysteme
103
ergibt, so ist die Newton-Iteration abzubrechen. In diesem Fall bleibt uns nichts anderes übrig, als mit einer anderen, hoffentlich besseren, Schätzung x 0 die NewtonIteration erneut zu starten. Eine Möglichkeit, die lokale Konvergenz des Newton-Verfahrens zu erweitern, ist die sogenannte Dämpfung der Newton-Korrekturen x k . Dies führt zu der geänderten Iteration x kC1 D x k C k x k ; wobei 0 < k 1 der sogenannte Dämpfungsfaktor ist. Für dessen Wahl können wir wieder den natürlichen Monotonietest nutzen. Als einfache Dämpfungsstrategie empfehlen wir, die Dämpfungsfaktoren k derart zu wählen, dass der natürliche Monotonietest (4.8) für N WD 1 k =2 erfüllt ist, d. h. k kC1 kx kx k k; .k /k 1 2 wobei x
kC1
.k / D F 0 .x k /1 F .x k C k x k /
die vereinfache Newton-Korrektur des gedämpften Verfahrens ist. In der einfachsten Implementierung wählen wir einen Schwellwert min 1 und Dämpfungsfaktoren k aus einer Folge, etwa ± ° 1 1 1; ; ; : : : ; min : 2 4 Falls k < min , brechen wir die Iteration ab. In kritischen Beispielen wird man versuchsweise mit 0 D min beginnen, in harmlosen eher mit 0 D 1. War k erfolgreich, so wird man es im nächsten Iterationsschritt mit kC1 D min.1; 2k / versuchen, um asymptotisch die quadratische Konvergenz des gewöhnlichen Newton-Verfahrens (mit D 1) zu erreichen. War der natürliche Monotonietest mit k verletzt, so wird man mit k =2 erneut testen. Theoretisch fundiertere, im Allgemeinen wesentlich effektivere Dämpfungsstrategien sind in der Monographie [21] ausgearbeitet. Derartige Strategien sind in zahlreichen modernen Programmpaketen des Scientific Computing implementiert. Bemerkung 4.12. Anstelle der exakten Jacobimatrix genügt in der Implementierung des Newton-Verfahrens in aller Regel auch eine brauchbare Näherung. Übliche Approximationstechniken sind numerisches Differenzen (siehe dazu jedoch Aufgabe 4.7) oder automatisches Differenzieren nach A. Griewank [50]. Darüber hinaus konvergiert das Verfahren auch meist unbeeinträchtigt, falls „unwichtige“ Elemente der Jacobimatrix weggelassen werden. Diese Technik des sogenannten sparsing empfiehlt sich besonders für große nichtlineare Systeme. Sie erfordert jedoch Einsicht in das zugrundeliegende Problem.
104
4 Nichtlineare Gleichungssysteme und Ausgleichsprobleme
Eine alternative Methode zur Erweiterung des Konvergenzbereichs sind die sogenannten Fortsetzungsmethoden. In diesem Zugang wird eine geeignete Einbettung des nichtlinearen Problems bezüglich eines Parameters konstruiert, etwa F .x; / D 0; was jedoch Zusatzkenntnisse über das zu lösende Problem verlangt. Diese Methodik werden wir in Kapitel 4.4.2 behandeln.
4.3
Gauß-Newton-Verfahren für nichtlineare Ausgleichsprobleme
Die allgemeine Problemstellung der Gaußschen Ausgleichsrechnung haben wir in Kapitel 3.1 ausführlich behandelt. Unser Ziel ist es, Parameter x 2 Rn , die in einer Modellfunktion ' auftreten, im Sinne der kleinsten Fehlerquadrate an Messdaten b anzupassen (engl.: parameter fitting). Falls diese Parameter linear in ' eingehen, so führt dies auf die lineare Ausgleichsrechnung, die wir in Kapitel 3 dargestellt haben. Gehen die Parameter hingegen nichtlinear ein, so ergibt sich ein nichtlineares Ausgleichsproblem (engl.: nonlinear least squares problem) g.x/ WD kF .x/k22 D min; wobei wir voraussetzen, dass F W D Rn ! Rm eine zweimal stetig differenzierbare Funktion F 2 C 2 .D/ auf einer offenen Menge D Rn ist. Wir behandeln in diesem Kapitel nur den überbestimmten Fall m > n. Da in den Anwendungen in der Regel wesentlich mehr Messdaten als Parameter vorliegen, d. h. m n, spricht man auch von Datenkompression. Wir lassen ferner Effekte am Rand @D aus dem Spiel und suchen nur nach lokalen inneren Minima x 2 D von g, die den hinreichenden Bedingungen g 0 .x / D 0 und g 00 .x / positiv definit genügen. Da g 0 .x/ D 2F 0 .x/T F .x/, müssen wir also das System G.x/ WD F 0 .x/T F .x/ D 0
(4.9)
von n nichtlinearen Gleichungen lösen. Die Newton-Iteration für dieses Gleichungssystem ist (4.10) G 0 .x k /x k D G.x k / mit k D 0; 1; : : : , wobei die Jacobimatrix G 0 .x/ D F 0 .x/T F 0 .x/ C F 00 .x/T F .x/
4.3 Gauß-Newton-Verfahren für nichtlineare Ausgleichsprobleme
105
unter obiger Annahme in einer Umgebung von x positiv definit und damit invertierbar ist. Wenn Modell und Daten in x vollständig übereinstimmen, d. h. kompatibel sind, dann gilt F .x / D 0
und
G 0 .x / D F 0 .x /T F 0 .x /:
Die Bedingung „G 0 .x / positiv definit“ ist in diesem Fall äquivalent zu der Bedingung, dass die Jacobimatrix F 0 .x / vollen Rang n hat. Für kompatible oder zumindest „fast kompatible“ nichtlineare Ausgleichsprobleme möchte man sich die Mühe der Berechnung und Auswertung des Tensors F 00 .x/ ersparen. Deswegen ersetzen wir die Jacobimatrix G 0 .x/ in der Newton-Iteration (4.10) durch F 0 .x/T F 0 .x/ und erhalten so die Iterationsvorschrift F 0 .x k /T F 0 .x k /x k D F 0 .x k /T F .x k /: Offensichtlich sind dies die Normalgleichungen zu dem linearen Ausgleichsproblem kF 0 .x k /x C F .x k /k2 D min : Unter Benutzung der Schreibweise für die Pseudoinverse aus Kapitel 3.3 erhalten wir die formale Darstellung x k D F 0 .x k /C F .x k /
mit x kC1 D x k C x k .
(4.11)
Wir haben also auf diese Weise die numerische Lösung eines nichtlinearen Gaußschen Ausgleichsproblems zurückgeführt auf die numerische Lösung einer Folge von linearen Gaußschen Ausgleichsproblemen. Bemerkung 4.13. Die für das nichtlineare Ausgleichsproblem zu lösende Gleichung (4.9) ist bei vollem Rang der Jacobimatrix wegen F 0 .x/C D .F 0 .x/T F 0 .x//1 F 0 .x/T äquivalent zu
F 0 .x/C F .x/ D 0:
Diese Charakterisierung gilt auch im rangdefekten und unterbestimmten Fall. Wir hätten (4.11) auch direkt, ähnlich wie das Newton-Verfahren für nichtlineare Gleichungssysteme, aus dem ursprünglichen Minimierungsproblem durch TaylorEntwicklung und Abbrechen nach dem linearen Term herleiten können. Deswegen heißt (4.11) auch Gauß-Newton-Verfahren für das nichtlineare Ausgleichsproblem kF .x/k2 D min. Die Konvergenz des Gauß-Newton-Verfahrens charakterisiert der folgende Satz (vgl. [27]), der eine unmittelbare Verallgemeinerung des entsprechenden Konvergenzsatzes 4.10 für das Newton-Verfahren ist.
106
4 Nichtlineare Gleichungssysteme und Ausgleichsprobleme
Satz 4.14. Sei D Rn offen, konvex und F W D ! Rm , m n, eine stetig differenzierbare Abbildung, deren Jacobimatrix F 0 .x/ für alle x 2 D vollen Rang n habe. Es existiere eine Lösung x 2 D des zugehörigen nichtlinearen Ausgleichsproblems kF .x/k2 D min. Ferner gebe es Konstanten ! > 0 und 0 < 1, so dass kF 0 .x/C .F 0 .x C sv/ F 0 .x//vk s!kvk2
(4.12)
für alle s 2 Œ0; 1, x 2 D und v 2 Rn mit x C v 2 D, und kF 0 .x/C F .x /k kx x k
(4.13)
für alle x 2 D. Falls dann für einen gegebenen Startwert x 0 2 D
WD kx 0 x k < 2.1 /=! DW
(4.14)
gilt, so bleibt die durch das Gauß-Newton-Verfahren .4:11/ definierte Folge ¹x k º in der offenen Kugel B .x / und konvergiert gegen x , d. h. kx k x k <
für k > 0 und limk!1 x k D x .
Die Konvergenzgeschwindigkeit lässt sich abschätzen durch kx kC1 x k
! k kx x k2 C kx k x k: 2
(4.15)
Insbesondere ergibt sich quadratische Konvergenz für kompatible nichtlineare Ausgleichsprobleme. Darüber hinaus ist die Lösung x eindeutig in B .x /. Beweis. Die Beweisführung orientiert sich unmittelbar am Beweis von Satz 4.10. Aus der Lipschitzbedingung (4.12) folgt sofort das entsprechende Hilfsresultat kF 0 .x/C .F .y/ F .x/ F 0 .x/.y x//k
! ky xk2 2
für alle x; y 2 D. Zur Abschätzung der Konvergenzgeschwindigkeit benutzen wir die Definition (4.11) der Gauß-Newton-Iteration sowie die Eigenschaft F 0 .x /C F .x / D 0 der Lösung x , deren Existenz vorausgesetzt wurde. Aus der Annahme des vollen Ranges der Jacobimatrix folgt sofort, siehe Kapitel 3.3, dass F 0 .x/C F 0 .x/ D In
für alle x 2 D.
Damit ergibt sich x kC1 x D x k x F 0 .x k /C F .x k / D F 0 .x k /C .F .x / F .x k / F 0 .x k /.x x k // F 0 .x k /C F .x /:
4.3 Gauß-Newton-Verfahren für nichtlineare Ausgleichsprobleme
107
Unter Verwendung der Voraussetzungen (4.12) und (4.13) gilt daher
! kx kC1 x k kx k x k C kx k x k: 2 Zusammen mit Voraussetzung (4.14) und Induktion über k impliziert dies kx kC1 x k < kx k x k : Daraus ergibt sich sofort, dass die Folge der Iterierten in B .x / verbleibt und gegen den Lösungspunkt x konvergiert. Für kompatible Ausgleichsprobleme, d. h. F .x / D 0, können wir in (4.13) insbesondere D 0 wählen und daher quadratische Konvergenz erreichen. Die Eindeutigkeit der Lösung ergibt sich analog zum Beweis von Satz 4.10. Bemerkung 4.15. Eine Variante des obigen Satzes liefert zusätzlich noch die Existenz einer Lösung x , die wir ja oben vorausgesetzt hatten, wobei die Bedingung des vollen Ranges der Jacobimatrix abgeschwächt werden kann (vgl. [21]); lediglich das Penrose-Axiom F 0 .x/C F 0 .x/F 0 .x/C D F 0 .x/C wird noch benötigt. Die Eindeutigkeit verlangt jedoch, ebenso wie im linearen Spezialfall (vgl. Kapitel 3.3), die Voraussetzung maximalen Rangs. Andernfalls existiert auch im nichtlinearen Fall eine Lösungsmannigfaltigkeit von der Dimension des Rangdefektes, und das Gauß-Newton-Verfahren konvergiert gegen einen Punkt dieser Mannigfaltigkeit. Wir werden diese Eigenschaft in Kapitel 4.4.2 benutzen. Abschließend wollen wir die Bedingung < 1 noch etwas eingehender diskutieren. Für > 0 überwiegt in der Abschätzung (4.15) für die Konvergenzgeschwindigkeit der lineare Anteil kx k x k, wenn wir uns der Lösung x nähern. Das Gauß-Newton-Verfahren konvergiert daher in diesem Fall asymptotisch linear mit dem Kontraktionsfaktor . Dies erzwingt offenbar die Bedingung < 1. Die Größe spiegelt gerade die Vernachlässigung des Tensors F 00 .x/ in der Herleitung über das Newton-Verfahren (4.10) wider. Eine andere Interpretation ergibt sich aus der Betrachtung des Einflusses von statistischen Messfehlern ıb auf die Lösung. Im Fall vollen Rangs der Jacobimatrix F 0 .x / ist ıx D F 0 .x /C ıb die durch ıb bewirkte Störung der Parameter in linearisierter Fehlertheorie. Eine derartige Größe wird auch in nahezu allen derzeit verbreiteten Programmpaketen der Statistik als a-posteriori Störungsanalyse ausgegeben. Sie berücksichtigt jedoch offensichtlich nicht den möglichen Effekt der Nichtlinearität des Modells. Eine genauere Analyse dieses Problems, die von H. G. Bock [8] durchgeführt wurde, zeigt tatsächlich, dass die Ersetzung kıx k ! kıx k=.1 /
(4.16)
108
4 Nichtlineare Gleichungssysteme und Ausgleichsprobleme
vorzunehmen ist. Im kompatiblen Fall, F .x / D 0 und D 0, sowie im „fast kompatiblen“ Fall, 0 < 1, ist also die linearisierte Fehlertheorie ausreichend. Im Fall 1 jedoch zeigt Bock, dass es immer statistische Störungen derart gibt, dass die Lösung „unbeschränkt wegläuft“. Solche Modelle sind damit bereits im statistischen Sinne schlecht gestellt oder inadäquat. Umgekehrt heißen nichtlineare Ausgleichsprobleme im statistischen Sinn wohlgestellt oder adäquat, falls < 1. Der Konvergenzsatz 4.14 lautet demnach in Kurzform: Das gewöhnliche GaußNewton-Verfahren konvergiert lokal für adäquate und quadratisch für kompatible nichtlineare Ausgleichsprobleme. Intuitiv ist klar, dass nicht jedes Modell und jeder Satz von Messdaten die eindeutige Bestimmung geeigneter Parameter erlaubt. Andererseits gestatten im Allgemeinen nur eindeutige Lösungen eine klare Interpretation im Zusammenhang des zugrundeliegenden theoretischen Modells. Das hier dargestellte Gauß-Newton-Verfahren prüft die Eindeutigkeit anhand von drei Kriterien ab. a) Überprüfung der auftretenden Jacobimatrizen auf vollen Rang im Sinn einer numerischen Rangentscheidung, wie sie z. B. in Kapitel 3.2 auf der Basis einer QR-Zerlegung dargestellt wurde. b) Überprüfung der statistischen Wohlgestelltheit des Problems mit Hilfe der Bedingung < 1 durch eine Schätzung : kx kC1 k D kx k k von in der linear konvergenten Schlussphase der Gauß-Newton-Iteration. c) Überprüfung des Fehlerverhaltens durch eine a-posteriori Fehleranalyse, wie in (4.16) angedeutet. Man beachte, dass alle drei Kriterien von der Wahl der Messgenauigkeiten ıb (vgl. Kapitel 3.1) sowie der Skalierung der Parameter x beeinflusst werden. Bemerkung 4.16. Ähnlich wie beim Newton-Verfahren gibt es auch beim GaußNewton-Verfahren die Möglichkeit, den Konvergenzbereich durch eine Dämpfungsstrategie zu erweitern: mit x k als gewöhnliche Gauß-Newton-Korrektur lautet die Iterationsvorschrift x kC1 D x k C k x k
mit 0 < k 1.
Auch hierfür gibt es eine theoretisch fundierte effektive Strategie, die in einer Reihe von moderneren Ausgleichsprogrammen implementiert ist – siehe [21]. Diese Programme enthalten zugleich eine automatische Kontrolle, ob das behandelte Ausgleichsproblem adäquat ist. Falls nicht, was selten genug auftritt, sollte entweder das Modell verbessert oder die Messgenauigkeit erhöht werden. Außerdem stellen diese Programme automatisch sicher, dass die Iteration nur bis zu einer relativen Genauigkeit geführt wird, die zu der Messgenauigkeit passt.
109
4.3 Gauß-Newton-Verfahren für nichtlineare Ausgleichsprobleme
Beispiel 4.17. Biochemische Reaktion. Zur Illustration des iterativen Ablaufes beim (gedämpften) Gauß-Newton-Verfahren geben wir ein nichtlineares Ausgleichsproblem aus der Biochemie, die sogenannte Feulgen-Hydrolyse der DNA [78]. Aus einer umfangreichen Messreihe greifen wir ein Problem mit m D 30 Messdaten und n D 3 unbekannten Parametern x1 , x2 und x3 heraus (siehe Tabelle 4.3). t 6 12 18 24 30 36
b 24.19 35.34 43.43 42.63 49.92 51.53
t 42 48 54 60 66 72
b 57.39 59.56 55.60 51.91 58.27 62.99
t 78 84 90 96 102 108
b 52.99 53.83 59.37 62.35 61.84 61.62
t 114 120 126 132 138 144
b 49.64 57.81 54.79 50.38 43.85 45.16
t 150 156 162 168 174 180
b 46.72 40.68 35.14 45.47 42.40 55.21
Tabelle 4.3. Messreihe .ti ; bi /, i D 1; : : : ; 30, für Beispiel 4.17
Ursprünglich wurde die Modellfunktion in der Form x 1 x2 '.xI t / WD exp.x3 t / exp.x2 t / x2 x3 angegeben, wobei x1 die DNA-Konzentration und x2 , x3 Reaktionsgeschwindigkeitskoeffizienten sind. Für x2 D x3 tritt offenbar ein Grenzwert 0=0 auf, d. h., für x2 x3 führt numerische Auslöschung eventuell zu Schwierigkeiten im Iterationsverhalten. Wir führen deswegen eine andere Parametrisierung durch, die zugleich noch die (aus der Biochemie kommenden) Ungleichungen x2 > x3 0 beachtet: Anstelle von x1 , x2 und x3 betrachten wir die Unbekannten p p xN 1 WD x1 x2 ; xN 2 WD x3 und xN 3 WD .x2 x3 /=2 und die transformierte Modellfunktion sinh.xN 32 t / '.xI N t / WD xN 1 exp .xN 22 C xN 32 /t : xN 32 Die Eigenschaft sinh.xN 3 t / D xN 32 t C o.jt j/ für kleines Argument ist üblicherweise in jeder Standardroutine für sinh sichergestellt, so dass nur die Auswertung von ' für xN 3 D 0 im Programm eigens zu behandeln ist. Als Startdaten wählen wir xN 0 D .80; 0:055; 0:21/. Das iterative Verhalten der Modellfunktion '.xN k I t / über dem Messintervall t 2 Œ0; 180 ist in Abbildung 4.3 dargestellt. Als „vernünftige“ relative Genauigkeit ergibt sich tol D 0:142 103 , im Resultat x gilt D 0:156 und die Norm des Residuums beträgt kF .x /k2 3 102 . Das Problem ist also trotz „großem“ Residuum kF .x/k2 fast kompatibel in der theoretisch relevanten Charakterisierung mit .
110
4 Nichtlineare Gleichungssysteme und Ausgleichsprobleme
60 5 45
6, 7, 8 4
30
3 2
15 0
50
100
150
t
Abbildung 4.3. Messreihe und iterierte Modellfunktion für Beispiel 4.17
Bemerkung 4.18. Die meisten Programmpakete der Statistik enthalten zur Zeit immer noch eine andere Erweiterung des Konvergenzbereichs, das sogenannte Levenberg-Marquardt-Verfahren. Diesem Verfahren liegt die Idee zugrunde, dass die lokale Linearisierung : F .x/ D F .x k / C F 0 .x k /.x x k /; welche zum (gewöhnlichen) Newton-Verfahren führt, bei Iterierten x k „weit weg“ von der Lösung x sicherlich nur in einer Umgebung von x k vernünftig ist. Anstelle von (4.2) wird man daher das folgende Ersatzproblem lösen: kF .x k / C F 0 .x k /zk2 D min
(4.17)
unter der Nebenbedingung, dass kzk2 ı;
(4.18)
wobei der (lokal anzupassende) Parameter ı noch zu diskutieren wäre. Die Nebenbedingung (4.18) kann mit einem Lagrange-Multiplikator p 0 durch p.kzk22 ı 2 / 0 an das Minimierungsproblem (4.17) angekoppelt werden. Falls kzk2 D ı, so muss p > 0 sein, falls kzk2 < ı, so gilt p D 0. Dies führt zu der Formulierung kF .x k / C F 0 .x k /zk22 C pkzk22 D min : Diese quadratische Funktion in z wird minimiert durch ein z k , welches der folgenden Gleichung genügt: 0 k T 0 k F .x / F .x / C pIn z k D F 0 .x k /T F .x k /:
4.4 Parameterabhängige nichtlineare Gleichungssysteme
111
Die Anpassung des Parameters ı wird dabei durch die Anpassung des Parameters p ersetzt. Offensichtlich ist die auftretende symmetrische Matrix für p > 0 auch bei rangdefekter Jacobimatrix F 0 .x k / positiv definit, was dem Verfahren eine gewisse Robustheit verleiht. Andererseits wird diese Robustheit mit einer Reihe schwerwiegender Nachteile erkauft: Die „Lösungen“ sind oft keine Minima von g.x/, sondern lediglich Sattelpunkte mit g 0 .x/ D 0. Ferner führt die „Verschleierung“ des Ranges der Jacobimatrix dazu, dass die Eindeutigkeit einer ausgegebenen Lösung nicht geklärt ist, so dass die numerischen Resultate häufig fehlinterpretiert werden. Außerdem ist obiges lineares System eine Verallgemeinerung der Normalgleichungen mit all ihren in Kapitel 3.1.2 diskutierten Nachteilen (vgl. Aufgabe 5.6). Schließlich ist die obige Formulierung nicht affin-invariant (vgl. Aufgabe 4.12). Insgesamt sehen wir, dass nichtlineare Ausgleichsprobleme wegen ihres statistischen Hintergrundes eine wesentlich subtilere Aufgabe darstellen als nichtlineare Gleichungssysteme.
4.4
Parameterabhängige nichtlineare Gleichungssysteme
In zahlreichen Anwendungen der Natur- und Ingenieurwissenschaften ist nicht nur ein isoliertes nichtlineares Problem F .x/ D 0 zu lösen, sondern eine ganze Schar von Problemen F .x; / D 0 mit F W D Rn Rp ! Rn , (4.19) die von einem oder mehreren Parametern 2 Rp abhängen. Wir beschränken uns hier auf den Fall p D 1, d. h. eines skalaren Parameters 2 R, und beginnen mit der Analyse der Lösungsstruktur eines solchen parameterabhängigen nichtlinearen Gleichungssystems, deren wichtigste Elemente wir an einem einfachen Beispiel erläutern. Mit der dort gewonnenen Einsicht konstruieren wir in Kapitel 4.4.2 ein Klasse von Verfahren zur Lösung parameterabhängiger Systeme, die sogenannten Fortsetzungsmethoden.
4.4.1
Lösungsstruktur
Wir betrachten ein parameterabhängiges Gleichungssystem F W D Œa; b ! Rn ;
D Rn offen;
in einem skalaren Parameter 2 Œa; b 2 R, wobei wir davon ausgehen, dass F eine stetig differenzierbare Funktion auf D Œa; b ist. Unsere Aufgabe ist es, möglichst alle Lösungen .x; / 2 D Œa; b der Gleichung F .x; / D 0 zu bestimmen, d. h., wir interessieren uns für die Lösungsmenge S WD ¹.x; / W .x; / 2 D Œa; b
mit F .x; / D 0º.
112
4 Nichtlineare Gleichungssysteme und Ausgleichsprobleme
Um ein Gefühl für die Lösungsstruktur eines parameterabhängigen Systems zu entwickeln, sehen wir uns zunächst das folgende einfache Beispiel an. Beispiel 4.19. Zu lösen sei die skalare Gleichung F .x; / D x.x 3 x / D 0; deren Lösungsmenge wir in Abbildung 4.4 für 2 Œ1; 1 gezeichnet haben. Aufgrund der Äquivalenz F .x; / D 0 ” x D 0
D x3 x
oder
besteht die Lösungsmenge S WD ¹.x; / W 2 Œ1; 1
F .x; / D 0º
und
aus zwei Lösungskurven, S D S0 [ S1 , der -Achse S0 WD ¹.0; / W 2 Œ1; 1º als trivialer Lösung und der kubischen Parabel S1 WD ¹.x; / W 2 Œ1; 1
D x 3 xº:
und
Die beiden Lösungskurven schneiden sich in .0; 0/, einem sogenannten Verzwei1.5 1 +
0.5 0
+
1
+
0
2
-0.5
+
-1 -1.5
-1
-0.8
-0.6 -0.4 -0.2
0
0.2
0.4
0.6
0.8
1
Abbildung 4.4. Lösungen von x.x 3 x / D 0 für 2 Œ1; 1
gungspunkt. An dieser Stelle ist die Jacobimatrix von F gleich Null, da F 0 .x; / D ŒFx .x; /; F .x; / D Œ4x 3 2x ; x:
113
4.4 Parameterabhängige nichtlineare Gleichungssysteme
Eine besondere Rolle spielen ferner die Lösungen .x; /, für die nur die Ableitung nach x verschwindet, d. h. F .x; / D 0;
Fx .x; / D 4x 3 2x D 0
und
F .x; / ¤ 0:
Diese sogenannten Umkehrpunkte .x; / sind dadurch gekennzeichnet, dass sich die Lösungen in keiner noch so kleinen Umgebung von .x; / als Funktion des Parameters ausdrücken lassen, wohl aber als Funktion von x. Setzen wir die Lösungen D x 3 x in Fx .x; / und F .x; / ein, so zeigt sich, dass die Umkehrpunkte von f durch x ¤ 0; D x 3 x und 3x 2 1 D 0 gekennzeichnet sind.pIn unserem Beispiel p gibt es daher genau zwei Umkehrpunkte, nämlich bei x1 D 1= 3 und x2 D 1= 3. An diesen Punkten steht die Tangente an die Lösungskurve senkrecht auf der -Achse. Als letzte Eigenschaft wollen wir noch auf die Symmetrie der Gleichung F .x; / D F .x; / aufmerksam machen. Sie spiegelt sich wider in der Punktsymmetrie der Lösungsmenge: Ist .x; / eine Lösung von F .x; / D 0, so auch .x; /. Leider können wir im Rahmen dieser Einführung nicht auf alle in Beispiel 4.19 beobachteten Phänomene eingehen. Wir setzen im Folgenden voraus, dass die Jacobimatrix F 0 .x; / an jedem Lösungspunkt .x; / 2 D Œa; b maximalen Rang hat, d. h. (4.20) Rang F 0 .x; / D n falls F .x; / D 0. Damit haben wir Verzweigungspunkte ausgeschlossen, denn nach dem Satz über implizite Funktionen lässt sich unter der Voraussetzung (4.20) die Lösungsmenge um eine Lösung .x0 ; 0 / lokal als Bild einer differenzierbaren Kurve darstellen, d. h., es gibt eine Umgebung U D Œa; b von .x0 ; 0 / und stetig differenzierbare Abbildungen x W "; "Œ ! D und W "; "Œ ! Œa; b; so dass .x.0/; .0// D .x0 ; 0 / und die Lösungen von F .x; / D 0 in U gerade durch ® ¯ S \ U D .x.s/; .s// W s 2 "; "Œ gegeben sind. In vielen Anwendungen ist sogar der noch speziellere Fall interessant, dass die partielle Ableitung Fx .x; / 2 Matn .R/ nach x an jedem Lösungspunkt invertierbar ist, d. h. Fx .x; /
invertierbar, falls F .x; / D 0.
In diesem Fall sind außer Verzweigungspunkten auch Umkehrpunkte ausgeschlossen, und wir können die Lösungskurve über parametrisieren, d. h., es gibt wie oben um
114
4 Nichtlineare Gleichungssysteme und Ausgleichsprobleme
jeden Lösungspunkt .x0 ; 0 / eine Umgebung U D Œa; b und eine differenzierbare Funktion x W "; "Œ! D, so dass x.0/ D x0 und ¯ ® S \ U D .x.s/; 0 C s/ W s 2 "; "Œ :
4.4.2
Fortsetzungsmethoden
Wir wenden uns nun der numerischen Berechnung der Lösungen eines parameterabhängigen Gleichungssystems zu. Zunächst setzen wir voraus, dass die Ableitung Fx .x; / für alle .x; / 2 D Œa; b invertierbar ist. Wir haben im letzten Abschnitt gesehen, dass sich in diesem Fall die Lösungsmenge des parameterabhängigen Systems aus differenzierbaren Kurven zusammensetzt, die sich über parametrisieren lassen. Die Idee der sogenannten Fortsetzungsmethoden (engl.: continuation method) besteht nun darin, sukzessive Punkte auf einer solchen Lösungskurve zu berechnen. Halten wir den Parameter fest, so ist F .x; / D 0 ein nichtlineares Gleichungssystem in x, wie wir es in Kapitel 4.2 behandelt haben. Wir können daher versuchen, eine Lösung mit Hilfe des Newton-Verfahrens Fx .x k ; /x k D F .x k ; / und
x kC1 D x k C x k
(4.21)
zu bestimmen. Angenommen, wir hätten eine Lösung .x0 ; 0 / gefunden und wollten eine nächste Lösung .x1 ; 1 / auf der Lösungskurve .x.s/; 0 C s/ durch .x0 ; 0 / berechnen. Dann können wir bei der Wahl eines Startwertes x 0 WD xO für die NewtonIteration (4.21) bei festem Parameterwert D 1 ausnutzen, dass beide Lösungen .x0 ; 0 / und .x1 ; 1 / auf einer Lösungskurve liegen. Die einfachste Möglichkeit ha-
.x1 ; 1 / .x0 ; 0 / O .x; O /
Abbildung 4.5. Idee der klassischen Fortsetzungsmethode
ben wir in Abbildung 4.5 angedeutet: Wir nehmen als Start die alte Lösung und setzen xO WD x0 . Diese ursprünglich von Poincaré in seinem Buch über Himmelsmechanik [77] vorgeschlagene Wahl heißt heute klassische Fortsetzungsmethode. Geometrische Anschauung legt eine weitere Wahl nahe: Anstatt parallel zur Achse können wir auch entlang der Tangente .x 0 .0/; 1/ an die Lösungskurve .x.s/;
115
4.4 Parameterabhängige nichtlineare Gleichungssysteme O .x; O / +
sx 0 .0/ +
.x0 ; 0 / +
.x1 ; 1 /
Abbildung 4.6. Tangentiale Fortsetzungsmethode
0 C s/ im Punkt .x0 ; 0 / voranschreiten und xO WD x0 C .1 0 /x 0 .0/ als Startwert wählen (siehe Abbildung 4.6). Dies ist die sogenannte tangentiale Fortsetzungsmethode. Differenzieren wir die Gleichung F .x.s/; 0 C s/ D 0 nach s an der Stelle s D 0, so folgt Fx .x0 ; 0 /x 0 .0/ D F .x0 ; 0 /; d. h., die Steigung x 0 .0/ berechnet sich aus einem Gleichungssystem ähnlich dem für die Newton-Korrektur (4.21). Jeder Fortsetzungsschritt beinhaltet also zwei Teilschritte: erstens die Auswahl eines Punktes .x; O 1 / möglichst nahe an der Kurve und zweitens die Iteration von dem Startwert xO zurück zu einer Lösung .x1 ; 1 / auf der Kurve, wofür uns wegen seiner quadratischen Konvergenz das Newton-Verfahren am geeignetsten erscheint. Der erste Schritt wird häufig auch als Prädiktor, der zweite als Korrektor bezeichnet. Dies gibt dem gesamten Prozess auch den Namen Prädiktor-Korrektor-Verfahren. Bezeichnen wir mit s WD 1 0 die Schrittweite, so haben wir für den Startwert xO in Abhängigkeit von s bisher die beiden Möglichkeiten der klassischen Fortsetzung x.s/ O D x0 und der tangentialen Fortsetzung x.s/ O D x0 C sx 0 .0/: Das schwierigste Problem bei der Konstruktion eines Fortsetzungsalgorithmus besteht darin, die Schrittweite s in Zusammenspiel mit der Prädiktor-Korrektor-Strategie geeignet zu wählen. Der Optimist wählt die Schrittweiten zu groß, muss daher ständig die Schrittweite reduzieren und erhält damit zu viele erfolglose Schritte. Der Pessimist wählt hingegen die Schrittweiten zu klein und erhält damit zu viele erfolgreiche Schritte. Beide Varianten verschwenden Rechenzeit. Um den Aufwand zu minimieren, wollen wir also die Schrittweiten möglichst groß wählen, jedoch so, dass das Newton-Verfahren (gerade noch) konvergiert.
116
4 Nichtlineare Gleichungssysteme und Ausgleichsprobleme
Bemerkung 4.20. In der Praxis muss man als drittes Kriterium noch dafür Sorge tragen, dass man die aktuelle Lösungskurve nicht verlässt und auf eine andere Lösungskurve „springt“, ohne es zu bemerken (siehe Abbildung 4.7). Das Problem des „Überspringens“ stellt sich insbesondere, wenn man auch Verzweigungen von Lösungen mit in die Überlegungen einbezieht.
+ +
.xi ; i / +
+
.xiC1 ; iC1 /
+
Abbildung 4.7. Unbeabsichtigtes Verlassen einer Lösungskurve
Die maximal zulässige Schrittweite smax (engl.: feasible stepsize), für die das NewO bei festem Parameter D 0 C s konton-Verfahren mit dem Startwert x 0 WD x.s/ vergiert, hängt natürlich von der Güte des Prädiktorschrittes ab. Je besser wir den weiteren Verlauf der Kurve vorhersagen, desto größer dürfen wir die Schrittweite wählen. Anschaulich liegt zum Beispiel x.s/ O bei der tangentialen Fortsetzung wesentlich näher an der Lösungskurve als bei der klassischen Methode. Um diese Abweichung der Lösungskurve von durch den Prädiktor gegebenen Kurve präziser zu beschreiben, führen wir die Approximationsordnung zweier Kurven ein (siehe [19]): Definition 4.21. Seien x und xO zwei Kurven x; xO W Œ"; " ! Rn in Rn . Dann approximiert xO die Kurve x mit der Ordnung p 2 N an der Stelle s D 0, falls kx.s/ x.s/k O D O.jsjp / für s ! 0, d. h., falls es Konstanten 0 < s0 " und > 0 gibt, so dass kx.s/ x.s/k O jsjp
für alle jsj < s0 .
Aus dem Mittelwertsatz folgt sofort, dass für eine hinreichend differenzierbare Abbildung F die klassische Fortsetzung die Ordnung p D 1 und die tangentiale Fortsetzung die Ordnung p D 2 hat. Die Konstanten können wir explizit angeben. Bei der klassischen Fortsetzung setzen wir x.s/ O D x.0/. Lemma 4.22. Für jede stetig differenzierbare Kurve x W Œ"; " ! Rn gilt kx.s/ x.0/k s
mit WD max kx 0 .t /k: t2Œ";"
117
4.4 Parameterabhängige nichtlineare Gleichungssysteme
Beweis. Wir benutzen die Lagrange-Form des Mittelwertes. Danach gilt Z
1
kx.s/ x.0/k D ks
x 0 . s/ d k s max kx 0 .t /k: t2Œ";"
D0
Für die tangentiale Fortsetzung x.s/ O D x0 C sx 0 .0/ erhalten wir vollkommen analog die folgende Aussage: Lemma 4.23. Sei x W Œ"; " ! Rn eine zweimal stetig differenzierbare Kurve und x.s/ O D x.0/ C sx 0 .0/. Dann gilt kx.s/ x.s/k O s 2
mit WD
1 max kx 00 .t /k: 2 t2Œ";"
Beweis. Wie im Beweis von Lemma 4.22 gilt Z
0
1
sx 0 . s/ sx 0 .0/ d x.s/ x.s/ O D x.s/ x.0/ sx .0/ D D0 Z 1 Z 1 x 00 . s/s 2 d d D D0
und daher
D0
1 kx.s/ x.s/k O s 2 max kx 00 .t /k: 2 t2Œ";"
Der folgende Satz stellt einen Zusammenhang her zwischen einer Fortsetzungsmethode der Ordnung p als Prädiktor und dem Newton-Verfahren als Korrektor. Er charakterisiert die maximal zulässige Schrittweite smax , für die das Newton-Verfahren O bei festem Parameter 0 C s konvergiert. angewandt auf x 0 WD x.s/ Satz 4.24. Sei D Rn offen und konvex und F W D Œa; b ! Rn ein stetig differenzierbares parameterabhängiges System, so dass Fx .x; / für alle .x; / 2 D Œa; b invertierbar ist. Ferner gebe es ein ! > 0, so dass F der Lipschitz-Bedingung kFx .x; /1 .Fx .x C sv; / Fx .x; //vk s!kvk2 genügt. Sei weiter .x.s/; 0 C s/ für s 2 Œ"; " eine stetig differenzierbare Lösungskurve um .x0 ; 0 /, d. h. F .x.s/; 0 C s/ D 0
und
x.0/ D x0 ,
und x.s/ O eine Fortsetzungsmethode .Prädiktor/ der Ordnung p mit kx.s/ x.s/k O s p
für alle jsj ".
(4.22)
118
4 Nichtlineare Gleichungssysteme und Ausgleichsprobleme
Dann konvergiert das Newton-Verfahren .4:21/ zum Startwert x 0 D x.s/ O gegen die Lösung x.s/ von F .x; 0 C s/ D 0, falls s ! 2 p : (4.23) s < smax WD max "; ! Beweis. Wir müssen die Voraussetzungen von Satz 4.10 für das Newton-Verfahren (4.21) und den Startwert x 0 D x.s/ O überprüfen. Aufgrund der Voraussetzung (4.22) gilt O s p :
.s/ D kx x 0 k D kx.s/ x.s/k Setzen wir diese Ungleichung in die Konvergenzbedingung < 2=! von Satz 4.10 ein, so ergibt sich die hinreichende Bedingung s p < 2=!
oder äquivalent (4.23).
Der Satz garantiert, dass es uns mit den oben beschriebenen Fortsetzungsmethoden, bestehend aus der klassischen (Ordnung p D 1) oder der tangentialen Fortsetzung (Ordnung p D 2) als Prädiktor und dem Newton-Verfahren als Korrektor, gelingt, eine Lösungskurve zu verfolgen, solange wir nur die Schrittweiten (problemabhängig) klein genug wählen. Andererseits sind die kennzeichnenden Größen ! und im Allgemeinen nicht bekannt und daher die Formel (4.23) für smax nicht auswertbar. Wir müssen also eine Strategie für die Wahl der Schrittweiten entwickeln, die ausschließlich im Algorithmus zugängliche Informationen benutzt. Eine solche Schrittweitensteuerung besteht aus, erstens, einem Anfangsvorschlag s (meistens der Schrittweite des vorherigen Fortsetzungsschrittes) und, zweitens, einer Strategie für die Wahl einer kleineren Schrittweite s 0 < s für den Fall, dass das Newton-Verfahren (als Korrektor) für den Startwert x.s/ O nicht konvergiert. Die Konvergenz des Newton-Verfahrens beurteilen wir mit dem in Kapitel 4.2 eingeführten natürlichen Monotonietest kx
kC1
k N kx k k
1 mit N WD : 2
(4.24)
kC1
die gewöhnliche und die vereinfachte Newton-Korrektur Dabei sind x k und x O und O WD 0 C s: des Newton-Verfahrens (4.21), d. h. mit x 0 WD x.s/ k O O Fx .x k ; /x D F .x k ; / und
kC1 O O Fx .x k ; /x D F .x kC1 ; /:
Stellen wir mit Hilfe des Kriteriums (4.24) fest, dass das Newton-Verfahren für die Schrittweite s nicht konvergiert, d. h. kx
kC1
k > N kx k k;
4.4 Parameterabhängige nichtlineare Gleichungssysteme
119
so reduzieren wir diese Schrittweite um einen Faktor ˇ < 1 und führen die NewtonIteration mit der neuen Schrittweite s 0 WD ˇ s; d. h. mit dem neuen Startwert x 0 D x.s O 0 / und dem neuen Parameter O WD 0 C s 0 , nochmals durch. Diesen Vorgang wiederholen wir so oft, bis das Konvergenzkriterium (4.24) für das Newton-Verfahren erfüllt ist oder aber eine minimale Schrittweite smin unterschritten wird. In letzterem Fall ist zu vermuten, dass die Eingangsvorausetzungen an F verletzt sind und zum Beispiel ein Umkehrpunkt oder ein Verzweigungspunkt in unmittelbarer Nähe liegt. Andererseits können wir die Schrittweite für den folgenden Schritt größer wählen, falls das Newton-Verfahren „zu schnell“ konvergiert. Auch dies lässt sich aus den beiden Newton-Korrekturen ablesen. Gilt etwa
N kx 0 k; (4.25) 4 so konvergiert das Verfahren „zu schnell“, und wir können für den nächsten Prädiktorschritt die Schrittweite etwa um den Faktor ˇ vergrößern, d. h., wir schlagen die Schrittweite s 0 WD s=ˇ 1
kx k
vor. Dabei ist die durch (4.23) motivierte Wahl r p 1 ˇ WD 2 konsistent mit (4.24) und (4.25). Der folgende Algorithmus beschreibt die tangentiale Fortsetzung von einer Ausgangslösung .x0 ; a/ zum rechten Rand D b des Parameterintervalls. O beinhaltet Algorithmus 4.25. Tangentiale Fortsetzung. Die Prozedur newton .x; O / das (gewöhnliche) Newton-Verfahren (4.21) für den Startwert x 0 D xO bei festem O Die Boolesche Variable done gibt an, ob das Verfahren nach höchstens Parameter . kmax Schritten die Lösung hinreichend genau berechnet hat oder nicht. Neben dieser Information und ggf. der Lösung x wird der Quotient 1
kx k
D kx 0 k der Normen der vereinfachten und gewöhnlichen Newton-Korrektur zurückgegeben. Die Prozedur continuation realisiert die Fortsetzungsmethode mit der oben beschriebenen Schrittweitensteuerung. Ausgehend von einem Startwert xO für die Lösung von F .x; a/ D 0 am linken Rand D a des Parameterintervalls versucht das Programm, die Lösungskurve bis zum rechten Rand D b zu verfolgen. Das Programm bricht ab, falls dieser erreicht wird oder die Schrittweite s zu klein gewählt werden müsste oder aber die maximale Anzahl imax an berechneten Lösungspunkten überschritten wird.
120
4 Nichtlineare Gleichungssysteme und Ausgleichsprobleme
O function [done,x; ]=newton .x; O / x WD x; O for k D 0 to kmax do O A WD Fx .x; /; O löse Ax D F .x; /; x WD x C x; O (Zerlegung von A wiederverwenden) löse Ax D F .x; /; if k D 0 then
WD kxk=kxk; (für den nächsten Schrittweitenvorschlag) end if kxk < tol then done:= true; break; (Lösung gefunden) end N then if kxk > kxk done:= false; break; (Monotonie verletzt) end end if k > kmax then done:= false; (zu viele Iterationen) end function continuation .x/ O 0 WD a; O 0 /; [done, x0 ; ] = newton .x; if not done then Startwert xO für F .x; a/ D 0 zu schlecht else s WD s0 ; (Startschrittweite) for i D 0 to imax do löse Fx .xi ; i /x 0 D F .xi ; i /; repeat xO WD xi C sx 0 ; i C1 WD i C s; O iC1 /; [done, xi C1 ; ] = newton .x; if not done then s D ˇs; elseif < N =4 then s D s=ˇ; end s D min.s; b iC1 /;
4.4 Parameterabhängige nichtlineare Gleichungssysteme
121
until s < smin or done if not done then break; (Algorithmus versagt) elseif i C1 D b then break; (fertig, Lösung xiC1 ) end end end Bemerkung 4.26. Es gibt eine wesentlich effektivere, theoretisch fundierte Schrittweitenstrategie, die ausnutzt, dass sich die Größen ! und lokal durch im Algorithmus zugängliche Werte abschätzen lassen. Die Darstellung dieser Strategie würde jedoch den Rahmen dieser Einführung sprengen – sie ist in [19] ausführlich beschrieben. Eine Variante der Tangentenfortsetzung wollen wir noch ausführen, weil sie gut zum Kontext von Kapitel 3 und 4.3 passt. Sie gestattet zugleich die Überwindung von Umkehrpunkten .x; / mit Rang F 0 .x; / D n und
Fx .x; / singulär:
In der Umgebung eines solchen Punktes werden die automatisch gesteuerten Schrittweiten s des oben beschriebenen Fortsetzungsalgorithmus beliebig klein, da sich die Lösungskurve um .x; / nicht mehr bezüglich des Parameters parametrisieren lässt. Wir überwinden diese Schwierigkeit, indem wir die „Sonderrolle“ des Parameters aufgeben und stattdessen das unterbestimmte nichtlineare Gleichungssystem in y D .x; /, F .y/ D 0 mit F W DO RnC1 ! Rn , direkt betrachten. Wir nehmen wiederum an, dass die Jacobimatrix F 0 .y/ dieses Systems für alle y 2 DO vollen Rang hat. Dann gibt es zu jeder Lösung y0 2 DO eine O die die Umgebung U RnC1 und eine differenzierbare Kurve y W "; "Œ ! D, O Lösungsmenge S WD ¹y 2 D W F .y/ D 0º um y0 beschreibt, d. h. ® ¯ S \ U D y.s/ W s 2 "; "Œ : Differenzieren wir die Gleichung F .y.s// D 0 nach s an der Stelle s D 0, so folgt F 0 .y.0//y 0 .0/ D 0;
(4.26)
d. h., die Tangente y 0 .0/ an die Lösungskurve spannt gerade den Kern der Jacobimatrix F 0 .y0 / auf. Da F 0 .y0 / maximalen Rang hat, ist die Tangente durch (4.26) bis auf einen skalaren Faktor eindeutig bestimmt. Wir definieren daher für alle y 2 DO
122
4 Nichtlineare Gleichungssysteme und Ausgleichsprobleme
eine bis auf ihre Orientierung (d. h. einen Faktor ˙1) eindeutig bestimmte normierte Tangente t .y/ 2 RnC1 durch F 0 .y/t .y/ D 0
und
kt .y/k2 D 1:
Die Orientierung der Tangenten wählen wir im Verlauf des Fortsetzungverfahrens so, dass zwei aufeinanderfolgende Tangenten t0 D t .y0 / und t1 D t .y1 / einen spitzen Winkel zueinander bilden, d. h. ht0 ; t1 i > 0: Dies stellt sicher, dass wir auf einer Lösungskurve nicht wieder zurücklaufen. Damit können wir die Tangentenfortsetzung auch für Umkehrpunkte durch yO D y.s/ O WD y0 C s t .y0 / definieren. Ausgehend von dem Startvektor y 0 D yO wollen wir nun „möglichst rasch“ zur Kurve y.s/ zurückfinden (siehe Abbildung 4.8). Der vage Ausdruck „möglichst rasch“ kann geometrisch interpretiert werden als „in etwa orthogonal“ zur Tangente eines nahegelegenen Punktes y.s/ auf der Lösungskurve. Da aber die Tangente
+ +
+
+
+
Abbildung 4.8. Tangentiale Fortsetzung über Umkehrpunkte hinaus
t .y.s// erst nach Berechnung von y.s/ zur Verfügung steht, ersetzen wir t .y.s// durch die jeweils bestmögliche Näherung t .y k /. Aufgrund der geometrischen Interpretation der Pseudoinversen (vgl. Kapitel 3.3) kommen wir damit zu der Iterationsvorschrift y k WD F 0 .y k /C F .y k /
und
y kC1 WD y k C y k :
(4.27)
Die Iterationsvorschrift (4.27) ist offensichtlich ein Gauß-Newton-Verfahren für das unterbestimmte Gleichungssystem F .y/ D 0. Ohne Beweis sei erwähnt, dass dieses Verfahren bei maximalem Rang von F 0 .y/ in einer Umgebung des Lösungszweiges yN
123
4.4 Parameterabhängige nichtlineare Gleichungssysteme
ebenso wie das gewöhnliche Newton-Verfahren quadratisch konvergiert. Der Beweis findet sich etwa in der neueren Monographie [21]. Wir wollen hier noch auf die Berechnung der Korrektur y k eingehen. Dabei lassen wir den Index k weg. Die Korrektur y in (4.27) ist die kürzeste Lösung aus der Lösungsmenge Z.y/ des unterbestimmten linearen Problems Z.y/ WD ¹z 2 RnC1 jF 0 .y/z C F .y/ D 0º: Bei Anwendung der Gauß-Elimination (mit Zeilenpivotstrategie und evtl. Spaltentausch, siehe Kapitel 1.3) oder der QR-Zerlegung (mit Spaltentausch, siehe Kapitel 3.2.2) gelingt es relativ leicht, irgendeine Lösung z 2 Z.y/ sowie einen Kernvektor t .y/ mit F 0 .y/t .y/ D 0 zu berechnen. Dann gilt: y D F 0 .y/C F .y/ D F 0 .y/C F 0 .y/z: Wie wir in Kapitel 3.3 gesehen haben, ist P D F 0 .y/C F 0 .y/ die Projektion auf das orthogonale Komplement des Kerns von F 0 .y/ und daher P DI
ttT : tT t
Für die Korrektur y ergibt sich daraus ttT y D I T t t
! zDz
ht; zi t: ht; ti
Damit haben wir eine einfache Berechnungsvorschrift für die Pseudoinverse (bei Rangdefekt 1), falls wir nur eine beliebige Lösung z und einen Kernvektor t zur Verfügung haben. Das in (4.27) angegebene Gauß-Newton-Verfahren ist also einfach implementierbar in engem Zusammenspiel mit der tangentialen Fortsetzung. Für die Wahl der Schrittlängen greifen wir zu einer ähnlichen Strategie, wie wir sie in Algorithmus 4.25 beschrieben haben. Falls das Iterationsverfahren nicht konp vergiert, reduzieren wir die Schrittlänge s um den Faktor ˇ D 1= 2. Falls das Iterationsverfahren „zu rasch“ konvergiert, vergrößern wir die Schrittweite für den nächsten Prädiktorschritt um den Faktor ˇ 1 . Diese empirische Fortsetzungsstrategie ist auch in relativ komplizierten Problemen noch vergleichsweise wirkungsvoll. Bemerkung 4.27. Auch zu dieser tangentialen Fortsetzungsmethode existiert eine wesentlich effektivere und theoretisch fundierte Schrittweitensteuerung, deren Darstellung sich in [24] findet. Dort werden außerdem statt F 0 .y/ Approximationen der Jacobimatrix verwendet. Auf dieser Grundlage arbeiten äußerst effektive Programme für parameterabhängige Gleichungssysteme (siehe Abbildung 4.9 und 4.10).
124
4 Nichtlineare Gleichungssysteme und Ausgleichsprobleme
Bemerkung 4.28. Die Beschreibung der Lösungen eines parameterabhängigen Systems (4.19) bezeichnet man auch als Parameterstudie. Parameterabhängige Systeme können andererseits auch zur Erweiterung des Konvergenzbereiches eines Verfahrens zur Lösung nichtlinearer Gleichungssysteme genutzt werden. Die Idee dabei ist, sich von einem bereits gelösten Problem G.x/ D 0 Zug um Zug zur Lösung des eigentlichen Problems F .x/ D 0 durchzuarbeiten. Dazu konstruiert man sich ein parameterabhängiges Problem H.x; / D 0;
2 Œ0; 1;
welches die beiden Probleme miteinander verbindet, d. h. H.x; 0/ D G.x/ und
H.x; 1/ D F .x/
für alle x. Eine solche Abbildung H heißt Einbettung (engl.: embedding) des Problems F .x/ D 0 oder auch Homotopie. Das einfachste Beispiel ist die sogenannte lineare Einbettung, H.x; / WD F .x/ C .1 /G.x/; der allerdings problemangepasste Einbettungen in jedem Fall vorzuziehen sind (siehe Beispiel 4.29). Wenden wir eine Fortsetzungsmethode auf dieses parameterabhängige Problem H.x; / D 0 an, wobei wir mit einer uns bekannten Lösung x0 von G.x/ D 0 beginnen, so spricht man auch von einer Homotopiemethode zur Lösung von F .x/ D 0. Beispiel 4.29. Fortsetzung bezüglich verschiedener Einbettungen. In [43] ist das folgende Problem gestellt: F .x/ WD x .x/ D 0; wobei i .x/ WD exp.cos.i
10 X
xj //;
i D 1; : : : ; 10:
j D1
Dazu wird die triviale Einbettung H.x; / D F .x/ C .1 /x D x .x/
125
4.4 Parameterabhängige nichtlineare Gleichungssysteme
mit dem Startwert x 0 D .0; : : : ; 0/ bei D 0 vorgeschlagen. Die Fortsetzung bezüglich führt zwar für D 1 zur Lösung (siehe Abbildung 4.9 links), aber die problemangepasste Einbettung 10 X
xj ; HQ i .x; / WD xi exp cos i
i D 1; : : : ; 10;
j D1
mit dem Startwert x 0 D .1; : : : ; 1/ bei D 0 ist deutlich von Vorteil (siehe Abbildung 4.9 rechts). Es sei angemerkt, dass in diesen Beispielen keine Verzweigungen auftre2.50
2.00
1.50
1.00
0.50
+
• ••• • • •• •• + • • • • • •• • • • + • •• • • • • • • • • •• • • • • + •• • • • • • •• • • • •• • • • • • •••••• • • •x • •• + ••• • ••• • •• • • •• •• • • • • • • • • • • • •• ••• • • •• ••• •• •• • • •••••••••••••• • • • •••• •• •••• ••••••• ••• • •• • +•••• ••• + + + + +
0.00 0.00
0.20
0.40
0.60
0.80
1.00
2.00
+
1.80
+
1.60
+
1.40
+
1.20
+ +
1.00 •• • 0.80
+
0.60
+ +
0.00
• • •
•
• •• •
•
• •
• •
•
•
•
•
•• •
+
0.20
+
0.40
+
0.60
•
+
0.80
•
•
x
+
1.00
Abbildung 4.9. Fortsetzung für die triviale Einbettung (links) und die problemangepasste Einbettung (rechts), aufgetragen ist jeweils x9 über
ten. Die Überschneidungen der Lösungskurven ergeben sich nur in der Projektion auf die Koordinatenebene .x9 ; /. Die Punkte auf den beiden Lösungszweigen markieren die von dem verwendeten Programm automatisch berechneten Zwischenwerte: Ihre Anzahl ist in etwa ein Maß für den benötigten Rechenaufwand, um von D 0 nach D 1 zu kommen. Das obige Beispiel hat rein illustrativen Charakter: Es lässt sich einfach in ein rein skalares Problem umformen und als solches lösen (Aufgabe 4.6). Wir fügen deshalb noch ein interessanteres Problem an. Beispiel 4.30. Brusselator. In [80] wird eine chemische Reaktions-Diffusionsgleichung betrachtet. Bei diesem diskreten Modell reagieren zwei chemische Substanzen mit Konzentrationen z D .x; y/ in mehreren Zellen jeweils nach der Vorschrift 1 0 1 0 xP A .B C 1/x C x 2 y A DW f .z/ zP D @ A D @ Bx x 2 y yP
126
4 Nichtlineare Gleichungssysteme und Ausgleichsprobleme
miteinander. Durch Koppelung benachbarter Zellen tritt Diffusion auf. Betrachtet man nur zeitlich konstante Lösungen und parametrisiert die Diffusion mittels , so ergibt sich folgendes nichtlineare Gleichungssystem: 0 D f .zi / C
1 X D.zj zi /; 2
i D 1; : : : ; k:
.i;j /
Dabei ist D D diag.1; 10/ eine .2; 2/-Diagonalmatrix. Da die Gleichungen die Symmetrie der geometrischen Anordnung der Zellen widerspiegeln, tritt ein reiches Verzweigungsverhalten auf (siehe Abbildung 4.10), das in [38] unter Ausnutzung der Symmetrie des Systems im Zusammenspiel mit Methoden des symbolischen Rechnens analysiert wird. 6:00 + 5:00 +
•
• ••• ••••••• • •• • • •• • • •• • •
••
4:00 +
•
•
3:00 2:00
•• •
• •
• •
•
•
•
• • • •• •• • •* • •••• • • • • • • • • • ••• • ••••••* ••••••• • +x•••••••* • * •• • • *•••• • • • • • • • •• • • • • • • •• •• • • + *• • • • • • • • • • • •• • • • • ••••••••••• • • ••••••••
1:00 + 0:00
•••• • ••• •• •• •• •* • • • • •
• ••• • •• • ••••• •
•
• •
••
•
• •
• • •
• •
•
• • •• • * • • • • •• • • • ••• • ••*
•
• • •• • • ••• •• ••• •* • • • •
+
+
+
+
+
+
+
1:00
2:00
3:00
4:00
5:00
6:00
7:00
•
x
+
8:00
Abbildung 4.10. Brusselator mit 4 Zellen in linearer Kette (A D 2; B D 6), aufgetragen ist x8 über
Übungsaufgaben Aufgabe 4.1. Erklären Sie das unterschiedliche Konvergenzverhalten der beiden in Kapitel 4.1 beschriebenen Fixpunktiterationen zur Lösung von f .x/ D 2x tan x D 0: Analysieren Sie dabei auch die Konvergenzgeschwindigkeit des zweiten Verfahrens. Aufgabe 4.2. Zur Bestimmung des Fixpunktes x der stetig differenzierbaren Abbildung mit j 0 .x/j ¤ 1 seien die folgenden Iterationsvorschriften für k D 0; 1; : : : definiert: (I) xkC1 WD .xk /,
127
Übungsaufgaben
(II) xkC1 WD 1 .xk /. Zeigen Sie, dass mindestens eine der beiden Iterationen lokal konvergiert. Aufgabe 4.3. Eine Funktion f 2 C 1 Œa; b habe die einfache Nullstelle x 2 Œa; b. Durch die drei Stützpunkte .a; fa /; .c; fc /; .b; fb /
mit a < c < b, fa fb < 0
ist ein quadratisches Interpolationspolynom p.x/ eindeutig bestimmt. a) Zeigen Sie, dass p in Œa; b genau eine einfache Nullstelle y besitzt. b) Konstruieren Sie ausgehend von einer formalen Prozedur y D y.a; b; c; fa ; fb ; fc /; welche die Nullstelle von p in Œa; b in Abhängigkeit von den Stützpunkten berechnet, einen Algorithmus zur Bestimmung von x auf eine vorgegebene Genauigkeit eps. Aufgabe 4.4. Zur Konvergenzbeschleunigung des linear konvergenten Fixpunktverfahren im R1 xi C1 WD .xi /; x0 vorgegeben, x Fixpunkt kann man die sogenannte 2 -Methode von Aitken verwenden. Dabei wird zu der Folge ¹xi º die transformierte Folge ¹xN i º xN i WD xi
.xi /2 2 x i
berechnet, wobei der Differenzenoperator xi WD xiC1 xi ist. a) Zeigen Sie: Gilt für die Folge ¹xi º und xi ¤ x , dass xi C1 x D . C ıi /.xi x /; wobei jj < 1 und ¹ıi º eine Nullfolge ist, d. h. limi!1 ıi D 0, so existiert die Folge ¹xN i º für hinreichend große i und hat die Eigenschaft xN i x D 0: i!1 xi x lim
b) Bei der Realisierung des Verfahrens berechnet man nur x0 , x1 , x2 und xN 0 und startet dann die Fixpunktiteration mit xN 0 als verbessertem Startwert (Methode von Steffensen). Probieren Sie diese Fixpunktiteration an unseren bewährten Beispielen 1 .x/ WD .tan x/=2 und 1 .x/ WD arctan 2x mit dem Startwert x0 D 1:2 aus.
128
4 Nichtlineare Gleichungssysteme und Ausgleichsprobleme
Aufgabe 4.5. Berechnen Sie die Lösung des nichtlinearen Ausgleichsproblems der Feulgen-Hydrolyse mit einem gewöhnlichen Gauß-Newton-Verfahren (Bibliotheksprogramm oder selbst geschrieben) für den Datensatz aus Tabelle 4.3 mit den dort angegebenen Startdaten. Hinweis: In diesem speziellen Fall konvergiert das gewöhnliche Gauß-Newton-Verfahren sogar rascher als das gedämpfte (vgl. Abbildung 4.3). Aufgabe 4.6. Berechnen Sie die Lösung von F .x/ D x .x/ D 0 mit
i .x/ WD exp cos i
10 X
xj
;
i D 1; : : : ; 10;
j D1
indem Sie zuerst eine Gleichung für u D
P10
j D1 xj
aufstellen und diese lösen.
Aufgabe 4.7. Numerische Differentiation. Gegeben sei eine Funktion F W D ! Rn ; D Rn ; F 2 C 2 .D/. Betrachtet wird die Approximation der Jacobimatrix J.x/ D F 0 .x/ durch die Differenzenquotienten i F .x/ WD
F .x C i ei / F .x/ ; i
i ¤ 0;
JO .x/ WD Œ1 F .x/; : : : ; n F .x/: Um eine hinreichend gute Approximation der Jacobimatrix zu erhalten, berechnet man die Größe kF .x C i ei / F .x/k . i / WD kF .x/k und fordert p : . O i / D 0 WD 10 eps; wobei eps die relative Maschinengenauigkeit ist. Zeigen Sie, dass : . / D c1 C c2 2 für ! 0. Geben Sie eine Vorschrift an, die im Fall . / 0 eine Schätzung für O zulässt. Warum liefert eine entsprechende Schätzung für . / 0 keine brauchbaren Ergebnisse? Aufgabe 4.8. Newton-Verfahren in C. Die Nullstellen von pn .z/ WD z n 1 sollen für gerades n mit dem (komplexen) Newton-Verfahren bestimmt werden: zkC1 D ˆ.zk / WD zk
pn .zk / ; pn0 .zk /
k D 0; 1; : : : :
Es werde definiert:
L.s/ WD ¹t e i n s j t 2 Rº;
s 2 Œ0; nŒ:
129
Übungsaufgaben
a) Zeigen Sie: zk 2 L.s/ ) zkC1 2 L.s/: b) Fertigen Sie eine Skizze an, in der Sie das Konvergenzverhalten darstellen. Berechnen Sie K.s/ WD L.s/ \ ¹z W jˆ0 .z/j < 1º und alle Fixpunkte von ˆ auf L.s/ für s D 0; 1; : : : ; n 1
und
1 1 3 s D ; ;:::;n : 2 2 2
Aufgabe P 4.9. Gegeben sei das System von n D 10 nichtlinearen Gleichungen (s D 10 i D1 xi ) 0 B B B B B B B B B B B B B F .x; / WD B B B B B B B B B B B B @
x1 C x4 3
1
C C 2x1 C x2 C x4 C x7 C x8 C x9 C 2x10 C C C C 2x2 C 2x5 C x6 C x7 8 C C C 2x3 C x9 4 C C C x1 x5 0:193x2 x4 C C D 0: C 2 5 x6 x1 0:67444 10 x2 x4 s C C C x72 x4 0:1189 104 x1 x2 s C C C x8 x4 0:1799 104 x1 s C C C 2 2 7 .x9 x4 / 0:4644 10 x1 x3 s C A x10 x42 0:3846 104 x12 s
Es beschreibt ein chemisches Gleichgewicht (bei Propan). Sämtliche interessierende Lösungen müssen nichtnegative Komponenten haben, da sie als chemische Konzentrationen zu interpretieren sind. a) Zeigen Sie, dass 3 zwingend ist, falls xi 0; i D 1; : : : ; n. Berechnen Sie (per Hand) den entarteten Spezialfall D 3. b) Schreiben Sie ein Programm für eine Fortsetzungsmethode mit gewöhnlichem Newton-Verfahren als lokalem Iterationsverfahren und empirischer Schrittlängenstrategie. c) Testen Sie dieses Programm für > 3 an obigem Beispiel.
130
4 Nichtlineare Gleichungssysteme und Ausgleichsprobleme
Aufgabe 4.10. Beweisen Sie den folgenden Satz: Sei D Rn offen und konvex und F W D Rn ! Rn differenzierbar. Es existiere eine Lösung x 2 D derart, dass F 0 .x / invertierbar ist. Ferner gelte die (affin-invariante) Lipschitz-Bedingung für x; y 2 D: kF 0 .x /1 .F 0 .y/ F 0 .x//k ! ky xk: Sei WD kx 0 x k < 2=.3! / und B .x / D. Dann gilt: Die durch das gewöhnliche Newton-Verfahren definierte Folge ¹x k º bleibt in B .x / und konvergiert gegen x . Ferner ist x eindeutige Lösung in B .x /. Hinweis: Benutzen Sie das Störungslemma für die Jacobimatrizen F 0 .x/, das auf der Neumannschen Reihe basiert. Aufgabe 4.11. Zu lösen sei die quadratische Gleichung x 2 2px C q D 0
mit p 2 q 0 und q D 0:123451234:
Berechnen Sie für die Folge p 2 ¹1; 10; 102 ; : : : º die beiden Lösungen q x1 D xO 1 D p C p 2 r; q xO 2 D p p 2 q; x2 D q=xO 1 : Tragen Sie die Resultate in eine Tabelle ein, und unterstreichen Sie jeweils die gültigen Ziffern. Aufgabe 4.12. Das Prinzip zur Herleitung des Levenberg-Marquardt-Verfahrens x kC1 D x k C z k ;
k D 0; 1; : : : ;
zur Lösung nichtlinearer Gleichungssysteme ist nicht affin-invariant. Dieser Mangel vererbt sich natürlich auch auf das Verfahren selbst. Eine affin-invariante Modifikation lautet: Minimiere kF 0 .x k /1 .F .x k / C F 0 .x k /z/k2 unter der Nebenbedingung kzk2 ı: Welches Verfahren ergibt sich hieraus?
5 Lineare Eigenwertprobleme
Das folgende Kapitel ist dem Studium des numerischen Eigenwertproblems der linearen Algebra Ax D x gewidmet, worin A eine quadratische Matrix der Ordnung n und x einen Eigenvektor zum Eigenwert 2 C bezeichnen. Als elementare Einführung in die angewandte Lineare Algebra empfehlen wir das schön geschriebene und äußerst anregende Lehrbuch [70] von C. D. Meyer. Zu Aspekten der Numerik innerhalb der Linearen Algebra hat sich das klassische Lehrbuch von G. H. Golub und C. van Loan [47] seit Jahren etabliert. Neben allgemeinen Matrizen interessieren hier die folgenden speziellen Matrizen: A symmetrisch: Alle Eigenwerte sind reell; dieses Eigenwertproblem kommt in den Natur- und Ingenieurwissenschaften am häufigsten vor. A symmetrisch positiv definit (oder semi-definit): Alle Eigenwerte sind positiv (oder nichtnegativ); zu diesem Eigenwertproblem korrespondiert in der Regel ein Minimierungsproblem der Form x T Ax C b T x D min; worin wir hier den Vektor b nicht näher spezifizieren wollen. A stochastisch: Alle Elemente solcher Matrizen lassen sich als Wahrscheinlichkeiten interpretieren, was sich in den Beziehungen aij 0;
n X
aij D 1
j D1
ausdrückt; in diesem Fall existiert ein sogenannter Perron-Eigenwert 1 , der gleich dem Spektralradius .A/ D 1 ist; die zu diesem Eigenwert gehörigen Links- und Rechtseigenvektoren sind positiv bis auf einen für alle Komponenten gemeinsamen Phasenfaktor; derartige Eigenwertprobleme spielen auch bei der Google-Suchmaschine eine Rolle. Im Folgenden führen wir zunächst eine Analyse der Kondition des Eigenwertproblems für allgemeine Matrizen durch (Kapitel 5.1). Dabei zeigt sich, dass das Eigenwertproblem mit Garantie gutkonditioniert nur für normale Matrizen ist, deren
132
5 Lineare Eigenwertprobleme
wichtigste Klasse die reell-symmetrischen Matrizen sind. Deswegen behandeln wir erst einmal Algorithmen zur Berechnung der Eigenwerte und Eigenvektoren für diesen Spezialfall (Kapitel 5.2 und 5.3). Für allgemeine Matrizen ist dagegen das Problem der Singulärwertzerlegung gutkonditioniert und praktisch enorm relevant – siehe Kapitel 5.4. In den letzten Jahren haben sich Eigenwertprobleme für stochastische Matrizen zunehmend als wichtig erwiesen, weshalb wir uns in Kapitel 5.5 dieser Problemklasse zuwenden. Dabei ergibt sich in natürlicher Weise auch ein Einblick in einen neueren Clusteralgorithmus (Perron-Clusteranalyse) sowie in das Prinzip der Google-Suchmaschine.
5.1
Kondition des allgemeinen Eigenwertproblems
Wir beginnen mit der Bestimmung der Kondition des Eigenwertproblems Ax D x für eine beliebige komplexe Matrix A 2 Matn .C/. Der Einfachheit halber setzen wir voraus, dass 0 ein (algebraisch) einfacher Eigenwert von A ist, d. h. eine einfache Nullstelle des charakteristischen Polynoms A ./ D det.A I /. Unter diesen Voraussetzungen ist differenzierbar in A, wie wir im folgenden Lemma sehen werden. Lemma 5.1. Sei 0 2 C einfacher Eigenwert von A 2 Matn .C/. Dann existiert eine stetig differenzierbare Abbildung W V Matn .C/ ! C;
B 7! .B/
von einer Umgebung V von A in Matn .C/, so dass .A/ D 0 und .B/ einfacher Eigenwert von B ist für alle B 2 V . Ist x0 ein Eigenvektor von A zu 0 und y0 ein .adjungierter/ Eigenvektor von A WD ANT zum Eigenwert N 0 , d. h. Ax0 D 0 x0
A y0 D N 0 y0 ;
und
so gilt für die Ableitung von an der Stelle A, dass 0 .A/C D
hC x0 ; y0 i hx0 ; y0 i
für alle C 2 Matn .C/.
Beweis. Sei C 2 Matn .C/ eine beliebige komplexe Matrix. Da 0 eine einfache Nullstelle des charakteristischen Polynoms A ist, gilt ˇ @ ACtC ./ˇ tD0 : @ Nach dem Satz über implizite Funktionen gibt es daher eine in einer Nullumgebung "; "Œ R stetig differenzierbare Abbildung 0 0 ¤ A .0 / D
W "; "Œ ! C;
t 7! .t /;
133
5.1 Kondition des allgemeinen Eigenwertproblems
so dass .0/ D 0 und .t / einfacher Eigenwert von A C t C ist. Wiederum aufgrund der Einfachheit von 0 gibt es eine stetig differenzierbare Funktion x W "; "Œ ! C n ;
t 7! x.t /;
so dass x.0/ D x0 und x.t / Eigenvektor von A C t C zum Eigenwert .t / ist (x.t / lässt sich explizit mit adjungierten Determinanten berechnen, siehe Aufgabe 5.2). Differenzieren wir die Gleichung .A C t C /x.t / D .t /x.t / nach t an der Stelle t D 0, so folgt C x0 C Ax 0 .0/ D 0 x 0 .0/ C 0 .0/x0 : Multiplizieren wir nun rechts mit y0 (im Skalarprodukt-Sinn), so erhalten wir hC x0 ; y0 i C hAx 0 .0/; y0 i D h0 x 0 .0/; y0 i C h0 .0/x0 ; y0 i: Da h0 .0/x0 ; y0 i D 0 .0/hx0 ; y0 i und hAx 0 .0/; y0 i D hx 0 .0/; A y0 i D 0 hx 0 .0/; y0 i D h0 x 0 .0/; y0 i; folgt somit 0 .0/ D
hC x0 ; y0 i : hx0 ; y0 i
Damit haben wir die Ableitung von in Richtung der Matrix C berechnet. Aus der stetigen Differenzierbarkeit der Richtungsableitungen folgt die Differenzierbarkeit von nach A und 0 .A/C D 0 .0/ D
hC x0 ; y0 i hx0 ; y0 i
für alle C 2 Matn .C/.
Zur Berechnung der Kondition des Eigenwertproblems .; A/ müssen wir nun die Norm der Ableitung 0 .A/ als lineare Abbildung 0 .A/ W Matn .C/ ! C;
C 7!
hC x; yi ; hx; yi
berechnen, wobei x ein Eigenvektor zum einfachen Eigenwert 0 von A und y ein adjungierter Eigenvektor zum Eigenwert N 0 von A ist. Wir wählen dazu auf Matn .C/ die 2-Norm (Matrixnorm!) und auf C den Betrag. Für jede Matrix C 2 Matn .C/ gilt (Cauchy-Schwarzsche Ungleichung) jhC x; yij kC xkkyk kC kkxkkyk;
134
5 Lineare Eigenwertprobleme
wobei für C D yx , x WD xN T , gerade Gleichheit gilt. Daher folgt wegen kyx k D kxkkyk, dass jhC x; yi=hx; yij kxkkyk 1 D D ; kC k jhx; yij j cos.
k0 .A/k D sup
wobei
1 kxkkyk D jhx; yij j cos.
und die relative Kondition rel D
kAk 0 kAk k .A/k D ; j0 j j0 cos.
wobei x ein Eigenvektor von A zum Eigenwert 0 , d. h. Ax D 0 x, und y ein adjungierter Eigenvektor, d. h. A y D N 0 y. Insbesondere ist das Eigenwertproblem für normale Matrizen gutkonditioniert mit abs D 1. Beispiel 5.3. Falls A nicht symmetrisch ist, ist das Eigenwertproblem nicht mehr automatisch gutkonditioniert. Als Beispiel betrachten wir die Matrizen 2
3 0 1
AD4
0 0
5
2
3
und AQ D 4
0 1
5 ı 0
p mit den Eigenwerten 1 D 2 D 0 bzw. Q 1;2 D ˙ ı. Für die Kondition des Eigenwertproblems .A; 1 / ergibt sich abs
p ı 1 jQ 1 1 j D p ! 1 für ı ! 0: D Q ı kA Ak2 ı
Die Bestimmung des Eigenwertes D 0 von A ist daher (bzgl. des absoluten Fehlers) ein schlecht gestelltes Problem. Eine genauere Störungstheorie für (mehrfache) Eigenwerte und Eigenvektoren für allgemeine Matrizen (und Operatoren) findet sich in dem Buch von T. Kato [60].
135
5.1 Kondition des allgemeinen Eigenwertproblems
Ohne Vertiefung wollen wir noch das Folgende festhalten: Bei mehrfachen oder auch schon bei nahe zusammenliegenden Eigenwertclustern ist die Berechnung einzelner Eigenvektoren schlechtkonditioniert, nicht aber die Berechnung einer orthogonalen Basis des betreffenden Eigenraumes. Für das gutkonditionierte reell-symmetrische Eigenwertproblem könnte man zunächst daran denken, das charakteristische Polynom aufzustellen und anschließend seine Nullstellen zu bestimmen. Leider „verschwindet“ die Information der Eigenwerte, falls man das charakteristische Polynom in Koeffizientendarstellung behandelt. Nach Kapitel 2.2 ist also das umgekehrte Problem schlechtkonditioniert. Beispiel 5.4. Von J. H. Wilkinson [101] wurde das Polynom P ./ D . 1/ . 20/ 2 P 20 als warnendes Beispiel angegeben. Multiplizieren wir diese Wurzeldarstellung aus, so ergeben sich Koeffizienten in der Größenordnung zwischen 1 (Koeffizient von 20 ) und 1020 (der konstante Term ist z. B. 20Š). Wir stören nun den Koeffizienten (in der Größenordnung 103 ) von 19 um den sehr kleinen Wert " WD 223 107 . In Tabelle 5.1 haben wir die exakten Nullstellen des gestörten Polynoms PQ ./ D P ./ "19 eingetragen. Trotz der extrem kleinen Störung sind die Fehler beachtlich. Insbesondere sind fünf Nullstellenpaare komplex.
1:000 000 000 2:000 000 000 3:000 000 000 4:000 000 000 4:999 999 928 6:000 006 944 6:999 697 234 8:007 267 603 8:917 250 249
10:095 266 145 11:793 633 881 13:992 358 137 16:730 737 466 19:502 439 400 20:846 908 101
˙ ˙ ˙ ˙ ˙
0:643 500 904i 1:652 329 728i 2:518 830 070i 2:812 624 894i 1:940 330 347i
Tabelle 5.1. Exakte Nullstellen des Polynoms PQ ./ für " WD 223
136
5.2
5 Lineare Eigenwertprobleme
Vektoriteration
Die Eigenwerte einer Matrix A 2 Matn .R/ als Nullstellen des charakteristischen Polynoms A ./ D det.A I / zu berechnen, mag allenfalls für n D 2 ein gangbarer Weg sein. Stattdessen werden wir hier direkte Methoden entwickeln, die Eigenwerte und Eigenvektoren zu bestimmen. Die einfachste direkte Möglichkeit ist die sogenannte Vektoriteration, die wir in ihren beiden Spielarten, der direkten und der inversen Vektoriteration, im Folgenden besprechen wollen. Die von R. von Mises eingeführte direkte Vektoriteration (engl.: power method) basiert auf folgender Idee: Wir iterieren die durch die Matrix A 2 Matn .R/ gegebene Abbildung und definieren eine Folge ¹xk ºkD0;1;::: für einen beliebigen Startwert x0 2 Rn durch (5.1) xkC1 WD Axk für k D 0; 1; : : : : Ist ein einfacher Eigenwert von A betragsmäßig echt größer als alle anderen Eigenwerte von A, so können wir vermuten, dass sich bei der Iteration (5.1) gegenüber allen anderen Eigenwerten „durchsetzt“ und xk gegen einen Eigenvektor von A zum Eigenwert konvergiert. Diese Vermutung bestätigt der folgende Satz. Der Einfachheit halber beschränken wir uns dabei auf symmetrische Matrizen, für die das Eigenwertproblem nach Satz 5.2 gutkonditioniert ist. Satz 5.5. Sei 1 ein einfacher Eigenwert der symmetrischen Matrix A 2 Matn .R/ und betragsmäßig echt größer als alle anderen Eigenwerte von A, d. h. j1 j > j2 j jn j: Sei ferner x0 2 Rn ein Vektor, der nicht senkrecht auf dem Eigenraum von 1 steht. Dann konvergiert die Folge yk WD xk =kxk k mit xkC1 D Axk gegen einen normierten Eigenvektor von A zum Eigenwert 1 . Beweis. Sei 1 ; : : : ; P n eine Orthonormalbasis von Eigenvektoren von A mit A i D i i . Dann gilt x0 D niD1 ˛i i mit ˛1 D hx0 ; 1 i ¤ 0. Folglich ist xk D Ak x0 D
n X ˛i i k
˛i ki i D ˛1 k1 1 C i : ˛1 1 i D1 iD2 „ ƒ‚ … DW zk
n X
Da ji j < j1 j für alle i D 2; : : : ; n, gilt limk!1 zk D 1 und daher yk D
zk xk D ! ˙ 1 kxk k kzk k
für k ! 1.
Die direkte Vektoriteration hat jedoch mehrere Nachteile. Zum einen erhalten wir nur den Eigenvektor zum betragsgrößten Eigenwert 1 von A. Zum anderen hängt die
137
5.2 Vektoriteration
Konvergenzgeschwindigkeit von dem Quotienten j2 =1 j ab. Liegen also die Eigenwerte 1 und 2 betragsmäßig dicht zusammen, so konvergiert die direkte Vektoriteration nur sehr langsam. Die oben beschriebenen Nachteile der direkten Vektoriteration werden bei der von H. Wielandt (1945) entwickelten inversen Vektoriteration vermieden. Angenommen, wir hätten einen Schätzwert N i eines beliebigen Eigenwertes i der Matrix A zur Verfügung, so dass jN i j < jN j j
für alle j ¤ i .
(5.2)
N /1 . KonseDann ist .N i /1 der betragsgrößte Eigenwert der Matrix .A I quenterweise konstruiert man deshalb die Vektoriteration für diese Matrix. Diese Idee liefert die Iterationsvorschrift N /xkC1 D xk .A I
für k D 0; 1; : : : :
(5.3)
Sie heißt inverse Vektoriteration (engl.: inverse power method). Man beachte, dass bei jedem Iterationsschritt das lineare Gleichungssystem (5.3) gelöst werden muss, jedoch N muss daher nur einmal (z. B. nur für verschiedene rechte Seiten xk . Die Matrix A I mit der Gaußschen Dreieckszerlegung) zerlegt werden. Nach Satz 5.5 konvergiert die Folge yk WD xk =kxk k unter der Voraussetzung (5.2) für k ! 1 gegen einen normierten Eigenvektor von A zum Eigenwert i , falls nicht gerade der Startvektor x0 senkrecht auf dem Eigenvektor i zum Eigenwert i steht. Der Konvergenzfaktor ist dabei ˇ ˇ ˇ N ˇ ˇ ˇ i max ˇ ˇ < 1: Nˇ j ¤i ˇ j Ist N eine besonders gute Schätzung von i , so gilt ˇ ˇ ˇ N ˇ ˇ i ˇ ˇ ˇ 1 ˇ j N ˇ
für alle j ¤ i,
das Verfahren konvergiert in diesem Fall sehr rasch. Durch geeignete Wahl von N kann man also mit dieser Methode und einem nahezu beliebigen Startvektor x0 einzelne Eigenwerte und Eigenvektoren herausgreifen. Für einer Verbesserung dieses Verfahrens siehe Aufgabe 5.3. N für „gut gewähltes“ N Bemerkung 5.6. Man beachte, dass die Matrix A I i fast singulär ist. Im vorliegenden Fall entstehen daraus jedoch keine numerischen Schwierigkeiten, da nur die Richtung des Eigenvektors gesucht ist, deren Berechnung gutkonditioniert ist (vgl. Beispiel 2.33).
138
5 Lineare Eigenwertprobleme
Beispiel 5.7. Betrachten wir als Beispiel die 2 2-Matrix 2 3 1 3 5: A WD 4 2 4 Sie hat die Eigenwerte 1 D 1 und 2 D 2. Gehen wir aus von einer Approximation N D 1 " von 1 mit 0 < " 1, so ist die Matrix 2 3 2 C " 3 N D4 5 A I 2 3C" fast singulär und 2
N /1 D .A I
3
3C" 3 1 4 5: "." C 1/ 2 2 C "
Da sich der Faktor 1="." C 1/ bei der Normierung herauskürzt, ist die Berechnung der N /x D b gutkonditioniert. Dies lässt sich auch Richtung einer Lösung x von .A I an der relativen komponentenweisen Kondition rel D
N /1 j jbj k1 k j.A I kxk1
bezüglich Störungen der rechten Seite ablesen. Für b WD .1; 0/T ergibt sich z. B. 0 1 3 C " 1 N /1 b D j.A I N /1 j jbj D @ A x D .A I "." C 1/ 2 und daher, mit (2.4),
N /1 ; b D 1: rel D C .A I
N ein PivotTatsächlich wird in Programmen bei einer (echt) singulären Matrix A I element " D 0 durch die relative Maschinengenauigkeit eps ersetzt und mit der nun fast singulären Matrix die inverse Vektoriteration durchgeführt (vgl. [102]).
5.3
QR-Algorithmus für symmetrische Eigenwertprobleme
Wie in Kapitel 5.1 dargestellt, ist das Eigenwertproblem für symmetrische Matrizen gutkonditioniert. In diesem Abschnitt interessieren wir uns nun für die Frage, wie wir effektiv sämtliche Eigenwerte einer reellen symmetrischen Matrix A 2 Matn .R/ gleichzeitig berechnen können. Wir wissen, dass A nur reelle Eigenwerte 1 ; : : : ; n 2
139
5.3 QR-Algorithmus für symmetrische Eigenwertprobleme
R besitzt und eine Orthonormalbasis 1 ; : : : ; n 2 Rn aus Eigenvektoren A i D i i existiert, d. h. QT AQ D ƒ D diag .1 ; : : : ; n /
mit Q D Œ 1 ; : : : ; n 2 O.n/.
(5.4)
Die erste Idee, die einem in den Sinn kommen könnte, wäre, Q direkt in endlich vielen Schritten zu bestimmen. Da die Eigenwerte die Wurzeln des charakteristischen Polynoms sind, hätte man damit auch ein endliches Verfahren zur Bestimmung der Nullstellen von Polynomen beliebigen Grades (im Fall symmetrischer Matrizen nur mit reellen Wurzeln) gefunden. Dem steht der Satz von Abel entgegen: Er besagt, dass es ein solches Verfahren (basierend auf den Operationen C; ; ; = und Wurzelziehen) in Allgemeinheit nicht gibt. Die zweite Idee, die von (5.4) nahegelegt wird, ist, A durch eine Ähnlichkeitstransformation (Konjugation), z. B. mit orthogonalen Matrizen, der Diagonalgestalt näherzubringen, da die Eigenwerte invariant unter Ähnlichkeitstransformationen sind. Versucht man, eine symmetrische Matrix A durch Konjugation mit HouseholderMatrizen auf Diagonalgestalt zu bringen, so erweist sich dies schnell als unmöglich. 2 ::: 6 6 :: 6: 6 6 :: 6: 4 :::
:::
:::
2 3 6 7 :: 7 6 : 7 Q1 6 0 7 ! 6 6 :: :: 7 6: :7 4 5 0
2 3 6 7 :: 7 T 6 :: : 7 Q1 6 : 6 7 :: 7 ! 6 :: 6: :7 4 5 ::: :::
::: ::: :: : :: :
3 0 ::: ::: 0
7 7 7 7 :: 7 :7 5 ::: ::: ::: ::: :: :
Was die Multiplikation mit der Householder-Transformation von links geschafft hat, wird bei der Multiplikation von rechts wieder zerstört. Anders sieht es aus, wenn wir A nur auf Tridiagonalgestalt bringen wollen. Hier stören sich die HouseholderTransformationen von links und rechts wechselseitig nicht. 3 3 2 2 2 3 : : : 7 6 0 : : : 0 7 6 : : : ::: ::: 7 7 6 6 : : :: 7 6 : : : : : : 7 6 :: 6 7 : : 7 7 T 6 6 6: :: 7 6: 7 P1 6 P1 6 :: :: 7 :: 7 7 6 6 7 ! 6 0 ::: ! :7 :7 7 60 : 6 6 :: :: 7 7 6 6: : 6: 7 : :: 7 :: 7 7 6 :: :: 6: : 4 5 :7 :7 6: : 6: : 5 5 4 4 ::: ::: 0 ::: ::: 0 ::: ::: Diese Einsicht formulieren wir als Lemma. Lemma 5.8. Sei A 2 Matn .R/ symmetrisch. Dann existiert eine orthogonale Matrix P 2 O.n/, welche das Produkt von n2 Householder-Reflexionen ist, so dass PAP T Tridiagonalgestalt hat.
140
5 Lineare Eigenwertprobleme
Beweis. Wir iterieren den in (5.3) gezeigten Prozess und erhalten so Householder-Reflexionen P1 ; : : : ; Pn2 derart, dass 3
2
6 6 : 6 : : T D6 Pn2 P1 A P1T Pn2 :: „ ƒ‚ … „ ƒ‚ … 6 6 : 4 T DP DP
7 7 7 7: 7 :: : 7 5 ::
:
Damit haben wir somit unser Ausgangsproblem auf die Bestimmung der Eigenwerte einer symmetrischen Tridiagonalmatrix transformiert. Die erste Idee eines sogenannten LR-Algorithmus für symmetrische Tridiagonalmatrizen geht auf H. Rutishauser zurück. Er hatte zunächst ausprobiert, was passiert, wenn man die Faktoren der LR-Zerlegung einer Matrix A D LR vertauscht, A0 D RL, und diesen Prozess von Zerlegen und Vertauschen iteriert. Dabei zeigte sich, dass in vielen Fällen die Folge der so konstruierten Matrizen gegen die Diagonalmatrix ƒ der Eigenwerte konvergiert. Bei dem auf J. G. F. Francis (1959) [36] und V. N. Kublanovskaja (1961) [62] zurückgehenden QR-Algorithmus verwendet man statt einer LRZerlegung eine QR-Zerlegung. Diese existiert immer (keine Permutation nötig) und ist vor allen Dingen inhärent stabil, wie wir in Kapitel 3.2 gesehen haben. Wir definieren daher eine Folge ¹Ak ºkD1;2;::: von Matrizen durch a) A1 D A; b) Ak D Qk Rk ;
QR-Zerlegung;
(5.5)
c) AkC1 D Rk Qk : Lemma 5.9. Die Matrizen Ak haben folgende Eigenschaften: (i) Die Matrizen Ak sind alle konjugiert zu A. (ii) Ist A symmetrisch, so auch alle Ak . (iii) Ist A symmetrisch und tridiagonal, so auch alle Ak . Beweis. Zu (i). Sei A D QR und A0 D RQ. Dann gilt QA0 QT D QRQQT D QR D A: Zu (ii). Die Transformationen der Form A ! B T AB; B 2 GL.n/, sind die Basiswechsel für Bilinearformen und erhalten somit die Symmetrie. Insbesondere gilt dies für orthogonale Ähnlichkeitstransformationen. Dies folgt auch direkt aus .A0 /T D .A0 /T QT Q D QT RT QT Q D QT AT Q D QT AQ D A0 :
141
5.3 QR-Algorithmus für symmetrische Eigenwertprobleme
Zu (iii). Sei A symmetrisch und tridiagonal. Wir realisieren Q mit n 1 GivensRotationen 12 ; : : : ; n1;n , so dass QT D n1;n 12 (˝ zu eliminieren, ˚ neu erzeugtes (fill in-) Element). 3 2 3 2 7 6 ˚ 7 6 7 6 7 6 7 6 ˚ 7 6 ˝ 7 6 7 6 7 6 :: :: :: 7 6 7 6 : : : 7 6 ˝ 7 6 7 ! 6 6 7 7 6 : : : : : 6 :: :: ˚ 7 :: :: :: 7 6 7 6 7 6 7 6 7 6 : 6 :: 7 7 6 ˝ 7 6 5 4 5 4 ˝ !
A 2
6 ˚ 6 6 ˚ 6 6 :: :: 6 : : 6 6 : 6 :: 6 6 6 6 4
R D QT A
3 ˚ 7 6 7 7 6 7 7 6 ˚ 7 7 6 7 7 6 7 :: :: :: :: :: 7 6 7 : : : : : 7 6 7 ! 7 6 7 :: :: :: :: 6 7 : : : ˚ 7 : ˚ 7 7 6 7 6 7 :: :: :: 6 7 : : 7 : 7 7 6 5 4 5 2
3
!
R
A0 D RQ D QT AQ
Nach (ii) wissen wir, dass A0 wieder symmetrisch sein muss und daher alle ˚-Einträge in A0 verschwinden. Also ist A0 wieder tridiagonal. Die Konvergenzeigenschaft zeigen wir nur für den einfachen Fall, dass die Beträge der Eigenwerte von A paarweise verschieden sind. Satz 5.10. Sei A 2 Matn .R/ symmetrisch mit den Eigenwerten 1 ; : : : ; n , so dass j1 j > j2 j > > jn j > 0; .k/
und Ak ; Qk ; Rk wie in .5:5/ definiert. Dann gilt mit Ak D .aij /: a) b) c)
lim Qk D I;
k!1
lim Rk D ƒ;
k!1 .k/ ai;j
ˇ ˇk ! ˇ i ˇ D O ˇˇ ˇˇ j
für i > j .
142
5 Lineare Eigenwertprobleme
Beweis. Der hier gegebene Beweis geht auf J. H. Wilkinson [100] zurück. Wir zeigen zunächst, dass Ak D Q1 Qk Rk R1 „ ƒ‚ … „ ƒ‚ … DW Uk DW Pk
für k D 1; 2; : : : :
Für k D 1 ist die Behauptung klar, da A D A1 D Q1 R1 . Andererseits folgt aus der Konstruktion der Ak , dass AkC1 D QkC1 RkC1 D QkT Q1T AQ1 Qk D Pk1 APk und daher der Induktionsschritt AkC1 D AAk D APk Uk D Pk QkC1 RkC1 Uk D PkC1 UkC1 : Da Pk 2 O.n/ orthogonal und Uk obere Dreiecksmatrix, können wir die QR-Zerlegung Ak D Pk Uk von Ak durch die QR-Zerlegung der A1 ; : : : ; Ak ausdrücken. Ferner gilt Ak D Qƒk QT ; ƒk D diag.k1 ; : : : ; kn /: Wir nehmen nun der Einfachheit halber an, Q hätte eine LR-Zerlegung Q D LR; wobei L unipotente untere und R obere Dreiecksmatrix ist. Dies können wir immer erreichen, indem wir A mit einer geeigneten Permutation konjugieren. Damit gilt Ak D Qƒk LR D Q.ƒk Lƒk /.ƒk R/: Für die unipotente untere Dreiecksmatrix ƒk Lƒk gilt k
k
.ƒ Lƒ
/ij D lij
i j
k :
Insbesondere verschwinden alle Nicht-Diagonalelemente für k ! 1, d. h. ƒk Lƒk D I C Ek
mit Ek ! 0 für k ! 1.
Eingesetzt in (5.6) folgt Ak D Q.I C Ek /ƒk R: Nun wenden wir auch auf I C Ek (formal) eine QR-Zerlegung I C Ek D QQ k RQ k
(5.6)
143
5.3 QR-Algorithmus für symmetrische Eigenwertprobleme
an, wobei alle Diagonalelemente von RQ k positiv seien. Dann folgt aus der Eindeutigkeit der QR-Zerlegung und limk!1 Ek D 0, dass QQ k ; RQ k ! I
für k ! 1.
Damit haben wir eine zweite QR-Zerlegung von Ak hergeleitet, da Ak D .QQQ k /.RQ k ƒk R/: Bis auf die Vorzeichen in der Diagonale gilt daher Pk D QQQ k ; Uk D RQ k ƒk R; und es folgt für k ! 1, dass T T T Pk D QQ k1 QT QQQ k D QQ k1 Qk D Pk1 QQ k ! I Rk D Uk U 1 D RQ k ƒk RR1 ƒ.k1/ RQ 1 D RQ k ƒRQ 1 k1
k1
k1
! ƒ
und lim Ak D lim Qk Rk D lim Rk D ƒ:
k!1
k!1
k!1
Bemerkung 5.11. Eine genauere Analyse zeigt, dass das Verfahren auch für mehrfache Eigenwerte i D D j konvergiert. Falls hingegen i D iC1 , so konvergiert das Verfahren nicht. Es bleiben 2 2-Blöcke stehen. Liegen zwei Eigenwerte i ; i C1 betragsmäßig dicht beieinander, so konvergiert das Verfahren nur sehr langsam. Dies kann mit Hilfe der sogenannten Shift-Strategien verbessert werden. Im Prinzip versucht man, die beiden Eigenwerte dichter an den Nullpunkt zu schieben und so den Quotienten jiC1 =i j zu verkleinern. Dazu verwendet man für jeden Iterationsschritt k einen Shift-Parameter k und definiert die Folge ¹Ak º durch a) A1 D A; b) Ak k I D Qk Rk ;
QR -Zerlegung;
c) AkC1 D Rk Qk C k I: Es folgt wie oben 1) AkC1 D QkT Ak Qk Ak , 2) .A k I / .A 1 I / D Q1 Qk Rk R1 .
144
5 Lineare Eigenwertprobleme
Die Folge ¹Ak º konvergiert gegen ƒ mit der Geschwindigkeit ˇ ˇ ˇ ˇ ˇ i 1 ˇ ˇ i k1 ˇ .k/ ˇˇ ˇ für i > j . ai;j D O ˇˇ j 1 ˇ ˇ j k1 ˇ Wir haben ein solches Konvergenzverhalten bereits bei der inversen Vektoriteration in Kapitel 5.2 kennengelernt. Die k sollten möglichst nahe an den Eigenwerten i ; i C1 liegen, um die Konvergenzbeschleunigung zu erreichen. J. H. Wilkinson hat folgende Shift-Strategie vorgeschlagen: Wir gehen aus von einer symmetrischen Tridiagonalmatrix A. Falls dann das untere Ende der Tridiagonalmatrix Ak von der Form :: :: : : ::
:
.k/
.k/
dn1 en .k/
en
.k/
dn
ist, so hat die 2 2-Eckmatrix zwei Eigenwerte, von denen wir denjenigen als k .k/ wählen, der näher an dn liegt. Besser als diese expliziten Shiftstrategien sind, insbesondere für schlecht skalierte Matrizen, die impliziten Shift-Verfahren, für die wir wieder auf [47] bzw. [91] verweisen. Mit diesen Techniken benötigt man schließlich O.n/ Operationen pro zu berechnendem Eigenwert, also O.n2 / für sämtliche Eigenwerte. Neben den Eigenwerten interessieren wir uns auch für die Eigenvektoren, die sich wie folgt berechnen lassen: Ist Q 2 O.n/ eine orthogonale Matrix, so dass A QT ƒQ;
ƒ D diag.1 ; : : : ; n /;
so approximieren die Spalten von Q die Eigenvektoren von A, d. h. Q Œ 1 ; : : : ; n : Zusammen erhalten wir den folgenden Algorithmus zur Bestimmung sämtlicher Eigenwerte und Eigenvektoren einer symmetrischen Matrix. Algorithmus 5.12. QR-Algorithmus. a) Reduziere das Problem auf Tridiagonalgestalt, A ! A1 D PAP T ;
A1 symmetrisch und tridiagonal; P 2 O.n/:
b) Approximiere die Eigenwerte mit dem QR-Algorithmus mit Givens-Rotationen angewandt auf A1 , A1 T ƒ;
.k/
Produkt aller Givens-Rotationen ij :
145
5.4 Singulärwertzerlegung
c) Die Spalten von P approximieren die Eigenvektoren von A: P Œ 1 ; : : : ; n : Der Aufwand beträgt a)
4 3 3n
Multiplikationen für die Transformation auf Tridiagonalgestalt,
b) O.n2 / Multiplikationen für den QR-Algorithmus. Für große n überwiegt daher der Aufwand für die Reduktion auf Tridiagonalgestalt. Bemerkung 5.13. In vielen Anwendungen insbesondere aus den Sozialwissenschaften stellt sich die Aufgabe, aus einer Vielzahl von problembedingten Faktoren eine Untermenge herauszufiltern, die den „wesentlichen“ Teil des „Modells“ erklärt; diese Aufgabe heißt auch Faktoranalyse. Sie führt auf Eigenwertprobleme für symmetrische positiv semi-definite Matrizen. Seien die Eigenwerte der Größe nach geordnet. Dann kann mit einem Signifikanzparameter " das Eigenwertspektrum so abgeschnitten werden, dass das verbleibende „reduzierte Modell“ tatsächlich die wesentlichen Effekte beschreibt. Die Eigenvektoren zu den im reduzierten Modell verbleibenden Eigenwerten werden sodann gemäß ihrem Anteil an den ursprünglichen Faktoren interpretiert. Je nach Anwendungsdisziplin spricht man auch von principal component analysis, abgekürzt: PCA. Der interessierte Leser sei auf die Originalarbeit von K. Pearson [74] aus dem Jahre 1901 (!) verwiesen. Bemerkung 5.14. Für nicht symmetrische Matrizen führt man zunächst eine orthogonale Konjugation auf Hessenberggestalt durch. Anschließend wird mit dem QRAlgorithmus iterativ auf die Schursche Normalform (komplexe obere Dreiecksmatrix) hingearbeitet. Näheres dazu findet man in dem Buch von J. H. Wilkinson und C. Reinsch [102].
5.4
Singulärwertzerlegung
Ein sehr nützliches Mittel zur Analyse von Matrizen stellt die sogenannte Singulärwertzerlegung einer Matrix A 2 Matm;n .R/ dar. Wir zeigen zunächst die Existenz einer solchen Zerlegung und listen einige Eigenschaften auf. Anschließend werden wir uns ansehen, wie sich die Singulärwerte durch eine Variante des oben beschriebenen QR-Algorithmus berechnen lassen. Satz 5.15. Sei A 2 Matm;n .R/ eine beliebige reelle Matrix. Dann gibt es orthogonale Matrizen U 2 O.m/ und V 2 O.n/, so dass U T AV D † D diag.1 ; : : : ; p / 2 Matm;n .R/; wobei p D min.m; n/ und 1 2 p 0.
146
5 Lineare Eigenwertprobleme
Beweis. Es genügt zu zeigen, dass es U 2 O.m/ und V 2 O.n/ gibt, so dass 2 U T AV D 4
3
0
5:
0 B Die Behauptung folgt dann durch Induktion. Sei WD kAk2 D maxkxkD1 kAxk. Da das Maximum angenommen wird, gibt es v 2 Rn , u 2 Rm , so dass Av D u
kuk2 D kvk2 D 1:
und
Wir können ¹vº zu einer Orthonormalbasis ¹v D V1 ; : : : ; Vn º des Rn und ¹uº zu einer Orthonormalbasis ¹u D U1 ; : : : ; Um º des Rm erweitern. Dann sind V WD ŒV1 ; : : : ; Vn
U WD ŒU1 ; : : : ; Um
und
orthogonale Matrizen, V 2 O.n/, U 2 O.m/, und U T AV von der Form 2 A1 WD U T AV D 4 mit w 2 Rn1 . Da 0 1 @ A 2 . 2 C kwk22 /2 A1 2 w
und
wT
0
B
3 5
0 1 2 @ A D 2 C kwk22 ; 2 w
gilt 2 D kAk22 D kA1 k22 2 C kwk22 und daher w D 0, also 2 U T AV D 4
3
0
0 B
5:
Definition 5.16. Die Zerlegung U T AV D † heißt Singulärwertzerlegung von A, die i sind die Singulärwerte von A. Mit der Singulärwertzerlegung stehen uns die wichtigsten Informationen über eine Matrix zur Verfügung. Die folgenden Eigenschaften lassen sich leicht aus Satz 5.15 ableiten. Korollar 5.17. Sei U T AV D † D diag.1 ; : : : ; p / die Singulärwertzerlegung von A mit den Singulärwerten 1 ; : : : ; p , wobei p D min.m; n/. Dann gilt:
147
5.4 Singulärwertzerlegung
1. Sind Ui und Vi die Spalten von U bzw. V , so ist AVi D i Ui
und
AT Ui D i Vi
für i D 1; : : : ; p:
2. Falls 1 r > rC1 D D p D 0, so gilt Rang A D r; ker A D span¹VrC1 ; : : : ; Vn º und im A D span¹U1 ; : : : ; Ur º: 3. Die Euklidische Norm von A ist der größte Singulärwert, d. h. kAk2 D 1 : P 4. Für die Frobenius-Norm von kAkF D . niD1 kAi k22 /1=2 gilt kAk2F D 12 C C p2 : 5. Die Kondition von A bzgl. der Euklidischen Norm ist der Quotient von größtem und kleinstem Singulärwert, d. h. 2 .A/ D 1 =p : 6. Die Quadrate 12 ; : : : ; p2 der Singulärwerte sind Eigenwerte von AT A und AAT zu den Eigenvektoren V1 ; : : : ; Vp bzw. U1 ; : : : ; Up . Aufgrund der Invarianz der Euklidischen Norm kk2 unter den orthogonalen Transformationen U und V erhalten wir aus der Singulärwertzerlegung von A auch eine weitere Darstellung der Pseudoinversen AC von A. Korollar 5.18. Sei U T AV D † Singulärwertzerlegung von A 2 Matm;n .R/ mit p D Rang A und † D diag.1 ; : : : ; p ; 0; : : : ; 0/: Dann ist die Pseudoinverse AC 2 Matn;m .R/ gerade AC D V †C U T
mit †C D diag.11 ; : : : ; p1 ; 0; : : : ; 0/.
Beweis. Wir müssen nachweisen, dass die rechte Seite B WD V †C U T die PenroseAxiome erfüllt. Trivialerweise ist die Pseudoinverse der Diagonalmatrix † gerade †C . Daraus folgen sofort auch die Moore-Penrose-Axiome für B, da V T V D I und UT U D I. Wir gehen nun über zu der Frage der numerischen Berechnung der Singulärwerte. Nach Folgerung 5.17 sind die Singulärwerte i einer Matrix A 2 Matn .R/ die Wurzeln der Eigenwerte von AT A, q (5.7) i .A/ D i .AT A/:
148
5 Lineare Eigenwertprobleme
Das Eigenwertproblem der symmetrischen Matrix AT A ist gutkonditioniert. Damit ist auch das Singulärwertproblem von A gutkonditioniert, falls die explizite Berechnung von AT A vermieden werden kann. Mit (5.7) böte sich eine Berechnungsmethode für die i .A/ an. Dieser Umweg ist jedoch ungeeignet, wie sich an folgendem Beispiel leicht nachvollziehen lässt : Beispiel 5.19. Wir rechnen mit einer Genauigkeit von vier Ziffern (gerundet). 2 3 1:005 0:995 5 ; 1 D 1 .A/ D 2; 2 D 2 .A/ D 0:01: A D AT D 4 0:995 1:005 Über den Zugang mit AT A erhalten wir 2 3 2:000 2:000 5; fl.AT A/ D 4 2:000 2:000
Q 12 D 4;
Q 22 D 0:
Ebenso wie bei der linearen Ausgleichsrechnung (Kapitel 3) suchen wir daher auch hier ein Verfahren, welches nur auf der Matrix A operiert. Dazu untersuchen wir zunächst, unter welchen Operationen die Singulärwerte invariant bleiben. Lemma 5.20. Sei A 2 Matm;n .R/, und seien P 2 O.m/, Q 2 O.n/ orthogonale Matrizen. Dann haben A und B WD PAQ die gleichen Singulärwerte.
Beweis. Einfache Übung.
Wir dürfen also die Matrix A von links und rechts mit beliebigen orthogonalen Matrizen multiplizieren, ohne die Singulärwerte zu verändern. Für die Anwendung des QR-Algorithmus ist es wünschenswert, die Matrix A so zu transformieren, dass AT A tridiagonal ist. Dies erreichen wir am einfachsten, indem wir A auf Bidiagonalgestalt bringen. Das folgende Lemma zeigt, dass dieses Ziel mit Hilfe von HouseholderTransformationen von rechts und links erreichbar ist. Lemma 5.21. Für jede Matrix A 2 Matm;n .R/ mit m n .o.B.d.A/ existieren orthogonale Matrizen P 2 O.m/ und Q 2 O.n/, so dass 3 2 7 6 :: :: 7 6 : : 7 6 7 0 1 6 :: : 7 6 7 6 B @ A; PAQ D 6 7 7D 6 7 6 0 6 0 0 7 7 6 : :: 7 6 : : 5 4 : 0
0
wobei B eine .quadratische/ Bidiagonalmatrix ist.
149
5.4 Singulärwertzerlegung
Beweis. Wir veranschaulichen die Konstruktion von P und Q mit Householder-Matrizen (der Einfachheit halber m D n): 2 3 2 3 2 3 0 : : : : : : 0 : : : : : : 6 7 6 7 ::: ::: 6 7 6 7 6 0 6 0 7 6 7 7 :: 7 6 7 6 7 6 :: 6 : : 7 P1 6 : : Q1 6 : : :: 7 :: 7 6 7 6 7 ! 6 :: :: : : : 7 : 7!6 : : 7 6 6 :: :: 7 6 6 7 6 : 7 : 5 :: 7 :: 7 6 :: :: 7 6 :: :: 4 : 7 : 7 6 : : 6 : : 4 5 4 5 ::: ::: 0 ::: ::: 0 ::: ::: 2 6 6 6 6 P2 6 !6 6 6 6 6 4
3 0 ::: 0 :: : :: :
::: : 0 :: :: :: : :
0 0 :::
0 7 7 7 7 Q2 :: 7 : 7 7 ! :: 7 7 : 7 5
3
2
6 6 :: : Pn1 6 ! 6 6 6 4
Damit gilt dann (für m > n) 0 1 B @ A D Pn1 P1 A Q1 Qn2 : „ ƒ‚ … „ ƒ‚ … 0 DW P DW Q
7 7 7 7: 7 :: : 7 5 ::
:
Zur Herleitung eines effektiven Algorithmus untersuchen wir nun den QR-Algorithmus für die Tridiagonalmatrix B T B. Ziel ist, eine vereinfachte Version zu finden, die ausschließlich auf B operiert. Führen wir den ersten Givens-Eliminationsschritt des QR-Algorithmus auf A D B T B aus, A ! 12 B T BT12 D .BT12 /T BT12 ; „ ƒ‚ … „ƒ‚… BQ BQ T so erhalten wir für BQ die Matrix 2
BQ D BT12
3
7 6 7 6˚ 7 6 7 6 :: :: 6 D6 : : 7 7; 7 6 : :: 7 6 5 4
150
5 Lineare Eigenwertprobleme
wobei an der Stelle ˚ ein neues Element (fill in) erzeugt wurde. Spielt man den QRAlgorithmus für B T B auf diese Weise auf B zurück, so zeigt sich, dass das Verfahren folgendem Eliminationsprozess entspricht: 3 2 7 6 z3 7 6 7 6 z2 z5 7 6 7 6 7 6 z4 z 7 7 6 7 6 :: :: :: :: 7 6 (5.8) : : : : 7 6 7 6 6 z2n6 z2n3 7 7 6 7 6 7 6 z2n4 7 6 5 4 z2n2 eliminiere z2
(Givens von links) ! erzeugt z3
eliminiere z3 :: :
(Givens von rechts) ! erzeugt z4 :: :: : :
eliminiere z2n3 (Givens von rechts) ! erzeugt z2n2 eliminiere z2n2 (Givens von links): Man „jagt“ also den jeweils erzeugten fill-in-Elementen z2 ; z3 ; : : : entlang der beiden Diagonalen nach und beseitigt dabei mit Givens-Rotationen abwechselnd von links und von rechts die neu entstehenden Einträge. Deswegen heißt dieser Prozess im Englischen auch chasing. Zum Schluss hat die Matrix wieder Bidiagonalgestalt und wir haben einen Iterationsschritt des QR-Verfahrens für B T B nur auf B ausgeführt. Nach Satz 5.10 gilt BkT Bk ! ƒ D diag.12 ; : : : ; n2 / D †2
für k ! 1.
Daher konvergiert die Folge Bk gegen die Diagonalmatrix der Singulärwerte von B, d. h. Bk ! † für k ! 1. Zusammengefasst erhalten wir folgenden Algorithmus zur Bestimmung der Singulärwerte von A (für Einzelheiten verweisen wir auf [47]):
151
5.5 Stochastische Eigenwertprobleme
Algorithmus 5.22. QR-Algorithmus für Singulärwerte. a) Bringe A 2 Matm;n .R/ mit Hilfe orthogonaler Transformationen, P 2 O.m/ und Q 2 O.n/ (z. B. Householder-Reflexionen), auf Bidiagonalgestalt: 0 1 B PAQ D @ A ; B 2 Matn .R/ obere Bidiagonalmatrix: 0 b) Führe den QR-Algorithmus für B T B nach dem „chasing“-Verfahren (5.8) auf B aus und erhalte so eine Folge von Bidiagonalmatrizen ¹Bk º, die gegen die Diagonalmatrix † der Singulärwerte konvergiert. Für den Aufwand zählen wir dabei für m D n a) 34 n3 Multiplikationen für die Reduktion auf Bidiagonalgestalt, b) O.n2 / Multiplikationen für den modifizierten QR-Algorithmus.
5.5
Stochastische Eigenwertprobleme
Der hier betrachtete Problemtyp hängt eng zusammen mit stochastischen Prozessen: Sei X./ eine Zufallsvariable, die zu diskreten Zeitpunkten, etwa k D 0; 1; : : : , diskrete Zustände aus einer endlichen Menge S D ¹s1 ; : : : ; sn º annehmen kann. Sei (5.9) P X.k C 1/ D sj j X.k/ D si D aij .k/ die Wahrscheinlichkeit, dass die Variable zum Zeitpunkt k C 1 den Zustand sj annimmt, wenn sie zum Zeitpunkt k im Zustand si war. Offenbar geht hier nur der unmittelbar vorangegangene Zustand ein, nicht die weiter zurückliegenden, d. h., der Prozess hat quasi „kein Gedächtnis“; solche speziellen stochastischen Prozesse heißen Markov-Prozesse, im hier vorliegenden zeitdiskreten Fall genauer Markov-Ketten. Sie wurden im Jahre 1907 von dem russischen Mathematiker A. A. Markov eingeführt (Näheres siehe [70]). Falls die Wahrscheinlichkeiten nicht vom Zeitpunkt abhängen, also falls aij .k/ D aij , so spricht man von einer homogenen Markov-Kette. Die aij sind als Wahrscheinlichkeiten interpretierbar. Dies führt uns zu folgender Definition 5.23. Eine Matrix A D .aij / heißt stochastisch, wenn gilt: X aij D 1; i; j D 1; : : : ; n: aij 0; j
Führen wir den speziellen Vektor e T D .1; : : : ; 1/ ein, so können wir die obige Zeilensummenbeziehungen kompakt schreiben als Ae D e:
152
5 Lineare Eigenwertprobleme
Also existiert ein (Rechts-)Eigenvektor e zu einem Eigenwert 1 .A/ D 1. Rufen wir uns ins Gedächtnis, dass kAk1 gerade die Zeilensummen-Norm ist, so erhalten wir für den Spektralradius .A/ die Ungleichungskette j.A/j .A/ kAk1 D 1; woraus sofort 1 D .A/ D 1 folgt. Bezeichne p.k/ 0 eine Wahrscheinlichkeitsverteilung über alle Zustände in S zum Zeitpunkt k mit der Normierung p T .k/e D 1: Dann ergibt sich aus der Markov-Kette die rekursive Beziehung p T .k C 1/ D p T .k/A;
k D 0; 1; : : : ;
und somit p T .k/ D p T .0/Ak ;
k D 0; 1; : : : :
Vor diesem Hintergrund heißt A die Übergangsmatrix der Markov-Kette. Sei nun probehalber die folgende Spektraleigenschaft vorausgesetzt: Der Eigenwert 1 D 1 ist einfach und der einzige auf dem Einheitskreis. Dann gilt nach den Resultaten zur Vektoriteration (siehe Abschnitt 5.2) auch mit der nichtsymmetrischen Matrix A die Grenzwerteigenschaft lim p T .k/ D p T .0/ lim Ak D T ;
k!1
k!1
(5.10)
wobei (normierter) Linkseigenvektor zum dominanten Eigenwert 1 D 1 ist, also T A D T :
(5.11)
Per Definition sind alle Komponenten von sicher nichtnegativ, so dass die folgende Normierung gilt: kk1 D T e D 1: Im Folgenden wollen wir klären, unter welchen Voraussetzungen an die Matrix A die erwähnte Spektraleigenschaft zutrifft.
5.5.1
Perron-Frobenius-Theorie
Im Folgenden wollen wir uns mit Eigenwertproblemen zunächst für positive und sodann für nichtnegative Matrizen beschäftigen, die offenbar unsere stochastischen Eigenwertprobleme als Spezialfall enthalten.
153
5.5 Stochastische Eigenwertprobleme
Positive Matrizen. Als Zwischenschritt behandeln wir zunächst die Spektraleigenschaften positiver Matrizen A D jAj > 0, wobei wie in früheren Kapiteln die Betragsstriche j j elementweise zu verstehen sind, hier also aij > 0 für alle Indices i; j . Das Tor zu dieser interessanten Problemklasse wurde von O. Perron ebenfalls im Jahr 1907 (siehe Markov!) aufgestoßen. Für positive Matrizen gilt sicher .A/ > 0, andernfalls müssten alle Eigenwerte verschwinden, so dass A nilpotent sein müsste – im Widerspruch zur Annahme A > 0. Damit können wir anstelle von A ebenso gut die Matrix A= .A/ betrachten. Sei also im Folgenden ohne Beschränkung der Allgemeinheit .A/ D 1 angenommen. Hier benötigen wir allerdings nicht die spezielle Tatsache, dass e ein Eigenvektor ist. Der folgende Satz geht auf Perron [75] zurück. Satz 5.24. Sei A > 0 positive Matrix mit Spektralradius .A/ D 1. Dann gilt: I. Der Spektralradius .A/ D 1 ist ein Eigenwert. II. Der Eigenwert D 1 ist der einzige auf dem Einheitskreis. III. Zu D 1 existieren positive Links- und Rechts-Eigenvektoren. IV. Der Eigenwert D 1 ist einfach. Beweis. Wir betrachten zunächst mögliche Eigenvektoren x zu Eigenwerten auf dem Einheitskreis, also mit jj D 1, und erhalten jxj D jj jxj D jxj D jAxj jAj jxj D A jxj: Falls solche Eigenvektoren x ¤ 0 existieren, so gilt sicher z D A jxj > 0. Definieren wir des Weiteren y D z jxj, so können wir die obige Ungleichung schreiben als y 0. Sei nun (als Widerspruchsannahme) y ¤ 0 vorausgesetzt, so gilt Ay > 0. Dann existiert sicher ein > 0 derart, dass Ay > z, woraus folgt Ay D Az A jxj D Az z > z oder äquivalent Bz > z für B D A=.1 C /. Wenden wir B wiederholt an, so folgt B k z > z: Per Konstruktion ist .B/ D 1=.1 C / < 1 und somit gilt lim B k z D 0 > z:
k!1
Dies steht im Widerspruch zur Annahme z > 0. Also muss die Voraussetzung y ¤ 0 falsch sein, d. h., es muss gelten y D A jxj jxj D 0:
154
5 Lineare Eigenwertprobleme
Also existieren Eigenvektoren jxj zum Eigenwert D 1 – dies ist Aussage I des Satzes. Wegen jxj D A jxj > 0 sind alle ihre Komponenten positiv. Dieser Beweis geht offenbar für Links- wie Rechts-Eigenvektoren gleichermaßen, da ja AT ebenfalls positiv ist. Dies ist Aussage III des Satzes. Ferner gilt offenbar: Wenn ein Eigenvektor zu einem Eigenwert auf dem Einheitskreis existiert, so muss dieser Eigenwert gerade D 1 sein; die obige Annahme y ¤ 0, die ja Eigenwerte ¤ 1 auf dem Einheitskreis einschloss, hatte für ¤ 1 zu einem Widerspruch geführt. Der Eigenwert D 1 ist also der einzige Eigenwert auf dem Einheitskreis. Damit ist die Aussage II des Satzes bewiesen. Es fehlt nur noch der Beweis, dass der Eigenwert D 1 einfach ist. Aus der JordanZerlegung J D T 1 AT folgt J k D T 1 Ak T;
kJ k k cond.T / kAk k:
Sei zunächst der Fall untersucht, dass in J ein Jordanblock J .1/ zum Eigenwert 1 mit > 1 existiert. Dann gilt einerseits: lim kJ .1/k k D 1 )
k!1
lim kJ k k D 1 )
k!1
lim kAk k D 1:
k!1
Andererseits existiert eine Norm k k derart, dass für " > 0 gilt kAk k .Ak / C " D max jk j C " D 1 C "; 2.A/
was wegen der Normen-Äquivalenz im Rn offenbar im Widerspruch zu oben steht. Also muss der Index D 1 vorliegen. In diesem Fall kann der Eigenwert D 1 immer noch Multiplizität m > 1 haben. Es existieren dann Links-Eigenvektoren xO i , i D 1; : : : ; m, und Rechts-Eigenvektoren xi , i D 1; : : : ; m, deren Komponenten alle positiv sind. Zugleich müssen sie jedoch den Orthogonalitätsrelationen xO iT xj D ıij ;
i; j D 1; : : : ; m;
genügen. Für i ¤ j heißt das, dass es nichtverschwindende Komponenten mit unterschiedlichem Vorzeichen in den Eigenvektoren geben muss – im Widerspruch zu der Tatsache, dass alle Komponenten positiv sein müssen. Also gilt m D 1 und die Aussage IV ist ebenfalls bewiesen. Der Eigenwert D .A/ heißt heute allgemein Perron-Eigenwert. Der Beweis des Satzes setzte die strenge Positivität aller Matrixelemente voraus. Unsere stochastischen Ausgangsmatrizen können jedoch auch Nullelemente enthalten. Wir müssen deshalb prüfen, ob und wie sich die eben dargestellten Resultate auf den nichtnegativen Fall verallgemeinern lassen.
5.5 Stochastische Eigenwertprobleme
155
Nichtnegative Matrizen. Bereits 1912, also nur fünf Jahre nach Perron, gelang dem Berliner Mathematiker F. G. Frobenius die kreative Übertragung der Perronschen Resultate auf den Fall von Matrizen mit aij 0. Er entdeckte, dass in diesem Fall die Matrizen noch eine zusätzliche Eigenschaft haben müssen: Sie müssen zumindest auch noch irreduzibel sein. Definition 5.25. Eine Matrix heißt reduzibel, wenn Permutationen P existieren derart, dass 2 3 C D 5; P T AP D 4 0 F wobei die Blockmatrizen C und F quadratisch sind. Falls kein Nullblock erzeugt werden kann, heißt die Matrix irreduzibel. Das mathematische Objekt hinter diesem Begriff sind Graphen. Aus einer nichtnegativen Matrix A D .aij / erhalten wir den zugehörigen Graphen, wenn wir jedem Index i D 1; : : : ; n einen Knoten zuordnen und Knoten i mit Knoten j durch einen Pfeil verbinden, falls aij > 0. Falls die Richtung der Pfeile eine Rolle spielen soll, spricht man von gerichteten Graphen. Die Operation P T AP beschreibt auf dem Graphen lediglich eine Umnummerierung der Knoten. Wie die Matrix ist ein Graph irreduzibel oder auch stark zusammenhängend, wenn es von jedem Knoten zu jedem anderen Knoten einen zusammenhängenden Pfad (in Richtung der Pfeile) gibt. Falls die zugehörige Matrix reduzibel ist, zerfällt die Indexmenge in zwei Teilmengen: Von den Knoten der zweiten Teilmenge existieren dann keine Pfeile zu den Knoten der ersten Teilmenge. In diesem Fall heißt der zugehörige Graph ebenfalls reduzibel. In Abbildung 5.1 geben wir zwei .3; 3/-Matrizen nebst zugehörigen Graphen. Für die Darstellung reichen die sogenannten Inzidenzmatrizen, bei denen 0 für aij D 0 und 1 für aij > 0 steht. Für den nachfolgenden Beweis benötigen wir die folgende algebraische Charakterisierung von Irreduzibilität. Lemma 5.26. Falls eine .n; n/-Matrix A 0 irreduzibel ist, so gilt .I C A/n1 > 0: .k/
Beweis. Seien Ak D .aij / die Potenzen der nichtnegativen Matrix A. Elementweise gilt dann X .k/ ail1 al1 l2 alk1 j : aij D l1 ;:::;lk1
Diese Elemente verschwinden, falls mindestens einer der Faktoren auf der rechten Seite verschwindet, also falls im zugehörigen Graphen kein Pfad von Knoten i nach
156
5 Lineare Eigenwertprobleme
Knoten j führt. Falls jedoch ein Pfad existiert, so existiert mindestens eine Indexfolge ; j derart, dass i; l1 ; : : : ; lk1 ail1 > 0;
al1 l2 > 0;
:::;
alk1 j > 0:
Bei irreduziblen Graphen tritt dieser Fall mit Garantie spätestens nach Durchlaufen aller anderen Knoten auf, also nach n1 Knoten. Mit Binomialkoeffizienten cn1;k > 0 erhalten wir so die Beziehung
.I C A/n1
ij
D
h n1 X
cn1;k Ak
i
kD0
ij
D
n1 X
.k/
cn1;k aij > 0:
kD0
Die Umkehrung des Satzes gilt natürlich nicht. Im Übrigen können im konkreten Fall auch niedrigere Potenzen von .I C A/ positiv sein: Die Pfade von jedem Knoten zu jedem anderen Knoten können wesentlich kürzer sein, müssen also nicht alle n 1 anderen Knoten durchlaufen – vergleiche Abbildung 5.1. 1 1 @ @ @ @ @ @ R @ R @ - 3 3 2 2
2
3 1 1 1
6 7 6 7 A D 61 0 07 4 5 0 1 0
2
3 1 1 1
6 7 6 7 A D 60 0 17 4 5 0 1 0
Abbildung 5.1. Beispiele von gerichteten Graphen und zugehörigen Inzidenzmatrizen. Links: irreduzibler Fall. Rechts: reduzibler Fall
Im Folgenden wollen wir wieder zur hier eigentlich interessierenden Klasse von stochastischen Matrizen zurückkehren. Der folgende Satz ist eine Anpassung des Satzes von Perron-Frobenius (siehe etwa [70]) an diesen Spezialfall. Satz 5.27. Sei A 0 eine irreduzible stochastische Matrix. Dann gilt: I. Der Perron-Eigenwert D 1 ist einfach. II. Zu D 1 existiert ein Links-Eigenvektor T > 0.
157
5.5 Stochastische Eigenwertprobleme
Beweis. Für stochastische Matrizen A kennen wir schon den Eigenwert D .A/ D 1 und einen zugehörigen Rechts-Eigenvektor e > 0. Es bleibt noch zu klären, ob dieser Eigenwert wiederum einfach ist. Zum Beweis stützen wir uns auf das vorangegangene Lemma 5.26, nach dem die Matrix B D .I C A/n1 streng positiv ist. Bezeichne mit jj 1 die Eigenwerte von A, so sind die Eigenwerte von B gerade .1 C /n1 . Nach dem Satz von Perron ist der dominante Eigenwert und Spektralradius von B gerade D .B/ D max j1 C jn1 D 2n1 : jj1
Dieser Eigenwert ist demnach einfach und der einzige auf dem Kreis mit Radius . Das obige Maximum wird angenommen für D 1. Also ist die Multiplizität des Eigenwertes von B und des Eigenwertes D 1 von A gleich: Dies beweist die Aussage I des Satzes. Jeder Eigenvektor zum Eigenwert von A ist zugleich auch Eigenvektor zum Eigenwert .1 C /n1 von B. Sei x Eigenvektor zum Eigenwert von B und zugleich D 1 von A, so ist x D jxj > 0 nach dem Satz von Perron klar. Anwendung auf den Rechts-Eigenvektor ist trivial, weil e > 0. Anwendung auf den Links-Eigenvektor liefert mit Blick auf (5.11) gerade T > 0. Dies ist die Aussage II oben. Der Satz besagt offenbar nicht, dass der Perron-Eigenwert auch im Fall irreduzibler nichtnegativer Matrizen der einzige Eigenwert auf dem Einheitskreis wäre. Dazu benötigen wir noch eine Zusatzeigenschaft, wie ebenfalls Frobenius schon herausfand. Definition 5.28. Nichtnegative irreduzible Matrizen heißen primitiv, wenn ihr Perron-Eigenwert der einzige Eigenwert auf dem Einheitskreis ist (bei Normierung
.A/ D 1). Solche Matrizen sind charakterisierbar durch die Eigenschaft, dass ein Index m existiert derart, dass Am > 0: Man kennt sogar eine obere Schranke m n2 2n C 2, die allerdings erst von Wielandt gefunden wurde. Der Beweis für primitive Matrizen ist vergleichsweise einfach: Man wendet lediglich den Satz von Perron an, diesmal auf die positive Matrix Am mit Eigenwerten m . Wir lassen ihn aus diesem Grunde weg. Stattdessen wenden wir uns noch kurz der interessanten Struktur von irreduziblen Matrizen zu, bei denen mehrere Eigenwerte auf dem Einheitskreis liegen. Hierzu zitieren wir ohne Beweis den folgenden Satz [70]. Satz 5.29. Sei A 0 eine irreduzible stochastische Matrix mit Eigenwerten auf dem Einheitskreis, > 1. Dann ist das gesamte Spektrum invariant unter Rotation um den Winkel 2=.
158
5 Lineare Eigenwertprobleme
Wegen dieser Eigenschaft heißen Matrizen mit > 1 auch zyklische Matrizen. Für sie gilt in der Konsequenz, dass die Spur von A verschwindet, also X
D
2.A/
n X
ai i D 0:
iD1
Da alle Elemente von A nichtnegativ sind, folgt daraus sofort ai i D 0;
i D 1; : : : ; n:
Falls auch nur ein Diagonalement einer irreduziblen Matrix A ungleich null ist, so ist sie sicher primitiv – eine leicht nachprüfbare hinreichende Bedingung. Damit haben wir den theoretischen Hintergrund zu (5.10) genügend ausgeleuchtet: Für primitive stochastische Matrizen konvergiert jede Anfangsverteilung p.0/ asymptotisch gegen den Links-Eigenvektor T D .1 ; : : : ; n / > 0:
5.5.2
Fastentkoppelte Markov-Ketten
Die im vorigen Abschnitt ausgeführte Beschreibung stochastischer Matrizen durch den zugrundeliegenden Graphen gestattet in natürlicher Weise eine Interpretation der zugrundeliegenden Markov-Kette: Die Elemente aij 0 sind gerade die Wahrscheinlichkeiten des Übergangs von einem diskreten Zustand i zu einem diskreten Zustand j . In den Anwendungen stellt sich oft im größeren Rahmen der sogenannten Clusteranalyse das folgende inverse Problem: Sei eine Markov-Kette über einer bekannten Zustandsmenge gegeben, entweder als ausführbare Markov-Kette oder durch ihre Übergangsmatrix. Dann ist die Zustandsmenge derart in eine unbekannte Anzahl von Teilmengen (auch: Clustern) zu zerlegen, dass die Markov-Kette in entkoppelte oder „fast entkoppelte“ Teilketten über diesen Teilmengen zerfällt. Zur Lösung dieses Problems können wir mit Gewinn auf die bisher gewonnenen Einsichten zurückgreifen, wie wir jetzt zeigen wollen. Perron-Clusteranalyse. Die folgende Darstellung orientiert sich an der erst jüngst erschienenen Arbeit [25]. Sie konzentriert sich auf Markov-Ketten, bei denen zusätzlich noch das Prinzip der detailed balance i aij D j aj i
für alle i; j D 1; : : : ; n
(5.12)
gilt. Wegen > 0 gibt es im zugehörigen Graphen für jeden Übergang von i nach j auch einen von j nach i. Solche Markov-Ketten ebenso wie ihre Übergangsmatrizen heißen reversibel.
159
5.5 Stochastische Eigenwertprobleme
p p Führen wir eine Gewichtsmatrix D D diag. 1 ; : : : ; n / ein, so können wir obige Bedingung kompakt schreiben als D 2 A D AT D 2 : Daraus folgt sofort, dass die zu A ähnliche Matrix Asym D DAD 1 reell-symmetrisch ist, aber im Allgemeinen nicht stochastisch. Also sind alle Eigenwerte von A wie von Asym reell und liegen im Intervall Œ1; C1. Ebenso wie zur Matrix Asym eine orthogonale Eigenbasis bezüglich des Euklidischen inneren Produktes hx; yi D x T y gehört, ergibt sich für A eine -orthogonale Eigenbasis, wobei Orthogonalität hier bezüglich des inneren Produktes hx; yi D x T D 2 y definiert ist – siehe hierzu auch Aufgabe 5.9. Falls der Graph reduzibel ist, besteht die Übergangsmatrix, nach geeigneter Permutation P , im reversiblen Fall aus k Diagonalblöcken. Zur Illustration betrachten wir k D 3: 2 3 A1 0 0 6 7 6 7 (5.13) P T AP D 6 0 A2 0 7 : 4 5 0 0 A3 Jede der Teilmatrizen Am , m D 1; : : : ; k, ist für sich eine reversible stochastische Matrix. Sei jede dieser Teilmatrizen als primitiv angenommen, so existiert je ein Perron-Eigenwert m D 1, m D 1; : : : ; k, und je ein verkürzter Rechts-Eigenvektor T D .1; : : : ; 1/. Die gesamte Blockdiagonalmatrix repäsentiert also k entkoppelte em Markov-Teilketten, deren asymptotische stationäre Wahrscheinlichkeitsverteilungen die entsprechend verkürzten Links-Eigenvektoren darstellen. Zur Präzisierung fassen wir die zur Teilmatrix Am gehörenden Indices in einer Indexteilmenge Sm zusammen. Die dazu gehörenden Links-Eigenvektoren Sm > 0 haben dann Komponenten i > 0, i 2 Sm , sowie i D 0, i 2 SnSm . Erweitern wir formal die Rechts-Eigenvektoren em auf die gesamte Indexmenge S, so erhalten wir em D Sm ;
m D 1; : : : ; k;
wobei Sm die charakteristische Funktion dieser Indexmengen bezeichnet: Ihr Wert ist 1 für Indices in Sm , andernfalls 0. In Abbildung 5.2, links, veranschaulichen wir den Zusammenhang für unser Illustrationsbeispiel. Dabei haben wir die Indices bereits so geordnet, dass die Teilmengen jeweils beisammen liegen.
160
5 Lineare Eigenwertprobleme
1
1
0.5
0.5
0
0
0.5
0.5
X1 X2 X3
1
1 0
30
60
90
0
30
60
90
Abbildung 5.2. Markov-Kette mit k D 3 entkoppelten Teilketten. Die Zustandsmenge S D ¹s1 ; : : : ; s90 º teilt sich in S1 D ¹s1 ; : : : ; s29 º, S2 D ¹s30 ; : : : ; s49 º und S3 D ¹s50 ; : : : ; s90 º. Links: charakteristische Funktion S2 . Rechts: Basis .X1 ; X2 ; X3 / des Eigenraums zu D 1
In unserem formalen Rahmen lautet somit das oben gestellte Problem der Clusteranalyse: Gesucht sind Indexmengen Sm , m D 1; : : : ; k, die zu (fast) entkoppelten Markov-Ketten gehören. In einem ersten Schritt betrachten wir den Fall von entkoppelten Markov-Ketten. Nach dem oben Gesagten wissen wir, dass die Kenntnis der gesuchten Indexmengen Sm in diesem Fall äquivalent ist zur Kenntnis der verkürzten Rechts-Eigenvektoren em zum k-fachen Perron-Eigenwert der Übergangsmatrix A. Eine Permutation P auf Blockdiagonalgestalt (5.13) kennen wir allerdings nicht, ihre tatsächliche Berechnung wäre auch zu teuer. Außerdem erwarten wir im „fast entkoppelten“ Fall eine „gestörte“ Blockdiagonalgestalt. Wir müssen deshalb nach anderen Lösungswegen suchen. Zunächst werden wir sicher das Eigenwertproblem zur reversiblen Übergangsmatrix A numerisch lösen; als Algorithmus empfiehlt sich eine Variante der QR-Iteration für stochastische Matrizen – als Anregung siehe Aufgabe 5.8. Angenommen, wir entdecken dabei einen k-fachen Perron-Eigenwert D 1, dann kennen wir immerhin schon k. Die Berechnung einzelner zugehöriger Eigenvektoren ist in diesem Fall schlechtkonditioniert, nicht jedoch die Berechnung einer (beliebigen, im Allgemeinen orthogonalen) Basis ¹X1 ; : : : ; Xk º für den Eigenraum (vergleiche unsere Bemerkung in Abschnitt 5.1). Ohne Vorabkenntnis der Indexmengen Sm werden wir dabei automatisch auf eine Linearkombination der Form X1 D e;
Xi D
k X
˛im Sm ;
i D 2; : : : ; k;
(5.14)
mD1
stoßen. Abbildung 5.2, rechts, stellt die Situation für unser Illustrationsbeispiel dar. Offenbar sind die Eigenvektoren über jeder Teilmenge Sm lokal konstant. Wären die Indices bereits wohlgeordnet durch eine geeignete Permutation P , so könnten wir
5.5 Stochastische Eigenwertprobleme
161
die Indexmengen Sm , m D 1; : : : ; k, einfach „ablesen“. Da jedoch die Indices in der uns vorliegenden Matrix A im Allgemeinen nicht so schön geordnet sein werden, benötigen wir ein effizientes Zuordnungskriterium, das invariant unter Permutation der Indices ist. Ein solches Kriterium liefert uns das folgende Lemma [25]. Lemma 5.30. Gegeben sei eine stochastische Matrix A bestehend aus reversiblen primitiven Diagonalblöcken A1 ; : : : ; Ak , bis auf Permutationen. Sei ¹X1 ; : : : ; Xk º eine -orthogonale Basis des Eigenraumes zum k-fachen Perron-Eigenwert D 1. Seien Sm , m D 1; : : : ; k, die Indexmengen zu den Diagonalblöcken. Sei jedem Zustand si 2 S eine Vorzeichenstruktur si 7! .sign..X1 /i /; : : : ; sign..Xk /i //
(5.15)
aus den i -ten Komponenten der Eigenbasis zugeordnet. Dann gilt: I. Alle Elemente si 2 Sm haben die gleiche Vorzeichenstruktur. II. Elemente unterschiedlicher Indexmengen Sm haben unterschiedliche Vorzeichenstruktur. Beweis. Wegen (5.14) sind alle Basisvektoren Xm über den Indexmengen Sm lokal konstant, liefern also eine gemeinsame Vorzeichenstruktur. Dies bestätigt die obige Aussage I. Zum Beweis von Aussage II können wir damit ohne Beschränkung der Allgemeinheit die Indexmengen Sm auf je ein einziges Element zusammenziehen. Sei ¹Q1 ; : : : ; Qk º orthogonale Eigenbasis zur Matrix Asym D DAD 1 und Q D ŒQ1 ; : : : ; Qk die zugehörige .k; k/-Matrix. Da Q orthogonal bzgl. h; i ist, also QT D Q1 , ist auch QT orthogonal. Also sind nicht nur die Spalten, sondern auch die Zeilen von Q orthogonal. Sei ¹X1 ; : : : ; Xk º die entsprechende -orthogonale Basis von Rechts-Eigenvektoren zur Matrix A. Dann gilt Xi D D 1 Qi für i D 1; : : : ; k. Da die Transformationsmatrizen D 1 nur positive Diagonaleinträge haben, sind die Vorzeichenstrukturen von Xi und Qi für i D 1; : : : ; k identisch. Die Vorzeichenstruktur von Sm ist gleich derjenigen der m-ten Zeile der Matrix X D ŒX1 ; : : : ; Xk . Angenommen, es existierten zwei Indexmengen Si and Sj mit i ¤ j , aber gleicher Vorzeichenstruktur. Dann hätten die Zeilen i und j von X die gleiche Vorzeichenstruktur, und folglich auch die entsprechenden Zeilen von Q. Ihr inneres Produkt h; i könnte somit nicht verschwinden – im Widerspruch zur Orthogonalität der Zeilen von Q. Damit ist auch Aussage II bewiesen. Lemma 5.30 zeigt klar, dass die k Rechts-Eigenvektoren zum k-fachen Eigenwert D 1 bequem benutzt werden können zur Identifikation der k gesuchten Indexmengen S1 ; : : : ; Sk über die in (5.15) definierten Vorzeichenstrukturen – pro Komponente nur k Binärbits. Das Kriterium kann komponentenweise getestet werden und ist somit unabhängig von jeder Permutation. In Abbildung 5.2, rechts, erhalten wir etwa für die Komponente s20 die Vorzeichenstruktur .C; C; C/, für s69 entsprechend .C; ; 0/.
162
5 Lineare Eigenwertprobleme
In einem zweiten Schritt wenden wir uns nun dem Fall von fastentkoppelten Markov-Ketten zu. In diesem Fall hat die Matrix A eine durch Permutationen verdeckte block-diagonal dominierte Gestalt, in Abwandlung von (5.13) etwa für k D 3 also die Gestalt: 2 3 AQ1 E12 E13 6 7 6 7 P T AP D 6E21 AQ2 E23 7 : 4 5 Q E31 E32 A3 Die Matrizenblöcke Eij D O."/ repräsentieren dabei eine Störung der Blockdiagonalgestalt, die quadratischen Diagonalblöcke AQm , m D 1; : : : ; k, entsprechen nur bis auf O."/ stochastischen reversiblen Matrizen. Sei nun angenommen, dass die gesamte Matrix A primitiv ist, so gibt es genau einen Perron-Eigenwert D 1, einen zugehörigen Rechts-Eigenvektor e und den zugehörigen Links-Eigenvektor > 0. Die im ungestörten Fall k-fache Wurzel D 1 ist unter Störung zerfallen in einen Cluster von Eigenwerten, den wir als Perroncluster bezeichnen wollen. Er enthält neben dem Perron-Eigenwert noch gestörte Perron-Eigenwerte: Q 2 D 1 O."/;
Q 1 D 1;
:::;
Q k D 1 O."/:
(5.16)
Unterschiedliche theoretische Charakterisierungen der Störung " finden sich in den Arbeiten [92] und [25]. Die Darstellung der zugehörigen Störungstheorie würde allerdings über den Rahmen dieses einführenden Lehrbuches hinausgehen. 1
X1 X2 X3
0.5 0 0.5 1 0
30
60
90
Abbildung 5.3. Markov-Kette mit k D 3 fastentkoppelten Teilketten. Eigenbasis X1 , X2 , X3 zu Perroncluster Q 1 D 1; Q 2 D 0:75; Q 3 D 0:52. Vergleiche Abbildung 5.2, rechts, für den entkoppelten Fall
Stattdessen wollen wir hier nur die Wirkung von Störungen auf die Eigenvektoren illustrieren (vgl. Aufgabe 5.10): In Abbildung 5.3 zeigen wir eine Störung des in Abbildung 5.2, rechts, dargestellten ungestörten Systems. Es zeigt sich, dass die
5.5 Stochastische Eigenwertprobleme
163
oben im entkoppelten Fall eingeführte Vorzeichenstruktur unter Störung nahezu unverändert geblieben ist und damit auch hier eine einfache Charakterisierung der gesuchten Indexmengen Sm erlaubt. In Analogie zu Abbildung 5.2, rechts, erhalten wir aus Abbildung 5.3 nun für die Komponente s20 nach wie vor die Vorzeichenstruktur .C; C; C/, für s69 allerdings .C; ; zero/, worin zero eine „verschmierte“ Null bezeichnet, die bezüglich der Störung " zu bewerten sein wird. Dies erweist sich als schwierig und ab k D 3 nicht robust durchführbar. Bei genauerer Analyse stellt sich nämlich heraus, dass diese „verschmierten“ Nullen generisch auftreten und das Problem empfindlich stören. Dies wurde in der neueren Arbeit [30] gezeigt, in der zugleich auch eine Abhilfe angegeben worden ist. Der darauf aufbauende neuere Algorithmus zur Perron-Clusteranalyse heißt heute PCCA (quasi für „Perron cluster cluster analysis“) mit Rücksicht darauf, dass der Name PCA für principal component analysis bereits vergeben ist, vgl. Bemerkung 5.13. Dieser Algorithmus liefert schließlich die Übergangswahrscheinlichkeiten zwischen den fastentkoppelten Markov-Ketten – Details siehe dort.
5.5.3
Prinzip der Google-Suchmaschine
Wohl alle von uns haben sich angewöhnt, erst einmal zu „googeln“, wenn wir etwas Spezielles wissen wollen. Für jeden Google-Nutzer immer wieder verblüffend ist dabei, mit welcher Geschwindigkeit die dahinterliegende Suchmaschine einschlägige Zitate in vernünftiger Reihung heranschafft – und dies bei einem Volumen von Milliarden Einträgen! Um diese Effizienz etwas besser zu verstehen, wollen wir in diesem Abschnitt einen genaueren Blick auf die Konstruktion der Suchmaschine werfen, in enger Anlehnung an die sehr schöne Einführung von P. F. Gallardo [37]. Für vertieftes Interesse empfehlen wir das erst jüngst erschienene Buch [64] von A. N. Langville und C. D. Meyer. Die Suchmaschine von Google1 wurde 1998 von Sergei Brin und Lawrence Page, zwei Informatik-Studenten der Universität Stanford, konzipiert. Die beiden sind mit dieser Idee und ihrer geschäftstüchtigen Umsetzung Multimillionäre geworden. Natürlich enthält das Konzept eine Fülle von Details bezüglich der Speicherung der Massendaten, ihrer regelmäßigen Erneuerung, der Abarbeitung der Anfragen, der effizienten Suche in Datenbanken etc. Diese Details wollen wir hier jedoch übergehen und uns stattdessen auf das zugrundeliegende Prinzip konzentrieren. Nehmen wir also an, wir hätten eine Anfrage bearbeitet und dabei herausgefunden, welche Untermenge der gespeicherten Webseiten die genannte Wortinformation enthalten. Dann heißt die Frage: In welcher Ordnung sollen diese Webseiten angeboten werden? Das Problem ist also, die gefundenen Webseiten gemäß einer – erst noch zu definierenden – 1 Der
Name leitet sich von dem Ausdruck googol her, der in einigen Mathematikerzirkeln für die „große“ Zahl 10100 steht. Er wurde vermutlich vom 9-jährigen Neffen des Mathematikers Edward Kasner erfunden.
164
5 Lineare Eigenwertprobleme
„Wichtigkeit“ zu ordnen. Die Lösung dieses Problems ist der Schlüssel zum Erfolg von Google. Modell. Seien ¹S1 ; : : : ; Sn º die Labels der gespeicherten Seiten. Wir wollen jeder Seite Sj eine Zahl xj zuordnen, welche ihre „Wichtigkeit“ charakterisiert. Dazu zählen wir zunächst die Anzahl Verbindungen (neudeutsch: Links), die zu dieser Seite hin und von dieser Seite weg gehen. So erhalten wir einen gerichteten Graphen, vergleiche dazu die Definition in Abschnitt 5.5.1. Man beachte, dass dieser Graph riesige Dimension hat. Um ihn darzustellen, benutzen wir, wie in Abschnitt 5.5.1 eingeführt, die zugehörige Inzidenzmatrix, etwa M D .mij /. Es gilt mij D 1, wenn es eine Verbindung von Sj nach Si gibt, ansonsten mij D 0. Die Summe der Elemente in Spalte j ist die Anzahl der Verweise von Sj nach anderen Seiten, die Summe der Elemente in Zeile i die Anzahl der Verweise nach Sj von anderen Seiten. Sicher hat die Wichtigkeit (Signifikanz) einer Seite irgendwie zu tun mit der Anzahl Links, die auf sie zeigen. Wie könnten also zunächst versucht sein, die Wichtigkeit xj proportional zur Anzahl solcher Links zu wählen. Eine solche Modellierung ließe jedoch außer Acht, dass es noch von Bedeutung ist, von welchen Seiten aus auf die ausgewählte Seite Sj verwiesen wird, ob von „wichtigen“ oder von eher „unwichtigen“ aus. („Reich-Ranicki hat ihn gelobt“ klingt, über einen Schriftsteller, einfach besser als „Herr Müller hat ihn gelobt.“.) Um dem Rechnung zu tragen, verfeinern wir unser erstes Modell in der Weise, dass wir xj als proportional zur Summe der Wichtigkeiten aller Seiten definieren, die auf Sj zeigen. Sei x D .x1 ; : : : ; xn / der entsprechende Vektor, in der Google-Nomenklatur auch „PageRank“-Vektor genannt, so ergibt sich daraus die Beziehung M x D x ;
(5.17)
wobei wir die noch unbekannte Proportionalitätskonstante mit bezeichnen. Offenbar sind wir damit bei einem Eigenwertproblem für eine nichtnegative Matrix gelandet. Wenn wir noch voraussetzen, dass unsere Matrix bzw. der Graph irreduzibel ist, dann gibt es nach der Perron-Frobenius-Theorie (Abschnitt 5.5.1) genau einen positiven Eigenwert , der zugleich der maximale Eigenwert und Spektralradius ist, mit zugehörigen Eigenvektoren, deren Komponenten alle positiv sind. Die Modellierung bei Google geht jedoch noch einen Schritt weiter: Sie nimmt ein eher zufälliges Surfverhalten des Nutzers an, der von einem ausgehenden Link zum nächsten mit gleicher Wahrscheinlichkeit wechselt. Entsprechend wird jeder Seite Sj ein Gesamtgewicht 1 so zugeordnet, dass alle nach außen gerichteten Links gleichwahrscheinlich angesprungen werden. Mit dieser Annahme wird die ursprüngliche Matrix M transformiert in eine Matrix M D .mij / mit mij D mij =Nj , wobei Nj gerade die Spaltensumme der Spalte j der Matrix M ist, d.h. die Summe der Verweise nach außen. Damit ist die Matrix M , deren Spaltensummen alle auf 1 normiert sind, gerade die Transponierte einer stochastischen Matrix, wie wir sie in Definition 5.23
165
Übungsaufgaben
eingeführt hatten. So sind wir schließlich bei einem stochastischen Eigenwertproblem M x D x
(5.18)
gelandet. Der von uns gesuchte Vektor x sollte per Definition nur nichtnegative Komponenten haben, da wir sie ja als „Wichtigkeit“ von Seiten interpretieren wollen. Diese schöne Eigenschaft hat gerade der Eigenvektor zum Perron-Eigenwert D 1 – siehe Satz 5.27. Dieser Eigenvektor ist eindeutig definiert, wenn der Graph irreduzibel ist. Falls er in irreduzible Teilgraphen zerfällt, gilt die zugehörige Interpretation immer noch in den Teilgraphen, vergleiche etwa den vorigen Abschnitt 5.5.2. In Wirklichkeit ist natürlich nicht jeder Surfer ein „zufälliger“ Surfer, aber das Verhalten einer ganzen Community kann asymptotisch offenbar erstaunlich gut durch eine solche Annahme eingefangen werden. So bleibt nur noch, das gigantische Eigenwertproblem (5.18) zu lösen! Bei Google wird diese Mammutaufgabe vermutlich mit Hilfe einer speziell angepassten Variante des Lanczos-Verfahrens gelöst, das wir später, in Kapitel 8.5, darstellen werden. Dieses Verfahren eignet sich vom Prinzip her für diese Fragestellung besonders gut, da man nur an ganz wenigen Eigenwerten in der Nähe des Perron-Eigenwertes sowie den zugehörigen Eigenvektoren interessiert ist. Ganz sicher ist das allerdings nicht, die Methodik ist inzwischen Geschäftsgeheimnis. Unsere Information stammt aus der Zeit des Anfangs, als die Firma noch klein war.
Übungsaufgaben Aufgabe 5.1. Bestimmen Sie die Eigenwerte, Eigenvektoren und die Determinante einer Householder-Matrix vv T Q DI 2 T : v v Aufgabe 5.2. Geben Sie eine Formel (mit Hilfe von Determinanten) für einen Eigenvektor x 2 C n zu einem einfachen Eigenwert 2 C einer Matrix A 2 Matn .C/ an. Aufgabe 5.3. Zur Berechnung eines Eigenvektors j zu einem Eigenwert j einer gegebenen Matrix A benutzt man nach H. Wielandt die inverse Vektoriteration Azi O j zi D zi1 mit einer Näherung O j für den Eigenwert j . Leiten Sie aus der Beziehung r.ı/ WD Azi .O j C ı/zi D zi1 ızi eine Korrektur ı für die Näherung O j so her, dass kr.ı/k2 minimal ist.
166
5 Lineare Eigenwertprobleme
Aufgabe 5.4. Gegeben sei eine sogenannte Pfeilmatrix Z der Gestalt 3 2 A B 5; ZD4 T B D wobei A D AT 2 Matn .R/ symmetrisch, B 2 Matn;m und D eine Diagonalmatrix, D D diag.d1 ; : : : ; dm /, seien. Für m n empfiehlt es sich, die Besetzungsstruktur von Z auszunutzen. a) Zeigen Sie, dass Z I D LT ./.Y ./ I /L./ wobei
für ¤ di ; i D 1; : : : ; m;
3
2 In
0
5 L./ WD 4 .D Im /1 B T Im
2 und
3 M./ 0
Y ./ WD 4
0
5
D
und M./ WD A B.D Im /1 B T . b) Modifizieren Sie die in Aufgabe 5.3 behandelte Methode derart, dass im Wesentlichen nur auf .n; n/-Matrizen operiert wird. Aufgabe 5.5. Zeigen Sie die Eigenschaften der Singulärwertzerlegung aus Korollar 5.17. Aufgabe 5.6. Seien gegeben eine .m; n/-Matrix A, m n, und ein m-Vektor b. Für verschiedene Werte von p 0 sei das folgende lineare Gleichungssystem zu lösen (Levenberg-Marquardt-Verfahren, vgl. Kapitel 4.3): .AT A C pIn /x D AT b:
(5.19)
a) Zeigen Sie, dass für rang A < n und p > 0 die Matrix AT A C pIn invertierbar ist. b) A habe die Singulärwerte 1 2 n 0. Zeigen Sie: Falls n p 1 eps, so gilt: 2 .AT A C pIn /
1 eps
für p 0.
p Falls n < 1 eps, so existiert ein pN 0 derart, dass gilt: 2 .AT A C pIn / Geben Sie pN an.
1 eps
für p p. N
167
Übungsaufgaben
c) Entwickeln Sie einen effizienten Algorithmus zur Lösung von (5.19) unter Benutzung der Singulärwertzerlegung von A. Aufgabe 5.7. Bestimmen Sie die Eigenwerte i ."/ und die Eigenvektoren i ."/ der Matrix 2 3 1 C " cos.2="/ " sin.2="/ 5: A."/ WD 4 " sin.2="/ 1 " cos.2="/ Wie verhalten sich A."/; i ."/ und i ."/ für " ! 0? Aufgabe 5.8. Wir betrachten die in den Aufgaben 1.10 und 1.11 angegebene Matrix A zur Beschreibung eines „kosmischen Masers“. In welchem Zusammenhang mit einer stochastischen Matrix Astoch steht die dortige Matrix A? Überlegen Sie, welcher iterative Algorithmus zur Bestimmung aller Eigenwerte sich anstelle einer QR-Iteration in diesem Fall natürlicherweise anbietet. Aufgabe 5.9. Gegeben sei eine reversible primitive Matrix A mit Links-Eigenvektor p p > 0. Sei D D diag. 1 ; : : : ; n / eine diagonale Gewichtsmatrix und hx; yi D x T D 2 y ein dazu passendes inneres Produkt. Zeigen Sie: (a) A ist symmetrisch bezüglich dieses inneren Produktes. (b) Alle Eigenwerte von A sind reell und enthalten in dem Intervall Œ1; C1. (c) Es existiert eine -orthogonale Basis von Rechts-Eigenvektoren, die A diagonalisiert. (d) Zu jedem Rechts-Eigenvektor x gibt es einen Links-Eigenvektor y D D 2 x zum gleichen Eigenwert. Aufgabe 5.10. Wir konstruieren eine stochastische Matrix zu k D 3 fastentkoppelten Markov-Ketten. Dazu bestimmen wir zunächst eine symmetrische blockdiagonale Matrix D mit drei Blöcken sowie eine streng positive symmetrische Störungsmatrix E – beide Matrizen mit uniform verteilten zufälligen Einträgen (benutzen Sie einen Zufallsgenerator). Für 0 < < 1 definieren wir die symmetrische Matrix B D .1 /D C E: Normieren wir nun B D .bij / derart, dass n X
bij D 1;
i;j D1
so erhalten wir, wie gewünscht, eine reversible stochastische Matrix A D .aij / D .bij =i /
168
5 Lineare Eigenwertprobleme
mit stationärer Verteilung T D .1 ; : : : ; n / definiert durch i D
n X
bij :
j D1
Berechnen Sie alle Eigenwerte der Matrix A. Identifizieren Sie insbesondere den Perroncluster (5.16), die zugehörige Spektrallücke und die Teilmengen, zu denen die fastentkoppelten Markov-Ketten gehören. Experimentieren Sie etwas mit dem Zufallsgenerator. Aufgabe 5.11. Der Graph zur stochastischen Google-Matrix M , wie sie in Abschnitt 5.5.3 eingeführt wurde, enthält in der Regel eine Reihe unabhängiger Teilgraphen; in der Bezeichnung von Abschnitt 5.5.2 heißt dies: Der Graph ist reduzibel, siehe Definition 5.25. In diesem Fall besitzt die Matrix M einen k-fachen Perron-Eigenwert m D 1, m D 1; : : : ; k mit k 2. Somit existiert keine eindeutige stationäre Verteilung. Um trotzdem einen sinnvollen PageRank-Vektor x bestimmen zu können, benutzt man einen Trick. Man bildet eine konvexe Linearkombination aus der Matrix M und einer Matrix E D ve T , wobei e der Vektor P mit lauter Einsen und v eine beliebige Wahrscheinlichkeitsdichte (also vi 0; i vi D 1) ist, d.h. A D cM C .1 c/E;
0c1:
Anstelle der unbekannten, ohnehin nicht eindeutigen stationären Verteilung x benutzt man dann den rechten Eigenvektor von A als PageRank-Vektor. Eine typische Wahl für c ist 0:85. Im Folgenden soll in mehreren Teilschritten gezeigt werden, dass für k 2 der zweite Eigenwert von A gegeben ist durch 2 D c: Zu diesem Zweck soll zunächst gezeigt werden, dass für den allgemeineren Fall k 1 der zweite Eigenwert beschränkt ist durch j2 j c: (a) Zeigen Sie zunächst, dass die Behauptung j2 j c für die beiden Grenzfälle c D 0 und c D 1 gilt. (b) Der zweite Eigenwert von A erfüllt j2 j < 1. Beweisen Sie diese Aussage. (c) Zeigen Sie, dass der zweite Eigenvektor y2 von A orthogonal zu e ist. (d) Zeigen Sie, dass Ey2 D 0. (e) Beweisen Sie: Der zweite Eigenvektor y2 von A ist ein Eigenvektor x i von M zum Eigenwert i D 2 =c. (f) Was folgern Sie daraus für j2 j?
169
Übungsaufgaben
Wenden wir uns nun wieder dem Fall k 2 und der Aussage 2 D c zu. (g) Zeigen sie zunächst, dass die Behauptung 2 D c für die beiden Grenzfälle c D 0 und c D 1 gilt. (h) Sei x i ein Eigenvektor von M zum Eigenwert i , der orthogonal zu e ist. Zeigen Sie, dass dieser Vektor ein Eigenvektor von A zum Eigenwert i D ci ist. (i) Wegen k 2 gibt es zwei linear unabhängige Eigenvektoren x 1 und x 2 von M zum Eigenwert 1. Konstruieren Sie mit Hilfe dieser beiden Vektoren einen Eigenvektor yi von M , der orthogonal zu e ist. (j) Welche Schlussüberlegung ergibt sich damit für 2 ? (k) Welche Schlussfolgerung läßt sich aus den oben bewiesenen Aussagen über die Konvergenzgeschwindigkeit der Vektoriteration ziehen? Aufgabe 5.12. Im amerikanischen Sport wird das folgende Schema für Ausscheidungswettkämpfe realisiert: Mannschaften spielen für eine Spielzeit zahlreiche Spiele innerhalb einer „Conference“, was so etwas wie lokale Liga bedeutet. Dann treffen sie sich und spielen je ein Spiel mit allen Gegnern aus den anderen Conferences. Der Gewinner wird ermittelt, indem man die Punkte für gewonnene Spiele (intern wie extern) addiert. Allerdings, so argumentiert der Mathematiker Jim Keener, ist das nicht gerecht; denn es kommt doch darauf an, ob man gegen eine starke oder eine schwache Mannschaft gewinnt oder verliert. Wenn wir dieser Argumentationslinie folgen, dann führt dies, wie bei der Berechnung des PageRank-Vektors in Google, auf ein stochastisches Eigenwertproblem. Zum Test sei die folgende Situation angenommen: Die Mannschaften von zwei Conferences ¹E1 ; E2 ; E3 º und ¹E4 ; E5 ; E6 º haben je drei Spiele mit jeder Mannschaft innerhalb ihrer Conference gespielt, also insgesamt 18 Spiele. Anschließend spielen sie je ein Spiel mit jeder Mannschaft der anderen Conference, macht zusammen 21 Spiele. Die Gewinntabelle sehe aus wie folgt: E1
E2
E3
E4
E5
E6
E1
–
3/21
0/21
0/21
1/21
2/21
E2
3/21
–
2/21
2/21
2/21
1/21
E3
6/21
4/21
–
2/21
1/21
1/21
E4
3/21
1/21
1/21
–
2/21
2/21
E5
2/21
1/21
2/21
4/21
–
2/21
E6
1/21
2/21
2/21
4/21
4/21
–
170
5 Lineare Eigenwertprobleme
Bestimmen Sie zunächst die Rangfolge der Mannschaften ¹E1 ; : : : ; E6 º durch einfaches Addieren der Gewinnpunkte. Stellen Sie anschließend das zugehörige stochastische Eigenwertproblem auf und ermitteln Sie daraus die Rangfolge. Hinweis: Sie können die Vorgehensweise auch auf die Bundesliga übertragen – mit den jeweils neuesten Daten!
6 Drei-Term-Rekursionen
Bei vielen Problemen der Mathematik und Naturwissenschaften lässt sich eine Lösungsfunktion bezüglich sogenannter spezieller Funktionen entwickeln, die sich durch besondere, dem Problem angemessene Eigenschaften und gegebenenfalls durch ihre Konstruierbarkeit auszeichnen. Das Studium und der Gebrauch spezieller Funktionen ist ein alter Zweig der Mathematik, zu dem viele bedeutende Mathematiker beigetragen haben. Aufgrund neuer Erkenntnisse und erweiterter Rechenmöglichkeiten (z. B. durch symbolisches Rechnen) hat dieses Gebiet in letzter Zeit wieder einen Aufschwung genommen. Als Beispiele für klassische spezielle Funktionen seien an dieser Stelle bereits die Tschebyscheff-, Legendre-, Jacobi-, Laguerre- und HermitePolynome sowie die Bessel-Funktionen genannt. Wir werden in dem folgenden Kapitel manche dieser Polynome benutzen und die dort jeweils wichtigen Eigenschaften herleiten. Hier wollen wir uns mit dem Aspekt der Auswertung von Linearkombinationen f .x/ D
N X
˛k Pk .x/
(6.1)
kD0
spezieller Funktionen Pk .x/ beschäftigen, wobei wir die Koeffizienten ˛k als gegeben voraussetzen. Die Berechnung oder auch nur Approximation dieser Koeffizienten kann mit großen Schwierigkeiten verbunden sein. Wir werden uns damit in Kapitel 7.2 am Beispiel der diskreten Fourier-Transformation beschäftigen. Eine allen speziellen Funktionen gemeinsame Eigenschaft ist ihre Orthogonalität. Bisher haben wir von Orthogonalität nur in Zusammenhang mit einem Skalarprodukt auf einem endlich dimensionalen Vektorraum gesprochen. Viele uns von dort vertraute Strukturen lassen sich auf (unendlich dimensionale) Funktionenräume übertragen. Das Skalarprodukt ist dabei zumeist ein Integral. Zur Illustration betrachten wir das folgende Beispiel. Beispiel 6.1. Wir definieren ein Skalarprodukt Z f .x/g.x/ dx .f; g/ D
für Funktionen f; g W Œ; ! R. Man kann sich leicht davon überzeugen, dass die speziellen Funktionen P2k .x/ D cos kx und P2kC1 .x/ D sin kx für k D 0; 1; : : :
172
6 Drei-Term-Rekursionen
bezüglich dieses Skalarproduktes orthogonal sind, d. h., es gilt .Pk ; Pl / D ıkl .Pk ; Pk / für alle k; l D 0; 1; : : : : Durch das Skalarprodukt wird wie im endlich dimensionalen Fall eine Norm Z
12 p jf .x/j2 dx kf k D .f; f / D
induziert. Die Funktionen, für die diese Norm wohldefiniert und endlich ist, lassen sich durch die abgebrochene Fourier-Reihe fN .x/ D
2N X
˛k Pk .x/ D ˛0 C
kD0
N X
.˛2k cos kx C ˛2k1 sin kx/
kD1
bezüglich dieser Norm für wachsendes N beliebig gut approximieren. Dabei können wir die Funktionen cos kx und sin kx mit Hilfe der Drei-TermRekursion Tk .x/ D 2 cos x Tk1 .x/ Tk2 .x/
für k D 2; 3; : : :
(6.2)
wie in Beispiel 2.27 berechnen. Es ist kein Zufall, dass wir die trigonometrischen Funktionen cos kx und sin kx mit einer Drei-Term-Rekursion in k berechnen können, da die Existenz einer DreiTerm-Rekursion für spezielle Funktionen mit ihrer Orthogonalität zusammenhängt. Wir werden als erstes diesen Zusammenhang genau studieren und dabei insbesondere auf Orthogonalpolynome eingehen. Die theoretische Untersuchung von DreiTerm-Rekursionen als Differenzengleichungen steht im Mittelpunkt von Kapitel 6.1.2. Ein ausführliches numerisches Beispiel wird uns zeigen, dass die sich anbietende naive Übertragung der Drei-Term-Rekursion in einen Algorithmus unter Umständen nicht zu brauchbaren Ergebnissen führt. Wir werden deshalb in Kapitel 6.2.1 die Kondition von Drei-Term-Rekursionen analysieren und so zu einer Klassifizierung ihrer Lösungen gelangen. Dies wird es uns schließlich ermöglichen, stabile Algorithmen zur Berechnung von speziellen Funktionen und von Linearkombinationen der Form (6.1) anzugeben.
6.1
Theoretische Grundlagen
Drei-Term-Rekursionen, wie zum Beispiel die trigonometrische Rekursion (6.2), sind bei der Berechnung spezieller Funktionen von zentraler Bedeutung. Wir gehen im folgenden Abschnitt auf den allgemeinen Zusammenhang zwischen Orthogonalität und Drei-Term-Rekursionen ein. Daran anschließend beschäftigen wir uns mit der Theorie homogener und inhomogener Drei-Term-Rekursionen.
173
6.1 Theoretische Grundlagen
6.1.1
Orthogonalität und Drei-Term-Rekursionen
Als Verallgemeinerung des Skalarproduktes aus Beispiel 6.1 betrachten wir ein Skalarprodukt Z b .f; g/ WD !.t /f .t /g.t / dt (6.3) a
mit einer zusätzlichen positiven Gewichtsfunktion ! W a; bŒ ! R, !.t / > 0. Wir setzen voraus, dass die durch das Skalarprodukt induzierte Norm kP k D
p
.P; P / D
Z
b
!.t /P .t /2 dt
12
<1
a
für alle Polynome P 2 P k und alle k 2 N wohldefiniert und endlich ist. Insbesondere existieren unter dieser Voraussetzung die Momente Z
b
k WD
t k !.t / dt;
a
da aufgrund der Cauchy-Schwarzschen Ungleichung aus 1; t k 2 P k folgt, dass Z
b
jk j D
t k !.t / dt D .1; t k / k1kkt k k < 1:
a
Ist ¹Pk .t /º eine Folge paarweise orthogonaler Polynome Pk 2 P k exakt vom Grad k, d. h. mit nicht verschwindendem führendem Koeffizienten und Z b !.t /Pi .t /Pj .t / dt D ıij i ; wobei i WD kPi k2 > 0, .Pi ; Pj / D a
so heißen die Pk Orthogonalpolynome über Œa; b bezüglich der Gewichtsfunktion !.t /. Um die Orthogonalpolynome eindeutig zu definieren, müssen wir eine zusätzliche Normierungsbedingung fordern, z. B. indem wir verlangen, dass Pk .0/ D 1 oder der führende Koeffizient eins ist, d. h. Pk .t / D t k C : Die Existenz und Eindeutigkeit eines Systems von Orthogonalpolynomen bezüglich des Skalarproduktes (6.3) werden wir nun mit Hilfe einer Drei-Term-Rekursion beweisen. Satz 6.2. Zu jedem gewichteten Skalarprodukt .6:3/ gibt es eindeutig bestimmte Orthogonalpolynome Pk 2 P k mit führendem Koeffizienten eins. Sie genügen der DreiTerm-Rekursion Pk .t / D .t C ak /Pk1 .t / C bk Pk2 .t / für k D 1; 2; : : :
174
6 Drei-Term-Rekursionen
mit den Anfangswerten P1 WD 0, P0 WD 1 und den Koeffizienten ak D
.tPk1 ; Pk1 / ; .Pk1 ; Pk1 /
bk D
.Pk1 ; Pk1 / : .Pk2 ; Pk2 /
Beweis. Das einzige Polynom 0-ten Grades mit führendem Koeffizienten eins ist P0 1 2 P 0 . Seien nun P0 ; : : : ; Pk1 bereits konstruierte paarweise orthogonale Polynome Pj 2 Pj vom Grad j mit führendem Koeffizienten eins. Ist Pk 2 P k ein beliebiges ebenso normiertes Polynom vom Grad k, so ist dann Pk tPk1 ein Polynom vom Grad k 1. Andererseits bilden die P0 ; : : : ; Pk1 eine Orthogonalbasis von P k1 bzgl. des gewichteten Skalarproduktes .; /, so dass Pk tPk1 D
k1 X
cj Pj
mit cj D
j D0
.Pk tPk1 ; Pj / : .Pj ; Pj /
Soll Pk orthogonal zu P0 ; : : : ; Pk1 stehen, so gilt cj D
.Pk1 ; tPj / .tPk1 ; Pj / D : .Pj ; Pj / .Pj ; Pj /
Zwangsläufig folgt c0 D D ck3 D 0, ck1 D
.Pk1 ; Pk1 / .tPk1 ; Pk1 / .Pk1 ; tPk2 / ; ck2 D D : .Pk1 ; Pk1 / .Pk2 ; Pk2 / .Pk2 ; Pk2 /
Mit Pk D .t C ck1 /Pk1 C ck2 Pk2 D .t C ak /Pk1 C bk Pk2 erhalten wir so das nächste Orthogonalpolynom und induktiv die Behauptung.
Beispiel 6.3. Setzt man cos ˛ D x und betrachtet cos k˛ als Funktion in x, so gelangt man zu den Tschebyscheff-Polynomen Tk .x/ D cos.k arccos x/ für x 2 Œ1; 1. Aus der Drei-Term-Rekursion für cos kx folgt, dass es sich bei den Tk tatsächlich um Polynome handelt, die der Rekursion Tk .x/ D 2xTk1 .x/ Tk2 .x/
für k 2
mit den Startwerten T0 .x/ D 1 und T1 .x/ D x genügen. Dadurch können wir Tk .x/ sogar für alle x 2 R definieren. Durch die Variablensubstitution x D cos ˛, also dx D sin ˛d˛, sehen wir, dass die Tschebyscheff-Polynome geradepdie Orthogonalpolynome über Œ1; 1 bezüglich der Gewichtsfunktion !.x/ D 1= 1 x 2 sind, d. h. 8 ˆ falls n ¤ m, Z 1 <0; 1 Tn .x/Tm .x/ dx D ; p falls n D m D 0, ˆ 0 1 x2 : =2; falls n D m ¤ 0.
175
6.1 Theoretische Grundlagen
Die Tschebyscheff-Polynome sind von besonderer Bedeutung in der Approximationstheorie und werden uns in den nächsten Kapiteln noch mehrfach begegnen. Analysieren wir den Beweis von Satz 6.2 sorgfältig, so können wir den Zusammenhang zwischen Orthogonalität und Drei-Term-Rekursion noch allgemeiner verstehen. Diese Struktur wird uns beim Verfahren der konjugierten Gradienten in Kapitel 8.3 wieder begegnen. Satz 6.4. Sei V1 V2 X eine aufsteigende Kette von Unterräumen der Dimension dim Vk D k in einem Vektorraum X und A W X ! X eine selbstadjungierte lineare Abbildung bezüglich eines Skalarproduktes .; / auf X , d. h. .Au; v/ D .u; Av/
für alle u; v 2 X ;
so dass A.Vk / VkC1
und
A.Vk / 6 Vk :
Dann gibt es zu jedem p1 2 V1 genau eine Erweiterung zu einem Orthogonalsystem ¹pk º mit pk 2 Vk für alle k und .pk ; pk / D .Apk1 ; pk /
für alle k 2.
Die Familie ¹pk º genügt der Drei-Term-Rekursion pk D .A C ak /pk1 C bk pk2
für k D 2; 3; : : :
(6.4)
mit p0 WD 0 und ak WD
.Apk1 ; pk1 / ; .pk1 ; pk1 /
bk WD
.pk1 ; pk1 / : .pk2 ; pk2 /
Beweis. Vollkommen analog zu Satz 6.2. Der selbstadjungierte Operator A W X ! X war dort die Multiplikation mit t , t W P k ! P kC1 ;
P .t / 7! tP .t /:
Die Selbstadjungiertheit geht im Beweis von Satz 6.2 ein beim Übergang .tPk1 ; Pj / D .Pk1 ; tPj /: Eine bemerkenswerte Eigenschaft von Orthogonalpolynomen ist, dass sie nur reelle, einfache Nullstellen besitzen, die zudem noch alle im Intervall a; bŒ liegen. Satz 6.5. Das Orthogonalpolynom Pk .t / 2 P k hat genau k einfache Nullstellen in a; bŒ.
176
6 Drei-Term-Rekursionen
Beweis. Es seien t1 ; : : : ; tm die m verschiedenen Punkte ti 2 a; bŒ, an denen Pk sein Vorzeichen wechselt. Das Polynom Q.t / WD .t t1 /.t t2 / .t tm / wechselt dann an den gleichen Stellen sein Vorzeichen, so dass die Funktion !.t /Q.t /Pk .t / ihr Vorzeichen in a; bŒ nicht ändert und daher Z .Q; Pk / D
b
!.t /Q.t /Pk .t / dt ¤ 0: a
Da Pk senkrecht auf allen Polynomen P 2 P k1 steht, folgt deg Q D m k und damit die Behauptung.
6.1.2
Homogene und inhomogene Rekursionen
Gemäß ihrer im letzten Abschnitt deutlich gewordenen Bedeutung untersuchen wir nun reelle Drei-Term-Rekursionen der Form pk D ak pk1 C bk pk2 C ck
für k D 2; 3; : : :
(6.5)
für Werte pk 2 R mit Koeffizienten ak ; bk ; ck 2 R. Damit tatsächlich eine DreiTerm-Rekursion vorliegt, setzen wir voraus, dass bk ¤ 0 für alle k. Unter dieser Bedingung können wir die Rekursion auch rückwärts durchführen, d. h. pk2 D
1 ck ak pk1 C pk bk bk bk
für k D N; N 1; : : : ; 2:
(6.6)
Oft gilt wie bei der trigonometrischen oder der Bessel-Rekursion, dass bk D 1 für alle k, so dass die Drei-Term-Rekursion (6.6) aus der ursprünglichen durch Vertauschen von pk und pk2 hervorgeht. Eine solche Drei-Term-Rekursion nennen wir symmetrisch. Falls alle ck verschwinden, so sprechen wir von einer homogenen, im anderen Fall von einer inhomogenen Drei-Term-Rekursion. Alle unsere Beispiele waren bisher homogen und symmetrisch. Für jedes Paar pj ; pj C1 von Anfangswerten bestimmt die Drei-Term-Rekursion (6.5) genau eine Folge p D .p0 ; p1 ; : : : / 2 Abb.N; R/. Die Lösungen p D .pk / der homogenen Drei-Term-Rekursion pk D ak pk1 C bk pk2
für k D 2; 3; : : :
(6.7)
hängen linear von den Anfangswerten pj ; pj C1 ab und bilden daher einen zweidimensionalen Unterraum ˇ WD ¹p 2 Abb.N; R/ W pk D ak pk1 C bk pk2
für k D 2; 3; : : : º
177
6.1 Theoretische Grundlagen
von Abb.N; R/. Zwei Lösungen p; q 2 ˇ sind genau dann linear unabhängig, falls die sogenannten Casorati-Determinanten von p und q D.k; k C 1/ WD pk qkC1 qk pkC1 nicht verschwinden. Man rechnet leicht nach, dass D.k; k C 1/ D bkC1 D.k 1; k/; und dass daher wegen bk ¤ 0 entweder alle D.k; k C 1/ verschwinden oder keine. Insbesondere gilt für symmetrische Rekursionen, also bk D 1 für alle k, dass D.k; k C 1/ D D.0; 1/ für alle k. Beispiel 6.6. Die trigonometrische Rekursion pk D ak pk1 C bk pk2 ;
ak D 2 cos x;
bk D 1;
hat für x 62 Z die linear unabhängigen Lösungen cos kx und sin kx, da D.0; 1/ D cos 0 sin x sin 0 cos x D sin x ¤ 0: Falls x D l mit l 2 Z, wäre D.0; 1/ D 0, also cos kx und sin kx nicht linear unabhängig. Stattdessen sind pk D cos kx D .1/lk ;
qk D k.1/lk
zwei linear unabhängige Lösungen mit D.0; 1/ D 1. Es fällt auf, dass dieser Wert der Casorati-Determinante offenbar nicht durch den Grenzübergang x ! l entsteht – ein theoretischer Schwachpunkt. Im Folgenden werden wir eine andere charakterisierende Größe kennenlernen, welche die gewünschte Grenzwerteigenschaft hat (vgl. Aufgabe 6.8). Wir wollen nun versuchen, die Lösung der allgemeinen inhomogenen Rekursion (6.5) aus Lösungen möglichst einfacher inhomogener Rekursionen zusammenzusetzen. Dazu sehen wir uns an, wie sich eine einzelne Inhomogenität ck D ıj k an der Stelle j fortpflanzt. Definition 6.7. Es seien g C .j; k/ und g .j; k/ die Lösungen der inhomogenen DreiTerm-Rekursionen g .j; k/ ak g .j; k 1/ bk g .j; k 2/ D ıj k ; g C .j; k/ ak g C .j; k 1/ bk g C .j; k 2/ D bk ıj;k2 für j; k 2 N und k 2 zu den Anfangswerten g .j; j 2/ D g .j; j 1/ D 0
178
6 Drei-Term-Rekursionen
bzw. g C .j; j C 2/ D g C .j; j C 1/ D 0: Dann ist die diskrete Greensche Funktion g.j; k/ der Drei-Term-Rekursion (6.5) definiert durch ´ g .j; k/; falls k j , g.j; k/ WD g C .j; k/; falls k j . Man beachte dabei, dass g .j; j / D g C .j; j / D 1. Die Lösungen der inhomogenen Rekursion (6.5) zu den Startwerten p0 D c0 und p1 D c1 gewinnen wir nun durch Superposition gemäß k X
pk D
cj g.j; k/ D
j D0
k X
cj g .j; k/
für k D 0; 1; : : :
(6.8)
j D0
(Beweis zur Übung). Umgekehrt folgt für die Rückwärtsrekursion (6.6), dass pk D
N C1 X
cj g.j; k/ D
j Dk
N C1 X
cj g C .j; k/
für k D 0; : : : ; N C 1
j Dk
die Lösung zu den Startwerten pN D cN und pN C1 D cN C1 ist. 6
o
5
+ o
o
o o
4
o o
3
o o
2
o
1 0
o
+
0
1
2
3
4
5
6
7
8
9
10
Abbildung 6.1. Diskrete Greensche Funktion g.5; k/ über k D 0; : : : ; 10 für ak D 2 und bk D 1
Bemerkung 6.8. Lesern, die mit der Theorie gewöhnlicher Differentialgleichungen vertraut sind, wird die oben für Differenzengleichungen beschriebene Vorgehensweise bekannt vorkommen. In der Tat richtet sich die Namensgebung „diskrete Greensche Funktion“ nach der für Differentialgleichungen üblichen Terminologie. Ähnlich entsprechen die Casorati-Determinante der Wronski-Determinante und die speziellen, durch ıij definierten Anfangswerte der inhomogenen Differenzengleichung der ı-Distribution.
179
6.2 Numerische Aspekte
6.2
Numerische Aspekte
Die mathematische Struktur der Drei-Term-Rekursion legt eine direkte Übersetzung in einen Algorithmus nahe (einfache Schleife). Wir haben bereits in Beispiel 2.27 gesehen, dass diese Art der Berechnung von speziellen Funktionen mit Vorsicht zu genießen ist. Immerhin ließ sich dort die trigonometrische Drei-Term-Rekursion noch numerisch stabilisieren. Das folgende Beispiel zeigt, dass dies nicht immer möglich ist. Beispiel 6.9. Besselscher Irrgarten. Die sogenannten Bessel-Funktionen Jk D Jk .x/ genügen der Drei-Term-Rekursion JkC1 D
2k Jk Jk1 x
für k 1.
(6.9)
Wir starten z. B. für x D 2:13 mit den Werten J0 D 0:14960677044884; J1 D 0:56499698056413; die man einer Tabelle (z. B. [85]) entnehmen kann. Am Ende des Kapitels werden wir in der Lage sein, diese Werte zu bestätigen (siehe Aufgabe 6.7). Wir können nun versuchen, mit Hilfe der Drei-Term-Rekursion in Vorwärtsrichtung die Werte J2 ; : : : ; J23 auszurechnen. Zur „Überprüfung“ (s. u.) der Ergebnisse JO2 ; : : : ; JO23 lösen wir die Rekursion (6.9) nach Jk1 auf und setzen JO23 und JO22 in die Rekursion in Rückwärtsrichtung ein. Dabei erhalten wir JN21 ; : : : ; JN0 zurück und erwarten eigentlich, dass JN0 in etwa mit dem Startwert J0 übereinstimmt. Tatsächlich stellt sich bei einer relativen Maschinengenauigkeit von eps D 1016 heraus, dass JN0 =J0 109 : Ein Vergleich des dabei berechneten Wertes JO23 mit dem tatsächlichen J23 offenbart noch Schlimmeres, nämlich JO23 =J23 1027 ; d. h., das Ergebnis liegt um Größenordnungen daneben! In Abbildung 6.2 haben wir die Wiederholung dieser Prozedur, d. h. den erneuten Start mit JN0 usw., graphisch aufgetragen: Numerisch findet man nicht zum Ausgangspunkt zurück, was dem Phänomen den Namen Besselscher Irrgarten gegeben hat. Was ist passiert? Eine erste Analyse des Rundungsfehlerverhaltens zeigt, dass 2k Jk Jk1 x
für k > x
(vgl. Tabelle 6.1). Bei der Vorwärtsrekursion tritt also jedesmal bei der Berechnung
180
6 Drei-Term-Rekursionen P 60 40
20 0 20 0
5
10
15
20
k
Abbildung 6.2. Besselscher Irrgarten für x D 2:13, aufgetragen ist ln.jJOk .x/j/ über k für 5 Schleifen bis k D 23
von JkC1 Auslöschung auf (siehe Aufgabe 6.9). Zudem muss man wissen, dass neben den Bessel-Funktionen Jk auch die Neumann-Funktionen Yk derselben Rekursion genügen (Bessel- und Neumann-Funktionen heißen Zylinderfunktionen). Diese besitzen aber ein entgegengesetztes Wachstumsverhalten. Die Bessel-Funktionen fallen mit wachsendem k, während die Neumann-Funktionen stark anwachsen. Durch die Eingabefehler für J0 und J1 (in der Größenordnung der Maschinengenauigkeit), JQ0 D J0 C "0 Y0 ; JQ1 D J1 C "1 Y1 ; enthält die Eingabe JQ0 ; JQ1 stets einen Anteil der Neumann-Funktion Yk , der zunächst sehr klein ist, die Bessel-Funktion im Laufe der Rekursion jedoch zunehmend überwuchert. Umgekehrt überlagern in Rückwärtsrichtung die Bessel-Funktionen die Neumann-Funktionen. Im folgenden Abschnitt wollen wir versuchen, die beobachteten numerischen Phänomene zu verstehen.
6.2.1
Kondition
Wir betrachten die Drei-Term-Rekursion (6.5) als Abbildung, die den Anfangswerten p0 ; p1 und den Koeffizienten ak ; bk als Eingabegrößen die Werte p2 ; p3 ; : : : als Resultate zuordnet. Da in jedem Schritt nur jeweils zwei Multiplikationen und eine Addition durchgeführt werden müssen, deren Stabilität wir in Lemma 2.19 nachgewiesen haben, ist die Ausführung der Drei-Term-Rekursion in Gleitkommaarithmetik stabil. Über die numerische Brauchbarkeit entscheidet also nur die Kondition der Drei-Term-Rekursion. Zu deren Analyse geben wir gestörte Anfangswerte pQ0 D p0 .1 C 0 /;
pQ1 D p1 .1 C 1 /
181
6.2 Numerische Aspekte
k
Jk1
2k x Jk
1 2 3 4 5 6 7 8 9 10
1:496 101 5:649 101 3:809 101 1:503 101 4:253 102 9:425 103 1:720 103 2:672 104 3:615 105 4:333 106
5:305 101 7:153 101 4:234 101 1:597 101 4:425 102 9:693 103 1:756 103 2:716 104 3:662 105 4:379 106
Tabelle 6.1. Auslöschung in der Drei-Term-Rekursion für die Bessel-Funktionen Jk D Jk .x/, x D 2:13
und gestörte Koeffizienten aQ k D ak .1 C ˛k /;
bQk D bk .1 C ˇk / für k 2
mit durch ı > 0 beschränkten relativen Fehlern j 0 j; j 1 j;
j˛k j;
jˇk j ı
vor und berechnen den Fehler pk WD pQk pk ; wobei pQ die Lösung der gestörten Drei-Term-Rekursion ist. Setzen wir die Rekursion für p und pQ ein, so zeigt sich, dass p der inhomogenen Rekursion pk D ak pk1 C bk pk2 C Ek
für k 2
mit den Anfangswerten p0 D E0 WD 0 p0 ; p1 D E1 WD 1 p1 und den Koeffizienten : Ek D ˛k ak pQk1 C ˇk bk pQk2 D ˛k ak pk1 C ˇk bk pk2 genügt. Setzen wir wie in (6.8) die Greensche Funktion ein, so gilt pk D
k X j D0
Ej g.j; k/:
für ı ! 0
182
6 Drei-Term-Rekursionen
Die Greensche Funktion charakterisiert also die absolute Kondition der Drei-TermRekursion. Analog folgt, dass der relative Fehler
k WD
pk pQk pk D ; pk pk
pk ¤ 0;
die Lösung der inhomogenen Rekursion
k D
ak pk1 bk pk2
k1 C
k2 C "k pk pk
für l 2
zu den Anfangswerten "0 WD 0 , "1 WD 1 mit "k WD
ak pk1 bk pk2 Ek : C ˇk D ˛k pk pk pk
ist und dass daher
k D
k X
mit r.j; k/ WD
"j r.j; k/
j D0
pj g.j; k/ pk
(6.10)
gilt. Die Funktionen r.j; k/ beschreiben offensichtlich die Verstärkung der relativen Fehler und kennzeichnen somit die relative Kondition der Drei-Term-Rekursion. Zur Beurteilung von r.j; k/ in den verschiedenen Beispielen unterscheiden wir, motiviert durch die Bessel- und Neumann-Funktionen, zwei Typen von Lösungen. Definition 6.10. Eine Lösung p 2 ˇ heißt rezessiv oder Minimallösung, falls für jede von p linear unabhängige Lösung q 2 ˇ gilt pk D 0: k!1 qk lim
Die von p linear unabhängigen Lösungen q heißen dominant. Es ist klar, dass die Minimallösung nur bis auf einen skalaren Faktor eindeutig bestimmt ist. Der noch freie Faktor wird in vielen Fällen durch eine Normierungsbedingung 1 X mk pk D 1 (6.11) G1 WD kD0
mit den Gewichten mk festgelegt. Umgekehrt sind solche Relationen im Allgemeinen ein Hinweis darauf, dass die zugehörigen Lösungen pk Minimallösungen sind. Die Minimallösungen bilden also, falls es sie überhaupt gibt, einen eindimensionalen Unterraum von ˇ. Die Existenz kann unter gewissen Voraussetzungen an die Koeffizienten ak und bk garantiert werden.
183
6.2 Numerische Aspekte
Satz 6.11. Falls die Drei-Term-Rekursion symmetrisch ist, d. h. bk D 1 für alle k, und es ein k0 2 N gibt, so dass jak j 2
für alle k > k0 ,
dann gibt es eine Minimallösung p mit den Eigenschaften jpk j
1 jpk1 j jakC1 j 1
und
pkC1 .x/ ¤ 0
(6.12)
für alle k > k0 . Ferner gibt es für jede dominante Lösung q einen Index k1 k0 , so dass jqkC1 j > .jakC1 j 1/jqk j für k > k1 . Beweis. Der Beweis greift auf eine sogenannte Kettenbruchentwicklung zurück und kann bei J. Meixner und W. Schäffke [68] nachgelesen werden. Beispiel 6.12. Für die Drei-Term-Rekursion der trigonometrischen Funktionen cos kx, sin kx gilt bk D 1 und jak j D 2j cos xj 2 ” x D l
mit l 2 Z.
Im Fall x D l 2 Z ist pk D .1/lk eine Minimallösung, und die Folgen qk D ˇk.1/lk C ˛pk
mit ˇ ¤ 0
sind dominante Lösungen. Beispiel 6.13. Für die Rekursion der Zylinderfunktionen gilt bk D 1 und jak j D 2
k1 2 ” k > k0 WD Œjxj: jxj
Die Minimallösung ist die Bessel-Funktion Jk , die Neumann-Funktion Yk ist dagegen dominant. Dies lässt sich mit Hilfe der asymptotischen Näherungen für Jk bzw. Yk für k ! 1 beweisen, denn r 2 ex k 1 ex k ; Yk .x/ : Jk .x/ p k 2k 2k 2k Die Bessel-Funktionen Jk .x/ genügen der Normierungsbedingung (siehe z. B. [2]) G1 WD J0 C 2
1 X kD1
J2k D 1:
184
6 Drei-Term-Rekursionen
Unter den Voraussetzungen von Satz 6.11 lässt sich zeigen, dass jg.j; k/j jk j C 1j für alle k j > k0 , d. h., die diskreten Greenschen Funktionen g.j; k/ sind selbst dominante Lösungen und wachsen über jede Schranke. Andererseits gilt für eine Minimallösung p wegen (6.12), dass jpj =pk j 1 und daher ˇp ˇ ˇ j ˇ jr.j; k/j D ˇ g.j; k/ˇ jg.j; k/j jk j C 1j pk für alle k j > k0 . Von dem Index k0 an ist die Drei-Term-Rekursion zur Berechnung einer Minimallösung also schlechtkonditioniert. Für dominante Lösungen kann das Wachstum der diskreten Greenschen Funktionen durch das der Lösung selbst ausgeglichen werden, so dass die relative Fehlerverstärkung, ausgedrückt durch r.j; k/, moderat bleibt und die Drei-Term-Rekursion gutkonditioniert ist. So ist die DreiTerm-Rekursion (in Vorwärtsrichtung) für die Bessel-Funktionen als Minimallösung schlecht, für die Neumann-Funktionen jedoch gutkonditioniert. Beispiel 6.14. Kugelfunktionen. Als Frucht der vorgeführten Überlegungen geben wir nun ein komplizierteres Beispiel, das jedoch in vielen Anwendungen, etwa in der theoretischen Physik oder der Geodäsie, eine wichtige Rolle spielt. Zu berechnen sind im Allgemeinen sowohl Entwicklungen nach Kugelfunktionen als auch ganze Sätze einzelner Kugelfunktionen. Sie werden üblicherweise mit Ykl . ; '/ bezeichnet, wobei die sogenannten Eulerschen Winkel ; ' auf der Kugeloberfläche variieren gemäß 0
und
0 ' 2:
Unter den zahlreichen Darstellungen für Kugelfunktionen wählen wir die komplexe Darstellung Ykl . ; '/ D e il' Pkl .cos / D Ckl . ; '/ C iSkl . ; '/; wobei durch Pkl .x/ die sogenannten zugeordneten Legendre-Funktionen 1. Art für jxj 1 bezeichnet sind. Sie lassen sich wie folgt explizit angeben: Pkl .x/ WD
kCl .1/kCl 2 2l d .1 x / .1 x 2 /k : .k C l/Š kŠ 2k dx kCl
(6.13)
Unter der Vielzahl der in der Literatur vorkommenden Normierungen dieser Funktionen ist hier diejenige nach [40] ausgewählt. Wegen der Beziehungen Pkl .x/ 0 und
für l > k 0 und l < k 0
Pkl .x/ D .1/l Pkl .x/ für l > 0
(6.14)
185
6.2 Numerische Aspekte
genügt es, die reellen Kugelfunktionen Ckl . ; '/ D Pkl .cos / cos.l'/
für 0 l k;
Skl . ; '/ D Pkl .cos / sin.l'/
für 0 < l k
zu berechnen. Die Drei-Term-Rekursion für die trigonometrischen Funktionen haben wir an anderer Stelle bereits hinlänglich diskutiert. Wir richten deshalb hier unser Augenmerk auf die Legendre-Funktionen zum Argument x D cos . Sämtliche für diese zweifach indizierten Legendre-Funktionen erster Art geltenden Drei-TermRekursionen (siehe z. B. [46]) gelten auch für die Legendre-Funktionen zweiter Art, welche im Unterschied zu denen erster Art bei x D 1 und x D 1 Singularitäten der Ordnung l haben. Diese Eigenschaft überträgt sich unmittelbar auf die zugehörigen diskreten Greenschen Funktionen (vgl. Aufgabe 6.8). Also wären Rekursionen mit variablem l für die Pkl schlechtkonditioniert. Als Konsequenz suchen wir aus der Vielzahl der Drei-Term-Rekursionen diejenigen mit konstantem l heraus. Dies führt auf die Rekursion l l Pk2 .2k 1/xPk1 ; (6.15) Pkl D .k l/.k C l/ bei der nur noch k läuft. Sie ist für die Pkl in Vorwärtsrichtung bzgl. k gutkonditioniert (siehe etwa die überblickhafte Arbeit von W. Gautschi [40]). Es fehlt noch eine gutkonditionierte Vernetzung für unterschiedliche l. Aus der Definition (6.13) erhalten wir für k D l die Darstellung l .1/l .1 x 2 / 2 ; l 2 lŠ woraus sich sofort die Zwei-Term-Rekursion
Pll .x/ D
1
Pll D
.1 x 2 / 2 l1 Pl1 2l
(6.16)
ergibt, die als solche gutkonditioniert ist. Zum Start der Rekursionen benutzt man für (6.16) den Wert P00 D 1 und für (6.15) die Rekursion für k D l C 1, die wegen l 0 nach (6.14) ebenfalls in eine Zwei-Term-Rekursion entartet: Pl1 l PlC1 D xPll :
(6.17)
Ersetzt man das Argument x durch cos , so rechnen wir nach den Resultaten von Kapitel 2.3 damit, dass der zugehörige Algorithmus numerisch instabil ist. Wie bei der Stabilisierung der trigonometrischen Rekursion, versuchen wir auch hier wieder für ! 0 das Argument cos durch 1 cos D 2 sin2 . =2/ zu ersetzen. Leider ist die Stabilisierung nicht so einfach wie bei den trigonometrischen Funktionen. Deshalb machen wir den folgenden Ansatz: Pkl D qkl PNkl
und
l PNkl D rkl PNk1 C Pkl
186
6 Drei-Term-Rekursionen
mit noch geeignet zu wählenden Transformationen qkl und rkl . Man beachte, dass die relativen Konditionszahlen in (6.10) für Pkl und PNkl die gleichen sind, unabhängig von l in (6.15) liefert dann der Wahl der Transformationen qkl . Einsetzen von Pkl und Pk2 l C qkl Pkl D k . /PNk1
l qk2 l .k l/.k C l/rk1
l Pk1 ;
wobei k . / WD
l qk2 .2k 1/ cos l qk1 qkl rkl : l .k l/.k C l/ .k l/.k C l/ rk1
Um .1 cos / in k . / ausklammern zu können, muss offensichtlich D 0 eine Nullstelle von k sein, d. h. k .0/ D 0. Wegen (6.17) verlangen wir zusätzlich l l rlC1 D 1. Diese beiden Forderungen an die Transformationen qkl und rkl werden qlC1 von der Wahl 1 qkl D l D k l C 1 rk erfüllt. Mit dieser Transformation erhält man ausgehend von P00 D PN00 D 1 die folgende numerisch stabile Rekursionsdarstellung: Algorithmus 6.15. Berechnung der Kugelfunktionen Pkl .cos / für l D 0; : : : ; L und k D l C 1; : : : ; K. P00 WD PN00 WD 1; for l WD 0 to L do sin P l; 2.l C 1/ l WD sin2 . =2/Pll ;
lC1 lC1 PlC1 WD PNlC1 WD
Pll
for k WD l C 1 to K do l l 2.2k 1/ sin2 . =2/PNk1 .k l 1/Pk1 Pkl WD ; .k C l/.k l C 1/ 1 PNkl WD PN l C Pkl ; .k l C 1/ k1 Pkl WD .k l C 1/PNkl ; end for end for Bemerkung 6.16. Offensichtlich benötigt man zur erfolgreichen Berechnung von Orthogonalpolynomen eine Art „Konditionslexikon“ für möglichst viele Orthogonalpolynome. Ein erster Schritt in diese Richtung ist die Arbeit [40]. In vielen Fällen ist
187
6.2 Numerische Aspekte
die numerisch notwendige Information jedoch eher versteckt als publiziert. Darüber hinaus werden in der Literatur häufig die Begriffe Stabilität und Kondition nicht ausreichend sauber getrennt.
6.2.2
Idee des Miller-Algorithmus
Ist also die Drei-Term-Rekursion zur Berechnung einer Minimallösung aufgrund der obigen Fehleranalyse generell zu verwerfen? Dies ist nicht der Fall, wie wir hier zeigen wollen. Die auf J. C. P. Miller [71] zurückgehende Rettung beruht auf zwei Ideen. Die erste besteht darin, die Drei-Term-Rekursion in Rückwärtsrichtung mit den Anfangswerten pn ; pnC1 auf ihre Kondition hin zu untersuchen. Überträgt man die obigen Überlegungen auf diesen Fall (siehe Aufgabe 6.5), so zeigt sich, dass die DreiTerm-Rekursion für eine Minimallösung in Rückwärtsrichtung gutkonditioniert ist. Die zweite Idee besteht in der Ausnutzung der Normierungsbedingung (6.11). Da die Minimallösungen pk .x/ für k ! 1 betragsmäßig beliebig klein werden, lässt sich G1 durch die endlichen Teilsummen Gn WD
n X
mk pk
kD0
approximieren. Berechnet man nun eine beliebige Lösung pOk der Drei-Term-Rekursion in Rückwärtsrichtung, z. B. mit den Startwerten pOnC1 D 0 und pOn D 1, und normiert diese mit Hilfe von Gn , so erhält man für wachsendes n immer bessere Approximationen der Minimallösung. Diese Überlegungen motivieren den folgenden Algorithmus zur Berechnung von pN auf eine relative Genauigkeit ". Algorithmus 6.17. Algorithmus von Miller zur Berechnung einer Minimallösung pN . 1. Wähle einen Abbrechindex n > N und setze .n/
pOn.n/ WD 1:
pOnC1 WD 0; .n/
.n/
2. Berechne pOn1 ; : : : ; pO0 aus .n/
pOk2 D
1 .n/ .n/ .pO ak pOk1 / bk k
3. Berechne GO n WD
n X
für k D n C 1; : : : ; 2.
mk pOk :
kD0
4. Normiere gemäß pk WD pOk =GO n : .n/
.n/
188
6 Drei-Term-Rekursionen
5. Wiederhole die Schritte 1. bis 4. für wachsende n D n1 ; n2 ; : : : und teste dabei .n / .n / die Genauigkeit durch den Vergleich von pN i und pN i1 . Ist .n /
.n
/
.n /
jpN i pN i1 j "pN i ; .n /
so ist pN i eine hinreichend genaue Approximation von pN . Dass dieser Algorithmus in der Tat konvergiert, zeigt der folgende Satz. Satz 6.18. Sei p 2 ˇ eine Minimallösung einer homogenen Drei-Term-Rekursion, die der Normierungsbedingung 1 X mk pk D 1 kD0
genüge. Zusätzlich gebe es eine dominante Lösung q 2 ˇ, so dass n pnC1 X mk qk D 0: n!1 qnC1
lim
kD0
.n/
Dann konvergiert die Folge der Miller-Approximationen pN gegen pN , .n/
lim pN D pN :
n!1 .n/
.n/
Beweis. Die Lösung pOk der Drei-Term-Rekursion zu den Startwerten pOn WD 1 und .n/
pOnC1 WD 0 lässt sich als eine Linearkombination von pk und qk darstellen, da .n/
pOk D
pk qnC1 qk pnC1 qnC1 pnC1 D pk qk : pn qnC1 qn pnC1 pn qnC1 qn pnC1 pn qnC1 qn pnC1
Daraus folgt GO n WD
n X
.n/ mk pOk
kD0
n n X
qnC1 pnC1 X D mk pk mk qk : pn qnC1 qn pnC1 qnC1 kD0
kD0
.n/ .n/ Für die Miller-Approximationen pN D pON =GO n ergibt sich daher .n/ pN
D pN
n n
X
pnC1 pnC1 X qN mk pk mk qk ! pN qnC1 qnC1 kD0 kD0 „ƒ‚… „ ƒ‚ … „ ƒ‚ … !0 !1
für n ! 1.
!0
Dieser von Miller im Jahre 1952 entwickelte Algorithmus ist heute veraltet, da er zu viel Speicher- und Rechenaufwand benötigt. Die Idee geht jedoch ein in einen effektiveren Algorithmus, den wir im nächsten Kapitel darstellen werden.
189
6.3 Adjungierte Summation
6.3
Adjungierte Summation
Wir wenden uns nun wieder der ursprünglichen Aufgabe, nämlich der Auswertung von Linearkombinationen der Form f .x/ D SN D
N X
˛k pk
(6.18)
kD0
zu, wobei pk WD pk .x/ einer homogenen Drei-Term-Rekursion (6.7) mit den Startwerten p0 ; p1 genüge und die Koeffizienten ˛k gegeben seien. Die folgende Darstellung orientiert sich im Wesentlichen an den Arbeiten [17] und [18]. Zur Veranschaulichung beginnen wir mit einer Zwei-Term-Rekursion. Beispiel 6.19. Die Auswertung eines Polynoms SN WD p.x/ D ˛0 C ˛1 x C C ˛N x N lässt sich auffassen als Berechnung einer Linearkombination (6.18), wobei pk WD x k der Zwei-Term-Rekursion p0 WD 1; pk WD xpk1
für k 1
genügt. Diese Summe lässt sich auf zwei verschiedene Arten berechnen. Der direkte Weg ist die Vorwärtsrekursion pk WD xpk1
und
Sk WD Sk1 C ˛k pk
(6.19)
für k D 1; : : : ; N mit den Startwerten S0 WD ˛0 und p0 WD 1. Sie entspricht der naiven Auswertung eines Polynoms. Man kann aber auch geschickt ausklammern SN D ˛0 C x.˛1 C x.: : : .˛N 1 C x ˛N / : : : // „ƒ‚… uN „ ƒ‚ … uN 1 und die Summe durch die Rückwärtsrekursion uN C1 WD 0; uk WD xukC1 C ˛k
für k D N; N 1; : : : ; 0;
(6.20)
SN WD u0 berechnen. Dies ist gerade der sogenannte Horner-Algorithmus. Gegenüber dem ersten Algorithmus spart (6.20) N Multiplikationen und ist daher in etwa doppelt so schnell.
190
6.3.1
6 Drei-Term-Rekursionen
Summation von dominanten Lösungen
Ein naheliegender Weg zur Berechnung der Summe (6.18) besteht darin, in jedem Schritt mit Hilfe der Drei-Term-Rekursion pk D ak pk1 C bk pk2
(6.21)
die Werte pk zu berechnen und mit den Koeffizienten ˛k multipliziert aufzuaddieren. Der resultierende Algorithmus entspricht der Vorwärtsrekursion (6.19): pk WD ak pk1 C bk pk2
und
Sk WD Sk1 C ˛k pk
für k D 2; : : : ; N
mit dem Startwert S1 WD ˛0 p0 C ˛1 p1 . Wir fragen uns natürlich, ob sich die Vorgehensweise bei der Herleitung des Horner-Algorithmus auf den vorliegenden Fall übertragen lässt. Um eine Analogie zum „Ausklammern“ zu konstruieren, erweitern wir die Drei-Term-Rekursion (6.7) um die zwei trivialen Gleichungen p0 D p0 und p1 D p1 . Zur Berechnung der Werte p D .p0 ; : : : ; pN / erhalten wir somit das gestaffelte Gleichungssystem 2 30 1 0 1 p0 C 1 p0 6 B C 7B B 6 B 7 B :: C C 1 6 B p1 C 7B : C 6 B 7B C C 6 B C 7 B :: C D 6 b2 a2 1 B 7B : C C 0 6 B C 7B C C 6 B 7 : :: C B : C :: :: :: 6 7B : : : : C B 4 5@ : C A @ A bN aN 1 0 pN „ ƒ‚ … „ ƒ‚ … „ƒ‚… DW r DW p DW L mit einer unipotenten unteren Dreiecksmatrix L 2 MatN C1 .R/ und der trivialen rechten Seite r. Die Linearkombination SN ist gerade das (Euklidische) Skalarprodukt SN D
N X
˛k pk D h˛; pi mit Lp D r
kD0
von p und ˛ D .˛0 ; : : : ; ˛N /T . Daher gilt SN D h˛; L1 ri D hLT ˛; ri:
(6.22)
Bezeichnen wir mit u die Lösung des (adjungierten) gestaffelten Gleichungssystems LT u D ˛, d. h. u WD LT ˛, so folgt SN D hu; ri D u0 p0 C u1 p1 :
191
6.3 Adjungierte Summation
Explizit ist u die Lösung von 2 30 1 0 1 1 b 2 6 7 B u0 C B ˛0 C 6 7B : C B : C : :: 6 7 B :: C B :: C 1 a2 6 7B C B C 6 7B : C B : C :: 6 7 B :: C D B :: C : : 1 b N 6 7B C B C 6 7B : C B : C :: B C B C 6 : aN 7 6 7 B :: C B :: C 4 5@ A @ A 1 uN ˛N Lösen wir dieses gestaffelte Gleichungssystem auf, so erhalten wir das gewünschte Analogon von Algorithmus (6.20): uk WD akC1 ukC1 C bkC2 ukC2 C ˛k
für k D N; N 1; : : : ; 1;
u0 WD b2 u2 C ˛0 ;
(6.23)
SN WD u0 p0 C u1 p1 ; wobei wir uN C1 D uN C2 WD 0 gesetzt haben. Die durch LT u D 0 definierte homogene Drei-Term-Rekursion heißt die zu (6.21) adjungierte Rekursion. Aufgrund der P Beziehung (6.22) nennen wir (6.23) analog die adjungierte Summation für SN D N kD0 ˛k pk . Gegenüber dem ersten Algorithmus sparen wir dabei wiederum N Multiplikationen. Beispiel 6.20. Die adjungierte Summation angewandt auf die Fourier-Summen SN WD
N X
˛k sin kx
bzw. CN WD
kD1
N X
˛k cos kx
kD0
mit der trigonometrischen Drei-Term-Rekursion pk D 2 cos x pk1 pk2 für sk D sin kx und ck D cos kx und den Startwerten s0 D 0; s1 D sin x
bzw.
c0 D 1; c1 D cos x
führt zu der Rekursion uN C2 D uN C1 D 0;
(6.24)
uk D 2 cos x ukC1 ukC2 C ˛k
für k D N; : : : ; 1
und den Ergebnissen SN D u1 sin x
bzw.
CN D ˛0 C u1 cos x u2 :
192
6 Drei-Term-Rekursionen
Dieser Algorithmus von G. Goertzel [46] aus dem Jahre 1958 ist wie die zugrunde liegende Drei-Term-Rekursion (als Algorithmus für die Abbildung x 7! cos kx, vgl. Beispiel 2.27) instabil für x ! l, l 2 Z. Durch Einführung der Differenzen uk D uk ukC1 für cos x 0 und Übergang zu einem System von zwei Zwei-Term-Rekursionen lässt sich die Rekursion (6.24) jedoch stabilisieren, und wir erhalten wie in Beispiel 2.27 die folgende stabile Form der Rekursion für k D N , N 1; : : : ; 1, den Algorithmus von Goertzel und Reinsch: uk D 4 sin2 .x=2/ ukC1 C ukC1 C ˛k ; uk D ukC1 C uk mit den Startwerten uN C1 D uN C1 D 0. Für die Summen erhalten wir SN D u1 sin x
und
CN D ˛0 2 sin2 .x=2/u1 C u1 :
Wie bei der Fehleranalyse der Drei-Term-Rekursion ist die Ausführung der Additionen und Multiplikationen der adjungierten Summation stabil; die dabei entstehenden Fehler lassen sich als Modifikation der Eingabefehler in den Koeffizienten ak , bk und ˛k interpretieren. Über die numerische Brauchbarkeit entscheidet also lediglich die Kondition, die jedoch unabhängig von der algorithmischen Realisierung ist. Daher gilt: Falls die ursprüngliche Rekursion aus (6.21) in Vorwärtsrichtung gutkonditioniert ist, so gilt dies auch für die adjungierte Drei-Term-Rekursion (6.23), die ja in Rückwärtsrichtung läuft. Der Algorithmus (6.23) ist demnach nur zur Summation dominanter Lösungen geeignet. Beispiel 6.21. Adjungierte Summation von Kugelfunktionen. Zur Illustration betrachten wir noch die Auswertung von Entwicklungen der Form C.K; LI ; '/ WD S.K; LI ; '/ WD
L X
cos.l'/
K X
lD0
kDl
L X
K X
lD1
sin.l'/
Alk Pkl .cos /; Alk Pkl .cos /;
kDl
wobei Pkl .x/ die in Beispiel 6.14 eingeführten Legendre-Funktionen 1. Art sind. Negative Indices l werden hier wegen Pkl D .1/l Pkl weggelassen. Ein Satz gutkonditionierter Rekursionen wurde bereits in Beispiel 6.14 angegeben. Die Anwendung ähnlicher Stabilisierungstechniken, wie wir sie dort vorgeführt haben, liefert auch hier eine sparsame, numerisch stabile Version. Nach einigen Zwischenrechnungen erhält man für cos 0 und cos ' 0 den folgenden Algorithmus: Algorithmus 6.22. Algorithmus zur Berechnung der Summen C.K; LI ; '/ und S.K; LI ; '/.
193
6.3 Adjungierte Summation
V WD 0; V WD 0; for l WD L to 1 step 1 do U WD 0; U WD 0; for k WD K to l C 1 step 1 do U WD .Alk 2.2k C 1/ sin2 . =2/ U C U /=.k l/; WD .U C U /=.k C l/;
U end for
Ul WD All 2.2l C 1/ sin2 . =2/ U C U ; if l > 0 then sin 4 sin2 .'=2/V C V ; 2.l C 1/ sin WD V C V ; 2.l C 1/
V WD Ul V end end for
C.K; LI ; '/ WD U0
sin 2 sin2 .'=2/V C V ; 2
1 S.K; LI ; '/ WD sin sin ' V ; 2
6.3.2
Summation von Minimallösungen
Der in Kapitel 6.3.1 beschriebene Algorithmus eignet sich nur für dominante Lösungen von Drei-Term-Rekursionen, für die also die Drei-Term-Rekursion in Vorwärtsschritten gutkonditioniert ist. Für die Summation von Minimallösungen wie z. B. der Bessel-Funktionen, greifen wir auf die Idee des Miller-Algorithmus zurück. Wir gehen wieder davon aus, dass die zu berechnende Minimallösung p 2 ˇ der Normierungsbedingung (6.11) genüge. Dann lässt sich aus dem Miller-Algorithmus 6.17 prinzipiell ein Verfahren zur Berechnung der Approximationen .n/
SN D
N X
˛k pOk =GO n.n/ .n/
mit GO n WD .n/
Pn
.n/ kD0 mk pOk
kD0
der Summe SN ableiten. Unter den Voraussetzungen von Satz 6.18 gilt dann .n/
lim SN D SN :
n!1
194
6 Drei-Term-Rekursionen .n/
Allerdings wäre der Aufwand zur Berechnung der SN recht groß, da für jedes neue n sämtliche Werte neu berechnet werden müssen. Lässt sich das durch Verwendung einer Art adjungierter Summation vermeiden? Zur Beantwortung dieser Frage gehen wir wie bei der Herleitung des vorigen Abschnittes vor und beschreiben für gegebenes n > N einen Schritt des Algorithmus von Miller durch ein lineares Gleichungssystem Mn p .n/ D r .n/ : 0 1 2 3 0 .n/ 1 p0 C b2 a2 1 B0C 6 7B C B:C : 6 7B :: :: :: :: C B :: C : : : 6 7B C B B C 6 7B C B:C 6 7 B :: C :C 6 7B : C D B b a 1 n n B:C : 6 7B B C 6 7 B :: C C B C 6 bnC1 anC1 7 : C B0C 4 5B A @ @ A .n/ m0 : : : : : : : : : mn 1 pn „ ƒ‚ … „ ƒ‚ … „ƒ‚… DW Mn 2 MatnC1 .R/ DW r .n/ DW p .n/ .n/
Mit ˛ .n/ WD .˛0 ; : : : ; ˛N ; 0; : : : ; 0/T 2 RnC1 lässt sich die Summe SN wiederum als Skalarprodukt .n/
SN D
N X
.n/
˛k pk D h˛ .n/ ; p .n/ i mit Mn p .n/ D r .n/
kD0 .n/ schreiben. Setzen wir voraus, dass Mn invertierbar ist (sonst ist GO n D 0 und die Normierung nicht durchführbar), so folgt
SN D h˛ .n/ ; Mn1 r .n/ i D hMnT ˛ .n/ ; r .n/ i: .n/
(6.25)
Setzen wir u.n/ WD MnT ˛ .n/ , so gilt daher .n/
SN D hu.n/ ; r .n/ i D u.n/ n ; wobei u.n/ die Lösung des Gleichungssystems MnT u.n/ D ˛ .n/ ist. Explizit lautet es: 1 1 0 30 2 .n/ .n/ ˛ u b m 07 B 0 C B 0 C 6 2 7B : C B : C 6 : : : : : B C B : C 6 a2 : : 7 7B : C B : C 6 B : C B : C 6 :: 7 B : C B : C 61 : : : b : 7 n 7B : C D B : C: 6 C C B 7 6 : B :: B : C B : C 6 : an bnC1 :: 7 7 B :: C B :: C 6 A A @ 5@ 4 .n/ .n/ 1 anC1 mn ˛n un
195
6.3 Adjungierte Summation
Dieses Gleichungssystem lösen wir mit der Gaußschen Eliminationsmethode auf. Die dabei auftretenden Rechnungen und Ergebnisse sind im folgenden Satz zusammengefasst: Satz 6.23. Definieren wir e .n/ D .e0 ; : : : ; en / und f .n/ D .f0 ; : : : ; fn / durch a) e1 WD 0, e0 WD ˛0 =b2 und ekC1 WD
1 .˛kC1 C ek1 akC2 ek / bkC3
für k D 0; : : : ; n 1,
(6.26)
für k D 0; : : : ; n 1,
(6.27)
b) f1 WD 0, f0 WD m0 =b2 und fkC1 WD
1 .mkC1 C fk1 akC2 fk / bkC3
wobei ˛k WD 0 für k > N , so gilt unter der Voraussetzung fn ¤ 0, dass .n/ SN
N X
D
.n/
˛k pk D
kD0
en : fn
Beweis. Die Werte f0 ; : : : ; fn berechnen sich aus einer LR-Zerlegung MnT D Ln Rn von MnT , wobei 3 3 2 2 b 1 f 0 7 7 6 2 6 7 7 6 6 : : : : :: :: 7 7 6 a2 6 : 7 7 6 6 7 7 6 6 : : : : 7 6 6 : : :: :: 7 Ln WD 61 : : 7 7 ; Rn WD 6 7 7 6 6 :: :: :: 7 7 6 6 : : : 1 f 7 6 6 n1 7 5 5 4 4 fn 1 anC1 bnC2 und daher Ln f .n/ D m.n/ . Dies ist äquivalent zu der Rekursion b) für f0 ; : : : ; fn . Die Rekursion a) für e0 ; : : : ; en ist äquivalent zu Ln e .n/ D ˛ .n/ . Setzen wir die Zerlegung M T D Ln Rn in das Gleichungssystem M T u.n/ D ˛ .n/ ein, so folgt Rn u.n/ D e .n/ ; und daher
.n/
SN D u.n/ n D
en : fn
Mit den Rekursionen (6.26) und (6.27) benötigen wir O.1/ Operationen, um aus .n/ .nC1/ zu berechnen im Gegensatz zu O.n/ OperaSN die nächste Approximation SN tionen bei dem direkt aus dem Miller-Algorithmus abgeleiteten Verfahren. Außerdem
196
6 Drei-Term-Rekursionen
ist der Speicherbedarf geringer und nicht von n, sondern nur von N abhängig (falls die Koeffizienten ¹˛k º als Feld gegeben sind). Wegen (6.25) nennen wir das in Satz 6.23 definierte Verfahren die adjungierte Summation von Minimallösungen. Wir wollen einmal anhand dieses Verfahrens verdeutlichen, wie man ausgehend von der theoretischen Beschreibung in Satz 6.23 zu einem brauchbaren Algorithmus gelangt. Zunächst ersetzen wir die Drei-Term-Rekursion (6.26) für ek durch ein System von Zwei-Term-Rekursionen für ek .k/ und uk WD uk uk1; uk WD uk D fk da wir genau an diesen beiden Werten (uk als Lösung, uk zur Überprüfung der Genauigkeit) interessiert sind. Ferner ist zu beachten, dass die fn und ek sehr groß werden und aus dem Bereich der im Rechner darstellbaren Zahlen fallen können. Statt der fk verwenden wir daher die neuen Größen gk WD
fk1 fk
1 und fNk WD : fk
Bei der Transformation der Rekursionen (6.26) und (6.27) auf die neuen Größen uk ; uk ; gk und fNk erweist es sich als günstig, zusätzlich noch gN k WD
fk bkC2 D bkC2 gk fk1
und
mk m N k WD mk fNk1 D fk1
einzuführen. Aus (6.27) folgt damit (Multiplikation mit bkC2 =fk1 ), dass gN k D m N k akC1 C gk1
für k 1,
(6.28)
und aus (6.26) (Multiplikation mit bkC2 =fk1 und Einsetzen von (6.28)), dass gN k uk D fNk1 ˛k gk1 uk1 m N k uk1 : Ordnen wir die Operationen nun so an, dass wir möglichst wenig Speicherplatz benötigen, und lassen wir die dann nicht mehr nötigen Indices weg, so erhalten wir den folgenden numerisch brauchbaren Algorithmus. PN Algorithmus 6.24. Berechnung von SN D kD0 ˛k pk für eine Minimallösung .pk / auf die relative Genauigkeit ". g WD u WD 0; fN WD b2 =m0 ; u WD ˛0 =m0 ; k WD 1 repeat m N WD mfN; uWD fN˛k gu mu; N g WD m N akC1 C g; uWD u=g;
197
Übungsaufgaben
u WD u C u; if (k > N and juj juj ") then exit; (Lösung SN u) g WD bkC2 =g; fN WD fNg; k WD k C 1; until .k > nmax /
Übungsaufgaben Aufgabe 6.1. Berechnen Sie auf einem Computer den Wert des Tschebyscheff-Polynoms T31 .x/ an der Stelle x D 0:923, a) indem Sie das Hornerschema benutzen (Koeffizienten der monomialen Darstellung von T31 mit dem Computer berechnen oder in einer Tabelle nachschlagen). b) indem Sie die Drei-Term-Rekursion benutzen. Vergleichen Sie die Ergebnisse mit dem auf 12 Stellen genauen Wert T31 .x/ D 0:948715916161 und erklären Sie die Fehler. Aufgabe 6.2. Gegeben sei die Drei-Term-Rekursion Tk D ak Tk1 C bk Tk2 : Für den relativen Fehler k D .TQk Tk /=Tk von Tk gilt eine inhomogene Drei-TermRekursion der Form
k D ak
Tk2 Tk1
k1 C bk
k2 C "k : Tk Tk
Zeigen Sie, dass für den Fall ak 0; bk > 0; T0 ; T1 > 0 gilt a) j"k j 3 eps, b) j k j .3k 2/ eps; k 1: Aufgabe 6.3. Durch die Rekursion kPk .x/ D .2k 1/xPk1 .x/ .k 1/Pk2 .x/
(6.29)
mit den Anfangswerten P0 .x/ D 1 und P1 .x/ D x werden die Legendre-Polynome definiert. (6.29) ist gutkonditioniert in Vorwärtsrichtung. Zeigen Sie, dass die Berechnung von Sk . / WD Pk .cos / nach (6.29) für ! 0 numerisch instabil ist. Geben Sie für cos > 0 eine sparsame, stabile Version von (6.29) zur Berechnung von Sk . / an. Hinweis: Führen Sie Dk D ˛k .Sk Sk1 / ein und bestimmen Sie ˛k geeignet.
198
6 Drei-Term-Rekursionen
Aufgabe 6.4. Gegeben sei die Drei-Term-Rekursion Tk1 2˛Tk C Tk1 D 0: a) Geben Sie mit Hilfe des Ansatzes Tk D an (Fallunterscheidung!).
!k
(6.30)
die allgemeine Lösung von (6.30)
b) Zeigen Sie für j˛j 1 die Existenz einer Minimallösung. Aufgabe 6.5. Analysieren Sie die Kondition der adjungierten Drei-Term-Rekursion für eine Minimallösung unter den Voraussetzungen von Satz 6.11. Aufgabe 6.6. Zeigen Sie, dass sich die Symmetrie der Drei-Term-Rekursion auf die diskrete Greensche Funktion überträgt, d. h., für symmetrische Drei-Term-Rekursionen, also mit bk D 1 für alle k, gilt g.j; k/ D g.k; j /
für alle j; k 2 N:
Aufgabe 6.7. Berechnen Sie die Bessel-Funktionen J0 .x/ und J1 .x/ für x D 2:13 und Jk .x/ für x D 1024 und k D 0; : : : ; 1024 a) mit Hilfe des Miller-Algorithmus, b) durch Spezialisierung des Algorithmus 6.24 zur adjungierten Summation. Vergleichen Sie beide Algorithmen bezüglich Speicher- und Rechenaufwand. Aufgabe 6.8. Zeigen Sie, dass sich die diskreten Greenschen Funktionen g ˙ mit Hilfe von zwei beliebigen, linear unabhängigen Lösungen ¹Pk º; ¹Qk º schreiben lassen in der Form g .j; k/ D
D.j 1; k/ D.j 1; j /
und
g C .j; k/ D
D.j C 1; k/ ; D.j C 1; j /
wobei D.l; m/ WD Pl Qm Ql Pm die verallgemeinerten Casorati-Determinanten bezeichnen. Geben Sie für den Spezialfall der trigonometrischen Rekursion eine geschlossene Formel für g.j; k/ an und führen Sie den Grenzprozess x ! l, l 2 Z, durch. Skizzieren Sie g.j; k/ für ausgewählte j; k und x. Aufgabe 6.9. Betrachtet werde die Drei-Term-Rekursion für Zylinderfunktionen TkC1 D
2k Tk Tk1 : x
(6.31)
Zeigen Sie, ausgehend von den asymptotischen Darstellungen für die Bessel-Funktionen 1 ex k : für k ! 1 Jk .x/ D p 2k 2k
199
Übungsaufgaben
und die Neumann-Funktionen : Yk .x/ D
r
2 ex k k 2k
für k ! 1,
dass in (6.31) für JkC1 Auslöschung in Vorwärtsrichtung und für Yk1 Auslöschung in Rückwärtsrichtung auftritt. Aufgabe 6.10. Gegeben sei eine Drei-Term-Rekursion der Form pk D ak pk1 C bk pk2 :
(6.32)
a) Transformieren Sie pk durch pk D ck pNk derart, dass die pNk der symmetrischen Drei-Term-Rekursion (6.33) pNk D aN k pNk1 pNk2 genügen. b) Beweisen Sie unter Verwendung der Voraussetzung jbk j C 1 jak j einen zu Satz 6.11 analogen Satz über die Existenz von Minimallösungen. Vergleichen Sie die Anwendung von Satz 6.11 auf die Rekursion (6.33) mit der Anwendung von a) auf (6.32). Aufgabe 6.11. Gegeben sei eine symmetrische Tridiagonalmatrix 2
d1
6 6 6 e2 Tn WD 6 6 6 4
e2 :: : :: :
3 7 7 7 7: 7 :: : en 7 5 en dn ::
:
Zeigen Sie: a) Die Polynome pi ./ WD det.Ti Ii / genügen einer Drei-Term-Rekursion. Q b) Unter der Voraussetzung niD2 ei ¤ 0 gilt: Für i 1 hat pi nur reelle einfache Nullstellen. (Die Nullstellen von pi trennen diejenigen von pi C1 .) c) Besitzt Tn einen k-fachen Eigenwert, so verschwinden mindestens k 1 Nichtdiagonalelemente ei . Hinweis: ¹pi º heißt Sturmsche Kette.
7 Interpolation und Approximation
Häufig tritt in der Numerischen Mathematik die Situation auf, dass statt einer Funktion f W R ! R nur einige diskrete Funktionswerte f .ti / und evtl. noch Ableitungen f .j / .ti / an endlich vielen Punkten ti gegeben sind. Dies trifft zum Beispiel zu, wenn die Funktion f in Form experimenteller Daten vorliegt. Auch bei den meisten Verfahren zur Lösung von Differentialgleichungen wird die gesuchte Lösung f .t / nur an endlich vielen Stellen (einschließlich ihrer Ableitung) berechnet. Historisch trat das Problem bei der Berechnung von zusätzlichen Funktionswerten zwischen tabellierten Werten auf. Heute ist eines der bedeutendsten Anwendungsfelder die ComputerGraphik, bekannt unter den Kürzeln CAD (Computer Aided Design) und CAGD (Computer Aided Geometric Design). Ist man an dem gesamten Verlauf der Funktion interessiert, so sollte man aus den gegebenen Daten f .j / .ti /
für i D 0; : : : ; n und j D 0; : : : ; ci
eine Funktion ' konstruieren, die sich möglichst wenig von der ursprünglichen Funktion f unterscheidet. Zudem sollte ' eine leicht auswertbare Funktion sein, wie zum Beispiel (stückweise) Polynome, trigonometrische Funktionen, Exponentialfunktiof f o o
'1
o
o
'2 +
t0
+
t1
+
t2
+
t3
Abbildung 7.1. Verschiedene interpolierende Funktionen
nen oder rationale Funktionen. Eine erste naheliegende Forderung an die Funktion ' ist die sogenannte Interpolationseigenschaft: ' soll an den Knoten oder Stützpunkten ti mit der Funktion f übereinstimmen, ' .j / .ti / D f .j / .ti /
für alle i; j .
201
7.1 Klassische Polynom-Interpolation
Die Werte f .j / .ti / heißen daher auch Stützwerte. Vergleichen wir die beiden Funktionen '1 und '2 in Abbildung 7.1, so genügen offensichtlich beide der Interpolationsbedingung bei gegebenen Funktionswerten f .ti /. Trotzdem wird man '1 intuitiv vorziehen. Zusätzlich zur Interpolationseigenschaft fordert man daher noch die Approximationseigenschaft: ' soll sich bezüglich einer Norm k k in einem geeigneten Funktionenraum möglichst wenig von f unterscheiden, k' f k „klein“:
7.1
Klassische Polynom-Interpolation
Wir beginnen mit dem einfachsten Fall, dass nur die Funktionswerte fi WD f .ti /
für i D 0; : : : ; n
an den paarweise verschiedenen Knoten t0 ; : : : ; tn gegeben sind. Wir suchen nun ein Polynom P 2 P n vom Grad deg P n, P .t / D an t n C an1 t n1 C C a1 t C a0
mit a0 ; : : : ; an 2 R,
welches f an den n C 1 Knoten t0 ; : : : ; tn interpoliert, d. h. P .ti / D fi
7.1.1
für i D 0; : : : ; n.
(7.1)
Eindeutigkeit und Kondition
Die n C 1 unbekannten Koeffizienten a0 ; : : : ; an sind durch die Bedingung (7.1) eindeutig bestimmt, wie folgende Überlegung zeigt: Falls P; Q 2 P n zwei interpolierende Polynome mit P .ti / D Q.ti / für i D 0; : : : ; n sind, so ist P Q ein Polynom maximal n-ten Grades mit den n C 1 Nullstellen t0 ; : : : ; tn und daher das Nullpolynom. Die Zuordnung P n ! RnC1 ;
P 7! .P .t0 /; : : : ; P .tn //
ist aber auch eine lineare Abbildung der beiden .n C 1/-dimensionalen reellen Vektorräume P n und RnC1 , so dass aus der Injektivität bereits die Surjektivität folgt. Wir haben damit folgenden Satz bewiesen. Satz 7.1. Zu n C1 Stützpunkten .ti ; fi / für i D 0; : : : ; n mit paarweise verschiedenen Knoten t0 ; : : : ; tn existiert genau ein Interpolationspolynom P 2 P n , d. h. P .ti / D fi für i D 0; : : : ; n.
202
7 Interpolation und Approximation
Das nach Satz 7.1 eindeutige Polynom P heißt Interpolationspolynom von f zu den paarweise verschiedenen Knoten t0 ; : : : ; tn und wird mit P D P .f j t0 ; : : : ; tn / bezeichnet. Um das Interpolationspolynom auch tatsächlich berechnen zu können, müssen wir eine Basis des Polynomraums P n wählen. Wir geben zunächst zwei klassische Darstellungen zur Illustration. Schreiben wir P wie oben in Koeffizientendarstellung P .t / D an t n C an1 t n1 C C a1 t C a0 ; d. h. bezüglich der monomialen Basis ¹1; t; : : : ; t n º von P n , so lassen sich die Interpolationsbedingungen P .ti / D fi als lineares Gleichungssystem 30 1 0 1 2 f a 1 t0 t02 : : : t0n 7 B 0C B 0C 6 :: 7 B :: C B :: C 6 :: :: :: 6: : : : 7B : C D B : C 5@ A @ A 4 2 n 1 tn t n : : : t n an fn „ ƒ‚ … DW Vn formulieren. Die Matrix Vn heißt Vandermonde-Matrix. Für die Determinante von Vn gilt n n Y Y .ti tj /; det Vn D iD0 j DiC1
was in jedem Buch über lineare Algebra bewiesen wird (siehe z. B. [11]). Sie ist genau dann verschieden von Null, wenn die Knoten t0 ; : : : ; tn paarweise verschieden sind (in Einklang mit Satz 7.1). Die Lösung des Gleichungssystems erfordert jedoch übermäßig viel Aufwand im Vergleich zu den weiter unten dargestellten Methoden. Darüber hinaus sind die Vandermonde-Matrizen im Allgemeinen für hohe Dimensionen n fast singulär. Zu ihrer Lösung empfiehlt sich die Gauß-Elimination ohne Pivotsuche, da Pivotstrategien die Struktur der Matrix stören können (vgl. [58]). Für spezielle Knoten lässt sich die obige Vandermonde-Matrix leicht analytisch invertieren. Ein Beispiel dafür werden wir in Kapitel 7.2 kennenlernen. Eine alternative Basis zur Darstellung des Interpolationspolynoms bilden die sogenannten Lagrange-Polynome L0 ; : : : ; Ln . Sie sind definiert als die eindeutig bestimmten Interpolationspolynome Li 2 P n mit Li .tj / D ıij : Mit etwas Nachdenken findet man rasch die zugehörige explizite Form Li .t / D
n Y t tj : ti tj
j D0
j ¤i
203
7.1 Klassische Polynom-Interpolation 1.2 1
L1
0.6
L0
0.4 0.2 0 -0.2 -0.4 -0.6
L3
L2
0.8
0
0.5
L4
1
1.5
2
2.5
3
3.5
4
Abbildung 7.2. Lagrange-Polynome Li für n D 4 und äquidistante Knoten ti
Das Interpolationspolynom P für beliebige Stützwerte f0 ; : : : ; fn lässt sich aus den Lagrange-Polynomen durch Superposition aufbauen: Mit n X
P .t / WD
(7.2)
fi Li .t /
iD0
gilt offensichtlich P .tj / D
n X
fi Li .tj / D
i D0
n X
fi ıij D fj :
iD0
Bemerkung 7.2. Die obige Aussage lässt sich auch so formulieren: Die LagrangePolynome bilden eine Orthonormalbasis von P n bezüglich des Skalarproduktes hP; Qi WD
n X
P .ti /Q.ti /
iD0
für P; Q 2 P n . Da hP; Li i D P .ti /, gilt gerade P D
n X i D0
hP; Li iLi D
n X iD0
P .ti /Li D
n X
fi Li :
iD0
Die Lagrange-Darstellung (7.2) ist für praktische Zwecke zu rechenaufwändig, jedoch für viele theoretische Fragestellungen vorteilhaft. Ein Beispiel dafür ist die Bestimmung der Kondition des Interpolationsproblems. Satz 7.3. Seien a t0 < < tn b paarweise verschiedene Knoten und Li n die zugehörigen Lagrange-Polynome. Dann ist die absolute Kondition abs der Polynominterpolation D P . j t0 ; : : : ; tn / W C Œa; b ! P n
204
7 Interpolation und Approximation
bezüglich der Supremumsnorm die sogenannte Lebesgue-Konstante n X
abs D ƒn WD max
t2Œa;b
jLi n .t /j
iD0
für die Knoten t0 ; : : : ; tn . Beweis. Die Polynominterpolation ist linear, d. h. 0 .f /.g/ D .g/. Wir haben zu zeigen, dass k 0 k D ƒn . Für jede stetige Funktion f 2 C Œa; b gilt j.f /.t /j D j
n X
f .ti /Li n .t /j
iD0
n X
jf .ti /j jLi n .t /j
iD0
D kf k1 max
t2Œa;b
n X
jLi n .t /j;
iD0
also abs ƒn . Für die umgekehrte Richtung konstruieren wir eine Funktion g 2 C Œa; b, so dass n X j.g/. /j D kgk1 max jLi n .t /j t2Œa;b
iD0
für ein 2 Œa; b. Sei dazu 2 Œa; b die Stelle, an der das Maximum angenommen wird, d. h. n n X X jLi n . /j D max jLi n .t /j; i D0
t2Œa;b
iD0
und g 2 C Œa; b eine Funktion mit kgk1 D 1 und g.ti / D sgn Li . /, z. B. die stückweise linear Interpolierende zu den Punktion .ti ; sgn Li . //. Dann gilt wie gewünscht j.g/. /j D
n X
jLi n . /j D kgk1 max
i D0
also abs ƒn und zusammen abs D ƒn .
t2Œa;b
n X
jLi n .t /j;
iD0
Man rechnet leicht nach, dass die Lebesgue-Konstante ƒn invariant unter affinen Transformationen ist (siehe Aufgabe 7.1) und daher nur von der relativen Lage der Knoten ti zueinander abhängt. In Tabelle 7.1 ist ƒn für äquidistante Knoten in Abhängigkeit von n aufgetragen. Offensichtlich wächst ƒn rasch über alle vernünftigen Grenzen. Dies gilt jedoch nicht für jede Knotenwahl. Als Gegenbeispiel sind in Tabelle 7.1 auch die entsprechenden Werte für die sogenannten Tschebyscheff-Knoten (siehe Kapitel 7.1.4) 2i C 1 für i D 0; : : : ; n ti D cos 2n C 2
205
7.1 Klassische Polynom-Interpolation
n 5 10 15 20
ƒn für äquidistante Knoten 3.106292 29.890695 512.052451 10986.533993
ƒn für Tschebyscheff-Knoten 2.104398 2.489430 2.727778 2.900825
Tabelle 7.1. Lebesgue-Konstante ƒn für äquidistante und für Tschebyscheff-Knoten
aufgelistet (wobei das Maximum über Œ1; 1 gebildet wurde). Sie wachsen nur sehr langsam.
7.1.2
Hermite-Interpolation und dividierte Differenzen
Ist man an dem Interpolationspolynom P nur an einer Stelle t interessiert, so erweist sich die rekursive Berechnung von P .t / als effektivste Methode. Sie geht von folgender einfacher Beobachtung aus, dem sogenannten Lemma von Aitken. Lemma 7.4. Für das Interpolationspolynom P D P .f j t0 ; : : : ; tn / gilt die Rekursionsformel P .f j t0 ; : : : ; tn / D
.t0 t /P .f j t1 ; : : : ; tn / .tn t /P .f j t0 ; : : : ; tn1 / : (7.3) t0 tn
Beweis. Sei '.t / definiert als der Ausdruck auf der rechten Seite von (7.3). Dann ist ' 2 P n und '.ti / D
.t0 ti /fi .tn ti /fi D fi t0 tn
für i D 1; : : : ; n 1.
Ebenso leicht folgt '.t0 / D f0 und '.tn / D fn und daher die Behauptung.
Die Interpolationspolynome für nur einen Stützpunkt sind nichts weiter als die Konstanten P .f j ti / D fi
für i D 0; : : : ; n.
Vereinfachen wir die Notation für festes t durch Pik WD P .f j tik ; : : : ; ti /.t /
für i k,
so lässt sich der Wert Pnn D P .f j t0 ; : : : ; tn /.t / nach dem Schema von Neville be-
206
7 Interpolation und Approximation
rechnen P00 & P10 :: :
! P11 ::
:
Pn1;0 ! ! Pn1;n1 & Pn0
! ! Pn;n1 ! Pnn
gemäß der Vorschrift Pi0 D fi Pik
für i D 0; : : : ; n; t ti D Pi;k1 C .Pi;k1 Pi1;k1 / ti tik
für i k.
(7.4)
Beispiel 7.5. Berechnung von sin 62o aus den Stützpunkten .50o ; sin 50o /; .55o ; sin 55o /; : : : ; .70o ; sin 70o / mit dem Aitken-Neville-Algorithmus. ti 50o 55o 60o 65o 70o
sin ti 0:7660444 0:8191520 0:8660254 0:9063078 0:9396926
0:8935027 0:8847748 0:8830292 0:8821384 0:8829293 0:8829493 0:8862768 0:8829661 0:8829465 0:8829476
Die rekursive Struktur der Interpolationspolynome nach Lemma 7.4 lässt sich auch zur Bestimmung des gesamten Polynoms P .f j t0 ; : : : ; tn / nutzen. Dies gilt auch für die verallgemeinerte Interpolationsaufgabe, bei der neben den Funktionswerten f .ti / noch Ableitungen an den Knoten gegeben sind, der sogenannten Hermite-Interpolation. Dazu führen wir folgende praktische Notation ein. Wir lassen zu, dass in der Folge WD ¹ti ºi D0;:::;n mit a D t0 t1 tn D b Knoten mehrfach auftreten. Sind an einem Knoten ti der Funktionswert f .ti / und die Ableitungen f 0 .ti /; : : : ; f .k/ .ti / bis zu einem Grad k gegeben, so soll ti in der Folge gerade .k C 1/-mal auftauchen. Die gleichen Knoten numerieren wir mit di WD max¹j W ti D tij º
207
7.1 Klassische Polynom-Interpolation
von links nach rechts durch, z. B. t i t0 D t 1 < t2 D t 3 D t 4 < t5 < t6 D t 7 di 0
1
0
1
2
0
0
:
1
Definieren wir nun für i D 0; : : : ; n lineare Abbildungen i W C n Œa; b ! R;
i .f / WD f .di / .ti /;
so lautet die Aufgabe der Hermite-Interpolation: Suche ein Polynom P 2 P n , so dass i .P / D i .f /
für alle i D 0; : : : ; n.
(7.5)
Die Lösung P D P .f j t0 ; : : : ; tn / 2 P n der Interpolationsaufgabe (7.5) heißt Hermite-Interpolierende von f an den Knoten t0 ; : : : ; tn . Die Existenz und Eindeutigkeit folgt wie in Satz 7.1. Satz 7.6. Zu jeder Funktion f 2 C n Œa; b und jeder monotonen Folge a D t0 t1 tn D b von (nicht notwendig verschiedenen) Knoten gibt es genau ein Polynom P 2 P n , so dass i P D i f für alle i D 0; : : : ; n. Beweis. Die Abbildung W P n ! RnC1 ;
P 7! .0 P; : : : ; n P /
ist offensichtlich linear und auch injektiv. Denn aus .P / D 0 folgt, dass P mindestens n C 1 Nullstellen besitzt (mit Vielfachheit gezählt), also das Nullpolynom ist. Da dim P n D dim RnC1 D n C 1, folgt daraus auch wieder die Existenz. Sind alle Knoten paarweise verschieden, so erhalten wir die Lagrange-Interpolierende n X f .ti /Li P .f j t0 ; : : : ; tn / D iD0
zurück. Stimmen alle Knoten überein, t0 D t1 D D tn , so ist das Interpolationspolynom die abgebrochene Taylor-Reihe um t D t0 , P .f j t0 ; : : : ; tn /.t / D
n X .t t0 /j .j / f .t0 /; jŠ
j D0
auch Taylor-Interpolation genannt.
(7.6)
208
7 Interpolation und Approximation
Bemerkung 7.7. Eine wichtige Anwendung ist die sogenannte kubische HermiteInterpolation, bei der an zwei Knoten t0 ; t1 jeweils Funktionswerte f0 ; f1 und Ableitungen f00 ; f10 gegeben sind. Nach Satz 7.6 ist dadurch ein kubisches Polynom P 2 P 3 eindeutig bestimmt. Definiert man die Hermite-Polynome H03 ; : : : ; H33 2 P 3 durch H03 .t0 / D 1; H13 .t0 / D 0; H23 .t0 / D 0; H33 .t0 / D 0;
d 3 H .t0 / D 0; dt 0 d 3 H .t0 / D 1; dt 1 d 3 H .t0 / D 0; dt 2 d 3 H .t0 / D 0; dt 3
H03 .t1 / D 0; H13 .t1 / D 0; H23 .t1 / D 1; H33 .t1 / D 0;
d 3 H .t1 / D 0; dt 0 d 3 H .t1 / D 0; dt 1 d 3 H .t1 / D 0; dt 2 d 3 H .t1 / D 1; dt 3
so bilden die Polynome ¹H03 .t /; H13 .t /; H23 .t /; H33 .t /º eine Basis von P 3 , die sogenannte kubische Hermite-Basis bzgl. der Knoten t0 ; t1 . Das Hermite-Polynom zu den Werten ¹f0 ; f00 ; f1 ; f10 º lässt sich damit formal einfach angeben durch P .t / D f0 H03 .t / C f00 H13 .t / C f1 H23 .t / C f10 H33 .t /: Liegt eine ganze Reihe t0 ; : : : ; tn von Knoten vor mit Funktionswerten fi und Ableitungen fi0 , so können wir auf jedem Intervall Œti ; tiC1 die kubische Hermite-Interpolierende betrachten und diese Polynome an den Knoten aneinanderfügen. Aufgrund der Vorgaben ist klar, dass die zusammengesetzte Funktion C 1 -stetig ist. Diese Art der Interpolation heißt lokal kubische Hermite-Interpolation. Eine Anwendung haben wir bereits in Kapitel 4.4.2 gesehen. Bei der Berechnung einer Lösungskurve mit Hilfe einer tangentialen Fortsetzungsmethode erhalten wir gerade Lösungspunkte .xi ; i / zusammen mit den Steigungen xi0 . Um uns aus diesen diskreten Informationen einen Eindruck über die gesamte Lösungskurve zu verschaffen, haben wir die Punkte durch ihre lokal kubische Hermite-Interpolierende miteinander verbunden. Analog zum Lemma von Aitken gilt für zwei verschiedene Knoten ti ¤ tj folgende Rekursionsformel. Lemma 7.8. Unter der Voraussetzung ti ¤ tj gilt für das Hermite-Interpolationspolynom P D P .f j t0 ; : : : ; tn /, dass P D
tj ; : : : ; tn / .tj t /P .f j t1 ; : : : ; b t i ; : : : ; tn / .ti t /P .f j t1 ; : : : ; b ; ti tj
wobei b anzeigt, dass der entsprechende Knoten weggelassen wird („seinen Hut nehmen muss“).
209
7.1 Klassische Polynom-Interpolation
Beweis. Überprüfen der Interpolationseigenschaft durch Einsetzen der Definitionen. Zur Darstellung des Interpolationspolynoms verwenden wir die sogenannte Newton-Basis !0 ; : : : ; !n des Polynomraums P n : !i .t / WD
i1 Y
.t tj /;
!i 2 P i :
j D0
Die Koeffizienten bezüglich dieser Basis sind die sogenannten dividierten Differenzen, die wir nun definieren. Definition 7.9. Der führende Koeffizient an des Interpolationspolynoms P .f j t0 ; : : : ; tn /.t / D an t n C an1 t n1 C C a0 von f zu den (nicht notwendig verschiedenen) Knoten t0 t1 tn heißt n-te dividierte Differenz von f an t0 ; : : : ; tn und wird mit Œt0 ; : : : ; tn f WD an bezeichnet. Satz 7.10. Für jede Funktion f 2 C n und .nicht notwendig verschiedene/ Knoten t0 tn ist n X Œt0 ; : : : ; ti f !i P WD iD0
das Interpolationspolynom P .f j t0 ; : : : ; tn / von f an t0 ; : : : ; tn . Ist f 2 C nC1 , so gilt (7.7) f .t / D P .t / C Œt0 ; : : : ; tn ; t f !nC1 .t /: Beweis. Wir zeigen die erste Behauptung durch Induktion über n. Für n D 0 ist die Aussage trivial. Sei also n > 0 und Pn1 WD P .f j t0 ; : : : ; tn1 / D
n1 X
Œt0 ; : : : ; ti f !i
iD0
das Interpolationspolynom von f an t0 ; : : : ; tn1 . Dann gilt für das Interpolationspolynom Pn D P .f j t0 ; : : : ; tn / von f an t0 ; : : : ; tn , dass Pn .t / D Œt0 ; : : : ; tn f t n C an1 t n1 C C a0 D Œt0 ; : : : ; tn f !n .t / C Qn1 .t /
210
7 Interpolation und Approximation
mit einem Polynom Qn1 2 P n1 . Nun erfüllt aber Qn1 D Pn Œt0 ; : : : ; tn f !n offensichtlich die Interpolationsbedingungen für t0 ; : : : ; tn1 , so dass Qn1 D Pn1 D
n1 X
Œt0 ; : : : ; ti f !i :
iD0
Damit ist die erste Aussage des Satzes bewiesen. Insbesondere folgt, dass Pn C Œt0 ; : : : ; tn ; t f !nC1 die Funktion f an den Knoten t0 ; : : : ; tn und t interpoliert und daher (7.7).
Aus den Eigenschaften der Hermite-Interpolation lassen sich sofort folgende Aussagen über die dividierten Differenzen von f ableiten. Lemma 7.11. Für die dividierten Differenzen Œt0 ; : : : ; tn f gilt .f 2 C n /: (i) Œt0 ; : : : ; tn P D 0 für alle P 2 P n1 . (ii) Für zusammenfallende Knoten t0 D D tn gilt Œt0 ; : : : ; tn f D f .n/ .t0 /=nŠ:
(7.8)
(iii) Für ti ¤ tj gilt die Rekursionsformel Œt0 ; : : : ; tn f D
ti ; : : : ; tn f Œt0 ; : : : ; b tj ; : : : ; tn f Œt0 ; : : : ; b : tj ti
(7.9)
Beweis. Da der n-te Koeffizient eines Polynoms vom Grad kleiner oder gleich n 1 verschwindet, gilt (i). (ii) folgt aus der Taylor-Interpolation (7.6) und (iii) aus Lemma 7.8 und der Eindeutigkeit des führenden Koeffizienten. Durch die Eigenschaften (ii) und (iii) lassen sich die dividierten Differenzen rekursiv aus den Funktionswerten und Ableitungen f .j / .ti / von f an den Knoten ti berechnen. Die Rekursionsformel benötigen wir auch im Beweis des folgenden Satzes, der eine überraschende Interpretation dividierter Differenzen bietet: Die n-te dividierte Differenz einer Funktion f 2 C n bezüglich der Knoten t0 ; : : : ; tn ist das Integral der n-ten Ableitung über den n-dimensionalen Standardsimplex n ° ± X †n WD s D .s0 ; : : : ; sn / 2 RnC1 W si D 1 und si 0 : iD0
211
7.1 Klassische Polynom-Interpolation
Satz 7.12 (Hermite-Genocchi-Formel). Für die n-te dividierte Differenz einer n-mal stetig differenzierbaren Funktion f 2 C n gilt Z n X
(7.10) Œt0 ; : : : ; tn f D f .n/ si ti ds: iD0
†n
Beweis. Wir beweisen die Formel durch Induktion über n. Für n D 0 ist die Aussage trivial. Wir schließen von n auf n C 1. Wenn alle Knoten zusammenfallen, folgt die Behauptung aus (7.8). Wir können also ohne Einschränkung davon ausgehen, dass t0 ¤ tnC1 . Dann gilt Z Z n n X
X .nC1/ f si ti ds D f .nC1/ t0 C si .ti t0 / ds nC1 P iD0
i D0
nC1 P
si D1
Z
1
n P
ZiD1
iD1
si
D n P iD1
D
si 1
n
X f .nC1/ t0 C si .ti t0 / C snC1 .tnC1 t0 / ds iD1
s0 D0
1 tnC1 t0
Z n P iD1
iD1 si 1
°
n
X f .n/ tnC1 C si .ti tnC1 / iD1
si 1
n
± X f .n/ t0 C si .ti t0 / ds iD1
1 D Œt1 ; : : : ; tnC1 f Œt0 ; : : : ; tn f tnC1 t0 D Œt0 ; : : : ; tnC1 f:
Korollar 7.13. Die durch die n-te dividierte Differenz einer Funktion f 2 C n gegebene Abbildung g W RnC1 ! R mit g.t0 ; : : : ; tn / WD Œt0 ; : : : ; tn f ist stetig in ihren Argumenten ti . Ferner existiert für alle Knoten t0 tn ein 2 Œt0 ; tn , so dass f .n/ . / : (7.11) Œt0 ; : : : ; tn f D nŠ Beweis. Die Stetigkeit ist in der Integraldarstellung (7.10) offensichtlich und (7.11) folgt aus dem Mittelwertsatz der Integralrechnung, da das Volumen des n-dimensio nalen Standardsimplex gerade vol.†n / D 1=nŠ ist.
212
7 Interpolation und Approximation
Für paarweise verschiedene Knoten t0 < < tn lassen sich die dividierten Differenzen aufgrund der Rekursionsformel (7.9) ähnlich wie beim Schema von Neville anordnen: f0 D Œt0 f & f1 D Œt1 f :: :
! Œt0 ; t1 f ::
fn1 D Œtn1 f !
:
! Œt0 ; : : : ; tn1 f &
fn D Œtn f
!
! Œt1 ; : : : ; tn f
! Œt0 ; : : : ; tn f
Beispiel 7.14. Wir berechnen das Interpolationspolynom zu den Werten ti 0 1 2 3 fi 1 2 0 1 mit Hilfe der Newtonschen dividierten Differenzen: f Œt0 D 1 f Œt1 D 2
f Œt0 ; t1 D 1
f Œt2 D 0
f Œt1 ; t2 D 2
f Œt0 ; t1 ; t2 D 3=2
f Œt3 D 1
f Œt2 ; t3 D 1
f Œt1 ; t2 ; t3 D 3=2
f Œt0 ; t1 ; t2 ; t3 D 1;
also .˛0 ; ˛1 ; ˛2 ; ˛3 / D .1; 1; 3=2; 1/: Das Interpolationspolynom ist daher P .t / D 1 C 1.t 0/ C .3=2/.t 0/.t 1/ C 1.t 0/.t 1/.t 2/ D t 3 4:5 t 2 C 4:5 t C 1: Eine weitere wichtige Eigenschaft dividierter Differenzen ist die folgende LeibnizRegel. Lemma 7.15. Seien g; h 2 C n und t0 t1 tn eine beliebige Knotenfolge. Dann gilt n X Œt0 ; : : : ; ti g Œti ; : : : ; tn h: Œt0 ; : : : ; tn gh D iD0
213
7.1 Klassische Polynom-Interpolation
Beweis. Seien die Knoten t0 ; : : : ; tn zunächst paarweise verschieden. Setzen wir iY 1
!i .t / WD
.t tk /
und
n Y
!Nj .t / WD
.t tl /;
lDj C1
kD0
so sind nach Satz 7.10 die Interpolationspolynome P; Q 2 P n von g bzw. h durch P D
n X Œt0 ; : : : ; ti g !i
und
QD
i D0
n X
Œtj ; : : : ; tn h !Nj
j D0
gegeben. Daher interpoliert das Produkt n X
PQ D
Œt0 ; : : : ; ti g Œtj ; : : : ; tn h !i !Nj
i;j D0
die Funktion f WD gh in t0 ; : : : ; tn . Da !i .tk /!Nj .tk / D 0 für alle k und i > j , ist daher n X Œt0 ; : : : ; ti g Œtj ; : : : ; tn h !i !Nj 2 P n F WD i;j D0
i j
das Interpolationspolynom von gh in t0 ; : : : ; tn . Der höchste Koeffizient ist gerade wie behauptet n X Œt0 ; : : : ; ti g Œti ; : : : ; tn h: i D0
Für beliebige, nicht notwendig verschiedene Knoten ti folgt die Behauptung nun aus der Stetigkeit der dividierten Differenzen in den Knoten ti .
7.1.3
Approximationsfehler
Wir wollen uns nun der zweiten Forderung, der Approximationseigenschaft, zuwenden und analysieren, inwieweit die Polynome P .f j t0 ; : : : ; tn / die ursprüngliche Funktion f approximieren. Mit Hilfe der oben hergeleiteten Eigenschaften dividierter Differenzen ist es einfach, eine Darstellung des Approximationsfehlers zu finden. Satz 7.16. Falls f 2 C nC1 , so gilt für den Approximationsfehler der HermiteInterpolierenden P .f j t0 ; : : : ; tn / und ti ; t 2 Œa; b, dass f .t / P .f j t0 ; : : : ; tn /.t / D für ein D .t / 2 a; bŒ.
f .nC1/ . / !nC1 .t / .n C 1/Š
(7.12)
214
7 Interpolation und Approximation
Beweis. Nach Satz 7.10 und Satz 7.13 gilt für P WD P .f j t0 ; : : : ; tn /, dass f .t / P .t / D Œt0 ; : : : ; tn ; t f !nC1 .t / D
f .nC1/ . / !nC1 .t / .n C 1/Š
für ein 2 a; bŒ.
Beispiel 7.17. Im Fall der Taylor-Interpolation (7.6), d. h. t0 D D tn , ist die Fehlerformel (7.12) gerade das Lagrangesche Restglied der Taylorentwicklung f .t / P .f j t0 ; : : : ; tn /.t / D
f .nC1/ . / .t t0 /nC1 : .n C 1/Š
Betrachten wir die Funktionenklasse ® ¯ F WD f 2 C nC1 Œa; b W sup jf nC1 . /j M.n C 1/Š 2Œa;b
für eine Konstante M > 0, so hängt der Approximationsfehler offenbar entscheidend von der Wahl der Knoten t0 ; : : : ; tn in Form von !nC1 .t / D .t t0 / .t tn /
(7.13)
ab. Wir werden im nächsten Abschnitt zeigen (siehe Beispiel 7.20), dass sich der Ausdruck (7.13) für paarweise verschiedene Knoten auf einem Intervall Œa; b minimieren lässt, max j!nC1 .t /j D min; t2Œa;b
indem man für die Knoten ti wieder die Tschebyscheff-Knoten wählt. Kommen wir zurück zu der Frage, ob die Polynominterpolation die Approximationseigenschaft erfüllt. Für lediglich stetige Funktionen f 2 C Œa; b und die Supremumsnorm kf k D sup t2Œa;b jf .t /j kann der Approximationsfehler prinzipiell über alle Schranken wachsen. Genauer existiert nach Faber für jede Folge fTk g von Stützstellensätzen Tk D ftk;0 ; : : : ; tk;nk g Œa; b eine stetige Funktion f 2 C Œa; b, so dass die Folge fPk g der zu den Tk gehörenden Interpolationspolynome nicht gleichmäßig gegen f konvergiert.
7.1.4
Minimax-Eigenschaft der Tschebyscheff-Polynome
Wir haben im vorigen Kapitel wiederholt die sogenannten Tschebyscheff-Knoten erwähnt, für die die Polynominterpolation besonders günstige Eigenschaften hat (beschränkte Kondition bzw. optimale Approximation von f über der Klasse F ). Die Tschebyscheff-Knoten sind die Nullstellen der Tschebyscheff-Polynome, die wir in Kapitel 6.1.1 kennengelernt haben. Sowohl bei der Untersuchung des Approximationsfehlers als auch bei der Konditionsanalyse der Polynominterpolation sind wir auf
215
7.1 Klassische Polynom-Interpolation
folgendes Approximationsproblem gestoßen: Gesucht ist das Polynom Pn 2 P n vom Grad deg P D n mit führendem Koeffizienten 1 und der kleinsten Supremumsnorm über einem Intervall Œa; b, d. h. max jPn .t /j D min :
(7.14)
t2Œa;b
Wir werden nun sehen, dass die Tschebyscheff-Polynome Tn , die wir bereits als Ortho1 gonalpolynome zur Gewichtsfunktion !.x/ D .1 x 2 / 2 über Œ1; 1 kennengelernt haben, diese sogenannte Minimax-Aufgabe lösen (bis auf einen skalaren Faktor und eine affine Transformation). Dazu reduzieren wir das Problem zunächst auf das den Tschebyscheff-Polynomen angemessene Intervall Œ1; 1 mit Hilfe der affinen Abbildung Š
x W Œa; b ! Œ1; 1; t 7! x D x.t / D 2
2t a b t a 1D ba ba
Š
mit der Umkehrabbildung t W Œ1; 1 ! Œa; b, t D t .x/ D
1Cx 1x aC b: 2 2
Ist Pn 2 P n mit deg P D n und führendem Koeffizienten 1 die Lösung des Minimaxproblems max jPn .x/j D min; x2Œ1;1
so ist POn .t / WD Pn .t .x// die Lösung des ursprünglichen Problems (7.14) mit führendem Koeffizienten 2n =.b a/n . Wir hatten die Tschebyscheff-Polynome in Beispiel 6.3 eingeführt durch Tn .x/ D cos.n arccos x/ für x 2 Œ1; 1 und allgemein für x 2 R durch die Drei-Term-Rekursion Tk .x/ D 2xTk1 .x/ Tk2 .x/;
T0 .x/ D 1;
T1 .x/ D x:
Die folgenden Eigenschaften der Tschebyscheff-Polynome sind offensichtlich oder leicht nachzurechnen. Insbesondere können wir die nach Satz 6.5 einfachen reellen Nullstellen x1 ; : : : ; xn von Tn .x/ direkt angeben (siehe Eigenschaft 7. unten). Bemerkung 7.18. 1. Die Tschebyscheff-Polynome haben ganzzahlige Koeffizienten. 2. Der höchste Koeffizient von Tn ist an D 2n1 . 3. Tn ist eine gerade Funktion, falls n gerade, und eine ungerade, falls n ungerade ist.
216
7 Interpolation und Approximation 1.5
+
T0
1
T1
0.5
T4
0
T3
-0.5 -1 -1.5
T2 +
-1 -0.8 -0.6 -0.4 -0.2
0
0.2 0.4 0.6 0.8
1
Abbildung 7.3. Tschebyscheff-Polynome T0 ; : : : ; T4
4. Tn .1/ D 1; Tn .1/ D .1/n . 5. jTn .x/j 1 für x 2 Œ1; 1. 6. jTn .x/j nimmt den Wert 1 an den sogenannten Tschebyscheff-Abszissen xN k D cos.k=n/ an, d. h. jTn .x/j D 1 ” x D xN k D cos
k n
für ein k D 0; : : : ; n.
7. Die Nullstellen von Tn .x/ sind xk WD cos
2k 1 2n
für k D 1; : : : ; n.
8. Es gilt 8 ˆ falls 1 x 1,
p p k k
1 x C x2 1 C x x2 1 2
für x 2 R.
(7.15)
Die Formeln 8. und 9. überprüft man am einfachsten, indem man nachweist, dass sie der Drei-Term-Rekursion (einschließlich der Anfangswerte) genügen. Die Minimax-Eigenschaft der Tschebyscheff-Polynome folgt aus dem Zwischenwertsatz:
217
7.1 Klassische Polynom-Interpolation
Satz 7.19. Jedes Polynom Pn 2 P n mit führendem Koeffizienten an ¤ 0 nimmt im Intervall Œ1; 1 einen Wert vom Betrag jan j=2n1 an. Insbesondere sind die Tschebyscheff-Polynome Tn .x/ minimal bezüglich der Maximumnorm kf k1 D maxx2Œ1;1 jf .x/j unter den Polynomen vom Grad n mit führendem Koeffizienten 2n1 . Beweis. Sei Pn 2 P n ein Polynom mit führendem Koeffizienten an D 2n1 und jPn .x/j < 1 für x 2 Œ1; 1. Dann ist Tn Pn ein Polynom vom Grad kleiner oder gleich n 1. An den Tschebyscheff-Abszissen xN k WD cos k n gilt Tn .xN 2k / D 1;
Pn .xN 2k / < 1
H) Pn .xN 2k / Tn .xN 2k / < 0;
Tn .xN 2kC1 / D 1; Pn .xN 2kC1 / > 1 H) Pn .xN 2kC1 / Tn .xN 2kC1 / > 0; d. h. die Differenz Tn Pn ist an den n C 1 Tschebyscheff-Abszissen abwechselnd positiv und negativ und hat daher mindestens n Nullstellen in Œ1; 1 im Widerspruch zu 0 ¤ Tn Pn 2 P n1 . Also muss es für jedes Polynom Pn 2 P n mit führendem Koeffizienten an D 2n1 ein x 2 Œ1; 1 geben, so dass jPn .x/j 1. Für ein beliebiges Polynom Pn 2 P n mit führendem Koeffizienten an ¤ 0 folgt die Behauptung n1 daraus, dass PQn WD 2an Pn ein Polynom mit führendem Koeffizienten aQ n D 2n1 ist. Beispiel 7.20. Bei der Minimierung des Approximationsfehlers der Polynominterpolation suchen wir die Knoten t0 ; : : : ; tn 2 Œa; b, die das Minimaxproblem max j!.t /j D max j.t t0 / .t tn /j D min
t2Œa;b
t2Œa;b
lösen. Anders formuliert gilt es, das normierte Polynom !.t / 2 P nC1 mit den reellen Nullstellen t0 ; : : : ; tn zu bestimmen, für das max t2Œa;b j!.t /j D min. Nach Satz 7.19 ist dies für das Intervall Œa; b D Œ1; 1 gerade das .nC1/-te Tschebyscheff-Polynom !.t / D TnC1 .t /, dessen Nullstellen 2i C 1 ti D cos für i D 0; : : : ; n 2n C 2 gerade die Tschebyscheff-Knoten sind. Wir wollen nun noch eine zweite Minimax-Eigenschaft der Tschebyscheff-Polynome ableiten, die uns in Kapitel 8 gute Dienste leisten wird. Satz 7.21. Sei Œa; b ein beliebiges Intervall und t0 62 Œa; b. Dann ist das modifizierte Tschebyscheff-Polynom Tn .x.t // TOn .t / WD Tn .x.t0 //
ta mit x.t / WD 2 ba 1
218
7 Interpolation und Approximation
minimal bzgl. der Maximumnorm kf k1 D max t2Œa;b jf .t /j unter den Polynomen Pn 2 P n mit Pn .t0 / D 1. Beweis. Da alle Nullstellen von Tn .x.t // in Œa; b liegen, ist c WD Tn .x.t0 // ¤ 0 und TOn wohldefiniert. Ferner ist TOn .t0 / D 1 und jTOn .t /j jcj1 für alle t 2 Œa; b. Nehmen wir an, es gebe ein Polynom Pn 2 P n , so dass Pn .t0 / D 1 und jPn .t /j < jcj1 für alle t 2 Œa; b. Dann ist t0 eine Nullstelle der Differenz TOn Pn , d. h. TOn .t / Pn .t / D Qn1 .t /.t t0 /
für ein Polynom Qn1 2 P n1 .
Wie im Beweis von Satz 7.19 hat Qn1 an den Tschebyscheff-Abszissen tk D t .xN k / wechselndes Vorzeichen für k D 0; : : : ; n und daher mindestens n verschiedene Null stellen in Œa; b. Dies steht im Widerspruch zu 0 ¤ Qn1 2 P n1 .
7.2
Trigonometrische Interpolation
In diesem Abschnitt wollen wir periodische Funktionen durch trigonometrische Polynome, d. h. Linearkombinationen von trigonometrischen Funktionen, interpolieren. Diese Klasse gehört neben den Polynomen zu den wichtigsten für die Interpolation, nicht zuletzt, weil es einen äußerst effektiven Algorithmus zur Lösung der Interpolationsaufgabe, die sogenannte schnelle Fourier-Transformation, gibt. Wir haben bereits in Beispiel 6.20 den Algorithmus von Goertzel und Reinsch zur Auswertung eines trigonometrischen Polynoms fn .t / D
n n X a0 X C .aj cos jt C bj sin jt / D cj e ijt 2 j D1
j Dn
kennengelernt. Wir definieren zunächst die N -dimensionalen Räume trigonometrischer Polynome sowohl im Reellen wie auch im Komplexen. Im reellen Fall ist dabei stets eine Fallunterscheidung für gerade bzw. ungerade N notwendig. Daher werden wir die folgenden Überlegungen meist im Komplexen durchführen. Definition 7.22. Mit T N C bezeichnen wir den N -dimensionalen Raum der komplexen trigonometrischen Polynome N .t / D
N 1 X
cj e ijt
mit cj 2 C
j D0
vom Grad N 1. Die N -dimensionalen Räume T N R enthalten alle reellen trigonometrischen Polynome N .t / der Form a0 X C .aj cos jt C bj sin jt / 2 n
2nC1 .t / D
j D1
(7.16)
219
7.2 Trigonometrische Interpolation
für ungerade N D 2n C 1 bzw. a0 X an C cos nt .aj cos jt C bj sin jt / C 2 2 n1
2n .t / D
(7.17)
j D1
für gerade N D 2n, wobei aj ; bj 2 R. Die lineare Unabhängigkeit der jeweiligen Basisfunktionen fe ijt g bzw. f1; cos jt; sin jt g garantiert uns wie bei der Polynominterpolation, dass es zu N Stützpunkten .tj ; fj / mit j D 0; : : : ; N 1 genau ein interpolierendes trigonometrischen Polynom N N 2 T N C bzw. N 2 T R gibt, so dass N .tj / D fj
für j D 0; : : : ; N 1.
Dabei sind die Stützwerte fj natürlich im einen Fall komplex und im anderen reell. Für äquidistante Knoten tj D 2j=N;
j D 0; : : : ; N 1;
auf die wir uns hier beschränken, führen wir die N -ten Einheitswurzeln !j WD e itj D e 2 ij=N ein. Damit erhalten wir für die Koeffizienten cj der komplexen trigonometrischen Interpolierenden N 2 T N C das Vandermonde-System 2 1 6 6 :: 6: 4 1 „
30 1 0 1 f0 : : : !0N 1 c0 7B C B C :: 7 B :: C B :: C 7B : C D B : C: : 5@ A @ A 2 N 1 : : : ! c f !N 1 !N N 1 N 1 1 N 1 ƒ‚ … DW VN 1
!0 :: :
!02 :: :
Liegt die P Lösung einer reellen Interpolationsaufgabe, fk 2 R, in komplexer Form 1 cj e ijt vor, so können wir daraus leicht die reellen Koeffizienten aj N .t / D jND0 und bj des reellen trigonometrischen Polynoms berechnen. Lemma 7.23. Ist das .komplexe/ trigonometrische Polynom N .t / D
N 1 X
cj e ijt
j D0
reell, d. h. N .t / 2 R für alle t , so gilt N 2 TRN mit den Koeffizienten aj D 2
und
bj D 2=cj D i.cj cN j /
220
7 Interpolation und Approximation
Beweis. Wir werten das Polynom an den N äquidistanten Knoten tk aus. Wegen e 2 i.N j /=N D e 2 ij=N , gilt N .tk / D
N 1 X
cj e ijtk D N .tk / D
j D0
N 1 X
cNj e ijtk D
j D0
N 1 X
cNN j e ijtk :
j D0
Aus der eindeutigen Interpolationseigenschaft folgt demnach cj D cNN j . Insbesondere ist c0 reell und für gerade N D 2n auch cn . Für ungerade N D 2n C 1 erhalten wir N .tk / D c0 C D c0 C
2n X j D1 n X
cj e ijtk D c0 C
n X
cj e ijtk C cNj e ijtk
j D1
2<.cj e
ijtk
/ D c0 C
j D1
n X
.2
j D1
also wegen der Eindeutigkeit der reellen trigonometrischen Interpolation aj D 2
Im vorliegenden Fall lässt sich die Vandermonde-Matrix VN 1 leicht analytisch invertieren. Wir zeigen dazu zunächst die Orthonormalität der Basisfunktionen ijt bezüglich des durch die äquidistanten Knoten t gegebenen diskreten j .t / WD e j Skalarproduktes N 1 1 X hf; gi WD f .tj /g.tj /: (7.18) N j D0
Lemma 7.24. Für die N -ten Einheitswurzeln !j WD e 2 ij=N gilt N 1 X
!jk !jl D N ıkl :
j D0
Insbesondere sind die Funktionen j .t / D e ijt bezüglich des in .7:18/ definierten Skalarproduktes orthonormal, d. h. h k ; l i D ıkl . Beweis. Die Aussage ist offensichtlich äquivalent zu N 1 X j D0
j
!k D N ı0k :
221
7.2 Trigonometrische Interpolation j
(Man beachte, dass !jk D !k .) Nun sind die N -ten Einheitswurzeln !k Lösungen der Gleichung 0D!
N
1 D .! 1/.!
N 1
C!
N 2
C C 1/ D .! 1/
N 1 X
!j :
j D0
Falls k ¤ 0, so ist !k ¤ 1 und daher P 1 j P 1 weise jND0 !0 D jND0 1 D N.
PN 1 j D0
j
!k D 0. Im anderen Fall gilt trivialer
Mit Hilfe dieser Orthogonalitätsbeziehung können wir die Lösung der Interpolationsaufgabe leicht angeben. Satz 7.25. Die Koeffizienten cj der trigonometrischen Interpolierenden zu den N Stützpunkten .tk ; fk / mit äquidistanten Knoten tk D 2k=N , d. h. N .tk / D
N 1 X
cj e ijtk D
N 1 X
j D0
sind gegeben durch cj D
j
cj !k D fk
für k D 0; : : : ; N 1;
j D0
N 1 1 X j fk !k N
für j D 0; : : : ; N 1.
kD0
Beweis. Wir setzen die angegebene Lösung für die Koeffizienten cj ein und erhalten N 1 X j D0
j
cj !l D
N 1 X j D0
1 D N
N 1
1 X j j fk !k !l N kD0
N 1 X kD0
fk
N 1 X
j j !k !l
j D0
N 1 1 X D fk ıkl N D fl : N
kD0
Bemerkung 7.26. Für ungerade N D 2nC1 können wir mit cj WD cN j für j > 0 das trigonometrische Interpolationspolynom in symmetrische Form umschreiben: 'N 1 .tk / D
N 1 X
cj e ijtk D
j D0
n X
cj e ijtk :
j Dn
In dieser Form ähnelt es stark der abgebrochenen Fourier-Reihe fn .t / D
n X j Dn
fO.j /e ijt
222
7 Interpolation und Approximation
einer 2-periodischen Funktion f 2 L2 .R/ mit den Koeffizienten 1 fO.j / D .f; e ijt / D 2
Z
2
f .t /e ijt dt:
(7.19)
0
Tatsächlich lassen sich die Koeffizienten cj als die Approximation des Integrals in (7.19) durch die Trapezsumme (vgl. Kapitel 9.2) bzgl. der Stützstellen tk D 2k=N auffassen. Setzen wir diese Approximation Z
N 1 2 X g.tk / N
2
g.t / dt 0
(7.20)
kD0
in (7.19) ein, dann ergibt sich genau N 1 N 1 1 X 2 ij k=N 1 X fk e ijtk D e fk D cj : fO.j / N N kD0
(7.21)
kD0
Man beachte, dass die Formel (7.20) für trigonometrische Polynome g 2 T N C sogar N exakt ist und daher für f 2 T C in (7.21) ebenfalls Gleichheit gilt. Aus diesem Grunde nennt man den Isomorphismus FN W C N ! C N ;
.fj / 7! .cj /
mit cj D
N 1 1 X fk e 2 ij k=N N
für j D 0; : : : ; N 1
kD0
auch diskrete Fourier-Transformation. Die Umkehrabbildung FN1 ist gerade fj D
N 1 X
ck e 2 ij k=N
für j D 0; : : : ; N 1.
kD0
Bei der Berechnung der Koeffizienten cj aus den Werten fj (oder umgekehrt) handelt es sich im Prinzip um eine Matrix-Vektor-Multiplikation, für die wir einen Aufwand von O.N 2 / Operationen erwarten. Tatsächlich gibt es aber einen Algorithmus, der mit O.N log2 N / Operationen auskommt, die sogenannte schnelle FourierTransformation, kurz FFT (engl.: Fast Fourier-Transform). Sie basiert auf der getrennten Analyse der Ausdrücke für die Koeffizienten cj für ungerade bzw. gerade Indices j (engl.: odd even reduction). Dadurch ist es möglich, das ursprüngliche Problem in zwei gleichartige Teilprobleme halber Dimension zu transformieren.
223
7.2 Trigonometrische Interpolation
Lemma 7.27. Sei N D 2M gerade und ! D e ˙2 i=N . Dann lassen sich die trigonometrischen Summen ˛j D
N 1 X
fk ! kj
für j D 0; : : : ; N 1
kD0
wie folgt berechnen, wobei WD ! 2 und l D 0; : : : ; M 1: ˛2l D
M 1 X
gk kl
mit gk D fk C fkCM ;
hk kl
mit hk D .fk fkCM /! k ,
kD0
˛2lC1 D
M 1 X kD0
d. h., die Berechnung der ˛j kann zurückgeführt werden auf zwei gleichartige Probleme der halben Dimension M D N=2. Beweis. Für den geraden Fall j D 2l folgt wegen ! N l D 1, dass ˛2l D
N 1 X
fk ! 2kl D
kD0
D
M 1 X
N=21 X
fk ! 2kl C fkCN=2 ! 2.kCN=2/l
kD0
.fk C fkCM /.! 2 /kl :
kD0
Analog erhalten wir für ungerade Indices j D 2l C 1 wegen ! N=2 D 1 ˛2lC1 D
N 1 X kD0
D
M 1 X
fk ! k.2lC1/ D
N=21 X
fk ! k.2lC1/ C fkCN=2 ! .kCN=2/.2lC1/
kD0
.fk fkCM /! k .! 2 /kl :
kD0
Das Lemma lässt sich sowohl auf die diskrete Fourier-Analyse .fk / 7! .cj / als auch auf die Synthese .cj / 7! .fk / anwenden. Ist die Anzahl N der gegebenen Punkte eine Zweierpotenz N D 2p , p 2 N, so können wir den Prozess iterieren. Dieser Algorithmus heißt auch häufig Algorithmus von J. W. Cooley und J. W. Tukey [97]. Die Rechnung lässt sich im Wesentlichen auf einem einzigen Vektor durchführen, wenn die jeweils benutzten Zahlenpaare überschrieben werden. In Algorithmus 7.28 überschreiben wir einfach die Eingabewerte f0 ; : : : ; fN 1 . Dabei wird jedoch die Reihenfolge durch die Trennung von geraden und ungeraden Indices in jedem Reduktionsschritt vertauscht. In Tabelle 7.2 haben wir diese Permutation der Indices
224
7 Interpolation und Approximation
illustriert. Wir erhalten die richtigen Indices, indem wir die Reihenfolge der Bits in der Dualdarstellung der Indices umdrehen. k
dual
1.Reduktion
2.Reduktion
dual
0
000
0
0
000
1
001
2
4
100
2
010
4
2
010
3
011
6
6
110
4
100
1
1
001
5
101
3
5
101
6
110
5
3
011
7
111
7
7
111
Tabelle 7.2. Vertauschen der Indices bei der schnellen Fourier-Transformation für N D 8, d. h. p D 3
Daher definieren wir eine Permutation , W f0; : : : ; N 1g ! f0; : : : ; N 1g; p1 X j D0
j
aj 2 7!
p1 X
ap1j 2j ;
aj 2 f0; 1g;
j D0
die diese Operation zur Verfügung stellt und die wir auf einem Rechner durch entsprechende Bitmanipulationen billig realisieren können. Algorithmus 7.28. Schnelle Fourier-Transformation. Der Algorithmus berechnet für den Eingabewerten f0 ; : : : ; fN 1 die transformierten N D 2p und ! D e ˙2 i=N ausP 1 kj Werte ˛0 ; : : : ; ˛N 1 mit ˛j D N kD0 fk ! . Nred WD N ; z WD !; while Nred > 1 do Mred WD Nred =2; for j WD 0 to N=Nred do l WD jNred ; for k WD 0 to Mred 1 do a WD flCk C flCkCMred ; flCkCMred WD .flCk flCkCMred /z k ;
225
7.3 Bézier-Technik
flCk WD a; end for end for Nred WD Mred ; z WD z 2 ; end while for k WD 0 to N 1 do ˛.k/ WD fk end for Pro Reduktionsschritt benötigen wir 2 2p D 2N Multiplikationen, wobei die Auswertung der Exponentialfunktion mit einer Multiplikation zählt (rekursive Berechnung von cos jx, sin jx). Nach p D log2 N Schritten sind sämtliche ˛0 ; : : : ; ˛N 1 mit einem Aufwand von 2N log2 N Multiplikationen berechnet.
7.3
Bézier-Technik
Die bisher in diesem Kapitel vorgestellten Themen gehören zum klassischen Teil der Numerischen Mathematik, wie schon die auftretenden Namen – Lagrange und Newton – verraten. Mit der zunehmenden Bedeutung des Computer-gestützten Konstruierens sind in jüngerer Zeit (d. h. in den letzten dreißig Jahren) in der Interpolations- und Approximationstheorie neue Wege beschritten worden, die wir in diesem Abschnitt kurz anreißen wollen. Interessanterweise gewinnen dabei geometrische Aspekte eine entscheidende Bedeutung. Eine Kurve oder Fläche muss so in einem Rechner dargestellt werden, dass sie schnell zu zeichnen und zu manipulieren ist. Um dies zu erreichen, benutzt man Parametrisierungen der geometrischen Objekte, deren kennzeichnende Größen geometrische Bedeutung besitzen. Wir können in dieser Einführung diese Überlegungen nur in den einfachsten Situationen veranschaulichen. Insbesondere beschränken wir uns auf polynomiale Kurven, d. h. eindimensionale geometrische Objekte. Wer sich näher mit diesem Gebiet beschäftigen möchte, dem seien das Buch von C. de Boor [16] und der neuere Text von G. Farin [33] empfohlen. Wir beginnen mit einer Verallgemeinerung reellwertiger Polynome. Definition 7.29. Ein Polynom (oder eine polynomiale Kurve) vom Grad n in Rd ist eine Funktion P der Form d
P WR!R ;
P .t / D
n X
ai t i
mit a0 ; : : : ; an 2 Rd ; an ¤ 0:
iD0
Den Raum der Polynome vom Grad kleiner oder gleich n in Rd bezeichnen wir mit P dn .
226
7 Interpolation und Approximation
Die für uns interessantesten Fälle sind Kurven im Raum (d D 3) oder in der Ebene (d D 2). Ist fP0 ; : : : ; Pn g eine Basis von P n und fe1 ; : : : ; ed g die Standardbasis des Rd , so bilden die Polynome fei Pj W i D 1; : : : ; d und j D 0; : : : ; ng eine Basis von P dn . Den Graphen P eines Polynoms P 2 P dn P W R ! Rd C1 ;
t 7! .t; P .t //;
können wir jetzt wieder als ein Polynom P 2 P dn C1 auffassen. Falls P in Koeffizientendarstellung P .t / D a0 C a1 t C C an t n vorliegt, so ist 1
0 P .t / D @
0 a0
7.3.1
0
AC@
1 1
At C @
a1
1
0 0
1
0
A t2 C C @
0
A t n:
an
a2
Bernstein-Polynome und Bézier-Darstellung
Bisher haben wir drei verschiedene Basen des Raumes Pn der Polynome vom Grad kleiner oder gleich n kennengelernt: a) Monomiale Basis f1; t; t 2 ; : : : ; t n g, b) Lagrange-Basis fL0 .t /; : : : ; Ln .t /g, c) Newton-Basis f!0 .t /; : : : ; !n .t /g. Die beiden letztgenannten Basen sind bereits auf die Interpolation ausgerichtet und hängen von den Knoten t0 ; : : : ; tn ab. Die Basispolynome, die wir jetzt vorstellen wollen, beziehen sich auf zwei Parameter a; b 2 R. Sie sind daher hervorragend geeignet für die lokale Darstellung eines Polynoms. Wir bezeichnen im Folgenden mit Œa; b auch für a > b das abgeschlossene Intervall zwischen den beiden Punkten a und b, d. h. (vgl. Definition 7.37) Œa; b WD fx D a C .1 /b W 2 Œ0; 1g: Der erste Schritt besteht in der affinen Transformation auf das Einheitsintervall Œ0; 1, Œa; b ! Œ0; 1; t 7! D .t / WD
t a ; ba
(7.22)
227
7.3 Bézier-Technik
mit deren Hilfe wir unsere Überlegungen meistens auf Œ0; 1 beschränken können. Nach dem binomischen Lehrsatz können wir die Einsfunktion darstellen als ! n X n n .1 /ni i : 1 D ..1 / C / D i iD0
Die Summanden dieser Zerlegung der Eins sind genau die Bernstein-Polynome bzgl. des Intervalls Œ0; 1. Komponieren wir diese mit obiger affiner Transformation (7.22), so erhalten wir die Bernstein-Polynome bzgl. der Parameter a; b. Definition 7.30. Das i -te Bernstein-Polynom vom Grad n bezüglich des Intervalls Œ0; 1 ist das Polynom Bin 2 P n mit ! n Bin ./ WD .1 /ni i ; i wobei i D 0; : : : ; n. Analog ist Bin . I a; b/ 2 P n mit Bin .t I a; b/
WD
Bin ..t //
D
Bin
t a ba
! n 1 .t a/i .b t /ni D .b a/n i
das i-te Bernstein-Polynom vom Grad n bezüglich des Intervalls Œa; b. Anstelle von Bin .t I a; b/ schreiben wir im Folgenden häufig einfach Bin .t /, wenn eine Verwechslung mit den Bernstein-Polynomen Bin ./ bzgl. Œ0; 1 ausgeschlossen ist. In dem folgenden Satz stellen wir die wichtigsten Eigenschaften der BernsteinPolynome zusammen. Satz 7.31. Für die Bernstein-Polynome Bin ./ gilt: 1. D 0 ist i-fache Nullstelle von Bin . 2. D 1 ist .n i /-fache Nullstelle von Bin . n .1 / für i D 0; : : : ; n (Symmetrie). 3. Bin ./ D Bni nC1 . 4. .1 /B0n D B0nC1 und Bnn D BnC1
5. Die Bernstein-Polynome Bin sind nicht negativ auf Œ0; 1 und bilden eine Partition der Eins, d. h. Bin ./ 0 für 2 Œ0; 1
und
n X
Bin ./ D 1 für 2 R:
iD0
6. Bin hat im Intervall Œ0; 1 genau ein Maximum, und zwar bei D i=n.
228
7 Interpolation und Approximation
1 0.9
B04
0.8
B44
0.7 0.6
B14
0.5
B34
B24
0.4 0.3 0.2 0.1 0
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Abbildung 7.4. Bernstein-Polynome für n D 4
7. Die Bernstein-Polynome genügen der Rekursionsformel n1 Bin ./ D Bi1 ./ C .1 /Bin1 ./
(7.23)
für i D 1; : : : ; n und 2 R. 8. Die Bernstein-Polynome bilden eine Basis B WD fB0n ; : : : ; Bnn g von P n . Beweis. Die ersten fünf Aussagen sind offensichtlich oder lassen sich leicht nachrechnen. Die Aussage 6. folgt aus der Tatsache, dass ! d n n B ./ D .1 /ni 1 i1 .i n/ d i r für i D 1; : : : ; n. Die Rekursionsformel (7.23) folgt aus der Definition und der Formel ! ! ! n n1 n1 D C i i 1 i für die Binomialkoeffizienten. Für die letzte Aussage zeigen wir, dass die n C 1 Polynome Bin linear unabhängig sind. Denn falls 0D
n X iD0
bi Bin ./;
229
7.3 Bézier-Technik
so gilt wegen 1. und 2., dass 0D
n X
bi Bin .1/ D bn Bnn .1/ D bn
i D0
und daher induktiv b0 D D bn D 0.
Analoge Aussagen gelten natürlich auch für die Bernstein-Polynome bezüglich des Intervalls Œa; b. Das Maximum von Bin .t I a; b/ in Œa; b liegt hier bei t DaC
i .b a/: n
Bemerkung 7.32. Die Eigenschaft, dass die Bernstein-Polynome eine Partition der Eins bilden, ist äquivalent zu der Tatsache, dass die Bézier-Punkte affin invariant sind. Falls W Rd ! Rd eine affine Abbildung ist, W Rd ! Rd
mit A 2 Matd .R/ und v 2 Rd ;
u 7! Au C v; so sind die Bilder .bi / der Bézier-Punkte bi eines Polynoms P 2 P dn die BézierPunkte von ı P . Wir wissen nun, dass wir jedes Polynom P 2 P dn bzgl. der Bernstein-Basis schreiben können als Linearkombination P .t / D
n X
bi Bin .t I a; b/;
bi 2 Rd :
(7.24)
i D0 n Bemerkung 7.33. Aus der Symmetrie Bin ./ D Bni .1 / der Bernstein-Polynome folgt insbesondere, dass n X i D0
bi Bin .t I a; b/ D
n X
bni Bin .t I b; a/;
iD0
d. h., die Bézier-Koeffizienten bezüglich b; a sind gerade die von a; b in umgekehrter Reihenfolge. Die Koeffizienten b0 ; : : : ; bn heißen Kontroll- oder Bézier-Punkte von P , der durch sie bestimmte Streckenzug Bézier-Polygon. So sind z. B. die Bézier-Punkte des Polynoms P .t / D t wegen D
n n X X i n i Bi ./ H) t D a C .b a/ Bin .t I a; b/ n n i D0
iD0
230
7 Interpolation und Approximation
gerade die Maxima bi D a C ni .b a/ der Bernstein-Polynome. Die Bézier-Darstellung des Graphen P eines Polynoms P wie in (7.24) ist daher gerade 0 1 n X a C ni .b a/ @ A Bin .t I a; b/: AD P .t / D @ bi P .t / iD0 0
1
t
(7.25)
In Abbildung 7.5 haben wir den Graphen eines kubischen Polynoms zusammen mit
b1 .
b3 P .t /
.
b0 .
b2 Abbildung 7.5. Kubisches Polynom mit seinen Bézier-Punkten
seinem Bézier-Polygon gezeichnet. Es fällt auf, dass die Form der Kurve eng mit der des Bézier-Polygons verknüpft ist. Dieser geometrischen Bedeutung der BézierPunkte wollen wir im Folgenden näher auf den Grund gehen. Zunächst ist nach Satz 7.31 klar, dass die Anfangs- und Endpunkte der polynomialen Kurve und des BézierPolygons zusammenfallen. Ferner scheinen auch die Tangenten in den Randpunkten mit den Randstrecken des Bézier-Polygons übereinzustimmen. Um diese Eigenschaft zu überprüfen, berechnen wir die Ableitungen eines Polynoms in Bézier-Darstellung. Wir beschränken uns dabei auf die Ableitungen für die Bézier-Darstellung bezüglich des Einheitsintervalls Œ0; 1. Zusammen mit der Ableitung der Affintransformation .t / von Œa; b auf Œ0; 1, 1 d .t / D ; dt ba gewinnt man daraus natürlich sofort die Ableitungen im allgemeinen Fall. Lemma 7.34. Für die Ableitung der Bernstein-Polynome Bin ./ bzgl. Œ0; 1 gilt 8 n1 ˆ <nB0 d n n1 B ./ D n.Bi1 ./ Bin1 .// ˆ d i : n1 nBn1 ./
für i D 0, für i D 1; : : : ; n 1, für i D n.
231
7.3 Bézier-Technik
Beweis. Die Behauptung ergibt sich aus ! d n n Bi ./ D i.1 /ni i1 .n i/.1 /ni 1 i d i
unter Ausnutzung der Identitäten von Satz 7.31.
P Satz 7.35. Sei P ./ D niD0 bi Bin ./ ein Polynom in Bézier-Darstellung bzgl. Œ0; 1. Dann gilt für die k-te Ableitung von P P
.k/
nk X nŠ ./ D k bi Bink ./; .n k/Š iD0
wobei der Vorwärtsdifferenzenoperator auf dem unteren Index operiert, d. h. 1 bi WD bi C1 bi
und
k bi WD k1 biC1 k1 bi für k > 1.
Beweis. Induktion über k, siehe Aufgabe 7.6. Korollar 7.36. Für die Randpunkte D 0; 1 erhält man die Werte P .k/ .0/ D
nŠ k b0 .n k/Š
und
P .k/ .1/ D
nŠ k bnk ; .n k/Š
also speziell bis zur zweiten Ableitung a) P .0/ D b0 und P .1/ D bn , b) P 0 .0/ D n.b1 b0 / und P 0 .1/ D n.bn bn1 /, c) P 00 .0/ D n.n 1/.b2 2b1 C b0 / und P 00 .1/ D n.n 1/.bn 2bn1 C bn2 /. Beweis. Man beachte, dass Bink .0/ D ı0;i und Bink .1/ D ınk;i .
Folgerung 7.36 bestätigt also tatsächlich unsere oben beschriebenen geometrischen Beobachtungen. Wichtig ist dabei, dass die Kurve in einem Randpunkt bis zur k-ten Ableitung durch die k nächstliegenden Bézier-Punkte bestimmt ist. Diese Eigenschaft wird uns unten bei der Verheftung mehrerer Kurvenstücke entscheidende Hilfestellung leisten. Die Bézier-Punkte besitzen aber noch darüber hinausgehende geometrische Bedeutung. Um diese zu beschreiben, benötigen wir den Begriff der konvexen Hülle einer Menge A Rd , den wir hier kurz wiederholen. Definition 7.37. Eine Menge A Rd heißt konvex, falls mit je zwei Punkten x; y 2 A auch deren Verbindungsstrecke ganz in A liegt, d. h. ˚ Œx; y WD x C .1 /y W 2 Œ0; 1 A für alle x; y 2 A.
232
7 Interpolation und Approximation
Die konvexe Hülle co.A/ einer Menge A Rd ist die kleinste konvexe Teilmenge von Rd , die A enthält. Eine Linearkombination der Form xD
k X
i xi ;
d
mit xi 2 R ; i 0 und
i D1
k X
i D 1
iD1
heißt Konvexkombination der x1 ; : : : ; xk . Bemerkung 7.38. Die konvexe Hülle co.A/ von A Rd ist die Menge aller Konvexkombinationen von Punkten aus A, d. h. \ co.A/ D fB Rd W B konvex mit A Bg n
D xD
m X
i xi W m 2 N; xi 2 A; i 0;
i D1
m X
o i D 1 :
iD1
Der folgende Satz sagt nun gerade, dass eine polynomiale Kurve stets in der konvexen Hülle ihrer Bézier-Punkte liegt. Satz 7.39. P .Œa; b/ eines Polynoms P 2 P dn in Bernstein-Darstellung PnDas Bild P .t / D i D0 bi Bin .t I a; b/ bzgl. Œa; b liegt in der konvexen Hülle der Bézier-Punkte bi , d. h. P .t / 2 co.b0 ; : : : ; bn / für t 2 Œa; b. Insbesondere liegt der Graph des Polynoms für t 2 Œa; b in der konvexen Hülle der Punkte bi . Beweis. Die Bernstein-Polynome bildenPauf Œa; b eine nicht negative Zerlegung der 1, d. h. Bin .t I a; b/ 0 für t 2 Œa; b und niD0 Bin .t / D 1. Daher ist P .t / D
n X
bi Bin .t I a; b/
iD0
eine Konvexkombination der Bézier-Punkte b0 ; : : : ; bn . Die zweite Aussage folgt aus der Bézier-Darstellung (7.25) des Graphen P von P . Anschaulich bedeutet dies für ein kubisches Polynom P 2 P 3 wie bereits in Abbildung 7.5 zu sehen ist, dass der Graph von P für t 2 Œa; b ganz in der konvexen Hülle der vier Bézier-Punkte b1 , b2 , b3 und b4 liegt. Der Name Kontrollpunkt erklärt sich nun dadurch, dass sich die Punkte bi aufgrund ihrer geometrischen Bedeutung gut zur Steuerung einer polynomialen Kurve eignen. Der Kontrollpunkt bi hat wegen Satz 7.31 gerade an der Stelle D i=n das größte „Gewicht“ Bin ./, über der er aufgetragen wird. Dies ist ein weiterer Grund dafür, dass die Kurve zwischen a und b eng mit dem Bézier-Polygon zusammenhängt, wie dies die Zeichnung andeutet.
233
7.3 Bézier-Technik
7.3.2
Algorithmus von de Casteljau
Die Bedeutung der Bézier-Darstellung beruht neben der geometrischen Interpretation der Bézier-Punkte vor allem darauf, dass es einen auf fortgesetzter Konvexkombination beruhenden Algorithmus gibt, der neben dem Funktionswert P .t / an einer beliebigen Stelle t auch noch Informationen über die Ableitungen liefert. Darüber hinaus kann derselbe Algorithmus benutzt werden, um die Bézier-Kurve in zwei Teilsegmente zu unterteilen. Wiederholt man diese Unterteilung in Teilsegmente, so konvergiert die Folge der Bézier-Polygone extrem schnell (bei Halbierung des Intervalls exponentiell) gegen die Kurve, so dass sich dieses Verfahren sehr gut eignet, um eine Kurve, z. B. in der Computergraphik, effektiv zu zeichnen. Dieses Konstruktionsprinzip ist auch maßgeschneidert für die Steuerung einer Fräse, die ja nur Material „wegnehmen“ kann. Wir beginnen mit der Definition der sogenannten Teilpolynome von P . Pn n Definition 7.40. Sei P ./ D iD0 bi Bi ./ ein Polynom in Bézier-Darstellung bzgl. Œ0; 1. Dann definieren wir die Teilpolynome bik 2 P dk von P für i D 0; : : : ; nk durch k iCk X X k k bi ./ WD biCj Bj ./ D bj Bjki ./: j D0
j Di
Pn
Für ein Polynom P .t / D i D0 bi Bin .t I a; b/ in Bézier-Darstellung bzgl. Œa; b sind die Teilpolynome bik analog erklärt durch bik .t I a; b/ WD bik ..t // D
k X
biCj Bjk .t I a; b/:
j D0
Das Teilpolynom bik 2 P dk ist also gerade das durch die Bézier-Punkte bi ; : : : ; biCk definierte Polynom (siehe Abbildung 7.6). Wenn keine Verwechslung möglich ist, erlauben wir uns, für bik .t I a; b/ auch einfach bik .t / zu schreiben. Insbesondere ist b0n .t / D P .t / das Ausgangspolynom und bi0 .t / D bi seine Bézier-Punkte für alle t 2 R. Ferner gilt für die Randpunkte, dass bik .a/ D bi
und
bik .b/ D biCk :
In Analogie zum Lemma von Aitken gilt folgende Rekursionsformel, welche die Grundlage des Algorithmus von de Casteljau bildet. P Lemma 7.41. Die Teilpolynome bik .t / von P .t / D niD0 bi Bin .t I a; b/ genügen der Rekursion t a k1 mit D .t / D bik D .1 /bik1 C biC1 ba für k D 0; : : : ; n und i D 0; : : : ; n k.
234
7 Interpolation und Approximation b11 .t / b1
b2 .
.
b12 .t /
b02 .t /
b03 .t /
b01 .t /
b21 .t /
.
.
b3
b0
Abbildung 7.6. Kubisches Polynom mit seinen Teilpolynomen
Beweis. Wir setzen die Rekursionsformel (7.23) in die Definition der Teilpolynome bik ein und erhalten bik D
k X
bi Cj Bjk D bi B0k C biCk Bkk C
j D0
k1 X
biCj Bjk
j D1 .k1/
D bi .1 /B0
k1 C biCk Bk1 C
k1 X
.1 /Bjk1 C Bjk1 1
j D1
D
k1 X
bi Cj .1 /Bjk1 C
j D0
D .1
k X
Bjk1 1
j D1
/bik1
C
k1 biC1 :
Da bi0 .t / D bi können wir den Funktionswert P .t / D b0n .t / durch fortgesetzte Konvexkombination (für t 62 Œa; b ist es nur eine Affinkombination) aus den BézierPunkten bi berechnen. Die Hilfspunkte bik können wir analog zum Schema von Neville in dem sogenannten Schema von de Casteljau anordnen: bn
D bn0 &
bn1 D :: :
0 bn1
b1
D b10
b0
D
1 ! bn1
::
:
! ! b1n1 &
b00
! !
& b0n1
! b0n
235
7.3 Bézier-Technik
Tatsächlich verbergen sich hinter den Hilfspunkten bik des de-Casteljau-Schemas auch die Ableitungen von P , wie der folgende Satz zeigt. Dabei betrachten wir wieder nur die Bézier-Darstellung bezüglich des Einheitsintervalls Œ0; 1. P Satz 7.42. Sei P ./ D niD0 bi Bin ./ ein Polynom in Bézier-Darstellung bzgl. Œ0; 1. Dann lassen sich die Ableitungen P .k/ ./ für k D 0; : : : ; n aus den Teilpolynomen bik ./ gemäß nŠ P .k/ ./ D k b0nk ./ .n k/Š berechnen, wobei bik D bikC1 bik . Beweis. Die Behauptung folgt aus Satz 7.35 und der Tatsache, dass wir den Vorwärtsdifferenzenoperator mit der Summe vertauschen dürfen: P .k/ ./ D
nk nk X X nŠ nŠ k k bi Bink ./ D bi Bink ./ .n k/Š .n k/Š i D0
iD0
nŠ D k b0nk ./: .n k/Š
Die k-te Ableitung P .k/ ./ an der Stelle berechnet sich also aus der .n k/-ten Spalte des de-Casteljau-Schemas. Insbesondere gilt P .t / D b0n ; P 0 .t / D n.b1n1 b0n1 /; 00
P .t / D n.n
1/.b2n2
(7.26) 2b1n2
C
b0n2 /:
Bislang haben wir nur die Bézier-Darstellung eines einzelnen Polynoms bezüglich eines festen Bezugsintervalls betrachtet. Offen bleibt dabei die Frage, wie sich die Bézier-Punkte transformieren, wenn wir das Bezugsintervall wechseln (siehe Abbildung 7.7). Auch wäre es interessant zu wissen, wie wir mehrere polynomiale Kurvenstücke stetig oder glatt aneinanderfügen können (siehe Abbildung 7.8). Schließlich ist uns an einer Möglichkeit gelegen, Kurven zu unterteilen, in dem Sinn, dass wir das Bezugsintervall zerlegen und die Bézier-Punkte für die Teilintervalle berechnen (siehe Abbildung 7.9). Da die Kurve nach Satz 7.39 in der konvexen Hülle der Bézier-Punkte liegt, ist klar, dass sich die Bézier-Polygone bei zunehmend feinerer Unterteilung der Kurve mehr und mehr annähern. Wie bereits in den Abbildungen sichtbar wird, sind diese drei Fragestellungen eng miteinander verknüpft. Wir werden sehen, dass sie sich im Kontext der Bézier-Technik leicht lösen lassen. Die verbindenden Elemente sind die Teilpolynome. Wir haben bereits in Folgerung 7.36 gesehen, dass eine BézierKurve P in einem Randpunkt bis zur k-ten Ableitung durch die k nächstliegenden Bézier-Punkte bestimmt ist. Es gilt auch die Umkehrung: Die Werte von P bis zur
236
7 Interpolation und Approximation
b1 .
+
a1
a2
b2 .
+ +
a3
. +
b0 D a0
b3
Abbildung 7.7. Kubisches Polynom mit zwei Bézier-Darstellungen a2 .
c2 .
a1
.
.
a3 D c0
.
c1 a0
.
c3
.
Abbildung 7.8. Zwei kubische Bézier-Kurven mit C 1 -Übergang bei a3 D c0
k-ten Ableitung an der Stelle D 0 legen bereits die Bézier-Punkte b0 ; : : : ; bk fest. Genauer gilt dies sogar für die Teilpolynome b00 ./; : : : ; b0k ./, wie wir im folgenden Lemma beweisen. Lemma 7.43. Das Teilpolynom b0k ./ einer Bézier-Kurve P ./ D b0n ./ D
n X
bi Bin ./
iD0
ist durch die Werte von P bis einschließlich der k-ten Ableitung an der Stelle D 0 vollständig bestimmt. Beweis. Nach Satz 7.42 gilt für die Ableitungen an der Stelle D 0 dl k kŠ .n l/Š kŠ d l n l b .0/ D b D b .0/ 0 0 .k l/Š .k l/Š nŠ d l 0 d l für l D 0; : : : ; k. Da ein Polynom durch alle Ableitungen an einer Stelle vollständig bestimmt ist, folgt die Behauptung.
237
7.3 Bézier-Technik
b1
b2 a2
a3 D c0
+
a1
+
c1 +
c2
+ +
c3 D b3 a0 D b0
+
+
Abbildung 7.9. Unterteilung einer kubischen Bézier-Kurve
Zusammen mit Folgerung 7.36 erhalten wir folgenden Satz. Satz 7.44. Seien P .t / D a0n .t I a; b/ und Q.t / D b0n .t I a; c/ zwei Bézier-Kurven bezüglich a; b bzw. a; c. Dann sind die folgenden Aussagen äquivalent: (i) P .t / und Q.t / stimmen an der Stelle t D a bis zur k-ten Ableitung überein, d. h. P .l/ .a/ D Q.l/ .a/ für l D 0; : : : ; k. (ii) a0k .t I a; b/ D b0k .t I a; c/ für alle t 2 R. (iii) a0l .t I a; b/ D b0l .t I a; c/ für alle t 2 R und l D 0; : : : ; k. (iv) al D b0l .bI a; c/ für l D 0; : : : ; k. Beweis. Wir zeigen (i) , (ii) ) (iii) ) (iv) ) (ii). Nach Folgerung 7.36 und Lemma 7.43 stimmen die beiden Kurven P .t / und Q.t / genau dann an der Stelle t D a bis zur k-ten Ableitung überein, wenn sie dieselben Teilpolynome a0k .t I a; b/ D b0k .t I a; c/ besitzen. Daher sind die beiden ersten Aussagen äquivalent. Stimmen a0k und b0k überein, so auch ihre Teilpolynome a0l und b0l für l D 0; : : : ; k, d. h., aus (ii) folgt (iii). Setzen wir in (iii) t D b ein, so folgt speziell al D a0l .1/ D a0l .bI a; b/ D b0l .bI a; c/; also (iv). Da ein Polynom durch seine Bézier-Koeffizienten eindeutig bestimmt ist, folgt aus (iv) aber auch (ii) und damit die Äquivalenz der vier Aussagen. Mit diesem Resultat können wir unsere drei Fragen leicht beantworten. Als erste Folgerung berechnen wir die Bézier-Punkte, die bei der Unterteilung des Bezugsintervalls entstehen. Dies beantwortet gleichzeitig die Frage nach der Änderung des Bezugsintervalls.
238
7 Interpolation und Approximation
Korollar 7.45. Seien a0n .t I a; b/ D b0n .t I a; c/ D c0n .t I b; c/ die Bézier-Darstellungen einer polynomialen Kurve P .t / bezüglich der Intervalle Œa; b, Œa; c und Œb; c, d. h. P .t / D
n X
ai Bin .t I a; b/ D
i D0
n X
bi Bin .t I a; c/ D
iD0
n X
ci Bin .t I b; c/
iD0
.siehe Abbildung 7:9/. Dann lassen sich die Bézier-Koeffizienten ai und ci der Teilkurven aus den Bézier-Koeffizienten bi bezüglich des Gesamtintervalls berechnen gemäß ak D b0k .bI a; c/ und
ck D bknk .bI a; c/
für k D 0; : : : ; n. Beweis. Da ein Polynom vom Grad n durch seine Ableitungen an einem Punkt vollständig bestimmt wird, folgt die Aussage aus Satz 7.44 für k D n und der Symmetrie der Bézier-Darstellung, siehe Bemerkung 7.33. Da die Kurvenstücke jeweils in der konvexen Hülle ihrer Bézier-Punkte liegen, konvergieren die zugehörigen Bézier-Polynome bei fortgesetzte Unterteilung gegen die Kurve. Die Auswertung eines Polynoms mit Hilfe dieses Verfahrens ist äußerst stabil, da im Algorithmus von de Casteljau nur Konvexkombinationen berechnet werden. In Abbildung 7.10 haben wir das Bezugsintervall einer Bézier-Kurve vom Grad 4 jeweils halbiert und die Bézier-Polygone der ersten drei Unterteilungen eingezeichnet. Bereits nach wenigen Unterteilungen ist die Kurve kaum noch von dem Polygonzug zu unterscheiden. b1 b2
b0 b4
b3
Abbildung 7.10. Dreimalige Unterteilung einer Bézier-Kurve vom Grad n D 4
239
7.3 Bézier-Technik
Nutzen wir tatsächlich aus, dass nur die Ableitungen an einer Stelle übereinstimmen müssen, so können wir auch das Problem der stetigen Verheftung zweier polynomialer Kurven lösen: Korollar 7.46. Eine zusammengesetzte Bézier-Kurve ´ an .t I a; b/; falls a t < b, R.t / D n0 c0 .t I b; c/; falls b t c, ist genau dann C k -stetig, falls l .cI a; b/ für l D 0; : : : ; k cl D anl
oder äquivalent anl D cl0 .aI b; c/ für l D 0; : : : ; k. Durch die C k -Stetigkeit sind also die ersten k C 1 Bézier-Punkte der zweiten Teilkurve durch die letzten k C 1 Bézier-Punkte der ersten bestimmt und umgekehrt. Eine Polynom a0n .t I a; b/ über Œa; b lässt sich daher C k -stetig durch ein Polynom c0n .t I b; c/ über Œb; c fortsetzen, indem die Bézier-Punkte c0 ; : : : ; ck gemäß Folgerung 7.45 mit Hilfe des Algorithmus von de Casteljau bestimmt werden, während die übrigen ckC1 ; : : : ; cn frei wählbar sind. Speziell ist die zusammengesetzte Kurve R.t / genau dann stetig, wenn an D c0 : Sie ist genau dann stetig differenzierbar, wenn zusätzlich 1 1 .cI a; b/ D an1 ./ D .1 /an1 C an c1 D an1
mit D
ca ba
oder äquivalent an1 D c01 .aI b; c/ D c01 ./ D .1 /c0 C c1
mit D
Daraus folgt, dass
ab . cb
cb ba an1 C c1 ; (7.27) ca ca d. h., der Punkt an D c0 muss die Strecke Œan1 ; c1 im Verhältnis c b zu b a teilen. Fügen sich die Kurvenstücke C 2 -stetig aneinander, so beschreiben an2 , an1 und an dieselbe Parabel wie c0 , c1 und c2 , und zwar bezüglich Œa; b bzw. Œb; c. Nach Folgerung 7.46 sind die Bézier-Punkte dieser Parabel bezüglich des gesamten Intervalls Œa; c gerade an2 , d und c2 , wobei d der Hilfspunkt an D c0 D
1 1 .cI a; b/ D an2 ./ D c11 .aI b; c/ D c11 ./ d WD an2
240
7 Interpolation und Approximation
d a2 +.
a1 +.
+.
a3 D c0
+. +.
c1
+.
a0
c2
+
c3
Abbildung 7.11. Zwei kubische Bézier-Kurven mit C 2 -Übergang bei a3 D c0
ist (siehe Abbildung 7.11). Ferner folgt aus der C 2 -Stetigkeit nach der Folgerung 7.46, dass 2 1 1 ./ D .1 / an2 ./ C an1 ./ c2 D an2 „ ƒ‚ … „ ƒ‚ … D c1 Dd und an2 D c02 ./ D .1 / c01 ./ C c11 ./ : „ƒ‚… „ƒ‚… D b2 Dd Die zusammengesetzte Kurve ist daher genau dann C 2 -stetig, falls es einen Punkt d gibt, so dass c2 D .1 /d C c1
und
an2 D .1 /an1 C d:
Der Hilfspunkt d , der sogenannte de-Boor-Punkt, wird im nächsten Abschnitt bei der Konstruktion kubischer Splines eine wichtige Rolle spielen.
7.4
Splines
Wie wir gesehen haben, ist die klassische Polynominterpolation ungeeignet, das Approximationsproblem bei einer großen Anzahl von äquidistanten Knoten zu lösen. Polynome hohen Grades neigen zu starken Oszillationen, wie die Skizzen der LagrangePolynome verdeutlichen (siehe Abbildung 7.2). Sie verderben so evtl. nicht nur die Kondition (kleine Änderungen der Stützwerte fi bewirken große Änderungen des Interpolationspolynoms P .t / an Zwischenstellen t ¤ ti ), sondern führen auch zu starken Schwingungen der interpolierenden Kurve zwischen den Stützstellen. Wie man sich vorstellen kann, sind derartige Schwingungen höchst unerwünscht. Man denke nur an die dadurch verursachten Vibrationen einer Flugzeugtragfläche, die nach einer solchen Interpolationskurve geformt würde. Verlangen wir, dass eine interpolierende
241
7.4 Splines
Kurve „möglichst glatt“ durch gegebene Stützpunkte .ti ; fi / verläuft, so liegt es näher, lokal Polynome niedrigen Grades zu verwenden und diese an den Stützpunkten miteinander zu verheften. Als erste Möglichkeit haben wir in Beispiel 7.7 die kubische Hermite-Interpolation kennengelernt, die allerdings an die spezielle Vorgabe von Funktionswerten und Ableitungen an den Knoten gebunden war. Eine zweite Möglichkeit sind die sogenannten Spline-Funktionen, mit denen wir uns in diesem Kapitel beschäftigen werden.
7.4.1
Splineräume und B-Splines
Wir beginnen mit der Definition der Splines der Ordnung k über einem Gitter D ft0 ; : : : ; tlC1 g von Knoten. Diese Funktionen haben sich als ein äußerst vielseitiges Hilfsmittel erwiesen, von der Interpolation und Approximation über die Modellierung im CAGD bis hin zu Kollokations- und Galerkin-Verfahren für Differentialgleichungen. Definition 7.47. Sei D ft0 ; : : : ; tlC1 g ein Gitter von l C2 paarweise verschiedenen Knoten a D t0 < t1 < < tlC1 D b: Ein Spline vom Grad k1 (Ordnung k) bezüglich ist eine Funktion s 2 C k2 Œa; b, die auf jedem Intervall Œti ; ti C1 für i D 0; : : : ; l mit einem Polynom si 2 P k1 vom Grad k 1 übereinstimmt. Den Raum der Splines vom Grad k 1 bzgl. bezeichnen wir mit S k; . Die wichtigsten Splinefunktionen sind die linearen Splines der Ordnung k D 2 (siehe Abbildung 7.12) und die kubischen Splines der Ordnung k D 4 (siehe Abbildung 7.13). Die linearen Splines sind gerade die stetigen, bezüglich der Inter. .
s0
s1
.
s3
s2
.
.
+
a D t0
+
t1
+
t2
+
t3
+
t4 D b
Abbildung 7.12. Linearer Spline, Ordnung k D 2
valle Œti ; ti C1 stückweise linearen Funktionen. Die kubischen Splines eignen sich bestens zur graphischen Darstellung von Kurven, da das Auge Unstetigkeiten in der
242
7 Interpolation und Approximation
s1 s0
s2 s3
+
a D t0
+
t1
+
t2
+
t3
+
t4 D b
Abbildung 7.13. Kubischer Spline, Ordnung k D 4
Krümmung, also der zweiten Ableitung, noch erkennen kann. Damit werden die C 2 stetigen kubischen Splines als „glatt“ wahrgenommen. Es ist offensichtlich, dass S k; ein reeller Vektorraum ist, der insbesondere alle Polynome vom Grad k1 enthält, d. h. P k1 S k; . Ferner sind die sogenannten abgebrochenen Potenzen vom Grad k ´ .t ti /k ; falls t ti , k .t ti /C WD 0; falls t < ti , in S k; enthalten. Zusammen mit den Monomen 1; t; : : : ; t k1 bilden sie eine Basis von S k; , wie wir im folgenden Satz zeigen: Satz 7.48. Die Monome und abgebrochenen Potenzen bilden eine Basis k1 B WD ¹1; t; : : : ; t k1 ; .t t1 /k1 C ; : : : ; .t tl /C º
(7.28)
des Splineraumes S k; . Insbesondere gilt für die Dimension von S k; , dass dim S k; D k C l: Beweis. Wir zeigen zunächst, dass man zur Konstruktion eines Splines s 2 S k; höchstens k C l Freiheitsgrade hat. Auf dem Intervall Œt0 ; t1 können wir jedes Polynom vom Grad k 1 wählen; dies sind gerade k freie Parameter. Aufgrund der Glattheitsforderung s 2 C k2 sind die Polynome auf den folgenden Intervallen Œt1 ; t2 ; : : : ; Œtl ; tlC1 bis auf einen Parameter durch ihren Vorgänger bestimmt, so dass noch l Parameter hinzukommen. Daher ist dim S k; k C l. Es bleibt zu zeigen, dass die k C l Funktionen in B linear unabhängig sind. Sei dazu s.t / WD
k1 X i D0
ai t i C
l X iD1
ci .t ti /k1 D0 C
für alle t 2 Œa; b.
243
7.4 Splines
Wenden wir die linearen Funktionale Gi .f / WD
.k1/ C 1 f .ti / f .k1/ .ti / .k 1/Š
auf s an (wobei f .t C / und f .t / die rechts- bzw. linksseitigen Grenzwerte bezeichnen), so folgt für alle i D 1; : : : ; l 0 D Gi .s/ D Gi „ Also gilt s.t / D ak1 D 0.
Pk1 i D0
k1 X
aj t
j D0
ƒ‚ D0
j
C
l X j D1
…
cj Gi .t tj /k1 D ci : „ ƒ‚ C … Dıij
ai t i D 0 für alle t 2 Œa; b und daher auch a0 D D
Die in (7.28) angegebene Basis B von S k; hat jedoch mehrere Nachteile. Zum einen sind die Basiselemente nicht lokal; der Träger der Monome t i ist z. B. ganz R. Zweitens sind die abgebrochenen Potenzen für dicht beieinanderliegende Knoten ti ; ti C1 „fast“ linear abhängig. Dies führt dazu, dass die Auswertung eines Splines in der Darstellung k1 l X X i s.t / D ai t C ci .t ti /k1 C i D0
iD1
schlechtkonditioniert ist bezüglich Störungen in den Koeffizienten ci . Drittens haben die Koeffizienten ai und ci keine geometrische Bedeutung wie beispielsweise die Bézier-Punkte bi . Wir wollen daher im Folgenden eine Basis für den Splineraum S k; konstruieren, die ähnlich gute Eigenschaften hat wie die Bernstein-Basis für P k . Dazu definieren wir rekursiv folgende Verallgemeinerung der charakteristischen Funktion Œi ;iC1 Œ eines Intervalls und der „Hutfunktion“ (siehe Abbildung 7.14). Definition 7.49. Sei 1 n eine beliebige Folge von Knoten. Dann sind die B-Splines Nik .t / der Ordnung k für k D 1; : : : ; n und i D 1; : : : ; n k rekursiv erklärt durch ´ 1; falls i t < iC1 , Ni1 .t / WD Œi ;iC1 Œ .t / D (7.29) 0; sonst, t i iCk t Nik .t / WD Ni;k1 .t / C NiC1;k1 .t /: (7.30) i Ck1 i iCk iC1 Man beachte, dass die charakteristische Funktion in (7.29) für zusammenfallende Knoten verschwindet, d. h. Ni1 D Œi ;iC1 Œ D 0
falls i D iC1 .
244
7 Interpolation und Approximation
Ni1 .
+
i
Ni2
Ni3
o
+
i C1
+
i
+
+
i C1 i C2
i
+
+
i C1
+
+
i C2 i C3
Abbildung 7.14. B-Splines der Ordnung k D 1; 2; 3
Die entsprechenden Terme fallen nach unserer Konvention 0=0 D 0 in der Rekursionsformel (7.30) weg. Daher sind die B-Splines Nik durch (7.29) und (7.30) auch für zusammenfallende Knoten wohldefiniert, und es gilt Nik D 0, falls i D iCk . Aufgrund der rekursiven Definition sind ferner folgende Eigenschaften offensichtlich. Bemerkung 7.50. Für die oben definierten B-Splines gilt: a) supp Nik Œi ; : : : ; i Ck (lokaler Träger), b) Nik .t / 0 für alle t 2 R (nicht negativ), c) Nik ist ein stückweises Polynom vom Grad k 1 bezüglich der Intervalle Œj ; j C1 . Um weitere Eigenschaften ableiten zu können, ist es günstig, die B-Splines geschlossen darzustellen. Tatsächlich lassen sie sich als Anwendung einer k-ten dividierten Differenz Œi ; : : : ; i Ck auf die abgebrochene Potenz f .s/ D .s t /k1 C schreiben. Lemma 7.51. Falls i < i Ck , so gilt für den B-Spline Nik , dass Nik .t / D .iCk i /Œi ; : : : ; iCk . t /k1 C : Beweis. Für k D 1 erhalten wir für die rechte Seite .i t /0C .iC1 t /0C .i C1 i /Œi ; i C1 . t /k1 D .iC1 i / C i iC1 ´ 1; falls i t < iC1 , D 0; sonst.
245
7.4 Splines
Ferner rechnet man mit Hilfe der Leibniz-Formel (Lemma 7.15) leicht nach, dass die rechte Seite auch der Rekursion (7.30) genügt. Zusammen folgt daraus induktiv die Behauptung. Korollar 7.52. Ist j ein m-facher Knoten, d. h. j 1 < j D D j Cm1 < j Cm ; so ist Nik an der Stelle j mindestens .k 1 m/-mal stetig differenzierbar. Für die Ableitung von Nik gilt Ni;k1 .t / NiCk;k1 .t / 0 : Nik .t / D .k 1/ iCk1 i iCk iC1 Beweis. Die erste Behauptung folgt aus der Tatsache, dass die dividierte Differenz Œi ; : : : ; i Ck f höchstens die .m 1/-te Ableitung der Funktion f an der Stelle j beinhaltet. Die abgebrochene Potenz f .s/ D .s j /k1 ist aber .k 2/-mal stetig C differenzierbar. Die zweite Behauptung folgt aus 0 .t / D .k 1/.i Ck i /Œi ; : : : ; iCk . t /k2 Nik C
D .k 1/.i Ck i / k2 Œi C1 ; : : : ; iCk . t /k2 C Œi ; : : : ; iCk1 . t /C iCk i Ni;k1 .t / NiC1;k1 .t / : D .k 1/ i Ck1 i iCk iC1
!
Wir kehren nun zurück zu dem Raum S k; der Splines der Ordnung k bezüglich des Gitters D ¹tj ºj D0;:::;lC1 : W a D t0 < t1 < < tlC1 D b: Zur Konstruktion der gesuchten Basis ordnen wir die folgende erweiterte Knotenfolge T D ¹j ºj D1;:::;nCk zu, bei der die Randknoten a D t0 und b D tlC1 gerade k-fach gezählt werden: W
a D t0 < k
t1 k
< < tlC1 D b k
T W 1 D D k < kC1 < < nC1 D D nCk : Dabei ist n D l C k D dim S k; gerade die Dimension des Splineraumes S k; . Wir werden im Folgenden sehen, dass die zu der erweiterten Knotenfolge T D ¹j º
246
7 Interpolation und Approximation
N33
N13
N43
N23
+
+
1
2
+
3
N53 N63
+
+
4
5
Abbildung 7.15. B-Spline-Basis der Ordnung k D 3 (lokal quadratisch)
gehörenden n B-Splines Nik für i D 1; : : : ; n die gewünschte Basis von S k; bilden (siehe Abbildung 7.15). Zunächst ist nach Korollar 7.52 klar, dass die B-Splines Nik auch wirklich Splines der Ordnung k sind, d. h. Nik 2 S k;
für alle i D 1; : : : ; n:
Da die Anzahl n mit der Dimension n D dim S k; übereinstimmt, bleibt nur, ihre lineare Unabhängigkeit zu zeigen. Dazu benötigen wir folgende recht technische Aussage, die auch als Marsden-Identität bekannt ist. Lemma 7.53. Mit den obigen Bezeichnungen gilt für alle t 2 Œa; b und s 2 R, dass .t s/k1 D
n X
'ik .s/Nik .t / mit 'ik .s/ WD
i D1
k1 Y
.iCj s/:
j D1
Beweis. Aufgrund der rekursiven Definition der B-Splines empfiehlt P sich ein Beweis per Induktion über k. Für k D 1 ist die Behauptung wegen 1 D niD1 Ni1 .t / klar. Sei also k > 1 und die Aussage für alle l k 1 bereits bewiesen. Einsetzen der Rekursion (7.30) auf der rechten Seite ergibt n n X X t i iCk1 t 'ik .s/Nik .t / D 'ik .s/ C 'i1;k .s/ Ni;k1 .t / i Ck1 i iCk1 i i D1
i D2
n k2 X Y D .iCj s/ i D2 j D1
t i iCk1 t .iCk1 s/ C .i s/ Ni;k1 .t / i iCk1 i „ i Ck1 ƒ‚ … Dt s n X D .t s/ 'i;k1 .s/Ni;k1 .t /
i D2
D .t s/.t s/k2 D .t s/k1 :
247
7.4 Splines
Dabei beachte man, dass der „unterklammerte“ Ausdruck gerade die lineare Interpolation von t s ist, also t s selbst. Korollar 7.54. Der Raum P k1 Œa; b der Polynome vom Grad k 1 auf Œa; b ist in dem von den B-Splines k-ter Ordnung aufgespannten Raum enthalten, d. h. P k1 Œa; b span.N1k ; : : : ; Nnk /: Insbesondere gilt 1D
n X
Nik .t / für alle t 2 Œa; b,
i D1
d. h., die B-Splines bilden eine Zerlegung der Eins auf Œa; b. Beweis. Aus der Marsden-Identität folgt für die l-te Ableitung der Funktion f .s/ WD .t s/k1 , dass f
.l/
l kl1
.0/ D .k 1/ .k l/.1/ t
D
n X
.l/
'ik .0/Nik .t /
iD1
und daher mit m D k l 1 X .km1/ .1/km1 'ik .0/Nik .t /: .k 1/ .m C 1/ n
tm D
iD1
Für die .k 1/-te Ableitung von ik gilt k1 ik .s/ D
k1 Y
k1
.i Cj s/
k1 D .1/k1 s k1 C D .1/k1 .k 1/Š
j D1
und daher folgt auch die zweite Behauptung.
Nach diesen Vorbereitungen können wir die lineare Unabhängigkeit der B-Splines beweisen. Sie sind sogar lokal unabhängig, wie der folgende Satz zeigt. Satz 7.55. Die B-Splines Nik sind lokal linear unabhängig, d. h., falls n X
ci Nik .t / D 0
für alle t 2 c; d Œ Œa; b
i D1
und c; d Œ \ i ; i Ck Œ ¤ ;, so gilt ci D 0:
248
7 Interpolation und Approximation
Beweis. Ohne Einschränkung enthalte das offene Intervall c; d Œ keine Knoten (sonst zerlegen wir c; d Œ in Teilintervalle). Nach Folgerung 7.54 lässt sich jedes Polynom vom Grad k 1 auf c; d Œ durch die B-Splines Nik darstellen. Auf dem Intervall c; d Œ sind aber nur k D dim P k1 B-Splines von Null verschieden. Diese müssen demnach linear unabhängig sein. Fassen wir das Erreichte noch einmal kurz zusammen: Die B-Splines Nik der Ordnung k bzgl. der Knotenfolge T D ¹j º bilden eine Basis B WD ¹N1k ; : : : ; Nnk º des Splineraumes S k; . Sie sind lokal linear unabhängig, besitzen lokale Träger und bilden eine positive Zerlegung der Eins. Jeder Spline s 2 S k; besitzt daher eine eindeutige Darstellung als Linearkombination sD
n X
di Nik :
iD1
Die Koeffizienten di heißen de-Boor-Punkte von s. Die Funktionswerte s.t / sind somit Konvexkombinationen der de-Boor-Punkte di . Zur Auswertung können wir die rekursive Definition der B-Splines Nik nutzen und damit auch die in Aufgabe 7.9 angegebene Rekursionsformel für die Linearkombinationen selbst, den sogenannten Algorithmus von de Boor, herleiten. Bemerkung 7.56. Mit Hilfe der Marsden-Identität kann man die Dualbasis B 0 D ¹1 ; : : : ; n º der B-Spline-Basis B, j W S k; ! R
linear mit j .Nik / D ıij ,
explizit angeben. Damit lässt sich zeigen, dass es eine nur von der Ordnung k abhängige Konstante Dk gibt, so dass Dk max jdj j k j D1;:::;n
n X j D1
dj Nj k k1 max jdj j; j D1;:::;n
wobei die zweite Ungleichung aus der Tatsache folgt, dass die B-Splines eine positive Zerlegung der Eins bilden. Störungen in den Funktionswerten s.t / des Splines s D Pn c N und der Koeffizienten lassen sich daher wechselseitig gegeneinander abi ik i D1 schätzen. Insbesondere ist die Auswertung eines Splines in B-Spline-Darstellung gutkonditioniert. Man spricht auch von einer gutkonditionierten Basis.
7.4.2
Splineinterpolation
Wir wenden uns nun wieder dem Problem zu, eine auf einem Gitter D¹t0 ; : : : ; tlC1 º, a D t0 < t1 < < tlC1 D b;
249
7.4 Splines
punktweise gegebene Funktion f zu interpolieren. Im linearen Fall k D 2 stimmt die Anzahl l C 2 der Knoten mit der Dimension des Splineraumes n D dim S 2; D l C k überein. Für die linearen B-Splines Ni2 bezüglich der erweiterten Knotenfolge T D ¹1 D 2 < < nC1 D nC2 º
mit j D tj 2 für j D 2; : : : ; n
gilt Ni2 .tj / D ıj C1;i . Der stückweise lineare interpolierende Spline I2 f 2 S 2; von f ist daher eindeutig bestimmt mit I2 f D
n X
f .ti1 /Ni2 :
iD1
Neben diesem sehr einfachen Fall der linearen Splineinterpolation spielt der Fall k D 4 der kubischen Splines in den Anwendungen die weitaus wichtigste Rolle. In diesem Fall fehlen uns zwei Bedingungen, um den interpolierenden kubischen Spline s 2 S i; eindeutig zu charakterisieren, da dim S 4; Anzahl der Knoten D l C k l 2 D 2: Nun waren wir bei der Konstruktion der Splinefunktionen von der Idee ausgegangen, möglichst „glatte“ interpolierende Kurven zu finden, wir könnten auch sagen, eine „möglichst wenig gekrümmte“. Die Krümmung einer parametrisierten Kurve (in der Ebene) y W Œa; b ! R; y 2 C 2 Œa; b an der Stelle t 2 Œa; b ist gegeben durch .t / WD
y 00 .t / : .1 C y 0 .t /2 /3=2
Der Betrag der Krümmung ist gerade der Reziprokwert 1=r des Radius r des Schmiegekreises an die Kurve im Punkt .t; y.t // (siehe Abbildung 7.16), d. h., die Krümy.t / D ln t o
r o
M
Abbildung 7.16. Schmiegekreis an die Kurve .t; y.t //
mung ist genau dann Null, wenn der Schmiegekreis den Radius 1 hat, die Kurve also
250
7 Interpolation und Approximation
gerade ist. Zur Vereinfachung betrachten wir anstelle der Krümmung die für kleine y 0 .t / vernünftige Näherung y 00 .t /, y 00 .t / y 00 .t /; .1 C y 0 .t /2 /3=2 und messen die Krümmung der gesamten Kurve mit Hilfe der L2 -Norm ky 00 k2 D
Z
b
y 00 .t /2 dt
! 12
a
dieser Näherung bezüglich Œa; b. Die interpolierenden kubischen Splines mit den Zusatzeigenschaften auf Folgerung 7.58 haben nun gerade die Eigenschaft, dieses Funktional zu minimieren. Satz 7.57. Es sei s ein interpolierender kubischer Spline von f an den Knoten a D t0 < < tlC1 D b und y 2 C 2 Œa; b eine beliebige interpolierende Funktion von f , so dass b s.t /00 .y.t /0 s.t /0 / tDa D 0: (7.31) Dann gilt ks 00 k2 ky 00 k2 :
(7.32)
Beweis. Trivialerweise gilt y 00 D s 00 C .y 00 s 00 / und eingesetzt in die rechte Seite von (7.32) folgt Z
b
.y 00 /2 dt D
Z
a
b a
.s 00 /2 dt C 2 „
Z
b a
Z b s 00 .y 00 s 00 / dt C .y 00 s 00 /2 dt ƒ‚ … „a ƒ‚ … 0
./
Z
b
.s 00 /2 dt;
a
falls der Term (*) verschwindet. Dies ist unter der Voraussetzung (7.31) der Fall. Denn mit partieller Integration folgt Z
b a
s 00 .y 00 s 00 / dt D Œs 00 .y 0 s 0 /ba
Z
b
s 000 .y 0 s 0 / dt;
a
wobei s 000 in der Regel unstetig in den Knoten t1 ; : : : ; tn1 ist und konstant s 000 .t / D si000 .t / D di
für t 2 .ti ; tiC1 /
251
7.4 Splines
im Inneren der Teilintervalle (die si sind kubische Polynome). Daher gilt unter der Voraussetzung (7.31) Z
b
00
00
00
s .y s / dt D a
n Z X
ti1
iD1
D
n X
Z
D
iD1
di .y 0 si0 / dt ti
di ti1
iD1 n X
ti
y 0 si0 dt
di Œ.y.ti / s.ti // .y.ti1 / s.ti1 // „ ƒ‚ … „ ƒ‚ … D0
D0
D 0:
Korollar 7.58. Fordern wir von dem kubischen Spline s 2 S 4; zusätzlich zu den Interpolationsbedingungen s.ti / D f .ti / eine der folgenden Randbedingungen (i) s 0 .a/ D f 0 .a/ und s 0 .b/ D f 0 .b/, (ii) s 00 .a/ D s 00 .b/ D 0, (iii) s 0 .a/ D s 0 .b/ und s 00 .a/ D s 00 .b/ .falls f periodisch mit Periode b a/, so existiert dazu genau eine Lösung s 2 S 4; . Für jede beliebige interpolierende Funktion y 2 C 2 Œa; b, die derselben Randbedingung genügt, gilt ferner ks 00 k2 ky 00 k2 : Beweis. Die Forderungen sind linear in s, und ihre Anzahl stimmt mit der Dimension n D l C 4 des Splineraumes S 4; überein. Daher genügt es zu zeigen, dass für die Nullfunktion f 0 der triviale Spline s 0 die einzige Lösung ist. Da y 0 alle Forderungen erfüllt, folgt aus Satz 7.57, dass ks 00 k2 ky 00 k2 D 0:
(7.33)
Da s 00 stetig ist, folgt daraus s 00 0, d. h., s ist eine stetig differenzierbare, stückweise lineare Funktion mit s.ti / D 0 und daher die Nullfunktion. Die drei Typen (i), (ii) und (iii) heißen vollständige, natürliche und periodische kubische Splineinterpolation. Der Name „Spline“ erklärt sich durch die physikalische Interpretation der obigen Minimaleigenschaft (7.33). Beschreibt y.t / die Lage einer dünnen Holzlatte, so misst Z
b
ED a
y 00 .t / .1 C y 0 .t /2 /3=2
2 dt
252
7 Interpolation und Approximation
die „Biegeenergie“ der Latte. Aufgrund des Hamiltonschen Prinzips stellt sich die Latte so ein, dass diese Energie minimiert wird. Für kleine Auslenkungen gilt näherungsweise Z b y 00 .t /2 dt D ky 00 k22 : E a
Daher beschreibt der interpolierende kubische Spline s 2 S 4; annähernd die Lage einer dünnen Holzlatte, die an den Knoten ti fixiert ist. Bei der vollständigen Splineinterpolation haben wir die Latte an den Randknoten unter zusätzlicher Vorgabe der Steigungen eingeklemmt. Die natürlichen Randbedingungen entsprechen der Situation, dass die Latte außerhalb des Intervalls Œa; b gerade ist. Derartige dünne Holzlatten wurden tatsächlich als Zeichenwerkzeug benutzt und tragen im Englischen den Namen „spline“. Da bei der vollständigen Splineinterpolation neben den Funktionswerten an den Knoten zwei weitere Informationen über die Ausgangsfunktion f eingehen, sind deren Approximationseigenschaften (besonders am Rand) besser als bei den übrigen Typen (ii) und (iii). Tatsächlich approximiert der vollständig interpolierende Spline I4 f 2 S 4; eine Funktion f 2 C 4 Œa; b mit der Ordnung h4 , wobei h WD max jtiC1 ti j iD0;:::;l
der größte Abstand der Knoten ti ist. Ohne Beweis geben wir dazu das folgende Resultat von C. A. Hall und W. W. Meyer [54] an. Satz 7.59. Sei I4 f 2 S 4; der vollständig interpolierende Spline einer Funktion f 2 C 4 Œa; b bezüglich der Knoten ti mit h WD maxi jtiC1 ti j. Dann gilt 5 4 .4/ h kf k1 : 384 Man beachte, dass diese Abschätzung unabhängig von der Lage der Knoten ti ist. kf I4 f k1
7.4.3
Berechnung kubischer Splines
Wir wollen im Folgenden ein Gleichungssystem für die kubischen interpolierenden Splines herleiten. Dazu beschreiben wir den Spline s 2 S 4; mit Hilfe der lokalen Bézier-Darstellung s.t / D si .t / D
3 X
b3i Cj Bj3 .t I ti ; tiC1 /
für t 2 Œti ; tiC1
j D0
der Teilpolynome si bezüglich der Intervalle Œti ; tiC1 , wobei t ti mit hi WD tiC1 ti : Bj3 .t I ti ; ti C1 / D Bj3 hi In die Darstellung (7.34) geht die Stetigkeit von s implizit ein.
(7.34)
253
7.4 Splines
Aus der C 1 -Stetigkeit folgt nach (7.27), dass b3i D
hi1 hi b3i 1 C b3i C1 : hi 1 C hi hi1 C hi
(7.35)
Ferner haben wir gezeigt, dass es aufgrund der C 2 -Stetigkeit von s de-Boor-Punkte di geben muss, so dass hi hi1 C hi di C b3i C1 ; hi1 hi1 hi1 hi1 C hi b3i 1 di : D hi hi
b3i C2 D b3i 2
Anschaulich bedeutet dies, dass durch die Bézier-Punkte b3i 1 bzw. b3i C1 die Strecke zwischen b3i 2 und di bzw. di und b3i C2 im Verhältnis hi1 W hi geteilt wird. Die Punkte di ; b3i C1 ; b3i C2 und di C1 müssen daher so liegen, wie in Abbildung 7.17 d0 D b1
+
b2
d1
+
b3
+
d4 D b9 +
b4
+
+
d1 D b0
b5
+
b6 +
d2
+
b7
+
d3 D b8
Abbildung 7.17. Kubischer Spline mit de-Boor-Punkten di und Bézier-Punkten bi
dargestellt. Zusammen folgt daraus hi1 hi C hiC1 di C diC1 ; hi 1 C hi C hiC1 hi1 C hi C hiC1 hi 2 C hi1 hi D di C di1 : hi 2 C hi 1 C hi hi2 C hi1 C hi
b3i C1 D b3i 1
Definieren wir am Rand h1 WD hlC1 WD 0 und d0 WD b1 ;
d1 WD b0 ;
dlC1 WD b3lC2
und
dlC2 WD b3.lC1/ ;
(7.36)
so sind die Bézier-Koeffizienten b3i Cj und damit auch der Spline s durch die l C 4 Punkte d1 bis dlC2 und die Gleichungen (7.35) bis (7.36) vollständig bestimmt. Setzen wir nun die Interpolationsbedingungen fi D s.ti / D b3i
für l D 0; : : : ; l C 1
254
7 Interpolation und Approximation
ein, so folgt am Rand d1 WD f0
und
dlC2 D flC1 :
Die übrigen Punkte d0 ; : : : ; dlC1 des interpolierenden Splines müssen folgendem Gleichungssystem genügen (Beweis zur Übung): 2
1
6 6 6 ˛1 ˇ1 6 6 :: 6 : 6 6 6 4
1 :: : ˛l
1 0 30 1 d b 0 1 C B 7B C :: C B 7B C B C 7 B : C B .h0 C h1 /f1 C B 7B C :: B 7 B :: C C :: D B 7B : C C : : C B 7B C B 7 B :: C C C ˇl l 7 .hl1 C hl /fl C : C B @ 5B A @ A 1 b3lC2 dlC1
mit ˛i WD
h2i ; hi 2 C hi1 C hi
ˇi WD
hi .hi 2 C hi1 / hi1 .hi C hiC1 / C ; hi 2 C hi1 C hi hi1 C hi C hiC1
i WD
h2i1 : hi 1 C hi C hiC1
Wir müssen nun nur noch die Bézier-Punkte b1 und b3lC2 aus den Randbedingungen bestimmen. Dabei behandeln wir nur die ersten beiden Typen. Für die vollständige Splineinterpolation ergibt sich aus f00 D s 0 .a/ D
3 .b1 b0 / h0
0 und flC1 D s 0 .b/ D
3 .b3.lC1/ b3lC2 /; hl
dass wir b1 D
h0 0 f C f0 3 0
und
b3lC2 D
hl 0 f C flC1 3 lC1
setzen müssen. Für die natürlichen Randbedingungen müssen wir b1 und b3lC2 so wählen, dass s 00 .a/ D s 00 .b/ D 0. Dies ist für b1 WD b0 D f0 erfüllt (siehe Abbildung 7.18).
und
b3lC2 WD b3.lC1/ D flC1
255
Übungsaufgaben d1 h1 b2
+
h0 b3
+ o
+
h0
b4
d3 D d4 D b8 D b9
h1
+ o
+ o
d1 D d0 D b0 D b1
b5
+
h2
+ o
+
b6
h2
b7
h1 d2
Abbildung 7.18. Kubischer interpolierender Spline mit natürlichen Randbedingungen
Bemerkung 7.60. Für äquidistante Gitter, d. h. hi D h für alle i , gilt ˛i D i D
h 3
und ˇi D
4h 3
für i D 2; : : : ; l 1.
In diesem Fall (und auch für annähernd äquidistante Gitter) ist die Matrix strikt diagonaldominant und kann daher mit Hilfe der Gauß-Elimination ohne Spaltentausch effizient und stabil gelöst werden. Bemerkung 7.61. Die de-Boor-Punkte di sind gerade die B-Spline-Koeffizienten des interpolierenden kubischen Splines, d. h., es gilt sD
lC4 X
di2 Ni4 ;
iD1
wenn Ni4 wie oben die B-Splines zu der erweiterten Knotenfolge T D ¹j º sind.
Übungsaufgaben Aufgabe 7.1. ƒn .K; I / bezeichne die Lebesguekonstante bezüglich der Knotenmenge K auf dem Intervall I . a) Seien K D ft0 ; : : : ; tn g I D Œa; b paarweise verschiedene Knoten. Die Affintransformation W I ! I0 D Œ1; 1;
t 7!
2t a b ba
256
7 Interpolation und Approximation
dieses Intervalls auf das Einheitsintervall I0 bilde die Knotenmenge K auf die Knotenmenge K0 D .K/ ab. Zeigen Sie, dass die Lebesguekonstante invariant unter dieser Transformation ist, d. h. ƒn .K; I / D ƒn .K0 ; I0 /: b) Seien K D ft0 ; : : : ; tn g mit a t0 < t1 < < tn b Knoten im Intervall I D Œa; b. Geben Sie die Affintransformation W Œt0 ; tn ! I auf I an, so dass für KN D .K/ D ftN0 ; : : : ; tNn g gilt a D tN0 < tN1 < < tNn D b: Zeigen Sie, dass
N I / ƒn .K; I /; ƒn .K;
d. h., die Einbeziehung der Randknoten verbessert die Lebesguekonstante. Aufgabe 7.2. Wir betrachten die Funktionenklasse ® ¯ F WD f 2 C nC1 Œ1; 1 W kf .nC1/ k1 .n C 1/Š : Für f 2 F bezeichne pn .f / das Polynom n-ten Grades der (Hermite-)Interpolation zu den Knoten K D ft0 ; : : : ; tn g I0 D Œ1; 1. a) Zeigen Sie, dass "n .K/ WD sup kf pn .f /k1 D k!nC1 k1 ; f 2F
wobei !nC1 .t / D .t t0 / .t tn /. b) Zeigen Sie, dass "n .K/ 2n und dass Gleichheit dann und nur dann gilt, wenn K die Menge der Tschebyscheff-Knoten ist, d. h. tj D cos
2j C 1 2n C 2
für j D 0; : : : ; n:
Aufgabe 7.3. Zählen Sie ab, wie viele Rechenoperationen und wie viel Speicherplatz ein ökonomisch geschriebenes Programm zur Auswertung von Interpolationspolynomen auf der Basis der Lagrange-Darstellung benötigt. Vergleichen Sie mit den Algorithmen von Aitken-Neville und der Darstellung über Newtonsche dividierte Differenzen. Aufgabe 7.4. Sei a D t0 < t1 < < tn1 < tn D b eine Knotenverteilung im Intervall I D Œa; b. Für eine stetige Funktion g 2 C.I / ist der interpolierende Linienzug g 2 C.I / definiert durch
257
Übungsaufgaben
a) g.ti / D g.ti / für i D 0; : : : ; n, ˇ b) g ˇŒt ;t ist Polynom ersten Grades für i D 0; : : : ; n 1. i
iC1
Zeigen Sie: a) Für jede Funktion g 2 C 2 .I / gilt kg gk1 wobei h D
h2 00 kg k1 ; 8
max .ti C1 ti / der „Gitterweitenparameter“ ist.
0in1
b) Für die absolute Kondition der Linienzuginterpolation gilt abs D 1: Diskutieren und bewerten Sie den Unterschied zur Polynominterpolation. Aufgabe 7.5. Zur Approximation der Ableitung einer punktweise gegebenen Funktion f verwendet man die erste dividierte Differenz .Dh f /.x/ WD Œx; x C hf: a) Schätzen Sie den Approximationsfehler jDh f .x/ f 0 .x/j für f 2 C 3 ab. (Führende Ordnung in h für h ! 0 reicht aus.) b) Statt Dh f .x/ berechnet die Gleitkommaarithmetik DO h f .x/. Schätze den Fehler jDO h f .x/ Dh f .x/j in führender Ordnung ab. c) Welches h stellt sich als optimal heraus, d. h. minimiert den Gesamtfehler? d) Testen Sie Ihre Vorhersage an f .x/ D e x an der Stelle x D 1 mit h D 101 ; 5 102 ; 102 ; : : : ; eps : Aufgabe 7.6. Zeigen Sie, dass die Ableitungen eines Polynoms in Bézier-Darstellung bzgl. des Intervalls Œt0 ; t1 P .t / D
n X i D0
bi Bin ./;
WD
t t0 ; t1 t0
gegeben sind durch nk X dk nŠ P .t / D k bi Bink ./; k k dt .n k/Šh iD0
h WD t1 t0 :
258
7 Interpolation und Approximation
Aufgabe 7.7. Geben Sie die Bézier-Darstellung bzgl. Œ0; 1 der Hermite-Polynome Hi3 für die Knoten t0 ; t1 an, und skizzieren Sie die Hermite-Polynome zusammen mit den Bézier-Polygonen. Aufgabe 7.8. Wir haben für den Raum P 3 der Polynome vom Grad 3 drei verschiedene Basen kennengelernt: die monomiale Basis f1; t; t 2 ; t 3 g, die BernsteinBasis fB03 .t /; B13 .t /; B23 .t /; B33 .t /g bzgl. des Intervalls Œ0; 1 und die Hermite-Basis fH03 .t /; H13 .t /; H23 .t /; H33 .t /g für die Knoten t0 ; t1 . Bestimmen Sie die Matrizen der Basiswechsel. P Aufgabe 7.9. Zeigen Sie, dass ein Spline s D niD1 di Nik in B-Spline-Darstellung bzgl. der Knoten fi g der folgenden Rekursion genügt: s.t / D
n X
dil .t /Ni;k1 .t /;
iDlC1
wobei die dil definiert sind durch di0 .t / WD di und 8 < t i d l1 .t / C iCkl t d l1 .t /; falls iCkl ¤ i , i l iCkl i i1 di .t / WD i Ckl i : 0; sonst, für l > 0. Zeigen Sie, dass s.t / D dik1 .t / für t 2 Œi ; iC1 Œ und leiten Sie daraus ein Schema zur Berechnung des Splines s.t / durch fortgesetzte Konvexkombination der Koeffizienten di ab (Algorithmus von de Boor).
8 Große symmetrische Gleichungssysteme und Eigenwertprobleme
Die bisher beschriebenen sogenannten direkten Verfahren zur Lösung eines linearen Gleichungssystems Ax D b (Gauß-Elimination, Cholesky-Zerlegung, QR-Zerlegung mit Householder- oder Givens-Transformationen) verbinden zwei Eigenschaften. a) Die Verfahren gehen von beliebigen (bei der Cholesky-Zerlegung symmetrischen) vollbesetzten Matrizen A 2 Matn .R/ aus. b) Der Aufwand zur Lösung des Gleichungssystems liegt bei O.n3 / (Multiplikationen). Diesen beiden Eigenschaften stehen jedoch in zahlreichen wichtigen Fällen Probleme Ax D b gegenüber, bei denen a) die Matrix A eine hohe Struktur besitzt (siehe unten) und die meisten Komponenten Null sind (d. h., A ist dünnbesetzt, engl.: sparse), b) die Dimension n des Problems sehr groß ist. So entstehen z. B. bei der Diskretisierung der Laplace-Gleichung in zwei Raumdimensionen sogenannte Block-Tridiagonalmatrizen, 2
A11 A12
3
7 6 7 6 A23 7 6 A21 A22 7 6 7 6 : : : :: :: :: AD6 7 7 6 7 6 6 Aq1;q2 Aq1;q1 Aq1;q 7 5 4 Aq;q1 Aqq
(8.1)
mit Aij 2 Matn=q .R/, die zusätzlich symmetrisch sind, d. h. Aij D AjTi . Die direkten Verfahren sind zur Behandlung derartiger Probleme ungeeignet; sie nutzen die spezielle Struktur nicht aus und dauern bei weitem zu lange. Es gibt im Wesentlichen zwei Ansätze, neue Lösungsmethoden zu entwickeln. Der erste besteht darin, die Spezialstruktur der Matrix, insbesondere ihre Besetzungsstruktur (engl.: sparsity pattern), so weit wie möglich in direkten Verfahren auszunutzen. Fragen dieser Art haben wir bereits beim Vergleich der Givens- und Householder-Transformationen diskutiert. Die
260
8 Große symmetrische Gleichungssysteme und Eigenwertprobleme
Givens-Rotationen operieren jeweils nur auf zwei Zeilen (von links) oder Spalten (von rechts) einer Matrix und sind daher geeignet, eine Besetzungsstruktur weitgehend zu erhalten. Die Householder-Transformationen dagegen sind dazu gänzlich ungeeignet. Sie zerstören bereits bei einem Schritt jedes Muster der Ausgangsmatrix, so dass der Algorithmus danach mit einer vollbesetzten Matrix weiterarbeiten muss. Im Allgemeinen am schonendsten geht die Gauß-Elimination mit der Besetzungsstruktur von Matrizen um. Sie ist deshalb die häufigste Ausgangsbasis zur Konstruktion von direkten Verfahren, die die Struktur der Matrix ausnutzen (engl.: direct sparse solver). Typischerweise wird dabei abwechselnd Spaltenpivotsuche mit evtl. Zeilentausch und Zeilenpivotsuche mit evtl. Spaltentausch ausgeführt, je nachdem, welche Strategie die meisten Nullelemente schont. Darüber hinaus wird die Pivotregel abgeschwächt (sogenannte bedingte Pivotsuche, engl.: conditional pivoting), um die Zahl zusätzlicher von Null verschiedener Elemente (sogenannte fill-in elements) klein zu halten. In den letzten Jahren haben sich die direkten Sparse-Löser zu einer hohen Kunst entwickelt. Ihre Beschreibung benötigt in der Regel den Rückgriff auf Graphen, welche die bestehenden Gleichungssysteme charakterisieren (siehe z. B. [44]). Im Zuge der vorliegenden Einführung eignet sich ihre Darstellung jedoch nicht. Der zweite Ansatz, große strukturreiche lineare Gleichungssysteme zu lösen, ist die Entwicklung iterativer Verfahren zur Approximation der Lösung x. Dies erscheint auch deshalb sinnvoll, weil wir in der Regel an der Lösung x nur bis auf eine vorgegebene Genauigkeit " interessiert sind, die von der Genauigkeit der Eingabedaten abhängt (vgl. die Beurteilung von Näherungslösungen in Kapitel 2.4.3). Entstand das lineare Gleichungssystem z. B. durch die Diskretisierung einer Differentialgleichung, so muss die Genauigkeit der Lösung des Gleichungssystems nur im Rahmen des ohnehin durch die Diskretisierung verursachten Fehlers liegen. Jede Mehrarbeit wäre Zeitverschwendung. In den folgenden Abschnitten wollen wir daher auf die gängigsten iterativen Verfahren zur Lösung großer linearer Gleichungssysteme und Eigenwertprobleme für symmetrische Matrizen eingehen. Ziel ist dabei stets die Konstruktion einer Iterationsvorschrift xkC1 D .x0 ; : : : ; xk /, so dass a) die Folge fxk g der Iterierten möglichst schnell gegen die Lösung x konvergiert, b) xkC1 mit möglichst geringem Aufwand aus x0 ; : : : ; xk berechnet werden kann. Bei der zweiten Forderung verlangt man meist, dass die Auswertung von nicht wesentlich mehr Aufwand erfordert als eine einfache Matrix-Vektor-Multiplikation .A; y/ 7! Ay. Erwähnenswert ist dabei, dass der Aufwand für dünnbesetzte Matrizen bei O.n/ und nicht bei O.n2 / (wie bei vollbesetzten Matrizen) liegt, da häufig die Anzahl der von Null verschiedenen Elemente in einer Zeile unabhängig von der Dimension n des Problems ist.
261
8.1 Klassische Iterationsverfahren
8.1
Klassische Iterationsverfahren
In Kapitel 4 haben wir nichtlineare Gleichungssysteme mit Hilfe von Fixpunktverfahren gelöst. Diese Idee liegt auch den meisten klassischen Iterationsverfahren zugrunde. Für ein Fixpunktverfahren xkC1 D .xk / zur Lösung eines linearen Gleichungssystems Ax D b werden wir eine Iterationsfunktion natürlich so konstruieren, dass sie genau einen Fixpunkt x besitzt und dieser gerade die exakte Lösung x D x von Ax D b ist. Am einfachsten erreichen wir das, indem wir die Gleichung Ax D b in eine Fixpunktgleichung umformen, Ax D b ” Q1 .b Ax/ D 0 ” .x/ WD .I Q1 A/ x C Q1 b D x; „ƒ‚… „ ƒ‚ … DW c DW G wobei Q 2 GL.n/ eine beliebige reguläre Matrix ist. Um ein vernünftiges Iterationsverfahren zu erhalten, müssen wir dafür Sorge tragen, dass das Fixpunktverfahren xkC1 D .xk / D Gxk C c konvergiert. Satz 8.1. Das Fixpunktverfahren xkC1 D Gxk C c mit G 2 Matn .R/ konvergiert genau dann für jeden Startwert x0 2 Rn , wenn
.G/ < 1; wobei .G/ D max jj .G/j der Spektralradius von G ist. j
Beweis. Wir beschränken uns wieder auf den einfachen Fall einer symmetrischen Matrix G D G T , den wir im Folgenden ausschließlich benötigen. Dann gibt es eine orthogonale Matrix Q 2 O.n/, so dass QGQT D ƒ D diag.1 ; : : : ; n / die Diagonalmatrix der Eigenwerte von G ist. Da ji j .G/ < 1 für alle i und D k D diag.k1 ; : : : ; kn /, gilt limk!1 D k D 0 und daher auch lim G k D lim QT D k Q D 0:
k!1
k!1
Da .G/ kGk für jede zugeordnete Matrixnorm, ist kGk < 1 hinreichend für
.G/ < 1. In diesem Fall können wir die Fehler xk x D G k .x0 x/ durch kxk xk kGkk kx0 xk abschätzen. Neben der Konvergenz verlangen wir, dass sich .y/ D Gy C c leicht berechnen lässt. Dazu muss die Matrix Q einfach zu invertieren sein. Die am besten zu
262
8 Große symmetrische Gleichungssysteme und Eigenwertprobleme
invertierende Matrix ist zweifellos die Identität Q D I . Das so entstehende Verfahren mit der Iterationsfunktion G D I A, xkC1 D xk Axk C b; ist das sogenannte Richardson-Verfahren. Gehen wir von einer spd-Matrix A aus, so ergibt sich für den Spektralradius von G gerade
.G/ D .I A/ D max fj1 max .A/j; j1 min .A/jg : Eine notwendige Bedingung für die Konvergenz der Richardson-Iteration ist daher max .A/ < 2. Für sich genommen ist diese Iteration demnach nur selten verwendbar. Wir werden jedoch unten Möglichkeiten besprechen, die Konvergenz zu verbessern. Die nächst komplizierteren Matrizen sind die Diagonalmatrizen, so dass als zweite Möglichkeit für Q die Diagonale D von A D L C D C R; in Frage kommt, wobei D D diag.a11 ; : : : ; ann / und 2
0 ::: ::: 6 6 : 6 a21 : : 6 L WD 6 : : 6 :: : : : : : 4 an1 : : : an;n1
3 0 7 :: 7 :7 7 :: 7 ; :7 5 0
2
0 6 6 :: 6: R WD 6 6 :: 6: 4
3 : : : a11 7 :: 7 :: : : 7 7: 7 :: : an1;n 7 5
a12 :: : :: :
0 ::: :::
0
Das zugehörige Verfahren xkC1 D .I D 1 A/xk C D 1 b D D 1 .L C R/xk C D 1 b heißt Jacobi-Verfahren. Eine hinreichende Bedingung für seine Konvergenz ist die strikte Diagonaldominanz von A. Satz 8.2. Die Jacobi-Iteration xkC1 D D 1 .L C R/xk C D 1 b konvergiert für jeden Startwert x0 gegen die Lösung x D A1 b, falls A strikt diagonaldominant ist, d. h. X jai i j > jaij j für alle i D 1; : : : ; n. i ¤j
Beweis. Die Aussage folgt aus Satz 8.1, da
.D 1 .L C R// kD 1 .L C R/k1 D max i
X aij j j: ai i
j ¤i
263
8.1 Klassische Iterationsverfahren
Nach den diagonalen haben sich die gestaffelten Gleichungssysteme im ersten Kapitel als einfach lösbar erwiesen. Für vollbesetzte untere oder obere Dreiecksmatrizen liegt der Aufwand bei O.n2 / pro Lösung, für dünnbesetzte häufig bei O.n/, d. h. in der von uns als akzeptabel angesehenen Größenordnung. Setzen wir für Q die untere Dreieckshälfte Q WD D C L an, so erhalten wir das Gauß-Seidel-Verfahren xkC1 D .I .D C L/1 A/xk C .D C L/1 b D .D C L/1 Rxk C .D C L/1 b: Es konvergiert für jede spd-Matrix A. Um dies nachzuweisen, leiten wir eine einfach zu überprüfende hinreichende Bedingung für die Kontraktionseigenschaft .G/ < 1 von G D I Q1 A her. Dazu beachten wir, dass jede spd-Matrix A ein Skalarprodukt .x; y/ WD hx; Ayi auf dem Rn induziert. Für jede Matrix B 2 Matn .R/ ist B WD A1 B T A die bezüglich dieses Skalarproduktes adjungierte Matrix, d. h. .Bx; y/ D .x; B y/
für alle x; y 2 Rn .
Eine selbstadjungierte Matrix B D B heißt dann positiv bezüglich .; /, falls .Bx; x/ > 0
für alle x ¤ 0.
Lemma 8.3. Sei G 2 Matn .R/ und G die bzgl. eines Skalarproduktes .; / adjungierte Matrix von G. Ist dann B WD I G G eine positive Matrix bzgl. .; /, so folgt
.G/ < 1. Beweis. Da B positiv ist, gilt für alle x ¤ 0 .Bx; x/ D .x; x/ .G Gx; x/ D .x; x/ .Gx; Gx/ > 0 p und daher mit der aus .; / abgeleiteten Norm kxk WD .x; x/, dass kxk > kGxk für alle x ¤ 0. Daraus folgt
.G/ kGk WD sup kGxk < 1; kxkD1
da das Supremum wegen der Kompaktheit der Kugeloberfläche für ein x0 mit kx0 k D 1 angenommen wird. Satz 8.4. Das Gauß-Seidel-Verfahren konvergiert für jede spd-Matrix A. Beweis. Wir müssen zeigen, dass B WD I G G mit G D I .D C L/1 A eine positive Matrix bzgl. .; / WD h; Ai ist. Nun ist wegen RT D L G D I A1 AT .D C L/T A D I .D C R/1 A
264
8 Große symmetrische Gleichungssysteme und Eigenwertprobleme
und daher B D I G G D .D C R/1 D.D C L/1 A:
(8.2)
Der Trick bei der letzten Umformung besteht darin, nach dem Ausmultiplizieren die Gleichung .D C M /1 D .D C M /1 .D C M /.D C M /1 für M D R; L einzusetzen und dann auszuklammern. Aus (8.2) folgt für alle x ¤ 0, dass .Bx; x/A D h.D C R/1 D.D C L/1 Ax; Axi D hD 1=2 .D C L/1 Ax; D 1=2 .D C L/1 Axi > 0;
d. h., B ist positiv und .G/ < 1.
Die Konvergenzgeschwindigkeit einer Fixpunktiteration xkC1 D Gxk C c hängt stark von dem Spektralradius .G/ ab. Für jedes konkret gewählte G gibt es jedoch ein einfaches Mittel, diesen zu verbessern, nämlich die sogenannte Extrapolation oder besser Relaxation. Dazu betrachten wir Konvexkombinationen der jeweils „alten“ und „neuen“ Iterierten, xkC1 D !.Gxk C c/ C .1 !/xk D G! xk C !c
mit G! WD !G C .1 !/I;
wobei ! 2 Œ0; 1 ein sogenannter Dämpfungsparameter ist. Auf diese Weise gewinnen wir aus einer Fixpunktiteration xkC1 D Gxk C c eine ganze Schar von relaxierten Fixpunktiterationen mit der !-abhängigen Iterationsfunktion ! .x/ D !.x/ C .1 !/x D G! x C !c: Die Kunst besteht nun darin, den Dämpfungsparameter ! so zu wählen, dass .G! / möglichst klein wird. Tatsächlich ist es für eine Klasse von Fixpunktverfahren sogar möglich, durch geeignete Wahl von ! Konvergenz zu erzwingen, obwohl die Ausgangsiteration im Allgemeinen nicht konvergiert. Definition 8.5. Ein Fixpunktverfahren xkC1 D Gxk C c; G D G.A/, heißt symmetrisierbar, falls I G für jede spd-Matrix A ähnlich zu einer spd-Matrix ist, d. h., es eine reguläre Matrix W 2 GL.n/ gibt, so dass W .I G/W 1 eine spd-Matrix ist.
265
8.1 Klassische Iterationsverfahren
Beispiel 8.6. Das Richardson-Verfahren G D I A ist trivialerweise symmetrisier1 bar. Das gleiche gilt auch für das Jacobi-Verfahren G D I D 1 A: Mit W WD D 2 ist 1 1 1 1 1 1 D 2 .I G/D 2 D D 2 D 1 AD 2 D D 2 AD 2 eine spd-Matrix. Die Iterationsmatrizen G symmetrischer Fixpunktverfahren haben folgende Eigenschaft. Lemma 8.7. Sei xkC1 D Gxk C c, G D G.A/ ein symmetrisierbares Fixpunktverfahren und A eine spd-Matrix. Dann sind alle Eigenwerte von G reell und kleiner als 1, d. h., für das Spektrum .G/ von G gilt .G/ 1; 1Œ: Beweis. Da I G ähnlich zu einer spd-Matrix ist, sind die Eigenwerte von I G reell und positiv und daher die Eigenwerte von G reell und < 1. Seien nun min max < 1 die extremen Eigenwerte von G. Dann sind die Eigenwerte von G! gerade i .G! / D !i .G/ C 1 ! D 1 !.1 i .G// < 1; d. h.
.G! / D max fj1 !.1 min .G//j; j1 !.1 max .G//jg : Für den optimalen Dämpfungsparameter !N mit N min .G//
.G!N / D min .G! / D 1 !.1 0
gilt dann wegen 0 < 1 max .G/ 1 min .G/, dass 1 !.1 N max .G// D 1 C !.1 N min .G// (siehe Abbildung 8.1). Wir erhalten so das folgende Resultat. Lemma 8.8. Mit den obigen Bezeichnungen ist !N D
2 2 max .G/ min .G/
der optimale Dämpfungsparameter für das symmetrisierbare Iterationsverfahren xkC1 D Gxk C c. Für den Spektralradius der Iterationsmatrix des relaxierten Verfahrens gilt N min .G// < 1:
.G!N / D 1 !.1
266
8 Große symmetrische Gleichungssysteme und Eigenwertprobleme
G! j1 !.1 min /j
1
0
1 1min
!N
j1 !.1 min /j
!
1 1max
Abbildung 8.1. Spektralradius in Abhängigkeit vom Dämpfungsparameter !
Mit anderen Worten: Wir haben gerade gezeigt, dass sich für jedes symmetrisierbare Iterationsverfahren durch geeignete Wahl des Dämpfungsparameters Konvergenz erzwingen lässt. Dabei geht in die Bestimmung von !N Information über die Matrix A ein, so dass sich extrapolierte Verfahren nur für bestimmte Klassen von Matrizen angeben lassen. Beispiel 8.9. Die relaxierte Iteration hat für das Richardson-Verfahren mit G D I A eine besonders einfache Form: G! D !G C .1 !/I D I !A: Für eine spd-Matrix A gilt gerade min .G/ D 1 max .A/ und daher !N D
und
max .G/ D 1 min .A/
2 2 D : 2 max .G/ min .G/ max .A/ C min .A/
Der Spektralradius des optimal gedämpften Richardson-Verfahrens ist somit
.G!N / D .I !A/ N D
2 .A/ 1 max .A/ min .A/ D <1 max .A/ C min .A/ 2 .A/ C 1
mit der Kondition 2 .A/ von A bezüglich der Euklidischen Norm. Für weitergehende Ausführungen zu optimalen Relaxationsverfahren sei auf das Buch von L. A. Hageman und D. M. Young [52] verwiesen. Wir verlassen hier dieses Thema, weil die heute wichtigste Anwendung von Relaxationsverfahren, nämlich die sogenannten Mehrgitterverfahren (engl.: multigrid methods), tatsächlich nicht den
267
8.2 Tschebyscheff-Beschleunigung
oben berechneten optimalen Dämpfungsparameter !N benutzen. Stattdessen wird das Kontraktionsverhalten genauer aufgeschlüsselt, und zwar bezüglich der Frequenzanteile der Iterierten. Interpretiert man die Lösungen eines linearen Gleichungssystems als Überlagerung „stehender Wellen“, so zeigt sich, dass bei geeigneter (problemangepasster) Wahl des Relaxationsparameters sowohl das relaxierte Jacobi- als auch das relaxierte Gauß-Seidel-Verfahren bevorzugt die hochfrequenten Anteile des Fehlers dämpfen. Diese Eigenschaft heißt Glättungseigenschaft und wird bei der Konstruktion von Mehrgitterverfahren zur iterativen Lösung diskretisierter partieller Differentialgleichungen genutzt. Die Grundidee dabei ist, die hochfrequenten Anteile des Fehlers mit einem Relaxationsverfahren über einem feinen Diskretisierungsgitter zu dämpfen und anschließend auf das nächstgröbere Gitter überzugehen, welches der Elimination der niederfrequenten Anteile dient. Durch die rekursive Anwendung dieser Vorschrift entsteht ein Iterationsverfahren, das die direkte Lösung eines linearen Gleichungssystems lediglich auf dem gröbsten Gitter, also mit wenigen Unbekannten erfordert. Da wir auf die Frage der Diskretisierung in dieser elementaren Einführung nicht eingehen, müssen wir es hier bei einer kurzen Andeutung belassen. Für weitere Einzelheiten empfehlen wir den allgemeinverständlichen Artikel von G. Wittum [103] oder das Lehrbuch von W. Hackbusch [51].
8.2
Tschebyscheff-Beschleunigung
Bei den im letzten Abschnitt vorgestellten Verfahren handelt es sich ausnahmslos um Fixpunktverfahren, xkC1 D .xk / D Gxk Cc. Zur Berechnung von xkC1 wird dabei nur Information des letzten Iterationsschrittes herangezogen und die bereits berechneten Werte x0 ; : : : ; xk1 nicht berücksichtigt. Im Folgenden stellen wir eine Technik vor, ein gegebenes Fixpunktverfahren zu verbessern, indem wir eine Linearkombination k X vkj xj yk D j D0
aus sämtlichen Werten x0 ; : : : ; xk konstruieren. Bei geeigneter Wahl der Koeffizienten vkj soll die Ersatzfolge fy0 ; y1 ; : : : g rascher konvergieren als die Ausgangsfolge fx0 ; x1 ; : : : g. Wie sind nun die vkj zu bestimmen? Falls x0 D D xk D x bereits die Lösung ist, so fordern wir, dass auch yk D x, woraus sofort folgt, dass k X
vkj D 1:
j D0
Damit gilt insbesondere für den Fehler yk x, dass yk x D
k X j D0
vkj .xj x/:
(8.3)
268
8 Große symmetrische Gleichungssysteme und Eigenwertprobleme
Wir suchen also einen Vektor yk aus dem affinen Unterraum ˚ P Pk n Vk WD yk D jkD0 vkj xj W vkj 2 R mit j D0 vkj D 1 R ; welcher die exakte Lösung möglichst gut approximiert, d. h. kyk xk D min ky xk
(8.4)
y2Vk
p mit einer geeigneten Norm k k. Bezüglich der Euklidischen Norm kyk D hy; yi ist nach Bemerkung 3.6 yk die (affine) orthogonale Projektion von x auf Vk und das Minimierungsproblem äquivalent zu dem Variationsproblem hyk x; y x0 i D 0 für alle y 2 Vk . Ist dann q1 ; : : : ; qk eine Orthogonalbasis des zu Vk parallelen linearen Unterraums Uk , d. h. Vk D x0 CUk , so können wir die affine orthogonale Projektion Qk W Rn ! Vk explizit angeben: yk D Qk x D x0 C
k X hqj ; x x0 i qj : hqj ; qj i
(8.5)
j D1
In (8.5) taucht jedoch die noch unbekannte Lösung x auf, d. h., die Formel ist nicht auswertbar und damit das Minimierungsproblem (8.4) so nicht lösbar. Aus dieser Situation gibt es zwei Auswege: Zum einen können wir statt des Euklidischen ein anderes, problemangepasstes Skalarprodukt wählen. Diesen Ansatz werden wir in Kapitel 8.3 verfolgen. Hier wollen wir versuchen, anstelle des Minimierungsproblems (8.4) ein lösbares Ersatzproblem zu konstruieren. Die Iterierten xk der gegebenen Fixpunktiteration sind xk D k .x0 /, wobei .y/ D Gy C c die Iterationsvorschrift ist. Daher gilt yk D
k X
vkj xj D Pk ./x0 ;
j D0
wobei Pk 2 P k ein Polynom vom Grad k ist mit Pk ./ D
k X j D0
j
vkj
und
Pk .1/ D
k X
vkj D 1:
j D0
Für den Fehler yk x erhalten wir nach (8.3) entsprechend yk x D Pk .G/.x0 x/:
269
8.2 Tschebyscheff-Beschleunigung
Um die zunächst unbekannte Lösung abzuspalten, machen wir die (im Allgemeinen relativ grobe) Abschätzung kyk xk kPk .G/k kx0 xk: Anstelle der Lösung des Minimierungsproblems (8.4) suchen wir nun ein Polynom Pk mit Pk .1/ D 1 derart, dass kPk .G/k D min : Dazu setzen wir voraus, dass die zugrundeliegende Fixpunktiteration symmetrisierbar ist, und setzen a WD min .G/ und b WD max .G/: Damit gilt für die 2-Norm von Pk .G/, dass kPk .G/k2 D max jPk .i /j max jPk ./j DW .P N k .G//: i
2Œa;b
Der Wert .P N k .G// heißt auch virtueller Spektralradius von G. Wir kommen so schließlich zu dem Minimaxproblem max jPk ./j D min
2Œa;b
mit deg Pk D k und Pk .1/ D 1.
Dieses Minimaxproblem haben wir bereits in Kapitel 7.1.4 kennengelernt und gelöst. Nach Satz 7.21 ergeben sich die Pk als speziell normierte Tschebyscheff-Polynome Pk ./ D
Tk .t .// Tk .t .1//
mit t ./ D 2 a 1. ba
Für die Berechnung von yk können wir die Drei-Term-Rekursion Tk .t / D 2t Tk1 .t / Tk2 .t /;
T0 .t / D 1;
T1 .t / D t
nutzen. Man beachte, dass wir im ersten Verbesserungsschritt aus P1 ./ D
t ./ D ! N C 1 !N t .1/
das in Kapitel 8.1 beschriebene Relaxationsverfahren zum optimalen Dämpfungsparameter !N D 2=.2 b a/ zurückgewinnen. Setzen wir tN WD t .1/ D
2ba ba
und k WD 2tN
Tk1 .tN/ ; Tk .tN/
so folgt Tk1 .tN/ Tk2 .tN/ Pk1 ./ Pk2 ./ Tk .tN/ Tk .tN/ D k .1 !N C !/P N k1 ./ C .1 k /Pk2 ./:
Pk ./ D 2t
(8.6)
270
8 Große symmetrische Gleichungssysteme und Eigenwertprobleme
Dabei beachte man, dass und 2t
Tk2 .tN/ Tk .tN/ 2tNTk1 .tN/ D D 1 k Tk .tN/ Tk .tN/
t 2 b a Tk1 .tN/ D k D k D k .1 !N C !/: N N N Tk .t / 2ba t
Setzen wir (8.6) in yk D Pk ./x0 für das Fixpunktverfahren .y/ D Gy C c ein, so erhalten wir die Rekursion yk D Pk ./x0 D k .1 !/P N k1 ./ C .1 k /Pk2 ./ x0 N k1 ./ C !P D k .1 !/y N N k1 C !.Gy k1 C c/ C .1 k /yk2 : Für ein Fixpunktverfahren der Form G D I Q1 A und c D Q1 b gilt insbesondere N 1 .b Ayk1 // C yk2 : yk D k .yk1 yk2 C !Q Diese Iteration für die yk heißt Tschebyscheff-Iteration oder auch Tschebyscheff-Beschleunigung für das Fixpunktverfahren xkC1 D Gxk C c mit G D I Q1 A und c D Q1 b. Algorithmus 8.10. Tschebyscheff-Iteration (zum Startwert y0 D x0 auf eine verlangte relative Genauigkeit tol). 2 max .G/ min .G/ ; max .G/ min .G/ T0 WD 1, T1 WD tN; tN WD
!N WD
2 ; 2 max .G/ min .G/
y1 WD !.Gy N N 0; 0 C c/ C .1 !/y for k WD 2 to kmax do Tk WD 2tNTk1 Tk2 ; Tk1
k WD 2tN ; Tk Löse das Gleichungssystem Qz D b Ayk1 in z; yk WD k .yk1 yk2 C !z/ N C yk2 ; if kyk yk1 k tol kyk k then exit; end for Die Konvergenzgeschwindigkeit der Tschebyscheff-Beschleunigung für ein symmetrisierbares Fixpunktverfahren lässt sich wie folgt abschätzen:
271
8.2 Tschebyscheff-Beschleunigung
Satz 8.11. Sei G D G.A/ die Iterationsmatrix eines symmetrisierbaren Fixpunktverfahrens xkC1 D .xk / D Gxk C c für die spd-Matrix A und x0 2 Rn ein beliebiger Startwert. Dann gilt für die zugehörige Tschebyscheff-Iteration yk D Pk ./x0 , dass kyk xk
1 kx0 xk jTk .tN/j
mit tN D
2 max .G/ min .G/ : max .G/ min .G/
Beweis. Nach Konstruktion des Verfahrens gilt kyk xk kPk .G/kkx0 xk max
2Œa;b
jTk .t .//j kx0 xk; jTk .t .1//j
wobei t ./ wie oben die Transformation t ./ D 2
min .G/ 2 max .G/ min .G/ 1D max .G/ min .G/ max .G/ min .G/
ist. Da jTk .t /j 1 für t 2 Œ1; 1, folgt die Behauptung.
Beispiel 8.12. Für die Tschebyscheff-Beschleunigung der Richardson-Iteration ergibt sich speziell: tN D
max .A/ C min .A/ 2 .A/ C 1 2 max .G/ min .G/ D D > 1: max .G/ min .G/ max .A/ min .A/ 2 .A/ 1
Lemma 8.13. Für die Tschebyscheff-Polynome Tk und > 1 gilt die Abschätzung ˇ ˇ p k ˇ ˇ ˇTk C 1 ˇ 1 p C 1 : ˇ 1 ˇ 2 1 Beweis. Man rechnet leicht nach, dass für z WD . C 1/=. 1/ gilt p p ˙1 2 z˙ z 1D p 1 und daher nach Formel (7.15) " p p k p k # k C1 1 C1 C1 1 1 D C p ; Tk p p 1 2 2 1 C1 1
wie behauptet. Nach Satz 8.11 und Lemma 8.13 gilt daher !k p .A/ 1 kyk xk 2 p kx0 xk: .A/ C 1
272
8 Große symmetrische Gleichungssysteme und Eigenwertprobleme
Abschließend wollen wir darauf hinweisen, dass die Realisierung der Tschebyscheff-Iteration möglichst gute Kenntnis der Grenzen min und max des (reellen) Spektrums von A verlangt. Moderne Verfahren kombinieren deshalb diese Methoden mit einer Vektoriteration, aus der sich nach wenigen Schritten in der Regel zumindest brauchbare Schätzungen von min und max ergeben. Bemerkung 8.14. Die hier vorgestellte Idee der Tschebyscheff-Beschleunigung lässt sich auch auf nicht symmetrische Matrizen übertragen. An die Stelle der Intervalle, die im symmetrischen Fall das reelle Spektrum umfassen, treten dann Ellipsen, welche das im Allgemeinen komplexe Spektrum einschließen. Näheres dazu findet sich in der Arbeit von T. A. Manteuffel [66].
8.3
Verfahren der konjugierten Gradienten
Wir hatten im letzten Abschnitt versucht, die Lösung des linearen Problems Ax D b durch Vektoren yk aus einem affinen p Teilraum Vk zu approximieren. Die Verwendung der Euklidischen Norm kyk D hy; yi hatte uns dort zunächst in eine Sackgasse geführt, aus der wir schließlich durch den Übergang zu einem lösbaren Ersatzproblem herausfinden konnten. Hier wollen wir nun unsere ursprüngliche Idee weiterverfolgen, indem wir zu einem problemangepassten Skalarprodukt übergehen. In der Tat definiert jede spd-Matrix A in natürlicher Weise ein Skalarprodukt .x; y/ WD hx; Ayi mit der zugeordneten Norm kykA D
p .y; y/;
der sogenannten Energienorm von A. Beide sind uns schon in Kapitel 8.1 begegnet. Wir wiederholen nun nochmals den Gedankengang von Kapitel 8.2, nur mit der Energienorm anstelle der Euklidischen Norm des Iterationsfehlers. Sei Vk D x0 C Uk Rn ein k-dimensionaler affiner Unterraum, wobei Uk der zu Vk parallele lineare Unterraum ist. Die Lösung xk des Minimierungsproblems kxk xkA D min ky xkA y2Vk
oder kurz kxk xkA D min Vk
heißt auch Ritz-Galerkin-Approximation von x in Vk . Nach Satz 3.4 ist xk die orthogonale Projektion von x auf Vk bzgl. .; /, d. h., das Minimierungsproblem kxk xkA D min ist äquivalent zu dem Variationsproblem .x xk ; u/ D 0
für alle u 2 Uk .
(8.7)
273
8.3 Verfahren der konjugierten Gradienten
Statt „orthogonal bzgl. .; / D h; Ai“ sagen wir im Folgenden auch einfach „Aorthogonal“ (historisch auch A-konjugiert), d. h., gemäß (8.7) muss der Fehler x xk A-orthogonal zu Uk sein. Bezeichnen wir die Residuen wieder mit rk WD b Axk , so gilt gerade .x xk ; u/ D hA.x xk /; ui D hrk ; ui: Das Variationsproblem (8.7) ist daher äquivalent zu der Forderung, dass die Residuen rk orthogonal (bezüglich des Euklidischen Skalarproduktes) zu Uk sein müssen, d. h. hrk ; ui D 0
für alle u 2 Uk .
(8.8)
Sei nun p1 ; : : : ; pk eine A-Orthogonalbasis von Uk , d. h. .pk ; pj / D ıkj .pk ; pk /: Dann folgt für die A-orthogonale Projektion Pk W Rn ! Vk gerade k k X X .pj ; x x0 / hpj ; Ax Ax0 i pj D x0 C pj xk D Pk x D x0 C .pj ; pj / .pj ; pj / j D1
D x0 C
j D1
k X
hpj ; r0 i pj : .pj ; pj / j D1 „ ƒ‚ … WD ˛j
(8.9)
Im Unterschied zu Kapitel 8.2 stellen wir hier fest, dass die zunächst unbekannte Lösung x auf der rechten Seite nicht mehr auftaucht, d. h., wir können die A-orthogonale Projektion xk von x auf Vk explizit berechnen, ohne x zu kennen. Aus (8.9) ergeben sich für xk und rk sofort die Rekursionen xk D xk1 C ˛k pk
und
rk D rk1 ˛k Apk ;
(8.10)
da rk D A.x xk / D A.x xk1 ˛k pk / D rk1 A˛k pk : Zur Konstruktion eines Approximationsverfahrens fehlen uns daher nur noch geeignete Unterräume Vk Rn , für die sich eine A-Orthogonalbasis p1 ; : : : ; pk leicht berechnen lässt. Nach dem Satz von Cayley-Hamilton (siehe z. B. [11]) gibt es ein Polynom Pn1 2 P n1 , so dass A1 D Pn1 .A/; und daher x x0 D A1 r0 D Pn1 .A/r0 2 spanfr0 ; Ar0 ; : : : ; An1 r0 g:
274
8 Große symmetrische Gleichungssysteme und Eigenwertprobleme
Wählen wir für die Approximationsräume Vk D x0 C Uk mit U0 WD f0g und Uk WD spanfr0 ; Ar0 ; : : : ; Ak1 r0 g für k D 1; : : : ; n; so gilt x 2 Vn , d. h., spätestens die n-te Approximation xn ist die Lösung selbst. Die Räume Uk D Uk .A; x0 / heißen Krylov-Räume. Sie ergeben sich auch automatisch aus unserer Forderung, pro Iterationsschritt im Wesentlichen nur eine Matrix-VektorMultiplikation .A; y/ 7! Ay durchzuführen. Erinnern wir uns ferner an Satz 6.4, so zeigt sich, dass wir eine A-Orthogonalbasis p1 ; : : : ; pk von Uk mit der Drei-TermRekursion 6.4 konstruieren können. Wir können die pk jedoch direkt aus den Residuen berechnen. Lemma 8.15. Sei rk ¤ 0. Dann sind die Residuen r0 ; : : : ; rk paarweise orthogonal, d. h. hri ; rj i D ıij hri ; ri i für i; j D 0; : : : ; k; und spannen UkC1 auf, d. h. UkC1 D spanfr0 ; : : : ; rk g: Beweis. Der Beweis erfolgt durch vollständige Induktion über k. Der Fall k D 0 ist wegen U1 D spanfr0 g trivial. Sei die Behauptung für k 1 richtig. Aus (8.10) folgt sofort, dass rk 2 UkC1 . Ferner haben wir in (8.8) gesehen, dass rk orthogonal zu Uk ist. Da nach Induktionsvoraussetzung Uk D spanfr0 ; : : : ; rk1 g; gilt also hrk ; rj i D 0 für j < k. Schließlich folgt damit aus rk ¤ 0, dass UkC1 D spanfr0 ; : : : ; rk g. Wir konstruieren die A-orthogonalen Basisvektoren pk daher wie folgt: Falls r0 ¤ 0 (sonst ist x0 die Lösung), setzen wir p1 WD r0 . Lemma 8.15 besagt nun für k > 1, dass rk entweder verschwindet oder aber die Vektoren p1 ; : : : ; pk1 und rk linear unabhängig sind und UkC1 aufspannen. Im ersten Fall ist x D xk , und wir sind fertig. Im zweiten Fall erhalten wir durch die Wahl von pkC1 D rk
k X .rk ; pj / .rk ; pk / pj D rk pk .pj ; pj / .pk ; pk / j D1 „ ƒ‚ … DW ˇkC1
(8.11)
eine Orthogonalbasis von UkC1 . Durch Einsetzen von (8.11) lässt sich die Auswertung von ˛k und ˇk weiter vereinfachen. Da .x x0 ; pk / D .x xk1 ; pk / D hrk1 ; pk i D hrk1 ; rk1 i;
275
8.3 Verfahren der konjugierten Gradienten
folgt ˛k D
hrk1 ; rk1 i ; .pk ; pk /
und wegen ˛k .rk ; pk / D h˛k Apk ; rk i D hrk rk1 ; rk i D hrk ; rk i gilt ˇkC1 D
hrk ; rk i : hrk1 ; rk1 i
Zusammen erhalten wir das von M. R. Hestenes und E. Stiefel [57] im Jahre 1952 vorgestellte sogenannte Verfahren der konjugierten Gradienten (engl.: conjugate gradients) oder kurz cg-Verfahren. Algorithmus 8.16. cg-Verfahren (zum Startwert x0 ). p1 WD r0 WD b Ax0 ; for k WD 1 to kmax do hrk1 ; rk1 i hrk1 ; rk1 i D ; ˛k WD .pk ; pk / hpk ; Apk i xk WD xk1 C ˛k pk ; if accurate then exit; WD rk1 ˛k Apk ; hrk ; rk i ; ˇkC1 WD hrk1 ; rk1 i pkC1 WD rk C ˇkC1 pk ; rk
end for Man beachte, dass tatsächlich pro Iterationsschritt im Wesentlichen nur eine Matrix-Vektor-Multiplikation, nämlich Apk , durchgeführt werden muss und damit das Verfahren unseren Forderungen bzgl. des Aufwands voll entspricht. Das Abbruchkriterium „accurate“ haben wir oben zunächst nicht näher spezifiziert. Am liebsten hätte man natürlich ein Kriterium der Art kx xk k
„hinreichend klein“;
(8.12)
das jedoch so nicht ausführbar ist. Deswegen wird (8.12) in der Praxis durch die Abfrage (8.13) krk k2 D kx xk kA2 „hinreichend klein“ ersetzt. Wie wir bereits in Kapitel 2.4.3 ausführlich dargelegt haben, ist jedoch die Residuennorm kein geeignetes Maß für die Konvergenz: Gerade bei schlechtkonditionierten Systemen, d. h. für .A/ 1, können sich die Iterierten drastisch verbessern,
276
8 Große symmetrische Gleichungssysteme und Eigenwertprobleme
obwohl die Normen der Residuen wachsen. Wir werden zu diesem Thema nochmals in Kapitel 8.4 zurückkehren. Zu beantworten bleibt die Frage, wie es um die Konvergenzeigenschaften bestellt ist. Da das cg-Verfahren nach endlich vielen Schritten die Lösung xn D x liefert, fehlt uns nur noch eine Aussage über die Konvergenzgeschwindigkeit. Satz 8.17. Der Approximationsfehler x xk des cg-Verfahrens lässt sich in der Enerp gienorm kykA D hy; Ayi abschätzen durch !k p 2 .A/ 1 kx x0 kA ; kx xk kA 2 p 2 .A/ C 1
(8.14)
wobei 2 .A/ die Kondition von A bezüglich der Euklidischen Norm ist. Beweis. Da xk die Lösung des Minimierungsproblems kx xk kA D minVk ist, gilt .x xk ; x xk / .x y; x y/
für alle y 2 Vk .
Die Elemente von Vk sind von der Form y D x0 C Pk1 .A/r0 D x0 C Pk1 .A/.b Ax0 / D x0 C APk1 .A/.x x0 / mit einem Polynom Pk1 2 P k1 , so dass x y D x x0 APk1 .A/.x x0 / D .I APk1 .A//.x x0 /; ƒ‚ … „ DW Qk .A/ wobei Qk 2 P k ein Polynom mit Qk .0/ D 1 ist. Eingesetzt in die Minimierungsbedingung folgt kx xk kA
min
Qk .0/D1
kQk .A/.x x0 /kA
min
max jQk ./j kx x0 kA :
Qk .0/D1 2.A/
Dabei haben wir benutzt, dass kQk .A/kA D max jQk ./j 2.A/
gilt, was sich aus
kQk .A/zkA kzkA z¤0
kQk .A/kA D sup 1
durch Einsetzen von z D A 2 w ergibt. Uns bleibt daher zu zeigen, dass sich die Lösung des Minimaxproblems durch !k p 2 .A/ 1 max jQk ./j 2 p ˛ WD min Qk .0/D1 2.A/ 2 .A/ C 1
277
8.3 Verfahren der konjugierten Gradienten
abschätzen lässt. Seien dazu 0 < a D 1 2 n D b die Eigenwerte der spd-Matrix A. Da 0 62 Œa; b, ist Satz 7.21 anwendbar, und es gilt ˛
1 max jQk ./j ; c Qk .0/D1 2Œa;b min
wobei c WD jTk ..0//j der maximale Betrag des zugehörigen modifizierten Tschebyscheff-Polynoms auf Œa; b ist. Dabei ist .0/ D 2
bCa 2 .A/ C 1 0a 1D D ; ba ba 2 .A/ 1
da 2 .A/ D n =1 D b=a, so dass wir die Behauptung wie in Beispiel 8.12 aus Lemma 8.13 erhalten. Korollar 8.18. Um den Fehler in der Energienorm um einen Faktor " zu reduzieren, d. h. kx xk kA "kx x0 kA ; benötigt man höchstens k cg-Iterationen, wobei k die kleinste ganze Zahl ist mit 1p k 2 .A/ ln.2="/: 2 Beweis. Nach Satz 8.14 haben wir zu zeigen, dass !k p 2 .A/ 1 "; 2 p 2 .A/ C 1 oder äquivalent
p 2 > 1. mit WD p2 .A/C1 2 .A/1 " Der Reduktionsfaktor wird also erreicht, falls
k
k log .2="/ D
ln.2="/ : ln
Nun gilt für den natürlichen Logarithmus, dass aC1 2 ln > für a > 1: a1 a (Leitet man beide Seiten nach a ab, so sieht man, dass ihre Differenz streng monoton fallend ist für a > 1. Im Grenzfall a ! 1 verschwinden beide Seiten.) Also gilt nach Voraussetzung ln.2="/ 1p 2 .A/ ln.2="/ k 2 ln und daher die Behauptung.
278
8 Große symmetrische Gleichungssysteme und Eigenwertprobleme
Bemerkung 8.19. Wegen der bestechenden Eigenschaften des cg-Verfahrens für spdMatrizen ist natürlich die Frage von Interesse, welche Eigenschaften sich auf nicht symmetrische Matrizen übertragen lassen. Zunächst ist darauf hinzuweisen, dass eine beliebige, lediglich invertierbare Matrix A im Allgemeinen kein Skalarprodukt induziert. Zwei prinzipielle Möglichkeiten wurden bisher verfolgt: Interpretiert man das cg-Verfahren für spd-Matrizen als orthogonale Ähnlichkeitstransformation auf Tridiagonalgestalt (vgl. Kapitel 6.1.1), so wird man eine beliebige, nicht notwendig symmetrische Matrix auf Hessenberggestalt zu transformieren haben (vgl. Bemerkung 5.14). Dies bedeutet, dass an die Stelle einer Drei-Term-Rekursion eine k-Term-Rekursion mit wachsendem k treten wird. Diese Variante heißt auch Arnoldi-Verfahren (vgl. [5]). Es ist, unabhängig vom vergrößerten Speicherbedarf, nicht besonders robust. Falls man auf jeden Fall die Drei-Term-Rekursion als Strukturelement erhalten will (geringer Speicherbedarf), so geht man im Allgemeinen zu den Normalgleichungen AT Ax D AT b über und realisiert ein cg-Verfahren für die spd-Matrix AT A. Dieses Vorgehen hat jedoch wegen 2 .AT A/ D 2 .A/2 (siehe Lemma 3.10) zurpFolge, dass in der Abschätzung (8.14) zur Konvergenzgeschwindigkeit der Faktor 2 .A/ durch 2 .A/ zu ersetzen ist. Im Allgemeinen ist dies eine signifikante Verschlechterung. Einen schönen Überblick über dieses wissenschaftliche Feld bietet die umfangreiche Darstellung von J. Stoer [93]. An Algorithmen auf dieser Basis haben sich im Wesentlichen zwei Varianten etabliert, nämlich das cgs-Verfahren (engl.: conjugate gradient squared method) von P. Sonneveld [90] und das bi-cg-Verfahren, das ursprünglich von R. Fletcher [34] vorgeschlagen wurde. Das cgs-Verfahren vermeidet obendrein noch die zusätzliche Auswertung der Abbildung y 7! AT y, die in bestimmten Anwendungen etwas aufwändig zu programmieren ist. Bemerkung 8.20. Wir sind bei der Herleitung des cg-Verfahrens nicht der historischen Entwicklung gefolgt, sondern haben den übersichtlicheren Weg mit Hilfe von Galerkin-Approximationen eingeschlagen, der gleichzeitig ein allgemeineres Konzept veranschaulichen sollte. Dabei bleibt die Bedeutung der Bezeichnung „konjugierte Gradienten“ zunächst im Dunkeln. Der ursprüngliche Zugang geht von einem anderen Iterationsverfahren, der Methode des steilsten Abstiegs, aus. Dabei wird versucht, die Lösung x des Minimierungsproblems 1 .x/ D hx; Axi hx; bi D min 2 sukzessive zu approximieren, indem man in Richtung des steilsten Abstiegs .xk / D b Axk D rk
279
8.4 Vorkonditionierung
. ....... . . . . . . .
.
.
. .
.
.
Abbildung 8.2. Verfahren des steilsten Abstiegs für große 2 .A/
minimiert. Wir zerlegen das Minimierungsproblem .x/ D min in eine Reihe eindimensionaler Minimierungsprobleme k .˛kC1 / D .xk C ˛kC1 rk / D min ; ˛kC1
deren Lösung, die sogenannte optimale Schrittlänge (engl.: optimal line search), gerade hrk ; rk i ˛kC1 D hrk ; Ark i ist. Wir erwarten nun, dass die Folge der so konstruierten Approximationen xkC1 D xk C ˛kC1 rk gegen x konvergieren. Dies tun sie auch, da 1 j.xk / .x/j 1 j.xk1 / .x/j; 2 .A/ allerdings für eine große Kondition 2 .A/ D n .A/=1 .A/ sehr langsam. Aus geometrischer Anschauung existiert dabei das Problem, dass die Niveauflächen fx W .x/ D cg für c 0 von Ellipsoide mit sehr unterschiedlichen Halbachsen sind, wobei 1 .A/ und n .A/ gerade die Längen der kleinsten bzw. größten Halbachse von f.x/ D 1g sind (siehe Abbildung 8.2). Die Größe 2 .A/ beschreibt also die geometrische „Verzerrung“ der Ellipsoide im Vergleich zu Kugelflächen. Das Verfahren des steilsten Abstiegs konvergiert aber am besten, wenn die Niveauflächen annähernd Kugeloberflächen sind. Eine Verbesserung kann erreicht werden, wenn man die Suchrichtungen rk durch andere „Gradienten“ ersetzt. Dabei haben die A-orthogonalen (oder A-konjugierten) Vektoren pk mit p1 D r0 D b besonders günstige Eigenschaften, was die historische Namensgebung erklärt. Abschließend wollen wir noch betonen, dass das cg-Verfahren, anders als das Tschebyscheff-Verfahren, keinerlei Anpassung von Parametern benötigt.
8.4
Vorkonditionierung
Die Abschätzungen der Konvergenzgeschwindigkeit sowohl für die TschebyscheffBeschleunigung als auch für das cg-Verfahren hängen monoton von der Kondition
280
8 Große symmetrische Gleichungssysteme und Eigenwertprobleme
2 .A/ bezüglich der Euklidischen Norm ab. Unsere nächste Frage wird deshalb lauten: Wie kann man die Kondition der Matrix A verringern? Oder genauer: Wie lässt sich das Problem Ax D b so transformieren, dass die entstehende Matrix von möglichst kleiner Kondition ist? Diese Fragestellung ist das Thema der sogenannten Vorkonditionierung. Geometrisch gesprochen bedeutet dies: Wir wollen das Problem derart transformieren, dass die Niveauflächen, die ja im Allgemeinen Ellipsoide sind, der Kugelgestalt möglichst nahe kommen. Anstelle der Gleichung Ax D b mit einer spd-Matrix A 2 Matn .R/ können wir auch das für jede invertierbare Matrix B 2 GL.n/ äquivalente Problem ANxN D b
mit xN WD B 1 x und AN WD AB
lösen. Dabei müssen wir darauf achten, dass die Symmetrie des Problems nicht zerstört wird, damit unsere Iterationsverfahren anwendbar bleiben. Ist B ebenfalls symmetrisch positiv definit, so ist die Matrix AN D AB zwar nicht mehr bezüglich des Euklidischen Skalarproduktes h; i selbstadjungiert, wohl aber bezüglich des von B induzierten Produktes .; /B WD h; Bi; da .x; ABy/B D hx; BAByi D hABx; Byi D .ABx; y/B : Daher ist das cg-Verfahren wieder anwendbar, wenn wir die Skalarprodukte geeignet übertragen: .; /B übernimmt die Rolle des Euklidischen Produktes h; i und das zugehörige „Energieprodukt“ .; /AB D .AB; /B D hAB; Bi von AN D AB die Rolle von .; /. Daraus ergibt sich unmittelbar die folgende Iteration xN 0 ; xN 1 ; : : : zur Lösung von ANxN D b: p1 WD r0 WD b AB xN 0 ; for k WD 1 to kmax do .rk1 ; rk1 /B hrk1 ; Brk1 i ; D ˛k WD .pk ; pk /AB hABpk ; Bpk i xN k WD xN k1 C ˛k pk ; if accurate then exit; WD rk1 ˛k ABpk ; .rk ; rk /B hrk ; Brk i ; D ˇkC1 WD .rk1 ; rk1 /B hrk1 ; Brk1 i pkC1 WD rk C ˇkC1 pk ; rk
end for
281
8.4 Vorkonditionierung
Wir sind natürlich an einer Iteration für die eigentliche Lösung x D B xN interessiert und ersetzen daher die Zeile für die xN k durch xk D xk1 C ˛k Bpk : Es fällt auf, dass nun die pk nur in der letzten Zeile explizit auftauchen. Führen wir aus diesem Grund die (A-orthogonalen) Vektoren qk WD Bpk ein, so offenbart sich folgende sparsame Version des Verfahrens, das vorkonditionierte cg-Verfahren oder kurz pcg-Verfahren (engl.: preconditioned conjugate gradient method). Algorithmus 8.21. pcg-Verfahren (zum Startwert x0 ). r0 WD b Ax0 ; q1 WD Br0 ; for k WD 1 to kmax do hrk1 ; Brk1 i ˛k WD ; hqk ; Aqk i xk WD xk1 C ˛k qk ; if accurate then exit; WD rk1 ˛k Aqk ; hrk ; Brk i ; ˇkC1 WD hrk1 ; Brk1 i qkC1 WD Brk C ˇkC1 qk ; rk
end for Pro Iterationsschritt benötigen wir jeweils nur eine Multiplikation mit der Matrix A (für Aqk ) bzw. mit B (für Brk ), also gegenüber dem ursprünglichen cg-Verfahren nur die Multiplikation mit B mehr. Wenden wir uns nun dem Fehler x xk des pcg-Verfahrens zu. Satz 8.17 stellt uns für den Fehler kxN xN k kAB der transformierten Iterierten xN k in der „neuen“ Energienorm p p N y/ N AB D hAB y; N B yi N kyk N AB WD .y; die Abschätzung p
B .AB/ 1
kxN xN k kAB 2 p B .AB/ C 1
!k kxN xN 0 kAB
bereit, wobei B .AB/ die Kondition von AB bezüglich der Energienorm k kB ist. Nun ist aber die Kondition B .AB/ D
max .AB/ D 2 .AB/ min .AB/
282
8 Große symmetrische Gleichungssysteme und Eigenwertprobleme
unabhängig vom zugrundeliegenden Skalarprodukt und die Norm k kAB wegen kyk N AB D
p p hAB y; N B yi N D hAy; yi D kykA
nichts anderes als die transformierte Energienorm k kA , so dass wir folgendes Analogon zu Satz 8.17 erhalten. Satz 8.22. Der Approximationsfehler x xk des mit der spd-Matrix p B vorkonditionierten cg-Verfahrens 8:21 lässt sich in der Energienorm kykA D hy; Ayi abschätzen durch !k p 2 .AB/ 1 kx x0 kA : kx xk kA 2 p 2 .AB/ C 1 Wir suchen deshalb eine spd-Matrix B, einen sogenannten Vorkonditionierer, mit den Eigenschaften a) die Abbildung .B; y/ 7! By ist „einfach“ auszuführen, b) die Kondition 2 .AB/ von AB ist „klein“, wobei wir bei den Begriffen „einfach“ und „klein“ zunächst vage bleiben müssen. Die ideale Matrix um b) zu erfüllen, B D A1 , ist leider mit dem Nachteil verbunden, dass die Auswertung der Abbildung y 7! By D A1 y die Komplexität des gesamten Problems besitzt und daher der Forderung a) widerspricht. Das folgende Lemma besagt jedoch, dass es ausreicht, wenn die von B und A1 induzierten Energienormen k kB und k kA1 sich (möglichst scharf) nach oben und unten abschätzen lassen (vgl. [105]). Lemma 8.23. Falls für zwei positive Konstanten 0 ; 1 > 0 eine der folgenden drei äquivalenten Bedingungen (i) 0 hA1 y; yi hBy; yi 1 hA1 y; yi für alle y 2 Rn , (ii) 0 hBy; yi hBABy; yi 1 hBy; yi für alle y 2 Rn , (iii) min .AB/ 0 und max .AB/ 1
.8:15/
erfüllt ist, so gilt für die Kondition von AB 2 .AB/
1 : 0
283
8.4 Vorkonditionierung
Beweis. Setzen wir y D Au in (i) ein, so ergibt sich wegen hA1 y; yi D hAu; ui
und
hBy; byi D hBAu; Aui D hABAu; ui
die Äquivalenz von (i) und (ii). Letztere Bedingung ist wegen hBABy; yi .ABy; y/B D min y¤0 .y; y/B x¤0 hBy; yi
min .AB/ D min und
.ABy; y/B hBABy; yi D max y¤0 .y; y/B x¤0 hBy; yi
max .AB/ D min
(vgl. Lemma 8.29) äquivalent zu (iii), woraus auch sofort die Behauptung 2 .AB/ D
1 max .AB/ min .AB/ 0
folgt.
Sind die beiden Normen k kB und k kA1 annähernd gleich, d. h. 0 1 , so P A1 . In diesem Fall gilt heißen B und A1 spektraläquivalent, in Kurzform auch B nach Lemma 8.23, dass 2 .AB/ 1. Bemerkung 8.24. Die drei Bedingungen von Lemma 8.23 sind tatsächlich symmetrisch in A und B. Dies sieht man am einfachsten an der Bedingung für die Eigenwerte, da min .AB/ D min .BA/ und max .AB/ D max .BA/: (Dies folgt zum Beispiel aus hABy; yi D hBAy; yi.) Wenn wir davon ausgehen, dass die vage Relation transitiv ist, kann man die Spektraläquivalenz mit Fug und Recht eine „Äquivalenz“ im Sinne von Äquivalenzrelation nennen. Eine wichtige Folgerung aus Lemma 8.23 betrifft das Abbruchkriterium. Lemma 8.25. Unter p den Voraussetzungen von p Lemma 8:23 gilt bezüglich der Energienormen k kA WD hA; i und k kB WD hB; i, dass 1 1 p krk kB kx xk kA p krk kB ; 1 0 d. h., die auswertbare Norm krk kB des Residuums ist ein guter Schätzer für die Energienorm kx xk kA des Fehlers, falls B und A1 spektraläquivalent sind. Beweis. Nach Lemma 8.23 und Bemerkung 8.24 folgt aus (8.15) mit vertauschten A und B, dass 0 hAy; yi hABAy; yi 1 hAy; yi;
284
8 Große symmetrische Gleichungssysteme und Eigenwertprobleme
oder äquivalent 1 1 hABAy; yi hAy; yi hABAy; yi: 1 0 Für das Residuum rk D b Axk D A.x xk / gilt aber hBrk ; rk i D hBA.x xk /; A.x xk /i D hABA.x xk /; x xk i und daher wie behauptet 1 1 p krk kB kx xk kA p krk kB : 1 0
Als Abbruchkriterium für das pcg-Verfahren nutzen wir daher anstelle von (8.13) die wesentlich sinnvollere Bedingung p krk kB D hBrk ; rk i „hinreichend klein“: Beispiel 8.26. Eine sehr einfache, aber häufig schon wirkungsvolle Vorkonditionierung ist die Inverse B WD D 1 der Diagonale D von A, die sogenannte diagonale Vorkonditionierung. Varianten davon benutzen Blockdiagonalmatrizen (siehe (8.1)), wobei die Einzelblöcke invertierbar sein müssen. Beispiel 8.27. Wendet man die Cholesky-Zerlegung A D LLT aus Kapitel 1.4 auf eine symmetrische dünnbesetzte Matrix an, so beobachtet man, dass außerhalb der Besetzungsstruktur von A meist nur „verhältnismäßig kleine“ Elemente lij entstehen. Diese Beobachtung führte zu der Idee der unvollständigen Cholesky-Zerlegung (engl.: incomplete Cholesky decomposition, kurz IC): Sie besteht darin, diese Elemente einfach wegzulassen. Bezeichnen wir mit P .A/ WD f.i; j / W aij ¤ 0g die Indexmenge der nicht verschwindenden Elemente einer Matrix A, so konstruieren wir also anstelle von L eine Matrix LQ mit Q P .A/; P .L/ indem wir wie bei der Cholesky-Zerlegung vorgehen und lQij WD 0 setzen für alle .i; j / 62 P .A/. Dabei erwarten wir, dass A AQ WD LQ LQ T : In [67] wurde ein Beweis der Existenz und numerischen Stabilität eines solchen Verfahrens geführt für den Fall, dass A eine sogenannte M-Matrix ist, d. h. ai i > 0; aij 0
für i ¤ j und A1 0 (elementweise).
285
8.5 Lanczos-Methoden
Solche Matrizen treten bei der Diskretisierung einfacher partieller Differentialgleichungen auf (siehe [98]). In jedem Eliminationsschritt entsteht in diesem Fall wieder eine M-Matrix. Für B setzen wir dann B WD AQ1 D LQ T LQ 1 : Dadurch erhält man in vielen Fällen eine drastische Beschleunigung des cg-Verfahrens, weit über die Beweisen zugängliche Klasse der M-Matrizen hinaus. Bemerkung 8.28. Für Gleichungssysteme, die aus der Diskretisierung partieller Differentialgleichungen herrühren, gestattet das Zusatzwissen über die Herkunft der Gleichungssysteme die Konstruktion wesentlich raffinierterer und wirkungsvollerer Vorkonditionierer. Als Beispiele verweisen wir auf die Arbeiten von H. Yserentant [106], J. Xu [105] und (für zeitabhängige partielle Differentialgleichungen) die Dissertation von F. A. Bornemann [9]. Eigentlich hat man es beim Lösen von partiellen Differentialgleichungen durch Diskretisierung nicht nur mit einem einzigen linearen Gleichungssystem fester, wenn auch eventuell hoher Dimension zu tun. Eine adäquatere Beschreibung erfolgt durch eine Folge von kaskadenartig geschachtelten linearen Gleichungssystemen, deren Dimension mit sukzessiver Verfeinerung der Diskretisierung wächst. Diese Folge wird mit einer Kaskade von cg-Verfahren wachsender Dimension gelöst. Verfahren dieses Typs sind eine echte Alternative zu klassischen Mehrgitterverfahren – für Einzelheiten siehe z. B. die grundlegende Arbeit von P. Deuflhard, P. Leinen und H. Yserentant [26]. Bei diesem Verfahren wird jedes lineare Gleichungssystem nur bis auf die Genauigkeit der zugehörigen Diskretisierung gelöst. Darüber hinaus gestattet es simultan den Aufbau problemangepasster Diskretisierungsgitter. Diese Vorgehensweise werden wir in Kapitel 9.7 am einfacheren Beispiel der numerischen Quadratur erläutern. In Aufgabe 8.4 illustrieren wir einen Aspekt des Kaskadenprinzips, der sich für dieses einführende Lehrbuch eignet.
8.5
Lanczos-Methoden
In Kapitel 5.3 haben wir die Eigenwerte einer symmetrischen Matrix mit Hilfe des QR-Algorithmus und vorhergehender Transformation auf Tridiagonalgestalt berechnet. In diesem Abschnitt wenden wir uns erneut dem Eigenwertproblem Ax D x
(8.16)
mit einer reellen symmetrischen Matrix A zu. Wir richten unser Augenmerk nun auf große dünnbesetzte Matrizen A, wie sie in den meisten Anwendungen auftreten. Für diese Probleme sind die in Kapitel 5 vorgestellten Verfahren zu aufwändig. Wir wollen daher im Folgenden iterative Verfahren zur Approximation der Eigenwerte einer symmetrischen Matrix entwickeln, die pro Iterationsschritt im Wesentlichen mit einer
286
8 Große symmetrische Gleichungssysteme und Eigenwertprobleme
Matrix-Vektor-Multiplikation auskommen. Die Idee dieser Verfahren geht auf den ungarischen Mathematiker C. Lanczos (ausgesprochen „Lanzosch“) in einer Arbeit aus dem Jahr 1950 zurück [63]. In Analogie zur Herleitung des cg-Verfahrens in Kapitel 8.3 formulieren wir das Eigenwertproblem (8.16) zunächst als eine Extremwertaufgabe. Lemma 8.29. Seien min und max der kleinste bzw. größte Eigenwert der reellen symmetrischen Matrix A 2 Matn .R/. Dann gilt hx; Axi x¤0 hx; xi
min D min
max D max
und
x¤0
hx; Axi : hx; xi
Beweis. Da A symmetrisch ist, gibt es eine orthogonale Matrix Q 2 O.n/, so dass QAQT D ƒ D diag.1 ; : : : ; n /: Mit y WD Qx gilt hx; xi D hy; yi und hx; Axi D hQT y; AQT yi D hy; QAQT yi D hy; ƒyi: Damit reduziert sich die Aussage auf den Fall einer Diagonalmatrix, für den die Behauptung offensichtlich ist. Die Funktion W Rn nf0g ! R, .x/ WD
hx; Axi ; hx; xi
heißt Rayleigh-Quotient von A. Korollar 8.30. Seien 1 n die Eigenwerte der symmetrischen Matrix A 2 Matn .R/ und 1 ; : : : ; n zugehörige Eigenvektoren. Dann gilt i D
min
.x/ D
x2span. i ;:::; n / x¤0
max
.x/:
x2span. 1 ;:::; i / x¤0
Vergleichen wir die Formulierung des Eigenwertproblems als Extremwertaufgabe im Lemma 8.29 mit der Herleitung des cg-Verfahrens in Kapitel 8.3, so liegt es nahe, die Eigenwerte min und max zu approximieren, indem wir die zugehörige Extremwertaufgabe auf einer Folge von Teilräumen V1 V2 Rn lösen. Da sich die Krylov-Räume in Kapitel 8.3 bewährt haben, wählen wir als Teilräume Vk .x/ WD spanfx; Ax; : : : ; Ak1 xg für einen Startwert x ¤ 0 und k D 1; 2; : : : . Wir erwarten, dass die Extrema .k/
min WD
hy; Ayi min ; y2Vk .x/ hy; yi
hy; Ayi max y2Vk .x/ hy; yi
min
.k/ max WD max
y¤0
y¤0
die Eigenwerte min und max für wachsende k gut approximieren.
287
8.5 Lanczos-Methoden
Nach Satz 6.4 können wir eine Orthonormalbasis v1 ; : : : ; vk von Vk .x/ durch die folgende Drei-Term-Rekursion konstruieren: v0 WD 0; v1 WD
x ; kxk2
˛k WD hvk ; Avk i; wkC1 WD Avk ˛k vk ˇk vk1 ;
(8.17)
ˇkC1 WD kwkC1 k2 ; wkC1 falls ˇkC1 ¤ 0: vkC1 WD ˇkC1 Diese Iteration heißt Lanczos-Algorithmus. Damit ist Qk WD Œv1 ; : : : ; vk eine spaltenorthonormale Matrix und 3 2 ˛1 ˇ2 7 6 7 6 ˇ3 7 6ˇ2 ˛2 7 6 7 6 :: :: :: QkT AQk D 6 7 : : : 7 6 7 6 7 6 ˇ ˛ ˇ k1 k1 k5 4 ˇk ˛k eine symmetrische Tridiagonalmatrix. Nun gilt mit y D Qk v für ein v 2 Rk , dass hy; yi D hv; vi und hy; Ayi D hQk v; AQk vi D hv; QkT AQk vi D hv; Tk vi: Daraus ergibt sich, dass .k/
min D
hv; Tk vi hy; Ayi D min D min .Tk / y2Vk .x/ hy; yi v2Rk hv; vi min
y¤0
v¤0
.k/
und analog max D max .Tk /. Aus der Minimaleigenschaft folgt wegen VkC1 Vk sofort auch .kC1/ .k/ .k/ min min und .kC1/ max max : .k/
.k/
Die Approximationen min und max sind daher die extremen Eigenwerte der symmetrischen Tridiagonalmatrix Tk und lassen sich als solche leicht berechnen. Allerdings .n/ ist im Gegensatz zum cg-Verfahren nicht garantiert, dass min D min , da im Allgemeinen Vn .x/ ¤ Rn . In der Drei-Term-Rekursion (8.17) zeigt sich dies dadurch, dass ˇkC1 für ein k < n verschwindet. In diesem Fall muss die Berechnung mit einem xQ 2 Vk .x/? neu gestartet werden. Die Konvergenzgeschwindigkeit des Verfahrens lässt sich wieder mit Hilfe der Tschebyscheff-Polynome abschätzen.
288
8 Große symmetrische Gleichungssysteme und Eigenwertprobleme
Satz 8.31. Sei A eine symmetrische Matrix mit den Eigenwerten 1 n und zugehörigen orthonormalen Eigenvektoren 1 ; : : : ; n . Seien weiter 1 k die Eigenwerte der Tridiagonalmatrix Tk des Lanczos-Verfahrens zum Startwert x ¤ 0 mit der Orthonormalbasis v1 ; : : : ; vk von Vk .x/ wie in .8:17/. Dann gilt n k n
.n 1 / tan2 .
wobei n WD .n n1 /=.n1 1 /. Beweis. Da Vk .x/ D fP .A/x W P 2 P k1 g, gilt hy; Ayi hP .A/v1 ; AP .A/v1 i D max : P 2Pk1 hP .A/v1 ; P .A/v1 i y2Vk .x/ hy; yi
k D max y¤0
Stellen wir v1 bzgl. der Orthonormalbasis 1 ; : : : ; n dar, v1 D hv1 ; j i D cos.
n X j D1 n X
Pn
j D1 j j
mit j D
j2 P 2 .j /j ; j2 P 2 .j /:
j D1
Wir erhalten so hP .A/v1 ; AP .A/v1 i D n C hP .A/v1 ; P .A/v1 i n C
Pn1
2 2 j D1 j P .j /.j n / Pn 2 2 j D1 j P .j / Pn1 2 2 j D1 j P .j / : .1 n / P 2 2 n2 P 2 .n / C jn1 D1 j P .j /
Um eine möglichst scharfe Abschätzung zu erhalten, müssen wir ein Polynom P 2 P n1 einsetzen, das innerhalb des Intervalles Œ1 ; n1 möglichst klein ist. Nach Satz 7.19 empfiehlt sich das transformierte Tschebyscheff-Polynom P ./ WD Tk1 .t .//
1 n1 mit t ./ D 2 n1 1 D 1 C 2 1 n1 1
mit der Eigenschaft jP .j /j 1 für j D 1; : : : ; n 1. Damit gilt dann wegen P n 2 2 j D1 j D kv1 k2 D 1, dass k n .n 1 /
1 1 n2 ; 2 2 n Tk1 .1 C 2 n /
289
8.5 Lanczos-Methoden
und die Behauptung folgt aus der Tatsache, dass 1 n2 D tan2 .
In vielen Anwendungen (z. B. Strukturmechanik) trifft man auf das sogenannte verallgemeinerte symmetrische Eigenwertproblem, Ax D Bx;
(8.18)
wobei die Matrizen A; B 2 Matn .R/ beide symmetrisch sind und B zusätzlich positiv definit. Setzen wir die Cholesky-Zerlegung B D LLT von B in (8.18) ein, so gilt Ax D Bx ” Ax D LLT x ” .L1 ALT / „ƒ‚… LT x D LT x: „ ƒ‚ … DW xN DW AN Da AN D L1 ALT wieder symmetrisch ist, ist das verallgemeinerte Eigenwertproblem Ax D Bx äquivalent zu dem symmetrischen Eigenwertproblem ANxN D x. N Also sind alle Eigenwerte i reell. Ferner gibt es eine Orthonormalbasis 1 ; : : : ; n von verallgemeinerten Eigenvektoren A i D i B i . Definieren wir daher den verallgemeinerten Rayleigh-Quotienten von .A; B/ durch .x/ WD
hx; Axi ; hx; Bxi
so erhalten wir folgende zu Lemma 8.29 analoge Aussage. Lemma 8.32. Seien min und max der kleinste bzw. größte Eigenwert des verallgemeinerten Eigenwertproblems Ax D Bx, wobei A; B 2 Matn .R/ symmetrisch und B positiv definit. Dann gilt hx; Axi hx; Bxi x¤0
min D min
und
max D max x¤0
hx; Axi : hx; Bxi
Beweis. Mit den obigen Bezeichnungen gilt N xi N hx; Bxi D hx; LLT xi D hx; und
N ALT xi N D hx; N ANxi: N hx; Axi D hLT x;
Die Behauptung folgt aus Ax D Bx , ANxN D xN und Lemma 8.29.
Der Lanczos-Algorithmus (8.17) überträgt sich analog, indem wir hx; Axi beibehalten, aber hx; xi durch hx; Bxi und kxk2 durch hx; Bxi1=2 ersetzen. Eine ausführliche Darstellung findet sich in dem Buch von J. Cullum und R. Willoughby [14].
290
8 Große symmetrische Gleichungssysteme und Eigenwertprobleme
Abschließend wollen wir noch den Fall diskutieren, dass nicht nur randständige Eigenwerte, sondern Eigenwerte in einem vorgegebenen Intervall oder sogar sämtliche Eigenwerte gesucht sind. In diesem Fall greifen wir auf die Grundidee der inversen Vektoriteration zurück. Sei N ein gegebener Schätzwert in der Nähe der gesuchten Eigenwerte. Dann hat (für das verallgemeinerte Eigenwertproblem) die Matrix N 1 L N /1 D LT .A B/ C WD .AN I gerade die Eigenwerte N 1 i WD .i /
für i D 1; 2; : : : :
(8.19)
Die Anwendung des Lanczos-Verfahrens auf die Matrix C liefert dann gerade domiN Bei nante Eigenwerte i , also über (8.19) Eigenwerte i in einer Umgebung von . N Variation des Shiftparameters in einem vorgegebenen Intervall kann man so sämtliche Eigenwerte erhalten. Diese Variante des Algorithmus heißt Spektral-Lanczos und wurde 1980 von T. Ericsson und Å. Ruhe [32] beschrieben.
Übungsaufgaben Aufgabe 8.1. Zeigen Sie, dass die bei der Tschebyscheff-Beschleunigung auftretenden Koeffizienten k D 2tNTk1 .tN/=Tk .tN/ der Zwei-Term-Rekursion
1 D 2;
kC1 D
1 1
1 2 4 k
genügen, wobei WD 1=tN. Zeigen Sie ferner für den Grenzwert der Folge f k g, dass lim k DW D
k!1
2 : p 1 C 1 2
Aufgabe 8.2. Gegeben seien Sparse-Matrizen folgender Struktur (Bandmatrizen, Blockdiagonalmatrizen, Pfeilmatrizen, blockzyklische Matrizen): 2
6 6 ::: ::: 6 6 6 ::: ::: 6 :: :: 6 : : 6 6 : :: 6 4
:: : :: : :: : :: :
3
7 7 : 7 7 :: : 7 7; :: 7 : 7 7 :: : 7 5 ::
2
3
7 6 7 6 7 6 7 6 7 6 7 6 7; 6 7 6 7 6 7 6 6 7 5 4
291
Übungsaufgaben
3 7 6 7 6 7 6 7 6 7 6 7 6 7; 6 7 6 7 6 7 6 7 6 5 4 2
3
2 6 6 6 6 6 6 6 6 6 6 6 4
7 7 7 7 7 7 7: 7 7 7 7 5
Überlegen Sie sich Speicherplatzbedarf und Rechenaufwand (Anzahl der Operationen) bei a) LR-Zerlegung mit Gauß-Elimination ohne Pivoting bzw. mit Spaltenpivotsuche und Zeilentausch. b) QR-Zerlegung mit Householder-Transformationen ohne bzw. mit Spaltentausch. c) QR-Zerlegung mit Givens-Transformationen. Aufgabe 8.3. Sei B P A1 eine spektraläquivalente Vorkonditionierungsmatrix. Für den Spezialfall, dass B in der Form B D C C T vorliegt, lässt sich ein vorkonditioniertes cg-Verfahren auch in anderer Weise herleiten. Dazu geht man formal von dem System Ax D b über zu dem äquivalenten System AOxO D bO
mit AO D CAC T ; xO D C T x und bO D C b:
Dabei ist AO wieder eine spd-Matrix. Auf dieses transformierte System wendet man das klassische cg-Verfahren an. Leiten Sie aus dieser Idee ein Konvergenzresultat her, welches die (bekanntlich nicht direkt zugängliche) Energienorm des Fehlers zugrundelegt. Es ergeben sich aus diesem Ansatz zwei unterschiedliche effektive Varianten des pcg-Verfahrens, von denen eine mit unserem Algorithmus 8.21 übereinstimmt. Leiten Sie beide Varianten her und überlegen Sie, unter welchen Bedingungen die eine oder andere vorzuziehen ist. Implementieren Sie beide Varianten für den Spezialfall der unvollständigen Cholesky-Zerlegung, und führen Sie Rechenvergleiche durch. Aufgabe 8.4. Kurze Einführung ins Kaskadenprinzip. Wir betrachten eine Folge von linearen Gleichungssystemen Aj xj D bj ;
j D 1; : : : ; m;
der Dimension nj wie sie durch sukzessive feinere (uniforme) Diskretisierung einer (elliptischen) partiellen Differentialgleichung entstehen könnte. Die Dimension der Gleichungssysteme wachse geometrisch, d. h. nj C1 D Knj
für ein K > 1.
292
8 Große symmetrische Gleichungssysteme und Eigenwertprobleme
Gesucht ist eine Näherungslösung xQ m des größten Gleichungssystems (entsprechend der feinsten Diskretisierung), so dass für den Fehler in der Energienorm kxQ m xm kAm "m ı für gegebene "; ı > 0 gilt. Der Zusammenhang zu den Diskretisierungen zeige sich in den linearen Gleichungssystemen durch folgende Eigenschaften: i) Die Matrizen Aj sind symmetrisch positiv definit und ihre Konditionen gleichmäßig beschränkt durch 2 .Aj / C
für j D 1; : : : ; m.
(Dies gilt nur bei einer entsprechenden Vorkonditionierung.) ii) Ist xQj eine Näherung von xj mit kxQj xj kAj "j ı; so ist der mit Nullen erweiterte Vektor xQj C1 WD .xQj ; 0/ eine Näherung von xj C1 mit kxQj C1 xj C1 kAj C1 "j ı: iii) Der Aufwand für eine cg-Iteration für Aj beträgt Cj D nj
für ein > 0.
Wir vergleichen zwei Algorithmen zur Berechnung von xQ m : a) Standard cg-Verfahren: Wie viele cg-Iterationen sind notwendig, um xQ m aus0 mit gehend von einer Startlösung xm 0 kxm xm kAm ı
zu berechnen? Wie hoch ist der Aufwand? b) Kaskaden cg-Verfahren: Sei x10 eine Näherung von x1 mit kx10 x1 kA1 ı: Wir berechnen daraus sukzessive Näherungen xQ 1 ; : : : ; xQ m mit kxQj xj kAj "j ı; indem wir jeweils die mit Null erweiterten Näherungslösungen des vorhergehenden Gleichungssystems als Startlösung xj0 WD .xQj 1 ; 0/ für j D 2; : : : ; m des cg-Verfahrens für das Gleichungssystem Aj xj D bj . Zeigen Sie, dass die so berechnete Näherungslösung xQ m die gewünschte Genauigkeit hat. Wie viele cg-Iterationen sind für jedes j nötig und wie hoch ist dabei der Aufwand? Wie hoch ist der Gesamtaufwand zur Berechnung von xQ m ?
Übungsaufgaben
293
Das Verfahren b) eröffnet sogar die Möglichkeit, den Startwert x10 aus einem direkten Verfahren, z. B. der Gauß-Elimination, zu berechnen, falls die Dimension n1 hinreichend klein ist. Aufgabe 8.5. Arbeiten Sie den Spektral-Lanczos-Algorithmus im Detail aus. Ersetzen Sie dabei insbesondere die explizite Berechnung von AN durch die Produktdarstellung L1 ALT .
9 Bestimmte Integrale
Ein relativ häufiges Problem ist die Berechnung des Riemann-Integrals Z b f .t / dt: I.f / WD Iab .f / WD a
Dabei ist f eine stückweise stetige Funktion auf dem Intervall Œa; b, die jedoch in den Anwendungen im Allgemeinen stückweise glatt ist. (Eine stückweise stetige und nicht glatte Funktion ist auf einem Rechner nicht implementierbar.) In der Analysis f
I D
a
Rb a
f ./ d
b
t
Abbildung 9.1. Aufgabe der Quadratur
lernt man zahlreiche Techniken kennen, ein derartiges Integral zu „lösen“ in dem Sinne, dass ein „einfacherer“ Ausdruck für I.f / gefunden wird. Ist dies möglich, so sagt man, das Integral sei analytisch oder in geschlossener Form lösbar. Diese beiden Begriffe besagen jedoch nicht viel mehr, als dass die „analytischen Ausdrücke“ mathematisch besser bekannt und deswegen dem ursprünglichen Integralausdruck vorzuziehen sind. In vielen Fällen existiert jedoch keine geschlossene analytische Darstellung des Integrals. Dann bleibt nur die rein numerische Bestimmung. Sie ist häufig selbst dann günstiger, wenn eine Lösung in geschlossener Form vorliegt. Davon kann man sich leicht durch einen Blick in eine Integralsammlung (z. B. [49]) überzeugen. Die zahlenmäßige (numerische) Berechnung von I.f / bezeichnet man auch als numerische Quadratur. Dieser Begriff lässt uns unwillkürlich an die Quadratur des Kreises denken, das wegen der Transzendenz von nicht lösbare Problem, mit Zirkel
295
9.1 Quadraturformeln
und Lineal ein Quadrat mit dem Flächeninhalt des Einheitskreises zu konstruieren. Die heutige Bedeutung von Quadratur ist aus dieser Konstruktion eines Quadrates gleichen Flächeninhalts erwachsen. Häufig findet man auch den Begriff numerische Integration, der jedoch allgemeiner zugleich die Lösung von Differentialgleichungen beschreibt. Tatsächlich entspricht ja die Berechnung des Integrals I.f / formal dem Lösen der Anfangswertaufgabe y 0 .t / D f .t /;
y.a/ D 0;
t 2 Œa; b;
da y.b/ D I.f /. Wir werden auf diese Formulierung noch im Verlauf des Kapitels zurückkommen. In diesem Kapitel werden wir uns fast ausnahmslos einschränken auf eindimensionale Probleme der numerischen Integration. Die Ausnahme ist Kapitel 9.8, in dem wir in die Welt der hochdimensionalen Quadraturprobleme einführen, wie sie in den Naturwissenschaften (insbesondere der physikalischen Thermodynamik) so häufig vorkommen; die Darstellung der hierzu benutzten Monte-Carlo-Verfahren eignet sich besonders gut im Rahmen dieses Lehrbuchs, weil sie sich elementar mit unseren Vorkenntnissen aus Kapitel 5.5 über stochastische Eigenwertprobleme verstehen lassen.
9.1
Quadraturformeln
Zunächst stellen wir aus der Analysis einige Eigenschaften des Riemann-Integrals zusammen. Wir nehmen dabei im Folgenden an, dass b > a. Das bestimmte Integral Z b b f .x/ dx Ia D I W C Œa; b ! R; f 7! I.f / D a
ist eine positive Linearform auf dem Raum C Œa; b der stetigen Funktionen auf dem Intervall Œa; b. Mit anderen Worten: a) I ist linear, d. h., für alle stetigen Funktionen f; g und ˛; ˇ 2 R gilt I.˛f C ˇg/ D ˛I.f / C ˇI.g/: b) I ist positiv, d. h., falls f nicht negativ ist, dann auch das Integral I.f /, f 0 H) I.f / 0: Zusätzlich ist das Integral additiv bezüglich einer Zerlegung des Integrationsintervalls, d. h., für alle 2 Œa; b gilt Ia C Ib D Iab : Bevor wir mit der Berechnung beginnen, sollten wir die Frage nach der Kondition des Integrals stellen. Dazu müssen wir uns zunächst darüber klar werden, wie wir
296
9 Bestimmte Integrale
Störungen ıf des Integranden messen wollen. Falls wir die Supremumsnorm (als Standardnorm auf C 0 ) wählen, so können bei unendlichem Integrationsintervall die Störungen unendlich werden. Deswegen entscheiden wir uns hier für die sogenannte L1 -Norm Z b
kf k1 WD
jf .t /j dt D I.jf j/: a
Lemma 9.1. Die absolute und relative Kondition der Quadraturaufgabe .I; f /, Rb I.f / D a f , bezüglich der L1 -Norm k k1 sind abs D 1
bzw.
rel D
I.jf j/ : jI.f /j
Beweis. Für jede Störung ıf 2 L1 Œa; b lässt sich die Störung des Integrals durch ˇ Z ˇZ Z b ˇˇ ˇˇ Z b ˇ ˇ b b ˇ ˇ ˇ ˇ .f C ıf / f ˇDˇ ıf ˇ jıf j D kıf k1 ˇ ˇ ˇ a ˇ ˇ a a a abschätzen, wobei Gleichheit bei positiver Störung auftritt.
Im absoluten Konzept ist die Integration also ein harmloses Problem. In der relativen Betrachtungsweise müssen wir mit Schwierigkeiten rechnen, wenn das Integral über den Betrag der Funktion im Verhältnis zum Betrag des Integrals sehr groß und demnach das Problem schlechtkonditioniert ist. Offenbar liegt hier eine vollkommene Analogie zur Kondition der Addition (bzw. Subtraktion) vor (vgl. Beispiel 2.3). Eine Gefahr für die relative Kondition geht von stark oszillierenden Integranden aus, die in zahlreichen Anwendungen tatsächlich auftreten. Bereits die Integration einer einzigen Sinusschwingung über eine Periode ist bezüglich des relativen Fehlerkonzeptes schlechtkonditioniert. Natürlich erwarten wir von einem Verfahren zur Berechnung des Integrals, dass es dessen Struktureigenschaften erhält. Ziel der numerischen Quadratur ist somit die Konstruktion von positiven Linearformen IO W C Œa; b ! R; f 7! IO.f /; die das Integral I möglichst gut approximieren, d. h. IO.f / I.f / „klein“. Beispiel 9.2. Eine erste und aufgrund der Definition des Riemannschen Integrals naheliegende Methode zur Berechnung von Iab .f / ist die sogenannte Trapezsumme (siehe Abbildung 9.2). Wir zerlegen das Intervall in n Teilintervalle Œti1 ; ti .i D 1; : : : ; n/ der Länge hi WD ti ti1 a D t0 < t1 < < tn D b
297
9.1 Quadraturformeln
f
T0
T1
T2
T3
h0
h1
h2
h3
a D t0
t1
t2
b D t4
t3
t
Abbildung 9.2. Trapezsumme mit äquidistanten Stützstellen
und approximieren das Integral I.f / durch die Summe der Trapezflächen T .n/ WD
n X
Ti WD
Ti ;
i D1
hi .f .ti1 / C f .ti //: 2
Die Trapezsumme T .n/ ist offensichtlich eine positive Linearform. Wir können sie auch interpretieren als Anwendung der Trapezregel (siehe Kapitel 9.2) T WD
ba .f .a/ C f .b// 2
(9.1)
auf die Teilintervalle Œti 1 ; ti . Vergleichen wir die Trapezsumme T .n/ mit den Riemannschen Unter- bzw. Obersummen, .n/
RU D
n X
hi
i D1
min
t2Œti1 ;ti
so ist offensichtlich, dass
f .t / und
.n/
RO D
n X iD1
.n/
hi
max
t2Œti1 ;ti
f .t /;
.n/
RU T .n/ R0 : Für stetiges f 2 C 0 Œa; b folgt daher aus der Konvergenz der Riemannschen Summen auch die der Trapezsumme: .n/
RU
.n/
T .n/ RO
#
#
#
I.f /
I.f /
I.f /
für n ! 1, hi h ! 0.
Wir werden unten (siehe Lemma 9.8) den Approximationsfehler genauer angeben.
298
9 Bestimmte Integrale
Die Trapezsumme ist ein einfaches Beispiel für eine Quadraturformel, die wir wie folgt definieren. Definition 9.3. Unter einer Quadraturformel IO zur Berechnung des bestimmten Integrals verstehen wir eine Summe IO.f / D .b a/
n X
i f .ti /
iD0
mit den Knoten t0 ; : : : ; tn und den Gewichten 0 ; : : : ; n , so dass n X
i D 1:
(9.2)
iD0
Die Bedingung (9.2) an die Gewichte garantiert uns, dass eine Quadraturformel konstante Funktionen exakt integriert, d. h. IO.1/ D I.1/ D b a. Ferner liegt auf der Hand, dass eine Quadraturformel genau dann positiv ist, wenn es alle ihre Gewichte sind, d. h. IO positiv ” k 0 für alle k D 0; : : : ; n: Wir lernen daraus, dass eigentlich nur Quadraturformeln mit positiven Gewichten interessant sind. Ist dies nicht der Fall, so misst die Summe der Beträge der Gewichte n X
ji j 1;
(9.3)
iD0
wie stark die Quadraturformel von der Positivitätsforderung abweicht. Über die Stabilität der Auswertung einer Quadraturformel müssen wir uns aufgrund der Ergebnisse für das Skalarprodukt (siehe Lemma 2.30) keine Sorgen machen.
9.2
Newton-Cotes-Formeln
Die Idee bei der Trapezsumme besteht darin, die Funktion f durch eine Approximation fO, hier die linear Interpolierende, zu ersetzen, für die sich die Quadratur einfach ausführen lässt, und I.fO/ als Approximation von I.f / anzusehen, also IO.f / WD I.fO/: Dabei können natürlich nicht nur die lineare Approximation, wie bei der Trapezregel (9.1), sondern beliebige Approximationen benutzt werden, wie sie z. B. im letzten Kapitel vorgestellt wurden. Insbesondere ist für gegebene Knoten t0 ; : : : ; tn fO.t / WD P .f j t0 ; : : : ; tn / D
n X iD0
f .ti /Li n .t /
299
9.2 Newton-Cotes-Formeln
das Interpolationspolynom von f , wobei Li n 2 P n das i -te Lagrange-Polynom zu den Knoten tj ist, d. h. Li n .tj / D ıij . Dieser Ansatz liefert die Quadraturformeln IO.f / WD I.P .f j t0 ; : : : ; tn // D .b a/
n X
i n f .ti /;
iD0
wobei die Gewichte
Z b 1 i n WD Li n .t / dt ba a nur von der Wahl der Knoten t0 ; : : : ; tn abhängen. Per Konstruktion ist klar, dass die so definierten Quadraturformeln für Polynome P 2 P n vom Grad kleiner oder gleich n exakt sind, IO.P / D I.Pn .P // D I.P /
für P 2 P n .
Für vorgegebene Knoten ti ist die Quadraturformel durch diese Eigenschaft sogar bereits eindeutig bestimmt. Lemma 9.4. Zu n C 1 paarweise verschiedene Knoten t0 ; : : : ; tn gibt es genau eine Quadraturformel n X O i f .ti /; I .f / D .b a/ iD0
die für alle Polynome P 2 P n vom Grad kleiner oder gleich n exakt ist. Beweis. Wir setzen die zu den Knoten ti gehörenden Lagrange-Polynome Li n 2 P n , die nach Voraussetzung exakt integriert werden, in die Quadraturformel ein I.Li n / D IO.Li n / D .b a/
n X
j n Li n .tj / D .b a/
j D0
n X
j ıij D .b a/i
j D0
und erhalten dadurch die Gewichte i D .b a/1 I.Li n / D i n auf eindeutige Weise zurück. Für den Spezialfall äquidistanter Knoten ba ; ti D a C ih; i D 0; : : : ; n; n heißen die so konstruierten Quadraturformeln Newton-Cotes-Formeln. Der Ausdruck für die zugehörigen Newton-Cotes-Gewichte i n vereinfacht sich der Ausdruck durch Substitution s WD .t a/= h zu Z bY Z n n t tj 1 1 n Y sj ds: dt D i n D ba a ti tj n 0 i j hi D h D
j D0
j ¤i
j D0
j ¤i
300
9 Bestimmte Integrale
Die von den Intervallgrenzen unabhängigen Gewichte i n müssen nur einmal berechnet bzw. eingegeben werden. Wir haben sie in Tabelle 9.1 bis zur Ordnung n D 4 zusammengestellt. Für die Ordnungen n D 1; : : : ; 7 sind die Gewichte und damit auch die Quadraturformel stets positiv. Höhere Ordnungen sind wenig attraktiv, da ab n D 8 auch negative Gewichte auftreten können. In diesem Fall ist die charakterisierende Größe (9.3) bis auf den Normierungsfaktor .b a/1 die Lebesgue-Konstante, die wir in Kapitel 7.1 als Kondition der Polynominterpolation kennengelernt hatten. n
Fehler
0n ; : : : ; nn
h3
1 1 2 2
1
12 f
1 4 1 6 6 6
h5
3
1 3 3 1 8 8 8 8
3h5
4
7 32 12 32 7 90 90 90 90 90
2
90 f
80
00 . /
.4/ . /
Name Trapezregel Simpson-Regel, Keplersche Faßregel
f .4/ . / Newtonsche 3=8-Regel
8h7 .6/ . / 945 f
Milne-Regel
Tabelle 9.1. Newton-Cotes-Gewichte i n für n D 1; : : : ; 4
Wir haben in Tabelle 9.1 den Newton-Cotes-Formeln bereits die jeweiligen Approximationsfehler (für hinreichend oft differenzierbare Integranden) zugeordnet, ausgedrückt in einer Potenz der Schrittweite h und einer Ableitung an einer Zwischenstelle 2 Œa; b. Zu beachten ist, dass die Potenz von h und der Grad der Ableitung bei den geraden Ordnungen n D 2; 4 jeweils um 2 springen. Für die ersten beiden Formeln werden wir diese Abschätzungen im Folgenden verifizieren, woran sich bereits das Prinzip für gerade bzw. ungerade n erkennen lässt (siehe Aufgabe 9.3). Bevor wir damit beginnen, wiederholen wir eine nicht ganz offensichtliche Variante des Mittelwertsatzes, die uns beim Beweis der Approximationsaussagen immer wieder begegnen wird. Lemma 9.5. Seien g; h 2 C Œa; b stetige Funktionen auf Œa; b, wobei g nur ein Vorzeichen habe, d. h. entweder g.t / 0 oder g.t / 0 für alle t 2 Œa; b. Dann gilt Z b Z b h.t /g.t / dt D h. / g.t / dt a
a
für ein 2 Œa; b. Beweis. Ohne Einschränkung sei g nicht negativ. Dann gilt Z b Z b Z min h.t / g.s/ ds h.s/g.s/ ds max h.t / t2Œa;b
a
a
t2Œa;b
Daher gibt es für die stetige Funktion Z b Z F .t / WD h.s/g.s/ ds h.t / a
b
g.s/ ds a
b
g.s/ ds: a
301
9.2 Newton-Cotes-Formeln
Stellen t0 ; t1 2 Œa; b mit F .t0 / 0 und F .t1 / 0, also aufgrund des Zwischenwertsatzes auch ein 2 Œa; b, so dass F . / D 0, oder mit anderen Worten Z b Z b h.t /g.t / dt D h. / g.t / dt; a
a
wie verlangt.
Lemma 9.6. Für jede zweimal stetig differenzierbare Funktion f 2 C 2 Œa; b lässt sich der Approximationsfehler der Trapezregel ba .f .a/ C f .b// 2 mit der Schrittweite h WD b a ausdrücken durch Z b h3 00 f . / f D T 12 a für ein 2 Œa; b. T D
Beweis. Mit dem Newtonschen Restglied gilt für die linear Interpolierende P D P1 .f / nach Satz 7.10, dass f .t / D P .t / C Œt; a; bf .t a/.t b/; wobei sich die zweite dividierte Differenz nach Folgerung 7.13 durch f 00 . / 2 für ein von t abhängigen D .t / 2 Œa; b ausdrücken lässt. Eingesetzt in die Quadraturformel folgt aus Lemma 9.5, dass Z b Z b Z b f D P .t / dt C Œt; a; bf .t a/.t b/ dt ƒ‚ … „ a a a Œt; a; bf D
DT C
f
00 . /
2
Z „a
0
b
.t a/.t b/ dt ƒ‚ … D .ba/ 6
für ein 2 Œa; b, also
Z
b
f D
T a
3
h3 00 f . /: 12
Lemma 9.7. Die Keplersche Faßregel a C b
ba f .a/ C 4f C f .b/ SD 6 2 ist auch für Polynome Q 2 P 3 vom Grad 3 exakt. Der Approximationsfehler lässt
302
9 Bestimmte Integrale
sich für f 2 C 4 Œa; b mit der Schrittweite h WD Z
b
f D
S a
ba 2
ausdrücken durch
f .4/ . / 5 h 90
für ein 2 Œa; b. Beweis. Sei Q 2 P 3 . Dann gilt gemäß der Newtonschen Restgliedformel für die quadratische Interpolierende P D P2 .Q/ an den Knoten a, b und .a C b/=2, dass a C b Q.t / D P .t / C .t a/ t .t b/; „ ƒ‚2 … D !3 .t / wobei D Q000 .t /=6 2 R eine Konstante ist. Für das Integral folgt daraus Z b Z b Z b QD P C !3 .t / dt D S; a
a
a
Rb
da das Integral a !k über die Newtonschen Basisfunktionen für ungerade k verschwindet. Also ist die Keplersche Faßregel auch für Polynome vom Grad 3 exakt. Für f 2 C 4 Œa; b bilden wir nun die kubische Hermite-Interpolierende Q D P3 .f / 2 P 3 zu den vier Knoten t0 D a;
t1 D
aCb ; 2
t2 D
aCb ; 2
t3 D b:
Zur Beschreibung des Approximationsfehlers von Q benutzen wir wiederum das Newtonsche Restglied, a C b 2 aCb aCb ; ; b f .t a/ x .t b/ : f .t / D Q.t / C t; a; 2 2 „ ƒ‚2 … D !4 .t / 0 Abschätzung des Restglieds gemäß Folgerung 7.13, Einsetzen in das Integral und die Anwendung des Mittelwertsatzes Z b Z f .4/ . / b f .4/ . / 5 h f DSC !4 .t / dt D S 4Š 90 a „a ƒ‚ … 4 5 D 15 h ergeben nun wieder die Behauptung.
Wie wir bereits in dem einführenden Beispiel 9.2 der Trapezsumme gesehen haben, lassen sich weitere Quadraturformeln konstruieren, indem man das Intervall unterteilt
303
9.2 Newton-Cotes-Formeln
und eine Quadraturformel jeweils auf die Teilintervalle anwendet. Wir zerlegen das Intervall wieder in n Teilintervalle Œti1 ; ti mit i D 1; : : : ; n, a D t0 < t1 < < tn D b; so dass aufgrund der Additivität des Integrals Z
b
f D a
n Z X iD1
Demnach ist IO.f / WD
n X
ti
f: ti1
i .f / IOtti1
iD1
eine (eventuell bessere) Approximation des Integrals, wobei IOtiiC1 eine beliebige Quadraturformel auf dem Intervall Œti ; tiC1 bezeichne. Im Folgenden leiten wir für die Trapezsumme den Approximationsfehler aus dem der Trapezregel ab. t
Lemma 9.8. Sei h WD .b a/=n und seien ti die äquidistanten Knoten ti D a C ih für i D 0; : : : ; n. Ferner bezeichne Ti die Trapezregel Ti WD
h .f .ti1 / C f .ti // 2
auf dem Intervall Œti 1 ; ti , wobei i D 1; : : : ; n. Dann lässt sich der Approximationsfehler der Trapezsumme T .h/ WD
n X i D1
n1 X 1 Ti D h .f .a/ C f .b// C f .a C ih/ 2 iD1
für f 2 C 2 Œa; b ausdrücken durch Z b .b a/h2 00 f . / f D T .h/ 12 a für ein 2 Œa; b. Beweis. Nach Lemma 9.6 gibt es i 2 Œti1 ; ti , so dass Z ti h3 00 f .i /; f D Ti 12 ti1 also Z T .h/
b
f D a
n X i D1
Z .Ti
ti ti1
f/D
n X h3 iD1
12
.b a/h2 1 X 00 f .i /: 12 n n
f 00 .i / D
iD1
304
9 Bestimmte Integrale
Da
1 X 00 f .i / max f 00 .t /; n t2Œa;b n
min f 00 .t /
t2Œa;b
iD1
gibt es aufgrund des Zwischenwertsatzes ein 2 Œa; b, so dass 1 X 00 f .i / D f 00 . /; n n
iD1
und daher
Z
b
T .h/
f D a
.b a/h2 00 f . /; 12
wie behauptet.
9.3
Gauß-Christoffel-Quadratur
Bei der Konstruktion der Newton-Cotes-Formeln haben wir ausgehend von n C 1 vorgegebenen Integrationsknoten ti die Gewichte i so bestimmt, dass die Quadraturformel Polynome bis zum Grad n exakt integriert. Könnten wir vielleicht mehr erreichen, wenn wir auch die Knoten zur Disposition stellen? Wir wollen diese Frage in diesem Abschnitt für die allgemeinere Aufgabe gewichteter Integrale Z b !.t / f .t / dt I.f / WD a
beantworten, wie wir sie bereits bei der Einführung der Orthogonalpolynome in Kapitel 6.1.1 kennengelernt haben. Dabei sei ! wieder eine positive Gewichtsfunktion, !.t / > 0 für alle t 2 a; bŒ, so dass die Normen 1 2
Z
b
kP k WD .P; P / D
! 12 2
!.t /P .t / dt
<1
a
für alle Polynome P 2 P k und alle k 2 N wohldefiniert und endlich sind. Im Unterschied zu Kapitel 9.2 darf hierbei das Intervall unendlich sein. Wichtig ist lediglich, dass die zugehörigen Momente Z b t k !.t / dt k WD a
beschränkt sind. Zur Definition der absoluten Kondition messen wir in natürlicher Weise die Störungen ıf über die gewichtete L1 -Norm Z b kf k1 D !.t / jf .t /j dt D I.jf j/: a
305
9.3 Gauß-Christoffel-Quadratur
Damit behalten die Resultate von Lemma 9.1 auch für gewichtete Integrale ihre Gültigkeit, nur die Interpretation von I.f / ändert sich. !.t /
Intervall Œa; b
p 1 1x 2 e t
Œ1; 1
e
Œ0; 1
x 2
Œ1; 1
1
Œ1; 1
Tabelle 9.2. Typische Gewichtsfunktionen
In Tabelle 9.2 sind die häufigsten Gewichtsfunktionen zusammen mit den zugehörigen Intervallen aufgeführt.
9.3.1
Konstruktion der Quadraturformeln
Unser Ziel ist die Konstruktion von Quadraturformeln der Form IOn .f / WD
n X
i n f .i n /;
iD0
die das Integral I.f / möglichst gut approximieren. Genauer suchen wir zu einem vorgegebenen n die n C 1 Knoten 0n ; : : : ; nn und n C 1 Gewichte 0n ; : : : ; nn , so dass Polynome bis zu einem möglichst hohen Grad N exakt integriert werden, d. h. IOn .P / D I.P /
für alle P 2 P N .
Versuchen wir zunächst einmal abzuschätzen, welcher Grad N sich bei vorgegebenem n erreichen lässt, so stellen wir fest, dass wir 2n C 2 Parameter (je n C 1 Knoten und Gewichte) zur Verfügung haben gegenüber N C 1 Koeffizienten eines Polynoms vom Grad N . Das Beste, was wir erwarten können, ist daher, dass Polynome bis zu einem Grad N 2n C 1 exakt integriert werden. Da die Integrationsknoten nichtlinear in die Quadraturformel eingehen, reicht das Abzählen der Freiheitsgrade jedoch nicht aus. Wir versuchen stattdessen, aus unserem Wunschdenken Schlüsse zu ziehen, die uns bei der Lösung des Problems hilfreich sein können. Lemma 9.9. Ist IOn für alle Polynome P 2 P 2nC1 exakt, so sind die Polynome fPk g, definiert durch PnC1 .t / WD .t 0n / .t tnn / 2 P nC1 ;
306
9 Bestimmte Integrale
orthogonal bezüglich des von ! induzierten Skalarproduktes Z b !.t /f .t /g.t / dt: .f; g/ D a
Beweis. Für j < n C 1 ist PnC1 Pj 2 P 2nC1 , so dass Z
b
.Pj ; PnC1 / D
!Pj PnC1 D IOn .Pj PnC1 / D
a
n X
i n Pj .i n / PnC1 .i n / D 0: „ ƒ‚ … iD0 D0
Die gesuchten Knoten i n müssen also die Nullstellen zueinander orthogonaler Polynome fPj g vom Grad deg Pj D j sein. Solche Orthogonalpolynome sind uns nicht unbekannt. Nach Satz 6.2 gibt es genau eine Familie fPj g von Polynomen Pj 2 Pj mit führendem Koeffizienten eins, d. h. Pj .t / D t j C , so dass .Pk ; Pj / D ıkj .Pk ; Pk /: Wir wissen sogar schon nach Satz 6.5, dass die Nullstellen dieser Orthogonalpolynome reell sind und im Intervall Œa; b liegen. Folglich haben wir auf eindeutige Weise Kandidaten für die Integrationsknoten i n der Quadraturformel IOn konstruiert: die Nullstellen des Orthogonalpolynoms PnC1 . Sind die Knoten aber erst festgelegt, bleibt den Gewichten keine Wahl: Damit zumindest Polynome P 2 P n bis zum Grad n exakt integriert werden, sind nach Lemma 9.4 die Gewichte Z b 1 Li n .t / dt i n WD ba a zu wählen mit den Lagrange-Polynomen Li n .j n / D ıij . Damit ist aber zunächst nur die Exaktheit für Polynome bis zum Grad n garantiert. Tatsächlich reicht das schon. Orthogonalpolynoms Lemma 9.10. Seien 0n ; : : : ; nn die Nullstellen des .nC1/-ten P PnC1 . Dann gilt für jede Quadraturformel IOn .f / D niD0 i f .i n /: IOn exakt auf P n ” IOn exakt auf P 2nC1 : Beweis. Sei IOn exakt auf P n und P 2 P 2nC1 . Dann gibt es Polynome Q; R 2 P n (Euklidischer Algorithmus), so dass P D QPnC1 C R: Da PnC1 senkrecht auf P n steht, folgt für das gewichtete Integral Z b Z b Z b Z b !P D !QPnC1 C !R D !R D IOn .R/: a
„a
ƒ‚ D0
…
a
a
307
9.3 Gauß-Christoffel-Quadratur
Andererseits gilt IOn .R/ D
n X
n X
i n Q.i n / PnC1 .i n / CR.i n / D IOn .P /; „ ƒ‚ … i D0 D0
i n R.i n / D
i D0
d. h., IO ist exakt auf P 2nC1 .
Wir fassen das Erreichte in folgendem Satz zusammen. Satz 9.11. Es existieren eindeutig bestimmte Knoten 0n ; : : : ; nn und Gewichte 0n ; : : : ; nn , so dass die Quadraturformel IOn .f / D
n X
i n f .i n /
iD0
Polynome bis zum Grad 2n C 1 exakt integriert, d. h. IOn .P / D
Z
b
für P 2 P 2nC1 .
!P a
Die Knoten i n sind die Nullstellen des .n C 1/-ten Orthogonalpolynoms fPnC1 g bezüglich der Gewichtsfunktion ! und die Gewichte i n
1 WD ba
Z
b
Li n .t / dt a
mit den Lagrange-Polynomen Li n .j n / D ıij . Ferner sind die Gewichte alle positiv, i n > 0, d. h., IOn ist eine positive Linearform, und sie erfüllen die Gleichung i n D
1
(9.4)
.Pn ; Pn /: 0 PnC1 .i n /Pn .i n /
Beweis. Wir müssen nur noch die Positivität der Gewichte und ihre Darstellung (9.4) nachweisen. Sei Q 2 P 2nC1 ein Polynom, dass nur an einem Knoten k n nicht verschwindet, d. h. Q.i n / D 0 für i ¤ k und Q.k n / ¤ 0. Dann gilt offensichtlich Z
b
!Q D k n Q.k n /;
also k n D
a
Setzen wir zum Beispiel
Q.t / WD
PnC1 .t / .t k n /
1 Q.k n /
2 ;
Z
b
!Q: a
308
9 Bestimmte Integrale
0 so hat Q 2 P 2n die geforderten Eigenschaften, wobei Q.k n / D PnC1 .k n /2 . Also gilt für die Gewichte
k n
1 D Q.k n /
Z
Z
b
b
!Q D a
PnC1 .t / 0 PnC1 .k n /.t k n /
! a
!2 dt > 0;
d. h., alle Gewichte sind positiv. Zum Nachweis der Formel (9.4) setzen wir Q.t / WD
PnC1 .t / Pn .t /: t k n
Wieder hat Q 2 P 2n die geforderten Eigenschaften und es folgt k n D
1 0 PnC1 .k n /Pn .k n /
Z
b
!.t / a
PnC1 .t / Pn .t / dt: t k n
Das Polynom PnC1 .t /=.t k n / hat wieder führenden Koeffizienten 1, so dass PnC1 .t / D Pn .t / C Qn1 .t / t k n für ein Qn1 2 P n1 . Da Pn senkrecht auf P n1 steht, folgt schließlich die Behauptung 1 .Pn ; Pn /: k n D 0 PnC1 .k n /Pn .k n / Diese Quadraturformeln IOn sind die Gauß-Christoffel-Formeln für die Gewichtsfunktion !. Wie bei den Newton-Cotes-Formeln ist es leicht, von der Exaktheit für einen gewissen Polynomgrad auf den Approximationsfehler zu schließen. Satz 9.12. Der Approximationsfehler der Gauß-Christoffel-Quadratur lässt sich für jede Funktion f 2 C 2nC2 ausdrücken durch Z
b a
!f IOn .f / D
f .2nC2/ . / .PnC1 ; PnC1 / .2n C 2/Š
für ein 2 Œa; b. Beweis. Wie nicht anders zu erwarten, benutzen wir das Newtonsche Restglied für die Hermite-Interpolierende P 2 P 2nC1 zu den 2n C 2 Knoten 0n ; 0n ; : : : ; nn ; nn : f .t / D P .t / C Œt; 0n ; 0n ; : : : ; nn ; nn f .t 0n /2 .t nn /2 : „ ƒ‚ … 2 D PnC1 .t / 0
309
9.3 Gauß-Christoffel-Quadratur
Da IOn die Interpolierende P exakt integriert, folgt Z
Z
b
b
!f D a
D
a n X
f .2nC2/ . / !P C .2n C 2/Š
Z
b
2 !PnC1 a .2nC2/ . /
f .PnC1 ; PnC1 /: i n P .i n / C „ ƒ‚ … .2n C 2/Š i D0 D f .i n /
Beispiel 9.13. Gauß-Tschebyscheff-Quadratur. Für die Gewichtsfunktion !.t / D p 1= 1 t 2 auf dem Intervall Œ1; 1 sind die uns wohlvertrauten Tschebyscheff-Polynome Tk orthogonal, da 8 ˆ falls k D j D 0, Z 1 <; Tk .t /Tj .t / dt D =2; falls k D j > 0, p ˆ 1 1 t2 : 0; falls k ¤ j . Daher sind Pn .t / D 21n Tn .t / die Orthogonalpolynome mit führendem Koeffizienten 1. Die Nullstellen von PnC1 (bzw. TnC1 ) sind die Tschebyscheff-Knoten i n D cos
2i C 1 2n C 2
für i D 0; : : : ; n.
Mit Hilfe von (9.4) rechnet man leicht nach, dass die Gewichte für n > 0 gegeben sind durch Z 1 22n 2 2 Tn 1 dt i n D n 0 p 1n 2 TnC1 .i n /2 Tn .i n / 1 1 t 2 2=2 D : D 0 TnC1 .i n /Tn .i n / nC1 Die Gauß-Tschebyscheff-Quadratur hat also die einfache Form IOn .f / D
X f .i n / nC1 n
2iC1 mit i n D cos 2nC2 .
i D0
Für ihren Approximationfehler gilt nach Satz 9.12 wegen .TnC1 ; TnC1 / D =2, dass Z 1 f .t / f .2nC2/ . / dt IOn .f / D 2nC1 p 2 2 .2n C 2/Š 1 1t für ein 2 Œ1; 1. Wir haben in Tabelle 9.3 die Bezeichnungen für orthogonale Polynomsysteme zu den gängigsten Gewichtsfunktionen zusammengestellt. Die zugehörigen Quadra-
310
9 Bestimmte Integrale
!.t / p 1 1x 2 e t
e x 1
2
Intervall I D Œa; b orthogonales Polynomsystem Œ1; 1
Tschebyscheff-Polynome Tn
Œ0; 1
Laguerre-Polynome Ln
Œ1; 1
Hermite-Polynome Hn
Œ1; 1
Legendre-Polynome Pn
Tabelle 9.3. Häufig auftretende orthogonale Polynomsysteme
turverfahren tragen jeweils den mit Gauß gepaarten Namen des Polynomsystems. Die Gauß-Legendre-Quadratur .! 1/ wird nur noch selten verwandt. Für reguläre Integranden ist ihr die Trapezsummenextrapolation, die wir im nächsten Abschnitt kennenlernen werden, meistens überlegen. Die Gewichtsfunktion der GaußTschebyscheff-Quadratur ist jedoch bei t D ˙1 schwach singulär, so dass die Trapezregel nicht anwendbar ist. Besonders interessant sind die Gauß-Hermite- und die Gauß-Laguerre-Quadratur, die es erlauben, Integrale über unendlichen Intervallen zu approximieren (für Polynome P 2 P 2nC1 sogar exakt zu lösen). Ein wesentliches Merkmal der Gauß-Quadratur für Gewichtsfunktionen ! 6 1 sei jedoch abschließend hier festgehalten: Die Güte der Approximation kann nur durch Erhöhung der Ordnung gesteigert werden. Eine Zerlegung in Teilintegrale ist dagegen nur bei der Gauß-Legendre-Quadratur (bzw. der Gauß-Lobatto-Quadratur, vgl. Aufgabe 9.11) möglich.
9.3.2
Berechnung der Knoten und Gewichte
Für die effektive Berechnung der Gewichte i n benötigen wir noch eine weitere Darstellung. Sei dazu fPNk g eine Familie von orthonormalen Polynomen PNk 2 P k , d. h. .PNi ; PNj / D ıij : Für diese gilt die sogenannte Christoffel-Darboux-Formel (siehe z. B. [94] oder [73]). Lemma 9.14. Sind kn die führenden Koeffizienten der orthonormalen Polynome PNn .t / D kn t n C O.t n1 /, so gilt für alle s; t 2 R ! n X kn PNnC1 .t /PNn .s/ PNn .t /PNnC1 .s/ D PNj .t /PNj .s/: knC1 t s j D0
Daraus lässt sich die folgende Formel für die Gewichte i n ableiten.
311
9.3 Gauß-Christoffel-Quadratur
Lemma 9.15. Für die Gewichte i n gilt i n D
n X
1
PNj2 .i n /
:
(9.5)
j D0
Beweis. Aus der Christoffel-Darboux-Formel folgt mit s D i n , dass n X kn PNnC1 .t / N Pn .i n / D PNj .t /PNj .i n / knC1 t i n
(9.6)
j D0
und im Grenzfall t ! i n kn knC1
0 .i n /PNn .i n / D PNnC1
n X
PNj .i n /2 :
(9.7)
j D0
Setzen wir dies in die Formel (9.4) für die Gewichte i n ein, so folgt Z
b
i n D
!.t / a
PnC1 .t / dt 0 .t i n /PnC1 .i n /
Z b n X knC1 Nj .i n / !.t /PNj .t / dt P 0 kn PNn .i n /PNnC1 .i n / j D0 a „ ƒ‚ … D 0 für j ¤ 0 Z b knC1 !.t /PN0 .i n /PN0 .t / dt D 0 kn PNn .i n /PNnC1 .i n / a „ ƒ‚ … D .PN0 ; PN0 / D 1 n X
1 .9:7/ D : PNj2 .i n / .9:6/
D
j D0
Die tatsächliche Bestimmung der Gewichte i n und Knoten i n stützt sich auf Techniken, die auf dem Stoff von Kapitel 6 aufbauen. Dazu erinnern wir daran, dass die Orthogonalpolynome Pk zur Gewichtsfunktion ! nach Satz 6.2 einer Drei-TermRekursion (9.8) Pk .t / D .t ˇk /Pk1 .t / k2 Pk2 .t / genügen, wobei ˇk D
.tPk1 ; Pk1 / ; .Pk1 ; Pk1 /
k2 D
.Pk1 ; Pk1 / : .Pk2 ; Pk2 /
312
9 Bestimmte Integrale
Wir nehmen daher an, dass die Orthogonalpolynome durch ihre Drei-Term-Rekursion 9.8 gegeben sind, die wir für k D 0; : : : ; n als lineares Gleichungssystem Tp D tpCr mit 3 2 ˇ1 1 7 6 7 6 2 7 6 2 ˇ2 1 7 6 7 6 :: :: :: T WD 6 7 : : : 7 6 7 6 2 ˇ 7 6 1 n n 5 4 2 nC1 ˇnC1 und p WD .P0 .t /; : : : ; Pn .t //T ;
r WD .0; : : : ; 0; PnC1 .t //T
schreiben können. Damit gilt PnC1 .t / D 0 ” Tp D tp; d. h., die Nullstellen von PnC1 sind gerade die Eigenwerte von T , wobei zu einem Eigenwert der Eigenvektor p. / gehört. Da die Nullstellen i n von PnC1 alle reell sind, könnte man auf die Idee kommen, dass sich das Eigenwertproblem Tp D tp in ein symmetrisches Eigenwertproblem transformieren lässt. Die einfachste Möglichkeit wäre die der Skalierung mit einer Diagonalmatrix D D diag.d0 ; : : : ; dn / zu TO pO D t pO
mit pO D Dp, TO D DTD 1 ,
wobei wir hoffen, TO D TO T erreichen zu können. Explizit gilt für die diagonale Skalierung angewandt auf eine Matrix A 2 MatnC1 .R/, dass A 7! AO WD DAD 1
mit aO ij D
di dj
aij .
Damit TO symmetrisch ist, muss daher i2
di di1 D ; di 1 di
2 d. h. di2 D di1 =i2 ,
gelten, was wir ohne Probleme z. B. durch d0 WD 1
und
di WD .2 iC1 /1
für i D 1; : : : ; n
313
9.4 Klassische Romberg-Quadratur
erfüllen können. Bei dieser Wahl von D ist TO die symmetrische Tridiagonalmatrix 2
3
ˇ1 2
6 6 6 2 6 6 TO D 6 6 6 6 4
ˇ2 3 :: :: : : 1
::
:
ˇn
nC1
7 7 7 7 7 7 D TO T ; 7 7 7 5
nC1 ˇn deren Eigenwerte 0n ; : : : ; nn wir mit Hilfe des QR-Algorithmus berechnen können (vgl. Kapitel 5.3). Die Gewichte i n lassen sich dann mit (9.5) ebenfalls über die Drei-Term-Rekursion (9.8) berechnen. Sobald die .i n ; i n / vorliegen, ist die GaußQuadratur ausführbar (siehe auch [48]).
9.4
Klassische Romberg-Quadratur
Im Folgenden wollen wir eine andere Art von Integrationsverfahren kennenlernen, die auf der Trapezsumme basiert. Die bisher besprochenen Quadraturformeln bezogen sich alle auf ein einziges festes Gitter t0 ; : : : ; tn von Knoten, an denen die Funktion ausgewertet wurde. Im Gegensatz dazu nutzen wir bei der Romberg-Quadratur eine Folge von Gittern und versuchen, aus den dazu gehörenden Trapezsummen eine bessere Approximation des Integrals zu konstruieren.
9.4.1
Asymptotische Entwicklung der Trapezsumme
Bevor wir das Verfahren beschreiben können, müssen wie die Struktur des Approximationsfehlers der Trapezregel näher analysieren. Wir bezeichnen mit T .h/ für eine Schrittweite h D .b a/=n, n D 1; 2; : : : , die Trapezsumme T .h/ WD T n WD h
n1 X 1 .f .a/ C f .b// C f .a C ih/ 2 iD1
für die äquidistanten Knoten ti D a C ih. Der folgende Satz zeigt, dass sich die Trapezsumme T .h/ als Funktion von h in eine sogenannte asymptotische Entwicklung in h2 entwickeln lässt. Satz 9.16. Sei f 2 C 2mC1 Œa; b und h D ba n für ein n 2 N n f0g. Dann besitzt die Trapezsumme T .h/ folgende asymptotische Entwicklung des Approximationsfehlers Z T .h/ D a
b
f .t / dt C 2 h2 C 4 h4 C C 2m h2m C R2mC2 .h/h2mC2
(9.9)
314
9 Bestimmte Integrale
mit den Koeffizienten 2k D
B2k .2k1/ f .b/ f .2k1/ .a/ ; .2k/Š
wobei B2k die Bernoulli-Zahlen sind, und dem Restterm Z b K2mC2 .t; h/f .2m/ .t / dt: R2mC2 .h/ D a
Der Restterm R2mC2 ist gleichmäßig in h beschränkt, d. h., es gibt eine von h unabhängige Konstante C2mC2 0, so dass jR2mC2 .h/j C2mC2 jb aj
für alle h D .b a/=n:
Der Beweis dieses klassischen Satzes beruht auf der sogenannten Eulerschen Summenformel. Wir verweisen dazu auf [61]. Im allgemeineren Kontext der Lösung von Anfangswertproblemen bei gewöhnlichen Differentialgleichungen ergibt sich die h2 Entwicklung ebenfalls, jedoch auf einfachere Weise (siehe [53]). Bemerkung 9.17. Die im Restterm auftretenden Funktionen K2mC2 hängen eng mit den Bernoulli-Funktionen B2kC2 zusammen. Für periodische Funktionen f mit Periode b a verschwinden alle 2k , d. h., der gesamte Fehler bleibt im Restterm. In diesem Fall kann mit der Romberg-Integration, wie wir sie im Folgenden beschreiben, keine Verbesserung erzielt werden. Tatsächlich liefert in diesem Fall die einfache Trapezsumme bereits das Resultat der trigonometrischen Interpolation (vgl. Kapitel 7.2). Für große k gilt für die Bernoulli-Zahlen B2k , dass B2k .2k/Š; so dass die Reihe (9.9) im Allgemeinen auch für analytische Funktionen f 2 C ! Œa; b divergiert für m ! 1, d. h., im Gegensatz zu den aus der Analysis bekannten Reihenentwicklungen (Taylor-, Fourier-Reihen) wird die Funktion in Satz 9.16 in eine divergente Reihe entwickelt. Dies scheint zunächst wenig Sinn zu haben; tatsächlich können jedoch häufig die endlichen Partialsummen genutzt werden, um einen Funktionswert hinlänglich genau zu berechnen, obwohl die zugehörige unendliche Reihe divergiert. Zur Illustration, dass eine derartige Entwicklung in eine divergente Reihe numerisch nützlich sein kann, betrachten wir folgendes Beispiel (vgl. [61]). Beispiel 9.18. Sei f .h/ eine Funktion mit einer asymptotischen Entwicklung in h, so dass für alle h 2 R und n 2 N f .h/ D
n X
.1/k kŠ hk C .1/nC1 .n C 1/Š hnC1
kD0
für ein 0 < D .h/ < 1.
315
9.4 Klassische Romberg-Quadratur
Die Reihe menfolge
P
.1/k kŠ hk divergiert für alle h ¤ 0. Betrachtet man die Partialsumsn .h/ WD
n X
.1/k kŠ hk
kD0
für kleine h, 0 ¤ h 1, so scheint diese zunächst zu konvergieren, da die Glieder .1/k kŠ hk der Reihe zunächst stark abnehmen. Ab einem gewissen Index überwiegt jedoch kŠ, die Glieder werden beliebig groß und die Partialsummenfolge divergiert. Da jf .h/ sn .h/j D j.1/nC1 .n C 1/Š hnC1 j < j.n C 1/Š hnC1 j; ist der Fehler, den wir bei der Approximation von f durch sn machen, stets kleiner als das erste weggelassene Glied. Um f .h/ auf eine (absolute) Genauigkeit von tol zu bestimmen, müssen wir ein n finden, so dass j.n C 1/Š hnC1 j < tol : Ganz konkret erhalten wir z. B. f .103 / auf zehn Dezimalstellen genau für n D 3 durch f .103 / s3 .103 / D 1 103 C 2 106 6 109 : Wegen ihres „fast konvergenten“ Verhaltens nannte Legendre solche Reihen auch semi-konvergent. Euler machte sich das Leben etwas einfacher, indem er für alle Reihen dieselbe Schreibweise benutzte, ob sie nun konvergierten oder nicht.
9.4.2
Idee der Extrapolation
Wir haben in Kapitel 9.2 das Integral Z
b
I.f / WD
f .t / dt a
approximiert durch die Trapezsumme T .h/ D T .n/ D h
n1 X 1 .f .a/ C f .b// C f .a C ih/ 2
mit h D
ba n ;
iD1
wobei die Güte der Approximation von der Schrittweite h abhängt. Der Ausdruck T .h/ konvergiert für h ! 0 gegen das Integral I.f /; genauer müssten wir sagen „für n ! 1 und h D .b a/=n“, da T .h/ nur für die diskreten Werte h D .b a/=n, n D 1; 2; : : : , erklärt ist. Wir schreiben dafür lim T .h/ WD lim T .n/ D I.f /:
h!0
n!1
316
9 Bestimmte Integrale
Zur Veranschaulichung der Grundidee der Romberg-Quadratur gehen wir zunächst davon aus, dass wir T .h/ für zwei Schrittweiten hi WD
ba ; ni
i D 1; 2;
berechnet haben und betrachten die denkbar einfache Funktion f .t / D t 2 über dem Einheitsintervall Œa; b D Œ0; 1 und ni D i (siehe Abbildung 9.3). Da die zweite f
0
h2
0:5
h2
1
t
Abbildung 9.3. Trapezsummen T .h1 / und T .h2 / für f .t/ D t 2
Ableitung f .2/ konstant 2 ist, gilt R4 .h/ D 0, so dass T .h/ D I.f / C 2 h2 C R4 .h/h4 D I.f / C 2 h2 :
(9.10)
Den Koeffizienten 2 können wir aus den Trapezsummen T .h1 / D T .1/ D I.f / C 2 h21 D 1=2; T .h2 / D T .1=2/ D I.f / C 2 h22 D 3=8 bestimmen als
T .h1 / T .h2 / 1 D : 2 2 6 h1 h 2 Wieder eingesetzt in (9.10) erhalten wir das Integral 2 D
I.f / D T .h1 / 2 h21 D T .h1 /
T .h2 / T .h1 / 2 1 h1 D 3 h22 h21
(9.11)
aus den beiden Trapezsummen (siehe Abbildung 9.4). Wir können die Formel (9.11) auch wie folgt erklären: Auf der Basis der asymptotischen Entwicklung der Trapezregel bestimmen wir das Interpolationspolynom in h2 zu den Punkten .h21 ; T .h1 // und .h22 ; T .h2 /, P .T .h/ j h21 ; h22 /.h2 / D T .h1 / C
T .h2 / T .h1 / 2 .h h21 /; h22 h21
317
9.4 Klassische Romberg-Quadratur
T .h1 / D
1 2
T .h2 / D
3 8 1 3 1 4
+
o
+
o
+ o
+
+
0
h22 D
+
h21 D 1
1 4
h2
Abbildung 9.4. (Lineare) Extrapolation
und extrapolieren für h2 D 0, d. h. P .T .h/ j h21 ; h22 /.0/ D T .h1 /
T .h2 / T .h1 / 2 h1 : h22 h21
Als extrapolierten Wert P .T .h/ j h21 ; h22 /.0/ für h2 D 0 erwarten wir eine bessere Näherung von I.f /. Diese Grundidee überträgt sich natürlich auch auf höhere Ordnungen bei entsprechend wiederholter Auswertung von T .h/ für sukzessive kleinere h D hi . Insbesondere kann sie in allgemeinerem Zusammenhang immer dann benutzt werden, wenn ein Verfahren eine asymptotische Entwicklung des Approximationsfehlers zulässt. Dies führt zur Klasse der sogenannten Extrapolationsmethoden. Um den Gedankengang zu präzisieren, gehen wir aus von einem Verfahren T .h/, welches in Abhängigkeit von einer „Schrittweite“ h einen gesuchten Wert 0 berechnet. Dabei lassen wir zu, dass T .h/ nur für diskrete Werte h definiert ist (s. o.). Zusätzlich verlangen wir, dass das Verfahren für h ! 0 gegen 0 konvergiert, d. h. lim T .h/ D 0 :
h!0
(9.12)
Definition 9.19. Das Verfahren T .h/ zur Berechnung von 0 besitzt eine asymptotische Entwicklung in hp bis zur Ordnung pm, falls es Konstanten p ; 2p ; : : : ; mp in R gibt, so dass T .h/ D 0 C p hp C 2p h2p C C mp hmp C O.h.mC1/p /
für h ! 0. (9.13)
Bemerkung 9.20. Die Trapezregel besitzt für Funktionen f 2 C 2mC1 Œa; b nach Satz 9.16 eine asymptotische Entwicklung in h2 bis zur Ordnung 2m. Haben wir T .h/ für k verschiedene Schrittweiten h D hikC1 ; : : : ; hi
318
9 Bestimmte Integrale
berechnet, so können wir das Interpolationspolynom in hp p
p
Pik .hp / D P .hp I hikC1 ; : : : ; hi / 2 P k1 .hp / zu den Stützpunkten p
p
.hi kC1 ; T .hikC1 //; : : : ; .hi ; T .hi // bestimmen und durch Auswertung an der Stelle h D 0 extrapolieren. Wir erhalten so die Näherungen Tik , Tik WD Pik .0/ für 1 k i ; von 0 . Nach Kapitel 7.1.2 verwenden wir zur Berechnung von Tik natürlich den Algorithmus von Aitken und Neville. Die Rekursionsformel (7.4) transformiert sich dabei wie folgt in die jetzige Situation: Ti1 WD T .hi / für i D 1; 2; : : : Ti;k1 Ti1;k1 Tik WD Ti;k1 C hikC1 p 1 hi
für 2 k i:
Das Schema von Neville geht dabei über in das sogenannte Extrapolationstableau. T11 & T21 :: :
! T22 ::
:
Tk1;1 ! ! Tk1;k1 & Tk1
&
&
! ! Tk;k1
! Tkk
Bemerkung 9.21. In Anlehnung an [20] zählen wir bei den Extrapolationsmethoden von 1 an. Dies führt, wie wir unten sehen werden, zu einem angenehmeren Zusammenhang zwischen der Ordnung der Approximation Tkk und der Anzahl k der berechneten Werte T .h1 / bis T .hk /. Bezeichnen wir die Approximationsfehler der durch Extrapolation gewonnenen Näherungen Tik von 0 mit "ik WD jTik 0 j
für 1 k i ,
319
9.4 Klassische Romberg-Quadratur
so können wir diese entsprechend in einem Fehlertableau anordnen. "11 "21 :: :
& ! "22
::
(9.14)
:
"k1;1 ! ! "k1;k1 & & & ! ! "k;k1 ! "kk "k1 Der folgende auf R. Bulirsch [12] zurückgehende Satz gibt Auskunft darüber, wie sich diese Fehler verhalten. Satz 9.22. Sei T .h/ ein Verfahren mit einer asymptotischen Entwicklung .9:13/ in hp bis zur Ordnung pm und h1 ; : : : ; hm verschiedene Schrittweiten. Dann gilt für die Approximationsfehler "ik der Extrapolationswerte Tik p
p
für 1 k i m und hj h ! 0:
"ik D P jkp j hi kC1 hi ƒ‚ … „ k Faktoren
Genauer gilt "ik D
p p jkp j hi kC1 hi
i X
C
.kC1/p
O.hj
/
für hj h ! 0:
j DikC1
Der Satz besagt, dass wir im Wesentlichen pro Spalte des Extrapolationstableaus p Ordnungen gewinnen können. Da wir es jedoch mit asymptotischen und nicht mit Reihenentwicklungen zu tun haben, ist diese Sichtweise zu optimistisch. Die hohe Ordnung nützt wenig, wenn die Restterme der asymptotischen Entwicklung, die sich .kC1/p / verbergen, sehr groß werden. Zum Beweis des Satzes verhinter dem O.hj wenden wir folgende Hilfsaussage. Lemma 9.23. Für die Lagrange-Funktionen L0 ; : : : ; Ln zu den Stützstellen t0 ; : : : ; tn gilt 8 ˆ für m D 0, n <1 X m Lj .0/tj D 0 für 1 m n, ˆ : n j D0 .1/ t0 tn für m D n C 1. Beweis. Für 0 m n ist P .t / D t m das Interpolationspolynom zu den Punkten .tj ; tjm / für j D 0; : : : ; n und daher P .t / D t m D
n X j D0
Lj .t /P .tj / D
n X j D0
Lj .t /tjm :
320
9 Bestimmte Integrale
Setzen wir t D 0, so folgt die Behauptung für die ersten beiden Fälle. Für den Fall m D n C 1 betrachten wir das Polynom Q.t / WD t nC1
n X
Lj .t /tjnC1 :
j D0
Dies ist ein Polynom vom Grad n C 1 mit führendem Koeffizienten 1 und den Nullstellen t0 ; : : : ; tn , also Q.t / D .t t0 / .t tn / und speziell
n X
Lj .0/tjnC1 D Q.0/ D .1/n t0 tn :
j D0
Wir kommen nun zum Beweis von Satz 9.22. Beweis von Satz 9:22. Da T .h/ eine asymptotische Entwicklung in hp bis zur Ordnung pm besitzt, gilt für 1 k m p
.kC1/p
kp
Tj1 D T .hj / D 0 C p hj C C .kC1/p hj C O.hj
/:
Es reicht aus, die Behauptung für i D k zu zeigen (der Fall i ¤ k folgt daraus durch Verschieben der Indizes der hj ). Sei also p
p
Pkk D P .hp I h1 ; : : : ; hk / p
das Interpolationspolynom in hp zu den Stützpunkten .hj ; T .hj // für j D 1; : : : ; k, und seien ferner L1 .hp /; : : : ; Lk .hp / die Lagrange-Polynome zu den Stützstellen p p h1 ; : : : ; hk . Dann gilt k X Lj .hp /Tj1 : Pkk .hp / D j D1
Daher ist wegen (9.4.2) und Lemma 9.23 Tkk D Pkk .0/ D
k X
Lj .0/Tj1
j D1
D
k X
h i k .kC1/p p Lj .0/ 0 C p hj C C kp hj p C O.hj /
j D1
D 0 C
p kp .1/k1 h1
p hk
C
k X j D1
.kC1/p
O.hj
/;
321
9.4 Klassische Romberg-Quadratur
also "kk D jTkk 0 j D
p jkp j h1
h0k
C
k X
.kC1/p
O.hj
/:
j D1
Die dargestellte Theorie legt für ein Verfahren T .h/ mit asymptotischer Entwicklung den folgenden Extrapolationsalgorithmus nahe. Wir gehen aus von einer Grundschrittweite (engl.: basic stepsize) H und bilden die Schrittweiten hi durch Teilen von H , also hi D H=ni mit ni 2 N. Algorithmus 9.24. Extrapolationsverfahren. 1. Wähle für eine gegebene Grundschrittweite H eine Folge von Schrittweiten h1 ; h2 ; : : : mit hj D H=nj , nj C1 > nj und setze i WD 1. 2. Bestimme Ti1 D T .hi /. 3. Berechne Tik für k D 2; : : : ; i mit dem Schema von Neville Ti;k1 Ti1;k1 : Tik D Ti;k1 C p ni 1 nikC1 4. Falls Ti i genau genug oder i zu groß, beende den Algorithmus. Ansonsten erhöhe i um 1 und gehe zurück zu 2. Diese grobe Beschreibung lässt natürlich noch viele Fragen offen. So ist nicht klar, was „Ti i genau genug“ oder „i zu groß“ heißen soll. Auch ist nicht klar, wie die Schrittweiten hj gewählt werden sollen. Am Beispiel der Romberg-Quadratur werden wir in den nächsten Abschnitten darauf näher eingehen.
9.4.3
Details des Algorithmus
Wie wir oben gesehen haben, ist die Trapezsumme ein Verfahren mit einer asymptotischen Entwicklung in h2 , wobei die Ordnung, bis zu der wir entwickeln können, von der Glattheit des Integranden abhängt. Daher können wir alles im letzten Abschnitt beschriebene auf die Trapezregel anwenden und erhalten als Extrapolationsverfahren die von W. Romberg eingeführte klassische Romberg-Quadratur. Der Aufwand Ai zur Berechnung von Ti i lässt sich im Wesentlichen durch die Anzahl der benötigten Funktionsauswertungen von f messen, Ai WD Anzahl der zur Berechnung von Ti i benötigten f -Auswertungen. Diese Zahlen hängen natürlich von der gewählten Folge n1 ; n2 ; : : : ab. Wir ordnen daher jeder aufsteigenden Folge F D fn1 ; n2 ; : : : g;
ni 2 N n f0g;
322
9 Bestimmte Integrale
die zugehörige Aufwandsfolge A D fA1 ; A2 ; : : : g zu. Für die sogenannte Romberg-Folge ni D 2i1 ;
FR D f1; 2; 4; 8; 16; : : : g; ergibt sich AR D f2; 3; 5; 9; 17; : : : g;
Ai D ni C 1:
Für diese Folge lassen sich die Trapezsummen besonders einfach rekursiv berechnen (siehe Abbildung 9.5).
r
b
h2 D H=2
a b
a
r
h1 D H
a
r
h3
r
h2 D H=2
b
h3
b
r
h3
b
b b
h3
b
2 neue f -Auswertungen
1 neue f -Auswertung
2 neue f -Auswertungen
Abbildung 9.5. Berechnung der Trapezsummen bei der Romberg-Folge
Für h D H=n erhalten wir T .h=2/ D D
2n1
X h f .a/ C 2 f .a C ih=2/ C f .b/ 4
h 4 „
f .a/ C 2
i D1 n1 X
n
hX 2k 1 h f .a C kh/ C f .b/ C f aC 2 2 kD1 kD1 ƒ‚ … D T .h/=2
und daher für die Romberg-Folge hi D H=2i1 nX i1 1 Ti1 D Ti 1;1 C hi f .a C .2k 1/hi /: 2 kD1
323
9.4 Klassische Romberg-Quadratur
Stellt man die Extrapolationswerte Ti i der Romberg-Quadratur als Quadraturformel mit Gewichten j dar, Ai X j fj ; Ti i D H j D1
wobei fj der j -te berechnete Funktionswert ist, so lässt sich zeigen (siehe Aufgabe 9.6), dass sich für die Romberg-Folge FR nur positive Gewichte j ergeben. Vom Aufwand her wurde bereits von Romberg in seiner Originalarbeit [84] eine noch günstigere Folge vorgeschlagen; sie heißt heute Bulirsch-Folge: 8 k1 ; ˆ falls i D 2k, <2 k FB WD f1; 2; 3; 4; 6; 8; 12; 16; 24; : : : g; ni D 3 2 ; falls i D 2k C 1, ˆ : 1; falls i D 1: Die zugehörige Aufwandsfolge ist AB D f2; 3; 5; 7; 9; 13; 17; : : : g: Allerdings hat die Folge FB den Nachteil, dass die zugehörige Quadraturformel nun auch negative Gewichte enthalten kann (siehe Tabelle 9.4). Im Rahmen eines Verfahrens variabler Ordnung ist diese Eigenschaft nicht ganz so dramatisch, da solche Verfahren in kritischen Bereichen auf niedrige Ordnung (mit positiven Gewichten) zurückschalten können (siehe Kapitel 9.5). 0
1 6
1 4
1 3
1 2
P
ji j
T1;1
1 2
T2;1
1 4
1 2
1
T2;2
1 6
2 3
1
T3;2
1 10
3 5
2 3
1
T3;3
11 120
27 40
8 15
2:067
T4;3
13 210
16 21
27 35
94 105
4:086
T4;4
151 256 2520 315
243 280
104 105
4:471
1
Tabelle 9.4. Gewichte j zu den Diagonal- und Nebendiagonalelementen des Extrapolationstableaus an den Knoten tj für die Bulirsch-Folge (beachte j D nj , tj D tnj )
Bemerkung 9.25. Bei der Lösung von Anfangswertproblemen gewöhnlicher Differentialgleichungen tritt auch die denkbar einfache harmonische Folge FH D f1; 2; 3; : : : g;
ni D i;
324
9 Bestimmte Integrale
auf. In unserem Zusammenhang der Quadratur ist sie jedoch wesentlich ungünstiger als die Romberg-Folge, da zum einen der Aufwand größer ist, AH D f2; 3; 5; 7; 11; 13; 19; 23; 29; : : : g; zum anderen die Trapezsummen Ti1 nicht rekursiv berechnet werden können. Die Berechnung des Extrapolationstableaus wird zeilenweise durchgeführt. Es wird abgebrochen, falls genügend viele Ziffern „stehen“ oder falls keine Verbesserung der Konvergenz beobachtet wird. Beispiel 9.26. Nadelimpuls: Zu berechnen sei das Integral Z 1 dt 4 C t2 1 10
(9.15)
(vgl. Abbildung 9.10) auf die relative Genauigkeit tol D 108 . Die Werte Tkk des Extrapolationstableaus sind in Tabelle 9.5 angegeben. k
Tkk
"kk
1 2 3 4 5 6 7 8 9 10 11 12 13
1.999800 13333.999933 2672.664361 1551.888793 792.293096 441.756664 307.642217 293.006708 309.850398 312.382805 312.160140 312.159253 312.159332
9:9 101 4:2 101 7:6 100 4:0 100 1:5 100 4:2 101 1:4 102 6:1 102 7:4 103 7:2 104 2:6 106 2:5 107 1:1 109
Ak 2 3 5 9 17 33 65 129 257 513 1025 2049 4097
Tabelle 9.5. Romberg-Quadratur für den Nadelimpuls f .t/ D 1=.104 C t 2 /, "kk : relative Genauigkeit, Ak : Aufwand in f -Auswertungen
9.5
Adaptive Romberg-Quadratur
Bisher haben wir als Grundschrittweite die Länge des gesamten Intervalls H D b a zugrunde gelegt. Denken wir an den Nadelimpuls (9.10), so leuchtet sofort ein, dass in diesem Beispiel die entscheidenden Beiträge zum Gesamtintegral häufig nur über
325
9.5 Adaptive Romberg-Quadratur
einem oder mehreren kleinen Teilintervallen liegen. Gehen wir von der Grundschrittweite H D b a aus, so sind alle Bereiche des Grundintervalls Œa; b gleichberechtigt,wir wenden überall das gleiche Verfahren an. Dies kann nicht der beste Weg sein, um Funktionen zu integrieren. Vielmehr sollten wir das Integrationsintervall so unterteilen, dass wir in jedem Bereich ein der Funktion angepasstes Verfahren wählen und so mit möglichst wenig Aufwand das Integral bis auf eine vorgegebene relative Genauigkeit bestimmen. Derartige Verfahren, die sich selbst steuernd problemangepasst eine Lösung berechnen, nennt man adaptive Verfahren. Ihr wesentlicher Vorteil liegt darin, dass eine große Klasse von Problemen mit ein und demselben Programm bearbeitet werden kann, ohne dass der Benutzer Anpassungen vorzunehmen hat, d. h., ohne dass a-priori-Wissen über das Problem in das Verfahren investiert werden muss. Das Programm selbst versucht sich dem Problem anzupassen. Um dies zu erreichen, werden die im Laufe des Algorithmus berechneten Teilergebnisse ständig überprüft. Dies dient zweierlei: Zum einen kann der Algorithmus dadurch automatisch eine bezüglich des Aufwandes optimale Lösungsstrategie auswählen und so die gestellte Aufgabe effektiv lösen. Zum anderen wird dadurch gewährleistet, dass das Programm sicherer arbeitet und möglichst keine Scheinlösungen abliefert, die in Wirklichkeit wenig mit dem gestellten Problem zu tun haben. Ziel sollte auch sein, dass das Programm seine eigenen Grenzen erkennt und z. B. angibt, dass eine vorgegebene Genauigkeit nicht erreicht werden kann. Dieses adaptive Konzept ist im Allgemeinen nur durchführbar, wenn eine vernünftige Schätzung für den auftretenden Approximationsfehler zur Verfügung steht, die zudem bezüglich des Rechenaufwandes vergleichsweise billig berechnet werden kann.
9.5.1
Adaptives Prinzip
In der Quadratur lautet die Aufgabenstellung genauer formuliert: Approximiere das Rb Integral I D a f .t / dt auf eine vorgegebene relative Genauigkeit tol, d. h., berechne eine Näherung IO von I , so dass jIO I j jI j tol :
(9.16)
Da wir I nicht kennen, ersetzen wir (9.16) durch die Forderung jIO I j Iskal tol;
(9.17)
wobei Iskal („skal“ wie „Skalierung“) in der Größenordnung von jI j liegen soll. Dieser Wert wird entweder vom Benutzer zusammen mit tol vorgegeben oder aus den ersten Approximationen gewonnen. Während die klassische Romberg-Quadratur lediglich die Ordnung des Verfahrens adaptiert, um eine gewünschte Genauigkeit zu erreichen, wird bei der adaptiven Romberg-Quadratur zusätzlich noch die Grundschrittweite H angepasst. Dabei
326
9 Bestimmte Integrale
gibt es zwei prinzipielle Möglichkeiten, das Problem anzupacken: die Anfangswertmethode (dieser Abschnitt) und die Randwertmethode (übernächster Abschnitt). Die folgenden Überlegungen stützen sich auf [20] und [22]. Wir gehen aus von der Formulierung des Quadraturproblems als Anfangswertaufgabe Z
0
y .t / D f .t /;
y.a/ D 0;
y.b/ D
b
f .t / dt a
und versuchen, das Integral von links nach rechts fortschreitend zu berechnen (siehe Abbildung 9.6). Dabei zerlegen wir das Grundintervall in geeignete, der Funktion f angepasste Teilintervalle Œti ; ti C1 der Länge Hi WD tiC1 ti und wenden auf die so f
y.t / D
Rt a
f ./d
a
t
b
Abbildung 9.6. Quadratur als Anfangswertproblem
entstehenden Teilprobleme
Z
tiC1
Ii
f .t / dt ti
die Romberg-Quadratur bis zu einem bestimmten Grad qi an. Bemerkung 9.27. Bei diesem Anfangswertzugang wird leider die Symmetrie Iab .f / D Iba .f / zerstört, da wir eine Richtung (von links nach rechts) auszeichnen. Bei dem Randwertzugang (siehe Kapitel 9.7) wird dies nicht der Fall sein. Diese erste oberflächliche Beschreibung gibt Anlass zu etlichen Fragen. Welche Schrittweiten soll der Algorithmus wählen? Bis zu welcher Ordnung soll die Romberg-Quadratur bezüglich eines Teilintervalls ausgeführt werden? Wie lässt sich das Ergebnis (lokal) überprüfen? Wir konstruieren im Folgenden ein Verfahren, welches ausgehend von einer eingegebenen Schrittweite H und Ordnung q das Integral des nächsten Teilintervalls
327
9.5 Adaptive Romberg-Quadratur
f
I tt CH a
t CH
t
b
Abbildung 9.7. Ein Schritt der adaptiven Romberg-Quadratur
Eingabe H; q
!
Quadraturschritt
!
? y
Ausgabe I ttCH ; HQ ; qQ
ggf. Fehlermeldung Abbildung 9.8. Schematische Darstellung eines Quadraturschrittes
berechnet und Vorschläge für die Schrittweite HQ und die Ordnung qQ für den folgenden Schritt macht. Ist die Berechnung des Teilintegrals I ttCH .f / auf die gewünschte Genauigkeit mit der vorgegebenen Ordnung nicht möglich, so soll das Verfahren eine neue Ordnung q und/oder eine reduzierte Schrittweite H wählen. Nach „allzu häufiger“ Reduktion von H soll das Verfahren abbrechen.
9.5.2
Schätzung des Approximationsfehlers
Um das oben skizzierte adaptive Konzept bezüglich Ordnung und Grundschrittweite realisieren zu können, benötigen wir eine vernünftige und billige Technik, den Approximationsfehler zu schätzen. Dies ist besonders einfach bei Extrapolationsmethoden, da im Extrapolationstableau eine ganze Reihe verschiedener Approximationen vorliegt. Auf dieses Tableau von Näherungen wird sich die Schätztechnik stützen. Allgemein heißt eine Größe "N Schätzer (engl.: estimator) für einen unzugänglichen Approximationsfehler ", kurz "N D Œ", falls sich "N durch " nach oben und unten abschätzen lässt, d. h., falls es Konstanten 1 1 2 gibt, so dass 1 " "N 2 ":
(9.18)
328
9 Bestimmte Integrale
Die Konstruktion eines effektiven Fehlerschätzers gehört zu den schwierigsten Aufgaben bei der Entwicklung eines adaptiven Algorithmus. Eine übliche Methode besteht darin, eine Approximation niedrigerer Ordnung mit einer höherer Ordnung zu vergleichen. Alle Fehlerschätzer, die wir in diesem Buch kennenlernen werden, basieren auf diesem Bauprinzip. Lokal, d. h. bezüglich eines Teilintervalls Œt; t C H mit der Grundschrittweite H , wird in unserem Fall die Approximationsgüte durch das bereits früher eingeführte Fehlertableau (9.14) der "ik beschrieben. Im Rückgriff auf Satz 9.22 wissen wir bereits, dass "ik
Z ˇ ˇ D ˇTik
tCH t
ˇ ˇ : f . / d ˇ D j2k j h2ikC1 h2i
für hj H ! 0.
(9.19)
Die Koeffizienten der asymptotischen Entwicklung der Trapezregel lassen sich zudem für H ! 0 abschätzen durch 2k D
B2k : B2k .2k/ .f .2k1/ .t C H / f .2k1/ .t // D f .t / H: .2k/Š .2k/Š ƒ‚ … „ DW N2k
Die Konstanten N2k hängen dabei vom Integranden f , also vom Problem, ab. Eingesetzt in (9.19) folgt : : "ik D jN2k j h2ikC1 h2i H D jN2k j ik H 2kC1 wobei
für H ! 0,
ik WD .nikC1 ni /2 :
Die Ordnung 2k C 1 bzgl. H ist nur abhängig vom Spaltenindex k des Extrapolationstableaus. Insbesondere gilt für zwei aufeinanderfolgende Fehler in einer Spalte k, unabhängig vom Problem, dass iC1;k "i C1;k D P D "ik ik
nikC1 niC1
2
1:
Mit anderen Worten, unabhängig vom Problem und unabhängig von H werden die Approximationsfehler innerhalb einer Spalte k mit wachsendem Zeilenindex i schnell kleiner: (9.20) "iC1;k "ik : Für die Beziehung zwischen den Spalten benötigt man noch eine weitere Annahme, nämlich: Höhere Approximationsordnungen liefern kleinere Approximationsfehler, d. h., für 1 k < i gilt (9.21) "i;kC1 "ik :
329
9.5 Adaptive Romberg-Quadratur
Diese Annahme ist zwar plausibel, aber nicht zwingend: Sie gilt sicher für „hinreichend kleine“ Schrittweiten H , muss aber für konkretes H in geeigneter Weise im Programm überprüft werden. Eine Möglichkeit zu testen, ob unser Modell mit der gegebenen Situation übereinstimmt, werden wir in Kapitel 9.5.3 angeben. Notieren wir diese Relationen im Fehlertableau mit einem Pfeil, " ! ı W” " ı; so ergibt sich mit den Annahmen (9.20) und (9.21) folgendes Bild. "11 " "21
"22
"
"
"31
"32
"33
" :: :
" :: :
" :: :
Die genaueste Approximation innerhalb der Zeile k ist demnach das Diagonalelement Tkk . Ideal wäre daher, wenn wir den Fehler "kk abschätzen könnten. An dieser Stelle geraten wir jedoch in ein Dilemma. Um den Fehler von Tkk abschätzen zu können, benötigen wir eine genauere Approximation IO des Integrals, z. B. TkC1;k . Mit dieser ließe sich "kk etwa durch "Nkk WD jTkC1;k Tk;k j D Œ"kk abschätzen. Haben wir jedoch TkC1;k berechnet, so können wir auch direkt die (bessere) Approximation TkC1;kC1 angeben. Für diese liegt aber keine Abschätzung des Fehlers "kC1;kC1 vor, es sei denn, wir berechnen wiederum eine noch genauere Approximation. Aus diesem Dilemma befreit uns nur die Einsicht, dass auch die zweitbeste Lösung nützlich sein kann. Die zweitbeste Approximation, die uns bis einschließlich Zeile k zur Verfügung steht, ist das subdiagonale Element Tk;k1 . Der Approximationsfehler "k;k1 lässt sich mit bis zu dieser Zeile bekannten Daten wie folgt abschätzen. Lemma 9.28. Unter der Annahme .9:21/ ist "Nk;k1 WD jTk;k1 Tkk j D Œ"k;k1 ein Fehlerschätzer für "k;k1 im Sinn von .9:18/.
330
9 Bestimmte Integrale
Beweis. Es ist mit I WD
R tCH t
f . / d
"Nk;k1 D j.Tk;k1 I / .Tk;k I /j "k;k1 C "kk und mit Annahme (9.21) "Nk;k1 D j.Tk;k1 I / .Tk;k I /j "k;k1 "kk und daher
1
"kk
"k;k1 "Nk;k1 1 C "k;k1 : "k;k1 "k;k1 „ ƒ‚ … „ ƒ‚ … "kk
1
1
Um die folgende Notation zu erleichtern, gehen wir davon aus, dass Iskal D 1. Dann ersetzen wir das Abbruchkriterium jI IOj tol durch die im Algorithmus überprüfbare Bedingung, dass "Nk;k1 tol;
(9.22)
wobei < 1 (typischerweise WD 0:25) ein Sicherheitsfaktor ist. Das Diagonalelement Tkk wird also genau dann als Lösung akzeptiert, wenn die Abbruchbedingung (9.22) erfüllt ist. Diese Bedingung nennt man auch das subdiagonale Fehlerkriterium. Bemerkung 9.29. Es hat lange Zeit heftige Debatten darüber gegeben, ob man die „beste“ Lösung (hier: das Diagonalelement Tkk ) als Näherung ausgeben darf, obwohl nur der Fehler der „zweitbesten“ Lösung (hier: des Subdiagonalelements Tk;k1 ) geschätzt wurde. Tatsächlich ist der verwendete Fehlerschätzer für die Lösung Tk;k1 nur dann brauchbar, wenn Tkk die „beste“ Lösung ist, so dass es inkonsequent wäre, diese genauere Lösung zu verschenken.
9.5.3
Herleitung des Algorithmus
Ziel des adaptiven Algorithmus ist es, mit möglichst wenig Aufwand das Integral auf eine verlangte Genauigkeit zu approximieren. Uns stehen zwei Parameter des Algorithmus zur Anpassung an das Problem zur Verfügung, nämlich die Grundschrittweite H und die Ordnung p D 2k, also die maximal benutze Spalte k des Extrapolationstableaus. Wir gehen zunächst aus von einem Verfahren IO bei gegebener fester Ordnung p, d. h. ˇ ˇ Z tCH ˇ ˇ ˇ : ˇ OtCH .f / f . / d ˇ D .t /H pC1 " D ".t; H / D ˇI t ˇ ˇ t
331
9.5 Adaptive Romberg-Quadratur
mit einer vom linken Rand t und vom Problem abhängigen Zahl .t /. Mit den Daten " und H des aktuellen Integrationsschrittes können wir .t / durch : (9.23) .t / D "H .pC1/ abschätzen. Sei HQ die Schrittweite, für welche wir die verlangte Genauigkeit : tol D ".t; HQ / D .t /HQ pC1 (9.24) erreicht hätten. Mit Hilfe von (9.23) können wir HQ im Nachhinein aus " und H näherungsweise berechnen, da r : pC1 tol H: (9.25) HQ D " Wir nennen HQ auch die optimale Schrittweite im Sinn von (9.24). Ist HQ sehr viel kleiner als die tatsächlich benutzte Schrittweite H , so ist dies ein Anzeichen dafür, dass H zu groß war und wir evtl. eine schwierige Stelle (z. B. eine schmale Spitze) übersprungen haben. Wir sollten in diesem Fall den Integrationsschritt mit HQ als Grundschrittweite wiederholen. Andernfalls können wir HQ als Schrittweitenvorschlag für den nächsten Integrationsschritt verwenden. Denn für hinreichend glatte Integranden f und kleine Grundschrittweiten H ändert sich die Zahl .t / über das Integrationsintervall Œt; t C H nur wenig, d. h. : .t / D .t C H / für H ! 0: (9.26) Daraus folgt : : : ".t C H; HQ / D .t C H /HQ pC1 D .t /HQ pC1 D tol; so dass wir davon ausgehen können, dass HQ auch die optimale Schrittweite für den nächsten Schritt ist. Wie die Annahme (9.21), so muss der Algorithmus natürlich auch die Annahme (9.26) überprüfen und gegebenenfalls die Schrittweite korrigieren. Bisher haben wir nur eine feste Ordnung p betrachtet und eine optimale Schrittweite HQ für diese Ordnung bestimmt. Die Romberg-Quadratur stellt uns als Extrapolationsverfahren eine ganze Reihe von Approximationen Tik verschiedener Ordnungen p D 2k zum Spaltenindex k zur Verfügung, die wir ebenfalls variieren können, wobei für die Approximationsfehler gilt: P N2k j ik H 2kC1 "ik Dj
für f 2 C 2k Œt; t C H .
Im Zuge der Untersuchungen des vorigen Abschnittes haben wir den Fehlerschätzer "k;k1 für die subdiagonale Approximation Tk;k1 der Ordnung p D 2k 2 herausgearbeitet. Ersetzen wir nun den unbekannten Fehler "N D "k;k1 in (9.25) durch "Nk;k1 , so erhalten wir den Schrittweitenvorschlag s
tol H; HQ k WD 2k1 "Nk;k1
332
9 Bestimmte Integrale
wobei wir wiederum den Sicherheitsfaktor < 1 eingeführt haben, um die Variation von .t / im Intervall Œt; t C h abzufangen, vgl. Annahme (9.26). Obige Vorschrift liefert nun für jede Spalte k einen Schrittweitenvorschlag HQ k , dessen Realisierung mit dem zur Unterteilungsfolge F gehörenden Aufwand Ak verbunden ist. Es fehlt noch ein Kriterium, um aus den Tripeln .k; HQ k ; Ak / D (Spalte, Schrittweitenvorschlag, Aufwand) für k D 1; : : : ; kmax D q=2 in jedem Einzelschritt j D 1; : : : ; J das beste .kj ; HQ kj ; Akj / auszuwählen. Abstrakt gesehen haben wir das folgende Optimierungsproblem zu lösen: Minimiere den Gesamtaufwand Atotal D
J X
Akj D min
j D1
unter der Nebenbedingung des vorgegebenen Integrationsintervalles der Länge T , also J X HQ kj D T D const : j D1
Die Gesamtzahl J der Schritte ist hierbei abhängig von der gewählten Indexfolge fkj g, also zunächst unbekannt. Wir haben es demnach mit einem diskreten Minimierungsproblem zu tun. Speziell für diesen Problemtyp existiert eine recht effiziente etablierte Heuristik, der sogenannte Greedy-Algorithmus – siehe etwa Kapitel 9.3 in dem einführenden Lehrbuch [3] von M. Aigner. Im aktuellen Schritt j verlangt dieser Algorithmus die Minimierung des Aufwands pro Schrittweite (engl.: work per unit step) Ak : Wk WD HQ k Die Spalte kQ D kj mit WkQ D
min
kD1;:::;kmax
Wk
Q Wir haben damit eine ist in diesem Sinn „optimal“, ebenso wie die Ordnung qQ D 2k. Q Q passende Ordnung qQ und Grundschrittweite H D HkQ unter Ausnutzung der Daten des aktuellen Integrationsschrittes gefunden. Fassen wir alle Überlegungen der letzten Abschnitte zusammen, so gelangen wir zu dem folgenden Algorithmus für einen Schritt der adaptiven Romberg-Quadratur. Algorithmus 9.30. Ein Schritt der adaptiven Romberg-Quadratur. Als Eingabe erhält die Prozedur step den Beginn des aktuellen Intervalls t , die vorgeschlagene Spalte k und die Schrittweite H . Zurückgegeben werden neben der etwaigen Erfolgsmeldung d one die entsprechenden Werte tQ, kQ und HQ für den nächsten Schritt sowie die Approximation I für das Integral I ttQ über dem Intervall Œt; tQ.
9.5 Adaptive Romberg-Quadratur
333
Q HQ ]=step.t; k; H / function [done; I; tQ; k; done WD false; i D 1; while not done and i < imax do Berechne die Approximationen T11 ; : : : ; Tkk von I ttCH ; while k < kmax and "Nk;k1 > tol do k WD k C 1; Berechne Tkk ; end Berechne HQ 1 ; : : : ; HQ k und W1 ; : : : ; Wk ; Wähle kQ k mit minimalem Aufwand WkQ ; HQ WD HkQ ; if k < kmax then if H > HQ then H WD HQ ; (wiederhole den Schritt sicherheitshalber) else tQ WD t C H ; I D Tkk ; done WD true; (fertig) end end i WD i C 1; end Programmiert man diesen adaptiven Algorithmus, so muss man die leidvolle Erfahrung machen, dass er in dieser Form (noch) nicht so funktioniert, wie man dies erwartet hätte. Gerade das Beispiel der Nadelfunktion macht ihm schwer zu schaffen. Zwar ziehen sich die Schrittweiten bei abnehmenden Ordnungen zur Mitte der Nadel hin wie vermutet zusammen, doch bleibt dies auch nach Überschreiten der Nadelspitze erhalten; die Ordnung bleibt niedrig und die Schrittweiten klein. Zusammen mit zwei weiteren Schwierigkeiten des bisherigen Algorithmus wollen wir diese Situation kurz analysieren. Nachteile des Algorithmus: 1) Stehenbleiben der Ordnung (engl.: trapping of order), wie oben angesprochen. Hat sich einmal eine niedrige Ordnung q D 2k eingestellt und ist die Bedingung "Nk;k1 tol immer erfüllt, so testet der Algorithmus keine höhere Ordnung, obwohl diese günstiger sein könnte. Die Ordnung bleibt niedrig und damit die Schrittweiten kurz, wie es bei der Integration der Nadel zu beobachten war. 2) Der Algorithmus bemerkt erst sehr spät, nämlich nach Überschreiten von kmax , dass eine vorgeschlagene Schrittweite H zu groß war und für keine Spalte k zum Ziel .N"k;k1 tol/ führt.
334
9 Bestimmte Integrale
3) Falls unsere Annahmen nicht erfüllt sind, funktioniert der Fehlerschätzer nicht. Daher kann es passieren, dass der Algorithmus eine falsche Lösung als richtig erachtet und ausgibt. Man spricht in diesem Fall von Pseudokonvergenz. Für die beiden letztgenannten Probleme wäre es gut, wenn man bereits frühzeitig erkennen könnte, ob sich die Approximationen „vernünftig“, d. h. ganz im Sinne unserer theoretischen Annahmen, verhalten. Man benötigt also einen sogenannten Konvergenz-Monitor (engl.: convergence monitor). Die Hauptschwierigkeit bei der Konstruktion eines solchen Monitors ist, dass man algorithmische Entscheidungen zu treffen hätte auf der Basis von Informationen, die (noch) nicht zur Verfügung stehen. Aus diesem Grund verschafft man sich ein Modell, von dem man hofft, dass es im statistischen Mittel über eine große Anzahl von Problemen die Situation richtig beschreibt. Mit diesem Modell kann man dann die tatsächlich erhaltenen Werte vergleichen. Wir wollen hier nur eine solche Möglichkeit kurz diskutieren, welche auf der Informationstheorie von C. E. Shannon fußt (siehe etwa [87]) und verweisen für Einzelheiten auf die Arbeit [20] von P. Deuflhard. In diesem Modell wird der Quadratur-Algorithmus als Codiermaschine (engl.: encoding device) interpretiert: Sie wandelt die Information, die man durch Auswertung der Funktion erhält, um in Eingabe-
!
information f
Quadratur-
!
Algorithmus
Ausgabeinformation Tik
Abbildung 9.9. Quadraturalgorithmus als Codiermaschine
Information über das Integral (siehe die schematische Abbildung 9.9). Die Informa.in/ tionsmenge auf der Eingabeseite, die Eingabeentropie Eik , messen wir durch die Anzahl der zur Berechnung von Tik benötigten f -Auswertungen. Dies setzt voraus, dass keine redundanten f -Auswertungen vorliegen, d. h., dass alle Ziffern von f unabhängig voneinander sind. Da zur Berechnung von Tik die Werte TikC1;1 ; : : : ; Ti;1 als Eingabe benötigt werden, erhalten wir .in/
Eik D ˛.Ai Aik C 1/ für eine Konstante ˛ > 0. Die Informationsmenge auf der Ausgabeseite, die Ausga.out/ beentropie Eik , lässt sich durch die Anzahl der gültigen Binärziffern der Approximation Tik charakterisieren. Dies führt auf 1 .out/ : Eik D log2 "ik Wir gehen nun davon aus, dass unser Informationskanal mit einem konstanten Rauschfaktor 0 < ˇ 1 arbeitet, .out/
Eik
.in/
D ˇEik ;
335
9.5 Adaptive Romberg-Quadratur
d. h., dass Ein- und Ausgabeentropie proportional zueinander sind. (Falls ˇ D 1, so liegt gerade ein rauschfreier Kanal vor; es geht keine Information verloren.) In unserem Fall heißt das mit c WD ˛ˇ log2 ."1 ik / D c.Ai Aik C 1/:
(9.27)
Um den Proportionalitätsfaktor c bestimmen zu können, benötigen wir nur ein Paar von Eingabe- und Ausgabeentropie. Wir haben oben verlangt, dass für eine vorgegebene Spalte k der subdiagonale Fehler "k;k1 gleich der vorgeschriebenen Genauigkeit tol ist, also "k;k1 D tol. Setzen wir diese Beziehung in (9.27) ein, so folgt log2 "k;k1 D log2 tol D c.Ak A1 C 1/: Haben wir c daraus bestimmt, so können wir für alle i; j angeben, welche Fehler "ij nach unserem Modell zu erwarten sind. Bezeichnen wir diese Fehler, die das informa.k/ tionstheoretische Modell impliziert, mit ˛ij (wobei k die Zeile ist, mit der wir den Proportionalitätsfaktor gewonnen haben), so folgt .k/
log2 ˛ij D c.Ai Aij C 1/ D
Ai Aij C 1 log2 tol : Ak A1 C 1
Damit haben wir tatsächlich auf recht elementare Weise ein statistisches Vergleichsmodell konstruiert, mit dem wir das Konvergenzverhalten unseres Algorithmus im konkreten Problem überprüfen können, indem wir die geschätzten Fehler "Ni;i1 mit .k/ den Werten ˛i;i1 des Konvergenzmodells vergleichen. Wir erhalten so zum einen den gewünschten Konvergenz-Monitor, zum anderen können wir auch abschätzen, wie sich höhere Ordnungen verhalten würden. Weitergehende Details wollen wir hier weglassen. Sie sind für eine große Klasse von Extrapolationsverfahren in [20] ausgearbeitet. Für die adaptive Romberg-Quadratur sind sie in dem Programm TRAPEX (siehe [22] und Softwareverzeichnis am Ende des Buches) implementiert. Erzielte globale Genauigkeit. Ignorieren wir den Sicherheitsfaktor , so approximiert obiger Algorithmus das Integral I D I.f / mit einer globalen Genauigkeit jI IOj Iskal m tol; wobei m die Anzahl der Grundschritte ist, die sich bei der adaptiven Quadratur ergeben haben (a-posteriori-Fehlerschätzung). Die gewählte Strategie führt offensichtlich zu einer Gleichverteilung des lokalen Diskretisierungsfehlers. Dieses Prinzip ist auch für wesentlich allgemeinere adaptive Diskretisierungsverfahren wichtig (vgl. Kapitel 9.7). Falls man einen von m unabhängigen globalen Diskretisierungsfehler jI IOj Iskal E
336
9 Bestimmte Integrale
vorschreiben will, so ist, einem Vorschlag von C. de Boor [15] folgend, in der Herleitung der Ordnungs- und Schrittweitensteuerung die Genauigkeit tol durch tol !
H E ba
zu ersetzen. Dies führt zu kleineren Änderungen der Ordnungs- und Schrittweitensteuerung, aber auch zu zusätzlichen Schwierigkeiten und einer geringeren Robustheit des Algorithmus. Beispiel 9.31. Wir kehren nochmals zu dem Beispiel des Nadelimpulses zurück, dessen Behandlung mit der klassischen Romberg-Quadratur wir in Kapitel 9.4.3, Tabelle 9.5 dokumentiert haben. Dort waren 4097 f -Aufrufe nötig bei einer erzielten Genauigkeit von ca. 109 . Mit der adaptiven Romberg-Quadratur benötigen wir bei einer verlangten Genauigkeit von tol D 109 nur 321 f -Auswertungen (bei 27 Grundschritten) mit einer erzielten Genauigkeit von " D 1:4 109 . In Abbildung 9.10 ist die automatische Unterteilung in Grundschritte durch das Programm TRAPEX dargestellt. 104
+ + + + +
5 10
3
+ + + + +
0
+ +
1
+
+
+
+
+
0
+
+
+
+
+
1
Abbildung 9.10. Automatische Unterteilung in Grundschritte durch das Programm TRAPEX
9.6
Schwierige Integranden
Natürlich kann auch die adaptive Romberg-Quadratur nicht alle Probleme der numerischen Quadratur lösen. In diesem Kapitel wollen wir einige Schwierigkeiten diskutieren.
337
9.6 Schwierige Integranden
a
t1
t2
b
Abbildung 9.11. Sprungstelle von f bei t1 , Sprungstelle von f 0 bei t2
Unstetige Integranden. Ein häufiges Problem der numerischen Quadratur sind Unstetigkeiten des Integranden f oder seiner Ableitungen (siehe Abbildung 9.11). Solche Integranden tauchen z. B. auf, wenn ein physikalisch-technisches System in verschiedenen Bereichen mit unterschiedlichen Modellen beschrieben wird, die an den Nahtstellen nicht ganz zusammenpassen. Sind die Sprungstellen bekannt, so sollte man das Integrationsintervall an diesen Stellen zerlegen und die so entstehenden Teilprobleme separat lösen. Im anderen Fall reagieren die Quadraturprogramme sehr unterschiedlich. Ohne Vorbehandlung liefert ein nicht-adaptives Quadraturprogramm falsche Ergebnisse oder konvergiert nicht. Die Sprungstellen können nicht lokalisiert werden. Ein adaptives Quadraturprogramm wie das adaptive Romberg-Verfahren frisst sich an Sprungstellen fest. Die Sprungstellen können so lokalisiert und extra behandelt werden. Nadelimpulse. Mit diesem Problem haben wir uns weiter oben wiederholt beschäftigt. Prinzipiell ist jedoch festzuhalten, dass jedes Quadratur-Programm versagt, wenn die Spitzen nur schmal genug sind (vgl. Aufgabe 9.8). Andererseits sind solche Integranden recht häufig, man denke z. B. an das Spektrum eines Sterns, dessen Gesamtstrahlung berechnet werden soll. Ist bekannt, an welchen Stellen die Spitzen liegen, so sollte man das Intervall geeignet unterteilen und wieder die Teilintegrale einzeln berechnen. Sonst bleibt nur die Hoffnung, dass das adaptive Quadratur-Programm sie nicht „übersieht“. Stark oszillierende Integranden. Wir haben bereits in Kapitel 9.1 festgestellt, dass stark oszillierende Integranden in der relativen Betrachtungsweise schlechtkonditioniert sind. Als Beispiel haben wir in Abbildung 9.12 die Funktion 2 f .t / D cos t e 4t für t 2 Œ1; 1 aufgetragen. Gegenüber solchen Integranden ist die numerische Qua-
338
9 Bestimmte Integrale 1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1
-1 -0.8 -0.6 -0.4 -0.2
0
0.2 0.4 0.6
0.8
1
2 Abbildung 9.12. Hochoszillatorischer Integrand f .t/ D cos t e 4t
dratur machtlos, sie müssen durch analytische Mittelung über Teilintervalle vorbehandelt werden (Vorabklärung der Nullstellenstruktur des Integranden). Schwach singuläre Integranden. Eine über dem Intervall Œa; b integrierbare Funktion f ist schwach singulär, falls eine ihrer Ableitungen f .k/ in Œa; b nicht existiert. Dazu gehören zum Beispiel die Funktionen f .t / D t ˛ g.t /, wobei g 2 C 1 Œa; b eine beliebige glatte Funktion ist und ˛ > 1. Beispiel 9.32. Als Beispiel betrachten wir das Integral Z p t cos t dt: „ ƒ‚ … tD0 f .t/
p
p Die Ableitung f 0 .t / D .cos t /=.2 t/ t sin t hat bei 0 einen Pol. Im Fall schwach singulärer Integranden ziehen adaptive Quadraturprogramme meist Schrittweite und Ordnung zu, werden also extrem langsam. Nicht adaptive Quadraturalgorithmen hingegen werden nicht langsam, aber in der Regel falsch. Häufig können die Singularitäten durch Substitution beseitigt werden. p Beispiel 9.33. In obigem Beispiel erhalten wir mit der Substitution s D t Z p Z p t cos t dt D 2 s 2 cos s 2 ds: tD0
sD0
Dies wird allerdings ineffizient, p wenn die Substitution zu schwer auszuwertenden Funktionen führt (z. B. t ˛ statt t für ein 0 < ˛ < 1). Eine zweite Möglichkeit besteht in der rekursiven Auflösung des zu berechnenden Integrals (Miller-Trick), auf die wir hier nicht eingehen wollen (siehe Aufgabe 9.10).
339
9.6 Schwierige Integranden
Parameterabhängige Integranden. lichen Parameter 2 R ab: f .t; /;
Oft hängt der Integrand f von einem zusätz 2 R Parameter:
Wir haben somit eine ganze Schar von Problemen Z
b
I./ WD
f .t; / dt a
zu lösen. Die wichtigste Beispielklasse für solche parameterabhängigen Integrale ist die mehrdimensionale Quadratur. Zumeist ist der Integrand nach differenzierbar und damit auch das Integral I./. Natürlich wünscht man sich, dass die Approximation IO./ diese Eigenschaft erbt. Leider stellt es sich heraus, dass gerade unsere besten Methoden, die adaptiven Quadratur-Verfahren, diese Eigenschaft nicht haben – im Gegensatz zu den einfachen nicht-adaptiven Quadratur-Formeln. Es gibt im Wesentlichen drei Möglichkeiten, den adaptiven Ansatz bei parameterabhängigen Problemen zu retten. Die erste Möglichkeit besteht darin, die Quadratur für einen Parameterwert auszuführen, dabei die benutzten Ordnungen und Schrittweiten abzuspeichern und diese für alle weiteren Parameterwerte zu verwenden. Man spricht auch von einem Einfrieren der Ordnungen und Schrittweiten. Dies kann nur gutgehen, wenn sich der Integrand in Abhängigkeit des Parameters qualitativ nicht stark verändert. Wandert jedoch z. B. eine Spitze mit dem Parameter und ist diese Abhängigkeit bekannt, so kann man parameterabhängige Gitter benutzen. Man transformiert das Integral in Abhängigkeit von derart, dass der Integrand qualitativ stehenbleibt (die Wanderung der Spitze wird z. B. gerade wieder rückgängig gemacht) oder verschiebt in Abhängigkeit von die adaptive Zerlegung des Integrationsintervalls. Die letzte Möglichkeit erfordert viel Einsicht in das jeweilige Problem. Man wählt für das jeweilige Problem ein festes, dem Problem angepasstes Gitter und integriert über diesem Gitter mit einer festen Quadraturformel (Newton-Cotes oder GaußChristoffel). Dazu müssen die qualitativen Eigenschaften des Integranden natürlich weitgehend bekannt sein. Diskrete Integranden. In vielen Anwendungen liegt der Integrand nicht als Funktion f , sondern nur in Form von endlich vielen diskreten Punkten .ti ; fi /;
i D 0; : : : ; N;
vor (z. B. Kernspinspektrum, digitalisierte Messdaten). Die einfachste und beste Möglichkeit, damit umzugehen, besteht darin, die Trapezsumme über diese Punkte zu bilden. Die Trapezsumme hat den Vorteil, dass sich Messfehler bei der Berechnung des Integrals bei äquidistantem Gitter häufig ausmitteln; falls die Messfehler ıfi den Er-
340
9 Bestimmte Integrale
P wartungswert 0 haben, d. h. N iD0 ıfi D 0, so gilt dies auch für den dadurch verursachten Fehler der Trapezsumme. Diese Eigenschaft gilt nur für Verfahren mit lauter gleichen Gewichten und geht insbesondere bei Verfahren höherer Ordnung verloren. Eine effektive Methode zur Lösung derartiger Probleme werden wir im nächsten Abschnitt behandeln.
9.7
Adaptive Mehrgitter-Quadratur
In diesem Abschnitt befassen wir uns mit einem zweiten Zugang zur adaptiven Quadratur, der auf Ideen beruht, die ursprünglich für die Lösung wesentlich komplizierterer Fragen bei partiellen Differentialgleichungen entwickelt wurden (siehe [6]). Dieser sogenannte Mehrgitter-Zugang oder allgemeiner Multilevel-Zugang (deutsch etwa: Mehrstufen-Zugang) basiert auf dem Randwertansatz. Bei der adaptiven RombergQuadratur, die auf dem Anfangswertansatz aufbaut, hatten wir das Intervall in einer willkürlich gewählten Richtung durchlaufen, dabei problemangepasst in Teilintervalle unterteilt und über diesen mit lokalen Feingittern (der Romberg-Quadratur) integriert. Im Gegensatz dazu geht die Mehrgitter-Quadratur vom gesamten Grundintervall oder einer groben Ausgangsunterteilung 0 aus und erzeugt Schritt für Schritt eine Folge von feineren globalen Unterteilungen i des Intervalls und genaueren Approximationen I.i / des Integrals. Dabei werden die Gitter nur dort verfeinert, wo es für die geforderte Genauigkeit notwendig ist, d. h., das qualitative Verhalten des Integranden wird bei der Verfeinerung der Gitter sichtbar. Die Knoten sammeln sich dort, wo „viel passiert“. Um dies zu erreichen, benötigt man zweierlei, einen lokalen Fehlerschätzer und lokale Verfeinerungsregeln. Der lokale Fehlerschätzer wird typischerweise durch den Vergleich von Verfahren niedrigerer und höherer Ordnung realisiert, wie wir es bereits beim subdiagonalen Fehlerkriterium in Kapitel 9.5.3 gesehen haben. Dabei geht die Theorie des jeweiligen Approximationsverfahrens ein. Bei der Aufstellung von Verfeinerungsregeln spielen Aspekte der Datenstrukturen die entscheidende Rolle. Tatsächlich wird so ein Teil der Komplexität des mathematischen Problems auf die Seite der Informatik (in Form komplexerer Datenstrukturen) verlagert.
9.7.1
Lokale Fehlerschätzung und Verfeinerungsregeln
Als Beispiel einer Mehrgitter-Quadratur stellen wir hier ein spezielles Verfahren vor, bei dem die Trapezregel (lokal linear) als Verfahren niedrigerer und die Simpsonsche Regel (lokal quadratisch) als Verfahren höherer Ordnung benutzt wird. Als Verfeinerungsmethode beschränken wir uns auf die lokale Zweiteilung (Bisektion) eines Intervalls. Wir gehen aus von einem Teilintervall Œtl ; tr Œa; b (l: links, r: rechts). Da wir für die Simpson-Regel drei Knoten benötigen, nehmen wir noch den Mittelpunkt tm WD
341
9.7 Adaptive Mehrgitter-Quadratur
.tl C tr /=2 hinzu und beschreiben das Intervall durch das Tripel J WD .tl ; tm ; tr /. Die Länge des Intervalls bezeichnen wir mit h D h.J / WD tr tl . Ein Gitter ist eine Familie D fJi g solcher Intervalle, die zusammen eine Partition des ursprünglichen Intervalls Œa; b bilden. Mit T .J / und S.J / bezeichnen wir die Ergebnisse der Trapezregel angewandt auf die Teilintervalle Œtl ; tm und Œtm ; tr bzw. der Simpson-Regel bezüglich der Knoten tl , tm und tr . Die Formeln haben wir in Abbildung 9.13 angegeben. Man beachte, dass sich die Simpson-Regel aus der Romberg-Quadratur als S.J / D T22 .J / ergibt (siehe Aufgabe 9.6). Für hinreichend oft R tdifferenzierbare Funktionen f sind T .J / und S.J / Approximationen des Integrals tlr f .t / dt der Ordnung O.h3 / bzw. O.h5 /. Für den Fehler der Simpson-Approximation gilt also ˇZ tr ˇ ˇ ˇ ˇ ".J / WD ˇ f .t / dt S.J /ˇˇ D O.h5 /: tl
Durch Aufsummieren über alle Teilintervalle J 2 erhalten wir die Approximation X X T ./ D T .J / und S./ D S.J / des gesamten Intergrals
tl
tm
Rb a
J 2
J 2
f .t / dt .
T .J / D
h 4
.f .tl / C 2f .tm / C f .tr //
S.J / D
h 6
.f .tl / C 4f .tm / C f .tr //
tr
Abbildung 9.13. Trapez- und Simpson-Regel für ein Intervall J WD .tl ; tm ; tr /
Wie bei der Romberg-Quadratur setzen wir (zunächst ungeprüft) voraus, dass das Verfahren höherer Ordnung, die Simpson-Regel, lokal besser ist, d. h. ˇ ˇ ˇ ˇ Z tr Z tr ˇ ˇ ˇ ˇ ˇT .J / f .t / dt ˇˇ ˇˇS.J / f .t / dt ˇˇ : (9.28) ˇ tl
tl
Unter dieser Annahme ist "N.J / WD jT .J / S.J /j D Œ".J / der subdiagonale Schätzer des lokalen Approximationsfehlers und wir können das Simpson-Resultat als genauere Approximation verwenden.
342
9 Bestimmte Integrale
Bei der Konstruktion von lokalen Verfeinerungsregeln folgen wir im Wesentlichen einem abstrakten Vorschlag von I. Babuška und W. C. Rheinboldt [6], den sie in allgemeinerem Zusammenhang bei Randwertproblemen für partielle Differentialgleichungen gemacht haben. Die bei der Bisektion eines Intervalles J WD .tl ; tm ; tr / entstehenden Teilintervalle bezeichnen wir mit Jl und Jr , wobei
t Ct tr C t m
m l und Jr WD tm ; ; tm ; tr : Jl WD tl ; 2 2 Bei zweimaliger Verfeinerung erhalten wir so den in Abbildung 9.14 dargestellten Binärbaum. Ist J durch Unterteilung entstanden, so bezeichnen wir mit J das AusJ r
r
Q
+ Jl r
b
r Q
Q
s Q Jr r
b
J
b
Jl l r
J ^ J Jlr b r
b
Jrl r
b
J
J ^ J Jrr b r
b
Abbildung 9.14. Zweimalige Verfeinerung des Intervalles J WD .tl ; tm ; tr /. Oben: . Mitte: . Unten: C
gangsintervall der letzten Stufe, d. h. Jr D Jl D J . Das Prinzip, nach dem wir bei der Aufstellung der Verfeinerungsregeln vorgehen wollen, ist die Gleichverteilung des lokalen Diskretisierungsfehlers, vgl. Kapitel 9.5.3. Das bedeutet, dass das Gitter so zu verfeinern ist, dass die geschätzten lokalen Approximationsfehler des verfeinerten Gitters C möglichst gleich sind, d. h. "N.J / const
für alle J 2 C .
Für den geschätzten Fehler der Trapezregel machen wir die theoretische Annahme (siehe (9.28)) : (9.29) "N.J / D C h ; wobei h D h.J /; mit einer lokalen Ordnung und einer lokalen problemabhängigen Konstante C . Bemerkung 9.34. Die Trapezregel hat eigentlich die Ordnung D 3. In der Konstante versteckt sich jedoch die zweite Ableitung des Integranden, so dass eine Ordnung 3 das Verfahren realistischer charakterisiert, wenn wir C als lokal konstant voraussetzen. In den folgenden Überlegungen kürzt sich die Ordnung wieder heraus, so dass sich daraus keine Probleme ergeben.
343
9.7 Adaptive Mehrgitter-Quadratur
Damit können wir einen zweiten Fehlerschätzer "C .J / definieren, der uns Information über den Fehler ".Jl / der nächsten Stufe liefert für den Fall, dass wir das Intervall J unterteilen. Aus (9.29) folgt : : "N.J / D C.2h/ D 2 C h D 2 ".J N / mit h D h.J /, : also 2 D "N.J /=N".J / und daher : : ".Jl / D C h 2 D "N.J /N".J /="N.J /: Wir haben also durch lokale Extrapolation (siehe Abbildung 9.15) einen Fehlerschätzer "N.J /2 D Œ".Jl / "C .J / WD ".J N / für den unbekannten Fehler ".Jl / gewonnen. Daher können wir im Voraus abschät"N.J /
o
+
C h "N.J /
+
"C .J /
+
o
o +
+
+
.h=2/ h
+
.2h/
Abbildung 9.15. Lokale Extrapolation für den Fehlerschätzer "C .J /
zen, wie sich eine Verfeinerung eines Intervalls J 2 auswirken würde. Wir müssen nur noch einen Schwellwert (engl.: threshold value) für die lokalen Fehler festlegen, oberhalb dessen wir ein Intervall verfeinern. Dazu ziehen wir den maximalen lokalen Fehler heran, den wir bei globaler Verfeinerung, also Verfeinerung sämtlicher Intervalle J 2 , erhalten würden und definieren ./ WD max "C .J /: J 2
(9.30)
Zur Veranschaulichung der Situation tragen wir die geschätzten Fehler ".J N / und "C .J / in einem Histogramm auf (siehe Abbildung 9.16). Am rechten und linken Rand liegt der Fehler bereits vor der Verfeinerung unter dem bei vollständiger Verfeinerung bestenfalls erreichbaren maximalen lokalen Fehler ./. Folgen wir dem Prinzip der Gleichverteilung des lokalen Fehlers, so brauchen wir dort nicht zu verfeinern. Nur im mittleren Bereich zahlt sich die Unterteilung aus. Wir kommen so zu folgender Verfeinerungsregel: Verfeinere nur solche Intervalle J 2 , für die "N.J / ./:
344
9 Bestimmte Integrale
./ "N.J / "C .J / +
+
+
a
+
b
Abbildung 9.16. Geschätzte Fehlerverteilungen vor und nach globaler und lokaler Verfeinerung
Damit ergibt sich die in Abbildung 9.16 dargestellte Fehlerverteilung. Sie ist der angestrebten Gleichverteilung der Approximationsfehler offensichtlich einen Schritt näher gekommen. Bemerkung 9.35. Bei lokaler Verfeinerung geht der Anteil des Intervalls J über in die beiden Anteile der entstehenden Teilintervalle Jl und Jr : : : N r / D 2"C .J / D 21 ".J N /: ".J N / ! "N.Jl / C ".J Damit die Unterteilung also tatsächlich eine Verbesserung erbringt, muss lokal für die Ordnung die Bedingung > 1 erfüllt sein.
9.7.2
Globale Fehlerschätzung und Details des Algorithmus
Eine Schwierigkeit bei der Mehrgitter-Quadratur ist die Abschätzung des globalen Approximationsfehlers ˇ ˇZ ˇ ˇ b ˇ ˇ f .t / dt S./ˇ : "./ WD ˇ ˇ ˇ a P Die Summe J 2 "N.J / ist nicht das geeignete Maß, da sich die Integrationsfehler gegenseitig ausmitteln können. Besser geeignet ist der Vergleich mit der Approximation des letzten Gitters . Falls "./ ". /; so ist
"N./ WD jS. / S./j D Œ"./
(9.31)
9.7 Adaptive Mehrgitter-Quadratur
345
ein Schätzer des globalen Approximationsfehlers "./. Damit die Bedingung (9.31) erfüllt ist, müssen von Stufe zu Stufe hinreichend viele Intervalle verfeinert werden. Um das zu garantieren, hat es sich als hilfreich erwiesen, den Schwellwert ./ aus (9.30) durch
1 N / ./ Q WD min max "C .J /; max ".J 2 J 2 J 2 zu ersetzen. Der vollständige Algorithmus der adaptiven Mehrgitter-Quadratur zur Rb Berechnung von a f .t / dt auf eine relative Genauigkeit tol sieht nun wie folgt aus: Algorithmus 9.36. Einfache Mehrgitter-Quadratur. Wähle ein Startgitter, z. B. WD f.a; .a C b/=2; b/g; for i D 0 to imax do Berechne T .J /, S.J / und "./ N für alle J 2 ; Berechne "N./; if "N./ tol jS.J /j then break; (fertig, Lösung S./) else Berechne "C .J / und "N.J / für alle J 2 ; Berechne ./; Q Ersetze alle J 2 mit ".J N / ./ Q durch Jl und Jr ; end end Offensichtlich führt der Mehrgitter-Zugang zu einem wesentlich einfacheren adaptiven Quadratur-Algorithmus als dies bei der adaptiven Romberg-Quadratur der Fall war. Die einzige Schwierigkeit besteht in der Speicherung der Gitterfolge. Sie lässt sich jedoch bei Verwendung einer strukturierten Programmiersprache (wie C oder Pascal) relativ leicht meistern. Bei der eindimensionalen Quadratur können wir die Folge als Binärbaum abspeichern (wie in Abbildung 9.14 angedeutet). Bei Problemen in mehr als einer Raumdimension birgt die Frage der Datenstrukturen oft eine weit höhere Komplexität in sich, man denke etwa an die Verfeinerung von Tetraedernetzen in drei Raumdimensionen. Der hier dargestellte adaptive Mehrgitter-Algorithmus überwindet auch Schwierigkeiten bei speziellen Integranden, die wir im letzten Abschnitt (Kapitel 9.6) diskutiert haben. So sammeln sich etwa bei unstetigen oder schwach singulären Integranden die Knoten automatisch an den kritischen Stellen, ohne dass sich der Integrator an diesen Stellen „festfrisst“, wie dies bei dem Anfangswertzugang von Kapitel 9.5.3 der Fall wäre. Die Verfeinerungsstrategie funktioniert für diese Stellen immer noch lokal, da sie für allgemeine lokale Ordnungen > 1 hergeleitet wurde. Beispiel 9.37. Nadelimpuls. Dieses Beispiel (9.15) hatten wir schon wiederholt (bei klassischer und adaptiver Romberg-Quadratur) zur Illustration herangezogen. In Abbildung 9.17 ist das Resultat für die Toleranz tol D 103 dargestellt für den Fall,
346
9 Bestimmte Integrale
dass das Grundgitter 0 bereits die Spitze der Nadel enthält. Das letzte Gitter 9 hat 61 Knoten, benötigt also 121 f -Auswertungen. Der geschätzte Gesamtfehler beträgt "N.9 / D 2:4 104 bei einem tatsächlichen Fehler von ".9 / D 2:1 104 . Bei asymmetrischer Verschiebung des Intervalls, d. h., die Spitze der Nadel liegt nicht von Beginn an in einem Gitterpunkt, ergibt sich kein schlechteres Verhalten. 104
+ + + + +
5 10
3
+ + + + +
0
+
1
0
1
Abbildung 9.17. Adaptiertes Gitter für den Nadelimpuls f .t/ D 1=.104 C t 2 / der fünften und neunten Stufe für die Toleranz 103
Das Programm lässt sich auch an diskrete Integranden anpassen (ursprünglich wurde es gerade dafür in [104] als sogenannter SUMMATOR entwickelt). Dazu muss man sich nur eine Strategie überlegen für den Fall, dass für einen Halbierungspunkt kein Wert vorliegt. Wie immer tun wir das nächstliegende, diesmal sogar im wörtlichen Sinn, indem wir statt des Halbierungspunktes den nächstliegenden gegebenen Punkt nehmen und so die Bisektion leicht modifizieren. Ist die gewünschte Genauigkeit erreicht, so nehmen wir bei diskreten Integranden aus den in Kapitel 9.6 diskutierten Gründen die Trapezsumme als beste Näherung. Beispiel 9.38. Summation der harmonischen Reihe. Zu berechnen sei SD
n X 1 j
für n D 107 ,
j D1
also eine Summe von 107 Termen. Bei einer verlangten relativen Genauigkeit von tol D 102 bzw. tol D 104 benötigt das Programm SUMMATOR nur 47 bzw. 129 Terme! Zur Illustration sind in Abbildung 9.18 die automatisch gewählten Gitter dargestellt. (Man beachte die logarithmische Skala.) Abschließend kehren wir nochmals zum parameterabhängigen Fall zurück. Er macht auch im adaptiven Mehrgitter-Zugang ähnliche Schwierigkeiten wie in den an-
347
9.8 Monte-Carlo-Quadratur für hochdimensionale Integrale
10
102
103
104
105
106
107
s Abbildung 9.18. Summation der harmonischen Reihe mit dem Programm SUMMATOR
deren Zugängen, d. h., er benötigt Zusatzüberlegungen, wie in Kapitel 9.6 beschrieben. Alles in allem hat sich jedoch das adaptive Mehrgitter-Konzept, auch für wesentlich allgemeinere Randwertaufgaben (etwa bei partiellen Differentialgleichungen), als einfach, schnell und zuverlässig erwiesen.
9.8
Monte-Carlo-Quadratur für hochdimensionale Integrale
Bisher haben wir uns nur mit eindimensionalen Integralen beschäftigt. Der nun folgende Abschnitt ist hochdimensionalen Integralen gewidmet. Sei d die Dimension des Integrationsgebietes. Schon für relativ kleine d ergeben sich Schwierigkeiten, das Konzept der Adaptivität auf die mehrdimensionale Quadratur zu übertragen, siehe etwa den Überblicksartikel When not to Use an Automatic Quadrature Routine von J. N. Lyness [65]. Für höhere Werte von d könnten wir zunächst versucht sein, schlichtweg die Trapezsumme in ihrer Grundstufe zu benutzen, was jedoch zu einem Aufwand von 2d Auswertungen des Integranden führen würde.1 Man spricht von „kombinatorischer Explosion“ oder auch vom „Fluch der Dimension“. 1 Die Anwendung der Rechteckssumme in ihrer Grundstufe würde zwar nur eine Auswertung von f verlangen, jedoch schlichtweg zu wenig Information enthalten.
348
9 Bestimmte Integrale
Glücklicherweise stammen die meisten zu berechnenden hochdimensionalen Integrale aus der Statistischen Physik (Thermodynamik) und haben deshalb eine Spezialstruktur, die algorithmisch genutzt werden kann. In diesen Anwendungen tritt häufig die sogenannte Boltzmann-Dichte auf, f .x/ D
1 exp.ˇE.x// ; Z
ˇD
1 ; kT
(9.32)
worin E die Energiefunktion, k die Boltzmannkonstante, T die Temperatur und Z ZD exp.ˇE.x// dx (9.33)
die Zustandssumme über dem Integrationsgebiet Rd bezeichnet. Offenbar ist f eine Wahrscheinlichkeitsdichte, für welche die Normierung Z f .x/ dx D 1 (9.34)
gilt. Die Berechnung von f, insbesondere des Zählers Z, über dem hochdimensionalen Raum der Zustandsvariablen ist richtig teuer, sogar für heutige Hochleistungsrechner. In den meisten Anwendungen, zum Beispiel in den Materialwissenschaften, sind thermodynamische Mittelwerte von sogenannten Observablen h zu berechnen, was auf Integrale der Bauart Z Z 1 h.x/f .x/ dx D h.x/ exp.ˇE.x// dx (9.35) Ef Œh.X / D Z führt. Um den „Fluch der Dimension“ zu umgehen, müssen wir die Klasse der deterministischen Algorithmen verlassen und uns stattdessen stochastischen Algorithmen zuwenden, den sogenannten Monte-Carlo-Methoden. Diese Bezeichnung charakterisiert die Tatsache, dass hierbei Auswertungspunkte zufällig „gewürfelt“ werden – eine Assoziation an Casinos in Monte Carlo.2 Um die wesentlichen Ideen dieser Algorithmen herauszuarbeiten, genügt es, wenn wir uns im Folgenden auf Integrale des Typs (9.35) einschränken.
9.8.1
Verwerfungsmethode
Das Grundmuster der Monte-Carlo-Integration lässt sich durch drei wesentliche Ideen darstellen, die wir nun näher erläutern werden. 2 Der
Name „Monte Carlo“ entstand um 1940 in den geheimen Laboren von Los Alamos, wo neben Physikern auch Mathematiker wie Stanislaw Ulam, John von Neumann und Nicholas Metropolis an der Entwicklung der ersten Atombombe mitgearbeitet haben. Vermutlich war Ulam der Namensgeber.
9.8 Monte-Carlo-Quadratur für hochdimensionale Integrale
349
Erste Idee. Diese Idee besteht darin, dass wir die explizite Auswertung von f im Integranden vermeiden, indem wir Integrationspunkte gemäß dieser Verteilungsdichte „zufällig würfeln“. Seien fx1 ; : : : ; xm g Realisierungen von unabhängig identisch verteilten (engl. independently identically distributed, kurz: iid) Zufallsvariablen fX1 ; : : : ; Xm g, die gemäß f verteilt sind. Nach dem (in der Statistik wohlbekannten) starken Gesetz der großen Zahlen konvergiert dann die normierte Summe hm D
m 1 X h.xj / m
(9.36)
j D1
fast sicher gegen Ef Œh.X /. Deswegen heißt hm auch „Schätzer“ von Ef Œh.X /. Falls zusätzlich Ef Œh.X /2 < 1 gilt, so kann man analog auch noch die Varianz m
1 X 1 var.h.xj // D varf Œh.X / var hm D 2 m m j D1 Z 2 1 h.x/ Ef Œh.X / f .x/ dx D m
schätzen durch vm D
m 2 1 X h.xj / hm : 2 m j D1
Für große m ist hm Ef Œh.X / p vm in etwa „standard normalverteilt“ – eine Tatsache, die für die Konstruktion von Konvergenztests und Konfidenzintervallen genutzt werden kann, die wir hier jedoch nicht vertiefen wollen; Interessierte verweisen wir auf [83, 41]. Das beschriebene Verfahren ist äußerst beliebt, weil es extrem einfach programmierbar ist. Allerdings gilt: Wir sind zwar die teure Auswertung von f im Integranden los geworden, aber stehen noch vor der Frage, wie wir Punkte fx1 ; : : : ; xm g gemäß einer beliebigen, eventuell ziemlich komplexen Dichte f verteilen sollen. Dies ist im Allgemeinen ein kaum lösbares Problem. Zweite Idee. Wir ersetzen deshalb f durch eine leichter zu handhabende instrumentelle Verteilungsdichte g. Dazu formen wir unseren Integralausdruck trivial um zu Z f .x/ g.x/ dx; g.x/ > 0 : h.x/ Ef Œh.X / D g.x/
350
9 Bestimmte Integrale
Durch die Generierung von g-verteilten Stichproben fx1 ; : : : ; xm g kann dieser Wert analog zu (9.36) geschätzt werden gemäß hm D
m 1 X f .xj / : h.xj / m g.xj /
(9.37)
j D1
Diese Variante wird in der Literatur als Importance Sampling bezeichnet. Unter der Bedingung supp.g/ supp.f / konvergiert der Schätzer (9.37) wiederum nach dem Gesetz der großen Zahlen gegen Ef Œh. Für die zugehörige Varianz erhalten wir formal varg
2
h .X /f 2 .X / h.X /f .X / 2 h.X /f .X / D Eg Eg : g.X/ g 2 .X / g.X /
Die Verteilungsdichte g sollte so gewählt werden, dass gilt (vgl. Geweke [45]): f .x/=g.x/ < M
8 x 2 und varf .h/ < 1:
(9.38)
Diese Bedingung ist zwar nur hinreichend, passt aber in natürlicher Weise zur sogenannten Verwerfungsmethode, die wir im Folgenden darstellen wollen. Diese Methode (engl.: acceptance-rejection method) beruht auf einem berühmten „Trick“, den John von Neumann [99] im Jahr 1951 erfunden hat. Sie erlaubt die Erzeugung von Stichproben aus einer beliebigen Wahrscheinlichkeitsverteilung f , indem sie eine instrumentelle Verteilung g benutzt, zu der eine Konstante M > 1 existiert, so dass f .x/ < M g.x/ 8 x 2 : Statt direkt aus der Verteilung f Stichproben zu ziehen, wird eine einhüllende Verteilung M g benutzt. Dies führt uns zu einem Algorithmus, der als Input Zufallszahlengeneratoren für gleichverteilte „Zufallszahlen“ sowie für g-verteilte Zufallszahlen benötigt. (Eigentlich werden hierbei nur sogenannte PseudoZufallszahlen erzeugt, für Details siehe etwa [31, 41].) Algorithmus 9.39. Verwerfungsalgorithmus. repeat Erzeuge eine Realisierung x einer g-verteilten Zufallsvariable X und eine Realisierung u einer in Œ0; 1 gleichverteilten Zufallsvariable U . until u < f .x/=.M g.x// return Y D x. Man beachte, dass in diesem Algorithmus die Verteilungsdichte f nur bis auf eine multiplikative Konstante eingeht. Der „teure“ Skalierungsfaktor Z von (9.33) fällt heraus. Lemma 9.40. Für eine geeignet gewählte Konstante M produziert der Algorithmus 9.39 eine Zufallsvariable Y , die nach f verteilt ist.
351
9.8 Monte-Carlo-Quadratur für hochdimensionale Integrale
Beweis. Sei Ff .Y / die akkumulierte Verteilungsfunktion zur Zufallsvariablen Y , definiert durch Z y
Ff .y/ D
1
f .x/ dx :
Sei ferner P eine Wahrscheinlichkeit und U eine uniform verteilte Zufallsgröße. Per Konstruktion im Algorithmus gilt
f .X/ P X y; U f .X / Mg.X/
D : P .Y y/ D P X yjU f .X/ M g.X / P U Mg.X/
Hierbei ist die Ungleichungsrelation () für mehrdimensionale Zufallsvariablen komponentenweise zu interpretieren, d.h. P .Y y/ D P .Y1 y1 I : : : I Yd yd /: Durch Ausschreiben der Integrale erhält man Ry
P .Y y/ D wobei
Ry 1
R f .x/=.Mg.x// du dx 1 g.x/ 0 R1 R f .x/=.Mg.x// du dx 1 g.x/ 0
dx die Kurzform von Z
f .x/=.Mg.x//
0
R y1
R yd 1 : : : 1
;
dx1 : : : dxd darstellt. Wegen
ˇf .x/=.Mg.x// du D uˇ0 D f .x/=.M g.x//
folgt mit (9.34) unmittelbar P .Y y/ D
1 M 1 M
Ry R1 1
f .x/ dx
1 f .x/dx
Z D
y
1
f .x/ dx :
Die rechte Seite definiert gerade unsere gesuchte Verteilung, und zwar über die Form der akkumulierten Verteilungsfunktion Ff .Y /. Das ist die Aussage des Lemmas.
9.8.2
Markov-Ketten-Monte-Carlo-Methoden
In diesem Abschnitt behandeln wir eine alternative Strategie zur Berechnung von Integralen des Typs (9.35), die sogenannten Markov-Ketten-Monte-Carlo-Methoden (engl.: Markov chain Monte Carlo methods, kurz: MCMC-Methoden). Sie basieren auf einer von der zweiten Idee unabhängigen Herangehensweise: Statt der direkten Realisierung einer f -Verteilungsdichte (über die instrumentelle Dichte g) wird hierbei eine Markov-Kette konstruiert, deren stationäre Verteilung gerade f ist.
352
9 Bestimmte Integrale
Dritte Idee. Mittels eines vorgegebenen Übergangsoperators wird eine MarkovKette fX t g realisiert, deren stationäre Verteilung gerade die Verteilungsdichte f ist. Für die Zwecke dieses Lehrbuches nehmen wir die Zustände fx1 ; : : : ; xN g 2 , welche die Markov-Kette erreichen kann, als diskret an. Dann lässt sich die Markov-Kette darstellen vermöge einer Übergangsmatrix A 2 RN N , deren Elemente aij als Wahrscheinlichkeiten definiert sind: P X tC1 D xj jX t D xi D aij : Kern der Idee ist nun, die Akzeptanzbedingung (until . . . ) aus Algorithmus 9.39 in eine bedingte Akzeptanzbedingung aufzuweichen. Dies geschieht, indem die zunächst unbekannten Übergangswahrscheinlichkeiten aij als Produkt einer Vorschlagswahrscheinlichkeit fqij g und einer Akzeptanzwahrscheinlichkeit f ij g dargestellt werden: X aij : aij D qij ij für i ¤ j ; ai i D 1 j;j ¤i
Eine hinreichende Bedingung an f , um stationäre Dichte der Markov-Kette zu sein, ist die sogenannte detailed-balance-Bedingung (5.12), die hier lautet: aij f .xi / D aj i f .xj / :
(9.39)
Setzt man das obige Produkt in diese Bedingung ein, so erhält man
ij qj i f .xj / : D
j i qij f .xi / Die Wahrscheinlichkeit muß natürlich derart gewählt werden, dass 0 ij 1 : Eine hinreichende, allgemeine Wahl, die diese Bedingung erfüllt, ist offenbar ³ ² qj i f .xj / ;1 : (9.40)
ij D min qij f .xi / Metropolis-Algorithmus. In seiner berühmten Arbeit von 1951 wählte Metropolis [69] die Vorschlagswahrscheinlichkeit q symmetrisch (qij D qj i ), wodurch sich (9.40) zu der heute nach ihm benannten Akzeptanzwahrscheinlichkeit vereinfacht, ³ ² f .xj / ;1 : (9.41)
ij D min f .xi / Später bewies Peskun [76], dass diese Wahl in einem gewissen Sinne sogar optimal ist. Metropolis interessierte sich damals zunächst nur für den Spezialfall, dass f die
9.8 Monte-Carlo-Quadratur für hochdimensionale Integrale
353
Boltzmann-Dichte (9.32) ist, wodurch sich die Akzeptanzwahrscheinlichkeit darstellen lässt gemäß ³ ² exp.ˇE.xj // ;1
ij D min exp.ˇE.xi // ¯ ® D min exp.ˇ.E.xj / E.xi ///; 1 ¯ ® DW min exp.ˇEij /; 1 : Dies führt uns zu dem klassischen Algorithmus 9.41. Metropolis-Algorithmus. input: X t D xi Berechne E.xi / Ziehe eine Stichprobe Y t D xj gemäß .qij / und u U Œ0; 1 Berechne E.xj / Setze ´ Y t ; falls u exp.ˇEij /; X tC1 D X t ; sonst: Dieser Algorithmus ist unmittelbar physikalisch interpretierbar: Falls beim Übergang xi ! xj die Energie sinkt (Eij < 0), wird der Schritt akzeptiert; falls die Energie ansteigt (Eij > 0), wird der Schritt nur mit der thermodynamischen Wahrscheinlichkeit exp.ˇEij / akzeptiert, ansonsten verworfen. Man beachte, dass im Fall des Verwerfens der alte Zeitschritt X t der Markov-Kette einfach wiederholt wird. Dadurch sichert man, dass alle möglichen Realisierungen ¹x1 ; : : : ; xN º tatsächlich entsprechend f gewichtet werden. Metropolis-Hastings-Algorithmus. In seiner Arbeit von 1970 verallgemeinerte Hastings [56] den obigen Algorithmus auf den Fall nichtsymmetrischer Vorschlagswahrscheinlichkeiten. Er griff auf die hinreichende Bedingung (9.40) zurück und gelangte so zu dem folgenden Algorithmus 9.42. Metropolis-Hastings-Algorithmus. input: X t D xi Berechne f .xi / Ziehe eine Stichprobe Y t D xj gemäß .qij / und u U Œ0; 1 Berechne f .xj / Setze ´ Y t ; falls u ij ; X tC1 D X t sonst:
354
9 Bestimmte Integrale
Man beachte, dass sowohl der speziellere Metropolis-Algorithmus als auch der allgemeinere Metropolis-Hastings-Algorithmus unabhängig von einer NormierungsKonstante für f ist.
9.8.3
Konvergenzgeschwindigkeit
Zum Abschluss wollen wir hier die Geschwindigkeit der MCMC-Algorithmen des vorigen Abschnitts untersuchen. Wir betrachten wiederum den einfacheren Spezialfall einer diskreten Zustandsmenge ¹x1 ; : : : ; xN º und ihrer zugehörigen diskreten Dichte f t D ¹f t .x1 /; : : : ; f t .xN /º zum diskreten Zeitpunkt t . Der Wert f t .xk / charakterisiert die Wahrscheinlichkeit, mit der sich die Markov-Kette zur Zeit t im Zustand xk befindet. Ein Startzustand X0 mit Realisierung xk lässt sich in Form der diskreten Dichte f0 2 RN derart schreiben, dass ´ 1; falls X0 D xk ; f0 .xk / D k D 1; : : : ; N: 0; sonst; Eine kurze Überlegung zeigt, dass sich diese Dichte über die Zeit entwickelt gemäß der Iterationsvorschrift (9.42) f tC1 D AT f t : Diesen Typ von Iteration haben wir in Kapitel 5.2 als Vektoriteration (engl. power method) kennengelernt. Per Konstruktion ist A eine stochastische Matrix, für die gilt: X aij 0; aij D 1 : j
Aufgrund dieser Eigenschaft bleibt die Normierung von f0 als Dichte während der Iteration erhalten, denn es gilt: N X j D1
f tC1 .xj / D
N N X X j D1 i D1
f t .xi /aij D
N X iD1
f t .xi /
N X j D1
aij D
N X
f t .xi / :
iD1
Solche Matrizen hatten wir bereits in Kapitel 5.5 über stochastische Eigenwertprobleme eingeführt. Mit Blick auf die dort geführten Überlegungen nehmen wir zusätzlich an, dass die Matrix A auch noch primitiv sei. Dann ist ihr größter Eigenwert 1 D 1 einfach und gleich dem Spektralradius. Unter dieser Bedingung stellt sich asymptotisch, für t ! 1, eine eindeutige stationäre Dichte f ein, für die gilt f D AT f :
(9.43)
Lemma 9.43. Sei die stochastische Matrix A in (9.42) primitiv mit Eigenwerten 1 D 1 > 2 : : : N : Es gelte die detailed-balance-Bedingung (9.39). Bezeichne den Winkel zwischen den beiden Vektoren f t und f. Dann gilt:
9.8 Monte-Carlo-Quadratur für hochdimensionale Integrale
355
Die Iteration (9.42) konvergiert gegen eine eindeutige stationäre Dichte f, definiert durch (9.43). Die Konvergenzrate ergibt sich zu sin .f; f t / D O t2 : Beweis. Wie schon in Kapitel 5.5 ausgeführt, ist die Matrix A aufgrund der detailedbalance-Bedingung verallgemeinert symmetrisch. Mit der diagonalen Gewichtsfunktion
p p f .x1 /; : : : ; f .xN / > 0 D D diag ergibt sich die Symmetrisierung Asym D DAD 1 sowie das natürliche Skalarprodukt hx; yif D x T D 2 y : In diesem Fall bilden die Eigenvektoren bzgl. Asym eine orthogonale Basis des RN , die Linkseigenvektoren ¹v1 ; : : : ; vN º von A eine f-orthogonale Basis im Sinne des oben eingeführten Skalarproduktes. Damit lässt sich jede Dichte f0 entwickeln in der Form N X ci vi : f0 D iD1
Mehrfache Multiplikation mit AT ergibt T t
.A / f0 D
N X
ci ti vi :
iD1
Unter der Annahme c1 ¤ 0 gilt T t
.A / f0 D c1
! N X ci t v1 C vi : c1 i iD2
Somit gilt t!1
.AT /t f0 ! c1 v1 D f; und zwar mit der oben angegebenen Konvergenzrate.
356
9 Bestimmte Integrale
Übungsaufgaben Aufgabe 9.1. Zeigen Sie für die Konstanten i n
Z
1 D n
n n Y 0
j D0
sj ds i j
j ¤i
der Newton-Cotes-Formeln, dass ni;n D i n
und
n X
i n D 1:
iD0
Aufgabe 9.2. Berechnen Sie näherungsweise das Integral Z
2
x 2 e 3x dx
0
mit fünffacher Verwendung der Simpson-Formel und äquidistanten Knoten. Aufgabe 9.3. Die n-te Newton-Cotes-Formel ist so konstruiert, dass sie für Polynome vom Grad n den exakten Integralwert liefert. Zeigen Sie, dass für gerades n sogar Polynome vom Grad n C 1 exakt integriert werden. Hinweis: Verwenden Sie die Restgliedformel der Polynominterpolation und nutzen Sie die Symmetrie bzgl. .a C b/=2 aus. Aufgabe 9.4 (R. van Veldhuizen). Zu berechnen ist die Periode Z P D2
1 1
f .t / dt p 1 t2
der radialen Bewegung eines Satelliten auf einer Bahn in der Äquatorebene (Apogäumshöhe 492 km) unter dem Einfluss der Abplattung der Erde. Dabei ist p2 1 1 , r.t / D 1 C .1 C t / , a) f .t / D p 2 2g.r.t // b) g.x/ D 2! 2 .1 p1 =x/, k k 1 c) ! 2 D .1 "/ C , p1 D , 4 6 6! 2 p2 mit den Konstanten " D 0:5 (elliptische Exzentrität der Satellitenbahn), p2 D 2:991 924 505 9286 und k D 1:4 103 (Konstante, die den Einfluss der Erdabplattung beschreibt). Schreiben Sie ein Programm, welches das Integral mit Hilfe der
357
Übungsaufgaben
Gauß-Tschebyscheff-Quadratur
X f .i n /; In WD nC1 n
i n
i D0
2i C 1 WD cos nC1 2
;
n D 3; 4; : : : 7;
berechnet. Hinweis zur Kontrolle: P D 2 4:4395 41318 6376. Aufgabe 9.5. Leiten Sie die Formel Ti;k1 Ti1;k1 Tik D Ti;k1 C
2 ni 1 nikC1 für das Extrapolationstableau aus der des Aitken-Neville-Algorithmus ab. Aufgabe 9.6. Jedes Element Tik im Extrapolationstableau der extrapolierten Trapezregel lässt sich als Ergebnis einer Quadraturformel auffassen. Zeigen Sie, dass bei Verwendung der Romberg-Folge und Polynomextrapolation gilt: a) T22 ist gleich dem durch Anwendung der Simpson-Regel erhaltenen Wert, T33 entspricht der Milneregel. b) Tik , i > k, erhält man durch 2ik -malige Anwendung der zu Tkk gehörigen Quadraturformel auf entsprechend gewählte Teilintervalle. c) Für jedes Tik sind die Gewichte der zugehörigen Quadraturformel positiv. Hinweis: Zeigen Sie unter Verwendung von b), dass für die Gewichte i;n der zu Tkk gehörigen Quadraturformel gilt max i;n 4k min i;n : i
i
Aufgabe 9.7. Programmieren Sie den Romberg-Algorithmus unter Verwendung nur eines Feldes der Länge n (dabei muss jeweils ein Wert des Tableaus zwischengespeichert werden). Aufgabe 9.8. Versuchen Sie sich an einem adaptiven Romberg-Quadratur-Programm, testen Sie dieses mit der „Nadelfunktion“ Z I.n/ WD
1
1
2n dt C t2
4n
für n D 1; 2; : : : ,
und geben Sie dasjenige n an, für das Ihr Programm bei einer vorgegebenen Genauigkeit von eps D 103 den falschen Wert Null liefert.
358
9 Bestimmte Integrale
Aufgabe 9.9. Zu berechnen seien die Integrale Z 2 .ln x/n dx; n D 1; 2; : : : : In D 1
a) Zeigen Sie, dass die In der Rekursion .R/ genügen: In D 2.ln 2/n nIn1 ;
n 2:
(R)
b) Es ist I1 D 0:3863 : : : und I7 D 0:0124 : : : . Untersuchen Sie die Verstärkung des Eingabefehlers bei der Berechnung von 1) I7 aus I1 mittels .R/ 2) I1 aus I7 mittels .R/
(Vorwärtsrekursion), (Rückwärtsrekursion).
Dabei werde eine vierstellige Rechnung vorausgesetzt. Rundungsfehler können vernachlässigt werden. c) Benutzen Sie .R/ als Rückwärtsrekursion zur Berechnung von In aus InCk mit Startwert InCk D 0: Wie hat man k zu wählen, um mit diesem Verfahren I7 auf 8 Stellen genau zu berechnen? Aufgabe 9.10. Seien Integrale der folgenden Form definiert: Z 1 In .˛/ WD t 2nC˛ sin. t / dt; wobei ˛ > 1 und n D 0; 1; 2; : : : : 0
a) Leiten Sie für In die folgende inhomogene Zwei-Term-Rekursion her: In .˛/ D
1 .2n C ˛/.2n C ˛ 1/ In1 .˛/: 2
b) Zeigen Sie: lim In .˛/ D 0
n!1
und 0 InC1 .˛/ In .˛/
für n 1.
c) Geben Sie einen informellen Algorithmus zur Berechnung von I0 .˛/ an (vgl. Kapitel 6.2.2). Schreiben Sie ein Programm, um I0 .˛/ auf vorgegebene relative Genauigkeit zu berechnen. Aufgabe 9.11. Zu berechnen sei ein bestimmtes Integral über dem Intervall Œ1; C1. Entwickeln Sie, ausgehend von der Idee der Gauß-Christoffel-Quadratur, eine Quadraturformel Z C1 n1 X f .t / dt 0 f .1/ C n f .1/ C i f .ti / 1
iD1
möglichst hoher Ordnung mit variablen Knoten, die jedoch die Knoten 1 und C1 jeweils festhält (Gauß-Lobatto-Quadratur).
359
Übungsaufgaben
Aufgabe 9.12. In der Moleküldynamik spielt die potentielle Energie eines Moleküls eine wichtige Rolle. Sie setzt sich aus mehreren Teilpotentialen zusammen, wovon eines das sogenannte Torsionswinkelpotential ist (vergleiche auch Band 2, Kapitel 1.2). Für Butan handelt es sich dabei um eine eindimensionale Funktion der Form: E. / D 2:2175 2:9050 cos. / 3:1355 cos2 . / C 0:7312 cos3 . / C 6:2710 cos4 . / C 7:5268 cos5 . /;
2 Œ0; 2:
Die Aufgabe besteht darin, Realisierungen ¹ i º entsprechend der dazugehörigen Boltzmann-Dichte f . / D 1=Z exp.ˇE. // bei einer inversen Temperatur ˇ D 0:4 zu erzeugen. Dazu wird der Metropolis-Hastings-Algorithmus verwendet. Zu gegebenem Zeitschritt X t D i wird eine Stichprobe Y t D j generiert gemäß der Vorschrift Yt D Xt C "t ;
" t N .0; 2 /:
Dabei ist " t eine normalverteilte Zufallsvariable mit Mittelwert Null und Varianz 2 . Dieses Verfahren repräsentiert ein Beispiel aus der Klasse der random-walkMetropolis-Hastings-Algorithmen. a) Geben Sie den Ausdruck für die Vorschlagswahrscheinlichkeit qij an. Zeigen Sie, dass q symmetrisch ist. b) Implementieren Sie den Metropolis-Algorithmus für dieses Beispiel und variieren Sie aus der Menge ¹0:01; 0:1; 1º. Beachten Sie, dass der Zustandsraum periodisch ist. Beobachten Sie die Konvergenz des Erwartungswertes Ef ŒE. /. Welche Aussage kann man über den Zusammenhang zwischen der Konvergenz und der Wahl von machen? Untersuchen Sie die Abhängigkeit der Akzeptanzrate des Algorithmus von . c) Wir diskretisieren nun den Zustandsraum, indem wir das Intervall Œ0; 2 in 100 gleichgroße Teilstücke zerlegen, ¹Œ0; 2=100/; Œ2=100; 4=100/; : : : ; Œ198=100; 2/º: Erzeugen Sie jeweils eine Markov-Kette der Länge M D 50000 für D 1 und D 0:1 und bauen Sie daraus je eine Übergangsmatrix P 2 R100100 auf. Welcher Zusammenhang besteht zwischen der in b) beobachteten Konvergenzgeschwindigkeit von Ef ŒE.x/ und den Eigenwerten der Übergangsmatrix? Aufgabe 9.13. In der Quantendynamik wird die Schrödinger-Gleichung oft numerisch mit Hilfe von Partikel-Methoden gelöst, welche die Berechnung der WignerFunktion W . / W R2d ! R Z " " exp.ix p/ .q x/ .q C x/ dx W . /.q; p/ D .2/d 2d 2 2 R
360
9 Bestimmte Integrale
erfordern. Dabei ist d die Dimension, W Rd ! C die Wellenfunktion, ihr konjugiert komplexer Wert, q 2 Rd die Positionsvariable, p 2 Rd die Impulsvariable und " der sogenannte semiklassische Parameter. In einfachen Anwendungen ist ein Gauß’sches Wellenpaket, zentriert in .q0 ; p0 /, 1 i .q/ D ."/d=4 exp jq q0 j2 C p0 .q q0 / : 2" " Nicht immer läßt sich so wie hier die Wigner-Funktion analytisch berechnen. Im Allgemeinen wendet man eine Monte-Carlo-Integration an. Daher wollen wir im Folgenden die Wigner-Funktion des Gauß’schen Wellenpaketes mit den Parametern d D p p 2, " D 0:01, q0 D .5 "; 0:5 "/, p0 D .1; 0/ mittels Monte-Carlo-Integration berechnen. a) Da die Wigner-Funktion reellwertig ist, genügt es, den Realteil des Integranden zu integrieren. Notieren Sie das entsprechende Integral. b) Welches ist eine geeignete instrumentelle Verteilungsdichte g, gemäß der die Punkte der Monte-Carlo-Integration erzeugt werden können? c) Implementieren Sie das dazugehörige Integrationsverfahren. Approximieren Sie W . /.q; p/ an der Stelle .q; p/ D .q0 ; p0 C .0:1; 0:1//, indem Sie die Monte-Carlo-Integration 10-mal mit jeweils 104 Auswertungspunkten wiederholen. Schätzen Sie daraus die Varianz und geben Sie das 95%-Konfidenzintervall für Ihre Berechnungen an. d) Mit etwas analytischem Geschick können Sie Ihr Ergebnis mit der exakten Lösung vergleichen.
Software
Zu den in diesem Buch beschriebenen Algorithmen existiert meist ausgereifte Software, die über das Internet öffentlich zugänglich (engl. public domain) ist. Von zentraler Bedeutung ist dabei die netlib, eine Bibliothek für mathematische Software, Daten, Dokumente, : : : : Ihre Adresse ist http://www.netlib.org/ Lineare Algebra (LAPACK): http://www.netlib.org/lapack Speziell lineare Eigenwertprobleme (EISPACK): http://www.netlib.org/eispack Studieren Sie bitte die jeweils vorhandenen Hinweise (z. B. in README o.Ä.) genau, um auch wirklich alle benötigten Unterroutinen zusammenstellen zu können. Zuweilen ist auch ein „Stöbern“ innerhalb der Verzeichnisse erforderlich. Das kommerzielle Programmpaket MATLAB bietet ebenfalls verschiedene Verfahren zu Themen dieses Buches. Darüber hinaus sind im Buch eine Reihe von Algorithmen als informelle Programme angegeben, die einfach nachzuprogrammieren sind, wie etwa die schnelle Summation von Kugelfunktionen. Zahlreiche weitere Programme (nicht nur der Autoren) können auch von der Bibliothek Elib des ZIB heruntergeladen werden unter der Adresse http://www.zib.de/Numerik/numsoft/CodeLib/index.en.html Alle dort bereitgestellten Programme sind bei ausschließlichem Einsatz in Forschung und Lehre kostenlos.
Literatur
[1] Abdulle, A. und Wanner, G., 200 Years of Least Squares Method, Elemente der Mathematik (2002). [2] Abramowitz, M. und Stegun, I. A., Eds., Pocketbook of Mathematical Functions, Verlag Harri Deutsch, Thun, Frankfurt/Main, 1984. [3] Aigner, M., Diskrete Mathematik, 4. durchgesehene Auflage, Vieweg-Verlag, Braunschweig, Wiesbaden, 2001. [4] Anderson, E., Bai, Z., Bischof, C., Demmel, J., Dongarra, J., DuCroz, J., Greenbaum, A., Hammarling, S., McKenney, A., Ostruchov, S. und Sorensen, D., LAPACK Users’ Guide, SIAM, Philadelphia, 1999. [5] Arnoldi, W. E., The Principle of Minimized Iterations in the Solution of the Matrix Eigenvalue Problem, Quart. Appl. Math. 9 (1951), 17–29. [6] Babuška, I. und Rheinboldt, W. C., Error Estimates for Adaptive Finite Element Computations, SIAM J. Numer. Anal. 15 (1978), 736–754. [7] Bjørck, Å., Iterative Refinement of Linear Least Squares Solutions I, BIT 7 (1967), 257–278. [8] Bock, H. G., Randwertproblemmethoden zur Parameteridentifizierung in Systemen nichtlinearer Differentialgleichungen, Doktorarbeit, Universität zu Bonn, 1985. [9] Bornemann, F. A., An Adaptive Multilevel Approach to Parabolic Equations in two Dimensions, Doktorarbeit, Freie Universität Berlin, 1991. [10] Brent, R. P., Algorithms for minimization without derivatives, Prentice Hall, Englewood Cliffs, N. J., 1973. [11] Brieskorn, E., Lineare Algebra und analytische Geometrie, Band I und II, Vieweg, Braunschweig, Wiesbaden, 1983. [12] Bulirsch, R., Bemerkungen zur Romberg-Integration, Numer. Math. 6 (1964), 6–16. [13] Businger, P. und Golub, G. H., Linear least squares solutions by Householder transformations, Numer. Math. 7 (1965), 269–276. [14] Cullum, J. und Willoughby, R., Lanczos Algorithms for Large Symmetric Eigenvalue Computations, Vol I, II, Birkhäuser, Boston, 1985. [15] de Boor, C., An Algorithm for Numerical Quadrature, In Mathematical Software, J. Rice, Ed., Academic Press, London, 1971.
364
Literatur
[16] de Boor, C., A Practical Guide to Splines, Springer-Verlag, Berlin, Heidelberg, New York, 1978. [17] Deuflhard, P., On Algorithms for the Summation of Certain Special Functions, Computing 17 (1976), 37–48. [18] Deuflhard, P., A Summation Technique for Minimal Solutions of Linear Homogeneous Difference Equations, Computing 18 (1977), 1–13. [19] Deuflhard, P., A Stepsize Control for Continuation Methods and its Special Application to Multiple Shooting Techniques, Numer. Math. 33 (1979), 115–146. [20] Deuflhard, P., Order and Stepsize Control in Extrapolation Methods, Numer. Math. 41 (1983), 399–422. [21] Deuflhard, P., Newton Methods for Nonlinear Problems. Affine Invariance and Adaptive Algorithms, Springer International, 2002. [22] Deuflhard, P. und Bauer, H. J., A Note on Romberg Quadrature, Preprint 169, Universität Heidelberg, 1982. [23] Deuflhard, P. und Bornemann, F. A., Numerische Mathematik II. Gewöhnliche Differentialgleichungen, 3. Auflage, Walter de Gruyter, Berlin, New York, 2008. [24] Deuflhard, P., Fiedler, B. und Kunkel, P., Efficient numerical pathfollowing beyond critical points, SIAM J. Numer. Anal. 18 (1987), 949–987. [25] Deuflhard, P., Huisinga, W., Fischer, A. und Schütte, C., Identification of almost invariant aggregates in reversible nearly uncoupled Markov chains, Lin. Alg. Appl. 315 (2000), 39–59. [26] Deuflhard, P., Leinen, P. und Yserentant, H., Concept of an Adaptive Hierarchical Finite Element Code, Impact of Computing in Science and Engineering 1, 3 (1989), 3–35. [27] Deuflhard, P. und Potra, F. A., A Refined Gauss-Newton-Mysovskii Theorem, ZIB Report SC 91–4, ZIB, Berlin, 1991. [28] Deuflhard, P. und Potra, F. A., Asymptotic Mesh Independence for Newton-Galerkin Methods via a Refined Mysovskii Theorem, SIAM J. Numer. Anal. 29, 5 (1992), 1395– 1412. [29] Deuflhard, P. und Sautter, W., On Rank-Deficient Pseudoinverses, Lin. Alg. Appl. 29 (1980), 91–111. [30] Deuflhard, P. und Weber, M., Robust perron cluster analysis in conformation dynamics, Linear Algebra and Its Applications: Special Issue on Matrices and Mathematical Biology 398C (2004), 161–184. [31] Devroye, L., Non-Uniform Random Variate Generation, Springer, New York, 1986. [32] Ericsson, T. und Ruhe, Å., The Spectral Transformation Lanczos Method for the Numerical Solution of Large Sparse Generalized Symmetric Eigenvalue Problems, Math. Comp. 35 (1980), 1251–1268.
Literatur
365
[33] Farin, G., Curves and Surfaces for Computer Aided Geometric Design: A Practical Guide, Academic Press, New York, 1988. [34] Fletcher, R., Conjugate Gradient methods, In Proc. Dundee Biennial Conference on Numerical Analysis, Springer-Verlag, New York, 1975. [35] Forsythe, G. E. und Moler, C., Computer Solution of Linear Algebra Systems, Prentice Hall, Englewood Cliffs, N. J., 1967. [36] Francis, J. G. F., The QR-Transformation. A Unitary Analogue to the LR Transformation — Part 1 and 2, Comp. J. 4 (1961/62), 265–271 and 332–344. [37] Gallardo, P. F., Google’s secret and linear algebra, EMS Newsletter 63 (2007), 10–15. [38] Gatermann, K. und Hohmann, A., Symbolic Exploitation of Symmetry in Numerical Pathfollowing, Impact Comp. Sci. Eng. 3, 4 (1991), 330–365. [39] Gauß, C. F., Theoria Motus Corporum Coelestium. Vol. 7, Perthes et Besser, 1809. [40] Gautschi, W., Computational aspects of three-term recurrence relations, SIAM Rev. 9 (1967), 24–82. [41] Gentle, J. E., Random number generation and Monte Carlo methods, 2nd edition, Statistics and Computing, Springer, 2003. [42] Gentleman, W. M., Least Squares Computations by Givens Transformations Without Square Roots, J. Inst. Math. Appl. 12 (1973), 189–197. [43] Georg, K., On tracing an implicitly defined curve by quasi-Newton steps and calculating bifurcation by local perturbations, SIAM J. Sci. Stat. Comput. 2, 1 (1981), 35–50. [44] George, A. und Liu, J. W., Computer Solution of Large Sparse Positive Definite Systems, Prentice Hall, Englewood Cliffs, N. J., 1981. [45] Geweke, J., Bayesian inference in econometric models using Monte Carlo integration, Econometrica 57 (1989), 1317–1340. [46] Goertzel, G., An Algorithm for the Evaluation of Finite Trigonometric Series, Amer. Math. Monthly 65 (1958), 34–35. [47] Golub, G. H. und van Loan, C. F., Matrix Computations, 2nd edition, The Johns Hopkins University Press, 1989. [48] Golub, G. H. und Welsch, J. H., Calculation of Gauss Quadrature Rules, Math. Comp. 23 (1969), 221–230. [49] Gradshteyn, I. S. und Ryzhik, I. W., Table of Integral Series and Produkts, Academic Press, New York, San Francisco, London, 1965. [50] Griewank, A. und Corliss, G. F., Automatic Differentiation of Algorithms: Theory, Implementation, and Application, SIAM Publications, Philadelphia, PA, 1991. [51] Hackbusch, W., Multi-Grid Methods and Applications, Springer-Verlag, Berlin, Heidelberg, New York, Tokyo, 1985. [52] Hageman, L. A. und Young, D. M., Applied Iterative Methods, Academic Press, Orlando, San Diego, New York et. al., 1981.
366
Literatur
[53] Hairer, E., Nørsett, S. P. und Wanner, G., Solving Ordinary Differential Equations I, Nonstiff Problems, Springer-Verlag, Berlin, Heidelberg, New York, Tokyo, 1987. [54] Hall, C. A. und Meyer, W. W., Optimal error bounds for cubic spline interpolation, J. Approx. Theory 16 (1976), 105–122. [55] Hammarling, S., A Note on Modifications to the Givens Plane Rotations, J. Inst. Math. Appl. 13 (1974), 215–218. [56] Hastings, W. K., Monte Carlo sampling methods using Markov chains and their applications, Biometrika 57, 1 (1970), 97–109. [57] Hestenes, M. R. und Stiefel, E., Methods of Conjugate Gradients for Solving Linear Systems, J. Res. Nat. Bur. Stand 49 (1952), 409–436. [58] Higham, N. J., How accurate is Gaussian elimination?, In Numerical Analysis, Proc. 13th Biennial Conf., Dundee / UK 1989, Pitman Res. Notes Math. Ser. 228, 1990, pp. 137–154. [59] Householder, A. S., The Theory of Matrices in Numerical Analysis, Blaisdell, New York, 1964. [60] Kato, T., Perturbation Theory for Linear Operators, Springer-Verlag, Berlin, Heidelberg, New York, Tokyo, 1984. [61] Knopp, K., Theorie und Anwendung der unendlichen Reihen, 5. Auflage, SpringerVerlag, Berlin, Heidelberg, New York, 1964. [62] Kublanovskaya, V. N., On Some Algorithms for the Solution of the Complete Eigenvalue Problem, USSR Comp. Math. Phys. 3 (1961), 637–657. [63] Lanczos, C., An iteration method for the solution of the eigenvalue problem of linear differential and integral operators, J. Res. Nat. Bur. Stand 45 (1950), 255–282. [64] Langville, A. N. und Meyer, C. D., Google’s PageRank and beyound: The Science of Search Engine Rankings, Princeton University Press, 2006. [65] Lyness, J. N., When not to use an automatic quadrature routine, SIAM Rev. 25 (1983), 63–87. [66] Manteuffel, T. A., The Tchebychev Iteration for Nonsymmetric Linear Systems, Numer. Math. 28 (1977), 307–327. [67] Meijerink, J. A. und van der Vorst, H. A., An iterative solution method for linear systems of which the coefficient matrix is a symmetric M-matrix, Math. Comp. 31 (1977), 148–162. [68] Meixner, J. und Schäffke, W., Mathieusche Funktionen und Sphäroidfunktionen, Springer-Verlag, Berlin, Göttingen, Heidelberg, 1954. [69] Metropolis, N., Rosenbluth, A. W., Rosenbluth, M. N., Teller, A. H. und Teller, E., Equation of state calculations by fast computing machines, J. Chem. Phys. 21, 6 (1953), 1087–1092. [70] Meyer, C. D., Matrix Analysis and Applied Linear Algebra, SIAM Publications, Philadelphia, PA, 2000.
Literatur
367
[71] Miller, J. C. P., Bessel Functions, Part II (Math. Tables X), Cambridge University Press, 1952. [72] Nashed, M. Z., Generalized Inverses and Applications, Academic Press, New York, 1976. [73] Nikiforov, A. F. und Uvarov, V. B., Special Functions of Mathematical Physics, Birkhäuser, Basel, Boston, 1988. [74] Pearson, K., On lines and planes of closests fit to a system of points in space, Philosophical Magazine 2, 6 (1901), 559–572. [75] Perron, O., Über Matrizen, Math. Annalen 64 (1907), 248–263. [76] Peskun, P. H., Optimum Monte-Carlo sampling using Markov chains, Biometrika 60, 3 (1973), 607–612. [77] Poincaré, H., Les Méthodes Nouvelles de la Mécanique Céleste, Gauthier-Villars, Paris, 1892. [78] Pöppe, C., Pelliciari, C. und Bachmann, K., Computer Analysis of Feulgen Hydrolysis Kinetics, Histochemistry 60 (1979), 53–60. [79] Prager, W. und Oettli, W., Compatibility of approximate solutions of linear equations with given error bounds for coefficients and right hand sides, Numer. Math. 6 (1964), 405–409. [80] Prigogine, I. und Lefever, R., Symmetry breaking instabilities in dissipative systems II, J. Chem. Phys. 48 (1968), 1695–1701. [81] Reinsch, C., A Note on Trigonometric Interpolation, Manuskript, 1967. [82] Rigal, J. L. und Gaches, J., On the compatibility of a given solution with the data of a linear system, J. Assoc. Comput. Mach. 14 (1967), 543–548. [83] Robert, C. P. und Casella, G., Monte Carlo Statistical Methods, Springer Texts in Statistics, Springer-Verlag, New York, 1999. [84] Romberg, W., Vereinfachte Numerische Integration, Det Kongelige Norske Videnskabers Selskabs Forhandlinger Bind 28, 7 (1955). [85] Sauer, R. und Szabó, I., Mathematische Hilfsmittel des Ingenieurs, Springer-Verlag, Berlin, Heidelberg, New York, 1968. [86] Sautter, W., Fehlerfortpflanzung und Rundungsfehler bei der verallgemeinerten Inversion von Matrizen, Doktorarbeit, TU München, Fakultät für Allgemeine Wissenschaften, 1971. [87] Shannon, C. E., The Mathematical Theory of Communication, The University of Illinois Press, Urbana, Chicago, London, 1949. [88] Skeel, R. D., Scaling for Numerical Stability in Gaussian Elimination, J. ACM 26, 3 (1979), 494–526. [89] Skeel, R. D., Iterative Refinement Implies Numerical Stability for Gaussian Elimination, Math. Comp. 35, 151 (1980), 817–832.
368
Literatur
[90] Sonneveld, P., A fast Lanczos-type solver for nonsymmetric linear systems, SIAM J. Sci. Stat. Comput. 10 (1989), 36–52. [91] Stewart, G. W., Introduction to Matrix Computations, Academic Press, New York, San Francisco, London, 1973. [92] Stewart, G. W., On the structure of nearly uncoupled Markov chains, In Mathematical Computer Performance and Reliability, G. Iazeolla, P. J. Courtois und A. Hordijk, Eds., Elsevier, New York, 1984. [93] Stoer, J., Solution of large systems of linear equations by conjugate gradient type methods, In Mathematical Programming, the State of the Art, A. Bachem, M. Grötschel und B. Korte, Eds., Springer-Verlag, Berlin, Heidelberg, New York, 1983. [94] Szegö, G., Orthogonal Polynomials, 4th edition, AMS, Providence, 1975. [95] Traub, J. und Wozniakowski, H., General Theory of Optimal Algorithms, Academic Press, Orlando, San Diego, San Francisco et al., 1980. [96] Trefethen, L. N. und Schreiber, R. S., Average-case stability of gaussian elimination, SIAM J. Matrix Anal. Appl. 11, 3 (1990), 335–360. [97] Tukey, J. W. und Cooley, J. W., An Algorithm for the Machine Calculation of Complex Fourier Series, Math. Comp 19 (1965), 197–301. [98] Varga, J., Matrix Iterative Analysis, Prentice Hall, Englewood Cliffs, N. J., 1962. [99] von Neumann, J., Various techniques used in connection with random digits. Monte Carlo methods, Nt. Bureau of Standards 12 (1951), 36–38. [100] Wilkinson, J. H., The Algebraic Eigenvalue Problem, Oxford University Press, 1965. [101] Wilkinson, J. H., Rundungsfehler, Springer-Verlag, Berlin, Heidelberg, New York, 1969. [102] Wilkinson, J. H. und Reinsch, C., Handbook for Automatic Computation, Volume II, Linear Algebra, Springer-Verlag, New York, Heidelberg, Berlin, 1971. [103] Wittum, G., Mehrgitterverfahren, Spektrum der Wissenschaft (April 1990, 78–90). [104] Wulkow, M., Numerical Treatment of Countable Systems of Ordinary Differential Equations, ZIB Report TR 90–8, ZIB, Berlin, 1990. [105] Xu, J., Theory of Multilevel Methods, Doktorarbeit, Pennstate University, 1989. [106] Yserentant, H., On the Multi-Level Splitting of Finite Element Spaces, Numer. Math. 49 (1986), 379–412.
Index
A A-orthogonal, 273 Abbildung kontrahierende, 94 Abel Satz von, 139 adjungierte Summation, 191 dominante Lösungen, 191 Minimallösung, 196 Aigner, M., 332 Aitken-Neville-Algorithmus, 206 Aitkensche 2 -Methode , 127 Algorithmus LR-, 140 QR-, 140 Invarianz, 17 Metropolis-, 353 Metropolis-Hastings-, 353 Schnelligkeit, 6 Verlässlichkeit, 5 Verwerfungs-, 350 von de Boor, 248, 258 von de Casteljau, 234 Approximation -sfehler, 29 -sordnung, 116 Arnoldi-Verfahren, 278 Arrhenius-Gesetz, 90 asymptotische Entwicklung, 313, 317 Aufwand QR-Algorithmus, 145 für Singulärwerte, 151 QR-Zerlegung, 79, 82 Gauß-Elimination, 11 pro Schrittweite, 332 Ausgleichsproblem fast kompatibles, 108
kompatibles, 105 lineares, 69 QR-Zerlegung, 76, 82 Cholesky-Zerlegung, 74 Kondition, 73 unterbestimmtes, 85 Tschebyscheffsches, 69 Auslöschung, 33
B B-Spline, 243 Basiseigenschaft, 247 Rekursionsformel, 244 Bézier -Darstellung, 229 -Kurve, 229 Unterteilung, 237 Verheftung, 239 -Polygon, 229 -Punkte, 229 Babuška, I., 342 Bessel-Funktionen, 179, 198 Besselscher Irrgarten, 179 bi-cg-Verfahren, 278 Bjørck, Å., 75, 89 Bock, H. G., 107 Bornemann, F. A., 285 Brent, R. P., 95 Brusselator, 125 Bulirsch, R., 319 Bulirsch-Folge, 323 Businger, P., 82
C Cardano, 59 Casorati-Determinante, 177, 198 cg-Verfahren, 275 Abbruchkriterium, 275, 284
370 cgs-Verfahren, 278 Cholesky-Zerlegung, 21, 74 Aufwand, 21 rationale, 20 Christoffel-Darboux-Formel, 310 Codiermaschine, 334 Computer-Graphik, 225 Cooley, J. W., 223 Cramersche Regel, 5 Cullum, J., 289
D Datenkompression, 104 de Boor, C., 225, 336 de-Boor -Punkte, 248, 253 detailed balance, 158, 352 Determinante, 5, 17, 37 Deuflhard, P., 84, 102, 285, 334 Dichte Boltzmann-, 348 instrumentelle, 349 Differentiation numerische, 128 Diskretisierungsfehler Gleichverteilung, 335, 342 dividierte Differenzen, 206, 209 Rekursionsformel, 210 Drei-Term-Rekursion adjungierte, 191 dominante Lösung, 182 homogene, 176 inhomogene, 176, 178 Kondition, 180 rezessive Lösung, 182 symmetrische, 176 trigonometrische, 47, 183, 191 Dreiecks -matrix, 7 -zerlegung, 11
E Eigenwert -cluster, 135 -problem, Kondition, 134 Perron-, 154 Elementaroperation, 29
Index Energienorm, 272 Entropie, 334 Ericsson, T., 290 Eulersche Summenformel, 314 Exponentialfunktion Taylorapproximation, 63 Extrapolation Fehlerschätzer, subdiagonaler, 330 Konvergenz-Monitor, 334 lokale, 343 Extrapolationsmethoden, 317 Extrapolationstableau, 318
F Faber, 214 Faktoranalyse, 145 Farin, G., 225 fast singulär, 52, 84, 137 Fehler -quadrate, kleinste, 66 -schätzer, lokale, 340 -theorie, linearisierte, 32 absoluter, 31 Approximations-, 29 Eingabe-, 29 im Algorithmus, 29 komponentenweiser, 31 normweiser, 31 relativer, 31 Rundungs-, 29 Fixpunkt -gleichung, 92 -iteration, Beispiel, 93 -satz, Banachscher, 95 -verfahren, 261 relaxierte, 264 symmetrisierbare, 264 Fletcher, R., 278 Fluch der Dimension, 347 Fortsetzungsmethode, 114 klassische, 114 tangentiale, 115, 121 Fourier -Reihe, 172, 221 -Synthese, 47 -Transformation, 218 schnelle, 222
371
Index Francis, J. G. F., 140 Frobenius, F. G., 155
G Gaches, J., 57 Gauß -Elimination, 11, 55 -Jordan-Verfahren, 6 -Newton-Verfahren, 105, 122 -Seidel-Verfahren, 263 Gaußsche Glockenkurve, 68 Gaußsche Normalverteilung, 68 Gauß, C. F., 8 Gautschi, W., 185 Gentleman, W. M., 80 Gewichte Gauß-Christoffel-, 307, 310 Newton-Cotes-, 299 Gitterverfeinerung, 340 Givens-Rotation, 78, 89 rationale, 80 Gleichung, quadratische, 92 Gleichungssystem, gestaffeltes, 7, 53 Gleitkomma -darstellung, 28 -zahl, 28 Goertzel, G., 192 Goertzel-Algorithmus, 192 Golub, G. H., 82, 131 Graph, 155 gerichteter, 155, 164 irreduzibler, 155 stark zusammenhängender, 155 Greedy-Algorithmus, 332 Greensche Funktion, diskrete, 177, 198 Griewank, A. , 103
H Hackbusch, W., 267 Hageman, L. A., 266 Hall, C. A., 252 Hammarling, S., 80 Hermite-Interpolation, 206 kubische, 208 Hestenes, M. R., 275 Higham, N. J., 53 Homotopiemethode, 124
Horner-Algorithmus, 189 verallgemeinerter, 191 Householder, A. S., 80
I Importance Sampling, 350 Informationstheorie Shannonsche, 334 Integrale gewichtete, 304 parameterabhängige, 339 Interpolation trigonometrische, 219 Invertierung von Matrizen, 6 Inzidenzmatrix, 155
J Jacobi-Verfahren, 262
K Kato, T., 134 Kettenbruch, 183 Knoten Gauß-Christoffel-, 307 Interpolations-, 200 Tschebyscheff-, 204, 217 Kondition, 30 absolute, 32 bei Schnittpunkt von Geraden, 30 der Addition, 33 Drei-Term-Rekursion, 180 lineare Gleichung, 35, 39 Multiplikation, 39 nichtlineare Gleichung, 37, 41 relative, 32 Skalarprodukt, 39 Skeelsche, 39, 40, 63 konjugierte Gradienten, 275 Konvergenz -geschwindigkeit, 96 -ordnung, 96 lineare, 96 quadratische, 96, 101 superlineare, 96 Krylov-Räume, 274 Kublanovskaja, V. N., 140 Kugelfunktionen, 184
372
Index
Lanczos, C., 286 Lanczos-Algorithmus, 287 Landau-Symbol, 32 Lebesgue-Konstante, 204 Leibniz-Regel, 212 Leinen, P., 285 Levenberg-Marquardt-Verfahren, 110, 166 lineare Optimierung, 69 Lipschitz -Konstante, 94 -stetig, 32 LR-Algorithmus, 140 LR-Zerlegung, 11
Spektralnorm, 61 stochastische, 151, 354 Vandermonde-, 202 Wertebereich, 23 Maximum-Likelihood-Methode, 68 Mehrgitterverfahren, 266 Meixner, J., 183 Meyer, C. D., 131 Meyer, W. W., 252 Miller, J. C. P., 187 Miller-Algorithmus, 187 Milne-Regel, 300 Minimallösung, 182, 187 Momente, 304 Monotonietest natürlicher, 102, 118 Standard-, 102 Monte-Carlo-Integration, 348
M
N
Algorithmus für, 186 schnelle Summation, 192
L
Manteuffel, T. A., 272 Mantisse, 28 Markov -Kette, 151, 352 entkoppelte, 160 fastentkoppelte, 162, 167 reversible, 158 -Prozess, 151 Markov, A. A., 151 Markov-Ketten-Monte-Carlo, 351 Marsden-Identität, 246 Maschinen -genauigkeit, 28 -zahl, 28 Matrix p-Normen, 61 Bidiagonal-, 148 Block-Tridiagonal-, 259 Frobenius-, 10 Frobeniusnorm, 61 Hessenberg-, 145 Inzidenz-, 155 irreduzible, 155 Permutations-, 14 Pfeil-, 166 primitive, 157, 354 spd-, 19
Nachiteration, 18 bei linearer Ausgleichsrechnung, 75, 89 Nadelimpuls, 324, 336, 345 Nashed, M. Z., 86 Neumann-Funktionen, 180, 198 Neumannsche Reihe, 35 Newton -Korrektur, 99 vereinfachte, 102 -Verfahren, 97 affininvariante, 99 gedämpftes, 103 gewöhnliches, 99 komplexes, 128 Quadratwurzel, 98 Normalgleichungen, 71 numerisch singulär, 52
O Oettli, W., 57 Ohmsches Gesetz, 66 Orthogonalpolynome, 310
P PageRank-Vektor, 164 PCA, 145 PCCA, 163
373
Index Penrose-Axiome, 86 Perron -Clusteranalyse, 158, 163 -Eigenwert, 154 Perron, O., 153 Perroncluster, 162 Pivot -element, 9, 12 -strategie Spalten-, 13, 56 vollständige, 14 -suche, bedingte, 260 -zeile, 9 Polynome Bernstein-, 227 charakteristische, 135 Hermite-, 208, 310 Lagrange-, 202 Laguerre-, 310 Legendre-, 197, 310 Tschebyscheff-, 174, 214, 310 Minimax-Eigenschaft, 214, 269, 277 Prager, W., 57 Pseudoinverse, 85, 105, 122 QR-Zerlegung, 87 bei Rangdefekt, 89 durch Singulärwertzerlegung, 147
Q QR-Algorithmus Shift-Strategien, 143 QR-Zerlegung mit Householder-Reflexionen, 82 quadratische Gleichung, 34 Quadratur -formel, 298 Gewichte einer, 298 Knoten einer, 298 Newton-Cotes-, 299 adaptive, 340 Approximationsfehler, 308 Fehlerschätzer globaler, 344 lokaler, 340 Gauß -Christoffel-, 307
-Hermite-, 310 -Laguerre-, 310 -Legendre-, 310 -Lobatto-, 358 -Tschebyscheff-, 309, 310 Gauß-Tschebyscheff-, 357 hochdimensionale, 347 Kondition, 296 Mehrgitter-, 340 numerische, 294 Romberg-, 313
R Rückwärts -analyse, 43 der Gauß-Elimination, 55 für gestaffelte Gleichungssysteme, 53 -substitution, 8, 53 Rang -entscheid, 83, 108 numerischer, 83 Rayleigh-Quotient, 286 verallgemeinerter, 289 Reflexion, 77 Householder-, 80 Reinsch, C., 48, 145 Residuum, 57 Rheinboldt, W. C., 342 Richardson-Verfahren, 262 relaxiertes, 266 Riemann-Integral, 295 Rigal, J. L., 57 Ritz-Galerkin-Approximation, 272 Romberg -Folge, 323 -Quadratur adaptive, 326, 332 Approximationsfehler, 328 globale Genauigkeit, 335 klassische, 321 Romberg, W., 321 Rotation, 77 Givens-, 78, 89 rationale Givens-, 80 schnelle Givens-, 80 Ruhe, Å., 290
374 Rutishauser, H., 140
S Sautter, W., 84 Schäffke, W., 183 schleifender Schnitt, 31 Schmiegkreis, 249 Schreiber, R. S., 56 Schrittweitensteuerung bei Extrapolation, 326 Schur, I., 26 Schursche Normalform, 145 Shannon, C. E., 334 Simpson-Regel, 300, 340 Skalierung, 17 Skeel, R. D., 19, 40, 58, 64 Sonneveld, P., 278 Spalten -äquilibrierung, 18 -permutation, 14 -skalierung, 17 -tausch, 82, 123 Sparse-Löser, 260 Spektral-Lanczos-Algorithmus, 290 Spezielle Funktionen, 171 Splines Interpolation, 248 Minimaleigenschaft, 251 Stabilität -sindikator in Rückärtsanalyse, 49 Addition, 45 Drei-Term-Rekursion, 180 in Rückwärtsanalyse, 43 in Vorwärtsanalyse, 42 Skalarprodukt, 46 trigonometrische Rekursion, 47 Stabilitätsindikator in Vorwärtsanalyse, 43 steilster Abstieg, 278 Stiefel, E., 275 Stoer, J., 278 Sturmsche Kette, 199 Subkondition, 84 Summation adaptive, 339, 346
Index
T Tartaglia, 59 Taylor-Interpolation, 207 Trapezsumme, 296 Traub, J., 6 Trefethen, L. N., 56 trigonometrische Rekursion, 47 Tschebyscheff -Abszissen, 217 -Beschleunigung, 270 -Iteration, 270 Tukey, J. W., 223
U Umkehrpunkt, 113 Ununterscheidbarkeit, 29, 30
V van Loan, C., 131 van Veldhuizen, R., 356 Vektoriteration direkte, 136 inverse, 137, 165 stochastische, 354 verallgemeinerte Inverse, 86 Verfeinerung globale, 343 lokale, 343 Babuška-Rheinboldt, 342 Verzweigungspunkt, 112 von Mises, R., 136 Vorkonditionierung diagonale, 284 unvollständige Cholesky-, 284 Vorwärts -analyse, 42 -differenz, 231 -substitution, 8, 53
W Wielandt, H., 137, 165 Wilkinson pathologisches Beispiel, 64 Wilkinson, J. H., 43, 49, 64, 135, 142, 144, 145 Willoughby, R., 289 Wittum, G., 267 Wozniakowski, H., 6
Index Wronski-Determinante, 178
X Xu, J., 285
Y Young, D. M., 266 Yserentant, H., 285
Z Zeilen -äquilibrierung, 18 -permutation, 14 -pivotstrategie, 14 -skalierung, 17 Zylinderfunktionen, 180, 198
375