Annals of Operations Research 111, 33–48, 2002 2002 Kluwer Academic Publishers. Manufactured in The Netherlands.
OO
F
Location–Allocation of Multiple-Server Service Centers with Constrained Queues or Waiting Times VLADIMIR MARIANOV ∗
[email protected] Department of Electrical Engineering, Pontificia Universidad Católica de Chile, Santiago, Chile DANIEL SERRA
[email protected]
PR
Department of Economics and Business, Universitat Pompeu Fabra, Trias Fargas, 25-27, Barcelona 08005, Spain
CT
ED
Abstract. Recently, the authors have formulated new models for the location of congested facilities, so to maximize population covered by service with short queues or waiting time. In this paper, we present an extension of these models, which seeks to cover all population and includes server allocation to the facilities. This new model is intended for the design of service networks, including health and EMS services, banking or distributed ticket-selling services. As opposed to the previous Maximal Covering model, the model presented here is a Set Covering formulation, which locates the least number of facilities and allocates the minimum number of servers (clerks, tellers, machines) to them, so to minimize queuing effects. For a better understanding, a first model is presented, in which the number of servers allocated to each facility is fixed. We then formulate a Location Set Covering model with a variable (optimal) number of servers per service center (or facility). A new heuristic, with good performance on a 55-node network, is developed and tested.
1.
OR RE
Keywords: queuing, heuristics, location
Introduction
UN C
Customers’ perception of a good quality of service is an important issue for both private and public services. In the case of geographically distributed services, such as a health service network, a pizza delivery service, a ticket selling system, distribution or banking networks, a short waiting and service time or a fast delivery contribute to this perception. From the point of view of the system designer, there are several factors that can reduce the total time the customer must wait, and thus improve her/his perception of the quality of the service provided. Among these factors are the location of the centers, the allocation of the right number of servers to each center and the optimal assignment of customers to them. One particularly interesting case is that in which centers must be located in such a way that a customer located at any demand point is able to reach a service center, or receive service, within a reasonably short time. Once a request for service (or a customer) has arrived at the center, her/his waiting time should be made as short as possible, so that there is a perception of a very high service quality. Several types of ∗ Supported by a grant by FONDECYT (Project Nr. 1000602).
VTEX(DL) PIPS No:5099454 artty:res (Kluwer BO v.2002/08/19) a5099454.tex; 18/09/2002; 9:56; p. 1
34
MARIANOV AND SERRA
UN C
OR RE
CT
ED
PR
OO
F
models exist for this case. In the first type (Maximal Covering), a limited number of facilities or centers are located and the goal is to maximize the population covered by the service. The second type of model (Set Covering) seeks full coverage of population, at minimum cost, which corresponds to the least number of facilities, each with the least number of servers. A third type (Minimum Time or Distance), minimizes response time, given a limited number of facilities to be sited. Yet another type corresponds to models that start from the probabilistic analysis of each case, to determine optimal location of the facilities. Many commonly used models for the design of spatial queuing systems are oriented to emergency systems, in which servers travel to the site of the emergency, as opposed to systems in which servers are fixed. Most of them assume a single server in the region under study, because of the difficulty in analyzing multi-server queuing systems. Berman, Larson and Chiu [5], for example, in their paper on Stochastic Queue Median, develop a heuristic algorithm for the optimal location of one server in a congested network. Batta [1], in a one-server model, considers the situation in which there might be a selective rejection of calls by the dispatcher. The model is presented together with a greedy heuristic procedure for the location of the server. Batta, Larson and Odoni [3] present a model and an algorithm for locating one server, when there are calls of different priorities. Batta [2] presents a model for studying the effect of using expected service time dependent queuing disciplines in optimal location of a single server. Frequently, in order to develop algorithms that locate several servers, single-server models are used as sub-algorithms, or building blocks. Based on the one-server location algorithm of Berman, Larson and Chiu [5], Berman, Larson and Parkan [6] develop two heuristics for locating p servers in a congested network. Both are based on solving the exact hypercube (Larson [18]). This makes this algorithm suitable for systems without a large number of servers. All of these models are nonlinear. Some of the models also consider the problem of districting, or the determination of optimal service territories. Berman and Larson [4] solve the problem of districting for a two-server network in the presence of queuing. Given the locations of two servers in 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 queues. Optimality means, in this case, minimum average response time to a random customer. No interaction exists between districts. Berman and Mandowsky [7] use the Stochastic Queue Median, combined with this 2-server districting algorithm, to develop a general location/districting iterative algorithm for two servers, and for m servers. In the case of m servers, at each step, two servers’ locations and service areas are optimally found, while all the remaining units stay at a fixed location. Each server is only allowed to serve its own district. All the models are nonlinear, their solution methods are heuristic, and their objective is to minimize the expected response time of servers traveling to the site of an emergency. Also, all these models use approximations in order to model the system. Linear optimization models for location, derived from the Location Set Covering Problem (LSCP, Toregas et al. [33]), the p-median (Hakimi [17], ReVelle
VTEX(DL) PIPS No:5099454 artty:res (Kluwer BO v.2002/08/19) a5099454.tex; 18/09/2002; 9:56; p. 2
LOCATION–ALLOCATION OF MULTIPLE-SERVER SERVICE
35
UN C
OR RE
CT
ED
PR
OO
F
and Swain [26]), and the Maximal Covering Location Problem (MCLP, Church and ReVelle [8]), are typically noncapacitated and do not deal with congestion. Sometimes, these models include a deterministic capacity constraint, which forces the demand for service at each center not to exceed some maximum capacity. Some models explicitly consider the probabilistic nature of requests for service; the Maximum Expected Covering Location Problem (MEXCLP) by Daskin [11] maximizes the expected coverage by a free server. The Probabilistic Location Set Covering Problem by ReVelle and Hogan [24] forces all demands to be covered with a pre-specified reliability. The MALP, by ReVelle and Hogan [25], maximizes the population covered with a pre-specified reliability. The QPLSCP, by Marianov and ReVelle [19], and the QMALP, by Marianov and ReVelle [20], relax the PLSCP and MALP assumption of independence between servers. All these models are intended for the design of emergency services. In the traditional models that optimize fixed-server location, as opposed to models for the location of emergency vehicles, the capacity limits of the servers are modeled statically. The demand is assumed to be a total that arrives instantly, and it is strictly constrained to be smaller than the capacity of a center. In other words, a static situation is assumed. Recently, Marianov and Serra [21] presented some Maximal Covering models which add a temporal dimension to the problem, by taking into account the fact that the number of requests for service is not constant in time, but dynamic, and behaves following some probabilistic distribution. By using these models, statistically speaking, a good service can be provided. In these models, a capacity-like constraint is derived starting from probabilistic considerations. Instead of minimizing the response time, the probability of a long response time is forced to be smaller than a predetermined figure. Alternatively, the probability of long queues forming at the centers is restricted to be smaller than a pre-specified figure. This formulation allows linear objectives and linear constraints. Thus, the resulting models are solvable to optimality, if so wished. This formulation does not require any approximations of the queuing model, unlike the location models in the literature. However, these models consider a fixed number of servers in each facility. Since the cost and quality of the solution depends strongly on the number of servers in each facility, these models are still limited. In this paper, we present an extension of the previous models. In this extension, the formulation is a Set Covering type of model (as opposed to Maximal Covering), which locates the least number of facilities and allocates the least number of servers to them, so to provide a good service. Indeed, the procedure shown for including a variable number of servers can be also used with a Maximal Covering model. As in the former models, a particular value of service quality of the system (percentage of the requests for service that will arrive at a center and find a queue short enough, or a service time short enough) is explicitly embedded in the optimization model. By specifying quality of service, the designer can trade off investment and operating cost versus service quality. The new model provides a solution that is potentially better than the solution of the models in [21], because is better adapted to the quality of service really required at each facility. Additionally, the designer does not need to estimate a priori the number of servers in
VTEX(DL) PIPS No:5099454 artty:res (Kluwer BO v.2002/08/19) a5099454.tex; 18/09/2002; 9:56; p. 3
36
MARIANOV AND SERRA
2.
PR
OO
F
each facility, which is a task that needs information the designer does not have at the time of the design. For a better understanding, a first model addresses the issue of the location of the least number of multiple-server centers so that all the population is served within a standard distance, and nobody stands in line for a time longer than a given time-limit. We then formulate the model with a variable number of servers per service center. In terms of a solution method, the authors provided a heuristic for solving the maximal covering, multiple-server model in [21]. This heuristic cannot be used for the model presented here, so a new heuristic is designed and tested. The heuristic is based on the Heuristic Concentration method [28]. Additionally, a version of the heuristic is presented for the multiple-server, fixed number of servers model. A Probabilistic Location–Allocation Set Covering Model with co-location of a pre-specified number m of servers per center (PLASCm)
ED
This model can be stated as: Locate the minimum number of m-server centers (where m may depend on the location), and allocate users to them so as to ensure:
CT
(i) every user will be allocated to a center within a standard time or distance from his/her home location, and (ii) on his/her arrival at the center, every user will wait in a line with no more than b other people, with a probability of at least α.
OR RE
The usual Set Covering formulation [33] uses only location variables yi , which are one if a facility is located at node j , and zero otherwise. In order to measure congestion, it is necessary to use also assignment variables xij , that have a value of one if users located at demand node i are allocated to a center located at node j , and zero otherwise. Additionally, a constraint on the congestion must be added. The resulting model is: yj (1) min j ∈J
UN C
s.t.
xij = 1,
∀i,
(2)
∀i, j ∈ Ni ,
(3)
j ∈Ni
xij yj ,
P [center j has b people in queue] α,
∀j,
(4)
where the set Ni is defined aseither the set of candidate locations that are within a standard distance from node i, or the set of candidate locations which can be reached from node i within a certain standard time. The objective minimizes the number of m-server facilities to be sited. Constraint (2) forces the coverage of every demand node i by exactly one center, located inside the set Ni . Note that if just coverage was sought,
VTEX(DL) PIPS No:5099454 artty:res (Kluwer BO v.2002/08/19) a5099454.tex; 18/09/2002; 9:56; p. 4
LOCATION–ALLOCATION OF MULTIPLE-SERVER SERVICE
37
CT
ED
PR
OO
F
this constraint could have a “” sign instead of a “=” sign. In this last case, however, it would be impossible to count the demand assigned to each server, because in some cases, a demand could be covered by more than one server. For the correct use of the model, we need each demand assigned to one and only one server. Thus, in this model, the user is allocated to one and only one center, and there are no overlaps between the areas of attention of centers. Constraint (3) forces coverage of demands only at, or by facilities, while constraint (4) forces every center to have fewer than, or at most, b people in line with a probability of at least α, on the arrival of a customer. This constraint ensures that, on his/her arrival at the center, every user will find a line that is not longer than b, a 100 · α percent of the time. The usual capacity constraints (the number of customers assigned to each center cannot be greater than a pre-specified number) do not allow controlling the quality of service, because they are not developed having in mind the probabilistic or stochastic nature of the problem. Note that this formulation corresponds to a “dictatorial” environment. That is, a planner assigns demands to facilities, not necessarily in agreement with consumers’ behavior if consumers were free to choose. In our “dictatorial” model, some demand nodes may be assigned to a facility that is not their closest, as is usual in capacitated problems (Gerrard and Church [16]). If, on the contrary, consumers are free to choose the facility to patronize, under the same conditions of price, service quality or attractiveness, they will tend to go to the closest one. If this behavior needs to be included in the model, the following constraint should be added: yk , ∀i, j, (5) xij yj − k∈Nij
UN C
OR RE
This constraint where Nij is the set of potential locations that are closer to i than j . works as follows: if there is no other facility closer to i than j , then k∈Nij yk = 0 and xij = 1. If this is not so, the constraint does not affect the solution (Rogeski and ReVelle [27], Wagner and Falkston [34]). Note that there is one of these constraints for each i and j , that is, a large extra number of constraints. An alternative approach would be to run the problem without these constraints and, if in the solution there are nonclosest assignments, a second run is performed, adding the constraint for those nodes that are assigned to nonclosest facilities. Nevertheless, by adding this constraint we do not guarantee that an incorrect assignment will not happen again for other demand nodes. It may be necessary to add this constraint several times in successive runs in order to find an assignment that follows consumer preferences. A review on closest facility constraints can be found in Gerrard and Church [16]. The probabilistic constraint (4) cannot be used in its presented form. In [21], the authors derive a constraint on the quality of service at each facility, in terms of waiting time or number of customers in queue. The constraint can be stated as: “at his/her arrival to the center, every user will wait on a line with no more than b other people, with a probability of at least α”. In this constraint, the quality of service is adjusted by varying the parameters b and α. Requests for service at each demand node i appear according to a Poisson process with intensity fi . Then, the process at each facility
VTEX(DL) PIPS No:5099454 artty:res (Kluwer BO v.2002/08/19) a5099454.tex; 18/09/2002; 9:56; p. 5
38
MARIANOV AND SERRA
F
is also a Poisson process with intensity λj , equal to the sum of the intensities of the processes at the nodes served by the center. The service rate at facility j is µj . At each facility, there is a M/M/m queuing system. Then, the constraint becomes, as derived in [21]: fi xij µj ρα , ∀j, (6)
OO
i∈Bj
in which Bj is the set of population nodes that are within a standard distance from candidate location j , and for each j , ρα is the value of ρ = λ/µ which makes the following equation hold as an equality, provided there are m servers allocated to facility j :
k=0
(m − k)m!mb 1 1 . k! ρ m+b+1−k 1−α
PR
m−1
(7)
3.
Constraining the waiting time
ED
Equation (6) is used in the model instead of (4), as if it was a capacity constraint.
OR RE
CT
If we choose to constrain the waiting time instead of the queue length, we may parallel the derivation in [21] for queue length, and use the cumulative distribution function of the waiting time in a M/M/m queue, w, which has the following expression [35]: 1 − e−µτ (m−1−ρ) p0 ρ m −µτ , (8) 1+ P (wj τ ) = e m!(1 − ρ/m) m−1−ρ
UN C
where τ is the waiting time that cannot be exceeded in an α percent of the times. After plugging into equation (8) the expression for p0 , the probability of no customers in the system, we get an expression for P (wj τ ) that does not depend on p0 but only on m, ρ, µ, and τ . Next, 1 − P (wj τ ) has to be made greater than or equal to α, or P (wj τ ) 1 − α: 1 − e−µτ (m−1−ρ) 1 −µτ 1 − α. (9) 1+ e m−j m−1−ρ 1 + m−1 j =0 (m!/j !)(1 − ρ/m)1/ρ
Unfortunately, this inequality is nonlinear, and it is not possible to derive algebraically a linear expression for ρ or λ. However, the left-hand side of this inequality represents the cumulative waiting time. In the range of interest (λ/µm 1), the cumulative waiting time must be a strictly increasing function of λ, because of the physical meaning of this quantity. Thus, a parameter λα can be computed (in the same way as it was done in [21]), so that for values of λ λα the equation holds. Once λα has been computed, a linear, deterministic, equivalent constraint to (9) can be written, as it was done before.
VTEX(DL) PIPS No:5099454 artty:res (Kluwer BO v.2002/08/19) a5099454.tex; 18/09/2002; 9:56; p. 6
LOCATION–ALLOCATION OF MULTIPLE-SERVER SERVICE
4.
39
The multiobjective PLASC, with co-location of a variable number of servers in each center (PLASCη)
OO
F
The previous model (PLASCm) located a fixed number mj of servers per center j . A different model can be stated, in which the number of servers per center is not prespecified, but rather, defined by the solution to the model. This model (PLASCη) is stated as: Locate the minimum number of centers, each with the minimum possible number of servers, and allocate users to them so as to ensure that:
PR
(i) every user will be allocated to a center within a standard time or distance from his or her home location, and (ii) on his or her arrival at the center, every user will wait in a line with no more than b other people, with a probability of at least α or
ED
(ii) every user will be served within time τ of his/her arrival at the center, with a probability of at least α.
OR RE
CT
In this model, the number of servers at each center is minimized, unlike in the previous model, in which a fixed number m of servers per center is sited. In order to formulate this model, which builds on the previous one, a new variable zj m is defined. This variable is one if at least m servers are located at service center j , and zero otherwise. As many variables are defined for each center as the maximum number of servers that may be sited at that center. Thus, if the maximum capacity of a center j is Cj servers, exactly Cj variables zj m are defined, avoiding the location of more servers. The set of ordering constraints zj m zj m−1 ,
∀j, m = 2, 3, . . . , Cj ,
(10)
are added, to limit the number of servers to Cj and to indicate that a mth server cannot be located at node j without first locating the (m − 1)st server. Constraint (4) becomes Cj fi xij µj zj 1 ρα1 + zj m (ραm − ρα(m−1)) , ∀j. (11) m=2
UN C
i∈Bj
In (11), the parameter ραm represents the value of ρα that makes (7) hold as an equality if the number of servers located at j is m. This value can be computed before the solution of the mathematical program. Note that, if the solution of the mathematical program indicates that there are four servers at the center located at node j , the four first variables zj m will be equal to one, and the right-hand side of (11) will be equal to µj ρα4 . Note also that by adding an extra server to center j we add service capacity to it. This (intuitively correct) fact is shown formally below, by demonstrating that, in (11), ραm − ρα(l−m) is positive, that is, ραm is greater than ρα(m−1).
VTEX(DL) PIPS No:5099454 artty:res (Kluwer BO v.2002/08/19) a5099454.tex; 18/09/2002; 9:56; p. 7
40
MARIANOV AND SERRA
Recall that ραm is the value of ρ which makes (7) hold as an equality, when m servers are located at the node j . We compute the left-hand side of (7) for the same value of ρ, and m + 1 servers, LHS(m + 1). Note that first we use l as the summation index:
Changing summation variables, j = l − 1,
.
m−1
1 (m − j )(m + 1)!(m + 1)b , m+b+1−j (j + 1)! ρ j =−1
PR
LHS(m + 1) =
F
l!
l=0
1
ρ m+1+b+1−l
OO
LHS(m + 1) =
m (m + 1 − l)(m + 1)!(m + 1)b
(m + 1)!(m + 1)b+1 (m − j )(m + 1)!(m + 1)b 1 LHS(m + 1) = + . m+b+2 m+b+1−j ρ (j + 1)j ! ρ j =0 m−1
LHS(m) =
m−1
1 (m − j )m!mb . m+b+1−j j! ρ
CT
j =0
ED
Recall that the left-hand side of (7) is (with the summation variable changed to j ):
UN C
OR RE
The first term of expression LHS(m + 1) is strictly positive, and clearly, each term of the summation is also strictly greater than its equivalent term in the expression for LHS(m). Thus, we can conclude that, for the same value of ρ, LHS(m + 1) is strictly greater than LHS(m). In these conditions, if we want to equate both LHS(m) and LHS(m + 1) to 1/(1 − α), since these functions are decreasing with increasing ρ, the resulting value of ρ in LHS(m + 1) (that is, ρα(m+1) ) must be strictly greater than the resulting value of ρ in LHS(m) (that is, ραm). Thus, the term ρα(m+1) − ραm is positive for all m. This reasoning shows that by adding a server to a center, the service capacity is increased, hence the structure of constraint (11) adequately represents this characteristic. Note that locating an initial server at a candidate node means that a center has to be located there. Also, a center is located at a candidate node only if it contains servers. Thus, the variable yj is equivalent and can be replaced by the variable zj m in the formulation, so the number of variables and constraints is reduced. Thus, the formulation of the last model follows: zj 1 , min Z1 =
Z2 =
j ∈J Cj
zj m
(12)
j ∈J m=2
VTEX(DL) PIPS No:5099454 artty:res (Kluwer BO v.2002/08/19) a5099454.tex; 18/09/2002; 9:56; p. 8
LOCATION–ALLOCATION OF MULTIPLE-SERVER SERVICE
s.t.
xij = 1,
41
∀i,
(13)
∀j, m = 2, 3, . . . , Cj ,
(14)
j ∈Ni
∀i, j ∈ Ni ,
fi xij µj zj 1 ραj 1 +
i∈Bj
Cj
(15)
F
xij zj 1 ,
zj m (ραj m − ραj (m−1) ) ,
∀j,
OO
zj m zj (m−1) ,
m=2
all variables 0 or 1.
(16) (17)
Solution method
OR RE
5.
CT
ED
PR
If needed, closest facility constraints can be added. Objective Z1 minimizes the number of centers, while objective Z2 minimizes the number of servers. Constraint (13) allocates each demand node to one and only one center. Ordering constraints (14) force the location of servers only at open centers, and ensure that m − 1 servers are allocated before allocating the mth server to each facility. The variable zj m is used instead of the location variable yj , so constraint (15) forces the allocation of a demand node only to an open center. Constraint (16) is the probabilistic constraint. A third objective, minimizing total distances (as in a p-median problem), can be added to help allocate the demands to the closest center. This objective could conflict with the probabilistic constraint, when the closest center does not have enough capacity.
UN C
The models presented here can be solved using exact methods, such as branch and bound (BB) for relatively small networks. However, we present a different method suitable for larger networks. This is because the number of variables and constraints increases dramatically with the size of the network, even for medium-sized networks. For example, if the number of nodes is equal to 50, the PLASC problem will have 2500 binary variables xij and 2650 constraints. If the number of nodes is 100, the number of binary variables jumps to 10100. There are several methods to reduce the number of variables and constraints, but the problem may still be intractable (see Rosing et al. [30]). This increase in the number of variables and constraints is especially bothersome due to the fact that the probabilistic constraint has the form of a capacity constraint. When using BB, these constraints tend to increase dramatically the number of branches (see ReVelle [23], on Integer Friendly Programming), because they usually force some integer variables to have non-integer values in the solution at each step of the BB algorithm, as happens with the knapsack problem. Because of this characteristic of the capacity constraints, capacitated problems are especially difficult to solve. A widely used approach for these problems is Lagrangian relaxation, in which the capacity constraints are relaxed and their violation is penalized in the objective. In turn, the penalization factors are optimized to obtain a good lower
VTEX(DL) PIPS No:5099454 artty:res (Kluwer BO v.2002/08/19) a5099454.tex; 18/09/2002; 9:56; p. 9
42
MARIANOV AND SERRA
UN C
OR RE
CT
ED
PR
OO
F
bound for minimization problems (see, e.g., Galvão [14], and Geoffrion [15]). When Lagrangian relaxation is utilized together with other heuristics, both a lower bound and an upper bound can be obtained, the upper bound being a good integer solution to the problem. Several other heuristics have been proposed to solve these problems. Most of them can be divided into two stages or phases: construction and improvement. In the first phase, a solution is obtained from scratch, for example, using a greedy adding heuristic. In the second phase, the algorithms start from the initial solution and try to improve it, for example, with an exchange heuristics. Among the heuristic methods for capacitated problems, Pirkul and Schilling [22], and Current and Storbeck [10] proposed a method for capacitated maximal covering location models, and Davis and Ray [12], and Cornuejols et al. [9] an algorithm for capacitated plant location problems. An approach that shows very good results for location problems is the heuristic concentration method (HC) of Rosing [28] and Rosing and ReVelle [29]. This method was developed for problems in which a fixed number of facilities are to be located. It includes construction and improvement phases. In the construction phase, a number of good solutions are found, by applying multiple runs of a one-exchange heuristic (or some other heuristic) to several starting solutions or guesses. In the second phase, a heuristic or exact procedure is used to obtain a solution from a concentrated set of potential locations generated by the first phase. We choose this algorithm for solving the models presented here. In both phases of the HC, we use the well-known Teitz and Bart [32] one-opt heuristic, improved by Densham and Rushton [13]. Since in the HC it is necessary to know a priori how many facilities need to be located, we add an initial or starting phase, in which we find the smallest number of facilities that could satisfy the requirements of the problem. In our starting phase, a number p of facilities to be located is obtained by ignoring the probabilistic constraints and optimally solving a standard Location Set Covering Problem (LSCP). The solution to LSCP may not be feasible since it may violate the probabilistic constraints. Nevertheless, by relocating some of the facilities a feasible solution may be found. This number p of facilities is the starting number for HC. Once p has been found, the HC heuristic can be applied to the problem. In the first phase of the HC heuristic, an initial set of p locations is randomly obtained, its feasibility is tested, and if the problem is feasible the solution is stored as the best obtained so far. The one-opt or one-exchange trade is then started, and in each one-opt trade, feasibility is again tested and the best feasible solution is stored as the best so far. One-opt trades continue until no better value of the objective is found. If, at the end of the procedure, no feasible solutions are found, the heuristic is restarted with an initial set of p + 1 random locations. The adding of new facilities is done until a feasible solution is found at the end of the procedure. Then, this solution is stored and the heuristic is re-started with p new randomly chosen locations. The number of times the procedure is executed in the first phase is set a priori. In the second phase, the procedure is again used to obtain a solution from a concentrated set of potential locations generated by the first phase. This concentrated set corresponds to the union of all final locations found in the different executions of the
VTEX(DL) PIPS No:5099454 artty:res (Kluwer BO v.2002/08/19) a5099454.tex; 18/09/2002; 9:56; p. 10
LOCATION–ALLOCATION OF MULTIPLE-SERVER SERVICE
43
one-opt procedure in the first phase. A more formal description of the heuristic for the PLASCm is as follows:
OO
F
Initial or starting phase 1. Solve a standard LSCP to obtain the initial number of locations, pini . Set t = 1, p = pini , and Zini = M, where M is equal to a very large number. Phase 1 2. Find p random initial locations.
PR
3. Find the demand served by each facility and check if the restrictions (6) are satisfied with m servers per center. (This section supposes that we are solving the PLASCm with the behavior of the consumer included in the model, so they tend to go to the closest one.) If the probabilistic constraint is not met by any of the p facilities, go to step 4. Otherwise, store Zini = i∈I j ∈Nij dij fi xij and its associated set of locations and set Z = Zini .
ED
4. Choose a facility and trade its location to an empty node within the set of potential locations.
CT
5. Find again the demand served by each facility and the new value of the objective, Z . Check if the probabilistic constraint (6) is satisfied at all facilities. If it is not, discard the solution. Otherwise, if Z < Z, set Z = Z and store the new set of locations as the current best solution.
OR RE
6. Repeat steps 4 and 5 until all potential empty locations have been evaluated one at a time for each facility. 7. If Z < Zini , set Zini = Z and go to step 4. Otherwise, if Z = M, set p = p + 1 and go to step 2. If Z < M, store the final set of locations St , set t = t + 1, p = pini and go to step 2 of the procedure until t is equal to n, a pre-specified number of the first phase iterations. When t = n, go to the second phase of the procedure.
UN C
Phase 2 8. Use the union of all final locations Sk from the best k out of the n starting solutions in phase 1 to form the new reduced set of potential locations. Repeat phase 1 for only one iteration.
This heuristic can be applied when the number of servers is fixed (PLASCm model). If the number of servers is not fixed (PLASCη) the procedure is modified as follows: Initial or starting phase 1. Solve a standard LSCP to obtain the initial number of locations, pini . Set t = 1, p = pini , and Zini = M, where M is equal to a very large number.
VTEX(DL) PIPS No:5099454 artty:res (Kluwer BO v.2002/08/19) a5099454.tex; 18/09/2002; 9:56; p. 11
44
MARIANOV AND SERRA
Phase 1 2. Find p random initial locations.
OO
F
3. Find the demand served by each facility and the initial objective value Zini . For each facility, compute the number of servers needed to satisfy the probabilistic constraint (16). Store Zini , its associated set of locations and number of servers and set Z = Zini . 4. Choose a facility and trade its location to an empty node within the set of potential locations.
PR
5. Find again the demand served by each facility. For each facility, compute the number of servers needed to satisfy the probabilistic constraint (16). Compute the new value of the objective, Z . If Z < Z, set Z = Z and store the new set of locations and number of servers as the current best solution. Otherwise, discard the solution.
ED
6. Repeat steps 4 and 5 until all potential empty locations have been evaluated one at a time for each facility.
CT
7. If Z < Zini , set Zini = Z and go to step 4. Otherwise, set p = p + 1 and go to step 2. Store the final set of locations St , set t = t + 1, p = pini and go to step 2 of the procedure until t is equal to n, a pre-specified number of the first phase iterations. When t = n, go to the second phase of the procedure.
OR RE
Phase 2 8. Use the union of all final locations Sk from the best k out of the n starting solutions in phase 1 to form the new reduced set of potential locations. Repeat phase 1 for only one iteration. As in the Location Set Covering Model, it is very likely that there will be alternate optima. In order to discriminate between these alternate optima, for each of them the average distance from the population to the facilities could be computed and the solution with the best value chosen. Computational experience
UN C
6.
The PLASCη model was tested on the well-known 55-node Swain [31] network. Several instances of the problem were generated using different uniform randomly generated population values. Distances were found using a shortest path algorithm. For the starting phase, the relaxed problem (without the capacity constraint) must be solved. This is just the well-known LSCP, which is easy to solve with BB. In order to obtain the initial number of locations using the LSCP, we used MINT, an adapted version of MINOS 5.1. HC was programmed in FORTRAN 77. In all cases, the heuristic found the best solutions in less than 5 seconds, when run on a Pentium II, 233 MHz computer. On the other hand, optimal solutions were obtained by complete enumeration of the feasible
VTEX(DL) PIPS No:5099454 artty:res (Kluwer BO v.2002/08/19) a5099454.tex; 18/09/2002; 9:56; p. 12
LOCATION–ALLOCATION OF MULTIPLE-SERVER SERVICE
45
Table 1 Results using different α values. α = 90%
α = 95%
Optimal number of centers, servers and average distance
60%
60%
90%
Optimal number of centers and servers
40%
40%
0%
0%
10%
OO
Nonoptimal solution
F
α = 85%
0%
UN C
OR RE
CT
ED
PR
solutions, since it is possible to find optimal solutions when the number of nodes is relatively small. Therefore, the solutions obtained using the heuristic could be tested and compared to the optimal solution to the problems. The standard distance was set to 250 and the maximum number of people waiting in line was fixed at 8. The mean frequency of calls was set at 0.008 and the service rate at 6. The maximum number of servers in a facility was set at 6. Finally, the probability α was set at 85%, 90% and 95%. For each α, 10 runs were executed using different population values. Therefore, a total of 30 instances were solved both optimally and heuristically. In order to choose the best solution if alternate optima were found, the weighted average distance demand-facility was computed, and the solution with the lowest value was chosen. The percentage of instances for which the heuristic found optimal values is shown in table 1. The first row indicates the number of times that the optimal solution for all the objectives was found using the heuristic. That is, the three objectives (minimum number of facilities, minimum number of servers and weighted average distance) were optimally obtained using the heuristic in 60% of the instances when α = 85%. In several runs, while the optimal number of facilities and servers were the same using both heuristic and optimal methods, the heuristic was not able to find the set of alternate locations that minimized the average distance. The second row indicates the percentage of times that this occurred. For example, when α = 85%, 40% of the solutions obtained with the heuristic were optimal with respect to the number of servers and facilities, but since there were alternate solutions, the heuristic did not find the solution that minimized the weighted average distance. Finally, no nonoptimal solutions were found. As can be observed, the performance of the heuristic is excellent when computing the minimum number of facilities and the minimum number of servers. It is also worth mentioning that, except for one single case, in all runs there was only one efficient solution for the number of facilities and servers (that is, a solution for which the number of servers decreases when the number of centers increase by one). This agrees with intuition; since for each facility there is at least one server, as we increase the number of facilities the number of servers tends to increase. In order to obtain an efficient solution when we add a new facility, the increase in at least one server has to be compensated by the reduction in at least two servers from the other facilities. As an example of this phenomenon, the model was applied to the network, with α = 95%. The results are shown in table 2. Observe that there is no trade-off between
VTEX(DL) PIPS No:5099454 artty:res (Kluwer BO v.2002/08/19) a5099454.tex; 18/09/2002; 9:56; p. 13
46
MARIANOV AND SERRA
Table 2 Facilities v/s servers to meet the probabilistic constraint. Total # of servers
4 5 6 7
7 7 7 8
OO
F
Total # of facilities
Number of servers
Population covered
11 12 41 45
2 1 2 2
1065 461 1025 1024
Frequency of calls attended
Right-hand side
8.52 3.69 8.20 8.19
9.03 4.45 9.03 9.03
ED
Locations
PR
Table 3 Results, example on the 55-node network.
7.
OR RE
CT
the number of servers and the number of facilities. That is, as we increased the number of facilities to be located, the total number of servers needed to satisfy the probabilistic constraint did not decrease. The final result for this case is that 4 facilities should be located at nodes 11, 12, 41 and 45, and the number of servers at each facility is 2, 1, 2 and 2, respectively. The average weighted distance is 83.59. The value of the right-hand side of the probabilistic constraint is equal to 4.45 if only one server is located, and equal to 9.03 if two servers are located. Table 3 shows the results.
Conclusions
UN C
Two new models for locating service centers in a congested situation have been presented, for the case in which every demand needs to be satisfied. These models, being linear, explicitly include a constraint on the waiting time or queue length and thus, on the service quality. A heuristic is presented for the solution of both models. This heuristic can be applied to any capacitated Location Set Covering model. A further variation is to minimize the value of b (the α-reliable queue length) or the value of τ (the maximum α-reliable waiting time). This is done heuristically, by recursively solving the model in this paper, with successively decreasing values of queue length and/or waiting time. In this sense, the b or τ minimization problem is related to the PLASCη in the same way as the p center problem with locations restricted to nodes is related to the LSCP.
VTEX(DL) PIPS No:5099454 artty:res (Kluwer BO v.2002/08/19) a5099454.tex; 18/09/2002; 9:56; p. 14
LOCATION–ALLOCATION OF MULTIPLE-SERVER SERVICE
47
Acknowledgments
F
We gratefully acknowledge two anonymous referees for their careful work in reviewing this paper and for their valuable suggestions.
OO
References
UN C
OR RE
CT
ED
PR
[1] R. Batta, Single server queueing–location models with rejection, Transportation Science 22 (1988) 209–216. [2] R. Batta, A queueing–location model with expected service time dependent queueing disciplines, European Journal of Operational Research 39 (1989) 192–205. [3] R. Batta, R. Larson and A. Odoni, A single-server priority queueing–location model, Networks 8 (1988) 87–103. [4] O. Berman and R. Larson, Optimal 2-facility network districting in the presence of queueing, Transportation Science 19 (1985) 261–277. [5] O. Berman, R. Larson and S. Chiu, Optimal server location on a network operating as a M/G/1 Queue, Operations Research 12 (1985) 746–771. [6] O. Berman, R. Larson and C. Parkan, The stochastic queue p-median location problem, Transportation Science 21 (1987) 207–216. [7] O. Berman and R. Mandowsky, Location–allocation on congested networks, European Journal of Operational Research 26 (1986) 238–250. [8] R. Church and C. ReVelle, The Maximal Covering Location Problem, Papers of the Regional Science Association 32 (1974) 101–118. [9] G. Cornuejols, R. Sridharan and J. Thizy, A comparison of heuristics and relaxations for the capacitated plant location problem, European Journal of Operational Research 50 (1991) 280–297. [10] J. Current and J. Storbeck, Capacitated covering models, Environment and Planning B 15 (1988) 153–164. [11] M.S. Daskin, A maximum expected covering location model: Formulation, properties and heuristic solution, Transportation Science 17 (1983) 48–70. [12] P. Davis and T. Ray, A branch and bound algorithm for the Capacitated Facilities Location Problem, Naval Research Logistics Quarterly 16 (1969) 331–334. [13] P. Densham and G. Rushton, Strategies for solving large location–allocation problems by heuristic methods, Environment and Planning A 24 (1992) 289–304. [14] R. Galvão, The use of Lagrangean relaxation in the solution of unicapacitated facility location problems, Location Science 1(1) (1993) 57–70. [15] A. Geoffrion, Lagrangean relaxation for integer programming, Mathematical Programming Study 2 (1974) 82–114. [16] R. Gerrard and R. Church, Closest assignment constraints and location models: Properties and structure, Location Science 4 (1996) 251–270. [17] S.L. Hakimi, Optimal locations of switching centers and the absolute centers and medians of a graph, Operations Research 12 (1964) 450–459. [18] R.C. Larson, A hypercube queueing model for facility location and redistricting in urban emergency services, Computers and Operations Research 1 (1974) 67–95. [19] V. Marianov and C. ReVelle, The Queueing Probabilistic Location Set Covering Problem and some extensions, Socio-Economic Planning Sciences 28 (1994) 167–178. [20] V. Marianov and C. ReVelle, The Queueing Maximum Availability Location Problem, European Journal of Operational Research 93 (1996) 110–120. [21] V. Marianov and D. Serra, Probabilistic, maximal covering location–allocation models for congested systems, Journal of Regional Science 38 (1998) 401–424.
VTEX(DL) PIPS No:5099454 artty:res (Kluwer BO v.2002/08/19) a5099454.tex; 18/09/2002; 9:56; p. 15
48
MARIANOV AND SERRA
UN C
OR RE
CT
ED
PR
OO
F
[22] H. Pirkul and D. Schilling, The maximal covering location problem with capacities on total workload, Management Science 37 (1991) 233-248. [23] C. ReVelle, Facility siting and integer-friendly programming, European Journal of Operational Research 65 (1993) 147–158. [24] C. ReVelle and K. Hogan, A reliability-constrained siting model with local estimates of busy fractions, Environment and Planning B: Planning and Design 15 (1988) 143–152. [25] C. ReVelle and K. Hogan, The Maximum Reliability Location Problem and α-Reliable p-Center Problem: Derivatives of the Probabilistic Location Set Covering Problem, Annals of Operations Research 18 (1989) 155–174. [26] C. ReVelle and S. Swain, Central facilities location, Geographical Analysis 2 (1970) 30–42. [27] G. Rogeski and C. ReVelle, Central facilities location under an investment constraint, Geographical Analysis 2 (1975) 343–353. [28] K. Rosing, An empirical investigation of the effectiveness of a vertex substitution heuristic, Environment and Planning B 24 (1997) 59–67. [29] K. Rosing and C. ReVelle, Heuristic concentration: Two stage solution construction, European Journal of Operational Research 97 (1997) 75–86. [30] K. Rosing, C. ReVelle and H.Rosing-Vogelaar, The p-median model and its linear programming relaxation: An approach to large problems, Journal of the Operational Research Society 30 (1979) 815–823. [31] R. Swain, A parametric decomposition algorithm for the solution of uncapacitated location problems, Management Science 21 (1974) 189–198. [32] M. Tietz and P. Bart, Heuristic methods for estimating the generalized vertex median of a weigthed graph, Operations Research 16 (1968) 955–965. [33] C. Toregas, R. Swain, C. ReVelle and L. Bergman, The location of emergency service facilities, Operations Research 19 (1971) 1363–1373. [34] C. Wagner and F. Falkston, The optimal nodal location of public facilities with price sensitive demand, Geographical Analysis 7 (1975) 69–79. [35] R. Wolff, Stochastic Modeling and the Theory of Queues (Prentice-Hall, Englewood Cliffs, NJ, 1989).
VTEX(DL) PIPS No:5099454 artty:res (Kluwer BO v.2002/08/19) a5099454.tex; 18/09/2002; 9:56; p. 16