European Journal of Operational Research 151 (2003) 520–535 www.elsevier.com/locate/dsw
Discrete Optimization
New savings based algorithms for time constrained pickup and delivery of full truckloads Manfred Gronalt, Richard F. Hartl, Marc Reimann
*
Department of Production and Operations Management, Institute for Management Science, University of Vienna, Bruennerstrasse 72, 1210 Vienna, Austria Received 6 March 2000; accepted 21 August 2002
Abstract In this paper we deal with the pickup and delivery of full truckloads under time window constraints. Our objective function is to minimize empty vehicle movements, as these use resources without directly adding value to the products transported. We first give an exact formulation of the problem. After that we present a relaxed problem formulation based on network flows, which can be used to calculate a lower bound to the solution value. Furthermore, we propose four different savings based heuristics for the problem. Our results show that these heuristics find very good solutions quickly. We also perform a sensitivity analysis by studying the impact of time window tightness on the performance of our heuristics. 2002 Elsevier B.V. All rights reserved. Keywords: Distribution; Logistics; Routing; Transportation
1. Introduction and problem description Due to an ever-growing demand for goods which leads to a rapid increase in transportation volume the efficient use of resources, such as trucks and the road network, becomes more and more important. Efficient vehicle routing can lead to a reduction in the number of trucks needed to provide the service demanded as well as to a better *
Corresponding author. Tel.: +43-1-4277-38096; fax: +43-14277-38094. E-mail addresses:
[email protected] (M. Gronalt),
[email protected] (R.F. Hartl),
[email protected] (M. Reimann).
utilization of the street network by reducing vehicle movements. Generally speaking, one can distinguish between two different problem classes. The first one is concerned with dynamic carrier allocation (e.g. train carriers, pallets) to different locations over time. In this problem only carrier flows are considered. Thus, carriers are not identified individually but are aggregated to groups. The second class of problems deals with the pickup and delivery of orders by a fleet of vehicles, which are clearly identified. This is necessary when tracking and tracing options in telematics systems are used. In such a case firms need to know the location of transportation orders at any times.
0377-2217/$ - see front matter 2002 Elsevier B.V. All rights reserved. doi:10.1016/S0377-2217(02)00650-1
M. Gronalt et al. / European Journal of Operational Research 151 (2003) 520–535
Especially important for both classes of problems is the fact that a large fraction of vehicle movements is caused by empty trucks. Dejax et al. [4] found that empty vehicle movements constitute about 40% of total movements. In a very recent paper, Hall [8] studies the implications of flow imbalances for fleet optimization in a less than truckload setting. This paper shows that for the system studied, long-run imbalances occur as different terminals have different demand rates. More important, Hall shows that in the short-run empty flows may exceed the average empty flows caused by long-run (average) imbalances by about 50%. These empty flows can however be decreased if several terminals can be considered in parallel. Considering these findings and forecasts predicting that traffic volume will continue to increase faster than the street network in the next decades, the importance of developing methods to reduce fleet sizes and empty truck movements becomes obvious. The fact that reductions are possible has been proven in Du and Hall [6]. In their paper it is shown that efficient algorithms can reduce fleet size significantly. In this paper we deal with a problem, which belongs to the second class described above. Customers place orders with a logistics service provider, requiring shipments between two locations. The logistics service provider serves these orders from a number of distribution centers. Thus, shipments occur between the pickup location of an order and the closest distribution center, between distribution centers and between a distribution center and the delivery location of an order. While shipments between distribution centers and pickup or delivery locations are generally lessthan-truckload shipments, movements between different distribution centers are concerned with full truckloads. This is due to consolidation of orders requiring transportation between the same two distribution centers. The focus of the research presented in this paper is on the problem of delivering full truckloads between different distribution centers, where each distribution center requires pickups as well as drop-offs of goods. Our primary goal is to minimize empty vehicle movements.
521
The paper is organized as follows. In the next section we present our model and give an exact formulation using an IP approach. Section 4 deals with an LP formulation that can be used to generate lower bounds. In Section 5 we propose heuristic algorithms to solve the problem. An illustrative example to show the differences between these heuristics is presented in Section 6. After giving our results in Section 7 we conclude with some final remarks and an outlook on opportunities for future research.
2. Related work Crainic and Laporte [3] and Ball et al. [1] provide general references for a wide variety of fleet management and vehicle routing problems (VRPs). More specifically, the problem considered in this paper is a variant of the pickup and delivery problem (PDP), for which Savelsbergh and Sol [14] discuss different solution methods, most of which are concerned with less-than-truckload shipments. For the case of full truckloads an exact approach is discussed in Desrosiers et al. [5]. These authors formulate a model based on an extended graph, where each order and each vehicle is represented by a node and the movements between orders are modeled as arcs. Furthermore, every location is considered as both depot and demand point. The objective function is to minimize empty vehicle movements. A branch and bound approach based on an algorithm developed for the asymmetrical traveling salesman problem is used to solve the problem without time windows. Results are reported for problems with up to 104 orders and two depots. The authors remark that their algorithm is very sensitive with respect to the number of depots as well as the time constraints. Jordan and Burns [9] and Jordan [10] analyze the effect of truck backhauling on empty vehicle movements. In the earlier paper the case of two terminals is studied, whereas the second paper extends this setup to deal with multiple terminals. Whereas for the two terminal case optimal solutions are reported, the multi terminal case is solved
522
M. Gronalt et al. / European Journal of Operational Research 151 (2003) 520–535
using a greedy heuristic. In this heuristic, for any two full loads a measure called Ôbackhaul savingsÕ is calculated that relates the empty vehicle movements back to a trucksÕ home terminal with and without backhauling. Given these measures, full loads are then matched to maximize these Ôbackhaul savingsÕ, until no further improvements are possible. The problems studied in these papers differ from our setting with respect to two main issues. As in Desrosiers et al. [5] there are no time window requirements for delivery or pickup at customers or terminals. Apart from that Jordan [10] restricts the model to loops with at most two loaded movements, hence the term truck backhauling. In our model, a truck can satisfy a number of full loads before returning to his home depot. Dumas et al. [7] present an exact formulation and solution method for the less-than-truckload PDP with time windows (PDPTW). They use a set partitioning approach combined with a column generation procedure to find the set of minimum cost routes. A notable feature is the fact that each truck serves only one tour, although another tour might be scheduled within the given time horizon. In their paper optimal solutions were only found for problem instances with less than four depots. The main difference between this approach and our problem lies in the fact, that we deal with a multi-period case. Thus, within the planninghorizon each vehicle can be assigned more than one tour. Furthermore, the primary goal of Dumas et al. [7] work is to minimize total routing costs, rather than empty vehicle movement costs. Below we will show that orders are transported directly from their sources to their destinations in our problem, which is not necessarily true for the lessthan-truckload case. In the latter case empty vehicle movements can be reduced by performing partly loaded trips. Due to the differences mentioned, we could not apply any of these approaches directly to our problem. Thus, although the papers present comprehensive exact and approximate solution approaches, we chose to develop new heuristic algorithms, which are able to find near-optimal solutions for real-life problem instances. This approach is also motivated by the fact that the exact
algorithms reported in the papers were able to solve very small problem instances only. Truckload routing in a dynamic context has been extensively studied by Powell (see e.g. [11– 13]). However, in these works an important issue is to estimate future demands in certain regions and to include these estimates into the decision making for dispatching, i.e. in the assignment of trucks to arriving loads. Furthermore, Powell in general considers cases where the fleet operates very long haul services in response to dynamic demands. In these cases the notion of vehicle bases becomes unimportant. In our case, the multi-depot aspect is much more critical, as we consider a hub-network, and aim to balance the flows originating at different depots.
3. Model formulation A fleet of vehicles, based at different distribution centers, has to satisfy a number of orders. Each of these orders needs to be shipped between a pair of distribution centers. All orders are consolidated to full truckloads and are subject to time window constraints at pickup as well as delivery. The underlying assumptions of our model are: 1. All orders are known in advance, the basic problem is static. Thus, planning can be based on full order information. However, this assumption is omitted in one part of our analysis below, in order to show the effects of using advanced information systems for transportation order planning. (Furthermore, when applying the model and the solution heuristics, also dynamic problems can be tackled. On the one hand, it is reasonable to use such a planning tool on a rolling basis. On the other hand, it is also possible to quickly evaluate the marginal cost of a new order by calculating the total cost associated both with and without the order and taking the difference.) 2. All orders are consolidated to full truckloads. Thus, we do not deal with cross-docking options. There is at most one order on a truck at any given time, which is transported directly from its pickup location to its delivery location.
M. Gronalt et al. / European Journal of Operational Research 151 (2003) 520–535
3. Time windows for each order have to be respected strictly. 4. A tour must not exceed a given time-span. This assumption models legal restrictions on the maximum driving time for truck drivers. It could also be viewed as a restriction, which ensures that maintenance intervals for vehicles are respected. 5. Each truck is assigned to a specific depot, where it has to return to after each tour. The motivation of this assumption is that truck drivers canÕt stay away from home too long, but have to come home on a regular basis. An interesting fact is, that omitting assumptions 3 and 4 leads to a much simpler problem, which can be modeled through network flows. We use this approach to generate lower bounds for our problem. This is explained in more detail in Section 4. The following tour structures are possible under these assumptions. Single order tours occur if a truck returns unloaded to its origin after delivering an order. In this case 50% of the tour length consist of empty vehicle movements. If possible, tours with multiple orders will be performed. Connecting orders can be done in one of three ways. First, if a particular truck is moved from distribution center A to distribution center B it can pickup another order at location B and deliver it to any other location. Second, it can be immediately forwarded to any other location to pickup an order there. The third option for a truck is to wait at B until a new transportation order is due at that location. Thus, in this third option waiting times occur in addition to transportation times. Furthermore, these options lead to three different types of vehicle movements, namely compulsory trips of full trucks, connecting trips of empty trucks and empty trips to close tours. The exact formulation for our problem is given now. • Parameters: A set of orders K set of tours Fi time needed to perform order i, transportation and loading/unloading time 8i 2 A
523
time needed to go from the delivery location of order i to the pickup location of order j 8i; j 2 A LFTi latest delivery time for order i 8i 2 A ESTi earliest pickup time for order i 8i 2 A MaxDuration maximum duration of a tour Note, that satisfying all orders on separate tours is the most expensive planning option, which also utilizes the maximum number of vehicles. Thus, in the worst case the number of tours is equal to the number of orders, such that the set of tours K has the same cardinality as the set of orders A. However, if some feasible solutions are known, e.g. from the application of some heuristics, the set K can be reduced accordingly. • Decision variables: xik 2 f0; 1g . . . 1, if order i is assigned to tour k yij 2 f0; 1g . . . 1, if order j is scheduled to be performed immediately after order i, or order j is the last and order i the first order on a tour sik 2 f0; 1g . . . 1, if order i is performed before all other orders on tour k eik 2 f0; 1g . . . 1, if order i is performed after all other orders on tour k tis effective pickup time for order i tie effective delivery time for order i ssk starting time for tour k sek ending time for tour k dk 2 f0; 1g . . . 1, if tour k is performed • Objective function: X XX min Fi þ Eij yij ð1Þ
Eij
i2A
i2A
j2A
• Constraints: X xik ¼ 1 8i 2 A
ð2Þ
k2K
dk P xik
8i 2 A; 8k 2 K
ð3Þ
sjk 6 xjk
8j 2 A; 8k 2 K
ð4Þ
ejk 6 xjk 8j 2 A; 8k 2 K X sjk ¼ dk 8k 2 K
ð5Þ ð6Þ
j2A
X j2A
ejk ¼ dk
8k 2 K
ð7Þ
524
M. Gronalt et al. / European Journal of Operational Research 151 (2003) 520–535
xik xjk 6 1 yij
8i; j 2 Aði 6¼ jÞ; 8k 2 K ð8Þ
xjk xik 6 1 yij
8i; j 2 Aði 6¼ jÞ; 8k 2 K ð9Þ
sik þ ejk 1 6 yji 8i; j 2 A; 8k 2 K X yij ¼ 1 8j 2 A
ð10Þ ð11Þ
i2A
X
yij ¼ 1
8i 2 A
ð12Þ
j2A
tie 6 LFTi
8i 2 A
ð13Þ
tis P ESTi
8i 2 A
ð14Þ
tis þ Fi ¼ tie
8i 2 A X eik 6 tjs þ Mð1 yij Þ tie þ Eij M
ð15Þ
k2K
8i; j 2 Aði 6¼ jÞ
ð16Þ
ssk 6 tis þ Mð1 sik Þ 8i 2 A; 8k 2 K
ð17Þ
sek P tje þ Eji Mð2 sik ejk Þ 8i; j 2 A; 8k 2 K sek ssk 6 MaxDuration
ð18Þ 8k 2 K
ð19Þ
As usual, M is a Ôsufficiently largeÕ positive number (e.g. the length of the planning horizon in our case). The objective function (1) minimizes the sum of loaded and empty vehicle movements. Note, that the sum of loaded movements is a constant factor in this case, as all orders are transported directly from their pickup to their delivery locations and these trips are compulsory. Thus, we actually minimize empty vehicle movements. Constraints (2) assign each order to exactly one tour. Constraints (3) require that a tour is performed if at least one order is assigned to it, while constraints (4)–(7) ensure that first and last orders of each tour are chosen among the orders assigned to that tour and that each tour which is performed
has exactly one first and one last order. Constraints (8) and (9) deal with the fact that two orders can only be connected if they are assigned to the same tour. Constraints (10) ensure that a vehicle movement from the delivery location of a tourÕs last order to the pickup location of the tourÕs first order is performed. Constraints (11) ensure for every order, that its pickup location is approached from the delivery location of exactly one other order. Constraints (12) ensure for every order that a vehicle movement from its delivery location to the pickup location of exactly one other order occurs. Together constraints (10)–(12) imply that each tour is closed, and that each order can be preceded and followed by at most one other order. Constraints (13) and (14) ensure that the latest possible delivery time and the earliest possible pickup time are respected. Constraints (15)–(18) constitute the temporal reality: Constraints (15) require for each order, that the difference between pickup and delivery time of the order equals the time needed to perform that order. Constraints (16) require that the difference between the effective delivery time of one order and the effective pickup time of a second order is at least as large as the time needed to go from the first orderÕs delivery location to the second orderÕs pickup location, if the two orders are scheduled to be performed immediately after each other. Constraints (17) ensure that each tours starting time is not later than the pickup time of the first order assigned to the tour. Constraints (18) require that the ending time of a tour is not earlier than the delivery time of the last order assigned to the tour plus the time needed to go back to the tourÕs starting location. Finally, constraints (19) ensure that the maximum possible duration of a tour is respected. Optimization models for related problems have been proposed in [1,7,14]. Our model differs from these formulations with respect to three points. First, our model is the first explicit consideration of the full truckload PDPTW. Second, our model uses only linear constraints and a linear objective function in order to be able to solve at least small problems with commercial LP solvers. The third feature is the use of two-dimensional variables only, thus keeping the number of binary variables as small as possible.
M. Gronalt et al. / European Journal of Operational Research 151 (2003) 520–535
Generally, MIPÕs (like the one we presented here) belong to the class of NP-hard problems and efficient exact algorithms to solve these problems for realistic problem sizes do not exist. Thus such problems can only be solved by heuristics which can lead to suboptimal solutions of a priori unknown quality. In such a case it is useful to find good lower bounds, in order to get an estimate for the quality of the solution found by the heuristic procedure. As stated above, the loaded movements of the vehicles are fixed, such that only empty vehicle movements can be optimized. Thus, in Section 4 we will present a lower bound for empty vehicle movements.
4. A lower bound for empty vehicle movements To get an estimation of the minimum share of empty vehicle movements in total vehicle movements, we propose the following lower bound. Remember that every order requires the shipment of a full truckload between two locations within a given time window. Considering also, that every truck has to return to its starting location after finishing its tour, this means that for every location, the number of incoming flows must be equal to the number of outgoing flows. The times at which these flows occur are interdependent, as a truck can only leave a location after it has arrived at it. However, if we relax the time constraints (13)–(19) in the IP formulated above, the objective function (1) and constraints (2)–(12) can be reformulated as a network flow LP. Based on the following parameters: N number of distribution centers cij time needed for a movement between locations i and j 8i; j 2 N Dij number of necessary loaded movements between locations i and j 8i; j 2 N and the decision variables Sij total number of movements (loaded and empty) from i to j 8i; j 2 N our LP formulation can be written as XX min cij Sij ð20Þ i2N
j2N
525
such that: Sij P Dij X i2N
Sij ¼
8i; j 2 N X
Sjk
8j 2 N
ð21Þ ð22Þ
k2N
The objective function (20) minimizes total vehicle movements, both loaded and empty. Constraints (21) ensure that all loaded vehicle movements are performed, while constraints (22) require that at each distribution center the number of incoming vehicle movements is equal to the number of outgoing vehicle movements. Note that the solution of this relaxed problem is also the optimal solution of the actual problem if it satisfies the relaxed time constraints. We will use this lower bound to analyze the performance of the three heuristics presented in Section 5. Throughout our analysis we will assume that the costs and times needed for vehicle movements are directly proportional, and use these terms interchangeably.
5. Heuristic solution procedures In this section we will present different heuristic algorithms for the problem discussed above. These algorithms are based on the well known savings algorithm (SA) proposed by Clark and Wright [2]. We propose some enhancements to improve the performance of the savings heuristic. In particular, we introduce regret ideas (opportunity costs) into the solution procedure. Note, that in what follows we will use the terms regret values and opportunity costs interchangeably. 5.1. A Savings algorithm (SA) The SA was proposed as a heuristic solution method for the VRP. The VRP is the problem of finding a set of minimal cost routes for a fleet of vehicles, which have to visit every member of a set of customers with known demand exactly once. The total demand of all customers exceeds the vehicle capacity, thus not all customers can be served on one giant tour. The basic VRP deals with
526
M. Gronalt et al. / European Journal of Operational Research 151 (2003) 520–535
identical vehicles, all based at the same location, where they have to return to after completion of their tours. Constraints limiting the maximum length of a tour may exist. For the VRP, the SA starts with the initial allocation of each customer to a separate tour. Then for each pair of customers the cost–savings of joining those customers on one tour is calculated. Based on the values of these savings the customers are sequentially joined into tours starting with the customer combination yielding the largest cost– savings and proceeding until no more savings can be achieved. In this problem all customers either demand deliveries (of goods) or pickups (e.g. disposal of waste). Thus, if customers demand deliveries the single pickup location of orders is the depot, where the vehicles are based. In analogy to that the single delivery location of orders is the depot, if customers demand pickups. Clearly, the SA in its original formulation cannot be used for our problem since we have multiple depot pickups and deliveries here. However, we can construct an algorithm which is based on some kind of priority numbers which can also be interpreted as savings. As we will show below, in our case it is not sufficient to calculate all savings only once at the initialization of the algorithm. Rather, due to multiple depots we have to recalculate some of the savings after each move of connecting orders or sub-tours. (1) Savings calculation: In our algorithm savings are calculated between orders, rather than between locations. This is necessary, as with each order two locations are associated. Thus, if we think of two orders i and j, the first of which needs to be picked up at location A and delivered to location B, while the second needs to be shipped between locations C and D respectively, the cost–savings of joining these orders on one tour subsequently can be calculated as
Fig. 1. Joining two orders i and j on one tour.
weighting parameter for connecting empty vehicle movements. 1 Note, that empty vehicle movements associated with closing tours are not weighted as these can possibly be avoided through the assignment of another order in a subsequent iteration. This move is shown in Fig. 1. Fig. 1a shows the necessary movements before the orders are joined, while Fig. 1b shows the resulting movements after the orders have been joined. (2) Savings update: Furthermore, the joining of two orders leads to the necessity of re-calculating all the savings associated with those orders. Consider for example, the savings value between orders j and k, where order k is to be picked up from location A and delivered to location C. In this case the savings value prior to joining orders i and j is sðj; kÞ ¼ costðD; CÞ þ costðC; AÞ a costðD; AÞ
ð24Þ
Note that in this case the tour is closed with order k, as order kÕs destination location is the pickup location of order j. However, after orders i and j have been joined this is no longer the case. Joining order k with orders i and j leads to savings of
sði; jÞ ¼ costðB; AÞ þ costðD; CÞ 1
a costðB; CÞ costðD; AÞ
ð23Þ
where costðB; AÞ denotes the costs of traveling between locations B and A, and a denotes a
Such a weight has also been used by Solomon [15] in a paper on the VRPTW. However, Solomon did not systematically examine this parameter and only considered values a 6 1. In our analysis, we found that values a P 1 are preferable. For more details (see Section 7).
M. Gronalt et al. / European Journal of Operational Research 151 (2003) 520–535
527
5.2. Modified savings algorithms
sðj; kÞ ¼ costðD; AÞ þ costðC; AÞ a costðD; AÞ costðC; AÞ
ð25Þ
This is due to the fact that now we are actually calculating the savings between a tour (consisting of orders i and j) and order k. The starting location of the tour is the pickup destination of order i, which is A. The last delivery of the tour is to be made at location D, as this is the delivery location of order j. Thus, we calculate the savings between a tour starting at A and ending at D and order k, which is exactly the savings value given by (25). More generally, after each iteration the savings values associated with the first and the last order of the tour constructed in this iteration have to be updated. Below, Fig. 2a shows the initial situation. Fig. 2b depicts the resulting movements, if only orders j and k are joined on one tour. Fig. 2c shows the changed situation, if orders i and j have been joined already. In this case joining order k to these two orders yields no further real (for a ¼ 1) improvements. Note that sðj; kÞ in (25) can differ from 0 for values a 6¼ 1. However, this does not affect the real cost savings. Having discussed the savings calculation and update, let us now consider the decision rule. If we let chooseðj; kÞ ¼ true denote that orders j and k are accepted for being joined in this order in the current iteration, the choice mechanism can formally be written as true if sðj; kÞ ¼ maxi;h2A sði; hÞ chooseðj; kÞ ¼ false otherwise ð26Þ
In this section we will discuss two methods based on modifications to the algorithm presented above. Both approaches take into account some measure of opportunity costs associated with the choice of an order combination. 5.2.1. An opportunity-savings algorithm The main idea of this approach is to incorporate opportunity costs into the calculation of savings values. The intuition is, that the attractiveness of joining two orders may not only depend on the savings value associated with these two orders but also on the values associated with the alternative options these orders have. The algorithm proceeds as follows: After all savings values have been calculated, the best and the second best choice for each order is determined. Note, that these choices can be associated with either the row or the column of order j, i.e. for order j the savings for both, performing the order immediately before or after any other order are considered. We set bestðjÞ ¼ þk, if the best choice is to perform k immediately after j, while bestðjÞ ¼ k, if the best choice is to perform k immediately before j. Ties are broken arbitrarily. The difference in the savings values associated with these two choices can be interpreted as opportunity costs of not choosing the best option. Thus, by adding some fraction of these opportunity costs to the savings value associated with the best choice, a new measure is computed in the following way:
Fig. 2. Joining two orders j and k on one tour.
528
M. Gronalt et al. / European Journal of Operational Research 151 (2003) 520–535
sðjÞ ¼
sðj; jbestðjÞjÞ þ boppcostðjÞ if bestðjÞ > 0 sðjbestðjÞj; jÞ þ boppcostðjÞ otherwise ð27Þ
where jbestðjÞj denotes the best choice for order j, 0 6 b 6 1 denotes the weight associated with the opportunity costs and oppcostðjÞ denotes the opportunity costs associated with order j. Let us now discuss this new measure in more detail. The first term sðj; jbestðjÞjÞ or sðjbestðjÞj; jÞ respectively, simply denotes the savings value associated with performing orders j and jbestðjÞj immediately after each other as compared to a situation where these orders are not joined at all. The second term evaluates the second best option of order j, by determining the savings loss associated with taking this option rather than the best one. The larger these opportunity costs are, the more important is the best option for order j. Thus, the new measure given in Eq. (27) emphasizes this importance. The value of the parameter b shows the relative importance of the opportunity costs as compared to the savings value. While this is a local argument for each order, it has also an important impact on global solution quality. If opportunity costs are not taken into account, in each step the currently best option–– the one which decreases costs most––is chosen, regardless of the effects on future choices. By giving up some savings in the current iteration, some other savings may be obtainable in subsequent iterations leading to larger cost savings all together in the end. This is the general idea of regret approaches compared to greedy approaches. Both, the approach in this section as well as the one presented in the previous one, realize exactly one combination, namely the best one according to the priority measures, in each iteration. The choice mechanism can more formally be written as chooseðj; kÞ 8 > < true if sðjÞ ¼ maxh2A sðhÞ and bestðjÞ ¼ þk ¼ or sðkÞ ¼ maxh2A sðhÞ and bestðkÞ ¼ j > : false otherwise
ð28Þ
5.2.2. A simultaneous-savings algorithm The main idea of this approach is to look at the structure of the savings matrix in each iteration and to anticipate that this structure will change from iteration to iteration as stated above (remember that some savings values have to be re-calculated after each iteration). Nevertheless, rather than accepting only the combination which yields the best savings value, we could accept a number of combinations which satisfy a given condition, i.e. combinations with savings values exceeding a certain threshold and that are mutually beneficial. A combination is only chosen, if both orders consider each other the best choice, i.e. jbestðjÞj ¼ k and jbestðkÞj ¼ j. In the approaches presented in the last two sections, we did not need to state this criterion, as it always holds true for the combination with the largest savings value. Thus, combinations are accepted based on the current state of the savings matrix and future changes in the matrix have no impact on these combinations. More formally, this choice mechanism can be written as chooseðj; kÞ ¼
true if sðj; kÞ P c maxh;i2A sðh; iÞ false otherwise ð29Þ
where c denotes the aspiration level. From this equation, it is obvious that the threshold is not a static criterion but rather depends on the maximum savings value obtainable in the current iteration. Only if c is equal to zero, the threshold is static as in this case all possible, mutually beneficial combinations are chosen. Note, that this simultaneous approach can be used also in combination with the opportunity cost approach. In this case the choice mechanism can be written as chooseðj; kÞ 8 > < true ¼ > : false
if maxfsðjÞ; sðkÞg P c maxh2A sðhÞ and bestðjÞ ¼ þk and bestðkÞ ¼ j otherwise ð30Þ
M. Gronalt et al. / European Journal of Operational Research 151 (2003) 520–535
Thus, we have the following algorithms: • SA––the savings algorithm, using the choice mechanism (26), • OSA––the opportunity savings algorithm, using the choice mechanism (28), • SSA––the simultaneous-savings algorithm based on the SA, using the choice mechanism (29) and • OSSA––the SSA based on the OSA, using the choice mechanism (30).
6. An illustrative example We consider an example with four distribution centers, four orders and a planning horizon of four periods. There is no maximum tour length constraint. Fig. 3 shows the geographical location of the distribution centers (a), together with the distance matrix (b) and the order data (c). For each order, Fig. 3c shows the pickup and delivery locations, as well as the earliest possible pickup time and the latest possible delivery time.
529
While order 1 has a narrow time window of only one period, the other orders have less restrictive time windows. It can be seen from the table, that order 3 cannot be performed immediately before order 1 on a tour, as the time window of order 3 begins after the time window of order 1 ends. We assume that movement costs are proportional to the distance traveled, and without loss in generality, that one unit of distance traveled results in costs of one unit. If all orders are scheduled on separate tours, the total vehicle movement costs equal 7.28. We now apply our algorithm and assume, that the weight of the connecting empty vehicle movements is a ¼ 1 and that the weight of the opportunity costs is b ¼ 1. The possible cost–savings are shown in Table 1. Due to the structure of the problem only few positive savings values exist. In addition to the savings values, for each order Table 1 also shows the opportunity costs of not choosing the best savings value. Order 2 has the largest opportunity costs. If for any reason order 2 is not joined with order 3 (giving up savings of 1.32) the next best
Fig. 3. Geographical location of the distribution centers (a), distance matrix (b), and order information (c). Table 1 Savings, opportunity costs, adjusted savings and best options for each order
530
M. Gronalt et al. / European Journal of Operational Research 151 (2003) 520–535
choice for order 2 is order 1, with an associated savings value of 0.5, resulting in the regret value of 1:32 0:5 ¼ 0:82. The column to the right of the opportunity costs, shows the preferred partner for each order, i.e. the order it has the largest savings value with. Obviously order 3 is a superior option as all the other orders prefer order 3. Order 3 prefers order 4, thus these orders mutually accept each other as their best choice. The choice according to the SA (26) presented in Section 5.1 is based on the largest savings value and shown in Table 1 in bold face. Using this algorithm we will choose to join the orders 3 and 4 on one tour. The savings associated with this choice are 1.53, thus the new costs are 7:28 1:53 ¼ 5:75. Let us continue with the second iteration. Table 2 shows the savings tableau after the first iteration of the SA. Now only three savings values are left. Let us consider the value in bold face. This value was calculated in the following way. In the first iteration orders 3 and 4 have been joined on one tour, leading to the itinerary C–A–D–ðemptyÞC. Now the combination of order 2 with this tour leads to the following itinerary B–C–A–D– ðemptyÞB. Thus, the trips C–B and D–C are no longer performed, while the empty movement D–B is added. This leads to a savings value of 0.89. Choosing this value which is the largest remaining Table 2 Savings tableau for the second iteration of the SA Savingsði; jÞ 1 2 3 4
1
2
3
0.5 0.89 0.89
4
one in the matrix, leads to the combination of orders 2 and 3, which in turn leads to the tour 2–3– 4. Given the costs before the iteration and the savings value associated with the current choice, the new costs are 5:75 0:89 ¼ 4:86. As there are no more savings possible after this iteration, the final solution consists of two routes, namely the route 2–3–4 and the route with order 1 only. The total costs of this solution are 4.86. Let us now consider the OSA (28). The last two columns in Table 1 show the adjusted savings, i.e. the value of sðiÞ for each order i and the new best options for each order. From these columns we see that order 2 has the largest opportunity costs and thus will lose most if it is not paired with order 3. Given these adjusted savings, order 3 no longer considers order 4 as its best choice, but rather prefers order 2. This choice is shown in italic. The savings in this case are smaller, thus the new costs are larger than those after the first iteration of the SA, namely 5.96. Clearly, the new savings matrix has to look different than the one in Table 2, as we chose a different combination in the first iteration of this algorithm. Table 3 shows the information for the second iteration of the OSA. Again order 2 has the largest opportunity costs. Note that the savings value between orders 1 and 2 is different from the one in Table 1. Joining orders 1 and 2 is much more favorable now, than it was in the first iteration. This is due to the fact, that now joining orders 1 and 2 actually means to build the route 1–2–3, which has no empty vehicle movements at all. Thus, in this iteration the choice based on the adjusted savings values is to join order 1 with order 2. The associated savings
Table 3 Savings, opportunity costs, adjusted savings and best options for each order for the second iteration of the OSA
M. Gronalt et al. / European Journal of Operational Research 151 (2003) 520–535
value of 1.5 leads to total costs of 4.46. After this iteration no more order combinations are possible, such that the solution found consists of two routes, namely one with a schedule of orders 1–2–3 and one which exclusively services order 4. Note, that the costs associated with the solution found by the OSA are now smaller than the costs of the solution found with the SA. Thus, giving up some savings in the first iteration leads to a better overall solution. Finally, let us briefly describe the SSA. Let us assume, that the value c ¼ 0, i.e. that all mutual beneficial combinations are chosen at once. If we look at Table 1 we see that according to the SA (the same intuition applies to the OSA) only the combination of orders 3 and 4 is based on mutual acceptance. Orders 1 and 2 have a positive savings value with each other, however they do not consider each other the best choice and thus can not be joined. In this example the SSA leads to the same result as the SA. To find out how these algorithms perform for more realistic problem sizes we performed an extensive numerical study. In Section 7 the results of this study are presented. 7. Numerical results 7.1. Test setting In order to analyze the performance of our heuristics we tested them on a number of randomly generated problems, 2 for which we used the following input parameters: • • • •
Eight distribution centers, 512 orders, a maximum tour length of two periods and a planning horizon of eight periods (the number of periods for which order information is available).
Based on this information, x- and y-coordinates from the interval ð0; 100 were randomly assigned to each distribution center. All our test-problems 2
All random numbers were drawn from uniform distributions.
531
have these geographical data in common. The reason is that firms cannot change the locations of their warehouses in the short run. Thus, given these locations, firms have to satisfy sets of orders which change over time. Under this constellation of changing orders sets, it is important that a solution method yields robust results which do not heavily depend on the order portfolio. However, our results are robust with respect to different geographical settings as well. The orders are specified by a pickup and a delivery location, both randomly chosen from the set of distribution centers, as well as an earliest possible pickup time and a latest possible delivery time, both randomly generated within the interval ð0; 8. As stated above, eight is the number of periods for which order information is available and thus planning can be done. We generated five sets of problems. All the instances within a problem set have the same order structure. The only difference comes from the tightness of the time windows. We generated 8 instances within each problem set, with the average length of the time windows ranging from 1 to 8. Note that time window length can take integer values only. For notational convenience we will below refer to the problem sets as problem set A, B, C, D and E. Within the sets we will refer to a problem with an average time window length of 5 by A5, B5, C5, D5 and E5. References to the other instances will be done analogously. Table 4 shows for the different problem sets the compulsory loaded vehicle movements and the lower bounds obtained using the relaxation presented in Section 4. Generally, the results in Section 7.2 will be based on averages over the problem sets for different levels of time window tightness. This is due to the fact, that we are mainly interested in the performance of our algorithms and its relation to various settings of time window tightness. In particular we will analyze how time window tightness affects the solution quality. 7.2. Analysis of our heuristic algorithms In this section we will present the numerical analysis we performed to test our heuristic
532
M. Gronalt et al. / European Journal of Operational Research 151 (2003) 520–535
Table 4 Characteristics of the problem sets generated Problem set
Compulsory loaded vehicle movements
Lower bound
A B C D E
153.22 149.33 150.58 148.30 146.14
159.203 156.207 155.096 157.820 159.157
algorithms. First, we will concentrate on the most favorable parameter settings for each algorithm. This will be followed by a comparison of the solution quality obtained with the different heuristic algorithms. Finally, we will discuss the impact of time window tightness. For the parameter studies, we chose the following ranges of values: • a ¼ 1; 1:2; 1:4; 1:6; 1:8; 2, • b ¼ 0; 0:1; 0:2; . . . ; 0:8; 0:9; 1, • c ¼ 0; 0:1; 0:2; . . . ; 0:8; 0:9; 1. Given all possible parameter constellations for the four heuristic algorithms and the 40 test problems, the results presented below are based on a total of 31 680 simulation runs. 7.2.1. The weight of the connecting empty vehicle movements a Let us first analyze the impact of weighting the connecting empty vehicle movements and fix c ¼ 1. We performed runs for levels of a ¼ f1; 1:2; 1:4; 1:6; 1:8; 2g. Fig. 4 depicts the results for the SA and for the OSA (in bold), where Ôtotal costsÕ are averages over all b values. The idea behind the range of a used for our simulations is that due to the constructive characteristic of the heuristics a combination of orders once chosen can not be broken up anymore. Hence, the connecting empty vehicle movements accepted become fixed. By assigning weights larger than 1 to these movements, we aim to bias the acceptance of combination of orders towards combinations with short or no connecting empty vehicle movements at all. The results show that any weight a > 1 is favorable as compared to a ¼ 1. Furthermore, it can be seen that for both
Fig. 4. Results of the SA and the OSA (in bold) for various weights of the connecting empty vehicle movements.
algorithms a weight of a ¼ 1:2 is most favorable. Finally, the results show that, based on the highly consolidated data, the OSA outperforms the SA under any value of the weight a. In Section 7.2.4 we will look more closely at the performance of the two algorithms by presenting results for each case of time window tightness. Note also, that qualitatively similar results, were obtained for the SSA and the OSSA. For reasons of brevity, they are not presented here. Based on the results found in this section we fixed the weight for the connecting empty vehicle movements to a ¼ 1:2. All the results reported below are those obtained for this value of a. 7.2.2. The weight of the opportunity costs b Having determined the value of the weight for the connecting empty vehicle movements we will now turn to the analysis of appropriate values for the weight of the opportunity costs b. Results for the OSA (in bold) and the OSSA are presented in Fig. 5. A weight b ¼ 0 corresponds to the SA and the SSA respectively. Thus, we see that once again any positive weight b > 0 is preferable to a weight b ¼ 0 for both algorithms. Using information about opportunity costs which occur if some combination are chosen while others are not, improves solution quality significantly. Furthermore, the OSA outperforms the OSSA at any weight of b. While these results are again based on highly consolidated data, we will below look at the performance of those two algorithms for different
M. Gronalt et al. / European Journal of Operational Research 151 (2003) 520–535
533
update of the savings matrix. Furthermore, the OSSA finds better solutions than the SSA for any level of the threshold c. Below we will present a comparison of our algorithms for different levels of time window tightness. The results presented in this comparison are based on fixed levels of c ¼ 0:6 for the OSSA and c ¼ 0:9 for the SSA.
Fig. 5. Results of the OSSA and the OSA (in bold) for various weights of the opportunity costs.
levels of time window tightness. However, the figure suggests that, for both algorithms, the best level of b is b ¼ 0:3. Thus, in what follows we will only present results for b ¼ 0:3. 7.2.3. The threshold for accepting combinations c Let us conclude our parameter study by looking at the best threshold level for accepting combinations of orders. To analyze this parameter in Fig. 6 we present results for both the OSSA (in bold) and the SSA for various levels of this threshold. The figure shows, that for both algorithms a weight smaller than 1 is favorable. However, for the OSSA this weight should be c ¼ 0:6, while for the SSA this weight should be c ¼ 0:9. Note, that the smaller the weight, the more order combinations are accepted in each iteration without an
Fig. 6. Results of the SSA and the OSSA (in bold) for various levels of the acceptance threshold.
7.2.4. Comparing the performance of our algorithms Let us now turn to an analysis of the heuristic approaches proposed in this paper. A comparison of the four algorithms for different levels of time window tightness is presented in Table 5. In this table we present the lower bound on the empty vehicle movements (where time windows are ignored), and the empty vehicle movements and percentage deviation from the lower bound for each of the four approaches. In the last row the average deviation from the lower bound is presented for the four approaches. Table 5 shows, that the OSA outperforms all other algorithms on average. The OSA finds solutions which are on average 5.94% above the lower bound, while the worst algorithm, namely the SSA finds solutions which on average are 7.99% over the lower bound. More specifically, the table suggests a ranking: OSA > OSSA > SA > SSA. Thus, in general the use of a positive weight for the opportunity costs improves the solution quality, while a threshold leading to the immediate acceptance of more than one combination of orders worsens the solution quality. However, the results also show that the first effect, namely the inclusion of opportunity costs is much stronger and thus more important, as both algorithms utilizing the opportunity costs outperform the other two algorithms SA and SSA. If we look more closely at the impact of the time window tightness on the performance of the algorithms, we see that the OSSA outperforms both the SSA and the SA for any level of time window tightness. The OSA performs especially well on the problem instances with tightest time windows. It outperforms the OSSA in 6 out of 8 problem classes, while for the problems with medium length time windows (average time window length 3 and 4) the OSSA works best. All best solutions are
534
M. Gronalt et al. / European Journal of Operational Research 151 (2003) 520–535
Table 5 Comparison between our four approaches Average TW length
Lower bound
SSA
%
SA
%
OSSA
%
OSA
%
1 2 3 4 5 6 7 8
7.9826 7.9826 7.9826 7.9826 7.9826 7.9826 7.9826 7.9826
11.4707 8.8422 8.3495 8.0758 8.0575 8.0575 8.0575 8.0575
43.69 10.77 4.59 1.17 0.94 0.94 0.94 0.94
11.1623 8.7272 8.3186 8.0755 8.0575 8.0575 8.0575 8.0575
39.83 9.33 4.21 1.16 0.94 0.94 0.94 0.94
10.8148 8.6695 8.2183 8.0580 8.0504 8.0504 8.0504 8.0504
35.48 8.61 2.96 0.94 0.85 0.85 0.85 0.85
10.5282 8.6594 8.2196 8.0893 8.0398 8.0398 8.0398 8.0398
31.89 8.48 2.97 1.34 0.72 0.72 0.72 0.72
Average
7.99
found with the algorithms utilizing opportunity costs. 7.2.5. The impact of time window tightness on solution quality Considering empty vehicle movements we can observe, that empty vehicle movements increase rapidly with increased time window tightness. This fact can also be seen from Fig. 7 where we plotted the results for the OSA and the lower bound. As stated above the network flow lower bound is independent of the time window tightness. For the problems with the tightest time windows the results obtained with the OSA lie approximately 32% above the lower bound, while for the problems with wide time windows this gap narrows to less than 1%. Thus, while we do not know how good our solutions really are, we can make the
7.29
6.42
5.94
following statements. First, the solutions found with our algorithm are very close to the lower bound for problems with wide time windows. For these problems, the lower bound should be good as the relaxation of weak constraints has only little impact on the solution space. Thus, we know that our algorithms perform extremely well for problems with wide time windows. Second, for problems with tight time window constraints the lower bound is likely to be very poor. Thus, we should expect that the gap between the solutions found with the OSA and the optimal solution should be much smaller than the 32% gap reported in Table 5. Furthermore, if we consider that loaded vehicle movements sum up to approximately 150, empty vehicle movements of 10.5282, as reported for the OSA for the tightest problems, account for only approximately 7%. If we compare these results with empirical findings of Dejax et al. [4], where empty vehicle movement costs amounting to 40% of total costs were reported for a large European transportation system, our results seem to be very promising. We can conclude that intelligent computational planning efforts can lead to improved and more efficient use of resources.
8. Conclusions and future research
Fig. 7. The impact of time window tightness on empty vehicle movements (columns) and the lower bound (line).
In this paper we presented an exact formulation for an NP-hard problem in distribution logistics. We proposed a relaxation of the problem
M. Gronalt et al. / European Journal of Operational Research 151 (2003) 520–535
to generate lower bounds, which we used to test four new heuristics. Our results show that these heuristics find very good solutions quickly. In particular, we found that using a measure for opportunity costs (a regret value) significantly improves the solution quality, while a simultaneous approach does not have a favorable effect. We also showed the impact of time window tightness on solution quality. In general, increasing time window tightness leads to a rapid increase in empty vehicle movements. Future research will be concerned with algorithms which explicitly minimize the fleet size necessary to satisfy all customerÕs orders, as well as explicit consideration of carrier allocation to certain locations over time. Acknowledgements The authors thank two anonymous referees for helpful comments which helped to improve the paper. Financial support from the Oesterreichische Nationalbank (OENB) under grant #8630 is gratefully acknowledged. References [1] M.O. Ball et al. (Eds.), Handbooks in Operations Research and Management Science, Volume 8: Network Routing, North-Holland, Amsterdam, 1995. [2] G. Clark, J.W. Wright, Scheduling of vehicles from a central depot to a number of delivery points, Operations Research 11 (1963) 568–581.
535
[3] T.G. Crainic, G. Laporte (Eds.), Fleet Management and Logistics, Kluwer Academic Publishers, Norwell, 1998. [4] P.J. Dejax, T. Durand, F. Servant, A planning model for loaded or empty container ground transportation, TIMS/ ORSA National Meeting, Los Angeles, 1986. [5] J. Desrosiers, G. Laporte, M. Sauve, F. Soumis, S. Taillefer, Vehicle routing with full loads, Computers and Operations Research 15 (3) (1988) 219–226. [6] Y. Du, R. Hall, Fleet sizing and empty equipment redistribution for center–terminal transportation networks, Management Science 43 (2) (1997) 145–157. [7] Y. Dumas, J. Desrosiers, F. Soumis, The pickup and delivery problem with time windows, European Journal of Operational Research 5 (1) (1991) 7–22. [8] R.W. Hall, Stochastic freight flow patterns: implications for fleet optimization, Transportation Research A 33 (1999) 449–465. [9] W.C. Jordan, L.D. Burns, Truck backhauling on two terminal networks, Transportation Research B 18 (1984) 487–503. [10] W.C. Jordan, Truck backhauling on networks with many terminals, Tansportation Research B 21 (1987) 183– 193. [11] W.B. Powell, An operational planning model for the dynamic vehicle allocation problem with uncertain demands, Transportation Research 213 (3) (1987) 217– 232. [12] W.B. Powell, Y. Sheffi, K.S. Nickerson, K. Butterbaugh, S. Atherton, Maximizing profits for North American Van linesÕ truckload division: a new framework for pricing and operations, Interfaces 18 (1) (1988) 21–41. [13] W.B. Powell, A stochastic formulation of the dynamic assignment problem with an application to truckload motor carriers, Transportation Science 30 (1996) 195–219. [14] M.W.P. Savelsbergh, M. Sol, The general pickup and delivery problem, Transportation Science 29 (1) (1995) 17– 29. [15] M.M. Solomon, Algorithms for the vehicle routing and scheduling problems with time window constraints, Operations Research 35 (1987) 254–265.