Use case guide
The Pick-up and Delivery Routing (PDR) model powers automated, optimized, and fair route planning and scheduling across industries, from healthcare logistics to people or parcel transport.
This guide outlines common use cases and shares tips on how to use the Timefold model for each.
| If your problem is sending technicians or caregivers to perform work at a location, rather than moving people or items from a pick-up location to a delivery location, see the Field Service Routing model. |
Use cases of the Pick-up and Delivery Routing model include:
-
Non-emergency medical transportation (NEMT): dispatch operators to efficiently transport clients.
-
Courier and express delivery: plan same-day and on-demand deliveries of small parcels, documents, and packages.
1. Non-emergency medical transportation (NEMT)
1.1. Typical use case
NEMT operators use the Pick-up and Delivery Routing model to dispatch drivers to efficiently transport clients (passengers, members, or patients) between places such as doctor or specialist appointments, dialysis centers, mental health services, etc. while reducing miles driven, improving on-time performance, and ensuring passenger comfort.
1.2. Key challenges
-
Ensuring on-time arrivals and drop-offs.
-
Respecting client privacy and preferences.
-
Complying with healthcare regulations and ensuring the safety of employees.
-
Reducing unnecessary trips between rides.
-
Respecting employees' preferences.
1.3. How to interpret model terms
| Model term | How it applies to this use case |
|---|---|
Driver |
The driver and their transport vehicle responsible for transporting clients. |
Driver shift |
A driver’s operating window (for example, 7:00–15:00). |
Job |
Transportation of a client/patient from one place to another (e.g. home to hospital or medical center). |
Stop |
A pick-up or drop-off location for a job. |
1.4. How to address common scheduling problems
| Problem | Solve it with |
|---|---|
You must assign clients to compatible vehicles (e.g. wheelchair-accessible vehicles). |
Use tags to match drivers with jobs. |
You must assign clients to drivers with the right skills (e.g. language, certifications). |
Use required skills to match drivers with jobs. |
You must not exceed a vehicle’s capacity. |
Define (multiple types of) vehicle capacities and how much capacity a client requires (e.g. depending on whether client requires wheelchair). |
You need to minimize travel time. |
Use route optimization objectives. |
You need to meet strict pick-up and drop-off time windows. |
Add time window constraints to ensure punctuality. |
You want to prevent clients from being in transit for too long. |
Define a global or per-job maximum time burdens. |
You want to protect client privacy and specify if clients can be transported together. |
Define whether jobs can be pooled or not, or prohibit certain job combinations. |
A client prefers or requires continuity by being transported by a familiar driver. |
Restrict the job to specific drivers or apply driver-job preferences to encourage continuity. |
You want to dynamically reassign work when a patient calls in and needs to be picked up. |
Implement real-time replanning. |
You want to reduce empty miles by combining trips that travel in the same direction (shared rides). |
Allow job pooling and set a maximum time burden so shared rides stay within an acceptable ride time. |
A client isn’t at the pick-up location when the driver arrives. |
Use real-time planning for no-shows to replan the rest of the driver’s shift. |
2. Courier and express delivery
2.1. Typical use case
Courier and express delivery operators use the Pick-up and Delivery Routing model to efficiently plan same-day and on-demand deliveries of small parcels, documents, and packages. Typical operations involve dynamically assigning pick-up and delivery jobs to a fleet of couriers. The model helps reduce driving time, improve on-time delivery performance, and maximize courier utilization while respecting strict service-level agreements (SLAs).
2.2. Key challenges
-
Meeting tight pick-up and delivery time windows driven by customer expectations and SLAs.
-
Efficiently assigning many small shipments to a limited fleet of couriers.
-
Reducing total driving time.
-
Handling capacity constraints when couriers carry multiple parcels simultaneously.
-
Adapting to fluctuating demand throughout the day.
2.3. How to interpret model terms
| Model term | How it applies to this use case |
|---|---|
Driver |
A courier and their vehicle such as a van, bike, or car, with limited carrying capacity. |
Driver shift |
A courier’s working period, including start location, and end location. |
Job |
A shipment consisting of (but not limited to) one pick-up and one delivery location. |
Stop |
The location where a parcel or document is collected from a customer or business, or must be delivered. |
2.4. How to address common scheduling problems
| Problem | Solve it with |
|---|---|
You must ensure each parcel is picked up before it is delivered by the same courier. |
|
You must meet strict time windows, especially for pick-up stops. |
Add time window constraints constraints to pick-up and delivery locations. |
You must not exceed a courier’s carrying capacity. |
Define capacity limits and specify how much capacity each job requires. |
You want to prioritize urgent or premium shipments. |
Assign priorities to critical jobs. |
You need to meet strict SLAs. |
Define stop SLAs to reduce risk. |
You want to minimize total driving time or distance. |
Use route optimization objectives. |
You want to adapt routes when new delivery requests arrive during the day. |
Implement real-time replanning. |
You need to fit urgent pick-ups, for example an urgent (STAT) specimen pick-ups, around scheduled runs. |
Give urgent jobs a higher priority and a stop SLA, and add them with real-time replanning. |
You need to keep stops that are already committed or in progress in place when you replan. |
Pin stops so the model only changes the rest of the plan. |
A stop takes longer than expected and later stops are at risk of being late. |
Use real-time reassignment to move affected stops to other drivers. |
You want to complete all jobs without excessive overtime. |
Set shift hours and overtime limits so overtime is minimized against the rest of the plan. |