A topic in the Open Knowledge Graph — a free, open map of 15,290 topics and the order to learn them in.

Successive Over-Relaxation (SOR)

Graduate Depth 74 in the knowledge graph ☐ I know this ☆ Set as goal
2topics build on this
305prerequisites beneath it
See this on the map →
Gauss-Seidel Method→→Convergence of Iterative Methods
sor over-relaxation iterative

Core Idea

SOR accelerates Gauss-Seidel by introducing a relaxation parameter ω: x_i(k+1) = (1-ω)x_i(k) + ω·(Gauss-Seidel step). For 0 < ω < 2, SOR can significantly reduce iterations needed for convergence. The optimal ω depends on the matrix eigenvalues; poor choice of ω can slow or even prevent convergence.

Explainer

From the Gauss-Seidel method, you know that solving Ax = b iteratively means updating each variable x_i in turn using the latest available values of the other variables. Gauss-Seidel converges faster than Jacobi because it uses fresh updates immediately, but for large sparse systems — especially those arising from discretized PDEs — even Gauss-Seidel can require thousands of iterations. SOR's insight is simple: if Gauss-Seidel is moving in the right direction, why not take a bigger step in that direction?

The relaxation parameter ω controls the step size. At each update, the SOR formula is x_i(k+1) = (1 − ω) x_i(k) + ω · x_iGS, where x_iGS is the Gauss-Seidel update. When ω = 1, you recover plain Gauss-Seidel. When ω > 1, you over-relax: you move past the Gauss-Seidel update by interpolating (or extrapolating) further in that direction, attempting to "leap" toward the solution. When ω < 1 (under-relaxation), you take a smaller step — useful for stabilizing a method that would otherwise diverge, though not the typical application of SOR.

Why does over-relaxation help? The convergence rate of iterative methods is governed by the spectral radius of the iteration matrix — the largest eigenvalue in absolute value. For Gauss-Seidel applied to problems with a known structure (like the five-point stencil for Laplace's equation on a rectangle), the spectral radius ρ is close to 1, meaning convergence is slow. The optimal SOR parameter is ω_opt = 2 / (1 + √(1 − ρ²)), which can reduce the spectral radius from something near 1 to something near 1 − O(h) where h is the grid spacing. In practice, this accelerates convergence by an order of magnitude: where Gauss-Seidel might need O(N²) iterations for an N × N grid, optimal SOR needs only O(N).

The critical challenge is choosing ω. The formula ω_opt requires knowing the spectral radius of the Gauss-Seidel iteration matrix, which is only analytically available for special matrix structures (those with a "Property A" and consistent ordering). For general matrices, ω must be estimated experimentally — by running a few iterations and observing the convergence rate — or by more sophisticated adaptive methods. Choosing ω poorly (say, ω > 2) causes divergence, since the SOR iteration is guaranteed to converge only for 0 < ω < 2. SOR laid the groundwork for understanding preconditioning and multigrid methods, which address the same slow-convergence problem through more powerful approaches.

Practice Questions 5 questions

Prerequisite Chain

Understanding Zero → The Number Zero → Counting to Five → Counting to 10 → Counting to 20 → Counting a Set of Objects Up to 20 → Cardinality: The Last Number Counted → Matching Numerals to Quantities → Subitizing Small Quantities → Addition Within 10 → Making 10 as an Addition Strategy → Addition Within 20 → Doubles and Near Doubles → Doubles Facts Within 10 → Near Doubles Facts Within 20 → Mental Math Strategies for Addition → Mental Math: Adding and Subtracting Tens → Addition Within 100 → Repeated Addition as Multiplication → Multiplication as Equal Groups → Multiplication: Arrays → Basic Multiplication Facts Through 10 → Multiplication Facts Within 100 → Division as Equal Sharing → Division as Grouping (Measurement Division) → Division: Grouping (Repeated Subtraction) Model → Division: Fair Sharing Model → Division as Equal Sharing → Division as Grouping → Basic Division Facts → Division Facts Within 100 → Multiplication and Division Fact Families → Relationship Between Multiplication and Division → Division Facts as Inverse of Multiplication → Remainders and Quotients in Division → Division Word Problems → Multi-Step Word Problems → Solving Multi-Step Word Problems → Multiplication Word Problems → Division Word Problems → Introduction to Long Division → Factors and Multiples → Prime and Composite Numbers → Equivalent Fractions → Relating Fractions and Decimals → Decimal Place Value → Integers and the Number Line → Opposites and Additive Inverses → Absolute Value → Adding Integers → Subtracting Integers → Multiplying Integers → Dividing Integers → Unit Rates → Proportions → Percent Concept → Converting Between Fractions, Decimals, and Percents → Operations with Rational Numbers → Two-Step Equations → Solving Multi-Step Equations → Equations with Variables on Both Sides → Literal Equations → Slope-Intercept Form → Point-Slope Form → Writing Linear Equations → Parallel and Perpendicular Line Slopes → Graphing Linear Equations → Systems of Equations — Graphing Method → Systems of Equations — Elimination Method → Systems of Three Variables → Matrices Introduction → Matrix Operations → Jacobi Iterative Method → Gauss-Seidel Method → Successive Over-Relaxation (SOR)

Longest path: 75 steps · 305 total prerequisite topics

Prerequisites (1)

Leads To (1)