How to Warmstart LP relaxations within MIP Gurobi solver ?
AnsweredHi,
I have a heuristic that generates a feasible LP solution and want to use such generated feasible solutions to warmstart the LP relaxations (at every node) within the MIP gurobi (I am using gurobipy) solver.
The goal here is to evaluate the performance of solving MIP with vs. without warmstarting the LP relaxations.
Is it possible to implement this as a callback ? I'm new to Gurobi, and would highly appreciate any feedback.
-
I am unaware of a way to do this.
Nonetheless, it seems unlikely to me that this would be beneficial in performance. Solving LP relaxations in the the branch and bound nodes are usually quite fast as they are somewhat warm-started by previous LP relaxations in the tree. Your heuristic would have to be really fast, provide better results than the Gurobi's warm-start strategy and be able to set your warm-start LP into Gurobi's data-structure really fast.This is my reasoning, but maybe someone can provide a different point of view.
0 -
Hi Michel and Kamal,
Thanks Michel! Your point is valid. The dual simplex method is often used by default to solve the node relaxation problems. The dual simplex is chosen as default because the optimal basis of the parent node remains dual feasible after branching and it can be used as a warm start when solving the relaxation model in a child node.
It is worth mentioning that we also do not support warm-starting the root-relaxation of a MIP problem because of the presolve. The MIP presolve does not preserve duality and there is no way to map a dual solution in the original space to a solution in the presolved space.
Best regards,
Maliheh
0 -
Thank you Michel and thank you Maliheh.
0
Please sign in to leave a comment.
Comments
3 comments