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 • Expectedcycle 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 u1.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) • Expectedcycle 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 i1 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 u1 but also as u0 ! 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