Decision Optimization

 View Only
Expand all | Collapse all

Valid inequalities without callback

  • 1.  Valid inequalities without callback

    Posted Mon November 29, 2021 11:34 AM

    I am using Cplex 20.1 with the Python API to solve a MILP model. 

    I have a set of valid inequalities to strenghten the lower bound (but this does not change the set of feasible solutions).

    As this is a small set of inequalities (of linear size) I add them frontally to the model, without the use of any callback.
    However, I observe that using these inequalities seems to slow down the convergence, apparently because the primal bound is worse in this case.

    I was wondering if when adding a constraint to the model, it was possible to indicate to Cplex that this constraint is added only for dual bound strenghtening  (so that the primal heuristics are not impacted).
    Can I do that without using a UserCut callback ? Should I use a Generic callback ?
    I am under the impression that it is more efficient to avoid callbacks whenever possible.

    Thanks a lot for any advice on this!

    Ccl _

  • 2.  RE: Valid inequalities without callback

    Posted Mon November 29, 2021 01:34 PM
    I don't know if it will help, but an easy experiment to try would be to add the inequalities to the model as lazy constraints.

    Paul Rubin
    Professor Emeritus
    Michigan State University