HiGHS icon indicating copy to clipboard operation
HiGHS copied to clipboard

How good is the HiGHS condition estimate?

Open jajhall opened this issue 1 year ago • 3 comments

HiGHS uses the basis condition estimate in Hager84 . All that's required is five solves with each of B and B^T for a full RHS

The value is extracted using Highs::getKappa (see #1869)

Hager only tests on random matrices.

How accurate is it?

jajhall avatar Sep 23 '24 13:09 jajhall

The method by Hager84 (DOI: 10.1137/0905023) estimates the condition number with respect to the l_1 norm. Out of curiosity: Is that what we need?

HighamTisseur2000 (DOI: 10.1137/S0895479899356080, eprint) propose a modification of Hager's algorithm, which is also implemented in LAPACK. Furthermore, the authors also refer to other estimators including that by Cline, Moler, Stewart, and Wilkinson available in LINPACK. @jajhall Concerning the accuracy on page 1185 Higham and Tisseur write "The LINPACK and LAPACK estimators both produce estimates that in practice are almost always within a factor 10 and 3, respectively, of the quantities they are estimating.". They provide references for these results, which might also be of interest, and there are also further discussions on the accuracy in the paper.

kbrix2000 avatar Sep 26 '24 17:09 kbrix2000

The 1-norm (or \infty-norm) is all that's required

Thanks for the other references. I'll stick with the Hager estimate for now, particularly if more extensive experiments show it to be accurate enough. However, as a NLA fan, I'll be sure to look at the others sometime!

jajhall avatar Sep 27 '24 05:09 jajhall

Ok, just let me know if I can help.

kbrix2000 avatar Sep 27 '24 05:09 kbrix2000