Skip to main content

Presolve in Gurobi 10 vs Gurobi 9

Answered

Comments

1 comment

  • Jaromił Najman
    • Gurobi Staff

    Hi Manuel,

    It may happen for particular models that the performance gets worse when upgrading to a new version.

    In your case however, it looks like the performance difference is connected to the large coefficient ranges.

    The range of the coefficients in your quadratic constraints is

    QObjective range [8e-06, 9e+10]

    These are 16 order of magnitude of difference and is terrible from a numerical point of view. Such big coefficient differences may lead to any spurious behavior. For example, a factorization may be good or bad depending on the 16th overall digit. Given normal double machine precision of 16 digits, this means that the quality of the optimization process may drastically depend on the underlying elementary numerical operations.

    In your particular case, it looks like v9.5.2 got a bit more lucky with numerics and can converge faster. This makes sense as we tried to make the numerical behavior of v10 more robust.

    I would strongly recommend to try to re-scale the quadratic part of your model. You can find more details in our Guidelines for Numerical Issues.

    Best regards, 
    Jaromił

    0

Please sign in to leave a comment.