Fixpunktiteration

Fixpunktiteration

Studium
xn+1=φ(xn),∣xn−x∗∣≤Ln1−L ∣x1−x0∣x_{n+1} = \varphi(x_n), \qquad |x_n - x^*| \leq \frac{L^n}{1 - L} \, |x_1 - x_0|

Voraussetzung: φ([a,b])⊆[a,b],\varphi([a, b]) \subseteq [a, b], ∣φ(x)−φ(y)∣≤L ∣x−y∣|\varphi(x) - \varphi(y)| \leq L \, |x - y| auf [a,b],[a, b], 0≤L<1,0 \leq L < 1, x0∈[a,b]x_0 \in [a, b]

φ\varphi
Iterationsfunktion, deren Fixpunkt gesucht ist
xnx_n
n-te Näherung
x0x_0
Startwert
x∗x^*
Fixpunkt, also Lösung von x = φ(x)
LL
Kontraktionskonstante (Lipschitz-Konstante kleiner als 1)
nn
Anzahl der Iterationsschritte

Bei der Fixpunktiteration setzt man jede Näherung wieder in φ ein; ist φ eine Kontraktion, konvergiert das gegen den Fixpunkt.

Erklärung

Viele Gleichungen lassen sich in die Form x=φ(x)x = \varphi(x) bringen. Eine Lösung heißt Fixpunkt von φ\varphi. Bei der Fixpunktiteration wählt man einen Startwert x0x_0 und setzt jedes Ergebnis wieder in φ\varphi ein.

Ob das konvergiert, sagt der Banachsche Fixpunktsatz: Bildet φ\varphi ein abgeschlossenes Intervall [a,b][a, b] in sich ab und ist dort eine Kontraktion, d.h. ∣φ(x)−φ(y)∣≤L ∣x−y∣|\varphi(x) - \varphi(y)| \leq L \, |x - y| mit L<1L < 1, dann gilt:

  • Es gibt genau einen Fixpunkt x∗x^* in [a,b][a, b].
  • Die Iteration konvergiert für jeden Startwert aus [a,b][a, b] gegen x∗x^*.
  • Es gilt die A-priori-Abschätzung ∣xn−x∗∣≤Ln1−L∣x1−x0∣|x_n - x^*| \leq \frac{L^n}{1 - L} |x_1 - x_0| und die A-posteriori-Abschätzung ∣xn−x∗∣≤L1−L∣xn−xn−1∣|x_n - x^*| \leq \frac{L}{1 - L} |x_n - x_{n-1}|.

Ist φ\varphi differenzierbar, kann man L=max⁡[a,b]∣φ′(x)∣L = \max_{[a, b]} |\varphi'(x)| wählen. Die Konvergenz ist im Allgemeinen linear: Der Fehler schrumpft pro Schritt etwa um den Faktor ∣φ′(x∗)∣|\varphi'(x^*)|. Das Newton-Verfahren ist eine Fixpunktiteration mit φ(x)=x−f(x)f′(x)\varphi(x) = x - \frac{f(x)}{f'(x)}, bei der für eine einfache Nullstelle φ′(x∗)=0\varphi'(x^*) = 0 ist.

Beispiele

Die Gleichung x=cos⁡xx = \cos x mit φ(x)=cos⁡x\varphi(x) = \cos x und x0=1x_0 = 1:

x1=cos⁡1≈0,5403,x2≈0,8576,x3≈0,6543,…→x∗≈0,739085x_1 = \cos 1 \approx 0{,}5403, \quad x_2 \approx 0{,}8576, \quad x_3 \approx 0{,}6543, \quad \ldots \quad \to x^* \approx 0{,}739085

Auf [0,1][0, 1] bildet cos⁡\cos in sich ab, und ∣φ′(x)∣=∣sin⁡x∣≤sin⁡1≈0,8415=L|\varphi'(x)| = |\sin x| \leq \sin 1 \approx 0{,}8415 = L. Weil LL nahe bei 11 liegt, konvergiert die Folge langsam und pendelt um den Fixpunkt.

Die Gleichung x2=2x^2 = 2 lässt sich unterschiedlich umformen. Mit φ(x)=2x\varphi(x) = \frac{2}{x} und x0=1x_0 = 1 pendelt die Folge zwischen 11 und 22, denn ∣φ′(2)∣=1|\varphi'(\sqrt{2})| = 1. Mit φ(x)=12(x+2x)\varphi(x) = \frac{1}{2}\left(x + \frac{2}{x}\right) ist φ′(2)=0\varphi'(\sqrt{2}) = 0, und die Folge 1; 1,5; 1712; …1;\ 1{,}5;\ \frac{17}{12};\ \ldots konvergiert sehr schnell gegen 2\sqrt{2}.

Mit L=0,5L = 0{,}5 und ∣x1−x0∣=0,5|x_1 - x_0| = 0{,}5 ist der Fehler nach nn Schritten höchstens 0,5n0,5⋅0,5=2−n\frac{0{,}5^n}{0{,}5} \cdot 0{,}5 = 2^{-n}. Für 2−n≤10−62^{-n} \leq 10^{-6} reichen n=20n = 20 Schritte, n=19n = 19 reicht nach der Schranke noch nicht.

Typische Fehler

  • Nur ∣φ′(x)∣<1|\varphi'(x)| < 1 prüfen und vergessen, dass φ\varphi das Intervall in sich abbilden muss.
  • Eine ungünstige Umformung wählen. Dieselbe Gleichung kann mit einer Iterationsfunktion konvergieren und mit einer anderen divergieren oder pendeln.
  • ∣xn−xn−1∣|x_{n} - x_{n-1}| klein für den Fehler halten. Bei LL nahe 11 ist der tatsächliche Fehler bis zu L1−L\frac{L}{1 - L}-mal größer.

Verwandte Formeln