[Math] Determine wait time in queue without arrival rate

queueing-theory

I'm interested in determining wait time in a queue.

For example, I'm at the grocery store, there's a single line leading to a set of 5 cashiers, 10 people are in front of me. I know on average it takes 1 minute to handle a customers groceries.

b = buffer

m = number of processes

p = units processed per time period

Intuitively this is as simple as:

$$\frac{b}{m}*p$$

or

$$\frac{10}{5}*1 = 2$$

Other forumulas I've seen for this are significantly more complicated, and require utilization, and therefore arrival rate.

a = unit arrival rate per time period

Utilization
$$\frac{p}{am}$$

Time in queue
$$time inqueue = \frac{ p }{m}*\frac{ utilization^\sqrt{2(m+1)-1} }{1-utilization}*\frac{CV^2_a+CV^2_p}{2}$$

Is the there a better model to calculate wait time (generalizable to multiple queues and one cashier for example) that does not require arrival rate?

Best Answer

With your notations, if you have $m$ cashiers who are in the process of checking customers out at $\alpha_1>...>\alpha_m \in [0,1]$ (the $\alpha_i$ represent the % of completion), then you your waiting time will be $Total=Tq+T(1-\alpha_r)$ with $b=qm+r$ (euclidean division)

with $T$ the time to check-out one client, $b$ the length of the queue and $m$ the number of cashier.

Explanation:

  • You know from the start which cashier is going to handle you if they all work at the same speed and all the clients have the same number of groceries. It's going to be $\alpha_r$, as everyone will have handled $q$ clients by the time you get there.

  • you will have to wait $(1-\alpha_r)p$ to finish up the current client until it can go on a cycle of $q$ clients, taking $qp$ of your time before it is your turn.

Related Question