Iterative method

From HandWiki
Revision as of 07:19, 27 June 2023 by Steve Marsio (talk | contribs) (fix)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Short description: Algorithm in which each approximation of the solution is derived from prior approximations

In computational mathematics, an iterative method is a mathematical procedure that uses an initial value to generate a sequence of improving approximate solutions for a class of problems, in which the n-th approximation is derived from the previous ones.

A specific implementation with termination criteria for a given iterative method like gradient descent, hill climbing, Newton's method, or quasi-Newton methods like BFGS, is an algorithm of the iterative method. An iterative method is called convergent if the corresponding sequence converges for given initial approximations. A mathematically rigorous convergence analysis of an iterative method is usually performed; however, heuristic-based iterative methods are also common.

In contrast, direct methods attempt to solve the problem by a finite sequence of operations. In the absence of rounding errors, direct methods would deliver an exact solution (for example, solving a linear system of equations [math]\displaystyle{ A\mathbf{x}=\mathbf{b} }[/math] by Gaussian elimination). Iterative methods are often the only choice for nonlinear equations. However, iterative methods are often useful even for linear problems involving many variables (sometimes on the order of millions), where direct methods would be prohibitively expensive (and in some cases impossible) even with the best available computing power.[1]

Attractive fixed points

If an equation can be put into the form f(x) = x, and a solution x is an attractive fixed point of the function f, then one may begin with a point x1 in the basin of attraction of x, and let xn+1 = f(xn) for n ≥ 1, and the sequence {xn}n ≥ 1 will converge to the solution x. Here xn is the nth approximation or iteration of x and xn+1 is the next or n + 1 iteration of x. Alternately, superscripts in parentheses are often used in numerical methods, so as not to interfere with subscripts with other meanings. (For example, x(n+1) = f(x(n)).) If the function f is continuously differentiable, a sufficient condition for convergence is that the spectral radius of the derivative is strictly bounded by one in a neighborhood of the fixed point. If this condition holds at the fixed point, then a sufficiently small neighborhood (basin of attraction) must exist.

Linear systems

In the case of a system of linear equations, the two main classes of iterative methods are the stationary iterative methods, and the more general Krylov subspace methods.

Stationary iterative methods

Introduction

Stationary iterative methods solve a linear system with an operator approximating the original one; and based on a measurement of the error in the result (the residual), form a "correction equation" for which this process is repeated. While these methods are simple to derive, implement, and analyze, convergence is only guaranteed for a limited class of matrices.

Definition

An iterative method is defined by

[math]\displaystyle{ \mathbf{x}^{k+1} := \Psi ( \mathbf{x}^k ) \,, \quad k\geq0 }[/math]

and for a given linear system [math]\displaystyle{ A\mathbf x= \mathbf b }[/math] with exact solution [math]\displaystyle{ \mathbf{x}^* }[/math] the error by

[math]\displaystyle{ \mathbf{e}^k := \mathbf{x}^k - \mathbf{x}^* \,, \quad k\geq0\,. }[/math]

An iterative method is called linear if there exists a matrix [math]\displaystyle{ C \in \R^{n\times n} }[/math] such that

[math]\displaystyle{ \mathbf{e}^{k+1} = C \mathbf{e}^k \quad \forall \, k\geq0 }[/math]

and this matrix is called the iteration matrix. An iterative method with a given iteration matrix [math]\displaystyle{ C }[/math] is called convergent if the following holds

[math]\displaystyle{ \lim_{k\rightarrow \infty} C^k=0\,. }[/math]

An important theorem states that for a given iterative method and its iteration matrix [math]\displaystyle{ C }[/math] it is convergent if and only if its spectral radius [math]\displaystyle{ \rho(C) }[/math] is smaller than unity, that is,

[math]\displaystyle{ \rho(C) \lt 1 \,. }[/math]

The basic iterative methods work by splitting the matrix [math]\displaystyle{ A }[/math] into

[math]\displaystyle{ A = M - N }[/math]

and here the matrix [math]\displaystyle{ M }[/math] should be easily invertible. The iterative methods are now defined as

[math]\displaystyle{ M \mathbf{x}^{k+1} = N \mathbf{x}^k + b \,, \quad k\geq0\,. }[/math]

From this follows that the iteration matrix is given by

[math]\displaystyle{ C = I - M^{-1}A = M^{-1}N\,. }[/math]

Examples

Basic examples of stationary iterative methods use a splitting of the matrix [math]\displaystyle{ A }[/math] such as

[math]\displaystyle{ A = D+L+U\,,\quad D := \text{diag}( (a_{ii})_i) }[/math]

where [math]\displaystyle{ D }[/math] is only the diagonal part of [math]\displaystyle{ A }[/math], and [math]\displaystyle{ L }[/math] is the strict lower triangular part of [math]\displaystyle{ A }[/math]. Respectively, [math]\displaystyle{ U }[/math] is the strict upper triangular part of [math]\displaystyle{ A }[/math].

Linear stationary iterative methods are also called relaxation methods.

Krylov subspace methods

Krylov subspace methods work by forming a basis of the sequence of successive matrix powers times the initial residual (the Krylov sequence). The approximations to the solution are then formed by minimizing the residual over the subspace formed. The prototypical method in this class is the conjugate gradient method (CG) which assumes that the system matrix [math]\displaystyle{ A }[/math] is symmetric positive-definite. For symmetric (and possibly indefinite) [math]\displaystyle{ A }[/math] one works with the minimal residual method (MINRES). In the case of non-symmetric matrices, methods such as the generalized minimal residual method (GMRES) and the biconjugate gradient method (BiCG) have been derived.

Convergence of Krylov subspace methods

Since these methods form a basis, it is evident that the method converges in N iterations, where N is the system size. However, in the presence of rounding errors this statement does not hold; moreover, in practice N can be very large, and the iterative process reaches sufficient accuracy already far earlier. The analysis of these methods is hard, depending on a complicated function of the spectrum of the operator.

Preconditioners

The approximating operator that appears in stationary iterative methods can also be incorporated in Krylov subspace methods such as GMRES (alternatively, preconditioned Krylov methods can be considered as accelerations of stationary iterative methods), where they become transformations of the original operator to a presumably better conditioned one. The construction of preconditioners is a large research area.

History

Jamshīd al-Kāshī used iterative methods to calculate the sine of 1° and π in The Treatise of Chord and Sine to high precision. An early iterative method for solving a linear system appeared in a letter of Gauss to a student of his. He proposed solving a 4-by-4 system of equations by repeatedly solving the component in which the residual was the largest[citation needed].

The theory of stationary iterative methods was solidly established with the work of D.M. Young starting in the 1950s. The conjugate gradient method was also invented in the 1950s, with independent developments by Cornelius Lanczos, Magnus Hestenes and Eduard Stiefel, but its nature and applicability were misunderstood at the time. Only in the 1970s was it realized that conjugacy based methods work very well for partial differential equations, especially the elliptic type.

See also

References

  1. Amritkar, Amit; de Sturler, Eric; Świrydowicz, Katarzyna; Tafti, Danesh; Ahuja, Kapil (2015). "Recycling Krylov subspaces for CFD applications and a new hybrid recycling solver". Journal of Computational Physics 303: 222. doi:10.1016/j.jcp.2015.09.040. Bibcode2015JCoPh.303..222A. 

External links