jump-dev / HiGHS.jl

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

Time limit not compliant with MOI interface #190

Closed hlefebvr closed 11 months ago

hlefebvr commented 11 months ago

Hello,

The HiGHS solver currently compares the time limit with the global run time, i.e., the cumulative run time of all runs with a given HiGHS object.

This is to be changed in version 2.0 as indicated in this HiGHS issue.

In the meantime, this makes HiGHS.jl violating the MOI interface specifications and preventing interchangeability of solvers within the JuMP environment.

An easy fix (until version 2.0 release) is to set the time limit to "getRunTime() + time_limit" where "time_limit" is the actual time limit, instead of "time_limit".

Thank you.

odow commented 11 months ago

This is fixed with HiGHS v1.6:

https://github.com/jump-dev/HiGHS.jl/blob/fa6247b826c9a208ceeddc576d631a61e04a82e0/src/MOI_wrapper.jl#L1817-L1820

odow commented 11 months ago

See also https://github.com/jump-dev/HiGHS.jl/issues/125, https://github.com/jump-dev/HiGHS.jl/issues/162

hlefebvr commented 11 months ago

Thanks a lot!