Fixed-Point Iteration
Learning Objectives
- Rewrite as in more than one way, and run the iteration .
- State the contraction theorem with all its hypotheses, prove convergence with the Mean Value Theorem, and show by example what each hypothesis contributes.
- Predict the linear rate and measure it, and classify a fixed point as attracting, repelling, or undecided.
- Explain why rewriting the same equation changes the outcome, and use relaxation to repair a failing iteration.
- Turn a step size into an error estimate, and recognize the point where rounding stops the iteration.
Context & Motivation
bisection-and-convergence-rate buys one bit per evaluation and asks only for a sign change, and that sign test has no direct analogue for a system of equations. A broader pattern underlies much of iterative computing: turn the problem into and apply repeatedly. newtons-method is one such . iterative-methods-jacobi-and-gauss-seidel applies the pattern to linear systems. The update in value-iteration-and-policy-iteration is another: with discount , the Bellman update is a contraction by factor in the maximum norm, which is why the values settle.
The whole subject turns on one number. Near a solution, behaves like a line of slope , and each step multiplies the error by that slope. Slope below in size means convergence, above means escape, and the slope depends on how the equation was written, not only on which equation it is.
Core Theory
From roots to fixed points
A fixed point of is a number with . Graphically it is a crossing of with . Any equation can be written this way, for example as with , whose fixed points are exactly the roots of . Other rearrangements are possible too, and they may change the domain.
The contraction theorem
Let be continuous on and differentiable on .
Existence. If maps into itself, has a fixed point there. Let . Then and , and the Intermediate Value Theorem applies.
Uniqueness and convergence. If also on , the fixed point is unique and every gives a sequence with
The proof is the Mean Value Theorem (the-mean-value-theorem-and-monotonicity): , and the mapping hypothesis keeps every in the interval. The other two bounds follow from the triangle inequality.
Dropping a hypothesis costs something specific:
- Continuity. for and for maps into itself and has no fixed point. From the iterates alternate between and .
- Mapping into the interval. on has and no fixed point there, because its fixed point lies outside.
- A slope bound. on maps the interval into itself, but reaches , and both and are fixed, so uniqueness is gone.
- A uniform . On a bounded , asking only at each point still gives uniqueness and convergence. What disappears is the rate . on has on , but at , so no works, and from it reaches only , tracking . On an unbounded interval even existence can fail. on maps the interval into itself with and has no fixed point. From , , tracking .
- Differentiability. This one is a convenience. The proof uses only , which on satisfies with despite the corner at .
- Global versus local. has an attracting fixed point at and a repelling one at . From the iterates reach in 8 steps. From they reach .
Behavior near a fixed point
If is continuous near and , then some interval around satisfies the theorem, so the iteration converges for close enough. If in addition and no iterate lands on , then
Convergence is linear with rate , giving bits per iteration. Per evaluation, that beats bisection's one bit only when . Positive slope approaches from one side, and negative slope alternates around . The other cases:
- : repelling. The sequence cannot converge to unless it lands on it exactly. It need not blow up: has with , and iterates from settle into the 2-cycle .
- : this test decides nothing. converges to very slowly, while escapes from (from it passes at step 57).
- with continuous: at least second order, .
Rewriting and relaxation
Two rearrangements of one equation share roots but generally not slopes. If has an inverse near , then has the same fixed point with slope , so inverting swaps attracting and repelling. Relaxation adjusts the slope directly:
keeps the fixed points and has , which vanishes at when .
Stopping and rounding
Near , linearizing gives
A slope near makes that factor large, so a small step does not mean a small error, while a slope near makes it about . The ratio of successive steps estimates the slope. Noise of size in evaluating shifts the fixed point by about , which is the conditioning of the fixed-point problem.
Worked Examples
Example 1: one equation, three iterations
Solve , with root .
(a) . It maps into , with there, so the theorem applies. The predicted rate is . From :
textn x_n e_n e_n/e_(n-1) 0 0.5 6.71e-02 1 0.6065306597126334 3.94e-02 0.5866 2 0.545239211892605 2.19e-02 0.5561 5 0.5711721489772151 4.03e-03 0.5692 10 0.5669072129354714 2.36e-04 0.5670 20 0.5671424775509449 8.13e-07 0.5671 30 0.5671432876111684 2.80e-09 0.5671 50 0.5671432904097508 3.31e-14 0.5663 62 0.5671432904097838 3.29e-17
The error first drops below at , as predicts. At the iterate stops changing. The rate is bits per iteration against bisection's , and here the two come out about even: bisection on reaches width in 34 iterations plus 2 endpoint evaluations, from a wider start. The stopping quantities differ, so this comparison is only rough. In float32 the iteration never settles on one value: from on it alternates between the adjacent floats and , with error about .
(b) . This is the inverse of , with slope , and it needs . From it gives , , , , and the next step leaves the domain. Starting much closer, at , the error grows by a measured per step, and fails the same way.
(c) Relaxed . Take , so that . The errors are , , , , . The ratios are , , , against . Choosing this way requires knowing . With the slope is , and the same iteration is merely linear. Recomputing from the current at each step gives Newton's method on , the subject of newtons-method.
Example 2: Kepler's equation
The position of a body on an elliptical orbit comes from , with eccentricity and mean anomaly . Take . It maps into itself, and , so the theorem applies with from .
texte M E* g'(E*) measured rate iterations to 1e-10 a priori bound 0.1 1.0 1.088598 +0.0464 0.0464 7 9 0.5 1.0 1.498701 +0.0360 0.0360 8 33 0.9 1.0 1.862087 -0.2585 0.2585 17 238 0.97 0.2 1.033148 +0.4968 0.4968 36 818
The a priori bound is the smallest with . It holds in every row and is badly pessimistic for large , because is the worst slope anywhere, while the rate depends on the slope at the root. A run of scipy.optimize.brentq on agrees with each to better than .
Example 3: a small step, a large error
Take and , so and . Stopping when the step falls below ends at with step and true error , which is 39 times the step. The factor from theory is . Using the ratio of the last two steps as an estimate , the value times the step gives , so the iteration itself supplied a sound estimate.
Run on, the iterate stops changing at with error . For , it stops at with error . The amplification is in the first case and in the second.
Common Misconceptions & Pitfalls
- "Any rearrangement works, since the roots are the same." Example 1 has one that converges, one that fails, and one that is quadratic.
- " means convergence from anywhere." It is a local statement, as from shows. Global convergence needs the full theorem.
- " everywhere guarantees a fixed point." On an unbounded interval it does not: on has none. On a bounded the fixed point comes from continuity and the mapping condition, not from the slope.
- "A small step means a small error." With from , after steps the step is and the error is . Slope at the root leaves no finite factor between them.
- "Failing to converge means diverging." The logistic map above stays bounded in a 2-cycle.
- "Stop when
x_new == x." The float32 run in Example 1 alternates forever and would never stop. Use a tolerance and an iteration cap. - "
scipy.optimize.fixed_pointruns this lesson's iteration." Its defaultmethod='del2'uses Steffensen's method with Aitken acceleration. The plain loop ismethod='iteration'.
Summary
Fixed-point iteration rewrites as and repeats . If is continuous on , maps it into itself, and satisfies , then the fixed point is unique, every start in the interval converges, and the error shrinks at least like . Near a fixed point the observed rate tends to , so a slope below in size beats bisection, slope gives second order, slope above repels, and slope exactly needs a closer look. The slope belongs to the rewriting, which is why inverting or relaxing can change failure into fast convergence. The error is about times the step, which matters when the slope is near , and rounding stops the iteration near .