Skip to main content

Hierarchical Optimization Tolerance Issue

Answered

Comments

2 comments

  • Riley Clement
    Gurobi Staff Gurobi Staff

    Hi Eike,

    This is a bit of a tricky one.  If you look at the docs for setObjectiveN you will see the abstol and reltol parameters refer to ObjNAbsTol and ObjNRelTol respectively.  In the docs for ObjNAbsTol we find the following:

    Objective degradations are handled differently for multi-objective LP models. For LP models, solution quality for higher-priority objectives is maintained by fixing some variables to their values in previous optimal solutions. These fixings are decided using variable reduced costs. The value of the ObjNAbsTol parameter indicates the amount by which a fixed variable’s reduced cost is allowed to violate dual feasibility. The value of the related ObjNRelTol attribute is ignored.

    So it is expected that the reltol parameter is ignored in setObjectiveN.  I think we will make this more clear in the docs.

    Note that if you add a dummy integer variable to your problem, then this will cause the solver to handle the problem like a MILP, and the reltol parameter can be used.

    - Riley

     

    1
  • Eike Niehs
    First Comment
    First Question
    Gurobi-versary

    Hi Riley,

    Thanks for making this clear. For now, I am using a dummy integer (binary) variable. Surprisingly, this also significantly improves the runtime of my manually implemented hierarchical approach.

    Cheers,
    Eike

    0

Please sign in to leave a comment.