Academia.eduAcademia.edu
JOURNAL OF REGIONAL SCIENCE, VOL. 38, NO. 3, 1998, pp. 401–424 PROBABILISTIC, MAXIMAL COVERING LOCATION– ALLOCATION MODELS FOR CONGESTED SYSTEMS* Vladimir Marianov Department of Electrical Engineering, The Catholic University of Chile, Casilla 6177, Correo 22, Santiago, Chile Daniel Serra Department of Economics and Business, Universitat Pompeu Fabra, Trias Fargas, 25-27, Barcelona 08005, Spain, E-mail: daniel.serra@econ.upf.es ABSTRACT. When dealing with the design of service networks, such as health and emergency medical services, banking or distributed ticket-selling services, the location of service centers has a strong influence on the congestion at each of them, and, consequently, on the quality of service. In this paper, several probabilistic maximal covering location– allocation models with constrained waiting time for queue length are presented to consider service congestion. The first model considers the location of a given number of single-server centers such that the maximum population is served within a standard distance, and nobody stands in line for longer than a given time or with more than a predetermined number of other users. Several maximal coverage models are then formulated with one or more servers per service center. A new heuristic is developed to solve the models and tested in a 30-node network. 1. INTRODUCTION When dealing with the design of service networks, the location of service centers has a strong influence on the amount of congestion at each of them, and, consequently, on the quality of service. Examples of these types of systems include primary health care center services, banks, and distribution centers. Primary health care centers have one physician attending general cases who refers those cases that cannot be cured to a specialist. These centers must be located in such a way that they may be reached from any demand point within a reasonably short time. Then because waiting time is an important determinant of the perception of service quality, once a patient has arrived at the center, his or her waiting time should be as short as possible. Other examples are banks, which have branches distributed over a geographical area, where clients stand *This research has been possible thanks to grants by NORTEL—External Research, FONDECYT (the Chilean State Scientific Research Fund) and the Fundación Banco Bilbao Vizcaya, Spain. Received October 1996; revised March 1997; accepted April 1997. © Blackwell Publishers 1998. Blackwell Publishers, 350 Main Street, Malden, MA 02148, USA and 108 Cowley Road, Oxford, OX4 1JF, UK. 401 402 JOURNAL OF REGIONAL SCIENCE, VOL. 38, NO. 3, 1998 in lines, waiting to be served, or distribution centers, where trucks arrive to deliver their load. The presence of more trucks than servers at a center can easily make it congested. In this paper, several probabilistic, maximal covering, location–allocation models with constrained waiting time for queue length are presented to consider service congestion. The first model addresses the issue of the location of a given number of single-server centers such that the maximum population is served within a standard distance, and nobody stands in line for longer than a given time, or with more than a predetermined number of other clients. We then formulate several maximal coverage models, with one or more servers per service center. A new heuristic is developed to solve the models, and is tested in the case of a 30-node network. 2. LITERATURE REVIEW Existing literature has presented several models that are explicitly intended for the design of spatial queueing systems. However in general, these models are oriented to emergency systems in which servers travel to the site of the emergency, rather than systems in which servers are fixed. Some models assume a single server in the region under study. For example, Berman, Larson, and Chiu (1985) develop a heuristic algorithm to locate optimally one server on a congested network and formulate a Stochastic Queue Median. Batta (1988) considers the situation in which there may be a selective rejection of calls by the dispatcher. The model is presented together with a greedy heuristic procedure for location of the server. Batta, Larson, and Odoni (1988) present a model and an algorithm for locating one server when there are calls of different priority. Batta (1989) presents a model to study the effect of using expected service-time-dependent queueing disciplines on the optimal location of a single server. In some cases, models assuming single servers are used as building blocks for algorithms that locate more than one server. Based on the one-server location algorithm of Berman, Larson, and Chiu (1985), Berman, Larson, and Parkan (1987) develop two heuristics for locating p servers on a congested network. At each step a procedure called Mean Time Calibration is used (Larson and Odoni, 1981) which in turn includes solving the exact hypercube. This creates an algorithm suitable for systems with only a few servers. After the Mean Time Calibration is performed, the first heuristic uses the 1-median to improve the location of each one of the servers, and the second one uses the Stochastic Queue Median. All these models are nonlinear. Some authors have also considered the problem of districting, or determination of optimal service territories. Berman and Larson (1985) solve the problem of districting for a two-server network in the presence of queueing. Given the locations of two servers on a congested network, a nonlinear model and a heuristic algorithm are developed to determine the optimal service territories of each server. Each district behaves as a M/G/1 system, with FIFO © Blackwell Publishers 1998. MARIANOV & SERRA: LOCATION-ALLOCATION MODELS 403 queues. In this case optimality refers to the minimum average response time to a random customer. There is no interaction between districts. Berman and Mandowsky (1986) combined the two-server districting algorithm with the Stochastic Queue Median, to develop a general location–districting iterative algorithm for two units, n-nodes and m-server networks. Initially the best districting is found for a first location choice, followed by a relocation of both servers given fixed districts. This procedure is iterated as needed. In the case of m servers, at each step two servers are optimally located and their optimal service areas found while all the remaining units stay at a fixed location. Again, there is no interaction between districts. In general, a fairly large computational effort is required if these models are to be used for the location of servers. All the models are nonlinear, heuristic, and their objective is to minimize expected response time of servers that travel to the site of an emergency. Also, all models use approximations in order to model the system. On the other hand, optimization models for location, derived from the Location Set Covering Problem (LSCP) by Toregas et al. (1974), the p-median problem (Hakimi, 1964; ReVelle and Swain, 1970), and the Maximal Covering Location Problem (MCLP) Church and ReVelle (1974), even though they are NP-hard and therefore cannot be solved in general to optimality, can be solved to optimality for reasonable size problems when linear approximations that result from relaxing the integer constraints are used. Optimization models typically include a capacity constraint to deal with congestion. This forces the demand for service at each center to be smaller than its maximum capacity. Under these constraints, the maximum capacity is usually set by the number of servers at the center, or by some estimate of the maximum number of users that the center can serve at the same time. To estimate the demand for service at any center, two different measures are often used. The first is the total population allocated to the center, multiplied by some experimental or practical factor; this gives an estimate of the expected number of simultaneous requests for service, or required workload, of that center. The second is an average of the historical rate of requests originating from the population allocated to the center, if a record is available. This demand is then constrained to be smaller than the maximum capacity of the center. Other models that deal with congestion examine the behavior of the potential users of the service (see Brandeau et al., 1995). Because the utilization of a facility depends on the decisions of all the users in the aggregate, user-choice models have at their core an equilibrium problem. The demand at each node is an independently distributed random variable and consumers patronize a facility with a given probability. The optimal location of the facilities is found given the equilibrium behavior of the users. In the traditional optimization models where demand is implicitly assumed to be constant over time and equal to an average (which is always strictly constrained to be smaller than the maximum capacity of a center) there is a contradiction between this strong, rigorous constraint, and the fact that it is © Blackwell Publishers 1998. 404 JOURNAL OF REGIONAL SCIENCE, VOL. 38, NO. 3, 1998 applied to an average that by definition, is exceeded 50 percent of the time. In this paper, we propose models based on the more realistic assumption that the number of requests for service is not constant over time, but is, instead, a stochastic process. This stochasticity of the demand is explicitly taken into account in order to derive a capacity-like constraint. Instead of imposing an upper bound on the demand equal to the capacity of the center, this forces a lower bound on the quality of the service at the center, particularly the waiting time or the number of people in line, awaiting service. We present several optimization models. Rather than minimizing the average response time, as other authors do, we restrict either the response time or the queue length to be smaller than a predetermined figure. This formulation allows us to obtain linear objectives and linear constraints. Therefore, although the problem is NP-hard, we are able to solve the location problem to optimality, if desired, using linear-programing relaxation and branch and bound (LP+BB). Although the LP+BB procedure may be burdensome in terms of computing time. In contrast to other location models in the literature, it does not require any approximations of the queueing model. A distinct contribution of the formulations presented here (as opposed to models that utilize averages, or models that minimize some quality indicator) is that a particular value of service quality of the system (as given by queue lengths or waiting times) is explicitly embedded in the optimization model. Therefore, by using these models when designing a system, the system can be fine-tuned, allowing the designer to trade off investment and operating cost versus service quality. The models assume that consumers patronize the nearest service and no considerations are made on the user’s choice with respect to the level of congestion. In addition, an infinite queue length is assumed. This assumption is standard for most queueing models, including situations where there is a (relatively large) finite upper bound on the permissible number of customers. The first model focuses on the location of a given number of single-server centers so that the maximum population is served within a standard distance, and nobody stands in line for longer than a specified time, or with more than a predetermined maximum number of other clients. We then formulate several maximal coverage models, with one or more servers per service center. 3. THE QUEUEING, MAXIMAL COVERING, LOCATION–ALLOCATION MODEL (QM-CLAM) The maximal covering, location–allocation model can be stated as: Locate p centers and allocate users to them so as to maximize covered population, where coverage is defined as: (i) covered population is allocated to a center within a time or distance standard from their home location, and (ii) if a user is covered on arrival at the center, he or she will wait in a line with no more than b other people, with a probability of at least α. © Blackwell Publishers 1998. MARIANOV & SERRA: LOCATION-ALLOCATION MODELS 405 or Locate p centers and allocate users to them so as to maximize covered population, where coverage is defined as: (i) covered population is allocated to a center within a time or distance standard from their home location, and (ii) if a user is covered on arrival at the center, he or she will be served within time τ of arrival at the center, with a probability of at least α. The Church and ReVelle (1974) maximal covering, location problem (MCLP) model cannot be modified to accommodate the congestion constraint. The MCLP model does not contain allocation variables so it is not possible to allocate servers to demands covered by them. Without allocation variables it is not possible for the model to aggregate all the calls for service arriving at a server and determine when congestion occurs. Thus, we rewrite the maximal covering model as a p-median-like model, using location-allocation variables. The formulation of the model is (1) Max ∑a x i ij i, j (2) (3) s. t. xij ≤ y j ∀i, j ∑x ∀i ij ≤1 j (4) (4a) (5) P(center j has ≤ b people in queue) ≥ α P(waiting time at center j ≤ τ) ≥ α ∀j ∑y i ∀j =p i yj , xij = 0,1, j ∈ Ni ∀i,j Zero–one variable yj is one if a center is located at node j, and zero otherwise. Zero–one variable xij is one if users located at demand node i are allocated to a center located at node j, and zero otherwise. If the set Ni is defined as the set of candidate locations that are within a distance standard from node i, or the set of candidate locations which can be reached from node i within a certain standard time, variables xij are only defined for the pair of subscripts (i, j) such that j ∈ Ni. This is because we are forcing coverage of every demand from a center located within the distance standard, thus it is unnecessary to define variables that will never equal one. The parameter ai is the total population at demand node i. Equation (1) maximizes the population allocated to a center. Note that there is no constraint forcing every demand node to be covered. Constraint (2) states that it is not possible to allocate a demand node i to a node j unless there is a center at the last one. Equation (3) forces each demand node i to be allocated to only one service center j. Equation (5) sets the number of centers to be located, whereas Equation (4) forces every center to have a maximum of b people in line with a probability of at least α. This constraint ensures that on arrival at the center, a user usually will find a line no longer than b. Equation (4a) explicitly © Blackwell Publishers 1998. 406 JOURNAL OF REGIONAL SCIENCE, VOL. 38, NO. 3, 1998 makes the total time spent by a user at the center shorter than or equal to τ with probability of at least α, thus assuring every user timely service. The usual capacity constraints would be less restrictive. (4b) expected number of customers in center j ≤ b (4c) expected time spent at center j ≤ τ ∀j ∀j The first constraint, Equation (4b), forces the expected (average) number of users at center j (the one being attended plus those in line) to be less than or equal to b. If this constraint holds, on arrival at the center users will find queues shorter than b 50 percent of the time [rather than 100 × α percent, as in Constraint (4)]. Finally, Constraint (4c) ensures the average time spent in the system is less than or equal to τ. In order to write Constraint (4) in a tractable form, we make the customary assumption that requests for service at each demand node i appear according to a Poisson process with intensity fi. Each center serves a set of demand nodes, therefore the requests for service at that center are the union of the requests for service of the nodes in the set. Thus they can be described as a stochastic process, equal to the sum of several Poisson processes. It is easy to show that this stochastic process can also be a Poisson process, with an intensity λj equal to the sum of the intensities of the processes at the nodes served by the center. This set of nodes is unknown until the mathematical programing problem is solved. However, we can use variables xij in order to rewrite the parameter λj as λj = ∑f x i ij i ∈l Using this definition, if a particular variable xij is one, meaning that node i is allocated to center j, the corresponding intensity fi will be included in the computation of λj. We also assume an exponentially distributed service time, with an average rate of µj where µj ≥ λj to maintain equilibrium in the system. This is a reasonable assumption because only the service time at the center is considered and not the travel time of clients. If we assume steady state, we can use the results of an M/M/1 queueing system for each center and its allocated users. If we define the state k of the system as k users in the system (either being attended or in line), the state-transition diagram of the system is the one shown in Figure 1. Here, state k corresponds to k users at the center, that is, state k = 0 corresponds to the center being idle, state k = 1 to one user being attended at the center, state k = 2 to two users at the center: one of them getting attention and one in the queue, and so on. We want the probability of a user being in a line with no more than b other people, to be at least equal to α. If we represent as pk the steady-state probability of being in state k, this requirement is written as (6) © Blackwell Publishers 1998. p0 + p1 +....+ pb+1 ≥ α MARIANOV & SERRA: LOCATION-ALLOCATION MODELS 407 FIGURE 1: State Transition Diagram, M/M/1 Queuing System. Writing and solving the steady-state balance equations of the M/M/1 system, we get the following expression for the steady state probabilities (Wolff, 1989) pk = (1 – ρj)ρjk where ρj = λj /µj. Hence, Equation (6) becomes: (1 – ρj) + (1 – ρj)ρj + (1 – ρj)ρj2 + ... + (1 – ρj)ρjb+1 ≥ α or b+ 1 d 1− ρ j i∑ ρ k j ≥α k= 0 which is equivalent to d 1− ρ j i 1 − ρ bj + 2 ≥α 1− ρ j or 1 − ρ bj + 2 ≥ α ρ bj + 2 ≤ 1 − α ρ j ≤ b+ 2 1 − α Then because ρj = λj /µj, (7) λ j ≤ µ j b+ 2 1 − α Equation (7) is equivalent to Constraint (4). Using the relationship between the intensity at the center and the intensities at the demand nodes, Constraint (4) is rewritten as (8) ∑f x i ij ≤ µ j b+ 2 1 − α i ∈l Equation 8 is a linear, deterministic equivalent of Constraint (4). If we choose to use Constraint (4a) instead of Constraint (4), that is P[time spent at center j ≤ τ] ≥ α © Blackwell Publishers 1998. ∀j 408 JOURNAL OF REGIONAL SCIENCE, VOL. 38, NO. 3, 1998 we may use the probability distribution function of the waiting time in a M/M/1 queue, w, which has the following expression (Larson and Odoni, 1981) fw w j = µ j − λ j e d i d i − µ j −λ j w j d i to derive its cumulative distribution (9) bg P w j ≤ τ = Fw τ = 1 − e d i − µ j −λ j τ d i The probability in Equation (9) is set at greater or equal to α 1− e e − µ j −λ j τ d i − µ j −λ j τ d i ≥α ∀j ≤ 1− α ∀j b − µ j − λ j τ ≤ ln 1 − α d i λj ≤µj + 1 ln 1 − α τ b g ∀j g ∀j Rewriting the parameter λj as a function of the variables, we get ∑f x (10) i i ∈l ij ≤ µ j + 1 ln 1 − α τ b g ∀j Equation (10) is the linear, deterministic equivalent of Constraint (4a). The final formulation of the model is as follows Max ∑a x i ij i, j s. t. xij ≤ y j ∀i, j ∑x ∀i ≤1 ij j ∑y i =p i ∑f x i ij ≤ µ j b+ 2 1 − α or i ∈l i i ∈l xij = 0, 1, j ∈ N i ∀i, j y j = 0, 1 ∀i, j © Blackwell Publishers 1998. ∑f x ij ≤ µ j + 1 ln 1 − α τ b g ∀j MARIANOV & SERRA: LOCATION-ALLOCATION MODELS 409 If the problem is solved using its linear relaxation, in these last equations the right-hand side may be multiplied by variable yj in order to improve the integer characteristics of the variables at the solution. 4. THE QUEUEING, MAXIMAL COVERING LOCATION–ALLOCATION MODEL WITH CO-LOCATION OF m SERVERS PER CENTER This queueing maximal covering location model can be stated as: Locate p service centers, each with m servers (where m may depend on the location, that is, it could be an mj) and allocate users to them so as to maximize covered population, where coverage is defined as: (i) covered population is allocated to a center within a time or distance standard from its home location, and (ii) if a user is covered, on arrival at the center, he or she will wait in line with no more than b other people, with a probability of at least α. The formulation of the model is the same as the previous one. We develop this model using only the constraint on queue length. Elsewhere, we formulate a model with an upper probabilistic bound on the waiting time. Again, we assume an exponentially distributed service time for each center, with a service rate of µj. If the number of servers at the center is mj, the inequality µj ≥ mjλj must hold or the system does not reach an equilibrium. By virtue of the above assumptions, the results for an M/M/m queueing system can be used for each center and its allocated users. The state-transition diagram of the system is shown in Figure 2. In this figure, state k corresponds to k users at the center with each user being attended to. That is, state k = 0 corresponds to the center being idle, state k = 1 to one user being attended at the center, state k = 2 to two users at the center, both of them receiving attention, and so on up to state m in which all m users in the system are being attended. In state m + 1, however, m users are being attended while another stands in line, state m + 2 represents m users in service and two in line, and so on. We want the probability of a user finding a queue with no more than b other people, to at least equal α. This requirement is written as p0 + p1 + .... + pm+b ≥ α that is, the probability of the queue being shorter than or equal to b users at the arrival of the next request, is greater than α. Also, since p0 + p1 +....+p∞ = 1, (11) pm+b+1 + pm+b+2 + ... + p∞ ≤ 1 – α which means that the probability of the queue being longer than b is smaller than 1 – α. Note that the special case b = 0 does not necessarily mean that the user finds one server available; it may happen that all m servers at the center are busy, but there are no users in the queue. In this case, the arriving customer must wait until one of the servers becomes idle. If immediate attention is desired, that is, at least one server free with probability α, then p0 + p1 + .... + pm–1 must be made greater or equal to α. © Blackwell Publishers 1998. 410 JOURNAL OF REGIONAL SCIENCE, VOL. 38, NO. 3, 1998 FIGURE 2: State Transition Diagram, M/M/m Queuing System. Solving the steady-state balance equations of the M/M/m system, we get the following expression for the steady-state probabilities (Wolff, 1989) pk = p0 ρk/k! pk = p0 ρk/m! mk–m k≤m k>m I F G ρ ρ J + =G GGH FGH 1 − mρ IJK m! ∑ j ! JJJK m− 1 m p0 −1 j j =0 Where ρ = λ/µ. Although these parameters are specific to each server center, we will not use any subscript for the moment. Using these expressions for the steady-state probabilities, Equation (11) becomes k =∞ p0 m m ρ ≤ 1− α m! m k= m + b+ 1 ∑ FG IJ H K or p0 m m ρ m! m FG IJ H K m+ b+ 1 ∞ ρ ∑ FGH m IJK k ≤ 1− α k= 0 Since ρ/m ≤ 1, the summation converges, and can be written in a simpler form. If we also replace the expression for p0, we obtain O LM ρ ρ P MM F ρ I + ∑ j ! PP PQ MN GH 1 − m JK m! m m− 1 −1 j m + b+ 1 F FG ρ IJ m GG H m K m! G ρ GH 1 − m m j =0 I JJ ≤ 1 − α JJ K After some algebraic manipulation, this equation becomes (12) m− 1 bm − kgm! m ∑ k=0 © Blackwell Publishers 1998. k! b 1 ≥ 1 ρ m + b + 1− k 1 − α MARIANOV & SERRA: LOCATION-ALLOCATION MODELS 411 Because ρ = λ/µ, and λ is a function of the variables xij, Equation (12) can be rewritten as a function of variables xij, thus becoming the deterministic equivalent of Equation (4). It is intuitively easy to see that for any fixed value of α, the value of the left-hand side of Equation (12) can be made large enough to make the equation hold by making ρ small enough because its exponent is always positive. The value of variable ρ is decreased by manipulating variables xij, (making as many of them equal to zero as needed). Furthermore, for any value of α there must exist a value ρα which makes Equation (12) hold as an equality, as well as a range of values of ρ such that Equation (12) holds as a strict inequality. Although it is the deterministic equivalent of Equation (4), Equation (12) cannot be used in a linear model because of its nonlinearity. However, we show next that its left-hand side (LHS) is strictly decreasing with increasing ρ, and we later use this characteristic to find a linear equivalent. LEMMA: The left-hand side (LHS) of Equation (12) strictly decreases with ρ Proof The derivative of the LHS with respect to ρ is (13) ∂LHS = ∂ρ m−1 ∑ b k=0 g bm − kkg!m! m − m + b + 1− k b 1 ρ m + b+ 2 − k This derivative is strictly negative because (m + b + 1 – k) is strictly positive, as are the remaining factors of each term of the summation. The entire summation is also strictly negative, as is the whole derivative. Thus, the LHS of Equation (12) is a strictly decreasing function of ρ, which also means that it strictly increases when ρ decreases. THEOREM: The left-hand side of Equation (12) is strictly decreasing with ρ, so if ρα is the value of ρ which makes Equation (12) hold as an equality, the equation ρ ≤ ρα , is a linear equivalent of Equation (12) when used as a constraint for a linear programing formulation Proof Let ρα be the value of ρ which makes Equation (12) hold as an equality. Since the LHS strictly increases when ρ decreases, for any value of ρ ≤ ρα Equation (12) also holds. In other words, the inequality ρ ≤ ρα is a sufficient condition for Equation (12) to hold. Furthermore, by virtue of the strictly increasing nature of the LHS of Equation (12), for any ρ > ρα Equation (12) cannot hold. Thus, ρ ≤ ρα is also a necessary condition for this equation to hold. Because ρ ≤ ρα is a necessary and sufficient condition for Equation (12) to hold, we can use it in place of the Equation. Thus, we have Equation (14) the new deterministic, linear equivalent to Equation (12). (14) © Blackwell Publishers 1998. ρ ≤ ρα 412 JOURNAL OF REGIONAL SCIENCE, VOL. 38, NO. 3, 1998 Once the value of α is given, ρα can be found by using any numeric root-finding technique (for example, Newton methods). This procedure must be repeated for each service center j, and a value ραj found for each one, obtaining the set of equations ρj ≤ ραj ∀j Since ρj = λj / µj λj ≤ µj ραj ∀j Recalling that λj is a function of variables xij ∑f x (15) i ij ≤ µ j ρ αj ∀j i ∈l is the set of linear, deterministic equivalents of Constraint (4). Remember also that ρα j is a function of the number of servers at center j (mj), which can be specified for each center before solving the model. The final model is Max ∑a x i ij i, j s. t. xij ≤ y j ∑x ≤1 ij ∀i j ∑y i =p i ∑f x i ij ≤ µ j ρ αj ∀j i ∈l xi j = 0,1, j ∈ Ni yj = 0,1 ∀i, j ∀i, j In this model, variable xi j is one if mj servers are located at center j, and zero otherwise. 5. COMPUTATIONAL EXPERIENCE: BRANCH-AND-BOUND AND HEURISTIC METHODS We now assume that the service centers are primary health care facilities. The servers are physicians, and there are one or more physicians at each center. The average service time is set at 20 minutes. We use the 30-node network, shown in Figure 3. Each demand center is also a potential server location, and the distances are Euclidean. We further assume that centers serve only patients located within a distance of 1.5 miles. The populations and coordinates of the nodes of the network are shown in Table 1. Assuming one server per center, we computed the value of the right-hand side of Equation (8) (limit values of arrival © Blackwell Publishers 1998. MARIANOV & SERRA: LOCATION-ALLOCATION MODELS 413 FIGURE 3: 30-Node Test Network. rates, λ), given an average service time 1/µ of 20 minutes, different values of α, and different values of queue length b. In order to compare both criteria of quality of service (queue length and total response time), we show the total response time w (time in queue plus time in service that the clients will not exceed with TABLE 1: 30-node Test Network Node X Y Popn Node X Y Popn 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 3.2 2.9 2.7 2.9 3.2 2.6 2.4 3.0 2.9 2.9 3.3 1.7 3.4 2.5 2.1 3.1 3.2 3.6 2.9 2.9 2.5 3.3 3.5 2.7 2.1 2.8 5.3 3.0 6.0 2.8 710 620 560 390 350 210 200 190 170 170 160 150 140 120 120 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 3.0 1.9 1.7 2.2 2.5 2.9 2.4 1.7 6.0 1.9 1.0 3.4 1.2 1.9 2.7 5.1 4.7 3.3 4.0 1.4 1.2 4.8 4.2 2.6 2.1 3.2 5.6 4.7 3.8 4.1 110 100 100 90 90 90 80 80 80 80 70 60 60 60 60 © Blackwell Publishers 1998. 414 JOURNAL OF REGIONAL SCIENCE, VOL. 38, NO. 3, 1998 probability α), that would result in the same values of λ if Equation (10) is used instead of Equation (8). The values are shown in Table 2. Queue length b = 0 means that, at the time a new user arrives, there are either no other users in the system, or there is one user being attended by the server. It is interesting to note that, for a particular value of λ, total response time appears intuitively to be long compared to queue length. This is because when computing a queue length of, for example b = 5, occupation states k = 0 to k = 6 (no users in the system, up to one user being attended plus five users in line) with their associated probabilities p0 to p6, have to be considered. However, when dealing with response time, the probabilities of long waiting times are aggregated over all possible states k. Branch-and-Bound; Constrained Waiting Time; One Server per Center The commercial integer programming software CPLEX 3.0, on a cluster of eight DEC 3000–700 AXP computers was used to solve the QM–CLAM model. The branching was limited to 20,000 in each case. With this limit, the run time was between 10 and 40 minutes per run. The daily call rate for each demand node was set at 0.006 times the population. Table 3 shows the results for α = 85 percent, 90 percent, and 95 percent, and different values of the waiting time, τ. In this table, S is the number of servers to be located. A “y” in the columns “L” indicate when the branching limit of 20,000 was reached. The columns “Obj” indicate the value of the objective and the columns “Locns” the locations of the centers. Note that for short waiting times, a difference of one minute can dramatically change the coverage. This can be seen for example in the cases τ = 48 and 49, α = 90 percent. For τ = 49 min, nine servers are enough for complete coverage of the population. However, if the required waiting time is reduced by one minute, complete coverage becomes impossible, no matter how many servers are deployed. The limit of 20,000 branches was reached in many of the runs. In these cases the solution is not necessarily optimal. Note also, that there are some cases in which it is not possible to achieve total coverage of the population, no matter how many servers are located in the system, so some demand nodes are not covered by the service. This is because the call rate of these nodes exceeds the service capability of a single server. TABLE 2: Limit Values of Arrival Rates α = 0.99: α = 0.9: α = 0.5: b λ [1/min] w [min] b λ [1/min] w [min] b λ [1/min] 0 1 2 3 4 0.005 0.0108 0.0158 0.0199 0.0232 102.33 117.35 134.70 153.10 171.90 0 1 2 3 4 0.0158 0.0232 0.0281 0.0315 0.0341 67.35 85.94 105.22 124.79 144.50 0 1 2 3 4 0.0354 0.0397 0.042 0.0435 0.0445 © Blackwell Publishers 1998. w [min] 47.5 67.5 87.5 107.0 127.0 α = 85 percent τ = 40 S Obj L Locns τ = 41 Obj L τ = 42 Locns Obj L – – – – τ = 49 Locns Obj L – – – – – – – – τ = 52 Locns Obj L Locns – – – – – – – – – 9 4140 n 1,3,6,7,13, 16,23,24,30 8 4140 n 1,2,6,14,19, 24,25,30 5470 n 1,6,7,8,9, 19,22,24 7 4060 y 2,4,7,17, 22,25,30 5390 y 1,3,4,5, 10,22,25 – – – – – – 6 3500 y 1,7,10, 13,15,22 5110 y 2,4,6,7,17, 22 5470 n 5,6,7,15,22, 24 – – – – – – 5 2940 y 5,6,7,16,19 4310 y 4,7,10,22,30 5390 y 1,7,9,15,22 – – – – – – 4 2370 y 6,9,19,22 3500 y 6,22,29,30 4520 y 7,10,15,22 5470 n 10,15,22,24 5470 n 10,15,22,24 3 1830 y 4,19,22 2670 y 2,19,29 3400 y 9,10,17 5390 n 6,15,22 5400 n 6,22,24 2 1220 y 9,19 1780 y 4,7 2300 y 6,29 5210 n 9,19 5320 n 9,22 – – α = 90 percent τ = 48 S Obj L Locns τ = 49 Obj L Locns τ = 50 τ = 60 Obj L Locns Obj L MARIANOV & SERRA: LOCATION-ALLOCATION MODELS © Blackwell Publishers 1998. TABLE 3: CPLEX Results for One-Server per Center, Constrained Waiting Time τ = 70 Locns Obj L Locns 3580 n 5,6,8,10,14, 23,24,26,30 5470 n 1,2,3,6,7,18, 22,24,30 – – – – – – – – – 8 3500 y 4,6,9,10,14,1 5,23,30 5390 y 3,7,9,11,13, 15,22,30 – – – – – – – – – 7 2960 y 4,6,7,10,12,1 8,27 4880 y 1,4,6,7,8,9, 22 5470 n 1,10,11,19,2 2,24,29 – – – – – – 6 2710 y 5,6,7,17,18,2 2 4240 y 1,7,15,19, 22,30 5390 y 6,7,9,15,22, 30 – – – – – – 415 9 416 © Blackwell Publishers 1998. α = 90 percent (continued) τ = 48 S Obj L Locns τ = 49 Obj L τ = 50 Locns L τ = 60 Locns 4580 y 3,6,7,22,29 Obj L – – τ = 70 Locns – Obj L – – Locns 5 2300 y 3,6,14,15,17 4 1900 y 9,10,14,17 2750 y 8,17,19,25 3720 y 10,11,15,19 5470 n 9,22,24,29 5470 n 15,20,22,24 3 1430 y 15,19,22 2140 y 9,17,25 2810 y 1,5,25 5390 n 6,15,22 5400 n 9,22,24 1430 y 1,7 1880 y 9,22 5210 n 9,19 5320 n 9,22 2 3530 y 9,10,17,19,22 Obj – α = 95 percent τ = 62 S L τ = 63 τ = 64 Locns Obj L Locns Obj L 11 3580 n 1,2,3,9,10,12, 13,16,24,25,30 – – – – – 10 3520 y 1,2,3,9,10, 12,13,16,24,25 – – – – – 9 3340 y 3,8,9,10,11,12, 13,25,27 4140 n 2,5,13,15,17,2 2,25,29 8 2970 y 3,5,10,12,13, 14,20,25 7 τ = 74 Locns Obj L – – – – – – 5470 n 1,2,6,9,13,1 5,22,24,29 – – 4060 y 2,6,7,8,14, 15,17,29 5390 y 1,2,6,9,13, 22,25,29 – 2670 y 5,6,7,10,12, 14,25 3940 y 1,3,6,7,15, 22,25 5180 y 6,7,8,9,17, 22,30 6 2280 y 2,4,9,12,14,25 3300 y 4,7,10,15, 19,22 5 1900 y 14,15,16,23,25 2730 y 10,12,15, 22,25 4 1570 y 9,13,14,19 τ = 84 Locns Obj L Locns – – – – – – – – – – – – – – – 4350 y 2,7,9,10,15, 19 – – – – – – 3680 y 4,9,10,19,29 – – – – – – 2270 y 7,10,22,30 2890 y 9.10.29,30 5470 n 7,10,22,24 5470 n 6,15,22,24 3 1720 y 22,25,30 2260 y 5,9,26 5390 n 7,10,22 5400 n 6,22,24 2 1160 y 7,16 1520 y 20,23 5210 y 2,6 5320 n 6,22 JOURNAL OF REGIONAL SCIENCE, VOL. 38, NO. 3, 1998 Obj MARIANOV & SERRA: LOCATION-ALLOCATION MODELS 417 Given its capacity-like form when the probabilistic constraint was binding, the run time and the number of branches was much higher than in the case in which the distance limit was binding. Allocation to nearest server was not required, so in many cases demand was not allocated to the nearest server. In reality, users often go to a server which gives better service in terms of waiting time instead of choosing a server because of its closeness. Figure 4 shows an example of this. If allocation to nearest server is desired, additional constraints must be included in the models. Branch-and-Bound; Constrained Queue Length; One or More Servers per Center The queue lengths were set at zero, one, and two users. To show a more congested case the call rates for one server per center were set at 0.015 times the node population and for three and five servers per center the call rates were set at 0.042 times the node population. These latter cases represent a highly congested system. The results for one server are shown in Table 4 for three values of α: 95 percent, 90 percent, and 85 percent. The results for three and five servers TABLE 4: CPLEX Results for One Server per Center, Cconstrained Waiting Time α = 95 percent S 7 6 5 4 3 2 b=0 b=1 b=2 Obj L Locns Obj L Locns Obj L Locns 5470 5390 5260 4170 3170 2140 n y y y y y 1,2,5,6,15,22,24 2,10,11,20,22,23 1,6,7,22,30 7,15,17,25 9,10,25 6,19 – – 5470 5390 5270 3520 – – n y y y – – 2,9,15,22,24 1,6,15,22 9,15,17 10,18 – – – 5470 5390 4540 – – – n n y – – – 6,15,22,24 7,9,22 8,19 α = 90 percent S 5 4 3 2 b=0 b=1 b=2 Obj L Locns Obj L Locns Obj L Locns 5470 5390 4480 3020 n n y y 3,7,10,22,24 6,7,22,25 7,10,22 10,17 – 5470 5390 4440 – n n y – 6,15,22,24 10,19,22 2,7 – 5470 5390 5210 – n n n – 10,15,22,24 6,15,22 9,19 α = 85 percent b=0 S 4 3 2 b=1 b=2 Obj L Locns Obj L Locns Obj L Locns 5470 5390 3700 n n y 10,22,24,29 6,7,22 1,19 5470 5390 5100 n n n 6,15,22,24 9,15,22 6,19 5470 5390 5210 n n n 10,15,22,24 6,15,22 9,19 © Blackwell Publishers 1998. 418 JOURNAL OF REGIONAL SCIENCE, VOL. 38, NO. 3, 1998 are shown in Table 5, for α = 95 percent. Again, the branching limit was reached in many cases, especially for three and five servers per center, resulting in solutions that are not necessarily optimal. Several simple heuristics were developed for obtaining fast solutions of the models. These heuristics were all based on satisfying the time-limit or queuelength restriction. We describe the best one, which follows: Step 1: Make a list of the candidate nodes j; ordered by decreasing call rate fj, if they are also demand nodes, ordered at random if the candidate nodes are not demand nodes. Call this list Dj. Then for each candidate node compute the right-hand side of Equation (8) or Equation (10), depending on the model being utilized. This right-hand side is the limit value of average calls per time unit (λlim, j) that can be accepted by a center located at this node. If this limit value is exceeded, the constraint on queue length or waiting time limitdoes not hold. TABLE 5: CPLEX Results for m Servers per Center. Constrained Waiting Time Three servers per Center, α = 95 percent S B=0 B=1 Obj L Locns 10 4760 n 9 4760 n 8 4680 y 7 4530 y 1,2,3,5,6,11,14, 15,18,24 3,4,5,6,7,10,13, 22,24 3,5,7,9,15,19,22,2 3 1,6,7,9,19,22,29 6 3860 y 5 4 3 2 3230 2490 1960 1320 y y y y b=2 Obj L Locns 5470 n 5390 y 6,9,17,22,25,30 4620 y 6,9,15,16,19 9,10,17,22 4,5,20 15,28 3920 3210 2460 1640 y y y y 2,7,8,9,15, 19,22,24 4,6,8,9,15, 22,30 6,9,10,17, 19,30 6,7,10,13,19 3,9,15,19 15,19,25 19,23 Obj L Locns 5470 n 5390 y 4620 3630 2810 1880 y y y y 10,13,15, 22,24,29,30 6,9,11,22, 29,30 6,7,8,22,29 2,10,15,19 15,19,25 9,22 Five Servers per Center, α = 95 percent b=0 S 6 5 4 3 2 b=1 b=2 Obj L Locns Obj L Locns Obj L Locns 5470 5410 5320 4010 2860 n y y y y 6,10,14,15,24,29 9,10,22,24,29 7,9,22,30 7,11,23 2,15 5470 5390 4570 3080 n n y y 6,10,15,22,24 6,10,15,22 7,8,19 9,22 5470 5390 5070 3400 n y y y 1,9,15,22,24 6,7,15,22 6,15,22 3,13 © Blackwell Publishers 1998. MARIANOV & SERRA: LOCATION-ALLOCATION MODELS 419 For each candidate node j, make a list of all the demand nodes i within the distance standard, ordered by increasing distance to the candidate node. Call this list Dji. Note that the same demand node can be in several lists Dji. Step 2: For each candidate node, make the current total incoming call rate equal to zero (λinc, j). Step 3: Starting with the first candidate node j on the list Dj, add to its incoming call rate λinc, j, the call rate fi of the first node on the list Dji. Then, add the call rate fi of the second node on the list Dji, then the third, and so on, until the point where adding any extra demand node would exceed the limit value of calls λlim,j. Temporarily allocate all these demand nodes to a hypothetical server at node j. Step 4: Repeat Step 3 for all nodes in list Dj. Note that the same demand node could be temporarily allocated to several candidate locations. Step 5: Locate a server on the node with the highest λinc,j. Take all demand nodes allocated to it out of all the lists Dji of all potential centers. Allocate them definitively to the located server. Step 6: Take each of the servers already located, de-allocate the demands that were allocated to it, and move it to all possible unused candidate locations (repeating each time steps 2 to 5). If some location gives a better objective, keep the server at that location. Repeat for all servers already located. Repeat step 5 until there are no further changes that improve the solution. Step 7: Repeat steps 2 to 6 until all available servers are located. Step 8: Repeat procedure of step 6 for all servers. Two versions of the heuristic were run for each value of the parameters. The first, with step 8, but without step 6; the second, with steps 6 and 8. For all cases, the heuristic took no longer than 2.5 seconds on a 486SX computer running at 100 MHz. In most cases the second version performed better, and we present only the results of the second heuristic. Heuristics; Constrained Waiting Time; One Server per Center Table 6 shows the results obtained by the heuristic. The figures shown correspond to the average percentage difference between the heuristic solution and the CPLEX solution, for different numbers of servers. Also shown are the maximum percentage differences between the two solution methods. It is interesting to note that, for α = 95 percent, τ = 62 m, the solution given by the heuristic is better than the CPLEX solution. This happens in many cases, and is due to the branching limit imposed on CPLEX. Because of this branching © Blackwell Publishers 1998. 420 JOURNAL OF REGIONAL SCIENCE, VOL. 38, NO. 3, 1998 TABLE 6: Results of the Heuristics—Constrained Waiting Time α = 85 percent τ = 40 m 4.17 (7.64)a α = 90 percent τ = 48 m 3.98 (7.43)a α = 95 percent τ = 62 m –0.42 (0.90)a τ = 41 m τ = 42 m τ = 49 m τ = 52 m τ = 62 m 5.04 (9.39) 3.10 (6.12) 0.00 (0.00) 2.06 (13.16) 5.49 (13.16) τ = 49 m τ = 50 m τ = 60 m τ = 70 m 1.21 (3.69) 3.15 (5.34) 1.66 (4.99) 3.16 (4.51) τ = 63 m τ = 64 m τ = 74 m τ = 84 m 1.62 (5.33) 0.78 (5.60) 7.48 (12.86) 2.74 (5.83) aThe figures in parenthesis correspond to maximum values of percentage of difference between heuristic and CPLEX. The figures on top are the average percentages of difference between both solution methods. limit, the solution found by CPLEX is not optimal, and the heuristic finds a better solution than the integer programing package. For one server, constrained waiting time, the run time for both heuristics never exceeded 0.11 seconds. Due to the structure of the heuristics, the solution is robust in many cases, in the sense that when more than k servers are being located, the locations of the first k servers correspond to the best solution to the problem of locating k servers. In other words, the solution (locations) to the problem of locating k servers is a subset of the solutions to the problems of locating more than k servers. However, when CPLEX is used locations may be very different for different numbers of servers, possibly because different CPLEX runs choose different alternate optima. Because of the way the heuristics fill the service capacity of each potential center, in most cases the resulting “districting” consists of attention regions that do not overlap. This differs from the regions found by CPLEX. For example, Figure 5 shows the heuristic solution for τ = 48, α = 90 percent. The CPLEX solution for the same case, displayed in Figure 4, shows a center located on a demand node (17) which is assigned to a different center (14). Also, it shows attention regions that overlap, as in the case of demand nodes 7, 18, and 19. Heuristics; Constrained Queue Length; One or More Servers per Center Table 7 shows the results of the heuristic, compared to the solutions obtained with CPLEX. Column “Ohe” displays the value of the objective and the column labelled “percent” shows the percentage of difference between CPLEX and the heuristic. Table 8 shows the results for three and five servers located at each center, for α = 95 percent. © Blackwell Publishers 1998. MARIANOV & SERRA: LOCATION-ALLOCATION MODELS 421 FIGURE 4. CPLEX solution for τ = 48, α = 90%. The 4 servers are located at nodes 9,10,14 and 17. The arrows show the allocations. 14 27 12 16 28 22 17 23 30 19 29 3 26 18 7 8 2 4 9 15 1 13 5 11 6 24 10 25 20 21 FIGURE 5. Heuristic solution for τ = 48, α = 90%. The 4 servers are located at nodes 16,18,20 and 23. The demand at these is self-assigned. The arrows show the allocations. © Blackwell Publishers 1998. 422 JOURNAL OF REGIONAL SCIENCE, VOL. 38, NO. 3, 1998 TABLE 7: Results, Constrained Queue Length, One Server per Center α = 95 percent S b=0 b=1 b=2 % Ohe Locns % Ohe Locns % 7 0 5470 6,11,18,1, 22,20,24 0 5470 2,4,17,20,24,2 6,27 – – – 6 0 5390 6,11,18,1, 22,20 1.10 5410 2,4,17,20,24,2 6 – – – 5 0.95 5210 6,11,18,1, 22 2.38 5340 2,4,17,20,24 4 –1.68 4240 1,4,18,19 2.41 5260 2,4,17,20 1.28 5400 2,9,22,21 3 –0.31 3180 1,15,19 3.60 5080 2,4,17 2.97 5230 2,9,22, 2 0.94 2120 1, 6 0.28 3510 2,4 1.54 4470 2,9 % Locns % 0 Ohe 5470 Locns 2,9,22,21,24 α = 90 percent S b=0 b=1 % Ohe Locns 6 0 5470 5 1.46 5390 7,18,1,22, 10,24 7,18,1,22, 10 4 6.49 5040 3 2 2.68 0.67 4360 3000 – Ohe – b=2 – Ohe Locns – – – – – – 0 5470 15,3,22,25,24 7,18,1,22 1.46 5390 15,3,22,25 0 5470 15,30,12,20 7,18,1 7,18 6.12 1.35 5060 4380 15,3,22 15,3 0 0 5390 5210 15,30,12 15,30 α = 85% percent b=0 S b=1 b=2 % Ohe Locns % Ohe Locns % Ohe Locns 5 0 5470 7,10,19,14, 24 0 5470 2,7,22,20,24 0 5470 4,19,10,14,24 4 3 1.46 3.34 5390 5210 7,10,19,14 7,10,19 1.46 3.34 5390 5210 2,7,22,20 2,7,22 1.46 3.34 5390 5210 4,19,10,14 4,19,10 2 0 3700 7,10 9.21 4630 2,7 8.25 4780 4,19 6. CONCLUSIONS New models for locating service centers in a congested situation have been presented. These models, being linear, explicitly include a constraint on service quality, specifically the waiting time or queue length at each center. Heuristic solutions are presented for the models and compared to solutions obtained with a commercial integer programming package (CPLEX). When the run time (or branching) is limited, heuristic solutions appear to be very close to the solutions obtained by using CPLEX. In some cases, heuristic solutions are better. These heuristics are very simple, and may be improved by the introduction of randomselection steps or random restarts. © Blackwell Publishers 1998. MARIANOV & SERRA: LOCATION-ALLOCATION MODELS 423 TABLE 8: Results, Constrained Queue Length, Three and Five Servers per Center Three Servers per Center, α = 95 percent b=0 S b=1 % Ohe Locns 10 0 4760 11,18,20,17, 2,3,4,8,14,24 9 1.68 4680 8 3.85 4500 7 4.86 4310 6 2.85 5 4 3 2 b=2 % Ohe Locns % Ohe 11,18,20,17, 2,3,4,8,14 0 5470 1,2,5,12,152 0,24,27,29 0 5470 11,18,20,17, 2,3,4,8 11,18,20,17, 2,3,4 1.0 5410 1.10 5410 1.1 5330 1,2,5,12,15, 20,24,29 3,15,20,2,4,1, 22 2.56 5330 10,13,15,22, 24,29,30 3750 11,18,20,17, 2,3 –1.95 4710 4.45 5150 6,9,11,22, 29,30 1.24 3190 11,18,20,17,2 –2.04 4000 3,15,20,2,4 3.68 4450 6,7,8,22,29 –3.21 2570 11,18,20,17 –1.56 3260 3,15,20,2 0.83 3600 2,10,15,19 1.53 2.27 1930 1290 11,18,20 11,18 0.41 1.2 3,15,20 20,15 2.85 1.60 2730 1850 15,19,25 9,22 Locns % Ohe Locns 2440 1620 3,15,20,2,4,1 Locns Five Servers per Center, α = 95 percent b=0 S b=1 b=2 % Ohe Locns % Ohe 6 0 5470 8,30,5,25, 12,24 0 5470 5 0.36 5390 1,8,9,19,22 1.46 5390 10,23,2,15,16 0 5470 1,9,15,22,24 4 6.01 5000 8,30,5,25 1.67 5300 10,23,2,15 0 5390 6,7,15,22 3 0.25 4000 8,10,18 –0.88 4610 10,23,15 2.37 4950 6,15,22 2 7.30 2650 19,25 0 10,23 0.29 3390 3,13 3080 REFERENCES Batta, Rajan. 1988. “Single Server Queueing–Location Models with Rejection,” Transportation Science, 22, 209–216. ———. 1989. “A Queueing–Location Model with Expected Service Time–dependent Queueing Disciplines,” European Journal of Operational Research, 39, 192–205. Batta, Rajan, Richard Larson, and Amedeo Odoni. 1988. “A Single-Server Priority Queueing– Location Model,” Networks, 8, 87–103. Berman, Oded and Richard Larson. 1985. “Optimal 2–Facility Network Districting in the Presence of Queueing,” Transportation Science, 19, 261–277. Berman, Oded, Richard Larson, and Samuel Chiu. 1985. “Optimal Server Location on a Network Operating as a M/G/1 Queue,” Operations Research, 12, 746–771. Berman, Oded, Richard Larson, and Celik Parkan. 1987. “The Stochastic Queue p-Median Location Problem,” Transportation Science, 21, 207–216. Berman, Oded and R. Mandowsky. 1986. “Location–Allocation on Congested Networks,” European Journal of Operational Research, 26, 238–250. © Blackwell Publishers 1998. 424 JOURNAL OF REGIONAL SCIENCE, VOL. 38, NO. 3, 1998 Brandeau, Margaret, Samuel Chiu, Shiv Khumar, and Thomas Grossman Jr. 1995. “Location with Market Externalities,” in Zvi Drezner (ed.), Facility Location : A Survey of Applications and Methods. New York: Springer-Verlag. Church, Richard and Charles ReVelle. 1974. “The Maximal Covering Location Problem,” Papers of the Regional Science Association, 32, 101–118. Hakimi, S. Louis. 1964. “Optimal Locations of Switching Centers and the Absolute Centers and Medians of a Graph,” Operations Research, 12, 450–459. Larson, Richard and Amedeo Odoni. 1981. Urban Operations Research. Englewood Cliffs, New Jersey: Prentice–Hall. ReVelle, Charles, and Ralph Swain. 1970. “Central Facilities Location,” Geographical Analysis, 2, 30–42. Wolff, Ronald. 1989. Stochastic Modeling and the Theory of Queues. Englewood Cliffs, New Jersey: Prentice–Hall. © Blackwell Publishers 1998.