google / or-tools

Google's Operations Research tools:
https://developers.google.com/optimization/
Apache License 2.0
11.16k stars 2.12k forks source link

Solver check fails on solution for the vrptw with breaks #633

Closed tomika closed 5 years ago

tomika commented 6 years ago

Program terminates with message: expressions.cc:1338] Check failed: min.Value() == max.Value() (-2880 vs. -135) variable Time fixed transit(-2880..-135) is not bound.

I attached most simple code I could create to reproduce the problem. (Renamed to txt to be accepted by github)

bug.cc.txt

Mika-5 commented 5 years ago

Hi tomika, I recently encountered the same problem when i set up the breaks constraints. Have you got any idea where does that come from ?

tomika commented 5 years ago

Not really. I totally ignored the built-in break since it is clearly not working and use another one suggested by pmateusz. I got message from the authors on another forum few weeks ago that a brand new, rewritten from scratch break handling will be in the next release of or-tools, hopefully in this year.

Mizux commented 5 years ago

You can look at branch abseil for the coming v7.0 ortools ETA Christmas 2018 containing the up to date routing library with break fix...

note: before we will release v6.10 (minor change)

Mika-5 commented 5 years ago

Thank you both for your response. I already implement the pmateusz suggestion and it is a bit odd because sometimes I get the issue and sometimes I do not. I will await Christmas then !

lperron commented 5 years ago

Both the routing API and the break code has changed completely since 7.0.

Can you have a look at: https://github.com/google/or-tools/blob/stable/examples/cpp/cvrptw_with_breaks.cc ?

I will close the issue. Please tell me if you still have an issue.