Re: [eigen] Re: LU precision tuning

[ Thread Index | Date Index | More Archives ]

Further thought:
since it's looking like exact rank computation is beyond the scope of
LU and QR, it might be that the really interesting thing to measure is
rather the "average error" or "standard deviation" or some other
statistical quantity.


2009/5/10 Benoit Jacob <jacob.benoit.1@xxxxxxxxx>:
> Hi,
> Thanks a lot for your results.
> It isn't looking well for guaranteed exact rank determination.
> Especially considering that your random matrices are still nice in the
> sense that your singular values (the diagonal matrix used to construct
> them) is 1,...,1,0,....,0 and it would be even much worse if one of
> the nonzero values here were small.
> We can't increase the value of 'precision' forever until we reach
> exact rank determination, as that decreases the accuracy of solving.
> So, after your results, I propose that we give up trying to guarantee
> exact rank determination with LU and QR: that probably wasn't very
> realistic and the right tool to approach that goal is rather the SVD.
> We can say that in the docs.
> If we do that, then the current formula "machine_epsilon * size" seems
> like a good compromise. We can also allow the user to pass a
> "precision" optional parameter in LU and QR, in other words just apply
> your patch, to allow the user to choose his own compromise.
> Cheers,
> Benoit
> 2009/5/10 Hauke Heibel <hauke.heibel@xxxxxxxxxxxxxx>:
>> Some more results including the related patch and code - this time the
>> tests include the QR decomposition.
>> After (hopefully) fixing (with Benoit's help) the creation of matrices
>> having a specific rank, I reran the tests. This time with increased
>> 'repeat' variable - I set it to 200. Due to the long time it takes, I
>> stopped at a matrix size of 512.
>> The results were not only run for LU but also QR and they indicate
>> that for LU our bound might be a bit too tight - especially for bigger
>> matrices. For QR on the other hand it still looks too noisy to infer
>> any formula.
>> The 'ups' from the log-file denotes a complete failure, i.e. for all
>> tested precisions in the range of [eps; eps*2^19] at least one out of
>> 200 tests failed.
>> - Hauke

Mail converted by MHonArc 2.6.19+