jump-dev / HiGHS.jl

A Julia interface to the HiGHS solver
https://highs.dev
MIT License
96 stars 13 forks source link

Solution and incumbent are different #208

Closed SupplyChef closed 2 months ago

SupplyChef commented 3 months ago

Hello,

I am seeing a bit of a strange behavior. I have a MIP problem. It solves fine as seen in the log. The incumbent objective (maximization) is around 16856993205.89 at the time limit. But when the final results are reported the objective is very different. Am I misunderstanding the logs?

At the moment I only see this on a very big model. Not sure how to provide a model to repro.

Thanks.

Logs: ... L 880 830 3 0.00% 21322168436.27 16856993205.89 26.49% 10690 1724 111 1644k 1767.3s 1019 969 4 0.00% 21322168436.27 16856993205.89 26.49% 10690 1724 118 1890k 3782.4s

Solving report Status Time limit reached Primal bound 16856993205.9 Dual bound 21322168436.3 Gap 26.49% (tolerance: 0.01%) Solution status feasible -19188000000 (objective) 0 (bound viol.) 0 (int. viol.) 0 (row viol.) Timing 3782.37 (total) 1.28 (presolve) 0.00 (postsolve) Nodes 1019 LP iterations 1890255 (total) 635988 (strong br.) 44157 (separation) 186341 (heuristics)

odow commented 3 months ago

But when the final results are reported the objective is very different.

What is the output of JuMP.solution_summary(model) after solving?

What is the value of JuMP.objective_value(model)?

It solves fine as seen in the log

It stopped due to a time limit?

SupplyChef commented 2 months ago

I am having difficulties reproducing the problem reliably. I believe it occurs when the problem is badly scaled. I think you can close this issue and I can re-open if I find a reliable repro. Thanks.