RoutingBlocks: An Open-Source Python Package for Vehicle Routing Problems with Intermediate Stops

Patrick S. Klein, Maximilian Schiffer

Research output: Contribution to journalArticlepeer-review

1 Scopus citations

Abstract

We introduce RoutingBlocks, a versatile open-source Python package designed to simplify the development of algorithms for vehicle routing problems with intermediate stops (VRPIS). The package offers a variety of modular algorithmic components and optimized data structures crafted specifically to address key challenges of VRPIS, such as a lack of exact constant-time move evaluations and difficult station visit decisions. By using a unified solution and instance representation that abstracts problem-specific behavior (for example, constraint checking, move evaluation, and cost computation) into well-defined interfaces, RoutingBlocks maintains a clear separation between algorithmic components and specific problem configurations, thus allowing the application of the same algorithm to a variety of problem settings. Leveraging an efficient C++ implementation for performance-critical core elements, RoutingBlocks combines the high performance of C++ with the user-friendliness and adaptability of Python, thereby streamlining the development of effective metaheuristic algorithms. As a result, researchers using RoutingBlocks can focus on their algorithms’ core features, allocating more resources to innovation and advancement in the VRPIS domain.

Original languageEnglish
Pages (from-to)966-973
Number of pages8
JournalINFORMS Journal on Computing
Volume36
Issue number4
DOIs
StatePublished - Jul 2024

Keywords

  • metaheuristic algorithms
  • open-source software
  • Python
  • vehicle routing

Fingerprint

Dive into the research topics of 'RoutingBlocks: An Open-Source Python Package for Vehicle Routing Problems with Intermediate Stops'. Together they form a unique fingerprint.

Cite this