All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Non-Negative Least Squares (NNLS) Module

Classes

class  Eigen::NNLS< MatrixType_ >
 Implementation of the Non-Negative Least Squares (NNLS) algorithm. More...
 

Detailed Description

This module provides a single class Eigen::NNLS implementing the NNLS algorithm. The algorithm is described in "SOLVING LEAST SQUARES PROBLEMS", by Charles L. Lawson and Richard J. Hanson, Prentice-Hall, 1974 and solves optimization problems of the form

minAxb22s.t.x0.

The algorithm solves the constrained least-squares problem above by iteratively improving an estimate of which constraints are active (elements of x equal to zero) and which constraints are inactive (elements of x greater than zero). Each iteration, an unconstrained linear least-squares problem solves for the components of x in the (estimated) inactive set and the sets are updated. The unconstrained problem minimizes ANxNb22, where AN is a matrix formed by selecting all columns of A which are in the inactive set N.