Decision Optimization

Decision Optimization

Delivers prescriptive analytics capabilities and decision intelligence to improve decision-making.


#Analytics
#DecisionOptimization
#DecisionOptimization
 View Only
  • 1.  Warm starting an MIP problem after changing 1 coefficient

    Posted 02/20/13 10:49 PM

    Originally posted by: BerkUstun


    I am currently working on a MIP problem that cannot usually be solved to optimality.

    As it turns out, the problem is parametrized according to a penalty parameter which affects only 1 coefficient in the objective term - and I have to solve the problem for different values of this parameter.

    If this were an LP problem, I know that it would be easy to quick change a parameter and resolve the problem accordingly... In fact since the problem would be solved to optimality, there would be a lot of sensitivity analysis results that could be applied to the problem.

    I am wondering whether there will be a warm start effect associated with my problem if I 1) solve the MIP for a single value of the penalty parameter 2) change the value of the parameter repeatedly and resolve. If so, what are the methods that I should be using?
    #CPLEXOptimizers
    #DecisionOptimization


  • 2.  Re: Warm starting an MIP problem after changing 1 coefficient

    Posted 02/21/13 01:50 AM

    Originally posted by: SystemAdmin


    What you are looking for is called a MIP start.
    In your case CPLEX should already use MIP starts automatically: it keeps all solutions it finds as a MIP start for a potential next run. When the second solve is started you should see log messages like
    MIP start 'm1' defined solution with objective ...
    

    This shows that CPLEX used a solution from a previous run as warm start for this solve.
    In your case you could also try to record the cuts that CPLEX finds (this can only be done with the callable library and is described in several threads on this Forum) and explicitly add them to the second problem. If that will improve performance highly depends on the problem data.
    Or you could try to at least query the number of cuts of each type (there are functions to do that) and disable in the second run those types of cuts for which CPLEX did not find/use any cuts in the first run. Again, the effect of this may be problem dependent.
    #CPLEXOptimizers
    #DecisionOptimization


  • 3.  Re: Warm starting an MIP problem after changing 1 coefficient

    Posted 02/21/13 03:05 AM

    Originally posted by: BerkUstun


    Thanks for the detailed answer as always!
    #CPLEXOptimizers
    #DecisionOptimization