How to program a pure Branch & Bound
AnsweredHi,
I would like to solve a MIP using only the branch & bound feature (i.e. without all the enhancements that speed up the solving like running heuristics at each node, adding cuts etc.). The idea is to be able to test the impact of my own cuts without the results being biased by the cuts and the various improvements of Gurobi on the branch & bound.
I have already disabled many things but the root relaxation is still better than the objective value I get when I run my MIP with all integrity constraints relaxed meaning that Gurobi is still improving the branch & bound by any means.
I set the following paramaters (using the shell interactive):
m.Params.Cuts=0
m.Params.Heuristics=0
m.Params.Presolve=0
m.Params.Symmetry=0
What am I missing?
Thanks in advance for any help.
Helene
-
Official comment
This post is more than three years old. Some information may not be up to date. For current information, please check the Gurobi Documentation or Knowledge Base. If you need more help, please create a new post in the community forum. Or why not try our AI Gurobot?. -
Hi Helene,
There is no way to completely turn off all features in Gurobi's B&B algorithm. Thus it is very unlikely to achieve a "vanilla B&B" in Gurobi. However, you can come close via setting:
Cuts 0
Heuristics 0
RINS 0
Presolve 0
Aggregate 0
Symmetry 0
Disconnected 0Then there is branching variable selection VarBranch, branching direction BranchDir, and node selection which cannot be controlled via parameters. I am not sure which setting would fit a "vanilla B&B". Altogether, it is not possible to "downgrade" Gurobi to a pure B&B textbook algorithm.
Best regards,
Jaromił0 -
Hi Jaromił,
Thanks a lot for your prompt answer.
Best regards,
Helene
0
Post is closed for comments.
Comments
3 comments