Strange behavior in bintprog

I'm running into a strange issue for bintprog for the following example.
A = [1000 0; 0 1000]
[xx] = bintprog(zeros(2,1),-1*A,-100*ones(2,1))
Optimization terminated.
xx =
1
1
^ this works but if either entry becomes large, the optimization is infeasible, for example:
A = [1000 0; 0 4000000]
[xx] = bintprog(zeros(2,1),-1*A,-100*ones(2,1))
The problem is infeasible.
xx =
0
0
Does anyone know what I'm doing wrong?
Thanks!

3 commentaires

Matt J
Matt J le 21 Mai 2013
Does it still happen if you do
[xx] = bintprog(zeros(2,1),-1*A,-100*ones(2,1),[],[],[1;1])
Zhe
Zhe le 21 Mai 2013
Modifié(e) : Zhe le 21 Mai 2013
It works when I do that.
I submitted a bug report for the time being.
Zhe
Zhe le 21 Mai 2013
After contacting technical support, the problem was that the default tolerance value was not high enough, by setting a smaller tolerance, the optimization will work:
option = optimset('TolRLPFun',1e-9);
[xx] = bintprog(zeros(2,1),-1*A,-100*ones(2,1),[],[],[],option)

Connectez-vous pour commenter.

Réponses (0)

Question posée :

Zhe
le 21 Mai 2013

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by