Understanding the Input Output Log
Using this document, users can understand how to interpret the different objects within the input and output logs of the route optimiser.
Please note, the log file is named in the following manner -
LambdaUploadOptimiserWithClustering-{org_name}
Input
The input part of the log consists of the following :
{
"task_list": [
{
"consignments_count": 1,
"weight": 0.42,
"volume": 0.064328,
"length": 0.43,
"width": 0.34,
"height": 0.44,
"lat": 28.6068012,
"lng": 77.3468312,
"address_id": null,
"reference_number": "0565820870",
"address_string": "House No: , , , Shop 16/1 Block market,sector 12 noida, , ,,,Reliance Retail Limited,sector 12 noida,Uttar Pradesh, GBN, UP, 201301",
"tw_open": "07:00",
"tw_close": "22:00",
"time_slot_list": [],
"pincode": "201301",
"partition_id": "1",
"trip_type": "endpoint",
"constraint_tags": [],
"restricted_constraint_tags": [],
"service_time": 1000,
"fixed_service_time": 0,
"phone_number": "000000000",
"pincode_city": "GBN",
"declared_value": "3131.72",
"delivery_time_slot_start": "1685928600000",
"delivery_time_slot_end": "1685982600000",
"pickup_time_slot_start": "1685928600000",
"pickup_time_slot_end": "1685982600000",
"origin_city_code": "NDA",
"destination_city_code": "GBN",
"type": "delivery"
}
],
"vehicles": [
{
"weight": 750,
"volume": 3.5,
"consignment_capacity": 1100,
"length": 1000,
"width": 1000,
"max_hub_visit_allowed": 1,
"height": 1.17,
"vehicle_service_time": 144000,
"vehicle_type": "DEDICATED",
"vehicle_volume_utilisation": 85,
"constraint_tags": [
"NotLargeVehicle",
"Not2W"
],
"priority": 1,
"worker_id": "1673665693200944551",
"worker_code": "UP16GT9783",
"fuel_type": "DIESEL",
"vehicle_make_id": "2331",
"vehicle_make_code": "CB16",
"vehicle_id": "48514",
"vehicle_code": "UP16GT9783",
"vehicle_make_category": null,
"vendor_priority": null,
"vehicle_vendor_id": "2556",
"cost_dimension": null,
"cost_array": null,
"fixed_cost": 1033,
"variable_cost": 7.64,
"min_cumulative_product_value": null,
"product_value": null,
"vehicle_vendor_code": "3701888",
"eligible_vendor_od_pair_mapping": [],
"delivery_time_start": "08:00",
"delivery_time_end": "18:00"
}
],
"start_depot": [
[
28.623483,
77.383503
]
],
"end_depot": [
[
28.623483,
77.383503
]
],
"constraint_type": [
"weight",
"volume",
"time",
"tags",
"height",
"distance"
],
"vehicle_utilisation": 90,
"default_vehicle_speed": 27,
"use_hub_geofence_partitions": true,
"partitions_as_hard_contraint": true,
"optimization_strategy": "VROOM",
"gather_drop_reasons": true,
"pickup_service_time": 2700,
"service_time": 900,
"use_original_values": true,
"combine_same_address_customers": true,
"add_service_time": true,
"consider_max_vehicle_in_combine_logic": false,
"use_number_as_service_locations": false,
"exploration_level": 4,
"delivery_stops_as_soft_constraint": true,
"hub_partition_details": [
{
"color": "#13C2C2",
"uniqueId": "e702062d-e41a-47a3-8599-4a3097075d67",
"geo_fence": [
[
28.50185026931425,
77.09509099904429
]
],
"partition_id": "ZONE 9"
}
],
"planning_type": "create_route",
"organisation_id": "qwiklogistics",
"source": "TMS_AUTOALLOCATE_HANDLER",
"fetch_optimization_params": true
}
Following are the Objects in the payload:
Key Name | Description | Data Type | Remarks |
---|---|---|---|
task_list | List of objects of the input tasks | Array |
|
vehicles | List of objects of the input vehicles | Array |
|
start_depot | List of of the source location of the vehicles | Array |
|
end_depot | List of of the expected end location of the vehicles. | Array |
|
constraint_type | Constraints on which the consignments are to be optimised | Array |
|
hub_partition_details | List of partitions and their properties defined for the hub | Array |
|
Consignment Object
Following is the description, its data type, whether required or not and possible example for every key of Consignment.
Key Name | Description | Data Type | Remarks |
---|---|---|---|
consignments_count | Count of consignments defined for the particular object item | Integer |
|
weight | Input weight of the consignment | Float |
|
volume | Input volume of the consignment | Float |
|
length | Input length of the consignment | Float |
|
width | Input width of the consignment | Float |
|
height | Input height of the consignment | Float |
|
lat | Geocoded latitude of the consignment’s delivery address | Float |
|
lng | Geocoded longitude of the consignment’s delivery address | Float |
|
pickup_lat | Geocoded latitude of the consignment’s pickup address | Float |
|
pickup_lng | Geocoded longitude of the consignment’s pickup address | Float |
|
address_id | Unique reference id defined in Address Master to fetch lat/lng, service time, time slot data for the consignment | Integer |
|
reference_number | Consignment’s unique identifier in the org | String |
|
address_string | consignments delivery/pickup address string based on consignment type | String |
|
tw_open | Delivery time window start | String |
|
tw_close | Delivery time window end | String |
|
pickup_tw_open | Pickup time window start | String |
|
pickup_tw_close | Pickup time window end | String |
|
time_slot_list | Delivery/pickup time windows list defined in Address register | Array |
|
pincode | pincode |
| unused |
partition_id | partition/zone to which consignment is allocated | String |
|
trip_type | endpoint trip or hub2hub roundtrip | String |
|
constraint_tags | List of tags to be considered for solution | Array |
|
restricted_constraint_tags |
|
|
|
service_time | Input delivery service time | Float |
|
fixed_service_time | Fixed service time set for the address_id | Float |
|
phone_number |
|
|
|
pincode_city |
|
|
|
declared_value | Consignment Value | Float | as input in softdata |
delivery_time_slot_start | deprecated |
| unused |
delivery_time_slot_end | deprecated |
| unused |
pickup_time_slot_start | deprecated |
| unused |
pickup_time_slot_end | deprecated |
| unused |
origin_city_code |
|
|
|
destination_city_code |
|
|
|
Vehicles Object
Following is the description, its data type, whether required or not and possible example for every key of Vehicle
Key Name | Description | Data Type | Remarks |
---|---|---|---|
weight | The maximum weight that the vehicle can carry as per input | Float |
|
volume | The maximum volume (in m³) that the vehicle can carry. | Float |
|
consignment_capacity | The maximum number of consignments that the vehicle can carry. | Integer |
|
length | The length (in an arbitrary unit) of the vehicle. | Float |
|
width | The width (in an arbitrary unit) of the vehicle. | Float |
|
max_hub_visit_allowed | The maximum number of hub visits allowed for the vehicle. | Integer |
|
height | The height (in an arbitrary unit) of the vehicle. | Float |
|
vehicle_service_time | The time (in seconds) that the vehicle needs to complete any service-related tasks. | Integer |
|
vehicle_type | The type of the vehicle. | String |
|
vehicle_volume_utilisation | The utilisation percentage of the vehicle's volume. | Float |
|
constraint_tags | A list of tags associated with the vehicle. | Array |
|
priority | The priority assigned to the vehicle. A lower number indicates higher priority in ORTOOLS, reverse for XLRTE | Integer |
|
worker_id | The id of the worker in db entries | String | unused |
worker_code | The code assigned to the worker assigned to the vehicle. | String |
|
fuel_type | The fuel type of the vehicle. | String |
|
vehicle_make_id | The id of the vehicle make in db entries | String | unused |
vehicle_make_code | The vehicle make code defined for this vehicle in Setup | String |
|
vehicle_id | The id of the vehicle in db entries | String | unused |
vehicle_code | The vehicle code defined for this vehicle in Setup | String |
|
fixed_cost | The fixed cost associated with using the vehicle. | Float |
|
variable_cost | The variable cost associated with using the vehicle. | Float |
|
delivery_time_start | The earliest time that the vehicle can start delivering consignments. | String |
|
delivery_time_end | The latest time that the vehicle can finish delivering consignments. | String |
|
Please note, there’s a separator string “----------------“ on a new line in the logs shared on the slack, it separates the input part and the output part in the log file.
Output
The output part of the log consists of the following :
{
"internal_error": [],
"data": [
{
"used": true,
"vehicle": {
"weight": 2500,
"volume": 2.5,
"consignment_capacity": 10,
"length": 1000,
"width": 1000,
"max_hub_visit_allowed": 1,
"height": 1000,
"vehicle_service_time": 144000,
"vehicle_type": "DEDICATED",
"vehicle_volume_utilisation": 100,
"constraint_tags": [],
"priority": 1,
"worker_id": "1470107369974271462",
"worker_code": "0203",
"fuel_type": "DIESEL",
"vehicle_make_id": "1250",
"vehicle_make_code": "BOLERO",
"vehicle_id": "41392",
"vehicle_code": "RJ14TCG0024",
"vehicle_make_category": null,
"vendor_priority": null,
"vehicle_vendor_id": "1078",
"cost_dimension": "distance",
"cost_array": [],
"fixed_cost": 1,
"variable_cost": 1,
"min_cumulative_product_value": null,
"product_value": 92233720368547.77,
"vehicle_vendor_code": "DADHA DHARI",
"eligible_vendor_od_pair_mapping": [],
"distance": 922337203685477.6,
"trip_id": "",
"speed": 27,
"planned_vehicle_speed": 27,
"pincode_limit": 3,
"distance_radius": 9223372036854775807,
"consecutive_dist_limit": 9223372036854775807,
"service_radius_km": 9223372036854776.0,
"task_capacity": 10,
"start_depot": [
28.37451824,
77.0599023
],
"end_depot": [
28.37451824,
77.0599023
],
"delivery_time_start": 18000,
"planned_start_time": "05:00",
"delivery_time_end": 72000,
"included_distance": 0,
"start_depot_id": 0,
"end_depot_id": 0,
"trip_eta_info": {
"trip_start_time": 18000,
"trip_end_time": 21776,
"trip_planned_service_time": 0
},
"trip_distance_info": {
"total_distance": 28.33,
"total_travel_time": 3776
},
"trip_violations": {
"start_violations": [],
"end_violations": []
},
"multi_trip_order": 0,
"trip_planned_service_time": 0
},
"task_list": [
{
"consignments_count": 1.0,
"weight": 380.0,
"volume": 0.1,
"length": 1.0,
"width": 1.0,
"height": 1.0,
"lat": 28.4388680519966,
"lng": 76.9867559201064,
"address_id": null,
"reference_number": "271685167-05193443-4150646",
"address_string": "luxmi garden khandsha gurgaon haryana 122001 gurgaon haryana",
"tw_open": 29700,
"tw_close": 54900,
"time_slot_list": [
[
29700,
54900
]
],
"pincode": "122001",
"partition_id": "ZONE 6",
"trip_type": "endpoint",
"fuel_type": "DIESEL",
"constraint_tags": [],
"restricted_constraint_tags": [],
"service_time": 0,
"fixed_service_time": 0,
"phone_number": "000000000",
"pincode_city": "GURUGRAM",
"declared_value": 1.0,
"delivery_time_slot_start": null,
"delivery_time_slot_end": null,
"pickup_time_slot_start": null,
"pickup_time_slot_end": null,
"origin_city_code": null,
"destination_city_code": "Gurgaon",
"type": "delivery",
"consignment_priority": 3,
"trip_id": "",
"due_time": 30,
"is_picked_up": false,
"initial_planned_order": 0,
"tag_partition_map": {},
"service_radius_km": 92233720368547.77,
"group_id": "ROUTING_DEFAULT_GROUP_ID",
"preference_id": 89321369,
"service_time_per_demand": 0,
"planned_service_time": 0,
"pickup_service_time": 0,
"pickup_fixed_service_time": 0,
"pickup_tw_open": 28800,
"pickup_tw_close": 64800,
"pickup_time_slot_list": [
[
28800,
64800
]
],
"identifier": "68",
"travel_time": "00:31:28",
"travel_distance": 14.165,
"violations": [],
"eta_info": {
"arrival": 19888,
"duration": 1888,
"service": 0,
"waiting_time": 0,
"fixed_service_time": 0,
"variable_service_time": 0
},
"delivery_stops": 0
}
],
"optimization_params": {
"trip_cost": 42.786,
"total_distance": 41.786,
"total_time": "01:32:50",
"total_service_time": "00:00:00",
"delivery_stops": 2,
"weight_utilization_percent": 94.6,
"weight_network_load": 98827.19021362158,
"total_weight": 2365.0,
"number_utilization_percent": 90.0,
"number_network_load": 376.08655895247114,
"total_number": 9,
"volume_utilization_percent": 35.99999999999999,
"volume_network_load": 37.60865589524711,
"total_volume": 0.8999999999999999,
"product_value_utilization_percent": 9.75781955236954e-12,
"product_value_network_load": 376.08655895247114,
"total_product_value": 9.0
}
}
],
"dropped_tasks": [
{
"consignments_count": 1.0,
"weight": 100.0,
"volume": 0.1,
"length": 1.0,
"width": 1.0,
"height": 1.0,
"lat": 28.4867540796484,
"lng": 77.2918268952886,
"address_id": null,
"reference_number": "081683541-05979002-7804939",
"address_string": "Dk Mewala Marajpur, Faridabad, HARYANA, 121003, Faridabad, HARYANA, 121003",
"tw_open": 60,
"tw_close": 86340,
"time_slot_list": [
[
60,
86340
]
],
"pincode": "121003",
"partition_id": "zone 11",
"trip_type": "endpoint",
"fuel_type": "CNG",
"constraint_tags": [],
"restricted_constraint_tags": [],
"service_time": 0,
"fixed_service_time": 0,
"phone_number": "000000000",
"pincode_city": "DELHI",
"declared_value": 1.0,
"delivery_time_slot_start": null,
"delivery_time_slot_end": null,
"pickup_time_slot_start": null,
"pickup_time_slot_end": null,
"origin_city_code": null,
"destination_city_code": "Faridabad",
"type": "delivery",
"consignment_priority": 3,
"trip_id": "",
"due_time": 30,
"is_picked_up": false,
"initial_planned_order": 0,
"tag_partition_map": {},
"service_radius_km": 92233720368547.77,
"group_id": "ROUTING_DEFAULT_GROUP_ID",
"preference_id": 89321369,
"service_time_per_demand": 0,
"planned_service_time": 0,
"pickup_service_time": 0,
"pickup_fixed_service_time": 0,
"pickup_tw_open": 28800,
"pickup_tw_close": 64800,
"pickup_time_slot_list": [
[
28800,
64800
]
],
"drop_reason_code": "INVALID_FUEL_TYPE_COMBINATION",
"vehicle_drop_reason": [
{
"worker_code": "ALL_VEHICLES",
"type": "INELIGIBLE_FILTER",
"reason": "All vehicle has diesel fueltype, required CNG"
}
]
}
],
"distance_parameter_used": 1.4,
"success": true,
"drop_reason_status": "SUCCESS",
"planning_metrics": {
"total_cost": 995.8049999999998,
"overlap_degree": 0.0,
"planned_distance": 974.8049999999998,
"vehicles_used_percent": 6.268656716417911,
"drop_percent": 5.517241379310345,
"weight_utilization_variance": 0.35739907328650455,
"weight_network_load": 1671527.660903315,
"number_utilization_variance": 0.5405059402201925,
"number_network_load": 6026.843226972908,
"volume_utilization_variance": 0.5273425908838942,
"volume_network_load": 602.6843226972908,
"product_value_utilization_variance": 0.5130301719943233,
"product_value_network_load": 6026.843226972908
}
}