Usage of the commande nnls(A,b,tol) in MATLAB new versions

2 次查看(过去 30 天)
Hello,
I want to solve the following non negative least squares problem : nnls(A,b,tol). Given a matrix A, a vector b and a tolerance tol, I want to fin x such ||A*x-b||^2 < tol* ||b||^2 with x>=0
Does someone have any idea how to do it in matlab ?
Regards !

回答(1 个)

Animesh
Animesh 2024-6-10
In MATLAB, you can solve a non-negative least squares (NNLS) problem using the 'lsqnonneg' function.
To read more about it, please refer to the following link - https://www.mathworks.com/help/matlab/ref/lsqnonneg.html
  2 个评论
Poulmdé
Poulmdé 2024-6-10
Thank you for your answer @Animesh
But I don't know how to use this 'lsqnonneg' with a tolerance imposed. Actually, I am not looking for the solution that minimizes the residual norm but the first one such that the residual fullfils the tolerance.
Thanks !

请先登录,再进行评论。

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by