Supply Chain Process Design using the Queueing Theory | by Samir Saci | Towards Data Science

Supply Chain can be defined as a network of processes and stock locations built to deliver services and goods to customers.
This network usually supports the business strategy of your company; its objectives can be diverse such as delivering the best quality products, the lowest cost or the most customized service or product in the market.
As a Supply Chain Engineer, your objective is to design the most efficient processes to ensure a good service level for your customers and profitability.
This article will apply principles from the Queueing Theory with Python to design a process for parcel packing in an E-Commerce Fulfilment Centre.
SUMMARYI. Problem StatementWhat is the most efficient solution between single and multiple lines solutions?ScenarioYou got the approval from your management for investing in a second packing station and you're wondering how should you design the layout.II. Optimal Solution using Queuing Theory1. Introduction to Process Analysis2. The Little’s Law3. Introduction to the Queuing Theory4. How can we estimate this waiting time?5. Queueing Theory to estimate tqIII. Build a Simulation Model with PythonIV. Conclusion
You are the Outbound Manager of a multinational clothing retail company known for its fast-fashion clothing for men, women, teenagers, and children.
A major problem you’re facing is outbound productivity; after picking your orders are waiting for too long to be shipped. Based on on-site observations and productivity analysis you understood that the packing process was the bottleneck.
Warehouse Pickers bring the parcels on a trolley and put them on the conveyor
Warehouse Pickers bring the parcels on a trolley and put them on the conveyor
2. Packing Operator Take the parcels from the conveyor and performs quantity check and packing (put filling material, close the box)
You got the approval from your management for investing in a second packing station and you’re wondering how should you design the layout.
What is the most efficient (Packing Productivity) solution?
You can find a Youtube version of this article with animations in the link below.
The Queueing Theory can be defined as the science of studying waiting time using advanced mathematical concepts.
If you want to learn more about it, I strongly advise you to have a look at the book Supply Chain Science written by Wallace J. Hopp.
In this article, we will define a process by a succession of actions that converts inputs to outputs.
To simplify the comprehension, let’s introduce some notations:
After a long time, when your system gets stable you can use this law to calculate the average number of items in the system (WIP)
The cause of the productivity issues during this process is the time that needs to wait for a parcel in the conveyor before being packed.
Your operators picking productivity is quite stable; however when you may face issues that will slow down the process:
Picking Error: for instance, the picker has put the wrong quantity of items
Damages: some items do not pass the quality final check because of damages
In the initial configuration, these events increase the waiting of the parcels in the WIP and impact the overall average CT.
Let’s introduce some notations:
The main indicator that we want to improve is the average cycle time that can be defined by:
CT = tq + tpwithtq: waiting time in the queue (min)tp: effective process time
Using Queueing Theory we can approximate the waiting time with,
You can find the full code in this Github (Follow Me) repository: LinkMy portfolio with other projects: Samir Saci
Parameters
Arrivals,ra = 6 parcels/minta = 0.17 min/parcelCVa: coefficient of variation of taProcessing,rp = 3 parcels/mintp = 0.33 min/parcelCVb: coefficient of variation of tp
Note
We have u -> u/2 because the input flow is splitted through the two packing stations.
Scenario
Deterministic Distribution of Arrivals: CVa = 0
Stochastic Distribution of Processing Time: CVp in [0, 2]
This scenario can be based on packing by batch: your picking operators are preparing orders in advance and sending the parcels in a continuous flow with a constant interval time.
Comments
For a purely deterministic scenario (CVp = CVa = 0) we have no difference as the queuing time is zero for both solutions.
When we bring variability in the processing time (number of items per parcel to check, picking errors, quality issues we see that solution 1 outperform solution 2.
If you have a parcel that has a quality issue, it will paralyze a full line if you take solution 2 (50% of input flow). Therefore this solution is not optimal if you have high variability in your processing time.With Solution 1 we can ensure that the first parcels In will be more or less the first parcels Out while we can’t predict that result with Solution 2 (imagine that one of your lines is facing a huge delay because of one parcel)
If you have a parcel that has a quality issue, it will paralyze a full line if you take solution 2 (50% of input flow). Therefore this solution is not optimal if you have high variability in your processing time.
With Solution 1 we can ensure that the first parcels In will be more or less the first parcels Out while we can’t predict that result with Solution 2 (imagine that one of your lines is facing a huge delay because of one parcel)
Based on these simulation results, you can estimate the impact on the average cycle time (by adding the processing time to queueing) and motivate your choices in the design.
Fortunately for you, the most efficient solution is also the cheapest as you do not need to invest in a new conveyor.
If you are interested in Warehousing Process Improvement methods, you can get more inspiration from the articles below.
www.samirsaci.com
www.samirsaci.com
www.samirsaci.com
Please feel free to contact me, I am willing to share and exchange on topics related to Data Science and Supply Chain.My Portfolio: https://samirsaci.com
[1] Supply Chain Science, Wallace J. Hopp