Getting in line at the grocery store usually involves a guesstimation at which lane will move the fastest. We might look at the long line for self checkout, the giant carts in another lane, and the presumably slow cashier in yet another lane. What’s going to be the fastest option?
Queuing theory, yes, that is a real life thing, is the study of lines and how people move through them. More broadly, queuing theory is the mathematics for studying how “jobs” get “serviced” in a system. People in line at a grocery store is the example most commonly used. Other examples of where queuing theory can be applied are your email inbox, a line at the bank, and paper in a printer. These examples were chosen to demonstrate a few different ways “jobs” can be “serviced.” Grocery stores use a first-come first-served process. They use separate lines to feed separate cashiers. Most email inboxes are dealt with sporadically. With multiple emails to deal with, most people will assign a relative weight to each email, and deal with them based on which ones are most urgent or important, regardless of the order they showed up in. Some emails may never be dealt with, some are dealt with within seconds, some take minutes to hours. Banks, on the other hand, use a single line to send customers to multiple servers. This is another form of first-come first-served, but the difference between a grocery store and a bank is that banks feed multiple servers (tellers) with a single queue. Banks may also become a multi queue, multi server system. Have you ever stood in line for a teller only to be told to go stand in another line to see a banker? That’s a multi line, multi server. Lastly, paper in a printer is served in a last-in first-out way. The piece of paper on the top of the pile, that entered the reservoir last, is the first one to be used. All of these systems process jobs in a slightly different manner, but the math behind queuing theory has some surprising insights for all of them.
Without getting totally technical, let’s look at the primary equation in queuing theory, Little’s Law. It states that Work in Process (WIP) is equal to Throughput (TH) multiplied by Cycle Time (CT).
WIP = TH * CT
John Little, an MIT professor, published, A Proof for the Queuing Theory Formula: L = λW in 1961. In non-technical jargon, what Little found was that,
“The average number of customers in a system (over some interval) is equal to their average arrival rate, multiplied by their average time in the system.”
Customers in a system can be thought of as work in process (L = WIP), arrival rate as throughput (λ= TH), and average time in the system as cycle time (W= CT). Little’s law tells us that no matter what order jobs get serviced in, the average time in a system can be discovered with the same equation. Knowing the average time in a system is a key step to smoothing out flow through the system.
Minimizing Work in Process is the overarching goal in queuing theory. WIP is inherently less valuable than finished goods (can’t sell half a car). Reducing WIP creates a more smoothly flowing process (true in manufacturing, hospitals, office work, accounting, etc.). Furthermore, too much WIP can cause a system to be unstable which can lead to all kinds of issues. By having too much work to do, a particular machine, for example, might not get enough time to cool down between uses, causing it to overheat and break down. If a machine goes down, there will likely be follow on issues as other parts of the system now have nowhere to send jobs. Similarly, a person with too much on their plate tends to start making more mistakes which creates more headaches (read re-work) for everyone involved. One of the ways to reduce WIP is to reduce the time a job spends in the system.
To reduce the time a job spends in a particular system, one can add more service stations, reduce the workload at the station or even utilize a single queue, multi server system (like a bank). During peak business hours, grocery stores will open up more checking lanes to serve more customers. Shortening someone’s wait time necessarily shortens their total cycle time, which will lower WIP. Sticking with the grocery store example, a “10 items or fewer” lane is often opened up to serve customers who only have a few items. By processing customers more quickly, those customers can exit the system more quickly. In non-grocery store terms, the math behind queuing theory tells us that doing the tasks that take the least time first reduces the average cycle time for all tasks, thus reducing WIP.
Finally, using a single line to serve multiple customers lowers the average time a customer spends in the system. A single queue system spreads variations in server speed and customer demand across all the open servers. By preventing one line’s cycle time from blowing up due to a server error, the average time for everyone goes down. As an example, imagine there being two lines for two tellers at the bank. If the person in front of you forgot their identification or has the wrong account number, the amount of time they spend being served will be substantially higher than average. Your time waiting behind them, then, will be substantially higher than average. If instead there is a single line serving the two tellers, that person’s mistake will not affect you nearly as much – the other teller will be available soon.
The ideal state of a system is that which consumes the least energy. In physics, that looks like the path of least resistance. In other domains, systems that require the least amount of input and resources have the most reliable output in the long run. The other side of that coin, though, is that the system itself needs to be designed to minimize necessary inputs. The best way to get there is by designing the system you can think of, then testing it until it breaks. Rinse and repeat until you get the system that works. By building a system, testing it, then improving it, we will get to the best possible option. This cyclical process is a necessary one to create smooth processes. Lastly, taking the deadly wastes noted earlier and removing them from the system will assist in creating a better flowing operation.
If you feel like something here has been valuable, there are ways to support more content like this on my gumroad page, here.