Parametric Forecasting and StochasticProgramming Models for Call-Center Workforce
SchedulingWhen OM meets Statistics ...
Haipeng Shen
Statistics & Operations Research Innovation & Information ManagementUniversity of North Carolina School of Business
University of Hong Kong
Partially supported by NSF, NIH, The Xerox Foundation, Stanley Ho Alumni Challenge Fund
June 12, 2015Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 1 / 39
Research ProgramsStatistical Methodology - high dimensional inference, dimensionreduction
I US NSF Grant DMS-0606577, DMS-1106912, DMS-1407655
Business Analytics - call centers, mobile marketing
I US NSF Grant CMMI-0800575, The Xerox Foundation UAC Award, StanleyHo Challenge Fund
Healthcare Analytics - neurology, cardiology
I NIH Challenge Grant 1 RC1 DA029425-01, NSF of ChinaI In collaboration with Beijing Tiantan Hospital
F China National Stroke Registry (CNSR I), Golden Bridge (CNSR II),CNSR III (recruiting)
F Big data - network of hospitals, digital view of patient visit/healthcareenvironment
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 2 / 39
Call center industry
Economy - dominated by service sector
Call center: major communication channelCall-Center Environment: Service Network
10
Other service systems: healthcare delivery systems, ...
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 3 / 39
Queueing model for a single call center
Tutorial, background...
Queueing model associated with asingle location:
retrials
arrivals
abandon
queue
busy
lost calls
retrials
lost calls returns
N = 3 CSR-servers
5 = (k – N) places in queue
w = 5 work stations
k = 8 trunk lines (not visible)
Call-center hardware Queueing model parameters
4
Gans, Koole and Mandelbaum (2003)
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 4 / 39
The Erlang-C Model: M/M/N +∞Review, basic model...
Performance estimate uses M/M/N/∞ model:
x xx
xxx
x• no blocking, abandonment, or retrials
• fixed arrival and service rates
• exponential interarrival and service times
• measures of stationary performance
10
No blocking, No abandonment, No retrials
Fixed arrival rate λi and service rate µi for time period i
Exponential inter-arrival and service times
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 5 / 39
Call-by-call data enable investigating ...
Are the Erlang-C assumptions valid in real call centers?
Poisson arrivals?
Exponential service durations?
No abandonment?
Brown, Gans, Mandelbaum, Sakov, Shen, Zeltyn and Zhao (2005)
A small Israeli banking call center
580 citations (Google Scholar)
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 6 / 39
Poisson arrivals?Consider short time intervals such as quarter hours
Yes, but rates are inhomogeneous and random
Hence, a doubly stochastic Poisson process, or a Cox process
Kim and Whitt (13, 14a, 14b, 15, 15+) - new tests, callcenters/hospitals
Dependence among the rates:
Interday (day-to-day) dependence: today/tomorrow, weekly, . . .
Intraday (within-day) dependence: morning/afternoon/night, . . .
Inter call type dependence: feed off, cross training, . . .
Such dependence is essential for interday rate forecasting andintraday updating. (more later)
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 7 / 39
Exponential service times?Beyond Averages (+ The Human Factor)
Histogram of Service Times in an Israeli Call Center
January-October November-December
Beyond Data Averages Short Service Times
AVG: 200 STD: 249
AVG: 185 STD: 238
7.2 % ? Jan – Oct:
Log-Normal AVG: 200 STD: 249
Nov – Dec:
27
Beyond Data Averages Short Service Times
AVG: 200 STD: 249
AVG: 185 STD: 238
7.2 % ? Jan – Oct:
Log-Normal AVG: 200 STD: 249
Nov – Dec:
27
I 7.2% Short-Services: Agents’ “Abandon" (improve bonus, rest)I Distributions, not only Averages, must be measured (seconds).I Lognormal service times prevalent in call centers (Why?)
8
Quick Hang: Agents “Abandon" (incentive, rest)Distributions, not just Averages, must be measured
I Service times are Lognormal
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 8 / 39
How about abandonment? Patience?
0 100 200 300 400
0.00
10.
002
0.00
30.
004
0.00
50.
006
Regular CustomersPriority Customers
Hazard Rate: Empirical (Im)Patience
x-axis: waiting time in queue
y-axis: instantaneous probability of abandonment, (or hazard rate)
Probability of abandonment peaks at times of announcement
VIP are more patient ???
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 9 / 39
Time-varying perspective ...
3 30 60 90 120150180210240270300
79
1113
1517
190
2
4
6
8x 10
−3
Waiting Time (Seconds)
ADMM Hazard Surface for Customer Patience
Time−of−Day (Hours)
Haz
ard
Rat
e
Li, Huang, and Shen (2015)Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 10 / 39
“Standard” model for call center capacity planning
1 Forecast offered load (e.g., by 1/2-hour)
{Rt = λt/µt : t = 1, . . . ,T}
where λt : arrival rate, µt : service rate.
2 Find minimum numbers of agents to satisfy QoS constraint
st = min{s | P{Abandonment} ≤ α}
3 Find minimum cost assignment of agents to schedules
min{cy |Ay ≥ s; y ≥ 0; y integer}
where A: 0-1 schedule matrix, y : # of agents for each schedule, c: schedule cost.
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 11 / 39
Outline
1 Arrival Rate Uncertainty
2 Forecasting Model and Stochastic Scheduling
3 Forecast Updating and Scheduling Recourse
4 Real Data Application
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 12 / 39
Outline
1 Arrival Rate Uncertainty
2 Forecasting Model and Stochastic Scheduling
3 Forecast Updating and Scheduling Recourse
4 Real Data Application
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 13 / 39
The arrival rate is not known with certainty'
&
$
%
Figure 1: Plot of # of Arrivals during 2 12 -min intervals in 2002
Time
# A
rriv
als
10 15 20
010
020
030
040
0
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
MondayTuesdayWednesdayThursdayFridaySaturdaySunday
3
Bank with a network of 4 call centers in Northeast US
300K calls/day, 60K/day seeking agents, 1K agents in peak hours
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 13 / 39
Two arrival streams
Introduction Single Queue Multiple Queues
Multiple Arrival Streams
Israel telecom company – Majority arrival streams: Privatecustomers(30%), Business customers(18%)
Two queues are strongly correlated.
10 15 20
510
1520
Private
Time of a day
Volum
e
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
SunMonTueWedThu
10 15 20
05
1015
Business
Time of a day
Volum
e
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
SunMonTueWedThu
850 900 950 1000 1050
560
580
600
620
640
660
680
Scatter Plot of Daily Totals
Private
Bus
ines
s
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
Han Ye Call Center: Forecast and Management 9 / 16Two major arrival streams: Private (30%), Business (18%)
215 days (Mon-Thu) between 06/19/2004 and 04/14/2005
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 14 / 39
Single-stream arrival rate uncertainty
OM, operational performanceI Whitt (99), Chen and Henderson (01), Jongbloed and Koole (01),
Harrison and Zeevi (05), Whitt (06), Bassamboo, Harrison andZeevi (05, 06, 09), Steckley et al. (09), Robbins et al. (10), Robbinsand Harrison (10), Bertsimas and Doan (10), Mehrotra et al. (10),Zan et al. (2013), Ding and Koole (2014), etc.
Statistics, forecasting performanceI Avramidis et al. (04), Brown et al. (05), Weinberg et al. (07), Taylor
(07), Shen and Huang (08a, 08b), Aldor-Noiman et al. (09),Matteson et al. (11), Taylor (12), Oreshkin et al. (2014), etc.
OM + Statistics, both operational and forecastingI Gans, Shen, Zhou, Genesys (15): forecasting/updating +
stochastic programming with recourse
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 15 / 39
Our goal
Develop distributional forecasts for arrival ratesI update given additional information
Perform stochastic scheduling using the distributional forecastsI recourse actions after forecast updating
I adjust staffing assignmentsF send agents home early ... → reduce costF call in part-time agents ... → better achieve QoS measure
Test the approach in large-scale real systemsI computational speed
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 16 / 39
Outline
1 Arrival Rate Uncertainty
2 Forecasting Model and Stochastic Scheduling
3 Forecast Updating and Scheduling Recourse
4 Real Data Application
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 17 / 39
Forecasting Model
Arrival counts: Nd ,t ∼ Poisson(Λd ,t )
I Xd,t ≡√
Nd,t + 1/4 ∼ N(√
Λd,t , σ20)
I days: d = 1,2, . . . ,D
I intervals: t = 1,2, . . . ,T
I day-of-week index: wd
The Model:Xd ,t =
√Λd ,t + εd ,t , εd ,t
i.i.d.∼ N(0, σ20),√
Λd ,t ≡ Θd ,t = ud fwd ,t , fwd ,t ≥ 0,T∑
t=1fwd ,t = 1,
ud − αwd = b (ud−1 − αwd−1) + zd , zdi.i.d.∼ N(0, σ2)
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 17 / 39
Distributional arrival-rate forecasts
500
1000
1500
Time
Rat
e
7 9 11 13 15 17 19 21 23
actual volumeforecast
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 18 / 39
Stochastic program for scheduling agentsDistribution of the Λt ’s determined from the forecast, t = 1, . . . ,T
α∗: upper bound on expected abandonment rate
y : # of agents on each of the possible schedules, with cost c
aty : # of agents working in period t
With distributions for Λt ’s, solve the stochastic program
min {cy}s.t.
T∑t=1
EΛt [g(Λt ,aty)] ≤ α∗T∑
t=1
E [Λt ]
y ≥ 0; y integer,
where g(Λt ,aty) is abandonment count in period t
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 19 / 39
Gaussian quadrature vs. sampling: daily staffing costEuropean banking center, 176 weekdays in 2007, last 76 days forout-of-sample testingT = 26 half-hour intervalsConsider 1, 4, 9, 16, 25, 49, 100, 225, 400 scenarios
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 20 / 39
Gaussian quadrature vs. sampling: abandonment rate
Target abandonment rate: α = 3%
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 21 / 39
Outline
1 Arrival Rate Uncertainty
2 Forecasting Model and Stochastic Scheduling
3 Forecast Updating and Scheduling Recourse
4 Real Data Application
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 22 / 39
Night-before forecasts can sometimes be off
500
1000
1500
Time
Rat
e
7 9 11 13 15 17 19 21 23
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 22 / 39
Setup for intra-day forecast updates
History: Day 1 to Day D
Forecasting window: h day ahead
Forecasting distribution of uD,D+h:
N(µD,D+h, σ2D,D+h)
Perform update after interval T0 on Day D + h
Additional data observed:
I whole day data - xD+1, . . . ,xD+h−1
I early part of day D + h, t = 1, . . . ,T0, - xD+he
Derive an updated distribution for uD,D+h
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 23 / 39
Intra-day forecast updates
A sequence of h one-day-ahead forecast updates + AR(1) innovation
Start with uD,D+1
With xD+1, obtain uD+1,D+1
Given AR(1) innovation, obtain uD+1,D+2
With xD+2, obtain uD+2,D+2
. . .
Given AR(1) innovation, obtain uD+h−1,D+h
With xD+he , obtain uD+he,D+h
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 24 / 39
A key result
For day d , ud−1,d ∼ N(µd−1,d , σ2d−1,d )
We observe {Xd ,t |t = 1, . . . ,T0} on day d
Define
Ad ,T0 =
T0∑t=1
fwd ,tXd ,t and νd ,T0 =
T0∑t=1
f 2wd ,t
Then, the updated distribution has mean and variance
µdT0 ,d =σ2
d−1,d Ad ,T0 + σ20 µd−1,d
σ2d−1,dνd ,T0 + σ2
0,
σ2dT0 ,d =
σ20 σ
2d−1,d
σ2d−1,dνd ,T0 + σ2
0
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 25 / 39
Forecast updates significantly reduce error anduncertainty
500
1000
1500
Time
Rat
e
7 9 11 13 15 17 19 21 23
actual volumeoriginal forecast12:00PM update
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 26 / 39
Stochastic programming with recourse - Stage 1
Solve the same stochastic program
min {cy}s.t.
T∑t=1
EΛt [g(Λt ,aty)] ≤ α∗T∑
t=1
E [Λt ] t = 1, . . . ,T
y ≥ 0; y integer
Calculate
αl =
∑Tt=T0+1 EΛt [g(Λt ,aty)]∑T
t=T0+1 E [Λt ],
expected abandonment rate over late part of the planning horizon
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 27 / 39
Stochastic programming with recourse - Stage 2
Updated forecast Λ∗t
Adjust staffing assignmentsI update original staffing, y , to updated vector zI cost of change, d(y − z)
Solve stochastic program with recourse
min {cy + d(y − z)}s.t.
T∑t=T0+1
EΛ∗t
[g(Λ∗t ,atz)] ≤ αl
T∑t=T0+1
E [Λ∗t ]
z ≥ 0; z integer
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 28 / 39
Recourse program that uses 2-stage forecast
Idea: account for recourse actions in initial schedule
Example:I it costs little to send agents home after T0
I it costs a lot to increase staffing after T0
I then, should initially staff high and send people home, if necessary
In two-stage program:I 1st-stage periods as before: initial staffing y fixed across scenariosI 2nd-stage periods more complex: for each initial scenario,
2nd-stage action z varies
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 29 / 39
Recourse program that uses 2-stage forecast
Initial staffing vector y , and random update vector z
Stochastic program with recourse
min{
cy + EΛ1,...,ΛT0[d(y − z)]
}s.t.T0∑
t=1
EΛt [g(Λt ,aty)]
+T∑
t=T0+1
EΛ1,...,ΛT0
[EΛt |Λ1,...,ΛT0
[g(Λt ,atz)]]≤ α∗
T∑t=1
E [Λt ]
y , z ≥ 0; y , z integer
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 30 / 39
Outline
1 Arrival Rate Uncertainty
2 Forecasting Model and Stochastic Scheduling
3 Forecast Updating and Scheduling Recourse
4 Real Data Application
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 31 / 39
We test nine scheduling schemes
Three schemes with no updatingI 1 scenario = SP1I 4 scenarios = SP4I 100 scenarios = SP100
Three schemes with an afternoon update of the original scheduleI 1 scenario = UP1I 4 scenarios = UP4I 100 scenarios = UP100
Three schemes that update an original schedule with recourseI 1 scenario = RP1I 4 scenarios = RP4I 100 scenarios = RP100
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 31 / 39
Testing the value of the scheduling schemes
1 Preliminary forecast using previous n days of data
2 Solve 6 scheduling problems based on initial forecastI SP1, SP4, and SP100I 1st phase of RP1, RP4, and RP100
3 Update forecast based on 1st part of day
4 Update solutions based on revised forecastI SP1⇒ UP1, SP4⇒ UP4, and SP100⇒ UP100I 2nd phase of RP1, RP4, and RP100
5 Simulate using schedules and actual arrival counts
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 32 / 39
1st set of empirical testsA network of four large retail-banking call centers in US
I service rate µ = 14.6 calls/30-min, abandonment rate θ = 3.93calls/30-min
I 8am-9pm (13 hours) a day, 5 days a week, schedule updates at11am
Shift structure and costsI 262 feasible daily schedules (7 and 9-hour shifts, with breaks)
F cost of 1 per agent per 1/2-hour intervalI 4,973 potential recourse actions (with 1/2-hour costs)
F send home (-0.75), overtime (1.5), call in (2.0)
Arrival data, forecasts, and QoS targetI last 110 days as testing setI forecasts based on previous (rolling) 100 days of dataI target expected abandonment rate of 3% across scenarios
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 33 / 39
Updating systematically lowers cost per call
For abandonment rate: point forecast leads to upward biasFor cost: pair-wise comparison suggests significant reduction
I UP100→ SP100: average cost 2.9% reductionI RP100→ SP100: average cost 3.7% reduction
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 34 / 39
2nd set of empirical tests
A European retail bank’s call centerI call volume about 15% of the US bankI other parameters remain the same
F schedules, costsF service rate, abandonment rate
Arrival data, forecasts, and QoS targetI last 76 days as testing setI forecasts based on previous (rolling) 100 days of dataI target expected abandonment rate of 3% across scenarios
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 35 / 39
Major improvement on abandonment rate
For abandonment rate: point forecast leads to large upward biasFor cost: pair-wise comparison suggests significant reduction
I UP100→ SP100: average cost 2.1% reductionI RP100→ SP100: average cost 4.1% reduction
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 36 / 39
Different messages learned ...
US center:I arrival rate uncertainty has less impactI updating/recourse makes more difference
European center: opposite holds
Explanation: scale of uncertainty
Minimum 25% Median Mean 75% MaximumEur 0.1141 0.1235 0.1313 0.1338 0.1407 0.1663US 0.0284 0.0321 0.0333 0.0333 0.0346 0.0391
Table : Distribution of Daily Forecast-Dist CVs over Out-of-Sample Tests
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 37 / 39
Take Home Messages
Fruitful marriage: OM + Statistics
Distributional forecasts necessary
Model the right dependence
I Inter-day, intra-day, inter-stream, additional covariates, ...
Future workI Theoretical properties of the data-driven math programsI Scheduling (with recourse) for multiple arrival streamsI Poisson-Gamma formulation on the original scaleI Healthcare settings
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 38 / 39
Key References
L. D. Brown, N. Gans, A. Mandelbaum, A. Sakov, H. Shen, S. Zeltyn, L.H. Zhao (2005), Statistical Analysis of a Telephone Call Center: AQueueing-Science Perspective, JASA, 100, 36-50.
H. Shen, J. Z. Huang (2008), Interday Forecasting and IntradayUpdating of Call Center Arrivals, MSOM, 10, 391-410.
R. Ibrahim, P. L’Ecuyer (2013), Forecasting Call Center Arrivals:Fixed-Effects, Mixed-Effects, and Bivariate Models, MSOM, 15, 72-85.
N. Gans, H. Shen, Y. Zhou, Genesys (2015), Parametric Forecasting
and Stochastic Programming Models for Call-Center Workforce
Scheduling, MSOM, accepted.
Haipeng Shen (UNC/HKU) Arrival Rate Uncertainty Mostly OM, Beijing 39 / 39