Document 11038320

advertisement
-
'
O
^*
Of
&&
/
ALFRED
P.
WORKING PAPER
SLOAN SCHOOL OF MANAGEMENT
DYNAMIC SCHEDULING OF A MULTICLASS
MAKE-TO-STOCK QUEUE
Lawrence M. Wein
Sloan School of Managment,
MIT
Working Paper No. 31 13-90-MSA
MASSACHUSETTS
INSTITUTE OF TECHNOLOGY
50 MEMORIAL DRIVE
CAMBRIDGE, MASSACHUSETTS 02139
DYNAMIC SCHEDULING OF A MULTICLASS
MAKE-TO-STOCK QUEUE
Lawrence M. Wein
Sloan School of Managment,
MTT
Working Paper No. 31 13-90-MSA
Wi.l.T.
MAR
UBRAh,.
1
5 1990
DYNAMIC SCHEDULING OF A MULTICLASS MAKE-TO-STOCK QUEUE
Lawrence M. Wein
Sloan School of Management, M.I.T.
Abstract
Motivated by make-to-stock production systems, we consider a scheduling problem
for
a single-server queue that can process a variety of different job
are processed, they enter a finished goods inventory that services customer
scheduling problem
is
After jobs
classes.
demand. The
to release jobs to the queue and decide which job class,
if
any, to
serve next in order to minimize the long run expected average cost incurred per unit of
time, which includes linear costs (which
may
differ
by
class) for backordering finished
goods inventory, holding finished goods inventory, and holding
heavy
traffic
control problem involving
solution
is
Under the
inventory.
condition that the server must be busy the great majority of the time in
order to satisfy customer demand, the scheduling problem
its
WIP
is
approximated by a dynamic
Brownian motion. The Brownian control problem
is
solved,
and
interpreted in terms of the queueing system in order to obtain an effective
scheduling policy.
The proposed scheduling
policy releases jobs to the queue only
when
they are about to begin processing, and keeps the server busy as long as the weighted
sum
of the finished goods inventory (where the inventory of each class
expected processing time)
is
not too large.
When
the server
is
is
weighted by
working, priority
is
its
given to
backlogged classes that are expensive to backlog and have short expected processing times,
and when there are no backlogged
jobs, priority
is
given to jobs that are inexpensive to
hold in finished goods inventory and have long expected processing times.
January 1990
DYNAMIC SCHEDULING OF A MULTICLASS MAKE-TO-STOCK QUEUE
Lawrence M. Wein
Sloan School of Management, M.I.T.
Production
facilities
are often categorized as make- to-order systems or make-to-stock
systems. In make-to-order systems, the facility produces according to customer requests,
and no finished goods inventory
is
kept. In make-to-stock systems, the facility produces
according to a forecast of customer demand, and completed jobs enter a finished goods
ventory, which in turn services actual customer
in-
demand. Due to increased global manufac-
turing competition, the customer response time (the length of time between the placement
of a customer's order
reduced, and
is
and the delivery
of the order) required to stay in business
is
being
sometimes smaller than a firm's manufacturing cycle time (the length of
time between a job's start of production and
its
completion). In such cases, the facility
is
forced to operate (at least partially) as a make-to-stock production system.
The
goal of this paper
is
machine, make-to-stock production
facility is
pictured in Figure
1,
facility in
where
material inventory of product k, for k
raw product k job onto the shop
work-in-process
There
is
(
WIP)
problem faced by a
single
a dynamic stochastic environment.
This
to investigate the scheduling
it is
=
floor, at
assumed that there
l,...,iv.
The
when
to release a
which time the job becomes a unit of product k
inventory. These decisions will be referred to as release decisions.
product k finished goods inventory. The machine
may work on
is
modeled
WIP
inventory into units of
as a multiclass queue, in that
only one unit at a time, and each product has
processing time distribution.
Demand
for each product
its
own
general
can be any arbitrary point process
that satisfies a functional central limit theorem (for example, a
If
an ample amount of raw
scheduler decides
a single machine that transforms units of product k
the machine
is
compound Poisson
process).
the machine produces A' products, the dynamic sequencing decisions consist of choosing
A
among
K+
1
options at each point in time: either work on a type k product, k
or allow the machine to
seen later, our
method
sit idle.
Preemptive resume scheduling
of analysis
is
is
1,
...,
K,
allowed, but as will be
crude enough that our resulting scheduling policy
independent of the particular assumptions made with regard to preemption.
no set-up times incurred when switching production from one type
There are linear costs incurred per unit of time
holding finished goods inventory, and holding
by product. The scheduling problem
=
is
goods inventory,
and these
inventory,
to find a release policy
There are
of product to another.
for backordering finished
WIP
is
costs
may
differ
and a sequencing policy
minimize the long run expected average backorder and holding (both
WIP
and
to
finished
goods) cost incurred per unit of time.
Product
A
A
1
Machine
Product K
A—
Raw
Product
-•ii-
-.11-
Figure
Demand
Inventory
1.
The Production
In order to analyze this scheduling problem,
Facility.
we have employed a Brownian model
developed by Harrison (1988) that approximates, under so-called heavy
for
traffic conditions,
a multiclass queueing network by a dynamic control
problem involving Brownian motion. The heavy
must be busy the great majority of the time
satisfy
Product K
Goods
Inventory;
hUSintifrl?
Inventory
a dynamic scheduling problem
Demand
Finished
W)p
traffic
(for
conditions assume that the server
example,
90%
of the time) in order to
customer demand over the long run. By solving a reformulation of the Brownian
control problem and interpreting the solution in terms of the original queueing system, a
2
1
variety of seemingly intractable scheduling problems have been analyzed; see, for
ple,
exam-
Harrison and Wein (1989), Wein (1989a,1989b), and Laws and Louth (1988). In this
paper,
we
model to accommodate a finished goods inventory that
alter Harrison's
services
customer demand, and approximate a multiclass make-to-order queueing system scheduling problem by a dynamic control problem involving Brownian motion.
solution to the workload formulation of the control problem
is
is
A
closed form
obtained, and this solution
interpreted in terms of the original production/inventory system in order to obtain an
effective scheduling policy.
Not
proposed release policy releases a raw unit of product k to the
surprisingly, the
shop only when the scheduler decides to process a type k unit, and thus no
is
held.
Although the release decisions appear to be superfluous
reason they are included
is
in our
WIP
inventory
model, the main
to maintain consistency with Harrison's original model, which
considers a general queueing network with controllable inputs and dynamic scheduling
capability.
By appending
demand
the customer
process and finished goods inventory to
Harrison's model, one can formulate a control problem (job release and priority sequencing)
for a very general make-to-stock queueing network.
policy dynamically tracks the weighted inventory process,
The proposed sequencing
the weighted (by the
mean
processing times)
sum
of the finished goods inventory
which
is
levels
(which can be positive or negative) of each product. Whenever the weighted inven-
tory process
idle.
When
is
below a certain
the machine
is
busy,
reminiscent of the so-called
c\i
conventional multiclass queue.
queue and
Ckfik-
//* is
critical value,
it
then the machine stays busy; otherwise,
employs a dynamic sequencing policy that
is
it is
somewhat
rule that minimizes the weighted average cycle time in
In the
c/x
rule, c k
is
a
the holding cost for class k jobs in
the service rate, and the rule gives priority to larger values of the index
In our setting, let the backorder cost for type k products be 6*, the finished goods
inventory holding cost be denoted by h k and the service rate be
,
/x*-
Among
the job classes
that are currently backordered, our sequencing policy awards priority to the class with the
3
largest value of the index 6*^*-
If
no job
classes are backlogged, then priority
the class with the smallest value of the index h^Hk-
A
simulation experiment
with two numerical examples, and the proposed policy
is
is
given to
is
performed
compared to the conventional
scheduling policy of releasing jobs as above, keeping the machine busy whenever the total
(unweighted) inventory process
is
below a
critical value,
and dynamically awarding
The proposed
to the class with the smallest finished goods inventory level.
priority
policy reduces
the total cost by 14.9% and 23.2% relative to the conventional policy in the two numerical
examples.
An
son's
important implication of the balanced heavy loading conditions assumed in Harri-
Brownian network model
is
heavy
that, in the
represented by the Brow-
traffic limit
nian model, any stations in the original queueing network that are not
heavily loaded will simply vanish. This has been proven for
all
non-bottleneck stations
the most
some single-type queueing
works (see Johnson 1983 and Chen and Mandelbaum 1989), and
eliminating
among
justifies the
when performing the Brownian
net-
procedure of
analysis. Therefore,
our scheduling policy applies to any make-to-stock production system with one bottleneck
workstation that does not allow jobs to
The remainder
in Section 1, the
of this paper
is
organized as follows.
queueing system scheduling problem
corresponding Brownian control problem
in
terms of workloads
5 through
is
9.
The
in Section 4,
solution
is
more than once.
visit this station
is
The
is
given in Section
relevant literature
defined in Section
The problem
3.
and the workload formulation
interpreted in Section 10,
performed in Section 11 to demonstrate
is
is
is
reviewed
2,
and the
reformulated
solved in Sections
and a simulation experiment
its effectiveness.
Section 12 contains some
concluding remarks.
This section concludes with the probabilistic formalisms that
paper.
When we
say that
referred to Karatxas
(J),
F,
is
(ft,
F)
is
be adopted
in this
a A'— dimensional (/i,E) Brownian motion (readers are
and Shreve 1988
F t X, Pz ), where
,
X
will
for a definition),
a measurable space,
4
X
=
it
is
assumed there
X(lj)
is
is
a given
a measurable mapping
C(R K
into
which
0,
is
the filtration generated by
),
is
>
that the process {X(t),t
and
Y=
initial state
{Y(t),t
process
Y
0}
Let
.
Ex
one process
Y
,
Ft =
a(X(s),s <
drift
be the expectation operator associated with
is
F t -measurable
for all
>
t
filtration
with respect to which
X
is
t)
such
covariance matrix E,
fi,
0,
Pz
If
.
then we say that the
X
More
.
generally,
non-anticipating with respect to another process
is
Q
a family of probability measures on
a Brownian motion with
a process that
is
adapted to the coarsest
1.
is
is
non-anticipating with respect to the Brownian motion
is
will say that
is
>
Pz
X, and
0}
Pz
x under
RK
the space of continuous functions on
of
X
we
when
Y
adapted.
Relevant Literature
The problem posed
in this
paper
is
to dynamically schedule a multiclass make-to-stock
queue, which represents a multi-product, single machine, production /inventory system.
Notice that the conventional multiclass queue (where jobs arrive randomly and then exit the
system after service
completed) corresponds to a multi-product, single machine, make-
is
to-order facility. Although the problem of minimizing the
number
of jobs in a conventional
multiclass queue has been thoroughly examined (see, for example, Klimov 1974), there are
no studies that
explicitly analyze the multiclass make-to-stock queue.
However, there have
been several studies analyzing single-machine production/inventory systems with random
demand. Gavish and Graves (1977) and Graves and Keilson (1981) consider the
product case with deterministic processing times and set-up costs.
problem
is
to decide
when
to start
and stop the machine.
single-
Here the scheduling
Graves (1980) attempts to
generalize these results to the multi-product case by considering a periodic review policy
and introducing the notion of a composite product. Bemelmans and Wijngaard (1982)
also aggregate the products in a single-machine, multi-product problem, although their
production model
is
different
than a standard queueing model, in that the machine
is
allowed to work on several products simultaneously.
The paper
that
is
most
closely related to ours
5
is
probably Zheng and Zipkin (1990),
who
analyze a production/inventory system that produces two distinct products.
production system
the customer
is
The
modelled as a single server queue with exponential processing times,
demand
for each product
is
a Poisson process, and an (S
—
1,5) policy
is
used to trigger orders for each product to the production system. They analyze this system
under two
different sequencing policies:
FCFS, and
serve the product that has the lower
inventory level. Their queueing theoretic analysis reveals that the latter policy outperforms
FCFS.
There
els
is
also a substantial literature
on dynamic
lot-sizing problems, but these
mod-
(except for the presence of set-up times) are more restrictive than a standard queueing
model. Readers are referred to the survey paper of Graves (1981) for more on these problems.
and
He reviews
scheduling problems for both make-to-order and make-to-stock systems,
refers to these
systems as open shops and closed shops, respectively.
Our consideration
fact, the analysis
of queueing
and design
and inventory aspects
of such systems have
in
a single model
been the subject
of
is
much
not new. In
recent work;
example, Williams (1984), Bertrand (1985), Zipkin (1986), Karmarkar (1987),
see, for
Cohen and Lee
(1988), Altiok (1989),
and Mitra and Mitrani (1988). In
particular,
the paper by Zipkin (1986) that partially stimulated this analysis. Finally, the heavy
it
was
traffic
theory for queueing systems underlying this Brownian model offers a partial justification
for the direct
modeling of an inventory storage system by a diffusion process, both
in past
example, Bather 1966, Puterman 1975, and Browne and Zipkin 1989) and future
(see, for
research efforts.
The Scheduling Problem
2.
Consider a single server that can serve
entities
different classes of jobs.
We
refer to the
populating the queueing system as jobs rather than customers, so as not to confuse
them with the actual customer demand.
server
K
is
In terms of the production/inventory system, the
the machine, each job class corresponds to a type of product, and each job
is
a
Class k jobs have a general service time distribution with
unit of a particular product.
finite
mean m* and
=
variance s\, for k
for class k are equivalently characterized
up
of class k service completions
jobs in the interval
[0,i].
1,...,K.
The
service times (or processing times)
by the renewal process S* (r), which
to time
is
number
the
the server were continuously serving class k
i if
Adopting conventional terminology, we
= m^
will refer to //*
1
as the service rate of class k jobs.
For each class k
the
number
=
1,...,A", there is
of class k units
an independent demand process
demanded up
to time
For now we
t.
will
which
is
assume that Dk(t)
is
-Djt(r),
a renewal process, and that interarrival times of this demand process have mean A^
variance a?.
that
is
As
required
will
be seen
in the next section, this
assumption can be relaxed, and
in the scheduling
of class k jobs released to the machine's
problem, and these decisions take
Let the reiease process Nk(t) be the number
the form of cumulative control processes.
queue
in [0,r].
Let the allocation process
be the cumulative amount of time that the server devotes to serving
vectors TV
respectively.
t,
and
let
=
(7V fc )
T =
and
Tjt(i)
class k jobs in [0,r].
(7*) represent the release and sequencing policies,
Let Qk(t) be the number of class k jobs in the queue or in service at time
Zk(t) be the
goods inventory.
The
number
vectors
of units (possibly negative) of class k jobs in the finished
Q =
(Qk) and
process and inventory process, respectively.
follows that for k
Furthermore,
all
that £>* satisfy a functional central limit theorem (FCLT).
is
There are two types of decisions
Then the
and
if
=
we
of time the server
1,
...,
K
and
t
>
If
Z =
(Z*) will be called the queue length
we assume
that Q(0)
=
Z(0)
=
0,
then
it
0,
Qk(t)=Nk (t)-Sk(Tk (t)), and
(2.1)
Zk(t)=Sk(Tk (t))-Dk(t).
(2.2)
define the cumulative idleness process I(t) to be the cumulative
is idle in [0, t],
amount
then
K
I(t)=t~Y Tk (t),
t
7
forr>0.
(2.3)
As
in
Harrison (1988), a scheduling policy (N,T) must satisfy
T
continuous with T(0)
is
(2.4)
0,
N
and
T
are nondecreasing
N
and
T
are nonanticipating with respect to Q,
J
and JV(0)
nondecreasing with 1(0)
is
Q(t)
where constraint
=
>
for all
t
>
=
0,
=
(25)
0,
(26)
and
(2.7)
(2.8)
0,
(2.6) implies that the scheduler
cannot observe future demands or service
times.
Now
define the cost function c k for k
=
1,...,A',
<*(*)=(?'*'
v
where
b^ represents the
be zero, we
amount
will
*
X
"°
if
x
>
;
(2.9)
v
;
0,
backorder cost for class k jobs, and
inventory holding cost for class k jobs.
in order to guarantee
\ h k x,
'
by
It will
be assumed that
6*
/i*
>
an interesting problem. Since the optimal
omit different
WIP
is
hk
WIP
the finished goods
>
k
=
1,
...,
K,
inventory levels will
holding costs for each job class, in order to limit the
of notation used. Thus, the scheduling problem
is
to choose a policy
K
T K
minlimsupi£:[/ f] Q k {i) + f] c k (Z k (t))dt]
J
T-oo
0, for
Jo
k=1
(N,T)
to
(2.10)
k=1
subject to constraints (2.1)-(2.8).
3.
The Limiting Control Problem
In this section, a
will
be developed.
Brownian approximation to the control problem
We
(2.1)-(2.8), (2.10)
follow the approach taken in Sections 3 through 5 of Harrison
(1988), which approximates a system that in most respects
is
more complex than the
one considered here. Only the basics of the approximation are provided, and readers are
8
referred to Harrison (1988) for a
step in the approximation
is
more
detailed presentation
The
The
justification.
to define a collection of centered processes. Let p k
be the proportion of time that must be devoted to serving
the average demand.
and
traffic intensity of
=
first
^ k /p- k
class k jobs in order to satisfy
the system, defined by p
=
average server utilization required to satisfy average demand. Define a k
Yik=\ P*>
=
1S t ^ie
pk/p to to be
the proportion of the server's busy time that would be devoted to serving class k jobs
the server
met average demand
=
For k
exactly.
1,...,K and
t
>
0, define
if
the centered
processes
Yk (t) =
Notice that
Y =
a k t-Tk (t),
Nk (t),
9 k (t)
=
n k (t)
= S k (t)-p k t.
(Yk ) and 8 =
\kt
-
(3.1)
and
(3.2)
(3.3)
and are centered around
(6 k ) are control processes
the nominal allocation rates and nominal input rates, respectively.
IK— dimensional
process £ by
-
Ck(t)
=
(A*
( K +k(t)
=
(»kc*k
Then
it
Finally, define the
fi k
a k )t - Vk(Tk (t)),
-\k)t + Vk(Tk (t)) -
for k
=
1,
A',
...,
D k (t) + \ k
and
for k
t,
=
t
>
1,
0,
...,
and
K, and
(3.4)
t
>
0.(3.5)
follows from (2.1)-(2.3), respectively, that
Qk(t)
=
Zk (t) =
(k(t)
+
fi k
Yk (t) - 6 k (t),
CK+k(t)-fikYk (t),
for k
forfc
=
1,
...,
= l,...,A-,
K, and
and
t
>
t
0,
>
0,
(3.6)
and
(3.7)
K
I(t)
As
Tk (t)
= J2 Yk( t ), fort>0.
(3.8)
in Harrison (1988), the key to the approximation
in (3.4)-(3.5)
by
its
is
to replace the allocation process
nominal allocation rate a k t. Readers are referred to Section 5 of
Harrison (1988) for an informal defense of this substitution. This replacement causes the
9
2A— dimensional
process £* in (3.4)-(3.5) to be replaced by \k, where, for
Xk(t)
CK+k(t)
We
Z
The
heavy
by x
=
1,...,A',
rik(<*kt)-D k (t)
+
\ k t,
in the definitions of the
the Brownian approximation
traffic conditions,
.9.
+
(nkC*k-Xk)t
k
for
>
0,
and
for
fc
=
(3.9)
l, ...,#.
queue length process
Q
(3.10)
and inventory
in (3.6)-(3.7).
final step in
equals (1
=
=
will also replace £
process
p
- (A* - Hk<*k)t - Vk( a kt),
t
— p)~ 2
.
A
to rescale the basic processes under
is
which assume the existence of a large integer n that approximately
representative example
Using the system parameter
n,
we
is
to choose
=
n
100
if
the
traffic intensity
define the scaled processes (the
same symbols
are used on both sides of equations (3.11)-(3.13) in order to reduce the notational burden)
Q k (t) =
Z k (t)=
3*(g*)
for
Jt
=
l,...,A',
and
t
>
0,
(3.11)
for
k=
1,...,A',
and
t
>
0,
(3.12)
for
k=
1,...,A,
and
r
>
0,
(3.13)
=
1,...,A,
and
t
>
0,
y/n
Z
,
Yk (t) = ¥±^l,
V"
gfc(<)
=
^(nt)
V
for
,
Jfc
and
(3.14)
y/n
/(<)
=
-i^2,
and the Brownian approximation
The
processes Q, Z, K,
#,
for
is
Jfc
=
l,...,A,
and
essentially obtained
<
by
>
(3.15)
0,
letting the
and J now represent limiting scaled processes, and
referred to simply as the queue length, inventory, allocation, release,
The
parameter n
and
—
will still
oo.
be
idleness processes.
process \ in (3.9)-(3.10) also needs to be rescaled. Define x* by
x «(i) = 2l4^1
for k
=
1,...,2A,
and
t
>
0.
(3.16)
y/n
Then a
straightforward application of the functional central limit theorem for renewal
processes and the
random time change theorem
n
Xk
^X
k
,
for*
10
(see Section 17 of Billingsley) implies that
=
l,...,A,
(3.17)
where
=>•
denotes weak convergence, and X\,...,X k are independent Brownian motion
—
processes with drift y/n(\ k
fi k
a k ) and variance a k ^i\s 2k
two theorems and the continuous mapping theorem
n
Xk
^X
k
for*
,
Similarly, applying the above
.
(Billingsley,
Theorem
= tf + l,..,2tf,
(3.18)
where Xk+\,...,X 2 k are independent Brownian motion processes with
fi k
Q k ) and variance a k
central limit
3
k
fj.
2
sk
+ \ 3k
2
a.
k
demand
Notice that any
.
for
more
We
—^/n(X k —
drift
process satisfying afunctional
theorem can be incorporated into our model. Thus characteristics of actual
customer demand, such as batch arrivals and dependencies across products
arriving with
we have
5.1),
demands
(e.g.,
customers
can be modeled; see Section 6 of Reiman (1984)
for several products)
details.
are
now
K— dimensional RCLL
(right continuous with left limits) processes
min limsup-£ r [/
r-oo l
Jo
Q k (t)
=
X
k (t)
VQ
t (f)
to choose
and 8 to
+ Vc*(Z*(t))«ft]
(3.19)
t=1
k=1
+ n k Yk (t)-6 k (t),
X K+k (t)-fi k Yk (t)
Z k (t) =
Y
is
K
T K
subject to
which
in a position to state the limiting control problem,
for
fovk
=
fc
=
l,...,A',
l,...,K,
and
t
and
>
0,
t
>
0,
(3.20)
(3.21)
K
Yl Yk(t)iovt>0,
U(t)
=
Q(t)
>
U
nondecreasing with U(0)
(3.22)
fc=i
9
4.
and
Y
>
(3.23)
0,
=
0,
and
are nonanticipating with respect to X.
(3.24)
(3.25)
The Workload Formulation
The basic system
WIP
is
for all*
state equations (3.20)
and
(3.21) are in terms of the
number of jobs in
inventory and finished goods inventory, respectively. In this section, we reformulate
the limiting control problem (3.19)-(3.25) in terms of workloads, meaning that the two
11
m
inventories will
now be
expresses in terms of the
amount
work embodied
of
them. First
in
Brownian motion B\ by
define the one-dimensional
K
B
1
(t)
=
J2 m kX k {t), t>0,
(4.1)
t=i
m *(^*~ Hk<*k) —
so that B\ has drift \/™ ]Ct=i
Similarly, let the one-dimensional
B
2 (t)
\/^(p — ^)
Brownian motion
K
= Y,
k
B
XK+k(t),
and variance p -1
<
5Zfc=i ^* 5 Jt-
be defined by
2
t
>
(4.2)
0,
*=i
with
drift y/n(l
—
p)
>
-1
and variance
/>
formulation of the limiting control problem (3.19)-(3.25)
processes Q, Z, and
#,
and the one-dimensional process
VQ
k (t)
^2m k Q k (t) + ^2m k e
subject to
is
U
The workload
Ylk=i P\^* a \to choose the
A'— dimensional
to
K
T K
min limsup-£ r [/
+
(X)fc=i ^* 5 *)
k (t)
+V
=
c*(Z*(t))<ft]
Bi(t)
+
U(t),
(4-3)
for
<
>
(4.4)
0,
k=l
k=l
K
Y™ Z
k
J
k {t)
= B 2 {t)-U{t),
for
t
>
(4.5)
0,
*=i
Q(<)
>
U
nondecreasing with U(0)
is
for all*
>
(4.6)
0,
=
0,
and
(4-7)
Q, Z, U, and 6 are nonanticipating with respect to
A'.
Let (Y, 0) be a feasible solution to the limiting control problem (3.19)-(3.25)
satisfies (3.20)-(3.25),
(4.3)-(4.8)
if
and
(Q, Z, U, 6)
let
(4-8)
if
(Y,9)
(Q, Z, U, 8) be a feasible solution to the workload formulation
satisfies (4.4)-(4.8).
Then problems
(3.19)-(3.25)
and
(4.3)-(4.8)are
equivalent formulations, as can be seen from the following proposition.
Proposition
1.
Every
feasible policy (Y,8) for the limiting control
problem yields a
corresponding feasible policy (Q,Z,U,d) for the workload formulation, and every feasible
12
policy (Q, Z, U, 6) for the workload formulation yields a corresponding feasible policy (Y, 9)
for the limiting control problem.
Proof. Let (Y,
U
Q, Z, and
8)
be any feasible policy for the limiting control problem, and define
by
Q k (t) = Xk (i) + HkYk (t) - 6 k (t),
Zk (t) = XK+k (t) - fi k Yk (t),
=
for k
for k
=
1,
...,
and
A',
>
t
and t>0,
l,...,K,
0,
and
(4.9)
(4.10)
K
=
[7( r )
Then
and
(3.25)
and
^r (r)forr >0.
(4.9)-(4.11) imply that (4.8) holds, (3.22), (3.24),
(3.20), (3.23),
and
(4.9)
imply
(4.6). Also, for
i
Q,(r)
=
^m
Jt
X
t
^m^
(0 +
*=i
Jt=i
=B
1
>
t
(4.11) imply (4.7),
K
Jt
yi(r)-^m^ t (0,
by
(4.9),
(4.12)
t=i
Jt=i
(t)
and
0,
K
K
K
^m
(4.11)
it
K
+ V{t)-Y, m kh(t)
(4.1)
and
Yk (t),
by
by
1
(4.13)
(4.11),
fc=i
and so
(4.4) holds. Similarly,
K
K
J2 m kZ k (t) =
k=l
K
Y m X K+k (t)-Y m
k
/
/
k=l
(4.5) holds.
Thus (Q,Z,U,6)
Reversing the argument,
let
is
by
by
Yk (t) = m k X K+k {t)
-
m k Z k (t),
and
(4.2)
us suppose that
Y
(4.8)
and
(4.11),
for
(Q,Z,U,6)
k
=
(4.15)
a feasible policy for the
and
t
>
0.
(4.16)
and
K
K
£n(0 = £ m***+*(*)-E m * Z
*(')'
k=\
is
l,...,K,
(4.16) imply (3.25), (4.16) implies (3.21),
K
(4.14)
a feasible solution to the workload formulation.
workload formulation, and define
Then
(4.10),
fc=l
= B2 {t) - U(t),
and so
k fi k
k=\
by
(4.16),
(4.17)
*=i
K
= B 2 (0-^m Z
fc
=
U(t),
by
(4.5),
13
fc
(0,
by
(4.2),
(4.18)
(4.19)
and so
and
(3.22) holds,
Finally, for k
(4.7) implies (3.24).
=
1,...,A',
and
t
>
0, (4.16)
implies that
Xk (t) + n k Yk (t) - 6
and thus
(3.20) holds,
and
k (t)
=
X k (t) +
=
X
=
Qk(i),
k (t)
fi k
m k X K+k (t)
-
fi k
+ XK+k(t) - Z k {t) by
(4.9)
(4.6) implies (3.23).
and
m k Z k (t) - 6k (t),
(4.19)
6 k (t),
(4.20)
(4.21)
(4.10),
Thus, (Y, 9)
is
a feasible solution to the
limiting control problem. |
The next
four sections are devoted to solving the workload formulation. Not only
the workload formulation easier to solve than the limiting control problem, but
is
its
is
solution
also easier to interpret in terms of the original queueing system, as will be seen in Section
10.
The Three Step Solution Procedure
5.
The workload formulation
which
is
U.
Z The
.
terms of the control process
The
in three steps.
first
step
is
Proposition
embodied
2.
U
,
Q
In the
first step,
and 6 are found
in
second step solves for the optimal control process
Z
carried out in this section, the optimal control processes
terms of the control process
in
be solved
(4.3)-(4.8) will
and the third step derives the optimal control process
in the following proposition.
Let (Z* ,U*,Q* ,0*) denote the optimal solution to the workload
formulation (4.3)-(4.8). Then for k
=
1,..., AT,
Ql(t)
et(t)
=
X
k (t)
=
and
0,
t
>
0,
and
+ X K+k {i)-Zt(t).
14
(5.1)
(5.2)
Proof.
Let
Z
U
and
be any pair of processes satisfying
the pair of processes defined by Qk{t)
9k(t)=Xk(t)
satisfy (4.4)
and
=
for k
+ XK +k(t)-Zk (t),
Moreover, £)f=1
(4.6).
=
for
Q k (t) =
a lower bound on the objective function value in
pair of processes
processes
Z
U
and
1,
=
fc
Z
processes
and
U
and
proof.
r
6.
optimal solution
time
t:
Z
0,
and*>0,
and thus
(5.3)
Q
and
(4.8), it
must hold
offer
for the optimal
|
to choosing the nonanticipating,
Vc*(Z t (0)<ft]
(5-4)
f^
Z
in
Terms of U
step of the three step procedure
are given a process
>
t
and
(4.7).
Solving for
The second
l, ...,#,
0,
Then
T K
min limsup-£ r [/
T-oo T
J
and
>
t
(4.8).
to
1
subject to (4.5)
and
and
Since this argument holds for any
(5.3).
The workload formulation has now been reduced
RCLL
K
for all
satisfying (4.5), (4.7),
Z* and U*, thereby completing the
...,
(4.5), (4.7),
U
is
performed
in this section.
Suppose we
Then, by Proposition
that satisfies constraints (4.7)-(4.8).
2,
the
can be derived by solving the following mathematical program at each
choose Zi(t),...,Zx(t) to
K
min
£c*(Z
fc
(6-1)
(0)
K
Y, m kZk{t) = B2 (t)
subject to
Notice that, at time
observed, and
it is
inventory process
r,
the right side of (6.2)
assumed that U(t)
is
is
U(t).
known, since the value of
(6.2)
B 2 (t)
can be
given. Let us define the one-dimensional weighted
W by
W(t)
= B 2 (t) -
U(t),
15
for
t
>
0.
(6.3)
,
From
(6.2)-(6.3), the process
W
is
interpreted as a weighted
inventory for each product, where the weight
By
the
is
mean
sum
of the finished goods
processing time for the product.
the definition of the cost function c* in (2.9), the solution to problem (6.1)-(6.2) can
be derived by solving 2 h
Each
linear programs.
LP's are subject to the constraint
of these
K
Y,mkZ k (t) =
W(t),
(6.4)
k=i
and each of the LP's corresponds to one
Z
of the 1
K
combinations of each component of
constrained to be nonnegative or nonpositive, thus leading to a linear cost structure.
For example,
and
Z
1
if
(t),Z 2 (t)
minimize
hiZi(t)
K = 2,
<
0;
— b\Z\{t) +
- hZ^t)
the four LP's are to minimize
minimize /iiZi(i)
LP
Z
x
Z 2 (t)
subject to (6.4)
Z
< 0,Z2 (t) >
0;
(t)
> 0,Z 2 (i) <
minimum
that achieves the
b2
h 2 Z 2 (t) subject to (6.4) and
h 2 Z 2 (t) subject to (6.4) and Z\{t)
subject to (6.4) and
then derived from the
+
— b\Z\(t) —
0.
The
x
{t),Z 2 {t)
>
0;
and minimize
solution to (6.1)-(6.2)
objective function value from
is
among
the 2 K LP's.
Analyzed
in this way,
we can
find a simple closed
form solution to
values of W(t). Without loss of generality, define the indices j and
where
it is
possible for j
=
/.
W)
= ——
min
i<k<K
rrik
min
\<k<K
rrik
Then
f
={
/
(6.1)-(6.2) for all
by
and
(6.5)
rrij
=
—
(6-6)
ttii
the optimal solution Z*(t) to (6.1)-(6.2)
mil
mk
I 0,
if
k
=
;
and W(t) >
~
0;
if
k
±
j
and W(t) >
0.
if
Jt
=
/
and W(t) <
0;
if
k
5*
/
and W(t) <
0.
is
(6-7)
and
(
ZUt) =
Ell!
mk
(6.8)
I
I 0,
Notice that the optimal control process Z*
is
via (6.3).
16
expressed in terms of the control process
U
The Resulting Control Problem
7.
Proposition 2 and solution (6.7)-(6.8) can be used to reduce the workload formulation
to a problem of choosing the optimal control process U.
let
us define h
=
hj/m.j and 6
function ct(Z£(r))
is
=
b//mj. Then, by (2.9) and (6.5)-(6.8), the optimal cost
given by f(W(t)), where
hx,
f
«*> = {
Thus, f(x)
zero at x
is
—
0.
x
>
0;
(71)
** <o.
a piecewise linear, continuous, convex function that achieves a
minimum
B 2 Ez [U(t)]
Then the
resulting
each
finite for
is
,
RCLL
r
process
>
U
such that
and each
Brownian control problem
is
U
is
nonanticipating
initial state
to find a policy
5 2 (0) =
U
x,
W{t)
subject to
that
U
is
= B 2 (t) -
nonanticipating with respect to
X
U(t) for
in the
t
and
to
min limsupif?r [/ f(W(t))dt]
Although
of
0.
with respect to
=
if
-K
Define a policy to be a nondecreasing
£7(0)
Referring back to (6.5)-(6.6),
(7.2)
>
0.
workload formulation,
(7.3)
it is
clear
U only has to be nonanticipating with respect to B 2 The next two sections are devoted
.
to solving problem (7.2)-(7.3), which
long run average cost criterion.
controlled process
U
a one-dimensional singular control problem with a
The term
"singular" refers to the fact that the state of the
W can be instantaneously changed by the controller and, as a
the optimal control process
which
is
U
is
continuous but singular
(i.e.,
result,
the set of time points at
increases has measure zero). Various one-dimensional singular control problems
with a long run average cost criterion have been studied by, for example, Karatzas (1983),
Robin (1983), Menaldi and Robin (1984), Taksar (1985), and Wein (1989a).
17
a
8.
A
Candidate Policy
U
In this section, a candidate policy
Brownian motion process
by
/i,
B
and the nature
+
process
of control, where
RBM;
functional
U
with barrier
is
B
is
drift y/n(l
—
is
B
is
W
in the interval
derived. Recall that the
p)
>
0,
(
it
is
— 00, B]
Given the
while exerting a
a barrier to be calculated below.
at the point
.
natural to consider
see Harrison 1985 for a detailed development),
W
which we denote
denoted by a 2
referred to as a reflected (or regulated)
the local time of
is
is
of the cost function f(x) in (7.1),
W under such a policy
(abbreviated by
(7.2)-(7.3)
]Ct=i P*^* a /t> which
a policy that keeps the controlled process
minimum amount
problem
appearing in (7.3) has
2
-1
and variance p (£2jt=i ^* 5 *)
positive drift
to
The
controlled
Brownian motion
and the control
B. In particular, the control policy
U
defined by
[B 2 (s)-B] +
U(t)= sup
for
,
t>0.
(8.1)
0<s<t
The
following proposition concerning a one-dimensional
RBM
is
needed. See Chapter
1
of
Harrison (1985) for a derivation of (8.2)-(8.3), and see Theorem 7.2 of Abate and Whitt
(1987) for a proof of (8.4).
Proposition
and thus
3.
Suppose
W = Bj — U
is
a
2? 2 is
a
RBM on
(p.,
(— 00,
2
Brownian motion,
)
B].
Then
U
is
defined as in (8.1),
W has an exponential steady state
distribution with density function
p(x)
=
ve
u(l - B)
for
,
x<B,
(8.2)
where
»-H.
(8-3)
<y-
Furthermore, for each starting state x
< B,
E x [W 2 (t)}
there exists a constant
<K
18
for all
t
>
0.
K
such that
(8.4)
Thus,
if
becomes one
we
restrict ourselves to the class of policies in (8.1),
of finding
B
to minimize F(B), where
/0
bxue"
(z - B)
,B
B
dx+
4.
The
hxve v{z
/
- B)
dx.
(8.5)
JO
-oo
Proposition
then problem (7.2)-(7.3)
solution to (8.5)
is
a--gi.(i +
(8.6)
J).
fUH
*tiT)-Ur-^Ia(l + j[).
Proof. Integrating
(8.5)
by parts and canceling terms gives
F(B) = -e-" B +
-(1
-
e-"
vB
>
0,
vB '
convex and B* minimizes F(B). Since e~
=
Setting F'(B)
=
hB-
F(B)
is
B
(8.8)
).
yields (8.6). Also,
F"{B) = u(h +
so
(8.7)
b)e-
(8.9)
h/(h
+ 6),
it
follows
from
(8.8)
that
'<*>-&T»h" r -r(
9.
1
-s?»)-
ur "
(810)
Proof of Optimality
The
following theorem provides sufficient conditions for the candidate policy from
Section 8 to be an optimal policy for problem (7.2)-(7.3). Let
^^Vj + T
2
dx 2
19
ox
(91)
B2
be the infinitesimal generator of the Brownian motion
.
As
is
usual in control problems
with long run average cost criterion, the gain g represents the minimal average cost of
problem
and the potential function V(x) represents the
(7.2)-(7.3)
the optimal policy
when
the
incurred incurred under the optimal policy
which
in this case
Theorem
5.
is
when the
W
initial state is in
is
x minus the cost
some reference
state,
B.
Suppose (g,V(x),B)
TV(x) + f{x)
and
the controlled process
initial state of
cost incurred under
satisfy
-g>0
x
> B,
(9.2)
for x
< B,
(9.3)
for
TV(x) + f(x) - g
=
V'(x)
<
0,
for x
< B, and
(9.4)
V'(x)
=
0,
for x
> B,
(9.5)
there exist constants A'i, A'2, and A'3 such that
0<V(x)<K Q -\-K
1
x
+
K
2x
2
for all x.
(9.6)
Let
U(t)= sup [B 2 (s)-B) +
forr>0.
,
(9.7)
o<»<«
and suppose
1
r
J-
Jo
T
min limsup-£[/
T— 00
Then
U
is
the solution to problem (7.2)-(7.3) and g
The proof
solution
is
f(B 2 (t) +
consists of
two main parts, and the
found to the optimality equations
can be written
in the
=
U(t))dt]
is
g.
(9.8)
the minimal average cost.
first
part
(9.2)-(9.5).
The
is
posed as a lemma, where a
basic condition for optimality
form
rmn{TV{x) - f(x) +
20
g,
-V'(x)}
=
0,
(9.9)
'
which
is
implied by (9.2)-(9.5). This equation can be heuristically derived by considering
the optimality equations for the corresponding discounted problem (see, for example, Harrison
letting the discount rate tend to zero (see, for example,
and Taksar 1983) and
Taksar
1985).
Lemma
B*)
(g*, V*(x),
6.
satisfy (9.2)-(9.6),
ha 2
=
ln(1+
l7
°
6
.
,
';
ir-gKl + |).
and
(9.8),
where
X
)
(9.10)
•
and
(y)dy,
(9.11)
ifx
> B;
ifx
< B,
(9.12)
where
(
ho
2.
V'(x)=
wH
ho*
i
1
+
I)
"
T + W ~ ^gJ^e-*"-/'',
ifx € [0,5];
ifx
Proof.
1°.
Notice that
cost function, respectively,
substituting g*
and B*
B* and
into (9.3)
\v'\x) +
for V'(x),
w
C
is
/i<7
°
(9.8)
is satisfied.
We
start
by
and solving
/zV'(z)
+
/(*)
-
—- ln(l + ^) = 0,
(9.14)
which yields
V'(«) =
where
and thus
4,
> B.
and candidate minimum
g* are the candidate policy
from Proposition
(9.13)
^4
M
2/i 2
v
1
+
T)
AT
+ Ce-" "
2
,
,
v
6.
Ch
+TTL
h + b
e
~" Z
=
f
f(vV" d V>
for x
£ B*
(9.15)
y.oo
cr
a constant. Setting V*'(B*)
= rjlnl
+ Th'
2
2/i
^22
in (9.15) gives
-^^[21
b
L^ f^
dv+h
vd
(9.16)
\
Integrating by parts yields
ha
2/i
Since e"°
b
,
,
v
2
s
y
/i
=
(h
+
Ch
+6
2
a
/i
b)/h,
0.
+
—+
b'
Ch
°--^^ l+
C=
h
x
(9.17)
»/*
1/
we have
ha*
so that
h
,
2K
J + Tr
b
-^
ha 7
1+
(9.18)
fr
Thus,
V*'(x)
=
2^ 2
which yields the top part of
+ -) +
ln(l
1
frye"My,
/
x<0,
(9.19)
forx€
[0,B*], (9.20)
for
and
(9.13),
ha
V-(,)-_,h(l + -)-- I .which yields the bottom part of
— e""
-6 /
ye" v dy+h I
J— oo
ye" dy
5
,
JO
(9.13). Setting V*' (x)
=
for
x
> B*
implies (9.5), and
defining V*(x) as in (9.12) implies (9.3).
2°.
In order to verify (9.2), notice that for i
> B*
(9.5) implies
,
TV*(x) =
0,
and
thus
TV*(x)
3°.
+ f(x)-g* = hx-hB* >0.
Condition (9.4) will now be
(9.21)
verified. First, notice that
ha
ba'
+ t)-o3
^'(°)-ctM1
2/z
h'
2^
2 "~" v ~
ha 2
"
"
V
ln(l
(9.22)
'
+
-)--
(9.23)
<o,
since ln(l
x
<
+
x)
<
x.
Since V*"(x)
=
(6//i)
(9.24)
>
for x
<
0, it follows
that V*'(x)
<
for
0.
For x 6(0,5*),
V*"(x)
= -- + (^-^)e- 2 ^/"
22
2
,
and
(9.25)
2
2 "'/"
(^±^)(-^)e<
1
V»'(x) =
= B"
Since V*"(x) gives a value of zero at x
for x
€
V*'(B*)
(0,i?*).
(9.26)
in (9.25), (9.26) implies that
V*"(x)
>
Condition (9.4) follows by the continuity of V*'(x) and the fact that
= 0.
4°. Finally, condition (9.6) needs to
V*(x)
0.
a
/x
>
for all x
be
and V*(0) equals some
By
verified.
constant
finite
and
(9.4)
K
4
>
0.
(9.12),
For x
it is
<
0,
clear that
V*'(x) can
be expressed as
H.)-5K + i>-i
h>
which equals
A'5
+ K&x
for constants A'5
V'(x)
and
(9.6)
can be
verified.
<
and
+
h
A'6
>
0.
-x,
(9.27)
Thus,
= Ki- f (A5 + K6 x)dx,
(9.28)
|
We are now in a position to complete the proof of Theorem 4, and show that conditions
(9.2)-(9.6) are, in fact, sufficient for optimality.
Proof of Theorem
As
5.
generalized Ito's formula (see
in
Lemma
Meyer 1976)
2.3 of
to
Menaldi and Robin (1984), we apply a
V(W(t)) and use
inequalities (9.2)-(9.5) to
obtain
9<^E
where the
first
Z
term on the
]
f(W(t))dt
j
Jo
T
+
[V(W(T))),
Ie
T z
(9.29)
right side of (9.29) represents the cost function (7.2)
under an
arbitrary policy. Inequality (8.4) in Proposition 3 and inequality (9.6) imply that the last
term in (9.30) goes to zero as
policy U.
The proof
of
T—
Theorem
10. Interpreting the
5
>
00,
now
and thus g minorizes the
follows from
Lemma
6.
cost function
under any
|
Optimal Solution
In this section, the solution (Q*, Z*, U*,0*) to the workload formulation (4.3)-(4.8)
will
be interpreted
in
terms of the original production/inventory system in order to de-
velop an effective scheduling policy.
We
begin by reviewing the solution. In the workload
23
formulation, the controller observes a 2 A'— dimensional Brownian motion
B2
can be observed the one-dimensional Brownian motion
vi &
(4-2).
The
X, from which
controller exerts
the optimal control
U*(t)= sup [B 2 (s) - £*]+, forr>0,
(10.1)
0<s<t
where the optimal barrier B*
the optimal solution Z*
is
given by (8.6). Letting W(t)
= B 2 (t) -
U*(t), for
>
t
0,
is
Z t*(<) =
(Mil
m
if
Jfc
if
k
f-^,
m
if
Jb
[ 0,
if
Ik
=
j
^d
>
wit) "
0;
?
j
and W(t) >
0,
=
/
and W(t)
<
0;
/
and
W r (<) <
0,
*
(10.2)
{
[ 0,
and
Z««) =
where the indices
j
and
/
'
*
(10.3)
(and the parameters h and
— = ^- =
min
i<Jt<A' rrik
min i*i<k<K mjt
=
Finally, for k
1,
...,
A',
and
<
>
0,
eut)
The scheduling decisions
when
=
h
b)
are denned by
and
(10.4)
rrij
= iL = 6.
(10.5)
m/
the remainder of the solution
QJ(<)
(1)
^
x
k (t)
=
0,
is
and
(10.6)
x K + k (t) - z;(t).
+
in the production/inventory
(io.7)
system are to dynamically decide
to release class k jobs to the machine's queue (that
is,
when
materials onto the shop floor), (2) whether to have the machine working or
the machine
is
to be working, which job class should be processed.
decisions are easily found
from the solution
(10.1)-(10.7).
The
it
follows that in the idealized
24
idle,
first
and
raw
(3)
if
two of these
In particular, recall that U(t)
represents the scaled cumulative idleness incurred by the server. Since
policy (10.1),
to release
W
is
Brownian system, the server
a
is
RBM
under
only idle at
times
t
server
when
is
the weighted inventory process W(t)
where the right side of (10.9)
Notice that the
is
Since Q*(t)
=
0, it is clear
This zero inventory policy
no
2(137)
the
(
(10.8)
y/nB*, or when
<
^
<
109)
that no
and
as the
the variance of the service times increase.
and goes
WIP
traffic intensity increases,
to zero as b/h goes to zero.
inventory
when the machine
is
held,
and a
class k job
is
released
decides to begin serving a class k job.
not surprising, since there are no set-up costs or set-up times
is
costs for holding
raw material inventory, and there
interesting to note that such a policy
more than one machine;
b 1+
demand and
as b/h increases,
to the machine's queue only
of
,
*>0.
y/nB* increases as the
critical level
,/nB* increases
incurred,
< B* and
expressed strictly in terms of of the problem parameters.
variance of the interarrival times of
is
^p,
=
the machine should be kept busy whenever w(t)
wm<
Also,
B*; otherwise, W(t)
busy. Let w(t) be the actual (unsealed) weighted inventory process, defined by
W(t)
Then
is
is
not achievable
if
see the job release policy in
is
only a single machine.
It
the production system consists
Wein (1989b)
for
a two-station
queueing network.
We now
turn to the priority sequencing decisions, which need to be interpreted in
terms of the optimal finished goods inventory process Z*. Recall that Z*
solving the mathematical
is
derived by
program
K
min
$>(Z
fc
(10-10)
(0)
K
subject to
^m
k
Z k {t) =
W(t),
(10.11)
i=i
at each
we find
time
it
i,
where W(t)
is
the
known weighted inventory
beneficial to analyze the dual of (10.10)-(10.11),
25
process.
As
in
Wein (1989b),
and to eventually derive dynamic
reduced costs for the primal variables. Let Z^(t) and
Z k (t),
negative parts of
for k
=
Then
1,...,A'.
K
Yh
Yb
+
k Z+(t)
Z+(r)Z;~(r)
subject to
represent the positive and
(t)
(10.10)-(10.11) can be expressed as
K
min
Zk
=
k Z^(t)
k
for
0,
=
(10.12)
l,...,K,
(10.13)
tf
ft-
£ mkZi
(*)
-
Em z
*
*'(0
=
^w.
(
for
Jk
=
l,...,A,
(10.15)
Z -(r) >
for
it
=
1,...,A.
(10.16)
fc
...,
0,
A/^i) denote the dual variables corresponding to constraint (10.13), and
Aa'+i(0 be the dual variable corresponding to constraint (10.14).
let
problem (10.12)-(10.16)
max
subject to
W(t)X K+i(t)
^
Zk
(t)X k (t)
m k \ K+l (t)
+
the solution to (10.17)-(10.19)
for k
—
1,...,A',
A^- +1 (i)
=
hj/rrij,
and Z^*{t) —
j,
for k
0,
=
1,..., A",
and
DRC's) can be derived
is
<
hk
is
,
,
for
Jt
for
Zf*(t)
fc
=
l,...,A',
(10.18)
=
l,...,A.
(10.19)
= W(t)/m } Zf(t) =
thus agreeing with (10.2). Moreover, \\{i)
and thus dynamic reduced
for all primal vaiables except Z~{t).
The
DRC
for
Z£(t)
in (10.12)-(10.16),
and d~(t) be the
4(<)
= 0,
dt(t)
= ro
d ;(t)
= m k (^ +
for
,
=
costs (abbreviated
0,
by
DRC for a primal variable
the slack in the corresponding dual constraint in (10.18)-(10.19).
be the
of
(10.17)
Zt(t)\ k (t)-m k \ K+1 (t)<b k
When W(t) >
Then a dual
is
z+(t),z-(t)Mt)
k
-
Z + (i)>0,
fc
Let Ai(r),
io 14 )
DRC
If
we denote d^(t)
to
for Z±{t), then
(10.20)
fc
(— --*-)
m. k
^)
m
}
26
fark^j, and
(10.21)
forfc^j.
(10.22)
Similarly,
Z£*(t)
=
when W(t) <
for k
£
/,
the solution to (10.17)-(10.19)
0,
Zf(t) =
\k+i = — 6//m/. The DRC's
for k
d7(t)
=
0,
d7(t)
=
m k (—
d7(t)
(
1, ...,#,
in this case are given
=
10. 20)-( 10.25)
AJ(r)
=
Z,
0, for
(t)
fc
=
= W{t)/m u
and
!,...,#,
by
(10.23)
mic
The DRC's
=
-*
is
-—
mi
m k (— +
forJfc^/,
)
and
(10.24)
^-) iorkjLl.
m/
m*
(10.25)
can be interpreted as the increase in the optimal objec-
tive function value (10.12) per unit increase in the right side value of the nonnegativity
constraint in (10.15)-(10.16). Thus, d^(t), where defined,
is
the extra cost incurred
scheduler were forced to hold a class k job in finished goods inventory at time
is
at
the extra cost incurred
time
amount
and d7(t)
the scheduler were forced to backlog a unit of class k inventory
class requires a different
amount
of expected processing time,
we
and
of effort required to process a job needs to be considered, in addition to the
cost incurred to hold or backlog a class k job in finished
(1988),
the
t.
However, each job
the
if
r,
if
will base
goods inventory.
As
in
Yang
our sequencing decisions on the ratios
f££)
mk
which measure how costly a
^d £22,
mk
class k job
is
for *
to hold
=
(10.26)
1,. ..,*:,
and backlog,
respectively, at time
t,
per
unit of processing time.
Before stating the proposed policy,
(10.16)
and the
resulting
DRC's
in
let
us further interpret the solution to (10.12)-
terms of the original production/inventory system.
According to (10.14), the scheduler can choose any values of Z^{t),
that are consistent with the present weighted inventory process W(t).
Z^ (<), k =
Thus
1,
in the
...,K,
Brow-
nian limit, backorder levels and inventory levels of various classes can be instantaneously
27
exchanged
for
one another, as long as the work content
changed. As explained
cation of server time
in
it is
among
the various classes, and they appear to occur instantaneously
is
in scaled time.
the weighted inventory process W(t)
desirable to have no backlogged orders,
the class that has the
minimum
time to process. Notice that
if all
no backlogged
is
expected processing time
an increase
class
in the finished
with the
minimum
it
(i.e.,
>
and to hold
classes
smallest
all
/ijt
is
from (10.2) and (10.4) that
of the inventory in terms of
This class
the service rate.
goods inventory and/or takes a relatively long
have the same hk value and there are currently
award
desirable to
/i*).
This
goods inventory holding
value of
0, it is clear
value of hkfik, where
relatively inexpensive to hold in finished
jobs, then
remain un-
Harrison (1988), these exchanges can be interpreted as reallo-
because we are observing the system
When
in these inventories
priority to the class with the largest
is
because the completed job
cost,
and thus giving
will
cause
priority to the job
delay (on average), and hence reduce, the holding
/xt will
cost incurred.
Furthermore, the DRC's in (10.21)-(10.22) quantify the extra cost incurred
job classes are held or backlogged. From (10.21)-(10.22),
k
^
j,
and thus
it is
more
clear that d^(t)
costly to backlog a unit of class k than to hold
goods inventory. Moreover, the index
class k jobs.
it is
6*/xjt
it
if
the other
>
d^(t) for
in finished
indicates the relative expense of backlogging
In particular, the classes with the larger values of the index
expensive to backorder. Also, notice that serving a class k job
will
t/t/zt
are
more
tend to increase the
value of Zk, since the job will be sent to the finished goods inventory upon completion of
processing. This suggests that,
among
the classes that are currently backlogged, priority
should be given to the class with the largest value of the index
Notice that
when W(t) <
0,
bkfik-
then at least one class must be backlogged, and the
proposed solution (see (10.3) and (10.5)) holds no finished goods inventory, and has
backlogged orders be of the class with the
is
relatively inexpensive to backlog
and
is
minimum
value of the index bk^k- This class
relatively slow to process.
28
all
Notice that
if
two
classes
have the same
bk value
and are each currently backlogged, then
priority to the class with the shortest expected processing time
(i.e.,
it is
desirable to give
larger /z*), because
then a backlogged order will be satisfied faster (on average), and backorder costs
will
be
reduced.
Thus, our proposed sequencing policy
time
t,
is
dynamic, but takes a very simple form. At
the server considers the subset of classes that are currently backordered, and serves
the class in that subset with the
maximum
value of of the index 6*//*.
backordered, then the machine processes the class with the
hkpk-
minimum
If
no
classes are
value of the index
should be noted that there are no existing limit theorems that support this
It
interpretation, unlike the case of sequencing standard queueing networks in heavy traffic,
where many results
1973,
Reiman
heavy
exist (see the
traffic limit
1983, Johnson 1983, Peterson 1985, and
Chen and Mandelbaum
1989).
An Example
11.
In this section,
system has
with rates
we perform a simulation experiment with a
The
particular example.
K = 3 job classes, and the processing times for the three classes are exponential
p.
=
(1,1/2, 1/3).
The customer demand
=
independent Poisson processes with rates A
and the
theorems of Whitt 1971, Harrison
traffic intensity is
p
=
Two
.9.
for the three classes are according to
(.3, .15, .1),
and thus
pi
=
P2
=
P3
—
-3,
cases of this example will be tested, which differ
by their cost parameters. The backorder and finished goods holding costs axe given by
b=
(2,2,2) and h
=
(1, 1, 1) for case 1,
and
=
b
(3, 8, 6)
and h
=
(2, 1,4) for case 2.
Let Z(t) represent the actual (unsealed) finished goods inventory level at time
let
<r
2
w(t)
/2(l
-
=
^2 k=1 Tn.kZk{t) be the actual weighted inventory process.
p)
=
80, so
=
from
(10.9),
it
and whenever w(t) < 801n(5)
<
801n(3)
case
1,
the proposed sequencing policy
class 2 jobs
if
1,
and
In our example,
follows that the server should be kept busy whenever
w(t)
87.88 for case
i,
is
to serve class 1 jobs
they are backlogged and class
1
29
if
=
128.76 for case
2.
For
they are backlogged, serve
jobs are not backlogged, and serve class 3
jobs otherwise. For case
class 1 jobs
if
2,
the policy
to serve class 2 jobs
is
if
they are backlogged and class 2 jobs are not backlogged, serve class 3 jobs
they are the only backlogged jobs, and serve class 2 jobs
if
there are no backlogged jobs.
has been understood that class k jobs are backlogged at time
found that the proposed scheduling policy to perform
jobs are backlogged at time
t
if
Zt(r)
<
Our proposed
policy,
two other scheduling
no
two
WIP
is
when
denoted by
keep the server busy whenever
policy in Table
I,
level.
That
ties are
policy in Table
is,
PROPOSED
priority
is
^^-j
we say
that class k
in
Table
I, is
compared against
proposed release policy that results
The
Zk(t)
<
where the determination
c,
policy,
first
which
1,
will
is
policy,
always serves the class that has the
awarded to
class k at
time
t
if
of
referred to as the
A*/^
=1 A ;
,
maintain the long run average
demand. The other
Zk{t)
=
which
is
mimimum
called the
inventory
mini<j<A: Zj(t), and
broken randomly. This policy was proposed in Bemelmans and Wijngaard (1982)
and Zheng and Zipkin (1990), and appears to be a
in practice.
None
preemption of
For
However, we
Zk(t) drops to zero.
Such a policy
of jobs required to satisfy customer
MINIMUM
0.
gives priority to a class k job with probability
regardless of the state of the system.
mix
if
<
It
and so only backorder and holding costs are incurred. The other
the parameter c will be described below.
RANDOM
Zk(t)
slightly better
policies. All three policies use the
inventory,
policies
which
t if
if
This altered definition allows the scheduler to
0.
prevent anticipated backlogs by reacting
in
they are backlogged, serve
all
perfectly reasonable policy to
employ
of the scheduling policies tested in the simulation experiment allowed
service.
three scheduling policies and both cases, 20 independent runs were made. Each
run started with an empty system and ended after the machine processed 5000 jobs. The
average cost (consisting of backorder costs and finished goods holding costs) incurred per
unit of time was observed for each run, and the
mean and 95%
confidence interval of this
quantity was calculated for each case and each policy. Recall that two of the scheduling
policies keep the
machine busy whenever
$Zfc=i Zk(t)
30
<
c.
The value
of the parameter c
was found by making
5000 processed jobs at various values of
single runs of
c,
and searching
for the value of c that resulted in the lowest average cost.
For the
PROPOSED policy,
effective value of the
The derived
parameter
a similar procedure was undertaken to determine the most
c
such that the machine
kept busy whenever w(t)
is
However, (10.9) did correctly predict that the appropriate
value of the parameter c should be larger in case 2 than in case
employ the value
of c determined via simulation.
used in the simulation runs
is
PROPOSED
1
MINIMUM
1
RANDOM
2
PROPOSED
2
MINIMUM
2
RANDOM
TABLE
Referring to Table
policy, the
I,
in turn far
PROPOSED
we
95%
see that the
The reported simulation
I.
(c
(c
=
9.53 (±.47)
22)
11.20 (±.73)
14)
=
19)
96.5 (±17.5)
(c
=
24.10 (±3.80)
(c
(c
(c
=
=
=
29)
31.38 (±5.05)
15)
187.6 (±22.4)
21)
PROPOSED policy outperformed the MINIMUM
RANDOM
policy. Relative to the
policy offered a 14.9% reduction in cost in case
2.
These
the value of c
all policies,
Simulation Results.
outperformed the
reduction in cost in case
for example, the
I.
1.
COST
POLICY
1
which
For
provided in parenthesis in Table
CASE
policy,
c.
values of c from (10.9) were significantly larger than the corresponding values
determined via simulation.
results
<
relative percentages are
1
MINIMUM
and a 23.2%
somewhat accurate,
since,
confidence interval of the absolute cost difference between these two
policies is 7.28(±0.70) in case 2. It
is
interesting to note the
31
huge difference
in cost
between
the
MINIMUM
RANDOM policies, thus implying that poor performance will result
and
the scheduling policy does not dynamically depend on the finished goods inventory
There
is
a possible explanation
2 than in case
In case 2, class 2
1.
minimum
value of the index h^fik-
inventory,
and so
In case
on the other hand,
1,
thus class
1
it is
PROPOSED
the
jobs in case
policy
was more
levels.
effective in case
had the maximum value of the index bk^k and the
When
>
w(t)
0, this class is
exposed to possible backlogging
class 2 jobs in case 2.
often,
why
if
class 1 has the
less often
maximum
held in finished goods
than the other two
classes.
value of both b^Hk and hkHk, and
were exposed to possible backlogging more often than than the
1
One would not expect
the cost structure in case 2 to exist very
and so the more conservative improvements displayed
in case 1 are probably
more
representative for this example.
12.
Concluding Remarks
In this paper, a Brownian approximation to a scheduling problem for a single-server
multiclass make-to-stock queue was analyzed, and a scheduling policy, which decides
to release jobs to the queue,
be awarded
priority,
when
when
the machine should be working, and which class should
was proposed. This policy
offers
a significant cost reduction relative
to two other policies in a simulation experiment.
The proposed
policy
is
of a particularly simple form,
and
offers
the scheduling of the production system. Perhaps the main insight
is
some
insights into
that the weighted
inventory process w(t) dictates whether the machine should be busy or not.
This
is
in
contrast to traditional inventory systems, where the reorder point for each product
is
purely in terms of the inventory position of that product. Thus, the explicit modeling of
the production system by a multiclass queue introduces dependencies
since they are vying for the
the inventory levels of
rule
all
same
resource,
among
the products,
and the resulting production decision depends on
the products, and on their various service rates.
The sequencing
awards priority to backlogged jobs that are expensive to backlog and quick to process,
32
and
if
no jobs are backlogged, then the machine produces jobs that axe inexpensive to hold
and slow to process.
This scheduling policy has direct analogs to the scheduling policies arising in conventional (make-to-order) multiclass queueing systems. In particular, the release decisions in
multiclass queueing networks in heavy traffic (see
Wein 1989b) depend on the workload
process at each station, which measures the total work content for that station embodied
customers present
in all
in the
queueing network. Thus, the workload process
is
similar in
nature to the weighted inventory process w(t), which measures the total work content for
the server embodied in the finished goods inventory. In the make-to-order system, jobs are
released into the network
when the workload
process gets too small (or too imbalanced).
In the make-to-stock system, the server stays busy
when the weighted inventory
process
gets too small.
As mentioned
Cfx
earlier, the
proposed sequencing policy
reminiscent of the well
is
which awards priority to the
rule for sequencing in make-to-order multiclass queues,
with the largest value of the index
class
effectively reduces holding costs
ctfik,
where
c*
known
the holding cost. This policy
is
by awarding priority to jobs that are quick to process and
expensive to hold. Similarly, our policy awards priority to the backlogged jobs with the
maximum
value of the index
This analogy
is
fci^Jb,
which are quick to process and expensive to backorder.
closely related to the
number
Gavish and Graves 1977).
When
there are
and thus serving a slow job
while
still
will incur
will delay
no backlogged
minimum
are slow to process and inexpensive to hold.
because the completed job
of backlogged jobs
is
of jobs in a single server queueing system (see, for example,
policy gives priority to the class with the
is
number
not surprising, in light of the fact that the
jobs, our proposed scheduling
value of
The reason
/i*/i*,
which are the jobs that
that slow jobs are awarded priority
a holding cost as soon as processing
is
complete,
(and hence reduce) this cost as much as possible,
keeping the machine busy.
This paper, in combination with Harrison (1988), facilitates the modeling of schedul33
ing problems for very general multiclass make-to-stock queueing networks, and further
work
is
required to analyze
more
realistic
and complex systems than the one considered
here. For example, the incorporation of feedback to this single server queueing system has
potential application to semiconductor wafer fabrication facilities, which often have only
one bottleneck station to which the jobs make many
tion, see the simulation studies of
Chen
et al.
photolithography worksta-
Atherton and Dayhoff 1985, Glassey and Recende 1988,
and Wein 1988), and usually produce
(see
visits (the
to stock,
due to
is
long manufacturing cycle times
1988).
Acknowledgements
This research
Program
at
is
partially supported
by a grant from the Leaders for Manufacturing
MIT, and by an IBM/University Manufacturing Systems Research Grant.
34
REFERENCES
Abate,
II:
J.,
and W. Whitt.
Non-Zero
Initial
1987. Transient Behavior of Regulated
Brownian Motion
Conditions. Advances in Applied Probability 19, 599-631.
Altiok, T. 1989. (R, r) Production/Inventory Systems. Operations Research 37,
266-276.
Atherton, R. W., and
ECS
J.
E. Dayhoff. 1985. Introduction to
Fab Graph Structures.
Abstracts.
Bather,
1966.
J.
A
Continuous Time Inventory Model.
J.
Applied Probability
3,
538-549.
Bemelmans,
R.,
and
J.
A
Wijngaard. 1982.
Capacity Oriented Approach to Pro-
duction and Inventory Systems. Working paper, Eindhoven U. Tech., Eindhoven,
Netherlands.
Bertrand,
J.
ventories
W. M.
and Multi Work Centers.
Billingsley, P. 1968.
New
1985. Multiproduct Optimal Batch Sizes with In-Process In-
HE
Transactions 17, 157-163.
Convergence of Probability Measures. John Wiley and Sons,
York.
Browne,
S.,
and
P. Zipkin.
1989. Inventory Models with Continuous Stochastic
Demands. Working paper, Graduate School
New
of Business,
Columbia University,
York.
Chen, H.,
J.
M. Harrison, A. Mandelbaum, A. van Ackere, and
L.
M. Wein.
1988.
Empirical Evaluation of a Queueing Network Model for Semiconductor Wafer
Fabrication. Operations Research 36, 202-215.
Chen, H. and A. Mandelbaum. 1989. Stochastic Discrete Flow Networks: Diffusion
Approximations and Bottlenecks. Submitted to Annals of Probability.
35
Cohen, M. A., and H.
L. Lee. 1988. Strategic Analysis of Integrated Production-
Distribution Systems: Models and Methods. Operations Research 36, 216-228.
Gavish, B., and
S.
C. Graves. 1977.
Under Continuous Review
C, and M. G.
Glassey, R.
Circuit Manufacturing.
Graves,
A
Policy.
One-Product Production/Inventory Problem
Operations Research 28, 1228-1236.
C. Resende. 1988. Closed-Loop Release Control for
IEEE
Trans, on Semiconductor Manufacturing
VLSI
36-46.
The Multi-Product Production Cycling Problem. AIIE
Trans-
S. C. 1980.
1,
actions 12, 233-240.
Graves,
A Review
C. 1981.
S.
of Production Scheduling. Operations Research 29,
646-675.
Graves,
S.
C. and
J.
Keilson. 1981.
The Compensation Method Applied
to a One-
Product Production/Inventory Problem. Mathematics of Operations Research
6, 246-262.
Harrison,
J.
M.
1973.
A
Limit Theorem for Priority Queues in Heavy Traffic.
J.
Applied Probability 10, 907-912.
Harrison,
J.
M.
1985.
Brownian Motion and Stochastic Flow Systems. John Wiley
and Sons, New York.
Harrison,
J.
M.
1988.
Brownian Models
Customer Populations,
in
Harrison,
J.
New
J.
P. L. Lions (eds.), Stochastic Differ-
Theory and Applications,
IMA Volume
10,
York, 147-186.
M., and Taksar, M.
I.
1983. Instantaneous Control of
Mathematics of Operations Research
Harrison,
Queueing Networks with Heterogeneous
W. Fleming and
ential Systems, Stochastic Control
Springer-Verlag,
of
Brownian Motion.
3, 439-453.
M., and L. M. Wein. 1989. Scheduling Networks of Queues: Heavy
Traffic Analysis of a "Two-Station Closed
Research.
36
Network. To appear in Operations
Johnson, D. P. 19S3. Diffusion Approximations for Optimal Filtering of
cesses
and
Queueing Networks. Unpublished Ph.D.
for
thesis,
Jump
Pro-
Dept. of Mathe-
matics, Univ. of Wisconsin, Madison.
Karatzas,
A
1983.
I.
Class of Singular Stochastic Control Problems. Advances in
Applied Probability 15, 225-254.
Karatzas,
I.,
and Shreve,
Springer- Verlag,
New
S. E. 1988.
Brownian Motion and Stochastic Calculus.
York.
Karmarkar, U. 1987. Lot
Sizes,
Lead Times and In-Process
Inventories.
Manage-
ment Science 33, 409-418.
Klimov, G.
P. 1974.
Time Sharing
Service Systems
I.
Th. Prob. Appl. 19,532-551.
Laws, C. N., and G. M. Louth. 1988. Dynamic Scheduling of a Four Station Network. To appear in Probability in the Engineering and Information Sciences.
Menaldi,
J. L.,
and Robin, M. 1984. Some Singular Control Poblems with Long
Term Average
IFIP Conference on System
Criterion. Proceedings of the Eleventh
Modelling and Optimization, Copenhagen, Denmark, in Lecture Notes
and Information
Meyer,
P. A. 1976.
in
Control
Sciences, Ed. P. Thopt-Christensen, 59, 424-432.
Cours sur
Stochastiques. Lecture Notes in
les Integrales
Math-
ematics 511, Springer- Verlag, Berlin, 245-300.
Mitra, D., and
I.
Mitrani. 1989. Analysis of a
nation in Production Lines,
Peterson,
tiple
W.
II:
P. 1985. Diffusion
Stochastic
Kanban
Discipline for Cell Coordi-
Demands. Submitted
for publication.
Approximations for Networks of Queues with Mul-
Customer Types. Unpublished Ph.D. Thesis, Dept.
of Operations Research,
Stanford University.
Puterman, M.
tics,
M. A.
L. 1975.
A
Diffusion Process
Geisler, ed., North-Holland,
Model
for
a Storage System. In Logis-
Amsterdam, 143-159.
37
Reiman, M.
Proc.
1983.
I.
Intl.
Some
Diffusion Approximations with State Space Collapse.
Seminar on Modeling and Performance Evaluation Methodology,
Springer- Verlag, Berlin.
Reiman, M.
1984.
I.
Open Queueing Networks
in
Heavy
Traffic.
Mathematics of
Operations Research 9, 441-458.
Robin, M. 1983. Long-Term Average Cost Control Problems for Continuous Time
Markov
Processes:
Taksar, M.
A
Survey. Acta Applicandae Mathematicae 1, 281-299.
1985. Average Optimal Singular Control
I.
and a Related Stopping
Problem. Math. Oper. Res. 10, 63-81.
Wein, L. M. 1988. Scheduling Semiconductor Wafer Fabrication. IEEE Trans, on
Semiconductor Manufacturing
1, 115-130.
Wein, L. M. 1989a. Optimal Control of a Two-Station Brownian Network. To
appear
in
Mathematics of Operations Research.
Wein, L. M. 1989b. Scheduling Networks of Queues: Heavy
Traffic Analysis of a
Two-Station Network With Controllable Inputs. To appear
in
Operations Re-
search.
Whitt,
W.
1971.
Weak
Preemptive-Resume
Convergence
Discipline. J.
Theorems
for
Priority
Queues:
Applied Probability 8, 74-94.
Williams, T. 1984. Special Products and Uncertainty in Production/Inventory Systems. European Journal Operations Research 15, 46-54.
Yang, P. 1988. Pathwise Solutions for a Class of Linear Stochastic Systems, Unpublished Ph. D. Thesis, Dept. of Operations Research, Stanford University,
Stanford,
CA.
Zipkin, P. 1986. Models for Design and Control of Stochastic, Multi-Item Batch
production Systems. Operations Research 34, 91-104.
Zhang, Y. and
P. Zipkin. 1990.
A
tralized Inventory Information.
Queueing Model to Analyze the Value of Cen-
To appear
38
in
Operations Research.
Mil
3
TOflO
LIBRARIES
00b00Z2b
2
Date Due
Li 25
AUG.
V&
13#W
Lib-26-67
Download