1 insaif/material/paper2.pdfum b er of parallel serv ers at that facilit y, whereas in lee's mo...
TRANSCRIPT
Abstract
In this article, we model the problem of assigning work toM heterogeneous servers
(machines), which arises from exogenous demands for N products, in presence of
nonzero setup times. We seek a workload allocation which minimizes the total
expected work-in-progress (WIP) inventory. Demands are assumed to arrive ac-
cording to independent Poisson processes, but the setup and the processing times
can have arbitrary distributions. Whenever a machine produces more than one
product type, production batch sizes are determined by a group scheduling pol-
icy; which is also known as the cyclic-exhaustive polling policy. We formulate the
workload allocation problem as a nonlinear optimization problem and then provide
several insights gleaned from �rst order necessary conditions, from numerical exam-
ples, and from a close examination of the objective function. For example, we show
that increasing either the load or the number of products assigned to a machine, or
both, does not necessarily increase its contribution to total WIP. These insights are
then used to devise a heuristic workload allocation as well as a lower bound. The
heuristic allocation is further re�ned using a nonlinear optimization algorithm.
Keywords: Multiple servers, Workload allocation, Queues: Optimization, Design
of Facilities, Polling models, Setup Times.
Workload Allocation in Multi-Product, Multi-Facility Production
Systems with Setup Times
Saifallah Benjaafar
Department of Mechanical Engineering
University of Minnesota, Minneapolis
Minnesota 55455, U.S.A.
Diwakar Gupta �
Michael G. DeGroote School of Business
McMaster University, Hamilton,
Ontario L8S 4M4, Canada
January 1996
Revised July, 1997
�Senior Member, IIE, and the corresponding author.
1 Introduction
In this article, we study the problem of assigning workload arising from the demand of N di�erent
products toM heterogeneous production facilities in a manner that minimizes total expected work-
in-process inventory (WIP). Ours is a static allocation in the sense that the probability with which
demand for product type i is routed to machine j is independent of the observed queue lengths
at the decision epoch. As shown pictorially in Figure 1, a fraction �ij of product i's demand is
assigned to machine j. Such workload assignment problems are routinely encountered by managers
of both manufacturing and service systems. Still among the numerous studies involving computer
processors, machines, robots and human operators as servers, which have been reported in the
literature [?, ?, ?], setup time considerations have been largely ignored. Ignoring setup times is not
realistic, especially in the manufacturing environment. Since the frequency of setups a�ects e�ective
capacity, the choice of workload allocation also plays an important role in decisions concerning
capacity selection.
The distinctive feature of our study is that it explicitly models setup times and a production
control regime which is designed to minimize unnecessary setups. This regime is known as the
group scheduling policy [?, ?] in the manufacturing literature and as the cyclic-exhaustive polling
policy in the queueing literature [?]. Under this policy, production follows a rotation schedule, i.e.,
product type i+1 always follows product i, and during each production run of product i, su�cient
quantities are produced to either eliminate all backlog, or to �ll up product i inventory to some
desired (base stock) level. A cyclic-exhaustive policy is chosen because it is easy to implement and
since it minimizes the frequency of setups among all policies that do not allow machine idling when
there is backlogged demand of any product. Thus, the cyclic-exhaustive policy resembles closely
the type of production schedule that factory managers might wish to implement when setup times
are non-negligible.
1
The problem of workload assignment and capacity selection has been studied before in several
previous studies reported in literature. In what follows, a brief review of the relevant literature
is presented. Ni and Hwang [?] have studied workload balancing problem in multiple processor
systems with heterogeneous servers. In essence, theirs is a special case of our model with zero setup
times and exponentially distributed service times at each of the M processors. They report an
algorithm which can be used to �nd the optimal load balance among processors. Section ?? of this
article deals with the zero setup time case with arbitrarily distributed processing times.
Lee [?] models the simultaneous optimization of capacity and workload assignment in the context
of M/M/1 queues, subject to constraints on workload and capacity allocations ( oor and ceiling
which may be di�erent for each server) and an overall budget for purchasing capacity. He shows
that, if possible, it is best to have a single fast server. If multiple servers are necessary, as a result
of having either capacity and/or loading constraints, then the optimal capacity-workload allocation
will create only a few fast servers.
Green and Guha [?] consider the situation in which one needs to design M facilities of possibly
unequal capacities, by allocating one or more of N homogeneous servers (identical exponentially
distributed processing times) to each facility. Their problem formulation simultaneously determines
the optimal static workload allocation to each such facility, from a total workload represented by a
Poisson arrival stream of rate �. Thus, an important distinction of their model is that the capacity
of a service facility is altered by changing the number of parallel servers at that facility, whereas in
Lee's model each facility is a single server whose production rate can be changed in a continuous
fashion.
Like Lee, Green and Guha are also concerned primarily with capacity selection rather than
workload allocation issues. They use a two step argument to claim that a system with the greatest
amount of imbalance among the capacities of the service facilities is optimal. There is in fact
2
a considerable body of literature dealing with the bene�ts of pooling servers in multi-processor
systems (see Benjaafar [?] and references therein for details). Similar issues of workload and server
allocations in closed queueing networks have been studied in Boxma et al. [?], Stecke and Solberg [?],
Shanthikumar and Yao [?] and Dallery and Stecke [?]. Calabrese [?] considers workload allocation
issues in open Jackson networks of queues.
All of the studies mentioned above either consider only a single product type; and/or assume
setup times are zero; or do not model production control regimes designed to mitigate the impact
of setup times. Therefore, these studies are not faced with issues surrounding production batch
sizes which result from having setups. We believe ours is the �rst study dealing with workload
allocation issues in presence of setup times. Nevertheless, our work is inspired by previous studies
mentioned above and some of our qualitative insights parallel those of others before us.
Our approach uses analytical models which are simple and yet capture important factors that
in uence decision making. In order to make this possible, we assume that demand arrival process
is Poisson and that processing requirements of all products are identical. Complete details of
our mathematical model and notation are presented in section ??. We formulate the workload
allocation problem as a nonlinear optimization problem, with the goal of minimizing total expected
WIP inventory, in section ??. This section serves to highlight the complexity of the problem. It
also contains a highly interpretable �rst order necessary condition.
Section ?? is devoted to a discussion of numerical examples and special cases which serve
both to sharpen a manager's intuition and to provide a basis for the development of heuristics.
Several counter-intuitive examples about the behavior of a machine's contribution to total WIP as
a function of assigned load, are also included in this section. For example, we show that increasing
either the load or the number of products assigned to a machine, or both, does not necessarily
increase its contribution to total WIP. Similarly, there are cases when adding a new machine
3
does not necessarily reduce total expected WIP. We prove that for any given machine, the expected
WIP at that machine decreases with a greater imbalance in the load contribution from the products
that are assigned to it. This is analogous to the results of Lee [?] and Green and Guha [?] who
demonstrate the desirability of imbalance with respect to the capacities of the servers.
Section ?? contains a two-stage heuristic method for �nding workload allocations: stage one
�nds an initial feasible solution which is re�ned with the help of a nonlinear optimization algorithm
in stage two. Procedures for identifying a lower bound and a worst case scenario are also included.
Several numerical examples, with di�erent values of system parameters, are solved and their results
are reported. Numerical examples show that our heuristic is relatively close to the lower bound.
Note that the lower bound is not expected to be tight unless either the system is symmetric or
setup times are negligible.
Finally, section ?? examines possible extensions of our model, such as the inclusion of feasibility
and minimum (maximum) allocation constraints. We show that the workload allocation problem
under the �rst-come-�rst-served (FCFS) control policy can be modeled as the zero setup time
formulation after appropriately modifying processing times. Thus, our approach can be used to
compare workload allocation and total expected WIP under FCFS and group scheduling control
policies. A discussion of the implications of relaxing equal processing times assumption is also
included.
2 The Model and Notation
The parameter �i denotes the external arrival rate of type i demand which occurs according to an
independent Poisson process. A nonzero setup time, Rj , is incurred every time facility j is set up
to produce a di�erent class of items. We assume that the processing time of any item produced by
production facility j is Sj, independent of the type of item. Thus, while the production facilities are
4
not necessarily identical, the processing requirements of all items are assumed to be identical. This
is the underlying assumption in many previous queueing theoretic models dealing with workload
allocation, e.g., [?], [?], and [?].
Type i product places a load �ij , which could possibly be zero, on server j. The total load at
server j is denoted by �j which equalsPN
i=1 �ij . We also use notation �ij to denote the fraction
of type i demand which is satis�ed by server j. Naturally, �ij = �ij�iE[Sj ] and since all demand
must be satis�ed, we require thatPM
j=1 �ij = 1.
To streamline presentation, index i will always denote product type, and index j machine/facility
type. Thus, the range of values of i and j will be: i = 1; 2; � � � ; N and j = 1; 2; � � � ;M . If it is
necessary to refer to more than one product/part type, we shall use letters g and h. Similarly, when
referring to several di�erent machines/facilities, we shall use letters k and `. If a product/part type
i is assigned to ni di�erent machines/facilities, then functions i(1), i(2), � � �, i(ni) will denote the
appropriate machine indices. For example, if part type i is assigned to ni = 3 machines indexed 2,
4 and 9, then i(1) = 2, i(2) = 4 and i(3) = 9. Similarly, if a machine processes mj di�erent part
types, then their indices will be denoted by functions j(1), j(2), � � � j(mj).
We are primarily interested in studying workload allocation issues in an environment in which
setup times are signi�cant. Therefore, we assume that whenever a facility produces more than
one product type, it does so according to the group scheduling policy which is also known as the
cyclic-exhaustive polling protocol [?]. This means that the facility manufactures products in a
rotation cycle such that product i + 1 always follows product i. Also, it continuously processes
requests for the same type of items until there is no pending demand for that item; i.e., in an
exhaustive manner. The cyclic-exhaustive operating policy has several desirable features: it is easy
to implement, it minimizes the amount of un�nished work in the production system [?], and �j < 1
is both necessary and su�cient for �niteness of the queue of backlogs [?] at production facility j.
5
Notice that, under such a policy, the duration of setups does not a�ect stability and consequently,
setups do not reduce e�ective capacity.
It has been shown in previous studies that when there exists complete backlogging, queueing
systems with a cyclic-exhaustive control regime can be used to model both produce-to-stock (with
base stock control regime) and make-to-order production systems (e.g., see [?, Chapter 3 and 4]). In
order to keep the exposition simple, however, we shall restrict our attention only to those systems
which produce on demand. We assume that the total product demand can be met by the combined
capacity of all available machines. Furthermore, in order to guarantee stability of the queues of
backlogs, we shall consider only those workload allocation schemes for which each �j is strictly less
than 1, for each j.
A variation of the cyclic-exhaustive policy is the priority-exhaustive rule in which each queue
of backlogs is served exhaustively, but the machine always switches to produce the highest priority
product from those that are backlogged [?]. It is mathematically harder to obtain performance
characteristics for a machine operating under the latter regime, and �j < 1 is necessary, but not
in general su�cient, for �niteness of total backlog at the machine. Furthermore, since production
schedule is no longer a rotation schedule, it is much harder for marketing people to quote reliable
lead times to customers. Thus, we choose the cyclic-exhaustive regime for we believe it closely
captures factory managers' concerns for ease of implementation, predictability of schedule, and
minimization of unproductive setups.
Let Wij denote the waiting times of type i parts which are produced on machine j. Then, using
Little's law, the expected WIP at machine j is given as follows:
E[WIPj ] =NX
i=1
�ij�ifE[Wij ] +E[Sj ]g: (1)
6
Our objective is to minimize the total expected WIP which is simply
E[WIP] =MX
j=1
E[WIPj ]: (2)
3 Problem Formulation
Each production facility (server) can have three modes of operation: either it is always idle, or it
serves exactly one type of demand, or at least two or more types of demand. In the �rst case, the
machine contributes nothing to the total WIP. In the second instance, there is no need to setup
the machine repeatedly since its setup never changes. Finally, in the last case, setups are inevitable
and we shall assume that they occur as dictated by a cyclic-exhaustive service strategy. Next, we
write the waiting time of a type i demand served at machine j in each of the latter two cases.
When machine j produces only one product, say product h, it processes demand as an M/G/1
server and the waiting time of type h demand served on machine j is given by the following
Pollaczek-Khintchine formula [?]:
E[Whj] =�jE[S
2j ]
2E[Sj ](1� �j); (3)
where, in this case, �j = �h�hjE[Sj ]. Also, since no other products are assigned to machine j,
E[WIPj ] =�2jE[S
2j ]
2E[Sj ]2(1� �j)+ �j : (4)
In contrast, when machine j attends to two or more product demands, it does so according to
the cyclic exhaustive polling protocol. The expected total un�nished work in such a system equals
the pseudo-conservation law which has been derived in several previous studies, e.g., in equation
(33) of [?]. We cast this expression in our notation and rewrite it below for completeness:
NX
i=1
�ij�iE[Sj ]E[Wij ] =�2jE[S
2j ]
2E[Sj ](1� �j)+�jE[R
2j ]
2E[Rj ]+
E[Rj ]
2(1 � �j)[(
NX
i=1
�ij)(�j�NX
i=1
�2ij)��j(1��j)]; (5)
7
where �ij equals 1 when product i is assigned to machine j, and 0 otherwise. Thus,PN
i=1 �ij is the
number of product types that are assigned to machine j. The expected WIP at machine j can now
be written as
E[WIPj] =�2jE[S
2j ]
2E[Sj ]2(1� �j)+�j+
�jE[R2j ]
2E[Sj ]E[Rj ]+
E[Rj ]
2E[Sj ](1� �j)[(
NX
i=1
�ij)(�j�NX
i=1
�2ij)��j(1��j)]:
(6)
Equation (??) can also be obtained using direct arguments which do not depend on the pseudo-
conservation law (see, for example, Takagi [?]). Notice that the �rst two terms in the right hand
side of equation (??) are the same as the right hand side of equation (??). Thus, if we let �j be an
indicator variable such that �j = 1 ifPN
i=1 �ij � 2, and 0 otherwise, we can write the E[WIPj] for
any machine j as follows:
E[WIPj] =�2jE[S
2j ]
2E[Sj ]2(1� �j)+�j+
�j�jE[R2j ]
2E[Sj ]E[Rj ]+
�jE[Rj ]
2E[Sj ](1� �j)[(
NX
i=1
�ij)(�j�NX
i=1
�2ij)��j(1��j)]:
(7)
We are now ready to write the optimization problem which �nds the optimal workload alloca-
tion. In this formulation, we do not require �ij 's and �j 's to be integers, but the formulation is
such that upon minimization, their optimal values will be either 0 or 1 in each case. The decision
variables are the �ij's, the �ij 's and the �j 's. The term �j =PN
i=1 �ij is used only for notational
convenience.
Minimize E[WIP]; (8)
Subject to:
MX
j=1
�ij=E[Sj ] = �i; 8 i; (9)
(1� �ij)�ij = 0; 8 i; j; (10)
(1�NX
i=1
�ij)(1 � �j) = 0; 8 j; (11)
8
1�NX
i=1
�ij � 0; 8 j; (12)
�ij � 0; 8 i; j; (13)
�ij � 0; 8 i; j; (14)
�j � 0; 8 j: (15)
Constraints included in set (??) impose the requirement that all demand must be met by a feasible
workload allocation. Constraint sets (??) and (??) ensure that �ij and �j will be chosen to be either
0 or 1 during the optimization procedure, without actually restricting these to be integer variables.
This comes from the fact that E[WIP], which is obtained by summingE[WIPj] in equation (??) over
all j, is linearly increasing in �j and inPN
i=1 �ij . Therefore, the optimization procedure will choose
their minimum values (zeros) unless that is not possible owing to some constraint. Constraint (??)
requires that �ij be set equal to 1 whenever �ij > 0 and that �ij = 0 whenever �ij = 0. Similarly,
wheneverPN
i=1 �ij is a value other than 1, constraint (??) will force �j to be equal to 1. Using
these arguments, it is now easy to con�rm that the last two terms of the expression for E[WIPj]
disappear when eitherPN
i=1 �ij equals 0 or 1. Thus the constraints allow us to reduce what would
have been a non-linear mixed integer programming problem into a standard non-linear optimization
problem.
Constraint (??) is the necessary and su�cient stability condition which guarantees that the
expected WIP will always be �nite. Note that for an optimal workload allocation, constraint (??)
will never be tight, for otherwise the objective function will go to in�nity. Finally, constraints (??)
- (??) serve to ensure non-negativity.
The formulation in (??) - (??) has 2MN+M decision variables and 3MN+3M+N constraints.
This makes the problem large even for relatively small values of M and N . Whereas, it is easy to
con�rm that each constraint is either a linear or a concave function of relevant decision variables,
9
the objective function is generally non-convex in the decision variables (see Example ?? in section
??). The formulation nevertheless serves several useful purposes. It allows us to �nd local optima
over a speci�ed feasible region. It can be used to perform a numerical search for the global optimum
whenM and N are small. We can also use the �rst order necessary conditions to identify subsets of
workload allocations which contain the optimal allocation. These insights are later used to develop
a heuristic solution, a lower bound and a worst case scenario.
3.1 The First Order Necessary Conditions
Let �m;i;j denote the Lagrange multiplier for the mth type of constraints, m = 1; 2; � � � ; 7, and for
the i� j product-machine pair. We shall drop index i, or j, from �m;i;j (as appropriate) when the
corresponding constraint type does not depend on either product or machine index. For example,
when m = 1, the relevant constraints family is shown in (??), we have N Lagrange multipliers
(one for each product index i), and they are labeled �1;1; � � � ; �1;N . Similarly, when m = 5, we
have M � N Lagrange multipliers labeled �5;1;1; �5;1;2; � � � ; �5;M;N that correspond to individual
constraints in the constraints family (??).
Using the notation described above, and di�erentiating the Lagrange function with respect to
�hk, �hk and �k, for all h = 1; 2; � � � ; N and k = 1; 2; � � � ;M , we obtain the following �rst order
necessary (Kuhn-Tucker) conditions [?, section 10.8, pp 314]:
E[Sk] +(2�k � �2k)E[S
2k ]
2E[Sk](1� �k)2+�kE[R
2k]
2E[Rk]+
�kE[Rk]
2(1� �k)2f(
NX
i=1
�ik)[(1 � 2�hk)(1� �k) + �k �
NX
i=1
�2ik]� (1� �k)2g+ �1;h + f(�2;h;k)(1� �hk) + �4;k � �5;h;kgE[Sk] = 0; 8 h; k; (16)
�kE[Rk]
2E[Sk](1� �k)[�k �
NX
i=1
�2ik]� (�2;h;k)(�hk)� (�3;k)(1� �k)� �6;h;k = 0; 8 h; k; (17)
and
�kE[R2k]
2E[Sk]E[Rk]+
E[Rk]
2E[Sk](1� �k)[(
NX
i=1
�ik)(�k �NX
i=1
�2ik)� �k(1� �k)]
10
�(�3;k)(1�NX
i=1
�ik)� �7;k = 0; 8 k: (18)
For the inequality constraints, a local optimummust in addition satisfy the following complementary
slackness conditions:
(�4;k)(1�NX
i=1
�ik) = 0; 8 k; (19)
(�5;h;k)(�hk) = 0; 8 h; k; (20)
(�6;h;k)(�hk) = 0; 8 h; k; and (21)
(�7;k)(�k) = 0; 8 k: (22)
Notice that �1;i, �2;i;j and �3;j are unrestricted in sign, whereas multipliers �4;j, �5;i;j, �6;i;j and
�7;j must be non-negative, for all i and j.
Next, we use the �rst order necessary conditions to derive an intuitive condition that an optimal
workload allocation must satisfy. This condition can be interpreted as follows. Consider a product
h that is assigned to at least two machines k and `. Then, the optimal allocation of product h's
workload to machines k and ` will be such that the rate of change in either machine's expected
WIP with respect to product h's workload allocation is the same at both machines. In fact, this
will hold for all machines that produce product h. This result is stated and proved formally in the
following Lemma.
Lemma 1 For any two machines indexed k and ` that produce a portion of product h's demand,
the optimal �h;k and �h;` must satisfy the following condition
E[Sk] +(2�k��
2
k)E[S2
k]
2E[Sk](1��k)2 +
�kE[R2
k]
2E[Rk]+ �kE[Rk]
2(1��k)2 f(PN
i=1 �i;k)[(1� 2�h;k)(1� �k)+
�k �PN
i=1 �2i;k]� (1� �k)
2g = E[S`] +(2�`��
2
`)E[S2
`]
2E[S`](1��`)2 +
�`E[R2
`]
2E[R`]+
�`E[R`]
2(1��`)2 f(PN
i=1 �i;`)[(1 � 2�h;`)(1� �`) + �` �PN
i=1 �2i;`]� (1� �`)
2g:
(23)
That is, under the optimal workload allocation, change in expected WIP at machine k, caused by a
small change in the portion of product h's demand assigned to it, must be equal in magnitude to the
11
change in expected WIP that will occur at any other machine that also produces product h; should
the latter experience a similar small change in allocation of product h's demand.
Proof: Since E[WIP] is �nite only when �k < 1, for each k, it immediately follows from (??) that
�4;k = 0, 8 k. Similarly, if a portion of product h is made on machine k, i.e., �hk > 0, then from
(??), �5;h;k = 0, and from constraint set (??), �hk = 1. Thus, when �hk > 0, condition (??) reduces
to
��1;h = E[Sk] +(2�k � �2k)E[S
2k ]
2E[Sk](1� �k)2+�kE[R
2k]
2E[Rk]+
�kE[Rk]
2(1 � �k)2f(
NX
i=1
�ik)[(1 � 2�hk)(1� �k) + �k �
NX
i=1
�2ik]� (1� �k)2g; 8 h; k: (24)
Notice that the left hand side of the above equation does not depend on k. Therefore, the right
hand side must also be constant for any machine j for which �hj > 0. In other words, if k and ` are
two machines for which �hk > 0 and �h` > 0, then both the left and right hand sides of equation
(??) are equal to ��1;h. Hence they must be equal. #
Equations (??) - (??) constitute a system of nonlinear equations which can be solved to obtain
locally optimal workload allocations. Next, we examine properties of the objective function (??)
in order to gain insights into the e�ect of various parameters on its behavior which will be useful
in designing heuristic solution algorithms.
4 Insights and Special Cases
Since all products have identical processing requirements, it follows that when determining product
to machine allocations, only the number of products types and contribution from each assigned
product to the overall load of the machine matters. The choice of product indices is immaterial,
so long as such a choice results in a feasible workload allocation. Clearly, the optimal workload
allocation is not unique.
12
In what follows, we present two types of insights. First, we show some counter-intuitive examples
about the e�ect on average WIP of the number of part types assigned to each machine. In the
second part of the analysis we analyze some special cases. For example, we explore workload
allocation issues in systems for which the setup times are negligible. We also consider the case
where for each machine, the total load and number of product types to be assigned have been
determined, and then obtain the optimal contribution from each assigned part to the total load of
that machine.
4.1 Some Counter-Intuitive Examples
We present �ve counter-intuitive examples below to underscore the ease with which intuition might
fail when dealing with the workload allocation problem in presence of setup times.
Example 1 Increasing total utilization at a machine does not necessarily increase average WIP at
that machine.
Consider machine j that makes two products whose processing times are exponentially distributed.
Relevant data are: E[Sj ] = 1, E[S2j ] = 2, E[Rj ] = 5 and E[R2
j ] = 1. Suppose the machine is
assigned equal demands of products indexed 1 and 2 such that �1j = �2j = 0:4 and the total
load is �j = 0:8. Next, suppose in a di�erent workload assignment, this machine receives a total
load �j = 0:81. Since the latter workload can be achieved by many di�erent combinations of
demands of type 1 and type 2 products, we have plotted in Figure 2, E[WIPj ] as a function of �1j
when �j = 0:81. Notice that there exist an in�nite number of combinations of �1j and �2j, with
�1j + �2j = 0:81, for which the resulting E[WIPj] is smaller than what we obtained with the initial
assignment of �1j = �2j = 0:4. The latter is represented by the horizontal line in Figure 2.
Example 2 Increasing the variety of products made by a machine, while keeping its load constant,
does not necessarily increase average WIP at that machine.
13
Suppose machine j produces 2 product types such that �j = 0:95, �1j = 0:475, �2j = 0:475.
Processing and setup times are exponentially distributed with the following relevant data: E[Sj] =
0:01, E[S2j ] = 0:0002, E[Rj ] = 1 and E[R2
j ] = 2. With these parameter values E[WIPj ] = 1064.
Next, suppose that in a di�erent workload assignment this machine produces products indexed 1,
2 and 3 with work loads �1j = 0:90, �2j = 0:03 and �3j = 0:02, chosen such that its total load is
the same as before. The average WIP in that case is, E[WIPj] = 482:60, which is less than half
what it was with only 2 product types assigned to this same machine.
Example 3 Simultaneously increasing total utilization and variety of products made by a machine
does not necessarily increase average WIP at that machine.
Consider the machine with initial workload assignment as described in Example 2. Suppose that
when it is assigned 3 product types, work loads are �1j = 0:90, �2j = 0:05 and �3j = 0:02. Thus,
the product variety has increased and at the same time, the total workload has increased to 0.97.
The corresponding average WIP is, E[WIPj ] = 866:33, which is still smaller than the average WIP
from the initial allocation.
Example 4 Total average WIP is not necessarily a convex function of workload assignments.
Consider a workload allocation problem with 2 machines and 2 product types. Imagine that initially
product 1 is assigned to machine 1 and product 2 to machine 2. Relevant data are: E[S1] =
E[S2] = 1, E[S21 ] = E[S2
2 ] = 2, �1 = 0:8, �2 = 0:5, E[R1] = 0:2, E[R2] = 0:8, E[R21] = 0:08,
and E[R22] = 1:28. Notice that processing times and setup times have exponential distributions.
Consider total WIP as a function of �12, the fraction of type 1 product assigned to machine 2 as
shown in Figure 3. Clearly, the total WIP is non-convex in �12, and hence in �12.
Example 5 Adding a new machine does not necessarily decrease total average WIP.
14
Obviously this happens when it is better not to use the new machine because assigning any workload
to this machine increases total expected WIP. Such an example is shown in Figure 4 in which
assigning any fraction of type 1 demand to machine 2 (the new machine) causes the total WIP
to increase. For both machines, the setup times and the processing times are assumed to be
exponentially distributed. The problem data is as follows: E[S1] = 0:01, E[S21 ] = 0:0002, E[S2] =
3:3, E[S22 ] = 21:78, E[R1] = E[R2] = 0:01, E[R2
1] = E[R22] = 0:0002, �1 = 0:3, �2 = 0:2. We start
with both products assigned to machine 1 and then monitor the total average WIP as more and
more of product 1 is assigned to machine 1. Figure 4 shows that total WIP is strictly increasing in
�12. Thus, adding the new machine 2 will not decrease total average WIP.
4.2 Zero Setup Times
If Rj = 0, the last two terms in the RHS of equation (??) disappear and we get
E[WIP] =MX
j=1
�2jE[S2j ]
2E[Sj ]2(1� �j)+ �j; (25)
Subject to:
MX
j=1
�j=E[Sj ] =NX
i=1
�i; (26)
�j � 0; 8 j; (27)
1� �j � 0; 8 j: (28)
The above nonlinear optimization problem can be shown to be a convex programming problem (see
Appendix A for a formal proof). Notice that in the above formulation the constraints are linear in
decision variables (�j 's). Thus, so long as constraint (??) is satis�ed, the product index and the
number of product types assigned to a machine do not a�ect the objective function.
Upon applying the �rst order necessary conditions, which are also su�cient in this case [?,
section 10.8], we �nd that the optimal workload allocations to any two machines j and k should be
15
such that
E[Sj ] +(2�j � �2j)E[S
2j ]
2(1� �j)2E[Sj ]= E[Sk] +
(2�k � �2k)E[S2k ]
2(1 � �k)2E[Sk]: (29)
In the event that production facilities are identical, the above condition further simpli�es and
optimal workload allocation is equal workload allocation, i.e., ��j = ��k. Furthermore, a machine
with index j is never used if
E[Sj ] > E[Sk] +(2�k � �2k)E[S
2k ]
2(1 � �k)2E[Sk]; (30)
for each k 6= j, k 2 f1; 2; � � �Mg, and �k > 0 denote the optimal workload assignments of machines
which are used. This section generalizes the results of Ni and Hwang [?] who model this same
problem assuming that Sj 's are exponentially distributed.
4.3 Some Other Special Cases
Suppose that the total workload and the number of part types to be made have been determined for
each machine. Then, for those machines that are dedicated to the production of a single product
type, there are no further decisions to be made. Consider a machine j which makesmj � 2 products
indexed j(1); j(2); � � � ; j(mj) such that its total load is �j . It immediately follows that �j = 1 and
that �i;j = 1, for each i = j(1); j(2); � � � ; j(mj), and 0 otherwise. Using equation (??), the expected
total WIP at machine j can now be written as follows:
E[WIPj] =�2jE[S
2j ]
2E[Sj ]2(1� �j)+�j+
�jE[R2j ]
2E[Sj ]E[Rj ]+
E[Rj ]
2E[Sj ](1 � �j)fmj(�j�
mjX
r=1
�2j(r);j)��j(1��j)g:
(31)
Our �rst result in this section concerns the choice of �i;j values which minimize E[WIPj ] while
keeping �j and mj �xed. Proofs of all �ve observations listed below are presented in Appendix B.
Observation 1 For a given total workload (�j) and number of part types (mj) assignment to a
machine, the optimal vector of �ij's is a feasible vector which is maximal under the partial order of
majorization.
16
Majorization formalizes the idea of unevenness of the components of a vector and its de�-
nition can be found, e.g., Marshall and Olkin [?]. We repeat the main idea below for sake of
completeness. For any (�j(1);j ; � � � ; �j(mj);j), let �[1];j � �[2];j � � � � � �[mj ];j. Consider two alter-
native workload assignments given by vectors (�[1];j; �[2];j; � � � ; �[mj ];j) and (�0[1];j; �0
[2];j; � � � ; �0
[mj ];j)
which are both feasible. Then the vector (�0[1];j; �0
[2];j; � � � ; �0
[mj ];j) is said to be majorized by the
vector (�[1];j; �[2];j; � � � ; �[mj ];j) ifPk
i=1 �0
[i];j �Pk
i=1 �[i];j for every k = 1; 2; � � � ;mj andPmj
i=1 �[i];j =
Pmj
i=1 �0
[i];j. Notice that in our situation,
Pmj
i=1 �[i];j =Pmj
i=1 �0
[i];j= �j is guaranteed by the con-
straint.
Observation 2 If j(1), j(2), � � �, j(mj) denote the indices of the mj part types assigned to machine
j, then E[WIPj] is strictly increasing in �j(r);j for any r = 1; 2; � � � ;mj, when all other workload
assignments to this machine remain unchanged.
Observation 3 If for two identical machines labeled j and `, mj = 1, m` � 2, and �` � �j, then
E[WIP`] � E[WIPj ].
Next, consider a machine j which manufactures, among others, products g and h. We assume,
without any loss of generality, that �gj � �hj > 0. Then, the average WIP at machine j is
strictly smaller for an alternate assignment, denoted by superscript prime, in which �0gj = �gj+�hj,
�0hj = 0 and all other load assignments remain unchanged. Put di�erently, we have the following
observation.
Observation 4 For any machine j, consolidating work loads from any two products into a single
large workload of any one of the two products, without a�ecting other load assignments to that
machine, always decreases E[WIPj].
Observation 5 If for M identical machines, M = N and �i = �, for every product i, then it is
optimal to dedicate each machine to produce exactly one product type.
17
5 The Heuristic
Two broad guidelines emerge from the discussion in section ??. It generally pays to minimize the
number of di�erent product types assigned to each machine, and to maximize the imbalance among
loads from di�erent products if a machine must produce multiple products. When following these
guidelines, one has to be careful not to make the expected WIP at any machine extremely large.
We have developed a two-stage heuristic algorithm which builds upon these insights. The �rst stage
�nds an initial feasible solution which is improved in the second stage using a standard nonlinear
optimization algorithm. The latter �nds a local optimum and thus gives us an upper bound on the
total expected WIP. For this approach to be successful, it is very important that the �rst stage
of the heuristic provides a good starting solution. We have implemented the heuristic using the
optimization toolbox in MATLAB [?] which uses Variable Metric methods to directly solve for the
Lagrange multipliers arising in the optimality equations (see [?] for a review of the Variable Metric
methods in nonlinear programming).
In the �rst part of the heuristic, we begin by �nding an equal utilization �e for each machine
with which all demand can be met. This �e is simply
�e =
PNi=1 �iPM
k=1[E(Sk)]�1: (32)
Machines are ordered in decreasing order of the mean processing times and products in decreasing
order of the mean arrival rates. Thus, machines are indexed such that E(S1) � E(S2) � � � � �
E(SM ), and products such that �1 � �2 � � � � � �N . Starting with product 1 and machine 1, the
algorithm then assigns products to machines until each machine has utilization exactly equal to
�e. Next, the starting solution is improved and a local optimum generated by using the nonlinear
optimization formulation (see (??) - (??)). In many cases we studied, these improvements did
not change the number of product types assigned to each machine, although the total WIP at all
18
machines did decrease.
A lower bound for the total expected WIP is obtained by setting all setup times to zero and then
using the formulation in section (??) to identify the optimal allocation. Since the zero setup time
workload allocation problem is a convex optimization problem, we in fact obtain a global optimum
in this case. As expected, the lower bound is rarely tight. Therefore, we also compute a worst
case scenario in which all machines are equally loaded by assigning a fractional workload of all N
product types. Just as the lower bound does not account for setup times, the worst case scenario
magni�es the e�ect of setup times by assigning maximum product variety to each machine. One
only needs to compare our heuristic solution with the lower bound and the worst case to realize
that it is much closer to the lower bound than it is to the worst case. Our numerical results are
summarized in Table 1 which contains calculations based on 6 data sets. Many other variations of
system parameters were also studied, but these results are not reported in the interest of brevity.
The 6 chosen data sets are representative of the results we obtained in other cases as well.
Data sets I and II, which describe a symmetric and a zero setup times system respectively, are
chosen to provide deeper insight into how our heuristic behaves. When the number of machines
equals the number of part types and all system parameters are symmetrical, the lower bound and
each stage of the two-stage heuristic yield exactly the same solution. This can also be reasoned
intuitively by observing that setups can be avoided entirely by assigning exactly one part type
to each machine. When setup times are zero, but the system is not necessarily symmetrical, the
lower bound and the improved solution match. This follows from the fact that the workload
allocation problem with zero setup times is a convex programming problem and therefore the
improved solution is the same as the global optimum obtained for the lower bound. For the six
data sets in Table 1, the total expected WIP from the �nal solution of the two-stage heuristic is
greater than the corresponding lower bound by an average of 17% (range is from 0% to 36%).
19
Data sets III to VI reveal several interesting properties of the heuristic solution. Notice that the
second stage �j 's are not necessarily increasing in E(Sj) in general, although they are so in data set
III. The di�erence between the total expected WIP after the �rst and the second stages is generally
small. However, even this is not uniformly true as in data sets III and IV these di�erences are
large in relative terms. The �rst stage allocation results in a 0 to 69% larger total expected WIP
as compared to the second stage solution. The mean improvement over the six data sets is about
20% of the �nal solution. Another interesting observation is that the sum of �j 's is not necessarily
a constant during the two stages of the heuristic (e.g., see data sets IV and V). Since machines are
not identical, a reallocation of load among machines also changes the overall load on the system.
We also include, in Table 2, results based on a variation of the heuristic in which machines are
ordered in decreasing order of the squared coe�cient of variation (scv) of the processing times for
the purpose of �nding the �rst stage solution. The ordering of part types is same as before, i.e.,
according to decreasing demand rate. Data set I is not reported in Table 2 because the scv and
mean processing time order coincide when system parameters are symmetrical. We note that the
scv based heuristic is generally worse than the mean service times based heuristic: data sets IV and
VI are the exceptions for which it performs marginally better. Based on these results and other
data sets which we studied but do not report in the interest of brevity, we conjecture that mean
processing times are based ordering of machines is slightly superior to the scv based ordering.
In conclusion, we reiterate that our two-stage heuristic is a practical approach which leads to
a fast computer algorithm and provides many insights about the nature of the solution. The lower
bound we provide is not expected to be tight. However, comparisons with a worst case scenario
help to show that our heuristic is relatively close to the lower bound. Using principles developed
during the design of the heuristic, it is also possible to develop an interactive software with which
factory managers can attempt to improve an initial workload allocation generated by the heuristic
20
by redistributing load. The software will be capable of immediately calculating the impact of any
attempt at redistributing machine workloads.
6 Discussion
There are many other managerial considerations which would be easy to include in our model. For
example, if certain products could be produced only on certain machines, then this can be handled
by forcing the appropriate �ij's to be equal to zero. Similarly, there might be constraints on the
minimum or maximum load of any product which can be assigned to each machine. In this case we
would add appropriate constraints to our formulation which would also be imposed on the heuristic
solutions. It is relatively easy to incorporate production costs into our objective function. The
production cost may be di�erent for each product-machine combination and may have both a �xed
and a variable component. The �xed component may come from the additional investment in tools,
�xtures, and part-programs necessary for each additional part type assigned to the machine.
It is also worth mentioning that with the procedure outlined in this article, it is relatively easy
to compare the performance of FCFS and cyclic-exhaustive control regimes, where in each case
workload assignments are done in an optimal fashion. We illustrate this point below.
Let pij = �ij�i=PN
k=1 �kj�k denote the probability that the next product requiring service at
machine j is of type i. Due to the probabilistic routing, the overall arrival process at each machine
is still Poisson and each server behaves like a M/G/1 server. Therefore, formulation of the FCFS
workload allocation problem is identical to the zero setup time formulation of section (??) (see
expressions (??) { (??)) after we substitute Sj's with the corresponding processing times for the
FCFS situation. The �rst two moments of the processing time at machine j, which is now denoted
by Xj , are given below:
E(Xj) = E(Sj) +NX
i=1
pij(1� pij)E(Rj); (33)
21
and
E(X2j ) = E(S2
j ) +NX
i=1
pij(1� pij)fE(R2j ) + 2E(Rj)E(Sj)g: (34)
The stability condition is given as follows:
�j =NX
i=1
�ij�iE(Xj) < 1 for each j; (35)
and the expected WIP at machine j can now be written as:
E[WIPj] =�2jE[X
2j ]
2E[Xj ]2(1� �j)+ �j : (36)
Under the FCFS policy, e�ective capacity is a�ected by setups and the maximum feasible through-
put rate of machine j is given by 1=E(Xj) as opposed to 1=E(Sj) for the group scheduling policy.
Since E(Xi) � E(Sj), the throughput rate ceiling is reached sooner under the FCFS regime.
A key assumption we have made in this article is to require all product types to have identical
processing requirements. This simpli�es analysis and leads to explicit expressions for expected
WIP. It turns out that this assumption is not necessary for our qualitative insights (section ??)
to hold. Of course, when di�erent products have di�erent processing requirements, there is no
explicit and closed-form mathematical expression for average WIP at a machine and we have to
use expressions which involve recursive functions, e.g., see equation (32) of [?]. We believe that
our model is only a �rst-pass model that can guide factory managers and industrial engineers with
regard to workload allocation in presence of setups. Initial solutions worked out in this way could
be further re�ned, say with the use of simulation models that incorporate additional details.
Besides being an operational problem which needs to be solved whenever system parameters
change, solution to the workload allocation problem is also necessary for making capacity selec-
tion decisions. Appropriate capacities must be chosen only after taking into account what impact
workload allocation might have on overall expected WIP for any given capacity con�guration. Fur-
ther research, which builds upon the insights of this article, and simultaneously examines workload
22
allocation and capacity selection issues in presence of setup times, is currently underway.
Acknowledgements
Saifallah Benjaafar was supported in part by the National Science Foundation under grant DDM-
9309631 and the University of Minnesota Graduate School. Diwakar Gupta was supported in part
by the Department of Mechanical Engineering, University of Minnesota, (via a visiting appoint-
ment) and in part by the Natural Sciences and Engineering Research Council of Canada through
research grant number OGP0045904. The authors also acknowledge Mehdi Sheikhzadeh, a Ph. D.
candidate at the University of Minnesota, for his help in computer implementation of the two-stage
heuristic.
23
Appendix
A Convexity of the Objective Function of the Zero Setup Times
Model
Proposition A.1 The objective function of the zero setup times model of section 4.2, i.e.,
E[WIP] =MX
j=1
�2jE[S2j ]
2E[Sj ]2(1� �j)+ �j ;
is jointly convex in �j's, j = 1; 2; � � � ;M .
Proof: Di�erentiating E[WIP] with respect to �k, for any k = 1; 2; � � � ;M , we get:
@E[WIP]
@�k=
2�k � �2k2(1 � �k)2
E[S2k ]
E[Sk]2+ 1; (A.1)
and@2E[WIP]
@�2k=
E[S2k ]
2(1� �k)3E[Sk]2� 0: (A.2)
Notice that the second partial derivative is positive in the relevant range of �k values, i.e., when0 � �k � 1.
Similarly, di�erentiating (??) with respect to �`, where ` = 1; 2; � � � ;M and ` 6= k, we get
@2E[WIP]
@�k�`= 0: (A.3)
>From (??) and (??), it follows that the M �M Hessian matrix H of second partial derivatives issuch that all of its non-diagonal elements are zero, whereas all of the diagonal elements are positive.Thus, the determinant of this matrix, as well as that of any one of its principal submatrices, issimply the product of the relevant diagonal elements, and hence positive. Recall that rth principalsubmatrix Hr of H consists of the �rst r rows and columns of the latter, for each r = 1; 2; � � � ;M .Next, we use the fact that a symmetric matrix is positive de�nite if and only if the determinantof each of its principal submatrices is positive, to argue that H is positive de�nite. This, in turnimplies that E[WIP] is jointly convex in �js [?, pp 194, 459]. #.
B Proof of Observations 1 - 5
To improve readability, we will present the statement of each of the 5 observations of section 4.3before providing formal proofs.
Observation 1 For a given total workload (�j) and number of part types (mj) assignment to a
machine, the optimal vector of �ij's is a feasible vector which is maximal under the partial order of
majorization.
Proof: Clearly, we wish to minimize E[WIPj] expressed in equation (??) subject to the constraints:Pmj
r=1 �j(r);j��j = 0, and �j(r);j � 0, 8 r = 1; 2; � � � ;mj. Using arguments similar to Appendix A, it
24
is easy to con�rm that E[WIPj] is jointly concave in �j(r);j for each r = 1; 2; � � � ;mj. Furthermore,the constraints are linear and therefore form a convex feasible set. Thus, we face the problem ofminimizing a concave function over a convex set. Using standard Kuhn-Tucker conditions, it canbe shown that for this problem, the optimal solution is to set any one of the �j(r);j = �j and theothers to zero. In other words, a vector of feasible (�j(r);j ; � � � ; �j(mj );j) values is optimal if it ismaximal under the partial order of majorization. Hence proved. #.
Observation 2 If j(1), j(2), � � �, j(mj) denote the indices of the mj part types assigned to machine
j, then E[WIPj] is strictly increasing in �j(r);j for any r = 1; 2; � � � ;mj, when all other workload
assignments to this machine remain unchanged.
Proof: Di�erentiating (??) with respect to �i;j where i belongs to the index set fj(1); � � � ; j(mj)gof products that are assigned to machine j, and noticing that @�j=@�i;j = 1, for all i, we get:
@E[WIPj ]
@�i;j= 1 +
[2�j��2
j]E[S2
j]
2E[Sj ]2(1��j)2+
E[R2
j]
2E[Sj ]E[Rj]+
E[Rj]
2E[Sj ](1��j)2f(mj � 1)(1 � �j)
2
+mj(�2j �Pmj
r=1 �2j(r);j) +mj(�j � �i;j)g:
(B.1)
It is easy to con�rm that the above partial derivative is positive. Therefore, the expected work-in-process inventory at any arbitrary machine j is increasing in any of the mj products' workloadassigned to it. #.
Observation 3 If for two identical machines labeled j and `, mj = 1, m` � 2, and �` � �j, then
E[WIP`] � E[WIPj ].
Proof: Since the two machines are identical, E[Sj ] = E[S`] = E[S], and E[Rj ] = E[R`] = E[R].Also, since machine j needs to produce only 1 product, from ??, we get
E[WIPj ] =�2jE[S
2]
2E[S]2(1� �j)+ �j: (B.2)
Similarly, for machine `, we use (??) to obtain
E[WIP`] =�2`E[S
2]
2E[S]2(1� �`)+�`+
�`E[R2]
2E[S]E[R]+
E[R]
2E[S](1� �`)fm`(�`�
mX̀
r=1
�2j(r);j)��`(1��`)g: (B.3)
Comparing the two equations above, it is easy to see that E[WIP`] � E[WIPj] so long as �` � �j.Hence Proved. #.
Observation 4 For any machine j, consolidating work loads from any two products into a single
large workload of any one of the two products, without a�ecting other load assignments to that
machine, always decreases E[WIPj].
Proof: The proof is obtained by taking the di�erence of WIP before and after consolidation undertwo possible cases: one in which the machine makes only two products, g and h, and the other inwhich it makes at least 3 products. After some simpli�cation, these di�erences are found to be
E[WIPj ]�E[WIP 0
j ] =E[Rj ]
2E[Sj ](1 � �j)f2(�j � �2g;j � �2h;j)� �j(1� �j)g > 0; (B.4)
25
when mj = 2, and
E[WIPj ]�E[WIP 0
j ] =E[Rj ]
2E[Sj ](1 � �j)f�j �
NX
i=1
�2i;j + 2(mj � 1)�g;j�h;jg > 0; (B.5)
when mj � 3. Clearly, both di�erences are positive and this completes the proof. Note thatconsolidation does not necessarily result in a reduction of the total average WIP because theincrease in WIP at some other machine, caused by consolidation of any two arrival streams atmachine j, can more than o�set the gain at machine j. #.
Observation 5 If for M identical servers, M = N and �i = �, for every product i, then it is
optimal to dedicate each machine to produce exactly one product type.
Proof: The above result follows after repeatedly applying Observation ??. For any workloadallocation in which more than one product is assigned to a machine, we can �nd a better allocationby consolidation. Eventually, this leads to exactly one product being assigned to each machine. #.
26
References
[1] T. Altiok and G. Shiue (1994) \Single-Stage, Multi-Product Production/Inventory Systemswith Backorders," IIE Transactions, 26, 52-61.
[2] E. Altman, P. Konstantopoulos, and Z. Liu (1990) \Stability, Monotonocity and InvariantQuantities in General Polling Systems, Queueing Systems 11, 35-57.
[3] Benjaafar, S. (1995) \Performance Bounds for the E�ectiveness of Pooling in Multi-ProcessingSystems," European Journal of Operational Research, 87, 375-388.
[4] Benjaafar, S. and M. Sheikhzadeh (1997) \On Scheduling Policies, Batch Sizes, and Manufac-turing Lead Times," IIE Transactions, 29, 159-166.
[5] Boxma, O. J., A. H. G. Rinnooy Kan and M. Van Vliet (1990) \Machine Allocation Problemsin Manufacturing Networks," European Journal of Operational Research, 45, 47-54.
[6] Buzacott, J. A. and J. G. Shanthikumar (1993) Stochastic Models of Manufacturing Systems,Prentice Hall, Englewood Cli�s, New Jersey.
[7] Calabrese, J. M. (1992) \Optimal Workload Allocation in Open Networks of MultiserverQueues," Management Science, 38, 1792-1802.
[8] Dallery, Y. and K. E. Stecke (1990) \On the Optimal Allocation of Servers and Work loads inClosed Queueing Networks," Operations Research, 38, 694-703.
[9] Green, L. V. and D. Guha (1995) \On the E�ciency of Imbalance in Multi-Facility Multi-Server Service Systems," Management Science, 41, 179-187.
[10] Kleinrock, L. (1976) Queueing Systems, Volume I, Wiley, New York.
[11] Lee, H. (1994) \Simultaneous Determination of Capacities and Load in Parallel M/M/1Queues," European Journal of Operational Research, 73, 95-102.
[12] Liu, Z., P. Nain and D. Towsley (1992) \On Optimal Polling Policies," Queuing Systems, 11,59-83.
[13] Luenberger, D. G. (1984) Linear and Nonlinear Programming, Second Edition, AddisonWesleyPublishing Company, Massachusetts.
[14] Marshall, A. W., and I. Olkin (1979) Inequalities: Theory of Majorization and its Applications,Academic Press, NY.
[15] Matlab User's Manual, The Mathworks Inc., Natick, Massachusetts, (1994).
[16] Ni, L. M. and K. Hwang (1985) \Optimal Load Balancing in a Multiple Processor System withMany Job Classes," IEEE Transactions on Software Engineering, SE-11, 491-496.
[17] Powell, M. J. D. (1983) \Variable Metric Methods for Constrained Optimization," Mathemat-
ical Programming: The State of the Art, A. Bachem, M. Grotschel and B. Korte, Editors,Springer Verlag, 288-311.
[18] Ruben, R. A., C. T. Mosier and F. Mahmoodi (1993) \A Comprehensive Analysis of GroupScheduling Heuristics in a Job Shop Cell," International Journal of Production Research, 31,1343-1370.
27
[19] Shanthikumar, J. G. and D. D. Yao (1987) \Optimal Server Allocation in a System of Multi-Server Stations," Management Science, 33, 1173-1180.
[20] Srinivasan, M. M. and D. Gupta (1994) \When Should a Roving Server be Patient?" Man-
agement Science, 42, 437-451.
[21] Stecke, K. and J. J. Solberg (1985) \The Optimality of Unbalancing both Work loads and Ma-chine Group Sizes in Closed Queueing Networks of Multiserver Queues," Operations Research,33, 882-910.
[22] Takagi, H. (1990) \Queuing Analysis of Polling Models: An Update," Stochastic Analysis of
Computer and Communication Systems, H. Takagi (Editor), Elsevier Science Publishers B.V.(North Holland), 267-318.
28