Palm's Theorem and PASTA

From WFM Labs

PASTAPoisson Arrivals See Time Averages — is a fundamental theorem in queueing theory proved by Wolff (1982), building on earlier work by Palm (1943). It states that if arrivals to a system follow a Poisson process, then arriving customers observe the system in the same statistical state as a random observer would at an arbitrary point in time. In workforce management terms: a random inbound caller experiences the time-average queue conditions, not the peak, not the trough, but the long-run proportion of time the system spends in each state.

Overview

PASTA is the theorem that makes Erlang formulas work. When Erlang C computes that 80% of calls will be answered within 20 seconds, it is relying on PASTA: the fraction of callers who wait less than 20 seconds equals the fraction of time the system state is such that an arriving call would wait less than 20 seconds.

Without PASTA, the probability a caller experiences a given state could be systematically different from the time-average probability. Imagine a system where arrivals cluster during busy periods — those callers would see worse conditions than the time average suggests. PASTA guarantees this does not happen for Poisson arrivals, because Poisson arrivals are unbiased samplers of system state.

This is not merely an academic point. It determines whether service level calculations are valid, and it identifies exactly when they are not.

Mathematical Foundation

Formal Statement

Let {N(t), t ≥ 0} be a Poisson process with rate λ, and let {X(t), t ≥ 0} be the state of a queueing system. Let:

pj=limt1t0t𝟏X(u)=jdu

be the time-average probability that the system is in state j, and let:

aj=limn1nk=1n𝟏X(Tk)=j

be the proportion of Poisson arrivals that find the system in state j (where Tk is the k-th arrival epoch and Tk denotes the instant just before arrival).

PASTA states:

aj=pjfor all states j

Arriving Poisson customers see the same state distribution as the time average.

Why It Works: The Memoryless Property

The Poisson process is memoryless: the next arrival time is independent of the system's history. The system's state at any moment is the result of all prior arrivals and services — but the next Poisson arrival occurs at a time that is independent of this history (by the lack-of-anticipation property). Therefore, the next arrival is equally likely to occur at any point in time, effectively sampling the system state uniformly.

Contrast with a deterministic arrival process (arrivals every 60 seconds). The system state at arrival times is highly correlated with the arrival pattern — the system has had exactly 60 seconds to drain since the last arrival. Deterministic arrivals do not see time averages.

Formal Conditions

PASTA requires:

  1. Poisson arrivals — the arrival process must be Poisson (or, more precisely, it must lack anticipation with respect to the system state process).
  2. Independence — the arrival process must be independent of the system state process, except through the causal effect of arrivals on the system.

Condition 2 is subtle. It fails when:

  • Arrivals are influenced by the current queue state (e.g., balking based on announced wait time)
  • The arrival rate is modulated by the system state (e.g., callback scheduling based on agent availability)
  • Arrivals and service times are correlated (e.g., callers with complex issues call at specific times)

Connection to Palm's Work

Conny Palm (1943) developed the mathematical framework for analyzing queueing systems from the perspective of arriving customers (Palm calculus). Palm probabilities describe the system as seen by an arriving customer, while time-average probabilities describe the system as seen by a clock. PASTA establishes that for Poisson arrivals, these two perspectives coincide.

Palm's broader framework handles non-Poisson arrivals as well, where the two perspectives diverge. The divergence is characterized by Palm's inversion formula, which relates the arrival-average distribution to the time-average distribution via the arrival rate.

WFM Applications

Service Level Interpretation

When the WFM system reports "Service Level = 80% at 20 seconds," it means: 80% of the time, the system state is such that an arriving call would be answered within 20 seconds. PASTA ensures this equals: 80% of callers are answered within 20 seconds.

This equivalence breaks down if arrivals are not Poisson. For a scheduled callback queue where arrivals cluster at the top of each hour:

  • The time-average queue length might be moderate (low during the hour, high at the top).
  • But callers arrive during the high-queue period — they see worse conditions than the time average.
  • The service level experienced by callers is worse than the time-average service level.

Why Random Callers Get the "Average" Experience

Consider a contact center that is at service level 80/20 on a time-average basis. An individual caller arrives at a random time. PASTA tells us:

  • With 80% probability, the caller arrives when the system can answer within 20 seconds.
  • With 20% probability, the caller arrives when they will wait more than 20 seconds.

There is no systematic bias — the caller is not more likely to arrive during a busy period than a slow one. This seems counterintuitive (there are more callers during busy periods), but PASTA accounts for this: the Poisson process generates arrivals in proportion to time, not in proportion to system load.

PASTA and Interval-Level Planning

WFM planning applies Erlang formulas interval by interval, treating each interval as an independent steady-state system. PASTA applies within each interval if:

  1. Arrivals within the interval are Poisson (see Poisson Process in Contact Centers)
  2. The system reaches approximate steady state within the interval

Condition 2 is the weaker one. At the start of a new interval, the system state reflects the previous interval's conditions. If the previous interval was badly understaffed, the queue backlog carries into the current interval, and the system takes time to reach its new steady state. For 30-minute intervals with moderate traffic, the transient typically decays within 5–10 minutes. For 15-minute intervals at high traffic intensity, transient effects can persist for most of the interval.

Practical implication: Interval-level SL calculations from Erlang formulas assume PASTA within each interval. They are most accurate for longer intervals (30 min) and moderate occupancy (ρ < 0.90). At very high occupancy with short intervals, simulation captures transient effects that steady-state formulas miss.

Worked Example: PASTA Failure in Callback Queues

Scenario: A contact center uses virtual hold. 200 callers per hour opt for callback. Callbacks are placed when agents become available — clustered during low-demand periods.

The callback "arrivals" to agents are not Poisson. They are generated by the system itself, concentrated in low-occupancy periods. From the agent's perspective:

  • Time-average occupancy: 85%
  • Occupancy at callback delivery times: ~70% (callbacks arrive when agents are free)
  • Occupancy at inbound arrival times: ~88% (inbound calls are Poisson, subject to PASTA)

An inbound caller and a callback customer experience different system states. The service level for inbound callers is well-predicted by Erlang formulas (PASTA holds). The service level for callback customers requires separate modeling (PASTA does not hold — callbacks arrive at systematically favorable times).

When PASTA Fails

Scenario Why PASTA Fails Practical Impact
Announced wait time with balking Arrivals depend on queue state Callers who do arrive are a biased sample (those willing to wait). Actual SL for arrivals may be better than time-average SL.
Scheduled callbacks Callbacks scheduled during low-load Callback customers experience better-than-average conditions. Reported blended SL overstates inbound experience.
Batched digital arrivals Tickets released in batches (e.g., hourly email pulls) Agents see bursts of work. Time-average queue is moderate but arrival-time queue is systematically high.
Outbound blending Outbound calls placed during idle time Outbound arrivals see artificially low occupancy. Inbound callers experience slightly higher occupancy than time average.
Small population (Engset) Arrivals depend on how many are already in system Arrival rate drops as system gets busier. Arrivals see slightly better conditions than time average.

Common Misconceptions

1. "PASTA means all callers get the same experience."

PASTA says callers sample the state distribution uniformly — but the state distribution itself has high variance. Some callers get instant answers; others wait minutes. PASTA guarantees the proportion experiencing each outcome matches the time average, not that outcomes are uniform. See Waiting Time Distributions.

2. "PASTA is just common sense."

It seems intuitive that random arrivals see average conditions. But it is not true for non-Poisson arrivals. Regular (deterministic) arrivals see systematically better conditions than the time average (the system drains between arrivals). Bursty arrivals see systematically worse. PASTA is a theorem, not a tautology.

3. "PASTA means I can measure SL at any point in time and that's what callers see."

PASTA connects time averages (long-run proportions) to arrival averages (caller experience). A single snapshot is not a time average. SL measured over a full interval is the relevant time average; SL at a single instant is a random sample from the state process.

4. "If PASTA doesn't hold exactly, Erlang formulas are wrong."

PASTA can hold approximately even when arrivals are only approximately Poisson. Moderate departures from Poisson (slight overdispersion, minor correlations) cause small PASTA violations that translate to small SL prediction errors. The threshold for concern is the same as for the Poisson assumption itself: when arrivals are strongly non-Poisson (scheduled, feedback-driven, batched), PASTA violations are significant.

Maturity Model Position

  • Level 1 — Initial. PASTA unknown. Service level numbers accepted at face value without understanding what they measure.
  • Level 2 — Foundational. Practitioners understand that SL represents the proportion of callers answered within threshold. PASTA not explicitly named but implicitly relied upon through Erlang formulas.
  • Level 3 — Progressive. PASTA understood conceptually. Non-Poisson streams (callbacks, digital batches) recognized as requiring separate treatment. SL reported separately for inbound vs. callback vs. digital.
  • Level 4 — Advanced. PASTA violations identified and quantified. Simulation used for streams where PASTA does not hold. Blended SL reporting distinguishes arrival-average SL from time-average SL.
  • Level 5 — Pioneering. Palm calculus applied explicitly in advanced capacity models. Customer-segment-specific SL calculations account for arrival patterns. Real-time service level predictions incorporate arrival-process diagnostics.

See Also

References

  • Wolff, R.W. (1982). "Poisson Arrivals See Time Averages." Operations Research 30(2), 223–231.
  • Palm, C. (1943). "Intensitätsschwankungen im Fernsprechverkehr." Ericsson Technics 44, 1–189.
  • Gross, D. & Harris, C.M. (2008). Fundamentals of Queueing Theory, 4th ed. Wiley. Section 1.6.
  • El-Taha, M. & Stidham, S. (1999). Sample-Path Analysis of Queueing Systems. Springer. Chapter 4.
  • Gans, N., Koole, G. & Mandelbaum, A. (2003). "Telephone Call Centers: Tutorial, Review, and Research Prospects." Manufacturing & Service Operations Management 5(2), 79–141.
  • Heyman, D.P. & Stidham, S. (1980). "The Relation Between Customer and Time Averages in Queues." Operations Research 28(4), 983–994.