Statistics Seminar Forecasting Loads for a Telephone Call Center Sivan Aldor - Noiman Advisors: Prof. Paul Feigin Prof. Avishai Mandelbaum
Outline Call Centers Overview The Cellular Phone Company and Data Description The Mixed Model Evaluation Methodology Goodness of Fit tests Predicting Average Service Times Load Forecasts and Staffing Formulae
Call Centers - Overview Call Centers are the primary contact point between service providers and their customers in modern businesses. Call Centers comprise human agents who provide services, as well as an automated interactive facility which often handles the initial phase of the customer interaction, and which may provide complete service to a significant proportion of the incoming and outgoing calls.
Call Centers - Overview There are approximately 2.68 million operator positions in over 50,000 call centers in the US with some locations employing over 1000 agents. A typical call center spends between 60% and 70% of its annual budget on staff salary Call center investment in workforce optimization technologies will exceed $1 billion by 2006.
Project Data MOCCA Goal of Data MOCCA (MOdels for Call Center Analysis) Designing and Implementing a (universal) database and interface for storing, retrieving, analyzing and displaying call- by-call information from Call Centers Enable studying the behavior of Enable studying the behavior of: Customers Service Providers / Agents Managers / System Wait Time, Abandonment, Retrials Queues Lengths, Loads, Trends Service Time, Activity Profile
Project Data MOCCA The Wharton School Team, University of Pennsylvania Israeli Bank Israeli Cellular Phone Company Large US Bank Technion Team including the Statistical Laboratory group
The Cellular Phone Company The Company’s Call Center Working hours are 7AM-11PM Sunday-Friday 750 agents are employed on a regular weekday Handles 50,000-60,000 calls on regular weekdays Provides services to 21 different types of queues. The three largest are: Private queue (30% of incoming calls) Business queue (15% of incoming calls) Technical Support queue ( 10% of incoming calls)
The Cellular Company Current Forecasting Procedure: An automatic “black box” system predicts weekly forecasts. Each Thursday the following procedure is carried out by the planning group: 1. Use 6 weeks of past data as the learning data 2. Predict the week which begins ten days later 3. Use subjective experience to correct the predictions 4. Derive the demand and required staffing for that week
The Cellular Company SaturdayFridayThursdayWednesdayTuesdayMondaySunday Forecast Period Prediction Lead Time Learning Period
Data Description Data Description Arrival counts to the Private queue Each day divided into 33 half-hour intervals between 7AM-11:30PM The learning data includes working weekdays ranging between mid-February, 2004 and December 31, 2004 Irregular days and Holidays were removed All together, there are 254 days
Data Description Data Description
Data Description Data Description The call center has four different billing cycles Each of its customers belongs to one of the cycles. Each billing cycle is characterized by two periods: 1. 1.Delivery Period (1-2 days) 2. 2.Billing Period (usually one day), about a week later
Data Description Data Description SaturdayFridayThursdayWednesdayTuesdayMondaySunday D2-D2-D1-B1-B 14-B B9-D8-D8-D 21-B D15-D D23-D22 31-D30-D29 Cycle 4 Cycle 1 Cycle 2 Cycle 3 B=Billing Period D=Delivery Period We model each cycle using two indicators one for each period August 2004
Billing cycles Selection Billing cycles Selection Do we really need all 8 indicators? We employ the following Poisson regression on the daily arrivals to determine the important indicators: Weekday effect Billing effect Delivery effect Daily Arrivals We tried different options…
Characterizing Billing Cycles Characterizing Billing Cycles Using the LR statistic, comparing to the full model, we arrived at the following two options: 1.Four 1.Weekdays, Four delivery period indicators and Cycle 1 billing period indicator 2. 2.Weekdays, One global delivery period indicator and Cycle 1 billing period indicator P-valueLR Chi-Square statistics Option Option 2
The Mixed Model We first use the following variance-stabilizing transformation to “change” the Poisson data into approximately normal data : For large enough since the transformed data follows Model assumptions: 1. 1.The arrival process follows an inhomogeneous Poisson process During half-hour intervals the rate remains constant
The Mixed Model Fixed Effects Random Effects - No. of days between day i and day j
The Benchmark Model
Evaluation Methodology To test the prediction models use the out-of-sample performance measures. Predict each week (6 days) between April 12 and December 24, There are 203 days. For each week use the same data and lead time as the cellular company. At the end of the process we have for each period k during each day d:
Evaluation Methodology Evaluate the model using the following measures: 1. 1.For each period k during day d compute: 2. For each day summaries:
The Mixed Model – Billing cycles Benchmark1 Global Delivery+ Bill 14 Deliveries+Bill Lower Quartile Median Mean Upper Quartile RMSE Benchmark1 Global Delivery+ Bill 14 Deliveries+Bill Lower Quartile Median Mean Upper Quartile APE
The Mixed Model – Billing Cycles Benchmark1 Global delivery+ Bill 14 Deliveries+Bill Lower Quartile Median Mean Upper Quartile Coverage Probability Benchmark1 Global delivery+ Bill 14 Deliveries+Bill Lower Quartile Median Mean Upper Quartile Width
Weekdays patterns: 1. 1.Fridays are different 2. 2.Sundays are different 3. 3.All other weekdays are not significantly different during 76% of the periods. The Mixed Model – Weekdays Is it important to have 6 different patterns?
The Mixed Model – Weekdays Multi-PatternThree-Pattern Lower Quartile Median Mean Upper Quartile RMSE Multi-PatternThree-Pattern Lower Quartile Median Mean Upper Quartile APE
The Mixed Model – Weekdays Multi-PatternThree-Pattern 0.88 Lower Quartile Median Mean 11Upper Quartile Coverage Probability Multi-PatternThree-Pattern Lower Quartile Median Mean Upper Quartile Width
The Mixed Model – Within Periods Comparing different within-periods covariance structures 1. AR(1) 2. ARMA(1,1) 3. Toeplitz
The Mixed Model – Within Periods Upper Quartile Mean Median Lower Quartile ARMA(1,1)AR(1)RMSE Upper Quartile Mean Median 7.83 Lower Quartile ARMA(1,1)AR(1)APE Upper Quartile Mean Median Lower Quartile ARMA(1,1)AR(1)Width 11Upper Quartile 0.93 Mean 0.97 Median 0.88 Lower Quartile ARMA(1,1)AR(1) Coverage Probability Is ARMA really worth it? AR(1) Procedure takes 1 hourAR(1) Procedure takes 1 hour ARMA(1,1) takes 6-7 hoursARMA(1,1) takes 6-7 hours
The Mixed Model – Daily Effect How important is the random daily effect if we are predicting 10-days-ahead? We might expect it to have a very small influence on the predictions… We test two models: 1. 1.The Three-Pattern Model with the random daily effect 2. 2.The Three-Pattern Model without the random daily effect V d
The Mixed Model – Daily Effect Upper Quartile Mean Median Lower Quartile No DailyDailyRMSE Upper Quartile Mean Median Lower Quartile No DailyDailyAPE Upper Quartile Mean Median Lower Quartile No DailyDailyWidth 11Upper Quartile Mean Median Lower Quartile No DailyDaily Coverage Probability When we carried out one-day- ahead predictions there were bigger differences
Testing for Goodness of Fit The Mixed Model Normal Assumption First we check the QQ-plot of the prediction residuals to see if it is normally distributed.
Testing for Goodness of Fit The Mixed Model Is the estimated value of this variance close to 0.25? We can use ARMA(1,1) to our advantage and check this out
Testing for Goodness of Fit The Mixed Model
Operational Regimes Efficiency Driven Quality Driven QED (Quality-Efficiency Driven)
QED Regime To predict the load (R) 1.We need to predict the arrival rate 2.We need to predict the average service
Average Service Time Patterns We fitted a quadratic regression based on the weekday and period The final model has the following components: PeriodPeriod*PeriodWeekday Weekday*Period Date
The Predicted Average Service patterns for a typical week: Average Service Time Patterns
Predicting Staffing Levels Given the user supplied we estimate as follows: predicted no. of required agents actual no. of required agents actual no. of required agents
Predicting Staffing Levels Averaging the difference separately for each period over the days we get the following graph:
Predicting Staffing Levels
Comparison with other models 2.Comparison with industry models 3.Trying to answer: “What is the effect of different time resolutions on prediction performance?” 4.Tying up some loose ends… Work in Progress
NOT
The Prediction Lead time What is the influence of the lead time on the APE and RMSE? Lead time (Days)