Adam Florence
Research
Weighted Least Squares

The weighted least squares problem is: Given the m-by-n matrix A, the m-by-m diagonal and positive matrix W, and the m-vector b, find the n-vector x which minimizes
|| W-1/2 ( b - A x ) ||2
We are concerned with the case where A is a Kronecker product, A = C kron D. Normal (un-weighted) least squares problems on Kronecker products can be solved quickly. However, the presence of the weighting matrix seems to block any such fast algorithm.

Our algorithm solves the weighted least squares problem iteratively, and is explained in [1, 2]. The Matlab code is given below. It is also available as a zip file.

There is no warranty of any kind on this code or its documentation. All code is copyrighted (c) 2000, 2001 by Adam Florence.

Our algorithm is approximately cubic in the size of the matrices C and D. Had the Kronecker strucutre been ignored, flops sextic in the size of the matrices C and D would have been required.

If you have any questions about the code, please e-mail me.


Bibliography
  1. FLORENCE, ADAM G. Computational Multilinear Algebra, Ph.D. thesis, Cornell University, 2001.
  2. FLORENCE, ADAM G. and CHARLES F. VAN LOAN. Least Squares Fitting with Kronecker Products, in preparation.

Back to my home page.

Last updated 13 August 2001.