The Double Traveling Salesman Problem with Multiple Stacks and a Choice of Container Types

The double traveling salesman problem with multiple stacks involves the transportation of goods between two regions. In one region, a vehicle carrying a container visits customers, where pallets of goods are loaded into the container. The container is then shipped to a different region, where another vehicle visits another set of customers where the pallets are unloaded. Pallets are loaded in several rows inside the container, where each row follows the last-in-first-out principle. The standard test instances for the double traveling salesman problem with multiple stacks implies the use of a 45-foot pallet wide container to carry EUR-1 pallets. This paper investigates the effect on transportation costs if an open side container could be used when transporting the pallets. Computational experiments show savings in transportation costs of up to 20%. Moreover, by using a container loaded from the side, rather than from the rear, the defining attributes of the double traveling salesman problem seem to be lost.


Introduction
Petersen and Madsen [1] introduced an optimization problem referred to as the double traveling salesman problem with multiple stacks, based on a prospective customer of a company producing computer software systems for transportation companies. The problem is set in two different regions. A vehicle carrying a container must visit customers to make pickups in one region. The container is then transported to a different region, whereupon a different vehicle carries the container while visiting customers to make deliveries. It is not possible to repack the container en route, and an opening in one end of the container provides the only access to its contents.
The items transported are standardized pallets and each container can fit a given number of R rows with a limited number of L pallets each. This information is crucial, due to the inability to repack the container. Each row of pallets forms a stack that must be loaded and unloaded based on a first-in-last-out principle. This provides a set of difficult linking constraints that must be taken into consideration when routing the vehicle in both the pickup region and the delivery region. For a given total capacity of R * L, the loading constraints are most severe when R is low and L is high, whereas having a high value of R provides more flexibility.
Since its introduction, the double traveling salesman problem with multiple stacks has received significant attention from researchers, examining both exact and heuristic solution methods, as well as performing studies on computational complexity and polyhedral analysis. However, it seems that the Table 1. Selected values for the number of stacks R and their capacity L based on different pallets and container technologies. The first three rows correspond to values that are covered by existing instances. Vertically stacked EUR-6 pallets, 45 ft container loaded from the side The rest of this paper is structured, as follows. Section 2 reviews the related literature, while Section 3 presents the mathematical formulation of the double traveling salesman problem with multiple stacks and the solution methods used in our analysis. Section 4 contains a computational study, with the aim of determining the importance of considering different container types in the considered problem. The paper is concluded with Section 5, where some conclusions and additional thoughts about underlying assumptions of the problem are presented.

Literature
The double traveling salesman problem with multiple stacks was first introduced by Petersen and Madsen [1], who presented several heuristic algorithms for the problem, based on iterated local search, tabu search, simulated annealing, and large neighborhood search. Variable neighborhood search for the problem was examined by Felipe et al. [2], with improvements in [3], whereas Urrutia et al. [4] presented a dynamic programming based local search method.
Several mathematical formulations of the double traveling salesman problem with multiple stacks with corresponding solution strategies were presented by Petersen et al. [5]. A specialized algorithm was given by [6] and improved by Lusby and Larsen [6], based on combining separate traveling salesman problems for the pickup region and the delivery region. Branch-and-cut was used by Alba Martínez et al. [7], whereas Carrabs et al. [8] presented a branch-and-bound algorithm for the problem with only two stacks. Two stacks, with infinite capacity each, was also solved by Barbato et al. [9] using a set covering approach, and in [10] using a branch-and-cut algorithm.
Some of the theoretical properties of the problem were investigated by Casazza et al. [11], leading to a simple heuristic method. Given a route for the pickup region and a route for the delivery region, Toulouse and Calvo [12] showed that it can be decided in polynomial time whether or not a feasible stacking exists. Furthermore, Toulouse and Calvo [12] also showed that, given a stacking, optimal routes conditional on the stacking can be determined in polynomial time. Bonomo et al. [13] discussed similar complexity results.
After the introduction of the double traveling salesman problem with multiple stacks, many variants have also been considered in the literature: Iori and Riera-Ledesma [14] presented a generalization with multiple vehicles, and gave three mathematical formulations with corresponding exact solution methods. Heuristics based on iterated local search, simulated annealing, and variable neighborhood descent were proposed for this problem by da Silveira et al. [15]. Another simulated annealing implementation was provided by Chagas et al. [16] and a variable neighborhood search by Chagas et al. [17].
Another variation arises when considering a pickup and delivery traveling salesman problem with multiple stacks, where the nodes to visit are not necessarily split into two separate regions. A large neighborhood search was proposed for this generalization by Côté et al. [18], whereas both Pereira and Urrutia [19] and Sampaio and Urrutia [20] presented branch-and-cut algorithms.
The pickup and delivery problem with time windows and multiple stacks was investigated by [21]. Other types of loading constraints have been considered in the literature as well. Doerner et al. [22] considered the transportation of wood products, while using both a tabu search and an ant colony optimization method. Gendreau et al. [23] used tabu search and Iori et al. [24] a branch-and-cut algorithm for vehicle routing problems with two-dimensional loading constraints. Fuellerer et al. [25] used ant colony optimization for a vehicle routing problem with three-dimensional loading constraints, and Chagas et al. [26] considered partial last-in-first-out loading constraints. Iori [27] presented a survey on combined routing and loading problems and is recommended for further details about related problems.
Even though a wide variety of problems with loading and capacity constraints leading to stacks of items have been approached in the literature through different methodologies, as far as the authors are aware, none of them performed an analysis of the practical consequences that the choice of container types and packing patterns used for transportation may have on the final costs. This is the research gap that this paper tries to fill, focusing on the case of the original double traveling salesman problem with multiple stacks.

Background
In this section, we first provide a mathematical model to formally define the studied problem. Next, we describe the solution methods used in the analysis.

Mathematical Model
The double traveling salesman problem with multiple stacks was modelled for the first time by Petersen and Madsen [1].
be two complete graphs representing, respectively, the pickup and delivery networks of the problem. For every ω ∈ {1, 2}, edge (i, j) ∈ A ω of G ω has a certain weight c ω ij , representing the travel cost between nodes i and j. Let n be the number of orders and the node sets where v ω 0 is the depot and v ω 1 , . . . , v ω n represent the n orders. The configuration of the container used for transportation is given by the number of available stacks, being denoted by R, and their maximum capacity, denoted by L.
In addition, we have set V ω * = V ω \{v ω 0 }, containing all nodes, but the depot in each graph ω ∈ {1, 2}, and set P = {1, · · · , R}, representing the R available stacks. The set of orders is D = {1, · · · , n}, in a way that the item associated to each order i ∈ D must be picked up at v 1 i ∈ V 1 * of G 1 , loaded into a certain stack p ∈ P, and delivered at v 2 i ∈ V 2 * of G 2 . The problem is modelled as a binary program through three sets of binary variables. The routes of the solution are given by variables {x ω ij }, which determine directly the values of variables {y ω ij }, that indicate precedence between pickups and deliveries. The assignment of orders to stacks is given by variables {z ip }. They are defined in what follows, where ω ∈ {1, 2}.
The objective function (1), to be minimized, is the sum of all pickup and delivery costs. The flow conservation constraints are given in (2) and (3), while the right definition of {y ω ij } variables is ensured by constraints (4)-(6) and the LIFO order to be followed in each stack is imposed by Equation (7). Finally, constraints (8) indicate that each order must be assigned to one, and only one, stack and constraints (9) make sure that the maximum capacity of the stacks is not exceeded.

Solution Method
Metaheuristics are problem-independent algorithmic frameworks that describe strategies for developing powerful heuristic optimization methods [28]. Therefore, they can be applied to a wide range of problems, such as optimizing non-linear functions of continuous variables [29] or linear functions on binary variables [30]. For the double traveling salesman problem with multiple stacks, to analyze the choice of container types and packing patters, this paper uses a variable neighborhood search [3].
Variable neighborhood search was introduced by Mladenović and Hansen [31]. It is based on the performance of several consecutive local search procedures by changing the neighborhood structure used to define neighbors every time that the search gets stuck in a local optimum. This is a simple idea that has produced very good results in a wide variety of hard optimization problems. The algorithm we use to solve the double traveling salesman problem with multiple stacks is based on an enhanced variable neighborhood search with some additional elements that are specifically adapted to the problem at hand [3]. Six different neighborhood structures or operators, each of which define a local search procedure, are used: Route Swap (swaps the positions of two consecutive orders in one of the routes of the solution), Complete Swap (swaps the stack positions of two orders that are assigned to different stacks), In-Stack Swap (swaps the stack positions of two orders that are assigned to the same stack), Reinsertion (moves one order to a different position in both routes of the solution and reassigns it to a different stack), r-Route Permutation (r orders that are assigned to different stacks and visited consecutively in one route are permuted), and r-Stack Permutation (r orders that are loaded consecutively into the same stack are permuted). The core of the solution method is a variable neighborhood descent (VND) algorithm in which several local search procedures using these neighborhood structures are concatenated. The VND takes as input an initial feasible solution S and the set ∆ = {∆ k , k = 1, · · · , n ∆ } of neighborhood structures to be used for the local search. A pseudocode of the VND algorithm is given in what follows.

Stopping condition:
• If k ≤ n ∆ go back to step 2.
• If k > n ∆ and improve, do k = 1 and go back to step 2.
Otherwise, END: the best solution found is S.
VND outputs an improved solution which is a local optimum with respect to all neighborhood structures in ∆. Every time a VND execution finishes, a perturbation phase consisting in the performance of a certain number of random moves is applied, in order to escape from the current local optimum, and the VND is applied again to the perturbed solution. In addition to this, several enhancing features are introduced into this basic algorithm in order to improve its performance: more than one initial solution are generated and a different search is performed from each of them; an additional intensification phase is carried out, starting from the best improved initial solution; different orderings of the neighborhood structures used in the VND are considered, choosing randomly among them according to certain probabilities; if the current solution could not be improved after many iterations or it is too far from the best known solution, the search process is restarted; to avoid undoing perturbation moves, tabu lists for the different involved operators are used; the temporal relaxation of some precedence and capacity constraints, controlled through several infeasibility measures and correction procedures to ensure feasibility, is considered for diversification purposes.
The algorithm is fed initial solutions generated in two ways. The first one consists in solving the particular case with only one stack, whose solutions are always feasible for any loading plan with any container configuration. The advantage of this problem is that it reduces to a standard traveling salesman problem in a network whose arc weights are the sum of the weights of the two networks of the original problem. The second one is by using a simple randomized procedure, properly guided in order to ensure the feasibility of the obtained solutions. This second procedure is important to generate a wide variety of initial solutions.
In addition, the two traveling salesman problems induced by dropping all loading constraints on both the pickup and the delivery region of any instance are solved to optimality independently in order to obtain a lower bound: no container configuration or loading pattern can possibly improve the sum of the costs of the two optimal traveling salesman problem solutions. This has been done by using the TSP function of the optimizer OPTMODEL NETWORK from SAS software. This function implements a variant of the branch-and-cut algorithm by Applegate et al. [32], which is one of the most efficient exact methods available in the literature. Default parameters regarding the use of cutting planes, heuristics, node, and branching variable selection, identified as AUTOMATIC by SAS, were used.

Computational Study
Test instances for the double traveling salesman problem with multiple stacks were introduced by Petersen and Madsen [1], consisting of twenty instances with 33 customers, and twenty instances with 66 customers. These instances are used in four different experiments to evaluate how the choice of containers and packing patterns influences the transportation costs. The experimental design is simply to solve each of the forty basic instances based on different container configurations and compare the results, rather than relying on more complex experimental designs [33]. The results are obtained by applying the heuristic described in Section 3.2.
The heuristic was run on an Intel Core i5-3210M CPU 2.50 GHz with 6 GB RAM, with a running time of 10 min. for the instances with 33 customers, and 30 min. for the instances with 66 customers.
A lower bound for each instance has been calculated by solving separately the two independent traveling salesman problems that arise when dropping the precedence constraints that are associated with the last-in-first-out principle imposed on the loading of the container. These lower bounds, obtained by using the SAS software, represent the minimum costs that must be covered, even in the absence of loading constraints.
The first experiment considers a container loaded from the back with EUR-1 pallets. The standard packing pattern is R = 3 and L = 11, for a total capacity of 33 pallets. Assume that the company needs the full capacity to serve regular customers. Now, if the company has an extra demand for transportation of one pallet from the depot of the pickup region to the depot of the unloading region, one solution is to use a different packing pattern, such as R = 2 and L = 17, for a total capacity of 34 pallets. Table 2 provides results showing how the total transportation cost changes for 20 standard test instances for selected packing patterns. The table shows, for each instance, the lower bound from solving traveling salesman problems of each region separately ("LB"), the transportation cost ("Cost"), and the relative deviation between the lower bound and the cost ("Dev"). For the first experiment, the average deviation from the lower bound increases from 14.1% to 28.4% when switching packing patterns to facilitate one extra pallet.
The second experiment tests the effect of introducing an open side container, instead of a container loaded from the back. Suitable open side containers may require additional customization, as compared to the more standard containers loaded from the back. To balance this, one would expect that the transportation costs can be reduced, as an alternative packing pattern with many short rows is possible, yielding much flexibility in the routing decisions. Table 2 shows the results for the most flexible alternative packing pattern with R = 17 and L = 2. For each of the 20 test instances, the heuristic is able to find a solution that matches the lower bound, providing a reduction in the transportation costs of 12% when compared to the use of a standard container loaded from the back (R = 3, L = 11). In the case where an additional pallet is transported between the depots, the saving in transportation cost amounts to 22% when using R = 17 and L = 2 instead of R = 2 and L = 17.
In the third experiment, the transportation of EUR-6 pallets is considered. Assuming that 66 pallets are to be transported in a regular 45-foot pallet wide container, the standard packing pattern of the test instances could be used, with R = 3 and L = 22. However, for EUR-6 pallets, an alternative pattern is available, with R = 4 and L = 17, while using the same type of container. This is expected to lead to lower transportation costs, as the added row provides more flexibility. Table 3 confirms this, as the average deviations to the lower bound are 29.7% and 18.7% for R = 3 and R = 4, respectively.
The fourth experiment deals with vertically stacked EUR-1 pallets and a demand of 66 pallets to be transported. For a standard container, the standard packing pattern has R = 3 stacks with L = 22 pallets, where pallets in each row are placed in two layers on top of each other. If an open side container is available, however, a packing pattern with R = 11 stacks of length L = 6 can be used. Table 3 shows that the open side container again leads to significantly reduced transportation costs, saving almost 21% when compared to the container loaded from the back. However, for this setting, there is still a 2.8% gap from the solutions obtained to the lower bound, meaning that it is still important to consider loading decisions when optimizing the routes. The experiments show that the choice of container configuration is important. Using a standard container loaded from the rear leads to transportation routes that are much longer and more expensive that what could be achieved with a container loaded from the side. It seems that existing heuristic solution methods can cope very well with the high number of stacks that result from an open side container. One might conjecture that certain exact methods, such as those developed by Lusby et al. [34], may benefit significantly when solving the problem with open side containers.

Concluding Remarks
The double traveling salesman problem with multiple stacks, introduced by Petersen and Madsen [1], has received substantial interest from researchers. The problem was based on real-world transportation requirements, which represented a novel challenge in the way that routing decisions were combined with packing decisions. As the problem provided ample venues for research on theoretical aspects of the problem, as well as on the development of efficient heuristic and exact solution methods, it might be valid to ask whether additional aspects of the real-world application may have been overlooked.

Main Conclusions
The implied choice of container technology in the double traveling salesman problem with multiple stacks was examined in this paper. Additional test instances can be derived, depending on the packing pattern used, and on whether the container is loaded from the back or from the side. It was demonstrated that the total transportation cost is highly dependent on the container choice, in some cases resulting in savings of more than 20% by allowing for the use of open side containers.

Limitations
The current study might not have exhausted all relevant variations of container technologies.
As further examples, one could consider double door containers, where doors are available on both short sides of the container. This means that the container can be loaded while using one of the doors in the pickup-region and unloaded using either of the doors in the delivery-region, implying that there is a choice between last-in-first-out loading and first-in-first-out loading. Yet, other variants can be derived using open top containers, where goods are loaded and unloaded from the top side of the container, given that suitable equipment for loading and unloading is available at each customer location.
Different loading decisions may require the consideration of load stability, depending on the weight of the goods transported. Consider as an example Figure 2: if each pallet has a significant weight, a load as indicated might lead to dangerous situations on the road, as the content of the container is much heavier on one side. The issue of stability might be more critical when using open side containers, but the increased flexibility might nevertheless be economically attractive, at the expense of dealing with an optimization problem that has additional constraints to ensure stability at each leg of the routes. Another issue not tackled in current research is when some customers have more than one pallet to be transported. The customer might require that only one visit is made, but might also require that different pallets are delivered to different locations.