Option to force all vehicles to service locations
- Dominant language
- C++
- Stars
- 155
- Forks
- 47
- PR merge metrics
- No merged PRs in 30d
Description
We should provide an option to force all vehicles on the road.
Probably goes hand in hand with the fairness constraint, see https://github.com/mapbox/node-or-tools/issues/1.
---
Implementation: remove the depot from the start's `NextVar`, so vehicles _have to_ service locations:
```c++
model.CloseModel()
for (auto vehicle = 0; vehicle < numVehicles; ++vehicle) {
IntVar* const start = routing.NextVar(routing.Start(vehicle));
for (auto node = routing.Size(); node < routing.Size() + routing.vehicles(); ++node)
start->RemoveValue(node);
}
```
Contributor guide
Research direction
Start by reading the linked fairness-constraint issue and locating the vehicle-routing setup in the bindings; the issue provides the proposed NextVar constraint. Check how an option is exposed, then verify with a routing example that every vehicle is required to service a location.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, node.js
- Domain
- backend
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100