Skip to main navigation Skip to search Skip to main content

Integrating shift planning and pick-up and delivery problems under limited courier availability

Research output: Contribution to journal › Article › Academic › peer-review

2 Citations (Scopus)
59 Downloads (Pure)

Abstract

Delivery couriers increasingly demand working in a flexible arrangement. Flexible contracts can be cost-effective from the perspective of a delivery company, but may also cripple its ability to serve all customers in time as couriers are not always available. To alleviate the complexities caused by courier-related constraints, delivery companies usually operate with a work schedule consisting of multiple shifts—allowing couriers to choose the shifts they prefer working in. Inspired by this trend and a real-world case, we propose a variant of pick-up and delivery problem with time windows considering multiple shifts and courier availability. We present a mixed-integer linear programming model and a set partitioning model that maximize the total profit by deciding on the shift allocation and the couriers’ delivery routes, taking courier shift preferences and vehicle availability into account. The model is solved exactly using a branch-price-and-cut algorithm. We generate a set of practically relevant instances to conduct computational experiments. Our results highlight the benefits of bundling customer requests and the challenges posed by limited courier availability in terms of the number of requests served. Bundling mitigates the negative impact of limited courier availability, while having more couriers can serve as an alternative.
Original languageEnglish
Pages (from-to)343-356
Number of pages14
JournalEuropean Journal of Operational Research
Volume326
Issue number2
Early online date13-Apr-2025
DOIs
Publication statusPublished - 16-Oct-2025

Fingerprint

Dive into the research topics of 'Integrating shift planning and pick-up and delivery problems under limited courier availability'. Together they form a unique fingerprint.

Cite this