Poisson & Point Processes

the M/M/1 queue

Think of a single bank teller, one checkout, one printer, with a waiting line in front. Customers (or jobs) show up at random, get served one at a time in order, and leave. The M/M/1 queue is the simplest fully-solvable model of this everyday situation. Its odd name is shorthand: the first M means arrivals are Markovian (a Poisson process), the second M means service times are Markovian (exponential, hence memoryless), and the 1 means a single server, with unlimited room to wait and first-come-first-served order.

It is a birth-death process in disguise: the 'count' is the number of customers in the system, a birth is an arrival (rate lambda), a death is a service completion (rate mu when anyone is present). The single most important quantity is the traffic intensity rho = lambda/mu, the ratio of how fast work arrives to how fast it is cleared. If rho < 1 the system is stable and settles into a steady state; if rho >= 1 work arrives at least as fast as it can be served and the line grows without bound. In steady state the number in the system follows a geometric law, P(n in system) = (1 - rho)*rho^n, from which clean formulas drop out: the average number in the system is rho/(1 - rho), and by Little's law the average time a customer spends (wait plus service) is 1/(mu - lambda).

M/M/1 is the gateway to queueing theory and a useful first cut for help desks, networks, and service counters. Its most important and humbling lesson is nonlinear congestion: as rho creeps toward 1, the average queue length and wait do not rise gently — they blow up toward infinity. A system running at 90 percent utilization (rho = 0.9) already has an average of 9 customers in it; push to 95 percent and it is 19. This is why 'just keep the server nearly always busy' is a trap. The honest caveats: real arrivals are not always Poisson and real service is rarely exactly exponential, so M/M/1 is a clean idealization — illuminating, but to be used with awareness of its assumptions.

Customers arrive at lambda = 9 per hour and a single clerk serves at mu = 10 per hour, so rho = 9/10 = 0.9. The system is stable (rho < 1) but busy: the average number present is rho/(1 - rho) = 0.9/0.1 = 9, and the average time in the system is 1/(mu - lambda) = 1/(10 - 9) = 1 hour. Bump arrivals to lambda = 9.5 and the average jumps to 19 — small change, big effect.

Stable only if rho = lambda/mu < 1; as rho approaches 1, average queue length blows up.

Congestion is nonlinear: average length rho/(1-rho) explodes as rho approaches 1, so high utilization is dangerous, not efficient. And M/M/1 assumes Poisson arrivals and exponential service — real systems often differ.

Also called
single-server Markovian queueM/M/1單伺服器排隊馬可夫排隊