209 2 25MB
German Pages 314 [320] Year 1976
de Gruyter Lehrbuch Schmeißer - Schirmeier Praktische Mathematik
Gerhard Schmeißer • Horst Schirmeier
Praktische Mathematik
w G_ DE
Walter de Gruyter Berlin • New York 1976
Dr. rer. nat. Gerhard
Schmeißer,
Privatdozent, akademischer Direktor a m Mathematischen Institut der Universität Erlangen-Nürnberg Dipl. Math. Horst
Schirmeier,
wissenschaftlicher Mitarbeiter a m Mathematischen Institut der Universität Erlangen-Nürnberg
M i t 27 Figuren u n d 26 Tabellen
CIP-Kurztitelaufnahme der Deutschen Bibliothek Schmeißer, Gerhard Praktische Mathematik/Gerhard Schmeißer ; Horst Schirmeier. - 1. Aufl. - Berlin, New York: de Gruyter, 1976. (De-Gruyter-Lehrbuch) ISBN 3-11-004977-5 NE: Schirmeier, Horst:
© Copyright 1976 by Walter de Gruyter & Co., vormals G. J. Göschen'sehe Verlagshandlung, J. Guttentag, Verlagsbuchhandlung Georg Reimer, Karl J. Trübner, Veit & Comp., Berlin 30. Alle Rechte, insbesondere das Recht der Vervielfältigung und Verbreitung sowie der Übersetzung, vorbehalten. Kein Teil des Werkes darf in irgendeiner Form (durch Photokopie, Mikrofilm oder ein anderes Verfahren) ohne schriftliche Genehmigung des Verlags reproduziert oder unter Verwendung elektronischer Systeme verarbeitet, vervielfältigt oder verbreitet werden. Satz: Fotosatz Tutte, Salzweg-Passau. - Druck: Color Druck, Berlin. - Bindearbeiten: Lüderitz & Bauer, Buchgewerbe GmbH, Berlin. - Printed in Germany
Vorwort
Dieses Buch entstand aus Lehrveranstaltungen (Vorlesungen, Übungen, Praktika), die wir seit 1970 an der Universität Erlangen-Nürnberg halten. Bei der mehrfachen Überarbeitung des Textes wurden besonders auch Lehr- und Prüfungserfahrungen berücksichtigt. Das behandelte Stoffgebiet wird heute an den Hochschulen als „Praktische Mathematik" oder „Numerische Mathematik" in zweisemestrigen Kursen angeboten und in der Regel bereits zur Zwischenprüfung verlangt. Entsprechend wendet sich das Buch an Studenten der Mathematik, Physik oder Ingenieurwissenschaften ab dem dritten Fachsemester. Es setzt nur gründliche Kenntnis des Anfangerstoffes der Analysis und linearen Algebra voraus und kann sowohl zum Selbststudium als auch als Repetitorium zur Prüfungsvorbereitung verwendet werden. Darüber hinaus werden auch diejenigen Studenten angesprochen, die sich nach der Zwischenprüfung weiterhin mit praktischer Mathematik beschäftigen und theoretische Aspekte vertiefen oder aber im Rahmen einer Abschlußarbeit praktische Rechnungen durchführen wollen. Deshalb sollen mit einem „Kleindruck" (insbesondere Anmerkungen) dem fortgeschrittenen Leser Anregungen gegeben und Spezialliteratur zur Kenntnis gebracht werden. Die besondere Zielsetzung des Buches ist durch drei Punkte zu charakterisieren: 1. Der Stoff sollte rigoros auf einen Umfang beschränkt bleiben, den ein Student mittleren Semesters bewältigen kann. 2. Die praktische Mathematik sollte stilistisch in die Gesamtmathematik eingebettet werden und nicht zur anderen Mathematik werden, in der das „Ungefährzeichen" an die Stelle des Gleichheitszeichens tritt. 3. Der behandelte Stoff sollte trotz der zweiten Forderung nie esoterisch werden, sondern immer von Relevanz für die Praxis bleiben. Bei der Verfolgung dieser Ziele verdanken wir zahlreichen Lehrbüchern, vor allem aber auch dem Wirken von Herrn Professor G. Meinardus in Erlangen, wertvolle Anregungen. Unser Dank gilt besonders Herrn Professor Heinz Bauer für die Ermutigung, das Buch zu schreiben, und dem Verlag für die gute Zusammenarbeit. Erlangen, im Frühjahr 1976
Gerhard Schmeißer Horst Schirmeier
Inhalt
Einleitung 1. Fehlerbetrachtung 1.1. Fehlerquellen 1.2. Fehlerfortpflanzung 1.3. Gesamtfehler Anmerkungen 2. Iterationsverfahren 2.1. Vorbemerkungen 2.2. Der Banachsche Fixpunktsatz 2.3. Konvergenzordnung
11 13 13 16 17 19 20 20 22 25
2.4. D a s NEWTON-Verfahren
31
2.5. Die Regula falsi Anmerkungen
43 47
3. Nullstellen von Polynomen 3.1. Rechnen mit Polynomen 3.2. Lage der Nullstellen 3.3. Das NEWTON-Verfahren für Polynome 3 . 4 . Das Verfahren von BAIRSTOW 3 . 5 . Das Verfahren von GRAEFFE Anmerkungen 4. Lineare Gleichungssysteme 4.1. Schreibweisen und Vereinbarungen 4.2. Normen und Konditionszahl 4.3. Iterative Verfahren 4 . 4 . Das direkte Verfahren von GAUSS und seine Varianten 4.5. Das Austauschverfahren 4.6. Fehlerabschätzungen und Endkorrektur 4.7. Vergleich der Verfahren Anmerkungen
49 49 54 61 65 72
76 79 79 81 88 97
102 106 107 108
8
Inhalt
5. Lineare Optimierung
110
5.1. Normalform eines linearen Optimierungsproblems 5.2. Theoretische Grundlagen 5.3. Simplexverfahren Anmerkung 6. Eigenwertprobleme bei Matrizen
121
6.1. Lage der Eigenwerte 6.2. Klassifikation der numerischen Verfahren 6.3. Reduktion auf Tridiagonal-oder HESSENBERG-Form 6.4. Behandlung von Tridiagonal- und HESSENBERG-Matrizen 6.5. Das LR-Verfahren 6.6. Iterationsverfahren für das teilweise Eigenwertproblem Anmerkungen 7. Interpolation
8. Numerische Integration
188 MACLAURIN . . .
9.1. Bernoullische Zahlen, Polynome und Funktionen 9.2. Die Eulersche Summenformel 9.3. Transformationsmethoden Anmerkungen
10.1. Einführung 10.2. Lineare Mehrschrittverfahren
153 158 170 183 186 188
9. Summation und Konvergenzbeschleunigung
10. Diskretisierungsverfahren bei gewöhnlichen Differentialgleichungen
121 128 131 137 140 145 152 153
7.1. Das Hermitesche Interpolationsproblem 7.2. Das Lagrangesche Interpolationsproblem mit Polynomen 7.3. Interpolation mit Splinefunktionen 7.4. Numerische Differentiation Anmerkungen
8.1. Allgemeine Theorie 8 . 2 . Die Quadraturformeln von NEWTON-CÔTES und 8.3. Integration von periodischen Funktionen 8.4. Gaußsche Quadraturformeln Anmerkungen
110 112 115 120
195
208 211 219 222 222 228 237 246
248 248 254
Inhalt
10.3. Nichtlineare explizite Einschrittverfahren 10.4. Zur Praxis der Ein- und Mehrschrittverfahren Anmerkungen
9
270 278 287
Anhang I: Stützstellen und Gewichte für GAUSS-Quadraturen
288
Anhang II: Formeln zur numerischen Differentiation
298
Literaturverzeichnis Symbolverzeichnis Namen-und Sachverzeichnis
301 306 311
Einleitung
Die praktische Mathematik befaßt sich mit der approximativen Lösung mathematischer Aufgaben. Sie beschränkt sich dabei auf gewisse Grundprobleme, die als Bausteine zur Behandlung komplizierterer Aufgaben dienen. So kann z.B. die Berechnung einer konformen Abbildung auf eine lineare Integralgleichung und diese wiederum auf die Grundprobleme numerische Integration und lineare Gleichungssysteme zurückgeführt werden. Ähnlich können Approximationsaufgaben mit Hilfe von Interpolation, linearen Gleichungssystemen, Iteration oder Optimierung numerisch gelöst werden. M i t d e n B e i t r ä g e n v o n NEWTON ( 1 6 8 7 u n d 1 7 1 1 ) , RAPHSON (1697), J . BERNOULLI(1713), CÖTES (1722), EULER (1738), MACLAURIN (1742), SIMPSON (1743), LAGRANGE ( 1 7 9 5 ) , HORNER (1819), GAUSS ( 1 8 2 6 u n d 1887), GRAEFFE (1837), JACOBI (1845), SEIDEL ( 1 8 7 4 ) , ADAMS u n d BASHFORTH ( 1 8 8 3 ) , RUNGE, KUTTA
und HEUN ( 1 8 9 5 - 1 9 0 1 ) waren schon um die Jahrhundertwende ein Großteil jener Verfahren bekannt, die das Grundgerüst der praktischen Mathematik und somit auch des vorliegenden Buches bilden. Wir können uns allerdings heute kaum noch vorstellen, wie mit den damaligen Rechengeräten eine Durchführung von numerischen Verfahren bei umfangreichen Problemen möglich war. Tatsächlich standen noch bis vor etwa 30 Jahren vor allem graphische Verfahren, die zum Teil von geschickten Ingenieuren etwas jenseits der akademischen Mathematik erdacht wurden, im Vordergrund. Mit der Entwicklung digitaler Rechenanlagen - etwa ab 1950 - verloren dann diese Verfahren immer mehr an Bedeutung. So muß heute die praktische Mathematik fast ausschließlich als numerische Mathematik verstanden werden. Mit der Schaffung leistungsfähiger Rechenanlagen wurde es endlich möglich, die alten Verfahren anhand nichttrivialer Beispiele zu testen. Dabei ergaben sich neue Kriterien für die Brauchbarkeit eines Verfahrens, von denen wir nur zwei typische nennen wollen: 1. Während bei der „Handrechnung" am Schreibtisch der Einfluß des Rundungsfehlers leicht zu überblicken ist, führt eine moderne Rechenmaschine in wenigen Sekunden derart viele Rechenschritte durch, daß sich der gesamte Rundungsfehler zu einer schwer überschaubaren Größe aufschaukeln kann. So wurde die Frage nach der Stabilität eines Algorithmus ein Gegenstand neuerer Forschung. 2. Die Rechenmaschinen wurden immer vollkommener, so daß sie schließlich fähig waren, Algorithmen vollautomatisch, d. h. ohne Eingriff des Menschen, von Anfang bis Ende durchzuführen. Damit erhob sich aber gleichzeitig die Forderung an die Verfahren, den vollautomatischen Ablauf zu gestatten. Diese Forderung ist besonders ein-
12
Einleitung
schneidend bei nichtlinearen Iterationsverfahren, bei denen sich geeignete Startwerte am einfachsten durch geschicktes Probieren des erfahrenen Mathematikers bestimmen lassen. Verstärkt wurde das Streben nach vollautomatischen Verfahren noch dadurch, daß größere Rechenzentren als „closed shop" organisiert wurden, in dem der Benutzer seine Programme an der Pforte abgibt und erst später die Ergebnisse abholt. Dem derzeitigen Stand der Technik nach scheint jedoch die ausschließliche Forderung nach vollautomatischen Verfahren nicht mehr angebracht zu sein. Zum einen führt die Weiterentwicklung der Großrechenzentren immer mehr zu Teilnehmersystemen mit Dialogmöglichkeit, wobei der einzelne Benutzer an Ein- und Ausgabegeräten sitzt und über eine Fernleitung an die zentrale Einheit angeschlossen ist. Zum anderen wurden erstaunliche Fortschritte bei Klein- und Kleinstcomputern erreicht. Diese Geräte stehen in ihrer Rechengeschwindigkeit den Großcomputern nicht nach. Zudem ist für den Besitzer eines Kleinstcomputers die Rechenzeit kein echter Kostenfaktor. Auch sind die meisten Kleinstcomputer voll programmierbar, gestatten aber auf geradezu ideale Weise den teilautomatischen Ablauf, bei dem der Benutzer während der Rechnung in das Programm eingreifen kann oder sogar muß. Einzige Nachteile sind im allgemeinen ein Mangel an Speichermöglichkeit und komfortablen Programmiersprachen . Man könnte nun geradezu nach Verfahren suchen, die für Kleinstcomputer optimal geeignet sind. Um freilich unser Buch nicht auf temporäre Erscheinungen auszurichten, haben wir bei der Auswahl des Stoffes keinerlei Rücksicht auf Besonderheiten bestimmter Rechengeräte genommen, allerdings graphische Verfahren ganz ausgeschlossen. Uns schien es auch zu einseitig, Algorithmen in einer speziellen Programmiersprache darzustellen. Die FlußdiagrammNotation von J. v. NEUMANN und GOLDSTINE wiederum hielten wir für zu detailliert und unübersichtlich. Deshalb entschlossen wir uns, Algorithmen in Blöcken mit einer einfachen Symbolik zu beschreiben, die jedem Studenten ohne weitere Erklärung von seinen Mathematikvorlesungen her geläufig sein dürfte. Eine Übertragung des Allquantors mit Indexbereich auf die „LaufAnweisung" (Schleife) einer höheren Programmiersprache beispielsweise wird ohne Schwierigkeiten gelingen. Der Anfanger kann die in Kleindruck gesetzten Textteile überspringen. Dagegen haben wir als numerierte „Bemerkungen" gewisse Textteile ausgezeichnet, die Querverbindungen herstellen, Fragen der Praxis anschneiden und auch Aufgaben enthalten. Diese sollte der Leser unbedingt studieren, da sie ihm auch zur Verständniskontrolle dienen können.
1. Fehlerbetrachtung
Die Lösung einer Aufgabe der praktischen Mathematik läßt sich grundsätzlich auf die Bestimmung einer oder mehrerer reeller Zahlen zurückführen. Dabei vereinbart man: 1. Eine reelle Zahl r numerisch berechnen heißt ein Paar reeller Zahlen (r, e) angeben mit \ r — r\^e. 2. Der Näherungswert r heißt auf mindestens k Dezimalstellen genau, wenn für die Fehlerschranke e gilt: e ^ j • W~k. 3. Die reelle Zahl r — r heißt absoluter Fehler von f. 4. Für r + 0 heißt
r —r relativer Fehler von r. r
Es kann durchaus vorkommen, daß die Berechnung von r durch eine Rechenmaschine in Bruchteilen von Sekunden erfolgt, während die Bestimmung von s harte Schreibtischarbeit erfordert. Ohne Fehlerschranke ist jedoch das errechnete Ergebnis r wertlos.
1.1. Fehlerquellen Verfahrensfehler. In der Regel gestattet es ein Verfahren nicht, die gesuchte Größe in endlich vielen Schritten exakt zu gewinnen. Es entsteht ein sog. Verfahrensfehler (Abbruchfehler, engl, truncation error), den wir bei der Besprechung der einzelnen Methoden gesondert untersuchen wollen. Häufig kann der Verfahrensfehler durch Erhöhung der Anzahl der Rechenoperationen beliebig klein gehalten werden.
Beispiel. Zu
oo/ , = 4 £
1V + 1
"
sei
ft
(
1V + 1
= 4 £
Hier gilt nach dem bekannten Leibnizschen Kriterium (s. [1], [ 3 ] ) 4 in +1 Durch geeignete Wahl von n kann e zu Lasten des Rechenaufwandes beliebig klein gemacht werden.
14
1. Fehlerbetrachtung
Rundungsfehler. Nach Vorgabe einer Grundzahlg e IN, g 4= 1 kann bekanntlich jede reelle Zahl r > 0 in der Form k r = I aKgK, fcelN, aK e IN0, K — - 00
mit Ziffern aK dargestellt werden. Die Zahl r wird also durch eine unendliche Folge (aK) angegeben. Auf Rechenmaschinen kann man aber nur mit endlichen Folgen arbeiten, muß sich daher mit einem rationalen Näherungswert, etwa k r= Z aKgK, K — ~t begnügen. Den so entstehenden, durch das Rechengerät bedingten Fehler bezeichnet man als Rundungsfehler. In der Praxis sind folgende Ziffernsysteme von Bedeutung: Das Dual- oder Binärsystem (g = 2) ist das kleinste mögliche Ziffernsystem. Es wird vor allem bei elektronischen Rechenanlagen intern verwendet. Das Oktalsystem (g = 8) kann aus dem Dualsystem durch Zusammenfassen von Gruppen aus je drei Ziffern gewonnen werden. Beispiel: dual oktal
1 001 1
1
101,111
011
5 , 7
3
Es findet bei der Bedienung moderner Rechenanlagen Anwendung. Das Dezimalsystem ig = 10) ist uns vom täglichen Leben her geläufig. Elektronische Rechenanlagen konvertieren binäre Darstellungen in dezimale und umgekehrt. Die Darstellung des rationalen Näherungswertes r von r in einer Maschine kann auf verschiedene Weise normiert werden: (1.1.1) Festkomma-Darstellung. Jede Zahl wird nach Notierung ihres Vorzeichens durch s + t Ziffern, nämlich s Ziffern vor dem Komma und t Ziffern danach, ersetzt. Geometrisch bedeutet dies, daß man an Stelle der reellen Zahlengeraden IR ein äquidistant geteiltes endliches Punktraster verwendet. Bei der Addition und Subtraktion entsteht kein Fehler, solange der Bereich der darstellbaren Zahlen nicht überschritten wird. Bei der Multiplikation entsteht zunächst eine Zahl mit 2 t Stellen hinter dem Komma. Beim Runden wird der
15
1.1. Fehlerquellen
Betrag des Ergebnisses in der Regel um g~' erhöht; dann wird hinter den ersten t Nachkommastellen abgeschnitten. Dabei entsteht ein absoluter Fehler e mit Darüber hinaus kann durch zuviele Stellen vor dem Komma Bereichsüberschreitung auftreten. Eine entsprechende Überlegung für die Division führt zu den gleichen Ergebnissen. (1.1.2) Gleitkomma-Darstellung. Jede reelle Zahl r =)= 0 wird durch ein Produkt r ••= gl(r)-=a gb
mit
-g|a|4 bleibt dabei in den Grenzen bx + b2 — 1 ^ ¿4 ^ ¿1 + b2. Dadurch entsteht ein relativer Fehler Q mit | 7 A n a l o g e Überlegungen für die Division führen zum selben Ergebnis. In allen Fällen kann im Ergebnis ein Exponent b entstehen, der nicht durch nur s' Ziffern darstellbar ist. Bei negativem b wird dann das Ergebnis durch Null ersetzt, bei positivem b scheitert die Rechnung CBereichsüberschreitung). (1.1.3) Beispiele für Gleitkommarechnung mit g = 10 und t' = 4: 1. Für
ri = 0,8639 x 104,
r 2 = 0,1141 x 10~6
gilt
gl(r t ± r 2 ) = gl((0,8639 ± 0,1141 x 10" 10 ) x 104) = r t .
2. Für
rx = 0,3412 x 10" 5 ,
gilt
gl(rx + r2) = gl(0,0002 x 10~5) = 0,2 x 10" 8 =
r2 = -0,3410 x 10" 5 r1+r2.
Die Summe wird exakt berechnet. 3. Für
ri =0,2791 x 1 0 - 6 ,
r 2 = 0,1247 x 10~2
gilt
gl(ri/r 2 ) = gl(2,2381716 ... x 10" 4 ) = 0,2238 x 10" 3 .
Zusammenfassend halten wir fest: Bei Festkomma-Darstellung werden bei der Rundung die absoluten Fehler maschinenabhängig beschränkt, bei GleitkommaDarstellung die relativen Fehler.
1.2. Fehlerfortpflanzung Wir wollen nun untersuchen, wie sich schon vorhandene Fehler bei exakter Rechnung fortpflanzen, lassen also den im vorangegangenen Abschnitt betrachteten, durch die Zahlendarstellung bedingten Fehler der arithmetischen Operationen außer acht. Sind ?! und r2 Näherungen von r j und r2 mit | so gilt:
— 1 = £1 und \ r2 — r2 | ^ e2,
Bei Addition und Subtraktion addieren sich die Schranken fiir den absoluten Fehler; denn es gilt | ± r 2 ) - (^ ± r2) \ ^ | r t — r11 +1 r2 - r21 ^ s1 + e 2 . Relative Fehler können dagegen erheblich verstärkt werden. Besitzt im obigen Beispiel (i. 1.3/2) etwa RX einen relativen Fehler Q > 0 , so wird auf das Ergebnis
17
1.3. Gesamtfehler
Q-r 1 > q - 103 übertragen. Dieser bei der Subri + r2 traktion nahezu gleich großer Zahlen immer auftretende Effekt heißt Auslöschung.
r1 + r2 der relative Fehler
Bei der Multiplikation und Division addieren sich die Schranken fiir den relativen Fehler; denn es gilt \r1-r2-r1-r2\^\r1-r2-ri-r2\ ^\rl\-e2
+ \r2\-e1^\r1-r2\-(^+
+
\r1-r2-r1-r2\gL
\kil
fi-\+e1-E2 \r2\J
und ki -r2
-r2\^\r1-r2-ri-f2\
+ |r t -r 2 -
-r2| g
^E1-|r2| + £2-|r1|+e1-£2, d.h. !±-
1 < r2
Die Produkte eie2 und e2 können in der Regel vernachlässigt werden. Bei der Auswertung differenzierbarer Funktionen mit hinreichend beschränkterzweiter Ableitung multiplizieren sich Schranken fiir den absoluten Fehler des Arguments mit Schranken fiir den Betrag der Ableitung. Ist nämlich feC2 [a, A] und r,re [a, b] mit | r — r | ^ e, so gilt nach der TAYLOR-Formel f{r) - f ( r ) = (r-r) für ein geeignetes
f'(r) +
•/"(£)
e [a, ¿]. Daraus folgt
1.3. Gesamtfehler Zur Ermittlung des Gesamtfehlers versucht man eine vom Rundungsfehler unabhängige obere Schranke für den gesamten Verfahrensfehler und eine vom Verfahrensfehler unabhängige obere Schranke für den gesamten Rundungsfehler zu gewinnen. Addition beider Schranken liefert eine obere Schranke für den Gesamtfehler. In der Regel ergibt sich folgendes Bild:
18
1. Fehlerbetrachtung Fehler Gesamtfehler
Rundungsfehler
Verfahrensfehler
Figur 1
Rechenaufwand
Der Gesamtfehler wird minimal, wenn Rundungs fehler und Verfahrensfehler miteinander vergleichbar sind. Zur Ermittlung des gesamten Rundungsfehlers kann man folgende Wege einschlagen: (1.3.1) Die Entstehung und Fortpflanzung des Rundungsfehlers wird für das gesamte Verfahren elementar nach den in Abschnitt 1.1 und 1.2 genannten Regeln erfaßt. (1.3.2) Man läßt die Analyse des Rundungsfehlers von der Rechenmaschine selbst durchführen, indem man eine sog. Intervallarithmetik benützt. Dabei wird jede reelle Zahl r durch ein Paar exakt darstellbarer Zahlen (u, v) ersetzt mit r e [w, r]. Bei arithmetischen Operationen zweier Zahlen wird ein Intervall berechnet, das das exakte Ergebnis mit Sicherheit enthält. Die Länge des Intervalles gibt eine obere Abschätzung für den Rundungsfehler des Ergebnisses an. (1.3.3) Bei längerer Rechnung wird der Fehler durch Schranken nach (1.3.1) stark überschätzt. Man kann jedoch unter Umständen die einzelnen während der Rechnung entstehenden Rundungsfehler als Zufallsvariable mit einer bekannten Verteilung ansehen. Ein geeignetes wahrscheinlichkeitstheoretisches Modell für den Rechenvorgang ermöglicht dann die Berechnung der Wahrscheinlichkeit p{e) dafür, daß \ r — r| ^ e ist. (1.3.4) Man führt numerische Experimente durch, bei denen die Genauigkeit des Verfahrens an Beispielen erprobt wird, für die exakte Ergebnisse bekannt sind. Schlüsse aus den unter (1.3.3) und (1.3.4) genannten Wegen müssen jedoch mit viel Vorsicht beurteilt werden.
Anmerkungen
19
Anmerkungen 1 / 1 . Ausführliche Untersuchungen über Rundungsfehler findet man bei WILKINSON [ 9 4 ] , Dort wird auch für viele Verfahren der gesamte Rundungsfehler nach (1.3.1) abgeschätzt Über die unter (1.3.2) erwähnte Intervallarithmetik kann man sich bei KULISCH [ 5 0 ] und MOORE [ 5 8 ] informieren. Eine Ausarbeitung der unter (1.3.3) aufgeführten statistischen Methode für verschiedene Verfahren zur Behandlung von Differentialgleichungen findet man b e i HENRICI [39],
1/2. Wegen des Rundungsfehlers genügt die Arithmetik einer Rechenmaschine nicht den für das exakte Rechnen gültigen Körperaxiomen. Es wurden Versuche unternommen, für das Rechnen mit Rechenmaschinen eine eigene Axiomatik zu schaffen (siehe z.B. KULISCH [ 5 1 ] , U L L R I C H [89]).
2. Iterationsverfahren
2.1. Vorbemerkungen Viele Probleme der praktischen Mathematik können auf das Lösen einer Gleichung der Gestalt (2.1.1)
x = F(x),
d. h. auf die Bestimmung eines Fixpunktes einer Abbildung F, zurückgeführt werden. (2.1.2) Beispiele. 1. Zur Berechnung der n-ten Wurzel aus einer positiven Zahl a ist die Gleichung x" — a = 0 zu lösen. Diese kann auf eine zunächst etwas ungewöhnlich aussehende Weise zu (2.1.3)
^
« + ("-!)•*• nx"
umgeformt werden, womit die Fixpunktform (2.1.1) erzielt ist. 2. Ein System von n linearen Gleichungen mit n Unbekannten xt,x2, kann - auf verschiedene Arten - zu
...,x„
(2.1.4) 1
1
1
'
V - ,
umgeformt werden, wobei C eine geeignete n x «-Matrix bezeichnet. Es besteht eine Gleichung der Gestalt (2.1.1), in der für x ein Spalten-n-tupel steht. 3. Die gewöhnliche Differentialgleichung erster Ordnung (2.1.5)
/(.)=/(.,*(.)),
über einem Intervall 1 = [t0, der Integralgleichung t y(.t)=y0+\f{T,y(t))dT
y(t0)=y0 ist bekanntlich bei stetigem/äquivalent mit
(tel).
to
Dies ist eine Gleichung der Form (2.1.1) mit F: C(T) —• C(/), definiert durch (2.1.6)
F(hm-.=
y0 + }/(T, A(x))A
(h s
C{I),tel).
21
2.1. Vorbemerkungen
Wir wollen zunächst ein allgemeines, konstruktives Verfahren zur Lösung von Gleichungen der Gestalt (2.1.1) kennenlernen, das bei geschickter Anwendung auch in der Praxis befriedigt. Zur Formulierung dieses Verfahrens ist es zweckmäßig, den nachfolgend erklärten Begriff des BANACH-Raumes zu benutzen, den man übrigens auch in jedem modernen Buch über Analysis findet (vgl. etwa [1], [2]). (2.1.7) Definition. Ein BANACH-Raum B ist ein
(i) Vektorraum über IK ( = IR oder C), auf dem eine (ii) Norm genannte Abbildung ||. ||: B —* IR+ mit den Eigenschaften ||;t|| = 0 o
* = 0,
| | a - x | | = |a| • HJCII
für alle a e IK ,xeB,
lU + jll ^ 11*11 + lljll
för
alle x,yeB
(Dreiecksungleichung)
erklärt ist, so daß (iii) jede CwCHY-Folge (x„) in B konvergiert; das heißt: Gibt es zu jedem s > 0 ein n e N mit ]|x„ +k — x„|| < e für alle k e INI, so besitzt die Folge (xn) einen Grenzwert in B. (2.1.8) Beispiele. 1. Mit dem Betrag als Norm wird (R (wie auch C) zu einem BANACH-Raum B. I m Beispiel (2.1.2/1) ist ein F i x p u n k t der A b b i l d u n g
F: Ä\{0}
B, erklärt durch
zu bestimmen.
a + (n - 1) • x" > nx:
2. Mit der Norm
\\{ X2)\\-=(iM 2f
W
wird IK" zu einem BANACH-Raum. Im Beispiel (2.1.2/2) wird ein Fixpunkt einer affin-linearen Abbildung dieses BANACH-Raumes in sich gesucht. Wir werden uns damit in Abschnitt 4 genauer befassen. 3. Im Beispiel (2.1.2/3) erweist es sich als zweckmäßig, mit einer geeigneten Konstanten K e IR+ den Raum C(T) durch die Norm (2.1.9)
II/II : = s u p |/(i) f € /
zu einem BANACH-Raum B zu machen. Wieder haben wir einen Fixpunkt einer Abbildung von B in sich zu bestimmen. Der Leser überzeuge sich von der Richtigkeit dieser Aussagen.
22
2. Iterationsverfahren
2.2. Der Banachsche Fixpunktsatz (2.2.1) Definition. Es sei B ein BANACH -Raum, A^B
und F: A—> A eine Ab-
bildung. (i)
F heißt LIPSCHITZ-stetig*) auf A mit IAVSCHYIZ-Konstante L, wenn gilt: ||F(x) - F(y)|| g L • II* - v||
für alle
x,yeA.
(ii)
F heißt kontrahierend auf A, wenn F auf A LipscHiTZ-.s/eí/g mit L < 1 ist.
(iii)
Die durch x0eA
und F bestimmte Vorschrift
x n + 1 •=F(x„) (iv)
für alle n e N 0
heißtElement einstelliges mit Startwert (JC0, F). 0, abgekürzt Ein x* e Iterationsverfahren A mit x* = F(x*) heißt Fixpunkt JC von F.
(2.2.2) Beispiel. Für die Differentialgleichung (2.1.5) existiere ein K e IR+, so daß
m y )
-f(t,y')\^K-\y-y'\
für alle t e I und y, y' e IR gilt. Der Leser zeige, daß dann die in der Gleichung (2.1.6) auftretende Abbildung Fbezüglich der Norm (2.1.9) in B =(C(T), ||. ||)
kontrahierend ist. (2.2.3) Lemma. Es bezeichne L die LIPSCHITZ-Konstante einer LIPSCHITZ-steti-
gen Abbildung F eines BANACH-Raumes B in sich; es sei x 0 e B. Dann gilt für die durch (x 0 , F) bestimmte Folge (x„)„ eINo 11*1+1 - «.II ^
• ll*v+i - *,ll
für
alle0^v^n,ne^o.
B e w e i s . Offensichtlich gilt die Ungleichung für n = 1, v = 0 und stets für v = n. Aus \\xn + 2 - x n + 1 II = IIF(xn + 1 ) - F(x„)|| ^ L• IIJCB+1 - xn\\ und der Gültigkeit der Behauptung für das betrachtete n folgt für v < n + 1 ll*„ + 2 - * n + l l l á £ ( n + 1, - V -H*v + l - X v l l Durch vollständige Induktion ist damit das Lemma bewiesen.
•
(2.2.4) Fixpunktsatz (BANACH). Es sei F eine kontrahierende Abbildung eines BANACH-Raumes B in sich mit einer LIPSCHITZ- Konstanten L< 1 . Dann gilt:
(i) (ii)
Die Abbildung F besitzt genau einen Fixpunkt x* e B. Für jeden Startwert x0 e B konvergiert die durch (x 0 , F) bestimmte Folge (*n)netN0 gegen
x*.
*) Manche Autoren nennen LIPSCHITZ-Stetige Abbildungen auch dehnungsbeschränkt (etwa
[1], S. 80ff.).
2.2. Der Banachsche Fixpunktsatz
23
(iii) (Fehlerabschätzung) jn — v II** — *JI g y H^v+i — *vll 1 l—i
för
alle 0 g v g n , ne IM0.
Beweis. Eindeutigkeit: Es seien x* und x* Fixpunkte von F. Dann gilt II*? - ** II = II ^(*?) - F(x$) II g L • ||x? - JC| ||. Dies kann wegen L < 1 nur für x* = x* erfüllt sein. Existenz: Wir beweisen zunächst, daß die Folge (x„) konvergiert. Unter Beachtung von (2.1.7/ii) und Lemma (2.2.3) bekommt man 11 *n + k
n+k—l n + k-1 *n 11 g Z ll*v + l - * v l | g Z v=n v=n l -1} = I"-Y3^-||*X-*OLL
U
' 11*1 ~ *0 II =
(n,ke
N0).
Wegen L< 1 ist deshalb (X„) eine CAUCHY-Folge in B, deren Grenzwert wir mit x* bezeichnen. Da F stetig ist, gilt F(x*) = F(lim x„) = lim F(x„) = lim x n + 1 = x*. n —> X;
n-*oo
Fehlerabschätzung: Mit Hilfe von Lemma (2.2.3) bekommen wir für 0 g v g n, «e!M 0 , /ceIM0 die Beziehungen 11 *n + k
n+k—l *n 11 g Z ti = n
= L"
v
n+k—l ll*(. + l - * ^ l l ^ l l * v + l - * v l | - Z fi = n k 1- L
L"- V =
• -j———• ||x v + 1 — x v ||,
woraus für k —• oo die behauptete Ungleichung folgt.
•
(2.2.5) Bemerkungen. 1. Konvergente Iterationsverfahren sind „selbstkorrigierend" in Bezug auf Rechenfehler, insbesondere Rundungsfehler. Hat man nämlich nach n Schritten statt xn einen mit Fehlern behafteten Vektor x„eB, so wird die Fortsetzung der Iteration durch das gegen x* konvergente Verfahren (x„, F) gegeben. Das Auftreten von Fehlern setzt höchstens die „Konvergenzgeschwindigkeit" herab. 2. Mit Hilfe der Fehlerabschätzung (2.2.4/iii) kann man für v = 0 schon nach der ersten Iteration feststellen, wieviele Schritte (bei fehlerfreier Rechnung) höchstens durchzuführen sind, um ||x* — x„|| < £ zu erreichen. Es genügt >
zu wählen.
log(l - ¿ ) + l o g £ - l o g | | x 1 - x 0 | | logL
24
2. Iterationsverfahren
(2.2.6) Beispiele. 1. Wir suchen die Fixpjinkte der Abbildung
ITT ¡7?} erklärt durch XI-
2x3 3x + i
Betrachten wir den im Beispiel (2.1.8/1) aus IR gewonnenen BANACH-Raum, so folgt für ylty2 e IR nach dem Mittelwertsatz der Differentialrechnung \F(yi)-F(y2)\^L-\yi-y2\ mit L •= sup | F'{t) |. Man findet leicht L = \. Der Fixpunktsatz (2.2.4) ist sof e IR
mit anwendbar; er sichert die Existenz eines eindeutig bestimmten Fixpunktes x* e IR. Wegen F(0) = 0 ist x* = 0. Bezeichnet i die imaginäre Einheit, so gilt jedoch auch F(±i) = +/. Dies ist kein Widerspruch zur Eindeutigkeitsaussage des Fixpunktsatzes, da die beiden Fixpunkte ± i nicht in IR liegen. 2. Wendet man den Fixpunktsatz ( 2 . 2 . 4 ) auf das Beispiel ( 2 . 2 . 2 ) an, so bekommt man den bekannten Satz von PICARD-LINDELÖF (siehe z. B. ERWE [ 4 ] ) .
3. Im Beispiel (2.1.8/1) mit a = n = 3 liefert das Verfahren (JC0, F) für x 0 = 2: Xl X2
= 1, 583 333 = 1,454 448
x 3 = 1, 442 352 jc 4 = 1,442 250.
Wir bekommen Konvergenz gegen x* = 3* = 1, 442 249 570 ... . Der Fixpunktsatz ist jedoch nicht anwendbar, da F nicht in ganz IR kontrahierend ist. Am letzten Beispiel sehen wir, daß die Voraussetzungen des Fixpunktsatzes zu einschränkend sind. Eine kurze Analyse des Beweises zeigt aber, daß der Fixpunktsatz schon für eine kontrahierende Abbildung F\A—>A^B gültig ist, falls mit jeder CAUCHY-Folge (JC„) in A auch ihr Grenzwert in A liegt. Genauer gilt: (2.2.7) Lokaler Fixpunktsatz. Es sei A eine abgeschlossene Teilmenge eines YlKtiKCR-Raumes B und F:A—>A kontrahierend in A mit L< 1. Dann gelten die Aussagen (i)-{iii) des Fixpunktsatzes (2.2.4), wenn man dort B durch A ersetzt. In der Praxis ist im allgemeinen der Definitionsbereich D der Abbildung F bekannt. Man muß jedoch F erst auf eine Teilmenge A von D einschränken, um die Voraussetzungen des lokalen Fixpunktsatzes zu erzwingen. Die Bestim-
25
2.3. Konvergenzordnung
mung eines geeigneten A kann dabei sehr schwierig sein. Der folgende Satz zeigt, wie man A - eventuell durch Probieren in der Nähe des gesuchten Fixpunktes - in Form einer abgeschlossenen Kugel finden kann. (2.2.8) Satz. Es sei D eine Teilmenge eines JIANKCH-Raumes B, F.D—*B eine Abbildung, L e [0,1 [, £ e D und A-^eB:
||* -
^ jLJ--\\F(0
- { | | J £ D.
Gilt dann zusätzlich (2.2.9)
sup
iL.
so erföllt A die Voraussetzungen des lokalen Fixpunktsatzes (2.2.7). Beweis. Wir müssen nur noch F(A) s A zeigen. Für yeA II F{y) - Hl ^ || F(y) - F(Q || + ||
folgt
- £ || £
ZL-\\y-Z\\ + \\F(0-{II^ ( j ^ +l)d.h. F(y)eA.
II-¿H,
•
(2.2.10) Beispiel. In Beispiel (2.2.6/3) sei £ = f . Dann wird A das Intervall 1 A= 1 "|_2 18(1 - L ) ' 2
+
1 "I 18(1 - L ) \
Setzen wir probeweise L = so ist die Bedingung (2.2.9) nicht erfüllt. Mit L= wählen wir zwar eine größere LiPSCHiTZ-Konstante, vergrößern aber gleichzeitig A so sehr, daß wiederum (2.2.9) verletzt ist. Dagegen ist für L = \ der Satz (2.2.8) anwendbar. Für jedes x0 e [ f f , yf] konvergiert somit das Iterationsverfahren (x 0 , F). (2.2.11) Bemerkung. In den Untersuchungen dieses Abschnittes wurde von der linearen Struktur (2.1.7/i) des verwendeten BANACH-Raumes nur wenig Gebrauch gemacht. Tatsächlich gelten alle bisherigen Sätze schon für vollständige metrische Räume. Es müssen nur alle Ausdrücke der Gestalt ||jc — y|| durch den Abstand d{x,y) der beiden Punkte x und y ersetzt werden (Anm. 2/1). 2.3. Konvergenzordnung Unter den Voraussetzungen des lokalen Fixpunktsatzes (2.2.7) gilt (2.3.1)
| | x * - x
n
+
J | H I W ) - ( n e N
0 ).
2. Iterationsverfahren
26
In jedem Iterationsschritt wird also der mit der Norm gemessene Fehler um mindestens einen festen Faktor L < 1 verkleinert. x =-. Man sieht leicht ein, daß für jedes x 0 e [R 1 +x2 das Iterationsverfahren (x 0 , F) gegen jc* = 0 konvergiert; der lokale Fixpunktsatz ist jedoch nicht anwendbar. Die „Konvergenzgeschwindigkeit" der Folge (jc„) wird bei Annäherung an den Fixpunkt immer geringer; d. h. es gibt kein — xn\ für schließlich alle n e INI. Le [0,1[ mit |x* — x„+1 | g L (2.3.2) Beispiel. Sei F.x i—•
Für viele andere Iterationsverfahren ist die Abschätzung (2.3.1) zwar anwendbar, erweist sich aber als zu grob. Ist die Abbildung F i n einer Kugelumgebung (2.3.3)
K(x*,r)-.=
{x:
des Fixpunktes x* kontrahierend, so kann man bereits mit der lokalen lAVScnnz-Konstanten L(r)-=
sup
, :
arbeiten. Gilt z. B. L(r)gc-r"_1
(ceIR+,a >1),
so bekommt man statt (2.3.1) sogar («eN). Ist für ein Verfahren in IR etwa c = 10, a = 2 und e„-~|x* — x„\ = 0,5 x 10" 2 , so folgt £„+i ^ 0,25 x 10 3 , e n + 2 ^ 0,625 x10~ 6 ; asymptotisch bekommt man schließlich mit jedem Schritt eine Verdoppelung der Anzahl der gültigen Dezimalstellen. Die eben durchgeführten Überlegungen können uns als Modell zur Beurteilung der Konvergenzgeschwindigkeit dienen. (2.3.4) Definition. Ein Iterationsverfahren (x 0 , F) {oder die davon erzeugte Folge) heißt mindestens von der Ordnung a ^ 1 konvergent, wenn die erzeugte Folge OOneiNo derart gegen x* konvergiert, daß gilt limsup —
*»+ill
=
.c 0 , 3 + 2x so erhalten wir die in Tabelle i aufgeführten Werte. Um eine Genauigkeit von neun Dezimalstellen zu erreichen, benötigt das „normale" Iterationsverfahren 35 Auswertungen von F, während das STEFFENSEN-
2.3. Konvergenzordnung
29
Tabelle 1 n 0 1 2 3 4 5
n
x„ 0, 0, 0, 0, 0, 0,
x„ mit STEFFENSEN
6 806 697 755 724 740
451 556 064 594 727
0 1 2
613 255 699 731 015
0, 6 0, 8 0 6 4 5 1 6 1 3 0, 6 9 7 5 5 6 2 5 5
0, 735 159 91t 3 4 5 6
0, 7 3 5 139 2 5 9
- 1 , 8 9 5 871 5 6
0, 735 128 3 1 9 0, 735 145 0 5 4
0, 735 139 259 35
K
Korrektur
-1,
887 785 24
0, 735 139 2 5 9 0, 7 3 5 139 2 5 9 - 1 , 887 731 62
Verfahren mit nur vier Iterationen dieselbe Genauigkeit erzielt. Zur Fehlerabschätzung beachten wir, daß — eine Näherung für F'(x*) ist. Wir verwenden K
die letzten drei Iterationen und setzen im Fixpunktsatz (2.2.4/iii) n = 6, v = 5, [jc6 - jc5| ^ 10- 9 ,
= -i- . I-K-I
Dann folgt
0,52 < £ < 0 , 5 3 und - ^ - ^ — C heißt F RÄCHET -differenzierbar an der Stelle x0e U, wenn es eine lineare Abbildung D.F(x 0 )[.]e L (B, C), genannt FRECHET-Ableitung, gibt mit lim
II F(xo + h)-
IIMI-o h*0
F(x0) - DF(x0) W|| P||
q
Haben B und C endliche Dimension, so kann DF(x0) [.] durch die JACOBI-Matrix dargestellt werden. Ist F auf einer offenen Teilmenge B ' s i FRECHET-differenzierbar und die Abbildung B' — L(B, Q x i-v
DF(*)[.]
ihrerseits in einem Punkt x 0 e B' FRECHET-differenzierbar, so bezeichnen wir ihre FRECHETAbleitung mit D 2 F(x 0 )[.,.] und fassen sie als bilineare Abbildung B x B—> C auf. Die entsprechend zu definierende k-te FRECHET-Ableitung wird dann eine fc-lineare Abbildung D"F(x0) [.,.,...,.]:
BxBx...xB^C. (fc-Faktoren)
31
2.4. Das NEWTON-Verfahren Für eine fc-mal stetig FRÉCHET-diíferenzierbare Abbildung F gilt die TAYLOR-Formel (2.3.10)
F(x + h) = F(x) + " F \ D * F ( X ) [ / I , / ! , . . . , / I ] +
(I
Dkp{x+Wdf)
fr--*]-
vorausgesetzt, daß alle auftretenden Ausdrücke existieren. Für den Integralterm besteht die Abschätzung - • sup \\DkF(x + m\\-
(2.3.11)
Damit folgt die - Bemerkung (2.3.7/2) umfassende - Aussage: (2.3.12) Satz. Unter den Voraussetzungen des lokalen Fixpunktsatzes (2.2.7) sei Fmindestens k-mal stetig FRECHET-differenzierbar in A mit k^.2. Sind dann im Fixpunkt x* e A alle Ableitungen D" F(x*) (K = 1,2, ...,k — 1) Nullabbildungen, so konvergiert (x0, F) für jedes x0 e A von mindestens k-ter Ordnung. Für k = 1 ergibt sich aus (2.3.10) und (2.3.11) eine Methode zur Bestimmung von LIPSCHITZKonstanten: (2.3.13) Satz. Ist U £ B eine offene Teilmenge und F:U —>U stetig VRECUET-differenzierbar, so ist F auf jeder kompakten konvexen Teilmenge A von U LipscHiTZ-s/eiig, und L-.=
snp\\DF(x)\\ xeA
ist eine LiPSCHiTZ-KoMiianie.
2 . 4 . Das NEWTON -Verfahren
Verfahren in IK. Gegeben sei auf einem Intervall /eine Funktion/mit der Nullstelle x* e I. Für eine beliebige Funktion m auf /, die dort keine Nullstelle besitzt, gilt offenbar f ( x )= 0 o x = fix)
Wir setzen F(x) ~x — —— m(x)
x - ( x e i ) . m(x)
(xel)
und wollen durch geeignete Wahl von m
ein Iterationsverfahren (x 0 , F) von möglichst hoher Ordnung zur Berechnung von x* gewinnen. Sind / und m stetig differenzierbar, so gilt t
,, . (x) = 1
m(x)
-f'{x)
-
{m(x)Y
m'(x)-f(x)
.
Nach Bemerkung (2.3.7/2) erhalten wir mindestens zweite Ordnung, wenn F' (x*) = 0 ist. Obwohl wir x* noch nicht kennen, können wir diese Bedingung sofort erfüllen. Wir brauchen dazu nur m—f zu setzen, falls n u r / z w e i m a l
2. Iterationsverfahren
32
stetig differenzierbar und / ' (x) 4= 0 für x e / ist, und erhalten ( 2 . 4 ,)
ci).
Das so entstehende einstellige Iterationsverfahren (2.4.2)
X n + 1
:=
X n
-I^L /CO
(« e IM0,
vorgegeben)
ist das berühmte NEWTON - Verfahren (Anm. 2 / 2 ) . Da wir bei der Herleitung nur Eigenschaften von IR verwendet haben, die auch C besitzt, ist das NEWTONVerfahren auch für komplexwertige Funktionen erklärt. Geometrisch läßt sich das NEWTON-Verfahren in (R folgendermaßen interpretieren: //
Figur 2
Wir ersetzen den Graphen von / durch seine Tangente in (x„,/(*„)) und bestimmen deren Schnittpunkt (x„ + 1 ,0) mit der x-Achse. Offensichtlich gilt dann die mit (2.4.2) äquivalente Gleichung
Xm
X,n + 1
=/'(*„)•
Das NEWTON-Verfahren entsteht auch durch Abbrechen derTAYLOR-Entwicklung von / nach dem linearen Term 0 =f(x*)
=f(x„ + x*-
x„) =/(x„) + (x* - xn) -f(xn)
+ ...
und Ersetzen von x* durch x n + 1 (s. ferner Bern. (2.4.4/2)). Satz (NEWTON -Verfahren in K), Es sei G ein offenes Intervall {bzw. ein Gebiet in C), feC2 (G) (bzw. f:G—>C holomorph) und x*eG eine Nullstelle
(2.4.3)
33
2.4. D a s NEWTON-Verfahren
von f mit f (x*) 4= 0. Dann gibt es ein 0 ,so daßfürjeden Startwert x0 eK(x*, S) das NEWTON-Verfahren {2.4.2) von mindestens zweiter Ordnung gegen x* ko vergiert. Beweis. Für hinreichend kleines ¿ > 0 existieren Konstanten M > 0 und m > 0 mit
[f'(x)\^m
und
|/"(x)|gM
für alle
xeK(x*,5)^G.
DieTAYLOR-Formel ergibt 0 =/(**) =/(x„)
+ (x* - xn) f'{xn) + f(x* - 0 •/"(£) 0 und x 0 e K(x*, 8) das Verfahren (x0, Tk) mindestens von der Ordnung k + 1 gegen x* konvergiert. Dabei ist (x 0 , 71) das NEWTON-Verfahren. Der Kreisbereich K(x*, ö) in Satz (2.4.3) kann in der Praxis nicht angegeben werden, es sei denn, man kennt x* bereits. Manchmal kann Satz (2.2.8) beim Startwertproblem weiterhelfen. Für das NEWTON-Verfahren ergibt sich: (2.4.5) Korollar. Unter den Voraussetzungen von Satz (2.4.3) sei L e ] 0,1 [, £ e G mit f'(0 # 0 und r •=
m
1—L f'(0
Gilt dann sup
if'ix))2
^ L ,
so konvergiert das NEWTON- Verfahren (2.4.2) für jedes x0eK(£,r) Nullstelle x* von f .
gegen eine
Verallgemeinerung auf BANACH-Räume. Eine Anwendung der TAYLOR-Formel (2.3.10) mit der Restgliedabschätzung (2.3.11) ermöglicht uns, ein analoges NEWTON-Verfahren für Abbildungen eines BANACH-Raumes in sich durchzuführen. (2.4.6) Satz (NEWTON-Verfahren in BANACH-Räumen). Es sei G ein Gebiet in einem BANACHRaum B und f . G B zweimal stetig FRECUET-differenzierbar in G. Es existiere ein x* e G mit f{x*) = 0. Ferner besitze Df(x)[.~\eL(B,B) für jedes xeG eine stetige Inverse (D/(X)) _1 [.]. Dann gibt es ein ö>0,so daß für jeden Startwert x0 e K(x*, S) das Iterationsverfahren x„ + l--=xa-
(D/W)"1
[/-(*„)]
von mindestens zweiter Ordnung gegen x* konvergiert. Auch Korollar (2.4.5) gilt analog. Im endlichdimensionalen Fall sei x e IRl mit Komponenten xlt x2, • • •, xk e IR. Die Gleichung f(x) = 0 sei komponentenweise gegeben durch /«(*„...,x*) = 0
(k = 1,2,.
..,k).
Die FRECHET-Ableitung von / wird durch die JACOBI-MAIN* Df(x) = (O
= ( 0X^ f j x u
\ i
/i,K=l,2
Ii
dargestellt. Schreiben wir hier den laufenden Index der Iteration oben, so lautet das NEWTONVerfahren
2.4. Das NEWTON-Verfahren
35
- (Df(x^))-1
(2.4.7)
•
In jedem Iterationsschritt ist eine Matrix mit k Zeilen und k Spalten zu invertieren. Für die praktische Rechnung ist es deshalb vorteilhafter, (2.4.7) in der impliziten Form £>/(x w ) [x [ " +1 >] = D/(x [nl ) [ x w ] - / ( x w ) zu verwenden. Dann haben wir nämlich nur ein lineares Gleichungssystem in den Unbekannten x | " + . . . , xj" + 1 1 zu lösen, was weniger aufwendig ist (s. Abschnitt 4). Wird die Rechnung dennoch zu umfangreich, so begnügt man sich oft mit dem - allerdings nur linear konvergent e n - vereinfachten NEWTON-Verfahren, bei dem in (2.4.7) die Matrix D/(x [nl ) durch die „feste" Matrix Df{xm) ersetzt wird. (2.4.8) Beispiel. Für z = (x, y) s IR2 sei/(z) = 0 gegeben durch / i ( z ) — sinx — y = 0, / 2 ( z ) — x - c o s j = 0. Dann ist für jedes z = (x, y) e IR2 mit cos* • siny 4= — 1
(
cc
Df(z) =
. 1 ) sinj>I
1
(Df(z))-1
und
= 1 + cosx • sin
sin>> 1 \ — 1 cosx I'
Für das NEWTON-Verfahren ergibt sich also die Iterationsvorschrift j.+m ,[»+i]J
=
/xw\ (yij
l /sin/11 i w 1 1 + c o s x • sin/" cosx1"1
^W _ yW 1 1
X" -
Cos/"1
Einen Startwert gewinnen wir graphisch als Schnittpunkt der Kurven C t •= {z e IR 2 :/¡(z) = 0}
0 = 1,2).
Figur 3
= 0, 7
= 0, 8
bekommt man
m
x = 0, 800 54 x [ 2 ' = 0, 768 71 x 13 ' = 0, 768 17
111
y = 0, 644 59 ym = 0, 695 57 y [31 = 0, 694 82.
36
2. Iterationsverfahren
(2.4.9) Wollen wir Nullstellen einer holomorphen Funktion/: G —• C bestimmen, so können wir sowohl das (eindimensionale) NEWTON-Verfahren in C als auch das (zweidimensionale) NEWTON-Verfahren in IR x IR anwenden. Der Leser prüfe beide Möglichkeiten auf Äquivalenz.
Startwertproblem. Wegen des Startwertproblems eignet sich das NEWTON Verfahren mehr für den teilautomatischen Ablauf (Anm. 3/1). In der Praxis beginnt man mit einem willkürlich gewählten Startwert x0. Nimmt en -= x„ — x n - i | auch nach mehreren Iterationen nicht rasch ab, so startet man erneut mit einem anderen Wert (Anm. 3/2). Manchmal irren die Anfangsglieder der Folge (xn) in IK umher, bis sie schließlich doch von einem Kreisbereich K(x*, S) einer Nullstelle x* eingefangen werden. Beim NEWTON-Verfahren in (R erhält man durch Monotoniebetrachtungen ein sehr nützliches Kriterium für Startwert und Konvergenz. (2.4.10) Satz (Monotone Konvergenz). Es seif e C 2 [a, b~\ mit den Eigenschaften (i)
R ä ) - m < 0, / ' ( * ) * 0
(ü)
a '/"(x) ^ 0
(iii)
m /'(c)
für ein
für alle oe{—1,1}
^b — a für jedes
xe[a,b], undalle
x e [a, A],
ce{a,b}.
Dann konvergiert die Folge (x„)„etN der NEWTON-Iterationen {2.4.2) für jeden Startwert x0 e [a, ¿>] monoton gegen eine Nullstelle x* von f . Beweis. Die Voraussetzung (i) garantiert die Existenz von genau einer Nullstelle x* e [a, ¿]. O.B.d.A. s e i / ' auf [a, Z>] strikt positiv. Dann gilt f(a) < < 0 0
und
f"(x)
=
- l
J
0).
Da f(a) < 0 < f(b) für jedes a e ] 0,1] und b e [2, oo[ gilt, sind die Bedingungen (i) und (ii) von Satz (2.4.10) erfüllt. Wegen/' > 0 , / " < 0 kann (iii) nur für c = b verletzt sein. Wir müssen daher noch
m
f'ib)
|~4~|
Umbenennung: XQ
x0
:
Xl
xt
~x
Ergebnis:
falls falls
2
/(x0)-/(x2)< 0 f ( X l ) •f(x2) < 0
(x 2 bleibt erhalten)
x2 ist gesuchte Näherung für x*
Ende
Anmerkungen und COLLATZ [ 2 3 ] haben auf die Bedeutung von Fixpunktsätzen für Probleme der praktischen Mathematik aufmerksam gemacht. Eine Betrachtung der Iterationsverfahren vom funktionalanalytischen Standpunkt mit zahlreichen Literaturangaben findet man bei KANTOROWITSCH u. A K I L O W [ 4 6 ] , ANTOSIEWICZ U. RHEINBOLDT [ 1 0 ] oder COLLATZ [ 2 4 ] , KANTOROWITSCH, J. SCHRÖDER und andere haben Iterationsverfahren unter sehr schwachen Voraussetzungen untersucht und dabei insbesondere das NEWTON-Verfahren erheblich verallgemeinert. Beispiele aus den Anwendungen können zwar in der Regel schon in BANACH-Räumen formuliert werden, doch bekommt man manche Probleme besser in den Griff, wenn man statt einer Norm nur eine auf die spezielle Situation zugeschnittene Metrik (oder Pseudometrik) verwendet. J. W. SCHMIDT [72] hat die Regula falsi auf BANACH-Räume übertragen. Verfeinerte Untersuchungen dazu, die auch einige ältere Ergebnisse umfassen, stammen von W . HOFMANN [ 4 0 ] . 2 / 1 . WEISSINGER [ 9 2 ]
2/2. Das NEWTON-Verfahren wird in der angelsächsischen Literatur als Verfahren von N E W T O N - R A P H S O N bezeichnet. sowie ORTEGA und RHEINBOLDT [ 6 2 ] behandeln ein- und mehrstellige Iterationsverfahren für den IR", insbesondere Verbesserungen der von uns vorgestellten Verfahren unter Berücksichtigung von Fragen der Praxis. 2 / 3 . OSTROWSKI [ 6 4 ] , T R A U B [ 8 7 ]
48
2. Iterationsverfahren
2/4. MAISTROVSKII [55] zeigt, daß im IR" unter allen Verfahren zur Nullstellenberechnung, die mit Auswertung einer Abbildung und ihrer FRECHET-Ableitung arbeiten, das NEWTON-Verfahren eine Optimalitätseigenschaft besitzt. 2/5. BRENT, WINOGRAD und WOLFE [20] betrachten lokal konvergente Iterationsverfahren zur Bestimmung von einfachen Nullstellen analytischer Funktionen und zeigen: Benötigt ein Verfahren zur Berechnung der Näherung x„ (n 6 IN) höchstens Auswertungen der Funktion und ihrer ersten d Ableitungen an den vorhergehenden Näherungen x0, xl,..., x„-lt so ist das Infimum der Ordnung der Konvergenz (erstreckt über alle zulässigen analytischen Funktionen) niemals größer als d+ 2. Es gibt auch immer Verfahren der genannten Art, für die die Schranke d + 2 erreicht wird. Regula falsi bzw. NEWTON-Verfahren besitzen also unter den Verfahren mit d = 0 bzw. d = 1 nicht die bestmögliche Konvergenzordnung. 2 / 6 . BASHUROV U. OGIBIN [ 1 2 ]
beweisen den folgenden interessanten Satz:
Für jede stetige Funktion F: [a, b~] —*[a, ¿>] gilt: Das Iterationsverfahren (x0, F) konvergiert für jedes x 0 e [a, />] dann und nur dann, wenn die Gleichungen F(x) = x und F(F(x)) = x die gleichen Lösungsmengen besitzen.
3. Nullstellen von Polynomen
Im allgemeinen gestattet das Rechenwerk einer modernen Rechenanlage nur die Auswertung rationaler Funktionen. Glücklicherweise garantiert der Approximations-Satz von WEIERSTRASS, daß jede auf einem kompakten Intervall nur stetige Funktion dort schon durch Polynome beliebig genau gleichmäßig approximiert werden kann. Damit werden Polynome zu den wichtigsten Funktionen in der praktischen Mathematik. Im folgenden sei IK der Körper der reellen oder komplexen Zahlen und IK [x] der Ring der Polynome mit Koeffizienten aus IK in der Unbestimmten x. Ohne Verwechslungen befürchten zu müssen, bezeichnen wir als Polynom sowohl / ( x ) = a 0 x" + Cix" - 1 + ... + a„e IK[x] als auch die Abbildung/:zi-»/(z) (z e IK). Ist a0 4= 0, so heißt« der Gradwonf. Der Grad des Nullpolynoms sei — 1.
3.1. Rechnen mit Polynomen Euklidischer Algorithmus. Bekanntlich können je zwei vom Nullpolynom verschiedene Polynome f(x),g(x) e IK[x] mit Rest dividiert werden; d.h. es gibt eindeutig bestimmte Polynome q(x), r(x) e IK [x] mit (3.1.1)
f(x) = q(x)- g(x) + r(x)
(3.1.2) Beispiel. Für f(x) man (x 3 + 3x 2 - (x 3 + 2x 2 x2 - (x 2
und
Grad r< Grad g.
= x 3 + 3 x 2 +6x +5, g(x) = 3x2 + 6x + 6 berechnet + + + +
6x + 2x) 4x + 2x + 2x + und bekommt die Zerlegung
5):(3x 2 + 6x + 6) = i x + i 5 2) 3
/ ( x ) = (ix + i)-g(x) + (2x + 3). Eine Wiederholung des Divisionsprozesses führt zu der (3.1.3) Definition (Euklidischer Algorithmus). Es seien f(x),g(x)e IK[x] mit 0 ^ Grad g ^ Grad/. Unter dem Euklidischen Algorithmus versteht man das Verfahren, durch sukzessive Division mit Rest Polynome zu konstruieren, so daß gilt:
50
3. Nullstellen von Polynomen
/o (*) -=f(x), (3.1.4) und (3.1.5)
fß{x) = qtl{x)
fl (x)
~g(x),
( x ) - / „ + 2 (x),
qli(x),fll+i(x),fll
0 ^ Grad/ M + 2 < G r a d / „ + 1 /m-i(*) = i«-i(*)•/»(*),
+ 2(x)e
IK[x],
(0^/^m-2) 9 m (x)e
IK[x],
D/e iA/rcA / ( x ) g(x) eindeutig bestimmte Folge kurz mit E . A . ( f , g ) .
Grad/m^0. bezeichnen wir
Wie (3.1.4) zeigt, ist ein gemeinsamer Teiler zweier Polynome fß (x) u n d / „ + j (x) auch Teiler aller nachfolgenden Polynome / v (x) (ji + 1 ^ v rg m). Da andererseits / m (x) alle Polynome der Folge E.A. (f,g) teilt, haben wir den (3.1.6) Satz. In E.A. (/, g) = (/„)0g„gm ist fm(x) der größte gemeinsame Teiler (iabgekürzt g.g.T.) der Polynome/(x) undg(x). (3.1.7) Bemerkung. Der Euklidische Algorithmus ermöglicht es uns, Polynome von ihren mehrfachen Nullstellen (vgl. Bern. (2.4.15)) zu befreien. Ist nämlich / ( x ) e IK [ x ] , / ' die Ableitung von / und E.A.(/,/') = (/„)ogpgm> s o existiert nach Satz (3.1.6) ein h(x) e IK [x] mit/(x) = h(x) / m (x). Dabei besitzt h lauter einfache Nullstellen, und zwar genau die paarweise verschiedenen Nullstellen von/. (3.1.8) Beispiel. F ü r / ( x ) = x 3 + 3x 2 + 6x + 5 ==/ 0 (x) (vgl. Beispiel (3.1.2)) ist / ' ( x ) = 3x 2 + 6x + 6 = : / i (x). In E.A. (/,/') finden wir die weiteren Glieder f2(x) = — 2x—3, / 3 (x) = — S o m i t besitzt / k e i n e mehrfachen Nullstellen. Ausweitung von Polynomen. Dividieren wir das durch seine Koeffizienten gegebene Polynom f(x) =
x" +a{ 0] • x n _ 1 + ... +
durch das lineare Polynom (x — Gestalt
e IK [x]
IK [x], so erhalten wir eine Gleichung der
/ ( x ) = ( " x a?] • X - 1 " T (x - 0 v= 0
wobei a[01] = a[)0] und aj,11 = f ( ( ) ist; der Wert des Polynoms an der Stelle £, stimmt also mit dem Rest der Division überein. Schreiben wir nur die zur Bestimmung der neuen Koeffizienten aj11 (v = 0,...,n) erforderlichen Rechenoperationen auf, so gewinnen wir das folgende, vom Rechenaufwand her günstigste (Anm. 3/4) Verfahren zur Auswertung eines durch seine Koeffizienten gegebenen Polynoms, das sogenannte einfache HORNER-Schema:
51
3.1. Rechnen mit Polynomen
40]
401
40]
...
+ *
t-rtif-rf!
...
411
411
...
411
j-atu
Äquivalent damit ist die Berechnung von / ( £ ) gemäß der Klammerung / ( £ ) = (••• (aß >I -£ + fli0I)-{ + . . . ) - i + 4 0 1 . Wenden wir den Algorithmus erneut für das Polynom Y111 W
!
=
•
1
+ «1M • V
- 2 + ... + a f i !
an - was durch Anfügen einer weiteren Zeile an das obige Schema geschieht so erhalten wir ein Quotientenpolynom ß2\x)-.=aP und einen Rest
• x"-2 +
•
+ ... +
j. Ein Vergleich von
fix) = a^ + ( x - t) •ß'Hx) = = afi + (*-£)"
+ (x - 02 "/[2] (*)
mit der TAYLOR-Entwicklung von / an der Stelle £ zeigt uns, daß = f{Z) sein muß. Ein Programm zur Berechnung von / ( £ ) und / ' ( £ ) nach dieser Methode findet der Leser in Teil 2 von Algorithmus (3.3.1). Das vollständige HORNER-Schema besteht in einer wiederholten Durchführung dieses Vorgehens gemäß a{° l
n\0] "2
*
Z-aV
411
4"
*
421
411
Z-aF 421
a™ 2
«FJl
52
3. Nullstellen von Polynomen
¿•ag1"11 Ö&-11
¿•4"-11
alr1]
a[0"J
ofi
Zusammenfassend erhalten wir den (3.1.9) Satz (Vollständiges HORNER-Schema). Für f(x)=
£
IK|>]
v= 0
und £ e IK führt der Algorithmus
A
a\p'-=ar1]
1 SjSn + l
A
"K + 1 — C "K +"K + 1
OSkSÜ-J
zw ifew Ergebnis Mn - j + a
1
0 1 -— Z " ' « )
(/=
1 , 2 , i ) .
3.1. Rechnen mit Polynomen
53
Während man hierzu "
Multiplikationen benötigt, kommt der folgen-
de, von SHAW und TRAUB entdeckte Algorithmus schon mit 3n — 2 Multiplikationen oder Divisionen aus (Anm. 3/5), ohne daß sich die Anzahl der erforderlichen Additionen erhöht. Es seien K /*(*)== I > K - v * v v=0
(/C = 0, 1 , . . . , « )
Auf der rechten Seite hängen nur die Binomialkoeffizienten von (i ab. Diese können aber durch Additionen (Pascalsches Dreieck) erzeugt werden. Wie Nachrechnen bestätigt, gilt sogar 7 T = r 0 folgt b^d. Das heißt die Näherung xj+i ist nie schlechter als die mit einem von Xj _ j ausgehenden Normalschritt erreichbare Näherung b. Numerische Ergebnisse zu diesem Verfahren sind in Beispiel (6.6.6) enthalten. 2. Ist s eine Nullstelle von / und Grad/Si 2, so erfüllt mit f(x) auch h(x) •= —f(x)/(x — s) die Voraussetzungen von Satz (3.3.2). Als günstiger Startwert zur Berechnung der größten Nullstelle von h kann die in der vorangegangenen Betrachtung auftretende Zahl Xj angesehen werden. Durch sukzessives Abdividieren schon bekannter Nullstellen erhält man ein nie versagendes Verfahren zur Berechnung sämtlicher Nullstellen von / (Anm. 3/9).
3.4.
Das Verfahren von
BAIRSTOW
Doppelzeiliges HoRNER-Schema. Der Algorithmus (3.3.1) kann sowohl für reelle als auch für komplexe Polynome benutzt werden. Da jede Multiplikation zweier komplexer Zahlen vier reelle Multiplikationen erfordert, ist allerdings der Rechenaufwand im Komplexen etwa der vierfache (Anm. 3/5). Bei der Berechnung der komplexen Nullstellen eines reellen Polynoms (3.4.1)
f{x) = a0xn + axxn~'i + ... + a„e IR[>]
(ao=|=0, « ^ 2 )
erweist sich die folgende Modifikation des HORNER-Schemas als günstiger. Es sei entweder gilt dann (3.4.2)
e C, ( 2 : = Ci °der {j, £2 e IR. Mit u •= (1 + C2 u n d v — ~ C i ' C 2
q{x) ••= (x - Ci) • (*, -t2)
= x2-ux-ve
IR [*].
Division von f(x) durch q{x) - darstellbar als sog. doppelzeiliges Schema - führt auf eine Gleichung der Gestalt
HORNER-
66
(3.4.3)
3. Nullstellen von Polynomen
f ( x ) = ( b 0 x n - 2 + b l X " - 3 + . . . + b„_2)
• q ( x ) + ( x - u ) - V i + bn
(¿>velR; v = 0 , l , . . . , » ) , aus der /(£,) = V i - ( C ; - " ) + *„ folgt. Wiederholung dieses Prozesses für (3.4.4)
0 = 1. 2)
h(x) = b0x"~2
4-... + Z>„_2 ergibt
h(x) = (c0x"-4
+ cj a:""5 + . . . + c„_4) • g (*) + ( * - « ) • c„_3 + c„_2 (cv e IR; v = 0,1,..., n — 2).
Aus (3.4.3) und (3.4.4) folgt füry = 1,2 /'(£,) = • = (2 • Cj -
+Vi =
U) • ((Cj - u) • c n _ 3 +
c„_2) + V i .
Wie man leicht durch Koeffizientenvergleich in (3.4.3) und (3.4.4) feststellt, gibt es somit den folgenden, ganz im Reellen arbeitenden Algorithmus zur Auswertung von / und / ' .
Es sei f i x ) e IR[JC] das in (3.4.1) (i e C, £2 = Ci °der £2 e IR. Dann fährt der
(3.4.5) Satz.
gegebene
":=Ci + i2, v ~ - C r C 2 ,
b-2—b-! (3.4.6)
A
0
n-2
c
l
n-l
.cc
n-3
{ _ cc r \ n-l
und bekommt den (3.4.14) Algorithmus (BAIRSTOW-Verfahren). Daten:
f ( x ) = a0xn + a , x " _ 1 + ... + a„ e [R[x] a0 4= 0,
n ^ 2,
Fehler schranke eps
¿ - 2 — & - 1 ~ c _ 2 ~ c _ 1 —0
c r ) n-2 J
~c
3.4. Das Verfahren von BAIRSTOW
Startwerte:
f\
u, v
(bv~av
°=v="
+
vbv-2,
cv--=bv + u- cv_! +
vbv_2)
~
C
s~u
- i
'
c
n
- 3
von J(u, v): d+ 0?
• j a - S -nein S
Korrektur:
BAIRSTOW -
b ' cne — •n
+ u-bv-1
n
Invertierbarkeit
ll
5 x 10"
gesetzt werden (vgl. (1.1.2)). (4.2.15) Beispiel. Sei A=
3,0003 \3
-3\ -3/
, also
,
A
_/i*104 = ., . V7XIO 4
—3 x 104 , . —^ x 10
Dann gilt IM IL = \\A\U = 6,0003,
WA-1 IL = WA-1 II, = 6667,
womit für diese Normen K{A) = 40004,0001 ist. Bei Rechnung mit t dezimalen Mantissenstellen können im Ergebnis nur ca. t — 5 richtige Mantissenstellen erwartet werden. (4.2.16) Bemerkungen. 1. Aus Satz (4.2.10/1) folgt H^H ^ 1 für jede Matrixnorm. Wegen E = AA und ||£|| g |M|| • WA'11| ist somit stets K(A) ^ 1 (Anm. 4/8). 2. Um die Störanfälligkeit der Lösung des Gleichungssystems (4.2.12) zu reduzieren, kann man versuchen, schon vor Anwendung eines Lösungsverfahrens durch Umformungen ein äquivalentes Gleichungssystem zu gewinnen, dessen Matrix eine kleinere Konditionszahl besitzt (Skalierung, Äquilibration).
4.3. Iterative Verfahren Allgemeine Theorie. Die Aufgabenstellung (4.2.12), umgeformt auf die Gestalt (4.3.1)
x = Bx + c
mit
Be IK"Xn, c e IK", d e t ( £ - £ ) * 0 ,
führt zur Bestimmung eines Fixpunktes der Abbildung F:x>—>Bx + c,
89
4.3. Iterative Verfahren
wozu der Fixpunktsatz (2.2.4) herangezogen werden kann. Bezüglich einer Vektornorm und einer damit verträglichen Matrixnorm haben wir II F(x) - FOO II H l
- >0 II
II 511 • II * - J II,
so daß L — \\B\\
(*eN0).
92
4. Lineare Gleichungssysteme
B e w e i s . Aus \\A, + Ar\\ < 1 folgt die Konvergenz der rechten Seite der Ungleichung. Da die Matrixnorm monoton ist, gilt mit \At\-.= (|a{i}|) und I A r I ! = (I |) die Abschätzung Mill = III4III ^ \\\At\ + K | | | = \\At + Ar\\ < i . Somit besteht nach Satz (4.2.11) die Gleichung {E-Al)~'=
£
AI
M=0
Daraus folgt für alle m ^ k fft
(4.3.12)
m
ii E { ( ¿ r - ^ r ^ r i i H i K — k
oo
E {E K=k
aia,YII^
n=0
£11 E { E U«lMMrl>K!l. K =k
11 = 0
Denken wir uns nun die Summanden der Matrizenreihen m
oo
oo
E { £ KI"U4,I}"
K=k
n=0
und
X (M,| + |.Ar\Y K=k
ausmultipliziert, so bekommen wir für die linke Reihe lauter Glieder der Gestalt \Alr\Ar\\Al\»>\Ar\...\AlnAr\
(k^KSm;fiu...,fiKe
INJ0)
und erkennen, daß jeder solche Ausdruck auch als Summand der rechten Reihe auftritt. Da alle hierbei vorkommenden Matrizen nichtnegative Elemente besitzen und die Matrixnorm monoton ist, erhalten wir m
oo
11 E i E K = k
11 = 0
co
i^n^inig
oo
E 111^1 + 1^111"= E \\A, + ArII«,
K—k
K = k
woraus zusammen mit (4.3.12) die Behauptung folgt.
•
(4.3.13) Satz (Konvergenzkriterien). Giltfür Ae IK"X" und eine monotone Matrixnorm || • || die Ungleichung L — \\Al +Ar\\ < 1, so konvergiert sowohl das Gesamt- als auch das Einzelschrittverfahren für beliebigen Startvektor gegen die Lösung x* des linearen Gleichungssystems (4.2.12). Für jede Vektornorm, mit der die obige Matrixnorm verträglich ist, besteht bei beiden Verfahren die Fehlerabschätzung iL-l.||jci"
+
i]_*M||
für alle
O^K^k.
4.3. Iterative Verfahren
93
Beweis. Für das Gesamtschrittverfahren folgt die Behauptung sofort aus dem Fixpunktsatz (2.2.4). — AJ'1 • Ar.
Das Einzelschrittverfahren besitzt die Gestalt (4.3.2) mit B~(E Offensichtlich ist =
Ä - -
1
! )
und für O ^ K ^ k (E-B)
• (x* - x[k]) = B • (xlkl - a;1*"1!) = BkK-
(x [K+1] - x M ) . 00
Außerdem zeigt Lemma (4.3.11) die Konvergenz der Reihe £ existiert nach Satz (4.2.11/2) "=0 (E—By1
folglich
= f ; Br fi = 0
Daher bekommen wir x* - x[k] = (E-By1Bk-K(xlK 00
= £ Bk'K+^(xlK n=o
+ 1]
- x[,cl) =
+
1]
-xlK]).
Schließlich gilt nach Lemma (4.3.11) 00
II £ H=0
+
00 rk — K Z Jjf-K + H _ ^ 11 = 0 \ —L
womit man leicht den Beweis zu Ende führt (Anm. 4/2).
•
Eine Anwendung dieses Satzes in Verbindung mit Bern. (4.3.10/2) ergibt das (4.3.14) Korollar. Ist für eine Matrix A e IK" *" die Spaltensummennorm oder die Zeilensummennorm oder die FROBENIUS-Norm von Ai + Ar kleiner als eins, so konvergiert sowohl das Gesamt- als auch das Einzelschrittverfahren für jeden Startvektor. (4.3.15) Bemerkung. Ist 11 -11 eine monotone Matrixnorm und P-={pv auf 1,05, so ergibt sich Tabelle 11 k
x[ki
0 1 2 3 4 5 6 7 8 9
0 -2, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1,
1 267 044 006 000 000 000 000 000
35 363 509 900 120 016 002 000
xtfl
xf 1
0 1, 0, 0, 0, 0, 0, 0, 0, 0,
0 0, 0, 0, 0, 0, 0, 0, 1, 1,
05 207 032 004 000 000 000 000 000
008 631 673 638 085 011 001 000
—
798 965 994 999 999 999 999 000 000
—
719 951 300 906 988 998 000 000
- 0, 0, 0, 0, 0, 0, 0, 0,
396 267 169 148 138 134 131 129
5 804 758 190 957 189 463 817
d.h. der Spektralradius fällt unterhalb 0,13. Es wird damit also bessere Konvergenz erreicht; man gewinnt pro Iteration nahezu eine Dezimalstelle. Tabelle 12 k
0 1 2 3 A2 4 5 A2 6 7 A2
x[ki
0 2 1, 29 1, 088 /, 007 677 16 - o, 999 965 68 - o, 999 997 99
-
- o, 999 997 85 - o, 999 999 35 - o, 999 999 80 - 1 ,
000 000 00
0 0, 9 0, 27 0, 081 9
0 0, 8 0, 939 0, 981 5
0, 001 832 99
/ , 000 217 61
- 0, 000 012 55 - 0, 000 001 93
1, 000 000 75 1, 000 000 44
- 0, 000 001 99
1, 000 000 44
- 0, 000 000 59 - 0, 000 000 18
1, 000 000 13 1, 000 000 04
0, 000 000 00
1, 000 000 00
4.4. Das direkte Verfahren von GAUSS und Varianten
97
Eine noch stärkere Konvergenzverbesserung liefert uns eine Anwendung des A 2-Algorithmus im Sinne des Verfahrens von STEFFENSEN: Nachdem die Iteriertenfolge „systematisch zu konvergieren" begonnen hat - man erkennt dies daran, daß sich die Größen qk nur noch wenig ändern - führen wir nach je zwei Iterationen komponentenweise eine /^-Transformation durch und erhalten die in Tabelle 12 angegebenen Werte. Hier ergeben bereits sieben Iterationen zusammen mit drei A 2-Schritten acht genaue Dezimalstellen.
4.4.
Das direkte Verfahren von
GAUSS
und Varianten
GAUSS - Elimination.
Vom Grundstudium her ist uns das folgende, nach C . F . GAUSS benannte, Verfahren zur Auflösung des linearen Gleichungssystems (4.2.12) geläufig: Es sei (evtl. nach Vertauschung von Gleichungen) a n =(= 0. Durch Multiplikation der ersten Gleichung mit — — und anschließt I ßende Addition zur i'-ten Gleichung für i = 2, 3 , . . . , n annullieren wir die unterhalb a ^ stehenden Elemente der ersten Spalte der Koeffizientenmatrix und erhalten
wobei * und Schraffierung nicht notwendig verschwindende Elemente andeuten. Wichtig ist dabei, daß das - durch Schraffierung gekennzeichnete Restsystem nur noch aus n — 1 Gleichungen mit n — 1 Unbekannten besteht. Wenden wir darauf dasselbe Verfahren wiederholt an, so gelangen wir schließlich zu Dreiecksmatrizen, d.h. zu folgender Gestalt:
(
b
Jetzt können wir, ausgehend von der letzten Gleichung, nacheinander die Unbekannten x„, xn _ i , . . . , berechnen.
4. Lineare Gleichungssysteme
98
(4.4.1) Beispiel.
x! + —3
2X2
+ x3 = bl
— 5 X 2 — A" 3 = ¿2
— 7xt — 12X2
— 2X3
=
b3
Das Gaußsche Verfahren, schematisiert durchgeführt, ergibt: 1 2 -3 -5 - 7 -12
1 -1 -2
1 0 0
0 1 0
0 0 1
1 0 0
2 1 2
1 2 5
1 3 7
0 1 0
0 0 1
1 0 0
2 1 0
1 2 1
1 3 1
0 1 -2
0 0 1
Verfahren von CROUT. Bei der Durchführung des Gaußschen Verfahrens stört, daß in jedem Schritt eine Zwischenmatrix notiert bzw. abgespeichert werden muß. Zur Überwindung dieses Nachteils bedienen wir uns des folgenden Gedankenganges: Betrachten wir nocheinmal die beim Gaußschen Verfahren entstandene Gleichung (*). Multiplizieren wir mit der Inversen der rechts stehenden Matrix, so bekommen wir das ursprüngliche Gleichungssystem, wobei sich die Matrix A als ein Produkt
ergibt. Nun bilden aber - wovon-sich der Leser selbst überzeugen möge - die nichtsingulären oberen und unteren Dreiecksmatrizen des IK"*" jeweils eine
4.4. Das direkte Verfahren von GAUSS und Varianten
99
Gruppe hinsichtlich der Matrizenmultiplikation. Deshalb kann die Grundidee des Gaußschen Verfahrens in einer Dreieckszerlegung (4.4.2)
A =L R
(A e IK" *")
mit den unteren und oberen Dreiecksmatrizen
und
gesehen werden. Das ursprüngliche Gleichungssystem A • x = b ist dann gleichwertig mit den beiden Gleichungssystemen L w
= b
und
Ì ? J C = H',
die sich durch sukzessive Substitution (ausgehend von der ersten bzw. letzten Gleichung) leicht auflösen lassen. Entscheidend ist nun, daß die Zerlegung (4.4.2) auch direkt, d. h. ohne Berechnung von Zwischenmatrizen, erreichbar ist. Die Elemente von L und R aufgefaßt als n2 + n Unbekannte, genügen nach (4.4.2) den n2 Gleichungen (4.4.3)
aik=
min (¡, k) l r
X
ij Jk
(z = l , . . . , n ; f c = l , . . . , « ) .
Es bleiben also noch n „Freiheitsgrade" übrig. Beim Verfahren von CROUT setzt man rH — 1
0 = 1,2,...,«)
und gewinnt aus (4.4.3) den Algorithmus
(4.4.4)
A
A
100
4. Lineare Gleichungssysteme
Ebensogut kann man / fi — 1 (/ = 1 , 2 , . . . , n) fordern oder die Reihenfolge der obigen Gleichungen anders festlegen (DOOLITTLE, BANACHIEWICZ). Der Leser zeige: 1. Bezeichnet dk (k n) die Determinante der Untermatrix Alk] : =(a„ v ) e \Kk* k von A, so gilt bei der Dreieckszerlegung (4.4.2) (4.4.5)
k
dk=Y\rKKlKK
(k= 1,2,
...,n).
K=1
2. Ist det A 4=0, so existiert eine Dreieckszerlegung (4.4.2) genau dann, wenn ¿4 + 0 (/c = 1,2,...,«) ist. 3. Ist det A 4= 0, so kann A durch geeignete Zeilenvertauschungen stets in eine Matrix übergeführt werden, für die eine Dreieckszerlegung existiert. Aus
(4.4.5)
folgt unmittelbar der
Satz. Für eine Matrix Ae I K " X n mit detA 4= 0 kann das Verfahren von CROUT mit geeigneten Zeilenvertauschungen immer durchgeführt werden. (4.4.6)
Aus Stabilitätsgründen ist es häufig günstig, stets Zeilenvertauschungen so vorzunehmen, daß das im Nenner auftretende Element lkk - auch Pivot genannt - einen möglichst großen Betrag besitzt (vgl. Bern. (4.2.16/2)). Das so erweiterte vollständige Verfahren halten wir fest als (4.4.7)
Algorithmus
mit Zeilenvertauschung).
(CROUT
Daten: A lSiSn
A = (aik)e IK"X'
mit
det ^ + 0, 6 e IK"
[z ; notiert Vertauschungen]
0v=1>
Dreieckszerlegung: it-i 1
A
%kSn
A kgign
zik—lz] o
(Auflösung von L [zl w = ¿ [z] ):
Vorwärtssubstitution
A
lgkSn
1
Wk:=jl z„k
- i£= llZii-Wi).
Rückwärtssubstitution
A
lgUgn
(L[z] w = blz\ Rx = w).
(Auflösung von Rx = w): n
X
w
n-k + l ~ n-k
r +l ~ X n-k + l,i ' • i=n-k+2
Berechnung der Determinante (falls gewünscht): n
det A — sgn (z 1; z2,...,
z„) • ]\lZkk. k=i
Verfahren von CHOLESKY . Für hermitesche Matrizen versucht man unter Ausnutzung der Eigenschaft A = ÄTden Rechenaufwand bei der Dreieckszerlegung zu reduzieren. Beim Verfahren von CHOLESKY fordert man R = L\
also insbes.
lu = ru e IR
(/ = 1 , 2 , . . . , « )
und gewinnt aus (4.4.3) den Algorithmus
E IU2)1/2
A
i=i
(4.4.8)
A
t + lSiS»
fc-i
iik--=lkkr-(aik- jx= 1 v y
Hier sind Zeilenvertauschungen nicht zulässig, da sie die Eigenschaft A = A T zerstören. Über die Durchführbarkeit des CHOLESKY-Verfahrens zeigen wir:
102
4. Lineare Gleichungssysteme
(4.4.9) Satz. Für jede hermitesche Matrix Ae IK"X" sind folgende Aussagen gleichwertig: Das Verfahren von CHOLESKY ist durchführbar. (ii) Für die Untermatrizen Aik]-= (a„v) e IK* x * gilt det Am > 0 (k = 1 , . . . , n). (iii) Die Matrix A ist positiv definit. (0
Beweis, (ii) =>(i): Ist det A[k] >0(k = 1, 2,...,«), so tritt-wie (4.4.5/1) zeigt - bei der Berechnung von lkk in (4.4.8) stets ein positiver Radikand auf, weshalb das Verfahren nie scheitern kann. (i) => (iii): Das Verfahren von CHOLESKY ergibt A = LLT mit LKK 4= 0 (k = 1, 2,...,«)• Daraus folgt X
T
A X
T
xx
||£r.x||2
= ", \\x\\l
„
>0
r»
,.
für alle
xeC,x±0.
Nach Bern. (4.3.17/1) ist somit A positiv definit. (iii) => (ii): Setzen wir Mk •= {x e IK": x = (x l5 x2,..., _ . xTAx ^ . 0 < min —-— < min 0*xel 4000), die allerdings viele Blöcke mit lauter Nullen besitzt. Für die numerische Behandlung dieser Probleme erweist sich die Relaxation zum Einzelschrittverfahren als zweckmäßig. Eine Theorie von YOUNG und FRANKEL (siehe z. B. [90]) macht Aussagen über den bestmöglichen Relaxationskoeffizienten. 4/8. Existiert eine Darstellung A = D-(E — C) mit einer Diagonalmatrix DE IK"*" und ||C|| < 1 , so folgt mit Satz (4.2.11/3) die Ungleichung k(A) G • \\D~L || - (1 -||C|I)_1Im allgemeinen ist es jedoch schwierig, obere Abschätzungen für k(A) ohne Kenntnis von A'1 anzugeben. Da bei den Verfahren von GAUSS und CROUT det A zur Verfügung steht, kann eine Bemerkung von RICHTER [68] weiterhelfen. Es wurden Versuche unternommen, die Konditionszahl durch eine Größe zu ersetzen, die leichter zugänglich ist und die Stabilität der Gleichungsauflösung besser beschreibt. Erfolgversprechend scheint hierbei die von ZURMÜHL eingeführte Hadamardsche Konditionszahl n
zu sein (vgl. G. BIRKHOFF 4 / 9 . Für [94].
n
[15]).
eine detaillierte Untersuchung des Rundungsfehlers verweisen wir auf
WILKINSON
4/10. Lange Zeit vermutete man, daß zur direkten Berechnung der Lösung des Gleichungssystems (4.2.12) mindestens 0(n 3 ) (n—>oo) Multiplikationen und Divisionen erforderlich sind. KLYUYEV und KOKOVKIN-SHCHERBAK haben 1965 die Richtigkeit dieser Vermutung für alle Verfahren gezeigt, die (wie die Verfahren von GAUSS und CROUT und das Austauschverfahren) sämtliche Rechenoperationen Zeilen- oder spaltenweise vornehmen. Schließlich gelang es STRASSEN [ 8 3 ] , einen Algorithmus anzugeben, der das Gleichungssystem ( 4 . 2 . 1 2 ) löst, dabei die inverse Matrix berechnet und insgesamt nur o(n 2,81 ) («—• oo) Rechenoperationen benötigt. Praktische Erfahrungen mit diesem Algorithmus stehen noch aus. 4/11. Als weiterführende Literatur zu Abschnitt 4 nennen wir DURAND [32, tome II], FADDEJEW-FADDEJEWA [34],GASTINEL [35],HOUSEHOLDER [ 4 2 ] , SCHWARZ-STIEFEL-RUTISHAUSER [ 7 5 ] u n d WILKINSON-REINSCH [ 9 5 ] ,
4/12. Bestmögliche Abschätzungen zwischen den gebräuchlichen Normen hat B.J. STONE [109] zusammengestellt.
5. Lineare Optimierung
5.1. Normalform eines linearen Optimierungsproblems In Naturwissenschaft und Technik, vor allem aber in den Wirtschaftswissenschaften, treten Probleme auf, bei denen ein Extremwert einer Funktion unter gewissen durch Gleichungen oder Ungleichungen gegebenen Nebenbedingungen gesucht ist. (5.1.1) Beispiele. 1. Eine Fabrik kann zwei Typen A und B eines Produkts unter folgenden Bedingungen herstellen. Produkt
Typ A
TypB
Stück pro Tag
maximal möglich 100 Stück
Arbeitszeit pro Stück Materialkosten pro Stück Gewinn pro Stück
4
1
160 Std.
20
10
1100 DM
120
40
? DM
Wie müssen x1 und x2 gewählt werden, damit der Gewinn maximal wird ?
Offensichtlich ist unter den Nebenbedingungen xi+
x 2 ^ 100 4xi + x2 ^ 160 20*! + 1 0 x 2 ^ 1100 und den Vorzeichenbedingungen xi ^ 0,
x2 ^ 0
der lineare Ausdruck 120 jq + 40*2 zu einem Maximum zu machen. 2. Durch Mischung der auf dem Markt angebotenen Legierungen A, B, C, D, E soll eine gewünschte Legierung möglichst preisgünstig hergestellt werden. Dabei gelte:
111
5.1. N o r m a l f o r m eines linearen Optimierungsproblems
Legierung
A
B
C
D
E
gewünscht
Menge in kg
*i
*2
*3
*4
*5
4
Gewichtsanteil Blei
0,1
0,1
0,6
0,4
0,3
0,3
Gewichtsanteil Zink
0,5
0,4
0,1
0,2
0,6
0,3
Gewichtsanteil Zinn
0,4
0,5
0,3
0,4
0,1
0,4
Preis pro kg
40
45
52
50
20
?
Unter den Nebenbedingungen 0,l*i + 0,1*2 + 0,6*3 + 0,4*4 + 0,3x5 =
1,2
0,5*! + 0,4x2 + 0,1*3 + 0,2x4 + 0,6*5 =
1,2
0,4*! + 0,5*2 + 0,3*3 + 0,4*4 + 0,1*5 =
1,6
und den Vorzeichenbedingungen *;^0
(i= 1,2, . . . , 5 )
ist also der lineare Ausdruck 40*i + 45*2 + 50*3 + 52*4 +
20*
5
zu einem Minimum zu machen. Das erste Beispiel und auch viele ähnliche Probleme können auf die Gestalt des zweiten Beispiels gebracht werden. Hierfür kommen folgende Umformungen in Frage: 1. Eine Ungleichung mit geführt.
wird durch Multiplikation mit — 1 in eine mit fi, über-
2. Eine Ungleichung axxx + a2x2 +... + anx„ iS ß wird durch Einführung einer sog. Schlupfvariablen y in eine Gleichung und eine Vorzeichenbedingung übergeführt, nämlich in a1x1+a2x2
+ ... + anxn + y = ß,
3. Für jede Gleichung axxy + ... + anxn= ß können wir (eventuell nach Multiplikationen mit — 1) stets ß^0 voraussetzen. 4. Fehlt für eine Variable, etwa für x1, die Vorzeichenbedingung, so führe man die neuen Variablen ^, y2 ein, ersetze xt durch y^ — y2 undfordere j! Si 0, y2 ^ 0. 5. Gleichungen, die Linearkombinationen gelassen werden.
anderer Gleichungen sind, können weg-
112
5. Lineare Optimierung
6. Da unter den gleichen Neben- und
Vorzeichenbedingungen
max cTx = — min ( — cTx) gilt, kann man alle linearen Optimierungsprobleme Minimums zurückzuführen.
auf die Bestimmung
eines
Für einen beliebigen Vektor t; bedeute v ^ 0, daß alle Komponenten von v nichtnegativ sind. (5.1.2) Definition. Für l^m^H seien eine Matrix A e |RmX" vom Rang m sowie Vektoren b e IRm, b^. 0 und c e IR" gegeben. Als lineares Optimierungsproblem in Normalform (abgekürzt LON) bezeichnen wir die Aufgabe, unter den Nebenbedingungen
Ax = b
Vorzeichenbedingungen
x ^ 0
und den ein Minimum der x i—• cTx
Zielfunktion
zu bestimmen. Anders ausgedrückt: Für M-.= {xe\Rn:Ax
(5.1.3) ist
x* e M
mit
= b,
x^O}
cTx* = min cTx XEM
gesucht. Der Bereich M ist Durchschnitt einer linearen Mannigfaltigkeit mit Halbräumen. Offenbar ist M konvex, d.h. für x,yeM folgt Xx + (1 — X)y e M für alle X e [0,1]. Über die Lösbarkeit des LON sind folgende Aussagen ersichtlich: 1. Im Falle M = 0 existiert keine Lösung. 2. Ist M 4= 0 und M beschränkt, so ist M kompakt, und es existiert eine Lösung. 3. Ist M 4= 0 und M nicht beschränkt, inf cTx > — oo ist.
so existiert
eine Lösung,
falls
xeM
5.2. Theoretische Grundlagen (5.2.1) Definition. Ein Vektor xeM wenn keine Darstellung ..
x = Ax [ 1 1 + ( l
-X)xm
heißt Ecke oder Extremalpunkt
von M,
113
5.2. Theoretische Grundlagen
mit x*\xmeM,
xll1 + xl2\
Ae]0,1[
existiert. (5.2.2) Lemma. Es bezeichne a[v] e IRm (v = 1, ...,n) die v-te Spalte der Matrix A eines LON. Für x e M sei I(x) •= {i: xt > 0}. Ist B(x)--={aM:
vel(x)}
linear abhängig, so besitzt x eine Darstellung
mit
yeM
und I(xll]) ^ I(x).
Beweis. O.B.d.A. sei I(x) = { 1 , 2 , . . . , k } . Dann besteht die Gleichung I
a™xK = b.
K= 1
Ist B(x) linear abhängig, so gibt es Zahlen dK (K = 1, 2 , . . . , k), die nicht alle verschwinden, mit
K= 1
Für jedes X e IR erfüllt x ( A ) + Xdu x2 + kd2,...,xu
+ Xdk, 0 , 0 , . . . , 0 ) T n — k Nullen
die Gleichung A • x(A) = b. Wegen xK > 0 (K = 1, 2 , . . . , k) ist für jedes A von hinreichend kleinem Betrag auch x(A) ^ 0 und damit x(A) e M. Lassen wir A von Null ausgehend wachsen oder fallen, so gelangen wir in einem der beiden Fälle zu einem A* mit der folgenden Eigenschaft: mindestens eine der ersten k Komponenten von x(J.*) verschwindet, und es gilt x(X)eM
für
|A|^|A*|.
Mit x [ 1 1 ~x(A*) und y-=x( — X*) folgt die Behauptung.
•
(5.2.3) Satz (Charakterisierung der Ecken). Mit den Bezeichnungen von Lemma (5.2.2) gilt: Ein Vektor x e M ist genau dann Ecke, wenn B(x) linear unabhängig ist.
114
5. Lineare Optimierung
Beweis. 1. Es sei B(x) linear unabhängig, aber x keine Ecke, also x = lxll] +(1 - l)xl2] mit jc111, x [ 2 ] e M, x [1) * x[2\ X e ] 0,1 [. Dann folgt aus x ; = 0 auch x[ 1] = x ; [ 2 ] = 0. Somit gilt X a M 4 1 ] = I aMx^ tcel(x) k e I(x)
= b,
d.h. KEI(X|
Wegen x [1] + x[2] folgt die lineare Abhängigkeit von B(x)\ Widerspruch! 2. Die umgekehrte Richtung folgt aus Lemma (5.2.2). Ist der Nullvektor 0 e M, so ist 0 nach Definition (5.2.1) Ecke mit B(0) = 0. Die leere Menge ist als linear unabhängig anzusehen. • Für jede Ecke x besteht somit B(x) aus höchstens m Vektoren. Zur genauen Klassifikation der Ecken vereinbaren wir: (5.2.4) Definition. 1. Besteht B(x) für eine Ecke x aus weniger als m Vektoren, so heißt x entartete Ecke. 2. Ein System B(x) von m linear unabhängigen Spaltenvektoren der Matrix A mit B(x) ^ B(x) heißt eine Basis der Ecke x. Für eine nicht entartete Ecke ist offensichtlich B(x) = B(x); für eine entartete Ecke kann B(x) wegen Rang A=m immer zu einer Basis erweitert werden. Durch eine Basis ist eine Ecke eindeutig bestimmt. (5.2.5) Bemerkung. Durch sukzessive Anwendung von Lemma (5.2.2) folgt, daß jeder Bereich M#=0 eines LON Ecken besitzt. Da es jedoch höchstens ( m ] Systeme von m linear unabhängigen Spaltenvektoren der Matrix A gibt, kann M höchstens
w ( fn\
Ecken besitzen.
(5.2.6) Satz. Besitzt das LON eine Lösung x, so gibt es eine Ecke x* e M, die ebenfalls Lösung ist. Beweis. Ist x keine Ecke, so wenden wir Lemma (5.2.2) an. Dann wird offenbar das Minimum der Zielfunktion im Mittelpunkt der Verbindungsstrecke S von x [1] mit y angenommen. Da die Zielfunktion linear ist, muß sie auf S konstant sein, d.h. x [1] ist ebenfalls Lösung. Ist x t l ] keine Ecke, so wiederholen wir unsere Argumentation mit x [1) anstelle von x. So fortfahrend
115
5.3. Simplexverfahren
bekommen wir eine Folge von Lösungen mit immer mehr verschwindenden Komponenten, bis wir schließlich nach endlich vielen Schritten eine Ecke erreichen. •
5.3. Simplexverfahren Berechnet man für ein lösbares LON alle Ecken von M und sondert eine solche aus, für die die Zielfunktion am kleinsten wird, so erhält man nach Satz (5.2.6) immer eine Lösung. Für die Praxis ist dieses Vorgehen zu aufwendig. Wesentlich ökonomischer arbeitet das im folgenden beschriebene Simplexverfahren. Anschaulich gesprochen geht man dabei von einer Ausgangsecke zu einer benachbarten Ecke über derart, daß die Zielfunktion möglichst stark abnimmt. Zur präziseren Formulierung des Vorgehens benötigen wir die Basisdarstellung der Normalform. Für das LON (5.1.2) sei x [0] eine Ecke von M, deren Basis wir o.B.d.A. als B{xm) = {a[1], a I 2 ] ,..., a[m]} annehmen. Dann gilt (5.3.1)
f^a™x™ = b. H=1
Für einen beliebigen Vektor x e M besteht die Gleichung Ax = b. Kombination mit (5.3.1) ergibt m
n
Wegen der linearen Unabhängigkeit von J?(xt0]) können wir nach x ß — xl®] (pi = 1, ...,m) auflösen und bekommen Gleichungen der Gestalt (5.3.2)
n
X t l
- x
l
X! v = m +1
^ =
( j i = t,2,
. . . , m ) .
Die Zielfunktion können wir darstellen als c
T
x = c
T
x
l 0 ]
+ c
T
( x -
jc[0]) = c
T
x
l 0 ]
+
£ ß=1
C f l
{x, -
4
0 1
) +
f c v=m+1
v
x
v
.
Substitution der Ausdrücke (5.3.2) ergibt eine Gleichung von der Form (5.3.3)
c
T
x = c
Setzen wir noch
T
x
z - = c
m
T
+
x
£
v = m+1 und
x „
yv;cv.
+ 1
' = i ,
so werden die Nebenbedingungen
116
5. Lineare Optimierung
(5.3.2) und die Zielfunktion (5.3.3) - bezüglich der Basis Ä(x [0] ) - durch das Gleichungssystem =
(5.3.4)
a
l,m+l
x
; x
m
m+l
+
••• +
a
ln*n +
; =
Z =
lx
^n + 1
i
x
m,m+l m+l
+
••• +
a
ron*n
; +
1
-"•m'
+1
7M + LXM + 1 + ... + yn xn + cTxmxn
+1
beschrieben, das wir in folgendem Tableau festhalten: x
m +l
Xn
x
m+2
a
l,m + l al,m+2
•• •
X
a
m,m + l a m , m + 2
••
Z
7m +1
m
lm+2
x
n +
—
1
«1„ v
•
1
7n
[0]
cTx[0].
Bei anders numerierter Basis Ä(JC [0] ) gelangt man analog zu einem Tableau, bei dem in der ersten Spalte alle mit a w £ ¿?(x[0]) auftreten, während die übrigen xt in der ersten Zeile stehen. Im Gleichungssystem (5.3.4) sind x i , x 2 , . . . , x m und z durch Vorgabe von nichtnegativen Zahlen xm+1,xm+2, ...,*„ eindeutig bestimmt. Gilt dabei Xp ^ 0 (ji — 1,2,. ..,m), so gehört x —(xi, x2,..., xn)T zu M, und es ist z = cTx. Für die speziellen Werte x m + 1 = xm+2 =... = x„ = 0 bekommen wir die Ecke JC[0]. Ferner erfüllt auch jedes x e M die Gleichungen (5.3.4). Besteht umgekehrt M genau aus denjenigen Vektoren x ^ 0, deren Komponenten xT (v = 1,2,..., ri) ein Gleichungssystem der Gestalt (5.3.4) erfüllen und gilt dabei xn+i = 1 und JC£0] ^ 0 (^ = 1,2,..., m), so ist
gewiß eine Ecke von M. Offenbar hat dann nämlich jede Darstellung x [ 0 ] = = /U/+(l — X)V mit u,veM und A e ] 0 , 1 [ die Beziehung u = v = xl0] zur Folge. Beschreibung des Verfahrens. Mit dem Tableau arbeiten wir folgendermaßen: 1. Gilt yv ^ 0 (v = m + 1,... ri), so folgt für x v ^ 0 (v = m + 1,..., n) stets z c V 0 1 . Somit ist x101 eine Lösung des LON. 2. Gibt es ein q (m + 1 ^ q ^ ri) mit yq < 0, so sind zwei Fälle zu unterscheiden:
117
5.3. Simplexverfahren
2a) Gilt ctM ^ 0 (ji = 1, 2 , . . . , m), so bekommen wir für jedes A > 0 durch xq-=A, x v — 0 (v = m + 1,...,n; v,4= q) offensichtlich einen Vektor aus M. Für A —• oo folgt z —• — oo. Somit besitzt das LON in diesem Fall keine Lösung. 2b) Gibt es ein k(1 g / c ^ m ) mit aKq < 0 , so streben wir im System (5.3.4) einen Austausch von xq gegen ein xp (1 ^ p ^ m) nach dem Algorithmus (4.5.2) an. Dabei ist besondere v[0]
40]
durch
x[il--=-
x^
durch
xj,11 := 4 0 1
und sonst r[0]
a P9
zu ersetzen. Um auch das neue System als Darstellung der Nebenbedinungen und der Zielfunktion bezüglich einer Basis deuten zu können, benötigen wir und 4 1 ] ^ 0 0i = l,2, Ist apq < 0 , so folgt jc'1] ^
...,m;n*p).
0 und- falls
=
0 ist'
auch xj/1 ^ 0. Ist a M < 0 ,
aber a.M < 0, so gilt
p
>o —
o
JO]
r [0] < fc_. OL pq — OL PI
Somit genügt es, den Index p durch die Forderungen x [oi
(5.3.5)
y.„a < 0, Pq
x to] = max Ji — J-pq 1"m 0 arbeitet dann die Fabrik jedoch nicht mit voller Kapazität. Es bleiben 15% der Produktionsanlagen ungenutzt. Bestimmung einer Ausgangsecke. Das Simplexverfahren benötigt eine Ausgangsecke. Ist eine solche für das LON (5.1.2) nicht bekannt, so lösen wir zunächst das durch / an Ä
= l
• •• ßm
1
0\
amn 0
1/
;
JeiR-*
\ a m i ... bestimmte Hilfsproblem: Gegeben:
M — { x e
gesucht:
x* z*-.=
e M x*+1
IRm+":
Ä x = b,
x
^ 0},
mit + x*+2
+ . . . + x*+m
= min (x xeM
n + 1
+ x„+2
+
...
+ x
n + m
) .
Offensichtlich ist der durch fÜr
für
' = 1.2,...,n i = n + 1, n + 2 , . . . , n + m
bestimmte Vektor x [0] eine Ecke von M. Da ferner die Zielfunktion des Hilfsproblems immer nichtnegativ ist, besitzt dieses eine Lösung, die wir mit Hilfe des Simplexyerfahrens bestimmen können. Ist z* = 0, so liefern die ersten n
120
5. Lineare Optimierung
Komponenten der Lösung eine Ecke des LON (5.1.2). Ist z* > 0, so sieht man leicht ein, daß die in (5.1.3) definierte Menge M leer ist, d.h. das LON (5.1.2) besitzt keine Lösung. Mit dem Simplexverfahren kann also auch die Frage nach der Lösbarkeit des LON entschieden werden.
Anmerkung 5/1. Von der zahlreichen weiterführenden Literatur nennen wir das Buch von COLLATZ und WETTERLING
[26],
6. Eigenwertprobleme bei Matrizen
Im folgenden beschäftigen wir uns mit der Lokalisation und Berechnung der komplexen Eigenwerte einer Matrix A e I K " x a l s o mit den Nullstellen ihres charakteristischen Polynoms XA (JC) := det (A — xE) e IK [x]. Unter einem zum Eigenwert X gehörigen Eigenvektor wollen wir dabei immer einen Vektor w 4= 0 mit Aw = Xw verstehen.
6.1. Lage der Eigenwerte Beliebige Matrizen. Schranken für die Beträge aller Eigenwerte einer Matrix haben wir bereits in Satz ( 4 . 2 . 1 0 / 1 ) kennengelernt. Eine präzisere Lokalisation der Eigenwerte ermöglicht häufig der (6.1.1)
Satz
(GERSCHGORIN). ES
1. Die Vereinigung aller
sei A e C" x ".
GERSCHGORIN-K>M