qp() in Octave 3.0.0 returns result egregiously violating input constraints

Ben Abbott bpabbott at mac.com
Sun Apr 6 16:37:47 CDT 2008


On Apr 6, 2008, at 5:11 PM, Gabriele Pannocchia wrote:
>
>> oppps ... sorry, I have no idea how to determine that. How might that
>> be done?
>
> Put a keyboard command in qp.m before line 273, i.e. right before the
> "__qp__" call and check:
> norm(A*x0-b)
> (which should be small)
> all(Ain*x0 > bin-tol)
> which should be 1 (these are all inequality constraints in the form
> required by __qp__)
>
> Gabriele
>

ok. I added the following lines just below the call to glpk

	eq_infeasible2 = (norm (A*x0-b) > rtol*(1+norm (b)))
	in_infeasible2 = (any (Ain*x0-bin < -rtol*(1+norm (bin))))

The result is

	eq_infeasible2 =  1
	in_infeasible2 =  1

fwiw, I get the same result using the default mercurial branch, where  
qp ultimately returns a non-divergent solution.

Ben


More information about the Bug-octave mailing list