User Tools

Site Tools


multiple_workstations_in_series

Production Line Models: Multiple Workstations In Series

NOTE: Exercises below may link to supporting files in a GitHub repository. If you follow such links and (at the GitHub website) right-click a file and choose “Save link as…”, it will appear to download a desired file but may in fact fail. A failure will be discovered when trying to open the downloaded file, usually in MATLAB, and learning that it is not in fact a MATLAB script, function, or SimEvents simulation model.

A remedy is to, at the GitHub website, back up to the project root (e.g. Courseware or Software), choose “Download ZIP” for the entire project, and find the desired file within the project's ZIP. Our apologies for the inconvenience.


Exercises


Two Workstations In Series, Analytical vs Simulation

A production line has two serial workstations. The number of servers at each workstation is [2, 2], and each server has lognormally-distributed processing times with parameters (mu, sigma) of (1, 1). (The lognormal distribution's mean and variance in terms of these parameters are listed at its Wikipedia page.) A job is released into the system approximately every 5 hours, and historical data shows that job inter-release times are approximately exponentially-distributed.

1. Use analytical approximations (including the parallel-servers version of the VUT equation) to estimate the average cycle time for each workstation, and then the average cycle time for the production line. Use the table below to show your calculations.

Workstation 1 Workstation 2
m (parallel servers) 2 2
te
σe
ce2
u (utilization)
cd2 (departure process) (not needed)
CTq
CT

2. Open the simulation model SimpleSerialLine_TwoWks.slx. Configure the model with the parameters above, except use exponentially-distributed processing times instead of lognormal ones (use the same mean). Set the stop time to 100,000 hours, run five simulation replications, and use the Simulation Data Inspector (accessible next to the stop time box) to visualize average cycle time. For context, copy & paste your figure here, and compare to what was computed above using analytical approximations.

3. Repeat (1) except using exponentially-distributed processing times instead of lognormal ones. What do you observe?

BIG PICTURE: This is a straightforward comparison of analytical approximation and simulation results. The difference between (1) and (2) is a processing time SCV of >1.7 versus 1, which should introduce deviation between the analytical approximations and simulation results, corrected in (3).


Four Workstations In Series, Variability and Bottleneck Intuition

A production line has four serial workstations. The number of servers at each workstation is [1, 2, 6, 2] with deterministic processing times of [4, 5, 10, 3] hours. Each workstation experiences preemptive failures every 400 minutes (deterministic), which last approximately 80 minutes (deterministic). Jobs are released into the system at a rate of 0.2/hour.

  1. Where is the bottleneck?
  2. Open the simulation model SingleSerialLine_FourWksWithPreempFailures.slx. Configure the model with the parameters above; for deterministic use the normal distribution with stdev=eps or the triangular distribution with min=max=mode. Set the stop time to 100,000, run five simulation replications, and use the Simulation Data Inspector (accessible next to the stop time box) to visualize average cycle time. For context, copy & paste your figure below.
  3. Step through the four workstations one-by-one, and for each: Change the processing time at workstation k to exponentially-distributed, run five simulation replications, visualize the average cycle time traces, and copy & paste the figure below. Then reset the distribution at workstation k and repeat for workstation k+1. When finished there should be four figures - one for ce2=1 at the first workstation, one for ce2=1 at the second workstation, etc. Explain your results.
  4. Reset all workstations to deterministic processing times. Change the job inter-arrival time distribution to Uniform(1,9). Run five simulation replications, visualize the average cycle time traces, and copy & paste your figure below. How does this change the production line's average cycle time compared to the baseline in part 1? Explain.
  5. For job inter-arrival times exponentially- versus uniformly-distributed, compare the average cycle time at the third workstation.
  6. Reset job inter-arrival times to exponentially-distributed. If you could reduce the MTTR by 25% at any workstation, which would you choose, why, and how does this change the production line's average cycle time? Use plots from the Simulation Data Inspector to justify your answer.

BIG PICTURE: (2) has all workstations with SCVp=0, and (3) involves experimenting with SCVp=1 at each workstation one-by-one. The biggest cycle time increase is expected from larger processing time variability at or upstream of the bottleneck, either at the bottleneck because a single-workstation curve of cycle time versus processing time SCV is linearly increasing, or upstream of the bottleneck because an upstream workstation's processing time variability induces a downstream workstation's arrival process variability, and a single-workstation curve of cycle time versus inter-arrival time SCV is also linearly increasing. (4) reduces SCVia from 1 to 0.213, which should reduce whole-line cycle time. (5) focuses on a single workstation's cycle time, but that workstation is not the bottleneck and has low utilization so a reduction in SCVia should have little impact. (6) also concerns bottleneck intuition - a MTTR reduction effectively increases capacity, and this should be most useful at the bottleneck.


Four Workstations In Series, Tradeoffs From and Relative Placement Of Variability

A production line has four serial workstations. Open the MATLAB script SweepParams_SimpleSerialLine_FourWks.m (which controls the simulation model SingleSerialLine_FourWksWithPreempFailures.slx through the wrapper function SimWrapper_SimpleSerialLine_ FourWks.m).

1. Configure the model (in the script’s top section, not the simulation model itself) for each of the following scenarios. In all cases there is one server per workstation. Sweep arrival rates from 0.2 to 0.9 in steps of 0.1, set the stop time to 5,000, and run 10 replications per point. Run the script for each scenario, copy and paste the figure generated by each run below, and explain your results.

Scenario te at each workstation ce2 at each workstation Buffer Capacity at each workstation Comments
1 1 eps (effectively 0) Inf No Processing Time Variability
2 1 1 Inf Pay for variability with higher CT and WIP
3 0.95 1 Inf Add capacity
4 1 1 1 Pay for variability with reduced TH
5 1 0.3 Inf Reduce variability

2. Configure the model (in the script’s top section, not the simulation model itself) for each of the following scenarios. At each of the four workstations te=1 and ce2=1, except for one workstation with ce2=10 as specified in the table below. In all cases there is one server per workstation. Sweep inter-arrival rates from 0.2 to 0.9 in steps of 0.1, set the stop time to 50,000 (5-10x larger than before, to get averages with high variability), and run ten replications per point. Run the script for each scenario, copy and paste the figure generated by each run below, and explain your results.

Scenario High-variability workstation Buffer Capacity at each workstation Comments
6 ce2=10 at Workstation 1 Inf High variability at station 1
7 ce2=10 at Workstation 4 Inf High variability at station 4
8 ce2=10 at Workstation 1 1 High variability at station 1, and system has small buffers
9 ce2=10 at Workstation 4 1 High variability at station 4, and system has small buffers

BIG PICTURE: This was the first exercise given for which Simulink’s Simulation Data Inspector was inadequate – the number of permutations to is too great to try one-by-one manually, and also the output visualizations are more than single-replication traces of statistics measured directly in a simulation. The first five scenarios concern the tradeoffs induced by variability, and how variability must always be paid for in some form. The second four scenarios concern the relative placement of variability in a serial production line; an expected result is that a certain amount of variability upstream is more damaging to overall line performance than the same amount of variability downstream.


Four Workstations In Series, Using Finite Buffers to Limit WIP and CT

A production line has four serial workstations. Open the MATLAB script SweepParams_SimpleSerialLine_FourWks.m (which controls the simulation model SingleSerialLine_FourWksWithPreempFailures.slx through the wrapper function SimWrapper_SimpleSerialLine_ FourWks.m). Configure the model (in the script’s top section, not the simulation model itself) with one server and an infinite-capacity buffer at each workstation, where all servers have an effective processing time of 1 hour and an effective processing time SCV of 10.

  1. The baseline scenario: Sweep arrival rates from 0.2 to 0.9 in steps of 0.1, set the stop time to 50,000 (to get averages with high variability), and run 10 replications. Copy and paste the figure below of average WIP, CT, and TH versus utilization.
  2. Suppose a new server is available with the same capacity as any server on the line, but smaller effective processing time variability (SCV of 0.25). At which workstation should we replace the existing server with the new one to get the largest whole-line reduction in cycle time? Compute an answer for each of the arrival rates {0.3, 0.5, 0.7, 0.9}, and compare with baseline results. What can you conclude?
  3. For the original production line (all servers with an effective processing time SCV of 10), suppose due to space constraints that the buffer capacity at exactly one of the four workstations must be reduced from infinity to one. At which workstation should the buffer size be reduced to preserve the best whole-line performance (as measured by WIP, CT, and TH)? Compute an answer for each of the arrival rates {0.3, 0.5, 0.7, 0.9}, and compare with baseline results. What can you conclude?

BIG PICTURE: A classic theme is that upstream variability is more damaging to whole-line performance than downstream variability, but this exercise is expected to show that it may vary with utilization. A finite buffer with a capacity one is expected to damage whole-line throughput the most when as far upstream as possible, where it can slow the release of work into the system and especially at higher utilizations. However, as far upstream as possible it should also have the greatest reduction on cycle time and work-in-process, especially at higher utilizations. Results for the numbers chosen here are shown in tabulated form below.

Utilization at each workstation 0.3 0.5 0.7 0.9
CT, Baseline 14.29 32.57 70.56 306.22
CT, Reduce variability at Wks 1 12.29 23.38 57.67 167.43
CT, Reduce variability at Wks 2 13.12 25.25 55.95 204.70
CT, Reduce variability at Wks 3 11.42 26.82 51.12 181.09
CT, Reduce variability at Wks 4 12.61 26.25 61.35 216.10
% Improvement 20% 28% 28% 45%
Utilization at each workstation 0.3 0.5 0.7 0.9
Baseline WIP 4.22 17.44 52.13 257.13
CT 14.08 34.76 74.62 285.35
TH 0.30 0.50 0.70 0.90
Small Buffer at Wks 1 WIP 4.70 8.67 17.21 25.24
CT 16.74 20.32 31.67 39.73
TH 0.28 0.43 0.54 0.64
Small Buffer at Wks 2 WIP 5.14 23.15 2115.9 7207.7
CT 17.18 46.23 3026.2 7976.1
TH 0.30 0.50 0.62 0.62
Small Buffer at Wks 3 WIP 4.24 20.83 1904.0 6887.2
CT 14.14 41.87 2719.7 7650.9
TH 0.30 0.50 0.62 0.63
Small Buffer at Wks 4 WIP 5.71 23.26 1991.9 6944.6
CT 19.11 46.44 2839.0 7707.2
TH 0.30 0.50 0.62 0.62
% Improvement: WIP 0% 50% 70% 90%
% Improvement: CT 0% 42% 58% 86%
% Degradation: TH 0% 0% 11% 29%

Two Workstations In Series, Diagnostics and Improvements

[This exercise was created as a simulation complement to Hopp & Spearman's “Diagnostics and Improvements” section 9.6 (ed. 2), specifically the first example for increasing throughput in a two-workstation production line.]

A production line has two serial workstations. Each workstation has one server, and experiences calendar time-based preemptive failures. The effective processing time of the servers are [19, 22] minutes, processing time SCVs are [0.25, 1], the MTTF at each workstation is [48, 3.3] hours, and the MTTR at each workstation is [480, 10] minutes. The first workstation has no restrictions on its input buffer's capacity, but space limitations restrict the second workstation's input buffer capacity to 10 jobs. A job is released into the system approximately every 25 minutes, and historical data shows that job inter-release times are approximately exponentially-distributed. Management's desired throughput rate for the line is 2.4 jobs/hour.

Open the simulation model SimpleSerialLine_TwoWksWithPreempFailures.slx, configure it as described, and use it to answer the following questions. In all cases set the stop time to 500,000 minutes, run several simulation replications, use the Simulation Data Inspector to visualize results, and copy & paste your figures to justify your answers. Note that a (mean, SCV) of (19, 0.25) can be realized with a triangular distribution with (min, max, mode) of (0, 44.954, 12.046), and a (mean, SCV) of (22, 1) can be realized with a popular non-negative distribution which always has SCV=1. Assume that both MTTF and MTTR are exponentially-distributed.

  1. The baseline or present-state scenario: What is the current throughput of the production line in jobs/hour? What are the average cycle times at each workstation?
  2. Hopp & Spearman's diagnosis using analytical approximations suggests that one way to increase throughput may be to reduce the MTTR at the first workstation. Would a 20% reduction in MTTR be enough to realize the desired throughput rate? What are the average cycle times at each workstation?
  3. Would a 50% reduction in MTTR at the first workstation be enough to realize the desired throughput rate? What are the average cycle times at each workstation?
  4. Reset the MTTR at the first workstation. Would a 50% reduction in MTTR at the second workstation be enough to realize the desired throughput rate? What are the average cycle times at each workstation?
  5. Reset the MTTR at the second workstation. Would an infinite-capacity buffer at the second workstation be enough to realize the desired throughput rate? What are the average cycle times at each workstation?
  6. Overall, what can you conclude?

BIG PICTURE: This exercise was created as a simulation complement to Hopp & Spearman's diagnostics example because a criticism of the example is that it's a toy problem which does not scale to larger and more complex production lines. Valid criticism or not, what is valuable is that Hopp & Spearman offer a process for diagnosing performance limitations, arguably a critical skill for any industrial engineer.


Two Workstations In Series, Finite Buffers, Analytical vs Simulation

A production line has two serial workstations, each with a single server. Between the two workstations is a finite buffer that can hold B jobs. The first workstation continues operating unless blocked by a full buffer downstream. A job is released into the system approximately every 1 minute, and historical data shows that job inter-release times are approximately exponentially-distributed.

  1. Suppose both workstations have exponentially-distributed processing times with a mean of 20 minutes. For B = 3 to 12, calculate each performance metric below using the analytical approximation for finite-buffer queueing systems (e.g. the M/M/1/b model with b=B+1). Then compare to simulation results (use the simulation model SimpleSerialLine_TwoWks.slx, control B with Workstation 2's queue capacity, set the stop time to 100,000 minutes, run several simulation replications, and use the Simulation Data Inspector). Create two plots, the first of Workstation 2's average cycle time versus B, and the second of whole-line throughput versus B. Explain your results, and comment on this as a strategy for controlling the WIP and CT at Workstation 2.
    • Whole-line throughput
    • Workstation 2's average WIP
    • Workstation 2's average cycle time
  2. Repeat part (1)'s simulations (but not the analytical approximations) using triangular-distributed processing times with (min, max, mode) of (5, 35, 20). Compare the simulation results in part (1) and part (2).
  3. Repeat part (1) (both the analytical approximations and simulations) with exponentially-distributed processing times with mean 15 minutes at Workstation1 and mean 20 minutes at Workstation 2.

BIG PICTURE: The purpose of this exercise is to begin exploring the idea of controlling WIP and CT by simply limiting the queue capacity at any workstation. Results should show a tradeoff between better (lower) WIP and CT at the second workstation for smaller values of B, at the expense of worse (lower) throughput. The difference between (1) and (2) is in the variability of processing times. If desired to shorten the exercise, consider eliding part (3), and also limiting the range of B values.

multiple_workstations_in_series.txt · Last modified: 2020/08/31 15:55 (external edit)