A new model for the asymmetric vehicle routing problem with simultaneous pickup and deliveries

A new model for the asymmetric vehicle routing problem with simultaneous pickup and deliveries

Journal Pre-proof A new model for the asymmetric vehicle routing problem with simultaneous pickup and deliveries Yogesh Kumar Agarwal, Prahalad Venkat...

298KB Sizes 0 Downloads 63 Views

Journal Pre-proof A new model for the asymmetric vehicle routing problem with simultaneous pickup and deliveries Yogesh Kumar Agarwal, Prahalad Venkateshan

PII: DOI: Reference:

S0167-6377(19)30134-8 https://doi.org/10.1016/j.orl.2019.11.005 OPERES 6527

To appear in:

Operations Research Letters

Received date : 11 March 2019 Revised date : 16 November 2019 Accepted date : 17 November 2019 Please cite this article as: Y.K. Agarwal and P. Venkateshan, A new model for the asymmetric vehicle routing problem with simultaneous pickup and deliveries, Operations Research Letters (2019), doi: https://doi.org/10.1016/j.orl.2019.11.005. This is a PDF file of an article that has undergone enhancements after acceptance, such as the addition of a cover page and metadata, and formatting for readability, but it is not yet the definitive version of record. This version will undergo additional copyediting, typesetting and review before it is published in its final form, but we are providing this version to give early visibility of the article. Please note that, during the production process, errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.

© 2019 Elsevier B.V. All rights reserved.

Journal Pre-proof

A New Model for the Asymmetric Vehicle Routing Problem with Simultaneous Pickup and Deliveries Prahalad Venkateshan†

pro of

Yogesh Kumar Agarwal∗

November 16, 2019

Abstract

1

re-

The asymmetric vehicle routing problem with simultaneous pickup and deliveries is considered. This paper develops four new classes of valid inequalities for the problem. We generalize the idea of a no-good cut. Together, these help us solve 45-node randomly generated problem instances more efficiently. We report results on a set of benchmark instances in literature. In this set, we are able to show an order of magnitude improvement in computational times over currently published results in literature. Keywords: Reverse Logistics; Branch-and-cut; VRP with simultaneous pickup and delivery

Introduction



Jo

urn a

lP

In this paper, the asymmetric vehicle routing problem with simultaneous pickup and deliveries (AVRPSPD) is considered. Given are a depot, denoted by 0, and N customers. We define N as the set of all customers, and N 0 = N ∪ {0} as the set of all nodes, including the depot. Customers and the depot are indexed by i or j. Each customer i is characterized by a pickup amount, ai ≥ 0, of a commodity and a delivery amount, bi ≥ 0, of a potentially different and independent commodity. Identical vehicles, each with capacity C, are initially stationed at the depot. The pickup and delivery amounts individually do not exceed the vehicle capacity. Travelling from i to j incurs a cost cij . A vehicle begins its route with the amount of cargo equal to the sum of the delivery amounts of all customers included in its route. It is required that this total amount of starting cargo not exceed C. At the ith customer location, the delivery quantity, bi , is first unloaded from the vehicle. The pickup amount, ai , is then loaded onto the vehicle. Throughout its route, the total amount of cargo in the vehicle (which will include as yet undelivered cargo and the cargo picked up thus far) cannot exceed the vehicle capacity C. The pickup and delivery amounts and type of commodity are independent and only coupled via the finite capacity C of the vehicles. The objective is to satisfy all customer demand (pickups and deliveries) at least cost, while visiting each customer exactly once. Problems with simultaneous pickups and deliveries occur in the context of reverse logistics. In these settings, in addition to delivering to customer locations from stocking points, the units delivered in one time period become available for pickup in the subsequent periods. Examples include distribution of beer and soft drinks in bottles, blood vials to and from hospitals (see [1]), Indian Institute of Management, Prabandh Nagar, Lucknow - 226013, India. [email protected] Corresponding author, Indian Institute of Management, Vastrapur, Ahmedabad - 380015, India. [email protected]

1

praha-

Journal Pre-proof

2

lP

re-

pro of

product returns, amongst others. See [7] for a comprehensive review of various models and problems in reverse logistics. The literature on vehicle routing problems (VRPs) is enormous. The traditional capacitated vehicle routing problem (CVRP) deals only with either pickups or deliveries. Monographs dealing with the CVRP include [20], [12] and [21]. In the problem considered in this work, the same vehicle needs to handle both pickups and deliveries simultaneously. A related problem in literature is the VRP with backhauls. This problem deals with cases where a vehicle has to complete delivery to all customers before starting pickups. Refer to [11], [18], [19], [14] and [22] for exact and heuristic methods to solve this problem. The vehicle routing problem with simultaneous pickup and deliveries (VRPSPD) has been studied in [4], [10] and [3]. Models and benchmark solutions exist in the literature for the symmetric version of this problem (see [8], [16]), abbreviated as SVRPSPD. It is pertinent to note that the AVRPSPD has been considered previously in literature. To the best of our knowledge, [15] is the only previous work to study the AVRPSPD. In Section 2, we compare the model developed in this paper with the model presented in [15]. In Section 6.3, we compare the performance of our model with the performance of the model in [15] on benchmark instances reported in [15]. Asymmetric problems arise frequently in urban contexts with one-way streets, or cities with a sloping road terrain, amongst others. In addition to being able to solve such asymmetric problems, the methodology developed in our work that uses a directed model can also be used to solve versions of the VRPSPDs with time windows. (See [2] for one such application.) Such problems require a directed model even though the underlying cost matrix may be symmetric (see [6] and [9], for instance.) In the remainder of this paper, the abbreviation VRPSPD denotes the generic problem regardless of whether the costs are symmetric or asymmetric.

Model

Jo

urn a

For S ⊂ N , we define A(S) = Σi∈S ai , and B(S) = Σi∈S bi . The following is a non-compact formulation of AVRPSPD using directed binary variables xij , where xij = 1 if the vehicle travels directly from node i to node j, and 0 otherwise.

2

Journal Pre-proof

X

Min.

X

cij xij

(1)

xij = 1 ∀j ∈ N

(2)

i∈N 0 j∈N 0 \{i}

X

s.t.

i∈N 0 \{j}

X

xji = 1 ∀j ∈ N

X X

xij ≤ |S| − 1 ∀S ⊂ N

i∈S j∈S\{i}

X

X

X

∀S ⊂ N

(5)

xij ≥ dB(S)/Ce

∀S ⊂ N

(6)

i∈S j∈N 0 \{S}

X

(4)

xij ≥ dA(S)/Ce

i∈S j∈N 0 \{S}

X

(3)

pro of

i∈N 0 \{j}

xij ≤ |K| − 1 ∀K ∈ K

(i,j)∈K

re-

xij ≥ 0, integer ∀i, j ∈ N 0

(7) (8)

urn a

lP

The objective function (1) is to minimize the total cost of all vehicles. Constraints (2) and (3) ensure that a vehicle enters and leaves each node (except the depot) exactly once. Constraints (4) are the well-known subtour elimination constraints. Constraints (5), known as the rounded capacity inequalities in the standard VRP literature, ensure that the total quantity picked up on any route does not exceed the vehicle capacity. Constraints (6) ensure the same with respect to the quantity delivered on the route. We note that while constraints (5) and (6) ensure that total delivery and pickup quantities individually satisfy the capacity constraint, it is still possible that the total load on the vehicle may exceed the capacity at some intermediate leg along the route. The purpose of constraints (7) is to prohibit such routes. Let K be the set of all arcs not incident on the depot in any such infeasible route, and let K be the collection of all such arc sets, one set of arcs for each infeasible route. Then, constraints (7) ensure that such infeasible routes are prohitibed from the solution. The authors in [16] used similar constraints for the undirected version of the problem and called them no-good cuts.

Jo

To illustrate the no-good cut for the directed case, consider the route 0 → 3 → 2 → 1 → 4 → 0. Let the vehicle capacity be 10, and the pickup and delivery quantities, (ai , bi), at nodes 3, 2, 1 and 4 be, respectively, (3,2), (2,3), (2,3), (3,2). The vehicle will start from the depot with total cargo of 10 units. It is easy to see that the total load on the vehicle after leaving node 3 will be 11, which violates the vehicle capacity, even though the total pickup quantity and the total delivery quantity are both 10. For this route K = {(3, 2), (2, 1), (1, 4)}, which leads to the no-good cut x32 + x21 + x14 ≤ 2. We point out that in the undirected model used in [16], where distances are symmetric, a route is considered no-good only if it is infeasible in both directions, because otherwise it could always be used in the feasible direction. Note that for the example above, the route 0 − 3 − 2 − 1 − 4 − 0 would be a no-good route even for the undirected case. If the route is used in the reverse direction, the vehicle capacity will be violated as the vehicle departs from node 4. We refer to this model ((1) through (8)) as the directed model and the original model proposed in [16] is referred to as the undirected model. Due to symmetry, the undirected model needs 3

Journal Pre-proof

Solution Approach

lP

3

re-

pro of

only those variables xij where i < j, and therefore requires only half the number of variables as compared to the directed model. Note that our model determines the optimal number of vehicles needed endogenously. If there are explicit lower or upper bounds on the number of vehicles to use, they can be easily incorporated into the framework above. To the best of our knowledge, the authors in [15] provide the only other exact solution approach for the AVRPSPD. They present two models – the vehicle-flow model and the commodity-flow model. A key point of difference between the model in our work ((1) through (8)) and their model is that while our model is non-compact (the number of constraints (4), (5), (6) and (7) is exponential in size), their model is compact in size. In addition to the binary xij variables, the vehicle-flow model introduces a continuous variable for each customer representing the carried load on the vehicle after visiting the customer and another continuous variable representing the amount of the carried load that is cargo to be delivered. The commodity-flow model introduces a third continuous variable for each customer denoting the amount of picked up cargo thus far. By formulating a polynomial number of constraints involving these variables, they ensure that the model returns feasible routes. In Section 6.3, we report computational experience on AVRPSPD benchmark instances provided in [15]. The rest of the paper is organized as follows. In Section 3 we briefly describe the overall solution approach and highlight the contribution of this paper. Section 4 describes the details of the new valid inequalities developed for the problem. Section 5 describes how the no-good cuts can be generalized and made stronger. Section 6 describes the details of computational experiments and their results. Some concluding remarks are made in Section 7.

Jo

urn a

We note that the formulation given in the previous section is a non-compact formulation in that the constraint sets (4)-(7) each have an exponential number of constraints in them. The authors in [16] used a lazy-cut approach for solving the undirected version of the problem, and we use the same approach. In this approach, these constraints are omitted initially, and are added on an as-needed basis. The well-known CVRPSEP package (see [13]), which has been developed for traditional CVRP, implements efficient separation routines for several types of valid inequalities, including the subtour elimination and rounded capacity inequalities. In our approach, we use this package to add these inequalities corresponding to Constraints (4), (5) and (6) at the root node. Although CVRPSEP is designed to separate these inequalities for the undirected version of the problem, it can be easily adapted for the directed version as well. The package requires the following input: (1)Vehicle capacity C, (2)cargo amounts di for each customer, and (3)the current model solution activity on arc (i, j), i < j. Thus, any feasible solution for the AVRPSPD should satisfy all violated inequalities provided by the CVRPSEP package in which separately, di = ai , ∀i ∈ N and separately, di = bi , ∀i ∈ N . The current model solution activity on arc (i, j) is taken as xij + xji . This is the same method of usage of the CVRPSEP package as proposed for ASVRPSPD in [15]. Note that whether a no-good cut, corresponding to Constraint (7), is violated by a current solution or not is easily checked for an integer solution that satisfies all other constraints (2) through (6). It is only required to check each of the routes associated with the candidate integer solution. The authors in [16] used the lazy-cut approach for adding these cuts in CPLEX. A lazy-cut in CPLEX terminology is a violated cut found at a candidate integer solution. Note that given an integer solution, it is easy to check if a route violates the vehicle capacity at any leg. If so, a no-good cut is generated from that route, and is added as a globally valid cut, and the branch-and-bound search is continued.

4

Journal Pre-proof

pro of

In the present work, we enhance the basic approach described above in several ways. First, we propose a generalization of the no-good cut, which is much stronger than the simple no-good cut described above. In addition, we describe four new classes of valid inequalities that exploit the interplay of pickups and deliveries along a route. These inequalities can be separated with a simple heuristic approach. The generalized no-good cuts and the new classes of inequalities turned out to be extremely effective in reducing the branch-and-bound tree size and the computational time of the algorithm. We report an average 10-fold reduction in the running time on difficult problem instances compared to the basic approach that only uses the simple no-good cuts.

Jo

urn a

lP

re-

Another important contribution of this paper is to find a way to characterize the difficulty level of a problem. It was observed that for some instances very few no-good cuts are needed, while for others a large number of such cuts are needed to solve the problem. In the latter case, the instances are much harder to solve. Since most instances described in the literature, as well as the randomly generated instances by us, were found to be in the easy category, we devised a method of generating more difficult instances. This method is described in Section 6.2. We propose a way of quantifying the difficulty of a problem instance by measuring its gap from a relaxed version of the problem. A candidate vehicle route whose total delivery amount and the total pickup amount do not exceed the vehicle capacity is said to be 2-container feasible, even if the capacity is violated at some intermediate leg of the route. We define the 2-container vehicle routing problem (2CVRP) as a relaxation of VRPSPD that permits such routes. Conceptually, the 2CVRP may be visualized as the problem where a vehicle has two separate containers, each with capacity C, one of them used only for delivery quantities, and the other only for pickup quantities. When the vehicle leaves the depot, the delivery container is loaded with cargo to deliver to customers along the route, while the pickup container is empty. Along the route, the pickup container gets loaded with the cargo picked from the cutsomers. A 2-container feasible route is one in which neither container’s loaded amount exceeds C at any point in time. Thus, 2CVRP is a relaxation of AVRPSPD obtained by relaxing constraints (7). The key ingredient of the VRPSPD that makes it a more restrictive problem than the 2CVRP is the interplay between future customers to be visited and the cargo already picked up along a route. That is, in the VRPSPD, there is only a single container with capacity C and both pickups and deliveries should be stored in this container only. A solution to a VRPSPD is always feasible to 2CVRP but the converse is not true. Note that application of the CVRPSEP inequalities without the application of no-good cuts will generate an optimal solution (say, with objective function value of Z0 ) for the 2CVRP. Let the optimal objective function value of the VRPSPD be Z1 . A plausible hypothesis regarding the difficulty of solving an instance of the VRPSPD is that greater the 2CVRP 0 gap (calculated as 1− Z Z1 ), the greater the difficulty in solving the instance of VRPSPD. We validate this hypothesis in the computational experiments detailed in Section 6, by showing that the number of no-good cuts needed to solve the problem is much larger when this gap is high. Problem instances with low 2CVRP gap are those where constraints (7) are not very critical (more specifically, very few no-good cuts may need to be identified in a branch-and-bound enumerative process) and hence the VRPSPD instances are just as difficult to solve computationally as the 2CVRP, which in turn, is quite similar in difficulty to solving an instance of the traditional CVRP. In Section 6.3, we demonstrate that benchmark results published in literature thus far for AVRPSPD fall into this “easy” category, while the instances generated by our approach described in Section 6.2 are much harder in comparison.

5

Journal Pre-proof

4

Valid Inequalities for AVRPSPD

In this section, four new classes of valid inequalities for the AVRPSPD are stated and their validity proven.

4.1

Inequalities 1A and 1B

pro of

Consider P ⊂ N with A(P ) ≤ C and B(P ) ≤ C. Given such P , define Q = {i ∈ N \P : A(P ) + max{ai , bi} > C or B(P ) + bi > C}. Also define R = N 0 \{P ∪ Q}. Proposition 1. Given P , Q and R as defined above, the following inequality is valid for the AVRPSPD: XX

xij + 2

i∈P j∈Q

XX

xij ≥ 2

(Inequality 1A)

i∈P j∈R

re-

P P Proof.P Note that the inequality disallows only those solutions in which i∈P j∈Q xij = 1 and P i∈P j∈R xij = 0. It is easy to see that given the definitions of P and Q, such a solution will violate the vehicle capacity constraint. Since there is only one arc exiting from P , it implies that all nodes in P are served by a single vehicle. If this vehicle travels from P to any node i ∈ Q, then one of the following must be true: (1) A(P ) + ai > C (2) A(P ) + bi > C (3) B(P ) + bi > C

lP

It is easy to see that in each of the above cases, the vehicle capacity is violated at some point or the other. If (1) is true, the vehicle capacity is violated as the vehicle leaves node i. If (2) is true, then it is violated as the vehicle enters node i, and if (3) is true, then it is violated as the vehicle leaves the depot.

urn a

A mirror image of this inequality is obtained by reversing the role of pickups and deliveries. Consider P ⊂ N with A(P ) ≤ C and B(P ) ≤ C. Given such P , define Q = {i ∈ N \P : B(P ) + max{ai , bi} > C or A(P ) + ai > C}. Also define R = N 0 \{P ∪ Q}. Proposition 2. Given P , Q and R as defined above, the following inequality is valid for the AVRPSPD: XX

xij + 2

i∈Q j∈P

xij ≥ 2

(Inequality 1B)

i∈R j∈P

Inequalities 2A and 2B

Jo

4.2

XX

Again consider P ⊂ N with A(P ) ≤ C and B(P ) ≤ C. Given P , define Q = {i ∈ P : A(P )+bi −ai > C}, and P = N 0 \P . Proposition 3. Given P and Q as defined above, the following inequality is valid for the AVRPSPD: XX i∈Q j∈P

xij + 2

X X i∈P \Q j∈P

6

xij ≥ 2

(Inequality 2A)

Journal Pre-proof

pro of

P P Proof. Note P P that the inequality disallows only those solutions in which i∈Q j∈P xij = 1 and i∈P \Q j∈P xij = 0. It is easy to see that given the definitions of P and Q, such a solution will violate the vehicle capacity constraint. Since there is only one arc exiting P , it implies that all nodes in P are served by a single vehicle, and the last node of the vehicle is in set Q. Given the definition of Q, this implies that total load on the vehicle as it enters the last node in P , will exceed the capacity of the vehicle. In this case also, a mirror inequality is found by reversing the role of pickups and deliveries. Consider P ⊂ N with A(P ) ≤ C and B(P ) ≤ C. Given P , define Q = {i ∈ P : P (P )+ai −bi > C}, and P = N 0 \P . Proposition 4. Given P and Q as defined above, the following inequality is valid for the AVRPSPD: XX

xij + 2

xij ≥ 2

(Inequality 2B)

i∈P j∈P \Q

i∈P j∈Q

Separation of Inequalities

re-

4.3

X X

5

urn a

lP

At present, the complexity of the separation of inequalities 1A, 1B, 2A and 2B remains unknown. As a result, we use a simple and intuitive heuristic approach for separating these inequalities. Note that in all the inequalities, once set P is identified, other sets are automatically defined, and it can be easily checked if the corresponding inequality is violated or not. Therefore, our focus is on identifying a set P that is likely to produce a violated inequality. We gradually grow many potential sets P starting from sets containing only two nodes. At each stage, for a given subset, we check if it will produce a violated inequality. If yes, the process is stopped, and the inequality found is added. Otherwise, each subset is expanded by addition of a single node which leads to maximum increase in the interal capacity XP = Σi,j∈P xij of the subset. The process is started by selecting k edges with largest capacity in the current solution, thus defining k subsets, each with two nodes. Value of k can be defined by the user, which should be neither too small nor too large. We use k = 20 in our computational experiments.

Generalizing No-Good Cuts

Jo

The no-good cuts described in Section 2 were deployed in [16] as lazy-cuts in the undirected version of the problem. We call these cuts simple no-good cuts. Each such cut prohibits only a single specific subsequence of customer visitation in a route. (Note, there could be more than one route with a specific subsequence of customer visits.) In this section, we show how to generalize these cuts for the directed version of the problem to make them much stronger, so that each cut prohibits not one, but many potential no-good subsequences within routes. Consider a no-good route which has the following structure: 0 → (P ) → (Q) → 0, i.e., the vehicle traverses a subset of nodes P in some sequence, and then traverses the subset of nodes Q in some sequence. We assume that P and Q are such that A(P ) + B(Q) > C. Thus, if the vehicle travels along such a route, it will experience a violation of capacity when transitioning from set P to set Q.

7

Journal Pre-proof

Proposition 5. Given subsets P and Q with A(P ∪Q) ≤ C, B(P ∪Q) ≤ C, and A(P )+B(Q) > C, the following is a valid inequality for the AVRPSPD: X i,j∈P

xij +

X

xij +

i,j∈Q

XX

xij ≤ |P | + |Q| − 2

i∈P j∈Q

5.1

pro of

Proof. It is easy to see that any route that traverses all nodes in P , then transitions to a node in Q, and then traverses all nodes in Q, will have |P | − 1 edges from EP = {(i, j) : i, j ∈ P }, |Q| − 1 edges from EQ = {(i, j) : i, j ∈ Q}, and one edge from EP Q = {(i, j) : i ∈ P, j ∈ Q}. Thus, for such a route, the LHS of the inequality will have to be |P | + |Q| − 1, which violates the inequality. However, any such route does not satisfy the vehicle capacity constraint due to the condition A(P ) + B(Q) > C. Moreover, the inequality does not cut off any routes other than the type described above. Therefore, the inequality is valid.

Identification of No-Good Cuts

6

urn a

lP

re-

Since no-good cuts requires specification of an infeasible route, we check for violations of the nogood cut during the branch-and-bound process whenever a candidate integer solution is obtained. We check each route of the solution for feasibility. If all routes are feasible, the solution is saved as an incumbent if it is better than the previous incumbent, and the branch-and-bound process proceeds as usual. However, if the capacity constraint is violated at any edge along some route, there exists a violated cut in which the nodes before this edge on the route define set P , and the nodes after the edge define set Q. The cut is generated and added to the current node, as well as globally. Addition of this cut will change the solution. If the solution is integral, the above checking procedure is repeated, otherwise branch-and-bound is continued as usual. We note that this cut is substantially stronger than the simple no-good cut used in [16], because for the same RHS value, the number of variables on the LHS is much larger than in the simple no-good cut. In the next section we demonstrate with our computational results the benefit of using the generalized no-good cut and the four new valid inequalities described in Section 4 as compared to the base case method that employs only simple no-good cuts.

Computational Experiments

6.1

Jo

In this section, a variety of computational tests are performed to evaluate the proposed method and to compare its performance relative to the other methods presented in literature. All computational tests were performed on an Intel i5 processor with clock speed 3 GHz, 4 cores and 8 GB system RAM memory. Different parameter settings were tried on a few initial instances, and we report the settings that gave the best computational times on these instances. Similar to the settings proposed in [16], the CVRPSEP package is used to generate violated rounded capacity inequalities and subtour elimination inequalities at nodes up to depth of 7 in the branch-and-bound tree and any other purported integer solution. Multistar and comb inequalities are generated only at the root node. The violated inequalities described in Section 4 are separated up to depth of 20 in the tree. All other CPLEX settings are at their default values. For each problem instance, a time limit of 2 hours was set before terminating the tree’s enumeration.

Comparison on Randomly Generated Instances

In the first set of problem instances, 45 customers are located randomly in a 1000 × 1000 grid and the depot is located at the center. The pickup and delivery amounts are randomly generated 8

Journal Pre-proof

Time (in secs)

0 1 2 3 4 5 6 7 8 9 Average

1867 760 15 251 200 256 1112 6 7 22 449.6

Base Case Nodes NG Cuts

101499 32326 760 20203 13486 14048 78060 47 165 1096 26169

Time (in secs)

119 19 8 39 54 69 97 1 0 9

1592 366 33 235 254 226 800 13 9 17 354.5

Our Method Nodes NG Cuts

71648 13898 1613 18203 12573 13590 53264 193 270 604 18586

36 10 8 29 17 32 68 3 0 2

Inequalities

759 234 90 184 231 295 640 24 19 28

pro of

Instance

2CVRP Gap (in %)

1.304 0.000 1.157 0.230 1.056 0.881 1.605 0.000 0.000 0.826 0.706

Table 1: Comparison on 45 customer randomly generated problem instances

6.2

Jo

urn a

lP

re-

integers in the range [5, 15]. The vehicle capacity was set at 100 units. The cost of travel from customer i to customer j > i is the Euclidean distance. The cost of travel from j to i < j is a random percentage generated uniformly between 80% and 120% of the distance from i to j. Table 1 summarizes the results comparing the base case method with our proposed method. The second column specifies the total computational time in seconds. The next column specifies the number of nodes explored in the branch-and-bound tree. The column titled “NG Cuts” specifies the number of no-good cuts (simple or generalized) generated in the tree. The column titled “Inequalities” specifies the number of violated inequalities of the type described in Section 4 that were generated. It is observed that our method improves on the computational time needed to solve the problems. It is able to achieve this by generating generalized no-good cuts and also the four inequalities. As a result, the branch-and-bound tree size is reduced. It is also noteworthy that purely randomly generated problem instances exhibit a relatively rather low 2CVRP gap of 0.706%. In the problem instances underlying Table 1, the number of routes in the optimal solution was 5. This translates into an average of 9 customer visits per route. While the column-generation-based model presented in [8] and [17] can indeed be immediately used for AVRPSPD, the method is wellknown to encounter difficulties when the number of customers per route is high. The authors in [8] are able to report optimal solutions for few 40-customer problems with a minimum of 6 vehicles. More recently, [17] reports new optimal solutions for problems with 50 customers and 9 vehicles, translating to between 5 and 6 customers per vehicle. On some problems with greater number of customers per vehicle, the model encounters difficulties. Moreover, when implemented within a branch-and-bound framework, the need to price at nodes other than the root node imposes a difficult burden on many column-generation approaches. It remains an avenue of future research to test the problem instances reported in this work using the model presented in [8] and [17].

Comparison on Difficult AVRPSPD Instances

In this section, we describe a general method to generate difficult instances of the AVRPSPD. Given an instance of the VRPSPD, if the 2CVRP gap is high, one would expect both the base case method as well as our proposed method to encounter greater difficulty in solving the VRPSPD instance. If the 2CVRP problem is solved to optimality, and each route of the optimal solution happens to 9

Journal Pre-proof

Jo

urn a

lP

re-

pro of

satisfy the no-good cuts also, the solution is optimal for VRPSPD. The VRPSPD problem is likely to be more difficult to solve if the equivalent 2CVRP solution almost never produces a feasible solution for the VRPSPD. One would expect that in that case, the no-good cuts will have to be added at a large number of nodes in the branch-and-bound tree, making the tree much bigger. One approach for creating such potentially difficult instances follows a two-step process. In the first step a simple VRP instance is created on a 100 × 100 grid, with the depot at the center of the grid. The costs are generated as specified in Section 6.1. Given an actual vehicle capacity (C = 80 was chosen) we set the vehicle capacity in this step to twice the actual capacity, and the random customer demands are such that each route is likely to have an even number of customers. For example, the delivery quantities may be randomly selected from the range [15,25], and the vehicle capacity may be 160 (if the actual capacity is 80). Then, a typical route in the solution will have 8 customers. A near-optimal solution of this problem is found using a good heuristic approach. In our tests, we used the well-known Clarke-Wright heuristic algorithm (see [5]). Suppose that in the optimal solution there is a route with 8 customers. Then in the second step, the problem data is modified as follows. On each route with 8 customers, the first 2 customers, and the last 2 customers on the route are turned into pickup nodes, instead of delivery nodes. In other words, if bi was the demand of these customers, we set ai = bi and bi = 0 for these nodes. The vehicle capacity is reverted to its original value, i.e., 80 in this example. Note that for a problem generated in this way, each route of 8 customers is likely to have total delivery quantity as well as total pickup quantity satisfying the vehicle capacity, but the route will be infeasible irrespective of the direction in which it is traversed. For example, when the vehicle traverses from the second to the third customer on such a route, the vehicle has already made pickups from 2 customers, and is yet to make deliveries to 4 more customers. Thus the load on the vehicle will be equal to the average delivery/pickup quantity of 6 customers, while the vehicle capacity is equal to the average quantity of only 4 customers. It is easy to see that the problems generated in this way will be harder to solve, because the capacity inequalities generated by the CVRPSEP package are not enough to ensure the feasibility of the routes produces, and a larger number of no-good cuts would be required to solve these problems. Results of the comparison on such more difficult problem instances with 35 nodes of the AVRPSPD are now reported. Table 2 compares the total computational times and number of nodes in the branch-and-bound tree across three different cases: (1)Case 1 corresponding to the base case of using only simple no-good cuts, (2)Case 2 corresponding to the case of using only generalized no-good cuts, and (3)Case 3 corresponding to the case of using both generalized no-good cuts and the four inequality classes. It can be seen that the computational times improve successively going from Case 1 to Case 3. Comparing Case 1 to Case 2, the strength of the generalized no-good cuts is revealed in comparison to simple no-good cuts – all 10 problem instances are solved within the 2-hour time limit, and the average computational time decreases from 3198.6 seconds to 722.2 seconds. Note that the average time of 3198.6 seconds for Case 1 is likely to be much worse if the two unsolved problems were allowed to continue beyond the 2-hour limit. Case 3 improves on Case 2 by reducing the average computational time by slightly less than 50%. This is the contribution made by the four inequality classes discussed in Section 4. Table 3 further shows the contribution made by the generalized no-good cuts. Comparing Case 2 with Case 1, it is observed that on average 83.3 generalized no-good cuts are sufficient to solve the problem to optimality as compared to 203.8 for the base case with simple no-good cuts. Comparing Case 2 with Case 3, the required number of generalized no-good cuts decreases further to 20.8 on average due to the availability of new inequality classes. Even though a significant number of these 10

Journal Pre-proof

Case 11 Case 22 Case 33 2CVRP Gap Time Nodes Time Nodes Time Nodes (in %) (in secs.) (in secs.) (in secs.) 0 5949 399,544 567 98,985 466 68,934 2.76 1 1910 200,730 1401 155,233 220 29,818 2.07 2 3043 175,694 1440 118,228 272 28,398 3.30 4 3 7201 287,400 1128 191,620 557 77,480 4.69 4 2102 196,112 246 53,702 362 61,859 1.34 5 5 7202 425,600 1408 202,488 780 121,089 4.93 6 2597 139,150 363 35,431 224 19,137 1.63 7 574 59,425 335 55,034 79 15,003 2.17 8 308 37,174 148 23,205 95 18,291 2.04 9 1100 105,657 177 24205 134 21,643 2.06 Average 3198.6 202,649 722.2 95,813 318.9 46,165 2.70 1 Only simple no-good cuts 2 Only generalized no-good cuts 3 Generalized no-good cuts and new inequalities 4 Terminated after 2 hours. Gap at termination: 3.96%, Unexplored nodes: 158,288 5 Terminated after 2 hours. Gap at termination: 6.75%, Unexplored nodes: 350,693

re-

pro of

Instance

Jo

0 1 2 3 4 5 6 7 8 9 Average

Case 1 Simple NG Cuts 119 55 212 519 128 272 152 234 123 224 203.8

Case 2 Gen. NG Cuts 26 47 127 93 47 97 64 159 77 96 83.3

urn a

Instance

lP

Table 2: CPU times and branch-and-bound tree sizes – 35 customer difficult problem instances

Case 3 Gen. NG Cuts New Inq. 6 481 4 287 21 498 16 734 21 527 56 596 9 423 26 306 18 320 31 292 20.8 446.4

Table 3: Inequality counts – 35 customer difficult problem instances

11

2CVRP Gap (in %) 2.76 2.07 3.30 4.69 1.34 4.93 1.63 2.17 2.04 2.06 2.70

Journal Pre-proof

6.3

Comparison on Benchmark Instances

pro of

inequalities are separated (on average 446.4), their separation via the heuristic specified in Section 4.3 is very efficient leading to an overall decrease in computational time from 722.2 seconds to 318.9 seconds. Comparing Table 2 and Table 1, a good indicator of the incremental difficulty in solving AVRPSPD as compared to the 2CVRP seems to be the 2CVRP gap. While the problem instances in Table 1 showed a gap of 0.706%, this gap for the instances in Table 2 is 2.70%. These instances are quite difficult for the base case method – 2 of the 10 problem instances did not converge within the 2 hour time limit. Note that this difference in computational times is despite the fact that Table 2 reports on 35-customer instances, while Table 1 reports on larger 45-customer instances.

To the best of our knowledge, the only prior work that reports solutions on AVRPSPD is [15]. The authors provide optimal solution values for twenty 50-node problem instances of the AVRPSPD. (Refer to Table 5 in [15].) In this section, we report solutions on the same instances using our model. Time Gen. NG Cuts Inequalities (in secs.) asym-SCA3-0 20 1 26 asym-SCA3-1 44 6 140 asym-SCA3-2 1 3 5 asym-SCA3-3 9 1 49 asym-SCA3-4 29 2 134 asym-SCA3-5 4 1 5 asym-SCA3-6 14 0 50 asym-SCA3-7 15 4 13 asym-SCA3-8 422 2 536 asym-SCA3-9 4 2 3 asym-CON3-0 9 0 43 asym-CON3-1 21 4 66 asym-CON3-2 307 9 542 asym-CON3-3 4 0 2 asym-CON3-4 16 0 79 asym-CON3-5 96 2 390 asym-CON3-6 285 14 401 asym-CON3-7 81 9 178 asym-CON3-8 9 1 22 asym-CON3-9 418 27 677 Average 90.4 1 As reported in Rieck and Zimmermann (2013)

Jo

urn a

lP

re-

Instance

Original Time (in secs.)1 4474 506 41 63 503 48 58 64 18,631 52 120 657 24,496 49 419 17,746 28,863 206 171 28,816 6299.2

2CVRP Gap (in %) 0.113 0.14 0.448 0 0 0 0 0.94 0 0.201 0.243 0.226 0 0 0 0.477 0.163 0 0 0.776 0.186

Table 4: Performance on asymmetrical problem instances from Rieck and Zimmermann (2013)

The rather relatively low average 2CVRP gap of 0.186% (as compared to the gap reported in Table 2) indicates the ease of solving the AVRPSPD on these instances. The average computational time of 90.4 seconds using our method is an order of magnitude lower than the average computational times of the fully solved instances in Table 5 of [15]. On our machine, the base case method 12

Journal Pre-proof

7

pro of

that applies simple no-good cuts only required 120.7 seconds on average to solve these instances. We note that the authors in [15] report their computational results on an Intel 6-core processor with a clock speed of 3.46 GHz and 24 GB RAM. We have used an Intel 4-core processor with a clock speed of 3 GHz and 8 GB RAM. Our application was single-threaded and hence, the number of cores do not matter. Thus, the speed ups reported by us are purely due to algorithmic changes and not due to a faster hardware.

Conclusion

urn a

Acknowledgements

lP

re-

The contribution of this work is threefold. First, four new valid classes of inequalities were developed for the AVRPSPD. Second, it is shown that for the AVRPSPD, the no-good cuts can be generalized and made tighter than currently extant methods. Most of the VRPSPD benchmark instances in the literature are characterized by very low 2CVRP gap, and are therefore relatively easy to solve. As a third contribution, a general method was outlined that helps generate difficult problem instances of the VRPSPD. This method brings into clear focus the interplay between pickup and deliveries that is the essential interesting feature of VRPSPDs. The new inequalities and the generalized no-good cuts help solve such instances of the AVRPSPD while the traditional methods to solve such problems encounter significant difficulty. We note, however, that the 2CVRP gap is a posteriori indicator of incremental problem difficulty. It would be important to investigate any a priori indicator. Further investigations are needed to develop new inequality classes that help solve even larger instances of the AVRPSPD. As compared to SVRPSPD, the AVRPSPD is much more difficult to solve for the same problem sizes. The AVRPSPD necessitates the usage of twice the number of variables as the SVRPSPD (due to asymmetry in the cost structure). Initial application of the directed model on SVRPSPD instances showed that between the undirected model of [16] for the SVRPSPD and our method (that employs the four new inequality classes and the generalized nogood cuts), the undirected model performs slightly better. The authors are currently investigating whether the directed model can be enhanced to be competitive on symmetric instances of the problem.

Jo

The authors are thankful to Prof. Subramanian for sharing problem instances reported in his work. The authors are also thankful to Prof. Rieck and Zimmermann for maintaining the website that provides benchmark instances. The authors are thankful to Prof. Lysgaard for discussions about the correct usage of CVRPSEP package in the context of the VRPSPD. All problem instances on which results have been reported in this paper are available as an online supplementary or from the authors. Funding from the Research and Publications Committee of IIM, Ahmedabad is gratefully acknowledged.

References

[1] Alshamrani, A., K. Mathur, R.H. Ballou. 2007. Reverse Logistics: Simultaneous Design of Delivery Routes and Return Strategies. Computers & Operations Research. 34.2. 595–619. [2] Angelelli, E., R. Mansini. 2002. The vehicle routing problem with time windows and simultaneous pick-up and delivery. In Quantitative approaches to distribution logistics and supply

13

Journal Pre-proof

chain management. Klose, A., M.G. Speranza, L.N.V. Wassen. (eds.) Springer, Berlin, Heidelberg, 2002. 249–267. [3] Bianchessi, N., G. Righini. 2007. Heuristic algorithms for the vehicle routing problem with simultaneous pick-up and delivery. Computers & Operations Research. 34.2. 578–594.

pro of

[4] Casco, D.O., B.L. Golden, E.A. Wasil. 1988. Vehicle Routing with Backhauls: Models, Algorithms and Case Studies. B.L. Golden, A.A. Assad, eds. Vehicle Routing: Methods and Studies. Elsevier Science. 127–147. [5] Clarke, G., J.W. Wright. 1964. Scheduling of vehicles from a central depot to a number of delivery points. Operations Research. 12. 568—81. [6] Cordeau,J-F., G. Desaulniers, J. Desrosiers, M.M. Solomon, F. Soumis. 2002. VRP with Time Windows. In The Vehicle Routing Problem. Toth, P., D. Vigo (editors). SIAM Monographs on Discrete Mathematics and Applications, Philadelphia.

re-

[7] Dekker, R., M. Fleischmann, K. Inderfurth, L.N.V. Wassenhove. (editors) 2004. Reverse Logistics – Quantitative Models for Closed-Loop Supply Chains. Springer-Verlag, Berlin Heidelberg. [8] Dell’Amico, M., G. Righini, M. Salani. 2006. A Branch-and-Price Approach to the Vehicle Routing Problem with Simultaneous Distribution and Collection. Transportation Science. 40(2). 235–247.

lP

[9] Desaulniers, G., O.B.G. Madsen, S. Ropke. 2014. The Vehicle Routing Problem with Time Windows. In Vehicle Routing: Problems, Methods, and Applications. Toth, P., D. Vigo (editors). Society for Industrial and Applied Mathematics. [10] Dethloff, J. 2001. Vehicle routing and reverse logistics: The vehicle routing problem with simultaneous delivery and pick-up. OR Spektrum. 23. 79–96.

urn a

[11] Goetschalckx, M., C. Jacobs-Blecha. 1989. The Vehicle Routing Problem with Backhauls. European Journal of Operational Research. 42. 39–51. [12] Golden, B.L., S. Raghavan, E.A. Wasil, eds. 2008. The vehicle routing problem: latest advances and new challenges. Vol. 43. Springer Science & Business Media. [13] Lysgaard, J., A.N. Letchford, R.W. Eglese. 2004. A New Branch-and-cut Algorithm for the Capacitated Vehicle Routing Problem. Mathematical Programming.100(2). 423–445. [14] Mingozzi, A., S. Giorgi, R. Baldacci. 1999. An Exact Method for the Vehicle Routing Problem with Backhauls. Transportation Science. 33. 315–329.

Jo

[15] Rieck, J., J. Zimmermann. 2013. Exact solutions to the symmetric and asymmetric vehicle routing problem with simultaneous delivery and pick-up. Business Research. 6.1. 77–92. [16] Subramanian, A., E. Uchoa, A.A. Pessoa, L.S. Ochi. 2011. Branch-and-cut with Lazy Separation for the Vehicle Routing Problem with Simultaneous Pickup and Delivery. Operations Research Letters. 39. 338–341. [17] Subramanian, A., E. Uchoa, A.A. Pessoa, L.S. Ochi. 2013. Branch-cut-and-price for the vehicle routing problem with simultaneous pickup and delivery. Optimizatioin Letters. 7.7.1569–1581. 14

Journal Pre-proof

[18] Toth, P., D. Vigo. 1997. An Exact Algorithm for the Vehicle Routing Problem with backhauls. Transportation Science. 31. 372–385. [19] Toth, P., D. Vigo. 1999. A Heuristic Algorithm for the Symmetric and Asymmetric Vehicle Routing Problem with Backhauls. European Journal of Operational Research. 113. 528–543.

pro of

[20] Toth, P., D. Vigo, eds. 2002. The Vehicle Routing Problem. SIAM Monographs on Discrete Mathematics and Applications, Philadelphia. [21] Toth, P., D. Vigo, eds. 2014. Vehicle routing: problems, methods, and applications. Society for Industrial and Applied Mathematics.

Jo

urn a

lP

re-

[22] Wade, A.C., S. Salhi. 2002. An Investigation into a New Class of Vehicle Routing Problem with Backhauls. Omega. 30(6). 479–487.

15