facility location and capacity choice in congested and
TRANSCRIPT
Facility Location and Capacity Choice inCongested and Unreliable Systems
Opher Baron, Oded Berman, Yael Deutsch
Facility Location and Capacity Choice in Congested and Unreliable Systems
Abstract
We consider the problem of choosing the optimal number, locations, and service capacities of service
facilities, recognizing that customers may be blocked due to a finite waiting room and facilities may fail
due to disruptions. The goal is to minimize the total cost, that consists of the traveling, blocking, service
capacity, disruptions, and setup costs. We provide structural results such as that when facilities are
reliable, the service capacity and blocking cost are independent of the number of opened facilities, and
when facilities are unreliable, the blocking and capacity costs are minimized with equitable demand rates.
We use these results to derive efficient algorithms and heuristics for solving the problem on a general
network. A case study applying our models to the location of drive-through branches of McDonald’s
in Toronto suggests that McDonald’s may be underestimating the opportunity (traveling and blocking)
cost in its location decisions.
Key words: Facility location; disruptions; congestion costs; nonlinear programming; integer program-
ming.
1 Introduction and literature review
Facility location theory deals with the location and opening of facilities to serve demand from customers.
This theory is of great importance for a wide range of public and private firms. For example, location
decisions of hospitals and other emergency services directly affect the safety and lives of patients. The
theoretical study of facility location started by Weber [33], who investigated how to locate a single
facility on the plane, such that the sum of the weighted traveling cost from the facility to a given set of
destination will be minimized. The classic location models that follow Weber [33] typically ignore the
issues of finite capacity and failures of facilities.
In practice, however, finite capacity and the congestion it creates as well as the possibility of failures
may affect the facility location decisions. In many services, such as hospitals or restaurants, congestion
is a major factor in dictating the service level of facilities. Indeed, in many hospitals waiting time is
an important service level measure that is being tracked down and often discussed in the media. For
example, CBC reports [13] that (for hospital services) ”England and Scotland have wait time charters,
while Finland and Denmark have enforceable patient wait-time guarantees.” And continues that (in
1
Canada) ”The number of beds may not be enough or may be blocked for budget reasons.” The practice of
ambulance diversion, where a hospital asks the emergency medical services to block additional ambulances
from being sent to this hospital when it is overcrowded (see [18] and reference within) is also affected by
the number of beds available. Similar importance of congestion and the size of the waiting room exists
e.g., in the drive-through windows of a fast food restaurant–once the lane for entering the drive-through
is full, arriving customers are blocked from joining the queue and thus the restaurant loses business.
Moreover, in practice, facilities can fail and be out of order for some time periods. There are many
reasons why facilities can and do fail, e.g., equipment breakdowns, industrial accidents, natural disasters,
labor strikes, and malicious terrorists attack. Specific examples include the SARS disease outbreak of
2003, which closed down hospitals in Toronto, Canada; the flu pandemic outbreak of 2009 in US, which
closed down schools; the Ontario doctors’ strike of 1986, which closed down hospitals and emergency
rooms; and the Anthrax attacks of 2001 in the US, which, besides other effects, forced the closure of the
postal facility in Washington D.C. for more than two years. In the fast food example failures of facilities
may be attributed to factors such as extreme weather, fire, sick shift manager, food poisoning, etc.
In call centers, an important measure is the grade of service [23]: the probability of a call being
blocked or delayed for more than a specified interval of time. From the above examples, it is clear that
this measure of service, i.e., the probability of blocked customers that end up not being served by the
system, is also very important to other businesses and services. For example, in the for profit sector this
measure has both the immediate effect of lost customers on sales and also a longer time effect via lost of
goodwill. Moreover, the above examples demonstrate that a reasonable model to capture the probability
of blocked customers is a model with a finite waiting room (e.g., number of beds in hospitals, length of
drive-through lane).
In this paper we consider two new facility location models, both focus on cost minimization. The
first model is a location model with congestion, where facilities are modeled as M/M/c/K queues, and
with a service level measure of probability of blocked customers. The second new model extends the first
model by considering failures of facilities. To the best of our knowledge, this is the first model in the
literature that jointly considers congestion (with a queueing model) and unreliability. For each model we
optimize the number of facilities to be located, their locations, and their capacities. The costs considered
are the traveling, blocking, capacity, fixed operating, and in the model with failures also penalties for
failures. Further, we compare the solutions of both models to improve our understanding of the effect
of failures of facilities on these decisions. We note that other formulations such as profit maximization,
with constraints on budget or service level, and with different queueing models and corresponding service
2
levels can be pursued using a similar line of analysis and are left for future research.
Both congestion and failures have been studied in the literature but each one of them independently
of the other. Specifically, in locations problems with congestion customers generate streams of uncertain
demand and service times are uncertain. As a result of congestion some of the demand may have to
wait for service or lost to the system. Location models with congestion include emergency services (fire,
police, ambulance) as well as public facilities (hospitals, government offices) and private facilities (retail
stores, fast food restaurants). We note that there are many models that take into account capacity
limitations in a deterministic way (e.g., models for which there are requirement that there is sufficient
capacity to provide adequate service, such as [32] and references therein).
We distinguish between location models with congestion where servers are mobile (e.g., emergency
services) and where they are immobile. In general, the models of mobile servers are more complicated
since traveling to the facilities is a part of service and service times are not independently and identically
distributed (i.i.d). For models with mobile servers the reader is referred to the survey [4] and the more
recent survey [22]. For location models with congestion and immobile servers the reader is referred
to [6]. We note that the main service measure performance in the literature on immobile facilities is the
expected time of customers in queue or in the system. Another service level that is used is the probability
of waiting longer than a predetermined threshold.
In recent years a great deal of research has been devoted to facility location problems where facilities
are not perfectly reliable. The effects of facility failures can sometimes be significant, and cause major
disruption to regular operations and unpredicted high costs. The initial paper in this area of research is
Drezner [15] who introduced a formulation of this problem. Snyder and Daskin [28] and Berman et al. [7]
analyzed the problem on a network assuming that failures are independent. In [5] facilities failures are not
assumed independent. This paper includes references to other related problems of unreliable facilities.
We note that when facilities fail it is reasonable to assume that at least some of their demand is redirected
to other facilities. In this case - the other facilities face surge in demand and thus a significantly higher
congestion. We believe that it is important to jointly consider failures and congestion in the initial facility
location and sizing decisions.
The m-median problem that aims to locate m facilities to minimize the sum of the weighted shortest
travel distances from customers on the nodes of a network to the facilities is an Integer Linear Program-
ming and is a well known NP-hard problem. Because the m-median is a special case of the two models
we consider, both are NP-hard problems as well. In addition to the complexity of the m-median problem,
our models also choose the number of facilities to locate (”m”) and the capacity of the servers at each
3
facility. Choosing the number of facilities implies that we need to compare the costs given different values
of m and choose the best one; we thus solve the facility location problem with m facilities several times.
The consideration of capacity and resulting blocking probability makes our problems nonlinear programs.
Moreover, as we demonstrate below, in the model with failures expressing the exact cost given a solu-
tion (i.e., given the number, location, and capacities of facilities) alone requires an exponential number
of computations (that is, the number of elements in the cost function increases exponentially with the
number of facilities).
To overcome these difficulties we use several methods: exact non linear integer optimization, leading
to closed form solutions; queueing theory, to express the blocking probabilities and their dependence
on the capacity and demand; and bounds and heuristic approaches to solve both models (implemented
using MATLAB). We start by solving simple cases of our models, derive several results for these simple
cases, investigate how these results extend to the general case, and finally use them and the insights they
generate to derive efficient solution algorithms for the general problem.
Specifically, we first consider our models over the [1, 2] line when facilities are modeled as M/M/1/1.
We establish for the model without failures (in Theorem 1): (i) the exact conditions for the optimality
of opening a single, or two facilities, or not-operating at all; (ii) closed form expressions for the exact
capacity of the opened facilities; and (iii) that the total capacity and blocking costs are independent of
the number of open facilities. For the model with failures we establish, in Theorems 4-7, (i) the exact
conditions for the optimality of opening a single, or two facilities, or not-operating at all (these conditions
are, obviously, less insightful than the conditions in the model without failures); (ii) closed form capacity
of opened facilities; (iii) that in contrast to the model with no failures, the total capacity and blocking
costs depend on the number of open facilities; and (iv) if it is possible to allocate the demand to facilities,
by a fair allocation, i.e., as equal as possible allocation (of demand), minimizes the blocking and capacity
costs (see Baron et al. [1, 2] for additional models where fair allocation is optimal).
We demonstrate how some of these results extend to the general models with demand over a network
and facilities modeled as M/M/c/K.See the discussions in Sections 3.2 and 4.3 for the reliable and
unreliable models, respectively. The implications of our these results for the general models are:
• Because for the model with no failures the capacity and blocking costs are independent of the
number of facilities, the problem can be decomposed such that the optimal location is the one
that minimizes the traveling costs, i.e., the solution of an m-median problem with the specific m
that minimizes the traveling plus fixed operating costs. And capacities are chosen to minimize the
blocking costs given the demand rates in the facilities. Algorithm 1 efficiently searches for this
4
optimal number of facilities, m∗.
• Because for the model with failures a fair allocation reduces the blocking and capacity costs (see
Conjecture 1), the best facility location configuration should balance the m-median type solution
(focusing on minimizing traveling and fixed operating costs) with a solution creating as equal
demands as possible among the different facilities. Algorithm 2 includes two computationally
efficient heuristics to solve this model.
To demonstrate the applicability of our results and tractability of our algorithm we end the paper with
a case study where we consider the drive-through operation of McDonald’s in the Toronto metropolitan
area. This problem includes a set of 96 demand nodes and we discuss the solution of the different models
and what we learn from them.
The remainder of this paper is organized as follows. In Section 2, we formulate the general problem,
where we distinguish between the case when facilities are perfectly reliable, and the case where they may
fail. In sections 3 and 4 we model and solve the problem with reliable and unreliable facilities, respectively.
In Section 5 we apply our results to study the problem of McDonald’s drive-through facilities in Toronto,
Canada. All proofs are given in Online Appendix A.
2 Location and Capacity Choice in Congested and Unreliable
Facility System - Problem Formulation
Here we present the formulation of the problem: how many finite buffer identical facilities should be
opened on a general network, where they should be located, and what service rates their servers should
have so as to minimize the total cost, taking in consideration that facilities may fail and may be over-
crowded. We first provide general notation. Then, we distinguish between the case when facilities are
perfectly reliable, and the case where they may fail.
2.1 General Notation
Let G = (I, E) be an undirected, connected network, with a node set I of size ‖ I ‖ and an edge set
E. Each node i ∈ I has a demand-rate λi ≥ 0, of a Poisson distribution. We assume that the demand
processes are all independent, with λ ≡ ∑i∈I λi. Let d[i, j] be the shortest distance between any two
nodes i and j. The decision-maker wants to open several, m, identical, possibly unreliable facilities in
the network so as to minimize the total cost of operating the network. The total cost includes the costs
of traveling, blocking, service capacity, setup and failure as detailed below. Note that by Hakimi [19] for
5
the reliable case and Berman et al. [7] for the unreliable case with a low failure probability, in order to
minimize the total (expected) traveling cost it is optimal to locate facilities at the nodes. Specifically, in
Berman et al. [7] it was proved that for the unreliable case when p is sufficiently large, co-location can
occur. In the case study of locating hospitals in Berman et al. [7] co-location occurs for p close to 0.8.
Since in practice the value of p is relatively small, co-location is not expected to occur. In addition, in
order to reduce the possibility of cannibalization among facilities that belong to the same franchise, e.g.,
McDonald’s, maintaining some distance between facilities that is maintained when co-location is allowed
may alleviate the problem. We thus focus on locating facilities on the nodes. Therefore, the optimal
number of opened facilities will satisfy m∗ ≤‖ I ‖.
To clarify the exposition we use J as the set of nodes when we consider these as a (potential) facilities.
Throughout the paper we denote by facility j the facility which is located at node j. The service facilities
are modeled as M/M/c/K queues, with K the total buffer size, including the number of customers in
service (c ≤ K). The arrivals are governed by a Poisson process with demand rates λj for each facility
j ∈ J , service times are exponentially distributed with service rates µj per server. The servers’ service
rates are decision variables in our model.
Due to the facilities’ finite buffer, customers may be blocked. Let ρj ≡ λj/(cµj) and rj ≡ λj/µj .
Then, the blocking probability of facility j, P jB(λj), is given by (see, e.g., [29] Chapter 2, page 55):
P jB(λj) =(ρj)KP0
cK−cc!, (1)
where
P0 ≡
(∑c−1n=0
(rj)n
n! + (rj)c
c!1−(ρj)K−c+1
1−ρj )−1 if ρj 6= 1,
(∑c−1n=0
(rj)n
n! + (rj)c
c! (K − c+ 1))−1 if ρj = 1
(2)
(when no confusion arises, we omit the dependency of the blocking probability on the demand rates).
Note that (1) holds also for facilities modeled as M/G/c/c queues, so our results below remain valid
when facilities are modeled as M/G/c/c.
The facilities are unreliable, and may fail with a known, identical failure probability, p ≥ 0. We assume
that the facilities’ failure events are independent of each other. We further assume that customers always
travel to their closest operational facility, if such exists (i.e., if some facilities are open).
The cost of traveling from node i to node j is assumed to be d[i, j], the blocking cost per unit of
demand rate is CB , the cost of service rate per server per unit of demand rate is Cµ (when c > 1,
the actual cost per server is Cµ/c), and opening a facility requires a setup cost of CK per time period.
Further, if all facilities fail, the decision-maker has to pay a penalty (which we call the failure cost) that
the customers incur from receiving the service outside of the system. There are two different reasons
6
why customers may not be served by the system: failures and blocking, however, the actual reason for
not receiving service is often immaterial. Thus, we will assume that the failure cost per unit of demand
rate is also CB .
Any parameter (or value) Z, that is related to demand node i and facility j when m facilities are
opened, is denoted by Zm,ji (when no loss of clarity follows, we will use only part of these indexes). For
example, when m facilities are opened, facility j’s service rate per server will be denoted by µm,j .
2.2 Perfectly reliable facilities
With perfectly reliable facilities, the objective is to minimize:
Total Cost ≡ Traveling Cost+Blocking Cost+ Capacity Cost+ Setup Cost. (3)
To express the decision-maker’s problem as an integer programming problem, let x be the facilities’
location vector, Y the customers’ allocation matrix, and µ the service rate per server vector in the
different facilities. Specifically,
xj =
1 if a facility is opened at node j
0 otherwise,
(4)
and
yij =
1 if demand node i is assigned to facility j
0 otherwise.
(5)
With this notation, the problem formulation is:
minx,y,µ∑
j∈Jλjdij +
∑
j∈JCBλ
jP jB(λj) +∑
j∈JCµµ
m,j +mCK (6a)
s.t.: (1), (2) ∀ j ∈ J, (6b)
yij ≤ xj ∀ i ∈ I, j ∈ J, (6c)
∑
j∈Jyij = 1 ∀ i ∈ I, (6d)
λj =∑
i∈Iλiyij ∀ j ∈ J, (6e)
yij ∈ {0, 1} ∀ i ∈ I, j ∈ J, (6f)
xj ∈ {0, 1} ∀ j ∈ J, (6g)
m =∑
j∈Jxj . (6h)
The first term in the objective function (6a) is the traveling cost, the second is the blocking cost, the
third is the capacity cost, and the fourth is the facilities setup cost. Constraints (6b) provide the blocking
probability formula used in the calculation of the blocking cost in (6a). Constraints (6c) guarantee that
7
customers are assigned only to locations where a facility is established. Constraints (6d) ensure that
each customer is allocated to a facility. Constraints (6e) guarantee that the total demand rate that goes
to facility j, λj , is used in the calculation of facility j’s blocking cost. Constraints (6f) and (6g) are
binary restrictions of the yij variables and the xj variables, respectively. Constraints (6h) calculates the
number of open facilities, m, to simplify the setup cost evaluation.
Note that there is no need to add close assignment constraints in the formulation in (6), as they are
the result of the minimization of the traveling cost in (6a). Furthermore, the classical uncapacitated
facility location problem is an NP-hard combinatorial optimization problem [24], which is a special case
of our problem (obtained when CB and Cµ are equal to zero), therefore, problem (6) is also NP-hard.
2.3 Unreliable facilities
2.3.1 Problem formulation
With unreliable facilities, the objective is to minimize:
Total Cost ≡ Traveling Cost+Blocking Cost+Capacity Cost+Setup Cost+Capacity Cost+Failure Cost.
(7)
The main differences from problem (6) are the additional failure cost, and the traveling and blocking
costs, that depend also on the operating facilities. We next discus how to express these costs. Given m
facilities, there are 2m−1 different realizations (which we call events) of the operating facilities (excluding
the one when all facilities fail), and thus each facility has possibly 2m−1 different demands. The demand
rate that facility j faces given any failure event should be calculated for a specific failure event, by
adding the demands from all nodes for which this facility is the closet operational to them given this
event. Mathematically, let L denote the set of all possible failure events. Let l ∈ L represent the nodes’
status vector at the failure event l, i.e.:
lj =
1 if facility j is opened and operational at l ,
0 if facility j is opened and unoperational at l, or there is no facility at j .
(8)
Let Pl denote the probability of occurrence of event l ∈ L. Note that there are different events with the
same probability of occurrence (e.g., there are m events with a single facility failure, each occur with
probability (1 − p)m−1p). Let the demand rate that facility j faces at failure event l ∈ L be λjl and let
Y l denote the set of assignments of demand nodes to facilities at event l ∈ L, where
ylij =
1 if demand from node i goes to facility j at event l
0 otherwise.
(9)
8
Then, the total demand at facility j in event l is given by
λjl =∑
i∈Iλiy
lij ∀l ∈ L, j ∈ J. (10)
Given (9) and (10) the rate of blocked customers at facility j at event l is λjlPjB(λjl ), where P jB(λjl )
is calculated by (1) and (2). With this notation, the problem formulation is:
minx,y,µ∑
j∈J
∑
l∈Lλjl dij +
∑
j∈J
∑
l∈LCBλ
jlP
jB(λjl )Pl +
∑
j∈JCµµ
m,j +
CKm+ CBλpm (11a)
s.t.: (1), (2) ∀ j ∈ J, l ∈ L (11b)
ylij ≤ xj ∀ i ∈ I, j ∈ J, l ∈ L, (11c)
∑
j∈Jylij = 1 ∀i ∈ I, l ∈ L, (11d)
ylij ∈ {0, 1} ∀ i ∈ I, j ∈ J, l ∈ L, (11e)
xj ∈ {0, 1} ∀ j ∈ J, (11f)
(6h), (10). (11g)
The objective function (11a) consists of five terms, respectively, the traveling cost, blocking cost, ca-
pacity cost, facilities’ setup cost, and the failure cost. Constraints (11b) provide the blocking probability
formula used in the calculation of the blocking cost Constraints (11c-f) are as in problem (6), (6c,d,f,g).
Note that for any failure event the problem reduces to problem (6) and thus, similarly to problem (6),
there is no need in close assignment constraints.
Clearly, problem (11) is NP-hard, as it is extension of problem (6). Moreover, even the complexity of
evaluating the objective function in (11a) (in particular, evaluating the expected traveling and blocking
costs), when all decision variables are known, increases exponentially with m because the size of the set
L exponentially increases with m.
3 Solution for perfectly reliable facilities
In this section, we consider the problem with perfectly reliable facilities. We first model and solve this
problem on a line where facilities are modeled as M/M/1/1 queues. Then, using the insights obtained
from this analysis, we solve the general problem.
9
3.1 The problem on the line
3.1.1 Problem formulation on the line
Let G = (I, E) be a network with a single edge and two nodes, i.e., let I ≡ {1, 2} and E ≡ {[1, 2]}.
Each node i ∈ I has a demand rate λi. We assume, without loss of generality, that λ1 ≤ λ2. The total
demand at the network is λ = λ1 + λ2. Facilities are modeled as M/M/1/1 queues. The decision-maker
needs to determine how many facilities to open, where to locate them, and what should be their service
capacities.
The blocking probability of facility j ∈ J , which faces an arrival rate λj , and has a service rate µj is
given by (1-2) with c = K = 1. Specifically:
P jB(λj) =λj
λj + µj(12)
Let Costm be the total cost of operating m reliable facilities. As explained in Subsection 2.1, it is
optimal to locate facilities at the nodes so m∗ ≤‖ I ‖, i.e., m∗ = 1 or m∗ = 2. Since the network is a
tree and λ1 ≤ λ2, the optimal location of the single facility is node 2, and the optimal locations of the
two facilities are nodes 1 and 2. Let C∗K denote the facility setup cost which makes the cost of operating
two facilities identical to that of operating a single one.
3.1.2 Solution on the line
From (6a), the total cost when a single facility is opened at node 1 is
Cost1 ≡ λ1 +CBλ
2
λ+ µ1,1+ Cµµ
1,1 + CK , (13)
and the total cost when two facilities are opened at nodes 1 and 2 is
Cost2 ≡ CB(λ1)2
λ1 + µ2,1+CB(λ2)2
λ2 + µ2,2+ Cµ(µ2,1 + µ2,2) + 2CK , (14)
(clearly, there are no traveling costs in (14)).
The next theorem provides a solution for the problem on the line.
Theorem 1. For the [1, 2] line, we have
1. If CB < Cµ it is optimal not to operate. If
CB ≥ Cµ. (15)
Then,
µ1,1 = λ(
√CBCµ− 1), (16)
10
and
µ2,j = λj(
√CBCµ− 1) j = 1, 2. (17)
So that
µ1,1 = µ2,1 + µ2,2 (18)
2. The total capacity and blocking costs are independent of m.
3.
Cost1 ≤ Cost2 ⇔ λ1 ≤ C∗K (19)
Note that if (15) does not hold, it is cheaper to pay the blocking costs per customer than to purchase a
unit of capacity service to serve it. Thus, it is best not to operate at all. For simplicity of the exposition we
assume that (15) is satisfied below. Part 1 of Theorem 1 implies the optimal capacities are only dictated
by the blocking and capacity costs. Specifically, the optimal safety capacity is the difference between the
square root of the ratio between these costs and 1. Because this safety capacity is independent of the
demand rate, the total capacity required is independent of the number of facilities opened, as captured
in (18). The implication of (18) is that the capacity and blocking costs are independent of m, as is
captured in part 2 of the theorem. With these results what dictates the difference between opening 1
and 2 facilities is the trade off between the lower traveling cost when m = 2 and the lower setup cost
when m = 1, as given in (19).
The important implication of Theorem 1 is that the problem over the line when facilities operate
as M/M/1/1, can be decomposed into three phases: at the first phase for any number of facilities, m,
we solve a Location problem that gives optimal location that minimize the traveling cost, at the second
phase, we find m∗ by considering the traveling and setup cost given m. Finally, at the third phase, we
express the optimal capacities given the demand faced by each facility when there are m∗ facilities and
calculate the total cost, including capacity and blocking cost.
In the next section we show that the main results of Theorem 1 extend to more general settings of
both a general network (rather than on the line) and when facilities modeled as M/M/c/K (rather than
only as M/M/1/1). Therefore, the solution approach with the three phases can be used there as well.
3.2 Solution on a general network
In this section we solve the problem with perfectly reliable facilities on a general network when facilities
operate as M/M/c/K. The next theorem generalizes the results of Theorem 1 to these settings.
11
Theorem 2. For any network G = (I, E), when facilities are M/M/c/K queues, for given c, K, CB
and Cµ, when it is optimal to operate, we have:
1. The optimal capacities are given by
µm,j = λm,jη,
where λm,j is the demand rate that facility j faces when m facilities are opened, and η is independent
of m, the demand rate, the traveling, and the setup costs.
2. The total capacity and blocking costs are independent of m.
3. The choice between opening m and m + 1 facilities depends on the trade off between the lower
traveling cost and the higher setup cost of Costm+1 compared to these in Costm.
4. The optimal location and number of facilities, m∗, are independent of the parameters c and K of
the M/M/c/K queue, and the costs CB and Cµ.
Part 1 of Theorem 2 implies that in the general case, the optimal capacities are only dictated by
the blocking and capacity costs. As the safety capacity, η, is independent of the demand rate, the total
capacity required is independent of the number of facilities opened. Thus, the capacity and blocking
costs are independent of m, as is captured in part 2 of the theorem, and the choice between opening m
and m+ 1 facilities is the trade off between the lower traveling cost when m+ 1 facilities are opened and
the lower setup cost when m facilities are opened, as stated in part 3 of the theorem.
Note that while the blocking and capacity costs depend on c and K, these parameters have no effect
on the location and number of facilities. When facilities are reliable, their number and location is only
affected by the network topology and demand rates, i.e., traveling cost.
Therefore, Theorem 2 implies that the three phases approach discussed above can be used to minimize
the total cost. Specifically, in the first phase we solve a Location problem. For any given m, the facilities
should be located according to the m-median solution that will minimize the traveling cost (the integer
programming formulation of the m-median problem is given by (46) in Online Appendix B). In the
second phase we find m∗, the optimal number of facilities to open in accordance to the trade off between
the traveling cost, calculated at the first phase, and the setup cost. Finally, the third phase determines
the optimal capacities. The capacity of each facility is calculated using the demand it faces; note that
the demands are based upon the solution of the first phase.
Algorithm 1 that solves the reliable problem on a general network is given in C. The input of the
algorithm is the network G, the demand rates λi for i ∈ I, the costs CB , Cµ, CK , and the parameters
12
c,K of the M/M/c/K queue. The Algorithm includes four procedures, one for an initial guess (discussed
below), and three corresponding for the three phases for the solution of the problem.
Note that at a general network, if we use the three phases described above without any changes, at
Phase I we need to solve the m-median problem ‖ I ‖ times, which may be very time consuming. In
order to reduce this complexity, we first execute Procedure 0, the initial guess procedure. Procedure 0
finds a candidate m as an initial number to start the search for the optimal number of facilities to open.
For each m ∈ I, initial guess finds the optimal location and the resulted traveling cost according to the
solution of the relaxed m-median problem, evaluates the sum of the traveling and setup cost of operating
m facilities, and determines the number of facilities that minimizes this sum, m.
Then, Phase I solves the exact m-median problem, and evaluates the exact traveling and setup costs
of operating m facilities. Phase II finds the optimal number of facilities that should be opened, m∗, by
a search in a close neighborhood around m (the stopping rule we implement for the procedure assumes
convexity in m of the sum of the traveling and setup cost. However other stopping rules, including a
branch and bound based upon the lower bound on the traveling costs found by Procedure 0, can be used
as well). Finally, Phase III calculates numerically the optimal capacities, and evaluates the total costs
when m∗ facilities are opened.
4 Solution for unreliable facilities
Here we consider the problem with unreliable facilities. In Subsection 4.1 we overcome the complexity of
evaluating the objective function (11a) by adding additional constraints to the problem. In Subsection
4.2 we model and solve the problem over the [1, 2] line. In Subsection 4.3 we discuss our findings. Finally,
in Subsection 4.4, we provide detailed theoretical and numerical results supporting these findings
4.1 Bounds on the objective function
Traveling cost: For each node i ∈ I, let Si denote the list of all nodes u ∈ I, ordered by non-decreasing
distance from it (in case of ties the choice of the order is random), and Shi denote the hth closest node
to i. With this definitions,∑h−1u=1 xSui is the number of opened facilities that are closer to node i than
the hth closest node to node i. Therefore, if there is a facility at this hth closest node, it will serve
demand from node i if (i) the facility is operational, with probability (1− p), and (ii) all closer facilities
are unoperational, with probability p∑h−1u=1 xSui :
Observation 1. The hth closest node to node i has the closest operational facility to node i with prob-
ability (1− p)p∑h−1u=1 xSui xShi .
13
Therefore, the traveling cost from node i to facility h is
(1− p)p∑h−1u=1 xSui xShi λidih (20)
(the traveling cost per unit of demand is 1). So that the total expected traveling cost is given (and can
be evaluated in a polynomial time) by:
∑
i∈I
∑
h∈I(1− p)p
∑h−1u=1 xSui xShi λidiShi , (21)
Blocking cost: Node i will be assigned to facility at node j = Shi at event l ∈ L (i.e., ylij = 1) only
if facility j is the closest operational to it at l. Thus, for j = Shi , the assignment of demand nodes to
facilities at event l (9) can be expressed mathematically by
ylij =
1 if lj = 1, lSui = 0 for u < h
0 otherwise,
(22)
Further, if j is the hth closest node to node i (i.e., j = Shi ), and it is the closest operational facility to
node i under event l, then
lj −∑k−1u=1 lSui = 0, for k = 1, . . . , h− 1, (23a)
lj −∑k−1u=1 lSui = 1 for k = h, (23b)
lj −∑k−1u=1 lSui ≤ 0 otherwise. (23c)
Equations (15a) follow because for the k = 1, . . . , h−1 nodes (that are closer to node i than node j) under
event l, we have lSki = 0, so the sum equals 0, (15b) follows similarly because under l, we have lShi = 1,
and (15c) follows because lSki ≤ 1 whereas the sum,∑k−1u=1 lSui , is nondecreasing with k and for k = h it
equals 1. Using (15a-c) the following constraints assure that the ylij ’s are calculated appropriately:
ylij ≤ max{0, lj −h−1∑
u=1
lSui } ∀i, h ∈ I, l ∈ L, with j = Shi . (24)
With this notation, we can express problem (11) as
minx,y,µ∑
i∈I
∑
h∈I(1− p)p
∑h−1u=1 xSui xShi λidiShi +
∑
j∈J
∑
l∈LCBλ
jlP
jB(λjl )Pl +
∑
j∈JCµµ
m,j +
CKm+ CBλpm (25a)
s.t.: (11b− g), (24). (25b)
Bounds on the blocking cost:
Because exact evaluation of the blocking cost in the objective function (16a) (and (11a)) is possible only
for a rather small number of facilities, we provide upper and lower bounds for it for any number of
facilities.
14
Suppose that m identical (M/M/c/K) facilities are opened and located, and their service rates are
given. Let Π represent the exact total expected blocking cost. For 0 ≤ v ≤ m − 1, let Πv represent
the exact expected blocking cost for the events where v′ = 0, . . . , v facilities fail. Let jmin represent the
facility with the lowest service rate. Let Πjmin,λ represent the blocking cost of facility jmin which faces a
demand rate of λ (recall, λ is the total demand at the network).
For 0 ≤ v ≤ m− 1, let P v+ ≡∑m−1
i=v+1
(mi
)(1− p)m−ipi be the probability that more than v facilities
fail, and let Πv ≡ Πv + P v+
Πjmin,λ. Then,
Theorem 3.
Πv ≤ Π ≤ Πv for every v = 0, . . .m− 1 (26)
The lower bound Πv and the upper bound Πv get closer to each other as v increases. Moreover, as
the failure probability is assumed to be rather low, the difference between the upper and lower bound,
that according to the definition of P v+
is of order pv+1, is small. For example, for a (relatively large)
failure probability of 0.05 and m = 15 facilities, the probability that 4 and more facilities will fail is
0.0055. Also, note that exact calculation of Πv for a small v is reasonable. For example, for m = 15 and
v = 3, there are 576 different failure events that their blocking cost is calculated exactly.
4.2 The problem on the line
Consider the simplified setting of section 3.1, but with unreliable facilities. Specifically, each facility may
fail independently with probability p. Let Costm(p) be the total cost of operating m unreliable facilities.
As was explained in section 3.1, the decision-maker needs to determine whether to open a single facility,
located at node 2, or two facilities, located at nodes 1 and 2. From (17a), the total cost when a single
facility is opened is
Cost1(p) = λ1(1− p) +CBλ
2(1− p)λ+ µ1,1
+ Cµµ1,1 + CK + CBλp, (27)
and the total cost when two facilities are opened is
Cost2(p) = λp(1− p) + CB((1− p)2((λ1)2
λ1 + µ2,1+
(λ2)2
λ2 + µ2,2) + (1− p)p( λ2
λ+ µ2,1+
λ2
λ+ µ2,2))(28)
+Cµ(µ2,1 + µ2,2) + 2CK + CBλp2.
Let γ ≡ CB(1 − p)/Cµ. The next theorem determines the condition for operating facilities, and the
optimal capacities of the single and two facilities.
15
Theorem 4. For the [1, 2] line, with unreliable facilities, we have
If CB <Cµ1−p it is optimal not to operate. If
CB ≥Cµ
1− p , (29)
i.e., γ ≥ 1,
µ1,1 = λ(√γ − 1), (30)
and for j = 1, 2, µ2,j is the solution of
(λj)2(1− p)
(λj + µ2,j)2+
(λ)2p
(λ+ µ2,j)2=
1
γ(31)
Note that although the decision-maker pays Cµ per each unit of capacity, this capacity is meaningful
only if the facility is operational, i.e., with probability (1− p). If (29) is not satisfied, then it is optimal
not to operate. Further, for p = 0, (29) becomes (15), (30) becomes (16), and (31) becomes (17), as
expected.
4.3 Summary of results
Optimal capacities:
For two and more opened facilities, there is no explicit expression for the facilities optimal capacities.
Even over the line, when two facilities are opened, according to Theorem 4, the capacities are given
implicitly. According to Theorem 5, these capacities can be approximated efficiently by the upper
bounds (33). The capacities depend on m, the demand rates, CB , Cµ, and p.
Blocking and capacity costs:
According to Theorem 6, the total blocking and capacity costs depend on m. According to Theorem
6, part 2b, using the bounds (33), the total blocking and capacity costs when two facilities are opened
over the line are higher than these when a single facility is opened. But this is not always the case, see
the counter example in Example 5. Further, according to Conjecture 1, locating facilities such that their
demand rates are equal to each other (fair-m-median solution) minimizes the total capacity and blocking
costs.
Traveling cost:
The total traveling cost may increase or decrease with m, depending on the value of the failure probability.
For example, according to Theorem 6, part 2a, the total traveling cost over the line when two facilities
are opened is smaller than the traveling cost when a single facility is opened if p < λ1
λ .
Choice between opening m and m+ 1 facilities:
16
According to Theorem 6, the choice between opening m and m + 1 facilities is a trade off among all
the costs. Thus, as the m-median solution minimizes the total traveling cost, and as the fair-m-median
solution minimizes the total blocking and capacity costs, in order to solve the unreliable problem we can
use these two solutions as possible locations (see Algorithm 2 in Online Appendix C).
4.4 Demonstration of the results
4.4.1 Bounds on the optimal capacities
In Theorem 4, the expressions for the optimal µ2,js are given implicitly by (31), as the exact expressions
are cumbersome (solutions of a quartic equation). Though (31) can be efficiently solved numerically, we
next provide upper and lower bounds for the optimal µ2,js, in order to be able to gain some intuition on
the optimal capacities when two facilities are opened, and several structural results. The upper bounds
provide intuitive approximations for the optimal capacities. The bounds are based on the following two
intuitive ideas:
1. The decision-maker pays Cµ per each unit of capacity for facility j = 1, 2, but, “enjoys” this
capacity only when the facility is operational, that is, during (1− p) of the time. Thus, it is as if
the capacity cost is Cµ/(1− p).
2. With failures, facility j faces a demand-rate of λ. Thus, facility j = 1, 2 receives an expected
demand rate of
λj(p) ≡ λj(1− p)2 + λp(1− p) = (1− p)(λj + pλ3−j). (32)
We substitute this cost and demand in the optimal capacity for the model with perfectly reliable facilities
(17) to approximate the optimal capacities by
µ2,j(p) ≡ (λj + pλ3−j)(√γ − 1). (33)
In Theorem 5 below we establish that µ2,j(p) is an upper bound on the optimal capacity of facility j.
Note also that (33) agrees with (30), which gives the optimal capacity for the single unreliable facility.
Furthermore, (33) implies that
µ2,1(p) + µ2,2(p) = λ(1 + p)(√γ − 1) ≥ µ1,1, (34)
i.e., for p > 0, the capacity cost of Cost1(p) is smaller than the total capacity cost of the upper bounds
µ2,j(p) of Cost2(p), and the blocking cost of Cost1(p) is higher than the total blocking cost of Cost2(p)
(unlike the case when p = 0, see (18)). We will discuss these implications in more detail in the next
section.
17
Notice that the bound in (33) grows linearly with λ and λj and depends on the ratio CB/Cµ.
Let L ≡ −(
(λj)2(1−p)
(λj+µ2,j(p))2
+ λ2p
(λ+µ2,j(p))2− 1γ )
(2(λj)
2(1−p)(λj+µ
2,j(p))3+ 2λ2p
(λ+µ2,j(p))3)
, and
µ2,j(p) ≡ µ2,j(p)− L, (35)
then, we have
Theorem 5. The optimal capacity (µ2,j)∗ is bounded by
µ2,j(p) ≤ (µ2,j)∗ ≤ µ2,j(p) for j = 1, 2. (36)
While both bounds in Theorem 5 are given in closed form, the upper bound is much more intuitive.
However, from the proof, it is clear that the lower bound is much closer to the optimal capacity than the
upper bound. Moreover, the same procedure used to express the lower bound can be used again to come
up with a tighter upper bound on the optimal capacity. Thus, the logic behind the proof provides an
alternative numerical method to solve for the optimal capacity; however, directly solving (31) numerically
is immediate and we thus do not pursue this any further.
To demonstrate the accuracy of the bounds from Theorem 5, consider the following example. We will
use the parameters of this example later in the paper as well. Therefore, unless it is stated otherwise,
the data of the numerical examples for the [1, 2] network is CK = 35, CB = 10, Cµ = 5, λ = 100, λ1 =
20, λ2 = 80, and p ∈ [0, 0.5] (the chosen interval of p follows from (29)).
Example 1 compares the optimal solutions and the bounds for facility 1’s capacities for different λ1
values (it can be shown that the differences between the optimal capacity and its bounds are higher for
facility 1 than for facility 2). Nevertheless, the example shows these differences are rather small.
Example 1. Accuracy of the bounds: Let λ1 = 20, 30, 50 (λ2 = 100 − λ1). Figure 1 presents
(µ2,1)∗, µ2,1(p), and µ2,1(p) for these three λ1s as a function of p. The exact, upper, and lower bound
solutions are drawn by the solid, dotted, and dashed line, respectively. The lower, middle, and upper
curves are the solutions for λ1 = 20, 30, and 50, respectively.
As the lower bounds are close to the exact solutions, the dashed line for λ1 = 50 is not seen in the
figure. As the difference (λ2 − λ1) decreases,i.e., λ1 grows to 50, the difference between the exact and
their bounds decreases.
4.4.2 A comparison between Cost1(p) and Cost2(p)
Given the relative accuracy and simplicity of the upper bounds, we use it here and in the following
subsection to analytically compare the operating cost of the single unreliable facility with that of two
18
0
3
6
9
12
15
18
21
0 0.1 0.2 0.3 0.4 0.5
Optimal solutions
and bounds for
facility 1's capacities
λ1=20
λ1=30
λ1=50
Figure 1: (µ2,1)∗ (solid), µ2,1(p) (dotted), µ2,1(p) (dashed) for λ1 = 20, 30, 50
unreliable facilities, and the performance of the reliable solution when facilities are unreliable. Specifically,
we use the approximations for µ2,j , j = 1, 2 and the exact solution of µ1,1 given by (30)).
Theorem 6.
1. Let
λ1 ≡ (λ1 − λp)(1− p) + Cµλp(√γ − 1) + CB(λ(1− p)p+
λ(1− p)√γ
− (37)
(λ1)2(1− p)2(λ1 + λ2p)
√γ − λ2p
− (λ2)2(1− p)2(λ2 + λ1p)
√γ − λ1p
− (1− p)pλ2(λ1 + λ2p)
√γ + λ2(1− p) −
(1− p)pλ2(λ2 + λ1p)
√γ + λ1(1− p) ).
Then,
Cost1(p) ≤ Cost2(p)⇔ λ1 ≤ C∗K (38)
2. The following conditions are satisfied:
(a) If p < λ1
λ , the traveling cost of Cost2(p) is smaller than the traveling cost of Cost1(p).
(b) The blocking, capacity, and setup costs of Cost2(p) are higher than or equal to these of
Cost1(p), respectively.
(c) The failure cost of Cost2(p) is lower than that of Cost1(p).
Note that λ1 for this model is clearly more elaborate than λ1 for the model with fully reliable facilities.
Moreover, for p = 0, λ1 = λ1 and thus (38) is the same as (19). However, for p > 0, C∗K is smaller than
λ1. The following example demonstrates this and parts 2a and 2b of Theorem 6.
Example 2. Costs of a single vs. two unreliable facilities: Let CK = 0. Figure 2a presents the
total costs (excluding the setup costs) of Cost1(p) (solid line) and Cost2(p) (dashed line). The value of
19
910
930
950
970
990
1010
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
Total costs
Cost1
Cost2
p
(a) Total costs
0
100
200
300
400
500
600
700
800
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 p
Blocking costs
Traveling costs
Cost1
Cost2
Costs
(b) Traveling and blocking costs
Figure 2: Costs of a single vs. two unreliable facilities
C∗K is the difference between the two curves. It is decreasing from C∗K = λ1 = 20 for p = 0 to C∗K = 0
for p = 0.24. For p > 0.24, opening two facilities is always optimal. Figure 2b presents the traveling and
blocking costs Cost1(p) (solid line) and Cost2(p) (dashed line). It is clear that Theorem 6, parts 2a and
2b, are satisfied.
Performance of reliable solution when facilities are unreliable
Suppose the decision-maker does not consider the possibility that facilities may fail, and chooses the
capacities according to (16) and (17). Let the capacities in this case be denoted by µ1,1(0) and µ2,j(0),
for j = 1, 2. So, using (27) and (28),
Cost1(p, µ1,1(0)) = λ1(1− p) + 2√CBCµλ− p
√CBCµλ+ CBλp− Cµλ+ CK , (39)
and
Cost2(p, µ2,j(0)) = λp(1− p) + CB(1− p)2λ√Cµ√CB
+CB(1− p)p(λ)2
λ2 + λ1√
CBCµ
+ (40)
CB(1− p)p(λ)2
λ1 + λ2√
CBCµ
+ Cµλ(
√CBCµ− 1) + CBλp
2 + 2CK .
The following example shows the effect of ignoring failures.
Example 3. Wrong choices when failures are not considered: Figure 3a presents Cost1(p) (solid
line) and Cost2(p) (dashed line) as a function of p, when failures are considered and when they are not.
When failure are ignored,, the costs are linearly increasing with p. When failure are considered, the costs
are convex increasing with p in lower than linear rate.
20
Cost1
Cost2
(a) Total Costs
μ11
μ22
μ21
0.1 0.2 0.3 0.4 0.5
10
20
30
40
(b) Capacities
Figure 3: Total Costs and capacities, considering and not considering failures
When failure are ignored, operating a single facility seems better than operating two facilities for
p ∈ [0, 0.165]. However, when failure are considered, operating a single facility is better than operating
two facilities only for p ∈ [0, 0.145].
Figure 3b presents µ1,1 (dashed line), µ2,1 (dotted line), and µ2,2 (solid line), when failures are
considered, and when they are not. When failures are ignored, the optimal capacities are independent of
p. When failures are considered, the capacities are decreasing with p.
To summarize, ignoring failures, may result in two wrong choices, one with respect to the number of
facilities to operate, and one with respect to their capacities. Still, in this example for reasonable (low)
failure probabilities, the main difference in cost results from wrong capacities’ choice, and the resulting
cost difference are not large (less than 5.3% for p ≤ 0.5).
4.4.3 M/M/c/K facilities
Here we numerically consider facilities that are modeled as M/M/c/K queues with 1 ≤ c ≤ K (because
the blocking probability formula, given by (1-2), is less elegant, and so are the analytical results). We
provide some concrete examples that show similarities and differences from the results obtained for the
M/M/1/1 facilities.
The following example shows that the optimal capacities increase with K, and decrease with c.
Example 4. Optimal capacities increase with K and decrease with c: Figure 4a presents (µ2,1)∗
as a function of p, for c = 1 and K = 2, 3, 4, and Figure 4b presents (µ2,1)∗ for K = 4, and c = 2, 3, 4
as a function of p.
It is clear that the optimal capacities increase with K, and decrease with c. This is also very intuitive:
when K increases, more customers are allowed at the system. So, the (single) server may need to serve
more customers, and thus its optimal capacity should increase. On the other hand, when c decreases,
21
K=2
K=3
K=4
0.1 0.2 0.3 0.4 0.5
5
10
15
(a) (µ2,1)∗ for c = 1 and K = 2, 3, 4
C=2
C=3
C=4
0.1 0.2 0.3 0.4 0.5
25
35
40
45
50
(b) (µ2,1)∗ for K = 4 and c = 2, 3, 4
Figure 4: (µ2,1)∗ as a function of c and K
more servers serve the same number of customers. Then, each server needs to serve less customers, and
thus its optimal capacity should decrease.
The following example is Example 2 for M/M/c/K facilities.
Example 5. Example 2 revisited Let CK = 0, c = 2, and K = 3. Figure 5 presents the blocking, and
total costs of Cost1(p) and Cost2(p). The costs elements of Cost1(p) are drawn by a solid line, and the
ones of Cost2(p) are drawn by a dashed line.
At Example 2, the blocking cost of Cost1(p) as a function of p is close to a straight line, parallel
to the p-axis, and the blocking cost of Cost2(p) is higher than the blocking cost of Cost1(p). Here, the
blocking cost of Cost1(p) is also, almost a straight line, parallel to the p-axis. However, the blocking cost
of Cost2(p) is smaller than the blocking cost of Cost1(p). That is, Theorem 6 is not satisfied here.
The differences between the two upper curves are the C∗K . The highest C∗K is around 25 for p ∈
[0.2, 0.3], and the lowest C∗K is around 12 for p ≈ 0.5. That is, C∗Ks are not necessarily higher than λ1.
0.1 0.2 0.3 0.4 0.5
0
400
600
800
Figure 5: Blocking and total costs of Cost1(p) and Cost2(p)
According to Theorem 2, when facilities are perfectly reliable, the capacity and blocking costs are
independent of m, and so the decision between opening m and m+ 1 facilities is a trade off between the
22
traveling and setup costs. That is, the problem is separable, and in order to solve the problem we can
use the three phases approach discussed in Subsection 3.2., i.e., first to solve a Location problem, then
to finds m∗ and finally to determine the optimal capacities.
According to Theorem 6, when facilities are unreliable, the capacity and blocking costs depend on m,
and the decision between opening m and m+ 1 facilities is a trade off among all the costs, which makes
it much harder to solve. Specifically, the blocking, capacity, and setup costs of operating m+ 1 facilities
are higher than those of operating m facilities, the failure cost of operating m + 1 is lower (but with a
low failure probability this cost has almost no effect), and the traveling cost can be smaller or higher,
depending on the value of the failure probability. Moreover, even for a given m different demands at the
nodes will result in different costs. In a general network, where facilities location influences the demand
faced by each facility, both the traveling, blocking and capacity costs depend on the location. Therefore,
in this setting, the question “what would the cost minimizing allocation of demand to facilities be?”
becomes important. To address this question, in the next section, we show that with unreliable facilities,
a fair location of the demand is best in terms of minimizing the blocking and capacity costs. We prove it
for the [1, 2] line, and conjecture it for a general network. This result will support a heuristic developed
in section 4.3, that will locate facilities in a general network such that their demand rates when there
are no failures will be as equal as possible to each other.
4.5 Demand allocation among facilities
As in a network settings, the choice of location affects the demands that the facilities face, we want to
study what are good allocations of the total demand among the facilities. The next result shows that
if the cost-function of facility j with respect to λj is convex in λj , a fair allocation of the demand is
optimal in order to minimize cost.
Observation 2. Consider the following optimization problem:
min F =
m∑
j=1
f(λj) (41a)
S.t.m∑
j=1
λj = λ, (41b)
where f(λj) is a convex function in λj. Then, the optimal solution is λj = λm ∀j ∈ {1, . . . ,m}.
To understand observation 2 intuitively, considering the single [1, 2] edge setting, we can define
f(λj) ≡ CB(1− p)( (1−p)(λj)2λj+µ2,j + pλ2
λ+µ2,j ) +Cµµ2,j for j ∈ J (the blocking and capacity costs of Cost2(p)).
Observation 2 implies that if f(λj) is a convex function in λj , then Cost2(p) is minimized if λj = λ2 for
j = 1, 2.
23
The following lemma shows that f(λj)s for j = 1, 2 are convex in λj , when the bounds (33) are used
as the solution of capacities.
Lemma 1. The f(λj)s with capacities given by (33) are convex in λjs.
With Observation 2 and Lemma 1, we can now deduce that Cost2(p) is minimized if λj = λ2 for
j = 1, 2. But, because we use the bounds (33) as the solution of capacities in Lemma 1, the next
theorem proves this directly.
Theorem 7. Cost2(p) is minimized when λ1 = λ2 = 0.5λ.
According to Theorem 7, Cost2(p) is minimized when the demand rates are equal to each other. We
believe that also in a general network G, with the same cost structure as (17a), there are m convex
functions f(λj)s, which are composed of the blocking and capacity costs of the opened facilities, when
λj is the demand rate that facility j faces. Thus, we conjecture
Conjecture 1. For any network G = (I, E), with m M/M/c/K facilities, locating facilities such that
their demand rates are equal to each other minimizes the total blocking and capacity cost.
Note that the traveling cost of Cost2(p) (see (28)) depends on λ, whereas the traveling cost in a
general network depends also on the division of λ across the facilities, so, the conjecture is made only
about the sum of the blocking and capacity costs.
The next numerical example shows that in accordance with Theorem 7, a fair allocation of the demand
is optimal also for M/M/c/K facilities.
Example 6. Fair allocation of demand: Let λ1 = 20, 30, 50(λ2 = 100 − λ1), c = 2, and K = 3.
Figure 6 shows Cost2(p) as a function of p for the three different divisions of λ. Cost2(p) when λ1 = 20
and 30 are drawn by a solid line, and Cost2(p) when λ1 = 50 is drawn by a dashed line. There is almost
no difference in Cost2(p) when λ1 = 20 and 30. However, it is clear that Cost2(p) is minimized when
λ1 = λ2 = 50.
In the next section we will solve the problem with unreliable facilities on a general network.
4.6 Solution on a general network
In this section we develop two heuristics to solve the problem with unreliable facilities on a general
network when facilities operate as M/M/c/K queues. We base these heuristics on our observations from
the analysis of the problem with reliable facilities, and on the line with unreliable facilities. Because the
problem with unreliable facilities cannot be decomposed, each heuristic calculates the total cost for a
24
0.0 0.1 0.2 0.3 0.4 0.5
550
600
650
700
750
800
850
Figure 6: Cost2(p) for λ1 = 20, 30, and 50
given number of facilities. In the first heuristic we locate facilities according to the m-median solution,
because, given Theorem 2, this is the optimal location for unreliable facilities. In the second heuristic
we locate facilities to allocate demand as fairly as possible, which given Conjecture 1, is optimal for
minimizing the total blocking and capacity costs. Both heuristics start their search at an initial guess as
detailed below.
The input of Algorithm 2, given in Online Appendix C, is the network G, the demand rates λi for
i ∈ I, the costs CB , Cµ, CK , and the parameters c,K of the M/M/c/K queue, and the failure probability
p.
The algorithm starts with Procedure 0 that finds initial guess m and is based on the relaxation of the
m-median problem and is followed by Procedure I is based upon the m-median problem, and Procedure
II that is based on the fair-m-median problem, which is discussed in [3].
Procedure 0: initial guess: Similar to Procedure 0 of Algorithm 1 (and from the same reasoning),
Procedure 0 finds a candidate m as a starting point of the search for the optimal number of facilities to
open, m∗. For each m ∈ I, it finds the optimal location according to the solution of the relaxed m-median
problem, calculates a lower bound on the total expected cost (as detailed below), and determines the
number of facilities that minimizes this cost, m.
The lower bound on the total expected cost when m facilities are opened is obtained by bounding
the traveling and blocking costs. For the traveling cost, the bound, Travel(m)LOW , is calculated as
follows: Let Travel(h) denote the sum of the traveling cost of the relaxed h-median solution for h ∈
{m,m− 1, . . . , 1}, multiplied by the probability that h facilities are operational, then
Travel(m)LOW =m∑
h=1
Travel(h)
(m
h
)pm−n(1− p)h
The lower bound on the expected blocking cost is obtained by assuming that each operating facility
25
always faces an equal demand rate. For example, when there are h operational facilities, each face a
demand rate λ/h.
Summing the blocking cost when h facilities are operational, multiplied by the probability that h
facilities are operational,
Block(m)LOW ⇐ mm∑
h=1
CB(λ/h)P jB(λ/h, µh,j)
(m
h
)pm−h(1− p)h
with P jB(·) given by (1-2).
The optimal capacities are evaluated numerically using the FOC of Block(m)LOW +mCµµm,j with
respect to µm,j (the assumption of equitable demand rates implies that the facilities are identical).
Finally, Procedure 0 determines the number of facilities that minimizes the total cost, denoted by m.
Procedure I: m-median: Procedure I determines the optimal number of facilities to be opened by a
search in a close neighborhood around m using the m-median heuristic. The stopping rule we implement
for the procedure assumes convexity in m of the total cost, and the total cost are approximated by
their lower bound developed in Theorem 3 with v = 3 (i.e, at most 3 failures in parallel). For each
m in this neighborhood, after finding the optimal facilities location, and the resulted traveling cost of
the m-median problem, Procedure I determines Π3, and calculates numerically the “optimal” capacities
using the FOC of Π3 and the capacity cost. Then, it evaluates Π3, and the capacity cost. Finally, it
calculates the expected traveling cost as described in Subsection 2.3.2., and the total cost of operating
m∗ facilities, including the setup and failure costs.
Procedure II: fair-m-median: Procedure II repeats Procedure I, but locates facilities according to
the fair-m-median heuristic from [3].
5 Case study
Our results can be applied to systems of identical service facilities with finite buffers, such as restaurants,
emergency departments and post-offices. For each application, appropriate choice of the parameters
CB , Cµ, CK , CT , c, and K are required. To demonstrate our results, we will next apply them to the
McDonald’s drive-through restaurants in Toronto, Canada.
A drive-through allows customers to purchase products without leaving the car. Generally, the orders
in a drive-through are placed using a microphone, and are taken in person at the pick-up window. The
cars move in one direction at the drive-through lane toward the foods request window. The food is
brought to the window by a server and the customers can remain in the car and eat. As the lane has a
finite length, some potential customers may see the entire lane busy, and are thus blocked. We believe
26
that the finite buffer queueing model is appropriate for this application.
The McDonald’s Corporation is the world’s largest chain of fast food restaurants. It is closely as-
sociated with its drive-through service, which aims at being available 24/7. However, customers often
are not satisfied with it, mostly because of the long waiting and service times, and the number of orders
that are served incorrectly (the order accuracy). For example, according to [31]: ”The drive-through
is getting slower. OK, so maybe this is one part of the drive-through experience that doesn’t come as
a total surprise. But the latest version of an annual study from QSR Magazine (QSR = quick serve
restaurant) confirms that wait times at the drive-through are on the rise. Last year study indicates that
the average drive-through wait time hit 181 seconds” (note that the ”wait time” usage here probably
relates to the service plus waiting times), and according to [26], the order accuracy of McDonald’s is
88.3% (note that the order accuracy and service times are co related - longer service times should imply
a higher order accuracy).
We use the data used in [9] to represent the Toronto metropolitan area in Canada. Specifically, the
area is partitioned into 96 FSAs areas (defined by the first three digits of the Canadian postal code),
and each such FSA is represented as a node in the network. Each one of the nodes has a demand that
represents the population that resides and work at the corresponding area. There is an edge between
two nodes only if the corresponding FSAs share a boundary.
We next solve the McDonald’s drive-through facility problem when minimizing the daily costs. We
model the drive-through facilities as M/M/1/15 queues, because on average there is a place for 15 cars
in the drive-through lane, and because (i) the customers often interact with a single server at the drive-
through window and (ii) the service capacity depends on several factors including, e.g., the number of
machines in different stations in the store thus, assuming a single server with a continuously adjusted
capacity may be appropriate.
The traveling cost is assumed to equal the distance that the customers travel, i.e., $1 per unit distance.
The setup cost CK we consider is $800 dollars per day. This corresponds to a planning period of five
years to return to equity and a typical McDonald’s facility setup cost of around $1, 500, 000, see, e.g., [16].
We assume that it costs $1 to serve a customer on average, so the capacity cost is Cµ = $1. Further,
we assume that a typical order costs $7.5 has a of food and packaging of $4, and so, with the $1 capacity
cost, the blocking cost is CB = $2.5 (profit lost per unsatisfied order on average). The failure probability
is assumed to be 0.01 and 0.02, corresponding to a failure of about three days and a week per year,
respectively. Finally, as there are 2.5 million visits to McDonald’s restaurants across Canada every day
( [30]), and with 35.16 million people living in Canada ( [12]), about 7% of the entire population in
27
(a) Theoretical solutions (b) Actual
Figure 7: McDonald’s drive through’ locations
Canada visits a McDonald’s restaurant each day. And according to [25] about 57% of customers at fast
food restaurants use the drive-through service, we assume that 3.5% of the population in Toronto visits
McDonald’s drive-throughs every day, so, each demand on the network is multiplied by 0.035.
Given this data and assumptions, we used Algorithm 1 to solve the reliable facilities problem and find
the corresponding cost, Algorithm 2 to solve the unreliable facilities and find the corresponding cost, and
the actual locations (given in [17]) assuming an optimal capacity is opened in each location to express
the corresponding cost (thus these results may be treated as a lower bound on the actual cost). We got
the following results:
Reliable case: open 42 facilities, total cost is $107, 374, optimal average service time is 1.5 minutes,
average waiting time in queue is 9.07 minutes. The cost of this solution with p = 0.01 and p = 0.02 is
$109, 975 and $115, 219, respectively.
Unreliable case with p = 0.01: open 42 facilities, total cost is $109, 325, optimal average service time
is 1.5 minutes, average waiting time in queue is 9.64 minutes.
Unreliable case with p = 0.02: open 44 facilities, total cost is $110, 323, optimal average service time
is 1.5 minutes, average waiting time in queue is 7.9 minutes.
Actual: 43 facilities in 34 locations, total cost without failures is $152, 313, optimal average service time
is 1.37 minutes, average waiting time in queue is 5.9 minutes.
The optimal facilities’ locations, and the actual locations are presented in Figure 7. Panel(a) includes
the theoretical solutions. For a failure probability of 0.01, the unreliable solution suggests the same
number and location of facilities as in the reliable case. For a failure probability of 0.02, the unreliable
solution suggests opening two additional facilities (the larger black circles), without changing locations
from the reliable model. The actual solution, depicted in panel (b), has red points to indicate there are
two facilities co-located at the same node.
28
The fact that the theoretical locations of the 42 facilities in the reliable case are the same as in the
unreliable case is not that surprising. Considering that the network has 96 nodes, the reliable solution
already locates at almost 50% of these nodes. Because the failure probability is low, there is no co-
location, and so there are not many different options for the locations. For p = 0.01, considering the
failures has almost no effect on the theoretical solutions, we only save about 0.6% of the costs. For
p = 0.02, the theoretical solutions save around 4.2% of the total daily cost, and open two more facilities
when failures are considered.
Comparing the theoretical with actual locations, we see that in practice there are almost no facilities
in the downtown area, whereas our theoretical solutions open 9 facilities there. This change can be
attributed to our usage of a fixed cost, CK , to open a facility. In practice, CK is location dependent,
and the real estate prices in downtown Toronto are the highest in the city, so there is a preference of
opening in other parts of the city. Moreover, as downtown is quiet congested, most people prefer walking
or public transportation to driving - reducing the demand for drive throughs.
The phenomena of the apparent co-location of the actual situation indicates that the data we use
is too aggregated, and we should have divided the Toronto area into areas defined by the entire postal
code, and not only by its first three digits.
However, the big difference between the cost of the theoretical and actual situation is misleading.
First reason for this high difference is the fixed CK as mentioned above. Second, the total cost that we
minimize includes opportunity cost represented by traveling and blocking costs, which are not paid by
McDonald’s. Ignoring these costs, the costs of the reliable, unreliable, and actual solutions are $73, 850,
$74, 695, and $75, 656, respectively, implying the theoretical solutions save 2.4% of the total daily cost,
and suggests that either McDonald’s underestimates the opportunity costs or that we overestimate them.
The average optimal service rates of the theoretical and the actual solutions are similar. Given these
service rates, the order accuracy should be high. The waiting times in queues of all solutions are high,
and ours are even higher than the actual situation. This is the result of the high utilizations: in the
reliable case it is 0.972, in the unreliable case it is 0.928, and in the current solution it is 0.867.
We can conclude that it is important to consider the possibility of failures, as this can significantly
improve the final cost. In order to be able to give more precise details of the McDonald’s situation, we
require more accurate data with respect to the failure probability, the costs, and the network.
29
6 Summary
In this paper we consider two cost minimization facility location problems. The first is a location problem
with congestion, where facilities are perfectly reliable and modeled as M/M/c/K queues. The service
level measure of the problem is the probability of blocked customers. The second problem extends the
first one by considering unreliable facilities. It is assumed that customers are aware of the operational
status of facilities, and always travel to their closest operational facility. The cost to be minimized
includes traveling, blocking, capacity, fixed operating, and in the model with failures also penalties for
failures. For each problem, the number of facilities to be opened, their location, and their capacities are
optimized.
We first analyzed the problems over the unit line. Then, we used the insights from this analysis to
provide efficient algorithms to solve the problem on a general network. We demonstrated the applicability
of our results and our algorithms with a case study that considered the drive-through operation of
McDonald’s in the Toronto metropolitan area. We found that ignoring failures can lead to wrong choices
and to a higher cost.
For future research, it would be interesting to consider these problems, when customers have no prior
information on the operational status of facilities, and have to search for an operating one (see [8]).
Another suggestion is to relax our assumptions of identical facilities (e.g., that all have the same c and
K and failure probability), further, the failure events may not be independent of each other.
References
[1] Baron, O., Berman, O., Krass, D. 2008. Facility location with stochastic demand and constraints
on waiting time. Manufacturing and Service Operations Management, 10(3), 484–505.
[2] Baron, O., Berman O., Krass D., Wang, Q. 2007. The equitable location problem on the plane.
European Journal of Operations Research, 183(2), 578–590.
[3] Berman O., Drezner Z., Tamir A., Wesolowsky, G. O. Optimal location with equitable loads. 2009.
Annals of operations research, 167, 307–326.
[4] Berman,O. Krass,D. 2002 Facility location problems with stochastic demands and congestion, in
Facility Location: Applications and Theory, Drezner, Z. and Hamacher, H.W. (eds.), Springer-
Verlag, New York, Chapter 11, 329–371.
[5] Berman O., Krass D. 2011. On n-facility median problem with facilities subject to failure facing
uniform demand. Discrete Applied Mathematics 159(6), 420–432.
30
[6] Berman, O. Krass D. 2015. Stochastic Location Models with Congestion, Chapter 17 Location ang
Logistics. Laporte, G., Nickel, S., Saldanha-da-Gama, F. Springer.
[7] Berman O., Krass D., Menezes M. B. C. 2007. Facility Reliability Issues in network p-median
problems: Strategic centralization and co-location effects. Operations Research 55(2), 332–350.
[8] Berman, O., Krass, D., Menezes, M. B. 2013. Location and reliability problems on a line: impact
of objectives and correlated failures on optimal location patterns. Omega, 41(4), 766–779.
[9] Berman O., Krass D., Wang J. 2006. Locating facilities to reduce lost demand. IIE Transactions,
38, 933–946.
[10] Berman O., Larson R.C. 1982. The Median Problem with Congested Facilities. Computer and
Operations Research, 9(2), 119–126.
[11] Boyd S., Vandenberghe L. 2004. Convex Optimization. Cambridge University Press.
[12] Canada Population 2014 (October 19, 2014).
Retrieved from http : //worldpopulationreview.com/countries/canada− population/.
[13] CBC News-Health (June 03, 2014). Medical wait times up to 3 times longer in Canada. Retrieved
from http://www.cbc.ca/news/health/medical-wait-times-up-to-3-times-longer-in-canada-1.2663013.
[14] Chang C. S., Chao X., Pinedo M., Shanthikumar J. G. 1991. Stochastic convexity for multidimen-
sional processes and its applications. Automatic Control, IEEE Transactions on, 36(12), 1347–1355.
[15] Drezner Z. 1987. Heuristic solution methods for two location problems with unreliable facilities.
Journal of the Operational Research Society, 509–514.
[16] Entrepreneur. About McDonald’s.
Retrieved from http : //www.entrepreneur.com/franchises/mcdonalds/282570− 0.html.
[17] Find a McDonald’s near you
Retrieved from http : //www.mcdonalds.ca/ca/en/restaurantlocator.html
[18] Gurvich I., Sarang D. 2011. Centralized vs. Decentralized Ambulance Diversion: A Network Per-
spective. Management Science. 57(3): 1300–1319.
[19] Hakimi S.L. 1964. Optimum locations of switching centers and the absolute centers and medians of
a graph. Operations Research, 12(3), 450–459.
[20] Hakimi S.L. 1965. Optimum distribution of switching centers in a communication network and some
related graph theoretic problems. Operations Research, 13(3), 462–475.
[21] Harel A. 1990. Convexity properties of the Erlang loss formula. Operations Research, 38(3), 499–505.
31
[22] Ingolfsson A. 2013. EMS Planning and Management. Operations Research and Health Care Policy.
Springer New York, 105–128.
[23] Jagerman D. L. 1975. Nonstationary blocking in telephone traffic. Bell System Technical Journal,
54(3), 625–661.
[24] Krarup, J., Pruzan, P.M. 1983. The simple plant location problem: survey and synthesis. European
Journal of Operational Research 12(1), 36–81.
[25] McDonnell S. What Percentage of Sales Are From Drive Through Windows at Fast Food Restau-
rants? Retrieved from http : //smallbusiness.chron.com/percentage − sales − drive − through −
windows− fast− food− restaurants− 75713.html
[26] QSR. 2011 Drive-Thru Study: Historical Order Accuracy.
Retrieved from http : //www.qsrmagazine.com/content/2011−drive− thru−study−historical−
order − accuracy
[27] Quora. What is the profit margin for fast food franchises like McDonald’s and Domino’s Pizza?
Retrieved from http : //www.quora.com/What− is− the− profit−margin− for− fast− food−
franchises− like−McDonalds− and−Dominos− Pizza
[28] Snyder L. V, Daskin M. S. 2005. Reliability models for facility location: the expected failure cost
case. Transportation Science, 39(3):400–416.
[29] Sztrik J. 2011. Basic Queueing Theory. University of Debrecen: Faculty of Informatics.
[30] The History of the Golden Arches.
Retrieved from http : //www.mcdonalds.ca/ca/en/ourstory/ourhistory.html
[31] Tuttle B. 10 Things You Didnt Know About the Fast Food Drive-Thru (October 8, 2014). Retrieved
from http : //time.com/money/3478752/drive− thru− fast− food− fast− casual/
[32] Verter, V., Lapierre S.D. 2002. Location of Preventive Health Care Facilities. Annals of Operations
Research, 110, 123–132.
[33] Weber A. Uber den Standort der Industrien. 1909. JCBMohr.
[34] Yao D. D., Shanthikumar J. G. 1986. The optimal input rates to a system of manufacturing cells.
Produced and distributed by Center for Research in Management, University of California, Berkeley
Business School.
32