Chapter 5 Flow Lines • Types • Issues in Design and Operation • Models of Asynchronous Lines – Infinite or Finite Buffers • Models of Synchronous (Indexing) Lines • Closed-Loop Material Handling Focus on the impact of variability on design, operation, and performance. 1 Types of Flow Lines • Paced vs. unpaced • Job movement between work stations – Indexing (synchronous) lines: all jobs move simultaneously • Paced: Limit on time available to complete each task • Unpaced: No transfer until all tasks completed – Asynchronous: no coordination between movements at different stations (usually unpaced) • Blocking or starvation may occur • Task times by human operators are highly variable! 2 Design & Operational Issues • Configuration and Layout – Number of stations: If TH* is the required throughput and average total time (work content) for each job is W, then the minimum number of stations is m*=W TH*. Actually will need more because • Imperfect line balance means work at each station is not exactly W/m* • Operator task time variability causes delays • Quality problems may require rework • Paralleling – A long task may require several stations in parallel in order to balance with other stations • Storage space for in-process inventory: location and size 3 Fluid Model for Deterministic Serial Queuing System (Hall) upstream Suppose N single-server stations in series, each with own unlimited queue Up to time t, An (t ) cum. arrivals at server n Q1 s1 D n (t ) cum. departures from server n At time t, An (t ) D n (t ) n (t ) arrival rate to server n n (t ) departure rate from server n downstream Ln (t ) no. of customers at server n Q2 s2 4 Deterministic Fluid Model (cont-1) Given: n service rate of server n n travel time from server n 1 to server n The queues are related by: An t D n 1 t n , 2 n N n t , if Ln t 0 n t n n , if L t 0 For N = 2, if we could increase either 1 or 2 , which would provide more improvement in performance? 5 Deterministic Fluid Model (cont-2) • The naïve approach is to attempt to decrease the queue that’s larger (station 1) – But this just shifts the waiting time downstream – In mfg. this is worse because downstream WIP is more valuable • Better to increase the service rate of the bottleneck server, i.e., the last place at which a queue is encountered – With deterministic service times, the bottleneck is the server with the smallest capacity (service rate) 6 Asynchronous Lines with Unlimited Buffers Assume that arrivals (job orders) to the line follow a Poisson process with rate , and that stage i has ci parallel stations, each with service time exponentially distributed with rate i, i=1, …, m. Recall that the departure process from an M/M/1 queue is Poisson with rate equal to the arrival rate. The same is true for an M/M/c system. Then each stage is effectively an M/M/ ci queue with arrival and departure rate equal to . As long as /(ci i) < 1, throughput = regardless of the values of ci and i ! However, the configuration and processing rates of the stages do affect the amount of WIP in the line. 7 Average Number of Jobs in System Formally, if Ni is the steady-state number of jobs at stage i, then for i = /( ci i) < 1, i=1, …, m, c i ki p0 , 0 ki ci ki ! P N i ki c k ci i i i c ! p0 , ki ci i and if the expected number of jobs in an M/M/c system with c parallel servers and server utilization is Nˆ ( , c), then the average number of jobs in the system is E N i 1 Nˆ ( i , ci ) m 8 Work Load Allocation Suppose that the total work for a job (total expected processing time) is W, and that of this total, wi is allocated to stage i. Then i = 1/ wi. To minimize WIP, we want to wi ˆ min i 1 N , ci ci m s.t. i 1 wi W m The function Nˆ ( , c) is increasing and convex in , i.e., 2 ˆ ˆ ( , c) N N ( , c) ˆ N '( , c) 0 and 0 2 9 Work Load Allocation (cont) The solution to this optimization problem will satisfy: ˆ wi* N ' , ci constant, i 1,..., m. ci The function Nˆ '( , c) is decreasing in c. So for ci < cj, ci * * * w w wi ci ˆ j j ˆ ˆ N ' , ci N ' , c j N ' ,cj cj cj ci cj * * implies that w j c j wi ci . Therefore, if each stage has an equal number of servers, the workload should be allocated evenly among stages. But if not, allocate more work per server to stages with more servers. 10 General Interarrival and Service Times Model each stage as a GI/G/c system, then use favorite approximation for the system population (see Table 3.1) Nˆ GI / G /1 (, Ca 2 , , CS 2 , ci ) where Ca2i1 Cd2i , Ca 2 , , CS 2 , ci , i 1,..., m 1; Ca21 Ca2 Then use (3.160) to estimate E NGI / G / c 2 2 C and C Impact of variability: E[Ni] increases with a S . If sequence of stations visited can be changed, average flow time is minimized by putting the stations with less variable service times first. 11 Asynchronous Lines with Finite Buffers • Single station (server, machine) per stage • Production blocking: A station is blocked if a completed job cannot be moved out of the station because the downstream buffer is full. If a job is available for processing, the station will process the job if it is not blocked. • bi is the limit on the total number of jobs waiting for processing or in process at station i It can be shown that throughput increases with the buffer sizes. How can we compute or estimate it? 12 3 Stages, Exponential Service Times Assume an infinite number of jobs in front of station 1 (high demand, unlimited raw material) N2(t) = the number of jobs that have been processed by station 1 but not yet completed by station 2; N3(t) is the corresponding quantity for station 3. {N2(t), N3(t), t 0} is a Markov chain with possible states S n2 , n3 : 0 n2 b2 1,0 n3 b3 1, n2 n3 b2 b3 1 (Ni(t) = bi + 1 if stage i - 1 is blocked) Let p n2 , n3 limt P N2 (t ) n2 , N3 (t ) n3 13 Transition Diagram 0,0 0,n3 0,1 1,n3-1 1,0 n2-1,0 n2-1,1 n2,0 n2,1 n2+1,0 0,n3+1 n2-1, n3 n2-1, n3+1 n2,n3-1 n2, n3 n2,n3+1 n2+1, n3-1 n2+1, n3 b2-1, b3+1 b2,b3 b2+1,1 b2+1, n3-1 0,b3+1 1,n3 b2,0 b2+1,0 0,b3 b2+1, n3 b2+1, n3+1 b2,b3+1 b2+1, b3 14 Throughput • Steady-state balance equations (p. 189) can be solved numerically; then TH 3 1 n 0 p(n2 ,0) b2 1 2 • If b2 = b3, throughput is maximized by putting the fastest station (largest ) in the middle – true for nonexponential processing times as well. 15 3 Stages, No Buffer Space 1 0,0 3 0,0 1 2 3 0,1 0,2 1,0 1 2 3 1,0 1,1 1,2 2,0 1 2 3 2,0 2,1 0,1 1 2 3 1,1 1 2 3 2,1 1 2 3 0,2 1 2 3 1,2 1 2 3 2 p. 190: Throughput is symmetric in 1, 3. Maximize throughput with 2 = max(1, 2, 3) 16 Multiple Stages • Can form a Markov chain model for N2 (t ),..., Nm (t ), t 0 but it’s very unwieldy, with many states. There are some iterative algorithms to approximate the throughput (5.4). • Optimal workload allocation: Let ki 1 bi 2 , i 2,..., m, and k1 km1 0. The optimal proportion of the total workload to allocate to stage i is wi* 1 ki ki 1 W 1 k m j 1 j k j 1 • The optimal allocation of (m-1)b buffer spaces is bi b, i 2,..., m. * 17 Allocating Workload: Summary • Unlimited buffers: – Equalize workload among stages if single server per stage – Allocate more work per server to stations with more servers • Limited buffers: – Faster servers (less work) in middle stations • Avoid blocking early stages, starving late stages – Allocate buffer space evenly 18 Indexing Lines • Jobs move simultaneously between m stations – Unpaced: Move takes place when each station has completed its task. • Line balancing is done on the basis of expected task times • Actual task times are random • Actual throughput and utilizations depend on distribution of longest task time – Paced: Moves take place at fixed time intervals • Gross production rate is reciprocal of this interval • Quality declines as interval is shortened • Tradeoff to determine optimal time interval 19 Unpaced Lines Ti is the random time to complete task i, i = 1,…,m The time between successive moves is a random variable max T1 , T2 ,..., Tm . The utilization of station i and the throughput are given by: E Ti 1 i , TH . E E Line balancing seeks to maximize throughput by assigning elemental (nondivisible) tasks to stations to minimize max E T1 , E T2 ,..., E Tm subject to constraints on precedence and task combinations that can be assigned to the same station. 20 Unpaced Lines (cont-1) However, TH 1 E max E T1 , E T2 ,..., E Tm To see the impact of variability on throughput, we will look at an approximation to the distribution of . Assume that the random variables Ti are independent with identical distributions, FT t P Ti t. Then F t P t i 1 P Ti t FT t m m For many distributions, the right tail can be approximated by an exponential function, i.e., for t sufficiently large, P T t 1 FT t ket . 21 Unpaced Lines (cont-2) Let tm be the value of t such that P T tm m1 . Using the exponential approximation, for t > tm 1 1 FT t P T t e (t tm ) . m Then m 1 (t tm ) ( t tm ) F t 1 e exp e Fˆ t m (after some more manipulation.) Also it can be shown that 0.577 1 ˆ ˆ E tm and std . 6 22 What’s and How do we use this? Suppose T is normally distributed with mean and variance 2. If m = 10 then tm = + z0.1 = + 1.28. Also, 0.05 P T 1.64 0.1e ( 1.64 ( 1.28 )) 0.1e0.36 So, 0.5 e 0.36 and ln(0.5) 0.36 1.93 0.577 0.577 ˆ Finally, E tm 1.28 1.93 1.58 Note: This value of applies to m = 10 only! Re-do for other values of m. 23 How do we use this? (cont) The same analysis for m = 20 in the text (5.3.1) finds E ˆ 20 20 1.94 20 Suppose we took a 20 station line and converted it to two parallel lines of 10 stations each (each station in the 10 station line would have twice as much work.) Then 2 2 10 2 20 and 10 2 20 and 2 20 1.94 20 TH for the two 10-station lines 2 10 1.58 10 1 1 TH for the 20-station line 2 20 1.58 2 20 20 1.94 20 1 24 Paced Lines Ti is the random time to complete task i, i = 1,…,m . The time between successive moves is a constant, . The quality, Q(), is the probability that a product will not contain any defects. We will take it to be the probability that all stations complete their tasks within time , so that m m Q i 1 P Ti FT where the last equality assumes that the times Ti are iid. Note that Q() is the same as F t , the cycle time distribution for the unpaced line. We will assume that is set large enough so that Q() is close to 1 and fits the right-tail distribution: Q t exp e (t tm ) , where tm FT1 1 m1 25 Setting to achieve a specified Q() If we want a specified quality, Q*, we can determine what must be the probability that a station finishes in time: Q* Q FT m FT Q * 1/ m Table 5.3 in the text lists some of these values; e.g., if m = 10 stations and Q* = 0.98 then FT 0.99798. To achieve this quality, FT 1 0.99798 . For example if T is normal ( , 2) then set = +z.002 = +2.88 26 Setting to maximize throughput The gross production rate will be 1/. However, should not be set too low because quality declines. The rate at which nondefective items are produced is Q TH The throughput will be maximized when TH Q ' Q 0, or d See Fig. 5.5: Line from Q Q ' origin is tangent to Q() 27 Setting to maximize throughput (cont-1) Assuming Q t exp e (t t ) , * will satisfy: * t ln * m m For example, suppose the task time at each station is normal ( , 2). Then 2/ (see slide 23) and 2 2 2 2 * ln * z1/ m , or * ln * z1/ m 2 If m=10 and CV =/=0.2, set * = + x* and the equation reduces to: x * 12 ln 10 2 x * z1/10 1.28. Then by trial and error, x* = 2.65. 28 Setting to maximize throughput (cont-2) And if * = + 2.65 , then Q * exp e 2 ( 2.65 1.28 ) 0.94 0.94 0.63 TH 2.65(0.2 ) Throughput is less than 1 E T because (1) quality is not 100%, and (2) we have to build in slack time to address the variability. Note that * is actually a minimum value for : If > * then throughput will decrease while quality improves but if < * both quality and net throughput decrease! 1 29