PyVRP logo

PyVRP is an open-source, state-of-the-art vehicle routing problem (VRP) solver. It currently supports VRPs with:

  • Pickups and deliveries between depots and clients (capacitated VRP, VRP with simultaneous pickup and delivery, VRP with backhaul);

  • Vehicles of different capacities, costs, shift durations, routing profiles, and maximum distance and duration constraints (heterogeneous fleet VRP, site-dependent VRP);

  • Time windows, client service durations, and release times (VRP with time windows and release times);

  • Multiple depots (multi-depot VRP);

  • Optional clients with prizes for visiting (prize collecting, team orienteering problem);

  • Client groups imposing additional restrictions on multiple clients jointly (generalised VRP, VRP with multiple time windows).

The PyVRP package comes with pre-compiled binaries for Windows, Mac OS and Linux, and can thus be easily installed without requiring local compilation. It can be installed through pip via

pip install pyvrp


If you are new to vehicle routing or metaheuristics, you might benefit from first reading the introduction to VRP, introduction to HGS, and tutorial pages. To set up an installation from source, or to run the examples listed below yourself, please have a look at the installation instructions.