Before visiting any feature how-to guide, we recommend you complete the get started with vehicle routing tutorial.
Features available with vehicle routing can be found on the following table.
Feature | Description | Nextmv Routing App | Platform |
---|---|---|---|
Alternate stops | Specify a set of alternate stops per vehicle for which only one should be serviced. | ✅ | ✅ |
Compatibility attributes | Specify which stops are compatible with which vehicles. | ✅ | ✅ |
Capacity | Set capacities for vehicles and quantities (demanded or offered) at stops. | ✅ | ✅ |
Cluster constraint | Enforce the creation of clustered routes. | ✅ | ✅ |
Cluster objective | Incentivize the creation of clustered routes. | ✅ | ✅ |
Custom constraints | Implement custom constraints with Nextmv SDK. | ➖ | ✅ |
Custom data | Add custom data that is preserved in the output. | ✅ | ✅ |
Custom matrices | Use custom matrices to achieve more precise drive time. | ➖ | ✅ |
Custom objectives | Implement custom objectives with Nextmv SDK. | ➖ | ✅ |
Custom operators | Implement custom operators with Nextmv SDK. | ➖ | ✅ |
Custom output | Create a custom output for your app. | ➖ | ✅ |
Distance matrix | Specify a distance matrix in the input that provides the distance of going from location A to B. | ✅ | ✅ |
Duration matrix | Specify a duration matrix in the input that provides the duration of going from location A to B. | ✅ | ✅ |
Duration groups | Specify a duration that is added every time a stop in the group is approached from a stop outside of the group. | ✅ | ✅ |
Early arrival time penalty | Specify a penalty that is added to the objective when arriving before a stop's target arrival time. | ✅ | ✅ |
Late arrival time penalty | Specify a penalty that is added to the objective when arriving after a stop's target arrival time. | ✅ | ✅ |
Calculates duration and distance matrices using a hosted OSRM map service when running on Nextmv Cloud. Note that map data is a paid feature. | ✅ | ✅ | |
Maximum route distance | Specify the maximum distance that a vehicle can travel. | ✅ | ✅ |
Maximum route duration | Specify the maximum duration that a vehicle can travel for. | ✅ | ✅ |
Maximum route stops | Specify the maximum stops that a vehicle can visit. | ✅ | ✅ |
Maximum wait time | Specify the maximum time a vehicle can wait when arriving before the start time window opens at a stop. | ✅ | ✅ |
Minimum route stops | Specify the minimum stops that a vehicle should visit (applying a penalty). | ✅ | ✅ |
Nextcheck | Check which stops can be planned or why stops have been unplanned. | ✅ | ✅ |
Precedence | Add pickups and deliveries or specify multiple pickups before deliveries and vice versa. | ✅ | ✅ |
Stop duration | Specify the time it takes to service a stop. | ✅ | ✅ |
Stop duration multiplier | Specify a multiplier on time it takes a vehicle to service a stop. | ✅ | ✅ |
Stop groups | Specify stops that must be assigned together on the same route, with no further requirements. | ✅ | ✅ |
Stop mixing | Specify properties of stops which can not be on the vehicle at the same time. | ✅ | ✅ |
Time windows | Specify the time window in which a stop must start service. | ✅ | ✅ |
Unplanned penalty | Specify a penalty that is added to the objective to leave a stop unplanned when all constraints cannot be fulfilled. | ✅ | ✅ |
Vehicle activation penalty | Specify a penalty that is added to the objective for activating (using) a vehicle. | ✅ | ✅ |
Vehicle initial stops | Specify initial stops planned on a vehicle. | ✅ | ✅ |
Vehicle start/end location | Specify optional starting and ending locations for vehicles. | ✅ | ✅ |
Vehicle start/end time | Specify optional starting and ending time for a vehicle. | ✅ | ✅ |