Polyhedral analysis and effective algorithms for the capacitated vehicle routing problem (set partitioning, column generation)
暂无分享,去创建一个
In this thesis, we study the capacitated vehicle routing problem, CVRP, and develop a branch-cut-and-price algorithm for its solution. The main research contributions may be stated as follows: (1) The development of a branch-and-cut algorithm for the prize-collecting traveling salesman problem, PCTSP, a subproblem of the CVRP. This algorithm includes a new class of cuts, a heuristic for separation over these cuts, an effective heuristic for finding good integer solutions, and new branching rules. (2) The development of a branch-cut-and-price algorithm for the CVRP. This algorithm uses our branch-and-cut method for the PCTSP as a subroutine, and includes a new class of cuts, a heuristic for separation over these cuts, and new branching rules. (3) The implementation of our algorithms for the PCTSP and the CVRP. The effectiveness of these implementations on a large set of problems has been a driving force in the development of the algorithms. We present computational results for PCTSP instances ranging in size from 76 to 657 nodes, and for CVRP instances ranging in size from 7 to 51 nodes. We also present many of the details contributing to the effectiveness of our implementations.
This thesis consists of four chapters and three appendices. The first chapter is an introductory chapter. In it we provide the definition of the vehicle routing problem, discuss applications, and provide motivation for the approach we have chosen. The second chapter is on the PCTSP. We define the problem, discuss current solution methods, present a branch-and-cut algorithm, and discuss computational experience. The subject of the third chapter is our solution method for the CVRP. We present a branch-cut-and-price algorithm, and discuss computational experience. In the fourth chapter we present conclusions, and discuss directions for future research.
In the first appendix, we provide a diagram of the solution algorithm for the PCTSP, a solution log for one problem, and some analysis of the log. In the second appendix we do the same for the CVRP. In the third appendix we describe some of the C++ classes we developed for the algorithm implementation.