The traveling purchaser problem, with multiple stacks and deliveries: A branch-and-cut approach
The Double Traveling Salesman Problem with Multiple Stacks is a pickup-and-delivery single-vehicle routing problem which performs all pickup operations before the deliveries. The vehicle has a loading space divided into stacks of a fixed height that follows a Last-In-First-Out policy. It has to collect products following a Hamiltonian tour in a pickup region, and then deliver them following a Hamiltonian tour in a delivery region. The aim is to minimize the total routing cost while satisfying the vehicle loading constraints. A generalization of this problem considers that each product is offered in several pickup locations at different prices, that is, the pickup locations are markets. That means that the pickup tour may not be Hamiltonian, and therefore the set of locations to be visited during the pickup tour is unknown in advance. The delivery locations represent customers, each requiring a product, and all of them must be visited by the vehicle. Thus, this problem has to select a subset of pickup locations to purchase the products, to determine a tour visiting the selected pickup locations, and to design a Hamiltonian tour which visits the delivery locations. The aim is to minimize the purchasing cost plus the total routing cost, subject to the vehicle loading constraints. This paper introduces and formulates this generalization, called the Traveling Purchaser Problem with Multiple Stacks and Deliveries. It proposes valid inequalities, and adapts some constraints defined for the Double Traveling Salesman Problem with Multiple Stacks by other authors. This formulation motivates a Branch-and-Cut algorithm whose performance has been tested on 240 instances from the literature properly adapted. Our computational experience confirms the effectiveness of the valid inequalities here proposed, and shows that instances of up to 24 products and 32 markets can be solved to optimality.
traveling purchaser problem branch-and-cut last-in-first-out pickup and delivery