Dear All,<br><br>I have a large IP which I will be modifying constantly
(by adding/removing coulmns) and resolving after each modification. I
am trying to see if there is some way I could re-use the previous
solution to make each solve faster. The obvious problem is that by
adding and removing columns each time I have no way of guaranteeing
that the previous solution will still be feasible, let alone optimal.<br>

<br>I have experimented with the cbc example files (mostly
hotstart.cpp, modify.cpp and repeat.cpp). It would be ideal if I could
solve the problem, modify it and then re-use the previous solution in a
hotstart. My basic approach is:<br>

 - call model.initialSolve()<br> - call model.branchandbound()<br> - save the bestSolution array<br>
 - remove some columns from the reference solver<br> - add some columns to the reference solver<br> -
modify the bestSolution array accordingly (i.e. remove entries
corresponding to deleted columns and add zeros for new columns)<br>


 - call model.resetToReferenceSolver()<br> - call model.setHotstartSolution(<div>bestSolution)<br> - resolve using model.branchandbound()<br><br>However,
this approach does not seem to do anything particularly useful.
branchandbound() does not appear to do anything differently from what
it does when I do not use the hotstart solution.<br>

<br>Does &#39;hotstarting&#39; only work if the model remains unchanged (as in
hotstart.cpp)? Does anyone have any other suggestions? Your help is
greatly appreciated.<br><br>Thank you for your time,<br><font color="#888888"><br>Ed<br></font></div>