Mon 27 Mar 2017 09:57:12 PM UTC, comment #7:
No response. I believe this now works in dev withhout patching. Closing report.
|
Mon 13 Mar 2017 05:58:26 AM UTC, comment #6:
@Ben: Could you re-test your example from comment #4 on a current tip? It seems to work for me without any modification.
I think the original demonstration code from an e-mail to jwe contains an error. The qp function is invoked as
But the documentation is
I don't see a 6-input calling form which makes me think the example itself is bad rather than Octave.
|
Mon 13 Feb 2017 01:04:09 AM UTC, comment #5:
I haven't studied how qp() works and don't know if this is a proper solution, but it allows my example and jwe's to work.
(file #39748)
|
Sun 12 Feb 2017 08:39:55 PM UTC, comment #4:
I came across a bug introduced by Lacklan's changeset.
I'm attaching a simple script that triggers the error (something to do with the values of the upper bounds requiring an equality constraint).
I'm not familiar with glpk.m, qp.m, and sqp.m, but reversing the qp.m portion of Lacklan's changeset fixed the problem for me.
I'm re-opening and marking it as a regression.
Lacklan, any insight into this?
(file #39742)
|
Mon 08 Aug 2016 10:13:47 PM UTC, comment #3:
@Lachlan: I pushed your patch here http://hg.savannah.gnu.org/hgweb/octave/rev/20e0c0b8820c. This must have been one of the first patches you wrote since I corrected syntax things like using '%' as the comment character. Thanks for all the help with these old reports.
|
Sat 27 Feb 2016 05:23:14 AM UTC, comment #2:
There seem to be two problems here.
The clearest problem is that qp.m uses the wrong size matrices for C and the lower bound. From the comments in the code, Ain must have n columns (as it is multiplied by x), but a value of n-n_eq was being used.
I don't really understand the algorithm, so I can't confirm that that is the only bug, but since it is just changing the size of a vector of zeros or infinities, I assume that is the right fix.
Once that is fixed, qp returns an infeasible solution, and returns lambda=[]. This causes an error in sqp, so this patch sets lambda to its previous value if qp returns an infeasible solution. A warning is shown anyway, so the user knows not to trust the results; this just prevents an inexplicable error.
It would be great if someone who understands this code could check the changes.
(file #36487)
|
Fri 08 Nov 2013 09:38:30 PM UTC, comment #1:
The problem is still here in Octave 3.7.7+ (3851e5fde76d)
|
Tue 27 Mar 2012 03:28:12 PM UTC, original submission:
The following code
results in the error:
I found this bug report in an old set of messages that were never correctly posted to the -unavailable- mailing list.
Sorry for not posting it before now.
|