Paper
Transcription
Paper
Forecasting Time Series of Inhomogeneous Poisson Processes with Applications to Call Center Workforce Management Haipeng Shen Department of Statistics and Operations Research University of North Carolina at Chapel Hill June 3, 2009 Haipeng Shen (UNC-CH) Forecasting Poisson Arrival Rates QPRC-09 1 / 34 Outline 1 Motivation 2 Methods 3 Application Haipeng Shen (UNC-CH) Forecasting Poisson Arrival Rates QPRC-09 2 / 34 First Direct call center First Direct (Larreche et al., 1997) Haipeng Shen (UNC-CH) Forecasting Poisson Arrival Rates QPRC-09 3 / 34 A more modern call center Call-Center Environment: Service Network Haipeng Shen (UNC-CH) Forecasting Poisson Arrival Rates QPRC-09 4 / 34 Call-Centers: “Sweat-Shops of the 21st Century" A sweatshop call center??? Haipeng Shen (UNC-CH) 10 Forecasting Poisson Arrival Rates QPRC-09 5 / 34 A vast call center world 4 million call center agents in US, 800 thousands in UK, 500 thousands in Canada and 500 thousands in India Call center costs exceeded $300 billion worldwide 70% of the cost for human resource A wider perspective Multi-disciplinary research area Service Enterprise Engineering (NSF) Service Science, Management, and Engineering (IBM) Service Science - “computer science of the 21st century” Haipeng Shen (UNC-CH) Forecasting Poisson Arrival Rates QPRC-09 6 / 34 Queueing model associated with a single location: Queueing model for a single call center lost calls retrials busy arrivals queue abandon retrials returns lost calls Gans, Koole and Mandelbaum (2003) Call-center hardware Queueing model parameters w = 5 work stations Haipeng Shen (UNC-CH) N = 3 CSR-servers Forecasting Poisson Arrival Rates QPRC-09 7 / 34 Review, basic model... The M/M/N +estimate ∞ model uses or theM/M/N Erlang-C/∞ model Performance model: x x • • • • x x x x x no blocking, abandonment, or retrials fixednoarrival and abandonment, service rates or retrials blocking, exponential interarrival and service times fixed arrival rate λj and service rate µj for time period j measures of stationary performance exponential inter-arrival and service times Haipeng Shen (UNC-CH) Forecasting Poisson Arrival Rates QPRC-09 108 / 34 “Standard” model for call center workforce management 1 Forecast offered load (e.g., by the 1/2-hour) {Rj = λj /µj : j = 1, . . . , m} where λj : arrival rate, µj : service rate. 2 Find minimum numbers of agents to make QoS constraint sj = min{s | P{Delay ≤ T } ≥ 1 − } where in the common 80-20 rule, T = 20 seconds and = 20%. 3 Find minimum cost assignment of agents to schedules min{cN | AN ≥ s; N ≥ 0; N integer} where A: 0-1 schedule matrix, N: # of agents for each schedule, c: schedule cost. Haipeng Shen (UNC-CH) Forecasting Poisson Arrival Rates QPRC-09 9 / 34 However, arrival rates are not known with certainty 2000 2500 Intraday Call Volume Profile 0 500 Call Volume 1000 1500 Mon Tue Wed Thu Fri 7 9 Haipeng Shen (UNC-CH) 11 13 15 17 Time Forecasting Poisson Arrival Rates 19 21 23 QPRC-09 10 / 34 The research problem For a given day, call arrivals follow an inhomogeneous Poisson process I I I Day-to-day time series dependence Within-day dependence Seasonal effects Two forecasting scenarios: I I Day-to-day forecasting of future daily arrival rate profile Within-day updating of existing forecast Perform stochastic scheduling (with recourse) using the distributional forecasts Apply the approach to large-scale real systems Haipeng Shen (UNC-CH) Forecasting Poisson Arrival Rates QPRC-09 11 / 34 The data Bank with a network of 4 call centers in northeast US 300K calls/day, 60K/day seeking agents, 1K agents in peak hours 210 weekdays between January 6th and October 24th, 2003 Call volumes during every quarter hour between 7am and midnight For each day, 68-dimensional vector of Poisson variables Across days, time series of vectors Haipeng Shen (UNC-CH) Forecasting Poisson Arrival Rates QPRC-09 12 / 34 Statistical model y(i) = (yi1 , . . . , yim )T : arrival count profile of the ith day λ(i) = (λi1 , . . . , λim )T : arrival rate profile of the ith day y(1) , . . . , y(n) , . . .: m-dimensional vector time series Time series of vectors of Poisson variables High dimension Haipeng Shen (UNC-CH) Forecasting Poisson Arrival Rates QPRC-09 13 / 34 Dimension reduction K -factor model y ∼ Poisson(λ ), i = 1, . . . , n, (i) (i) g(λ ) = βi1 f1 + · · · + βiK fK ≡ Fβ , (i) (i) I I g: link function generalized linear models Time series model for β (i) Intraday feature vectors f1 , . . . , fK ∈ R m (K m) I I summarize intraday call arrival patterns reveal dominant intraday arrival features Haipeng Shen (UNC-CH) Forecasting Poisson Arrival Rates QPRC-09 14 / 34 Model estimation K -factor model y ∼ Poisson(λ ), i = 1, . . . , n, (i) (i) g(λ ) = βi1 f1 + · · · + βiK fK ≡ Fβ , (i) (i) Time series model for β (i) Two-step procedure I I extracting β (i) and fj using alternating maximum likelihood (AML) building time series model for β (i) Univariate time series models for components of β (i) Haipeng Shen (UNC-CH) Forecasting Poisson Arrival Rates QPRC-09 15 / 34 Forecasting future rate profile Using historical count data y(i) , i = 1, . . . , n, to forecast future rate profile λ(n+h) (h > 0) from the factor model λ(n+h) = g −1 (βn+h,1 f1 + · · · + βn+h,K fK ). I I I f1 , . . . , fK by AML (βi,1 , . . . , βi,K ) by AML time series forecasts of β (n+h) = {βn+h,1 , . . . , βn+h,K }T Interval and distributional forecasts I bootstrap the time series models Haipeng Shen (UNC-CH) Forecasting Poisson Arrival Rates QPRC-09 16 / 34 Deviance reduction plot 2000 Deviance Reduction 6000 10000 14000 Deviance Reduction Plot 2 Haipeng Shen (UNC-CH) 3 4 5 6 7 Number of Factors Forecasting Poisson Arrival Rates 8 9 10 QPRC-09 17 / 34 First two intraday factors Second Intraday Feature Vector 7 9 11 13 15 17 Time−of−day Haipeng Shen (UNC-CH) 19 21 23 −0.3 −0.2 −0.1 0.0 0.1 0.04 0.06 0.08 0.10 0.12 0.14 0.16 0.2 First Intraday Feature Vector 7 9 11 Forecasting Poisson Arrival Rates 13 15 17 Time−of−day 19 21 23 QPRC-09 18 / 34 Time series plot of first factor score series 0.078 First Score Series 0.066 First Score Series 0.070 0.074 Mon Tue Wed Thr Fri 0 Haipeng Shen (UNC-CH) 50 100 Day Index Forecasting Poisson Arrival Rates 150 200 QPRC-09 19 / 34 Lag-1 scatter plot of first factor score series 0.066 Next Weekday’s First Score 0.070 0.074 0.078 Scatter Plot of First Score Series 0.066 Haipeng Shen (UNC-CH) 0.070 0.074 Current Day’s First Score Forecasting Poisson Arrival Rates 0.078 QPRC-09 20 / 34 Model building Varying-coefficient AR(1) model βi1 = a1 (di−1 ) + b1 βi−1,1 + i1 , di−1 denotes the day-of-the-week of day i − 1 Varying slope does not provide any significant improvement Similar models for additional factors Haipeng Shen (UNC-CH) Forecasting Poisson Arrival Rates QPRC-09 21 / 34 1500 Distributional arrival-rate forecasts (often) work well 500 Rate 1000 actual volume forecast 7 Haipeng Shen (UNC-CH) 9 11 13 15 17 Time Forecasting Poisson Arrival Rates 19 21 23 QPRC-09 22 / 34 500 Rate 1000 1500 Night-before forecasts can sometimes be off 7 9 Haipeng Shen (UNC-CH) 11 13 15 17 Time Forecasting Poisson Arrival Rates 19 21 23 QPRC-09 23 / 34 Dynamic updating: the problem Early part of the day: ye(n+1) , λe(n+1) Latter part of the day: yl(n+1) , λl(n+1) Two sets of information available {y(1) , . . . , y(n) } and ye(n+1) Goal: to obtain updated forecast of λl(n+1) Time series forecast does not use new info in yen+1 l,TS TS TS flK ) λ̂n+1 = g −1 (β̂n+1,1 fl1 + · · · + β̂n+1,K How to use the new info? I TS update β̂n+1,k Haipeng Shen (UNC-CH) Forecasting Poisson Arrival Rates QPRC-09 24 / 34 Dynamic updating Estimate β (n+1) using info from ye(n+1) e ye (n+1) ∼ Poisson(λ(n+1) ), e g(λe (n+1) ) = F β (n+1) . Incorporate info from time series forecasts Minimize penalized likelihood wrt β (n+1) TS −2 loglik{ye(n+1) } + ω kβ (n+1) − β̂ (n+1) k2 Haipeng Shen (UNC-CH) Forecasting Poisson Arrival Rates QPRC-09 25 / 34 Density 0.010 0.015 actual volume original forecast 12:00PM update 7 9 11 13 15 17 Time Haipeng Shen (UNC-CH) 19 21 23 0.000 500 0.005 Rate 1000 1500 actual volume original forecast 12:00PM update 0.020 Forecast updates can significantly reduce error and uncertainty 1200 1300 Forecasting Poisson Arrival Rates 1400 1500 Rate 1600 1700 QPRC-09 26 / 34 Implications for workforce management Distribution of future λ(n+h) determined from the forecast With distributions for λ(n+h) , solve a stochastic program (SP) Considering forecast updates, solve a SP with recourse I Changing staffing assignments F F send agents home early ... → reduce cost call in part-time agents ... → better achieve QoS measure Haipeng Shen (UNC-CH) Forecasting Poisson Arrival Rates QPRC-09 27 / 34 We test six scheduling schemes Two schemes with no updating I one scenario = IP ♦ I 100 scenarios = SP100 Two schemes with an afternoon update of the original schedule I one scenario = UP I 100 scenarios = UP100 Two schemes that update an original schedule with recourse I I one scenario = RP f 100 scenarios = RP100 v Haipeng Shen (UNC-CH) Forecasting Poisson Arrival Rates QPRC-09 28 / 34 Testing the value of the scheduling schemes 1 Preliminary forecast using previous n days of data 2 Solve 4 scheduling problems based on initial forecast I I IP ♦ and SP100 1st phase of RP fand RP100 v 3 Update forecast based on 1st part of day 4 Update solutions based on revised forecast I I 5 IP ⇒ UP and SP100 ⇒ UP100 2nd phase of RP fand RP100 v Simulate using schedules and actual arrival counts Haipeng Shen (UNC-CH) Forecasting Poisson Arrival Rates QPRC-09 29 / 34 One set of empirical tests The same network of four large retail-banking call centers in US I Schedule updates at 11am Shift structure and costs I 262 feasible daily schedules (7 and 9-hour shifts, with breaks) F I cost of 1 per agent per 1/2-hour interval 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 target I I I Last 100 days as testing set Forecasts based on previous (rolling) 110 days of data Target expected abandonment rate of 3% across scenarios Haipeng Shen (UNC-CH) Forecasting Poisson Arrival Rates QPRC-09 30 / 34 Updating systematically lowers cost per call 0.091 cost per h handled call 0.089 0.087 0.085 0.083 0.081 0.079 0.077 0% 20% 40% 60% 80% 100% % days at or below stated level % days at or below stated level IP Haipeng Shen (UNC-CH) UP RP SP100 UP100 Forecasting Poisson Arrival Rates RP100 QPRC-09 31 / 34 RP and RP100 saving 3.2%–3.5% vs IP and SP100 weightted average e abandonm ment rate 3.20% 3.15% 3.10% 3.05% 3.00% 2.95% 2 90% 2.90% 2.85% 2.80% 0.078 0.079 0.079 0.080 0.080 0.081 0.081 0.082 0.082 weighted average cost per handled call weighted average cost per handled call IP Haipeng Shen (UNC-CH) UP RP SP100 UP100 Forecasting Poisson Arrival Rates RP100 QPRC-09 32 / 34 Collaborators Arrival rate forecasting/updating I Jianhua Huang (Texas A&M, Statistics) Scheduling I I Noah Gans (Wharton, OM) Yong-Pin Zhou (U Washington, OM) Acknowledgement of Support NSF grant DMS-0606577 (Statistics) NSF grant CMMI-0800575 (Service Enterprise Engineering) Haipeng Shen (UNC-CH) Forecasting Poisson Arrival Rates QPRC-09 33 / 34 Questions? 22 Haipeng Shen (UNC-CH) Forecasting Poisson Arrival Rates QPRC-09 34 / 34