A
R T I C L E S
DYNAMIC VEHICLE DISPATCHING: OPTIMAL HEAVY TRAFFIC
PERFORMANCE AND PRACTICAL INSIGHTS
NOAH GANS
OPIM Department, The Wharton School, University of Pennsylvania, Philadelphia, Pennsylvania 19104-6366
GARRETT VAN RYZIN
Graduate School of Business, Columbia University, New York, New York 10027
(Received June 1996; revision received June 1997; accepted December 1997)
We analyze a general model of dynamic vehicle dispatching systems in which congestion is the primary measure of performance. In the model, a finite collection of tours are dynamically dispatched to deliver loads that arrive randomly over time. A load waits in queue until it is assigned to a tour. This representation, which is analogous to classical set-covering models, can be used to study a variety of dynamic routing and load consolidation problems. We characterize the optimal work in the system in heavy traffic using a lower bound from our earlier work (Gans and van Ryzin 1997) and an upper bound which is based on a simple batching policy. These results give considerable insight into how various parameters of the problem affect system congestion. In addition, our analysis suggests a practical heuristic which, in simulation experiments, significantly outperforms more conventional dispatching policies. The heuristic uses a few simple principles to control congestion, principles which can be easily incorporated within classical, static routing algorithms.
INTRODUCTION
In vehicle routing, loads of goods must be transported from a source location to a number of geographically dis-persed destinations. Vehicles are assigned routes, and loads are assigned to vehicles in an attempt to optimize criteria that typically include measures of cost and of level of service. Such problems are usually modeled as static
design problems. While there are many practical applica-tions (such as school bus and garbage truck routing) that are undeniably route design problems, many applications involving routing and consolidation are, in reality, sequen-tial dynamic decision problems. Loads arrive and vehicles are dispatched continuously over time. Examples include delivery of goods to retail stores, less-than-truckload (LTL) shipping networks, and parcel post delivery/pick-up, to name a few.
As Psaraftis (1988, 1995) notes, one important differ-ence between dynamic and static routing environments is the possibility of congestion. With limited transportation capacity and variability in the mix and number of arriving loads over time, as well as variability in the times required to deliver loads, queueing delays are inevitable.
Such delays are more than a nuisance. For a carrier, they introduce inventories of loads waiting for delivery and directly drive the need for increased facility space. If deliv-ery capacity is increased to eliminate congestion, the
car-rier risks severely underutilizing its transportation assets. For the shipper, long (and variable) throughput times di-rectly increase pipeline inventories and indidi-rectly drive the use of higher levels of safety stock. Indeed, based on a review of a several transportation industry surveys, Ballou (1985, p. 55) concludes that “ . . . from a practical point of view, logistics customer service must focus on time-related elements.”
With throughput time playing such an important role in both logistics cost and customer service, it is important for planners and managers to (1) understand what factors— such as mix of load types, constraints, level of variability— determine system congestion, (2) understand the precise tradeoff between delivery capacity and congestion, and (3) be able to design dispatching strategies that minimize con-gestion for a given delivery capacity.
In this paper, we propose and analyze a model of dy-namic routing and consolidation that allows us to address these questions. In the model, a finite number of load
types arrive randomly over time to a distribution facility and wait to be delivered. Deliveries from the distribution facility are made by a single vehicle, though it is not hard to extend the analysis to multiple vehicles. There is a finite collection ofroutes that the vehicle can use to deliver the loads. Each route is characterized by the number of each type of load it delivers, as well as by the time required to
Subject classifications:Transportation, freight/materials handling: queueing analysis of dynamic load, consolidation problems. Transportation, vehicle routing: queueing analysis of dynamic routing problems. Queues, applications: dynamic vehicle dispatching.
Area of review:TRANSPORTATION.
675
Operations Research 0030-364X/99/4705-0675 $05.00
complete the route. Whenever the vehicle becomes avail-able, it can immediately be dispatched on another route or it can idle. The problem is to find a policy for dynamically selecting routes (dispatching routes) over time that mini-mizes congestion in the system. The measure of congestion we use, which we call work, is defined as the minimum time needed to deliver all waiting loads.
Using a sample path lower bound on system work (see Gans and van Ryzin 1997) and a novel analysis of an upper bound based on a simple batching heuristic, we find stabil-ity conditions and give a closed-form characterization of the optimal work in heavy traffic. The expression for opti-mal system work is a variant of the classicalGI/GI/1 heavy traffic limit (see for example Daley et al. 1992, Kleinrock 1976). It combines first and second moment information on the arrival process with dual prices from an underlying set covering linear program derived from the collection of feasible routes. These dual prices have a natural interpre-tation as the work content (i.e., delivery time burden) that each load type imposes on the system. Together, the ar-rival statistics, dual prices andGI/GI/1 formula reveal the root sources of congestion and show directly how various model parameters—mix of incoming loads, collection of available routes, traffic intensity—affect optimal system congestion.
We also obtain several important insights on near-optimal dispatching policies. In particular, because the up-per bound is constructive, our analysis provides an asymptotically optimal class of batching heuristics. While these heuristics do not appear to be practical in moderate traffic, they suggest some simple design principles for con-structing more practical heuristics. Indeed, a prototypical heuristic incorporating these design principles, which we call CENTER, consistently outperforms other naive heu-ristics in a series of simulation tests. The rules used by the heuristic are simple and can be easily incorporated within classical, static routing algorithms.
Overview of Paper
The remainder of this paper is organized as follows. We begin in §1 with a literature review. Then §2 defines the model, and §3 presents two example problems that are used in the paper’s numerical studies. In §4 we present our main analytical findings, and in §5 we offer the central argument for these results, providing technical proofs of intermediate results in an appendix. Readers who wish to concentrate on application, rather than proof, may pro-ceed directly from §4 to §6, which presents the CENTER policy, as well as three competing heuristics. In §7 we provide results of numerical studies. Our conclusions are given in §8.
1. LITERATURE REVIEW
Psaraftis (1988, 1995) provides a comprehensive discussion of dynamic vehicle routing and defines a network version of the problem. We refer the reader to this work for an
overview of dynamic routing applications, a good critical comparison of the differences between static and dynamic routing problems, and a comprehensive survey of the rele-vant literature.
Powell (1995) provides a comprehensive overview of sto-chastic programming approaches to a class of dynamic as-signment problems which includes the management of truck-load-trucking fleets. These models match trucks with requests for (whole) trucks over a finite horizon, and the focus of the work is on computationally tractable, numeri-cal methods. In contrast, we look at dispatching problems in which the capacity of one truck may be split to fill multiple requests. We also analyze a stationary problem over an infinite horizon.
Minkoff (1993) uses a Markov decision process (MDP) model to analyze a dynamic dispatching problem and pro-poses a decomposition heuristic. For a shipment consolida-tion problem, Higginson and Bookbinder (1994a) also propose a MDP model and algorithm. Though MDP mod-els nicely capture the sequential decision making process inherent in dynamic vehicle routing, the approach is lim-ited to very small scale problems and does not provide a great deal of structural insight.
Heuristic methods for shipment consolidation have also been investigated. Higginson and Bookbinder (1994b) per-form a simulation study of time and quantity policies. Pow-ell and Humblet (1986) analyze a bulk service queueing model of consolidation and provide a numerical method for finding the Laplace transform of the queue length dis-tribution under several simple control strategies. Both these works, however, consider only a scalar (weight/size) constraint. Our model and analysis, in contrast, allow for general packing constraints.
Bertsimas and van Ryzin (1991, 1993a, 1993b) analyze a Euclidean version of a dynamic vehicle routing problem, called the dynamic traveling repairman problem (DTRP). In the DTRP, customer requests arrive according to a re-newal process and their locations are randomly distributed in a Euclidean service region according to a given proba-bility density function. A vehicle traveling at constant ve-locity serves the customers. Bertsimas and van Ryzin obtain bounds on the waiting time under an optimal policy and propose several heuristics whose performance lies within a constant factor of optimality in heavy traffic.
In this Euclidean model, congestion is driven primarily by the geometry of the problem. Because customers take on a continuum of locations according to a probability density function, the set of locations becomes more “dense” as the backlog grows, and this density allows for more efficient travel. In our problem, however, there are a
fixed number of delivery locations, so as congestion in-creases it is the number of loads destined for each fixed location that grows. As a result there are no “economies of density” in heavy traffic. The appropriateness of each model depends on the application, with the Euclidean model best suited to applications with very high levels of variety in delivery locations (e.g. delivering appliances to 676 / G
homes) and the discrete model best suited to applications involving a moderate number of fixed locations (e.g., wholesale distribution).
Reiman et al. (1996) address a dynamic distribution sys-tem operating in a make-to-stock mode. A single product is stocked at m retailers, each of which has random de-mand. A vehicle replenishes the retailer inventories using either direct shipments (fixed DS), a tour of allmretailers (fixed TSP) or possibly a combination of both (dynamic routing). The objective is to minimize long-run average holding, backorder and transportation costs. The authors provide a heavy traffic analysis of the fixed TSP policy, adapting recent heavy traffic results of Coffman et al. (1995a, 1995b) for polling systems.
Reiman et al.’s work provides modeling detail and in-sights that are complementary to ours. Our model allows for a variety of load types (e.g., different product types or shipment sizes) and an essentially unlimited number of feasible routes, each of which can reflect complex bin-packing or other combinatorial constraints. Reiman et al., in contrast, consider only simple direct-ship and/or TSP routes delivering a single product, with no constraints on the quantity delivered to each location. Our model there-fore better captures the complexities in load types and routing options found in many bulk-cargo shipping appli-cations (e.g., delivering automobiles from assembly plants to dealer lots). However, to address this added routing complexity rigorously, we must settle for a courser mea-sure of system performance (system work) relative to that of Reiman et al.’s more detailed modeling of holding, backorder, and transportation costs.
Finally, Bertsimas and Simchi-Levi (1996) provide a re-cent survey of the DTRP and a priori (2-stage) stochastic routing problems. Similarly, Powell et al. (1995) offer a recent survey of the dynamic assignment problem, the DTRP and a priori stochastic routing problems.
2. PROBLEM DEFINITION AND NOTATION
In this section, we formally define our notation and model.
2.1. Notation
When describing vectors, we use the following conven-tions.Rmism-dimensional Euclidean space, andR
⫹
mis its nonnegative orthant. Similarly, Zm is the m-dimensional lattice of integers and Z⫹m the nonnegative portion of the set. Boldface 0 僆 Rm represents a vector of zeroes, and boldface1僆Rma vector of ones. The vectorej僆Z
⫹
mhas a one in the jth element and zeroes elsewhere. For x 僆
Rmand real⑀⬎0,ᏺ(x,⑀)def
⫽{y僆Rm⬊y
i僆(xi⫺⑀,xi⫹
⑀);i⫽1, . . . ,m} is theL⬁⑀-neighborhood of x.
We use three different symbols to represent weak and strict forms of vector inequalities. For a 僆 Rm and b 僆 Rm, we write “a聿b” whenevera
i聿bifor allmelements, i. Whenai聿bifor allmelements and there exists at least one element,k, for whichak ⬍bkwe write “a ⬍b,” and whenai⬍bifor all i, we write “a⬍⬍ b.”
Functions of vectors are performed on a component-wise basis. For example, fora僆Rmandb僆Rm, “min{a, b}” yields a vector whose ith component equals min{ai, bi}. Similarly, “mod{a, b}” produces a vector whose ith component equalsaimodbi.
We follow these conventions when describing probabilis-tic events: { 䡠} represents an event and {䡠 } its comple-ment;1{䡠}denotes the indicator function of an event; and P{䡠} designates the probability of an event. The abbrevi-ations i.i.d. and a.s., respectively, stand for “independent and identically distributed” and “almost surely.”
2.2. Arrival Process
Consider a stream of loads that arrive to a distribution facility and wait to be delivered. A load type denotes a particular set of attributes such as location, size, weight, etc. that uniquely define a load’s delivery requirements. We assume there are m load types. At arrival epochs, {tk⬊k ⫽ 1, 2, . . . }, quantities of the m load types arrive into the system according to a renewal process. We set
t0⬅0 and letTkdef⫽tk⫺tk⫺1 denote the interarrival time
between arrivalsk⫺1 andk; {Tk僆R⫹⬊k⫽1, 2, . . . } is a sequence ofi.i.d. positive random variables. LetE[T]⫽
1/ ⬎0 and varianceT2 ⬍ ⬁(T2 ⬍ ⬁ implies thatE[T], too, is finite).
For each load type, i, and every arrival epoch k, we define Vki 僆 Z⫹ to be the total number of type-i loads entering the system. We assume that the random vectors, {Vk僆Z⫹m⬊k⫽1, 2, . . . } are i.i.d. and that eachVk satis-fies 0 ⬍Vk ⬍⬍ 1C1 a.s. for some fixed C1 ⬍ ⬁. Let␥ ⫽ E[Vk] and⌫ ⫽var(Vk), the variance-covariance matrix of Vk. Without loss of generality, we assume␥⬎⬎0as well.
Note that the arrival process is quite general. At any arrival epoch more than one load and/or more than one
typeof load may arrive into the system. That is, while the sequence of vectors, {Vk}, isi.i.d., we place no indepen-dence restrictions among the elements of eachVk. Indeed,
⌫may represent a broad range of variance-covariance re-lationships among the arriving quantities.
2.3. The Distribution Facility
The distribution facility has a single vehicle that can use any one ofnpossible routes to deliver loads. Each route,j, requiresjunits of time to execute and can simultaneously deliver up toaijtype-iloads. The matrixA僆Z⫹m⫻ndefines the delivery capacities of allnpossible routes.
We assume that A has rank m, which implies that for each type of load i there exists at least one route j, for which aij ⬎ 0. Thus, a simple upper bound on the time required to deliver one unit of an arbitrary type of load is
1ⳕ. Together with the upper bound of C1 on each
ele-ment ofVk, this implies that an arbitrary arrival cana.s. be processed inmC11ⳕunits of time.
The facility can be idle or using exactly one of its n
routes. Accordingly, we define then-vectorUt, whereUt⫽ 0if the facility is idle at timet, andUt⫽ejif it is currently executing route jat timet. Once a route jis dispatched, it
may not be changed forjunits of time. We define Ot僆 R⫹to be the residual time remaining for the route in use at timet. Each time deliveries commence under route j,Ot is set equal toj, and as the deliveries proceed under j,Ot decreases at rate one until it equals zero and the route has completed execution. The state of the vehicle is therefore defined by the pair of values (Ut,Ot).
2.4. Dispatching Policies and System Performance
The set of arrivals up to time t, {(tk,Vk): tk ⬍ t}, along with the sample path of routes and times used up to t, {(Ur,Or):r⬍t}, is called thehistoryof the process up tot,
Ᏼt. We define adispatching policyto be a rule that, given
Ᏼt, allows the distribution facility to determine which route to use at t. This mapping must be nonanticipating with respect to {Ᏼt:t肁0}.
The history of the process up to time talso determines the system backlog att. LetQt僆Z⫹mrepresent the quan-tities of loads in the system that have not entered into delivery by timet. Note that at arrival epochstk, there is a discontinuity in Qtk because of the arrival of a vector of
loads Vk. Similarly, at epochs at which a delivery com-mences, there is a discontinuity, as integral numbers of loads leave the pool of loads waiting to be delivered. Let {tk⬘:k⬘ ⫽1, 2, . . . } be the combined sequence of arrival and delivery commencement epochs. Then {Qt:僆Z⫹m:t肁 0} obeys the following recursion:
Q0⬅0, Qt⫽
冦
Qtk⬘, tk⬘⬍t⬍tk⬘⫹1, Qtk⬘ ⫹Vk, t⫽tk⬘⫹1 andVk arrives attk⬘⫹1, Qtk⬘ ⫺min兵Qtk⬘,aj其, t⫽tk⬘⫹1 andaj commences attk⬘⫹1.Our basic measure of performance is the totalworkin the system, denotedWt, where
Wt⫽Ot⫹min
再
冘
j⫽1 njxj⬊Ax⭓Qt,x僆Z⫹n
冎
. (1)Wtis the minimum time required by the distribution facil-ity to feasibly clear the system starting at timet, assuming that no additional loads arrive aftert. In the optimal solu-tion, xj is the number of type-j routes used to clear the backlog, and we require xjto be integral.
This definition of work is the same as that ofcompletion time in Bambos and Walrand (1993) and is a generaliza-tion of the definigeneraliza-tion of work in system for simple, single server queues in Wolff (1989). While somewhat course and aggregate, this definition of work is a quite natural mea-sure of congestion. For example, it differentiates a low backlog—one that can be delivered in a few hours—from a high backlog—one that may take several weeks to com-pletely clear. Furthermore, in most cases, high levels of work go hand-in-hand with high numbers of loads in queue, long throughput times, and other deleterious ef-fects of congestion, and the minimization of work tends
also to mitigate these negative effects of congestion. One may therefore view work as measuring undesirable system behavior rather than as a detailed service cost, similar in spirit to the squared error function of classical linear-quadratic control. As discussed in Gans and van Ryzin (1997), work also appears to be fundamental in determin-ing other measures of system performance, playdetermin-ing a role analogous to that of theworkload processin classical heavy traffic analysis.
Observe that the sample paths of {Qt 僆 Z⫹m⬊t 肁 0}, {Ot僆 R⫹⬊t 肁 0} and {Wt僆 R⫹⬊t 肁 0} depend on the dispatching policy, as well as on the sample sequences of interarrival times {Tk} and arrival quantities {Vk}. When we wish to emphasize the dependence on, we will write
Qt,Ot, andWt.
We say that a policyisstable if
E关W兴def ⫽limt3⬁ 1 t
冮
0 t Wsdsexistsa.s. and is finite. All bounds and policies we analyze are in fact asymptotically stationary, so that limt3⬁E[Wt]
⫽ limt3⬁ 1/t 兰0t Ws ds, as our notation suggests. Let ⌸ denote the class of all policies that are nonanticipating, stable and asymptotically stationary. We shall henceforth treat E[W] as an expectation and restrict our attention only to policies僆⌸.
We call a policy,*僆⌸, optimal if
E*关W兴⫽inf僆⌸E关W兴.
Letbe a measure of system utilization, which we define below (see Equation (6)). Then we call policy⬚ asymptot-ically optimalin heavy traffic if
lim 31
E⬚关W兴
E*关W兴⫽1.
We address the definition of stability, the asymptotic characterization of optimal work and dispatching policies in Section 4; however, to be concrete, we next give two brief examples of “prototypical” transportation problems that can be modeled using the set-covering formulation: a load consolidation problem, and a one-warehouse, multiple-retailer problem. In Section 7 we use instances of these example problems as the basis for simulation exper-iments.
3. TWO EXAMPLE PROBLEMS 3.1. A Load Consolidation Problem
In the load consolidation problem, one truck shipsmtypes loads from a source to a destination location. Themtypes of loads arrive at the source location at random time inter-vals and wait in queue to be delivered to the destination.
The truck can transport many loads in one delivery, and for any single delivery there arenways in which the vehi-cle may be packed. Each packing must satisfy feasibility constraints: Typical restrictions are physical, based on the 678 / G
volume and weight capacities of the vehicle. Each feasible packing constitutes a different route j, andaijis the num-ber of type-i loads that are delivered by the truck under route j. For the load consolidation problem, the truck always moves between the same source and destination pair on each route. Therefore, all delivery times j are equal, and without loss of generality we may set them to one. Our objective is to dynamically dispatch routes (i.e., packing configurations) over time so as to minimize the long-run expected backlog of loads waiting to be shipped to the destination.
3.2. A One-Warehouse, Multiple-Retailer Problem
In the one-warehouse, multiple-retailer example, a distri-bution facility replenishes a number of geographically dis-persed retail outlets, each of which experiences random demands for several types of products. The warehouse has a single truck of limited capacity (maximum weight) that replenishes products to each of a number of retailers. In this case, each of themload types designates a particular product destined for a particular retail location (i.e., a product-location pair).
The truck may deliver to more than one retail location on each route, and each product type may have a different weight. Based on the total weight constraints, we can enu-merate each feasible delivery route j. Here,aijis the num-ber of type i loads delivered under route j, and jis the time required to complete route j(e.g., the shortest TSP tour of the sites the route visits). Other restrictions may be placed on the definition of a feasible route, including limits on distances traveled, numbers of sites visited, etc. Again, the objective is to dynamically dispatch routes over time so as to minimizes the long-run expected backlog of loads waiting to be delivered from the warehouse to a retailer.
4. MAIN RESULTS
Building on our earlier work in Gans and van Ryzin (1997), we develop a class of dispatching policies, {qN},
that we demonstrate is asymptotically optimal in heavy traffic. The analysis in Gans and van Ryzin (1997) consid-ers a relaxation of the distribution problem in which frac-tional routes may be used and fracfrac-tional loads may be delivered. (This model has applications in analyzing flexi-ble production and service systems.) Below, we extend these results to the distribution systems described in Sec-tion 3, for which the vehicle can only dispatch complete (nonfractional) routes.
4.1. The Relaxed System
Suppose the dispatching restrictions described in Section 2.3 are relaxed so that the distribution facility can use fractional quantities of thenroutes. Furthermore, suppose the facility can use routes to process fractional numbers of loads.
For a given backlogQt, the time required to clear such a relaxed system will provide a lower bound on the time
required to clear the system defined in Section 2. In par-ticular, by removing the integrality restriction from (1) we create a linear program (LP) lower bound on system work at timet:
Wt⫽Ot⫹min
再
冘
j⫽1 njxj⬊Ax⭓Qt,x⭓0
冎
. (2) REMARK. In Gans and van Ryzin (1997) each column of the matrixAis normalized by dividing byjand represents rates of delivery for the m classes of loads, rather than quantities delivered. Similarly, because the facility pro-cesses arbitrarily small fractional units of backlog quanti-ties, in Gans and van Ryzin (1997) Qt is continuously reduced as the facility delivers the backlog, andOt⫽0 for allt肁0. We also note that what (2) defines to beWtwas labeledWtin Gans and van Ryzin. In turn, Gans and van Ryzin definedWtto be a further lower bound on (2). 4.2. A Lower Bound on System WorkRecall that ␥ ⫽ E[Vk], and let y* 僆 Rm be the optimal solution to the LP
max兵␥ⳕy⬊yⳕA⭐,y⭓0其. (3)
In Gans and van Ryzin (1997) it was shown that the lower bound
y*ⳕQ
t⭐Wt (4)
holds for any backlog,Qt. Observe that (3) is the dual of min
再
冘
j⫽1 n
jxj⬊Ax⭓␥, x⭓0
冎
. (5)For this relaxed system, we can interpret y* as an alloca-tion of work content, or processing time, to the different classes of loads. Similarly, the optimal solution to (5) iden-tifies abasis,B僆Z⫹m⫻m, of efficient routes. That is, for any pointQtin the cone of B,B⫺1Qt is a feasible solution to (2). Furthermore, from (4) we see that the associated pro-cessing time, 1ⳕB⫺1Q
t ⫽ y*ⳕQt, equals the optimal solu-tion to (2).
In Gans and van Ryzin (1997) we show that the system work process in theGI/GI/1 queue with interarrival times {Tk⬊k ⫽ 1, 2, . . . } and service times {y*ⳕVk⬊k ⫽ 1, 2, . . . } provides a sample-path lower bound for work in the relaxed system under any policy. Then defining def
⫽y*ⳕ␥, (6)
as we would for system utilization in the GI/GI/1 queue, we use this lower-bound process to derive stability results and a heavy-traffic lower bound for expected work in the relaxed system.
THEOREM1 (Gans and van Ryzin 1997). (i)If ⬎1then
E[W]⫽ ⬁for any policy 僆⌸and the system is unsta
-ble; (ii) if we scale T so that 3 1 from below as 3
lim
31共1⫺兲E关W兴⭓
共T2⫹y*ⳕ⌫y*兲
2 .
REMARK. Theorem 1 uses the limit “ 31.” Technically, however, this limit is shorthand for a description of a se-quence of stable systems, (indexed byn) for whichVnand Tn both converge in distribution and n 3 1 from below (for example see Wolff 1989, p. 518). To simplify the expo-sition, we will henceforth consider the distribution of the arrival sequence {Vk;k肁1} to be fixed, and interpret3 1 to mean an increase in therateat which these job quan-tities arrive.
Recall thatWt is a lower bound for Wt. Therefore, the bounds provided by Theorem 1 may be used to define instability and a heavy-traffic lower bound on expected sys-tem work in the restricted syssys-tem as well.
4.3. Upper Bounds for the Relaxed System Based on Batching Policies
We demonstrate in Gans and van Ryzin (1997) that a class of policies, {BN⬊N⫽1, 2, . . . }, is asymptotically optimal
as31. In the policies {BN}, the distribution facility acts
as abulk-service queuein which the individual arrival vec-tors {Vk} are served in batches of N. While somewhat clumsy from a practical standpoint, these batching policies have the advantage of being analytically tractable, provid-ing constructive, closed-form upper bounds on the optimal work.
We may think of bulk service as operating in two stages. In the first stage, an accumulator collects batches of N
arrivals. In the second, a batch server processes these batches of N. For the policy BN in particular, a batch is
formed everyNth arrival, whereNdepends on. We call every Nth arrival epoch a batching epoch, because these are times at which the accumulator passes batches to the batch server.
In the policies {BN}, the batch server processes
incom-ing batches on a first-come, first-served basis. For each batch,l, it substitutes the quantities associated with thelth batch (¥k
⫽1
N V
N(l⫺1)⫹k) forQtin the right-hand side of (2) and uses the LP’s optimal solution to determine the times for which the various routes will run. Thus, the batch server behaves as aGI/GI/1 queue with interarrival times that are the sums of N system interarrival times Tk and service times that are determined by solving the LP (2) for each successive batch.
The intuition behind using the class {BN} is to pick a
large Nso that quantities to be processed in each batch are likely to fall in the cone of B. Then the processing time of each batchlis likely to achieve the lower bound,
y*ⳕ ¥k ⫽1
N V
N(l⫺1)⫹k. If the solution to (5) is not degener-ate, then ␥ lies in the interior of the cone of B, so as N
grows large, the probability that¥kN⫽1V
N(l⫺1)⫹k falls out-side of the cone decreases rapidly.
4.4. Modified Policies to Serve Restricted Systems
Our goal is to apply this batching heuristic to the dynamic dispatching problem. However, the integrality restrictions imposed in (1) introduce a potentially significant source of idleness that does not exist in the relaxed version of the system, and it is not clear a priori that Theorem 1 provides a tight lower bound on expected system work in heavy traffic. For example, one can show that rounding the LP relaxation in the batch policy will not produce an asymp-totically optimal policy.
Nevertheless, we are able to modify the batching poli-cies so that they satisfy the integrality restrictions of (1) and converge to the lower bound of Theorem 1 (ii). The modification uses results on totally dual integral (TDI) systems of linear inequalities. More specifically, we con-struct batches so that the backlogs of allmtypes of loads in each batch are multiples of some large integer,q. This, in turn, ensures that for every batch, the solution to the LP relaxation of (1) is TDI and produces an optimal feasible solution for the original integer program. The new class of policies is called {qN⬊N⫽1, 2, . . . }. Again, we point out
that this class of policies is clearly not practical. However, the policies have the correct asymptotic behavior and therefore allow us to precisely characterize optimal work in heavy traffic.
THEOREM 2. (i) If ⬍ 1and y* is the unique solution to (3),then there exist a C2⬎0,a⬎0and an integer,N*, such that all members of the class{qN⬊N⫽1, 2, . . . }僆
⌸for which N 肁N*are stable and satisfy Eq N 关W兴⭐ 共y*ⳕ⌫y*⫹ T2兲 2共1⫺ ⫺ O共e⫺N兲兲 ⫹N C2 共1⫺ ⫺ O共e⫺N兲兲⫹O共N兲.
(ii) If the conditions of Theorem 1 (ii) and Theorem 2 (i) hold,and we define Ndef
⫽(1⫺ )⫺b for an arbitrary, fixed b僆(0, 1),then lim 31共1⫺兲EqN 关W兴⭐ 共T2⫹y*ⳕ⌫y*兲 2 ,
so that the policies in the class {qN} are asymptotically
optimal as 31. Moreover,together with Theorem1 (ii)
this implies
lim
31共1⫺兲E*关W兴⫽
共T2⫹y*ⳕ⌫y*兲
2 .
Theorem 2 shows that as the traffic intensity grows, the integrality restrictions of the distribution problem do not fundamentally affect the optimal level of work relative to the relaxed system. In turn, the dual prices to the LP relaxation of (1),y* accurately describe the time required to ship each of themtypes of loads in heavy traffic.
In the following section we develop these results, and in Section 6 we present an effective, practical heuristic that uses insights from the analysis. The policy is dynamic, 680 / G
choosing a new route each time the previous one com-pletes execution. In selecting the next route to be used, the policy uses the dual prices,y*. Readers who wish to con-centrate on the practical application of these results may proceed directly to Section 6.
5. PROOF OF THE MAIN THEOREM
Our proposed policy creates batches everyNth arrival ep-och as before. However, at batching epep-ochs quantities of themtypes of loads in the accumulator arerounded down
to the greatest multiple ofqto form a batch. Any leftover loads after the rounding become part of the pool of loads in the accumulator from which the following batch is formed.
The presence of these leftover loads introduces depen-dencies among the sequence of batched quantities. How-ever, by viewing the sequence of quantities arriving at the batch server as a discrete time Markov chain, we show that the covariance between any pair of quantities vanishes ex-ponentially quickly and that the expected work is bounded above by the analogousGI/GI/1 upper bound plus a con-stant.
5.1. Totally Dual Integral Polyhedra
The modified class of policies makes use of a well-known result in polyhedral combinatorics concerning total dual integrality. To motivate the new class of policies, we first present this result.
A rational linear system of inequalities, {yⳕA聿ⳕ,y肁 0}, istotally dual integralif, for any integer objectiveQfor which max{yⳕQ:yⳕA 聿ⳕ,y肁 0} has an optimal
solu-tion, the corresponding dual programmin{ⳕx: Ax 肁 Q, x肁0} has an integral optimal solution. Giles and Pulley-blank (1979) proved the following concerning TDI polyhe-dra.
THEOREM3 (Giles and Pulleyblank 1979). For any rational
linear system of inequalities, {yⳕA 聿 ⳕ, y 肁 0}, there exists a rational␣⬎0such that{yⳕ(␣A)聿(␣ⳕ),y肁0} is TDI.When A is integral,␣⫺1 is integer valued as well.
We can apply this result to our system to show there exists a rational␣⬎0 such that the solution tomin{¥jn⫽1
␣jxj: ␣Ax 肁 Qt,x 肁 0} is integral for all integralQt for which there exist an optimum. Since we assume thatA僆
Z⫹m⫻n is of full rank, there always exists a finite optimal solution for any finite backlog vector,Qt 僆Z⫹m. Further-more, since A is integral, we can define q def
⫽ ␣⫺1 and
rescale the linear program byqto show thatmin{¥jn⫽1 jxj: Ax肁 qQt,x肁0} has an integral optimal solution for all integralQt.
Therefore, if we can ensure that the backlogs of all m
types of goods are multiples ofqunits, then the solution to the LP relaxation in (2) will produce an optimal feasible solution for the original integer program in (1).
5.2. The Class of Modified Batching Policies
For the class {qN} the system acts as a bulk service queue.
At batching epochs, the accumulator forms a batch by rounding down the backlogs of each of themtypes to the nearest multiple ofq. It then sends the batch to the batch server and retains the remaining loads. These remaining loads become a part of the total backlog in the accumula-tor at the next batching epoch.
To facilitate our analysis, we define three random se-quences {Tˆl 僆 R⫹⬊l ⫽ 0, 1, . . . }, {Vˆl 僆 Z⫹m⬊l ⫽ 0, 1, . . . }, and {Rˆl僆Z⫹m⬊l⫽0, 1, . . . } as follows: Tˆl def⫽
冘
k⫽1 N TN共l⫺1兲⫹k, Vˆl def⫽Rˆl⫺1⫹冘
k⫽1 N VN共l⫺1兲⫹k⫺Rˆl, Rˆl def⫽mod冉
Rˆl⫺1⫹冘
k⫽1 N VN共l⫺1兲⫹k,q1冊
. (7) Tˆl is the interarrival time between the (l ⫺ 1)st and lth batches,Vˆlis the vector of loads making up thelth batch, and Rˆl is the set of loads remaining in the accumulator after the lth batching epoch. For all batches, l 肁1, each element ofVˆlis an integral multiple ofqand each element of Rˆl is an integer between 0 and q ⫺ 1. Note that Rˆ0specifies an initial system backlog at time zero.
In turn, we define the sequence of random variables, {Sˆl 僆 R⫹⬊l⫽ 0, 1, . . . }, to be the processing times de-rived by substituting eachVˆlin the right-hand side of (2) and solving the LP. Thus, the batch server behaves as a
GI/G/1 queue with interarrival times {Tˆl} and service times {Sˆl}.
5.3. An Upper Bound on the Expected Backlog
To develop an upper bound onEqN[W] we will separately
bound the time averages of the work found in the accumu-lator and in the batch server. The sum of these two bounds provides a crude upper bound on total average system work.
We begin with the accumulator. Under policy qN the
quantity of loads in the accumulator starts at Rˆl⫺1 at the
beginning of the lth batching cycle, increases throughout the cycle, and reaches its peak,Vˆl⫹Rˆl, as theNth arrival of the batch occurs and the batch is dispatched to the batch server. Therefore, the processing time of the backlog in the accumulator peaks at the end of any cycle.
Recall from Section 2.2 that the time required to pro-cess an arbitrary arrivalVk is bounded above bymC11ⳕ.
Similarly, recall that 1ⳕ is an upper bound on the time
required to process a unit of the backlog of arbitrary type and that each element of Rˆl⫺1 is bounded above by q.
Because the backlog in the accumulator at thelth batching epoch isVˆl⫹Rˆl⫽Rˆl⫺1⫹¥Nk⫽1VN(l⫺1)⫹k, we can define
so that NC3 is an upper bound on the time required to
process the backlog in the accumulator at any time during an arbitrary cycle.
Our next task is to find an appropriate upper bound on the average time required to process the backlog at the batch server. Under policy qNthe batch server processes
incoming batches on a first in, first out (FIFO) basis. While the batch server behaves as a single-server queue withi.i.d. interarrival times {Tˆl}, service times {Sˆl} arenot independent of each other. In particular, Vˆl depends on the size of the previous batch through the remainder term,
Rˆl⫺1. Note that if {Rˆl} is asymptotically stationary, the sequence of distribution times {Sˆl} is stationary as well.
Suppose {Rˆl} is stationary and letDˆ be the delay that a batch finds upon arrival to the batch server. Then the following lemma provides an upper bound onE[Dˆ]. LEMMA1 (found in Daley et al. 1992, p. 187). Let D be the
delay found upon arrival in a GI/G/1 queue with i.i.d.
interarrival times T, stationary service times S, and {S}
independent of{T}.If there exist dependencies among ser
-vice times,then whenever E[S]⬍E[T]and E[D2]⬍ ⬁the following bound holds: E[D] 聿 E[(S ⫺ T)2]/2(E[T] ⫺ E[S]).
In the case of the batch server, with service timesSˆland interarrival timesTˆl, Lemma 1 is equivalent to
E关Dˆ兴⭐ var共Sˆl兲⫹var共Tˆl兲 2共E关Tˆl兴⫺E关Sˆl兴兲⫹
E关Tˆl兴⫺E关Sˆl兴
2 .
In turn, the following well-known relationship between the time average of system work and expected delay upon ar-rival will allow us to characterize an upper bound on time-average work waiting at the batch server.
LEMMA 2 (found in Wolff 1989, p. 279). Let E[D]be the
expected delay found upon arrival and E[W] be the time average of system work in a stable,work-conserving G/G/1
queue with stationary interarrival times T and stationary service times S.Then
E关W兴⫽EE关关SDT兴兴⫹2EE关S关T2兴兴.
Unfortunately, we cannot immediately use Lemmas 1 and 2 to develop a simple upper bound onEqN[W]. While interarrival times to the batch server arei.i.d. with
E关Tˆl兴⫽N/ and var共Tˆl兲⫽NT2, (9) an analysis of the sequence of service times {Sˆl} is much more difficult. In particular, each Sˆl is the solution to an LP. Furthermore, dependencies among service times make the moments ofSˆl, as well asE[SˆlDˆl], difficult to calculate. Therefore, rather than attempting to calculate moments directly, we take the approach of Gans and van Ryzin (1997) and define a sequence of service times {Sl: l ⫽1, 2, . . . }, which is easier to analyze and provides a sample-path upper bound on the sequence {Sˆl}. The expected
delay upon arrival to the batch server under policyqNcan
then be bounded by
E关Dˆ兴⭐ var共Sl兲⫹var共Tˆl兲 2共E关Tˆl兴⫺E关Sl兴兲⫹
E关Tˆl兴⫺E关Sl兴
2 . (10)
Similarly, the time average of work in a system with batch service times {Sl} will provide an upper bound on the average system work underqn.
We begin the construction ofSlby noting that for some batches Sˆl⫽ y*ⳕVˆl and the processing time achieves the lower bound. This happens whenVˆllies within the cone of the optimal basisBof (5). More formally, if the solution to (3) is unique, then (5) is nondegenerate, and there exists an⑀⬎0 such thaty* remains the vector of dual prices for all backlogsQ僆ᏺ(␥,⑀) that are substituted in the right-hand side of (2) (see Bazaraa et al. 1990, p. 260). Since LPs are homogeneous of degree one in their right-hand sides, y* is the optimal vector of dual prices for allVˆl僆
ᏺ(N␥, N⑀). Thus, Sˆl ⫽ y*ⳕVˆl for any batch, l for which Vˆl僆ᏺ(N␥,N⑀).
For other batches, Vˆl
ⰻ
ᏺ(N␥, N⑀) and the dual pricesy* may not apply.NC3provides a uniform upper bound on the processing time of these batches. Let {El} def⫽{Vˆlⰻᏺ(N␥,N⑀)}. The following proposition shows that the probability that {El} occurs is exponentially decreasing inN.
PROPOSITION 1. If y* is the unique solution to (3), then
there exists a ⬎0such that P{El} ⫽O(e⫺N).
Using the bounds on the processing times ofVˆland the definition of {El} we then define the upper bound onSˆl: Sl def⫽y*ⳕVˆl ⫹NC31兵El其. (11)
In turn, we use (11) to derive the following upper bound on time-average system work underqn:
PROPOSITION2. If y*is the unique solution to(3),then for
any ⬍1 there exists an integer N*1 ⬍ ⬁such that for all N肁N*1,EqN[W]聿 E[Dˆ]⫹O(N).
The proofs of Propositions 1 and 2 may be found in the Appendix.
Before we can demonstrate the asymptotic optimality of the policies {qN}, we must solve two problems. First, (10)
holds only for stationary queues for whichE[Dˆ2]⬍ ⬁. We
must show that, without loss of generality, we may analyze a stationary version of the batch server and must bound the second moment of its delay. Second, to use (10) to prove asymptotic optimality we must find sufficiently tight upper bounds on the first two moments of Sl. To do this we must address the dependence among elements of the sequence {Sl}. We accomplish both tasks by viewing the sequence of service times at the batch server as a function of a discrete-time Markov chain.
5.4. The Batch Service Queue as a Mixing Process
We recall that the service time of thelth batch is linked to that of previous batches through the remainder term,Rˆl⫺1.
Not only does this remainder term have a direct effect on the size of the following batch, it also has an indirect effect on subsequent batches, through later remainder terms. Still, we might imagine that the farther out in the sequence ofVˆls we look, the less effect the realization ofRˆl⫺1has on
batch sizes, particularly if the number of arrivals included in a batchNdwarfsq ⫺ 1, the maximum value thatRˆl⫺1
may obtain.
For a stationary sequence of random variables, this asymptotic independence among terms is made precise us-ing the notion of a mixing process. Specifically, suppose {S1,S2, . . . } is a stationary sequence of random variables.
For a 聿 b define Ᏺab to be the -field generated by {Sa, . . . , Sb}. Then {Sk} is -mixing if there exists a se-quence {1,2, . . . } for which limn3⬁n⫽0 such that
兩P兵F1艚F2其⫺P兵F1其P兵F2其兩⭐nP兵F1其 (12)
for all eventsF1 僆Ᏺ0kandF2 僆Ᏺk⬁⫹n.
It is not difficult to show that the arrival process to the batch server is asymptotically-mixing. The underlying se-quence of interarrival times {Tk} is i.i.d. and therefore stationary and-mixing withn⫽0 for alln.
To demonstrate that the sequence of distribution times is asymptotically -mixing we represent the distribution times at the batch server as a function of the evolution of a discrete-time Markov chain with a 2m-dimensional state space. It is well known that a finite, homogeneous, aperi-odic Markov chain is asymptotically stationary. It is also known (c.f. Billingsley 1968, p. 167–168), that a finite, ho-mogeneous,stationaryMarkov chain is-mixing with
n ⫽␣n (13)
for some fixed constants␣⬎0 and僆(0, 1).
We describe the Markov chain. Each arrival epochtkin the original system corresponds to a transition of this em-bedded Markov chain. At each transition, the firstm ele-ments of the Markov chain are assigned the values realized byVk; we will continue to refer to these firstmelements as Vk. We call the second set ofmelements of the state space Rk僆Z⫹m, and at each transition, we define
Rk def⫽mod共Rk⫺1⫹Vk,q1兲,
where R0 def⫽ Rˆ0. Thus, {Rk: k ⫽ 0, 1, . . . } describes the evolution of the remainder term at each arrival epoch, and at each batching epochl,RNl⫽Rˆl.
For 0聿a聿bwe callᏲabthe-field generated by states athroughb of the Markov chain. ThenVˆl僆ᏲNNl(l⫺1), and Sˆl僆ᏲNNl(l⫺1) as well, since it is a function ofVˆl. Thus, for stationary {Vˆl} the sequence {Sˆl} is -mixing withn de-fined as in (13). We note that a stationary version of the batch service system initializes the starting backlogR0
ac-cording to the Markov chain’s stationary distribution for
Rk.
The asymptotically-mixing property of the arrival pro-cess suggests that we should be able to use such a station-ary version of the batch server to determine the upper bound forE[Dˆ] and that the result should hold, no matter what the actual initial backlog,R0. In particular, Szczotka
(1990, p. 233) notes that the limiting waiting time distri-bution of aG/G/1 queueing system is the same as that of the stationary version of the system whenever: (a) the interarrival and service times of the original system can be defined as functions of a homogeneous, positive re-current Markov chain; and (b) the stationary version has
E[Sˆl]⬍E[Tˆl].
We have developed just such a Markov chain as re-quired by (a), and the following proposition demonstrates how we can maintain (b) by construction.
PROPOSITION3. If y*is the unique solution to(3),then for
the stationary sequence of distribution times{Sl}, E关Sl兴⫽Ny*ⳕ␥ ⫹O共Ne⫺N兲.
In turn, for any ⫽ y*ⳕ␥ ⬍ 1 there exists an integer, N*2⬍ ⬁such that E[Sl]⬍E[Tˆl]for all batch sizes N肁N*2.
Thus, by choosing a large enough batch size, we can ensure that the stationary version of the (upper boundS of the) batch server maintains condition (b). We can similarly demonstrate the finiteness ofE[Dˆ2] whenever⬍1.
PROPOSITION4. For any fixed⬍1,there exists an integer
N*3⬍ ⬁such that E[Dˆ2]⬍ ⬁for all batch sizes N 肁N* 3.
Given a stationary sequence of batch distribution times, {Sl}, we can then use (12) to develop the following bound on var(Sl).
PROPOSITION 5. If y* is the unique solution to (3), then
there exists an integer N*4⬍ ⬁and a real0⬍C2⬍ ⬁,such that for any batch size N肁N*4,
兩var共S1兲⫺Ny*ⳕ⌫y*兩⭐C2.
With the first two moments ofSlat our disposal, we can use (10) and Proposition 2 to find the upper bound on
EqN[W] shown in Theorem 2 (ii) and, in turn, to demon-strate the asymptotic optimality of the class of policies {qN} in heavy traffic. The proofs of Propositions 3, 4, and
5, as well as that of Theorem 2, may be found in the Appendix.
6. PRACTICAL DISPATCHING HEURISTICS
As mentioned in Section 4, the batching policies {qN} are
designed primarily to provide analytically tractable upper bounds, and, as simulation results in Gans and van Ryzin (1997) have shown, they appear to have limited practical potential. Nevertheless, we can use the insights from the analysis in Section 5 to develop practical policies that ap-pear to perform well in simulation experiments.
In this section, we describe four heuristic dispatching policies. Two are “straw” policies that are intended to 683 G
mimic naive heuristics that might be used in practice. An-other two are practical policies constructed using insights from our asymptotic analysis. All four policies dynamically choose the next route to be used each time a route com-pletes execution. Hence, unlike the batching policies, they do not require a large backlog to be present in the system to begin dispatching routes.
6.1. Two Straw Policies
One simple heuristic policy is to choose the route that will process the greatest number of loads per unit of time. The NUMBER policy follows this approach. Each time it com-pletes the execution of a column, NUMBER uses the cur-rent backlog,Q, to calculate
j⫺11ⳕmin兵Q,aj其, (14)
for each column, j. NUMBER then selects the column,k, that maximizes (14).
NUMBER is a variant of the “shortest processing time first” (SPT) scheduling rule, because (14) measures the num-ber of loads delivered per unit time. The SPT rule, when applied preemptively, is known to minimize the expected de-lay in single-server systems (see Wolff 1989, p. 445–446).
A variant of NUMBER assigns a weight to each type of load and chooses the route that processes the maximum amount of weight per unit of time. For the WEIGHT policy, the user inputs a weight parameterwifor each type of load before the simulation begins. To decide which col-umn to process, WEIGHT then usesw 僆Rmto calculate
j⫺1wⳕmin兵Q,aj其, (15)
for each column jand selects the columnkthat maximizes (15). The weights may represent some measure of the ship-ping capacity used by the different types of loads, such as physical weight or volume. Alternatively, the weights may represent some exogenous measure of the relative desir-ability of delivering each of the different types of loads.
For both policies it is possible that more than one col-umn maximizes (14) or (15). In these cases both policies use the same set of three tiebreaking rules: (a), if columnk
dominates column j, min兵Q, aj其⬍min兵Q,ak其,
then choose columnk; otherwise (b), if test (a) results in a tie, then if the maximum residual backlog left by columnk
is less than that left by column j, max
1聿i聿m兵max兵0,Qi⫺aik其其⬍1max聿i聿m兵max兵0,Qi⫺aij其其, then choose column k; or (c), if tests (a) and (b) both result in ties, then flip a coin. Note that test (b) acts as a check that the backlogs of the different types of loads remain roughly in balance.
6.2. Two Policies Motivated by the Analysis
Our definition of work, the minimum time required by the distribution facility to clear the system backlog, suggests a greedy heuristic as a natural choice. Following this
objec-tive, the GREEDY policy always seeks to deliver the cur-rent system backlog as quickly as possible, without regard for future arrivals.
Each time it completes the execution of a column, GREEDY substitutes the current backlog,Q, in the right-hand side of (2) and solves the LP. The result of (2) deter-mines a direct path back to the origin that requires a minimum of delivery time. GREEDY then uses the dual prices from the optimal solution of the LP (2) to select the next column it will use to process the backlog. Specifically, GREEDY chooses a column with minimum effective re-duced cost. That is, for each column, j, GREEDY calcu-lates the effective reduced cost as
j ⫺ytⳕmin兵Qt, aj其, (16)
whereyt僆R⫹mis the vector of dual prices associated with the optimal solution to (2). GREEDY then selects the column,k, that minimizes (16) as the next route it will use to process the backlog. The column runs for k units of time, and when it completes execution, the selection pro-cess begins anew. If more than one column minimizes (16), GREEDY uses the same tiebreaking rules described for NUMBER and WEIGHT to select the next route. We note that GREEDY does not make use of the optimal basis, B, nor of any information concerning the distribu-tions ofV andT.
The last policy, CENTER, uses additional insights from our asymptotic analysis. In particular, the analysis of the batching policies suggests two objectives that a dispatching rule must accomplish if it is to be effective for high-utilization systems: (a) the policy should use the columns of B (or, more generally, zero reduced cost columns) as much as possible; (b) the policy should try to maintain the backlog “centered” within the cone ofB, so it can continue to use the columns ofBin the future.
Like GREEDY, at each epoch that a column completes execution, CENTER “prices out” columns to decide which route will be used next. Rather than using the “greedy” dual pricesytas in (16), however, CENTER uses the dual prices generated by (3), y*. That is, for each column j, CENTER calculates the effective reduced cost as
j ⫺y*ⳕmin兵Qt,aj其 (17)
and selects the columnkthat minimizes (17). By using the dual prices from (3),y*, CENTER increases the likelihood that the optimal basisB will be used. In particular, if the solution to (5) has a unique optimal basis then whenever at least one column, j僆 B, has min{Qt,aj}⫽ Qt, CEN-TER will choose a column ofB.
To ensure that the backlog remains “centered” within the cone ofB, CENTER uses a tiebreaking rule that dif-fers from the rules used by the other three heuristics. The rule selects the column which minimizes theL2norm to a
“centering” ray,C僆R⫹m, that represents a favorable ratio of load types.
Before the simulation begins, the policy uses␥andBto constructCas follows: (a) letd僆RmequalB⫺1␥; (b) let
e 僆Rmbe the “inverse” of d, where for each element, i, ei⫽1/di; then (c) letC⫽Be. Thus, if the ray of␥is near a boundary of the cone of B, then C is placed near the
oppositeboundary.
Now suppose that the policy maintains the backlog so thatQtremains nearC. By placingCnear the boundary of the cone ofB opposite to␥, the probability that an arrival drives the backlog out of the cone ofBis reduced (for an example in two dimensions, see Figure 1).
The revised tiebreaking rules for CENTER are as fol-lows: (a), if column k dominates column j then choose column k; (b), if test (a) results in a tie, then if the L2
norm from the backlog to C after dispatching route k is smaller than that after dispatching route j,
min ␣
冑
i冘
⫽1 m 共␣Ci⫺max兵0, Qti⫺aik其兲2 ⬍min ␣冑
i冘
⫽1 m 共␣Ci⫺max兵0, Qti⫺aij其兲2,then choose column k; otherwise (c), if tests (a) and (b) both result in ties, then if the maximum residual backlog left by column k is less than that left by column j then choose columnk; or (d), if tests (a), (b), and (c) all result in ties, then flip a coin. Rules (a), (c), and (d) for CEN-TER are defined as (a), (b), and (c) were defined for the other heuristics.
7. NUMERICAL ANALYSIS
This section reports the results of three sets of simulation experiments which test the performance of the four heuris-tics describes in Section 6. The simulations sample the LP lower bound on system work found upon arrival under the heuristics, {Wt⫺k
: k ⫽ 1, 2, . . . }, as well as the analogous quantities for the lower bound process defined by theGI/
GI/1 queue described in Section 4.2 (which in this section we will call LOWER).
In each simulation run, we use the method of “batch means” (see Law and Kelton 1982, p. 295–297) with batches of size
M⬇10 2T2⫹y*ⳕ⌫y*/共y*ⳕ␥兲2
共1⫺兲2 (18)
(see Whitt 1989, p. 1355–1357). For the lower bound and each of the three policies, the sample points of the work process that fall within each batch are averaged. The sim-ulation run terminates when the 95% confidence intervals for the estimates of the population means (the average of the averages) are less than or equal to⫾10% of the esti-mate of the population means themselves. Policies which appear to be unstable—because their population means increase with every new batch—are excluded from the
⫾10% stopping requirement.
In all simulation runs, we usei.i.d. exponential interar-rival times. Then by PASTA (see Wolff 1989, p. 293–297) we may interpret the arrival averages calculated by the simulation to be unbiased estimates for the analogous time averages,E[W]. Within each of the three sets of simula-tion experiments, we vary only the mean of the interarrival time distributionTto achieve⬘s of 0.8, 0.9, 0.95, and 0.99.
7.1. Simulation Examples
An Example Load Consolidation Problem. The first two sets of experiments simulate a load consolidation problem. In the problem, four types of loads—“sizes” 51, 26, 12, and 3—arrive at random intervals to a source location and wait for delivery to a destination. A truck of capacity 100 deliv-ers the backlog of loads waiting to be shipped by traveling from the source to the destination and back. The time required to complete the round trip is one. The set of feasible routes is defined by the set of all packings of the truck for which the aggregate size of the loads being packed does not exceed the truck’s capacity. While there are 367 feasible packings of the truck, only 30 are not dominated (ifaj⬎akthen jdominatesk).
An Example One-Warehouse, Multiple-Retailer Problem.
The third set of experiments simulates a one-warehouse, multiple-retailer problem. In the problem, there are seven retailers, whose locations are shown in Figure 2. Each of the seven retailers experiences random demand for two types of products, one of size 2 and the other of size 3. Therefore, there are 14 distinct load types enumerated in the set covering model, one for each product-location pair. The warehouse has one truck of capacity 5 with which it replenishes all seven retailers. Again, feasible delivery routes are ones which ship products whose aggregate size does not exceed the truck’s capacity. In total there are 91 feasible routes that visit one or two locations, 77 of which are not dominated. In this problem the various routes quired different amounts of time to execute. The time re-quired to complete a route equals the length of the TSP tour that visits the route’s locations.
Figure 1. Examples of the expected effect of an arrival on the backlog.
In all three sets of simulations the WEIGHT policy uses the loads’ sizes as their weights when it decides which loads in the backlog to deliver. All other aspects of WEIGHT, as well as the other policies, are implemented as previously described.
Arrival Statistics.For all three examples, exactly one load arrives into the system at an arrival epoch. Therefore, each ␥i equals simply the conditional probability that a type-i load arrives, given there has been an arrival (see Table 1). In addition, the coefficient of variation of each type of load’s arriving quantity, calculated as 公(1⫺␥i)/␥i, is greater than or equal to 1.5 for all loads except type 4 in Example 1. The fact that only one type arrives at a time also implies that for all examples, the arriving quantities are negatively correlated across types, with correlation for typesiand jequal to⫺公␥i␥j/(1⫺␥i)(1⫺␥j).
In Example 1, the arrival probabilities obtain dual prices that are directly proportional to the loads’ sizes. In this case, we expect the performance of WEIGHT to be similar to that of CENTER, since both policies effectively use the
same primary decision-making rule. In turn, we can at-tribute differences between the two policies’ performances to the effect of their different tiebreaking rules.
The probabilities for Example 2 lead to zero dual prices for loads types 2, 3, and 4. Here, the smaller loads are not “in heavy traffic.” That is, as it attempts to minimize the backlogs of the largest loads, the vehicle has ample capac-ity to deliver the smaller loads. Finally, note that Example 3’s arrival probabilities are all of the same order of magni-tude. At the same time they are constructed not to be perfectly symmetric across types. (See Table 1.)
7.2. Simulation Results
The simulation results are summarized in Tables 2 and 3. Note that the CENTER policy consistently outperforms both the two straw policies and the GREEDY policy. Further-more, as system utilization increases, the LP lower bound on the policy’s expected backlog appears to approach the perfor-mance of the lower bound process, though the optimality gap in Example 3 is quite wide, even at⫽0.99.
Table 2 presents the raw simulation results: confidence intervals for LOWER and for the LP lower bounds on expected work under the four policies. Note that for each example, crudeupper bounds on system performance un-der all of the policies can be calculated from Table 2 by adding the sum of themlargest j’s to the lower bounds. For Examples 1 and 2, this sum equals 4 (m⫻1), and for Example 3 it equals 219.2.
With exponential interarrival times, the lower bound process behaves as anM/G/1 queue. Therefore, as a check on the validity of the simulation results for the lower bound process, we compare LOWER to its corresponding analytical expectation. Table 2 shows that in all cases the
M/G/1 expectation falls within the 95% confidence interval of the simulation mean for LOWER.
For each simulation run, Table 3 shows the relative fre-quency with which each policy uses the columns of the optimal basisB, as well as the relative frequency with which it uses any column whose reduced cost in (5) equals zero (j⫺ y*ⳕa
j⫽0). While the columns of Bare always included in this second set, there will be zero-reduced-cost columns which are not a part of B whenever multiple optimal solu-tions to (5) exist. Indeed, in Examples 1 and 2 the solution of (5) has multiple optimal solutions; for these examples we use this larger set to capture the use ofallof the columns which efficiently deliver the backlog of system work.
In Example 1, in which the loads’ dual prices are propor-tional to their sizes, the WEIGHT, GREEDY, and CEN-TER policies all perform well. As utilization increases, all three policies’ LP lower bounds continue to converge to LOWER. As noted earlier, CENTER’s advantage over WEIGHT can be explained by its “centering” tie-breaking rule, which actively seeks to maintain an advantageous mix of load types in the backlog. GREEDY’s ability to dynamically redefine its “preferred” routes, based on the mix of load types in the backlog, evidently allows it to manage the mix of loads in the backlog better than WEIGHT as well.
Figure 2. One-warehouse, multiple-retailer problem used in simulations.
Table 1. ␥s used in simulations and their associated
y*s. Type
i
Example 1 Example 2 Example 3 ␥i y*i ␥i y*i ␥i y*i 1 0.0413 0.5152 0.3 1.0 0.066 3.61 2 0.0810 0.2576 0.2 0.0 0.073 3.61 3 0.1755 0.1212 0.3 0.0 0.067 2.56 4 0.7021 0.0303 0.2 0.0 0.081 3.00 5 — — — — 0.063 2.24 6 — — — — 0.074 3.42 7 — — — — 0.083 3.00 8 — — — — 0.064 3.61 9 — — — — 0.072 3.61 10 — — — — 0.083 8.21 11 — — — — 0.051 3.00 12 — — — — 0.085 6.71 13 — — — — 0.056 5.06 14 — — — — 0.082 3.00