Report

Help us improve this tool

Queueing Theory Calculator

Calculate queue lengths, waiting times, server utilization, and traffic intensity for M/M/1 and M/M/c queueing models.

O M T

What Is Queueing Theory?

Queueing theory is the mathematical study of waiting lines, congestion, and operational delays. Developed in 1909 by Danish engineer A.K. Erlang to analyze telephone switchboard capacities, queueing models are widely applied across telecommunications network packet routing, cloud server autoscaling, call centers, healthcare emergency triage, manufacturing production lines, airport security checkpoints, and supermarket cash registers.

In Kendall's notation, queueing systems are categorized using shorthand format $A/S/c$, where:

  • A (Arrival process): Distribution of time intervals between customer arrivals (e.g., $M$ for Markovian or Poisson exponential distribution).
  • S (Service process): Distribution of customer service duration (e.g., $M$ for memoryless exponential service times).
  • c (Servers): Number of parallel service channels operating simultaneously.

The Single-Server M/M/1 Model

The M/M/1 queue is the foundational model with Poisson arrivals at mean rate $\lambda$, exponential service durations at rate $\mu$, and a single server ($c = 1$).

Traffic Intensity and Stability Condition

The ratio between arrival rate and service rate is the traffic intensity or server utilization $\rho$:

$$\rho = \frac{\lambda}{\mu}$$

For a waiting line to achieve steady-state equilibrium without exploding towards infinity, the service capacity must exceed the arrival rate ($\rho < 1$, meaning $\mu > \lambda$). If $\rho \ge 1$, the arrival rate matches or overwhelms the server, causing infinite queue growth.

M/M/1 Key Performance Formulas

Under steady-state conditions ($\rho < 1$), the key system metrics are:

  • Probability system is idle ($P_0$): $P_0 = 1 - \rho$
  • Average number of customers in system ($L$): $L = \frac{\lambda}{\mu - \lambda} = \frac{\rho}{1 - \rho}$
  • Average number of customers in queue ($L_q$): $L_q = L - \rho = \frac{\lambda^2}{\mu(\mu - \lambda)} = \frac{\rho^2}{1 - \rho}$
  • Average total time in system ($W$): $W = \frac{1}{\mu - \lambda}$
  • Average waiting time in queue ($W_q$): $W_q = W - \frac{1}{\mu} = \frac{\rho}{\mu - \lambda}$

Little's Law

A central theorem in operations research and queueing theory is Little's Law, formulated by John Little in 1961. It states that the long-term average number of items in a stationary queueing system ($L$) equals the long-term average arrival rate ($\lambda$) multiplied by the average time an item spends in the system ($W$):

$$L = \lambda W, \quad L_q = \lambda W_q$$

Remarkably, Little's Law holds true regardless of the arrival distribution, service distribution, or queue discipline (FIFO, LIFO, or priority queueing).

The Multi-Server M/M/c Model (Erlang-C)

When $c$ identical servers operate in parallel, the total system service capacity expands to $c\mu$. The overall utilization is:

$$\rho = \frac{\lambda}{c\mu}$$

The probability $P_0$ that all servers are simultaneously idle is given by:

$$P_0 = \left[ \sum_{n=0}^{c-1} \frac{(\lambda / \mu)^n}{n!} + \frac{(\lambda / \mu)^c}{c!(1 - \rho)} \right]^{-1}$$

The probability that an arriving customer must wait in line before reaching an available server is given by the Erlang-C formula:

$$C(c, \lambda/\mu) = P(\text{Wait}) = \frac{\frac{(\lambda/\mu)^c}{c!(1 - \rho)}}{\sum_{n=0}^{c-1} \frac{(\lambda/\mu)^n}{n!} + \frac{(\lambda/\mu)^c}{c!(1 - \rho)}} = P_0 \frac{(\lambda/\mu)^c}{c!(1 - \rho)}$$

From Erlang-C, the average queue length and waiting time are:

$$L_q = \frac{P(\text{Wait}) \cdot \rho}{1 - \rho}, \quad W_q = \frac{L_q}{\lambda}, \quad W = W_q + \frac{1}{\mu}$$

Explore related statistical and probability calculators on OnlineMiniTools, including the Probability Calculator, Conditional Probability Calculator, Standard Deviation Calculator, and the Exponential Decay Calculator.

Frequently Asked Questions

What happens when traffic intensity ρ is greater than or equal to 1?

When traffic intensity $\rho \ge 1$ (utilization 100% or more), customer arrival rate equals or exceeds service capacity. Under this condition, no steady state exists; the line grows indefinitely over time, and expected waiting times become infinite. Real-world systems avoid this through load shedding, backpressure, or adding capacity.

What is the difference between M/M/1 and M/M/c models?

An M/M/1 model features a single service station handling all requests sequentially. An M/M/c model features $c$ identical parallel servers drawing from a single centralized queue (like bank customers waiting in one line for the next available teller). M/M/c reduces customer waiting times compared to separate single-server queues.

What is Little's Law and why is it important?

Little's Law ($L = \lambda W$) proves that the average number of items in a system equals the arrival rate multiplied by the average dwell time. It is important because it is mathematically universal: it requires no assumptions about arrival patterns or service distributions, making it an indispensable tool in software engineering, factory throughput, and queue design.

How does increasing servers from 1 to 2 affect queue waiting time?

Doubling the number of servers more than halves the average waiting time in queue. Because the second server absorbs stochastic arrival bursts when the first server is occupied, queue buildup drops exponentially, demonstrating the non-linear efficiency gains of pooling server resources.

What is the Erlang-C formula used for in call centers?

The Erlang-C formula calculates the probability that an incoming caller will be placed on hold in a queue rather than being answered immediately by an agent. Call center managers use Erlang-C to determine the optimal number of agents required to meet service level targets (such as answering 80% of calls within 20 seconds).