Conversation
|
The hard part about custom matrices in input is that it is not always clear what to do when durations are provided but not distances. It could be either that users expect to:
Enforcing 1. would be a breaking change for "self-contained" instances (e.g. all usual benchmarks) with custom durations only that would not run any more without a routing engine. Enforcing 2. would keep the desired behavior for self-contained instances, but on the other hand it should be a valid use-case to only provide custom durations and expect distances to be fetched from the routing engine, then used in optimization. So I went with deciding on 1. or 2. dynamically based on whether the |
|
Follow-up note on custom matrices: we have no commitment so far to support custom distances so we can actually request that they're only provided if durations are also custom. This solves the dual version of the above question: providing only custom distances without custom durations is an input error. |
|
One thing I overlooked is that adding a I think the simplest way to move forward is to first merge support for |
…::CAPACITY to AVAILABILITY.
|
With this PR, distance range for vehicle is based on For example with this PR as is, it is possible to get a route distance in output slightly over the |
Issue
Fixes #354.
Tasks
max_distancevalue in inputmax_distanceat vehicle levelEvalandCostWrapperto hold distancesmax_travel_timelogic in heuristics and local search to account for max distances constraintsmax_*constraintsdocs/API.mdCHANGELOG.md