Analysis of a Classical Matrix Preconditioning Algorithm
- Creators
- Schulman, Leonard J.
- Sinclair, Alistair
Abstract
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 & 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 max_i | log(a_i^(out)/a_i^(in))|, where a_i^(out), a_i^(in) are the maximum entries in magnitude in the ith row and column, respectively.) This bound is tight up to the log n factor. A balancing operation scales the ith 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 O(n^2m). 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.
Additional Information
© 2017 ACM. Received December 2015; revised November 2016; accepted January 2017. L. J. S. was supported in part by NSF grants 1038578, 1319745, and 1618795 and by the Simons Institute for the Theory of Computing, where most of this work was performed. A. S. was supported in part by NSF grants 1016896 and 1420934. A preliminary version of this work, with weaker results, appeared in STOC'15 [Schulman and Sinclair 2015a].Additional details
- Eprint ID
- 78217
- DOI
- 10.1145/2988227
- Resolver ID
- CaltechAUTHORS:20170614-151934720
- CCF-1038578
- NSF
- CCF-1319745
- NSF
- CCF-1618795
- NSF
- Simons Institute for the Theory of Computing
- CCF-1016896
- NSF
- CCF-1420934
- NSF
- Created
-
2017-06-14Created from EPrint's datestamp field
- Updated
-
2022-10-04Created from EPrint's last_modified field