Intlinprog does not retun integer solution
Show older comments
I'se setup a problem for intlinprog, solutions are constrained to be binary:
lb =
0 0 0 0 0 0 0 0 0
ub =
1 1 1 1 1 1 1 1 1
However this is what I get when I run intlingprog:
LP: Optimal objective value is 6.000000.
Optimal solution found.
Intlinprog stopped at the root node because the objective value is within a gap tolerance of the optimal value,
options.TolGapAbs = 0 (the default value). The intcon variables are integer within tolerance,
options.TolInteger = 1e-05 (the default value).
ans =
0.5000 0.5000 0 0 0.5000 0.5000 0 0 0
Which is clearly a not integer solution within the tollerance.
What am I missing?
1 Comment
Accepted Answer
More Answers (1)
Alan Weiss
on 6 Apr 2015
1 vote
Without seeing your intlinprog call, I can only guess that you neglected to include an intcon vector of the requisite length.
Alan Weiss
MATLAB mathematical toolbox documentation
2 Comments
Roberto
on 11 Apr 2015
As Alan guessed, you are interpreting intcon incorrectly. Setting intcon=18 means that you are requiring only x(18) to be integer-valued. You should really have
intcon=1:18;
Categories
Find more on Linear Programming and Mixed-Integer Linear Programming in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!