Power iteration is an iterative method for approximating a dominant eigenvalue and a corresponding eigenvector of a square matrix. It is one of the simplest eigenvalue algorithms in numerical linear algebra.
The method applies the matrix repeatedly to a vector:
If one eigenvalue has strictly larger magnitude than all the others, repeated multiplication by amplifies the component in that dominant eigendirection. After normalization, the vector sequence tends toward a dominant eigenvector. The eigenvalue can then be estimated by a scalar quotient such as the Rayleigh quotient. Power iteration is simple and may converge slowly, but it is effective for large sparse or matrix-free problems because each step mainly requires one matrix-vector product.
93.1 Dominant Eigenvalue
Let
An eigenpair of is a scalar and a nonzero vector satisfying
An eigenvalue is called dominant if
for every other eigenvalue .
The power method is designed to approximate this dominant eigenvalue and an associated eigenvector.
93.2 Basic Idea
Suppose has eigenvectors
with eigenvalues
ordered so that
Suppose the initial vector has a nonzero component in the direction of . Then
Applying gives
Factor out the dominant term:
Since
for , the non-dominant terms decay relative to the dominant term.
This is the mechanism behind power iteration.
93.3 Normalization
Directly computing
is numerically unsafe. The vector may grow without bound or underflow toward zero.
Power iteration normalizes after each multiplication.
A standard form is:
The normalization keeps the vector at manageable scale.
It does not change the direction of the vector.
Since eigenvectors are defined only up to nonzero scalar multiples, preserving direction is sufficient.
93.4 Basic Algorithm
Choose an initial nonzero vector
For
compute
Normalize:
Estimate the eigenvalue using the Rayleigh quotient:
If is normalized, this reduces to
The Rayleigh quotient converges to the dominant eigenvalue when the vector converges to the corresponding eigenvector.
93.5 Pseudocode
power_iteration(A, x, tol, max_iter):
x = x / norm(x)
for k = 0 to max_iter - 1:
y = A * x
if norm(y) == 0:
error "zero vector encountered"
x_new = y / norm(y)
lambda_new = dot(x_new, A * x_new) / dot(x_new, x_new)
r = A * x_new - lambda_new * x_new
if norm(r) <= tol:
return lambda_new, x_new
x = x_new
return lambda_new, xThe residual
measures how close is to an eigenpair.
93.6 Example
Consider
The eigenvalues are
The dominant eigenvalue is
Let
Then
Next,
Then
After normalization, the direction approaches
which is the eigenvector associated with .
The second component becomes negligible relative to the first because
decays to zero.
93.7 Convergence Rate
The convergence rate is controlled by the ratio
If this ratio is small, convergence is fast.
If this ratio is close to , convergence is slow.
For example:
| Ratio | Behavior |
|---|---|
| fast convergence | |
| moderate convergence | |
| slow convergence | |
| no spectral separation |
Power iteration converges geometrically under the usual assumptions, with rate governed by the dominant eigenvalue gap.
93.8 Spectral Gap
The spectral gap is the separation between the dominant eigenvalue and the remaining eigenvalues.
For power iteration, the important quantity is often not the difference
but the ratio
A large gap means
is small.
A small gap means the ratio is close to .
The method becomes slow when the dominant eigenvalue is only slightly larger in magnitude than the next eigenvalue.
93.9 Sign and Phase Behavior
If the dominant eigenvalue is positive, the normalized iterates often converge directly to a dominant eigenvector.
If the dominant eigenvalue is negative, signs may alternate:
The direction still converges, but the vector may alternate between and .
For complex eigenvalues, a phase factor may appear. The direction may converge in a projective sense even when the raw vector sequence does not converge in the ordinary sense.
93.10 Rayleigh Quotient
The Rayleigh quotient of a nonzero vector is
If is an eigenvector, then
so
Thus the Rayleigh quotient gives an eigenvalue estimate from an approximate eigenvector.
For symmetric matrices, the Rayleigh quotient has especially strong approximation properties.
93.11 Residual Test
Given an approximate eigenpair , the residual is
If
then is an exact eigenpair.
A practical stopping rule is
A relative version is
Residual-based stopping is more meaningful than stopping only when successive iterates change little.
93.12 Choice of Initial Vector
The initial vector must have a nonzero component in the dominant eigendirection.
If
is orthogonal to the dominant eigenvector in a way that removes the dominant component, power iteration cannot recover that component.
In practice, a random initial vector is often used. For ordinary finite-dimensional problems, a random vector has nonzero component in any fixed direction with probability one.
93.13 Failure Cases
Power iteration may fail or behave poorly in several cases.
| Case | Behavior |
|---|---|
| No unique dominant eigenvalue | may not converge to one direction |
| ( | \lambda_1 |
| Initial vector lacks dominant component | wrong invariant subspace |
| Defective matrix | convergence may be altered |
| Dominant complex pair | real iteration may oscillate or rotate |
| Non-normal matrix | eigenvalue behavior may be misleading |
The method is reliable only when its assumptions match the matrix.
93.14 Defective and Non-Diagonalizable Matrices
The cleanest convergence analysis assumes a diagonalizable matrix.
If is defective, the Jordan form contains nontrivial Jordan blocks. The power may contain polynomial factors in , not only powers of eigenvalues.
When a unique dominant eigenvalue exists, power iteration may still converge under suitable conditions, but the analysis is more delicate.
The diagonalizable case gives the main intuition.
93.15 Symmetric Matrices
For real symmetric matrices, power iteration has a simpler theory.
A symmetric matrix has an orthonormal eigenbasis. Therefore any initial vector can be expanded as
Then
Orthogonality removes many complications present in non-normal matrices.
Symmetric power iteration is therefore easier to analyze and often more numerically predictable.
93.16 Cost per Iteration
Each power iteration step mainly requires one matrix-vector product.
For a dense matrix,
costs
For a sparse matrix, the cost is approximately
The storage requirement is small:
| Object | Storage |
|---|---|
| Matrix | problem-dependent |
| Current vector | |
| Product vector | |
| Optional residual |
This low memory usage is one of the main strengths of the method.
93.17 Matrix-Free Power Iteration
Power iteration does not require direct access to all entries of .
It only requires a routine that computes
This is useful when is an operator rather than an explicitly stored matrix.
Examples include:
| Setting | Matrix-vector operation |
|---|---|
| graph algorithms | multiply by adjacency or transition matrix |
| PDE solvers | apply discretized differential operator |
| statistics | apply covariance matrix implicitly |
| machine learning | apply Hessian-vector product |
| web ranking | multiply by link transition matrix |
This is why power iteration remains relevant despite its simplicity.
93.18 PageRank Connection
PageRank can be interpreted as an eigenvector problem for a large transition matrix.
The target vector is a stationary distribution satisfying an equation of the form
where is a stochastic matrix modified by damping.
Power iteration is natural here because the matrix is enormous and sparse, and the main operation is repeated multiplication by the transition operator. Power iteration is historically associated with large sparse web matrices and PageRank-style computations.
93.19 Inverse Power Iteration
Power iteration finds the eigenvalue of largest magnitude.
Inverse power iteration applies power iteration to
The eigenvalues of are
Thus the largest eigenvalue of corresponds to the smallest magnitude eigenvalue of .
Each step requires solving
rather than multiplying by .
This is more expensive, but it targets small eigenvalues.
93.20 Shifted Inverse Iteration
To find an eigenvalue near a chosen shift , apply inverse iteration to
The eigenvalues of
are
The largest magnitude corresponds to the eigenvalue closest to .
Thus shifted inverse iteration can target interior eigenvalues, not only extremal ones. This shift idea is a standard extension of the power method.
93.21 Rayleigh Quotient Iteration
Rayleigh quotient iteration updates the shift dynamically using the Rayleigh quotient.
At step , set
Then solve
Normalize:
For symmetric matrices, this method can converge very rapidly when started sufficiently close to an eigenvector.
It is more expensive per iteration because it requires solving shifted linear systems.
93.22 Deflation
Power iteration gives one eigenpair.
To compute additional eigenpairs, one may use deflation.
For a symmetric matrix with normalized dominant eigenvector , define
Then removes the contribution of the first eigenpair.
Power iteration can then be applied to to find the next eigenpair.
Deflation must be used carefully because numerical errors in the first eigenvector can affect later eigenpairs.
93.23 Relation to Krylov Subspaces
Power iteration generates the sequence
These vectors span a Krylov subspace:
Power iteration uses only the newest vector. More advanced Krylov methods retain and orthogonalize several vectors from this sequence.
Thus Arnoldi and Lanczos may be viewed as more sophisticated descendants of power iteration.
93.24 Block Power Iteration
Block power iteration uses several starting vectors at once.
Let
Compute
Then orthonormalize the columns:
Block power iteration approximates an invariant subspace associated with the largest eigenvalues in magnitude.
It is useful when several leading eigenvectors are needed.
93.25 Practical Stopping Criteria
Common stopping rules include:
| Criterion | Form |
|---|---|
| Eigenpair residual | |
| Relative residual | |
| Eigenvalue change | ( |
| Direction change | |
| Maximum iterations |
The sign ambiguity in eigenvectors explains the use of
For negative dominant eigenvalues, consecutive normalized vectors may alternate signs.
93.26 Numerical Considerations
A practical implementation should account for:
| Issue | Handling |
|---|---|
| Overflow or underflow | normalize every step |
| Zero product | stop or change initial vector |
| Sign ambiguity | compare directions, not raw vectors |
| Slow convergence | use shift, inverse iteration, or Krylov methods |
| Sparse matrix | use sparse matrix-vector product |
| Non-normality | check residual, not only eigenvalue change |
| Multiple dominant eigenvalues | use block methods or Arnoldi |
The simplicity of power iteration makes it attractive, but its diagnostics must be chosen carefully.
93.27 Summary
Power iteration approximates the dominant eigenpair of a matrix by repeated multiplication and normalization:
The eigenvalue is commonly estimated by the Rayleigh quotient:
The method converges when there is a unique dominant eigenvalue and the starting vector has a nonzero component in its eigendirection. Its convergence rate is controlled by
Power iteration is simple, memory-light, and suitable for sparse or matrix-free problems. Its main weakness is slow convergence when the dominant eigenvalue is poorly separated from the rest of the spectrum.