Upload
others
View
14
Download
0
Embed Size (px)
Citation preview
Pooling Strategies for Call Center Agent Cross-training
Eylem Tekin∗
Department of Statistics and Operations Research
University of North Carolina-Chapel Hill
Chapel Hill, NC 27599-3180
Wallace J. Hopp
Department of Industrial Engineering and Management Sciences
Northwestern University
Evanston, IL 60208-3119
Mark P. Van Oyen
Department of Information Systems & Operations Management
Loyola University Chicago
25 E. Pearson Street
Chicago, IL 60611-2196
November 1, 2004
∗Corresponding author: Phone: (919) 962-3834 Fax: (919) 962-0391
Abstract
We consider call center environments where agents serve distinct customer types, and
investigate the efficiency benefits achievable via cross-training. We do this by first considering
specialized agents grouped into N departments according to the customer type they serve.
Then we examine cross-training policies that pool a set of departments K (selecting k = |K|of N) into a single larger department in which every agent serves all of the pooled call
types. For the pooled department, we analyze both First-Come-First-Served (FCFS) and
Non-Preemptive Priority (NPP) service disciplines. By comparing the resulting queueing
models via standard queueing approximations and numerical analysis, we characterize the
impact of system parameters, such as department sizes, arrival rates and service times, on
the decision of what departments to pool.
Keywords: Multi-class queueing systems, call centers, pooling, cross-trained servers, average
waiting time, flexibility.
1 Introduction
The proliferation of call centers in the global economy has elevated interest in the efficient
design and management of these systems. A practice that is particularly well suited to
improving call (or contact) centers is agent cross-training. Cross-training can increase staffing
and scheduling flexibility to improve customer service through more choices for matching
agents to customer service requests and enhance efficiency by reducing the total number of
agents needed to handle a given call load. Effective use of cross-training requires two steps:
(1) design, that determines which agents are trained to handle which customer types, and (2)
control, in which customers are dynamically assigned to agents. In this paper, we concentrate
on the design step by considering situations where the control step is straightforward due to
the departmental structure of the system.
A call center has a departmental structure if the agents can be divided into groups
such that each customer type is unambiguously assigned to a single group (department) for
service. The customer type to group assignment can be one-to-one, or if agents are cross-
trained to serve more than one type, many-to-one. For example, in a multilingual call center,
departments could correspond to groups of agents that handle customers from a specific set
1
of languages (Brigandi et al. 1994, Aksin and Karaesmen 2002). If all French speaking agents
also speak English and vice-versa, then we could pool the French and English departments
and route both call types to the combined department. However, if some, but not all
French speakers speak English, then the system no longer has a department structure, since
French/English agents cannot be assigned to a unique department. When the cross-training
pattern follows a non-departmental structure, the control problem of assigning customers to
agents become more complex (see Gans et al. 2003 for discussions). However, in many call
centers, such as financial services support, where customer types correspond to the products
about which they are calling, grouping agents into merged departments is a common practice
(Evenson et al. 1999). In such environments, it is important to know which departments to
pool via cross-training of agents. This paper provides insight into this problem.
To understand call centers with departmental structures, we consider environments in
which agents are initially grouped into departments based on the customer type(s) they are
assigned. We assume that departments differ with respect to parameters such as arrival rate,
mean service time, variability in service time and number of agents. Then we examine the
impact of pooling, namely combining two or more departments into a larger department with
the agents in the pooled department cross-trained to handle all of the call types of those
departments. This involves two fundamental issues: (1) how many departments to pool and
(2) which departments to pool. The specific focus of this paper is to determine how the
various system parameters – arrival rates, mean service times, variability in service times
and the number of agents – effect these pooling decisions.
Pooling has been widely studied in the literature (for example, see Mandelbaum and
Reiman 1998), usually as a comparison between the two extreme scenarios of a dedicated
system versus a fully pooled system. In a dedicated system, each group of servers is
responsible for a specific customer type while in a fully pooled system all servers are merged
into a single group to serve all customer types. However, in many real life situations, and
particularly in call centers, cross-training all agents to handle all call types may not be
feasible due to cost and/or quality penalties arising from cross-training, excessive stress,
and/or scarcity of agents capable of handling all of the call types. Although dedicated and
fully pooled systems are considered in this paper, we emphasize partial pooling scenarios in
which only some of the departments are pooled, while others continue to function as dedicated
2
departments. Specifically, we consider a call center consisting of N dedicated departments,
and seek to pool k ≤ N departments into a larger department so as to minimize the average
waiting time of customers in queue. However, because we recognize that using average
waiting time as the objective can lead to policies that degrade service to some customer
types, we also derive the sufficient conditions for pooling to reduce average waiting of all
customer types.
The remainder of this paper is organized as follows: Section 2 presents a literature
review. Section 3 develops models of the pooling strategies we consider. Section 4 evaluates
the relative effectiveness of these strategies and draws general conclusions about the benefits
of pooling. Section 5 concludes the paper.
2 Literature Review
The literature on call centers has been growing rapidly in recent years. Gans at al. (2003)
provided the most recent survey of this literature, as well as an excellent overview of the
system mechanics of call centers. Most analytic call center literature has focused on queueing
models that are based on the assumption that the customers and agents are homogenous
(see Koole and Mandelbaum 2002 for a thorough review and Whitt 2002 for future research
directions).
A large body of the queuing literature on call centers focuses on dynamic routing of
calls to available agents with the right skills. Perry and Nilsson (1992) considered a system
in which two classes of calls are served by a single pool of agents (V-design) and determined
both the number of agents and the assignment policy needed to yield specified expected
waiting times. Bhulai and Koole (2000) also modeled a variant of this system. Stanford
and Grassman (2000) considered a call center with two call types and two agent groups
where one group can handle both call types and the other can handle only one of them (N-
design), and used fixed priority policies and matrix-geometric methods for performance and
staffing analysis. Shumsky (2000) considered the same problem and proposed an approximate
analysis. Borst and Seri (2000) proposed a dynamic routing rule that prioritizes the call type
that is farthest behind the schedule, and determined bounds for the number of fully cross-
trained agents to offer a given service level. Koole and Talim (2000) modeled a multi-skill
call center as a network of queues and approximated each queue as an M/M/r loss system
3
to minimize the number of unanswered calls. Gans and Zhou (2003) studied a call routing
problem with two call types where one call always has priority over the other one and used
a Markov decision process model to achieve service level constraints.
Another stream of queueing based call center research focuses on heavy traffic analysis
and obtains asymptotic results. Harrison and Lopez (1999) considered the optimal dynamic
assignment of n non-identical servers working in parallel to m types of customers to minimize
waiting costs. They showed that if the server skills overlap in an appropriate manner, then in
the limiting Brownian control problem all servers merge into a pool of single service capacity.
Bell and Williams (2001) proved the asymptotic optimality of threshold controls for the N-
design discussed above. In contrast, Van Mieghem (1995) proved asymptotic optimality of
a simple generalized cµ rule for a V-design with waiting costs that are convex increasing.
Harrison and Zeevi (2004) studied staffing large call centers using stochastic fluid models.
Armony and Maglaras (2004a, 2004b) considered multi-class, multi-server call centers with
a call-back option, and proposed asymptotically optimal routing and staffing policies.
The literature most closely related to this paper has focused on choosing appropriate
skill sets for servers usually by comparing dedicated and fully pooled systems. The basic
pooling models on which this work is based on is described in Kleinrock (1976 pp.272-290).
Smith and Whitt (1981) and Benjaafar (1995) showed that a pooled system is better than
a dedicated one if arrivals and service times have the same distribution. Buzacott (1996)
considered a serial system with n stages where each customer is served by a distinct server
at each stage, and transformed this system into a parallel system with n servers in which
each server can perform the operations required for all n stages. He showed that the pooled
system where all servers can perform all tasks is superior to the unpooled alternative, and
the higher the task variability the greater the advantage. Mandelbaum and Reiman (1998)
considered pooling of a Jackson network into an M/PH/1 queue. They compared the pooled
and the unpooled system in terms of the steady state mean sojourn times and showed that
depending on the system parameters, pooling can be either good or bad. Andradottir and
Argon studied the effects of pooling several adjacent stations in tandem lines where servers
are cross-trained and two or more servers can operate on the same job. They showed that
benefits of pooling can be substantial and the bottleneck station should be among the pooled
stations to obtain the greatest improvement. Our research differs from this literature in
4
that we consider parallel service environments (e.g., call centers), and by comparing the
performance of many (partially) pooled systems we provide guidelines for choosing the best
alternative.
Finally, there are also papers that propose alternatives to pooling. Sheikhzadeh et
al. (1998) and Jordan et al. (2004) studied chaining of servers where each customer can be
routed to one of two adjacent servers and each server can process customers from two adjacent
classes. These studies showed that chaining has the potential to achieve most of the benefits
of pooling. Hopp et al. (2004) investigated value of chaining in serial production lines, and
showed that the impact of forming a complete chain of skills sets can be substantial. Iravani
et al. (2004) developed a structural flexibility index for systems with cross-trained servers
that quantifies the flexibility inherent in an arbitrary system structure.
3 Pooling Strategies
We consider a call center that services N customer types. We assume that the system has
a departmental structure, so that customer type i is served by an agent in department i,
i = 1, 2, . . . , N . We further assume that customer type i arrives according to a Poisson
process with mean λi, and requires a service time drawn from an i.i.d. sequence with mean
Ti and squared coefficient of variation ν2i . Department i has ci servers. Hence, the initial
system can be modeled as N M/G/c queues in parallel.
We define the pooling of the queues defined by set K (K ⊆ {1, 2, . . . , N}) as the
merging of the k = |K| departments in set K by cross-training all servers in the pooled
departments to handle all customer types in K (see Figure 1 for an illustration of pooling
departments 1 and 2 in a system with N = 3). Our interest is in determining which k
departments to pool in order to achieve the largest reduction of average customer waiting
time. We denote the average waiting time of customers in the queue of department i,
i = 1, 2, . . . , N , by Wi. We assume that the original system is stable, which requires
ρi =λiTi
ci
< 1, i = 1, 2, . . . , N.
Because standard performance measures cannot be expressed in closed form for the M/G/c
queue, a variety of approximation methods have been proposed. A number of authors have
independently proposed the following approximation for the average delay in queue, denoted
5
λ1, Τ1, ν1 c1
servers
c2
servers
λ2, Τ2, ν2
c3
servers
λ3, Τ3, ν3
Specialist System
c1+c2
servers
c3
servers
Pooled System
Figure 1: Pooling of two departments
by Wi (Krampe et al. 1973, Stoyan 1976, Nozaki and Ross 1978, Hokstad 1978):
Wi =1 + ν2
i
2λi
ρi(ρici)ci
ci!(1− ρi)2p0(ci, ρi) =
1 + ν2i
2λi
g(ci, ρi) (1)
where
p0(ci, ρi) =
[ci−1∑n=0
(ρici)n
n!+
(ρici)ci
ci!(1− ρi)
]−1
(2)
is the probability of having no customers, and
g(ci, ρi) =ρi(ρici)
ci
ci!(1− ρi)2p0(ci, ρi)
is the average number of customers in queue for an M/M/ci queue with utilization ρi.
Equation (1) is a heavy-traffic approximation and is exact for the M/G/1 and M/M/c
queues. Whitt (1993) reported that it is usually an excellent approximation, especially when
ρ is high. In our analyses, we will use expression (1) to compute the average delay. We
denote the average system delay (i.e., across all customer types) for the original system as
follows:
D0 =1
λT
N∑i=1
(ν2i + 1)
2g(ci, ρi) (3)
where λT =∑N
i=1 λi.
If we pool departments in the set K = {i1, i2, . . . , ik} (where k ≤ N so that K ⊆{1, 2, . . . , N}), the average system delay is
DK =1
λT
[(∑i∈K
λi)WK +∑
i/∈K
λiWi
](4)
6
where WK is the average delay for the pooled departments K = {i1, i2, . . . , ik}. Our problem
is to choose the set K to minimize WK subject to the constraint |K| = k. That is, we seek
the maximum impact from pooling k departments for any given k.
Computing delay in the pooled queue, WK , requires specification of the policy used
to serve the k customer types. We consider two policies: First-come-first-serve (FCFS) and
nonpreemptive priority (NPP) service. Many service systems use FCFS either to achieve
fairness or because they cannot distinguish customer types until service has begun. However,
it is well known that FCFS can increase average waiting time. So, we also consider the NPP
discipline to represent systems in which customer types are identified prior to service (e.g., via
a phone menu) and this information is used to prioritize them. In oder to obtain analytical
conditions and insights, in the sequel we will use the above queueing approximations as
acceptably accurate models of system behavior.
3.1 First-Come-First-Served Service Discipline
Suppose departments in the set K = {i1, i2, . . . , ik} are pooled so that these customer types
are served in FCFS order by∑
i∈K ci servers. The squared coefficient of variation for the
aggregate service time distribution (ν2K) of the pooled department is given by:
ν2K =
λK
∑i∈K λiT
2i (ν2
i + 1)
(∑
i∈K λiTi)2− 1 , (5)
where λK =∑
i∈K λi. Using expression (1), we can (approximately) evaluate the average
delay for customers in the pooled department as:
W FCFSK =
ν2K + 1
2λK
g
(∑i∈K
ci,
∑i∈K ciρi∑i∈K ci
), (6)
and hence, average system delay can be expressed as:
DFCFSK =
1
λT
[ν2
K + 1
2g
(∑i∈K
ci,
∑i∈K ciρi∑i∈K ci
)+
∑
i/∈K
νi + 1
2g(ci, ρi)
]. (7)
Because customer arrivals are Poisson and service times are i.i.d., all customers within the
pooled department experience the same mean wait in a FCFS queue prior to service.
3.2 Nonpreemptive Priority Service Discipline
In this section, we consider systems in which customers are served (non-preemptively) in
priority order in the pooled queue. For an M/G/1 queue with k customer types and a non-
7
preemptive priority (NPP) service discipline, one can compute the exact average delay of
each customer type. For multi-server systems, we can approximate the average delay of each
customer with priority n as follows:
WNPPn =
WM/G/c:FCFS
WM/G/1:FCFSWM/G/1:NPP
n (8)
The first term in equation (8) is the ratio by which the average delay changes by going from
one server to c servers for the FCFS service discipline. This approximation is based on the
assumption that this ratio is rather insensitive to the service discipline (see Buzacott and
Shanthikumar 1984 p. 88 for justification and further details.)
Now suppose we pool departments K = {i1, i2, . . . , ik}. Without loss of generality,
assume that K = {1, . . . , k} and customer type i is given non-preemptive priority over
customer type j whenever i < j. In order to use equation (8), we need to evaluate each
component, i.e., WM/G/1:FCFS, WM/G/c:FCFS, and WM/G/1:NPP . The first one is well known
to be
WM/G/1:FCFS =λE(S2)
2(1− ρ)
where λ is the arrival rate, E(S2) is the second moment of the service time and ρ is the
utilization (Kulkarni 1995 p. 379).
To compute WM/G/1:FCFS, first note that when departments K = {1, 2, . . . , k} are
pooled, the pooled system has an arrival rate of∑
i∈K λi and∑
i∈K ci servers. To model
this system as an M/G/1 queue, for each i ∈ K we define T′i = Ti/
∑n∈K cn and E(S
′i
2) =
E(S2i )/(
∑n∈K cn)2 as the new mean service times and corresponding second moments. Then
the second moment of the service time in the pooled queue is
E(S2K) =
∑i∈K
λi
λK
E(S′i
2) =
∑i∈K λiE(S2
i )
λK(∑
i∈K ci)2=
∑i∈K λiT
2i (ν2
i + 1)
λK(∑
i∈K ci)2.
Hence, the single server pooled system has average delay
WM/G/1:FCFS =
∑i∈K λiT
2i (ν2
i + 1)
2(1− ρ′)(∑
i∈K ci)2
where
ρ′=
∑i∈K λiTi∑
i∈K ci
.
From Equations (1) and (5), we can compute the multi-server average delay as
WM/G/c:FCFS =
∑i∈K λiT
2i (ν2
i + 1)
2(∑
i∈K λiTi)2g(
∑i∈K
ci, ρ′).
8
Finally, to compute WM/G/1:NPPn , we note that the average delay for a customer with priority
n is (see Gelenbe and Mitrani 1980 pp. 35–40)
WM/G/1:NPPn =
W0
(1− ρHn)(1− ρHn − ρ′n)
where ρHn = ρ′1 + ρ
′2 + . . . + ρ
′n−1,
ρ′n =
λnTn∑i∈K ci
,
and
W0 =
∑i∈K λiT
2i (ν2
i + 1)
2(∑
i∈K ci)2.
Combining these terms in Equation (8) yields:
WNPPn =
1− ρ′
2(1− ρHn)(1− ρHn − ρ′n)
∑i∈K λiT
2i (ν2
i + 1)
(∑
i∈K λiTi)2g(
∑i∈K
ci, ρ′) . (9)
Hence, the average system delay under the NPP service policy is:
DNPPK =
1
λT
[∑n∈K
λn
(1− ρ′)∑
i∈K λiT2i (ν2
i + 1)
2(1− ρHn)(1− ρHn − ρ′n)(∑
i∈K λiTi)2g(
∑i∈K
ci, ρ′) +
∑
n/∈K
ν2n + 1
2g(cn, ρn)
].
(10)
4 Analysis
We now make use of the above models to examine the impact of various system parameters
on the choice of which departments to pool: (1) mean service times (Ti), (2) the number of
servers (ci) for each department, (3) squared coefficient of variation of service times (ν2i ), (4)
the combined effects of mean service time and the number of servers, and (5) arrival rates
(λi). The system utilization has a first order effect on performance, so we must carefully
control for this effect. We require that all N departments be adequately staffed so that their
utilizations are all equal to ρ. This scenario is reasonable in light of the many applications
in which managers strive for a high utilization of all agents. Koole and Mandelbaum (2002)
report that most call centers operate at a service level of approximately 90-95%. Given
uniform utilization of departments, we investigate the impact of T, c, λ and ν on the pooling
decision. Finally, we consider the impact of different department utilizations by varying the
arrival rate. We perform all of our analyses for both FCFS and NPP service disciplines.
9
4.1 Effect of Service Time
To investigate the role of service time, we consider systems where cρ = λiTi and νi = ν,
i = 1, 2, . . . , N . Note that we are forced to scale the arrival rates so that the utilization
is held constant even though service times vary between departments. Using Equation (6),
we can write the average delay of customers in the pooled queue under the FCFS service
discipline as:
W FCFSK =
ν2 + 1
2k2cρ
(∑i∈K
Ti
)g(kc, ρ)
From Equation (7), the average system delay is given by:
DFCFSK =
1
λT
ν2 + 1
2
[1
k2
(∑i∈K
1
Ti
) (∑i∈K
Ti
)g(kc, ρ) + (N − k)g(c, ρ)
](11)
Smith and Whitt (1981) showed that when service rates are different, pooling can be
counterproductive. By considering an example where two M/M/1 queues are pooled, they
demonstrate that the average waiting time can be arbitrarily large if the two service rates
differ greatly from each other. In Proposition 1, we provide a sufficient condition for pooling
to be advantageous in systems with uniform utilization and service time variability.
Proposition 1 If ρ = λiTi/c and νi = ν for i = 1, 2, . . . , N , given the mean service times
Tn, n = 1, 2, . . . , N , if there exists a k-tuple for which k3 ≥ (∑i∈K 1/Ti
) (∑i∈K Ti
), then
DFCFSK ≤ D0.
Proof: From Equations (3) and (11),
D0 −DFCFSK =
1
λT
ν2 + 1
2
[kg(c, ρ)− 1
k2
(∑i∈K
1
Ti
)(∑i∈K
Ti
)g(kc, ρ)
]
≥ 1
λT
ν2 + 1
2g(kc, ρ)
[k − 1
k2
(∑i∈K
1
Ti
) (∑i∈K
Ti
)]
where the inequality follows from g(c, ρ) ≥ g(kc, ρ) (i.e., average number of customers in an
M/M/c queue is decreasing in the number of servers when ρ is fixed). Therefore, D0 ≥ DFCFSK
if
k − 1
k2
(∑i∈K
1
Ti
)(∑i∈K
Ti
)≥ 0 (12)
10
which proves the result. 2
As an example, consider k = 2 and assume that we pool departments i and j. Condition
(12) reduces to 2− (Ti + Tj)2/4TiTj which implies that T 2
i − 6TiTj + T 2j ≤ 0. Without loss
of generality, we can assume Ti > Tj and define Ti = aTj where a ∈ R and a ≥ 1. Then the
last inequality can be written as a2−6a+1 ≤ 0. The root that satisfies the constraint a ≥ 1
for this quadratic function is a = 3 + 2√
2, and the inequality is satisfied when a ≤ 3 + 2√
2.
Thus, if there exist two departments for which the expected service time of one does not
exceed approximately six times that of the other, pooling is always advantageous.
Assuming that there is at least one k-tuple that satisfies the condition in Proposition
1, the k departments to pool to minimize the average system delay given by Equation (11)
are the ones that minimize(∑
i∈K Ti
) (∑i∈K 1/Ti
). Note that this expression is minimal
when all service times are equal, and it implies that the k departments to pool should be
the ones with mean service times close to each other.
For instance, for k = 2, the departments to pool are (i, j) = arg minij{Tj/Ti :
Tj ≥ Ti, i = 1, 2, . . . , N, j 6= i}. The intuition behind this result is the following. If two
departments, one with very short and the other with very long service times, are pooled,
then under FCFS the customers with short processing times will wait longer than they did
in the original system because of the customers with long service times who arrive before
them.
To examine the “equity” (fairness) issues involved in pooling, we can compare the
difference in average delay experienced by customer type n, n ∈ K, without and with
pooling; given by:
Wn −W FCFSK =
ν2 + 1
2cρ
[Tng(c, ρ)− 1
k2(∑i∈K
Ti)g(kc, ρ)
]
≥ ν2 + 1
2cρg(kc, ρ)
[Tn − 1
k2(∑i∈K
Ti)
].
Hence, under FCFS, if k2 ≥ (∑
i∈K Ti)/Tn, average delay for customer type n declines.
Otherwise, pooling may increase the average delay of customer type n.
To see the impact of pooling on customer type n under the NPP service discipline,
without loss of generality assume that K = {1, 2, . . . , k}, and note that
WNPPn =
ν2 + 1
2
1− ρ
(1− (n− 1)ρ/k)(1− nρ/k)
∑i∈K Ti
k2cρg(kc, ρ) (13)
11
DNPPK =
1
λT
ν2 + 1
2
[∑i∈K Ti
k2
∑n∈K
1− ρ
Tn(1− (n− 1)ρ/k)(1− nρ/k)g(kc, ρ) + (N − k)g(c, ρ)
]
(14)
Equation (14) shows that average delay in the system is minimized when priority is given
to the customer type with smaller mean service time. Pooling k departments and serving
the customers in the pooled queue in NPP order may also result in a longer average system
delay than in the specialist system.
Proposition 2 If ρ = λiTi/c and νi = ν for i = 1, 2, . . . , N , given mean service times Tn,
n = 1, 2, . . . , N , if there exists a k-tuple for which
k3 ≥(∑
i∈K
Ti
)(∑n∈K
1− ρ
Tn(1− (n− 1)ρ/k)(1− nρ/k)
), (15)
then DNPPK ≤ D0.
Proof: Under conditions of the proposition,
D0 −DNPPK =
ν2 + 1
2λT
[kg(c, ρ)−
(∑i∈K
Ti
)(∑n∈K
1− ρ
Tn(k − (n− 1)ρ)(k − nρ)
)g(kc, ρ)
]
≥ ν2 + 1
2λT
g(kc, ρ)
[k −
(∑i∈K Ti
k2
) (∑n∈K
1− ρ
Tn(1− (n− 1)ρ/k)(1− nρ/k)
)].
The result follows. 2
Let us define B(n) = (1 − (n − 1)ρ/k)(1 − nρ/k) for n = 1, 2, . . . , k. If there is at
least one k-tuple that satisfies the condition in Proposition 2, the k departments to pool to
minimize the average system delay given by Equation (14) are the ones that minimize
(∑i∈K
Ti
)(∑i∈K
1/B(i)Ti
). (16)
Hence, under NPP, the decision of which k departments to pool depend on the mean service
times as well as the utilization. Expression (16) also implies that the mean service times in
the pooled system should be similar. On the other hand, pooling may increase the average
delay of customer types as shown below:
Wn −WNPPn ≥ ν2 + 1
2cρg(kc, ρ)
[Tn − 1− ρ
(1− (n− 1)ρ/k)(1− nρ/k)
∑i∈K Ti
k2
]. (17)
12
5
10
15
20
25
1 2 3 4
FCFSNPP
T1=1 T2=1.2 T3=50 T4=55 ρ =0.8 c=1 ν=1
FCFSk=2 Pool 3,4k=3 Pool 2,3,4
NPPk=2 Pool 1,2k=3 Pool 2,3,4
DK
k
Figure 2: Average delay in queue for ρ = λiTi/c for i = 1, 2, 3, 4
If
k2 ≥ 1− ρ
(1− (n− 1)ρ/k)(1− nρ/k)
∑i∈K Ti
Tn
, (18)
then Wn ≥ WNPPn . Hence, if conditions given in Equations (15) and (18) hold, pooling
departments improves service for all customer types.
We use the results of this section to provide managerial insights via two examples.
First, we consider a four department system (N = 4) in which two customer types have
short mean service times, while the others require much longer service times. For example,
type 1 calls may be arriving from remote repair technicians at independent shops who are
requesting simple firmware information, type 2 calls are for product registration, and types
3 and 4 are complex technical support and problem solving tasks. Figure 2 presents the
minimal average system delay as we successively pool departments. We use k to represent
the number of pooled departments and for each k find the “optimal” set of departments to
pool, so that average system delay is minimized. The case for k = 1 corresponds to the
specialist system. Observe that for k = 2 pooling decreases average system delay under both
FCFS and NPP. However, when we further increase the number of pooled departments to
k = 3, the performance becomes much worse, and the resulting average delay far exceeds even
than that of the specialist system. We note that the sufficiency conditions of Propositions
13
0
5
10
15
20
25
30
35
1 2 3 4 5 6
FCFS rho=0.9NPP rho=0.9FCFS rho=0.95NPP rho=0.95
(4,5)
(4,5,6)
(2,3,4,5)
(2,3,4,5,6)
(1,3)
(2,3,6)
(2,3,4,6)
(2,3,4,5,6)
(3,4,5,6)
(2,3,5)
(1,2)
(2,3,4,5,6)
T1=1 T2=3 T3=4.5 T4=10 T5=12 T6=24 c=2 ν=1DK
k
Figure 3: Average delay in queue for ρ = λiTi/c for i = 1, 2, . . . , 6
1 and 2 are not satisfied. Finally, when all departments are pooled (k = 4), the average
delay is less than in the specialist system, but only under NPP. Under FCFS, the delay from
pooling all departments is better than pooling three departments, but it is still worse than
that of the specialist system. Hence, whether or not pooling is beneficial always depends
on how many departments are pooled and the mean service times. In the case of NPP, the
question also depends on utilization. As our example graphically illustrates, it is important
for managers to understand that the effect of pooling can fluctuate from better to worse, or
vice versa, as the number of pooled departments increases.
Second, we consider a system with heterogenous mean service times where the
sufficiency conditions are always satisfied as we successively pool departments i = 1, 2, . . . , 6.
Figure 3 shows that this results in a decrease in the average system delay as k increases for
both FCFS and NPP. For each k value in the figure, the optimal set of departments to pool
is also indicated. As k increases, the optimal set of departments to pool does not change in
a greedy way. For instance, under FCFS when ρ = 0.95, it is optimal to pool departments 4,
5 and 6 if k = 3, but it is optimal to pool departments 2, 3, 4 and 5 if k = 4. Moreover, as
utilization increases, the incremental benefit of pooling declines more rapidly with k. Note
that, under FCFS, the optimal set of departments to pool does not change with utilization.
14
However, under NPP, the optimal set does depend on the utilization, as we expect from
Equation (14).
4.2 Effect of Department Size
To consider the impact of department size, we begin with the case where all service times
are drawn from the same distribution. We set T = Ti and ν = νi, and ρ/T = λi/ci,
i = 1, 2, . . . , N . That is, departments see different arrival rates but are initially staffed such
that utilization is the same. Average customer delay in the pooled queue and the overall
system under FCFS are given by:
W FCFSK =
ν2 + 1
2
T
ρ∑
i∈K ci
g(∑i∈K
ci, ρ) (19)
DFCFSK = DNPP
K =1
λT
ν2 + 1
2
[g(
∑i∈K
ci, ρ) +∑
i/∈K
g(ci, ρ)
](20)
The average delay in the system is the same under FCFS and NPP because the mean service
times are equal for all departments (see Lemma 1 in the Appendix for a proof of this intuitive
result).
Pooling decreases the average system delay for both FCFS and NPP since
D0 −DK =ν2 + 1
2λT
[∑i∈K
g(ci, ρ)− g(∑i∈K
ci, ρ)
]> 0
and g(c, ρ) is a non-increasing function of c when ρ is fixed. It can also be shown that
g(c, ρ) is convex in c when ρ is fixed (see Dyer and Proll 1977). This enables us to prove the
following.
Theorem 1 If ρ = λiT/ci and νi = ν for i = 1, 2, . . . , N , then pooling the k smallest
departments minimizes the average delay in the system under both FCFS and NPP.
Proof: Without loss of generality, assume that ci ≤ cj whenever i ≤ j. Let DK denote
the average system delay when the k smallest departments are pooled. Let DK′ denote the
average system delay when the k−1 smallest departments and department k +1 are pooled.
Then we can write the difference between the average delays for these two systems as follows:
DK′ −DK =1
λT
ν2 + 1
2
[g(
k−1∑i=1
ci + ck+1, ρ) + g(ck, ρ)− g(k∑
i=1
ci, ρ)− g(ck+1, ρ)
]
15
Since g(c, ρ) is a non-increasing convex function of c when ρ is fixed, g(ck, ρ)− g(ck+1, ρ) ≥g(
∑ki=1 ci, ρ) − g(
∑k−1i=1 ci + ck+1, ρ). Hence, DK
′ ≥ DK . This inequality remains valid
whenever we replace any of the k smallest departments with a larger department. Hence,
the result follows. 2
This result is rather intuitive because g(c, ρ) is a convex non-increasing function of c
and the slope of this curve is very steep at small values of c. To gain insight into what type
of priority policy should be used, we define C(n) =∑n
i=1 ci, and note that average delay of
a customer with priority n under NPP is:
WNPPn =
(ν2 + 1)T
2ρC(k)
1− ρ
(1− ρC(n− 1)/C(k))(1− ρC(n)/C(k))g(
∑i∈K
ci, ρ) (21)
By a simple interchange argument in Equation (21), we see that priority should be given to
the customer with the smallest arrival rate in order to minimize delay.
Under both FCFS and NPP, the average delay for each customer type in the pooled
queue is less than or equal to the delay in the specialist system since
Wn −W FCFSK =
ν2 + 1
2
T
ρ
[g(cn, ρ)
cn
− g(∑
i∈K ci, ρ)∑i∈K ci
]> 0
and
Wn −WNPPn =
ν2 + 1
2
T
ρ
[g(cn, ρ)
cn
− (1− ρ)/C(k)
[1− ρC(n− 1)/C(k)][1− ρC(n)/C(k)]g(
∑i∈K
ci, ρ)
]
>ν2 + 1
2
T
ρ
[g(cn, ρ)
cn
− 1
[1− C(n− 1)/C(k)]C(k)g(
∑i∈K
ci, ρ)
]
=ν2 + 1
2
T
ρ
[g(cn, ρ)
cn
− g(∑
i∈K ci, ρ)
C(k)− C(n− 1)
]
>ν2 + 1
2
T
ρcn
[g(cn, ρ)− g(
∑i∈K
ci, ρ)
]> 0
To summarize, when ρ = λiT/ci and νi = ν for i = 1, 2, . . . , N , pooling is always
beneficial. It is optimal to pool the k smallest departments. The average system delay and
the average delay for each customer type are decreasing in the number of pooled departments
(k) as can be seen from Equations (19), (20) and (21) .
4.3 Effect of Service Time Coefficient of Variation
To see how variability of service times affects the decision of which departments to pool, we
consider the case where departments differ only in terms of their service time cv’s (νi). Since
16
λ = λi, T = Ti, c = ci for i = 1, 2, . . . , N , it follows that the average delay in the pooled
queue under FCFS is:
W FCFSK =
∑i∈K(ν2
i + 1)
2λk2g(kc, ρ)
DFCFSK = DNPP
K =1
λT
[∑i∈K(ν2
i + 1)
2kg(kc, ρ) +
∑
i/∈K
(ν2i + 1)
2g(c, ρ)
](22)
As in the previous section, DFCFSK = DNPP
K (see Lemma 2 in the Appendix for a proof).
Furthermore, since
D0 −DK =1
λT
(∑i∈K
ν2i + 1
2
)[g(c, ρ)− g(kc, ρ)/k] > 0,
pooling is always advantageous under both FCFS and NPP when departments differ only in
service time cv. The following result shows how to pool for maximum effect.
Theorem 2 If ρ = λT/c for all departments and νi 6= νj for i = 1, 2, . . . , N , i 6= j, pooling
the k departments with the highest service time cv’s minimizes the average system delay.
Proof: By adding and subtracting the term
1
λT
∑i∈K
ν2i + 1
2g(c, ρ)
to (from) Equation (22) we obtain the following equality:
λT DK =g(kc, ρ)− kg(c, ρ)
k
∑i∈K
ν2i + 1
2+
N∑i=1
ν2i + 1
2g(c, ρ) (23)
We want to choose a set K to minimize DK given in Equation (23). Note that the last
term in equation (23) is a constant and hence does not affect the minimization. In the first
term, g(kc, ρ) − kg(c, ρ) < 0 because g(c, ρ) > g(kc, ρ). DK is minimized when the value∑
i∈K(ν2i + 1)/2 is maximal. Hence, we conclude that the set of departments to be pooled
are the ones with the highest cv’s. 2
Under this principle, the average delay in the system decreases as the number of pooled
departments (k) increases. To observe this relabel the departments so that νi ≥ νj whenever
i < j, and denote K = {1, . . . , k} and K′= {1, . . . , k + 1}. Then using Equation (22), we
can show that DK ≥ DK′ (see Lemma 3 in the Appendix for a proof).
17
However, since
Wn −W FCFSK =
ν2n + 1
2λg(c, ρ)−
∑i∈K(ν2
i + 1)
2λk2g(kc, ρ)
≥ g(kc, ρ)
2λ
[(ν2
n + 1)−∑
i∈K(ν2i + 1)
k2
]
average waiting times of customers in the pooled departments will decrease under FCFS if
k2 ≥ ∑i∈K(ν2
i + 1)/(ν2n + 1). For example, if ν2
i ≤ 1 for i ∈ K, this condition is satisfied for
all customer types served by the pooled department.
In contrast, under NPP
WNPPn =
1− ρ
2λ(k − (n− 1)ρ)(k − nρ)
(∑i∈K
(ν2i + 1)
)g(kc, ρ) (24)
and
Wn −WNPPn ≥ g(kc, ρ)
2λ
[(ν2
n + 1)− 1− ρ
(k − (n− 1)ρ)(k − nρ)
∑i∈K
(ν2i + 1)
](25)
Hence, pooling does not increase the average delay for customer with priority n if the term
in the brackets in Equation (25) is non-negative.
4.4 Effect of Department Size and Service Times
We now consider environments with fixed utilization, but varying department size and service
times so that ρ/λ = Ti/ci ,i = 1, 2, . . . , N . Average delay for customers in the pooled queue
under FCFS is:
W FCFSK =
ν2 + 1
2λ
∑i∈K c2
i(∑i∈K ci
)2 g(∑i∈K
ci, ρ)
Average system delay under FCFS is:
DFCFSK =
1
λT
(ν2 + 1)
2
[k
∑i∈K c2
i(∑i∈K ci
)2 g(∑i∈K
ci, ρ) +∑
i/∈K
g(ci, ρ)
](26)
Since
D0 −DFCFSK =
1
λT
ν2 + 1
2
[∑i∈K
g(ci, ρ)− k∑
i∈K c2i
(∑
i∈K ci)2g(
∑i∈K
ci, ρ)
]
>1
λT
ν2 + 1
2
[∑i∈K
g(ci, ρ)− kg(∑i∈K
ci, ρ)
]> 0,
18
c1 = 1 c3 = 50 λλλλ = 1 ρ ρ ρ ρ = 0.75
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
0 5 10 15 20 25 30 35 40 45 50
c2
Wa
itin
g t
ime
in
th
e q
ue
ue
Pool 1 and 2Pool 1 and 3Pool 2 and 3
Figure 4: Average delay for ρ/λ = Ti/ci
c1 = 1 c3 = 50 λλλλ = 1 ρρρρ = 0.95
9
9.5
10
10.5
11
11.5
12
12.5
13
13.5
0 5 10 15 20 25 30 35 40 45 50
c2
Wa
itin
g t
ime
in
th
e q
ue
ue
Pool 1 and 2Pool 1 and 3Pool 2 and 3
Figure 5: Average delay for ρ/λ = Ti/ci
pooling is always beneficial regardless of the set K. Furthermore, the average delay of each
customer type in the pooled queue is also reduced, as can be seen by the following equation:
Wn −W FCFSK ≥ ν2 + 1
2λg(
∑i∈K
ci, ρ)
[1−
∑i∈K c2
i
(∑
i∈K ci)2
]> 0.
However, unlike the other environments, there is no simple pooling rule for this case.
To see this, consider a system initially composed of three departments with c1 < c2 < c3
which also implies T1 < T2 < T3. Figures 4 and 5 show that pooling any of the three
combinations can be the best depending on how far c1, c2 and c3 are from each other. In
Figures 4 and 5, we set c1 = 1, c3 = 50, and vary c2 from 2 to 49 for utilization ρ = 0.75 and
ρ = 0.95, respectively. For ρ = 0.75, plotting DFCFS{1,2} , DFCFS
{1,3} , and DFCFS{2,3} , we observe that
pooling 1 and 2 is optimal only for c2 = 2. For every other value of c2, pooling 1 and 3 is
optimal. However, when we increase utilization to 0.95, pooling 1 and 2 is optimal for small
values of c2 but pooling 2 and 3 (the two largest departments) minimizes average system
delay for larger values of c2. Moreover, depending on the ρ and c values, DFCFSK can be a
convex or a concave function of c2.
To consider the NPP case, let C(n) =∑n
i=1 ci as before and assume that K =
{1, 2, . . . , k}. The average delay for a customer with priority n and the average system
delay under NPP are:
WNPPn =
(ν2 + 1)
2λ
(∑i∈K
c2i
)1− ρ
(C(k)− ρC(n− 1))(C(k)− ρC(n))g(C(k), ρ). (27)
19
0
5
10
15
20
25
30
1 2 3 4 5 6
FCFS rho=0.9NPP rho=0.9FCFS rho=0.95NPP rho=0.95
(4,5)
(3,4,5)
(2,3,4,5)
(2,3,4,5,6)
(1,2)
(1,2,3)
(1,2,3,4)
(1,2,3,4,5)
(1,2,3,4)
(2,3,4)
(2,3)
(1,2,3,4,6)
c1=2 c2=3 c3=5 c4=8 c5=10 c6=13 λ=0.5 ν=1DK
k
(1,2)
(1,2,3)
(1,2,3,4)(1,2,3,4,5)
Figure 6: Average delay in queue for ρ/λ = Ti/ci
DNPPK =
1
λT
ν2 + 1
2[
(∑i∈K
c2i
) ∑n∈K
1− ρ
(C(k)− ρC(n− 1))(C(k)− ρC(n))g(C(k), ρ)
+∑
i/∈K
g(ci, ρ)] (28)
From Equations (27) and (28), it follows that priority should be given to the customer with
smallest mean service time.
D0 −DNPPK =
ν2 + 1
2λT
[∑i∈K
g(ci, ρ)−(∑
i∈K
c2i
) ∑n∈K
(1− ρ)g(C(k), ρ)
(C(k)− ρC(n− 1))(C(k)− ρC(n))
]
>ν2 + 1
2λT
[∑i∈K
g(ci, ρ)−(∑
i∈K c2i
)
C(k)
(∑n∈K
1
C(k)− C(n− 1)
)g(C(k), ρ)
]
>ν2 + 1
2λT
[∑i∈K
g(ci, ρ)− k(∑
i∈K c2i
)
ckC(k)g(C(k), ρ)
]
>ν2 + 1
2λT
[∑i∈K
g(ci, ρ)− kg(C(k), ρ)
]≥ 0 (29)
Hence, pooling under NPP always reduces the average system delay. Pooling also reduces
the average delay for each customer type (i.e, Wn ≥ WNPPn for n ∈ K). The proof is similar
to that of (29) and hence omitted for brevity.
As under FCFS, it is not possible to identify a simple rule to decide which k departments
20
to pool under NPP. Hence, the k departments to pool should be determined by evaluating
Equations (26) and (28) for FCFS and NPP, respectively, for all possible combinations.
Figure 6 shows a numerical example for ρ/λ = Ti/ci, i = 1, 2, . . . , 6. The optimal set
of departments to pool depends on the utilization for both FCFS and NPP. Under NPP,
pooling the smallest departments results in the minimum average system delay in almost all
cases.
4.5 Effect of Utilization
Finally, we consider pooling when department utilizations are different. We investigate this
case by varying the arrival rates (λ) and setting other parameters equal for all departments.
W FCFSK =
ν2 + 1
2
1∑i∈K λi
g(kc,
∑i∈K ρi
k)
DFCFSK = DNPP
K =1
λT
ν2 + 1
2
[g(kc,
∑i∈K ρi
k) +
∑
i/∈K
g(c, ρi)
]
(See Lemma 4 in the Appendix for a proof of W FCFSf(K) = WNPP
f(K) .) Pooling always reduces
average system delay since
D0 −DK =ν2 + 1
2λT
[∑i∈K
g(c, ρi)− g(kc,∑i∈K
ρi/k)
]> 0.
However, when a high utilization department is pooled with a low utilization department,
the average delay for the low utilization department increases. Therefore, Wn > W FCFSK is
not always true.
Under NPP, the average delay for a customer with priority n is:
WNPPn =
ν2 + 1
2
1−∑i∈K ρi/k
(1− 1k
∑n−1i=1 ρi)(1− 1
k
∑ni=1 ρi)(
∑i∈K λi)
g(kc,∑i∈K
ρi/k).
Hence, giving priority to the lowest utilization customer type decreases the average customer
delay. It is also straightforward to show Wn ≥ WNPPn , so pooling with prioritization reduces
delay for all customer types.
For both FCFS and NPP, Table 1 shows how the average delays for individual customer
types changes in k. Note that this study allows heterogeneity in the departmental utilizations
of the initial, unpooled system. In Table 1, the numbers in bold in each column show the
21
k=1 k=2 k=3 k=4 k=5 k=6FCFS Dept. 1 10.00 11.41 10.52 8.98 10.00 5.97
Dept. 2 56.67 56.67 56.67 56.67 15.65 5.97Dept. 3 66.92 66.92 66.92 66.92 15.65 5.97Dept. 4 90.00 90.00 90.00 8.98 15.65 5.97Dept. 5 132.86 132.86 10.52 8.98 15.65 5.97Dept. 6 240.00 11.41 10.52 8.98 15.65 5.97
NPP Dept. 1 10.00 4.11 2.57 1.82 10.00 1.07Dept. 2 56.67 56.67 56.67 56.67 1.85 1.39Dept. 3 66.92 66.92 66.92 66.92 2.82 2.02Dept. 4 90.00 90.00 90.00 2.80 4.91 3.26Dept. 5 132.86 132.86 4.91 5.87 11.11 6.32Dept. 6 240.00 15.21 20.10 21.51 53.97 18.37
Table 1: Average delay for each department when ρ = (.5, .85, .87, .9, .93, .96), Ti = 10,νi = 1 for i = 1, 2, . . . , 6.
average delay for the departments that are pooled into a single department. If there are
some departments with much lower utilization than others, it is optimal to pool the high
utilization departments with low utilization departments. This situation is illustrated in
Table 1 for the case k = 2, in which call type 1 (the lowest utilization, at 0.5) is merged
with type 6 (the highest utilization, at 0.96). On the other hand, if all departments have
high utilization, then it is optimal to pool the highest utilization departments. The table
also illustrates this property in the sense that we see in pure form for k = 5. The columns
for k = 2, 3, 4 reveal hybrid patterns that merge both the very lowest utilization queue, 1,
with the k − 1 most highly utilized queues.
Under FCFS , the first row reveals that pooling may increase the average delay of a
department with low utilization, an insight important for managers to realize. In general,
particularly as k increases, the average delay for each department decreases. The NPP
service discipline results in a substantial reduction in average delay for the low utilization
departments. On the other hand, under FCFS offers simplicity and fairness by ensuring equal
average delays across all pooled customer types. Consequently, FCFS provides a relatively
greater benefit to the high utilization stations, while NPP provides a pooling benefit to all
the merged call types.
22
5 Conclusion
In this paper, we examined pooling strategies for call centers consisting of multiple
departments. For different scenarios of system parameters, we compared average system
delay for specialist and pooled systems, and investigated the impact of different system
parameters such as arrival rates, service times, service time variability, and size of the
departments in deciding which departments to pool. In addition to analytical sufficient
conditions derived from well-accepted queueing approximations, we are in some cases able
to distill the mathematics into straightforward managerial principles. When mean service
times differ greatly, pooling departments with a high ratio of mean service times may actually
result in worse performance than not pooling, even if with very high utilization.
The pooling structure treated here is a common and relatively tractable type of cross-
training structure. More generally, each server is given a set of skills, and a clean pooling
structure may not exist. Previous studies suggest that partial cross-training can be nearly as
effective as full pooling (see e.g., Hopp et al. 2004, Jordan et al. 2004). Thus, an important
future research goal is to see whether analogies to the simple pooling principles identified
here can be derived for systems using more elaborate patterns of cross-training. In such cases
without simple departmental structures, customer routing becomes a concern and the simple
routing policies of this paper may need to be replaced by more complex control policies.
23
REFERENCES
Aksin, O.Z. and F. Karaesmen. 2002. Designing flexibility: Characterizing the value of
cross-training practices. Koc University, Turkey. Under review.
Andradottir, S. and Argon, N.T. 2004. Partial pooling in tandem lines with cooperation and
blocking. School of Industrial and Systems Engineering, Georgia Institute of Technology,
GA. Under review.
Armony, M. and C. Maglaras. 2004a. On customer contact centers with call back option:
Customer decisions, routing rules, and system design. To appear in Operations Research
Armony, M. and C. Maglaras. 2004b. Contact centers with a call back option and real-time
delay information. To appear in Operations Research
Bell, S.L. and R.J. Williams. 2001. Dynamic scheduling of a system with two parallel servers
in heavy traffic with complete resource pooling: Asymptotic optimality of a continuous
review threshold policy. Annals of Applied Probability 11 608–649.
Benjaafar, S. 1995. Performance bounds for the effectiveness of pooling in multi-processing
systems. European Journal of Operational Research 87 375–388.
Bhulai S. and G. Koole. 2000. A queueing model for call blending call centers. IEEE
Transactions on Automatic Control. To appear.
Borst, S.C. and P. Seri. 2000. Robust algorithms for sharing agents with multiple skills.
Working paper, CWI, Amsterdam, The Netherlands.
Brigandi, A. J., D. R. Dargon, M.J. Sheehan, T. Spencer. 1994. AT&T’s call processing
simulator (CAPS) operational design for inbound call centers. Interfaces. 24(1) 6–28.
Buzacott, J.A. 1996. Commonalities in Re-engineered Business Processes: Models and
Issues. Management Science. 42(5) 768–782.
Buzacott, A.J. and J.G. Shanthikumar. 1984. Stochastic Models of Manufacturing Systems.
Prentice Hall, New Jersey.
Deery, S. R. Iverson, J. Walsh. 2002. Work relationships in telephone call centers:
Understanding emotional exhaustion and employee withdrawal. Journal of Management
Studies. 39(4) 471–496.
24
Dyer M.E. and L.G. Proll. 1977. On the validity of marginal analysis for allocating servers
in M/M/c queues. Management Science. 23 1019–1022.
Evenson, A., P. T. Harker and F. X. Frei. 1999. Effective call center management: Evidence
from Financial Services. Financial Institutions Center, The Wharton School, University of
Pennsylvania. Working paper.
Gans, N., Koole, G. and Mandelbaum, A. 2003. Telephone call centers: Tutorial, review and
research prospects. Manufacturing and Service Operations Management. 5(2) 79–141.
Gans, N. and Y-P. Zhou. 2003. A call routing problem with service-level constraints.
Operations Research. 51 255–271.
Gelenbe, E. and I. Mitrani 1980. Analysis and Synthesis of Computer Systems. Academic
Press Inc. London, UK.
Green, L. 1985. A queueing system with general-use and limited-use servers. Operations
Research. 33(1) 168–182.
Harrison, J.M. and M.J. Lopez. 1999. Heavy traffic resource pooling in parallel server
systems. Queueing Systems. 33 339–368.
Harrison, J.M. and A. Zeevi. 2004. A method for staffing large call centers based on
stochastic fluid models. To appear in Manufacturing and Service Operations Management.
Hokstad, P. 1978. Approximations for the M/G/m queue. Operations Research. 26 510–523.
Hopp, W.J., E. Tekin, M.P. Van Oyen. 2004. Benefits of skill chaining in production lines
with cross-trained workers. Management Science. 50 83–98.
Iravani, S.M.R., Van Oyen, M.P., and Sims, K.T. 2004. Structural flexibility: A new
perspective on the design of manufacturing and service operations. To appear in Management
Science.
Jordan, W.C., R.R. Inman, D.E. Blumenfeld. 2004. Chained cross-training of workers for
robust performance. IIE Transactions. 36 (10) 953–967.
Kleinrock, L. 1976. Queueing systems Volume II: Computer applications. John Wiley &
Sons, NY.
25
Koole, G. and A. Mandelbaum. 2002. Queueing models of call centers: An introduction.
Annals of Operations Research. 113 41–59.
Koole, G. and J. Talim. 2000. Exponential approximation of multi-skill call centers
architecture. Proc. QNETs 2000 23 1–10.
Krampe, H., J. Kubat and W. Runge. 1973. Bedienungsmodelle, Oldenburg, Munchen.
Kulkarni, V.G. 1995. Modeling and Analysis of Stochastic Systems. Chapman & Hall,
London, UK.
Mandelbaum, A. and M.I. Reiman. 1998. On pooling in queueing networks. Management
Science. 44(7), 971–981.
Nozaki, S.A. and S.M. Ross. 1978. Approximations in finite-capacity multi-server queues
with Poisson arrivals. Journal of Applied Probability. 15 826–834.
Perry, M. and A. Nilsson. 1992. Performance modeling of automatic call distributors:
Assignable grade of service staffing. XIV International Switching Symposium Yokohoma,
Japan 294–298.
Sheikhzadeh, M., S. Benjaafar and D. Gupta. 1998. Machine sharing in manufacturing
systems: Flexibility versus chaining. International Journal of Flexible Manufacturing
Systems 10 351–378.
Shumsky, R. 2000. Approximation and Analysis of a Queueing System with Flexible and
Specialized Servers. Rochester University Simon School of Business. Working Paper.
Smith, D.R. and W. Whitt. 1981. Resource sharing for efficiency in traffic systems. The
Bell System Technical Journal. 60(1) 39–55.
Stanford, D.A. and W.K. Grassman. 2000. Bilingual server call centers. D.R. McDonald,
S.R.E. Turner, eds. Analysis of Communication Networks: Call centers, traffic and
performance. Fields Institute Communications. 28 31–48.
Stoyan, D. 1976. Approximations for M/G/s queues. Math. Opnsforsch. Stat.. 7 587–594.
Van Mieghem, J.A. 1995. Dynamic scheduling with convex delay costs: The generalized cµ
rule. Annals of Applied Probability. 5 1249–1267.
26
Whitt, W. 2002. Stochastic Models for the design and management of customer contact
centers: Some research directions. Working paper, Columbia University, New York.
Whitt, W. 1993. Approximations for the GI/G/m Queue. Production and Operations
Management 2 114–161.
27
6 Appendix
Lemma 1 When ρ = λiT/ci and νi = ν for i = 1, 2, . . . , N , DNPPK = DFCFS
K .
Proof: Under the assumptions of Lemma 1, using equation (10), we can write:
DNPPK =
1
λT
[ν2 + 1
2G(K)g(
∑i∈K
ci, ρ) +∑
n 6=K
ν2 + 1
2g(cn, ρ)
]
where
G(K) = (1− ρ)
(∑n∈K
cn
) ((1− ρ)cn
(∑
i∈K ci − ρ∑n−1
i=1 ci)(∑
i∈K ci − ρ∑n
i=1 ci)
).
We will show that G(K) = 1. Define A(n) :=∑n
i ci and without loss of generality, let
K = {1, 2, . . . , k}. Then,
G(K) = (1− ρ)A(k)k∑
n=1
cn
(A(k)− ρA(n− 1))(A(k)− ρA(n))
= (1− ρ)A(k)k∑
n=1
(A(n)/A(k)
A(k)− ρA(n)− A(n− 1)/A(k)
A(k)− ρA(n− 1)
)
= (1− ρ)k∑
n=1
(A(n)
A(k)− ρA(n)− A(n− 1)
A(k)− ρA(n− 1)
)
= (1− ρ)k∑
n=1
A(n)
A(k)
1
1− ρA(n)/A(k)− A(n− 1)
A(k)
1
1− ρA(n− 1)/A(k)
= (1− ρ)k∑
n=1
[A(n)
A(k)
∞∑j=0
(ρA(n)
A(k)
)j
− A(n− 1)
A(k)
∞∑j=0
(ρA(n− 1)
A(k)
)j]
= (1− ρ)k∑
n=1
∞∑j=1
Aj(n)− Aj(n− 1)
Aj(k)ρj−1
= (1− ρ)∞∑
j=1
ρj−1
Aj(k)
k∑n=1
(Aj(n)− Aj(n− 1))
= (1− ρ)∞∑
j=1
ρj−1 = 1.
The result follows. 2
Lemma 2 When ρ = λT/c for i = 1, 2, . . . , N and departments may have different cv’s for
service times, DNPPK = DFCFS
K .
28
Proof: We examine two algebraic relationships:
DNPPK =
1
λT
[(∑n∈K
k(1− ρ)
(k − (n− 1)ρ)(k − nρ)
)(∑i∈K(ν2
i + 1)
2k
)g(kc, ρ) +
∑
n/∈K
(ν2n + 1)
2g(c, ρ)
].
(30)
The result follows from
∑n∈K
k(1− ρ)
(k − (n− 1)ρ)(k − nρ)=
k∑n=1
(k − (n− 1)
k − (n− 1)ρ− k − n
k − nρ
)
=k−1∑n=0
k − n
k − nρ−
k∑n=1
k − n
k − nρ
= 1.
2
Lemma 3 When ρ = λT/c for all departments, and departments may have different service
time cv’s, the average system delay (DK) decreases as the number of pooled departments (k)
increases.
Proof: Assume that we relabel the departments so that νi ≥ νj whenever i < j. Let
K = {1, . . . , k} and K′= {1, . . . , k + 1}. Then using Equation (22), we have the following:
DK −DK′ =
1
λT
[
∑ki=1(ν
2i + 1)
2kg(kc, ρ) +
N∑
i=k+1
(ν2i + 1)
2g(c, ρ)
−∑k+1
i=1 (ν2i + 1)
2kg((k + 1)c, ρ)−
N∑
i=k+2
(ν2i + 1)
2g(c, ρ)]
=1
λT
[∑ki=1(ν
2i + 1)
2kg(kc, ρ)−
∑k+1i=1 (ν2
i + 1)
2kg((k + 1)c, ρ) +
(ν2i + 1)
2g(c, ρ)
]
>1
λT
[∑ki=1(ν
2i + 1)
2k−
∑k+1i=1 (ν2
i + 1)
2k
]g((k + 1)c, ρ) +
(ν2i + 1)
2g(c, ρ)
=1
λT
[∑ki=1(v
2i + 1)− k(v2
k+1 + 1)
2k(k + 1)
]+
(ν2i + 1)
2g(c, ρ) > 0
where the result follows from g(kc, ρ) > g((k + 1)c, ρ) and∑k
i=1(v2i + 1)− k(v2
k+1 + 1) ≥ 0.
2
Lemma 4 When ρi = λiT/c and νi = ν for i = 1, 2, . . . , N , DNPPK = DFCFS
K .
29
Proof: The result follows by algebra as seen in two steps:
DNPPK =
1
λT
ν2 + 1
2
(1− 1k
∑i∈K ρi)∑
i∈K ρi
[∑n∈K
ρn
(1− 1k
∑n−1i=1 ρi)(1− 1
k
∑ni=1 ρi)
g(kc,
∑i∈K ρi
k) +
∑
i/∈K
g(c, ρi)] .
We conclude by observing that
∑n∈K
ρn
(1− 1k
∑n−1i=1 ρi)(1− 1
k
∑ni=1 ρi)
= k∑n∈K
[1
1− 1k
∑ni=1 ρi
− 1
1− 1k
∑n−1i=1 ρi
]
= k
[1
1− 1k
∑i∈K ρi
− 1
]
=
∑i∈K ρi
1− 1k
∑i∈K ρi
.
2
30