An exact solution framework for a broad class of vehicle routing problems

Roberto Baldacci, Enrico Bartolini, Aristide Mingozzi, Roberto Roberti

Research output: Contribution to journalJournal articleResearchpeer-review

252 Downloads (Pure)

Abstract

This paper presents an exact solution framework for solving some variants of the vehicle routing problem (VRP) that can be modeled as set partitioning (SP) problems with additional constraints. The method consists in combining different dual ascent procedures to find a near optimal dual solution of the SP model. Then, a column-and-cut generation algorithm attempts to close the integrality gap left by the dual ascent procedures by adding valid inequalities to the SP formulation. The final dual solution is used to generate a reduced problem containing all optimal integer solutions that is solved by an integer programming solver. In this paper, we describe how this solution framework can be extended to solve different variants of the VRP by tailoring the different bounding procedures to deal with the constraints of the specific variant. We describe how this solution framework has been recently used to derive exact algorithms for a broad class of VRPs such as the capacitated VRP, the VRP with time windows, the pickup and delivery problem with time windows, all types of heterogeneous VRP including the multi depot VRP, and the period VRP. The computational results show that the exact algorithm derived for each of these VRP variants outperforms all other exact methods published so far and can solve several test instances that were previously unsolved. © 2009 Springer-Verlag.
Original languageEnglish
JournalComputational Management Science
Volume7
Issue number3
Pages (from-to)229-268
Number of pages40
ISSN1619-697X
DOIs
Publication statusPublished - 2010
Externally publishedYes

Keywords

  • Management Information Systems
  • Information Systems
  • Dual ascent
  • Set partitioning
  • Valid inequalities
  • Vehicle routing
  • 90-02
  • 90C27
  • 49M29
  • 90C39

Cite this