[Cbc] [CBC] Solving partially fixed MIP problem iteratively do not converge to best

mg giunto.cardanico at gmail.com
Tue Feb 25 09:22:59 EST 2014


Hi all,
I have a difficult mixed-integer problem to solve so, to try to speed the
solving process, I'm using this approach :

0 - store the original column bounds
1 - fix some column by fixing their bounds
2 - solve (through callCBC) by limiting the number of nodes
3 - restore the original column bounds
4 - if a new better solution has been found go to (1), otherwise continue
to (5)
5 - restore the original column bounds
6 - solve to integrality through callCBC (it usually starts from a much
better solution and takes much less time)

Note:
 - the cbcmodel object is alwasy the same, I just restore the original
bounds and node limit after each solve.
 - I don't call reset model before each solve otherwise the stored
solutions will be deleted

This seems to work fine, but when the final solve terminates, it states
that the optimal solution has been found even if this solution is worse
than the real optimum (I have verified it)

I suspect that restoring only the column bounds between each intermediate
solve is not enough to guarantee that the problem remains equal to the
original...
should I also remove the cuts added during the intermediate steps ?
Something else ?

Thanks in advance,
Marco
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/cbc/attachments/20140225/20ab8d2e/attachment.html>


More information about the Cbc mailing list