Upon successful execution, the service returns the solution to the specified vehicle routing problem. The solution is made up of the following output parameters:
out_stops
Use this parameter to access information about stops made at depots, orders, and breaks. The information includes which routes make the stops, the arrival and departure times, and the stop sequence.
The following provides a description of attributes that are returned for each stop:
Field name | Description |
---|---|
ObjectID | A unique identifier for the stop. This identifier is auto generated by the service. |
Name | The name of the stop. The value of this attribute is same as the Name attribute of the depots, orders, or the breaks parameters from the request. You can use the StopType attribute to determine if the Name attribute value refers to a depot, order or a break. |
PickupQuantities | The amount of cargo or number of people to be picked up from a stop. If multiple dimensions are delivered to a stop, each quantity is separated by a space. The units for the value of this attribute aren't stored. You should interpret the units according to the way in which you specified the Quantities attribute of the routes parameter in the request and the PickupQuantities and DeliveryQuantities attributes of the orders parameters in the request. |
DeliveryQuantities | The amount of cargo or number of people to be delivered to a stop. If multiple dimensions are delivered to a stop, each quantity is separated by a space. The units for the value of this attribute aren't stored. You should interpret the units according to the way in which you specified the Quantities attribute of the routes parameter in the request and the PickupQuantities and DeliveryQuantities attributes of the orders parameters in the request. |
StopType | Indicates whether the stop represents a depot, order, or break. The attribute value is an integer which can be interpreted in the following way:
|
RouteName | The name of the route that makes the stop. |
Sequence | The relative sequence in which the assigned route visits the stop. |
FromPreviousTravelTime | The elapsed travel time from the route's previous stop to the current stop. The value is in the units specified by the time_units parameter. |
FromPreviousDistance | The distance along the route from the previous stop to the current stop. The value is in the units specified by the distance_units parameter. |
ArriveCurbApproach | Indicates which side of the vehicle the curb is on when arriving at the stop. A value of 1 means the right side of vehicle; 2 indicates the left side. |
DepartCurbApproach | Indicates which side of the vehicle the curb is on when departing from the stop. A value of 1 means the right side of vehicle; 2 indicates the left side. |
ArriveTime | The time of day when the route arrives at the stop. The time-of-day value for this attribute is in the time zone in which the stop is located. |
DepartTime | The time of day when the route departs from the stop. The time-of-day value for this attribute is in the time zone in which the stop is located. |
ArriveTimeUTC | The time of day when the route arrives at the stop. This value is given in Coordinated Universal Time (UTC). |
DepartTimeUTC | The time of day when the route departs from the stop. This value is given in Coordinated Universal Time (UTC). |
WaitTime | The wait time or layover at the stop. For example, a wait time is incurred when a route must wait at an order for a time window to open. The value is in the units specified by the time_units parameter. |
ViolationTime | The amount of time elapsed from the end of the stop's time window to the arrival of the route vehicle. The value is in the units specified by the time_units parameter. |
out_routes
Use this parameter to access the drivers, vehicles, and vehicle route paths of a vehicle routing problem. The populate_route_lines and route_line_simplification_tolerance parameters highly influence the shape of the output routes. The route geometries are returned in the spatial reference specified as the env:outSR parameter.
The following provides a description of fields that are returned for each route:
Field name | Description |
---|---|
ObjectID | A unique identifier for the route. This identifier is auto generated by the service. |
Name | The name of the route. |
PickupQuantities | The amount of cargo or number of people to be picked up from a stop. If multiple dimensions are delivered to a stop, each quantity is separated by a space. The units for the value of this attribute aren't stored. You should interpret the units according to the way in which you specified the Quantities attribute of the routes parameter in the request and the PickupQuantities and DeliveryQuantities attributes of the orders parameters in the request. |
ViolationConstraints | Contains a summary of constraints that are violated when assigning the order to any of the routes. The service assigns a unique integer for each violated constraint. The ViolatedConstraints attribute value is an integer representing the sum of all the constraints that are violated by the route. In order to determine the individual constraints that are violated, you can treat the attribute value as a bit mask and derive the values for the individual bits. For instance, the combination of Capacities exceeded (2) and Hard route zone (128) is coded as 130 (2 +128). If a route causes a constraint to be violated, a combination of one or more of the violations listed below could be assigned to the ViolatedConstraints attribute.
|
OrderCount | The number of orders assigned to the route. |
TotalCost | The total operating cost of the route, which is the sum of the following attribute values: FixedCost, RegularTimeCost, OvertimeCost, DistanceCost. |
RegularTimeCost | The cost of regular work time, excluding any unpaid breaks. |
OvertimeCost | The cost of overtime work, excluding any unpaid breaks. |
DistanceCost | The distance cost component obtained by multiplying the TotalDistance and CostPerUnitDistance attribute values. |
TotalTime | The total route duration. This includes travel times as well as service and wait times at orders, depots, and breaks. The value is in the units specified by the time_units parameter. The TotalTime value is the sum of the following attribute values:
|
TotalOrderServiceTime | The total service time spent at all orders on the route. The value is in the units specified by the time_units parameter. |
TotalBreakServiceTime | The total service time spent at all breaks on the route. The value is in the units specified by the time_units parameter. |
TotalTravelTime | The total travel time for the route. The value is in the units specified by the time_units parameter. |
TotalDistance | The total travel distance for the route. The value is in the units specified by the distance_units parameter. |
StartTime | The starting time of the route. The route may start before the beginning of its start depot's time window, in which case there is a wait time at the starting depot. The time-of-day value for this attribute is in the time zone on which the starting depot is located. |
EndTime | The ending time of the route. The route ends upon completion of service at the ending depot. The time-of-day value for this attribute is in the time zone on which the ending depot is located. |
TotalWaitTime | The total wait time at all orders, depots, and breaks on the route. The value is in the units specified by the time_units parameter. |
TotalViolationTIme | The total violation time at all orders and breaks on the route. The value is in the units specified by the time_units parameter. |
RenewalCount | For a route with renewals, this is equal to the number of visits to depots for the purpose of renewing a vehicle, that is, loading or unloading a vehicle. |
TotalRenewalServiceTime | For a route with renewals, the total service time spent at all renewal visits on the route. The value is in the units specified by the time_units parameter. |
Shape_Length | The length of the route in the units of the spatial reference specified for the routes. By default the length is reported in decimal degrees if the env:outSR parameter is not specified. |
StartTimeUTC | The start time of the route in Coordinated Universal Time (UTC). |
EndTimeUTC | The end time of the route in Coordinated Universal Time (UTC). |
out_directions
Use this parameter to access the turn-by-turn instructions to help drivers follow their assigned routes. The parameter includes the driving directions as well as the geometry for the directions feature corresponding to the text. The shape for the directions feature is determined from the underlying streets included in the route. The feature geometries are returned in the spatial reference specified as the env:outSR parameter. The features are empty if thepopulate_directions parameter is false. The directions_language, and the directions_style_name parameters highly influence the driving directions.
The following provides a description of fields that are returned for directions features:
Field name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ObjectID | A unique identifier for the directions feature. This identifier is auto generated by the service. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | The name of the route that the driving action applies to. This value is same as the Name attribute from out_routes parameter. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ArriveTime | The time of day to initiate the given driving action. The value is reported as milliseconds since midnight January 1, 1970. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Type | Indicates the type of maneuver that the direction feature represents or the type of the directions text. In order to determine if Type refers to a maneuver type or a directions string type, you need to check the value of SubItemType field. Type can be used, for example, to assign a different icon for a direction text based on the maneuver type or use a special formatting style based on the directions string type when displaying the driving directions in your applications The Type value is an integer from the Maneuver Types or the Directions String Types tables. Maneuver types
Directions string types
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SubItemType | Specifies whether the Type field refers to an integer from the Directions String Types table or the Maneuver Types table.
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Text | A text description of the driving direction. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ElaspsedTime | The time elapsed from when the current driving direction starts until the next one starts, or until the route ends for the last driving direction. The value is in the units specified by the time_units parameter. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DriveDistance | The distance from where the current driving direction occurs to where the next one occurs, or to where the route ends for the last driving direction. The value is in the units specified by the distance_units parameter. This value is zero for driving directions that occur at the same location where the next one begins. For example, the DriveDistance is 0 for the directions text at the start of the route. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Shape_Length | The length of the directions feature in the units of the spatial reference specified for the routes. By default the length is reported in decimal degrees if the env:outSR parameter is not specified. |
out_unassigned_stops
Use this parameter to access the orders that couldn't be visited by any routes. You can also determine why the stop couldn't be visited and can make the necessary changes to fix the problem.
The following provides a description of attributes that are returned for each unassigned stop:
Field name | Description |
---|---|
ObjectID | A unique identifier for the stop. This identifier is auto generated by the service. |
StopType | Indicates whether the stop represents a depot, order, or break. The attribute value is an integer which can be interpreted in the following way:
|
Name | The name of the stop. The value of this attribute is same as the Name attribute of the depots, orders, or the breaks parameters from the request. You can use the StopType attribute to determine if the Name attribute value refers to a depot, order or a break. |
ViolationConstraints | Contains a summary of constraints that are violated when assigning the order to any of the routes. The service assigns a unique integer for each violated constraint. The ViolatedConstraints attribute value is an integer representing the sum of all the constraints that are violated by the route. In order to determine the individual constraints that are violated, you can treat the attribute value as a bit mask and derive the values for the individual bits. For instance, the combination of Capacities exceeded (2) and Hard route zone (128) is coded as 130 (2 +128). If an order causes a constraint to be violated, a combination of one or more of the violations listed below could be assigned to the ViolatedConstraints attribute.
|
Status | Indicates the status of the stop in the solution returned by the service. The attribute value is an integer which can be interpreted in the following way.
|
solve_succeeded
Use this parameter to determine if the service was able to successfully find the solution for the input vehicle routing problem. The error messages for the failure can be obtained by making a request to get the status of the job.