Definition · The M/M/1/K chain, and a balking chainM/M/1/K: constant rates on states 0 to K, with no arrival out of state K. An arrival finding the system full is blocked and lost. The blocking probability is π_K and the admitted rate is λ(1 − π_K).
Balking: the same service but λₙ = λ/(n + 1), so an arrival who finds n already waiting joins with probability 1/(n + 1). The rates now depend on the state, which is the one thing a closed form cannot absorb.
The chain is built by the same function with the same two lists, stopped at K. Nothing in the machinery is aware that the truncation has changed meaning; what changes is what you are entitled to say about the answer. On an unbounded queue the finite chain's figures come with an error term; here they come with none.
Stability stops being a question
λ = 6, μ = 5, K = 5 ρ = 6/5, which is at least 1 and does not matter
weights 1, 6/5, 36/25, 216/125, 1296/625, 7776/3125
π = 3125/31031, 3750/31031, 4500/31031,
5400/31031, 6480/31031, 7776/31031
blocking π₅ = 7776/31031 = 25.0588%
sysdesign_core.mm1k(6, 5, 5) gives 7776/31031 and L = 93750/31031
the two routes agree EXACTLY, fraction for fraction
L 93750/31031 = 3.021172
admitted rate λ(1 − π₅) = 139530/31031 = 4.496471 of 6
W = L / admitted = 3125/4651 = 0.671899
L / λ = 15625/31031 = 0.503529 ✗
the ratio of the two: 1 − π₅ = 23255/31031 = 0.749412
The distribution rises with n rather than falling, because every ratio is 6/5. On an unbounded chain that is a queue with no stationary distribution at all; here it is a system that is usually nearly full, and the numbers are the exact answers for that system. Nothing about ρ needs checking before trusting them.
The two numbers people call W
W is L divided by a rate, and there are two candidates. Divide by the admitted rate and you get the mean time in the system of the customers who got in: 0.671899. Divide by λ and you get 0.503529, which is too small by a factor of exactly 1 − π_K, because it credits the system with serving customers it never admitted. The lab prints both, one green and one red, in the same row of the same table.
The error is always in the same direction and it grows with the blocking, so it is worst exactly where the system is most stressed and the answer matters most. At K = 1 on these rates the blocking is 54.545% and the wrong division is out by a factor of more than two; at K = 12 on a load of four fifths the blocking is 1.4543% and it is out by about one and a half per cent. There is no regime in which it is right and the system is interesting.
λ = 6, μ = 5: capacity against blocking, and the two divisions
K blocking admitted L W = L/admitted L/λ ✗
1 54.545% 2.72727 0.54545 0.20000 0.09091
2 39.560% 3.62637 1.12088 0.30909 0.18681
3 32.191% 4.06855 1.72578 0.42418 0.28763
4 27.865% 4.32810 2.35949 0.54516 0.39325
5 25.059% 4.49647 3.02117 0.67190 0.50353
6 23.119% 4.61288 3.70984 0.80423 0.61831
8 20.673% 4.75960 5.16358 1.08488 0.86060
more room buys throughput and costs waiting, in the same column pair
Read the table as a design trade and not as a limit. Every extra place raises the admitted rate and raises W at the same time, because the customers who used to be turned away are now waiting instead. Which of those you want is a question about the system and not about the queue; what the model supplies is both columns, exactly. “Bounded Queues and Loss” makes the same trade from the closed forms.
Example · The closed form agreeing exactly rather than nearlysysdesign_core.mm1k(6, 5, 5) gives blocking 7776/31031 and L = 93750/31031. The cut equations on the same rates give the same two fractions.
That is a stronger check than the one the unbounded models could offer. There the chain was finite and the formula was not, so the best available was agreement to within the truncation. Here both describe the same finite system, so the comparison is an equality of fractions and the page reports it as exact.
Example · Arrivals that balk, where no closed form appliesSwitch the chain to balking on the same rates: λₙ = 6/(n + 1), so the ratios are 6/5, 3/5, 2/5, 3/10, 6/25. The distribution now falls steeply: π runs from 15625/51799 down to 324/51799, the blocking is 0.6255%, and L is 1.192494 against the blocking chain's 3.021172.
mm1k does not apply here at all — it assumes a constant arrival rate — and the page says so rather than printing its number beside a chain it does not describe. The cut equations needed no change, because customers who decline to join are just a smaller λₙ.
That contrast is the closing argument for the whole of this half. Four named models and one homemade one have come out of a single equation applied between neighbouring states, and the one the textbooks have no formula for cost exactly as much work as the others.