Fractional Agents and Staffing Interpolation

From WFM Labs
The Erlang service-level curve is defined only at integer agent counts. Interpolating between them gives a continuous requirement — here, 14.5 FTE meets the 80% target exactly, between 14 agents (76%) and 15 agents (84%).

Fractional Agents and Staffing Interpolation is the practice of converting the discrete output of staffing formulas into a continuous, non-integer staffing requirement, and of handling the resulting fraction correctly across rounding and aggregation. Erlang and related models return a service level only for a whole number of agents; the staffing level that would hit a target exactly almost always falls between two integers. Estimating that fractional requirement by interpolation, and deciding when to round and when to keep the fraction, is a small but consequential piece of capacity-planning arithmetic for workforce management.

Why staffing requirements are fractional

The Erlang C function maps a whole number of agents to a service level: 14 agents might deliver 76% in target and 15 agents 84%. No integer hits exactly 80%, so the true requirement to meet the target lies between 14 and 15. Treating the requirement as inherently integer throws away this information — it forces every interval to either over-deliver (15 agents, 84%) or miss (14 agents, 76%), with no way to express "14.5 agents' worth of capacity." Because service level is a smoothly increasing function of staffing even though the model only samples it at integers, the fractional requirement is well-defined; it simply has to be recovered by interpolation.[1]

Interpolation

The simplest method is linear interpolation between the two bracketing integer points: find the agent counts whose service levels straddle the target, and interpolate the fraction proportionally. In the example, 80% sits halfway between 76% (14 agents) and 84% (15 agents), giving 14.5 FTE. Linear interpolation is adequate for most planning because the service-level curve is locally close to straight over a one-agent span. Where more precision is wanted — in small queues, where the curve bends sharply — interpolating on a transformed scale, or evaluating a continuous approximation of the Erlang function, reduces the small error that linear interpolation introduces.[2]

The rounding decision

The fraction is only an intermediate result; what to do with it depends on the level at which the plan operates, and the most common errors come from rounding at the wrong level.

  • A single interval is integer. A given 30-minute interval cannot be staffed with half an agent, so to guarantee the target the requirement is rounded up — to 15 in the example. Rounding up has a real cost, and in small queues that cost is large relative to the requirement: this is the marginal value of one agent and the staffing cliff at work.[3]
  • Budgets and FTE plans are fractional. Across a day, week, or site, the requirement is an aggregate of many intervals, and that aggregate is legitimately fractional — a center may require 142.6 FTE. Rounding here would distort cost and hiring plans.
  • Round at the end, not at every step. Rounding each interval up and then summing systematically overstates the requirement, because every interval absorbs a separate fractional round-up. The disciplined sequence is to keep fractional requirements through the aggregation and convert to integer schedules only at the scheduling stage, where part-time shifts, overlaps, and shift-length choices deliver fractional coverage across the day.

Why it matters

Carrying the fraction correctly is an instance of avoiding the flaw of averages in reverse: just as planning on an average misstates a nonlinear requirement, rounding away fractions at the interval level and then aggregating misstates the budget. Fractional requirements are also what make scenario comparison and percentile staffing coherent — a half-agent difference between two plans is real information, not noise to be rounded off. The fraction is delivered in practice not by hiring half a person but through scheduling: staggered shifts, part-time coverage, and shrinkage-aware rostering convert a fractional interval requirement into an achievable integer roster.

Maturity Model Position

In the WFM Labs Maturity Model™, how an operation handles the fraction is a small but telling sign of staffing-math discipline.

  • Level 1–2 (Emerging / Foundational) — requirements are read as the nearest integer; interval requirements are rounded up and summed, quietly inflating budgets, or rounded down, quietly missing service.
  • Level 3 (Progressive) — fractional requirements are interpolated and carried through aggregation, with rounding reserved for the scheduling stage and the cost of interval-level round-up understood.
  • Level 4–5 (Advanced / Pioneering) — continuous staffing requirements feed budgeting, scenario comparison, and schedule optimization directly, and fractional coverage is engineered through shift design rather than absorbed as rounding error.

See also

References

  1. ↑ Koole, G. (2013). Call Center Optimization. MG Books. ISBN 978-90-820179-0-9.
  2. ↑ Gans, N., Koole, G., & Mandelbaum, A. (2003). "Telephone Call Centers: Tutorial, Review, and Research Prospects". Manufacturing & Service Operations Management, 5(2), 79–141.
  3. ↑ Cleveland, B. (2012). Call Center Management on Fast Forward. 4th ed. ICMI Press. ISBN 978-0-9854611-0-9.