Non-negative least squares
Submitted by Hannes Matuschek
Assigned to Nobody
Link to original bugzilla bug (#655)
Description
Created attachment 380
NNLS implementation
I implemented the NNLS algorithm [1] for Eigen. It is not perfect yet but I think it could be included into the "unsupported" modules of Eigen.
One think that is definitely missing is a check that the Scalar type of the system is real as the NNLS problem is only defined on R^N and I do not know how to do this.
I have tested the code against some simple units test [2] so far and I used it for some larger problems where it produces reasonable results although I have not verified them against some other implementation.
Let me know if I can improve the implementation.
Hannes
[1] "SOLVING LEAST SQUARES PROBLEMS", by
Charles L. Lawson and Richard J. Hanson, Prentice-Hall, 1974
[2] http://www.turkupetcentre.net/reports/tpcmod0020_app_a.pdf
Attachment 380, "NNLS implementation":
nnls.h