Queueing Analysis of Production Systems (Factory Physics)
Reading Material Chapter 8 from textbook Handout: Single Server Queueing Model by Wallace Hopp (available for download from class website)
Queueing analysis is a tool for evaluating operational performance Utilization Time-in-system (flow time, leadtime) Throughput rate (production rate, output rate) Waiting time (queueing time) Work-in-process (number of parts or batches in the systems)
A Single Stage System Finished parts Raw material Processing unit
The Queueing Perspective Departure (completion) of jobs Arrival (release) of jobs Queue (logical or physical) of jobs Server (production facility)
System Parameters E[A]: average inter-arrival time between consecutive jobs l: arrival rate (average number of jobs that arrive per unit time), l = 1/E[A] E[S]: average processing time m: processing rate (maximum average number of jobs that can be processed per unit time), m = 1/E[S] r: average utilization, r = E[S]/E[A] = l/m
Performance Measures E[W]: average time a job spends in the system E[Wq]: average time a job spends in the queue E[N]: average number of job in the system (average WIP in the system) E[Nq]: average number of jobs in the queue (average WIP in the queue) TH: throughput rate (average number of jobs produced per unit time)
Performance Measures (Continued…) E[W] = E[Wq] + E[S] E[N] = E[Nq] + r
Little’s Law
Little’s Law E[N] = lE[W] E[Nq] = lE[Wq] r = lE[S]
Example 1 Jobs arrive at regular & constant intervals Processing times are constant Arrival rate < processing rate (l < m)
Example 1 Jobs arrive at regular & constant intervals Processing times are constant Arrival rate < processing rate (l < m) E[Wq] = 0 E[W] = E[Wq] + E[S] = E[S] r = l/m E[N] = lE[W] = lE[S] = r E[Nq] = lE[Wq] = 0 TH = l
Case 2 Jobs arrive at regular & constant intervals Processing times are constant Arrival rate > processing rate (l > m)
Case 2 Jobs arrive at regular & constant intervals Processing times are constant Arrival rate > processing rate (l > m) E[Wq] = E[W] = E[Wq] + E[S] = r = 1 E[N] = lE[W] = E[Na] = lE[Wa] = TH = m
Case 3 Job arrivals are subject to variability Processing times are subject to variability Arrival rate < processing rate (l < m) Example: Average processing time = 6 min Inter-arrival time = 8 min
Case 3 (Continued…) r = 6/8 = 0.75 TH = 1/8 job/min = 7.5 job/hour E[Wq] > 0 E[W] > E[S] E[Nq] > 0 E[N] > r
In the presence of variability, jobs may wait for processing and a queue in front of the processing unit may build up. Jobs should not be released to the system at a faster rate than the system processing rate.
Sources of Variability
Sources of Variability Sources of variability include: Demand variability Processing time variability Batching Setup times Failures and breakdowns Material shortages Rework
Measuring Variability
Variability Classes CV Low variability (LV) Moderate variability (MV) High variability (HV) CV 0.75 1.33
Illustrating Processing Time Variability
Illustrating Arrival Variability Low variability arrivals t High variability arrivals t
The G/G/1 Queue If (1) l < m, (2) the distributions of job processing and inter-arrival times are independent and identically distributed (iid), and (3) jobs are processed on a first come, first served (FCFS) basis, then average waiting time in the queue can be approximated by the “VUT” formula:
Example CA = CS = 1 E[S] = 1 Case 1: r = 0.50 E[W] = 2, E[N] = 1
Example CA = 1 E[S] = 1 r = 0.8 Case 1: CS = 0 E[W] = 3, E[N] = 2.4
Facilities should not be operated near full capacity. To reduce time in system and WIP, we should allow for excess capacity or reduce variability (or both).
A Single Stage System with Parallel facilities Departure (completion) of jobs Arrival (release) of jobs Queue (logical or physical) of jobs Servers (production facilities)
The G/G/m Queue If (1) l < mm, (2) the distributions of job processing and inter-arrival times are independent and identically distributed (iid), and (3) jobs are processed on a first come, first served (FCFS) basis, then average waiting time in the queue can be approximated by the “VUT” formula:
Increasing Capacity Capacity can be increased by either increasing the production rate (decreasing processing times) or increasing the number of production facilities
Increasing Capacity Capacity can be increased by either increasing the production rate (decreasing processing times) or increasing the number of production facilities In a system with multiple parallel production facilities, maximum throughput equals the sum of the production rates
Dedicated versus Pooled Capacity Dedicated system: m production facilities, each with a single processor with production rate m and arrival rate l Pooled system: A single production facility with m parallel processors, with production rate m per processor, and arrival rate ml
Dedicated versus Pooled Capacity Dedicated system: Pooled system:
Pooling reduces expected waiting time by more than a factor of m Pooling makes better use of existing capacity by continuously balancing the load among different processors
The M/M/1 Queue
A Common Notation GX/GY/k/N N: maximum number of customers allowed G: distribution of inter-arrival times G: distribution of service times k: number of servers X: distribution of arrival batch (group) size Y: distribution of service batch size
Common examples M/M/1 M/G/1 M/M/k M/M/1/N MX/M/1 GI/M/1 M/M/k/k
Notation in the Book versus Notation in the Lecture Notes CT (cycle time): E(W) CTq (cycle time in the queue): E(Wq) WIP: E(N) WIPq (WIP in the queue): E(Nq) u: U (r =l/m) ra: l te: E(S); ts: E(X); ca: cA ce: cS
Assumptions A single server queue The distribution of inter-arrival times is exponential (Markovian arrivals) The distribution of processing times is exponential (Markovian processing times)
Distribution of Inter-arrival Times
The Memoryless Property
The Taylor Series Expansion
Exponential Inter-arrival Times and the Poisson Process Poisson distribution
Distribution of Processing Times
Similarly, when h is small,
The Distribution of the Number of Jobs in the System
The Distribution of the Number of Jobs in the System
The Birth-Death Model l l l 1 2 3 m m m
Applying Little’s law
The M/G/1 Queue A single server queue The distribution of inter-arrival times is exponential (Markovian arrivals) The distribution of processing times is general
The M/G/1 Queue (Continued…)
The G/G/1 Queue Revisited
The M/M/m Queue A queue with m servers The distribution of inter-arrival times is exponential (Markovian arrivals) The distribution of processing times is exponential (Markovian arrivals)
The Balance Equations Using analysis similar to the one for the M/M/1 queue:
The Birth-Death Model l0 l1 l2 1 2 3 m1 m2 m3
The G/G/m Queue For a queue with a general distribution for arrivals and processing times, average time in the queue can be approximated as
Notation in the Book versus Notation in the Lecture Notes CT (cycle time): E(W) CTq (cycle time in the queue): E(Wq) WIP: E(N) WIPq (WIP in the queue): E(Nq) u: U ra: l te: E(S); ts: E(X); ca: cA ce: cS
Propagation of Variability CS(i) Single server queue: Multi-server queue: CA(i) CD(i) = CA(i+1) i i+1
Propagation of Variability High Utilization Station High Process Var Low Flow Var High Flow Var Low Utilization Station High Process Var Low Flow Var Low Flow Var
Propagation of Variability (Continued…) High Utilization Station Low Process Var High Flow Var Low Flow Var Low Utilization Station Low Process Var High Flow Var High Flow Var
Variability Relationships E(S), CS2 l , CA2 l , CD2
If utilization is low, reduce arrival arrival variability; if utilization is high, reduce process variability. Operations with the highest variability should be done as late as possible in the production process.
A Production Line N: number of stages in the production line Si: processing time in stage i (a random variable), i=1,…, N U(i): utilization at stage i CA(i): coefficient of variation in inter-arrival times to stage i CS(i): coefficient of variation in processing time at stage i
Time in System for a Production Line E[Wq(i)]= V(i) U(i) E[S(i)]
Time in System for a Production Line
Reducing Time in System (Cycle Time) Reduce Variability failures setup times uneven arrivals process control worker training Reduce Utilization arrival rate (yield, rework, etc.) processing time (processing speed, availability) capacity (number of machines)
Expected WIP in System for a Production Line