locating capacitated facilities to maximize captured demand

15
IIE Transactions (2007) 39, 1015–1029 Copyright C “IIE” ISSN: 0740-817X print / 1545-8830 online DOI: 10.1080/07408170601142650 Locating capacitated facilities to maximize captured demand ODED BERMAN 1,, RONGBING HUANG 2 , SEOKJIN KIM 3 and MOZART B. C. MENEZES 4 1 Joseph L. Rotman School of Management, University of Toronto, 105 St. George Street, Toronto, ON, Canada M5S 3E6 E-mail: [email protected] 2 School of Administrative Studies, York University, Atkinson Building, 4700 Keele Street, Toronto, ON, Canada M3J 1P3 3 Department of Business Administration, Millersville University, P.O. Box 1002, Millersville, PA 17551-0302, USA 4 Department of Logistics and Operations Management, HEC-School of Management, Paris, 1 Rue de la Liberation, F-78351 Jouy en Josas Cedex, France Received February 2006 and accepted October 2006 We consider the problem of locating a set of facilities on a network to maximize the expected number of captured demand when customer demands are stochastic and congestion exists at facilities. Customers travel to their closest facility to obtain service. If the facility is full (no more space in the waiting room), they attempt to obtain service from the next-closest facility not yet visited from its current position on the network. A customer is lost either when the closest facility is located too far away or all facilities have been visited. After formulating the model, we propose two heuristic procedures. We combine the heuristics with an iterative calibration scheme to estimate the expected demand rate faced by the facilities: this is required for evaluating objective function values. Extensive computational results are presented. Keywords: Location, congestion, optimization, queueing 1. Introduction One of the most important objectives for profit and non- profit organizations when locating service facilities in a ge- ographical region is to capture as much potential customer demand as possible. Strategically, most companies locate their facilities to maximize their market share and to create an entry barrier to potential competitors. Without effec- tive location of facilities, it would be difficult to maintain a high-market-share position. Most non-profit organizations attempt to make their facilities more accessible to potential customers. Regardless of how attractive or useful an organi- zation’s products and services may be, if customers cannot reach them with a desired level of service, the chance of success is greatly diminished. In this paper, we specifically attempt to capture maximal customer demand from the viewpoint of a decision maker at a strategic level. We assume that customers are concentrated at discrete points (or nodes) on a network. The weight of a node rep- resents the demand intensity at that node. It reflects the to- tal number of potential customers and should be estimated through an appropriate statistical analysis. The inter-arrival times of customers at a node are uncertain and drawn from some distribution specific to that node. A customer who wishes to obtain service travels to the next “eligible” facil- Corresponding author ity (the next-closest facility which has not yet been visited) if the facility is sufficiently close to her current position on the network. Otherwise, she gives up service and leaves the system. If the facility is full (no more space in the waiting room) when visited, she again considers traveling to the next eligible facility and so on. Service times at a facility are as- sumed to be drawn from some distribution identical across all servers in the network. For simplicity, it is assumed that each facility hosts a single server. The problem belongs to a class of optimization prob- lems, called Location Problems with Stochastic Demands and Congestion (LPSDC), which attempt to find optimal locations for a set of facilities in the presence of stochas- tic demands and potential congestion at the facilities on a discrete undirected network. A comprehensive and yet detailed overview of LPSDC is provided by Berman and Krass (2002). LPSDC models are primarily involved with two types of uncertainty: (i) the actual amount and timing of the demand generated by customers; and (ii) a possible loss of demand or delay of service due to congestion at service facilities. It is well known that two important classes of determin- istic location models in the literature are coverage type and median type. The two classes have their direct parallels in the LPSDC context. For median type models the readers can refer to Berman et al. (1990). Our paper belongs to the class of coverage-type models. 0740-817X C 2007 “IIE”

Upload: independent

Post on 02-May-2023

0 views

Category:

Documents


0 download

TRANSCRIPT

IIE Transactions (2007) 39, 1015–1029Copyright C© “IIE”ISSN: 0740-817X print / 1545-8830 onlineDOI: 10.1080/07408170601142650

Locating capacitated facilities to maximize captured demand

ODED BERMAN1,∗, RONGBING HUANG2, SEOKJIN KIM3 and MOZART B. C. MENEZES4

1Joseph L. Rotman School of Management, University of Toronto, 105 St. George Street, Toronto, ON, Canada M5S 3E6E-mail: [email protected] of Administrative Studies, York University, Atkinson Building, 4700 Keele Street, Toronto, ON, Canada M3J 1P33Department of Business Administration, Millersville University, P.O. Box 1002, Millersville, PA 17551-0302, USA4Department of Logistics and Operations Management, HEC-School of Management, Paris, 1 Rue de la Liberation, F-78351 Jouyen Josas Cedex, France

Received February 2006 and accepted October 2006

We consider the problem of locating a set of facilities on a network to maximize the expected number of captured demand whencustomer demands are stochastic and congestion exists at facilities. Customers travel to their closest facility to obtain service. If thefacility is full (no more space in the waiting room), they attempt to obtain service from the next-closest facility not yet visited from itscurrent position on the network. A customer is lost either when the closest facility is located too far away or all facilities have beenvisited. After formulating the model, we propose two heuristic procedures. We combine the heuristics with an iterative calibrationscheme to estimate the expected demand rate faced by the facilities: this is required for evaluating objective function values. Extensivecomputational results are presented.

Keywords: Location, congestion, optimization, queueing

1. Introduction

One of the most important objectives for profit and non-profit organizations when locating service facilities in a ge-ographical region is to capture as much potential customerdemand as possible. Strategically, most companies locatetheir facilities to maximize their market share and to createan entry barrier to potential competitors. Without effec-tive location of facilities, it would be difficult to maintain ahigh-market-share position. Most non-profit organizationsattempt to make their facilities more accessible to potentialcustomers. Regardless of how attractive or useful an organi-zation’s products and services may be, if customers cannotreach them with a desired level of service, the chance ofsuccess is greatly diminished. In this paper, we specificallyattempt to capture maximal customer demand from theviewpoint of a decision maker at a strategic level.

We assume that customers are concentrated at discretepoints (or nodes) on a network. The weight of a node rep-resents the demand intensity at that node. It reflects the to-tal number of potential customers and should be estimatedthrough an appropriate statistical analysis. The inter-arrivaltimes of customers at a node are uncertain and drawn fromsome distribution specific to that node. A customer whowishes to obtain service travels to the next “eligible” facil-

∗Corresponding author

ity (the next-closest facility which has not yet been visited)if the facility is sufficiently close to her current position onthe network. Otherwise, she gives up service and leaves thesystem. If the facility is full (no more space in the waitingroom) when visited, she again considers traveling to the nexteligible facility and so on. Service times at a facility are as-sumed to be drawn from some distribution identical acrossall servers in the network. For simplicity, it is assumed thateach facility hosts a single server.

The problem belongs to a class of optimization prob-lems, called Location Problems with Stochastic Demandsand Congestion (LPSDC), which attempt to find optimallocations for a set of facilities in the presence of stochas-tic demands and potential congestion at the facilities ona discrete undirected network. A comprehensive and yetdetailed overview of LPSDC is provided by Berman andKrass (2002). LPSDC models are primarily involved withtwo types of uncertainty: (i) the actual amount and timingof the demand generated by customers; and (ii) a possibleloss of demand or delay of service due to congestion atservice facilities.

It is well known that two important classes of determin-istic location models in the literature are coverage type andmedian type. The two classes have their direct parallels inthe LPSDC context. For median type models the readerscan refer to Berman et al. (1990). Our paper belongs to theclass of coverage-type models.

0740-817X C© 2007 “IIE”

1016 Berman et al.

There are two subclasses of coverage problems: set cov-ering and maximal covering problems. Most coverage-typemodels addressing congestion trace their origins to themodel developed by Daskin (1983). Since the busy fractionof a server is exogenously given, the stochastic behavior ofan underlying system is not explicitly captured in Daskin’smodel. However, the model has led to several subsequentmodels that have attempted to integrate congestion explic-itly. Following the initial work of Larson (1975), Batta et al.(1989) attempt to relax the assumption that busy fractionsof servers are statistically independent.

Pursuing an alternative approach, ReVelle and Hogan(1989) focus on a local region of a network and attempt tocapture the stochastic behavior of the region more explicitly.Specifically, region i is the set of nodes within a prespecifieddistance of node i. As in Daskin (1983), the number of busyservers in a region is assumed to be binomially distributed.However, the busy fraction of a server is not server specificbut region specific, i.e., there are different busy fractionsin different regions. Batta et al. (1989) examine both setcovering and maximal covering problems in the frameworkof covering-location models for emergency situations thatrequire multiple response units. Given an upper bound onexponential service times, Ball and Lin (1993) derive a site-specific upper bound for busy fractions to provide solutionssatisfying a required level of availability at each node. Fol-lowing ReVelle and Hogan’s assumption that the busy frac-tions are region specific, Marianov and ReVelle (1994) treata region having k servers within as an M/M/k/k system.Borras and Pastor (2002) provide an ex-post evaluation ofthe availability level on the three models in the literature bysimulation and also suggest a new model formulated simi-lar to the Ball–Lin model incorporating the estimate for thebusy fraction of the ReVelle–Hogan model.

In a closely related paper (Berman, Krass and Wang,2006) where customers travel only to the closest facility, twotypes of demand loss addressed are: “lack of coverage”—which occurs when none of the facilities are close enoughto customers’ location to provide a sufficient level of con-venience and “lack of service”—which occurs when a cus-tomer finds the visiting facility full and thus is lost to thesystem.

In this paper, we explicitly allow a dissatisfied customer(or a “lost” customer due to “lack of service” in Berman,Krass and Wang, 2006) to visit the next-closest facility fromher current position, so that she may possibly visit severalfacilities on the network. Therefore, this paper may portraybetter a common customer behavior. The problem of lo-cating facilities taking advantage of this customer behaviorcan be useful in various situations:

1. When the company providing service or product is amonopoly. For example in Ontario, Canada, liquor ismonopolized by the government which operates LCBO(Liquor Control Board of Ontario) stores. These storesare often congested and it is quite common to see cus-

tomers traveling to another LCBO when the current oneis full.

2. Services with loyal customers. For example, customershaving an account with a particular bank tend to stayloyal since requiring services from other banks incursextra cost or inconvenience. Another example in Canadais gas stations. One of the largest companies is PetroCanada which gives customers reward points. Therefore,customers who decide not to obtain gas from a full PetroCanada station will tend to go to another Petro Canadastation even if there is a competitor gas station aroundthe corner.

3. In a case of customers that are not fully loyal and exis-tence of fierce competition, we can use a high sensitivity-to-distance parameter in the function describing thefraction of customers willing to visit a facility (defined inthe next section) to take into account the competition.

This paper also extends recent work by Berman, Krassand Menezes (2006a, 2006b), which allow multiple visits tofacilities assuming that facilities can be disrupted and thusunavailable to provide service. The objective is to minimizethe total expected cost of traveling. In contrast to our pa-per, the facilities considered in Berman, Krass and Menezes(2006a, 2006b) are not congested.

Our main contribution is two-fold: first we introduce theproblem of redirecting demand, when facilities are con-gested, in a network setting; second, we develop an approx-imation algorithm to compute the objective function valuethat is very difficult to compute analytically and thus avoidthe expensive time cost of simulation.

The rest of this paper is organized as follows: in Section2 we formulate the main problem. Next, in Section 3, wepresent the approximation algorithm to evaluate the ob-jective function. In Section 4 two heuristics are introducedand in the subsequent section we show some computationalresults. Section 6 discusses two natural extensions to themodel and a comparison of several models. We concludewith final remarks in Section 7.

2. Problem formulation

Let G = (N, E) be a network, where N = {1, 2, · · · , n} isthe set of nodes and E is the set of edges. The fraction ofthe total population associated with node i ∈ N is denotedby wi. The demand process at node i is Poisson distributedwith rate λ wi. For simplicity of notation and without lossof generality, we assume that λ = 1.

There are p facilities and in each facility there is a singleserver who performs service according to an exponentialdistribution with rate µ. Facilities are located only at nodes.A facility is defined by a pair (j, i) where j is a facility and i isits location. The facility is full when there are c customersin the system and thus no new customers are allowed toenter. We denote by d(x, y) the shortest distance between

Locating capacitated facilities 1017

x and y, x, y ∈ G and by d(i, L) the shortest distance fromnode i to the closest facility in a set of nodes L, i.e., d(i, L) =minj∈L d(i, j).

Thus, facility j operates as an M/M/1/c queueing sys-tem. If the number of customers qj at facility j is c, a visitingcustomer does not enter facility j for service.

The fraction of demands from any node willing to visitfacility j from customers’ current location i is denoted by anon-increasing function f (dij).

In this paper we consider the piecewise linear convexfunction given by

f (dij) = max {1 − dij/(αdmax), 0},

where α > 0 is the distance sensitivity of customers andαdmax > 0 is a threshold distance. We assume that cus-tomers never visit any facility located beyond the thresholddistance. A typical choice of dmax is the diameter of the net-work. Thus, a fraction 1 − f (dij) of customers are lost. Byusing αi (instead of α) in f (dij) we can implicitly take compe-tition into account when customers are not fully loyal. Wenote that other functional forms of f are available in theliterature, e.g., an exponential decay function f (d) = e−αd ,a linear decay function f (d) = (ui − d)/(ui − li) where li andui are lower and upper bounds of d such that f (li) = 1 andf (ui) = 0, see Berman, Krass and Wang (2006).

A solution is defined by a pair (S, L), where S ={1, 2, . . . , p} is the set of facilities and L = {L(1), . . . , L(p)}= {L1, . . . , Lp} is a multi-set of locations, where L(j) (orLj) is the location of facility j ∈ S. We denote by ρ(j) theblocking fraction of facility j, i.e., the fraction of timethat qj = c, where qj is the number of customers at fa-cility j. Let S(i) = {S(i)

1 , S(i)2 , . . . , S(i)

p } be the sequence offacilities to be visited by a customer from node i andL(i) = {L(i)

1 , L(i)2 , . . . , L(i)

p }be the set of locations correspond-ing to S(i), i.e., L(i)

j = L(S(i)j ). By convention, we let S(i)

0 = 0,

ρ(S(i)0 ) = 1, and L(i)

0 = i. A customer from node i first at-tempts to enter service at facility S(i)

1 which is located atL(i)

1 . Since multiple facilities are allowed at a node, L is amulti-set. For example, if L = {1, 2, 2, 4}, the second andthird facilities are both located at node 2.

The long-run fraction of demand from node i visitingfacility S(i)

1 located at L(i)1 is wif (d(L(i)

0 , L(i)1 )). If the number

of customers q(S(i)1 ) at facility S(i)

1 is less than c, the customerfrom node i enters the facility for service. Otherwise, thecustomer visits the next facility S(i)

2 or leaves the system withprobability 1 − f (d(L(i)

1 , L(i)2 )). Define Bi(S

(i)j ) to be the long-

run fraction of time that facility S(i)j is available to provide

service to demand originating from node i, while facilitiesS(i)

0 , S(i)1 , · · · , S(i)

j−1 are not available (having c customers ineach). The expected demand Vi(L) originating from node i

and captured by all p facilities is

Vi(L) = wi

p∑j=1

Bi(S(i)j )

j∏k=1

f(d(L(i)

k−1, L(i)k

)). (1)

Since it is impossible to obtain the Bi(Sij) values analytically,

Equation (1) can not be used to calculate Vi(L) practically.We approximate Bi(Si

j) by

(1 − ρ

(S(i)

j

)) j∏k=1

ρ(S(i)

k−1

),

where (1 − ρ(S(i)j )) is the long-run fraction of time that

the jth facility is available and∏j

k=1 ρ(S(i)k−1) is the long-

run fraction of time that the first j − 1 facilities areunavailable. This is clearly an approximation since itassumes that ρ1, · · · , ρp are independent. Therefore, con-sidering the approximation proposed, the expected de-mand Vi(L) originating from node i and captured by all pfacilities is

Vi(L) = wi

p∑j=1

(1 − ρ

(S(i)

j

)) j∏k=1

ρ(S(i)

k−1

) j∏k=1

f(d(L(i)

k−1, L(i)k

))

= wi

p∑j=1

(1 − ρ

(S(i)

j

)) j∏k=1

(ρ(S(i)

k−1

)f(d(L(i)

k−1, L(i)k

))),

(2)

and the total expected demand captured by p facilities is

V (L) =∑i∈N

Vi(L). (3)

The problem is then to maximize the total expected demandcaptured by p facilities:

(P1) V (L∗) = maxL⊆N

{V (L) : |L| = p}.

Note again that (P1) is just an approximation to the orig-inal problem. This approximation is shown to be very good(in Section 5, we compare the results obtained by the heuris-tic algorithms developed for Equation (2) with the resultsobtained by simulation using Equation (1)).

Given a fixed set of facility locations, let Q =(q1, q2, . . . , qp) be the state of the system where qj is thenumber of customers at facility j, j = 1, · · · , p. There are(c + 1)p different states of the system for queues of max-imum size of c which is a huge number. For example, forqueues of maximum length of five customers and ten facil-ities the total number of states is over 60 000 000.

3. Calibrating blocking fractions

The huge number of system states makes it very difficultto solve (P1) analytically. Furthermore, the blocking frac-tion of a facility is dependent on the other (p − 1) facilities.So, by changing one single element in the facility location

1018 Berman et al.

set the steady-state distributions must be recalculated. Ourproblem combines the complications of classical locationproblems (most of which are NP-complete) and the dy-namics of queueing systems. A special case of our problem,when the maximum queue size (or equivalently the servicerate) is infinite, is equivalent to the p-median problem whichis an NP-hard problem.

The incorporation of stochastic aspects into location de-cisions inevitably leads to intractable formulations whichoften requires simplifying assumptions on the problem andfurther reasonable approximations for the most importantquantities of interest. Considering the complicated natureof the problem, we propose two heuristic procedures to im-prove the objective function value and to keep the feasibilityof solutions at each iteration with computational efficiency.To do so, we need to approximate the blocking fraction ρ(j)

of facility j. For an M/M/1/c queueing system (c.f., e.g.,Gross and Harris (1985)), we have:

ρ(j) =

(λ(j)/µ)c(1 − λ(j)/µ)1 − (λ(j)/µ)c+1 if λ(j) �= µ,

(c + 1)−1 if λ(j) = µ,

(4)

where λ(j), the mean demand rate for facility j, is the sum-mation of node-to-facility demand assignments to facilityj, i.e., how many customers from all nodes visit facility j ∈ Sper unit time. Unfortunately, the exact quantity λ(j) is notknown. We propose an iterative approximation procedureto calibrate the demand rates, λ(j), ∀ j, which we will use inexpression (4). We refer to it as Demand Assignment andCalibration (DAC).

For a given set of facility locations and a specific demandnode i, we designate the closest facility to i as its first pre-ferred. If two or more facilities are equally close to demandnode i, we will choose the facility with the smallest index asits first preferred. Denote by FP = {f1, · · · , fv} the set of allfacilities that can be chosen as the first preferred by somedemand nodes. Notice that v ≤ p since as we mentioned inthe last section, multiple facilities are allowed in a node.Therefore, it is possible that some facilities will never bechosen as the first preferred.

A customer visiting her first preferred, say facility fk = j,will follow the same route as all other customers whosefirst preferred is facility fk. Let SPk = {SP1

k, · · · , SPpk} be

the sequence of preferred facilities in which SP1k = fk ∈ FP

(k = 1, · · · , v). Note that once fk is chosen, SPk is fully de-termined (i.e., among facilities SPt

k, · · · , SPqk, SPt

k is theclosest facility to facility SPt−1

k for t = 2, · · · , v). Then fora customer whose first preferred is fk, her possible patroniz-ing sequence is facility fk → facility SP2

k → · · · → facilitySPp

k. Of course, she may be served at some facility whichis not at full capacity or just leave the system before visit-ing all other facilities in SPk. Let LPk = {LP1

k, · · · , LPpk} be

the set of locations corresponding to SPk. We can use SPkand LPk to keep track of customers’ patronizing informa-

Fig. 1. A 10-node example for using DAC.

tion. As an example consider the network depicted in Fig. 1.Shortest distances and weights are given in Table 1. Supposep = 3, S = {1, 2, 3} and L = {7, 3, 9}. It is easy to verify thatFP = {1, 2, 3}. We have SP1 = {1, 3, 2}, SP2 = {2, 3, 1},and SP3 = {3, 1, 2}; LP1 = {7, 9, 3}, LP2 = {3, 9, 7} andLP3 = {9, 7, 3}. A customer from either nodes 1, 2, 3, 4, 6will have SP2 = {2, 3, 1} and will choose facility 2 (at node3) as her first preferred. Ignoring distance sensitivity, shewill obtain service if facility 2 is not at full capacity; other-wise, she will visit facility 3 (at node 9). If facility 3 is alsoat full capacity, she will attend facility 1 (at node 7).

We refer to a tour traveled from a demand node or afacility to its next-preferred facility as a “leg”. There are nofirst leg demands for those facilities not in FP. Define λ

(j)m

as the demand rate originated from the first m legs faced byfacility j. We would like to estimate λ

(j)p . To obtain λ

(j)p we

will have to estimate λ(j)m , m = 1, · · · , p, sequentially starting

with λ(j)1 . Therefore, we have:

λ(j)1 =

∑{i∈N: S(i)

1 =j}ωif

(d(i, L(i)

1

))if j ∈ FP,

0 if j �∈ FP.

(5)

Given λ(j)1 , we compute an estimate for ρ

(j)1 using Equa-

tion (4). In order to estimate λ(j)2 , we need to consider all

the demands visiting facility j as their first preferred oneand also consider all the demands visiting facility j as their

Locating capacitated facilities 1019

Table 1. Shortest distance matrix and fraction of total population

Node

Node 1 2 3 4 5 6 7 8 9 10

1 0 25.57 34.00 12.53 83.28 12.07 83.45 102.74 74.28 77.282 25.57 0 36.10 37.47 85.38 13.49 85.55 77.17 48.72 79.383 34.00 36.10 0 43.02 49.28 32.37 49.45 73.08 44.25 43.284 12.53 37.47 43.02 0 92.29 24.19 92.46 114.64 86.19 81.515 83.28 85.38 49.28 92.29 0 81.64 19.49 59.76 57.40 16.146 12.07 13.49 32.37 24.19 81.64 0 81.81 90.66 62.21 75.657 83.45 85.55 49.45 92.46 19.49 81.81 0 40.27 37.91 35.638 102.74 77.17 73.08 114.64 59.76 90.66 40.27 0 28.83 75.909 74.28 48.72 44.25 86.19 57.40 62.21 37.91 28.83 0 73.54

10 77.28 79.38 43.28 81.51 16.14 75.65 35.63 75.90 73.54 0Weight 0.0767 0.048 0.0709 0.0578 0.07 0.0373 0.1909 0.1759 0.1881 0.0844

second one, i.e.,

λ(j)2 = λ

(j)1 +

∑{k:SP2

k=j}λ

(SP1k)

1 ρ(SP1

k)1 f

(d(LP1

k, LP2k

)),

j = 1, · · · , p. (6)

As can be seen in Equation (6), the demands that will visitfacility j as the second preferred one must have visited theirmost-preferred one first, find it full and have the willingnessto travel the distance to the second-most-preferred facilities.

Once we have λ(j)2 , it is easy to obtain ρ

(j)2 using Equa-

tion (4). Repeating the process, we have the estimate of theλ

(j)m (m = 2, · · · , p) as follows:

λ(j)m = λ

(j)m−1 +

∑{k:SPm

k =j}λ

(SP1k)

1

m−1∏n=1

ρ(SPn

k)n f

(d(LPn

k, LPn+1k

)),

j, m = 2, · · · , p. (7)

The procedure above give us approximations to the truedemand rates λ

(j)p and blocking fractions ρ

(j)p for all j. This

is a first-round approximation which we will refine later.Therefore, if ρ

(j)1 is the blocking fraction for facility j, then

λ(j)2 from Equation (6) would be the true demand rate ob-

tained from the first two legs faced by facility j. Based onthis observation, since we would like to obtain steady-statemeasures, our second round starts with the results returnedby the first-round approximation, i.e., ρ

(j)1 of the second

round is set to be equal to ρ(j)p , ∀ j obtained at the end

of the first round. Again Equation (7) is used to find λ(j)2

and then Equation (4) is used to find ρ(j)2 and proceeding in

this way using Equations (7) and (4) to find the values of λ(j)m

and ρ(j)m for all j and 2 ≤ m ≤ p, to finalize the second-round

approximation.Similarly, if ρ

(j)1 and ρ

(j)2 are the real blocking fractions

for facility j, λ(j)3 from Equation (7) will be the true demand

rate obtained from the first three legs. Therefore, at the thirdround, we set ρ

(j)1 and ρ

(j)2 to be equal to ρ

(j)p of the second

round and apply Equations (7) and (4) to obtain λ(j)3 and

ρ(j)3 sequentially. We perform the same process until our

algorithm is terminated at the pth round.Given facility location pair (S, L), the DAC algorithm

can be stated as follows:

Procedure DAC

Step 1. Derive FP. SPk, LPk, where k = 1, · · · , |FP| (car-dinality of FP).

Step 2. Set i := 1, m := 2. Calculate λ(j)1 using Equation (5)

and ρ(j)1 using Equation (4), ∀ j.

Step 3. Calculate λ(j)m using Equation (7) and ρ

(j)m using

Equation (4), ∀ j.Step 4. If m < p, set m := m + 1 and do Step 3 until m = p.Step 5. Set ρ

(j)1 := ρ

(j)p , · · · , ρ(j)

i := ρ(j)p , ∀ j.

Step 6. If i < p, set i := i + 1, m := i and go to Step 3 oth-erwise ρ(j) := ρ

(j)p , ∀ j.

Now let us reconsider the example depicted in Fig. 1. Weassume c = 3, µ = 0.3, dmax = 114.64 (maximum amongall shortest paths) and the parameter of the decay functionα = 1.

Consider the facility location vector (7, 3, 9). Again,we have FP = {1, 2, 3}, SP1 = {1, 3, 2}, SP2 = {2, 3, 1} andSP3 = {3, 1, 2}. The corresponding locations are LP1 ={7, 9, 3}, LP2 = {3, 9, 7} and LP3 = {9, 7, 3}. Set i = 1.

Step 2 of Procedure DAC calculates λ(j)1 for j ∈ {1, 2, 3}.

Recall that nodes {1, 2, 3, 4, 6} are closer to facility 2 thanto any other facility. If we compute for each one of thesenodes the weight times the fraction of demand that willtravel to facility 2 and add the results we obtain λ

(2)1 = 0.220

613. Using Equation (5) we find λ1 = {0.307 166, 0.220 613,0.319 758} and, using Equation (4), ρ1 = {0.258 92, 0.148729, 0.274 402}.

Step 3, m = 2, using Equation (7) and (4) we find λ2 ={0.365 896, 0.220 613, 0.393 141} and ρ2 = {0.328 588, 0.148729, 0.358 458}.

1020 Berman et al.

In Step 4, m = 3, back to Step 3 we find λ3 = {0.370 731,0.243 306, 0.393 141} and ρ3 = {0.334 009, 0.177 685, 0.358458}.

Step 5 fixes the first leg blocking fraction to ρ1 = {0.334009, 0.177 685, 0.358 458}, which was the last blocking frac-tion found in iteration 1 (i = 1). After Step 3 is performedtwo times for m = 2 and 3, we have new values for vectorsλ3 = {0.389 988, 0.251 786, 0.412 502} and ρ3 = {0.355 087,0.188 587, 0.378 665}.

Avoiding unnecessary details, the final result is ρ = ρ3 ={0.360 103, 0.191 375, 0.384 562}. The captured demand isthen calculated using the objective function, which returnsa value of 71.8%. A natural question is: how close ProcedureDAC output is to the result obtained by simulation? Thesimulation output is 70.5%, a relative error of less than 2%.

Procedure DAC has two major virtues. First, it yieldsvery close approximations to the true blocking fractions(numerical computations show us, as reported later in thispaper, that absolute values of the differences between es-timates for blocking fractions obtained by the DAC pro-cedure and those obtained by simulation are very small).Second, it achieves computational efficiency. Given theshortest-distance matrix and facility locations, for eachnode, to find the closest facility, it requires p − 1 compar-isons. After finding the closest facility, it takes at mostp − 1 comparisons to check whether or not this facilityis in FP. Therefore, FP can be obtained in O(np) time.Since SP1

k = fk for any k ∈ {1, · · · , v}, it takes p − 1 com-parisons to obtain SP2

k. Therefore, obtaining SPk for any kneeds (p − 1) + (p − 2) + · · · + 2 = (p − 2)(p + 1)/2 com-parisons. In other words, we can get SPk for all k in O(p3) ef-fort. Actually, if we sort the distances among p facilities first,we can obtain SPk even faster. However, as can be seen in thefollowing, this will not affect the overall complexity. In Step2, λ

(j)1 for all j ∈ FP can be calculated in O(np) time and ρ

(j)1

for all j can be calculated in O(p) time for a given c. For givenm and j, Equation (7) can be obtained in O(p2). Thus, Step 3takes O(p3) time (complexity of calculating Equation (4) isdominated by Equation (7)). Both Steps 4 and 6 call Step 3again, so the total effort on Equation (7) is O(p5). The over-all complexity of Procedure DAC is max{O(p5), O(np)}.Unless p is large, the algorithm is quite fast.

4. Heuristics

As mentioned earlier, (P1) is very difficult to solve. In thissection we take advantage of the precision of ProcedureDAC in two main heuristic procedures: a Greedy Heuristic(GH) and a Parametric Heuristic (PH). We also presenta Randomized Heuristic (RH) for benchmark purposes.RH generates randomly a given number of location of pfacilities, evaluates each one of them using Procedure DACand chooses the one that maximizes the captured demand.Next we describe GH and PH.

4.1. The GH

This heuristic is simple and efficient. We first consider a sin-gle facility location. Once we find the best single location,say node i ∈ N, using complete enumeration, we locate allremaining facilities at node i and calculate the objectivefunction value using Procedure DAC. Now we remove onefacility from node i and insert it at a node that improves theobjective function value the most. If there is no improve-ment, we leave the facility at node i and stop the algorithm;otherwise, we remove another single facility from node i re-peating the procedure until either there is no improvementor there are no facilities left at node i.

Procedure GH

Step 1. Using complete enumeration obtain the best loca-tion for a single facility. Denote this node by i.

Step 2. Set S := {1, 2, · · · , p}, L := {i, i, · · · , i}. Call Proce-dure DAC to approximate λ and ρ, and calculatethe objective function value denoted by V � usingEquations (2) and (3) where (S, L) is the input pa-rameter. Set j := 1, k := 1, L0 := L.

Step 3. Call Procedure DAC and obtain the objectivefunction value using Equations (2) and (3) where(S, Lk−1\{i} ∪ {j}) is the input parameter. Call itV (S, Lk−1, j).

Step 4. If j < n, then set j := j + 1 and go back to Step 3.Step 5. Denote by Vk = maxj∈N{V (S, Lk−1, j)}, i.e., the

best objective function value returned by Step3 and Step 4 and denote by j� = arg maxj∈N{V (S, Lk−1, j)}.

Step 6. If Vk = V �, i.e., j� = i, Stop and Lk−1 is the “opti-mal” solution. Otherwise, set Lk := Lk−1\{i} ∪ {j�},and V � := Vk.

Step 7. If k < p, then set j := 1, k := k + 1 and go back toStep 3. Otherwise, Lp is the “optimal” solution.

Now let us consider again the example depicted in Fig. 1,with no changes in the problem parameters.

The GH starts by choosing the best single location inStep 1 by complete enumeration. The best location turnsout to be node 7. Step 2 places all three facilities at thatnode (L = (7, 7, 7)) and V � = 0.6383.

In a series of passages through Steps 3 and 4 togetherthe location of the third facility is evaluated for all possiblelocations in N. The best objective function value is returned,the location vector (7, 7, 3), in Step 5. Step 6 records thissolution as the best tentative solution and facility 3 is fixedat node 3 and V � = 0.7089.

The algorithm returns to Steps 3 and 4, the location ofthe second facility is evaluated for all possible locations inN. Step 5 records the best location for the second facility, inthis example (7, 9, 3), and Step 6 includes it as best currentsolution and V � = 0.7180.

In the final evaluation, when we test the location of facil-ity 1, it is found that we can not do better by moving that

Locating capacitated facilities 1021

facility from node 7. Thus, the GH returns (7, 9, 3) witha captured demand of 71.8%. The actual optimal objec-tive function value for this example obtained by completeenumeration is 72.2% achieved from the location vector{7, 9, 6}.

4.2. The PH

Recall that:

f (d(i, L)) = max

{0, 1 − d(i, L)

αdmax

},

where L is the location set of facilities and d(i, L) =minj∈L{d(i, j)}.

Suppose that the first-leg demand rate, λ(j)1 , is significantly

smaller than the service rate for each j. Then only a smallfraction of customers would travel to the second facilityand thus traveling to more than one facility can be ignored.In this case, the solution of the k-median problem shouldprovide a good solution to our problem.

However, for sufficiently large values of dmax, if λ(j)1 is

significantly larger than the service rate for each j, mostcustomers would be willing to travel long distances andthus intuitively it would make sense to locate all facilities atthe 1-median solution which minimizes the total distancetraveled.

Based on this intuitive reasoning we developed a heuristicthat works as follows: first, we solve the p-median problemwith weights wi(1 − f (d(i, L))). Let L be the obtained loca-tion set. Then we locate the servers accordingly to L andcalculate Vp = V (L). Next we solve a (p − 1)-median prob-lem, locate the servers as the solution indicates and locatethe extra server at the location with the largest blockingfraction among the p − 1 ones. If the cost of this new so-lution, V(p−1), is less than Vp, we continue by solving a(p − 2)-median problem, etc. The process is repeated untileither no improvement is made or there are no more prob-lems to solve. The best solution is recorded and accepted asthe solution to the PH.

The intuition behind this procedure is that, instead ofconsidering the blocking fractions as functions of location,we are implicitly estimating the “blocking fraction” as a pa-rameter. That is, when p distinct locations are considered(the solution of the p-median) we are implicitly assumingthat there is a low blocking fraction so no more than onefacility location is visited. When we consider a solution of(p − j) distinct facility locations for some 0 < j < p, we im-plicitly assume that more than one facility will be visitedbefore obtaining service, thus we want to increase the “reli-ability” of the solution by adding the extra j facilities to thelocation with the largest blocking fraction. As we shall seein the following, this procedure works quite well with somevalues of dmax because the procedure ignores customers’sensitivity to distance.

We now state the integer programming formulation usedin the PH. The decision variables in the model are

xij ={

1 if node i is served by the facility at node j,0 otherwise.

yj ={

1 if a facility is located at node j,0 otherwise.

We formulate an integer program as follows:

(MP) maxn∑

i=1

n∑j=1

ωi(1 − f (d(i, j)))xij,

subject ton∑

j=1

xij = 1, i = 1, · · · , n, (8)

xij ≤ yj, i, j = 1, · · · , n, (9)n∑

j=1

yj = k, (10)

xij, yj ∈ {0, 1}, i, j = 1, · · · , n, (11)

where k (equal to p − j + 1 in the jth iteration) is thenumber of facilities.

Formulation (MP) corresponds to the classical k-medianproblem where we use minimization with “distance”f (d(i, j)) instead of d(i, j). Therefore, we can use any heuris-tic for the k-median problem to solve (MP). In this paperwe use a Lagrangian Relaxation Heuristic (LRH) to solve(MP) (see Narula et al. (1977) and Daskin (1995) for moredetails). We note that Lagrangian relaxation is one of themost computationally attractive heuristics for the k-medianproblem. Lagrangian relaxation using a subgradient opti-mization method gives a very tight lower bound most of thetime (less than 0.15%, see Daskin (1995)).

Before presenting the PH algorithm we want to show thatusing only (MP) can deliver a very bad solution to (P1).Consider VH as the best objective function value amongthe GH, PH and the RH. Define RE = (VH − VM)/VH,where VM is the objective function value returned when thesolution to (MP) is applied.

Proposition 1. Let IN be the set of all possible instances of(P1), then:

RESUP = sup{RE[I ]|I ∈ IN} = 1. (12)

Proof. Obviously, RE cannot be greater than unity. Con-sider a network of size n with c = 1 and α → 0, implyingthat customers are very sensitive to distance and are notwilling to travel farther than their own home nodes. Alsolet p = n, wi = δ for i ∈ {2, ..., n} and w1 = 1 − (n − 1)δ. Itis easy to see that the solution to (MP) will be {1, ..., n} forany choice of µ. Thus, the captured demand in this system

1022 Berman et al.

is given by (recall that λ = 1):

δ

δ + µ

)(n − 1) + (1 − (n − 1)δ)

µ

(1 − (n − 1)δ) + µ

→ µ

1 + µas δ → 0.

That solution is independent of the number of nodes inthe network. However, when δ → 0, the greedy solution isto locate all servers on node 1. Suppose further that n →∞, implying that the M/M/∞/∞ queueing system willcapture every demand even for a small positive value of µ.Thus, the relative error for this specific instance is given by

RE = 1 − µ

1 + µas δ → 0 and n → ∞.

It follows that as µ → 0, RE → 1 as claimed in Equation(12) above. �

The result above shows that for an unbalanced network(nodes with high variability of weights) and large cus-tomers’ sensitivity to travel, the use of the classical approachto location problems can deliver a poor solution when theobjective is to maximize captured demand under a queue-ing setting. However, if each facility has a large capacityin comparison to the total demand then the two problemsbecome equivalent.

Now we are ready to state the PH.Procedure PH

Step 1. Set k := p + 1, V � = 0, L� = ∅.Step 2. Set k := k − 1. If k = 0 Stop.Step 3. Call Procedure LRH to solve (MP) and obtain the

solution X̂ = (x̂1, · · · , x̂k) (may not be optimal).Step 4. Set m := k. Set S := {1, 2, · · · , m} and L = X̂ . If

m = p, go to Step 7, otherwise repeat Step 5 andStep 6 until m = p.

Step 5. Call Procedure DAC to approximate λ(j) and ρ(j)

(j = 1, · · · , m) using (S, L) as the input parameters.Step 6. Suppose that ρ(j�) is the largest among ρ(j) (j =

1, · · · , m), i.e., facility j� is the one with the largestblocking fraction (ties are broken arbitrarily). Setm := m + 1, S = S ∪ {m}, L = L ∪ {x̂j�}.

Step 7. Using the location pair (S,L), call Procedure DAC,and compute the objective function value Vk usingEquations (2) and (3). If Vk > V �, set V � = Vk andL� = L. Go to Step 2. Otherwise, Stop.

4.3. An upper bound

The LRH works by adjusting the Lagrangian multipliers tonarrow the gap between the lower and upper bounds. DefineV− to be the objective function value of the Lagrangiandual problem when k = p in Procedure PH. Define ρ (a, p)to be the blocking fraction or the proportion of time anM/M/p/cp queue has cp customers, when customers arriveat rate a. Then we have the following proposition.

Proposition 2. The function (1 − ρ (V−, p)) is an upperbound for the maximum captured demand.

Proof. The upper bound used is calculated using the fol-lowing two observations:

1. All customers in order to obtain service have to go atleast to the closest facility. Therefore, V− is an upperbound on the amount of demand that will arrive to thefirst preferred facility, because we do not consider anyleg traveled other than the first.

2. If there is no cost to travel from the first facility to thesecond facility and onwards, no additional demand islost because of distance sensitivity, and we know thatthe actual queueing system cannot be more efficient incapturing demand than an M/M/p/cp system. Thesetwo observations together complete the proof.

As will be shown in the following section, both heuris-tics perform well when evaluated using the upper bounddeveloped above. We will also show that the PH is not asgood as the GH in terms of time efficiency for large-scaleproblems. However, in terms of solution quality, althoughin most cases the greedy procedure provides a superior so-lution, there is no dominance.

5. Computational experiments

In order to test the two heuristic algorithms, an extensive setof computational experiments was conducted. All runs wereperformed on a PC equipped with 677 MHZ processor and128M RAM. The procedures were coded in ANSI C. Theproblem data used in the experiments were generated ran-domly as follows. The Cartesian coordinates of the nodeswere generated over the interval (0, 100) uniformly. Thennodes were connected randomly until a tree was formed.Finally, a random number of links (this random integernumber is between zero and n(n − 1)/2 − (n − 1), where nis the cardinality of the network) were added to the treegenerated to create a network. All demand weights weregenerated over the interval (0. 1) randomly. The length ofeach link was calculated using the Euclidean distance for-mula. For all problem instances, we ensured that no twoinstances shared a common random seed.

First, we investigate how good the Procedure DAC is,compared to simulation. As described above, we randomlygenerated 180 instances with 30 and 50 nodes each. For eachinstance we generated a random solution and computedthe objective function value obtained using DAC and theanalogous value obtained using simulation. The results areshown in Tables 2 and 3. The column “Relative error” givesintervals of the difference between the objective functionvalue obtained using DAC and simulation divided by thelatter. The column “Frequency” is the number of solutionswithin the class.

Locating capacitated facilities 1023

Table 2. Comparing DAC with simulation for the 30-nodenetwork

CumulativeRelative error (%) Frequency percentage (%)

[0, 0.1280] 124 68.89(0.1280, 0.2559] 18 78.89(0.2559, 0.3839] 12 85.56(0.3839, 0.5118] 6 88.89(0.5118, 0.6398] 5 91.67(0.6398, 0.7677] 2 92.78(0.7677, 0.8957] 2 93.89(0.8957, 1.0236] 5 96.67(1.0236, 1.1516] 3 98.33(1.1516, 1.2795] 1 98.89(1.2795, 1.4075] 2 100.00

As we can see from the tables, about 97% of the solutionsare within 1.00% of the relative error. The results are suffi-ciently good to conclude that Procedure DAC works verywell.

In Tables 4, 5 and 6, we compare the PH, the GH and theRH. In the RH we randomly generate 100 locations of pfacilities on the network. The service rate µ varies accord-ing to |N| and p to avoid some extreme cases that add novalue to the experiment. Table 4 contains computationalresults for |N| = 30. Ten instances were generated for eachcombination of p ∈ {4, 7, 10}, c ∈ {2, 5} and α ∈ {0.15, 0.3}.For the ten instances from each combination, we obtain theAverage Number of distinct Locations (ANL), the AverageObjective Function Value (AOFV), the average computa-tional time (labeled as Time in the tables), the fraction of teninstances that each heuristic gives the best solution amongthe three heuristics (labeled as Best in the tables), and theworst-case ratio (ZU − ZH)/ZU (Ratio), where ZU is theupper bound of the optimal objective function value andZH is the objective function value of heuristic H.

We note that even though ANL is very close to p in mostinstances in Tables 4-6, it is not the case in general. For net-

Table 3. Comparing DAC with simulation for the 50 nodenetwork

CumulativeRelative error (%) Frequency percentage (%)

(0, 0.2373] 151 83.89(0.2373, 0.3559] 6 87.15(0.3559, 0.4745] 9 92.18(0.4745, 0.5932] 3 93.85(0.5932, 0.7118] 0 93.85(0.7118, 0.8304] 3 95.53(0.8304, 0.9491] 1 96.09(0.9491, 1.0677] 3 97.77(1.0677, 1.1863] 1 98.32(1.1863, 1.3050] 3 100.00

works with large variability of weights, ANL can be muchsmaller than p (Proposition 1 shows an extreme case of this).Therefore, using (MP) as a heuristic might be dangerous.Moreover, solving (MP) is the starting point of the PH.

We repeat similar experiments for |N| = 50 (Table 5)with combinations of p ∈ {5, 10, 15}, c ∈ {2, 5} and α ∈{0.1, 0.25}. For |N| = 80 (Table 6), we limit p to p = 8 withcombinations of c ∈ {2, 5} and α ∈ {0.05, 0.1}.

Overall, the GH and the PH outperform the RH in termsof worst-case ratio, which is the main performance criterionof our interest. The average worst-case ratio of the RH is 0.2,0.23 and 0.26 respectively for |N| = 30, 50, 80. For |N| = 30and |N| = 80, the PH and GH have the same average worst-case ratio of 0.11 and 0.06, respectively. This implies thatboth heuristics perform even better for a larger network.For |N| = 50, the average worst-case ratio of the GH is 0.1,which is slightly better than the value of 0.11, recorded forthe PH.

Note that when µ increases the worst-case ratios of thePH and the GH get smaller. When µ increases, the systemis overall less congested and thus tends to accept more cus-tomers who are also accepted by the M/M/p/cp system. Inthis case, it would yield a better objective function value byspreading facilities over different nodes and thus acceptingmore customers who might be sensitive to distances.

The RH takes the least computational time with smallestobjective function values. The GH outperforms PH and ishighly efficient in terms of computational time. It is inter-esting to observe that for |N| = 50 and p = 15, GH takesmore time than for |N| = 80 and p = 8, which shows thatcomputational time is primarily affected by p. For |N| = 80,the GH is much more efficient than the PH.

Table 7 address the final question: what is the relativeerror between the GH and PH solution values (using DAC)and the actual optimal solution values, derived by completeenumeration where the Objective Function Value (OFV) iscalculated by simulation? The experiments were done ona small random network of 12 nodes which enables us tosolve problems by complete enumeration. The results areencouraging, with the GH returning the optimal solutionin more than 50% of the cases and the Relative Errors (RE)are small. The PH returns the optimal solutions about 20%of the time with small relative errors (average is even smallerthan for the GH).

6. Additional formulations

We now change our focus from (P1) to problems that ad-dress in some sense the same objective of capturing demand,but assuming a different customer behavior. By looking atdifferent customer behavior we can obtain several interest-ing insights.

In (P2), which has a similar formulation as (P1), we as-sume that for a customer from i who is currently visitingfacility k the probability that facility j will be visited next is

Tab

le4.

Com

puta

tion

alre

sult

sfo

r|N

|=30

PH

GH

RH

#|N

|p

µc

αA

NL

AO

FV

Tim

eB

est

Rat

ioA

NL

AO

FV

Tim

eB

est

Rat

ioA

NL

AO

FV

Tim

eB

est

Rat

io

130

40.

132

0.15

40.

265.

530.

70.

204

0.26

0.21

10.

203.

90.

240.

190

0.26

230

40.

132

0.3

3.4

0.34

2.94

0.2

0.23

40.

350.

200.

90.

213.

90.

340.

170.

10.

243

304

0.13

50.

154

0.32

4.72

0.7

0.08

40.

330.

191

0.07

40.

290.

160

0.19

430

40.

135

0.3

3.9

0.41

3.90

0.3

0.14

40.

420.

190.

90.

134

0.39

0.16

00.

175

304

0.25

20.

154

0.33

4.23

0.9

0.10

40.

330.

180.

90.

104

0.30

0.16

00.

196

304

0.25

20.

33.

90.

442.

980.

40.

154

0.45

0.18

0.6

0.14

40.

410.

160

0.20

730

40.

255

0.15

40.

363.

680.

90.

014

0.36

0.18

10.

014

0.31

0.16

00.

148

304

0.25

50.

34

0.50

3.00

0.9

0.03

40.

500.

190.

60.

044

0.46

0.16

00.

129

304

0.38

20.

154

0.32

4.56

0.9

0.04

40.

320.

191

0.04

40.

290.

160

0.14

1030

40.

382

0.3

40.

463.

380.

70.

094

0.46

0.18

0.7

0.09

40.

420.

160.

10.

1511

304

0.38

50.

154

0.38

4.51

10.

004

0.38

0.19

10.

004

0.33

0.16

00.

1212

304

0.38

50.

34

0.52

3.39

10.

014

0.52

0.19

0.8

0.01

40.

470.

160

0.10

1330

70.

072

0.15

6.8

0.34

11.2

50.

40.

277

0.34

1.06

10.

276.

90.

310.

600

0.34

1430

70.

072

0.3

60.

387.

940

0.22

6.9

0.39

1.05

10.

206.

80.

370.

600

0.25

1530

70.

075

0.15

6.7

0.42

10.4

40.

40.

157

0.42

1.06

10.

147

0.37

0.59

00.

2516

307

0.07

50.

35.

70.

467.

610

0.08

6.6

0.47

1.06

10.

066.

90.

440.

600

0.11

1730

70.

142

0.15

70.

4510

.95

0.7

0.17

70.

451.

060.

90.

176.

90.

380.

600

0.29

1830

70.

142

0.3

6.4

0.54

7.73

00.

226.

80.

561.

041

0.20

70.

520.

590

0.25

1930

70.

145

0.15

70.

5110

.39

0.6

0.03

70.

511.

060.

90.

036.

90.

420.

590

0.20

2030

70.

145

0.3

6.9

0.63

8.10

0.5

0.08

70.

631.

050.

60.

086.

90.

570.

590

0.17

2130

70.

212

0.15

70.

4710

.43

0.8

0.09

70.

471.

050.

70.

097

0.41

0.60

00.

2222

307

0.21

20.

36.

80.

596.

660.

40.

147

0.60

1.05

0.7

0.13

6.9

0.54

0.60

00.

2123

307

0.21

50.

157

0.51

10.3

51

0.01

70.

511.

061

0.01

6.9

0.43

0.60

00.

1624

307

0.21

50.

37

0.67

7.31

0.8

0.03

70.

671.

060.

30.

036.

90.

590.

600

0.14

2530

100.

052

0.15

9.3

0.38

18.5

60

0.24

9.9

0.38

4.45

10.

249.

20.

341.

930

0.32

2630

100.

052

0.3

8.4

0.42

11.7

20

0.17

8.6

0.43

4.36

10.

149

0.40

1.94

00.

1927

3010

0.05

50.

159.

30.

4518

.17

00.

1010

0.46

4.49

10.

089.

50.

401.

940

0.19

2830

100.

055

0.3

8.7

0.48

13.7

60

0.05

9.1

0.49

4.40

0.9

0.03

8.9

0.47

1.94

0.1

0.06

2930

100.

12

0.15

9.7

0.51

18.6

70

0.22

100.

524.

681

0.21

9.7

0.44

2.02

00.

3330

3010

0.1

20.

39.

20.

608.

970.

20.

259.

90.

624.

560.

80.

239.

50.

571.

970

0.29

3130

100.

15

0.15

9.9

0.62

18.8

50.

60.

0710

0.62

4.60

10.

079.

70.

522.

000

0.23

3230

100.

15

0.3

9.4

0.72

10.5

40.

20.

1110

0.73

4.62

0.8

0.10

9.8

0.65

1.98

00.

2033

3010

0.15

20.

1510

0.57

18.2

00.

70.

1310

0.57

4.60

0.8

0.13

9.7

0.48

1.99

00.

2634

3010

0.15

20.

39.

70.

6713

.76

00.

159.

90.

684.

611

0.14

9.7

0.63

1.99

00.

2135

3010

0.15

50.

1510

0.66

18.4

70.

90.

0210

0.66

4.51

10.

029.

60.

531.

950

0.20

3630

100.

155

0.3

9.9

0.77

12.9

40.

50.

0410

0.77

4.52

0.5

0.04

9.5

0.67

1.97

00.

169.

410.

480.

111.

930.

870.

110.

910.

008

0.20

1024

Tab

le5.

Com

puta

tion

alre

sult

sfo

r|N

|=50

PH

GH

RH

#|N

|p

µc

αA

NL

AO

FV

Tim

eB

est

Rat

ioA

NL

AO

FV

Tim

eB

est

Rat

ioA

NL

AO

FV

Tim

eB

est

Rat

io

150

50.

12

0.1

50.

2249

.07

0.9

0.16

50.

222.

181

0.16

50.

190.

910

0.27

250

50.

12

0.25

4.5

0.33

50.3

90.

20.

255

0.33

2.24

0.8

0.23

50.

310.

940

0.30

350

50.

15

0.1

50.

2753

.74

0.9

0.04

50.

272.

230.

90.

045

0.23

0.93

00.

174

505

0.1

50.

254.

80.

4049

.75

0.1

0.16

50.

412.

181

0.14

50.

370.

950

0.22

550

50.

22

0.1

50.

2652

.49

10.

065

0.26

2.38

10.

064.

90.

220.

970

0.21

650

50.

22

0.25

50.

4140

.47

0.6

0.14

50.

412.

120.

40.

145

0.37

0.89

00.

227

505

0.2

50.

15

0.25

48.5

71

0.00

50.

252.

121

0.00

50.

220.

900

0.15

850

50.

25

0.25

50.

4741

.89

0.9

0.02

50.

472.

120.

60.

035

0.42

0.89

00.

149

505

0.3

20.

15

0.26

48.0

71

0.03

50.

262.

111

0.03

50.

210.

890

0.20

1050

50.

32

0.25

50.

4641

.39

0.7

0.08

50.

462.

110.

60.

085

0.40

0.89

00.

2011

505

0.3

50.

15

0.29

46.1

20.

90.

005

0.29

2.11

10.

005

0.23

0.89

00.

1812

505

0.3

50.

255

0.48

39.8

51

0.01

50.

482.

130.

40.

015

0.42

0.89

00.

1413

5010

0.05

20.

19.

80.

3112

3.57

0.6

0.28

9.9

0.31

22.0

51

0.28

9.4

0.26

5.82

00.

4014

5010

0.05

20.

259.

10.

3910

9.26

00.

229.

70.

4021

.83

10.

209.

40.

375.

850

0.26

1550

100.

055

0.1

9.9

0.39

120.

270.

30.

1510

0.39

22.0

70.

90.

1410

0.31

5.84

00.

3016

5010

0.05

50.

258.

90.

4611

3.99

00.

089.

50.

4722

.04

10.

059.

70.

455.

820

0.11

1750

100.

12

0.1

100.

3912

2.48

0.8

0.13

100.

3922

.04

10.

139.

90.

315.

860

0.31

1850

100.

12

0.25

9.2

0.54

107.

420.

20.

2210

0.56

22.0

40.

80.

209.

80.

505.

830

0.29

1950

100.

15

0.1

100.

4512

3.84

0.9

0.02

100.

4522

.05

0.9

0.02

9.8

0.35

5.86

00.

2520

5010

0.1

50.

2510

0.64

105.

020.

40.

0810

0.64

22.0

40.

60.

089.

80.

565.

830

0.20

2150

100.

152

0.1

100.

4312

2.34

0.8

0.08

100.

4322

.06

0.9

0.08

9.9

0.34

5.84

00.

2622

5010

0.15

20.

259.

70.

6011

3.89

0.4

0.13

100.

6122

.07

0.6

0.12

100.

545.

840

0.22

2350

100.

155

0.1

100.

4512

3.14

0.9

0.00

100.

4522

.05

0.9

0.00

9.8

0.35

5.86

00.

2224

5010

0.15

50.

2510

0.68

103.

570.

30.

0410

0.68

22.1

30.

70.

049.

80.

595.

840

0.16

2550

150.

032

0.1

14.3

0.36

213.

950

0.28

14.9

0.36

129.

901

0.27

140.

3124

.88

00.

3826

5015

0.03

20.

2512

.80.

4117

0.68

00.

1712

.20.

4311

9.70

10.

1313

.30.

4024

.83

00.

1927

5015

0.03

50.

114

.50.

4421

7.79

00.

1214

.90.

4413

0.59

10.

1114

.70.

3725

.47

00.

2728

5015

0.03

50.

2513

.30.

4817

1.63

00.

0513

.90.

4912

7.48

10.

0214

.30.

4624

.87

00.

0829

5015

0.07

20.

114

.90.

4921

0.71

0.3

0.20

150.

4913

0.28

0.8

0.20

14.3

0.39

24.9

80

0.36

3050

150.

072

0.25

14.3

0.61

162.

700

0.25

14.8

0.62

131.

231

0.23

14.2

0.56

25.3

00

0.30

3150

150.

075

0.1

14.9

0.58

231.

750.

40.

0515

0.58

144.

241

0.05

14.3

0.44

27.3

80

0.27

3250

150.

075

0.25

14.5

0.72

186.

990.

10.

1115

0.73

147.

600.

90.

1014

.40.

6428

.13

00.

2133

5015

0.1

20.

115

0.53

235.

510.

70.

1115

0.54

148.

750.

80.

1113

.90.

4228

.24

00.

3134

5015

0.1

20.

2514

.70.

6719

1.52

0.1

0.15

150.

6815

5.79

0.9

0.13

14.1

0.60

29.1

50

0.24

3550

150.

15

0.1

14.9

0.61

1187

.28

0.8

0.02

150.

6182

2.02

0.9

0.02

14.4

0.46

165.

340

0.27

3650

150.

15

0.25

150.

7815

74.6

90.

70.

0415

0.77

936.

430.

30.

0414

.40.

6717

5.75

00.

1718

6.27

0.50

0.11

94.8

50.

850.

1019

.04

0.00

0.23

1025

Tab

le6.

Com

puta

tion

alre

sult

sfo

r|N

|=80

PH

GH

RH

#|N

|p

µc

αA

NL

AO

FV

Tim

eB

est

Rat

ioA

NL

AO

FV

Tim

eB

est

Rat

ioA

NL

AO

FV

Tim

eB

est

Rat

io

180

80.

062

0.05

80.

1910

78.3

80.

70.

128

0.19

87.2

41

0.12

80.

1516

.35

00.

302

808

0.06

20.

18

0.24

1057

.98

0.4

0.20

80.

2487

.19

0.9

0.19

7.9

0.20

16.3

30

0.35

380

80.

065

0.05

80.

2310

75.9

00.

80.

028

0.23

87.1

31

0.02

80.

1816

.30

00.

234

808

0.06

50.

18

0.30

1052

.43

0.9

0.05

80.

3087

.25

0.9

0.06

80.

2416

.45

00.

255

808

0.19

20.

058

0.22

1075

.45

0.9

0.02

80.

2287

.20

10.

028

0.17

16.3

50

0.25

680

80.

192

0.1

80.

2910

54.1

61

0.04

80.

2987

.19

0.8

0.04

80.

2416

.36

00.

237

808

0.19

50.

058

0.23

1076

.94

0.9

0.00

80.

2387

.20

0.9

0.00

80.

1816

.33

00.

228

808

0.19

50.

18

0.31

1076

.29

10.

008

0.31

87.1

10.

50.

008

0.23

16.2

90

0.25

1068

.44

0.83

0.06

87.1

90.

880.

0616

.35

0.00

0.26

1026

Locating capacitated facilities 1027

Table 7. Comparing the GH and PH with complete enumeration using simulation for 12-node network with p = 3, µ = 0.3 and c = 1

OFV of OFV of RE of GH found OFV of RE of Parametric foundα simulation GH GH (%) optimal solution? PH PH (%) optimal solution?

0.25 0.3578 0.3546 0.92 Yes 0.3546 0.92 Yes0.75 0.4932 0.5002 1.43 No 0.4991 1.20 No1.25 0.5466 0.5609 2.62 No 0.5609 2.62 No0.25 0.3465 0.3500 1.00 Yes 0.3376 2.57 No0.75 0.5028 0.5131 2.04 No 0.4938 1.78 No1.25 0.5511 0.5696 3.37 No 0.5627 2.11 No0.25 0.3379 0.3361 0.52 No 0.3367 0.36 Yes0.75 0.4868 0.4933 1.32 Yes 0.4673 4.01 No1.25 0.5403 0.5577 3.21 No 0.5485 1.50 No0.25 0.3580 0.3653 2.04 Yes 0.3589 0.28 No0.75 0.5083 0.5165 1.63 Yes 0.4953 2.55 No1.25 0.5511 0.5691 3.26 Yes 0.5596 1.53 No0.25 0.3686 0.3688 0.06 Yes 0.3688 0.06 Yes0.75 0.5116 0.5225 2.14 Yes 0.4946 3.31 No1.25 0.5567 0.5726 2.85 No 0.5660 1.67 No0.25 0.3495 0.3533 1.07 Yes 0.3497 0.05 No0.75 0.4862 0.4953 1.88 Yes 0.4594 5.51 No1.25 0.5423 0.5592 3.12 No 0.5477 1.00 No0.25 0.3535 0.3513 0.60 Yes 0.3513 0.60 Yes0.75 0.4753 0.4887 2.82 No 0.4809 1.18 No1.25 0.5379 0.5617 4.42 No 0.5617 4.42 No

Average 2.01 1.87

Percentage of finding optimal solution (%) 52.38% 19.05%

a function of the total distance traveled from i to k plus theleg from k to facility j. Thus, the contribution that node imakes to the objective function value in (P2) is

VP2i (L) = wi

p∑j=1

[1 − ρ

(S(i)

j

)] j∏k=1

ρ(S(i)

k−1

)

f

(k∑

t=1

d(L(i)

t−1, L(i)t

)). (13)

The problem is then to maximize the total expected de-mand captured by p facilities as follows:

(P2) VP2(L∗) = maxL⊆N

{VP2(L) =∑i∈N

VP2i (L) : |L| = p}.

(14)Note that the customer behavior in (P2) is not memo-

ryless as it was in (P1). Here, customers having the samesearch path as in (P1) will have a smaller expected numberof facilities visited. Hence, the demand captured in (P2),which we call P2[L], is always smaller than or equal to thedemand captured in (P1), which we call P1[L], as is statedin observation 1.

Observation 1. If the distance tolerance function f is non-increasing, then for any set of facility locations L, P1[L] ≥P2[L].

A natural problem to investigate is the problem whencustomers receive information so they can travel directly to

an available facility. We call this (P3). Let

VP3i (L) = wi

p∑j=1

[1 − ρ

(S(i)

j

)]f(d(i, L(i)

j

)) j∏k=1

ρ(S(i)

k−1

),

(15)

(P3) VP3(L∗) = maxL⊆N

{VP3(L) =

∑i∈N

VP3i (L) : |L| = p

}.

(16)

Obviously due to the triangle inequality property, cus-tomers will always travel less in the setting of (P3) than inthe setting of (P2).

Observation 2. If the distance tolerance function f is non-increasing, then for any set of facility locations L, P3[L] ≥P2[L].

The relationship between P1[L] and P3[L] is not clear.On the one hand, by knowing the total distance traveled toobtain service, customers are less likely to begin to travel atall in the setting of (P3). On the other hand, the distancetraveled (search path) to obtain service from the jth facilityin (P1) may be much larger than directly traveling from nodei to facility j in (P3).

Comparing the last problem with the other two give usa sense of how much is lost (or gained) due to customers’lack of information about facility congestion.

1028 Berman et al.

Table 8. Comparing (P1), (P2), (P3) and (BKW)

OFV of OFV of OFV of OFV ofα Solution (P1) (P2) (BKW) (P3)

0.5 S1 = {1, 7, 9} 0.626 0.620 0.607 0.631S2 = {1, 7, 9} 0.626 0.620 0.607 0.631

SB = {1, 7, 9} 0.626 0.620 0.607 0.6311.0 S1 = {6, 7, 9} 0.722 0.698 0.660 0.742

S2 = {1, 7, 9} 0.720 0.699 0.662 0.740SB = {1, 7, 9} 0.720 0.699 0.662 0.740

1.5 S1 = {3, 7, 9} 0.765 0.732 0.669 0.776S2 = {6, 7, 9} 0.764 0.735 0.677 0.769

SB = {1, 7, 9} 0.762 0.735 0.678 0.7822.0 S1 = {7, 9, 9} 0.791 0.738 0.510 0.782

S2 = {6, 7, 9} 0.787 0.760 0.685 0.780SB = {1, 7, 9} 0.785 0.759 0.686 0.779

Finally, we consider (BKW), introduced by Berman,Krass and Wang (2006). They use the probability of vis-iting a facility as a function of the distance traveled, butcustomers only travel to the closest facility and are eitherserved or lost. Clearly, this problem cannot capture moredemand than any of the problems above. Hence,

Observation 3. If the distance tolerance function f is non-increasing, then for any set of facility locations L, BKW[L]≤ min{P1[L], P2[L], P3[L]} = P2[L].

To shed more light on this discussion we present an exam-ple for which we demonstrate the differences in the objectivefunction values P1[L], P2[L], P3[L] and BKW[L]. Let S1,S2, S3 and SB be the corresponding optimal solutions of(P1), (P2), (P3) and (BKW).

Although Procedure DAC works very well for (P1) and(P2), it does not deliver good results for (P3). Therefore, wewill not attempt to optimize (P3) but compute the objec-tive function value using simulation for any given facilitylocation set.

We use Fig. 1 with all parameters having the same valuesstated earlier except for α that varies in {0.5, 1.0, 1.5, 2.0}.The results are summarized in Table 8. For each problem westate the optimal solution and the OFV. The table comparesthe objective function values of the optimal solutions to thethree problems.

For instance, when α = 1.0, S2, the optimal solutionto (P2), is {1, 7, 9} and the objective function value ofS2, P2[S2] = 0.699. Also, P1[S1] = 0.722 and BKW[SB] =

Table 9. Comparing (P1), (P2), (P3) and (BKW) for the 25-nodecase with µ = 0.5, α = 1.25 and c = 1

OFV of OFV of OFV of OFV ofSolution (P1) (P2) (BKW) (P3)

S1 = {5, 21, 23} 0.670 0.608 0.504 0.709S2 = {5, 16, 18} 0.662 0.619 0.541 0.701

SB = {4, 8, 22} 0.640 0.600 0.547 0.704

0.662. From the same table, if we compute the objectivefunction value of (BKW) using the solution for (P1) wehave that BKW[S1] = 0.660 and P3[S1] = 0.742. Note that,when α = 2.0, P3[S1] < P1[S1], implying that providingcustomers with information about facility congestion doesnot help to capture more demand. However, when α = 1.0,P3[S1] > P1[S1]. Hence, as customers are more prone totravel an extra leg in search of service the decision makeris less willing to provide that information. If customers, onthe other hand, are very sensitive to distance, giving theinformation is beneficial.

This change in the relation of objective function valuesbetween (P1) and (P3) does not occur between (P2) and(P3). Note that it is always better to provide informationabout facility congestion if customers behave as assumedin (P2).

Another interesting question is how much is lost whenusing the solution to (BKW), as a proxy for the solution to(P1). In this particular example, it can be easily seen fromthe tables above that there is no major loss in doing so. How-ever, in general this may be dangerous. For example, for aninstance with 25 nodes and µ = 0.5, α = 1.25 and c = 1,as shown in Table 9, the relative difference between P1[SB]and P1[S1] is close to 4.5% but even more relevant, the ab-solute difference is 3%, a percentage of demand that goesdirectly to the company’s bottom line. We omit the resultsfor other values of α for that same instance but similar val-ues in the differences were found. In summary, instancesreturning up to 6% in the absolute differences are notuncommon.

7. Conclusions

In this paper we extended the model presented by Berman,Krass and Wang (2006), where distance-sensitive customersonly obtain service from the closest facility. We presentedthree alternatives to that model.

In the first model, customers travel from one facility toanother until service is obtained or their sensitivity to dis-tance traveled forces them to abandon the search. In thismodel we consider that the sensitivity is a function of thedistance between the current location and the next-closestfacility; the distance traveled up to that moment has noimpact in the upcoming decision.

In the second model, customers take into account the to-tal distance traveled from the home nodes. The third modelconsiders the case where the decision maker gives full infor-mation to customers about congestion. Customers can thentravel directly to the closest facility that is not congested.

We showed the relationship between the objective func-tions of these three models, and discussed some bounds. Thechoice of models should be done according to customers’behavior. Alternatively, the decision maker may be capableof forcing the customers to behave in a way that impacts theobjective function value better. Note that the first and third

Locating capacitated facilities 1029

models do not have a fixed relationship in terms of objec-tive function values. Thus, if customers behave according tothe first model then they can behave differently if informa-tion about congestion is given. Alternatively, by omittingthat information the behavior can shift from the one de-scribed by the third model to that considered in the firstmodel.

Another contribution of this paper is the approximationalgorithm (DAC) to calculate objective function values. TheDAC procedure is a valuable tool to get approximate val-ues given that the values obtained by simulation are timeexpensive. Even small problems can take close to an hourto obtain the objective function value through simulation.However, for any one of the heuristics presented the objec-tive function value has to be computed many times.

Future research can be done in the direction of findingways to optimize the second and third models which we justtouched on. We believe that while the methodology to opti-mize (P2) will be quite similar to that of (P1), (P3) requiresa completely different approach since for each point there isa different ordering of preference for the visiting facilities.A hint of the complexity of (P3) can be seen in the workingpaper by Berman, Krass and Menezes (2006b), where theprobability of finding an operating facility is not a functionof facility location but a fixed exogenous parameter.

Finally, empirical research using our models with theobjective of addressing the issues of customers’ behaviorcould be interesting. The real impact of locating facilitiesunder congestion is just starting to be understood fromthe theoretical perspective but very little has been done toevaluate the validity and relevance of our models from theempirical side.

References

Ball, M. and Lin, F. (1993) A reliability model applied to emergencyservice vehicle location. Operations Research, 41, 18–36.

Batta, R., Dolan, J. and Krishnamurthy, N. (1989) The maximal ex-pected covering location problem: revisited. Transportation Science,23, 277–287.

Berman, O., Chiu, S., Larson, R., Odoni, A. and Batta, R. (1990) Locationof mobile units in a stochastic environment, in Discrete LocationTheory, Mirchandani, P. and Francis, R. (eds), Wiley, pp. 503–548.

Berman, O. and Krass, D. (2002) Facility location problems with stochas-tic demands and congestion, in Location Analysis: Applications andTheory, Drezner, Z. and Hamacher, H. W. (eds), pp. 329–371.

Berman, O., Krass, D. and Menezes, M. (2006a) MiniSum with imperfectinformation—minimizing incovenience. Working paper, Joseph L.Rotman School of Management, University of Toronto, TorontoCanada.

Berman, O., Krass, D. and Menezes, M. (2006b) Reliability issues andstrategic co-location in m-median problems: median problem withunreliable facilities. Operations Research, 55(2), 332–350.

Berman, O., Krass, D. and Wang, J. (2006) Locating service facilities toreduce lost demand. IIE Transactions, 38, 933–946.

Borras, F. and Pastor, J. (2002) The ex-post evaluation of the minimumlocal reliability level: an enhanced probabilistic location set coveringmodel. Annals of Operations Research, 111(1), 51–74.

Daskin, M. (1983) A maximum expected covering location model: for-mulation, properties and heuristic solution. Transportation Science,17, 48–70.

Daskin, M. (1995) Network and Discrete Location: Models, Algorithmsand Applications, Wiley, New York, NY.

Gross, D. and Harris, C. (1985) Fundamentals of Queueing Theory, Wiley,New York, NY.

Larson, R. (1975) Approximating the performance of urban emergencyservice systems. Operations Research, 23, 845–868.

Marianov, V. and ReVelle, C. (1994) The queueing probabilistic locationset covering problem and some extensions. Socio-Economic PlanningSciences, 28(3), 167–178.

Narula, S.C., Ogbu, U.I. and Samuelsson, H.M. (1977) An algorithm forthe p-median problem. Operations Research, 25, 709–713.

ReVelle, C. and Hogan, K. (1989) The maximum availability locationproblem. Transportation Science, 23(3), 192–200.

Biographies

Oded Berman is the endowed Sydney Cooper Chair in Business andTechnology and the former Associate Dean of Programs at the JosephL. Rotman School of Management at the University of Toronto. He re-ceived his Ph.D. (1978) in Operations Research from the MassachusettsInstitute of Technology. He had been with the Electronic Systems Lab atMIT, the University of Calgary, and the University of Massachusetts atBoston, where he was also the Chairman of the Department of Manage-ment Sciences. He has published over 170 articles and has contributed toseveral books in his field. His main research interests include operationsmanagement in the service industry, location theory, network models,and software reliability. He is an Associate Editor for Management Sci-ence and Transportation Science, and a member of the editorial board forComputers and Operations Research.

Rongbing Huang is an Assistant Professor at the School of Administra-tive Studies, York University, Canada. He holds a Ph.D. degree in Oper-ations Management from the Joseph L. Rotman School of Management,University of Toronto. His research interests include facility location the-ory and combinatorial auctions. He teaches courses in business statistics,quantitative methods, decision analysis and introduction to operationsresearch.

Seokjin Kim is an Assistant Professor of Management at the Depart-ment of Business Administration, Millersville University. His teachingassignments include research methods in business, quantitative methodsfor business, and production and operations management. His researchdeals with stochastic optimization models in facility location and work-force scheduling. He received a Ph.D. degree in Operations Managementat the University of Toronto’s Rotman School of Management and anM.S. degree in Engineering-Economic Systems (currently, ManagementScience and Engineering) at the Stanford University. He also receivedM.B.A. and B.B.A. degrees in Business Administration at the YonseiUniversity, South Korea.

Mozart B. C. Menezes is an Assistant Professor at the Department of Op-erations Management and Information Technology at the HEC Schoolof Management, Paris. His teaching assignments include supply chainmanagement, inventory management and combinatorial optimization.His research interests include supply chain management, facility locationproblems, inventory management and services operations management.His B.Sc. degree in Civil Engineering was obtained at the UniversidadeFederal do Para, Brazil. He holds a M.Sc. degree in Industrial Admin-istration and another in Project Management from Clemson Universityand a Ph.D. degree in Operations from the Joseph L. Rotman School ofManagement, University of Toronto.