Skip to main content

Multi-Stop Delivery

Route 15 deliveries across 2 vehicles with capacity constraints.

Request

{
  "resources": [
    {
      "name": "van-1",
      "shifts": [{
        "from": "2024-03-15T07:00:00Z",
        "to": "2024-03-15T16:00:00Z",
        "start": {"latitude": 51.5074, "longitude": -0.1278},
        "end": {"latitude": 51.5074, "longitude": -0.1278}
      }],
      "capacity": [1000]
    },
    {
      "name": "van-2",
      "shifts": [{
        "from": "2024-03-15T07:00:00Z",
        "to": "2024-03-15T16:00:00Z",
        "start": {"latitude": 51.5074, "longitude": -0.1278},
        "end": {"latitude": 51.5074, "longitude": -0.1278}
      }],
      "capacity": [800]
    }
  ],
  "jobs": [
    {"name": "delivery-1", "location": {"latitude": 51.5155, "longitude": -0.1419}, "duration": 300, "load": [85], "priority": 100},
    {"name": "delivery-2", "location": {"latitude": 51.5080, "longitude": -0.1281}, "duration": 300, "load": [120], "priority": 50},
    {"name": "delivery-3", "location": {"latitude": 51.5033, "longitude": -0.1196}, "duration": 300, "load": [95], "priority": 80},
    {"name": "delivery-4", "location": {"latitude": 51.5136, "longitude": -0.1176}, "duration": 300, "load": [110], "priority": 60},
    {"name": "delivery-5", "location": {"latitude": 51.5185, "longitude": -0.1111}, "duration": 300, "load": [75], "priority": 90}
  ],
  "options": {
    "routingEngine": "OSM"
  }
}

Response

{
  "solution": {
    "routes": [
      {
        "resource": "van-1",
        "jobs": [
          {"job": "delivery-2", "arrival": "2024-03-15T07:15:00Z"},
          {"job": "delivery-3", "arrival": "2024-03-15T07:28:00Z"}
        ],
        "summary": {"totalLoad": 215, "totalJobs": 2}
      },
      {
        "resource": "van-2",
        "jobs": [
          {"job": "delivery-1", "arrival": "2024-03-15T07:12:00Z"},
          {"job": "delivery-4", "arrival": "2024-03-15T07:25:00Z"},
          {"job": "delivery-5", "arrival": "2024-03-15T07:38:00Z"}
        ],
        "summary": {"totalLoad": 270, "totalJobs": 3}
      }
    ],
    "unassigned": []
  }
}

Key Features

FeatureUsage
capacityVehicle load limit (array for multi-dimensional)
loadJob’s capacity consumption
priorityHigher values = more important (0-100)