Dear members, I have a MIP mathematical model, I want to solve it for many times. For example, the model is Min CX s.t. AX<=B After each iteration, the parameter B is changed. I do not want the new model to solve again. I know the solution can be found from the previous branch and bound tree. How can I use the previous branch and bound tree and nodes for the new problem? asked 14 Aug '14, 06:26 hkarimi 
In general, you can't use the previous branch and bound tree and nodes for this modified problem. Depending on the change in B, there's no way to be sure that the new problem is even integer feasible or that any of the previous integer solutions are still feasible. answered 14 Aug '14, 09:02 Brian Borchers 
Do you have a choice over the order in which you will use the B vectors? That is, are they known in advance? If so, you could work from the most constraining values in every dimension and progressively make less constraining (say, to B'). That way, your initial X values would be feasible (AX <= B <= B') to the subsequent problems, and you could potentially reuse the X values to insert a strongly feasible solution into the subsequent problems. You may want to check CPLEX documentation for "warm start" information. answered 14 Aug '14, 10:55 AndyT Dear Andy, I do not know the B vector value. Its value is determined after each problem. Thanks for the "warm start" keyword.
(14 Aug '14, 12:32)
hkarimi

If the previous found solutions in the solution pool is still feasible, you should make sure your solver is either reusing them or is trying to repair them. You might also be able to use your knowledge about the problem to fix infeasibilities (if any).
Dear Jensen, Thanks, How can I use the previous solution pool? Is there any syntax in CPLEX to work with the solution pool?
I am not a cplex expert, but I assume they reuse the solutions in the pool by default. You can make the changes after the first solve, then check the solution quality of the previous found solutions to see if they stay feasible and with wich objective. Then check if it's consists with the upper bounds from the log output you see from the second run. It's also a good idea to ask in cplex support for pointers on this, they know best :)