Single depot & multiple drop locations use case.
Note : This is an older version of the Vehicle Routing Api, and will be removed in the upcoming releases.
The JSON Object that is to be sent along with the generated API-Key. This object consists of the information about the services and the fleets with some additional parameters which are used to control the overall functionality of the problem.
Parameters to be used while defining the 'service'.
|id||string||The identification parameter defined for each service|
|lat||double||The latitude of the service location|
|lng||double||The longitude of the service location|
|startTime (optional)||integer||The time after which the service should be performed [0, 2400) (eg. 930 means 9:30 AM)|
|endTime (optional)||integer||The time before which the service is to be performed [0, 2400) (eg. 2350 means 11:50 PM)|
|duration (optional)||integer||Time the service will take to be completed (eg. 10 means 10 minutes of service time)|
|load (optional)||integer||Load/demand to be served.(Unitless but it should be in same measure of capcity of fleet)|
|name (optional)||string||Name of service. Optional identification parameter|
|priority (optional)||string||"high", "medium", "low" (case is not important)|
Parameters to be used while defining the 'fleet' (Vehicle).
|lat||double||The latitude of the starting location of the vehicle|
|lng||double||The longitude of the starting location of the vehicle|
|latEnd (optional)||double||The latitude of the end location of the vehicle|
|shiftStart (optional)||integer||The time when the vehicle will start its shift (e.g. 1300 means vehicle will take task after 1 PM)|
|shiftEnd (optional)||integer||The time after which the vehicle won't perform any more task (e.g. 2200, means vehicle will not perform tasks after 10 PM)|
|returnToStart||integer||1, if its mandatory to return to depot. 0, if its not mandatory to return to depot. Default is 0|
|capacity (optional)||integer||capacity of vehicle (weight/volume etc) but load of services also to be in same measure|
|fuelCostPerKm (optional)||double||This is the cost per distance unit(Km). This can be distance dependent variable cost per unit of distance. Default is 10 INR/KM. We suggest to give realistic values for better results.|
|hourlyWage (optional)||double||This is the cost per transport time unit(hr). This can be transport time dependent variable cost per unit of time. Default is 100 INR/HR. We suggest to give realistic values for better results.|
|fixedCost (optional)||double||Fixed cost of vehicle.|
|numVehiclesAtDepot (optional)||integer||Number of vehicles of this type at this depot. Default is 1. You have option to send your vehicles implicitly. In case this option is chosen with >1 then it creates vehicles of this type numbering from #[0,numVehiclesAtDepot-1] and output will be changed id_#. We suggest explicit way in which define each vehicle at each depot with its own id.|
These parameters can be added in addition to the above cumpolsory parameters in order to create restrictions.
|speed (optional)||integer||speed in Km/hr, same for all the fleets globally, default 40 Km/hr|
|maxVisits (optional)||integer||The maximum number of tasks that a vehicle can perform|
|decideFleetSize (optional)||boolean||send 1 if you don't know how many vehicles are required to solve(means, fleet size is considered infinite). 0 if you want to solve the problem in the given fleet size (fleet Size is considered finite). Default is 0|
|polylines (optional)||boolean||When true this parameter returns the coded polylines that can be further used to plot the road directions of each fleet|
|distanceCalculation (optional)||boolean||When true this parameter returns the total distance and time taken by all the fleets according to google maps|
|detourFactor (optional)||double||Approximated Distance/displacement factor. Default is 1.0 . it should always be suplied more than 1.0 . Suggestion more than 1.3 for realistic situation. More congestion in a city more the detour.|
The JSON response generated for the above request.
|noOfRoutes||integer||The number of routes all the fleets have to take in order to complete all the tasks|
|unassignedJobs||list||The service ID's of all the tasks which are not completed.|
|totalJobs||integer||The total number of services to be performed|
|totalTimeTaken (in seconds)||double||The total time taken by all the fleets to complete all the tasks in seconds|
|maxTimeTaken (in seconds)||double||The time by which all the tasks will be completed if all the fleets start at the same time.|
|totalDistanceTravelled (in meters)||double||The total distance covered be all the fleets in meters.|
|status||string||'success' if all the tasks are served and 'failure' if any one of them remains unserved.|
|solutions||list||The list of all the fleets mapped to the services that they performed|