qp() in Octave 3.0.0 returns result egregiously violating input constraints
Joshua Redstone
redstone at gmail.com
Thu Apr 3 23:16:12 CDT 2008
Hi all,
The quadratic programming solver qp() returns solutions that egregiously
violate the input constraints for certain inputs.
One input that induces this is about 100 variables, including constraints
that require the sum of the variables be one and each variable be greater
than zero, among other constraints.
With this input, qp() returns a solution in which some variables are set to
greater than 1e+13...
To help debug this, I modified qp.m to accept an argument specifying the
maximum number of iterations, and ran the qp() solver with the problematic
input, incrementally increasing the maximum number of iterations. As the
maximum number of iterations increases from 1 to 186, the solver returns
progressively better solutions, all feasible. When I run it with maximum
iterations set to 187, it returns an infeasible solution with variables set
to 1e+13 as mentioned above. As I increase the number of maximum iterations
further, the solutions returned get more extreme, with values growing to
1e+80 and on. In all cases, it returns an INFO struct that says the maximum
number of iterations was reached.
Anyone have suggestions for how to debug this further, or a fix?
I could write code to binary search over the maximum value of maxiter that
doesn't break qp(), but that would be...suboptimal. :)
Many thanks,
Josh
P.S. I'm running octave 3.0.0 on OSX 10.5.2
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://www.cae.wisc.edu/pipermail/bug-octave/attachments/20080403/3a4614d7/attachment.html
More information about the Bug-octave
mailing list