Result - v1

Description

This service is to get the optimization results of the given algorithm.

Input

  1. apiKey: In order to obtain your API KEY, first log into logvrp web application and click "Manage API Key" button.
  2. computationTicketID: You will get this using Ticket service.
  3. algorithmID: Algorithm ID that has been run in the "Optimization" service.

Output

Data: The optimum routes and the summary of the solution found by the algorihtm
Message: Output message
ReturnCode: Return code of the output. If "Success" is true, then check this value.
Success: If unpected errors, or exceptions occur, this will be false.
success: Same as Success

Data: object returned by this service contains the following:

  1. AlgorithmID
  2. VRPResultSummary
  3. VRPSolution

VRPResultSummary object returned by this service contains the following:

  1. AlgorithmID: Algorithm ID
  2. ApplicationUsed: Which application used this algorithm
  3. AvarageCapacityUsage: Average capacity usage
  4. ComputationDate: ComputationDate ( Year-Month-Day h:m:s )
  5. ComputationID: Computation ID
  6. ComputationTicketID: Computation Ticket ID_
  7. ComputationTime: Computation Time
  8. CostUnit: Cost Unit. Possible values: 1-USD, 2-EUR, 3-GBP, 4-CAD, 5-AUD, 6-JPY, 7-INR, 8-TRY, 0-OTHER
  9. DistanceUnit: Distance Unit. Possible values: 1-km, 2-mile
  10. ID: Result ID
  11. Invalidities: An array integers. Each integer is an invalidity code present in this solution.
  12. IsValidResult: Is valid result. true if the solution is valid.
  13. LoadUnit: Load Unit Possible values: 1-Parcel, 2-Passenger, 3-Liquid, 4-Gravel, 5-Frozen, 6-Flammable, 7-Grabage, 8- Garbage, 9-Fragile, -1 -CustomType
  14. OrderCount: Order count that has been given as input
  15. OrderSetID: Order Set ID that has been given as input
  16. OrganizationID: Organization ID
  17. RouteCount: Route count. The number of routes that exist in this optimum solution.
  18. StationSetID: Station Set ID that has been given as input
  19. TotalCost: Total Cost. The total cost of this solution.
  20. TotalDistance: Total Distance. The total distance of this solution.
  21. TotalLoad: Total Load. The total distance of this solution. Even the load types are different, they are just summed up.
  22. TotalTravelTime: Total Travel Time. The total travel time of all vehicles of this solution.
  23. UnservedOrderCount: Unserved Order Count. If not all the orders can not be served, then this is the number of orders that could not be serviced.
  24. UserID: User ID
  25. VehicleCount: Vehicle Count that has been given as input.
  26. VehicleSetID: Vehicle Set ID that has been given as input.

VRPSolution: object returned by this service contains the following:

  1. Cost: Total cost of all the routes.
  2. Distance: Total distance of all the routes.
  3. IsValid: IsValid. true or false.
  4. MaxArrival: Maximum Arrival date and time. A string in the format, "\/Date( t ) \/", where t is the Unix epoch.
  5. MinDeparture: Min Departure date and time. A string in the format, "\/Date( t ) \/", where t is the Unix epoch.
  6. UnservedOrders: This parameter is an array. That return order IDs_
  7. VrpRoutes: Array of routes. A route object has the following:
    1. Cost: Route Cost (fixed cost + (per distance cost x route distance))
    2. Distance: Route Distance
    3. Orders: Array of order IDs that have been serviced in this route. An integer array.
    4. Time: Total time of this route
    5. VehicleID: The ID of the vehicle that should serve this route
    6. Jobs: Array of jobs (pick-up and/or delivery tasks) steps of the route. In a job, a vehicle visits a station and does pick-ups or deliveries that are necessary. Each job has the following:
      1. StationID: The Station ID of this step. At each job, vehicle is visiting a station and servicing the station.
      2. VehicleID: The Vehicle ID that should service this station.
      3. Arrival: Arrival date time from this station. A string in the format, "\/Date( t ) \/", where t is the Unix epoch.
      4. Duration: Duration for this job (pick-up duration + delivery duration, i.e. loading duration + unloading duration). Duration as an ISO string, in the format: "PxDTyHzM" where x days, y hours, z minutes. Check: http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#duration
      5. Leaving: Leaving date time from this station. A string in the format, "\/Date( t ) \/", where t is the Unix epoch.
      6. Pickups: An array of Order IDs that the pick-ups should be done for. An integer array.
      7. Deliveries: An array of Order IDs that the deliveries should be done for. An integer array.
      8. LoadAfter: Load amount after leaving this station.
      9. LoadBefore: Load amount before arriving this station
      10. Load: How much to load at this station.
      11. UnLoad: How much to unload at this station.
      12. LoadWeightAfter: (NEW) Weight after leaving this station. If weight of orders are zero, this is zero. In this case, only amount or volume are used.
      13. LoadWeightBefore: (NEW) Weight before arriving this station. If weight of orders are zero, this is zero. In this case, only amount or volume are used.
      14. LoadWeight: (NEW) How much weight to load at this station. If weight of orders are zero, this is zero. In this case, only amount or volume are used.
      15. UnLoadWeight: (NEW) How much weight to unload at this station. If weight of orders are zero, this is zero. In this case, only amount or volume are used.
      16. LoadVolumeAfter: (NEW) Volume after leaving this station. If volume of orders are zero, this is zero. In this case, only amount or weight are used.
      17. LoadVolumeBefore: (NEW) Volume before arriving this station. If volume of orders are zero, this is zero. In this case, only amount or weight are used.
      18. LoadVolume: (NEW) How much volume to load at this station. If volume of orders are zero, this is zero. In this case, only amount or weight are used.
      19. UnLoadVolume: (NEW) How much volume to unload at this station. If volume of orders are zero, this is zero. In this case, only amount or weight are used.

REST - JSON

URL
Input
Body
{
  "apiKey": "your API key here",
  "computationTicketID": "your computation ticket ID here",
  "algorithmID": 1
}
Headers
Content-Type: application/json
Output
Response
{
  "Data": {
    "AlgorithmID": 1,
    "VRPResultSummary": {
      "AlgorithmID": 1,
      "ApplicationUsed": "logvrp",
      "AvarageCapacityUsage": 35,
      "ComputationDate": "2012-09-17 22:34:11",
      "ComputationID": 44946,
      "ComputationTicketID": "RjhDMkI5NEVBODVDM0RCMzJGM0JDQTQxM0Q1RTEyMjY=",
      "ComputationTime": 18,
      "CostUnit": 1,
      "DistanceUnit": 1,
      "ID": 44947,
      "Invalidities": [
 
      ],
      "IsValidResult": true,
      "LoadUnit": 0,
      "OrderCount": 4,
      "OrderSetID": 0,
      "OrganizationID": 0,
      "RouteCount": 2,
      "StationCount": 5,
      "StationSetID": 0,
      "TotalCost": 19.1,
      "TotalDistance": 18.2,
      "TotalLoad": 10,
      "TotalTravelTime": 92,
      "UnservedOrderCount": 0,
      "UserID": 0,
      "VehicleCount": 2,
      "VehicleSetID": 0
    },
    "VRPSolution": {
      "Cost": 19.1,
      "Distance": 18.2,
      "IsValid": true,
      "MaxArrival": "\/Date(1282986840000)\/",
      "MinDeparture": "\/Date(1282983498000)\/",
      "UnServedOrders": [
 
      ],
      "VRPRoutes": [
        {
          "Cost": 9.25,
          "Distance": 8.5,
          "Jobs": [
            {
              "Arrival": "\/Date(1282970640000)\/",
              "Deliveries": [
 
              ],
              "Duration": "PT2M",
              "Leaving": "\/Date(1282983660000)\/",
              "Load": 5,
              "LoadAfter": 5,
              "LoadBefore": 0,
              "LoadWeight": 0,
              "LoadWeightAfter": 0,
              "LoadWeightBefore": 0,
              "LoadVolume": 0,
              "LoadVolumeAfter": 0,
              "LoadVolumeBefore": 0,
              "Pickups": [
                -3,
                -4
              ],
              "StationID": -1,
              "UnLoad": 0,
              "UnLoadWeight": 0,
              "UnLoadVolume": 0,
              "VehicleID": -1
            },
            {
              "Arrival": "\/Date(1282984200000)\/",
              "Deliveries": [
                -4
              ],
              "Duration": "PT2M",
              "Leaving": "\/Date(1282984776000)\/",
              "Load": 0,
              "LoadAfter": 1,
              "LoadBefore": 5,
              "LoadWeight": 0,
              "LoadWeightAfter": 0,
              "LoadWeightBefore": 0,
              "LoadVolume": 0,
              "LoadVolumeAfter": 0,
              "LoadVolumeBefore": 0,
              "Pickups": [
 
              ],
              "StationID": -5,
              "UnLoad": 4,
              "UnLoadWeight": 0,
              "UnLoadVolume": 0,
              "VehicleID": -1
            },
            {
              "Arrival": "\/Date(1282985100000)\/",
              "Deliveries": [
                -3
              ],
              "Duration": "PT2M",
              "Leaving": "\/Date(1282985220000)\/",
              "Load": 0,
              "LoadAfter": 0,
              "LoadBefore": 1,
              "LoadWeight": 0,
              "LoadWeightAfter": 0,
              "LoadWeightBefore": 0,
              "LoadVolume": 0,
              "LoadVolumeAfter": 0,
              "LoadVolumeBefore": 0,
              "Pickups": [
 
              ],
              "StationID": -4,
              "UnLoad": 1,
              "UnLoadWeight": 0,
              "UnLoadVolume": 0,
              "VehicleID": -1
            },
            {
              "Arrival": "\/Date(1282985886000)\/",
              "Deliveries": [
 
              ],
              "Duration": "PT0S",
              "Leaving": "\/Date(1282985886000)\/",
              "Load": 0,
              "LoadAfter": 0,
              "LoadBefore": 0,
              "LoadWeight": 0,
              "LoadWeightAfter": 0,
              "LoadWeightBefore": 0,
              "LoadVolume": 0,
              "LoadVolumeAfter": 0,
              "LoadVolumeBefore": 0,
              "Pickups": [
 
              ],
              "StationID": -1,
              "UnLoad": 0,
              "UnLoadWeight": 0,
              "UnLoadVolume": 0,
              "VehicleID": -1
            }
          ],
          "Orders": [
            -3,
            -4
          ],
          "Time": "PT31M30S",
          "VehicleID": -1
        },
        {
          "Cost": 9.85,
          "Distance": 9.7,
          "Jobs": [
            {
              "Arrival": "\/Date(1282970640000)\/",
              "Deliveries": [
 
              ],
              "Duration": "PT2M",
              "Leaving": "\/Date(1282983498000)\/",
              "Load": 5,
              "LoadAfter": 5,
              "LoadBefore": 0,
              "LoadWeight": 0,
              "LoadWeightAfter": 0,
              "LoadWeightBefore": 0,
              "LoadVolume": 0,
              "LoadVolumeAfter": 0,
              "LoadVolumeBefore": 0,
              "Pickups": [
                -1,
                -2
              ],
              "StationID": -1,
              "UnLoad": 0,
              "UnLoadWeight": 0,
              "UnLoadVolume": 0,
              "VehicleID": -2
            },
            {
              "Arrival": "\/Date(1282984200000)\/",
              "Deliveries": [
                -1
              ],
              "Duration": "PT2M",
              "Leaving": "\/Date(1282985676000)\/",
              "Load": 0,
              "LoadAfter": 3,
              "LoadBefore": 5,
              "LoadWeight": 0,
              "LoadWeightAfter": 0,
              "LoadWeightBefore": 0,
              "LoadVolume": 0,
              "LoadVolumeAfter": 0,
              "LoadVolumeBefore": 0,
              "Pickups": [
 
              ],
              "StationID": -2,
              "UnLoad": 2,
              "UnLoadWeight": 0,
              "UnLoadVolume": 0,
              "VehicleID": -2
            },
            {
              "Arrival": "\/Date(1282986000000)\/",
              "Deliveries": [
                -2
              ],
              "Duration": "PT2M",
              "Leaving": "\/Date(1282986120000)\/",
              "Load": 0,
              "LoadAfter": 0,
              "LoadBefore": 3,
              "LoadWeight": 0,
              "LoadWeightAfter": 0,
              "LoadWeightBefore": 0,
              "LoadVolume": 0,
              "LoadVolumeAfter": 0,
              "LoadVolumeBefore": 0,
              "Pickups": [
 
              ],
              "StationID": -3,
              "UnLoad": 3,
              "UnLoadWeight": 0,
              "UnLoadVolume": 0,
              "VehicleID": -2
            },
            {
              "Arrival": "\/Date(1282986840000)\/",
              "Deliveries": [
 
              ],
              "Duration": "PT0S",
              "Leaving": "\/Date(1282986840000)\/",
              "Load": 0,
              "LoadAfter": 0,
              "LoadBefore": 0,
              "LoadWeight": 0,
              "LoadWeightAfter": 0,
              "LoadWeightBefore": 0,
              "LoadVolume": 0,
              "LoadVolumeAfter": 0,
              "LoadVolumeBefore": 0,
              "Pickups": [
 
              ],
              "StationID": -1,
              "UnLoad": 0,
              "UnLoadWeight": 0,
              "UnLoadVolume": 0,
              "VehicleID": -2
            }
          ],
          "Orders": [
            -1,
            -2
          ],
          "Time": "PT35M6S",
          "VehicleID": -2
        }
      ]
    }
  },
  "Message": null,
  "ReturnCode": 0,
  "Success": true,
  "success": true
}