Efficient Large-Scale Multi-Drone Delivery using Transit Networks - Robotics Institute Carnegie Mellon University

Efficient Large-Scale Multi-Drone Delivery using Transit Networks

Shushman Choudhury, Kiril Solovey, Mykel J. Kochenderfer, and Marco Pavone
Journal Article, Journal of Artificial Intelligence Research, Vol. 70, pp. 757 - 788, February, 2021

Abstract

We consider the problem of routing a large fleet of drones to deliver packages simultaneously across broad urban areas. Besides flying directly, drones can use public transit vehicles such as buses and trams as temporary modes of transportation to conserve energy. Adding this capability to our formulation augments effective drone travel range and the space of possible deliveries but also increases problem input size due to the large transit networks. We present a comprehensive algorithmic framework that strives to minimize the maximum time to complete any delivery and addresses the multifaceted computational challenges of our problem through a two-layer approach. First, the upper layer assigns drones to package delivery sequences with an approximately optimal polynomial time allocation algorithm. Then, the lower layer executes the allocation by periodically routing the fleet over the transit network, using efficient, bounded suboptimal multi-agent pathfinding techniques tailored to our setting. We demonstrate the efficiency of our approach on simulations with up to 200 drones, 5000 packages, and transit networks with up to 8000 stops in San Francisco and the Washington DC Metropolitan Area. Our framework computes solutions for most settings within a few seconds on commodity hardware and enables drones to extend their effective range by a factor of nearly four using transit.

BibTeX

@article{Choudhury-2021-126285,
author = {Shushman Choudhury and Kiril Solovey and Mykel J. Kochenderfer and Marco Pavone},
title = {Efficient Large-Scale Multi-Drone Delivery using Transit Networks},
journal = {Journal of Artificial Intelligence Research},
year = {2021},
month = {February},
volume = {70},
pages = {757 - 788},
}