Kurs:Numerik I/Fixpunktiteration

Aus testwiki
Version vom 17. Juli 2023, 11:33 Uhr von imported>Bert Niehaus (Einführung - mehrdimensionale Fixpunktiteration)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Einleitung

Diese Seite kann als Wiki2Reveal Folien angezeigt werden. Einzelne Abschnitte werden als Folien betrachtet und Änderungen an den Folien wirken sich sofort auf den Inhalt der Folien aus.

Einführung - mehrdimensionale Fixpunktiteration

Zunächst wird die Fixpunktiteration auf Funktionen g:DD mit Dn verallgemeinern, die bereits für n=1, D=[a,b] und hinreichend glattes g diskutiert wurde.

Fixpunktiteration

Für die Bestimmung eines Fixpunktes von g, d. h. eines Punktes x(*)n mit g(x(*))=x*, betrachten wir also die Iterationsvorschrift

x(k+1):=g(x(k)),k=0,1,2, (FPI)

mit einem gegebenen Startwert x(0)Kn.

Bemerkung 1 - Fixpunktiteration

Im Folgenden werden die Abkürzung (FPI) für Fixpunktiteration x(k+1):=g(x(k)) verwenden.

Vollständigkeit des Grundraumes

Man zeigt in dem Beweis wieder, dass die Fixpunktiteration eine Cauchyfolge liefert. Die Vollständigkeit liefert dann, dass auch ein Grenzwert der Cauchyfolge in x(*)Dn existiert, d


Bemerkung 2 - Bezug zu Nullstellenverfahren

Für eine Selbstabbildung g:DD mit Dn

Bemerkung 3 - Stetigkeit

Die Lipschitz-Stetigkeit ist eine besondere Form der Stetigkeit, die im eindimensionalen Fall ein Beschränktheit der Sekantensteigungen liefert. Ist g:DD differenzierbar, so ist im eindimensionalen Fall die Ableitung |g(x)|L. Für den mehrdimensionalen Fall wird nun die Lipschitz-Stetigkeit definiert.

Definition - Lipschitz-stetig

Sei Dn und :n+ eine Norm auf dem n

  • (Lipschitz-stetig) Eine Abbildung g:Dn heißt Lipschitz-stetig auf D mit (Lipschitz-)Konstante L>0, wenn gilt: g(x)g(y)Lxy,x,yD(LSS).
  • (Kontraktion) Eine Lipschitz-stetige Abbildung g:DD mit Konstante L>0 heißt eine Kontraktion auf D, wenn L<1 ist.

Zusammenhang - partielle Ableitungen und Lipschitz-Stetigkeit

Sei nun speziell gC1(D,n) für Dn, wobei wir damit eine Funktion g:Dnn mit

g(x)=(g1(x),,gn(x))T,xD

und stetigen partiellen Ableitungen gixj(x) (i,j=1,,n) für alle xD meinen.

Bestimmung der Lipschitz-Konstante

Für ein solches g kann man in der Praxis häufig eine Konstante L aus der Definition kann mittels der partiellen Ableitungen von den Komponentenfunktionen gi bzw. der Jacobi-Matrix von g bestimmt werden.

Jacobi-Matrix

Die Jacobi-Matrix ist mit I:={1,,n} wie folgt definiert.

𝒥g(x):=(gixj(x))i,jI=(g1x1(x)g1x2(x)g1xn(x)g2x1(x)g2x2(x)g2xn(x)gnx1(x)gnx2(x)gnxn(x))n×n

gegeben ist.

Bemerkung - Lipschitz-Stetigkeit im eindimensionalen Fall

Im eindimensionalen reellwertigen Fall bedeutet Lipschitz-Stetigkeit für differenzierbare Funktionen f:D, dass die Ableitungen f(xo) betragsmäßig durch L für alle xoD beschränkt sind, d.h.:

|f(xo)|=limxxo|f(x)f(xo)xxo|limxxoL|xxo||xxo|=L

Für die Lipschitz-Stetigkeit ist natürlich die Differnzierbarkeit keine Voraussetzung.


Definition - konvexe Menge

Eine Menge Dn heißt konvex, falls für je zwei Elemente x,yD auch alle Konvexkombinationen von x und y zu D gehört, d. h. falls

x,yD,t[0,1](1t)x+tyD.

Bemerkung - Mittelwertsatz der Differentialrechnung

Damit lässt sich bekanntlich das folgende Lemma aus dem Mittelwertsatz der Differentialrechnung ableiten (siehe auch Konvexkombination).

Lemma - Jacobi-Matrix - Lipschitz-Stetigkeit

Es sei g𝒞2(D,n) für eine offene, konvexe Menge Dn und für eine Konstante L>0 gelte

𝒥g(x)L,xD.

Dann folgt die Abschätzung

g(x)g(y)Lxy,x,yD.

Bemerkung

Zum oben angegebenen Zusammenhang zwischen Jacobi-Matrix und Lipschitz-Stetigkeit geben wir zunächst zwei Beispiele im eindimensionalen Fall an.

Beispiel 1 - eindimensionaler Definitionsbereich

Die Funktion f(x):=x2 ist auf [0,0.4] eine Kontraktion, denn es ist

f([0,0.4])=[0,0.16][0,0.4]

und mit L:=maxx[0,0.4](2x)=0.8

|x2y2|0.8|xy|,x,y[0,0.4].

Beispiel 2 - eindimensionaler Definitionsbereich

Die Funktion f(x):=x ist auf [0,a] mit a>0 nicht Lipschitz-stetig, denn für y=0 hat man

|x0|=x=1x(x0)=1x|x0|,x(0,a]

und limx0(1/x)=.

Beispiel - Aufgabe 3 - mehrdimensionaler Definitionsbereich

Der Definitionsbereich D:=[1,+1]×[1,+1]×[1,+1]=[1,+1]33 und der Funktion g:DD mit

g(x1,x2,x3):=(x12+x3210,x2+x35,x325)

Bestimmen Sie die Lipschitz-Konstante L>0. Überprüfen Sie, ob die Abbildung g:DD eine Kontraktion mit L<1 ist?

Bemerkung - Banachsche Fixpunktsatz

Der folgende sog. Banachsche Fixpunktsatz gibt an, dass die Fixpunktiteration (FPI) konvergiert, und zwar für allgemeines n und ohne Differenzierbarkeitsforderungen an g, wobei als Startvektor alle Elemente x(0)Dn des Definitionsbereiches D von g zugelassen sind.

Bemerkung - Eindeutigkeit des Fixpunkt

Überdies liefert die Kontraktionseigenschaft unter den genannten Voraussetzungen die Existenz eines eindeutigen Fixpunktes. Die geforderte Kontraktionseigenschaft für die Iterationsfunktion g ist allerdings eine relativ starke Voraussetzung.

Satz - Banachscher Fixpunktsatz

Sei Dn abgeschlossen und die Abbildung g:DD bezüglich der Vektornorm :no+ eine Kontraktion mit Konstante L(0,1). Dann gilt:

  • (BF1) g besitzt genau einen Fixpunkt x*D.
  • (BF2) Für jeden Startpunkt x(0)D liefert die Fixpunktiteration x(k+1)=g(x(k)),k=0,1, eine Folge (x(k))ko in D, welche gegen x* konvergiert und
  • (BF3) x(k)x(*)L1Lx(k)x(k1)Lk1Lx(1)x(0), für k=1,2,.

Beweis - Banachscher Fixpunktsatz

Zunächst wird die Eindeutigkeit des Fixpunktes durch Widerspruch und Anwendung der Kontraktionseigenschaft gezeigt.

Beweis (BF1) Eindeutigkeit Fixpunkt

Annahme: Es existieren zwei Fixpunkte x*,y*D Fixpunkte von g, so gilt

x*y*=g(x*)g(y*)Lx*y*

Beweisschritt (BF1.1) Eindeutigkeit Fixpunkt

Weil x*=y* nach Annahme gilt, erhält man x*y*>0. Man erhält durch Division der obigen Gleichung durch x*y* einen Widerspruch mit L1, da nach Voraussetzung g:DD ein Kontraktion mit 0<L<1 ist.

Beweisschritt (BF1.2) Eindeutigkeit Fixpunkt

Also erhält man, dass x*=y* gilt und g höchstens einen Fixpunkt besitzt.

Beweis (BF2) Konvergenz für beliebige Startpunkte

Sei nun der Startvektor x(0)D beliebig gewählt und (x(k))ko bezeichne die damit durch die Fixpunktiteration (FPI) erzeugte Folge.

Beweis (BF2.1) Konvergenz für beliebige Startpunkte

Für x(k)D ist nach (FPI) und g:DD offenbar auch g(x(k))=x(k+1) in D, so dass x(k)D für k0) und der Lipschitz-Stetigkeit wie folgt abgeschätzt werden kann.

Beweis (BF2.2) Konvergenz für beliebige Startpunkte

Man erhält somit für g(x(k))=x(k+1) und g(x(k1))=x(k) folgende Abschätzung:

x(k+1)x(k)=g(x(k))g(x(k1))Lx(k)x(k1),k0,

Beweis (BF2.3) Konvergenz für beliebige Startpunkte

Wiederholt man diese Abschätzung mit g(x(k2))=x(k1) ergibt sich: :Lx(k)x(k)=Lg(x(k1))g(x(k2))L2x(k1)x(k2).

Beweis (BF2.4) Konvergenz für beliebige Startpunkte

Durch rekursive Anwendung bis zu den Folgengliedern x(0),x(1)D erhält man

x(k+1)x(k)Lkx(1)x(0).

Damit kann man nun den Abstand zweier aufeinanderfolgender Folgenglieder x(k+1)x(k) gegen eine Potenz der Lipschitz-Konstante und dem Abstand der ersten beiden Folgenglieder abschätzen.

Beweis (BF2.5) Geometrische Reihe

Zur Vorbereitung der Cauchy-Folgeneigenschaft wird nun der Abstand von beliebigen Folgengliedern x(k+n)x(k) mit n nach oben abgeschätzt. Da Potenzen der Form Lk nutzt man den Grenzwert der geometrischen Reihe für diese Zweck mit:

k=0Lk=11L.

Beweis (BF2.6) Dreiecksungleichung und telekopierende Summe

Man ergänzt Nullvektoren 0V=x(k+i)x(k+i) und erzeugt damit eine teleskopierende Summe von Differenzen und schätzt diese mit Dreieckungleichung nach oben ab. Dies erfolgt, um die Abschätzung (BF2.4) für den Abstand von zwei aufeinander folgenden Folgenglieder x(k+i+1)x(k+i) nach oben abschätzen zu können.

Beweis (BF2.7) Dreiecksungleichung und telekopierende Summe

Die vorhergehenden Überlegungen liefern die folgenden Abschätzungen für k,n0:

x(k+n)x(k)=xk+n+x(k+1)x(k+1)=0Vx(k)=(x(k+1)x(k))+(x(k+2)x(k+1))++(x(k+n)x(k+n1))x(k+1)x(k)+x(k+2)x(k+1)++x(k+n)x(k+n1)x(k+1)x(k)+Lx(k+1)x(k)++Ln1x(k+1)x(k)=x(k+1)x(k)k=0n1Lkx(k+1)x(k)k=0Lk=11L

Beweis (BF2.8) Abschätzung von aufeinander folgenden Folgengliedern

Mit (BF2.4) kann man nun zwei aufeinander folgende Folgenglieder gegen den Abstand von den ersten beiden Folgengliedern abschätzen und man erhält mit (BF2.7) für k,n0:

x(k+n)x(k)x(k+1)x(k)11LLkx(1)x(0)(BF2.4)11L

Beweis (BF2.9) Abschätzung für Cauchy-Folge

Also gilt für alle k,n0

x(k+n)x(k)L1Lx(k)x(k1)Lk1Lx(1)x(0)

Demnach ist die Folge (x(k))k0 eine Cauchy-Folge.

Beweis (BF2.10) Begründung Cauchy-Folge

Da (Lk)k mit 0<L<1 eine Nullfolge ist wählt man für ein beliebiges ε>0 das kε so, dass folgende Ungleichung gilt:

Lkε<ε(1L)x(1)x(0)

Beweis (BF2.11) Begründung Cauchy-Folge

Dies liefert für alle k,n0 mit kkε die Eigenschaft:

x(k+n)x(k)Lk1Lx(1)x(0)Lkε1Lx(1)x(0)<ε<ε

Beweis (BF2.12) Vollständigkeit und Cauchy-Folge

Da der Vektorraum n vollständig ist und Dn eine abgeschlossene Teilmenge von n ist, existiert ein Grenzwert x*n und dieser liegt mit der Abgeschlossenheit von D auch in D. Liegt der Grenz

Beweis (BF3) - Konvergenz

Mit der Abschätzung (BF2.9) erhält man für alle k,n0

x(k+n)x(k)L1Lx(k)x(k1)Lk1Lx(1)x(0)

Damit gilt die Aussage für alle n un die Ungleichung "" bleibt erhalten beim Grenzübergang „n“.

Beweis (BF3.1) - Konvergenz

Mit der Abschätzung (BF2.9) erhält man für alle k,n0

x*x(k)L1Lx(k)x(k1)Lk1Lx(1)x(0)


Bemerkung (BF3.2)

Wenn nun einer solcher Grenzwert x*D und eindeutig ist für eine Kontraktion g ist und nach Voraussetzung (Lipschitz-)stetig ist, kommte man die Abschätzung in (BF3) mit (BF3.1) für die Fixpunktiteration auch auf den Grenzwert x* der Fixpunktinteration übertragen. Der Grenzübergang „n“ in (BF3.1) liefert schließlich die Abschätzung (BF3).

q.e.d.

Konvergenzgeschwindigkeit

Man beachte, dass man unter den Voraussetzungen des Banachschen Fixpunktsatzes mindestens lineare Konvergenz für die Fixpunktiteration hat, denn dann gilt

xk+1x*=g(xk)g(x*)Lxkx*,k0,

wobei L(0,1) ist.

Konvergenzgeschwindigkeit

Der Ausdruck

Lk1Lx(1)x(0)

in (BF2) kann, nachdem x1 berechnet wurde, für jedes k vor Beginn der Iteration bestimmt werden.

a-priori-Fehlerabschätzung

Er ermöglicht eine a priori Fehlerabschätzung für den Approximationsfehler xkx*. Weiter hat man wegen L(0,1) für eine Abbruchschranke ε>0

Lk1Lx(1)x(0)εklog(L)log((1L)εx(1)x(0))ka

mit

a:=log((1L)εx(1)x(0))/log(L),

so dass mit (5.21) folgt:

kaightarrowx(k+1)x*ε.

Praktisch ist also spätestens in Schritt k:=k(ε) mit

(5.22) k(ε)=a

die Fehlerabschätzung xkx*ε erfüllt, wobei a die kleinste ganze Zahl a bezeichnet.

Der mittlere Ausdruck in (5.20) kann im k-ten Iterationsschritt bestimmt werden und erlaubt eine a posteriori Fehlerabschätzung für den Approximationsfehler xkx*. Praktisch wird für eine gegebene Schranke ε>0 in Schritt k:=k(ε) abgebrochen, wenn erstmalig

L1Lxkxk1ε

erfüllt ist. In diesem Fall genügt xk der Fehlerabschätzung xkx*ε.

Wir geben dazu ein Beispiel.

Beispiel 5.16

Es sei

f(x):=xex,x.

Dann hat man

f(x*)=0 für x*0.567 143 29.

Diese Nullstelle x* soll nun approximativ berechnet werden. Mit

g(x):=ex,x

gilt offenbar

g(x*)=x*f(x*)=0,

so dass wir dazu die Fixpunktiteration xk+1=g(xk) mit der Iterationsfunktion g anwenden wollen.

Dafür müssen wir zunächst die Voraussetzungen von Satz 5.15 überprüfen. Auf dem Intervall D:=[0.5,0.69] ist g monoton fallend und somit

g(D)=[e0.69,e0.5][0.5,0.61]D

sowie

L:=maxx[0.5,0.69]|g(x)|=maxx[0.5,0.69]ex=e1/20.606 531.

Also ist g eine Kontraktion. Die folgende Tabelle liefert für den Startwert x0:=0.55 ausgewählte Iterierte des Verfahrens:

kxkkxkkxk00.550 000 00100.567 083 94200.567 143 0910.576 949 81110.567 176 95210.567 143 4020.561 608 77120.567 124 20220.567 143 2330.570 290 86130.567 154 12230.567 143 3240.565 360 97140.567 137 15240.567 143 27

Die Situation soll nun für k=12 genauer betrachtet werden. Die Fehlerabschätzung (5.20) liefert in diesem Fall

L121L|x1x0|=0.606 5311210.606 5310.026 949 81=1.70104,
L1L|x12x11|=0.606 53110.606 5310.000 052 75=8.13105.

Der tatsächliche Fehler

|x12x*|1.91105

wird also durch die a posteriori Abschätzung um etwa den Faktor 4 und durch die a priori Abschätzung um etwa den Faktor 9 überschätzt.

Praktisches Vorgehen

Das praktische Vorgehen soll nun für die spezielle Fehlerschranke ε=0.007 6 illustriert werden. Der (üblicherweise unbekannte) Approximationsfehler unterschreitet diese Schranke bereits für k=2, denn man hat |x2x*|0.005 5ε. Die a posteriori Abschätzung liefert dagegen für k=4

|x4x*|e1/21e1/2|0.565 360 970.570 290 86|=0.007 599ε,

also k(ε):=4 als Stoppzahl, während die a priori Abschätzung in (5.22) mit

a=log((1L)εx1x0)/log(L)=log((1e1/2)0.007 60.576 949 810.55)/log(e1/2)4.397

die Vorhersage k(ε):=5 macht.

Siehe auch


Seiteninformation

Diese Lernresource können Sie als Wiki2Reveal-Foliensatz darstellen.

Wiki2Reveal

Dieser Wiki2Reveal Foliensatz wurde für den Lerneinheit Kurs:Numerik I' erstellt der Link für die Wiki2Reveal-Folien wurde mit dem Wiki2Reveal-Linkgenerator erstellt.