multi-level workforce planning in call...

175
Multi-Level Workforce Planning in Call Centers Arik Senderovich

Upload: others

Post on 30-Mar-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Multi-Level Workforce Planning inCall Centers

Arik Senderovich

Page 2: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Multi-Level Workforce Planning in Call Centers

Research Thesis

Submitted in Partial Fulfillment of theRequirements for the Degree ofMaster of Science in Statistics

Arik Senderovich

Submitted to the Senate of theTechnion - Israel Institute of Technology

Tishrei, 5773 Haifa October, 2012

Page 3: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

This Research Thesis Was Done Under the Supervision ofProfessor Avishai Mandelbaum in the Faculty of Industrial Engineering

and Management.

The Generous Financial Help of the Technion

is Gratefully Acknowledged.

Page 4: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Contents

1 Introduction 21.1 Workforce Planning . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.1.1 The Workforce Planning Process . . . . . . . . . . . . . . 31.1.2 Top-Level Workforce Planning . . . . . . . . . . . . . . . 31.1.3 Low-Level Planning . . . . . . . . . . . . . . . . . . . . 51.1.4 Multi-Level Workforce Planning . . . . . . . . . . . . . . 61.1.5 Workforce Planning in Call Centers . . . . . . . . . . . . 81.1.6 Thesis Contribution:

Multi-Level Workforce Planning Method for Call Centers 91.2 Modeling Service Processes . . . . . . . . . . . . . . . . . . . . 12

1.2.1 Abstract Service Models . . . . . . . . . . . . . . . . . . 131.2.2 Data-Driven Process Visualization: Service Networks . . 201.2.3 Relating Service Networks to Workforce Planning in Call

Centers . . . . . . . . . . . . . . . . . . . . . . . . . . . 241.3 Thesis Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

2 Service Networks 252.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262.2 Service Process and Service Networks: Definitions . . . . . . . . 262.3 Creating and Visualizing Service Networks (via SEEGraph) . . . 27

2.3.1 Step 1 : Select Network Type and Attributes . . . . . . . . 272.3.2 Step 2 : Transform the Event-Log into a Network . . . . . 282.3.3 Step 3 : Visualize The Network . . . . . . . . . . . . . . 31

2.4 Customer Networks: Brief Overview . . . . . . . . . . . . . . . . 322.5 Server Networks: Definitions, Types and Applications . . . . . . . 34

2.5.1 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . 342.5.2 Type 1: The Activity Server Networks . . . . . . . . . . . 362.5.3 Type 2: The Queue-Based Server Networks . . . . . . . . 43

2.6 Applications of Server Networks:Workforce Planning and Queue Mining . . . . . . . . . . . . . . 452.6.1 Application 1: Utilization Profile Analysis . . . . . . . . 452.6.2 Application 2: Queue Mining -

Deviations from Formal Protocols Do Exist . . . . . . . . 54

i

Page 5: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

2.7 Customer-Server Networks: Complementary Approach to QueueMining . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

2.8 Relating our work to Process Mining . . . . . . . . . . . . . . . . 63

3 Multi-Level Workforce Planningin Call Centers 653.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 663.2 Theoretical Framework . . . . . . . . . . . . . . . . . . . . . . . 66

3.2.1 Top-Level Planning: Time Periods and Horizons . . . . . 673.2.2 Top-Level Planning: State Space . . . . . . . . . . . . . . 673.2.3 Top-Level Planning: Control . . . . . . . . . . . . . . . . 673.2.4 Top-Level Costs: Hiring and Waging . . . . . . . . . . . 673.2.5 Top-Level Planning Dynamics: Turnover and Learning . . 683.2.6 Low-Level Planning: Demand For Service . . . . . . . . 693.2.7 Low-Level Planning: Operating Cost Function . . . . . . 693.2.8 Objective Function and System Dynamics . . . . . . . . . 723.2.9 Optimal Control: ‘Hire-up-to’ Policies . . . . . . . . . . . 72

3.3 Test-Case Call Center: Israeli Bank . . . . . . . . . . . . . . . . 733.3.1 Customers: Types and Service Levels . . . . . . . . . . . 733.3.2 Agents: Learning and Training . . . . . . . . . . . . . . . 74

3.4 Multi-Level Workforce Planning for an Israeli Bank . . . . . . . . 763.4.1 Model 1: Base Case Model . . . . . . . . . . . . . . . . . 773.4.2 Model 2: Full Model . . . . . . . . . . . . . . . . . . . . 893.4.3 Model 3: Controlled Promotions Model . . . . . . . . . . 983.4.4 Workforce Planning: Models and Reality . . . . . . . . . 102

4 Statistical Techniques For Workforce Planning in Call Centers 1114.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1124.2 Base-Case Model . . . . . . . . . . . . . . . . . . . . . . . . . . 112

4.2.1 Are Turnover Rates Indeed Stationary and Deterministic? 1134.2.2 Staffing Function: Agents Online . . . . . . . . . . . . . 1154.2.3 Staffing Function: On-the-job Absenteeism . . . . . . . . 1164.2.4 Modeling the Demand for Service . . . . . . . . . . . . . 1204.2.5 Stationarity of the Demand For Service . . . . . . . . . . 124

4.3 Full Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1254.3.1 Uncontrolled Learning: Validation and Estimation . . . . 1264.3.2 Staffing Three Levels of Agents . . . . . . . . . . . . . . 127

4.4 Validating Erlang-A via Empirical Staffing Models . . . . . . . . 1324.5 Estimating Turnover Rate: A Survival Analysis Approach . . . . . 134

5 Summary and Conclusions 1365.1 Discussion and Conclusions . . . . . . . . . . . . . . . . . . . . 1375.2 Research Limitations . . . . . . . . . . . . . . . . . . . . . . . . 1385.3 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140

ii

Page 6: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

A SEEData: Test-Case Call Center 142A.1 SEE and SEEData . . . . . . . . . . . . . . . . . . . . . . . . . . 142

A.1.1 SEE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142A.1.2 SEEData . . . . . . . . . . . . . . . . . . . . . . . . . . 142

A.2 SEEData: Test-Case Call Center . . . . . . . . . . . . . . . . . . 144A.2.1 Calls Log . . . . . . . . . . . . . . . . . . . . . . . . . . 144A.2.2 Agents Log . . . . . . . . . . . . . . . . . . . . . . . . . 144A.2.3 Dictionaries . . . . . . . . . . . . . . . . . . . . . . . . . 144

B Theoretical Results 153

iii

Page 7: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

List of Figures

1.1 Workforce Planning Cycle . . . . . . . . . . . . . . . . . . . . . 41.2 Multi-Level Planning - Encompasses Both Planning Levels . . . . 71.3 The scheme of the approach in the current research . . . . . . . . 101.4 Dynamic Multi-Level Planning . . . . . . . . . . . . . . . . . . . 111.5 Total Workforce (January-March 2011) - Model against Reality . . 121.6 Service Process Life-Cycle . . . . . . . . . . . . . . . . . . . . . 141.7 Workforce Planning Process - Activity Diagram . . . . . . . . . . 171.8 Workforce Planning Process - Resources Diagram . . . . . . . . . 181.9 Workforce Planning Process - Activity-Resource Diagram . . . . 191.10 Service Network - Customer-Flow - 7:00 – 24:00 - January 24th,

2010 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211.11 Service Network - Customer-Flow - Zoom-In (1) - January 24th,

2010 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221.12 Service Network - Customer-Flow - Zoom-In (2) - January 24th,

2010 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

2.1 Part of single agent’s transactions - Israeli Bank Call Center . . . 292.2 Visualizing log - Figure (2.1) - Activities only . . . . . . . . . . . 302.3 Visualizing log - Figure (2.1) - Queues and Activities . . . . . . . 302.4 Customer Network - One day in a large Call Center, U.S. Bank [25pt] 322.5 Structured (layered) Customer Network - One hour in a large U.S.

Bank Call Center . . . . . . . . . . . . . . . . . . . . . . . . . . 332.6 VRU Network - One day in a large Israeli Bank Call Center . . . . 342.7 Color attribute legend for Server Networks . . . . . . . . . . . . . 352.8 Activity-Network - Agent Number 043 - 19:00 - 19:05 on Jan 24th,

2010 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372.9 Activity-Network - Agent Number 043 - 19:00 - 19:05 on Jan 24th,

2010 - Zoom In . . . . . . . . . . . . . . . . . . . . . . . . . . . 372.10 Activity-Network - All Agents - 19:00 - 19:05 on Jan 24th, 2010 -

Zoom In [25pt] . . . . . . . . . . . . . . . . . . . . . . . . . . . 382.11 Activity-Network - Agent 043 - Whole Day - Jan 24th, 2012 [25pt] 392.12 Activity-Network - Agent 043 - Whole Day - Jan 24th, 2012 -

Zoom In [25pt] . . . . . . . . . . . . . . . . . . . . . . . . . . . 402.13 Activity-Network - All Agents - Whole Day - Jan 24th, 2012 [25pt] 41

iv

Page 8: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

2.14 Activity-Network - All Agents - Whole Day - Jan 24th, 2012 -Zoom In [25pt] . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

2.15 Queue-Based Network - Agent Number 043 - 19:00 - 19:05 on Jan24th, 2010 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

2.16 Queue-Based Network - Level1 Agents - 19:00 - 19:05 on Jan 24th,2010 [25pt] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

2.17 Total Arrivals For Jan 24th, 2010 . . . . . . . . . . . . . . . . . 462.18 Activity-Network - Agent Number 003 - 10:00 - 11:00 on Jan 24th,

2010 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472.19 Activity-Network - Agent Number 003 - 10:00 - 11:00 on Jan 24th,

2010 - Zoom In . . . . . . . . . . . . . . . . . . . . . . . . . . . 472.20 Activity-Network - Agent Number 023 - 10:00 - 11:00 on Jan 24th,

2010 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482.21 Activity-Network - Agent Number 023 - 10:00 - 11:00 on Jan 24th,

2010 - Zoom In . . . . . . . . . . . . . . . . . . . . . . . . . . . 482.22 Activity-Network - All Agents - 10:00 - 11:00 on Jan 24th, 2010

[25pt] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492.23 Activity-Network - All Agents - 10:00 - 11:00 on Jan 24th, 2010 -

Zoom In [25pt] . . . . . . . . . . . . . . . . . . . . . . . . . . . 502.24 Capacity Loss States - All Agents, 10:00 - 11:00 on Jan 24th, 2010

[25pt] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512.25 Activity-Network - Agent Number 003 - 16:00 - 17:00 on Jan 24th,

2010 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532.26 Activity-Network - All Agents - 16:00 - 17:00 on Jan 24th, 2010

[25pt] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542.27 Hourly proportions of arrivals - All queues (blue) and the Securities

queue (red) - Weekdays of 2010 [25pt] . . . . . . . . . . . . . . . 552.28 QBR Network - Level1 Agents - 10:00 - 11:00 on Jan 24th, 2010

[25pt] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 572.29 QBR Network - Level1 Agents - 10:00 - 11:00 on Jan 24th, 2010 -

Zoom In [25pt] . . . . . . . . . . . . . . . . . . . . . . . . . . . 572.30 QBR Network - Level2 Agents - 10:00 - 11:00 on Jan 24th, 2010

[25pt] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 582.31 QBR Network - Level2 Agents - 10:00 - 11:00 on Jan 24th, 2010 -

Zoom In [25pt] . . . . . . . . . . . . . . . . . . . . . . . . . . . 582.32 QBR Network - Level3 Agents - 10:00 - 11:00 on Jan 24th, 2010

[25pt] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 592.33 QBR Network - Level3 Agents - 10:00 - 11:00 on Jan 24th, 2010 -

Zoom In [25pt] . . . . . . . . . . . . . . . . . . . . . . . . . . . 592.34 Service Time Distribution - Level 1 Skill Level - General Banking

Class - Jan 24th, 2010 . . . . . . . . . . . . . . . . . . . . . . . . 612.35 SBR-Network - One day in a large Israeli Telecom’s Call Center . 62

3.1 Israeli Bank skills chart . . . . . . . . . . . . . . . . . . . . . . . 75

v

Page 9: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

3.2 Routing design of the Israeli Bank . . . . . . . . . . . . . . . . . 763.3 Agent recruitment and training - no learning . . . . . . . . . . . . 773.4 Intra-day Half-Hour Staffing Requirements - January 9th, 2011 . . 883.5 Full Model - Learning and Turnover from 3 skill-levels . . . . . . 893.6 (extended) Full Model - Recruitment into Level2 and Level3 . . . 923.7 Total Planned Workforce (January-March 2011) - Comparing our

Three Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1033.8 Total Planned Workforce for Level1 (January-March 2011) - CPM

and Full Model . . . . . . . . . . . . . . . . . . . . . . . . . . . 1033.9 Total Planned Workforce for Level2 (January-March 2011) - CPM

and Full Model . . . . . . . . . . . . . . . . . . . . . . . . . . . 1043.10 Total Planned Workforce for Level3 (January-March 2011) - CPM

and Full Model . . . . . . . . . . . . . . . . . . . . . . . . . . . 1043.11 Total Top-Level Costs - Comparison between the Three Models . 1053.12 Total Planned Workforce (January-March 2011) - Three Models

and Real Workforce . . . . . . . . . . . . . . . . . . . . . . . . . 1063.13 Average proportion of ‘General Banking’ customers answered with

Target Time - 2nd - 14th of January 2011 . . . . . . . . . . . . . 1073.14 Abandonment rates for all customer-types - 2nd to 14th of January

2011 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1083.15 Total Planned Workforce (January-March 2011) - Models against

Reality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

4.1 Turnover Rates - Skilled Agents, January 2007 - November 2010 . 1144.2 Dropout Rates - Trainees - July 2005 – November 2010 . . . . . . 1144.3 Agents Online as Function of Arrivals - Half-hour Resolution -

SEEData (Call-Log) - 2010 . . . . . . . . . . . . . . . . . . . . . 1154.4 Result of fitting model 4.1 to SEEData, year 2010 . . . . . . . . . 1174.5 Absenteeism rate - Interval Effect . . . . . . . . . . . . . . . . . 1194.6 Absenteeism rate - Demand Effect . . . . . . . . . . . . . . . . . 1194.7 Average Proportion of half-hour arrival-rates out of total daily ar-

rivals, September 2010 – November 2010 . . . . . . . . . . . . . 1214.8 Time of day (Interval) Effect . . . . . . . . . . . . . . . . . . . . 1224.9 Calendar-day Effect . . . . . . . . . . . . . . . . . . . . . . . . . 1224.10 Goodness-of-Fit - Estimated Demand vs. Real Demand . . . . . . 1234.11 Absenteeism rate - Interval Effect . . . . . . . . . . . . . . . . . 1244.12 Absenteeism rate - Interval Effect . . . . . . . . . . . . . . . . . 1254.13 Learning Rates - January 2010 to November 2010 . . . . . . . . . 1274.14 Result of fitting StaffingModel2 for i = 1 to SEEData, year 2010 . 1294.15 Result of fitting StaffingModel2 for i = 2 to SEEData, year 2010 . 1304.16 Result of fitting StaffingModel2 for i = 3 to SEEData, year 2010 . 1314.17 Comparison of staffing, based on Model (4.1) and Erlang-A - A

single week in January 2011 . . . . . . . . . . . . . . . . . . . . 1324.18 Turnover Risk - Empirical Function and Smooth Heft . . . . . . . 135

vi

Page 10: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

A.1 Dictionary – Service . . . . . . . . . . . . . . . . . . . . . . . . 146A.2 Dictionary – Segment Type . . . . . . . . . . . . . . . . . . . . . 147A.3 Dictionary – Outcome . . . . . . . . . . . . . . . . . . . . . . . . 148A.4 Dictionary – Call Type . . . . . . . . . . . . . . . . . . . . . . . 149A.5 Dictionary – Event ID (1) . . . . . . . . . . . . . . . . . . . . . . 150A.6 Dictionary – Event ID (2) . . . . . . . . . . . . . . . . . . . . . . 151A.7 Dictionary – State . . . . . . . . . . . . . . . . . . . . . . . . . . 152

vii

Page 11: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

List of Tables

2.1 Test-Case Call Center - Customer Types, Average Arrival Rates perHour and Main Agent Skill-Level . . . . . . . . . . . . . . . . . 55

2.2 Test-Case Call Center - Skill Level, Average Staffing per Hour andAverage Number of Agents Online . . . . . . . . . . . . . . . . . 56

3.1 Test-Case Call Center - Customer Types, Total Arrivals and ArrivalProportions - February 2010 . . . . . . . . . . . . . . . . . . . . 74

3.2 Test-Case Call Center - Customer Types and their Target AnswerTimes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

3.3 Base-Case Model Parameter Estimates . . . . . . . . . . . . . . . 873.4 Low-level Planning Results: Top-Down vs. Bottom-Up . . . . . . 873.5 Optimal Control and Total Workforce: Base-Case Model . . . . . 873.6 Full Model Parameter Estimates . . . . . . . . . . . . . . . . . . 963.7 Full Model Parameter Estimates . . . . . . . . . . . . . . . . . . 973.8 Optimal Control and Total Workforce – Base-Case Model and Full

Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 973.9 Full Model Parameter Estimates . . . . . . . . . . . . . . . . . . 1003.10 Optimal Control – Controlled Promotions Model and Full Model . 1013.11 Total Workforce – Controlled Promotions Model and Full Model . 101

4.1 Full Model: Estimating Turnover Rates for Three Skill-Levels ofAgents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

A.1 Test-Case Call Center SEEdata - Calls Log - Field Description . . 145A.2 Test-Case Call Center SEEdata - Agents Log - Field Description . 145

viii

Page 12: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Abstract

In large service organizations, such as call centers or hospitals, workforce is plannedmostly at two levels: top-level planning that corresponds to long-term planningperiods (months, quarters, years) and low-level planning that corresponds to short-term day-to-day shift-staffing.

In top-level planning, the number of agents to be employed accounts for variousworkforce aspects such as: hiring, skill-levels, promotions and turnover. Low-leveldetailed planning is concerned with staffing agents to upcoming shifts so that short-term demand for service will be adequately met. We argue that in an organizationwith highly varying demand for service (such as a Call Center), it is impossible toseparate the two planning horizons. Therefore, we propose to follow a multi-levelhierarchical framework that will account for both top-level and low-level planning.

The main goal of our research is thus to develop a methodology for multi-levelworkforce planning and then validate our theory in a real Call Center. In order topursue our goal, we adopt a multi-level workforce planning model. We first applya relaxed version of the DP model, to serve as a benchmark for more complexmodels. We then apply the full DP model and propose an extension that betterdescribes our Test-Case Call Center.

Model parameters are estimated by applying statistical techniques to real daily-updated Call Center data, provided by the Technion SEELab. Parameters related toagent utilization profiles are inferred via data-driven server networks. These net-works describe agent activities at the transaction-level resolution, thus eliminatingthe need for classical IE work sampling and time-and-motion techniques.

A generalization of the data-driven server networks that we referred to as ser-vice networks is also discussed. These networks are defined as data-driven realiza-tions of the service process. Various applications to service networks are presented.

Lastly, we discuss aspects of model validity, by comparing our results to theworkforce planning in our Test-Case Call Center. We provide evidence in favorof the multi-level framework and explain the need for model-updates in a rollinghorizon fashion.

1

Page 13: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Chapter 1

Introduction

2

Page 14: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

1.1 Workforce Planning

1.1.1 The Workforce Planning Process

Workforce planning is an organizational process, the goal of which is to set the‘right’ amount of workforce capacity, such that the organizational goals set bymanagement will be achieved. Organizational goals are formulated in a top-downfashion, starting with strategic goals (example: increase in sales, explore new mar-kets,...) and finishing with operational goals (example: upper bounds on waitingtimes, shipping delays,...).

Figure 1.1 presents a schematic description of a typical workforce planningprocess. We see that the process is cyclical: management defines a set of orga-nizational goals, then these goals determine work requirements (or demand) andthus, these work requirements can be transformed into workforce (or capacity) re-quirements. The cycle starts again when the organizational goals are revised bymanagement.1

Workforce planning can be applied in two ways: top-level workforce planningand low-level workforce planning. Top-level workforce planning corresponds tolong time periods (i.e. months, quarters,...) and to strategic organizational goals.Thus, top-level planning is often referred to as long-term workforce planning. Intop-level planning, the total workforce for each planning period is known and de-cisions are made on various types of workforce flow: recruitment, promotions andturnover of employees.

Low-level workforce planning typically corresponds to shorter time periods(i.e. minutes, hours, days,...) and to operational goals. Thus, low-level workforceplanning is also referred to as short-term workforce planning. Decisions that areconsidered, while performing low-level planning, can be scheduling of employeesto tasks, staffing shifts, etc.

We now discuss aspects and models of top- and low- level planning separately,concentrating on models that ignore the interactions between the two. We thenshift to multi-level workforce planning, which acknowledges the interactions andinfluences of top-level workforce planning on low-level workforce planning andvice versa.

1.1.2 Top-Level Workforce Planning

As we discussed earlier, top-level workforce planning is about hiring, promot-ing and at times firing the ‘right’ number of employees at the ‘right’ time. Top-level planning corresponds to long-term planning periods, since its relevant aspectschange on a slow time-scale. For example, hiring a new employee is typically atime-consuming activity: tracking down adequate personnel, training candidates

1In the current thesis, we address workforce requirements at the level of aggregates, in the spiritof Bartholomew et al. (1991), as opposed to a ‘zoom-in’ on the behavior of single individuals.

3

Page 15: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Workforce

Planning

Organizational

Goals

Work

Requirements

Workforce

Requirements

Figure 1.1: Workforce Planning Cycle

and teaching new employees on-the-job may take weeks, months and in some caseseven longer periods of time.

A central approach to top-level workforce planning is presented in Chapter 4of Bartholomew et al. (1991). This approach applies stochastic models, such asMarkov chains and renewal processes, that encompass all the above top-planningaspects. For example, one of the main models used is a discrete-time Markov chain,which captures employee-grades: seniors, juniors, trainees and so on. The time-dependant state-space (of the Markov chain) is defined as the number of employeesserving at grade i, with i = 1, ...,m. The transition matrix between various statesrepresents employee flow: promotions, recruitment and turnover. (Leaving theorganization is defined as a flow to grade m+ 1.) After formulating the stochasticmodel, statistical techniques are applied to estimate the model’s parameters, so thatit can actually be applied.

Another important subject that is addressed in Chapter 8 of Bartholomew et al.(1991) is the workforce control problem. In this problem, it is assumed that a cer-

4

Page 16: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

tain workforce structure is to be attained and maintained. A workforce structureconsists of several employee-grades. For example, consider a case where we havetwo grades: junior and senior. We wish to attain the following workforce structure:100 juniors and 50 seniors, so that all work requirements are performed, thus meet-ing our organizational goals. Some parameters are assumed known or uncontrolledwhile others can be controlled. For example, one can assume a known promotionscheme and turnover rates, while recruitment is controlled in order to attain thedesired employment; recruitment control answers the question of how many em-ployees to recruit and to what grades. A second example assumes a known totalrecruitment and turnover rates, while control is maintained over promotions; thegoal is now to set promotion rates between various grades.

Time-related issues are also explored, since employment structures may be at-tained by making decisions over a fixed planning horizon, or by making decisionsso that we reach employment structures at minimum time. Then the chain willbecome stationary, if these structures are indeed maintainable. Control problemsare solved in Bartholomew et al. (1991) using ‘classic’ control theory approaches,specifically minimizing some distance function between current and target employ-ment structures.

A different approach to top-level workforce planning was presented in Holtet al. (1991). This approach models workforce decisions as deterministic opti-mization problems that neglect variability in turnover, work-requirements and soon. For more relevant literature on top-level planning models, see Robbins (2007).

The result of top-level workforce planning models is a set of decisions on howmany employees to hire, promote or fire. This set of decisions is clearly a functionof the number of employees that are required at each planning period. Most top-level models forecast the expected work requirements during these time periods atan aggregate level and are not concerned with the operational consequences of thisaggregation. We refer to such a planning approach as top-down planning, since thefocus is on top-level aspects (promotions, hirings,...) and the operational regimesthat result from such a planning are often neglected. We later show that such anapproach is not suitable for organizations that seek to meet highly time-varyingwork requirements. For more on top-down planning, where work requirements areforecasted at aggregate levels, can be found in Chapter 9 of Bartholomew et al.(1991).

1.1.3 Low-Level Planning

Low-level workforce planning is concerned with the operational scheduling of the(already) hired workforce to tasks. Tasks are typically considered at high reso-lutions of time and detail. Therefore, suitable planning periods are shifts, daysand weeks. Workforce aspects of low-level planning are of the operational na-ture: learning curves, work regulations, task-scheduling protocols (matching tasksto suitable employees), employee absenteeism types and so on.

Low-level workforce planning is often called ‘workforce scheduling’ or ‘tac-

5

Page 17: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

tical workforce planning’. A thorough review of low-level planning models, withan emphasis on service systems, can be found in Pinedo (2009), Chapter 13. Typ-ically, these models are providing a least-cost solution for employee schedulingto predefined shifts. Total employment levels that are resulting from low-levelplanning are assumed to be feasible. Thus, these models ignore the fact that theirresulting total employment levels may be unattainable due to constraints related toworkforce flow (e.g. not enough hiring potential for a certain planning period).

1.1.4 Multi-Level Workforce Planning

A major drawback of planning top-level and low-level workforce separately is thattop-level goals and low-level goals are then weakly aligned. Specifically, top-levelmodels often neglect their resulting low-level workforce requirements. For exam-ple, certain total workforce levels are set to meet top-level goals and perform workrequirements at aggregate levels. Then low-level goals are set and aggregated workrequirements are ‘broken down’ into operational requirements. A suitable opera-tional regime (specified in terms of service goals) is set and employees are sched-uled to work in that regime in order to meet low-level goals. Eventually, the num-ber of required employees at low-level planning might exceed the total employedworkforce.

On the other hand, low-level models often neglect top-level considerations ofrecruitment, turnover and so on. For example, due to steep hiring costs, for severaltop-level periods the organization could strive to reduce recruitment. On the otherhand, this period could also be characterized by an increase in demand, whichin turn requires an increase in recruitment. Models that address both top-leveland low-level planning aspects are therefore required. We refer to such models asmulti-level workforce planning models.

Multi-level workforce planning models align aspects of top-level and low-levelplanning. Figure 1.2 illustrates the hierarchical approach of multi-level workforceplanning. As already discussed, there is an interaction between meeting opera-tional work requirements according to certain operational goals and planning totalemployment levels according to top-level goals.

This interaction between the two levels is enhanced by the fact that, in mostorganizations, top-level planning and low-level planning are performed by differ-ent planners. While top-level planners tend to ignore operational day-to-day con-straints, low-level planners tend to ignore the ‘big-picture’ and optimize their needslocally (overlooking top-level aspects).

One drawback of a multi-level planning model (that unites top and low levels),is that, at times, a separation is necessary, since it operates as a ‘control mecha-nism’. Low-level planners, given the opportunity to perform top-level planning,would tend towards meeting operational goals, thus they would prefer minimiz-ing operational expenses over minimizing top-level costs. Moreover, in practice,low-level planners often see individuals and not aggregates, which will in turn biastop-level decisions. For example, firing an individual could become a nearly im-

6

Page 18: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Top-Level

Workforce Planning:

Recruitment,

Turnover,

Promotion

Low-Level

Workforce Planning:

Learning curve,

Absenteeism, Work

regulations, Service

levels

Figure 1.2: Multi-Level Planning - Encompasses Both Planning Levels

possible task.Top-level planners that would perform also low-level planning are at a risk to

ignore operational workforce aspects. These planners often cannot relate to ‘floor-level’ employees, thus neglecting necessary aspects such as on-the-job absenteeismdue to breaks.

A third party, i.e. management, is required to intervene and set planning pri-orities, thus enabling a global optimization of all aspects, by setting multi-levelorganizational goals.

The typical approach in multi-level workforce planning is performing iterationsbetween top-level planning and low-level planning. First, low-level planning en-joys the focus: shifts are scheduled and target workforce numbers are set. Then thefocus shifts to top-level planning. Target workforce set by the low-level planningis now to be attained (workforce control problem), thus calling upon decisions onworkforce flow throughout the organization (hiring, turnover, promotions). Then,during the next planning period, low-level planning receives the focus again, lead-ing to a new target workforce. We refer to this approach of multi-level planningas bottom-up planning, since the total workforce is based upon the (detailed) low-level planning. (This approach is a contrary to the presented above top-down plan-ning approach, often practiced in top-level only models.)

A multi-level workforce planning model was first introduced in Abernathyet al. (1973). This model was applied to perform multi-level workforce planningfor nurses in a hospital. The proposed model follows three stages: setting an oper-

7

Page 19: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

ational policy (work regulations), top-level planning and lastly, low-level staffing.The second and third stages are integrated into a single iterative model. Low-levelaspects are considered in detail, thus resulting in a bottom-up planning. The so-lution is an iterative procedure that minimizes a loss-function, using a stochasticoptimization approach.

A similar approach is presented in Gans and Zhou (2002), only this time it isapplied to call centers. A dynamic programming is formulated so that both top-level and low-level aspects are minimized simultaneously. This approach can beviewed as a combination of the top-level Markov-models presented in Bartholomewet al. (1991), Chapter 4 and the low-level optimization models discussed in Pinedo(2009), Chapter 13.

1.1.5 Workforce Planning in Call Centers

Many companies face a large daily demand for multiple types of customer services.These services can vary from complicated monetary transactions through product-sales to dealing with unsatisfied customers that seek to express their discontent.An efficient way of communication between customers and the organization hasevolved in the form of call centers. Many companies use, in fact, one or more CallCenter as almost the only way to interact with their customers (Mandelbaum et al.(2000)). Call Center services can be provided either by a VRU (Voice ResponseUnit) or a human agent, and typically both. The agents are typically essential, dueto the fact that complex calls cannot be handled by standard VRU protocols.

Along with their great importance, agents also incur a substantial cost in termsof salaries paid for their employment. Around 70% of operating expenses of a CallCenter arise from agent employment (Gans et al. (2003)); hence, the importanceof hiring and activating the ‘right’ number of agents, at the ‘right’ time. For top-level workforce planning, ‘number of agents’ refers to total employment levels and‘right time’ refers to planning periods of months, quarters and so on.

For low-level workforce planning, ‘number of agents’ corresponds to the num-ber of agents scheduled for daily shifts. As mentioned before, the term ‘rightnumber of agents’ is strongly connected with organizational goals: for organiza-tions that prioritize service quality over resource efficiency, employment levels andscheduling numbers will tend to be higher than for organizations that prioritize theother way around.

Workforce planning is even more challenging in call centers with a large vari-ety of customer-types, who are handled by various groups of skilled-agents. Theseso-called skill-based call centers serve as our representative example for other com-plex service systems and thus, are the focus of this thesis. Specifically, methodsfor workforce planning in call centers, and insights that these methods give rise to,can be naturally generalized to other service systems, such as hospitals, websites(where the resources are servers) and so on. Of course, some adjustments must bemade when applying these methods to the aforementioned service systems, due tosome unique aspects of call centers. We now go over some of the challenges that

8

Page 20: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

arise when performing workforce planning in call centers.The first challenge that Call Center management faces is the highly varying and

largely uncontrolled service requirements (demand for service). This variabilityin demand for service calls upon a flexible setting of shift-types, flexibility whichmay be extremely costly due to work-regulations (example: evening shifts are moreexpensive, working more than 8 hours is considered overtime, etc.). The variabilityin demand also requires a careful low-level workforce planning, thus promptingdata gathering at the highest time resolutions.

The second challenge is to account for agents who turn over at a relatively highrate, especially at the beginning of their career. A constantly fresh workforce thatwill accommodate this turnover is to be trained at all times. This is a challengingtask, because some planning periods suffer from a low recruitment potential (e.g.students are more difficult to recruit during their exam periods). Also, it may takea non-negligible amount of time to train new personnel, before they can serve asCall Center agents - both in courses and on-the-job.

The third challenge is to address the variety of customer-types appropriately.This is done by creating routing protocols that divert incoming calls to ‘adequately’skilled agents. The challenge here has two aspects: coming up with ‘good enough’protocols and training agents to various types of skills.

To account for the above challenges, we advocate the multi-level workforceplanning approach. This approach will both address top-level workforce aspects(recruitment, turnover,...), while supporting detailed workforce planning that willsupport low-level workforce aspects (learning curves, absenteeism, service lev-els...).

1.1.6 Thesis Contribution:Multi-Level Workforce Planning Method for Call Centers

The goal and the main contribution of our research is the development of a work-force planning method for call centers. As we mentioned before, we consider callcenters to be a representative example for complex service systems. We believethat useful insights that we obtain from exploring the workforce planning processin call centers, can be to some merit generalized to other service systems.

Figure 1.3 describes our present approach. We first observe workforce planningaspects and challenges that characterize call centers (recall that call centers serveas representatives of complex service systems). We then rely on the theoreticalmulti-level framework introduced in Gans and Zhou (2002), since it is most fittingto our needs.

Specifically, this multi-level planning framework is aligned to meet the previously-discussed aspects and challenges of workforce planning in call centers. Figure 1.4illustrates a schematic overview of the multi-level framework and how it accountsfor these workforce planning challenges.

At the beginning of planning period t (think in terms of months), a target work-force is set, based on low-level workforce planning. This low-level planning at-

9

Page 21: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Observing Call

Centers:

Top-Level

aspects, Low-

Level aspects,

Challenges,…

Selecting a

Theoretical

Framework:

Multi-Level

Workforce

Planning

Applying

Workforce Models

to a real Call

Center:

Model adjustment,

Validating

assumptions,

Estimating

parameters

Gathering insights

into Workforce

Planning:

Call Centers (and

other complex

Service Systems)

Figure 1.3: The scheme of the approach in the current research

tempts to minimize operational costs, while deciding on the number of agents pershift type who will meet the high-varying demand for service. The consideredoperational costs are: shift design (with different costs to different shift-types),overtime and outsourcing of calls. Then top-level decisions are made, i.e. numberof agents to hire at the beginning of month t, turnover occurs and so on. The sameprocedure is continued for planning period t+1. The goal of this process is to planall aspects simultaneously (top-level and low-level) over a certain planning horizonthat consists of planning periods t = 1, ..., T (T being the last period). Our theo-retical framework essentially performs bottom-up multi-level workforce planning,with target workforce being dictated by detailed demand for service.

After selecting the theoretical framework, we apply it to a real Test-Case CallCenter. We adjust some aspects of the theoretical framework by making a set ofassumptions that brings the theoretical framework closer to that of the Test-CaseCall Center. Specifically, we formulate three workforce planning models, based onthe theoretical framework.

The first model is a simplification of the theoretical framework presented inGans and Zhou (2002). We use this simple model as our Base-Case. For theBase-Case Model we also perform a comparison between our bottom-up planningapproach and a top-down planning approach. We show that for call centers a top-down approach is inappropriate due to the high variability in the demand for ser-vice.

The second and third models go beyond the theoretical framework of Gans and

10

Page 22: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

t t+1 t+2

Work-requirements

Recruitment, Promotions,…

Figure 1.4: Dynamic Multi-Level Planning

Zhou (2002), making these models more realistic with respect to our Test-CaseCall Center. These models are considered within a bottom-up framework only.

For each of the three models, we also (statistically) validate some of their as-sumptions and estimate model parameters, in order to end up with numerical re-sults. Lastly, we provide the results of our workforce planning experiments, discussinsights about workforce planning in call centers and generalize these insights toother service systems.

Main Results

In order to highlight our contribution, we now present Figure 1.5 that presents re-sults of our workforce planning experiments for the Test-Case Call Center. Wethen compare our findings to the real workforce employed by the Call Center dur-ing year 2011. This empirical evidence demonstrates that our workforce planningmodels are indeed adequate.

In Figure 1.5, the blue line corresponds to the real workforce employed duringeach month of year 2011. The red line corresponds to the average target workforceset by our models. We see that gradually, the workforce employed by our Test-CaseCall Center attains the target workforce levels.

What explains the gap between the target workforce levels (required work-force) and the low workforce levels at the beginning of 2011 is the process ofrecruiting new agents. Training new agents requires a basic course that seldomexceeded 15 agents per course. This lack of new trainees per course is due to theoften low recruitment potential. One of the basic assumptions in our models isthat new recruits are available, in any quantity, we desire at all planning periods.Reality shows us that this assumption is problematic.

Surprisingly, even though a 25% staffing gap exists at the beginning of year2011, between the required workforce and the employed workforce, the quality ofservice provided by the Call Center is not ‘catastrophic’ (abandonment rates are

11

Page 23: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

204207

210

220

235

238

252

255 254

261

247

200

210

220

230

240

250

260

270

Real Workforce - 2011 Average Target Workforce

Figure 1.5: Total Workforce (January-March 2011) - Model against Reality

within target and proportion of calls answered within a target time is not uniformlylow). This phenomena can be explained by the fact that the Call Center practicesovertime. Thus, every employed agent provides working capacity, which exceedsthat of a full-time position.

Overtime is heavily discouraged by Call Center’s management, which explainsthe gradual increase in the total workforce that we observe in 1.5.

1.2 Modeling Service Processes

As its name implies, this section is dedicated to the subject of modeling serviceprocesses. We first describe abstract process modeling and provide an example fora process model, specifically the workforce planning process in our Test-Case CallCenter. We then introduce the need for data-driven service process visualizationand modeling. We conclude the section by relating the data-driven process modelsto workforce planning.

12

Page 24: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

1.2.1 Abstract Service Models

A service process is an ordered set of activities, designated to attain a set of or-ganizational goals. For example, in Hospitals, various treatments comprise thehealth-care providing process, which is the organizational essence. Process mod-els are used to provide insights into service processes, document them, verify ac-tivity flows and analyze their performance, which may eventually lead to processimprovement. Different modeling notations can be considered, e.g. Flowcharts,Petri-nets, BPMN, Causal-Nets. For a review of the subject see Chapter 2 in van derAalst (2011).

Figure 1.6 presents the life-cycle of a service process and the role of processmodeling as part of this cycle Weske (2007). We start the explanation of the life-cycle from the process design stage. A new process will undergo a design stage,while an existing process requiring an update will undergo a re-design stage. Thedesign stage produces a process model, using one of the models that we mentionedearlier. Consequently, the model is configured and implemented, either manu-ally or with the help of a supporting information system. As an example, considerthe process of answering inbound calls in skill-based call centers. Complex rout-ing protocols are designed using various models, i.e. bi-partite graphs that presentthe matching of customer-types and their corresponding agent skills (see §2.7 forfurther discussion on modeling in skills-based call centers). The process is then im-plemented using the Automatic Calls Distributor (ACD), which is a process awareinformation system, or PAIS (see Chapter 1 in van der Aalst (2011) for a definitionof PAIS).

After the process model is implemented, the process becomes executable.Monitoring a running process is an essential online stage, since some adjustmentsand tunings of the process may be called upon. During the enactment stage, datais collected into databases. Relevant information on process execution is recordedin these databases and can be thus used for diagnosis (off-line) and monitoring theprocess (online). After the diagnosis and performance analysis stages are com-pleted, it becomes possible to re-design the process again, thus creating a newmodel, ready for implementation.

We now provide an example of a common service process modeling nota-tion that is used in Service Engineering (see http://ie.technion.ac.il/serveng/Lectures/0_Flow_Networks_Combined_2012S.pdf for ref-erence on service process modeling). Specifically, we introduce three types of dia-grams: the activity diagram, the resource diagram and a combined activity-resourcediagram. Another diagram, an information flow diagram, can also be considered,but our discussion will not include this latter type. We refer to this modeling nota-tion of the three diagrams as the ‘Service Process Flow’.

The activity diagram models the flow of entities between different activitiesof the service process. Every possible process-related entity that passes throughdifferent service states may be considered, i.e. customers, files, service providers,etc.

13

Page 25: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Figure 1.6: Service Process Life-Cycle

The resource diagram complements the activity diagram by presenting the re-source perspective, specifically it shows entity-flow through the various resources.Each activity will have a corresponding entity that will be represented in the seconddiagram. Entities that attempt to get served by a busy resource will be enqueuedin ‘resource queues’. Entities that perform concurrent activities will, at times, waitfor all activities to finish. This type of waiting is represented with so-called ‘syn-chronization queues’.

The combined diagram depicts the connection between activities and resourcesdirectly by showing the flow of entities through activities, along with the relevantresources that correspond to these activities. These three diagrams together com-prise a process model that can be later used for specific analytical purposes, suchas building mathematical models, simulation runs, model, as well as other processmodeling stages, such as those in 1.6.

We now present an example of process modeling using the ‘Service ProcessFlow’ notation. The process that we model is the top-level workforce planningprocess in our Test-Case Call Center. This process is not a ‘classic’ service process,since it lacks explicit service-seeking customers, but there exists an obvious lineof analogy between the two. More specifically, it corresponds to the process ofcompleting a project, the activities of which are carried out by resources (as inPERT/CPM, Adler et al. (1995)).

Figure 1.7 presents the activity diagram of the process. The entity that ‘travels’between different activities and receives service is the workforce plan itself. Wewill now shortly describe the workforce planning process, in order to both under-stand the activity diagram and provide insights into the workforce planning ourTest-Case Call Center.2

The entity starts its path by going through a ‘fork’ (or a ‘split’) that (virtually)splits the entity into three different realizations of that entity. These realizations‘travel’ concurrently through three activities: ‘Gathering summarized operationaldata’, ‘Interviewing operational stakeholders’ and ‘Updating time-studies’. We

2In the low-left corner of each diagram, we present the relevant terminology legend.

14

Page 26: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

now discuss these three parallel activities in more detail.The ‘Gathering summarized operational data’ activity is about gathering rele-

vant data that will enable the application of workforce planning models. Specifi-cally, operational data is summarized by a local business intelligence system thatin turn produces operational reports. These reports can be histograms of servicetimes, past arrival rates, histograms waiting times, abandonment rate plots and soon. This information is important for estimating various parameters of the work-force planning model. The required historical information is gathered by the In-dustrial Engineering (IE) department that is in-charge of workforce planning in theTest-Case Call Center.

In parallel to the first process of operational information gathering, the IE de-partment conducts interviews with Call Center team leaders. These interviews re-veal a set of qualitative information that often cannot be modeled via mathematicalmodels. An example for such qualitative information can be ‘field hunches’ of teamleaders on upcoming ‘waves’ of turnovers among the employees. These ‘hunches’can only be ‘felt’ through daily encounters between team leaders and agents.

The third activity, which occurs in parallel with the first two, is carrying outtime-studies. Stopwatch techniques are used to measure mean and standard de-viation of activities that are not recorded by the information systems. These aresometimes required to ‘strengthen’ the team leader’s qualitative intuitions, gath-ered during the interviews. The time-studies are also performed by the IndustrialEngineering (IE) department.

After the above three activities are completed, the workforce plan ‘moves’ tothe (mathematical) modeling step. This reunion of the three entity realizations isreferred to as a ‘join’ or a ‘match’. In the model selection stage, various top-levelworkforce planning mathematical models are considered; one of the existing top-level models is selected. Note that some of the top-level models consider low-leveloperational planning as well, but the IE department is organizationally assigned inthe company headquarters, thus, they are not concerned with operational aspectsof the Call Center. (Analysis of operational aspects is performed in a differentdepartment, which is organizationally placed as an ‘organic’ department of theCall Center.)

Consequently, model parameters are estimated and numerical results for top-level employment levels are attained. The mathematical models do not account formanagement overhead and thus, in addition to the Call Center agents, team leadersand other management roles are added. The modeling and parameter estimationactivities are performed by the head of IE.

The workforce plan is then presented, in detail, to the Human Resources ViceCEO. If it is approved, then it is presented to the company’s CEO for a final ap-proval. If it is rejected, on any of these two presentations, model assumptions arerevised and parameters are re-estimated using new directives provided by manage-ment. Then another round of presentations occurs. This can occur iteratively untilthe plan is approved. The process is planned according to the activity diagram oncein six months. Monitoring and (if necessary) adjusting the top-level staffing is done

15

Page 27: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

on a monthly basis.Various Call-Center resources participate in the top-level workforce planning

process. Figure 1.8 presents a resource diagram of the top-level planning process;specifically, it shows the flow of the workforce plan entity through the relevantresources that correspond to the activities presented in Figure 1.7. Since most re-sources participate in other organizational processes as well, it is likely that theworkforce plan will wait in ‘resource queues’ before being served. As we men-tioned before, another queue-type that we consider in resource diagrams is the‘synchronization queue’. This type of queue is used to model ‘joins’ of entityrealizations, at the completion of several concurrent activities.

In order to provide a complete picture of the service process, activities and re-sources are depicted in a single diagram. Figure 1.9 presents the combined activity-resource diagram, in which we observe the correspondence between the activitiesand resources that participate in top-level workforce planning. Note that our com-bined diagram is different than the ‘traditional’ diagram used in Service Engineer-ing (see http://ie.technion.ac.il/serveng/Lectures/0_Flow_Networks_Combined_2012S.pdf for diagram descriptions).

16

Page 28: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Start

Gathering Summarized

Operational Data

Interviewing Operational

Stakeholders

Update Time-Studies

Model Selection

Presentation

to HR V-CEO

Confirmation

Model Parameters

Estimation

Presentation

to CEO

Confirmation

End

Activity

Legend

Decision

Source/Sink

Yes

Yes

No

No

Figure 1.7: Workforce Planning Process - Activity Diagram

17

Page 29: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Start

Information Systems Call Center Team-Leaders IE Department

End

Head of IE Dep.

HR V-CEO

CEO

Resource

Legend

- Synchronization Queue

- Resource Queue

Source/Sink

Figure 1.8: Workforce Planning Process - Resources Diagram

18

Page 30: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

CEO

Human Resources V-CEO

Head of IE Department

Information System IE DepartmentCall Center Team-Leaders

Start

Gathering Summarized

Operational Data

Interviewing Operational

StakeholdersUpdating Time-Studies

End

Model Selection and

Parameter Estimation

Presentation to HR V-CEO

Presentation to CEO

Figure 1.9: Workforce Planning Process - Activity-Resource Diagram

19

Page 31: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

1.2.2 Data-Driven Process Visualization: Service Networks

The process models that we discussed in the previous section are abstract models.The abstract modeling is important, especially when a new process is designed (seeFigure 1.6). When a process is already existing, a data-driven graphical visualiza-tion of several process executions may be useful.

For newly running processes, such a data-driven visualization can be used forprocess validation against the initial abstract model. In other words, we can validatethat processes are executed according to what we intended in the predefined designphase.

For existing processes, data-driven visualization of the process can be ab-stracted to serve as data-driven models. These data-driven models can be used inprocess performance analysis and process re-design. For more on the importanceof process visualization, see van der Aalst (2011).

We perform data-driven visualizations (of process executions) using transac-tion logs. These transaction logs are automatically recorded by process-aware in-formation systems. We refer to this data-driven visualization of the service processas service networks. In order to create these service networks a transformationof transaction logs into structured logs, such as SEEData (see Appendix A, event-logs (see van der Aalst (2011)), etc. is required. In the statistical context, ser-vice networks can be viewed as part of Exploratory Data Analysis (EDA) Tukey(1977), which is an essential ingredient in understanding complex realities that weencounter in call centers, hospitals and other service systems Armony et al. (2011).

In Chapter 2, we discuss these data-driven visualization thoroughly. We willnow provide an example of such a data-driven service network and conclude theintroduction by relating process modeling and workforce planning. Figure 1.10presents an example for a data-driven visualization of the customer-flow in ourTest-Case Call Center, during a single day (January 24th, 2010). Only customersthat required a human service provider are presented. Customers that finish theirservice within the VRU are not accounted for in this service network. Edge la-bels correspond to flow-counts that passed through these edges and edge widthscorrespond to the square-root of the flow-counts through these edges (in units).

Figure 1.10 presents all the transactions that ‘took place’ between various pre-defined system-states, based on transaction logs of calls (see Appendix A). The var-ious activities that a customer may encounter are represented by rectangle-shapedvertices. We observe that the service network has a structured form, specificallymost calls start their path at the ‘IVR’ state, move into the ‘Queue’ state and fi-nally continue into the ‘Service’ state. Some fraction of the calls require an agentfollowup via the ‘Goodbye’ state. We shall now go over the various states anddescribe them in detail. Figures 1.11 and 1.12 are ‘zoom-ins’ on Figure 1.10 andmay be helpful in understanding the service network visually.

The ‘IVR’ (Interactive Voice Response) state corresponds to the earlier men-tioned VRU (Voice Response Unit). The vast majority of calls that seek a humanagent start in fact at the ‘IVR’. Since these customers (or calls) seek a human agent,

20

Page 32: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

the next state after the ‘IVR’ is most likely to be a queue (designated by ‘Queue’).In Figure 1.10, all the queue-types are aggregated into a single ‘Queue’ state.

All types of agent-groups are aggregated into a single ‘Service’ state. All forms ofcall-backs (customers who request for agents to call them back in ‘slower’ hours)are aggregated into a ‘Goodbye’ state. The ‘Goodbye’ state also includes cus-tomers that asked to return to the ‘IVR’ while waiting in queue.

Several outcomes are possible when visiting each of the above system states(‘IVR’, ‘Queue’,...). These outcomes are represented by the circular-shaped ver-tices (or simply circles). Abnormal call termination (abandonment, disconnection,etc.) is represented by orange circles. Normal call termination (call served, callrescheduled, call-back required, etc.) is represented by green circles. Call transfersbetween queues or between agents is represented by brown circles. Further expla-nation on system states and outcomes can be found in Appendix A, specifically,they are described in dictionaries of the transaction logs.

7866

57

64

7

7844

5695

171

673

8

581

4673

738

176

1470

112

94

47

41

35

2

2

1

15

IVR Queue

Service

Goodbye

AgentTermination

AbandonedShort

Abandoned

UnhandledError

Reschedule

CallProxy Left

OutgoingTransfer

AgentTransfer

Transferto Agent

Completedin the Goodbye

Completedin the IVR

UnhandledError

UnhandledError

OutgoingTransfer

Figure 1.10: Service Network - Customer-Flow - 7:00 – 24:00 - January 24th, 2010

21

Page 33: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Figu

re1.

11:S

ervi

ceN

etw

ork

-Cus

tom

er-F

low

-Zoo

m-I

n(1

)-Ja

nuar

y24

th,2

010

7866

57

64

7

7844

5695

171

673

8

581

4673

738

176

1470

112

94

47 41

35

2

2

1

15

IVR

Que

ue

Ser

vice

Goo

dbye

Age

ntT

erm

inat

ion

Aba

ndon

edS

hort

Aba

ndon

ed

Unh

andl

edE

rror

Res

ched

ule

Cal

lP

roxy

Lef

t

Out

goin

gT

rans

fer

Age

ntT

rans

fer

Tra

nsfe

rto

Age

nt

Com

plet

edin

the

Goo

dbye

Com

plet

edin

the

IVR

Unh

andl

edE

rror

Unh

andl

edE

rror

Out

goin

gT

rans

fer

22

Page 34: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Figu

re1.

12:S

ervi

ceN

etw

ork

-Cus

tom

er-F

low

-Zoo

m-I

n(2

)-Ja

nuar

y24

th,2

010

7866

57

64

7

7844

5695

171

673

8

581

4673

738

176

1470

112

94

47 41

35

2

2

1

15

IVR

Que

ue

Ser

vice

Goo

dbye

Age

ntT

erm

inat

ion

Aba

ndon

edS

hort

Aba

ndon

ed

Unh

andl

edE

rror

Res

ched

ule

Cal

lP

roxy

Lef

t

Out

goin

gT

rans

fer

Age

ntT

rans

fer

Tra

nsfe

rto

Age

nt

Com

plet

edin

the

Goo

dbye

Com

plet

edin

the

IVR

Unh

andl

edE

rror

Unh

andl

edE

rror

Out

goin

gT

rans

fer

23

Page 35: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

1.2.3 Relating Service Networks to Workforce Planning in Call Cen-ters

The service process can be viewed from several perspectives: customers that ‘flow’through various system states (as we presented in Figure 1.10), agents that ‘flow’through various customer queues (types), information that ‘flows’ between re-sources and customers and so on. When performing workforce planning, one mustconsider the utilization profiles of agents. For example, in order to calculate on-the-job absenteeism rates, which is an influential factor in (top- and low- level)workforce planning, we need to estimate the proportion of time that agents are idleout of their total shift time. ‘Classic’ methods of time-studies are both time andresource consuming, as well as redundant when detailed transaction logs exist.

In many call centers, agent activities are recorded in transaction logs and wecan then track their utilization profiles by using these logs. Insights into variousutilization-aspects can be gathered from visualizing the transaction logs. Servicenetworks that describe the agent perspective of the service process are introducedin Chapter 2 and referred to as server networks. These server networks are themain focus of Chapter 2, since they add value to workforce planning. Practicalapplications of the server networks in the context of workforce planning are alsopresented in Chapter 2

1.3 Thesis Structure

The thesis is structured as follows. In Chapter 2, we introduce service networks,focusing our attention mainly on server networks (as opposed to customer-centricnetworks). We relate insights into the utilization profile of agents, gathered inChapter 2, to workforce planning; specifically, we discuss the role of server net-works in the workforce planning process. In Chapter 3, we develop a method formulti-level workforce planning in call centers. We base our method on the theoret-ical foundations of Gans and Zhou (2002). Specifically, we apply three multi-levelmodels that are based on this theoretical foundation to real Call Center data. Weconclude the thesis with a discussion of our results. The discussion, along withresearch limitations and proposed future research, are presented in Chapter 5.

24

Page 36: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Chapter 2

Service Networks

25

Page 37: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

2.1 Introduction

This chapter introduces the modeling, creation, visualization and various appli-cations of service networks. Three network-types are are considered: customernetworks, server networks and customer-server networks. First, we define the ser-vice process as a stochastic process over a space of graphs. We then define servicenetworks to be the realizations of the service process. Consequently, the procedureof extracting various types of service networks is presented, followed by visualexamples of customer networks.

The chapter will then concentrate on server networks, since they constitute anovel approach of service-process analysis. Some visual examples of two server-network types will be presented and discussed. These visual examples will beextracted from the event-logs of the Test-Case Call Center presented in this thesis(see Appendix A). Note that by agents or servers we refer to customer servicerepresentatives (not automated service machines).

We then propose two possible applications of server networks from an Oper-ations Research perspective. The first application - resource utilization analysis- integrates server networks into the process of workforce planning. The secondapplication - queue-mining - serves as a prerequisite to developing a simulator ofcomplex service systems. Consequently, we shortly discuss a third type of net-works, customer-server networks and show their relation to queue-mining. Weconclude the chapter by relating our work to the research field of Process Mining.

2.2 Service Process and Service Networks: Definitions

We define the service process as a discrete-time stochastic processX = {X(t), t ≥0} with X(t) ∈ G. The state-space G = (V, E) is taken to be the set of all directedgraphs G = (V,E) with V ⊂ V and E ⊂ E ; here, V is the superset of all verticesand E the superset of all edges.

The three network types discussed above - customer networks, server networksand customer-server networks - will then have different state-spaces, since serversand customers go through different activities. We define the base-time units ofthe service process to be t = 0, 1, 2..., in seconds, but other resolutions may beconsidered as well. We require the graphs to have no self-loop-edges from a vertexto itself. Sets of attributes are added to the realizations of the service process duringthe service network’s extraction.

We define service networks to be realizations of the stochastic process X .Formally, the time t service network x(t) ∈ G is a directed graph x(t) = G(V,E),with V ⊂ V and E ⊂ E .

An aggregate network x((s, t]) = G(V,E) over a time-interval (s, t] is definedas a single network representing the t− s service networks x(s+ 1), ..., x(t), withV ⊂ V and E ⊂ E . We denote Vx(t) the set of vertices of x(t) and Ex(t) the edges.The vertex set of the aggregate-network is as follows:

26

Page 38: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

V =t⋃

k=s+1

Vx(k). (2.1)

Thus, V of the aggregate network is the union set of all nodes visited in x(s+1), ..., x(t).

Similarly, we define the edge set E([s, t]) to be:

E =

t⋃k=s+1

Ex(k). (2.2)

In other words, the set of edges E contains all pairs of vertices that ever had atransition between them in x(s+ 1), ..., x(t).

2.3 Creating and Visualizing Service Networks (via SEE-Graph)

We now present the procedure for service network’s creation and visualization (net-work extraction) that will follow three steps: selection of the network’s primitives,transformation of the event-log into a service network and applying graph lay-out algorithms for network-visualization. The current section will use the servernetworks as a guiding example, but a similar procedure is performed to extractcustomer networks. We now present the three extraction steps in detail.

2.3.1 Step 1 : Select Network Type and Attributes

The first step of extracting service networks comprises four basic decision-makingproblems. The first decision to be made is the selection of the network-type ofinterest. These network types can be customer networks, server networks or othernetwork-types that one might consider useful. Each network-type selected requiresa different definition of the state-space G. The set of the network’s vertices, V , maychange significantly among the various network types.

For example, in customer networks we define V as all possible states and sub-states that a customer may visit. In the server networks we denote V as all possiblestates that agents may visit. These could be the queues that the agents serve oractivities performed by the agent. The superset of Edges, E , is defined similarlyfor both network types as all feasible connections between each pair of vertices inV .

The second important decision to be made is the selection of the time domainfor our service process realization. The time selection can vary from a single sec-ond (instance network) to finite intervals - minutes, hours, weeks (aggregated net-works).

27

Page 39: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

The third choice is on filters applied to the vertex set of the service network.For example, in customer networks filters may be applied so that VRU-only pathswill be created, without including calls that reached an agent. In server networks afilter according to agent skill-groups can be important when analyzing assignmentprotocols of the agent-pools to call-types.

In the future, various clustering techniques will be applicable on the network’svertex set. For example, clustering server activities that have similar attributes willbe applicable for server networks. The clustering alternative will enable compactnetwork-visualization and cluster-based analysis over the networks.

Lastly, once a service network x(t) = G(V,E) is extracted, it is possibleto define attributes for its vertices and edges. We define a vector of attributesa(v) = (a1(v), a2(v), ..., an(v)), for each vertex v ∈ V , with a(v) ∈ A(V ),which is a set of all vertex attributes. We also define a vector of attributes a(e) =(a1(e), a2(e), ..., an(e)), for each edge e ∈ E, with a(e) ∈ A(E), which is a setof all edge attributes. For most of our service networks, the vector a(v) will havetwo components: average length of stay in each vertex (average activity duration)and vertex type.

The most important idea of Step 1 is that different service network types cor-respond to different graph representations. Moreover, building blocks (vertex set,edge set, attribute sets) are flexible and can be adjusted to accommodate differentperspectives of the service process.

2.3.2 Step 2 : Transform the Event-Log into a Network

The key element in our network extraction process is the data upon which it relies.In the SEELab, data from various service systems is systematically collected andprocessed into pre-designed data-logs (see Appendix A). In service systems, likeour Test-Case Call Center, two types of event-logs are available: calls event-logand agents event-log. The calls-logs are used to create the customer networks andthe agents-logs are used to create the server networks. We will, from now on, focuson the agent-logs of our Test-Case Call Center, not without mentioning that manyorganization do not keep both log types and thus extracting one of the proposednetwork types may turn out to be impossible.

The agents-log contains records of all agent-events that occurred as part of theservice-process. Some events that are not directly related to the service process,such as breaks and private calls, are recorded as well. We will later show whyregistering such events in the connotation of workforce planning is essential.

Figure 2.1 shows a snapshot of the event-log for a single agent in the verybeginning of his shift. We now shortly describe the relevant fields. The first field‘agent’ contains a unique agent-id. In our case we are looking at an agent-log ofagent number 003. The two following fields, ‘start time’ and ‘end time’ containtime-stamps for each agent-event. We can see that agent 003 has performed a log-inat 15:59. The next field is the ‘agent lowlevel’ that contains the agent’s skill-group.

The field ‘state’ carries the current state of the agent. Here, a variety of states

28

Page 40: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

is possible: business call, break, idle, available, etc. The ‘state’ provides an incom-plete information because while being in a certain state an agent can be respondingto various events. The current event handled in the state is contained in the field‘event id’. The last field, ‘service’, contains the queue-type served by the agent. Ifthe activity is not customer-related then ‘service’ is defined to be 0.

Figure 2.1: Part of single agent’s transactions - Israeli Bank Call Center

Each record is to be interpreted via dictionaries that are associated with theagent-log. We learn that agent 003 performed an entry to the system (state = 10;event id = 56 is ‘Log-In’). He then became idle (state = 4; event id = 60) andready (state = 2; event id = 25). Afterwards, he received his first incoming callof that shift, serving a customer of type 8, which is the General Banking class (themost common customer class). For a detailed description of our Test-Case CallCenter event-logs, we refer the reader to Appendix A.

The vertices of the server networks can be either the set of activities performedby the agent (Figure 2.2) or the set of queues related to these activities (Figure2.3). All states that are not queue-related (non-call states) are identical to bothnetwork types. This is an example of how one network type can have several sub-types that shed light on different aspects of the same process-perspective (resourceperspective, for our example).

29

Page 41: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Figure 2.2: Visualizing log - Figure (2.1) - Activities only

Figure 2.3: Visualizing log - Figure (2.1) - Queues and Activities

30

Page 42: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

The transformation from the events-log into a service network is performed byapplying parsing and linking algorithms. These algorithms create the sets V andE of the requested realization x by linking the data to the decisions made in Step1. The algorithms also create and calculate the attributes for each vertex and edgeof the network. At the end of the parsing and linking process, the service networkis created and becomes ready for visualization.

2.3.3 Step 3 : Visualize The Network

Once the service network is created and stored in a proper format (text file in ourcase), the visualization is performed by a graph-drawing software (SEEGraph) de-veloped in the SEELab. The layer-drawing-algorithm used in SEEGraph is basedon Sugiyama’s algorithm Sugiyama et al. (1981), but mostly changed by Dr. ValeryTrofimov.

Certain differences exist between the various network-types in their extraction(server networks vs. customer networks) but we will not go into such technicaldetails. For now we shall assume that after following the above three steps, we haveat our disposal a realization of the service process x(t) = G(V (t), E(t) stored ina database along with its visual layout.

The first two steps of the discovery process will soon be possible through asimple user interface, SEEGraph, that is currently developed in the SEELab.

We will now briefly present a few customer networks, before focusing our at-tention on server networks. The latter is the main theme of this thesis, which isconcerned with the agent’s perspective of the service process.

31

Page 43: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

2.4 Customer Networks: Brief Overview

Customer realization networks, or customer networks, depict the paths that cus-tomers travel within the service system during a certain time-interval. These net-works can be perceived as empirical models of the service process, from the cus-tomer’s perspective. We now present some examples of customer networks.

Figure 2.4 presents an unstructured customer network for a whole day in alarge Call Center of a U.S. bank. The vertices superset V for this type of networkcorresponds to all possible states that customers may encounter during their visitto the service system. The edges superset E is the set of all edges connecting eachpair of vertices in V , which contains only feasible connections. We note that it isvisually impossible to gather any practical insights into customer paths, nor can wededuce an empirical model of the customer-flow.

33975

4221

2006

2886

2741

361

354697

1111

43

1049

994

319

162

2281

3908

160

504

266

193

122

158

118

7

1

32246

35916

1259

2006

2823

3798

876 352

370

107 491

545

566

127

48

48

2052

47

59

33

307

19

17

390

547

14

3

192

221

20

12

60

282

174

355

1405

169 91

23 1

1022

73

35

112

27

3

119

4

34

243

2935

3908

7

23

17

1

44

71

2

516

267229

266

11

78

8 132

132

172

5

11

41

67

7

17

8

8

118

45

27

13

22

8

135

150

24

1

8

3

3

37

24

16

19

26

67

32

10

3

4

2516

1 11

11

11

8

35

6

7

11

6

4

13

6

3

1

6

13

1

11

2

18

1

7

1

9

33

2 7

2

4

2

6

6

4

3

4

1

1

11

6

1

3

8

1

2

1

4

2

2

1

1

1

1

1

1

1

1

1

2

2

3

1

1

1

1

1

1

1

34

3

1

1

26102

735

4489

1704

2232

2240

53

782 95

10

604

393

24134

105

32

2194

82

1369

1362

33

71

501

22

57

205

757

545

3

208

4

1497

2561

34

254

176

25

82

115

153

2843

3071 560

327

14

1

17

1058

26

18932

15

28

1215

34

46

31 94

2

58

15

49

39

9

94 36

52

5916

70

5

1

8

27

8

4

4

2

10

9

6

1

71

3

5

86

7

5

4

1

1

1

4

21

1

1

1

1

3

1

2

3

1

1

Entry

VRURetail

VRUPremier

VRUBusiness

VRUConsumer Loans

VRUSubanco

VRUSummit

Business LineRetail

Business LinePremier

Business LineBusiness

Business LinePlatinum

Business LineConsumer Loans

Business LineOnline Banking

Business LineEBO

Business LineTelesales

Business LineSubanco

Business LineSummit

AnnouncementRetail

AnnouncementPremier

AnnouncementPlatinum

AnnouncementConsumer Loans

AnnouncementOnline Banking

AnnouncementTelesales

AnnouncementSubanco

MessageRetail

MessagePremier

MessageBusiness

MessagePlatinum

MessageConsumer Loans

MessageTelesales

NonBusiness LineBusiness

NonBusiness LineSubanco

NonBusiness LinePriority Service

NonBusiness Line NonCC ServiceCCO

NonCC ServiceQuick&Reilly

Overnight ClosedRetail

Overnight ClosedConsumer Loans

Overnight ClosedEBO

TrunkRetail

TrunkPremier

TrunkBusiness

TrunkConsumer Loans

TrunkOnline Banking

TrunkEBO

TrunkTelesales

TrunkPriority Service

Trunk

Trunk

Trunk

Trunk

Trunk

InternalTotal

OutgoingTotal

NormalTermination

NormalTermination

UndeterminedTermination

AbandonedShort

Abandoned

OtherUnhandled

Transfer

Transfer

Figure 2.4: Customer Network - One day in a large Call Center, U.S. Bank

Adding structure to the above network is essential for the tasks of visualizationand customer-flow modeling. Figure 2.5 presents a customer network, for thosecustomers who require an agent. Note the difference between the ‘spaghetti struc-ture’ van der Aalst (2011) of Figure 2.4 and the layered (hierarchical) structure ofFigure 2.5. Figure 2.5 corresponds to one hour in the same large U.S. bank Call

32

Page 44: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Center, so it can be viewed as a sub-network of Figure 2.4.The vertices of V are still defined as before, but now state-type attributes are

attached to each vertex of the realization. These attributes are fed into the lay-out algorithm, mentioned in Step 3. The visual outcome is a structured layerednetwork, where the customer-flow makes visual sense and modeling the serviceprocess is now possible. The edge labels denote the flow counts through each oneof the edges. We learn, from the flow counts, that most customers enter the systemthrough the VRU and are routed into the Retail queue. There, most of them com-plete their journey after receiving service from a service provider agent (annotated‘C’ for completed). Other customers abandon, get transferred into another queueor go back to the VRU. The graph layers are created by repeated visits to the VRU(3 at the most).

55888

3611113 43320 160505194 7

36512 23633845 3792

845 103

120

314

3314

155

43

13

4

34

594 14017

547

191

16

1060 303174

1405

6

2373

432

242

3052 3908

7

23

12119

60

472131 20217

19

8

9

13 20 9

150

14 41611 56 6 106

8

7 58

30924

873

20863633 3536

562

867

1240

260

294

8

78

20

666

19835

3

1571

211148

29

213

3005

6

3671

18

11

19 356

126

10

46

4

12

3

5

1

2

1

VRU

Retail Premier Business PlatinumConsumer LoansOnline Banking EBOTelesales Subanco Summit

VRU

Retail Premier Business PlatinumConsumer Loans Online BankingEBOTelesales SummitOut

VRU

Retail Business

C

A

T

C

CC C C

C

CC

C

C

C

C

C

C

CC

C

C

C

C

C

C

AA

A

A

A

AAA A

A

A

A

A

A

A

T

OutOut Out Out OutOut Out OutOut Out

Out Out Out Out

Figure 2.5: Structured (layered) Customer Network - One hour in a large U.S. BankCall Center

In Figure 2.5, the VRU is treated as a black-box and customer experiencewithin the VRU is neglected. In Figure 2.6, a VRU of a large Israeli bank CallCenter is explored. Each vertex of the network is now an activity performed bycustomers within the VRU. In this VRU-network the superset of vertices V is de-fined to be all possible VRU-activities. Label-empty states are added to the net-

33

Page 45: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

work for better visual representation: triangular nodes denote VRU-entry positions(sources) and circular nodes denote VRU-exits (sinks).

Daily

(Deposit)

Order

Checkbooks

Identification

Change

Password

Agent

Fax

Query Transfer

Securities

Stock

Market

Perform

Operation

Credit

Error

43123

234

270

1352

35315

3900

7895

830

68

65

273

1063

231

768

133

1032

897

40

49

54

21

71

30

165

53

114

29

16

35

10

9

12

107

6

5

21

8

26091

4115

12317

962

1039

147

42

18

28

114

14

72

20

Figure 2.6: VRU Network - One day in a large Israeli Bank Call Center

Networks such as the VRU network provide a zoom-in on the service process,presenting only the aspects of interest. The main path of a typical call can bevisually tracked using this network: most customers arrive at the VRU, identifythemselves and perform a single query regarding their account, before exiting thesystem. The rest of the branching inside the VRU occurs to a minority of the calls.Such insights can improve VRU-design, for example by offering the customer toperform query-activities first, have the VRU user reach early a frequently-visitedoption.

Customer networks provide an empirical view of the service process from thecustomer’s perspective. The complementary empirical view of the service process,from the service provider’s perspective, is described in the next section, in theform of server networks. These two perspectives, combined, will bring us furthertowards data-driven modeling, analysis and enhancement of the service process.(At the end, we shall also briefly comment on a third network type, through whichthe viewpoints of both customers and servers are integrated.)

2.5 Server Networks: Definitions, Types and Applications

2.5.1 Definitions

As we mentioned before, the state-space G of the service process, from the server’sperspective consists of the collection of all directed graphs with vertices as agent-activities (or activity-related queues) and edges connecting these activities.

34

Page 46: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

We will now define a visual legend for server network attributes. This legendis fixed across all different types of server networks. The first attribute is the colorof each vertex: it represents the various possible state-types that the agent goesthrough during a shift. Figure 2.7 depicts the color-legend for all subsequent servernetworks. Each state will have one of the presented types.

Call-backs

Inbound Call

Dialer Call

Available

Idle States

Outgoing Call

Start/End

Calling back customers who left a message

Incoming calls that reach the agent

Performing sales via Predictive Dialing

Available to answer Incoming Calls

Unavailable to answer calls (due to breaks, private

calls, none-call related work, such as back-office)

Outgoing calls (sales, reminders, messages to

customers, calls to other agents)

Phantom states that designate beginning (sources)

and ending (sink) of the network

Figure 2.7: Color attribute legend for Server Networks

Another vertex-attribute, already mentioned before, is the average duration ofa visit in a state. It is visually added to the vertex-label and appears in bracketsright after the state label. For edges, the default attribute is the transition-countsthat represent the flow through an edge. The calculation for both of these attributesis presented in §2.3.1.

Note that for some networks, the attribute of flow counts will not be presenteddue to visual overload. Instead, the arrow-width will be proportional to the flowrate of the agents through each edge, thus emphasizing relative frequency of tran-sitions. (This option can be selected by the user during the visualization process.)

We now present two sub-types of server networks that are currently availablefor creation. (Other types of networks, with alternative definitions of the vertexsuperset V can be also considered). We refer to the sub-types of the server networksas server network types. We use our Test-Case Call Center as a source for ourserver network examples and the applications to follow.

35

Page 47: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

2.5.2 Type 1: The Activity Server Networks

The first type of server network is the activity server network (or activity-network).Each vertex of the graph describes a certain activity that the agent (or agents) per-formed within the selected time-interval. The superset of vertices V of the state-space G is defined as all possible agent-activities.

We categorize these activities into two groups: productive and non-productive.Productive activities are all activities that bring added value to the organization.For example, answering incoming calls, performing sales and getting back to cus-tomers. Non-productive activities are activities that do not provide added value,such as breaks, private calls and various types of idleness.

Idleness could be back-office work imposed by Call Center management thatis unrelated to calls. These non-productive activities can by no means be canceled,since agents must rest and perform other duties as well, but they can be shifted to‘slower’ hours.

For strictly productive activities, there exists a recorded set of sub-activitiesthat may occur during the call. Examples for these sub-activities could be callallocation, call retrieval, talking, consulting with senior agents, etc. In our activity-networks, these detailed activities are included in the superset of all vertices. Aclustering of the sub-activities with respect to the call-type is possible (Inbound,outgoing, callbacks...). Note that some vertices will have the same label e.g. ‘Al-locate for call’ yet they appear in different colors according to the type of callhandled.

We start our examples of server networks with a five-minute aggregate activitynetwork for a single agent. Figure 2.8 is an activity-network between 19:00 and19:05 on January 24th, 2010, for agent 043. Figure 2.9 is a zoom-in on the graph.From now on, if visually required, we will show a zoom-in graph that emphasizesimportant aspects of the network of interest. We will assume that the connection ofthe presented networks to the definitions of the process S and its realization s areknown and not mention it with each example.

The figure depicts a light-traffic hour in the bank Call Center, yet the singleagent network has nine vertices - nine activities and sub-activities that had occurredduring such a short period. This is due to the swift state-switching in such a highresolution, with most state-visits taking only a few seconds, on average.

Figure 2.10 presents the activity-network for all agents that worked between19:00 and 19:05. As we see, the graph is starting to take a ‘spaghetti-like’ form. Itis very difficult to infer visual insights, since the network is completely unreadable.A deeper useful understanding of the service process during that time-interval re-quires statistical analysis that will use the database containing the network’s com-ponents (V ,E). The first two illustration-networks were chosen to highlight thecomplexity of such miniature server networks, giving a taste of what an all-agents-whole-day network is going to look like.

Figures 2.11 and 2.12, show that a whole-day aggregation for a single agentis completely intractable. We can only discover that the agent handled all existing

36

Page 48: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

33

13

12

1113

3

Start

Allocate For Call (1)Available (4)

Consult (148) Disconnect (22) Disconnected (55) EndMake Agent Dialer (27)Other Party Disconnected (1)

Transfer Done (8)Wrap Up (4)

Figure 2.8: Activity-Network - Agent Number 043 - 19:00 - 19:05 on Jan 24th,2010

Figure 2.9: Activity-Network - Agent Number 043 - 19:00 - 19:05 on Jan 24th,2010 - Zoom In

call-types - incoming and outgoing - during his shift. This can provide a roughoverview of the agent’s profile, but without revealing any further details.

The whole-day activity-network for all agents is even more ‘spaghetti-like’,with very little visual interpretation feasible (see Figures 2.13 and 2.14). What ispossible to learn is that the incoming calls dominate the other state-types. Sucha complex network calls for a visual clustering over call-types (currently underdevelopment in the SEELab).

Here, the edge width serves as an indicator to the areas of the agent-stateswhich are more active during the day. In our example, we see that the inbound callsare very dominant, but zooming in reveals that private-calls have many incomingflows of various widths, including thicker flows, which indicate many entries toprivate calls.

A short analysis of the network’s component-database reveals that agents whoworked that day spent a total of 14 hours on private calls. Although perceivednegligible, 14 private-call hours a day are equivalent to a loss of almost 2 full-time agents. Such discoveries can be useful for the Call Center management. Thisapproach, of analyzing the network components for insights into agent utilization

37

Page 49: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

profiles will later be used in the context of workforce planning (see Section 2.6.1).

Figure 2.10: Activity-Network - All Agents - 19:00 - 19:05 on Jan 24th, 2010 -Zoom In

38

Page 50: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Start

Allocate For Call (0) Allocate For Call (1) Allocate For Call (1)

Available (4)

Completed (0)

Completed (1)

Consult (148)

Consult (94)

Dial (39)

Disconnect (50)

Disconnect (48)

Disconnected (39)

Disconnected (52)

End

Held (21)

Held (144)

Hold (127)

Idle (70)

Inbound Call (160)

Logged In

Logged Off (0) Long Break (1226)

Make Agent Dialer (44)

Make Call (192)

Make Call (54)

Medium Break (274)

Other Party Disconnected (2)

Other Party Disconnected (54)

Paperwork (141)

Paperwork (77)

Paperwork (37)

Paperwork (97)

Private Call (35)

Ready (61)

Ready (16)

Ready (2)

Reschedule (0)

Retrieve (34)

Retrieved (68)

Retrieved (108)

Short Break (6)

Transfer Done (39) Transfer Done (41)

Wrap Up (7)

Wrap Up (6)

Wrap Up (2)

Wrap Up (15)

Figure 2.11: Activity-Network - Agent 043 - Whole Day - Jan 24th, 2012

39

Page 51: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Figure 2.12: Activity-Network - Agent 043 - Whole Day - Jan 24th, 2012 - ZoomIn

40

Page 52: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Start

Allocate For Call (0)

Allocate For Call (1)

Allocate For Call (0)

Available (7)

Completed (0)

Completed (0)

Completed (0)

Completed (1)

Consult (138)

Consult (124)

Consult (114)

Consult (121)

Dial (19)

Disconnect (46)

Disconnect (49)

Disconnected (65)

Disconnected (7)

Disconnected (60)

End

End Handling (0)

Error (12)

Held (21)

Held (99)

Held (69)

Held (37)

Held Call Disconnected (72)

Held Call Disconnected (28)

Hold (108)

Hold (94)

Hold (125)

Idle (197)

Inbound Call (192)

Join Conference (91)

Join Conference (155)

Logged In

Logged Off (0)

Long Break (1384)

Make Agent Dialer (67)

Make Call (120)

Make Call (119)

Medium Break (507)

No Answer (71)

No Answer (132)

No Answer (11)

Other Party Disconnected (9)

Other Party Disconnected (32)

Other Party Disconnected (61)

Paperwork (131)

Paperwork (141)

Paperwork (141)

Paperwork (313)

Private Call (30)

Ready (56)

Ready (1)

Ready (0)

Ready (2)

Reschedule (0)

Retrieve (124)

Retrieve (203)

Retrieve (81)

Retrieved (68)

Retrieved (139)

Retrieved (98)

Retrieved (104)

Short Break (13)

Transfer Done (53)

Transfer Done (50)

User Cancelled (69)

User Cancelled (40)

Wrap Up (4)

Wrap Up (9)

Wrap Up (8)

Wrap Up (8)

Figure 2.13: Activity-Network - All Agents - Whole Day - Jan 24th, 2012

41

Page 53: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Figure 2.14: Activity-Network - All Agents - Whole Day - Jan 24th, 2012 - ZoomIn

42

Page 54: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

2.5.3 Type 2: The Queue-Based Server Networks

Our second network type is the queue-based server network (referred to as QBR-network). These networks are dual to the SBR customer networks presented in§2.4. Just as the customer types are routed with respect to the relevant agent skills(SBR), here agents are assigned to queues according to their qualification to handlethe queue types. For QBR-networks, instead of defining the vertices to be agent-activities, all call-related states are clustered with respect to the queues handled bythe agents during the selected time-interval. Thus, when handling a General Bank-ing type incoming call, the sequence Allocate for Call, Inbound Call, Consult,Wrap up will now turn into a single vertex - General Banking - with the propercolor to mark an incoming call. The rest of the vertices that are not queue-relatedare identical to those in activity-networks.

Figure 2.15 depicts a five-minute aggregated queues-based network for agent043. The network is a different semantical representation of Figure 2.8, presentedearlier.

Figure 2.15: Queue-Based Network - Agent Number 043 - 19:00 - 19:05 on Jan24th, 2010

The graph is more compact than the equivalent activity-network and no zoom-in is called for. The agent performed 4 sales-calls during these five minutes. It isseen (via the purple color) that most of the transactions are due to the dialer call-types. The dialer is not really a queue of waiting customers, but rather a queueof waiting outgoing calls to be made (a technology referred to as predictive dial-ing Samuelson (1999)). We now complete examples for QBR-networks with anappetizer in the form of Figure 2.16, where we see Level1 agent group transitionsthrough the various customer types (see §3.3.1 for further description of customertypes and agent groups).

43

Page 55: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Start

Available (5)

End

General Banking (190)

General Banking (304)

General Banking (32)

Idle (228)

Internet Support (868)

Investments (100)

Investments (83)

Long Break (1170)

Managers VIP (143)

Medium Break (463) Paperwork (66)

Paperwork (324)

Private Call (228)

Sales (131)

Securities (495)Shifting (103)

Wrap Up (5)

Wrap Up (10)

Wrap Up (29)

Wrap Up (11)

Figure 2.16: Queue-Based Network - Level1 Agents - 19:00 - 19:05 on Jan 24th,2010

44

Page 56: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Visual inspection of Figure 2.16 teaches us that the General Banking queueis prevalent among Level1 agents, since Shifting (from bank branches to the CallCenter) and Managers VIP queues are also related to the General Banking customerclass. Selecting agent-groups and creating server networks only for these groupscan come in handy when analyzing the scheduling protocols of agents to queues.Section §2.6.2 provides an example of applying queue-based networks to betterunderstand the assignment of agents to calls.

2.6 Applications of Server Networks:Workforce Planning and Queue Mining

Creating server networks can lead to useful insights and play the role of preliminaryvisual exploratory analysis prior to performing workforce planning (see §3.4). Itcan be considered part of the descriptive statistics that we review prior to applyingmore advanced statistical techniques.

For the purpose of workforce planning, server networks are, in a certain sense,more useful than the customer networks since different aspects of the resourceactivities are missing in customer networks and appear in the server networks. Forexample, customer networks do not include call-related work performed by serviceagents off-line. Server networks will integrate the off-line work along with theon-line work for the same call, thus providing a more complete insights into call-handling.

The first application that we present in this chapter makes use of activity servernetworks to gain insights into the time-varying utilization profile of agents. Thisutilization profile analysis gives an insight into the amount of time lost duringcertain time-intervals and maps the main causes for such a loss. This is some-what similar to classic Industrial Engineering work sampling performed in systemswhere event-logs are unavailable.

The second application that we propose, queue mining, aims to analyze queue-based networks (see §2.5.3). The essence of this application is to capture thematching protocol between agent-groups and queue-types, specifically the agent-assignment protocols and varying service times as a function of these assignmentprotocols. This is a complementary approach to skill mining, which is enabled byusing the SBR networks presented in §2.7. Specifically, see first application to skillmining in §2.7.

Through the second application, we provide evidence that creating and analyz-ing the QBR server networks are two necessary important steps in developing anautomated simulation of a complex multi-task and multi-skill service system.

2.6.1 Application 1: Utilization Profile Analysis

The initial motivation to create server networks came from the application that wehereby present. This application has a natural link to the main theme of the current

45

Page 57: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

thesis which is workforce planning. One of the keys in workforce planning is tounderstand the process of on-the-job loss of capacity. For example, if we staff 10agents for a certain shift, but 3 of them are constantly busy with non-productiveassignments, then we effectively staff only 7 agents.

Assuming that we wanted to staff 10 agents to meet a certain service level,we are going to fail to do so. Thus, we need to either staff more than 10 agentsor prevent the 3 agents from performing those non-productive tasks. We call thephenomena of having agents unavailable for calls while logged-in: on-the-job ab-senteeism.

Workforce loss influences single-shift staffing and therefore affects the weekly,monthly and yearly workforce planning as well (see §1.1 for more on multi-levelworkforce planning). We use the aggregate server networks over finite time in-tervals to understand on-the-job absenteeism and provide rough estimates for thecapacity lost. This enables the Call Center management to better plan its workforceas well as better manage the shifts online.

Utilization analysis is demonstrated for two hours of the same day in our Test-Case Call Center (January 24th, 2010). The hours differ in their arrival rates, wherethe first hour (10:00 - 11:00) is the busiest of the day with 957 arriving calls andthe second hour (16:00 - 17:00) is a ‘weaker’ hour with 459 arriving calls. We ex-plore single-agent activity-networks and all-agent activity-networks for these time-intervals. The intra-day hourly arrivals volume is presented in Figure 2.17. The twohours of interest are highlighted with red circles.

Figure 2.17: Total Arrivals For Jan 24th, 2010

Exploring the Busy Hour: The average abandonment rate for the busy hour was30% (three times the desired service level) and 0% of calls waited their designated

46

Page 58: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

target time. These statistics can suggest that either shift-staffing was inappropriateor that, given an accurate shift-staffing, part of the capacity was lost. The lattercould occur if agents were handling tasks that prevented them from answeringincoming calls. To find the answer, we look at some activity server networks duringthe busy hour.

12

12

1 1

3

2

1

3

85

2

1

21

21 5

6

Start

Allocate For Call (1)

Available (4)

Completed (0) Consult (78)End

Hold (126)

Idle (156)

Inbound Call (131)

Paperwork (211)

Retrieve (135)

Retrieved (28)

Short Break (4)

Wrap Up (11)

Figure 2.18: Activity-Network - Agent Number 003 - 10:00 - 11:00 on Jan 24th,2010

Figure 2.19: Activity-Network - Agent Number 003 - 10:00 - 11:00 on Jan 24th,2010 - Zoom In

We first observe a single-agent activity-network during the busy time-interval.Figures 2.18 and 2.19 show the activity-network of Agent 003. Agent 003 is anexample for a properly utilized agent, handling incoming calls, with very few non-productive states. By calculating path proportions we learn that most inbound callshandled by the agent (75%) had 131 seconds of average talk time and 11 secondsof average wrap-up time (total of 142 seconds of handling). Paperwork around anincoming call (when performed) averaged 211 seconds. Most of the calls (same75%) did not go through any sub-activities such as call-holding, consulting senioragents, etc. We shall save these insights for when we explore the ‘slow’ hour forthe same agent.

Consider now the hourly activity-network for agent 023, who also worked dur-

47

Page 59: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

ing the busy time-interval (Figures 2.20 and 2.21). The activity-network shows thatthe agent had more idle states than agent 003 (see the network’s legend in Figure2.7). The agent was idle 6 minutes and went on a break of more than 10 minutes.This is an example of an agent that inflicted a significant capacity loss (16 out of60 minutes of idleness) during the busiest hour of the day.

Figure 2.20: Activity-Network - Agent Number 023 - 10:00 - 11:00 on Jan 24th,2010

Figure 2.21: Activity-Network - Agent Number 023 - 10:00 - 11:00 on Jan 24th,2010 - Zoom In

We next turn to the all-agent activity-network for the busy interval. The net-work is presented in Figures 2.22 and 2.23. The width of the edges in the network isproportional to the flow count. (SEEGraph also provides an option for edge widthto represent the square root of flow counts in case edges are too wide to present.)A wide-edged triangle is formed between three nodes of the graph. The rest of theedges have a relatively small number of transitions. We zoom-in on the triangleand discover that most of the action took place around the following sequence ofstates: {Inbound Call, Wrap-Up, Available, Allocate New Call}. This visual in-sight is similar to the single-agent case, where most calls ended without consulting,holding the call and so on.

48

Page 60: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Figure 2.22: Activity-Network - All Agents - 10:00 - 11:00 on Jan 24th, 2010

49

Page 61: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Figure 2.23: Activity-Network - All Agents - 10:00 - 11:00 on Jan 24th, 2010 -Zoom In

50

Page 62: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Estimating Capacity Loss during a Busy Hour: Visual analysis of complexServer Networks is virtually impossible. Thus, the database is directly at the levelof network components: vertices, edges and their attributes. This is a good illustra-tion to service networks having more than just a visual part. The network buildingblocks can be accessed via tools such as Microsoft Access (since our database is in*.mdb format) and analyzed using statistical or spreadsheet software.

As a first step, we review the graph adjacency matrix. We then use a simplequery to select only non-productive states and calculate loss-time as counts ×durations, in seconds. We then sort the loss-time field in a descending order andaggregate over the different sources that led to these idle states. The outcome ofthis process is a table of non-productive states and each state’s loss-time over thehour - see Figure 2.24. Capacity loss, in hours, can be calculated as loss−time

3600 .

Figure 2.24: Capacity Loss States - All Agents, 10:00 - 11:00 on Jan 24th, 2010

Such simple network component exploration reveals that most of the on-shiftcapacity is lost mainly due to long breaks (over 15 minutes), medium breaks (over2 minutes) and general idleness (non-productive tasks). This can be a symptomof mismanagement of the staffed agents in this critical hour of the day. Aftera conversation with the Call Center’s OR group we got feedback that indeed thebreaks are not managed nor supervised online.

Outgoing Calls: Another interesting issue that comes up from our network com-ponents analysis relates to outgoing calls. In Figure 2.24, we did not consider theoutgoing calls to be non-productive, but the existence of such calls turn agents un-available to answer incoming demand and thus unable to meet the service levelsrequired (e.g. abandonment rates).

Here, a management decision is to be made whether workforce must be addedas compensation for outgoing work or, alternatively, control outgoing calls andshift them to less busy time-intervals. The Call Center management chose the sec-ond option: in particular, not recognizing outgoing calls as a relevant workload that

51

Page 63: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

deserves extra staffing. In reality though, these calls do occur at all times and gen-erate a gap between the expected service levels and the service levels experiencedin reality.

Demand-Capacity Analysis: We propose a rough-cut analysis of calls-demandand server-capacity for the busy hour, using our empirical data for the busy time-interval. This analysis is performed to answer the question: were the low service-levels of the busy hour caused by an under-staffed Call Center or by poorly utilizedagents.

We propose the following steps for the rough-cut analysis:

1. We denote the number of calls arriving during busy hour as D. We discoverthat D = 957 calls.

2. We set the desired service level for these calls, for example abandonmentprobability Pab = 0.1. We thus want to answer Deff = D · (1−Pab) = 867calls for that hour.

3. We obtain real service times (including off-line activities around calls) andcalculate the average service time E(S) = 4.7 minutes.

4. We calculate the number of agents online O, defining O to be:

O = Deff · E(S) = 58. (2.3)

5. We consider breaks, since these are unavoidable and exist in work regula-tions and add the average number of agents on a break B,

B =TotalBreakT ime

Hour= 12.5, (2.4)

to O:

N = O +B = 70.5. (2.5)

The actual average staffing for that hour was 71 agents, enough to take calls andgo on breaks. This result could imply that the low service levels, at the peak hour,was due to non-productive states (idleness and private calls) and the inability tocontrol outgoing calls. The above analysis is very rough, but it provides an insightinto agent utilization during busy hours.

Exploring the ‘Slow’ Hour: Here, we focus again on agent number 003 and hisaggregated activity-network, this time during the ‘slow’ hour. The activity-networkis presented in Figure 2.25.

When comparing the ‘slow’ hour to the heavy-traffic hour (see Figure 2.19)we observe longer average service times in the ‘slow’ hour. We also observe that

52

Page 64: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

3

311

3 2

1

11 1

3

Start

Allocate For Call (1)

Available (6)

End

Hold (83)Inbound Call (574)

Paperwork (473)

Retrieve (151)

Wrap Up (8)

Figure 2.25: Activity-Network - Agent Number 003 - 16:00 - 17:00 on Jan 24th,2010

75% of the calls still end after talking and wrapping-up but talk-times are longer onaverage. Paperwork around an incoming call is almost doubled in average servicetime.

Finally, we observe the aggregated agents network presented in Figure 2.26.We witness the appearance of the Dialer call-type (see the legend in Figure 2.7).The Dialer is a system that assigns outgoing sales-calls to the agent screen. TheDialer is supposed to appear only during light-traffic hours, hence its existencein the ‘slow’ hour network. By observing Figure 2.26, we learn that there aredifferent characteristics of the agent shift-profile that vary over time, with respectto the system load.

To conclude, what we have learned from analyzing the two different hours isthat agent utilization profiles are to be explored as a time-varying process. Byexamining even our toy-examples, completely based on averages and rough es-timates, we gained insights into the key elements of the agent shift-components,which could serve a guide to a deeper analysis. The result of such an analysis cansignificantly influence multi-level workforce planning in a service system, as wellas on-line management of the agents in such a system.

53

Page 65: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Start

Allocate For Call (1)

Allocate For Call (1)

Allocate For Call (1)

Available (5)

Completed (1)

Consult (54)

Dial (13)

Disconnect (108)

Disconnect (58)

Disconnected (126)

Disconnected (24)

End

End Handling (0)

Held (94)

Hold (82)

Hold (330)

Hold (249)

Idle (511)

Inbound Call (195)

Join Conference (286)

Logged In

Logged Off (0)

Long Break (1243)

Make Agent Dialer (60)

Make Call (132)

Make Call (135)

Medium Break (543)

Other Party Disconnected (113)

Paperwork (180)

Paperwork (273)

Paperwork (780)

Private Call (30)

Ready (2)

Ready (0)

Reschedule (0)

Retrieve (165)

Retrieve (760)

Retrieve (1)

Retrieved (162)

Short Break (13)

Transfer Done (43)

Transfer Done (45)

Wrap Up (8)

Wrap Up (10)

Wrap Up (9)

Wrap Up (8)

Figure 2.26: Activity-Network - All Agents - 16:00 - 17:00 on Jan 24th, 2010

2.6.2 Application 2: Queue Mining -Deviations from Formal Protocols Do Exist

In our Test-Case Call Center, agents attain three skill levels: Level1 (mostly Gen-eral Banking calls), Level2 (Internet support and investments) and Level3 (Con-sulting). For more information on agent skill levels we refer the reader to §3.3.1.New agents start with Level1 skill and progress (if at all) until they reach Level 3(for those who do). According to formal routing protocols, a higher level can takeall lower levels calls but not vice versa.

Our application of queue mining is performed by looking at the server networksof the QBR-type and gathering information to gain insights into queue-based de-sign and routing protocols. An exercise of using these networks will be presentedfor the heavy-traffic hour that we analyzed in the previous section (see Figure 2.17).

Similar analysis can be performed for other time periods, since there is ground

54

Page 66: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Queue Arrivals % of Total Main Skill LevelGeneral Banking 809 89 L1

Securities 40 4.4 L2Internet Support 10 1.1 L2

Investments 37 4.1 L2Consulting 14 1.4 L3

Total 910 100 –

Table 2.1: Test-Case Call Center - Customer Types, Average Arrival Rates perHour and Main Agent Skill-Level

to believe that QBR-designs and protocols are time-varying. For example, contraryto typical queue-types that arrive mostly in the mornings and decline their arrivalrates towards the evening, some queues (e.g. Securities) are more common inthe afternoons, due to the opening hours of Wall Street (7 hours time differencebetween Israel and the East-Coast of the U.S.).

In Figure 2.27, we show a chart of intra-day proportion of hourly arrivals inan hourly resolution, for the weekdays of year 2010. The blue line denotes theaverage proportion of calls from all queues that arrived per hour and the red is thesame parameter for the Securities queue. The afternoon ‘peak’ of the Securitiesqueue is visualized on the chart.

Figure 2.27: Hourly proportions of arrivals - All queues (blue) and the Securitiesqueue (red) - Weekdays of 2010

We return to the busy time-interval of January 24th, between 10:00 - 11:00, asdescribed in §2.6.1. We extend the statistics presented for the time interval, goingover the incoming arrival rates for all queues and the staffing levels in agent-levelresolution. This information is relevant when performing queue mining. Tables 2.1and 2.2 describe arrivals and staffing levels:

We learn from these tables that the dominant skill level that is designated to

55

Page 67: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Skill Level Average Staffing Average OnlineLevel1 50 40Level2 15 10Level3 6 4Total 71 54

Table 2.2: Test-Case Call Center - Skill Level, Average Staffing per Hour andAverage Number of Agents Online

meet most of the incoming demand is Level1. The two other groups are there totreat the more important customers and give support to the first level. Our goal isto learn agent-groups assignment protocols from the QBR-networks.

In Figures 2.28 and 2.29, we present the queue-based network of Level1 agent-group. As before, edge width is proportional to the flow levels and, thus, we ob-serve that most calls assigned to Level1 agents came from the General Bankingqueue. Evidence of Level1 agents supporting the higher skilled Level2 agents ex-ists, since Internet Support and Investments queues were also handled by Level1.This teaches us that deviations from formal protocols do indeed exist.

In the second QBR-network, shown in figures 2.30 and 2.31, Level2 agent-group’s assignments are depicted. We observe that 79 incoming calls of the GeneralBanking queue are supported by this group. So far, Level3 calls are not present inneither Level1 or Level2 networks.

Inspecting the Level3 QBR-network displayed in Figures 2.32 and 2.33, wesee that Level3 agents handled mostly Consulting calls. These calls are typicallylonger (average durations over 10 minutes) than the other four call-types, hencesmall amounts of arriving calls bring along a large workload into the Call Center.‘Little’ evidence of Level3 supporting the other agent-groups exists (discouragedby bank management).

56

Page 68: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Start

Available (4)

End

General Banking (256)

General Banking (297)

General Banking (781)

Idle (175)

Internet Support (559)

Internet Support (135)

Investments (243)

Logged In

Long Break (1012)

Managers VIP (243)

Medium Break (581)

Paperwork (77)

Paperwork (54)

Private Call (49)

Shifting (245)

Short Break (17)

Wrap Up (8)

Wrap Up (5)

Wrap Up (8)

Figure 2.28: QBR Network - Level1 Agents - 10:00 - 11:00 on Jan 24th, 2010

Figure 2.29: QBR Network - Level1 Agents - 10:00 - 11:00 on Jan 24th, 2010 -Zoom In

57

Page 69: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Start

Available (6)

End

General Banking (201)

General Banking (145)

Idle (92)

Investments (264)

Logged In

Long Break (941)

Medium Break (652)

Paperwork (100)

Paperwork (148)Private Call (21)

Securities (308)

Shifting (334)

Short Break (4)

Wrap Up (10)

Wrap Up (5)

Figure 2.30: QBR Network - Level2 Agents - 10:00 - 11:00 on Jan 24th, 2010

Figure 2.31: QBR Network - Level2 Agents - 10:00 - 11:00 on Jan 24th, 2010 -Zoom In

58

Page 70: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Start Allocate For Call (0)

Allocate For Call (1)

Allocate For Call (1)

Available (5)

Consult (148)

Dial (36)

Disconnect (21)

Disconnect (386)

Disconnected (55)

Disconnected (5) End

Held (32)

Hold (199)

Idle (150)

Inbound Call (381)

Long Break (1231)

Make Agent Dialer (87)

Make Call (250)

Make Call (232)

Medium Break (463)

Other Party Disconnected (1)

Paperwork (668)

Private Call (178)

Ready (2)

Ready (14)

Reschedule (0)

Retrieved (310)

Transfer Done (16)

Transfer Done (25)Wrap Up (3)

Wrap Up (8)

Wrap Up (9)

Figure 2.32: QBR Network - Level3 Agents - 10:00 - 11:00 on Jan 24th, 2010

Figure 2.33: QBR Network - Level3 Agents - 10:00 - 11:00 on Jan 24th, 2010 -Zoom In

59

Page 71: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

From observing the above QBR-networks, we gathered basic insights on QBR-design and routing protocols of the Call Center, based on one time-interval only.Extending these insights to a thorough queue mining can be done by examiningnetworks for other hours and performing a deeper analysis in the spirit of §2.6.1.Such further analysis is likely to reveal the dynamics of the agent assignment inthe service process.

Another possible queue-mining application is estimating service times, includ-ing back-office work that is not viewed in customer networks. We explore QBR-networks visually (zooming in, via PDF view) to get basic information regardingservice times. We focus on General Banking customers, as a reference to the sim-plest tasks performed within the service process. Using networks presented in Fig-ures 2.28, 2.30, 2.32 from January 24ht 2010, we observe the mean and standarddeviations of talk times, as function of the agent-level that handled the call:

• Level 1 Agents: Mean = 256 seconds, SD = 258

• Level 2 Agents: Mean = 200 seconds, SD = 217.25

• Level 3 Agents: Mean = 192 seconds, SD = 211.73

Note that the talk times do not expose the whole picture, since service times in-clude other activities, such as wrap-up and paperwork. In busy hours, however, wesee (also via server networks) that many agents go into the available state straightafter talking, without any other operations performed.

Observing means and standard deviations of talk times and service times mayprovide intuition whether an exponential distribution of service rates is plausiblefor our analysis (in our example notice Level1 agents serving General Banking).We observe, in the above example, that even basic average durations and standarddeviations can provide indications on what to expect in the followup analysis. Dis-tributions of service times for each pair can be extracted from data and thoroughlyanalyzed as an important next step. Figure 2.34 presents service times of GeneralBanking agents, served by Level1 agents on January 24th, 2010.

We can now fit distribution to the above histogram and use it as input to math-ematical models or Call Center simulators. To conclude, deeper investigation ofvarious networks can play an essential role in constructing data-driven models ofthe system, thus contributing to the development of analytical tools such as an au-tomated data-based simulators.

60

Page 72: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Figure 2.34: Service Time Distribution - Level 1 Skill Level - General BankingClass - Jan 24th, 2010

2.7 Customer-Server Networks: Complementary Approachto Queue Mining

The third network type we present is customer-server networks. In the world of callcenters, these are referred to as SBR networks or Structural networks. The skills-based routing (SBR) architecture of calls within a Call Center is a basic essentialingredient in modeling the service process. All customers and agents are routed andassigned respectively according to this architecture. (Equivalently, customer needsare matched with server skills.) The structure and routing protocols are usually pre-defined by management and enforced by the ACD. We present a one-hour empiricalSBR-network of an Israeli Telecom company Call Center in Figure 2.35.

What we essentially get is a bipartite graph, which in Figure 2.35, does notappear bipartite due to graphical layout optimization. (Having all customer classeson one side and all agent skills on the other, would produce a much more clusteredfigure). The attributes added to the vertices in the current example are colors:agent-groups are designated with orange rectangles and the queues are designatedwith green rectangles. The edges have the attribute of flow-counts between the twoadjacent vertices that an edge connects; correspondingly, the width of the edge isproportional to these counts (see Figure 2.35).

The actual routing that occurred during the selected time-interval can be vi-sually inferred by using such SBR-networks. We call this analysis of the SBR-

61

Page 73: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Figure 2.35: SBR-Network - One day in a large Israeli Telecom’s Call Center

networks skill-mining. This is a complementary approach to the already men-tioned queue-mining mentioned in §2.6.2.

The first application of skill-mining could be checking the conformance of theempirical network against the SBR-model that is supposed to be followed by theACD. Empirical deviations can indicate that the SBR design, implemented by theACD, was alternated by Call Center shift managers due to various reasons (heavyloads, under-staffing of certain agent groups and so on). These manual alternationscould worsen or improve desired service levels set by management. By examiningSBR networks, together with several service level measures, one can re-tune theACD protocols, thus improving performance.

Another application of skills-based analysis is the ability to identify sub-designsof the existing routing design. We see that, for example, the Internet and Inter-net Surfing queues are served by agent pools 20 and 21. An ‘N’-type design isused to provide service, with Internet customers being served only by agent pool21 and Internet surfing customers being processed by both agent-pools. Such vi-sual encapsulation of the sub-designs enables a comparison between mathematicalmodels that exist for some architectures (‘N’-type for instance) to the empiricaldata, thus validating or refuting the mathematical analysis. (See http://ie.technion.ac.il/serveng/Lectures/SBR.pdf, which is the source ofthe now-common terminology ‘I’,‘V’,‘∧’, ‘N’, ‘M’, ‘W’ designs).

62

Page 74: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

2.8 Relating our work to Process Mining

The server networks, one of the main contributions of this thesis, were contem-plated and created without being aware of the Process Mining field of research.Process Mining is part of the mentioned earlier, Business Process Management(BPM) approach (see §1.2.1). The position of Process Mining is between machinelearning and data mining on one hand, and process modeling and analysis on theother van der Aalst (2011).

Process Mining is applied to event-logs of business processes in three serialsteps: process discovery, conformance checking and process enhancement. Wenow elaborate on these three steps and relate them to our work.

Discovery: The discovery of business processes is performed by transformingevent-logs into data-driven models. Some processes are completely unknown andare actually discovered during such transformations. For other processes, a-prioryknowledge may exist, but visualizing the process is valuable for further analysis.An example for a basic discovery algorithm, the alpha algorithm, can be found invan der Aalst et al. (2004).

The idea of discovering the process is similar to the idea of creating service net-works. Our networks represent realizations and aggregations over realizations ofservice processes. Process Mining definition of process discovery is taking realiza-tions and inferring on the process itself both visually and via data-driven models.

Conformance Checking: Discovered data-driven business models are next com-pared against abstract models, in a process referred to as conformance checking.In many organizations, these abstract models are used as protocols for process ex-ecution (van der Aalst and van Hee K.M. (2004)). In other organizations, abstractmodels are just visual representations of business processes, created for purposesof managing and analyzing these processes. (For example, such abstract modelsmay serve a basis for constructing a simulator of the business process). The con-formance stage is analogous to our proposed applications in §2.6. For example,we test for conformance of real routing protocols to assumed routing protocols viaserver networks.

Process Enhancement: Finally, insights on the problematic aspects of the pro-cess itself, or the model of the process, are transformed to a model/process cor-rection stage. Then data-driven models are implemented as an input to variousperformance tools. In our work, we propose applications that can serve as a basisfor correcting workforce planning, or lead to a simulation of complicated servicesystems that will in turn enable the improvement of the service process.

Our central message here is that bringing together the fields of Process Miningand Operations Research, would give rise to promising research directions.

63

Page 75: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

In one direction, much research is called for when integrating well known sta-tistical and operational models into the process and model enhancement proceduresin Process Mining.

In the other direction, discovery and conformance checking algorithms, whichare well-developed in Process Mining, can be naturally applied during an opera-tional analysis to service systems. For example, when simulating a complex servicesystem, many possible paths and outcomes for customers and service providers areconsidered. Discovering these processes and checking conformance of data-drivenmodels against abstract models, is an essential step in validating such simulators.

64

Page 76: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Chapter 3

Multi-Level Workforce Planningin Call Centers

65

Page 77: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

3.1 Introduction

We consider inbound call centers in which service providers, or agents, answermultiple types of calls. Each agent is associated with a certain skill-level that de-fines the set of services that he is allowed to perform. Our goal is to developand apply a multi-level workforce planning methodology for Call Center agents.Specifically, we seek to do so by applying and validating workforce planning mod-els, using real Call Center data.

First, we formulate our theoretical framework, based on the work of Gans andZhou (2002). Some model components are adjusted to better fit the reality ofskills-based call centers. Then we briefly provide an informative description ofthe Test-Case Call Center, to which our models are applied. Next, three multi-levelworkforce planning models are applied to the Test-Case Call Center: Base-CaseModel, Full Model and Controlled Promotions Model. Each of the three models iseither a special case or an extension the theoretical framework presented in Gansand Zhou (2002). Model application is performed following these four steps:

1. Basic assumptions and model formulation are presented.

2. Assumptions are validated against real data.

3. Model parameters are estimated.

4. Model is solved and results are presented.

Steps 1 and 4 will be discussed in the current Chapter. Steps 2 and 3, with anaccompanying brief description of the data-sets used, are presented in §4.

Lastly, results of all three models are compared to real workforce planning,as performed in our Call Center. This enables us to provide both theoretical andpractical insights into workforce planning in call centers.

3.2 Theoretical Framework

Our multi-level workforce planning framework is defined as a discrete time, con-tinuous state-space Markov Decision Process (MDP), with a discounted cost ob-jective function Gans and Zhou (2002).

We start with formulating top-level planning components, specifically state-space, control, top-level costs and dynamics. We then discuss demand for service,service levels and various resolutions for ‘adequately’ meeting demand.

We present two types of low-level planning models. In the first low-level plan-ning model an optimization scheduling problem is solved, resulting in a cover tohalf-hour staffing requirements. This low-level model corresponds to the bottom-up approach.

The second low-level planning model sets capacity to meet demand at aggre-gate resolutions. This is achieved by predicting the total monthly workload and

66

Page 78: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

estimating the capacity of a single agent (or the proportion of the workload that asingle agent can process). The staffing, in the second low-level planning model, isthe result of dividing the monthly workload by the capacity of a single agent. Thislow-level model corresponds to the top-down approach.

Consequently, a link between low-level and top-level workforce planning iscreated, thus providing a multi-level framework. Finally, this multi-level frame-work is formulated, subject to system dynamics, as a single dynamic programmingproblem.

3.2.1 Top-Level Planning: Time Periods and Horizons

The planning periods of our top-level model are indexed t = 0, 1, 2, ..., T , withT being the top-level planning horizon. These periods are often considered to beweeks or months, with planning horizons set to be quarters, half a year or years.

3.2.2 Top-Level Planning: State Space

We define the state space as the employment level at the beginning of period t. Theemployment level is defined as the number of agents serving at different skill levels,prior to time-t recruitment. We define m discrete agent skill-levels (or simplylevels), i = 1, 2, ...,m. Agents are assumed to attain these skill-levels over theircareer span, in a serial order.

Formally, we define time t employment level as:

nt = (n1,t, n2,t, ..., nm,t), (3.1)

where ni,t is defined as the number of level-i agents employed at the beginningof period t. We may assume that the state-space is continuous due to the largeworkforce employed in the considered call centers.

3.2.3 Top-Level Planning: Control

At the beginning of each time period t = 0, 1, ..., T a decision is made on thenumber of recruits hired to be level 1 agents. Our control variable xt is thus thenumber of newly-recruited agents at the beginning of period t (naturally, xt ≥ 0).Only the first component of nt is altered after hiring. The post-hiring state nt isdefined as:

nt = (yt, n2,t, ..., nm,t), (3.2)

with first component yt being yt = n1,t + xt.

3.2.4 Top-Level Costs: Hiring and Waging

We consider two types of top-level costs: hiring costs and wage costs. Hiring costsare incurred in the agent selection process, course expenses, etc. The cost of hiring

67

Page 79: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

a single agent is denoted by h. Wage costs include wages, bonuses, benefits andany other overhead costs, related to employment of a single agent. These costs areskill-level dependant, since higher skills are usually paid higher salaries. The wagecost for level-i agents is denoted by Wi.

3.2.5 Top-Level Planning Dynamics: Turnover and Learning

We define employee turnover as the number of agents who leave the Call Center.Agents may leave the organization completely, be promoted to Call Center man-agement or change position within the organization. As long as they cannot answerincoming calls, they are considered part of employee turnover. We define the timet turnover vector as:

qt(nt) = (q1,t(yt), q2,t(n2,t), ..., qm,t(nm,t)), (3.3)

with each turnover component qi,t(·) defined as the number of level-i agents thatleave at the end of period t. Note that qi,t(·) is a function of the post-hiring em-ployment at level-i.

We assume that there exists a stochastic proportion qi,t of level-i agents thatturn over at the end of time t, out of all employed level-i agents. We also assumethat agents turn over independently of each other. Therefore, the turnover functionof level-i agents at time t can be written as:

qi,t(k) = qi,t · k, ∀i, (3.4)

(3.5)

with k being the post-hiring number of employed level-i agents at time t.We define learning as the process of employees acquiring new skills. We as-

sume that all agents start their service with skill-level 1 and progress through skillsin a serial order. Note that not all agents must learn up to skill-levels i = 2, ...,m.For example, a certain agent may learn up to level i = 3 and then decide to leavethe Call Center. Similarly to turnover, we define the time t learning vector as:

lt(nt) = (l1,t(yt), l2,t(n2,t), ..., lm,t(nm,t)). (3.6)

We assume that learning occurs after turnover (those who turn over do notlearn), at the end of period t. Thus, a stochastic proportion ˜li,t of the remainingemployees (those who did not turn over) will learn from level i to level i+ 1:

li,t(k) = li,t · (1− qi,t) · k, ∀i, (3.7)

(3.8)

with k being the number of post-hiring level-i agents employed at time t.We make a distinction between learning and promotion. In our basic frame-

work we assume that progress through skills is due to learning. Agents are ‘pushed’

68

Page 80: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

forward by some uncontrolled process, with a certain stochastic proportion mov-ing from one skill to the next. Later, we consider a model where progress throughskills is assumed controlled. We refer to this controlled progress as promotion.Promotion decisions ‘pull’ agents from lower levels in order to fill staffing gapsoriginated by turnover and/or an increase in demand, at higher skill-levels.

The dynamics of the MDP (update rules of the state-space from time t to timet+ 1), which correspond to the defined above turnover and learning processes areformulated in §3.2.8.

3.2.6 Low-Level Planning: Demand For Service

Incoming calls, or demand for service, is the main reason for agent employmentin most call centers. We refer to such call centers as ‘Inbound Call Centers’, eventhough outgoing calls of various types do occur on a daily basis: calling customersback upon request, sales, leaving messages to customers, etc. We consider theseoutgoing calls to be a capacity loss, since agents who make these calls are preventedfrom answering incoming calls. There are call centers that define outgoing calls(sales) as their primary objective, are not considered in the present work.

The goal in workforce planning is to set employment levels (capacity) that arerequired to meet demand ‘adequately’. The term ‘adequately’ is adjusted accord-ing to a service-level agreement (SLA) set by management. A typical SLA in acall center may include various operational performance measures (such as aban-donment rates, proportion of customers waiting,...), targets for these performancemeasures (such as ‘up to 10% of customers wait more than 90 seconds’) and time-resolutions over which these targets are to be accomplished (hours, days, weeks,months). Service-level agreements that correspond to strategic goals may also beconsidered. It is difficult though to relate these strategic goals to workforce plan-ning through operational models, such as those considered in this thesis.

Demand can be met at aggregate resolutions, i.e. answering 90% of calls thatarrive during a certain month (resulting in top-down planning). In order to meetdemand at such resolutions, it is enough to forecast the number of calls arrivingduring an entire top-level period.

Meeting demand at detailed resolutions requires one to forecast the number ofcalls arriving during shorter time intervals, such as half-hours (resulting in bottom-up planning). We denote for now the demand at time t as Dt, for both detailed andaggregated approaches. We shall later specify different definitions of demand: onefor aggregate planning and one for detailed planning.

3.2.7 Low-Level Planning: Operating Cost Function

In our multi-level models, low-level planning is embedded in top-level planning,using an operating cost function Ot(nt, Dt). This operating cost function is de-fined as the sum of all operational costs at time period t, given demand Dt and

69

Page 81: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

post-hiring vector nt. In other words, we attach an operational ‘price tag’ to ourrecruitment decision at time t.

We now present two approaches for modeling operating cost functions. Thefirst model follows Gans and Zhou (2002), §5.1. Specifically, it is a Linear Pro-gramming Problem (LPP), which attains optimal shift-scheduling for agents, forthe entire time period t. We refer to this approach as bottom-up planning, sincedemand, SLA and capacity staffing are considered at detailed resolutions first andlater serve as lower bounds for top-level employment.

The second modeling approach is operating cost function that corresponds toaggregate demand. We refer to this approach as top-down planning, since de-mand, SLA, capacity and operational costs are considered at top-level resolutionfirst, while operational low-level aspects come later. For top-down planning, oper-ational costs are estimated using past average expenses, without validating feasi-bility of the shift-scheduling, and taking top-level employment as given.

Generally, top-down planning fits organizations with low-varying demand andlong-term service-level agreements. We later demonstrate that, due to the inabil-ity to accommodate high variability in demand, top-down planning falls short ofbottom-up planning for workforce planning in call centers. Performing this com-parison between the two approaches is important, since top-down planning is sim-pler and less expensive than bottom-up planning (with respect to data collection,model simplicity,...).

Operating Cost Function 1: Bottom-Up Planning

As mentioned before, we divide time period t into S sub-intervals indexed by s =1, 2, ..., S (we think in terms of half-hours). During time period t, we assume thatthere exist F feasible shift-types, indexed by w = 1, 2, ..., F .

We define A as the shift-covering matrix, of dimension S × F , with its com-ponent as,w being:

as,w =

{1 if shift w is operated during sub-interval s,0 otherwise.

(3.9)

We assume that for each interval s there is at least one as,w that is positive,thus assuming that there is at least one shift covering sub-interval s, for each s =1, ..., S. This assumption is important, when showing properties of our operatingcost function. We also assume that the same shift-types are available for every timeperiod t, thus A is stationary.

We define Zt as the scheduling matrix for time period t, having size F ×m.The component ztw,i of Zt is the number of level-i agents scheduled to work onshift w, during time period t. We define the level-i scheduling vector Zt,i at timeperiod t as the scheduled number of level-i agents to each shift-type.

We define Cm×F as the cost matrix, with each component ci,w being the totalcosts incurred in scheduling level-i agents to shift w. We assume that the opera-tional costs are time-independent, and thus the matrix C is stationary.

70

Page 82: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

We assume that there exist j = 1, ..., J customer types. Demand is denoted byDt, a matrix of size S × J . Each component of Dt, D

s,jt , denotes the number of

j-type calls arriving during sub-interval s, for planning period t.We define the staffing matrix as NS×m(Dt) for period t. Each column vector

of N(Dt), Ni(Dt) stands for the required staffing level of level-i agents duringlow-level interval s and top-level interval t. The staffing vectors Ni(·) accommo-date low-level aspects, such as target service levels, on-shift absenteeism, learningcurves, on-the-job training and routing protocols. We model these staffing func-tions in §4.2.2. We use the notation e for the vector of all-ones.

Operating cost function 1 at time t, Ot(nt, Dt), is in terms of the followingLPP:

Ot(nt, Dt) = minZt e′ · C · Zt · e (3.10)

s.t. :

A · Zt,i ≥ Ni(Dt), , ∀i, (3.11)

Z′te ≤ nt, (3.12)

ztw,i ≥ 0, ∀w, i. (3.13)

The connection between the operating cost functions of different time-periods(t = 0, 1, ..., T ) is made through the MDP goal function (3.18). Constraints (3.11)set a lower bound on staffing of level-i agents during interval s. As mentionedbefore, we assume that Ni(Dt) provides the staffing requirements in order to ‘ade-quately’ meet demand at interval s. Constraints (3.12) ensure that total shift staffingto parallel shifts for all planning periods, will not exceed post-hiring vector nt.

Remark 1. For notational convenience, we abuse notation and refer to the opti-mization problem stated above via its objective function, Ot(nt, Dt). This abuseof notation will prevail throughout the current chapter.

Operating Cost Function 2: Top-Down Planning

For top-down planning purposes, we consider demand Dt as a j-component vectorfor J job types arriving at period t. We define Nm×1 as an aggregate staffing re-quirement vector. Each component of N , Ni(Dt), is defined as ‘adequate’ staffingfor level-i agents.

We define a decision vector z1×m as an aggregated staffing vector of level-i fortime period t. We denote c1×m as the average operating costs incurred in staffinglevel-i agents.

Operating cost function 2 at time period t, Ot(nt, Dt), is then defined as fol-

71

Page 83: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

lows:

Ot(nt, Dt) = minzt c′ · zt (3.14)

s.t. :

zt ≥ N(Dt), (3.15)

zt ≤ nt, (3.16)

zti ≥ 0, ∀w, i. (3.17)

Note that operating cost function 2 can be considered a special case of the firstoperating function. Specifically, selecting a single shift w = 1 for each period twith a single sub-interval S = 1, reduces the first operating cost function to thesecond one.

3.2.8 Objective Function and System Dynamics

Having defined our multi-level model components we now present the discountedobjective function, with discount factor α:

minx0,y0,...,xT ,yT

E

T∑t=0

[αt(hxt +W1yt +

m∑i=2

Wini,t +Ot(nt, Dt))], (3.18)

subject to the following dynamics, for t = 0, ..., T :

yt = n1,t + xt, (3.19)

n1,t+1 = (1− l1,t)(1− q1,t)yt, (3.20)

n2,t+1 = (1− l2,t)(1− q2,t)n2,t + l1,t(1− q1,t)yt, (3.21)

ni,t+1 = (1− li,t)(1− qi,t)ni,t + li−1,t(1− qi−1,t)ni−1,t, ∀i > 2. (3.22)

The model assumes that the initial state-space (n1,0, ..., nm,0) is known in ad-vance. Note that expectation over costs, in the MDP, is due to the stochastic natureof the learning and turnover processes.

3.2.9 Optimal Control: ‘Hire-up-to’ Policies

We define the state-dependent ‘hire-up-to’ policy type:Definition 1: A policy is of the state-dependent ‘hire-up-to’ type if, for any ntthere exists y∗t (n2,t, n3,t, ..., nm,t) such that the optimal hiring number x∗t is

x∗t =

{y∗t (n2,t, n3,t, ..., nm,t)− n1,t if n1,t < y∗t (n2,t, n3,t, ..., nm,t),

0 otherwise.(3.23)

72

Page 84: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

In words, a policy is of the ‘hire-up-to’ type if there exists an employmentlevel threshold up to which we want to recruit. We often refer to these ‘hire-up-to’thresholds as target workforce levels. Note that if the current employment level ishigher than the threshold, then no additional hiring is performed.

A central result for our theoretical framework is presented in Gans and Zhou(2002), §4, Theorem 1. This theorem states that for operating cost functions thatare jointly convex in the control, for any time period t the optimal (hiring) policy isof the ‘hire-up-to’ type. In other words, it is optimal to hire-up-to some workforcelevel y∗t of level-1 employees. The operating cost functions that we propose in§3.10 and §3.14 are jointly convex in the control (see Proposition 1 in Gans andZhou (2002) for the proof, since our functions are special cases of the describedoperating cost function). In practice, when applying the theoretical framework onour Test-Case Call Center, we propose a policy that will include the exact ‘hire-up-to’ thresholds. We calculate these thresholds by exploiting model assumptions andthe special structure of our operating cost functions.

3.3 Test-Case Call Center: Israeli Bank

The Israeli Bank Call Center serves bank customers, providing them with infor-mation and various transactions. Some calls are served within the Voice ResponseUnit (VRU), while the rest continue and receive service from customer serviceproviders, or agents. These agents mostly serve inbound calls (80% of calls areincoming). For more on the agent-utilization profile in our Test-Case Call Center,see §2.6.1.

Skill-based routing and Queue-based routing are practiced (see §2.6.2 and §2.7),specifically, routing calls of various service types to ‘appropriate’ agents (accord-ing to required service type) and scheduling (routing) idle agents of various skillsto ‘appropriate’ queues (by the corresponding agent skill).

Our Test-Case Call Center operates six days a week, starting Sunday (firstweekday in the Israeli week) and ending Friday (first day of the Israeli weekend,which is Friday-Saturday). On weekdays, calls are received between 7:00 - 24:00.On Fridays and some holidays, the Call Center operates between 7:00 - 14:00. Onweekdays, agents are scheduled to 11 predefined shift-types. For example, morn-ing shifts may start at 7:00 or 8:00 and last between 7-8 hours each. Fridays andholidays consist of a single 7-hour shift.

3.3.1 Customers: Types and Service Levels

Arriving customers are divided into types according to their choices within theVRU. Table 3.1 presents customer types, total number of arrivals for each type andtheir relative frequencies. The data is based on February 2010:

Customers are also clustered into priority groups: some are declared VIP cus-tomers, while others are Regular customers. Service levels are set by performance

73

Page 85: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Queue Type Arrivals % of Total ArrivalsGeneral Banking 140182 88.4%

Securities 5181 3.3 %Internet Support 7313 4.6 %

Investments 4371 2.7 %Consulting 1595 1 %

Table 3.1: Test-Case Call Center - Customer Types, Total Arrivals and ArrivalProportions - February 2010

Customer Type Target Time (For 80% of Calls)General Banking Regular 60sec

General Banking VIP 45secSecurities 30sec

Internet Support 90secInvestments 30secConsulting 30sec

Table 3.2: Test-Case Call Center - Customer Types and their Target Answer Times

measures and target times to answer, for each customer type. At least 80% of theincoming calls are to be served within these target times. A separation between VIPand regular customers was made only among General Banking customers. Table3.2 presents target times per customer type:

Another performance measure that is supervised by management is the aban-donment rate of all customers. A maximal abandonment rate of 10% is allowed.This target is monitored online and off-line in management debriefings in differenttime-scales. An important issue here is that there is no unified resolution at whichthese service levels are monitored. As we show later, when discussing our results,enforcing target service levels at half-hour resolutions may have a great impact onstaffing.

3.3.2 Agents: Learning and Training

Recruitment of new personnel is practiced from two sources: newly-recruited agentsand experienced bank employees who can be converted to serve as agents. Our ini-tial theoretical framework, presented in §3.2, assumes that only the first type ofrecruitment is possible. We assume the same for now and note that this assumptionis reasonable due to the small availability of a suitable workforce for inner recruit-ment. Figure 3.1 describes a potential career path of an agent. (Not all agents mustgo through all stages.)

We now describe a possible career path of a newly-recruited agent. Potentialagents (candidates) first undergo a selective process managed by an outsourcingfirm. Those who qualify go through a basic banking course that lasts a month.

74

Page 86: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Course

General Banking

Securities

Level 1

General Banking

Securities

Investments

Internet Support

Level 2

General Banking

Securities

Investments

Internet Support

Consulting

Level 3

*Main Skill

*Optional

Figure 3.1: Israeli Bank skills chart

This basic course is taught in-house and includes online practice. In our models weassume that trainees do not contribute to workforce capacity, but receive paychecksequal to Level1 agents. After course completion, agents acquire the basic skill-level, Level1. The learning curve is embedded within staffing functions Ni(Dt)that were mentioned in §3.2.7.

Level1 agents are allowed to serve two customer types: General Banking andSecurities. Every month some proportion of Level1 agents learn on-the-job andreach Level2.

Two more customer types are added once Level2 is acquired: Investments andInternet Support (technical queue). Level2 agents are also allowed to serve Level1calls, mostly as a backup for Level1 agents during busy hours.

Level3 is the last attainable skill level. Level3 agents serve the valuable Con-sulting customers, with very little backup from lower level agents. After a while inLevel3, agents may then be promoted to serve as tellers in branches or as Call Cen-ter junior management. We consider these promotions to be part of the monthlyturnover, since these agents are unable to answer incoming calls. Figure 3.2 is adata-driven customer-server network that presents empirical routing protocol of theTest-Case Call Center for February 2010. (For more on customer-server networks,see §2.7.)

Customer types are denoted by rectangles, while skill-levels are denoted by el-lipses. An arrow between a customer-type and a skill-level corresponds to feasibletransitions between the two. Arrow width corresponds to flow-counts, thus widerarrows imply higher transition volume. For example, Figure 3.2 shows that themajority of arriving customer-types are general banking customers. This customertype is mostly served by Level1 agents, with Level2 and Level3 serving as back-upskill levels.

75

Page 87: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Figure 3.2: Routing design of the Israeli Bank

3.4 Multi-Level Workforce Planning for an Israeli Bank

We are now able to achieve our goal, which is developing and applying a data-driven methodology for multi-level workforce planning in a call center. Specifi-cally, we apply three planning models to the Test-Case Call Center. Each model isa special case or an extension to the multi-level framework presented in §3.2.

The first model we apply is our Base-Case Model, which will serve as a bench-mark to more complicated models. It assumes no learning between skill-levels,thus assuming a single agent skill. This assumption is a violation of reality, but theBase-Case Model already turns out to be a useful approximation due to its insights;and obtaining these insights is enabled by simplicity.

The second model includes learning between three skill-levels, correspondingto the real learning scheme in our Test-Case Call Center. We refer to this model asour Full Model, although it still assumes that turnover and learning are stationaryand deterministic. A possible scenario in the Full Model is the unattainabilityof desired staffing levels, for levels i = 2, ...,m, caused by low learning rates.Thus, our Full Model goes beyond the theoretical framework presented in Gans andZhou (2002) to include inner recruitment into skill levels i = 2, ...,m, i.e. branchtellers re-hired as agents. We already discussed in §3.3.2 that such a recruitment ispossible in the Test-Case Call Center, although in reality it is relatively limited dueto low recruitment potential.

Lastly, our third model extends the full model by allowing promotions. Con-trol is extended to ‘pull’ agents from lower levels, when ‘spontaneous’ learningturns out insufficient. We refer to this model as the Controlled Promotions Model.

Model assumptions are validated against real data in §4. Model parameterestimation is also presented in §4. In this chapter we assume that all assumptions

76

Page 88: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

hold and model parameters, such as turnover rates, demand, etc. are known inadvance.

3.4.1 Model 1: Base Case Model

We now apply the first special case of our theoretical framework, which we referto as the Base-Case Model. The Base-Case Model makes the following threeassumptions:

1. No learning: all agents obtain a single skill-level after completing the basiccourse.

2. Turnover rates at the end of period t are deterministic and stationary (con-stant in time).

3. Hiring lead-time (course duration) that equals a single top-level planningperiod.

The Base-Case Model: Top-Level Components

We choose the planning horizon to be a single quarter, specifically the first quarterof 2011. Since hiring lead-time of one month is assumed, workforce planningfor the first quarter of 2011 starts at the beginning of December 2010. Formally,we define planning periods t = 0, 1, 2, 3, to be December 2010 - March 2011,respectively. We assume that the post-hiring vector n0 that corresponds to theemployment level during December 2010 is known. (Recruitment for December2010 was decided at the beginning of November 2010.)

Figure 3.3 presents the transition scheme corresponding to the Base-Case Model:

Course Agent

Hiring

Dropouts

Entrants

Turnover

Figure 3.3: Agent recruitment and training - no learning

Pre-hiring state nt is reduced to a scalar, containing the number of skilledagents employed at the beginning of time t. We define the course dropout rate to beq0 and turnover for skilled agents as q1. Note that these turnover rates correspondto the previously-discussed qi,t. Time and skill-level indices are omitted due toAssumption 2.

Control variable, xt, is defined as before: the number of recruits at the begin-ning of period t. Post-hiring state nt becomes yt, with yt = nt + xt−1.

77

Page 89: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

We estimate wage, hiring and operational costs using information gatheredfrom our Test-Case Call Center. For wage costs we assume that an average skilledagent receives a wage of W (this includes bonuses, benefits and so on). Traineesalso receive wages of W per month and incur cost h upon their hiring. (For ex-ample: cost h is payed to an outsourcing company for performing employee selec-tion).

The Base-Case Model: Bottom-Up Planning

We divide each planning month t into half-hour intervals s = 1, ..., S. For examples = 1 is defined as first ‘7:00-7:30’ interval during month t, and hence S ≈ 804(we consider 22 weekday and 4 Fridays for a typical month). We use existingshift-types of the Test-Case Call Center, specifically, 11 shifts cycling through eachweekday. Some shifts last 7 hours, while others last 8 hours. On Fridays, there isonly a single 7-hour shift. More shift-regulations are applied, e.g. agents cannotwork more than five days a week (including Fridays). A full-time-equivalent agentis obligated to work four 7-hour shifts and a single 8-hour shift, per week. Eachshift has a unique operational cost that corresponds to factors such as time-of-day(transportation is obliged at night-shifts), shift-length (some shifts are longer thanothers), etc.

For a single skill-level, the operating cost functionOt(yt, Dt) can be written asthe following LPP:

Ot(yt, Dt) = minzt≥0 c′ · zt (3.24)

s.t. :

A · zt ≥ N(Dt), (3.25)

e′ · zt ≤ yt, (3.26)

ztw ≥ 0, ∀w, (3.27)

with ztw being the number of agents staffed on shift w at time period t and cwbeing the cost incurred in scheduling a single agent to shift w. Each component ofvector N1×S corresponds to ‘adequate’ staffing for sub-interval s during period t,specifically N(Ds

t ).Note that no outsourcing and overtime are assumed, both being against man-

agement policy. For models that include these operational aspects, see Thompson(1995).

Remark 2. An important aspect to consider in bottom-up planning is shift absen-teeism. Observing constraints (3.25), we see that it is assumed that scheduledagents will surely turn up for their shifts. In reality, agents may be unexpectedlyabsent from shifts due to various reasons (health, studies, family,...).

Shift absenteeism can be modeled as a low-level planning parameter, part of theoperating cost function. Consider the following alternation to constraints (3.25):

78

Page 90: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

A ·Ψ · zt ≥ N(Dt). (3.28)

A shift absenteeism matrix ΨF×F can be defined as a diagonal matrix, witheach diagonal component ψw,w viewed as the probability of turning up for shift w,upon being scheduled to shift w.

Another option is modeling shift absenteeism as a top-level parameter, thus‘inflating’ the workforce at employment levels. This is analogous to settingψw,w ≡ψ for all w, where 1−ψ is a constant probability of an agent turning up for shift w.For example, in our Call Center, it is assumed by management that an agent willbe absent from his shift with a probability of 0.12. Due to the unavailability of anysupporting data on the subject, we consider the top-level assumption of ψ = 0.88valid.

The Base-Case Model: Top-Down Planning

We now formulate the second operating cost function, based on §3.2.7. No zoom-in to high resolutions is performed and total demand is met during period t. Theoperational regime is ignored and demand Dt is forecasted as the number of callsarriving to our Call Center during month t. Operational costs are considered onaggregate levels as well.

For our Base-Case Model, operating cost function 2,Ot(yt, Dt), can be writtenas:

Ot(yt, Dt) = minzt≥0 c′zt (3.29)

s.t. :

zt ≥ N(Dt), (3.30)

zt ≤ yt, (3.31)

zt ≥ 0. (3.32)

Staffing variables zt are defined as the required capacity to ‘adequately’ meettotal demand that arrives during period t. Aggregate operational cost c is incurredwhen employing an agent during period t.Remark 3. In order to emphasize the planning problem, we now provide a plausibleestimate to the staffing function, N(Dt):

N(Dt) =Dt · (1− P (Ab)) · E(S)

C, (3.33)

with Dt defined as the total number of calls forecasted for month t, E(S) as theexpected service time for an incoming call (online and off-line work considered)and P (Ab) as the aggregated target abandonment rate.

We refer to Dt · P (Ab) · E(H) as the effective average workload Wt arriv-ing during month t. We then divide Wt by C, which is the monthly average netcapacity of a single agent. The agent capacity C is assumed stationary in time andcorresponds to shift-absenteeism, work regulations, shift-types, etc.

79

Page 91: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

The Base Case Model: MDP Formulation

We choose a discount factor α = 1 and thus our dynamic programming problem(DPP) can be written as:

minx0,x1,x2,y1,y2,y3

{2∑

t=0

[(h+W )xt] +

3∑t=1

[Wyt +Ot(yt, Dt))]}, (3.34)

subject to system dynamics for all t = 0, ..., 3:

yt = (1− q0)xt−1 + (1− q1)yt−1, (3.35)

xt ≥ 0. (3.36)

Note that due to the assumption of deterministic turnover and dropout rates,the expectation over the objective function is omitted.

The Base-Case Model: Optimal Control

We now reduce the solution of DPP (3.34) to a solution of a Linear ProgrammingProblem (LPP). We do so by exploiting the special structure of our operating costfunctions and Assumption 2 (stationary and deterministic turnover rates). We proveour results for the first operating cost function, but they also apply to the secondoperating cost function, since it is a special case of the first.

Define the target workforce vector b∗ = (b∗1, ..., b∗T ) as the smallest work-

force required during planning periods t = 1, ..., T, in order to ‘adequately’ meetdemand. Target workforce for time t, b∗t , is obtained from the solution of the fol-lowing special case of (3.24):

Ot(Dt) = minzt≥0 c′ · zt (3.37)

s.t. :

A · zt ≥ N(Dt), (3.38)

zt ≥ 0, ∀w. (3.39)

Note that the top-level employment constraints, (3.26), are omitted. The solu-tion to the above LPP (3.37) provides minimal capacity requirements, while con-sidering low-level planning only and neglecting top-level planning. We start byshowing that the above LPP (3.37) is solvable.

Lemma 1. The LPP Ot(Dt) in (3.37) is solvable, for all t, t ≥ 1.

Proof of Lemma 1.We propose the following solution ztw to Ot(Dt):

ztw = maxs{N(Ds

t )}. (3.40)

80

Page 92: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

In other words, for each shift w we staff the number of agents required to meetdemand at the ‘busiest’ interval of that month. Since the matrix A has at leastone non-zero component for each row, the above solution is feasible. The objectivefunction is bounded below on the feasible region, by the value 0 (zt ≥ 0).

A below bounded LPP with a nonempty feasible region is solvable.Q.E.D.

We proceed with setting the target workforce vector b∗ to be:

b∗t =

F∑w=1

(ztw)∗, t = 0, ..., 3, (3.41)

with (ztw)∗ being the optimal solution of (3.37).We now return to our DPP (3.34), writing it only as a function of the multi-stage

control x = (x0, ..., xT−1) and starting workforce position y0:

minx=(x0,...,xT−1),xt≥0

[φ(x) = g(x, y0) +T∑t=1

Ot(x;Dt, y0)]. (3.42)

Here, the starting workforce position y0 is assumed known and control vari-ables xt are restricted to be nonnegative. The dependence on variables y1, ..., yTcan be written as dependency only on (x, y0) because of equation (3.36). Explic-itly,

yt = (1− q0)xt−1 + (1− q1)yt−1 = (3.43)

= (1− q0)xt−1 + (1− q1)(1− q0)xt−2 + ...+ (1− q1)t−1(1− q0)x0 + (1− q1)ty0.

Writing the DPP as we present it in (3.42) is possible, since all post-hiringstates y1, ..., yT are linear functions of x = (x0, ..., xT−1). The cost function

g(x, y0) =

2∑t=0

[(h+W )xt] +

3∑t=1

Wyt, (3.44)

is linear in (x, y0) (from equation (3.43)) and corresponds to top-level costs, specif-ically wages and hiring costs.

The low-level functions Ot(x;Dt, y0) are equivalent to Ot(nt) (3.24) and canbe written as:

Ot(x;Dt, y0) = minzt≥0 c′ · zt (3.45)

s.t. :

A · zt ≥ N(Dt), (3.46)

v′t · x ≥

≥F∑

w=1

ztw − y0(1− q1)t, t = 1, ..., T, (3.47)

ztw ≥ 0, ∀w. (3.48)

81

Page 93: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

This writing of Ot(nt) is also possible due to equation (3.43). The vector vt is ofsize 1×T , with each component vit being the proportion of agents recruited at timei− 1 (i = 1, ..., T ) who did not turn over by time t. Specifically, we define vit as:

vit =

{(1− q0)(1− q1)i−1 if i ≤ t− 1,

0 otherwise.(3.49)

For example, v1 will have a single nonzero component, v11 = (1 − q0). Thismeans that by time t = 1, (1 − q0)x0 recruits are in the system. (Recall: q0 isthe course dropout rate.) Note that vit is nonnegative for all t, i. The number ofagents that were employed at t = 0 (y0) and stayed by time period t are written asy0(1− q1)t.

Observing (3.42) and (3.45), we see that, given a control vector x = (x0, ..., xT−1),we can solve T linear programs and obtain the optimal z∗t (x), for time period t. Wethen may obtain the optimal control x∗ = (x∗0, ..., x

∗T−1) for our DPP (for example,

by using the Value Iteration Algorithm, Puterman (1994)).We get the optimal control by solving the following LPP instead:

minx=(x0,...,xT−1),xt≥0 [θ(x) = g(x, y0) +T∑t=1

Ot(Dt)] (3.50)

s.t. :

v′t · x ≥ b∗t − y0(1− q1)t,∀t = 1, 2, ..., T, (3.51)

with Linear Programs Ot(Dt) being defined as in (3.37) and b∗t is defined as in(3.41). The problem presented in (3.50) is an LPP, since the functions Ot(Dt) donot depend on the control vector x = (x0, ..., xT ). Theorem 1, presented below,enables us to solve LPP (3.50), which yields an optimal multi-stage control x forDPP (3.42):

Theorem 1.

1. LPP (3.50) is solvable and its optimal solution x∗∗ is given by the followingrecursion for t = 1, ..., T :

x∗∗t−1 =

{b∗t−ut−1(x∗∗,y0)(1−q1)

1−q0 , if ut(x∗∗, y0) < b∗t ,

0 , otherwise;(3.52)

here

ut(x∗∗, y0) =

{(∑t−1

i=1 vitx∗∗i−1) + y0(1− q1)t , if t = 2, ..., T,

y0(1− q1) , if t = 1,

and b∗t is the target workforce vector defined in (3.41).

2. x∗∗ is an optimal solution for DPP (3.42).

82

Page 94: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Proof of Theorem 1.

1. We start by proving that x∗∗, as defined in (3.52), is feasible for (3.50).

By its definition, x∗∗t−1 is nonnegative for all t = 1, ..., T , thus it remains toshow that x∗∗ satisfies the set of constraints (3.51).

For any t that has ut(x∗∗, y0) ≥ b∗t , the right-hand-side of the correspondingconstraint in (3.51) is negative. Since x∗∗t−1 is nonnegative by definition, x∗∗t−1satisfies this corresponding time-t constraint in the set of constraints (3.51).

For any t such that t > 1 and has ut(x∗∗, y0) < b∗t :

x∗∗t−1 =b∗t − ut−1(x∗∗, y0)(1− q1)

1− q0, (3.53)

thus enabling the left-hand-side of the corresponding time-t constraint in theset (3.51) to be written as:

vt · x∗∗ = (1− q0)x∗∗t−1 +

t−1∑i=1

vitx∗∗i−1 =

= b∗t − ut−1(x∗∗, y0)(1− q1) +t−1∑i=1

vitx∗∗i−1 + y0(1− q1)t − y0(1− q1)t =

= b∗t − ut−1(x∗∗, y0)(1− q1) + ut−1(x∗∗, y0)(1− q1)− y0(1− q1)t =

= b∗t − y0(1− q1)t,

which equals the right-hand side of the time t constraint in (3.51).

For t = 1 such that ut(x∗∗, y0) < b∗t :

v1 · x∗∗ = (1− q0)x∗∗t−1 =

= b∗t − y0(1− q1),

which is again the right-hand-side of (3.51).

Thus, x∗∗ is a feasible solution for the LPP (3.50). The objective function ofthe LPP is below bounded by the value 0, since the control x is nonnegativeand xt = 0 for all time-periods is a feasible solution, when no hiring isrequired (Call Center is overstaffed). A below bounded LPP on a nonemptyfeasible region is solvable.

The solution x∗∗ attains the lower bound of the right-hand-side in (3.51).This implies that no other control x can reduce g(x) any further withoutviolating the constraints in (3.51), making x∗∗ the optimal solution for theLPP.

Q.E.D. 1.

2. We now show that x∗∗ is optimal for the dynamic program written in (3.42).We do so by using the following three propositions.

83

Page 95: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Proposition 1. Let θ(x) be the objective function of LPP (3.50) and φ(x)the objective function of DPP (3.42). For a control x that is feasible for theLPP and feasible for the DPP: θ(x) = φ(x).

Proof of Proposition 1. Suppose that x′ is a feasible control for the LPP(3.50):

θ(x′) = g(x′, y0) +T∑t=1

Ot(Dt) = g(x′, y0) +T∑t=1

c′ · z∗t . (3.54)

Suppose that x′ is also a feasible control for the DPP (3.42):

φ(x′) = g(x′, y0) +

T∑t=1

Ot(x′;Dt, y0) = g(x′, y0) +

T∑t=1

c′ · z∗t (x′).

(3.55)

What we are to prove is that z∗t (x′) = z∗t for all t = 1, ..., T .

A feasible control x′ for the DPP is nonnegative and satisfies the set of con-straints given by (3.47). If this set of constraints is satisfied then for anyt:

Ot(x′;Dt, y0) = minzt(x′)≥0 c · zt(x′) (3.56)

s.t. :

A · zt(x′) ≥ N(Dt), (3.57)

which equivalent is Ot(Dt) and thus, making z∗t (x′) = z∗t , with z∗t being theoptimal scheduling vector for time period t, of the unconstrained problem(3.37). Q.E.D. Proposition 1.

We proceed by proving a second proposition.

Proposition 2. A feasible control for the DPP (3.42), is feasible for the LPP(3.50).

Proof of Proposition 2. If a control x′ is feasible for the DPP, then it isnonnegative and satisfies the following expression for all t:

vt · x′ ≥F∑

w=1

(ztw)∗ − y0(1− q1)t. (3.58)

In order for x′ to be feasible for the LPP it must satisfy the following expres-sion for all t:

vt · x ≥ b∗t − y0(1− q1)t =

F∑w=1

(ztw)∗ − y0(1− q1)t. (3.59)

84

Page 96: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

From the inequality in (3.58) and since∑F

w=1(ztw)∗ ≤

∑Fw=1 z

tw(x) for all

x ((ztw)∗ is the optimal unconstrained scheduling vector), inequality (3.59)holds for all t.

Q.E.D. Proposition 2.

Proposition 3. The control x∗∗ (optimal control of the LPP (3.50)) is feasi-ble for the DPP (3.42).

Proof of Proposition 3. Essentially, what we need to show is that x∗∗ is fea-sible for the operating functions Ot(x

∗∗;Dt, y0), for all t. We prove this byusing our result from Theorem 1.1: hiring via control x∗∗ attains the optimalscheduling vector z∗t for time-t operating function, Ot(Dt). Suppose thatthere exists a time period t with z∗t (x∗∗), which is the resulting schedulingvector of the optimization Ot(x

∗∗;Dt, y0). Suppose that for this z∗t (x∗∗) thetime-t constraint in (3.47) is violated:

vt · x∗∗ <F∑

w=1

(ztw)∗(x∗∗)− y0(1− q1)t. (3.60)

Now we know from Theorem 1.1 that the following inequality holds for anytime t constraint in (3.51):

vt · x ≥ b∗t − y0(1− q1)t =F∑

w=1

(ztw)∗ − y0(1− q1)t, (3.61)

with (ztw)∗ being the optimal solution to the unconstrained LPP in (3.37).

Since the expression y0(1− q1)t is constant, this leads to the result:

F∑w=1

(ztw)∗ <

F∑w=1

(ztw)∗(x∗∗), (3.62)

which implies that z∗t (x∗∗) is not optimal for Ot(x∗∗;Dt, y0) and can be

further improved, such that z∗t (x∗∗) = z∗t .

This is a contradiction to our assumption of z∗t (x∗∗) being the resulting op-timal scheduling vector of Ot(x

∗∗;Dt, y0). Q.E.D Proposition 3

From Propositions 1 and 3 follows that x∗∗ is feasible for both the LPP andthe DPP, thus making θ(x∗∗) = φ(x∗∗).

Suppose that there exists x′, such that φ(x′) < φ(x∗∗). Now we knowfrom Proposition 2 that x′ is also feasible for the LPP. From Proposition1, θ(x′) = φ(x′) < φ(x∗∗) = θ(x∗∗), which is a contradiction to the opti-mality of x∗∗ for the LPP.

Q.E.D. 2

85

Page 97: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

In short, the intuition behind our theorem is as follows. First, we solve theunconstrained low-level planning problem. This solution provides a target vectorb∗t , which is the minimal number of agents required to meet low-level demand attime period t. This target vector is unconstrained by top-level constraints. Then, inthe top-level problem, at each time period t = 0, ..., T−1, we must ‘hire-up-to’ thetarget vector b∗t , previously set by the unconstrained low-level planning problem.

An important note is that this result depends heavily on our definition of theoperating cost function and does not hold for just any operating cost function. Inour operating cost function, we cannot hire less than the low-level target vector b∗t ,since we assume that, for each half-hour interval, we will staff at least the requirednumber of agents. For cost functions that allow flexibility in low-level staffing, e.g.routing calls to outsourcing call centers to prevent abandonment of calls, there isno need to ‘hire-up-to’ the target vector b∗t at all times. In order to obtain optimalpolicy for (3.42) we present Algorithm 1, which is a direct application of Theorem1:

Algorithm 1.

1. Obtain optimal target workforce vector b∗ by solving the unconstrained LPP(3.37).

2. Obtain optimal solution x∗∗ by solving (3.50), specifically using (3.52).

3. Hire x∗∗t−1 for every planning period t = 1, ..., T .

Remark 4. Theorem 1 and its application, Algorithm 1, ensure that the targetworkforce vector b∗ will be attained, by hiring x∗∗ agents for time periods t =0, ..., T − 1. There can be a case when we staff more agents than what is requiredby low-level planning, since we cannot control turnover and we assume that nocontrolled firing is practiced.

The Base-Case Model: Results

We now use Algorithm 1 to obtain the optimal solution to workforce planning forthe Test-Case Call Center. Table 3.3 lists the parameter estimates used for the Base-Case Model. These estimates are the result of the statistical techniques describedin §4.2.

We implement Step 1 of Algorithm 1, thus solving the LPP (3.50) twice. Thefirst time, we solve it using Operating Cost unction 1 (3.24), which correspondsto a bottom-up workforce planning. The second time, we solve it using OperatingCost Function 2 (3.30), which corresponds to top-down workforce planning. Table3.4 presents the resulting target workforce b∗t , both for bottom-up and top-downplanning. This target workforce is the result of low-level planning. In other words,it is the number of agents required to meet demand at aggregated and detailedlevels, for top-down and bottom up planning respectively.

86

Page 98: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Parameter Valueq1 5.27%q0 7.45%

Total shift absenteeism 12%Hiring cost h 3000 NIS

Average wage W 8700 NIS

Table 3.3: Base-Case Model Parameter Estimates

Function January February MarchBottom-Up Planning 292 265 265Top-Down Planning 112 99 112

Table 3.4: Low-level Planning Results: Top-Down vs. Bottom-Up

The large difference in target workforce vectors between top-down and bottom-up planning is explained in 3.4.1.

We obtain the optimal control (recruitment levels) by following Steps 2 and 3of Algorithm 1 and focus on the results of bottom-up planning. Table 3.5 presentsthe optimal control and the total workforce resulting from the optimal control.

The initial workforce of the Test-Case Call Center is y0 = 199 agents, whichexplains the large recruitment required during December of 2010 (the target work-force of January is 292). We observe that in February the total workforce is largerthan the target workforce. This occurs because there is a ‘drop’ in the forecasted de-mand for February. The model recommends that no recruitment will be performedduring January, but the turnover rates are not sufficient to reduce the workforce tothe target workforce at once. For each month of the planning period, the optimalcontrol (at least) attains the target workforce vectors (corresponds to Theorem 1).

Comparison of Top-down planning and Bottom-up planning in the Test-CaseCall Center.

The large difference between the top-down and bottom-up approaches is due to thehigh variability in the half-hour demand for service. Top-down planning providesthe capacity for the average demand over the entire planning period t (here we thinkin terms of months), thus it is unable to capture ‘peaks’ (low and high) in demand.For organizations with a constant demand, both operating cost functions would

Result December January February MarchTotal Workforce 199 292 276 265Optimal Control 111 0 3 –

Table 3.5: Optimal Control and Total Workforce: Base-Case Model

87

Page 99: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

provide similar target vectors. Obviously, this is not the case in our Test-Case CallCenter.

Figure 3.4 presents workforce planning results for January 9th, 2011:

0

20

40

60

80

100

120

140

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34

Sta

ffin

g

Half-Hours

Half-hour Staffing Requirements Top-Down Workforce Shift Staffing Cumulative Number of Agents

Figure 3.4: Intra-day Half-Hour Staffing Requirements - January 9th, 2011

The horizontal axis is on half-hour time intervals of January 9th. The verticalaxis corresponds to staffing in terms of Full-Time-Equivalent agents. The red linecorresponds to the target workforce set by the Base-Case Model using top-downplanning (target workforce is not the actual workforce, since the decline to targetvector is gradual - see Remark 4).

The blue line corresponds to required number of agents online at half-hours, as it is estimated in the staffing function N(Dt) for month t (January). Thegreen line shows the time-varying staffing, which is the optimal low-level solutionfor that day. The gap between the blue and green lines is explained by the shift-absenteeism factor, set to be uniform for each shift (taken to be 12%). The purpleline depicts the cumulative number of agent-requirements for that day, which is thesum of all agents that turn up to work as the function of the half-hour intervals.

We observe that the purple line (cumulative staffing resulting from bottom-up planning) exceeds the minimal capacity requirement recommended by the top-down approach. Moreover, detailed weekly minimal requirements are even largerthan daily minimal requirements due to work regulations. For example, an agentcannot work more than 5 days a week and since our Call Center operates 6 daysa week, we cannot meet demand by staffing for daily requirements only. In fact,more than twice as many agents are required to meet the weekly demand.

The Base-Case Model has proved itself to be useful both in the context ofshowing total workforce and optimal control trends (not divided into skill-levels)

88

Page 100: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

and in the discussion on the difference between bottom-up and top-down planning.

3.4.2 Model 2: Full Model

We now apply a special case of our theoretical framework that includes learning.We refer to this model as our Full Model. The Full Model assumes that turnoverand learning rates are stationary and deterministic. Validation of these assumptionscan be found in §4.3.

We first present a formulation of the Full Model, including top-level and low-level components. We then discuss the issue of target workforce unattainability thatmay result when applying the Full Model. Consequently, we propose an additionto the model that will accommodate for unattainability of target workforce levels,we then provide the new formulation for the Full Model. Lastly, we discuss theoptimal policy for the (extended) Full Model and present results for applying theFull Model to our Test-Case Call Center.

Top-Level Components: Adding Learning and Accommodating Turnover

In Model 2 we add uncontrolled learning between three skill levels, thus corre-sponding to the promotion scheme of our Test-Case Call Center reality (see Figure3.1 for the learning scheme). Learning and turnover rates are assumed stationaryand deterministic as in our Base-Case Model. We define the learning rate fromskill-level i to skill-level i+ 1 as li, with l3 = 0, since there is no learning possiblefrom the third (and last) skill-level. We extend the notation of turnover rates to cor-respond to turnover from multiple skills. Specifically, we denote the turnover ratefrom skill-level i as qi. Trainee dropout rate is denoted by q0, as in the Base-CaseModel.

Figure 3.5 presents the transition scheme corresponding to the Full Model:

Level 1 Level 2 Level 3

Turnover

Learning Learning

Turnover Turnover

Course

Hiring

Dropouts

Entrants

Figure 3.5: Full Model - Learning and Turnover from 3 skill-levels

Full Model Formulation

We can now write the top-level MDP explicitly. We consider the same planninghorizon (T = 3) and planning periods (t = 0, 1, ..., 3) as in our Base-Case Model(see §3.4.1). We add learning from Level1 into Level2 and from Level2 into Level3

89

Page 101: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

to the dynamics. The discount factor is taken as before to be α = 1 and thus theMDP that is defined in §3.2.8, obtains the following form:

minx0,...,x2,y1,...,y3

{2∑

t=0

[(h+W1)xt] +

3∑t=1

[W1yt +W2n2,t +W3n3,t +Ot(nt, Dt)]},

(3.63)

subject to the following dynamics for t = 1, ..., 3:

yt = n1,t + (1− q0)xt,n1,t+1 = (1− l1)(1− q1)yt,n2,t+1 = (1− l2)(1− q2)n2,t + l1(1− q1)yt,n3,t+1 = (1− q3)n3,t + l2(1− q2)n2,t.

The post-hiring vector n0 = (y0, n2,0, n3,0) is assumed to be known. Thisvector corresponds to the initial total workforce in our Test-Case Call Center atthe beginning of December 2010. To remind, we are planning the recruitment forDecember 2010 - February 2011 and the total workforce for January 2011 - March2011.

The ‘Problem of Unattainability’

The ‘problem of unattainability’ arises from our formulation of the Full Model(3.63). We demonstrate the problem by using a simple example.

Suppose that at time t+1, as a result of performing low-level planning, a targetworkforce of 10 agents is required for Level3. Suppose also that, due to turnover,at the end of period t we are left with 5 Level3 agents and only 2 agents learnedfrom Level2 to Level3. Thus, we start period t+ 1 with only 7 Level3 agents.

Only some fraction of the new recruits that are hired at period t (into Level1)will attain Level3, at time t+3. This is because there is a single period of the basiccourse and at least a single learning period for each skill-level. We refer to thisinability to influence any skill-level in a single time-period unattainability. In ourcase, Level3 is unattainable from Level1 in less than two time-periods. Thus, wemay not be able to attain target workforce levels of Level3 agents. In other words,workforce requirements for skill-levels i = 2, 3 may turn out to be unattainable,since we recruit agents only into Level1. In fact, this problem may occur in ourTest-Case Call Center as well, due to the low learning rates (see §3.4.2 for estimatesof the learning rates).

The problem is at its acute stage mostly for the first planning months (beforenew recruits get the opportunity to learn up to higher skill-levels). The problem isenhanced for organizations with many skill-levels, since it might take many plan-ning periods for high skill-levels to be attained by new recruits. Another side of thesame problem is that high skill-levels are attainable at the price of recruiting largecohorts of agents, so that some small proportion of them will be suitable to learn

90

Page 102: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

up to high skill-levels. In other words, we do not want to recruit a great numberof new agents, just to make sure that we will have enough workforce at the higherskill-levels.

We propose to solve this ‘problem of unattainability’ (of the higher skill-levels)by adding the possibility of inner recruitment into any skill-level, at any time pe-riod t. For example, in many call centers, such as our Test-Case Call Center, innersources for recruitment of agents exist, e.g. inner recruitment in Bank Call Cen-ters may be performed by shifting a branch teller to a call center agent. Allowinginner recruitment also enables to accommodate the growth of higher skill-levelsby adding experienced workforce, instead of recruiting large cohorts and assumingthat some of the new recruits will learn fast enough to reach the higher skill-levels.

Full Model Extended: Assumptions and MDP Formulation

We thus extend the top-level theoretical framework that we present in §3.2 and addthe possibility of hiring into skill-levels i = 2, 3.1 We add the following set ofassumptions for our (extended) Full Model:

1. An inner recruit ‘inherits’ the learning and turnover rates (stationary anddeterministic) of his new skill-level.

2. A recruitment into level-i incurs a cost hi and the newly recruited employeereceives wages ofWi (wages are equal to the already employed level-i agents).

3. There is an infinite potential pool for inner recruitment, although this ishardly the case. We later discuss this assumption as a drawback of the pro-posed model extension.

4. There is a single top-level period lead-time for any type of recruitment: fornew agents, this lead-time corresponds to the basic course and for inner re-cruits, this lead-time corresponds to the time it takes to shift an employeefrom one organizational part to another.

Our formulation of the MDP corresponds to our Test-Case Call Center (3 skill-levels and planning periods t = 0, ..., 3), but it can be extended to any number ofskill-levels and planning periods. For our Test-Case Call Center we assume that nohiring cost is incurred when hiring inner personnel. We thus denote the hiring costof new personnel as h1 = h. We also assume that during the single month of lead-time, trainees (new recruits) are payed a regular Level1 salary, while inner recruitsare not paid wages from our Test-Case Call Center’s resources. Thus, recruits intolevels i = 2, 3 receive wages only upon arrival into the Call Center.

We extend the time-t control variable xt from a scalar to a vector:

xt = (x1,t, ..., x3,t), (3.64)

1We still refer to our model as the Full Model, although it is extended from its original definitionand goes beyond the theoretical framework presented in Gans and Zhou (2002).

91

Page 103: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

with xi,t being the number of hirings at time t into skill-level i. We also extend thepost-hiring vector nt = (yt, n2,t, ..., n3,t) to yt = (y1,t, ..., y3,t), with yi,t being thenumber of level-i agents at time-period t, after hiring.

For convenience, we denote

ri = (1− qi)(1− li), (3.65)

with ri being the proportion of agents that remain in skill-level i (do not turn overor learn) at the end of time period t (stationary and deterministic proportion). Wealso denote

pi = li(1− qi), (3.66)

with pi being the proportion of agents that learn from skill i to skill i+ 1 at the endof any time period t.

The objective function of the extended MDP (3.63) may then be formulated asfollows:

minx0,...,x2,y1,...,y3,xt≥0

{2∑

t=0

[(h+W1)x1,t] +3∑

t=1

[(3∑

i=1

Wiyi,t) +Ot(yt, Dt)]},

(3.67)

subject to the following dynamics for t = 1, ..., 3:

y1,t = r1y1,t−1 + (1− q0)x1,t−1, (3.68)

yi,t = riyi,t−1 + pi−1yi−1,t−1 + xi,t−1, ∀i > 1,

with the initial workforce vector, y0 = (y1,0, ..., y3,0), assumed to be known at theoutset.

Figure 3.6 presents the transition scheme corresponding to the extended FullModel:

Level 1 Level 2 Level 3

Turnover

Learning Learning

Turnover Turnover

Course

Hiring

Dropouts

Entrants

Recruitment Recruitment

Figure 3.6: (extended) Full Model - Recruitment into Level2 and Level3

Note that Theorem 1, presented in Gans and Zhou (2002) (on optimal policiesof the ‘hire-up-to’ type), no longer applies for the Full Model. The reason is due tothe assumption of the original framework in Gans and Zhou (2002) that employeesare hired only into the first skill-level.

92

Page 104: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Full Model: Low-Level Planning

For our extended Full Model, we only consider bottom-up planning. Indeed wehave already shown that bottom-up planning is more suitable than top-down plan-ning when considering service systems, such as our Test-Case Call Center. (Recallthe discussion in §3.4.1.) Thus, we consider only the first operating cost function(§3.2.7), when performing low-level planning. To remind the reader, operating costfunction 1 is given as the following LPP (3.10):

Ot(yt, Dt) = minZt e′ · C · Zt · e (3.69)

s.t. :

A · Zt,i ≥ Ni(Dt), ∀i, (3.70)

Z′te ≤ yt, (3.71)

ztw,i ≥ 0, ∀w, i, (3.72)

with A being the shift-covering matrix, Zt the scheduling matrix at time t, andyt = (y1,t, y2,t, ..., ym,t) is the post-hiring vector at time t. The cost incurred byscheduling agents to shifts is given by the matrix C. The staffing vector Ni(Dt)represents staffing requirements at half-hour resolutions, for level-i agents.

The first set of constraints (3.70) thus ensures ‘adequate’ half-hour staffingfor level-i agents, while the second set of constraints (3.71) ensures that the low-level staffing will not exceed the total workforce employed at time t. For the fulldefinition of the above function, see §3.2.7.

Full Model: Optimal Control

We now show that the solution of the DPP (3.67) can be reduced to a solution ofan LPP. We do so by applying a similar proof technique as in the Base-Case Model(3.4.1). We exploit the special structure of our operational cost function and top-level model assumptions (stationary and deterministic turnover and learning rates).

First, we define the target level-i workforce vector b∗i = (b∗i,1, ..., b∗i,T ) to

be the smallest level-i workforce required during planning periods t = 1, ..., T ,in order to ‘adequately’ meet demand (low-level planning target vector). Targetlevel-i workforce for time t, b∗i,t is obtained by solving the following special caseof (3.69):

Ot(Dt) = minZt C · Zt (3.73)

s.t. :

A · Zt,i ≥ Ni(Dt), ∀i, (3.74)

ztw,i ≥ 0, ∀w, i. (3.75)

This special case of the operating cost function, presented in (3.69) lacks the set ofconstraints that place un upper bound on the number of agents that can be sched-uled simultaneously. In other words, (3.73) is the low-level workforce planningproblem, but without any top-level constraints.

93

Page 105: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

We now show that the operating cost function (3.73) is separable in skill-levels, since constraint(3.74) for level-i agents is independent of the constraint(3.74) for level-j agents, with i 6= j. We define the level-i operating cost func-tion Oi,t(yt, Dt), at time period t, as follows:

Oi,t(Dt) = minZt,i (Ci)′ · Zt,i (3.76)

s.t. :

A · Zt,i ≥ Ni(Dt), (3.77)

ztw,i ≥ 0, ∀w, i. (3.78)

The scheduling cost vector Ci, of size 1×F , is the i component of cost matrixC. Vector Ci corresponds to the operational cost incurred in staffing level-i agentto shift w = 1, ..., F . The shift-covering matrix A remains as in (3.69), and itdenotes the feasible shifts and their coverage of time-intervals s = 1, ..., S (see§3.2.7 for a definition). Scheduling vector Zt,i, of size 1× F , denotes the numberof level-i agents, scheduled for shift w = 1, ..., F . The components of vector Zt,i

are denoted ztw,i.We observe that, minimizing the sum of functions Oi,t(Dt) is equivalent to

minimizing Ot(Dt), since there are no constraints that depend on various skill-levels together. We use this observation in the next section, when discussing opti-mal policies and solving the DPP (3.67).

The operating cost function Oi,t(Dt) (3.76) is equivalent to Ot(Dt), as definedin (3.37). Thus we may apply Lemma 1 and show that (3.76) is solvable and itsoptimal solution is given by the scheduling vector Z∗t,i. We set the target level-iworkforce vector to be

b∗i,t =F∑

w=1

(ztw,i)∗, (3.79)

We now return to our DPP (3.67) and write it only as a function of the multi-stage control x = (x0, ..., xT−1) and starting post-hiring vector y0 = (y1,0, ..., y3,0):

minx,xi,t≥0

φ(x) = g(x, y0) +

T∑t=1

Ot(x;Dt, y0), (3.80)

with g(x, y0) being the top-level costs function, linear in x and y0, andOt(x;Dt, y0)being the low-level operating cost function. The initial post-hiring vector y0 =(y1,0, ..., y3,0) is assumed known. Recall that the control at time t, xt, is a vectorof hirings into each skill-level, xt = (x1,t, ..., x3,t).

In can be shown that g(x, y0) is indeed a linear function in the control x and thestarting workforce y0, by expanding the recursive definition of yt = (y1,t, y2,t, y3,t),which is the post-hiring vector at time period t. An example of such an expansion,for skill-level 1, is written as follows:

y1,t = rt1y1,0 + rt−11 (1− q0)x1,0 + ...+ (1− q0)x1,t−1. (3.81)

94

Page 106: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

In words, the post-hiring workforce of skill-level 1 at time t consists of agents,who were at skill-level 1 at time 0, and did not learn or turnover for all the t time-periods. To that, we add the recruits x1,· at time-periods t = 0, ..., t − 1, who didnot dropout at the basic course, did not learn and did not turnover until time-periodt. Thus, y1,t, at any time-period t, depends only on the control x and the initialconditions y0. Note that, for i > 1, recruits do not have a basic qualification, thusthey cannot drop out during their lead-time.

A similar expansions can be performed for skill-levels 2 and 3. For these skill-levels, the expression is even more complex, and includes those who learned fromthe previous skill-levels. From these expansions of yi,t, we deduce that yt can bewritten as linear functions of the control x and the initial conditions y0 for any timeperiod t.

Thus, the multi-stage top-level costs that are considered in (3.67), namely

minx0,...,x2,y1,...,y3

{2∑

t=0

[h+W1y1,t)] +

3∑t=1

[(

3∑i=1

Wiyi,t)], }, (3.82)

can be represented as g(x, y0), by replacing y1, ..., yT with linear functions thatdepend only on the control x and the initial conditions y0. Note that g(x, y0) cor-responds to top-level costs for all time periods, specifically t = 0, ..., T .

The low-level planning Ot(x;Dt, y0) can be written as follows:

Ot(x;Dt, y0) = minZt e′ · C · Zt · e (3.83)

s.t. :

A · Zt,i ≥ Ni(Dt), ∀i, (3.84)

e′ · Zt,i ≤ (vi,t)′ · x, ∀i, (3.85)

ztw,i ≥ 0, ∀w, i. (3.86)

Since yi,t can be written as a function of the control x and the initial conditionsy0, the operating cost function Ot(x;Dt, y0) at time t depends only on the controlx and the initial conditions y0. The vector vi,t of size 1 × T corresponds to thecoefficients of the linear expansion of yi,t. So far we have shown that the DPP(3.67) can be written as presented in (3.80).

If the operating cost functions that are considered in (3.83) would be separablewith respect to skill-levels i = 1, 2, 3, then we could apply Theorem 1 directly,solve three Linear Programs and obtain an optimal policy for DPP (3.67). Wewould also be able to calculate the ‘hire-up-to’ thresholds directly. However, thisseparation of the operating cost functions is clearly impossible, since skill-level 1workforce influences skill-level 2 workforce after a single time-period (learning).Thus, we cannot apply Theorem 1 directly.

95

Page 107: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Parameter ValueTurnover Rate Level1 q1 3.96%

Turnover Rate Level2 q2 0.84%

Turnover Rate Level3 q2 0.47%

Learning Rate From L1 to L2 l1 1.5%

Learning Rate From L2 to L3 l2 1.1%

Dropout Rate 7.45%

Total shift absenteeism 12%Hiring cost h 3000 NIS

Average wage Level1 and Level2 Agents W1, W2 8000 NISAverage wage Level3 Agents W1, W2 15000 NIS

Table 3.6: Full Model Parameter Estimates

Instead, we formulate the following LPP:

minx≥0 θ(x) = g(x, y0) +T∑t=1

T∑i=1

Oi,t(Dt) (3.87)

s.t. :

yi,t ≥ b∗i,t, ∀i, t = 1, 2, ..., T, (3.88)

with b∗i,t being the target level-i workforce at time t. The function g(x, y0) is thesame as in (3.80). The level-i operating cost functions Oi,t(Dt) are defined in(3.73). The operating cost functions Ot(Dt) do not depend on the control x, thusmaking the above formulation an LPP.

We use Theorem 2, presented in Appendix B, to show that minimizing LPP(3.87) is equivalent to minimizing DPP (3.67). In order to obtain an optimal solu-tion to DPP (3.67), we need for the LPP to be solvable (Theorem 2). This solvabil-ity depends on the characteristics of model parameters and will not always lead toan optimal hiring policy for the DPP.

In this section, we do not provide the precise ‘hire-up-to’ thresholds, sincethose are difficult to trace. Instead, we provide numerical results of solving theLPP (3.87), using the model parameters estimated in §4.3. ‘Luckily’, for our ex-periments, the set of parameters that we estimated gives rise to a solvable LPP andthus, provides an optimal solution to the DPP (3.67).

Full Model: Results

We now apply the Full Model and perform workforce planning for our Test-CaseCall Center. Table 3.6 lists the parameters estimates used for the Full Model. Theseestimates are the result of our statistical analysis described in §4.3.

We now obtain an optimal solution to the low-level planning (3.87), which issolvable for the above set of parameters. The target workforce vectors are pre-

96

Page 108: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Result January February MarchTarget Workforce Level1 (b∗1) 215 182 182Target Workforce Level2 (b∗2) 47 44 44Target Workforce Level3 (b∗3) 19 22 22

Total Target Workforce Full Model 281 248 248Target Workforce Base-Case Model (b∗) 292 265 265

Table 3.7: Full Model Parameter Estimates

Result December January February MarchLevel1 Recruitment (x1) 79 0 0 –Level2 Recruitment (x2) 14 0 0 –Level3 Recruitment (x3) 1 0 3 –

Total Full Model Recruitment 94 0 3 –Base-Case Recruitment (x) 111 0 3 –Total Workforce for Level1 149 215 204 194Total Workforce for Level2 32 47 49 51Total Workforce for Level3 18 19 22 22Total Workforce Full Model 199 281 275 267

Total Workforce Base-Case Model 199 292 276 265

Table 3.8: Optimal Control and Total Workforce – Base-Case Model and FullModel

sented in Table 3.7. The ‘Base-Case’ target workforce vector is also presented forcomparison.

We observe that, when performing low-level workforce planning via the FullModel, a smaller number of total workforce is required, in comparison to the Base-Case Model. This difference is a result of dividing the staffing functions into threeskill-levels, while estimating the right-hand-side of (3.15). Specifically, when weassume that there is only a single skill (in our Base-Case Model), we model a sin-gle empirical staffing function that does not capture the differences in the staffingfunctions of the three skill-levels. This result advocates in favor of adding learninginto our framework and applying the Full Model instead of the Base-Case Model.

Table 3.8 summarizes the top-level results of applying the Base-Case Modeland the Full Model. We see that the total recruitment (total control) is almost sim-ilar for the two models. Control differs on the skill-levels to which the recruitmentis needed. Therefore, we conclude that the Full Model enables a more accurateworkforce flow, given the target vectors for each skill-level. In terms of total work-force, we see that the Base-Case Model is aligned with the Full Model up to a smalldeviation.

Here, the Full Model discovers the trends in target workforce over time, foreach skill-level. For Level1 agents, for the first period there is an increase, rel-

97

Page 109: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

atively to the initial workforce. Then a decrease follows due to a decline in theforecasted demand for service, for February and March of 2011 (see Table 3.7 toobserve the decline in target workforce levels for Level1 agents).

For Level2 agents, there is an increase in the employed workforce, althoughits target workforce level is decreasing. This interesting phenomena occurs due tothe uncontrolled learning from Level1 to Level2. For Level3 agents, there is anincreasing trend in the target workforce levels and these target levels are accuratelyattained by the control. Level2 skill-level does not require any further recruitment,but without a controlled learning process, some proportion of Level1 agents willstill learn into Level2 after a single time-period. Control over the progress throughthe various skill-levels is called upon, in order to reduce the costs incurred by thisredundant learning. Our next model achieves this goal precisely, by providing acontrol over the progress between the various skill-levels.

3.4.3 Model 3: Controlled Promotions Model

The reality in our Test-Case Call Center is that learning is a controlled process.Actually, no spontaneous learning exists and agents learn up to higher levels onlywhen turnover results in staffing gaps. Thus, we propose a third model that con-siders promotions instead of learning. We refer to this model as our ControlledPromotions Model (CPM).

CPM: Model Formulation

Our third model is essentially an evolution of the theoretical framework presentedin Gans and Zhou (2002). We return to the top-level formulation of the original FullModel, as presented before its extensions (3.4.2). We recruit new agents only intothe first skill-level and add promotions to the control variable. Since promotions arecontrolled, the ‘problem of unattainability’ can arise only if there are not enoughavailable agents in the previous skill-level. We will assume that, for each planningperiod t, there are enough candidates for promotion at levels i = 1, ...,m−1 (thereis no promotion from Level m, which is the last level). As in previous models, thetop-level formulation is adjusted to the Test-Case Call Center and assumes thatthere are only three skill-levels (m = 3). The planning horizon is selected to be aquarter, again consistently with our previous model formulations.

We define the control as x = (x0, ..., x2), with each component xt being avector that corresponds to set of decisions taken at time period t. Specifically,xt = (x1,t, ..., x3,t) with x1,t being the number of agents recruited into Level1 andxi,t (for i = 2, 3) being the number of agents promoted from skill-level i − 1 intoskill-level i at the beginning of period t+ 1. So, if one decides to promote a singleagent from Level2 to Level3, at time-period t = 0, then x3,0 = 1, but the agentwill enter Level3 only at time t = 1.

We define the post-decision state y = (y1, ..., y3) to be the total workforceemployed at time t, after the set of decisions on recruitment and promotion is

98

Page 110: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

made. Specifically, each component of yt is a vector yt = (y1,t, ..., y3,t), with yi,tbeing the time-t total post-decision workforce at skill-level i. For simplicity, weassume that the top-level promotion cost is 0 for any promotion type. This is notnecessarily the case, since promoting personnel can be costly in terms of training.Outsourced courses for obtaining higher levels incur an obvious cost on the CallCenter. If the course is performed ‘in-house’ then the teachers, who are usually agroup of expert agents (from Levels 2 and 3) incur capacity loss on their currentskill-level workforce.

The objective function of the MDP may then be formulated as follows:

minx0,...,x2,y1,...,y3

{2∑

t=0

[(h+W1)x1,t] +

3∑t=1

[(

3∑i=1

Wiyi,t) +Ot(yt, Dt)]}, (3.89)

subject to the following dynamics for t = 1, ..., 3:

y1,t = (1− q1)y1,t−1 + (1− q0)x1,t−1 − x2,t−1, (3.90)

y2,t = (1− q2)y2,t−1 + x2,t−1 − x3,t−1, (3.91)

y3,t = (1− q3)y3,t−1 + x3,t−1, (3.92)

with the initial workforce vector, y0 = (y1,0, ..., y3,0), assumed to be known inadvance and the discount factor is taken to be α = 1. The control xt is restrictedto be nonnegative.

We assume that there are always ‘enough’ agents that can be promoted into thenext level, once such a decision was made. We also assume that new recruits arenot the ones that get promoted. For example, for promotions from Level1 to Level2we assume that for time period t:

x2,t−1 < n1,t = (1− q1)y1,t−1, (3.93)

with n1,t being the pre-hiring workforce vector. In other words, we assume that thetotal workforce at Level1, after turnover, will suffice to provide agents for Level2,without considering the new recruits. The low-level planning formulation in theform of the operating function Ot(yt, Dt), is equivalent to the one used in theextended Full Model (3.69).

Remark 5. An MDP that includes promotion, as part of the control, was not con-sidered in Gans and Zhou (2002) or elsewhere in the literature as far as we know.Markov chain models that include control through promotions do exist in the lit-erature (see Chapter 8 in Bartholomew et al. (1991)), but they are formulated asLinear Programs, without general results regarding optimal policy. As part of ourfuture research, we plan to prove that there exists an optimal ‘hire-and-promote-up-to’ policy for the CPM, in the spirit of the ‘hire-up-to’ policies (see Definition1 in §3.2.9).

99

Page 111: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Parameter ValueTurnover Rate Level1 q1 3.96%

Turnover Rate Level2 q2 0.84%

Turnover Rate Level3 q2 0.47%

Dropout Rate 7.45%

Total shift absenteeism 12%Hiring cost h 3000 NIS

Average wage Level1 and Level2 Agents W1, W2 8000 NISAverage wage Level3 Agents W1, W2 15000 NIS

Table 3.9: Full Model Parameter Estimates

CPM: Optimal Control

We follow similar steps to those presented in the section on optimal control for theFull Model: we formulate a dynamic programming problem (DPP) and a linearprogramming problem (LPP). The abstract definition of the LPP and the DPP isequivalent to the two problems, as presented for the Full Model - LPP (3.80) andDPP (3.87). The only difference between the formulation for the extended FullModel and the CPM model is in the coefficients of the control variables. Somecontrol variables will have negative coefficients, both in g(x, y0) and in Ot(x, y0).We can still use Theorem 2 to show that if the LPP is solvable and attains its optimalsolution x∗ (which is not necessary the case for any set of model parameters) thenx∗ is also optimal for the DPP.

CPM: Results

We now apply the Controlled Promotions Model to perform workforce planning forour Test-Case Call Center. We compare the results of the CPM and the Full Model,since these models consider multiple skill-levels. Table 3.9 lists the parameterestimates used for the CPM, as estimated in §3.4.2.

Since the optimal solution to the unconstrained low-level planning (3.87) equalsthe solution of the Full Model, the target workforce levels are as presented in Table3.7. This equality of target workforce levels is a result of using similar estimatesand model parameters for both the Full Model and CPM. Since the differencesbetween the two models are in the set of constraints that limit the total scheduledworkforce, and this constraint is removed in (3.87), the resulting optimal solutionis the same for both models.

Table 3.10 presents the optimal control for the two models.2 We use the un-controlled learning numbers of the Full Model as a comparison to the promotionsin the CPM.

We see that if no inside recruitment would be practiced (our extension to the2Full Model results are denoted by the abbreviation FM.

100

Page 112: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Control December January February MarchFM Level1 Recruitment 79 0 0 –

CPM Level1 Recruitment 95 0 0 –FM Level1-Level2 Learning 2.15 3.1 2.93 –

CPM Level1-Level2 Promotion 16.97 0.5 0.5 –FM Level2-Level3 Learning 0.45 0.67 0.7 –

CPM Level2-Level3 Promotion 1.43 3.1 0.12 –FM Level2 Recruitment 14 0 0 –FM Level3 Recruitment 1 0 3 –

Table 3.10: Optimal Control – Controlled Promotions Model and Full Model

Total Workforce December January February MarchFM Level1 149 215 204 194

CPM Level1 149 215 206 198FM Level2 32 47 49 51

CPM Level2 32 47 44 44FM Level3 18 19 22 22

CPM Level3 18 19 22 22Total Workforce FM 199 281 275 267

Total Workforce CPM 199 281 272 264

Table 3.11: Total Workforce – Controlled Promotions Model and Full Model

Full Model) then the target workforce levels would be unattainable due to lowlearning rates in the Full Model. This is solved by the controlled promotions thatwere added to the CPM. For example, in January, large gap in the target workforceexists for Level2 agents. Thus, many Level1 agents are promoted in a controlledfashion. If we would not control this process, as done in the Full Model, then wewould not attain the target thresholds for Level2 workforce.

Table 3.11 presents the total workforce employed during the planning horizonfor the two models. CPM attains Level2 and Level3 skill-levels more accurately, incomparison to the Full Model. This phenomena occurs because, in the Full Modelwhen agents are recruited into a high level (Level2 or Level3) they have a positiveprobability to learn into the next level after a single period, without the option ofmanagement intervention. Thus, if a decrease in the target workforce occurs, itwill result in overstaffing with respect to the target levels. The overstaffing can bereduced, by controlling promotions.

CPM seems to be a more suitable model, but it has a major drawback withrespect to the Full Model. The assumption of having enough candidates for pro-motion at all times, for all skill-levels, is problematic. On the other hand, if onewishes to use the Full Model, one must assume that an infinite inner recruitmentpotential exists. A Call Center workforce planner is to decide on the model to use,

101

Page 113: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

according to how well the model represents the relevant reality. We now providea discussion, comparing the three models among each other. Then we compareresults from using the three models, for the real workforce in our Test-Case CallCenter, over the same planning period.

3.4.4 Workforce Planning: Models and Reality

Comparing the Three Models

Figure 3.7 presents the total workforce planned by our models, for the first quarterof year 2011. Along with these results, we provide the target workforce levelsthat these models were supposed to attain. To recall, target workforce levels arethe unconstrained solution to the low-level planning problem. Thus, if we staffthe Call Center with less than these target levels, we will not be able to providethe ‘adequate’ service levels. On the other hand, any staffing above these levels isredundant, yet sometimes unavoidable.

The vertical axis of Figure 3.7 corresponds to the total workforce, and the hor-izontal axis corresponds to the planning periods (first quarter of year 2011). Thedarker blue line corresponds to the resulting total workforce when using the Base-Case Model. The cyan line is the target workforce that the Base-Case Model at-tempts to attain.

We see that the only deviation between the two models is in February. This de-viation originates in a ‘drop’ in the forecasted demand for February. The decreasein demand for service reduces the required total workforce, but the correspondingturnover rates are not large enough to reduce the total workforce immediately. InMarch, the two lines agree at the value of 265 agents.

The red line corresponds to the total workforce, resulting from using the FullModel. The green line is the total workforce, resulting from using the ControlledPromotions Model. We see that the two models, which correspond to multiple skill-levels, almost overlap. These two models are attempting to attain the same targetworkforce (the purple line). The target workforce is not achieved in February andMarch, due to low turnover rates and, in the case of the Full Model, due to theexistence of uncontrolled learning. In the long-run, if the target workforce willremain 248, CPM will attain and maintain this target workforce, while the FullModel will always be somewhat above the required total workforce.

Figures 3.8, 3.9 and 3.10 present the total workforce for Level1, Level2 andLevel3 agents, respectively. The target workforce levels are presented as well.Only CPM and the Full Model are relevant, since the Base-Case Model does notaccount for multiple skill-levels of agents. We observe that, for Level1, the behav-ior of the two models is similar to the behavior of the total workforce (Figure 3.7).There is a decline in the target workforce that is not immediately achieved by themodels, due to slow turnover rates.

For Levels 2 and 3, the target workforce levels are attained perfectly by CPMand almost perfectly by the Full Model. The reason that the Full Model does not at-

102

Page 114: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

292

265

281

275

248

220.0

230.0

240.0

250.0

260.0

270.0

280.0

290.0

300.0

Jan Feb Mar

Tota

l W

ork

forc

e

Planning Horizon

Base-Case Model

Full Model

Controlled Promotions Model

Target Workforce (FM and CPM)

Target Workforce (Base-Case)

Figure 3.7: Total Planned Workforce (January-March 2011) - Comparing our ThreeModels

tain these target levels accurately is because the learning process in the Full Modelis uncontrolled.

215

194

182

198

160

170

180

190

200

210

220

Jan Feb Mar

Tota

l W

ork

forc

e

Planning Horizon

Full Model - Level1

CPM-Level1

Target Workforce - Level1

Figure 3.8: Total Planned Workforce for Level1 (January-March 2011) - CPM andFull Model

The Base-Case model is the most costly of the three models, in terms of totalworkforce, since its total target workforce levels are the highest. The cheapest ofthe three models, in terms of incurred costs, is CPM, since it is closest to attaining

103

Page 115: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

47

51

4444

40

42

44

46

48

50

52

Jan Feb Mar

Tota

l W

ork

forc

e

Planning Horizon

Full Model - Level2

CPM-Level2

Target Workforce - Level2

Figure 3.9: Total Planned Workforce for Level2 (January-March 2011) - CPM andFull Model

19

22.4

2222

17

18

19

20

21

22

23

Jan Feb Mar

Tota

l W

ork

forc

e

Planning Horizon

Full Model - Level3

CPM-Level3

Target Workforce - Level3

Figure 3.10: Total Planned Workforce for Level3 (January-March 2011) - CPMand Full Model

the target workforce for all skill-levels. CPM has less uncontrolled components,thus its optimal control is closest to target workforce levels that are set by low-levelplanning. Figure 3.11 summarizes the comparison between the three models interms of total top-level costs. These costs are calculated according to the estimates

104

Page 116: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

and model assumptions, presented earlier. 3

7538603

7266316 7263055

7100000

7150000

7200000

7250000

7300000

7350000

7400000

7450000

7500000

7550000

7600000

Base-Case Model Full Model Controlled Promotions

Model

Tota

l To

p-L

ev

el

Co

sts

in N

IS

Figure 3.11: Total Top-Level Costs - Comparison between the Three Models

We return to Figure 3.7, and observe the total workforce again. We see that thedifference in total workforce employed, between the (extended) Full Model andthe Base-Case Model, is very small. The advantage of the Full Model is that, inthe long-run, it provides better target workforce levels due to the consideration ofmultiple agents. Workforce planners would rather have the workforce divided intothe skill-levels, rather than applying a heuristic of dividing the total workforce fora single skill-level that results from applying the Base-Case Model.

On the other hand, the Base-Case Model is without doubt the simplest modelto implement, so it is very appropriate as a first step when applying multi-levelworkforce planning. It is however not enough, when considering skills-based callcenters, since it does not provide the separation of the workforce into skill-levels.

Although the Controlled Promotions Model is the most accurate in attainingthe target workforce, it has the problematic assumption that there will always beenough candidates for promotion. In our Test-Case Call Center, this seems to bethe case, since each skill-level requires less workforce than its predecessor. Insystems where this ‘pyramid’ is not as balanced, CPM may become infeasible andthus inner recruitment or outsourcing of calls will be called upon, to sustain thismodel.

The Full Model also ‘suffers’ from a problematic assumption. It assumes thatthe potential of inside recruitment is limitless. In practice, we observed very fewinside recruitment in the Test-Case Call Center. Every such inner recruitment hasa vast influence on career paths of employees, which makes it a hard decision toimplement, especially when it is against the employee’s will.

3The comparison use the Israeli currency - NIS (New Israeli Shekels).

105

Page 117: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Comparing Models to Reality

We conclude the section on multi-level workforce planning in call centers with acomparison between our results, in terms of total workforce, and the real work-force that was employed in the Test-Case Call Center during the first quarter of2011. This comparison can be viewed as an empirical validation for our workforceplanning models.

Figure 3.12 presents the total workforce for the first quarter of year 2011, as itis planned by our three models, along with the real workforce that was employedduring that time period. The chart shares its legend with Figure 3.7, with the addi-tion of the real employed workforce, depicted by the purple line. (Target workforcelevels are not presented.)

292

265

281275

204207

210

200.0

210.0

220.0

230.0

240.0

250.0

260.0

270.0

280.0

290.0

300.0

Jan Feb Mar

Tota

l W

ork

forc

e

Planning Horizon

Base-Case Model

Full Model

Controlled Promotions Model

Real Workforce

Figure 3.12: Total Planned Workforce (January-March 2011) - Three Models andReal Workforce

We observe a significant difference (of about 25%) between the results of ourplanning models and reality. At first glance, one gets the impression that our low-level planning model that sets the target workforce levels is inappropriate. If thedifference in the employed workforce would be that large, then the Call Centerwould provide a very low quality of service. But this is not always the case.

We explore the service levels over two weeks of January of 2011, since Jan-uary is the month with the largest workforce gap between our models and reality.In Figure 3.13, we first present the fraction of ‘General Banking’ customers thatwere answered within their target time (80% of calls are to be answered within 60seconds). These customers consist of the vast majority of calls and can serve asa representative example for other customer types. We observe that target timeswere rarely attained, which is consistent with what we would expect to happen in

106

Page 118: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

the Call Center.

0.00

10.00

20.00

30.00

40.00

50.00

60.00

70.00

80.00

90.00

100.00

7:00 8:00 9:00 10:00 11:00 12:00 13:00 14:00 15:00 16:00 17:00 18:00 19:00 20:00 21:00 22:00 23:00

Rate, %

Time (Resolution 30 min.)

Figure 3.13: Average proportion of ‘General Banking’ customers answered withTarget Time - 2nd - 14th of January 2011

We observe Figure 3.14 that presents the average abandonment rates, for thesame 12 days at half-hour resolution (for all customers this time, since abandon-ment rates are targeted for all customers). We observe that, at the half-hour reso-lution, abandonment rates are not far from the target abandonment rates (10%), formost intervals. Again, this finding is raising a question of validity regarding ourlow-level workforce planning technique.

From observing the service levels we cannot reach a definite conclusion on the‘correctness’ of our target workforce levels. On the one hand, the abandonmentrates are high by the targets set by management. On the other hand, the targetwaiting service levels are rarely attained at the half-hour resolution.

The empirical evidence we present in Figure 3.15 advocates that our targetworkforce levels are ‘adequate’. In Figure 3.15, the blue line corresponds to thereal workforce employed during each month of the year 2011. The red line corre-sponds to the average target workforce for the first quarter of 2011, as it was set bythe multiple skill-level low-level model. We see that, gradually, after half a year,the workforce of our Test-Case Call Center attains our proposed target workforce.

What explains the gap between the target workforce levels (required work-force) and the low workforce levels at the beginning of 2011 is the process of re-cruiting new agents. The basic courses seldom exceeded 15 agents per course, due

107

Page 119: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

0.00

1.00

2.00

3.00

4.00

5.00

6.00

7.00

8.00

9.00

10.00

11.00

12.00

13.00

14.00

15.00

16.00

17.00

7:00 8:00 9:00 10:00 11:00 12:00 13:00 14:00 15:00 16:00 17:00 18:00 19:00 20:00 21:00 22:00 23:00

Rate, %

Time (Resolution 30 min.)

Figure 3.14: Abandonment rates for all customer-types - 2nd to 14th of January2011

to low recruitment potential. One of the basic assumptions in our models is thatnew recruits are always available. Reality however shows us that this assumptionis problematic.

An interesting question that can be raised is how did the Call Center maintainrelatively ‘adequate’ service levels (by its own definition), while being underem-ployed, with 25% less workforce than our target workforce levels. In other words,our models determine that 259 agents are required to operate the Call Center, sothat it will achieve 10% abandonment rates. In reality, these target service levelswere attained with employing only 204 agents (workforce in January 2011).

After some research on the subject, we conclude that this was possible duethe large amounts of overtime that was practiced at the beginning of the year.4 Inour low-level planning models, we did not consider overtime, since management’sdirective in our Test-Case Call Center is to reduce it down as much as possible(equivalent to attaching a very high cost to overtime). In reality, almost every agentthat is scheduled to a certain shift performs extra-hours, thus inflating the ‘workingpotential’ of the employed agents. For example, in our models we assumed thatan agent works 8 hours during a certain shift-type. In reality though, agents wereworking over 10 hours. Adding overtime to low-level planning would reduce therequired target workforce, at the cost of extra operational costs, and maintain ‘ad-

4This information was revealed through numerous discussions with call center management.

108

Page 120: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

204207

210

220

235

238

252

255 254

261

247

200

210

220

230

240

250

260

270

Real Workforce - 2011 Average Target Workforce

Figure 3.15: Total Planned Workforce (January-March 2011) - Models against Re-ality

equate’ service levels. Since practicing overtime is discouraged by management,a slow gradual recruitment was performed in the Call Center and target workforcelevels were attained, thus reducing overtime costs.Remark 6, On the Difference between theoretical and real-life Workforce Plan-ning. In our mathematical models, we attempt to capture the reality of service sys-tems and determine a set of assumptions and parameters that can be validated ifappropriate data is provided. If there is no available data for statistical estimation,then a ‘What-If?’ analysis can be performed on the set of our model parametersand workforce related decisions would be based upon rigorous analysis.

In reality, many workforce planning aspects are neglected, discussed in in-appropriate resolutions or negotiated (management vs. call center team-leaders)without any empirical basis. This non-scientific approach is often taken becauseof political reasons, rather than due to lack of data or qualified planning personnel.We now provide several examples to such aspects, how they are considered in ourmodels and the impact that these aspects may have when performing workforceplanning. We also mention how these aspects are considered in the reality of ourTest-Case Call Center.

• On-the-job absenteeism - When agents are scheduled to a shift, they willnot be able to be productive during that entire shift. They will have breaks,make outgoing calls, address meetings with supervisors and so on. This fac-tor is to be considered when performing workforce planning, because if we

109

Page 121: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

need an average of 10 agents online for a certain time-interval, we mightend up with only 7 agents online, effectively. In our theoretical research, wemodel on-the-job absenteeism using a statistical technique (General Addi-tive Model, described in §4.2.3). In the reality of the Test-Case Call Center,on-the-job absenteeism is allocated an ‘overhead’ of 11% on top of the totaltarget workforce levels, without any estimation or justification of that pa-rameter value. Thus, if the target workforce level is 100, then managementwould add 11 more agents. The impact of setting an overhead without anempirical basis can be crucial: we estimated that during the day, agents areabsent 24% of the time. This gap between real absenteeism and the assumedoverhead, allocated by management, results an average difference of 15%in half-hour staffing. Such an under-staffing will have an immediate impacton service levels. Another result of using the overhead parameter would besmaller target workforce levels. This eventually leads to employing smallernumbers of agents, which will, in turn, lead to an increase in overtime.

• Shift absenteeism - An agent that is scheduled to a certain shift has a pos-itive probability to be absent from that shift without any prior notification(health, family issues,...). This type of absenteeism has an obvious impacton low-level workforce planning. We propose a low-level planning modelthat will account for such shift absenteeism. At the time, we could not esti-mate this absenteeism since we lacked the appropriate data. But recently, wereceived a database from our Test-Case Call Center that contains the recordsof agents that were absent without a prior notification. In the reality of theTest-Case Call Center, shift absenteeism was allocated an overhead of 12%on top of the total workforce. Again, no empirical estimation is performedto justify this overhead.

• Service levels - A key issue in service systems is how to determine servicelevel measurements and set appropriate service level targets. In the Test-CaseCall Center, service levels are measured in terms of total abandonment ratesand proportion of calls that wait less than a target time (different customertypes are attached with different target times). Target abandonment ratesand target times are set without mentioning of the resolution at which theyare to be enforced. Our workforce planning models enforce a uniformlyhigh service level, across all half-hour intervals. Workforce planning models,that are applied in call centers often attempt to attain daily target levels.This difference can obviously result in a large gap of target workforce levels,between our models and the models applied in reality.

110

Page 122: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Chapter 4

Statistical Techniques ForWorkforce Planning in CallCenters

111

Page 123: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

4.1 Introduction

This chapter is dedicated to validating assumptions and estimating parameters forthe workforce planning models applied in §3.4. Since this subject is not the mainfocus of the present thesis, the statistical goodness-of-fit tests are presented briefly;other statistical aspects are also discussed casually.

For the purposes mentioned above we use two databases, both related to theTest-Case Call Center. The first database contains transaction-level data of cus-tomer calls and agent events. (We refer to this database as SEEData – see AppendixA.) The second database contains career paths for all Call Center agents employedbetween July 2005 and May 2012.

We start by presenting results for our Base-Case Model and then extend theseresults to address the Full Model. Our third model, Controlled PromotionsModel, does not require additional validation or parameter estimation beyond whatis provided for the Full Model.

We then proceed to a discussion on the validation of the well-known Erlang-A model. We validate the model using an empirical staffing model presented in§4.2. We finish this chapter with a survival analysis approach to estimating agentturnover rates.

4.2 Base-Case Model

As mentioned in §3.4.1, our Base-Case Model relies on the following set of as-sumptions:

1. No learning: All agents obtain a single skill-level after finishing the basiccourse.

2. Turnover rates at the end of period t are deterministic and stationary.

3. New recruits go through a basic course that lasts a single planning period(top-level periods).

Assumption 1 is clearly violated in reality, since agents can serially learn upto three skill-levels (as introduced in §3.3.2). Assumption 3 matches Call Centerreality, since the basic course lasts a single month (which is exactly one planningperiod of our top-level MDP).

Assumption 2 is not as straightforward to validate as Assumption 1 and As-sumption 3. We start this chapter with a data-driven turnover analysis that leadsto a validation of Assumption 2. We then use this turnover analysis to estimateturnover rates for trainees and skilled agents.

Consequently, we model and estimate the bottom-up demand, which is thetotal number of calls that arrive at half-hour intervals (see §3.2.7 for the definitionof bottom-up planning). We do not model top-down demand, since it can beeasily derived by summarizing the bottom-up demand (see §3.2.7 for the definition

112

Page 124: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

of top-down planning). We note that for top-down models, estimating the half-hour demand is redundant and costly. Thus, in practice when performing top-downmodeling, the standard time-series approaches, which explore historical data, canbe applied to provide monthly forecasts Brockwell and Davis (1991).

We finish the current section with a model for bottom-up staffing functionsthat transform the half-hour demand into half-hour ‘adequate’ staffing. We firstmodel the number of online agents required for each half-hour. Then we considerstaffing compensation that is added to the number of agents online for on-the-job absenteeism. Note that a simple model for top-down staffing functions wasintroduced in §3.4.1.

4.2.1 Are Turnover Rates Indeed Stationary and Deterministic?

In our Base-Case Model it is assumed that turnover rates, both for trainees andskilled agents, are stationary and deterministic. Here, turnover rates correspondto the proportion of agents who leave the Call Center out of the entire employedworkforce, at the end of each planning period.

Figure 4.1 presents turnover rates for skilled agents (those who passed the basiccourse), between Jan2007 and Nov2010. The start-date corresponds to the firstmonth when the Test-Case Call Center began working in its current operationalformation. The end-date corresponds to a single month prior to the workforceplanning procedure introduced in §3.4.

Observing Figure 4.1, we may ‘roughly’ assume that the presented series ispiecewise stationary. For instance, for Jan2007 – Sep2008, we observe above-average turnover rates. Then for Oct2008 – Jun2009, perhaps due to the globalfinancial crisis, we see a decline in turnover rates. This finding corresponds tonegligible recruitment during the discussed period of time.

For Jul2009 – Nov2010, turnover rates had small variability, with an averagerate of 5.27% and a standard deviation of 2%. We observe that for skilled agents,Assumption 2 is plausible for short planning periods, such as a single quarter. Forlonger periods, a ‘rolling-horizon’ update of turnover rates is required, in order tomaintain Assumption 2. Thus, we estimate turnover rate q1 as q1 = 5.27% (whichis the average turnover rate for Jan2010 – Nov2010).

Figure 4.2 presents course dropout rates for Jul2005 – Nov2010. We observethat these dropout rates are highly non-stationary; moreover they greatly dependon the period of recruitment. A possible explanation that came up during ourinterviews with the Call Center’s OR team was that the basic courses are veryheterogenous with respect to candidate-quality. We estimate the dropout rate, q0,using the average rate for the entire period as: q0 = 7.45%. Further research ondropout-rates is required.

To conclude, when treating our Test-Case Call Center agents as single-skilledagents, it is plausible to assume stationary and deterministic turnover rates. Fortrainees, further ‘inside information’ on the quality of course-candidates is re-quired. Such information can be gathered, for example, by interviewing course

113

Page 125: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

0.00%

2.00%

4.00%

6.00%

8.00%

10.00%

12.00%

14.00%

2008 -2009 - less turnover

Mean = 5.01%

Figure 4.1: Turnover Rates - Skilled Agents, January 2007 - November 2010

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

01

-08

-05

01

-10

-05

01

-12

-05

01

-02

-06

01

-04

-06

01

-06

-06

01

-08

-06

01

-10

-06

01

-12

-06

01

-02

-07

01

-04

-07

01

-06

-07

01

-08

-07

01

-10

-07

01

-12

-07

01

-02

-08

01

-04

-08

01

-06

-08

01

-08

-08

01

-10

-08

01

-12

-08

01

-02

-09

01

-04

-09

01

-06

-09

01

-08

-09

01

-10

-09

01

-12

-09

01

-02

-10

01

-04

-10

01

-06

-10

01

-08

-10

01

-10

-10

Mean = 7.45%

Figure 4.2: Dropout Rates - Trainees - July 2005 – November 2010

114

Page 126: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

instructors or by going over qualification test-results. This ‘inside information’canlead to a better estimation of dropout-numbers and be used to update the proposedestimate for q0.

4.2.2 Staffing Function: Agents Online

We model the staffing function in two steps: First we estimate the number ofagents online, required to meet demand up to a certain predefined service level;then we add more agents that will compensate for on-the-job absenteeism.

Figure 4.3 shows the average number of agents online for half-hour intervals, asa function of the half-hour demand. Each point on the chart, corresponds to a half-hour period during the year 2010. The vertical axis represents the average numberof agents online staffed during half-hour periods. The horizontal axis representsthe total number of arriving calls during that same time-interval. Time intervals areassumed independent with respect to arrivals and the number of agents online, i.e.the total number of calls that arrived during interval S1 does not influence demandor staffing during interval S2 (S1 6= S2).

Figure 4.3: Agents Online as Function of Arrivals - Half-hour Resolution - SEE-Data (Call-Log) - 2010

During the ‘red’ intervals ‘adequate’ service levels were attained, specifically,abandonment rates during these intervals were between 5% − 15%. (We set thesetarget service levels after consulting our Test-Case Call Center’s management.)We fit a non-linear spline to these ‘red’ areas using SEEData for year 2010. Thus,we obtain a function that transforms half-hour demand into the number of agentsonline.

115

Page 127: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Formally, we define the required number of agents-online, zs, as:

zs = f(Dst ) + εs, (4.1)

with f(Dst ) being a non-linear spline function of the demand Ds

t , which is definedas the number of calls at time interval s (see §4.2.4 for a discussion on the demandfor service). The notation εs corresponds to a zero-mean gaussian noise for time-interval s.

Essentially, our staffing model (4.1) is a ‘black-box’ model that receives twoinput parameters: number of arriving calls per interval and target service levelsper interval; the model returns an output: required number of agents online perinterval. Other parameters such as: service times, patience, learning curve etc. areencompassed within the ‘black-box’ of the staffing model. We will refer to thisstaffing model (4.1) as StaffingModel1. We later extend this model to account forstaffing several skill-levels.

The fitted spline is presented in Figure 4.4. The horizontal axis corresponds tothe demand during half-hour intervals, while the vertical axis corresponds to thenumber of agents online required to ‘adequately’ meet this half-hour demand. Thefunction presented is accompanied by confidence intervals of 95%.

The horizontal axis has additional blue ‘ticks’ that correspond to points withempirical evidence in Figure 4.3. Thus, for points that do not have such evidencein the data, no blue ‘ticks’ exist and the corresponding confidence intervals are‘broader’ (we can trust these ‘un-ticked’ regions less than others). Such notationof blue ‘ticks’ reoccurs throughout all fitted-function plots.

We observe that there are two ‘regions’ in Figure 4.4: One with low arrival-volume that corresponds to the convex part of the spline and one with high arrival-volume that corresponds to the concave part of the spline. This result ‘goes hand-in-hand’ with an ‘Economies-Of-Scale’ principle, i.e. when staffing service sys-tems during ‘busy’ hours, each new call requires less additional staffing than itspredecessor.

For ‘slow’ intervals, the opposite phenomena is observed in Figure 4.4. Inother words, for ‘slow’ intervals, we need to ‘bring-in’ more agents online forevery extra call that arrives. This phenomena is specific to our model, since itrequires uniformly ‘adequate’ service levels among all half-hour intervals. Everyabandoning call in a ‘slow’ interval will have a great impact on service levels; thus,in order to reduce abandonments more agents are required for every arriving call.

After obtaining the number of agents online required for each half-hour period,we now add staffing-compensation to account for on-the-job absenteeism.

4.2.3 Staffing Function: On-the-job Absenteeism

As we mentioned in §2.6.1, we refer to non-productive activities that prevent agentsfrom answering incoming calls as on-the-job absenteeism. In reality, Call Cen-ter management provides top-level workforce ‘compensation’ that is supposed toaccommodate breaks and back-office work. Other non-productive activities, that

116

Page 128: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Figure 4.4: Result of fitting model 4.1 to SEEData, year 2010

includes meetings, outgoing calls and other miscellaneous tasks are assumed to beperformed during the ‘slow’ hours. A hidden assumption that is made by manage-ment is that a certain ‘workforce-slack’ exists during these ‘slow’ hours.

We model on-the-job absenteeism by defining an absenteeism rate for eachhalf-hour interval s. We then fit a GAM by using SEEData and estimate this ab-senteeism rate for each time interval s. Finally, we integrate the absenteeism rateand the required number of agents online to deduce final half-hour staffing.

The absenteeism rate is defined as the proportion of time out of the half-hourthat an agent spends on non-productive activities. Formally, we denote by ps theon-the-job absenteeism rate for interval s, and define:

ps =as · 30min

(as + zs) · 30min=

as(as + zs)

, (4.2)

with as being the number of absent agents during time interval s. (Recall thatzs denotes the number of agents online during interval s. Therefore, the quantityas + zs corresponds to the total number of agents staffed during interval s.)

We model ps using a General Additive Model (GAM) Hastie et al. (2001) thatincludes two effects: The demand effect and the interval effect. The demand effectcorresponds to the influence of half-hour demand volume on absenteeism rate ps.The interval effect corresponds to the influence of the interval itself (similar tointerval effect presented in §4.2.4, where demand for service is modeled). Thus,we represent the on-the-job absenteeism rate as:

ps = g(Dst ) + βs + εs, (4.3)

with g(Dst ) being the demand effect and βs being the half-hour effect. We again

use SEEData for year 2010 in order to fit the on-the-job absenteeism model.

117

Page 129: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Figure 4.5 shows the interval effect on the absenteeism rate during the day. Wesee that absenteeism rates are highest around meal-times (9:00, 13:00 and 18:30).Figure 4.6 shows the demand effect on the absenteeism rate. We see that absen-teeism rates decline as arrival rates increase.

We conclude from the above charts that in reality, on-the-job absenteeism isa partially-manageable process. Agents are allowed to leave for meals at regu-lar times and ‘brought back’ to be online when arrival-loads increase. Thus, it ispossible to optimize these absenteeism allowances to improve staffing ‘adequacy’.

We may now estimate the right-hand side of constraint (3.25):

N(Dst ) = as + zs =

zs1− ps

. (4.4)

In other words, we staff zs agents online to meet demand Dst and as agents to

‘fill-in’ for a proportion of zs who perform non-productive activity during intervals. We are now able to provide a solution to our Base-Case Model, using the aboveparameters, by following Algorithm 1 introduced in §3.4.1.

118

Page 130: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Figure 4.5: Absenteeism rate - Interval Effect

Figure 4.6: Absenteeism rate - Demand Effect

119

Page 131: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

4.2.4 Modeling the Demand for Service

We denote J as the number of customer-types and S the number of half-hour inter-vals, during period t. We thus define the demand for service during planning periodt as matrix Dt, of dimension J × S, with each element Dj,s

t being the number oftype-j calls arriving during half-hour interval s.

Note that the above definition for demand is not scaled by average servicetimes; this definition is inconsistent with the standard approach, when applyingqueuing models for Call Center analysis (see Reich (2012) for the definition ofdemand for service as the offered-load process). This inconsistency correspondsto the definition of our staffing model presented in §4.2.2. Our staffing model,StaffingModel1, assumes that the only two parameters required for setting staffing-levels are half-hour arrival-rates and target service levels. Other components,including service times are part of a ‘black-box’ of the Call Center’s reality.

Our experiments show that estimating demand for each customer type j =1, ..., J does not significantly influence the overall staffing requirements for differ-ent agent-skills. Specifically, the difference of fitting model (4.1) with or withoutconsidering heterogeneity of calls based on the customer-type was not significant.Thus, for the purposes of this thesis, we reduce Dt to a vector, of dimension 1×S,with each component Ds

t being the total number of calls arriving during intervals.1

We use a General Additive Model (GAM) for modelingDt Hastie et al. (2001).We learn the GAM using SEEData for September 2010 – November 2010 (onequarter prior to our workforce planning experiment). We do so by first identifyingsignificant effects that influence demand and then estimating the sizes of theseeffects, thus obtaining a prediction formula for Ds

t .The first effect that we found to be significant is the interval effect, i.e. in-

tervals ‘7:00 – 7:30’ and ‘10:00 – 10:30’ differ on the total number of arrivingcalls. The second effect that we include in our model is the calendar-day effect,i.e. 1st, 2nd, 10th, 15th of the month. This effect exists due to the large numberof monetary transactions that occur during these calendar days (salary payments,credit-card billings, etc.).

We model the Weekday-demand and the Friday-demand separately, since Fri-days present a different arrival-rate behavior. Figure 4.7 depicts the half-hour av-erage proportion of arrivals (out of the total daily arrivals), for each Weekday andFriday of October 2010 – November 2010. We observe, on the one hand, thatthe proportion of arrivals do not differ significantly between different weekdays.(This ‘gives rise’ to intuitive exclusion of a weekday effect from our GAM. Weconfirmed this intuition with statistical tests.) Fridays, on the other hand, are com-pletely different in ‘shape’ and thus require a separate additive model.

1For other test cases, one might want to keep the dependence of demand on customer-types. Sinceour goal is to propose a general methodology, our notation includes index j.

120

Page 132: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Figure 4.7: Average Proportion of half-hour arrival-rates out of total daily arrivals,September 2010 – November 2010

Formally, we model Weekday demand for service as:

Ds,ct = αs + γc + εs,c, (4.5)

with αs being the interval effect, γc being the calendar day c effect and εs,c beingthe noise factor. Thus, by fitting data to our model, we obtain Ds

t for all half-hoursof planning period t.2

Figure 4.8 presents the interval effect as fitted to our weekdays model. Thehorizontal axis corresponds to half-hour intervals, with s = 7 being interval ‘7:00– 7:30’, s = 7.5 being ‘7:30 – 8:00’ and so on. The vertical axis correspondsto the effect-size — the larger the effect-size, the higher the arrival-rate estimate.In Figure 4.8 we reproduce a well-known behavior of the arrival process in manyservice systems. There is a major ‘peak’ during the morning and a ‘secondarypeak’ during the afternoon. The dashed lines correspond to prediction intervals(upper and lower) for the interval effect.

Figure 4.9 presents the calendar-day effect as fitted to the Weekday model. Thehorizontal axis corresponds to the specific calendar Weekday, with c = 1 being thefirst calendar-weekday of the month. The vertical axis corresponds to the calendar-day effect-size. The dashed lines correspond to prediction intervals (upper andlower) for the calendar-day effect.

Figure 4.10 presents a comparison between arrival-rate forecasts, when usingGAM (4.5) against real SEEData. The green line denotes real demand for ser-

2A similar GAM was fitted to Fridays with the exclusion of the calendar-day effect.

121

Page 133: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Figure 4.8: Time of day (Interval) Effect

Figure 4.9: Calendar-day Effect

vice during the first quarter of 2011 (our planning horizon in §3.4). The blue linecorresponds to the estimated demand using GAM (4.5).

We introduce two goodness-of-fit measures. The first measure is the Mean

122

Page 134: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Figure 4.10: Goodness-of-Fit - Estimated Demand vs. Real Demand

Average Error (MAE), which is the absolute difference between the fitted numberof calls per interval and the real number of calls per interval. The result isMAE ≈42 calls per half-hour, which is 20% of the average number of calls per half-hourinterval.

This error can be transformed into a second goodness-of-fit measure, the aver-age staffing error. The average staffing error is defined as the absolute differencebetween the ‘adequate’ staffing, using our demand predictions and the ‘adequate’staffing if we would know the real demand in advance.

We use the following transformation to convert the number of calls into ‘ade-quate’ staffing:

N =Ds

t · (1− P (Ab)) · E(S)

C, (4.6)

with Dst being the total number of calls, P (Ab) being the target abandonment rate,

E(S) being the average service time and C being the average agent’s capacity.(See §3.4.1 for a further discussion on the conversion of number of arriving callsper interval into staffing per that same interval.)

We set C = 30 minutes (assuming that a scheduled agent is online for theentire interval), P (Ab) = 0.1 (target abandonment rate), E(S) = 4.7 minutes(average point-estimate) and average error in number of calls Ds

t = 42 (MAE).The resulting average staffing error is 5.9 agents per half-hour. In other words,when we forecast demand using our GAM, the average deviation from ‘adequate’staffing requirements is 5.9 agents.

123

Page 135: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

We propose a benchmark estimator of demand for service: Average numberof calls that arrive during period s. Our model outperforms this estimate, since itresults in an average staffing error of 6.6 agents per half-hour.

For a deeper analysis of the arrivals process in Call Centers, see Aldor-Noimanet al. (2009).

4.2.5 Stationarity of the Demand For Service

Figure 4.11 depicts half-hour arrival-rates for two consecutive months, specifically,February 2010 (blue line) and March 2010 (red line). We observe that the twolines mostly overlap, with the volume of half-hour arrivals being almost identical(absolute difference of 26 calls per interval, which is 11.5% of the average numberof calls arriving per interval). Thus, both months have a similar intra-day ‘shape’and we may conclude that demand for service is stationary with respect to half-hourintervals.

0

100

200

300

400

500

600

700

800

1

17

33

49

65

81

97

113

129

145

161

177

193

209

225

241

257

273

289

305

321

337

353

369

385

401

417

433

449

465

481

497

513

529

545

561

577

593

609

625

641

657

February

March

Figure 4.11: Absenteeism rate - Interval Effect

Figure 4.12 shows half-hour demand over the entire year 2010. We observethat there is a ‘slow’ declining yearly trend (denoted by the red line). This trendindicates that if stationarity of demand is assumed, then planning horizons shouldnot be selected to be years, but rather to be single quarters.

We do not assume stationary demand in our Base-Case Model, but if we wouldadd such an assumption, then Gans and Zhou (2002) shows that an optimal ‘hire-up-to’ policy can be obtained myopically. In other words, in order to ensure long-term optimality of the ‘hire-up-to’ policy, it is enough to observe the number ofagents leaving at time t−1 and hire the same number at time t without consideringplanning periods t+ 1, t+ 2, ..., T . (The number of required agents as dictated bylow-level planning remains constant over the planning periods; thus recruits onlyfill in for turnover-induced gaps.)

124

Page 136: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Figure 4.12: Absenteeism rate - Interval Effect

4.3 Full Model

In the Full Model, we remove Assumption 1 of the Base-Case Model, which statesthat no learning exists in our Call Center and there is only one skill of agents.Specifically, we remove this assumption according to the reality in our Test-CaseCall Center, by adding three skill-levels (for the description of skill levels, see§3.3.2).

In the Full Model, we assume that all agents progress through the three skill-levels in an uncontrolled manner. We also assume that learning through these skill-levels is deterministic and stationary; thus, the proportion of agents who learn outof those who do not turn over is known in advance and does not change over time.

Assumption 2 of the Base-Case Model is preserved; specifically, we assumethat the turnover rates from each skill-level are deterministic and stationary. Sincewe do not have enough supporting data to estimate the turnover rate for each skill-level separately, we divide the total turnover rate between the three skill-levels,based on the relative size of each skill-level out of the entire employment level.

Table 4.1 presents an example for such a division of the turnover rate. Thetotal turnover rate for skilled agents and dropout rate for trainees are estimated to

125

Page 137: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Level Total Workforce Relative Workforce Turnover RateLevel1 215 76.51% 3.96%

Level2 47 16.73% 0.84%

Level3 19 6.76% 0.47%

All Levels 281 100% 5.27%

Trainees 7.45%

Table 4.1: Full Model: Estimating Turnover Rates for Three Skill-Levels of Agents

be 5.27% and 7.45% respectively (see §4.2.1 for the relevant discussion on esti-mating these parameters). The turnover rate for each skill-level is the proportionof workforce employed at that level, out of the entire workforce, multiplied by thetotal turnover rate.

We now move to a discussion on the validity of the assumption of stationaryand deterministic learning rates for our Test-Case Call Center. We also provide anestimate for the learning rates that are used in our Full Model. We then proceed toa discussion on an extension of our half-hour staffing model, StaffingModel1, sothat multiple skill-levels will be staffed at each half-hour interval.

4.3.1 Uncontrolled Learning: Validation and Estimation

We first seek to validate the assumption of stationary and deterministic learningrates. In our Call Center there are three skill-levels: Level1, Level2 and Level3.Agents who complete the basic course attain Level1. Then, each month, the pro-portion of l1 agents out of all agents that are currently at Level1 (and who did notturn over that month), learn up to Level2. A similar behavior is assumed for Level2agents: a proportion of l2 agents out of those at Level2 that did not turn over, maylearn up to Level3. Agents that learn up to Level3 cannot progress any further.(For the definition of learning rates in the Full Model, see §3.2. For information onskill-level acquisition in the Test-Case Call Center, see §3.3.2.)

Figure 4.13 presents the learning rates l1 and l2, for the year 2010. We ob-serve that learning occurs in ‘peaks’: high learning rates during several monthsand no learning at all for other months. Thus, stationary and deterministic learn-ing rates are hardly plausible for the Test-Case Call Center. This observation goeshand-in-hand with the reality in the Test-Case Call Center: learning is a well con-trolled process, with agents progressing through skills only when staffing-gaps athigher skill-levels are forecasted. Shifting from an uncontrolled learning processto a controlled promotion process is modeled in the Control by Promotion Model,introduced in §3.4 above.

We use the average learning rates to estimate l1 and l2:

l1 = 0.015 (4.7)

l2 = 0.011. (4.8)

126

Page 138: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

3.6%

6.4%

3.1%

0.7%

4.2%

0.7%

6.6%

4.6%

0.7% 0.7%

0.0%

1.0%

2.0%

3.0%

4.0%

5.0%

6.0%

7.0%

8.0%

9.0%

10.0%

L1

L2

Figure 4.13: Learning Rates - January 2010 to November 2010

4.3.2 Staffing Three Levels of Agents

While performing low-level workforce planning, it is essential to provide estimatesfor half-hour staffing. Our staffing model, StaffingModel1, which was introducedin §4.2.2, receives as input the number of calls forecasted for a certain half-hourinterval, and the target service levels that are to be attained by staffing these half-hour intervals. The model returns as output the number of agents online, to bestaffed during that half-hour interval. StaffingModel1 assumes that there is onlyone skill of agents in the Call Center.

Our goal in this section is to come up with a staffing model that will account fordifferent skill-levels, when staffing agents online. We achieve this goal by fittingthree non-linear splines, with each spline serving as a staffing function to our threeskill-levels. Similarly to StaffingModel1, these splines are fitted only for empiricalobservations of half-hour intervals that correspond to the required service levels(see §4.2.2 for a discussion on target service levels).

The new model, StaffingModel2, receives as input the number of calls fore-casted for a certain half-hour interval and the target service levels. The model re-turns as output the number of agents online for each skill-level (Level1, Level2and Level3). StaffingModel2 is defined by three staffing functions (non-linearspline). Formally, we denote by zs,i, the number of level-i agents online, requiredto ‘adequately’ meet half-hour demand Ds

t :

zs,i = fi(Dst ) + εs,i, (4.9)

withDst being the total number of calls per time interval s and i being the skill-level

(i = 1, 2, 3).

127

Page 139: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Figures 4.14, 4.15, 4.16 describe the staffing functions (non-linear splines) fit-ted for skill-levels Level1, Level2 and Level3 respectively. The horizontal axiscorresponds to the arriving volume of calls during a half-hour interval, while thevertical axis corresponds to the number of agents to be stationed online, duringthat half-hour interval. The blue dots represent empirical staffing, while the redline represents the fitted spline. Note that the splines are fitted only to half-hourswith ‘adequate’ staffing, where target service levels were attained.

We observe that, for Level1 agents, the fitted staffing function has a similarform to the all-agents staffing function presented in Figure 4.4. For Level2 andLevel3 agents, the staffing functions reach a concave form very quickly, as thedemand for service increases. This ‘concavity’ of Level2 and Level3 staffing func-tions may have two plausible explanations.

The first explanation states that the ‘concavity’ occurs because only a smallnumber of calls require these skill-levels. So, when the demand for service in-creases, the number of calls that reach Level2 and Level3 agents, at each half-hourinterval, is relatively small. Hence, more calls into the Call Center does not meanmore staffing for Level2 and Level3 agents. The second explanation to the ‘con-cavity’ of the staffing functions can be patient customers. As we mentioned in§3.3.2, Level2 and Level3 agents serve unique customer-types. These customer-types tend to be more patient than General Banking customers (regular customers).The abandonment rates for these unique customers will be relatively low, as theload increases, without increasing staffing levels significantly.

After obtaining the required number of agents online, for each half-hour inter-val, we add more staffing to account for on-the-job absenteeism. We assume thatthe half-hour absenteeism rate does depend on the agent’s skill-level and thus weuse the estimate for the half-hour absenteeism rate as presented in §4.2.3.

128

Page 140: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Figure 4.14: Result of fitting StaffingModel2 for i = 1 to SEEData, year 2010

129

Page 141: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Figure 4.15: Result of fitting StaffingModel2 for i = 2 to SEEData, year 2010

130

Page 142: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Figure 4.16: Result of fitting StaffingModel2 for i = 3 to SEEData, year 2010

131

Page 143: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

4.4 Validating Erlang-A via Empirical Staffing Models

We now compare our staffing results from using an empirical model, Staffing-Model1 (§4.2.2) to Erlang-A staffing, given the same half-hour demand. Erlang-Ais a queuing model that is commonly used to support staffing in service systemswith impatient customers (Mandelbaum and Zeltyn (2007)). Our experiment isconducted for one of the weeks that we consider in our workforce planning models(§3.4).

The Erlang-A model is based on a set of assumptions and parameter values,which enables to transform demand for service into staffing recommendations.Specifically, service times and customer patience are to be estimated for eachstaffing interval. Assumptions of exponential distributions for i.i.d. inter-arrivaltimes, i.i.d. service times and i.i.d. patience are required across customers and,finally, independence among all these stochastic building blocks is assumed.

Figure 4.17 shows a staffing comparison for a single week of our planning pe-riod (weekdays only). Erlang-A staffing was calculated using the ‘4CallCenters’software http://ie.technion.ac.il/serveng/4CallCenters/Downloads.htm, with target abandonment rates of 5%−15% (thus aligning Erlang-A with ourStaffingModel1, in terms of target service levels). The same demand-estimationtechnique was used for both Erlang-A and for StaffingModel1 (4.5).

0

10

20

30

40

50

60

70

1 5 9

13

17

21

25

29

33

37

41

45

49

53

57

61

65

69

73

77

81

85

89

93

97

10

1

10

5

10

9

11

3

11

7

12

1

12

5

12

9

13

3

13

7

14

1

14

5

14

9

15

3

15

7

16

1

16

5

16

9

Erlang A - 5%

Spline

Erlang A - 15%

Figure 4.17: Comparison of staffing, based on Model (4.1) and Erlang-A - A singleweek in January 2011

The red line corresponds to staffing resulting from StaffingModel1 (4.1). The

132

Page 144: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

blue line corresponds to staffing resulting from applying Erlang-A, with a 5% aban-donment rate target. The green line corresponds to the staffing resulting fromapplying Erlang-A with a 15% target abandonment rate. We observe that, forthe heavily-loaded intervals, our model ‘falls’ between the two Erlang-A mod-els (closer to the 5%-model). During the ‘weak’ hours our model produces higherstaffing results than the 5%-model.

We consider this correspondence between the StaffingModel1 results and theErlang-A results a sign of validity, both for Erlang-A and for our StaffingModel1. Itvalidates our StaffingModel1, since, in previous research, it was shown that Erlang-A performs relatively well, even when most of its assumptions are not valid (Jouiniet al. (2012)). Thus, our StaffingModel1 performs as well as Erlang-A, it is valid.

On the other hand, the ‘black-box’ empirical staffing model, StaffingModel1,was fitted to staff half-hour intervals based on ‘adequate staffing time intervals, inwhich target service levels were attained. Thus, with most Erlang-A assumptionsbeing not valid in reality, it performs as well as an empirical staffing model thatencompasses the entire reality of the Call Center.

A significant advantage of our empirical models (i.e. StaffingModel2), overErlang-A, is that they are able to cope with a reality of more than a single skill-levelof agents. Since Erlang-A assumes that there is a single skill-level for all agents, itrequires some extensions to fit skill-based Call Centers (Jouini et al. (2012)). Theadvantage of the Erlang-A model over empirical staffing models, on the other hand,is that Erlang-A is robust and performs well even though most of its assumptionsfail, while empirical models require frequent data-driven updates.

133

Page 145: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

4.5 Estimating Turnover Rate: A Survival Analysis Ap-proach

In this section, we provide a different perspective on turnover rates, in comparisonto the approach presented in §4.2.1. A key assumption of this perspective is thatturnover rates of employees heavily depend on their length-of-service (Bartholomewet al. (1991), Chapter 2). From interviews that we conducted with Call Center’smanagement we conclude that this assumption prevails in our Test-Case Call Cen-ter as well.

We define the turnover risk at time t as the probability that an individual agentleaves the Call Center at that time period. We assume that agents are homogenousand share a common distribution of turnover risk. For analyzing this turnover risk,we define length-of-service at planning period (t = 1, ..., T ) as the time elapsedbetween basic course completion and time period t (in planning-period units). Forinstance, an agent that was hired 7 months ago and finished the basic course 6months ago will have a length-of-service of 6 months.

We denote by h(·) the turnover risk of an agent, as a function of length-of-service:

h(t) = p(T = t|T > t− 1), (4.10)

with T being a random variable denoting the length-of-service until an agent turnsover, and t being a realization of T . The function h(·) is in fact a discrete-timehazard-rate or failure-rate for an agent, as defined in Kleinbaum and Klein (1994).

We can now formulate the following question: What is the probability that anagent, presently with length-of-service t − 1, will leave at time t? Estimating thefunction h(·) empirically may provide the answer to that question. In order to doso, we apply a standard survival analysis technique (with right censoring) in orderto estimate h(·) empirically. Our data has right-censored observations, since someof the considered agents are still employed.

Figure 4.18 presents the empirical h(t), t = 1, ..., 63 months (blue line) anda smooth function of h(t), t ≥ 0 (‘Heft’ smoothing technique applied). We ob-serve an increase in the turnover rate towards six months of service. This ‘peak’corresponds to findings presented in Bartholomew et al. (1991), indicating that therisk for turnover tends to escalate during the first employment months and laterdeclines. The increase in the turnover rate near 36 months of service occurs dueto tenure regulation in our Call Center. Those who do not receive tenure after 36months must leave (are fired).

An estimate for the turnover risk as a function of the length of service is nowobtainable, for example by using the empirical distribution presented in Figure4.18. After such estimates are derived, it is possible to ‘plug’ them into work-force planning models that consider length-of-service distributions (for example,see §4.5 in Bartholomew et al. (1991)).

134

Page 146: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

0.0000

0.0050

0.0100

0.0150

0.0200

0.0250

0.0300

0.0350

0.0400

1 6 11 16 21 26 31 36 41 46 51 56 61

Hazard Function

CLS

hazard rate Heft 1

Figure 4.18: Turnover Risk - Empirical Function and Smooth Heft

135

Page 147: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Chapter 5

Summary and Conclusions

136

Page 148: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

In this section, we discuss the insights that we gained into workforce plan-ning during our research. While the conclusions use the Test-Case Call Center asa guiding example, one can think of general skills-based Call Centers and othercomplex service systems, such as hospitals, airlines, etc. We then list our researchlimitations and provide directions for future research.

5.1 Discussion and Conclusions

We developed a methodology for performing multi-level workforce planning inskills-based Call Centers. Specifically, our models account for top-level planningaspects (workforce flow: recruitment, promotions, learning, turnover,...), as well aslow-level planning aspects (operations: service levels, demand for service, learningcurves,...). The methodology was validated against a real Test-Case Call Center,by using a database from the data repository of the SEELab.

Our methodology is based on a theoretical framework that provides three work-force planning models. We now provide conclusions on the application of thesemodels to a real Call Center. The direct result of this comparison is an approach toworkforce planning in Call Centers and other complex service systems.

The first model, the Base-Case Model, is simple and assumes that a single skill-level of employees exists. Model simplicity provides fast insights into importanttrends. This is an important stage, prior to performing a more costly (in terms oftime and data required) ‘drill-down’ that leads to the more complex models. Forexample, we used the Base-Case Model to show that a top-down planning approachis inappropriate for call centers.

The second model, the Full Model, accounts for the fact that there are differentskill-levels, which is a called for assumption in most service systems. It assumesthat learning between these skill-levels is an uncontrolled process, thus presentingdifficulties in attaining desired workforce levels over short time-periods. The thirdmodel, the Controlled Promotions Model, turns the progress between skill-levelsinto a controlled process (from learning to promotions). This addition of controlenables a more accurate workforce flow, given workforce requirements. We alsocompared our results to real workforce planning in the Test-Case Call Center. Thiscomparison validated our models and provided useful insights on differences be-tween our scientific approach and reality, when performing workforce planning.

The methodology that evolves from the above discussion is as follows. First,apply the Base-Case Model and gather preliminary insights into the service system.Then apply more complex models and use the ones that are most fitting to thereality of the service system at hand.

While applying our workforce planning models, we used statistical techniquesto validate model assumption and estimated parameters. An important insight thatwe gathered during this statistical process was that the workforce planning modelsand, specifically, the validation and estimation of their parameters, is to be made ina rolling horizon fashion.

137

Page 149: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

The planning horizon, when considering a specific application of our method-ology, is to be selected long-enough to account for the slow time processes suchas recruitment, learning and turnover. On the other hand, these planning horizonsare to be short-enough, so that changes in fast-changing parameters, such as thedemand for service and the ‘adequate’ low-level staffing, may be captured.

Our last conclusion is concerned with the role of data-driven visualization ofservice processes in workforce planning. For this purpose, we introduced servicenetworks, with each service network being a graphical realization of the serviceprocess. Service networks reveal insights into routing of calls to agents and thescheduling of agents to calls. A possible application of such networks, in workforceplanning, can be in estimating on-the-job absenteeism. Server networks, which arespecial cases of service networks, can be applied to describe the utilization profileof an agent or a group of agents. Such utilization profiles can be used as a basisto the modeling and the estimation of on-the-job absenteeism, which is a centralparameter in the context of low-level workforce planning.

5.2 Research Limitations

Although our research has reached its goals, it does have limitations. We now listsome limitations and propose possible future directions to overcome them. We goover these limitations in their order of appearance in our research.

Limitation 1. Workforce Planning Models - Recruitment. Our workforce plan-ning models ‘suffer’ from several problematic assumptions. The Full Modelassumes that there is an infinite recruitment potential from within the orga-nization. The Controlled Promotions Model assumes that there are alwaysenough agents that are candidates for promotions. All our models assumethat there is an infinite potential, when new agents are recruited.

Overcoming Limitation 1. We can overcome this limitation by setting a con-straint on the number of agents that can be recruited from within the bank orpromoted from one skill-level to the other. We can also impose a limit on thebasic course size and plan the optimal control given the above constraints.

Limitation 2. Workforce Planning Models - Learning and Turnover. Our work-force planning models assume that turnover and learning are stationary anddeterministic. This is a clear limitation, since the statistical validation thatwe conducted show that this is not always the case. Learning is a highlyvarying process and turnover is only piecewise stationary.

Overcoming Limitation 2. We can overcome this limitation by removing the as-sumption on stationary and deterministic turnover and learning. For theBase-Case Model, we will then be unable to state a unique ‘hire-up-to’thresholds, since they would be depend on the distributions of turnover andlearning. For the Base-Case Model and the original Full Model (without

138

Page 150: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

the extension on recruitment), the result of Theorem 1 from Gans and Zhou(2002) would still hold: an optimal policy for models that consider stochasticand non-stationary turnover and learning rates would still be of the ‘hire-up-to’ type. Explicit calculations of these policies would be more difficult, sincewe would not be able to formulate an equivalent deterministic Linear Pro-gramming Problem. Thus, we would have to obtain an optimal control viadynamic programming, approximate dynamic programming or simulation-based techniques.

Limitation 3. Workforce Planning Models - Staffing in Low-Level Planning.The low-level planning in our multi-level models assumes that the ‘ade-quate’ low-level interval staffing is deterministic. Even though this half-hourstaffing is estimated via statistical techniques, the final result is consideredas a constant parameter to the problem.

Overcoming Limitation 3. We can overcome this limitation by adding random-ness to the low-level planning problem, in the spirit of Gurvich et al. (2010).

Limitation 4. Workforce Planning Models - Flexibility in Low-Level Plan-ning. In the low-level workforce planning that we propose there is an as-sumption that all shift-types are constant and calls can be taken only insidethe Call Center (no outsourcing).

Overcoming Limitation 4. We can overcome this limitation by adding overtimeand outsourcing to the operating cost functions.

Limitation 5. Statistical Workforce Planning - The Statistical Analysis. Thestatistical techniques that we applied in Chapter 4 are simple and are mainlybased on averages. For example, we estimated turnover and learning ratesvia simple averages over previous corresponding time-periods.

Overcoming Limitation 5. We can overcome this limitation by enhancing the sta-tistical analysis, for example, by applying advanced data-mining techniquesto our data.

Limitation 6. Statistical Workforce Planning - The Use of Empirical Models.We model half-hour staffing, demand for service and on-the-job absenteeismby supervised learning from a real data-set. The models we use are GeneralAdditive Models (GAM). These models are used in a ‘black-box’ fashion,i.e. they are provided with a training-set, a model is learned (often the modelis a complex set of functions, completely untraceable) and later validatedagainst a test-set. In this type of modeling, we are not concerned with the un-derlying ‘physics’ of the processes that drive the workforce planning process(for example: the demand for service and the resulting half-hour staffing).Thus, every time these underlying processes change (e.g. a change in rout-ing protocols, a change in customer patience and so on), one must provide anew training-set that is often takes time and is very expensive to gather.

139

Page 151: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Overcoming Limitation 6. We can overcome this limitation by using models thatare more robust and do not depend on specific data sets. For example, inorder to ‘adequately’ staff a multi-skilled call center, we may wish to extendthe prevalent Erlang-A Model, so that it will account for these multiple skill-levels.

5.3 Future Work

We conclude the thesis with future research directions that have not been covered inthis thesis, and that we believe are worthwhile pursuing. We would start by provingthat the optimal policy for our Controlled Promotions Model is of the ‘hire-and-promote-up-to’ type. Then we would proceed to relax deterministic and stationaryassumptions, both for the top-level and low-level planning models. For top-levelplanning, we would assume that turnover rates and learning rates are stochastic.Then we would use simulation-based techniques to find sets of optimal controlsfor the MDP. For low-level planning, we would follow Gurvich et al. (2010) andattempt to solve a stochastic shift-scheduling problem. Another possibility for low-level planning is to use a simulation-based stochastic approximation algorithm, inthe spirit of Feldman (2010).

We would also perform a sensitivity analysis to the various costs that we con-sidered in our workforce planning models and how the variations in these costswould influence our numerical results. For example, in the Full Model we as-sumed that the process of inner recruitment costless. In reality, various elements,such as the need to recruit someone instead of the employee to fill his space, canincur cost.

Recently, in our Test-Case Call Center, there was a dramatic change of the op-erational regime. The new operational regime has changed the previously appliedthree skill-levels, influenced protocols of routing calls to agents and updated proto-cols of scheduling agents to tasks. As a future work, we would test our multi-levelmodels on this new operational regime, both in the sense of robustness and in thesense of updating our models to account for the new operational regime.

Interesting future work can be performed on the topic of estimating turnoverrates. We analyzed the career path database and discovered that recruits who getpromoted (become managers) or receive tenure after 36 months of service, havea different turnover risk function than those who do not get promoted or do notobtain tenure. This can be viewed as an indicator of employee quality. Inside in-formation on the quality of employees, which is available in every organization,can thus be useful when performing the required survival analysis for the estima-tion of turnover risks.

Another future work could be an attempt of applying our proposed multi-levelworkforce planning method to other service systems. Such a service system couldbe a large Israeli hospital, for which real data exists at the SEELab data repository.Then we would compare workforce planning in a real Call Center to workforce

140

Page 152: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

planning in a hospital and try to gather insights into the differences and similaritiesof the two systems.

Lastly, a major future research direction would be to explore and formalizeservice networks. We are working on defining various service-network types, witheach type being important for analyzing a different aspect of the service process.We then intend to relate this work on service networks to the field of Process Min-ing. Our ultimate goal for this research direction is to produce data-driven modelsand simulations of the service processes. Achieving this goal, in turn, would en-able the application of operations research techniques, based strictly on data andideally with little inside information.

141

Page 153: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Appendix A

SEEData: Test-Case Call Center

A.1 SEE and SEEData

A.1.1 SEE

The material for the current section was taken from http://ie.technion.ac.il/Labs/Serveng/files/SEE_Report_2010.pdf. Service Enter-prise Engineering (SEE) is an emerging scientific field that is gaining importanceand recognition in both academia and practice. The Center for Service EnterpriseEngineering (SEE) was established in February 2007, within the Faculty of Indus-trial Engineering and Management at the Technion.

The goal of SEE has been the support of research and teaching in the area ofService Systems. Specifically, SEE has been contributing to the development ofengineering and scientific principles that support modeling, design and manage-ment of Service Enterprises, for example financial services (banking, insurance),health services (hospitals, clinics), government and telecommunication-services(telephone, internet).

SEE’s main activity has been through the SEE Laboratory (SEELab), specif-ically creating, designing, maintaining and analyzing an accessible repository ofresources and data. The original data-sources were telephone call-centers, but thescope has been now expanded to cover also hospitals, and first steps have beentaken to cover other services such as internet, emergency and fast-food services.

A.1.2 SEEData

Service center data is stored mainly in relational databases or in other formats, forexample, in click stream files for Internet sites. The raw structure of these databasesvaries among service centers, depending mainly on the commercial software usedby the center. A prerequisite for creating a data repository of service operationswas the design of a uniform representation of data, which accommodates a widevariety of services. We refer to this uniformly-represented data as SEEData.

142

Page 154: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

The main challenge for the creation of SEEData is the huge volume of dataand often its low quality. For example, the SEEData of our Test-Case Call Centerhas the size of around 50 GB. Even the most powerful SQL-servers are too slowto extract data from a database of such a size, not to mention if a time-series for along period of time is needed within a few seconds.

The objective was to create a system that could work on a PC, which is tobe used by researchers and students outside SEE, and provide real-time access todata: real-time in the sense of maximal delays of a few seconds. To achieve thisobjective, the concept of a database partition was developed and implemented.

Call Center databases are organized as a system of daily databases. This allowsthe splitting of huge files into relatively small databases, of up to around 100 MBeach. The information for each call is stored in the database according to the day inwhich it was initiated. Days are almost separable. Indeed, the duration of the callis less than one day, and there are typically only a few calls that start before andend after midnight. These have been processed for the next day by creating smalltables in the database for the next day.

Note that for health care databases, a patient’s hospitalization could last weeksand even months. Information for the entire visit is located in the database for themonth in which the visit was initiated, but it is also needed for all days until thevisit ends. To solve this problem, the health care databases have been structuredon a monthly basis. If the visit started before a given month, additional tablesare added to subsequent monthly databases, providing information relevant to thatmonth. This modification affected only the process of extracting daily data frommonthly databases. The successful integration of health care data into SEEDatademonstrates that SEE system design is general and flexible. It can accommodatevarious types of service data and, thus, could become a standard tool for ServiceScience and Engineering research and application.

The SEEData repository consists of studies. Despite the splitting of the databaseinto dozens and hundreds of daily or monthly tables, the system works as an in-tegrated database, using structures created at the study level, such as a study cal-endar, dictionaries and database table descriptions. SEE now hosts four large callcenter studies: a large call center of a U.S. bank, which provided 2.5 years worthof transaction-level data (around 218 million calls), an Israeli Telecom Companywith over 3 years worth of data (175 million calls), and a large Israeli Bank withover 1 year data (26 million calls).

In 2009, a new study was initiated at the call-center of a medium-sized Israelibank. In this study, the data-transfer process is unique in that operational datais fed into the SEELab on a daily basis. In other words, every night, after thebank archives its call-center daily data, that data is deposited in a ‘safe’ at theSEELab, and then automatically incorporated (after cleaning and validation) intothe corresponding SEE study.

The plan, in the not-too-distant future, is to expand the flow of operational datato also cover financial data. Needless to say, this planned combination of opera-tional and financial data, which has never yet been achieved, promises numerous

143

Page 155: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

opportunities for research (empirical, theoretical) and applications. It will alsopave the way for analogous data-gathering efforts in hospitals, which will combineoperational and clinical data. This study was selected as a Test-Case for the presentthesis and its workforce planning models, as applied in §3.4.

A.2 SEEData: Test-Case Call Center

In this section, we describe two transaction logs from one Test-Case Call CenterSEEData. The first log is the calls log, where all call-related activities of cus-tomers who were seeking a human agent are recorded. This log corresponds tothe customer’s perspective of the service process and it is used to create customernetworks (see §2.4). We use the calls log in statistical analysis, for example whenestimating service times, forecasting arrival rates and so on.

The second log that we introduce is the agents log, where all agent-relatedactivities are recorded. This log corresponds to the agent’s perspective and to servernetworks (see §2.5). The agents log enables statistical analysis for various agent-related elements, such as estimating on-the-job absenteeism rate, learning curves,modeling staffing functions and so on.

For each one of the two logs, we provide a description of its fields and possiblevalues that these fields may take (dictionaries). Note that when we describe SEE-Data transaction logs (calls or agents), we refer to the clean uniformly-designeddatabases and not to raw transaction logs.

A.2.1 Calls Log

The calls log includes customer-initiated calls that attempted to reach a humanagent (served or abandoned). Each record of the log corresponds to a phase that thecall visited, for example: VRU, queue, service, etc. Table A.1 describes relevantlog-fields. For some fields, it is possible to view a link to their possible values,their dictionary, which appear below in Appendix A.2.3.

A.2.2 Agents Log

The agents log includes all agent activities performed during their shift. Eachrecord corresponds to a single agent activity. Some examples of such agent activ-ities are: answering an incoming call, making a sales call, taking a break, talkingto another agent and so on. Table A.2 describes the log’s fields. For some fields,it is possible to view a link to their possible values, their dictionary, which appearbelow in Appendix A.2.3.

A.2.3 Dictionaries

These are the dictionaries (values that each of the fields may take) for the Test-CaseCall Center SEEData. For each dictionary, we provide an example for values that

144

Page 156: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Field Field Descriptioncall id A universal identifier associated with the entire callcustomerID The ID number of the calling customer (usually, bank account number)cust subcall Sequence number of the phase for the current callerservice Customer-type or queue-type (dictionary: A.1 )segment start Subcall start-timesegment end Subcall end-timesegment type The type of current phase (dictionary: A.2)outcome Cause of call termination (dictionary: A.3)duration Overall time customer spent in the current segmentparty answered A unique ID of the agent that answered the callcall type Type of the transaction (dictionary: A.4)V IP Boolean index identifying VIP customers (2 - VIP, 1 - Regular)

Table A.1: Test-Case Call Center SEEdata - Calls Log - Field Description

Field Field Descriptionagent Agent extension number - a unique IDlevel Agent’s current skill-level (possible values: Level1, Level2, Level3)event start Agent event start-timeevent end Agent event end-timeevent id A unique ID that identifies the event (dictionaries: A.5 and A.6)state Agent’s current state (dictionary: A.7)service Customer type handled if it is a call-related activity (dictionary: A.1)duration Amount of time spent on the current activitycall type Type of transaction (dictionary: A.4)

Table A.2: Test-Case Call Center SEEdata - Agents Log - Field Description

the field can take.Figure A.1 presents the dictionary for the ‘service’ field. (in both logs). For

example, the service ‘Sales’ refers to calls (mostly outgoing) that had to do withsales-related operations. Figure A.2 presents the dictionary for the ‘segment type’field for the calls log. Two examples of values for segment types are ‘IVR’ and‘Queue’. The ‘IVR’ value refers to calls that were at the ‘IVR’ during the recordedperiod of time. The value ‘Queue’ may correspond to various queue-types andsimply indicates that a call spent some time waiting in queue.

Figure A.3 presents the dictionary of the ‘outcome’ field for the calls log. Forexample, the outcome ‘Abandonment’ refers to calls that abandoned the queue.Figure A.4 presents the dictionary of the ‘call type’ field for both logs. For exam-ple, the call type ‘Agent’s Dialer’ stands for calls that were made by a predictivedialer (Samuelson (1999)).

Figures A.5 and A.6 presents the dictionary of the ‘event id’ field for the

145

Page 157: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

agents log. For example, the event ‘Log In’ refers to an agent that logged intothe system. Figure A.7 presents the dictionary of the ‘state’ field for the agentslog. For example, the state ‘Logged-In’ refers to agents who performed an event‘Log In’ and moved to the state ‘logged in’.

Services

Code Name

1 General Campaigns

2 Current Operation

3 Securities

4 Support

5 Sales

6 Pensionary

7 Investments Center

8 Insurance Tfahot

9 Branches Help

10 Sales Center

12 Shifting

13 Managers Account

16 Virtual Branches

18 Consultants

Figure A.1: Dictionary – Service

146

Page 158: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Segment type

Code Name

1 IVR

2 Queue

3 Service

4 Goodbye

Figure A.2: Dictionary – Segment Type

147

Page 159: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Outcome

Code Name

1 Caller Termination

2 Agent Termination

3 Undetermined Termination

4 Termination Error

11 Abandoned Short

12 Abandoned

14 Unhandled Error

15 Reschedule

16 Call Proxy Left

17 User Cancelled

21 Outgoing Transfer

22 Agent Transfer

23 Transfer to Agent

30 Failure in Service

40 Missing Record

50 Completed in the Goodbye

60 Completed in the IVR

70 Private call

80 Message Left

Figure A.3: Dictionary – Outcome

148

Page 160: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Call type

Code Name

1 Make Callback

2 None

3 Inbound Call

4 Inbound Private

5 Make Call

6 Back Queue

7 Consult

8 Make Call Proxy

9 Agent's Dialer

10 Outbound Private

Figure A.4: Dictionary – Call Type

149

Page 161: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Event id

Code Name

1 Campaign

2 Entrance to IVR app.

3 Exit IVR app.

4 Entrance to GoodBye app.

5 Entrance to Callback app.

6 Exit Callback app.

7 Exit Goodbye app.

8 Changed Campaign

9 Entrance to Queue app.

10 QFilter

11 Exit Queue app.

12 EnIVRInQ

13 ExIVRInQ

14 EnACDTrans

15 ExACDTrans

16 IVRStep

17 Entrance to Call Proxy app.

18 Exit Call Proxy app.

19 Entrance to IVR in Goodbye

20 Exit from IVR in Goodbye

21 EnterBranch3

22 EnterBranch1

23 Make Call

24 Reschedule

25 Ready

26 Allocate For Call

27 Transfer Done

28 Inbound Call

29 Disconnected

30 Hold

31 Retrieve

32 Disconnect

33 End Handling

34 Off Hook

35 Paperwork

36 Abort Allocation

Figure A.5: Dictionary – Event ID (1)

150

Page 162: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Event id

Code Name

37 Dial

38 Held

39 Retrieved

40 Log Off

41 Completed

42 Consult

43 Break

44 Held Call Disconnected

45 No Answer

46 Join Conference

47 Other Party Disconnected

48 User Cancelled

49 Transfer

50 Error

51 Busy

52 Other Party Conferenced

53 Consult Failed

54 Make Agent Dialer

55 Transfer Failed

56 Log In

57 Logg Off

58 EnterBranch2

59 Save User GUI Data

60 None

61 Record

62 TransferGui

63 Internal Log Off

64 Internal Log Inn

65 Menu

66 Player

67 ConferenceFailed

68 Entarnce to LeaveAMessage

app.

69 Exit Leave Message app.

Figure A.6: Dictionary – Event ID (2)

151

Page 163: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Agent State

Code Name

1 Business Line

2 Ready

3 Paperwork

4 Idle

5 Non-Business

Line

6 Wrap Up

7 Short Break

8 Medium Break

9 Long Break

10 Logged In

11 Logged Off

Figure A.7: Dictionary – State

152

Page 164: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Appendix B

Theoretical Results

Our goal in this part is to show that it is equivalent to minimize two mathematicalprogramming problems: one is a Linear Programming Problem (LPP) and the otheris a Convex Programming Problem (CPP). We start by defining the building blocksof the two problems. We then define the two problems and lastly, present a theorem(Theorem 2) that shows that the two problems are equivalent.

The building blocks are defined as follows. Part of these building blocks willbe presented in Definition 2 and Definition 3, further on in this Appendix. Let x bea decision vector of size 1×N . Let z be a decision vector of size 1×F . Let b be avector of size 1× S and the matrix A be of size S × F . We denote the cost vectorthat corresponds to x as d and the cost vector that corresponds to z as c. Let r be avector of size 1×N . We use the notation e for the column vector of all-ones.

We define O(x, z∗(x)) to be a function of x with the following characteriza-tion:

O(x, z∗(x)) = minz≥0 c′z (B.1)

s.t. : [A 0e′ −r′

]·(zx

)≤(−b0

). (B.2)

We also define the function O(z∗) as the special case of O(x, z∗(x)) without thelast constraint, thus making z∗(x) = z∗, independent of x:

O(z∗) = minz≥0 c′z (B.3)

s.t. :

Az ≤ −b. (B.4)

Note that O(z∗) is an LPP, while O(x, z∗(x)) is a CPP (see Proposition 1 inGans and Zhou (2002) for the proof). Recall that for notational convenience, weabuse notation and refer to the optimization problem stated above via its objectivefunction, for example, O(z∗), instead of (B.3) and (B.4). This abuse of notationwill prevail throughout the current chapter. We are now ready to formulate our firstmathematical programming problem:

153

Page 165: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Definition 2: LPP.

minx≥0 θ(x) = d′x+O(z∗) (B.5)

s.t. : (e′,−r′

)·(z∗

x

)≤ 0, (B.6)

which is a linear programming problem (LPP), since O(z∗) does not depend on x.The vector z∗ is the optimal solution to O(z∗). We assume throughout this partthat O(z∗) is a solvable LPP.

We now formulate the second mathematical problem:Definition 3: CPP.

minx≥0

φ(x) = d′x+ O(x, z∗(x)) = (B.7)

= minx≥0

d′x+ c′z∗(x) (B.8)

s.t. :[A 0e′ r′

]·(z∗(x)x

)≤(−b0

), (B.9)

which is a convex programming problem (CPP), since O(x, z∗(x)) is a CPP.We now provide three propositions that will serve us in the proof of Theorem

2.

Proposition 4. Let θ(x) be the objective function of the LPP and φ(x) be theobjective function of the CPP. For a decision vector x that is feasible for the LPPand feasible for the CPP: θ(x) = φ(x).

Proof of Proposition 4. Suppose that x is feasible for both the LPP and the CPP.Thus, we can write the objective function θ(x) as:

θ(x) = cz∗ + d′x. (B.10)

We can write φ(x) as follows:

φ(x) = d′x+ cz∗(x). (B.11)

What we need to prove is that if x is a feasible solution of the CPP then z∗(x) =z∗. We know that x is feasible for the CPP, thus x ≥ 0 and the last constraintin (B.9), which involves x, is satisfied. This turns O(x, z∗(x)) into O(z∗), thusmaking z∗(x) = z∗.

Q.E.D. Proposition 4.

Proposition 5. Any decision vector x that is feasible for the CPP is also feasiblefor the LPP.

154

Page 166: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Proof of Proposition 5. Suppose that a decision vector x is feasible for the CPP.This makes x nonnegative and x satisfies the following expression:

e′z∗(x)− r′x ≤ 0. (B.12)

In order for x to be feasible for the LPP it must satisfy the following expression:

e′z∗ − r′x ≤ 0. (B.13)

Since z∗ is the unconstrained solution of O(z∗), we know that e′z∗ ≤ e′z∗(x) forany x:

e′z∗ − r′x ≤ e′z∗(x)− r′x ≤ 0. (B.14)

.Q.E.D. Proposition 5.

Proposition 6. If the LPP is solvable and attains an optimal solution at x∗, thenthis solution is feasible for the CPP.

Proof of Proposition 6. Suppose that the LPP is solvable and attains an optimalsolution at x∗. We need to prove that x∗ is feasible for O(x, z∗(x)). Now we knowthat x∗ is optimal for the LPP, so the constraint (B.6) is satisfied :

e′z∗ − r′x∗ ≤ 0. (B.15)

Thus given the decision vector x∗ we may select z∗(x∗) = z∗ which will satisfy(B.9) in the CPP.

Q.E.D. Proposition 6.

We are now ready to achieve our goal and establish Theorem 2.

Theorem 2.We consider the LPP in Definition 2 and the CPP in Definition 3. If the LPP issolvable and attains an optimal solution at x∗ then x∗ is also an optimal solutionfor the CPP.

Proof of Theorem 2.Suppose that the LPP is solvable and its solution is given by x∗.

From Proposition 4 and Proposition 6 follows that x∗ is feasible for the LPPand the CPP, thus making θ(x∗) = φ(x∗).

Suppose that there exists x′ that is feasible for the CPP, such that φ(x′) <φ(x∗). Now we know from Proposition 5 that x′ is also feasible for the LPP. FromProposition 4, θ(x′) = φ(x′) < φ(x∗) = θ(x∗), which is a contradiction to theassumption that x∗ is an optimal solution of the LPP.

Q.E.D. Theorem 2.

155

Page 167: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Bibliography

Abernathy, W., Baloff, N., Hershey, J., and Wandel, S. (1973). A three-stage man-power planning and scheduling model-a service-sector example. OperationsResearch, 21(3):693:711. 7

Adler, P., Mandelbaum, A., Nguyen, V., and Schwerer, E. (1995). From projectto process management: An empirically-based framework for analyzing productdevelopment time. Management Science, 41:458:484. 14

Aldor-Noiman, S., Feigin, P., and Mandelbaum, A. (2009). Workload forecastingfor a call center: Methodology and a case study. The Annals of Applied Statistics,3(4):1403:1447. 124

Armony, M., Israelit, S., Mandelbaum, A., Marmor, Y., Tseytlin, Y., and Yom-Tov,G. (2011). Patient flow in hospitals: A data-based queueing-science perspective.Submitted to Stochastic Systems. 20

Bartholomew, D., Forbes, A., and S.I., M. (1991). Statistical Techniques in Man-power Planning. Wiley. 3, 4, 5, 8, 99, 134

Brockwell, D. and Davis, R. (1991). Time Series: Theory and Methods. Springer.113

Feldman, Z. (2010). Using simulation-based stochastic approximation to optimizestaffing of systems with skills-based-routing. Master’s thesis, Industrial Engi-neering and Management, The Technion. 140

Gans, N., Koole, G., and Mandelbaum, A. (2003). Telephone call centers: Tu-torial, review and research prospects. Manufacturing and Service OperationsManagement, 5(2):79:141. 8

Gans, N. and Zhou, Y.-P. (2002). Managing turnover and learning in employeestaffing. Operations Research, 50:991–1006. 8, 9, 10, 24, 66, 70, 73, 76, 91, 92,98, 99, 124, 139, 153

Gurvich, I., Luedtke, J., and Tolga, T. (2010). Staffing call centers with uncertaindemand forecasts: A chance-constrained optimization approach. ManagementScience, 56:1093:1115. 139, 140

156

Page 168: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

Hastie, T., Tibshirani, R., and Friedman, J. (2001). The Elements of StatisticalLearning: Data Mining, Inference and Prediction. Springer. 117, 120

Holt, C., Modigliani, F., Muth, J., and Simon, H. (1991). Time Series: Theory andMethods. Springer. 5

Jouini, O., Koole, G., and Roubos, A. (2012). Performance indicators for callcenters with impatience. To appear in IIE Transactions. 133

Kleinbaum, D. and Klein, M. (1994). Survival Analysis: A Self-Learning Text.Springer. 134

Mandelbaum, A., Sakov, A., and Zeltyn, S. (2000). Empirical analysis of a callcenter. Technical report, Technion. 8

Mandelbaum, A. and Zeltyn, S. (2007). Advances in Services Innovations, chap-ter 1, page 17:45. springer. 132

Pinedo, M. (2009). Planning and Scheduling in Manufacturing and Services.Springer, 2 edition. 6, 8

Puterman, M. (1994). Markov Decision Processes: Discrete Stochastic DynamicProgramming. Wiley. 82

Reich, M. (2012). The offered-load process: Modeling, inference and applications.Master’s thesis, Industrial Engineering and Management, The Technion. 120

Robbins, T. (2007). Managing Service Capacity Under Uncertainty. PhD thesis,College of Business, Graduate School Penn. State. 5

Samuelson, D. (1999). Predictive dialing for outbound telephone call centers. In-terfaces, 29:66–81. 43, 145

Sugiyama, K., Tagawa, S., and Toda, M. (1981). Methods for visual understandingof heirarchial system structures. Systems, Man and Cybernetics, IEEE Transac-tions on, 11:109–125. 31

Thompson, G. (1995). Improved implicit optimal modeling of the labor shiftscheduling problem. Management Science, 41:595:607. 78

Tukey, J. (1977). Exploratory Data Analysis. Addison Wesley. 20

van der Aalst, W. (2011). Process Mining: Discovery, Conformance and Enhance-ment of Business Processes. Springer. 13, 20, 32, 63

van der Aalst, W. and van Hee K.M. (2004). Workflow Management: Models,Methods and Systems. MIT Press. 63

157

Page 169: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

van der Aalst, W., Weijters, A., and Maruster, L. (2004). Workflow mining: Dis-covering process models from event logs. IEEE Transactions on Knowledge andData Engineering, 16:1128:1142. 63

Weske, M. (2007). Business Process Management: Concepts, Languages, Archi-tectures. Springer. 13

158

Page 170: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

שלבי -תכנון כח אדם רב

במוקדי שירות טלפוניים

אריק סנדרוביץ'

Page 171: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

שלבי -תכנון כח אדם רב

במוקדי שירות טלפוניים

חיבור על מחקר

לשם מילוי חלקי של הדרישות לקבלת התואר בסטטיסטיקהמגיסטר למדעים

אריק סנדרוביץ'

מכון טכנולוגי לישראל -הוגש לסנט הטכניון 2012חיפה אוקטובר ג"עתש חשון

Page 172: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

המחקר נעשה בהנחייתו של פרופ' אבישי מנדלבאום בפקולטה להנדסת תעשיה וניהול.

אני מודה לטכניון על התמיכה הנדיבה בהשתלמותי.

Page 173: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

i

תקציר

מתבצע תכנון כח האדם במערכות שירות גדולות כגון מוקדי שירות טלפוניים, בתי חולים, חברות תעופה וכו',

הגיוסים, הפיטורים והקידומים תחת ההנחה שסך כמות כמויות מתוכננים עלה תכנון ברמתבשתי רמות.

והיא נקבעת לכל דרגה תקן"האיוש" או "הכמות זו נקראת "יעד ידועה. "שואף"אליה הארגון העובדים

: רבעונים, חצאי טווח- ארוכים העל הינ לתכנוןאופקי התכנון המתאימים . בארגון (הנהלה, רצפת ייצור וכו')

חודשים. הסיבה בשבועות ונמדדות ב החלטות בתכנון העלתכנון עבורן מתקבלות הת שנים, שנים וכו'. תקופו

באופן איטי וניתנים להשפעה בכך שתהליכי תכנון העל משתנים "נעוצה"טווח - ארוך כך שתכנון העל הינול

איתור מאחר והם כוללים חודשיםמספר לארוך של עובד חדש לארגון עשוייםתהליכי גיוס יחסית. למשל,

.וקבלתם להכשרה פנימית בארגון םמועמדים, בחינת

"תקן"את ה "קובעים". ברמת תכנון זו למעשה התחתונה ת התכנוןרמה הינה ירמת התכנון השני

להתחשב באילוצים תפעוליים של הארגון (במידה עשויהרמת התכנון הנמוכה רמת תכנון העל. את המשמש

מחושב על פי תכולות עבודה מצטברות על פני תקופות התכנון של . עם זאת "תקן" יכול להיות וישנם כאלה)

בחינה מעמיקה של המתאר התפעולי תתבצע רופאים בחדר מיוןהלמשל, על מנת לקבוע את מספר תכנון העל.

הנהלת עבור. לעומת זאת, כאשר מבוצע תכנון כח אדם ואת המעורבות של הרופאים בתהליך של חדר המיון

עבור " ן"תקה. במקרים רבים של המנהל תכולות עבודהלרזולוציה של כלל לא תהיה ירידהבדרך חדר המיון,

. מנהל אחד על כל חמישה עובדים)למשל, ( כללי אצבע ארגוניים אמצעותההנהלה נקבע ב

המחקר שלנו עוסק בתכנון כח אדם במוקדי שירות טלפוניים. מוקדים כאלו ובמיוחד מוקדים מונחי

) מהווים דוגמאות מייצגות למערכות שירות מורכבות. במוקד שירות Skills-based call centersמיומנויות (

כך שהביקוש ,תכנון כזה הינו למעשה שיבוץ מוקדנים למשמרות טלפוני יש לבצע תכנון כח אדם ברמה היומית.

תכנון של רמת העלעבור תקופת שיבוץ)הכח אדם מפורט (או תכנון לשירות יקבל מענה "הולם" מצד המוקד.

ואותבמהלך אותה תקופה (של בארגון כמות כוללת של מוקדנים שיש להעסיקיקבע "יעד איוש" ל (חודש)

של מוקדנים במהלך קבל החלטות על גיוסים, שחרורים וקידומיםלטווח ו-יש לפנות לתכנון ארוך ,כעת .חודש)

ות טלפוני, אנו מתכוונים לרכישת מיומנויות קידומים במוקד שיר מזכיריםכאשר אנו (. אותה תקופת תכנון

תכנון ה(או העל ואת התכנון המפורט ברמת תכנוןהאנו קוראים לתכנון המשלב את )חדשות עבור מוקדנים.

שלבי.-תכנון כח אדם רב ,ברמה התחתונה)

מערכות בובפרט יםשירות טלפוני יבמוקד כי ,מבססים טענה זואף ו ,במחקר הנוכחי, אנו טוענים

לפתח אהעיקרית שלנו הי מטרת המחקרשלבי. - להיות תכנון רבבכלל, על תכנון כח האדם מורכבותשירות

שלבי עבור מוקדי שירות טלפוניים. -מתודולוגיה לביצוע תכנון כח אדם רב

וגישה ישלב- לתכנון כח אדם רב םייתאורטים מודלשימוש במשלבת מציעים אותה אנו המתודולוגיה

בודקים את תקפות ההנחות מול , אנו תאורטי כל מודלעבור .אמפירית המבוססת על שיטות סטטיסטיות

מפעילים את המודלים . לאחר מכן, אנולאותו מודל רלוונטייםהפרמטרים את אומדים נתונים היסטוריים ו

לקבלת תוצאות נומריות. התאורטיים עם האמדים שהתקבלו מהשלב האמפירי

של בנק תייאמהשיטות הסטטיסטיות שלנו מופעלות על מסד נתונים שהתקבל ממוקד שירות טלפוני

SEEשלנו). מסד נתונים זה מאוחסן במאגר הנתונים של מעבדת כמוקד הניסויישראלי (נתייחס למוקד הבנק

בודד. כלומר, המוקדן השל השיחה הבודדת ו זולוציה שלהמופעלת בטכניון. מסד הנתונים כולל נתונים בר

Page 174: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

ii

בעזרת מסד הנתונים ניתן לעקוב אחר השתלשלות שיחה בתוך המוקד ואף לבנות פרופיל תעסוקה של מוקדן

במהלך המשמרת בה הוא הופעל. לאחר קבלת התוצאות הנומריות אנו משווים בין שלושת המודלים ומסיקים

ניסוימורכבות, בדומה למוקד ה שלבי במערכות שירות- לביצוע תכנון כח אדם רב מועדפתהאת המתודולוגיה

שלנו.

. המסגרת התאורטית מניחה כי שלבי-לתכנון כח אדם רב מסגרת תאורטית קיימתאנו מסתמכים על

רוכש המוקדן את התמחויות אליהן מוקדנים יכולים להתקדם באופן סדרתי (תחילה mבמוקד השירות ישנן

וכו'). מוקדן חדש מגויס בהכרח לרמת ההתמחות הבסיסית שניהאת הראשונה, לאחר מכן הרמת התמחות

כל תקופת תכנון ישנה הסתברות חיובית כי מוקדן ל . כלומר,ביותר ומתקדם בין הרמות באופן הסתברותי

לושה מודלים אשר מתבססים על ששלנו הניסוי תאימים למוקד בהמשך, אנו מ "ילמד" את ההתמחות הבאה.

.מסגרת זו

שלשמעותי מ הינו פישוט, Base-Case Model - ה, במחקר תו אנו מציעיםאו המודל הראשון

התמחות יחידה במוקד וכל המוקדנים מגיעים אליה מניח כי ישנה מודל זה. שלנו הניסוי דמציאות במוקה

אחרי שסיימו קורס הכשרה בסיסי. המודל הינו מקרה פרטי מוגבל של המסגרת התאורטית הקיימת אותה

ף שלו, מהוות נקודת ייחוס לשני המודלים המתקדמים יותר.קמודל זה, על כל מגבלות התו תוצאות של בחרנו.

,אנו משתמשים במודל הראשון על מנת לוודא כי אכןלמשל, המודל הראשון מוכיח את עצמו במהלך המחקר.

.תכנון כח האדם ברמה התחתונה צריך להיעשות באופן מפורט ולא באופן מקובץ ,במוקד שירות טלפוני

ואין זה ב ברזולוציות של דקות ושעות בעת ביצוע תכנון ברמה התחתונה יש להתחש , אנו מראים כיכלומר

ירות במונחים של שבועות וחודשים.הביקוש לשסך מספיק לבחון את

(על פי המציאות הניסוי במוקדלמוקדנים ) מניח כי ישנן שלוש התמחויות Full Model( המודל השני

. עד כה הרחבה של המסגרת התאורטית הקיימת בה השתמשנו מכיל הניסוי שלנו). מודל זהת במוקד המופעל

ולא רק לרמה מתקדמותהוספת אפשרות לגיוס של מוקדנים לרמות התמחות נעשית על ידי זו חבהרה

יוס כזה להתמחויות מתקדמות נקרא "גיוס פנימי" הבסיסית כפי שמניחה המסגרת התאורטית הקיימת. ג

שאינם מוקדנים שלנו היא שישנו פוטנציאל גיוס כזה בתוך כל ארגון. כלומר, קיימים עובדים בארגון וההנחה

, מה שמוסיף ניסוי שלנו אכן קיימים עובדים כאלה. במוקד הכאלה אשר יכולים להפוך למוקדניםטלפוניים ו

יתית מאחר ו"גיוס פנימי" עם זאת ההנחה עשויה להיות בעי. בהקשר של מוקד הניסוי שלנו תוקף למודל השני

אינו תהליך שקל לבצעו ולא תמיד ישנם עובדים זמינים למהלך מסוג זה.

מסגרת התאורטית להרחבה נוספת מהווה) Controlled Promotions Model( שייהמודל השל

לומדים התמחויות לא כתהליך מוקדניםמניח כי מודל זה. בתחילת המחקר הקיימת עליה התבססנו

איוש" עבור התמחות ה י"יעד חוסר מול נוצרהסתברותי (תופעה טבעית) אלא כתהליך מבוקר. כלומר, רק אם

השלישי המודלמבין שלושת המודלים, . מוקדנים לטובת אותה התמחותמתקדמת כלשהי, המנהל יקדם

מכיוון שמירב ההנחות שלו תקפות במוקד ת, זאמתאר את המציאות במוקד הניסוי שלנו בצורה המיטבית

. שלנו הניסוי

, זאת על מנת לאמוד את וקדניםמשל פרופיל תעסוקתיצורך בביצוע ניתוח ה העלבמהלך המחקר

לבצע ניתוח תעסוקתי, ניתן להשתמש בשיטות קלאסיות של כדי ההיעדרויות של המוקדנים במהלך המשמרת.

Page 175: Multi-Level Workforce Planning in Call Centersie.technion.ac.il/serveng/References/Arik_Thesis_24_10.pdf · 2012-10-30 · Multi-Level Workforce Planning in Call Centers Research

iii

במחקר הנוכחי, ניתוח פרופיל ,תצפיתי וכו'. במקום זאת- ירה, ניתוח רבתעשיה כגון: מדידת זמנים ישהנדסת

).Service Networksהתעסוקה של מוקדן מבוצע בעזרת "רשתות שירות" (

באמצעות תרשימי ,מתארות את תהליך שירות הלקוחות בארגון מזוויות שונות שירות"רשתות "

ותרשת ןהינ )Call Networks( שיחות" ותאו "רשת )Customer Networks( לקוחות" ות. למשל, "רשתזרימה

.ביקרה שיחה במוקדהמצבים השונים בהם לאת כל תארותת על נתוני מוקד שירות טלפוני ומוהמבוססזרימה

תור וקבלת שירות.ב קולי, המתנהמסלול אופייני של שיחה במוקד יכול להיות: מענה

ות) או "רשתResource Networksמשאבים" (ה ות"רשת הינן שירות" ות"רשתל נוספתדוגמה

שירות ןנות לכלהתעסוקה פרופילרשתות אלו מאפשרות את בנייתו של ). Server Networksשרתים" (ה

רשתות אלו מאפשרות את אמידתה של ההיעדרות במהלך משמרת, אשר נמצאה . כלשהיבמהלך תקופה

.שלבי-הרב האדם כבעלת השפעה ניכרת על "יעדי איוש" בתהליך תכנון כח

מול כח האדם אל וים את תוצאות שלושת המודלים שהפעלנו על מוקד הניסוי, אנו משולבסוף

"פער חיובי" גדול יחסית בין כמות קייםבתחילת תקופת התכנון נוכחנו ללמוד כי. קדבמותי שהועסק יהאמ

בעלי תוקף. על פניו נראה כי המודלים שלנו אינם להעסיק, לגייס ולקדם המודלים שלנו ממליציםהאנשים ש

שהועסק כח האדם ות שלתכנסה החל, זמןכעבור כי נוכחנו לראות. עם זאת, הניסוי אל מול מציאות מוקד

תי במוקד קיבל יבין "יעדי האיוש" לבין כח האדם האמ הזמני הפערבפועל, במוקד ל"יעדי האיוש" שהצבנו.

כלומר, כל מוקדן שהועסק במוקד היה שווה ערך ליותר ממשרה מלאה אחת. .שעות נוספותמונחי מענה ב

משנה תוקף בעינינומהווה כח האדם על פי המודלים שלנו, התאמה זו בין כח האדם שהועסק בפועל לבין

לשיטתנו.