Dimensioning Large Call Centers IV: Asymptotically Optimal Staffing under a Waiting-Cost ConstraintResearch Paper
Motivation
A call center has to decide how many agents to staff. In practice the decision is often posed as a service-level constraint rather than a cost trade-off: use the fewest agents for which the expected waiting cost, or the fraction of customers who wait, stays below a target. Borst, Mandelbaum and Reiman (CWI Report PNA-R0015, 2000; journal version in Operations Research 52(1), 2004, doi:10.1287/opre.1030.0081) treat this constraint problem in Section 8 of their paper, alongside the cost-minimization problem of Sections 5–7, and show that a simple square-root staffing rule solves it asymptotically as the arrival rate grows.
The rule matters because it is what practitioners use. Under the classical Erlang-C model, the exact optimum requires evaluating the Erlang-C formula over many staffing levels. The asymptotic rule replaces this with a single equation in the Halfin–Whitt function : when the target is a delay probability (Example 8.5 of the paper), it reduces to staffing servers.
Timeline. Erlang's formula for the M/M/N delay probability dates from 1917. Halfin and Whitt (Operations Research 29, 1981) identified the limit of the delay probability under square-root staffing with integer . Jagers and Van Doorn (Operations Research Letters 5, 1986; SIAM Review 33, 1991) studied the continued Erlang loss and delay functions at non-integer numbers of servers, including their convexity, which is what lets the staffing problem be relaxed to a continuous one. Borst, Mandelbaum and Reiman (2000/2004) used these to prove asymptotic optimality of square-root rules for both the cost and the constraint formulations.
Setting
Customers arrive at rate to identical servers, each with service rate ; is fixed while . Stability requires . A customer who waits time units costs , where , is strictly increasing on and for all .
The Erlang-C probability of waiting is
and the conditional waiting cost is . The waiting cost per unit time with servers is
Given a target , the optimal staffing level is the least integer with ; call it .
In the continuous parametrization , define , the continuous Erlang-C function with , and . The Halfin–Whitt function is with the standard normal hazard rate. A staffing function is judged by the rounding gap
It is asymptotically optimal when as .
Formalization targets
Goal: Theorem 8.2 (rationalized regime)
Suppose that for some and , , i.e. the waiting cost is comparable to the target. Let solve . Then
Supporting milestones
- Lemma C.1: is strictly convex and decreasing on .
- Section 3: when is an integer.
- Lemma 8.1: if solves and , then .
- Lemma B.1: is strictly convex and decreasing on .
- Eq. (17): implies and .
- Lemma 4.1 (Halfin–Whitt): for bounded , ; with , .
Further target: Theorem 8.6 (efficiency-driven regime)
If for every and solves , then .
Significance
The theorem certifies the staffing rule used in workforce-management practice: the excess staffing is determined by one scalar equation involving the Gaussian function and the scaled waiting cost, and rounding the resulting staffing level misses the constraint by a vanishing fraction of the target. Lemma 8.1 is a reusable framework: any approximation that is asymptotically exact at the proposed staffing level yields an asymptotically optimal rule, and the paper instantiates it in three regimes (Theorems 8.2, 8.6, 8.9).
The results are proved on paper. To the best of current knowledge none of them, nor the Halfin–Whitt limit for the continuous Erlang-C extension, has a machine-checked proof. A formalization would produce the first verified heavy-traffic limit of the Erlang-C delay probability, a verified continuous Erlang-C extension with its integer identity, and the convexity facts about and that many staffing papers cite without proof.
Difficulty
The obvious argument is to quote Halfin and Whitt: the delay probability converges to under square-root staffing, so can replace the Erlang-C formula. That limit, as published in 1981, is about integer server counts along sequences with a convergent excess-staffing parameter. The paper needs it for the continuous function at non-integer server counts and for staffing functions that are merely bounded, and it also needs the identity at integers and the monotonicity of in , both cited from Jagers and Van Doorn rather than proved. None of these is in Mathlib. A second obstacle is that the staffing function is defined only implicitly by an equation involving , which depends on the arbitrary cost functions ; nothing a priori prevents it from escaping to infinity, outside the range where the Halfin–Whitt approximation applies. Finally, compares integer-level costs given by the Erlang-C formula with a continuous approximation, so both representations of the delay probability are in play at once.
Formalization scope
The queue itself is not formalized: there is no Markov chain and no waiting-time distribution. Every statement is about the closed-form waiting cost with given by the Erlang-C formula, exactly as the paper's analysis is. Conventions, all in the namespace DimCallCenters.Constraint:
lam : ℝis the arrival rate (λ is a Lean keyword); limits areFilter.atTopinlam, with μ fixed. Objects indexed by λ (, , ) are functions oflamconstrained only forlam > 0.WaitModelpackages μ > 0 and with , strict monotonicity on , and integrability of on for θ > 0 (the paper's finiteness of ; integrability is required because Lean's integral of a non-integrable function is 0).- is a function
Nstar : ℝ → ℕgiven with its two defining properties (feasible; below every feasible integer level above λ/μ). and are any positive solutions of their equations; existence and uniqueness are not hypotheses. - In the round-down term is dropped when (an unstable level where is undefined). This can only enlarge .
- Asymptotic relations are limits of ratios. and are stated with
∃ᶠ("frequently"), as eventual boundedness. - is defined through explicit , , ; the formula also gives , used in Lemma 4.1(2) at .
- No hypothesis is added: it is not needed for the statements here.
A trivializing formalization is ruled out: keeps all of the paper's terms and is never replaced by a smaller quantity, and the hypotheses are jointly satisfiable — with satisfies (33) for every with .
Infrastructure needed: the continuous Erlang-C function and its integer identity; the Halfin–Whitt limit (a Gaussian approximation of Poisson/gamma tails); calculus facts about the normal hazard rate. These are reusable beyond this mission, notably by the sibling missions on the cost-minimization problem. Example 8.5 (delay-probability target with ) motivates the rule but violates the strict monotonicity of , so it is not an instance of the theorem as stated. Contributions on any milestone, and on Theorem 8.9 (quality-driven regime, which needs Lemma 4.2), are welcome.
Selected references
- S. Borst, A. Mandelbaum, M. I. Reiman, Dimensioning Large Call Centers, CWI Report PNA-R0015, 2000; Operations Research 52(1):17–34, 2004. https://doi.org/10.1287/opre.1030.0081
- S. Halfin, W. Whitt, Heavy-Traffic Limits for Queues with Many Exponential Servers, Operations Research 29(3):567–588, 1981. https://doi.org/10.1287/opre.29.3.567
- A. A. Jagers, E. A. Van Doorn, On the Continued Erlang Loss Function, Operations Research Letters 5:43–46, 1986.
- A. A. Jagers, E. A. Van Doorn, Convexity of Functions which are Generalizations of the Erlang Loss Function and the Erlang Delay Function, SIAM Review 33:281–282, 1991.