Skip to main content

Lack of progress in Best Bound past a certain point and no termination for MINLP

Answered

Comments

6 comments

  • Maliheh Aramon
    Gurobi Staff Gurobi Staff

    Hi Benoit, 

    I see you have already set the FuncNonlinear parameter to 1 to address nonlinear constraints using the dynamic outer-approximation approach. 

    The common parameters used to speed up the progress of the best bound include:

    The log you attached indicates that the model might be infeasible. Proving infeasibility can be as hard as proving optimality.

    • It wouldn't hurt if you look at solving the piecewise linear approximation of your model using the default value of the FuncNonlinear parameter (0). The solution quality might be acceptable to you.
    • Another general recommendation when solving nonlinear problems is to define the tightest possible lower and upper bounds for the variables participating in nonlinear constraints. 
    • The model numerics does not look great. The linear constraints' coefficients span a range as wide as 11 orders of magnitude. Setting the ScaleFlag parameter to 2 is another idea that you can try.

    Best regards,

    Maliheh

    0
  • Benoit Chachuat
    First Comment
    First Question

    Maliheh,

    Many thanks for sharing your thoughts, much appreciated. 

    In response to your comments/suggestions:

    • We did also look at solving our models with piecewise linear approximations of the nonlinear terms (FuncNonlinear=0) and the same behaviour is observed (no termination)
    • It is true that a handful of constraints have coefficients that are very small in magnitude (1e-9), these are physical parameters in our models so hard to change. Increasing the NumericFocus value doesn't change the behaviour though.
    • We can also confirm that this model is feasible - we can obtain feasible solutions by running a local solver prior to calling Gurobi (which Gurobi accept as incumbent when we pass them as guess). But the same behaviour remains for the Best Bound progress regardless.

    Best regards,
    Benoit

    0
  • Jaromił Najman
    Gurobi Staff Gurobi Staff

    Hi Benoit,

    The MINLP feature is very fresh so there is still a lot of space for improvement.

    Could you please share the model? Hopefully, we can find something to improve. Note that uploading files in the Community Forum is not possible but we discuss an alternative in Posting to the Community Forum.

    If you cannot share the file in a public way, please open a ticket to share if this is acceptable.

    Best regards, 
    Jaromił

    0
  • Benoit Chachuat
    First Comment
    First Question

    Hi Jarek,

    Thanks for this. Here's a Dropbox link to the model (lp file): https://www.dropbox.com/scl/fi/k65es1agx04q2oqskeari/canon.lp?rlkey=4cggw637motn4f03l29hp7unh&dl=0

    We can also confirm that this model is feasible, with an incumbent at 0.33403 (which we also believe to be the optimal solution value).

    Best regards,

    Benoit

    0
  • Jaromił Najman
    Gurobi Staff Gurobi Staff

    Thank you for sharing Benoit.

    The current version cannot find any feasible point to this issue. We are working on improving this for MINLPs in the next release. The dual bound is then another story, but without a feasible point, improving the dual bound (quickly) is difficult. I don't think that there is any parameter or workaround that would help in this case with v11. Maybe a combination of an external local solver for feasible points + Gurobi for the dual bound might work. Otherwise, I am afraid that the only way for now is to either wait for v12 or try a different solver.

    If that's OK you could also share the feasible point you found. This should give a hint to what can be improved on the dual bound side.

    Best regards, 
    Jaromił

    0
  • Benoit Chachuat
    First Comment
    First Question

    Hello again Jarek,

    Many thanks for the heads-up. Here is a link to the MIP start file: https://www.dropbox.com/scl/fi/8rh21g2zqaqbt4zbjp8es/canon.mst?rlkey=3dpicay6mmyahfoulg49upzy2&dl=0

    Please don't hesitate to be in touch with us.

    Best,
    Benoit

    0

Please sign in to leave a comment.