Algorithm for solving the non-negative least squares problem.