octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: GSoC 2015: Optimization Package: Non-linear and constrained least sq


From: AsmaA
Subject: Re: GSoC 2015: Optimization Package: Non-linear and constrained least squares lsqcurvefit, lsqlin, lsqnonlin
Date: Thu, 21 May 2015 10:44:46 -0700 (PDT)

Hi Olaf,


Olaf Till-2 wrote
> In the future (GSoC?) quadprog and lsqlin should IMO be changed to
> directly call __qp__, not qp.m. Among other things this should make
> ordering of the 'lambda' output feasible.

I spent some time studying some quadratic programming basics (Lagrange
multipliers, KKT conditions, active set algorithm), qp.m and __qp__.cc to
see how lambda output is ordered.

I also checked a few different examples and compared the Lagrange
multipliers from both quadprog (MATLAB) and  qp (Octave).

quadprog returns Lagrange multipliers in a structure (with fields upper,
lower, eqlin, ineqlin) and the multipliers corresponding to the constraints
not provided are left empty.  

In qp, lambda is a column vector with Lagrange multipliers associated to the
constraints in the following order: equality constraints, lower bounds,
upper bounds and other inequality constraints.
The length of lambda vector output from qp depends on the number of
different constraints provided as  input. (more specifically, active
constraints- line 460 [1])
 
To put the multipliers in their respective fields in a structure, the
knowledge of inputs is required (size, inf check, etc.) and a function like
qp that does the input processing to call __qp__ can make such ordering
feasible. 

Have I got it right?

Kind Regards,
Asma.

[1]
http://octave.sourceforge.net/doxygen/html/da/dbd/____qp_____8cc_source.html








--
View this message in context: 
http://octave.1599824.n4.nabble.com/GSoC-2015-Optimization-Package-Non-linear-and-constrained-least-squares-lsqcurvefit-lsqlin-lsqnonlin-tp4668777p4670460.html
Sent from the Octave - Maintainers mailing list archive at Nabble.com.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]