Loading…
Analysis of a Classical Matrix Preconditioning Algorithm
We study a classical iterative algorithm for balancing matrices in the L ∞ norm via a scaling transformation. This algorithm, which goes back to Osborne and Parlett 8 Reinsch in the 1960s, is implemented as a standard preconditioner in many numerical linear algebra packages. Surprisingly, despite it...
Saved in:
Published in: | Journal of the ACM 2017-06, Vol.64 (2), p.1-23 |
---|---|
Main Authors: | , |
Format: | Article |
Language: | English |
Subjects: | |
Citations: | Items that this one cites Items that cite this one |
Online Access: | Get full text |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Summary: | We study a classical iterative algorithm for balancing matrices in the
L
∞
norm via a scaling transformation. This algorithm, which goes back to Osborne and Parlett 8 Reinsch in the 1960s, is implemented as a standard preconditioner in many numerical linear algebra packages. Surprisingly, despite its widespread use over several decades, no bounds were known on its rate of convergence. In this article, we prove that, for any irreducible
n
×
n
(real or complex) input matrix
A
, a natural variant of the algorithm converges in
O
(
n
3
log (
n
ρ/ε)) elementary balancing operations, where ρ measures the initial imbalance of
A
and ε is the target imbalance of the output matrix. (The imbalance of
A
is |log(
a
i
out
/
a
i
in
)|, where
a
i
out
,
a
i
in
are the maximum entries in magnitude in the
i
th row and column, respectively.) This bound is tight up to the log
n
factor. A balancing operation scales the
i
th row and column so that their maximum entries are equal, and requires
O
(
m
/
n
) arithmetic operations on average, where
m
is the number of nonzero elements in
A
. Thus, the running time of the iterative algorithm is Õ(
n
2
m
). This is the first time bound of any kind on any variant of the Osborne-Parlett-Reinsch algorithm. We also prove a conjecture of Chen that characterizes those matrices for which the limit of the balancing process is independent of the order in which balancing operations are performed. |
---|---|
ISSN: | 0004-5411 1557-735X |
DOI: | 10.1145/2988227 |