Engset formula


In queueing theory, the Engset formula is used to determine the blocking probability of an M/M/c/c/N queue.
The formula is named after its developer, T. O. Engset.

Example application

Consider a fleet of vehicles and operators. Operators enter the system randomly to request the use of a vehicle.
If no vehicles are available, a requesting operator is "blocked".
The owner of the fleet would like to pick small so as to minimize costs, but large enough to ensure that the blocking probability is tolerable.

Formula

Let
Then, the probability of blocking is given by
By rearranging terms, one can rewrite the above formula as
where is the Gaussian Hypergeometric function.

Computation

There are several recursions that can be used to compute in a numerically stable manner.
Alternatively, any numerical package that supports the Hypergeometric function can be used.
Some examples are given below.
Python with SciPy

from scipy.special import hyp2f1
P = 1.0 / hyp2f1

MATLAB with the

P = 1 / hypergeom

Unknown source arrival rate

In practice, it is often the case that the source arrival rate is unknown while, the offered traffic per-source, is known.
In this case, one can substitute the relationship
between the source arrival rate and blocking probability into the Engset formula to arrive at the fixed point equation
where

Computation

While the above removes the unknown from the formula, it introduces an additional point of complexity: we can no longer compute the blocking probability directly, and must use an iterative method instead. While a fixed-point iteration is tempting, it has been shown that such an iteration is sometimes divergent when applied to. Alternatively, it is possible to use one of bisection or Newton's method, for which an is available.