NELGNov 22, 2023

PyVRP: a high-performance VRP solver package

arXiv:2403.13795v286 citationsh-index: 4
Originality Incremental advance
AI Analysis

This provides a high-performance, customizable solver for researchers and practitioners working on vehicle routing problems, enabling easier and faster development, though it is incremental as it builds on existing hybrid genetic search methods.

The authors introduced PyVRP, a Python package implementing a hybrid genetic search algorithm for solving vehicle routing problems (VRP), which achieved first-place rankings in the 2021 DIMACS VRPTW challenge and the static variant of the EURO meets NeurIPS 2022 competition, demonstrating state-of-the-art results on VRPTW and capacitated VRP benchmarks.

We introduce PyVRP, a Python package that implements hybrid genetic search in a state-of-the-art vehicle routing problem (VRP) solver. The package is designed for the VRP with time windows (VRPTW), but can be easily extended to support other VRP variants. PyVRP combines the flexibility of Python with the performance of C++, by implementing (only) performance critical parts of the algorithm in C++, while being fully customisable at the Python level. PyVRP is a polished implementation of the algorithm that ranked 1st in the 2021 DIMACS VRPTW challenge and, after improvements, ranked 1st on the static variant of the EURO meets NeurIPS 2022 vehicle routing competition. The code follows good software engineering practices, and is well-documented and unit tested. PyVRP is freely available under the liberal MIT license. Through numerical experiments we show that PyVRP achieves state-of-the-art results on the VRPTW and capacitated VRP. We hope that PyVRP enables researchers and practitioners to easily and quickly build on a state-of-the-art VRP solver.

Code Implementations2 repos
Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes