Vensim software work required for 3 students 3 copies
Dr. Daniel Xing Email: [email protected]
EBUS-504
Operations Modelling and Simulation
Lecture 4
Bottleneck analysis-2
University of Liverpool
Management School,
UK
Key learning outcomes
1. Bottleneck analysis recap;
2. Understand steady-state;
3. Analysis under uncertainty;
4. Setup uncertain parameters in Witness
5. Use variables and extract data for analysis
Why bottleneck is so important?
1. It defines the maximal throughput rate of your system.
2. It helps modellers quickly locate queues
3. It helps you identify the total outputs at a certain point.
4. It defines the maximal utilisation rate for each entity of your system.
5. Most importantly, it provides further improvement directions.
Any more?
Let’s do with some exercise
1. The production of product A requires a sequential processes and their
operation time is 3mins, 5mins and 7mins respectively;
2. Product A is assembled by 4 components (2Bs, 1C and 1D) with 2mins.
Each type of component requires a pre-processing operation with
machine time 3mins, 5mins, and 4mins respectively.
3. A supermarket has three tills to serve its customers. Each till needs
2mins on average to finish the service and customers arrive the store
every 1min.
4. A line production is comprised by 3 machines with operation time
6mins, 8mins and 4mins respectively. Every machine needs a 2mins
setup by L1 (there is only one labour available) and part arrives every
2mins.
Analytical-based methods Input rate vs. output rate
Bottleneck of your system is always identified when input rate is faster than
output rate
The busiest resource (capacity analysis)
Filter out the entity in the system which takes the longest time to complete a job
The most congested place (throughput analysis)
The place where a part takes the longest time to enter and leave it.
Product production lifecycle analysis
From raw material(s) until the completion of an end-product, analysing how
much time in percentage that each component needs to be operated with.
Analytical-based methods The ultimate rule to determine a bottleneck under a deterministic setting:
“It is the only resource which makes all other resource waiting”:
✓ Any reduction in its utilisation can reduce the overall throughput
✓ Double its capacity can double the utilisation of any other resources if their
current utilisations are below 50%.
Analytical-based methods
Pros:
✓ Easy to build an overall understanding of your system;
✓ Helpful for model validation purposes;
✓ Light up the initial system improvement plans;
✓ Very effective for deterministic models;
Cons:
❖ Hard to identify the bottleneck when system structure is complex;
❖ Ineffective for stochastic models;
❖ Hard to capture all model details (good for long-term planning but not
short-term)
❖ Can be time consuming and potential human errors
Simulation-based methods a) Methods based on machine utilisations
Simulating your model and determine the bottleneck based on the largest
average machine cycle time or the largest machine utilisation.
b) Methods based on waiting times or queue lengths
Simulating your model and the bottleneck should be at the process with the
largest DROP in waiting time or LONGEST queue length.
Simulation-based methods c) The Arrow Method Based on Starving and Blocking
If the frequency of manufacturing blockage of machine m_i is larger than the
frequency of manufacturing starvation of machine m_i+1, the bottleneck is
downstream of machine of machine m_i. If the frequency of the manufacturing
starvation of machine m_i is larger than the frequency of manufacturing
blockage of m_i-1, the bottleneck is upstream of machine m_i.
Simulation-based methods d) The “turning point” method
Key concepts:
1. a bottleneck machine will often make the upstream machines blocked and
downstream machines starved.
2. a bottleneck machine will also have a lower overall sum of blockage and
starvation time.
Simulation-based methods d) The “turning point” method
Simulation-based methods e) machine production rate sensitivity analysis
the most critical bottleneck machine has the highest sensitivity value of the
system production rate to a machine’s production rate.
i.e. system system
i j
PR PR j i
PR PR
Increase the production rate of
the potential bottleneck with the same percentage
Compare the increase of system
production rate from each round
Determine the bottleneck which leads the highest system production
rate increase
Simulation-based methods e) machine production rate sensitivity analysis
the most critical bottleneck machine has the highest sensitivity value of the
system production rate to a machine’s production rate.
Simulation-based methods
Pros:
✓ Easy to detect the bottleneck;
✓ Effective for large scale problems;
✓ It can handle stochastic systems;
Cons:
❖ Hard to see the rationale behind the results, it tells you “where” and
“what” but not “why”;
❖ Errors of simulation model can lead to wrong detection;
❖ It requires analytical support to draw the final conclusion in some
cases.
Resume our discussion about queues
1. How do we know the waiting time for the 10th part? 50th part? Or the nth
part?
2. How do we know the queue size at minute 50? Or minute 100? Or the
nth minute?
2mins 1min 8mins 4mins
Resume our discussion about queues
1. Mathematical induction
➢ The 2nd part: 6 mins
➢ The 3rd part: 3mins + 8mins
➢ The 4th part: 8mins + 8mins
➢ The 5th part: 5mins + 8mins + 8mins
➢ The 6th part: 2mins + 8mins + 8mins + 8mins
➢ The 7th part: 7mins + 8mins + 8mins + 8mins
➢ The 8th part: 4mins + 8mins + 8mins + 8mins + 8mins
What do you see from above? Can you conclude a generic formulation using
nth part, bottleneck cycle time T_b and part inter-arrival time T_a?
Resume our discussion about queues
When n=1
W_n=0;
When n>=2
W_n = W_(n-1) – T_a + T_b
Why?
Resume our discussion about queues
When n=1
W_n=0;
When n>=2
W_n = W_(n-1) – T_a + T_b
Why?
Resume our discussion about queues
Let’s change our angle
The nth part
Arriving at what
time makes it no
waiting?
What is the actual
arriving time?
Why the first one is different? - steady state analysis
Steady state:
In systems theory, a system or a process is in a steady state if the
variables which define the behaviour of the system or the process are
unchanging in time
1. Why do we need to exclude warm-up period?
2. How do we determine warm-up period?
Steady-state analysis
1. In a deterministic setting:
The system is deemed to show a repetitive pattern as long as the
simulation run is long enough.
2. In a stochastic setting:
The stochastic processes associated with the output variables of interest
become stationary.
o For example, if the inter arrival time of a part is following a Poisson
distribution or a normal distribution.
Steady-state analysis
Source from: Birta and Arbez (2013)
Steady-state analysis
✓ Selecting the size of the time cells (e.g. Every 5 minutes)
✓ Determine the total number of time cells
✓ Determine the number of replications
✓ Obtain the value as the average over the n replications of the i th cell
averages ( i.e. assuming i is the index for the i th cell and j is the index
for the j replication), then we have:
ia
,i jy
Steady-state analysis
Welch’s moving average method:
If plotted against index i, the resulting graph is ‘choppy’ and difficult to interpret
We introduce a smoothing operation to smooth out the rapid variations to
obtain a smoother curve that captures the long-run trend.
is a moving average value and parameter w represents a window
size that controls the smoothing operation.
( )ia w
Steady-state analysis
When i <= w, there
are not enough
values preceding
time cell I to fill the
window so we use (i-
1) replace w.
Steady-state analysis
ia (3)ia
(5)ia The larger the window size, the smooth
plot you’ll get, but less details can be
captured.
Use Witness to help statistics
✓ Define random parameters
o E.g. Normal distribution syntax: normal(mean, SD, random stream);
Use Witness to help statistics
✓ Create and use variables
Use Witness to help statistics
✓ Create and use variables
Use Witness to help statistics
How do we define a time cell and continuously extract data to
Excel worksheet?
Use Witness to help statistics
✓ Use dummy parts and counter variable
Use Witness to help statistics
✓ Use dummy parts and counter variable
Use Witness to help statistics
✓ Corrected solution
Dr. Daniel Xing Email: [email protected]
EBUS-504
Operations Modelling and Simulation
Lecture 4
Bottleneck analysis-4
University of Liverpool
Management School,
UK