Factory Physics - Georgia Institute of Technology

Download Report

Transcript Factory Physics - Georgia Institute of Technology

Modeling and Analysis of
High Volume Manufacturing
Systems
Discrete vs. Continuous Flow and
Repetitive Manufacturing Systems
(Figures borrowed from Heizer and Render)
Operation Process Chart Example
for discrete part manufacturing
(borrowed from Francis et. al.)
A typical (logical) Organization of the
Production Activity in
Repetitive Manufacturing
Assembly Line 1: Product Family 1
S1,1
Raw
Material
& Comp.
Inventory
S1,i
S1,2
S1,n
Fabrication (or Backend Operations)
Dept. 1
S2,1
S2,2
Dept. 2
Dept. j
S2,i
Assembly Line 2: Product Family 2
Finished
Item
Inventory
Dept. k
S2,m
Major Layout Types
(borrowed from Francis et. al.)
Advantages and Limitations of the various
layout types (borrowed from Francis et. al.)
Advantages and Limitations of the various layout
types (cont. - borrowed from Francis et. al.)
The product-process matrix
Production
volume
& mix
Process
type
Jumbled
flow (job
Shop)
Low volume,
low standardization
Commercial
printer
Disconnected
line flow
(batch)
High volume, high
standardization,
commodities
Void
Heavy
Equipment
Connected
line flow
(assembly
Line)
Continuous
flow
(chemical
plants)
Multiple products, Few major products,
low volume
high volume
Auto
assembly
Void
Sugar
refinery
A conceptual characterization of
the considered environments
• Flow line: A sequence of workstations supporting the production of a single
part type.
• Each workstation consists of one or more identical servers executing one
particular stage of the entire production process.
• The part processing time at each workstation follows some general
distribution which must be defined in such a way that accounts for the various
detractors affecting the station operations; these detractors will include
machine downtime, lack of consumables, operator unavailability, experienced
set-up times, preventive maintenance, etc.
• Finished parts could constitute end items or raw material for some other
downstream process.
• The operation of the line workstations can be
– synchronized through an interconnecting conveyor system, or
– decoupled through the installation of some buffering capacity between
them.
Line Performance Measures
• Production rate or throughput, i.e., the number of parts produced per unit
time
• Line capacity, i.e., the maximum sustainable production rate
• Line (expected) cycle time, i.e., the average time that is spend by any part
into the line (this quantity includes both, processing and waiting time).
• Average Work-In-Porcess (WIP) accumulated at different stations
• Expected utilization of the station servers.
Remark: The above performance measures essentially provide a link between
the directly quantifiable and manageable aspects and attributes of the
considered operational environments and the primary strategic concerns of
the company, especially those of responsiveness and cost efficiency.
Production Authorization Mechanisms
•
•
•
•
•
•
•
•
The issue here is to what extent part production is triggered from actual orders or from
forecasted demand.
In a “produce-to-stock” scheme, a certain amount of end-item inventory is maintained in
an effort to serve the experienced demand with zero lead time.
“Produce-to-stock” operation is most appropriate for highly commoditized and
standardized items.
A key performance measure for “produce-to-stock” production systems is the fill rate,
i.e. the percentage of the experienced demand that is actually met from stock. A desired
fill rate is attained by maintaining an appropriate safety stock level, that is computed
from the statistics of the experienced demand and cycle times.
In a “produce-to-order” scheme, end items are produced in response to particular orders.
“Produce-to-order” operation is more appropriate for (highly) customized items.
A key performance measure for “produce-to-order” production is the attained service
level, i.e. the percentage of orders that are served within the quoted lead time. A target
service level is attained through informed lead time quotation and some appropriate
“capacity buffer”.
Currently, many systems are a hybrid scheme consisting of “produce-to-stock” and
“produce-to-order” components. In particular, mass customization is supported by an
“assemble-to-order” scheme where end-items are assembled to order from a number of
sub-assemblies that are produced to stock.
Shop-Floor / Line Control Mechanisms
• Mechanisms that control the part release and advancement through the line.
• They are broadly distinguished into “push” and “pull” mechanisms.
• A “push” mechanism releases material into the line according to a target
production rate, and material is advanced to downstream stations as early as
possible.
• Typical instantiations of “push” systems are: the asynchronous transfer line
and the synchronous transfer line.
• A “pull” system controls the part release and advancement in the line taking
into consideration the status of the various workstations in the line.
• Typical instantiations of “pull” systems are: the KANBAN and the CONWIP
(controlled) production lines.
• In general, “pull” systems reduce congestion, since they take into
consideration the actual shop-floor status in their decision making, but the
same mechanisms will also make them more inert in case of shifts in the
production level.
• Both mechanisms are effectively implementable in a “produce-to-stock” or
“produce-to-order” context.
Asynchronous Transfer Lines
W1
TH
B1
M1
W2
TH
B2
M2
W3
TH
B3
M3
TH
Some important issues:
• What is the maximum throughput that is sustainable through this
line?
• What is the expected cycle time through the line?
• What is the expected WIP at the different stations of the line?
• What is the expected utilization of the different machines?
• How does the adopted batch size affect the performance of the
line?
• How do different detractors, like machine breakdowns, setups,
and maintenance, affect the performance of the line?
Synchronous Transfer Lines
The key issue: Assembly Line
Balancing (ALB)
Given
• a set of tasks to be supported by the
line stations
• each possessing a nominal processing
time,
• a number of precedence constraints
among these tasks,
• and a target throughput,
determine
• a partitioning of these tasks to a
number of stations that observes the
aforementioned specifications, while it
minimizes the resulting number of
stations (and therefore, the resulting
labor cost).
KANBAN-based production lines
Station 1
Station 2
Station 3
Some important issues:
• What is the throughput attainable by a certain selection of
KANBAN levels?
• What is the resulting cycle time?
• How do we select the KANBAN levels that will attain a desired
production rate?
• How do we introduce the various operational detractors into the
model?
CONWIP-based production lines
Station 1
Station 2
Station 3
FGI
Some important issues:
• Same as those for the KANBAN model, plus
• How can we compare the performance of such a system to that
of an asynchronous transfer line and/or a KANBAN-based
system?
Module Objectives
•
•
•
•
•
•
Provide an analytical characterization of the operation of HVM systems and their
performance, based on queueing-theoretic models
Derive qualitative insights and quantitative results on the attributes and factors that
shape the behavior and performance of these systems.
Demonstrate the application of these results to the design and control of the
considered class of systems
Focus primarily on flow lines, since they are the main layout used in the context of
high-volume, repetitive manufacturing.
Also, flow line dynamics are easier to trace and analyze, and therefore, more
enlightening in terms of qualitative and quantitative insights.
However, many of the derived insights and results are extensible to more complex
environments either directly or through some appropriate decomposition.
Plan for the remaining part of the module
• Modeling and Performance Analysis of Asynchronous Transfer Lines through
a Series of G/G/m queues
• Modeling the impact of operational detractors
• Employing the above results in line diagnostics
• Design of Asynchronous Transfer Lines
• Design of Synchronous Transfer Lines (cf. the ALB problem in the module
on Sequencing, Dispatching and Scheduling of HVM systems)
• Modeling and Performance Analysis of CONWIP-based production lines
through Closed Queueing Networks
• An integrating framework for bounding and shaping the performance of a
production line
• Analyzing the impact of batching on the system performance and designing
optimized batching policies
• Understanding the relative advantages and disadvantages of the various
“push” and “pull”-based production systems
The G/G/1 model
M1
TH
B
M2
TH
Mm
Modeling Assumptions:
• Part release rate = Target throughput rate = TH
• Infinite Buffering Capacity
• m identical servers
• Server mean processing time = te
• St. deviation of processing time = e
• Coefficient of variation (CV) of processing time: ce = e / te
• Coefficient of variation of inter-arrival times = ca
Performance measures for the G/G/1 station
M1
TH
B
M2
TH
Mm
• Server utilization: u  (TH  te ) m
c a2  c e2 u 2(m 1)1
t e (Kingman’s approx.)
• Expected cycle time in the buffer: CTq 
2
m(1 u)
• Expectedcycle time in the station: CT  CTq  t e
• Average WIP in the buffer: WIPq  TH  CTq (by Little’s law)

• Average WIP in the station:
 WIP  TH  CT  WIPq  m  u
2
u
2
2
2
2
• Squared CV of the
inter-departure
times:
c
1
(1
u
)(c
1)

(c
d
a
e 1)

m
Some Important Remarks
•
•
•
•
•
•
•
The entire analysis of the previous slide is an approximation, since it derives from the
provided approximation for CTq.
The provided formula for CTq is exact for the M/M/m and M/G/1 stations.
The station operation will be stable only if u = TH te / m < 1.0, i.e., only if the effective
workload released into the station per unit of time is less than the available processing
time of the station. Otherwise WIPq, CTq and CT will grow infinitely large.
Notice that the requirement u < 1.0 is also suggested by the provided expression for CTq
since only then CTq takes finite positive values.
The expression for CTq comprises three factors, each depending respectively upon (i) the
variability of the processing and inter-arrival times, as expressed by the corresponding
SCV’s, (ii) the server utilization, and (iii) the mean processing time. An increase of any
of these factors results in an increase of CTq, and also of CT, WIPq and WIP.
Assuming a non-zero mean processing time, CTq=0.0 only if ca2= ce2=0.0; these are
essentially the conditions of a paced / synchronous production line.
The SCV of the inter-departure times can be approximated as a linear function of the
SCVs of the inter-arrival and processing times. Furthermore, for u1.0, cd2 depends
primarily on ce2, while for u0, cd2 depends primarily on ca2.
Analyzing an entire Production Line
TH
Key observations:
• A target production rate TH is achievable only if each station satisfies the stability
requirement u < 1.0.
• For a stable system, the average production rate of every station will be equal to TH.
• For every pair of stations, the inter-departure times of the first constitute the interarrival times of the second.
• Then, the entire line can be evaluated on a station by station basis, working from the
first station to the last, and using the equations for the basic G/G/1 model.
Modeling the impact of operational detractors
• Effective processing time = time that the part occupies the server
• Effective processing time = Actual processing time +
any additional non-processing time
• Actual or otherwise natural processing time typically presents fairly low
variability ( SCV < 1.0).
• Non-processing time is due to detractors like machine breakdowns, setups,
operator unavailability, lack of consumables, etc.
• Detractors are distinguished to preemptive and non-preemptive. Each of these
categories requires a different analytical treatment.
• Preemptive detractors are outages that take place during the actual processing of
the part. Typical examples are machine breakdowns, lack of consumables,
operator unavailability, etc.
• Non-preemptive detractors are activities that may take place between the
processing of two consecutive parts. Typical examples are setups, preventive
maintenance, operator breaks, etc.
• We want to determine the mean, variance and SCV of the effective processing
time from the corresponding attributes of the natural processing time and some
additional attributes characterizing the behavior of the various detractors.
Modeling the impact of preemptive detractors
• X = random variable modeling the natural processing time, following a general
distribution.
• to = E[X]; o2=Var[X]; co=o / to .
N
• T = random variable modeling the effective processing time = X 
U where
i1 i
• Ui = random variable modeling the duration of the i-th outage, following a
general distribution, and
• N = random variable modeling the number of outages during a the processing of
a single part.

• mr=E[Ui]; r2=Var[Ui]; cr = r / mr
• Time between outages is exponentially distributed with mean mf.
• Availability A = mf / (mf+mr) = percentage of time the system is up.
• Then,
te = E[T] = to / A or equivalently re = 1/te = A (1/to) = A ro

 e2  Var[T]  ( o2 A2 )  to ((mr2   r2 ) m f )
c e2   e2 /t e2  c o2  (1 c r2 )A(1 A)(mr /t o )
Breakdown Example
• Data: Injection molding machine has:
– 15 second stroke (to = 15 sec)
– 1 second standard deviation (o = 1 sec)
– 8 hour mean time to failure (mf = 28800 sec)
– 1 hour repair time (mr = 3600 sec)
• Natural variability
co = 1/15 = 0.067 (which is very low)
Example Continued
• Effective variability:
A
mf
m f  mr

8
 0.888
8 1
te  to / A  15 / 0.888  16.875
ce2  co2  2 A(1  A)
mr
3600
 (0.067)2  2(0.888)(1  0.888)
 47.41
to
15
Which is very high!
Example Continued
• Suppose through a preventive maintenance program, we
can reduce mf to 8 min and mr to 1 min
A
mf
m f  mr

8
 0.888
8 1
te  to / A  15 / 0.888  16.875
ce2  co2  2 A(1  A)
Which is low!
(the same as before)
mr
60
 (0.067) 2  2(0.888)(1  0.888)
 0.79
to
15
Modeling the impact of non-preemptive
detractors
• X = random variable modeling the natural processing time, following a general
distribution.
• to = E[X]; o2=Var[X]; co=o / to .
• NS = average number of parts processed between two consecutive setups
• It is also assumed that the number of parts between two consecutive setups
follows a geometric distribution, which when combined with the previous bullet,
it implies that probability for a setup after any given job = 1/ NS.
• Z = random variable modeling the duration of a setup
• tS = E[Z]; S2 = Var[Z]
• S = random variable modeling the setup time experienced by any given job =
 Z with probability 1/N s
 
0 with probability 1 -1/N s
• T = random variable modeling the effective processing time = X+S
• Then,
E[S] = tS / NS ; Var[S] = (S2 / NS) + tS2((NS-1) / NS2);
te = E[T] = to+tS / NS ;  e2  Var[T]   o2   S2 NS  tS2 (NS 1) NS2 ; c e2   e2 /t e2
Setup Example
•
Data:
– Fast, inflexible machine:
(2 hr setup every 10 jobs)
No difference!
– Slower, flexible machine:
(no setups)
 t0  1 hour
   0.25 hours
 0
 N s  10 jobs/setup

 t s  2 hours

 t  t  t s  1  2  1.2 hours
0
 e
Ns
10

 r  1  1  0.83 jobs/hour
 e t
1.2
e

 t0  1.2 hours
  0.6 hours
 0

 r  1  1  0.83 jobs/hour
e

t0 1.2

Setup Example (cont.)
•
Compare mean and variance
–Fast, inflexible machine – 2 hr setup every 10 jobs
 0  0.25 hours
σ e2   02 
c 
2
e
 e2
t
2
e


2
s
Ns
c0 
 t s2
0.4475
1.2 
2
0
t0
Ns 1
  0.25 
2
Ns
 0.25
0.25 

2

10
cs  0.25
2
 22
10  1
 0.4475
2
10
 0.3107638
–Slower, flexible machine – no setups
0.6 

2
2
ce  c0  2 
 0.25
2
t0
1.2 
Conclusion: Flexibility can reduce variability.
 02
•
2
Setup Example (cont.)
•
New Machine: Consider a third machine same as previous
machine with setups, but with shorter, more frequent
setups
N s  5 jobs/setup
ts  1 hour
re 
•
Analysis:
1
1

 0.83 jobs/hr
te 1.2
0.25 

Ns 1
2
2 5 1
σ  
t
  0.25  
1
 0.235
2
2
Ns
Ns
5
5
2
e
c 
2
e
•
2
0
 e2
t
2
e


2
s
2
2
s
0.235
1.2 
2
 0.163194
Conclusion: Shorter, more frequent setups induce less variability.
Example: Employing the presented
results for line diagnostics
M1
Ca2=1.0
to1 =19 min
co12=0.25
mf1=48 hrs
mr1=8 hrs
MTTR ~ expon.
B
20
parts
M2
to2 =22 min
co22=1.0
mf2=3.3 hrs
mr2=10 min
MTTR ~ expon.
Desired throughput is TH = 2.4 jobs / hr but practical experience has shown
that it is not attainable by this line. We need to understand why this is not
possible.
Diagnostics example continued:
Capacity analysis based on mean values
M1
Ca2=1.0
to1 =19 min
co12=0.25
mf1=48 hrs
mr1=8 hrs
MTTR ~ expon.
B
20
parts
M2
to2 =22 min
co22=1.0
mf2=3.3 hrs
mr2=10 min
MTTR ~ expon.
A1  m f 1 /(m f 1  mr1 )  48 /(48  8)  0.857
t e1  t o1 / A1  19 /0.857  22.17min
A2  m f 2 /(m f 2  mr2 )  3.3/(3.3  10 /60)  0.952
t e 2  t o2 / A2  22 /0.952  23.11min  Bottleneck machine
Bottleneck utilization : u2  TH  t e 2  2.4  (23.11/60)  0.9244  1.0 (!)
Diagnostics example continued:
An analysis based on the G/G/1 model
c e12  c o12  (1 c r12)A1(1 A1)mr1 /t o1  0.25  (1 1)  0.857  (1 0.857)  8  60 /19  6.442
u1  TH  t e1  2.4  22.17 /60  0.8868
c a12  c e12 u1
1 6.442 0.8868
CTq1 
t e1 
22.17  646.256min
2 1 u1
2 1 0.8868
WIPq1  TH  CTq1  2.4  646.256 /60  25.85
2
c a22  c d1
 u12c e12  (1 u12 )c a12  0.8868 2  6.442  (1 0.8868 2 ) 1  5.28
2
c e2
 c2  (1 c r22 )A2 (1 A2 )mr2 /t o2  1 (1 1)  0.952  (1 0.952) 10 /22  1.04
u2  TH  t e2  2.4  23.11/60  0.9244
2
c a2 2  c e2
u2
5.28  1.04 0.9244
CTq 2 
t e2 
23.11  892.94 min
2 1 u2
2
1 0.9244
WIPq 2  TH  CTq 2  2.4  892.94 /60  35.72 >> 20 (!)
i.e., the long outages of M1, combined with the inadequate capacity of the
interconnecting buffer, starve the bottleneck!
Example: Designing an asynchronous prod. line
• Design of a new 4-station assembly line for circuit board assembly.
• The four consecutive stations and the currently considered “technology options”
for them (each option defines the processing rate in pieces per hour, the CV of
the processing time, and the cost per unit in thousands of dollars).
Station Option 1
Option 2
Option 3
1 42, 2.0, 50 42, 1.0, 85 10, 2.0, 110.5
2 42, 2.0, 50 42, 1.0, 85
3 25, 1.0, 100 25, 0.7, 120
4 50, 0.75, 20 6, 0.75, 24
• The above data correspond to the effective processing times.
• Each station can employ only one technology option.
• The maximum production rate to be supported by the line is 1000 panels / day.
• The desired average cycle time through the line is one day.
• One day is equivalent to one 8-hour shift.
• Workpieces will go through the line in totes of 50 panels each, which will be released
into the line at a constant rate determined by the target production rate.
• Design task: Identify a line configuration that meets the above requirements while
minimizing the equipment cost.
• Also, estimate the expected WIP at every station, when the line is operated at
maximum production rate.
A baseline design:
Meeting the desired prod. rate with a low cost
1000 42,2.0,50
50 42,1.0,85
8 10,2.0,110.5
(1000 / 50) / 8
1/te
Ce
P
m
te
tb=B*te
Cb^2=Ce^2/B
u=TH*tb/m
Ca^2
Cd^2 = 1+(1-u^2)(Ca^2-1)+(u^2/sqrt(m))*(Cb^2-1)
CT = [(Ca^2+Cb^2)/2]*[u^(sqrt(2*(m+1))-1)/(m*(1-u))]*tb+tb
CT1+CT2+CT3+CT4
WIPq
m*P
42,2.0,50
42,1.0,85
25,1.0,100
25, 0.7,120
50,0.75,20
6,0.75,24
2.5
Station 1
42
2
50
3
Station 2
42
2
50
3
Station 3
25
1
100
6
Station 4
50
0.75
20
3
0.0238
1.1905
0.08
0.9921
0.0238
1.1905
0.08
0.9921
0.04
2
0.02
0.8333
0.02
1
0.0113
0.8333
0
0.4615
0.4615
0.4687
0.4687
0.5598
0.5598
0.4691
3.17
14.6
2.3
4.9
33.5
0.8
1.41
21.48
1
150
150
600
60
960
Reducing the line cycle time by
adding capacity to Station 2
1000 42,2.0,50
50 42,1.0,85
8 10,2.0,110.5
(1000 / 50) / 8
1/te
Ce
P
m
te
tb=B*te
Cb^2=Ce^2/B
u=TH*tb/m
Ca^2
Cd^2 = 1+(1-u^2)(Ca^2-1)+(u^2/sqrt(m))*(Cb^2-1)
CT = [(Ca^2+Cb^2)/2]*[u^(sqrt(2*(m+1))-1)/(m*(1-u))]*tb+tb
CT1+CT2+CT3+CT4
WIPq
m*P
42,2.0,50
42,1.0,85
25,1.0,100
25, 0.7,120
50,0.75,20
6,0.75,24
2.5
Station 1
42
2
50
3
Station 2
42
2
50
4
Station 3
25
1
100
6
Station 4
50
0.75
20
3
0.0238
1.1905
0.08
0.9921
0.0238
1.1905
0.08
0.7441
0.04
2
0.02
0.8333
0.02
1
0.0113
0.8333
0
0.4615
0.4615
0.505
0.505
0.5709
0.5709
0.4725
3.17
1.36
2.32
4.9
0.4
0.8
1.42
8.27
1.1
150
200
600
60
1010
Adding capacity at Station 1,
the new bottleneck
1000 42,2.0,50
50 42,1.0,85
8 10,2.0,110.5
(1000 / 50) / 8
42,2.0,50
42,1.0,85
25,1.0,100
25, 0.7,120
50,0.75,20
6,0.75,24
2.5
Station 1
42
2
50
4
Station 2
42
2
50
4
Station 3
25
1
100
6
Station 4
50
0.75
20
3
0.0238
1.1905
0.08
0.7441
0.0238
1.1905
0.08
0.7441
0.04
2
0.02
0.8333
0.02
1
0.0113
0.8333
Ca^2
Cd^2 = 1+(1-u^2)(Ca^2-1)+(u^2/sqrt(m))*(Cb^2-1)
0
0.299
0.299
0.4324
0.4324
0.5487
0.5487
0.4657
CT = [(Ca^2+Cb^2)/2]*[u^(sqrt(2*(m+1))-1)/(m*(1-u))]*tb+tb
CT1+CT2+CT3+CT4
WIPq
1.22
1.31
2.27
0.1
0.3
0.7
1.4
6.2
1
200
200
600
1/te
Ce
P
m
te
tb=B*te
Cb^2=Ce^2/B
u=TH*tb/m
m*P
60
1060
An alternative option:
Employ less variable machines at Station 1
1000 42,2.0,50
50 42,1.0,85
8 10,2.0,110.5
(1000 / 50) / 8
1/te
Ce
P
m
te
tb=B*te
Cb^2=Ce^2/B
u=TH*tb/m
Ca^2
Cd^2 = 1+(1-u^2)(Ca^2-1)+(u^2/sqrt(m))*(Cb^2-1)
CT = [(Ca^2+Cb^2)/2]*[u^(sqrt(2*(m+1))-1)/(m*(1-u))]*tb+tb
CT1+CT2+CT3+CT4
WIPq
m*P
42,2.0,50
42,1.0,85
25,1.0,100
25, 0.7,120
50,0.75,20
6,0.75,24
2.5
Station 1
42
1
85
3
Station 2
42
2
50
4
Station 3
25
1
100
6
Station 4
50
0.75
20
3
0.0238
1.1905
0.02
0.9921
0.0238
1.1905
0.08
0.7441
0.04
2
0.02
0.8333
0.02
1
0.0113
0.8333
0
0.4274
0.4274
0.4897
0.4897
0.5662
0.5662
0.4711
1.69
1.35
2.31
1.2
0.4
0.8
1.41
6.76
1
255
200
600
This option is dominated by the previous one since it presents a higher CT and
also a higher deployment cost. However, final selection(s) must be assessed and
validated through simulation.
60
1115
Analyzing CONWIP-based flowlines
with single-machine stations as
Closed Queueing Networks (CQNs)
Mean Value Analysis - the key underlying ideas:
I.
A CONWIP-based flow line with single-machine stations and its WIP level
set to W, can be modeled by a closed queueing network (CQN) with general
processing distributions, W jobs in it, and the following structure:

II.
III.
M1

M2

Mn
In a CQN with W jobs and exponential processing times, the expected
number of jobs observed at the various stations by a job arriving at some
station Sj, is equal to the expected number of jobs observed at any random
time at the same stations when the system is operated with W-1 jobs in it.
Assuming that this effect applies in an approximate sense for more general
distributions of the processing times, we proceed to develop an algorithm
that will compute the performance measures of interest iteratively, for
various W levels, starting with W=0.
Notation
n = number of stations
te(j) = mean effective processing time at station j
ce2(j) = SCV for effective processing time at station j
TH(W) = the line throughput when operated with WIP level W
CT(W) = expected job cycle time through the line
CTj(W) = expected job cycle time at station j when the WIP level is W
WIPj(W) = expected WIP level at station j when the WIP level is W
uj(W) = utilization of the server at station j when the WIP level is W
Deriving the algorithm iteration
CTj(W) = E[remaining processing time for the job at the server of Sj] +
(E[number of jobs at station Sj]-E[number of jobs in service])te(j) +
te(j)
But
(a) E[remaining processing time for the job at the server of Sj] =
Prob(Server of Sj busy)E[remaining process time | busy] =
uj(W-1)E[remaining process time | busy] 
t e ( j)(c ej ( j)  1)
u j (W 1)
(Kleinrock)
2
(b) E[number of jobs at station Sj]  WIPj(W-1)
(c) E[number of jobs in service]  u (W-1)
j
(d) uj(W-1) = TH(W-1) te(j)
Deriving the algorithm iteration (cont.)
Combining the results of the previous slide:
t e2 ( j) 2
CTj (W ) 
(c e ( j) 1)TH(W 1)  (WIP j (W 1)  1)t e ( j)
2
But then,

n
CT(W )   CT j (W )
j1
W
CT(W )
WIP j (W )  TH(W )  CT j (W )
TH(W ) 
(from Little’s law)
Obviously, for W=0, CT(0) =TH(0) = WIPj(0) = 0
Furthermore, application of the above formulae for W=1 gives:

CTj (1)  t e ( j)
n
CT(1)   t e ( j)  To (Raw Process Time)
j1
TH(1) 
1
1

CT(1) To
WIP j (1) 
1
t e ( j)  u j (1)
To
Bounding the line throughput:
Upper bounds
• For W, TH(W)rbminj{1/te(j)}, the bottleneck rate of the line.
• rb can also be achieved with finite WIP in a deterministic setting, i.e., in a line
with ce(j) = 0, j, and synchronized with pace tb=1/rb.
• However, by Little’s law, a line with raw process time To, in order to produce at
rate rb, will need a WIP level of Wo=rbTo; this WIP level is known as critical WIP.
• An interpretation of Wo is given by the following formula:
n
1 n
W o  rb To   t e ( j)   u j (rb )  n
t b j1
j1
i.e., Wo is the level of WIP that we must maintain in the system in order to maintain
the bottleneck utilization at 100%. Otherwise, the bottleneck will starve.

If W<Wo, then in a deterministic setting we can pace the jobs through the system in
such a way that CT=To. Hence, the maximal line throughput will be
W
TH(W ) 
To
Example: Attaining the throughput upper bound
with balanced, deterministically paced line
t1
W=Wo=rbTo=5
=
t2
=
t3
=
t4
=
t5
= 1.0
TH=rb=1
CT=To=5
W=6
TH=rb=1
CT=To+tb=6
W=4
TH=W/CT
=4/5
CT=To=5
Bounding the line throughput:
Lower bounds (under global non-idleness)
• Clearly, 1/To is a lower bound to TH(W) under global non-idleness, since this is
the rate of a line with only one job in it, and therefore, no parallelism.
• This bound is also achievable under any other finite WIP level W, by a nonidling policy that moves all W jobs as a single batch from station to station.
Indeed, for that policy
W
1
CT(W )  W  To and TH(W ) 

W  To To

Example: Attaining the throughput lower bound
through batching
t1
W=3
=
t2
=
t3
T=0
T=6
T = 12
T = 18
T = 24
TH = W / (W To) = 3 / 24= 1 / 8
=
t4
= 2.0
The W-TH(W) space
TH(W)
Ideal Operational Point
rb
1/To
1/To
1
Wo=rbTo
W
The W-CT(W) Space
CT(W)
To
To
1/rb
Ideal Operational Point
1
Wo
W
The depicted curves are induced from those depicted in the W-TH(W) space, through Little’s law. In
particular, upper bounds in the W-TH(W) space provide lower bounds in the W-CT(W) space, and vice versa,
as follows:
Upper Bounds in W  TW (W ) :
W  W o : TH(W ) 
W
W
 CT(W ) 
 To
To
TH(W )
W  W o : TH(W )  rb  CT(W ) 
W
rb
Lower Bounds in W  TH(W ) :
TH(W ) 
1
W
 CT(W ) 
 To  W
To
1 To
Practical System Performance
• The “ideal” performance is attained in an optimized, deterministic setting. this performance is
typically compromised by
• the variability that is inherent in the system operations;
• the impact of the applied control policies (e.g., the batching policy that defines the lower
bounds for the system throughput - Notice, however, that these policies might be justified
from some broader considerations).
• A “benchmark” case: Maximizing the variability inherent in the system operation
• Single-machine stations
• Exponential processing times
• Balanced line, i.e., te(j) = t, j
Key feature: All feasible states for this line are equiprobable.
Mean Value Analysis (exact, since processing times are exponential):
W 1
W 1
t  t  (1
)t (from symmetry)
n
n
W 1
W 1
CT(W )  n(1
)t  nt  (W 1)t  To 
(notice the linear dependence on W )
n
rb
CTj (W ) 
TH(W ) 
W
W
W
W



rb
CT(W ) To  (W 1) /rb W o /rb  (W 1) /rb W o  W 1
Remarks: As expected, TH(1) = rb/Wo =1/To and TH() = rb. A performance that is worse than
that of the “benchmark” case is a strong indication of mismanagement / bad practice.
Effective Mechanisms for Improving
the System Performance
The problem: Given a line operating at a desired throughput rate, TH, what are some possible
mechanisms to reduce the expected cycle time through the line, CT (and through Little’s law,
the line WIP, W) ?
The key idea: We need to “pull” the curve describing the line performance in the W-TH(W)
space to the left.
(i) Increase rb (by adding capacity or making more effective use of the existing capacity at the
line bottleneck(s))
TH(W)
rb ’
Notice that
 rb  rb'  t b  t b'  To To'  1/To 1/To'
1/To’
rb
TH
1/To’
1/To
 W o'  rb'  t e ( j)  1 rb'  t e ( j) 
j
jb
1 rb  t e ( j)  W o
1/To
jb
1
W’ Wo Wo’
W
W

 W ' W
Effective Mechanisms for Improving
the System Performance (cont.)
(ii) Add capacity to some non-bottleneck station(s) (this addition essentially enables the better
catering to the bottleneck needs, but it can help only to a limited extent)
TH(W)
Notice that
’
rb=rb
TH
1/To’
1/To
 j  b : t e ( j) t e' ( j)  To  To'  1/To 1/To'
1/To’
 rb  rb'
 W o'  1 rb'  t e' ( j)  1rb  t e ( j)  W o
1/To
jb
1
Wo’W’Wo
W
W
jb
 W ' W
(iii) Reduce the inherent variability at the different
stations; the corresponding reduction of the

station CVs will “pull” the performance curve in the W-TH(W) space closer to the curve
characterizing the upper bound.
(iv) Increase the line flexibility, which essentially enables the better utilization of the bottleneck
capacity (and takes us back to item (i) above).
On the relative advantages of “push” and
“pull”-based production systems
•
•
•
•
•
•
•
The WIP cap employed by “pull” systems provides a feedback mechanism for
reacting to operational disruptions and prevents congestion.
The avoidance of congestion further facilitates more flexible and responsive decision
making in reaction to arising contingencies.
Another benefit from avoiding congestion is that the WIP necessary to elicit a certain
throughput, TH, from a “pull” system is typically lower than the WIP accumulated in
this system when it is operated in a “push” mode and with the feeding rate equal to
TH.
WIP as a control variable is more easily measurable than throughput.
The performance attained by a “pull” system is robust to the selection of the WIP
level.
However, this robustness also implies that the production rate of a “pull” system
cannot be easily controlled through WIP cap adjustments, which further implies that
effective deployment of “pull” systems necessitates non-volatile demand profiles (and
raises the issue of active demand management).
CONWIP systems can achieve higher throughput than their KANBAN-based
counterparts because they provide the aforementioned advantages of “pull”-based
operation while eliminating the negative impact of (internal) blocking that is inherent
in the KANBAN mechanism.