Iterative Algorithms
What Are Iterative Algorithms?
Iterative algorithms are computational procedures that produce a sequence of progressively refined approximations to a desired solution by applying a fixed update rule repeatedly, using the output of one step as the input to the next. The process continues until a convergence criterion is met, such as the residual falling below a prescribed tolerance, the change between successive iterates becoming negligibly small, or a maximum step count being reached. Iterative algorithms stand in contrast to direct methods, which solve a problem in a bounded number of arithmetic operations determined entirely by the problem size. For large-scale scientific and engineering problems, iterative approaches are often the only practical option because direct methods require memory and computation proportional to powers of the problem dimension that become infeasible for systems with millions or billions of degrees of freedom.
The study of iterative algorithms spans numerical analysis, optimization theory, machine learning, and combinatorial computation. What unifies these areas is the repeated-refinement structure and the need to characterize how quickly, and under what conditions, the generated sequence reaches an acceptable approximation.
Linear System Solvers
A large and practically important class of iterative algorithms addresses systems of linear equations of the form Ax = b, where A is a large sparse matrix. Stationary iterative methods such as Jacobi iteration, Gauss-Seidel, and successive over-relaxation (SOR) split the matrix A into simpler components and sweep through the variables repeatedly, each sweep reducing the residual. These methods are simple to implement but can converge slowly when A is ill-conditioned.
Krylov subspace methods, including the Conjugate Gradient method for symmetric positive-definite systems and GMRES for general nonsymmetric systems, build a search space from successive matrix-vector products and minimize the residual over that space at each step. They achieve faster convergence and are the methods of choice in computational fluid dynamics, structural mechanics, and electromagnetics, where the sparse matrices arise from finite element and finite difference discretizations. Preconditioning, which applies an approximate inverse to A before iteration, is essential for achieving fast convergence in practice and is an active research area in scientific computing. The SIAM Journal on Scientific Computing analysis of iterative refinement demonstrates how multi-precision iterative refinement extends this framework to achieve full double-precision accuracy even for severely ill-conditioned problems.
Optimization and Learning Algorithms
Gradient descent and its variants are perhaps the most widely deployed iterative algorithms in contemporary computing. In gradient descent, each iteration updates a parameter vector by moving a small step in the direction opposite to the gradient of a loss function. Stochastic gradient descent (SGD) approximates the true gradient using a randomly sampled mini-batch of data, making each iteration cheap enough to apply to datasets containing billions of examples. Momentum, adaptive learning-rate methods such as Adam, and second-order quasi-Newton methods such as L-BFGS are all iterative algorithms that accelerate convergence by incorporating information from previous steps.
These optimization algorithms underpin training procedures for neural networks, support vector machines, logistic regression, and virtually every other parametric machine learning model. The ScienceDirect overview of iterative techniques in engineering surveys how iterative optimization methods are applied across simulation, design, and learning tasks.
Convergence Analysis and Stopping
Characterizing when and how fast an iterative algorithm converges is the central theoretical task in this field. The order of convergence, the spectral properties of the iteration matrix, and the sensitivity of the method to the initial estimate all determine practical performance. The ScienceDirect reference on iterative convergence outlines the residual-based and energy-norm criteria most commonly used to define and verify convergence in engineering simulations.
Applications
Iterative algorithms have applications in a wide range of disciplines, including:
- Computational physics and engineering simulation, where Krylov solvers handle large sparse linear systems from partial differential equation discretizations
- Deep learning, where stochastic gradient-based iterative optimizers train neural networks on large datasets
- Image reconstruction and compressed sensing, where iterative algorithms recover images from incomplete or noisy measurements
- Power systems, where load-flow solvers such as Newton-Raphson iteratively compute steady-state voltages and currents across transmission networks
- Cryptography and number theory, where iterative primality-testing and factoring algorithms underpin public-key infrastructure