NNLS (Lawson-Hanson) method in linearized models
LSI & NNLS LSI = Least square with linear equality constraints NNLS = nonnegative least square
Flowchart
Initial conditions Sets Z and P Variables indexed in the set Z are held at value zero Variables indexed in the set P are free to take values different from zero Initially and P:=NULL
Flowchart
Stopping condition Start of the main loop Dual vector Stopping condition: set Z is empty or
Flowchart
Manipulate indexes Based on dual vector, one parameter indexed in Z is chosen to be estimated Index of this parameter is moved from set Z to set P
Flowchart
Compute subproblem Start of the inner loop Subproblem where column j of E p
Flowchart
Nonnegativity conditions If z satisfies nonnegativity conditions then we set x:=z and jump to stopping condition else continue
Flowchart
Manipulating the solution x is moved towards z so that every parameter estimate stays positive. Indexes of estimates that are zero are moved from P to Z. The new subproblem is solved.
Testing the algorithm Ex. Values of polynomial are calculated at points x=1,2,3,4 with fixed p 1 and p 2. Columns of E hold the values of polynomial y(x)=x and polynomial at points x=1,2,3,4. Values of p 1 and p 2 are estimated with NNLS.
nnls_test 0.1 (c) 2003 by Turku PET Centre Matrix E: Vector f: Result vector:
nnls_test 0.1 (c) 2003 by Turku PET Centre Matrix E: Vector f: Result vector:
nnls_test 0.1 (c) 2003 by Turku PET Centre Matrix E: Vector f: Result vector:
nnls_test 0.1 (c) 2003 by Turku PET Centre Matrix E: Vector f: Result vector: e
Kaisa Sederholm: Turku PET Centre Modelling report TPCMOD