G/G/m-based Modeling of Asynchronous Transfer Lines and

advertisement
Analysis and Design of
Asynchronous Transfer Lines as
a series of G/G/m queues:
Overview and Examples
Topics
• Modeling the Asynchronous Transfer Line as a series of
G/G/m queues
• Modeling the impact of preemptive, non-destructive
operational detractors
• Employing the derived models in line diagnosis
• Employing the derived models in line design
• The role of batching in the considered manufacturing
systems
• An analysis of a workstation involving parallel batching
Asynchronous Transfer Lines (ATL)
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?
The G/G/1 model:
A single-station
B1
M1
TH
Modeling Assumptions:
• Part release rate = Target throughput rate = TH
• Infinite Buffering Capacity
• one server
• 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
An Important Stability Condition
B1
M1
TH
•Average workload brought to station per unit time:
TH·te
• It must hold:
TH  t e  1.0
• Otherwise, an infinite amount of WIP will pile up in
front of the station.

Performance measures for
a stable G/G/1 station
B1
M1
TH
• Server utilization: u  TH  t e
• Expected cycle time in the buffer:
c a2  c e2 u
CTq 
t e (Kingman’s approx.)
2 1 u
• Expectedcycle time in the station: CT  CTq  te
• Average WIP in the buffer: WIPq  TH  CTq (by Little’s law)
• Average WIP in the station:

WIP  TH  CT  WIPq  u
• Squared CV of the
inter-departure times:
c d2  (1 u2 )c a2  u2c e2
Remarks
• For a station with variable job inter-arrival and/or processing times,
utilization must be strictly less than one in order to attain stable
operation.
• Furthermore, expected cycle times and WIP grow to very large
values as u1.0.
• Expected cycle times and WIP can also grow large due to high
values of ca and/or ce; i.e., extensive variability in the job interarrival and/or processing times has a negative impact on the
performance of the line.
• In case that the job inter-arrival times are exponentially distributed,
ca=1.0, and the resulting expression for CTq is exact (a result
known as the Pollaczek-Kintchine formula).
• The expression for cd2 characterizes the propagation of the station
variability to the downstream part of the line, and it quantifies the
dependence of this propagation upon the station utilization.
Performance measures for
a stable G/G/m station
M1
TH
B
M2
TH
Mm
• Server utilization: u  (TH  t e ) m
c a2  c e2 u 2(m 1)1
te
• Expected cycle time in the buffer: CTq 
2
m(1 u)
• Expectedcycle time in the station: CT  CTq  te
• Average WIP in the buffer: WIPq  TH  CTq

• Average WIP in the station:

WIP  TH  CT  WIPq  m  u
2
u
2
2
2
2
c

1
(1
u
)(c
1)

(c
• Squared CV of the
inter-departure
times:
d
a
e 1)

m
Analyzing a multi-station ATL
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/m model.
Operational detractors:
A primal source for the line variability
• Effective processing time = time that the part occupies
the server
• Effective processing time = Actual processing time +
any additional non-processing time
• Actual 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 nonpreemptive. Each of these categories requires a different
analytical treatment.
Preemptive non-destructive
operational detractors
• Outages that take place while the part is
being processed.
• Some typical examples:
– machine breakdowns
– lack of consumables
– operator unavailability
Modeling the impact of
preemptive detractors
•
•
•
•
•
•
•
•
•
X = random variable modeling the natural processing time (i.e., without the delays
due to the detractors), 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 /te2  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 (so = 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:
mf
8
A

 0.888
m f  mr 8  1
te  to / A  15 / 0.888  16.875
mr
3600
2
c  c  2 A(1  A)
 (0.067)  2(0.888)(1  0.888)
 47.41
to
15
2
e
2
o
Which is very high!
Example Continued
• Suppose through a preventive maintenance
program, we can reduce mf to 8 min and mr to 1
min
mf
8
A

 0.888
m f  mr 8  1
te  to / A  15 / 0.888  16.875
(the same as before)
mr
60
2
c  c  2 A(1  A)
 (0.067)  2(0.888)(1  0.888)
 0.79
to
15
2
e
2
o
Which is low!
Example:employing the developed
theory for diagnostic purposes
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  m r1 )  48/(48  8)  0.857
t e1  t o1 / A1  19/0.857 22.17min
A2  m f 2 /(m f 2  m r2 )  3.3/(3.3  10/60)  0.952
t e 2  t o2 / A2  22/0.952 23.11min  Bottleneck machine
Bottleneck ut ilization
: u2  TH  t e 2  2.4  (23.11/60)  0.9244 1.0 (!)
Diagnostics example continued:
An analysis based on the G/G/m model
ce21  co21  (1  cr21 ) A1 (1  A1 )mr1 / to1  0.25  (1  1)  0.857 (1  0.857)  8  60 / 19  6.442
u1  TH  te1  2.4  22.17 / 60  0.8868
ca21  ce21 u1
1  6.442 0.8868
CTq1 
te1 
22.17  646.256min
2 1  u1
2 1  0.8868
WIPq1  TH  CTq1  2.4  646.256/ 60  25.85
ca22  cd21  u12 ce21  (1  u12 )ca21  0.88682  6.442 (1  0.88682 ) 1  5.28
ce22  co22  (1  cr22 ) A2 (1  A2 )mr 2 / to 2  1  (1  1)  0.952 (1  0.952) 10 / 22  1.04
u2  TH  te 2  2.4  23.11/ 60  0.9244
ca22  ce22 u2
5.28  1.04 0.9244
CTq 2 
te 2 
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: ATL Design
• Need to design a new 4-station assembly line for circuit board
assembly.
• The technology options for the four stations are tabulated below
(each option defines the processing rate in pieces per hour, the CV
of the effective processing time, and the cost per equipment unit in
thousands of dollars).
•
Station Option 1
1 42, 2.0, 50
2 42, 2.0, 50
3 25, 1.0, 100
4 50, 0.75, 20
Option 2
Option 3
42, 1.0, 85 10, 2.0, 110.5
42, 1.0, 85
25, 0.7, 120
6, 0.75, 24
Example: ATL Design (cont.)
• 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 an 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.
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
42,2.0,50
42,1.0,85
25,1.0,100 50,0.75,20
25, 0.7,120 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
te
tb=B*te
Cb^2=Ce^2/B
u=TH*tb/m
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
Ca^2
Cd^2 = 1+(1-u^2)(Ca^2-1)+(u^2/sqrt(m))*(Cb^2-1)
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
1/te
Ce
P
m
CT = [(Ca^2+Cb^2)/2]*[u^(sqrt(2*(m+1))-1)/(m*(1-u))]*tb+tb
CT1+CT2+CT3+CT4
WIPq
m*P
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
42,2.0,50
42,1.0,85
25,1.0,100 50,0.75,20
25, 0.7,120 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
te
tb=B*te
Cb^2=Ce^2/B
u=TH*tb/m
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
Ca^2
Cd^2 = 1+(1-u^2)(Ca^2-1)+(u^2/sqrt(m))*(Cb^2-1)
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
1/te
Ce
P
m
CT = [(Ca^2+Cb^2)/2]*[u^(sqrt(2*(m+1))-1)/(m*(1-u))]*tb+tb
CT1+CT2+CT3+CT4
WIPq
m*P
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 50,0.75,20
25, 0.7,120 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
te
tb=B*te
Cb^2=Ce^2/B
u=TH*tb/m
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
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
CT = [(Ca^2+Cb^2)/2]*[u^(sqrt(2*(m+1))-1)/(m*(1-u))]*tb+tb
CT1+CT2+CT3+CT4
WIPq
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
42,2.0,50
42,1.0,85
25,1.0,100 50,0.75,20
25, 0.7,120 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
te
tb=B*te
Cb^2=Ce^2/B
u=TH*tb/m
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
Ca^2
Cd^2 = 1+(1-u^2)(Ca^2-1)+(u^2/sqrt(m))*(Cb^2-1)
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
1/te
Ce
P
m
CT = [(Ca^2+Cb^2)/2]*[u^(sqrt(2*(m+1))-1)/(m*(1-u))]*tb+tb
CT1+CT2+CT3+CT4
WIPq
m*P
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
Lot Sizing
• If affordable, a lot-for-lot (L4L) policy will incur the lowest inventory
holding costs and it will maintain a smoother production flow.
• Possible reasons for departure from a L4L policy:
– High set up times and costs => need for serial process batching to
control the capacity losses
– Processes that require a large production volume in order to
maintain a high utilization (e.g., fermentors, furnaces, etc.) => need
for parallel process batching
• Selection of a pertinent process batch size
– It must be large enough to maintain feasibility of the production
requirements
– It must control the incurred
• inventory holding costs, and/or
• part delays (this is a measure of disruption to the production
flow caused by batching)
• Move or transfer batches: The quantities in which parts are moved
between the successive processing stations.
– They should be as small as possible to maintain a smooth process
flow
Optimal Parallel Batching:
A factory physics approach
Model Parameters:
k: (parallel) batch size
ra: arrival rate (parts/hr)
t: batch processing time (hrs)
time
Then
B: maximum batch size
ca: CV of inter-arrival times
ce: CV for effective batch processing
CT = WTBT + CTq+t
1
1
k 1
1 (k  1)k k  1
WTBT  [0   ... 
]

k
ra
ra
kra
2
2ra
CTq 
ca2b  ce2
2
k a2
ca2
ra
u
2
t ; c ab 

;
u

t  1  k  ra t
1 u
(kt a ) 2
k
k
From the above,
Remark: Notice that CT
k  1 ca2 / k  ce2 u
k  1 ca2 / k  ce2 u
CT 

t t [

 1]t as u1 but also as u0 !
2ra
2
1 u
2ku
2
1 u
Determining an optimized batch size
Let um  rat . Then u = um / k  k = um / u . Substituting this expression for k in the
expression for CT, we get:
um / u  1 ca2u / um  ce2 u
k  1 ca2 / k  ce2 u
CT  [

 1]t  [

 1]t
2ku
2
1 u
2um
2
1 u
Recognizing that
ca2u
um

ca2
k 
k

 0 , we set
ca2u
um
   0 and we get
1
u
2
  ce2 u
1
1
y(u)
1
y
(
u
)


(


c
)
CT  [ 

 1]t  [

 1]t where
e
u
1 u
2u 2um
2 1 u
2
2um
To minimize CT, it suffices to minimize y(u). This can be achieved as follows:
 1    ce2
dy(u )  (1  u ) 2  (   ce2 )u 2
1
2
2
*


0

(


c

1
)
u

2
u

1

0

u


e
du
u 2 (1  u ) 2
  ce2  1
1    ce2
1
and   0  u * 
which further implies that k *  rat (1  ce )  rat
ce  1
Remark: If ce2  0, the term
 in the original expression for u* will significant. In that
2
c
1
case, we can set  *  a
and obtain u* and k* as before.
um 1  ce
Download