call center scheduling problem federal reserve bank united states treasury may 6, 2009 morgan brunz...

Post on 15-Jan-2016

215 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Call Center Scheduling ProblemFederal Reserve Bank

United States Treasury

May 6, 2009

Morgan Brunz Brittany McCluskey

Background of Problem Situation

• Every month the U.S. Treasury sends out 11 million checks for Social Security and other government payments

• Cost = $1 per check every month

• To eliminate cost –> Switch over to direct deposit

• Two methods of contacting the FED– Call Center - 70% Usage Rate– Website - 30% Usage Rate 70%

30%

Phone callWeb site

Background of Problem Situation

• Call center can receive between 9,000 to 1,000 calls per day• Call center has 23 permanent employees and hires between 100 to

5 temporary agents per day• FED must determine how many temporary employees should be

hired per day

• Call Center Hours– 7am - 7pm, Monday - Friday

• 4 Shifts – 7am, 8am, 9am, 10:15am– Lunch - 45 minutes – Two Breaks– 15 minutes

7:30

AM

10:3

0AM

1:30

PM

4:30

PM

7:30

PM0

100

200

300

400

500

High Vol-ume - 8521Low Volume - 1919

Two Model Approach

• 1. Waiting Line System– Arrival rate of calls per 15 minutes– Service rate per 15 minutes– Use number of agents needed for each 15-minute time interval

for second model

• 2. Integer Programming Model– Variables – Possible employee schedules– Equation – Each 15-minute period

• Number of Agents working >= Number of Agents needed

Integer Programming Model Example

7am 7:30 4:457:15 7:45 5:004:30

# agents ≥ # needed for

response time this interval

1st shift: on at 7, off at 4:30

2nd shift: on at 7:15, off at 4:45

3rd shift: on at 7:30, off at 5

Waiting Line System

Technical Description – Waiting Line System

• Service Rate– Average Call = 4 minutes 20 seconds – 15 min / 4.33 min = 3.46 calls per 15-minute interval

• Arrival Rate– Given past 3 months of call volume by 30-minute intervals– Added call volume received across all days for each 30-minute

interval– Averaged and divided by 2 to get 15-minute intervals

• Obtained employees needed per 15-minute interval by dividing average arrival rates by service rate of 3.46

Technical Description – Integer Programming Model

• Used programming language AMPL/CPLEX

• Created 2 text files for model– FedAmpl– FedFile

• 24 variables = possible temporary agents schedules currently used by FED– A Matrix

• Row T = 15-minute interval• Column S = Possible schedules

  x1 x2 x3 x4

7-715 1 1 1 1

715-730 1 1 1 1

730-745 1 1 1 1

745-8 1 1 1 1

8-815  0  0 1 1

815-830 1 1  0 1

830-845 1 1 1  0

845-9 1 1 1 1

9-915 1 1 1 1

915-930 1 1 1 1

930-945 1 1 1 1

945-10 1 1 1 1

10-1015 1 1 1 1

1015-1030 1 1 1 1

Technical Description – Integer Programming Model

• Constraints– One constraint generated 48 = one per 15-minute time period– Agents Working >= Agents Needed (RHS)

• RightHandSide– Represents the employees needed per 15-minute time period– 48 RHS values– Total Employees – Permanent Employees Working

= Temporary Agents Needed per 15-minute Interval

15 Minute Interval

Number of Agents Needed

Permanent Employees

Agents Needed - Permanents = RHS

7-715 3 1 2715-730 3 1 2730-745 5 1 4

Analysis and Interpretation – Solution Model 1

• Found number of temporary employees and their schedules• Kept permanent employees’ schedules as they are currently• Objective Function = 9 Temporary Employees• For Example:

Schedule 4: need 1 temporary employee to come in at 7:00 to 3:45, breaks 8:30 and 1:45, and lunch at 10:30

CPLEX Output

CPLEX 11.2.0: optimal integer solution; objective 9

6 MIP simplex iterations

x [*] :=

1 0 4 1 7 0 10 0 13 0 16 0 19 0 22 0

2 0 5 0 8 3 11 0 14 0 17 0 20 0 23 0

3 0 6 3 9 0 12 0 15 0 18 1 21 0 24 1;

Analysis and Interpretation – Solution Model 2

• Changed the RHS by taking out the permanent employees • Models temporary and permanent employees• Objective Function = 21 Total Employees• Does not take into account that permanent employees answer the phones

only 80% of their day

CPLEX Output

CPLEX 11.2.0: optimal integer solution; objective 21

16 MIP simplex iterations

x [*] :=

1 0 4 0 7 2 10 0 13 0 16 4 19 0 22 0

2 2 5 0 8 0 11 0 14 0 17 0 20 2 23 1

3 2 6 1 9 3 12 0 15 0 18 0 21 0 24 4

Analysis and Interpretation – Solution Model 3

• Factored in the fact that the permanent employees only answer the phone 80% of their day

• Increased the RHS by multiplying by 1.2 and rounding up• Objective Function = 25 Total Employees• Next model we will add additional schedules

CPLEX Output

CPLEX 11.2.0: optimal integer solution; objective 25

18 MIP simplex iterations

x [*] :=

1 0 4 0 7 2 10 1 13 0 16 4 19 0 22 0

2 3 5 0 8 0 11 0 14 0 17 0 20 3 23 1

3 2 6 2 9 3 12 0 15 0 18 0 21 0 24 4

Analysis and Interpretation – Solution Model 4

• Added 10 more possible schedules with start times staggered every 15 minutes, and breaks and lunches systematically staggered

• 9 employees used new schedules• Objective Function = 24 Total Employees

– Objective improved by 1

CPLEX Output

CPLEX 11.2.0: optimal integer solution; objective 24

34 MIP simplex iterations

x [*] :=

1 0 5 1 9 2 13 0 17 0 21 3 25 0 29 0 33 0

2 0 6 2 10 1 14 2 18 0 22 0 26 2 30 2 34 2

3 1 7 0 11 0 15 0 19 0 23 2 27 0 31 0

4 1 8 0 12 0 16 0 20 0 24 0 28 2 32 1

Analysis and Interpretation – Solution Model 5

• Adjusted RHS by subtracting permanent employees• Determined temporary employees needed and their schedules using all

possible schedules, including 10 new schedules• Objective Function = 9 Temporary Employees• Additional schedules did not reduce temporary employees needed

CPLEX Output

CPLEX 11.2.0: optimal integer solution; objective 9

7 MIP simplex iterations

x [*] :=

1 0 5 0 9 0 13 0 17 0 21 0 25 0 29 0 33 0

2 0 6 3 10 0 14 0 18 1 22 0 26 1 30 0 34 0

3 0 7 0 11 0 15 0 19 0 23 1 27 3 31 0

4 0 8 0 12 0 16 0 20 0 24 0 28 0 32 0

15 Minute Interval

Agents Needed - Permanents

15 Minute Interval

Agents Needed - Permanents

7-715 2 1-115 6715-730 2 115-130 4730-745 4 130-145 1745-8 4 145-2 28-815 4 2-215 1

815-830 4 215-230 1830-845 4 230-245 3845-9 3 245-3 29-915 3 3-315 0

915-930 5 315-330 0930-945 4 330-345 0945-10 4 345-4 -110-1015 4 4-415 -4

1015-1030 1 415-430 -41030-1045 1 430-445 -51045-11 0 445-5 -111-1115 1 5-515 0

1115-1130 1 515-530 -11130-1145 3 530-545 01145-12 3 545-6 112-1215 2 6-615 0

1215-1230 4 615-630 01230-1245 6 630-645 -11245-1 9 645-7 -1

Conclusions

• Analysis of employees needed per 15-minute interval– Too many permanent

employees are starting late in the day

– More employees need to begin earlier in the day

Conclusions

• Best Solution = Model 4 – Models permanent and temporary employee schedules– Total Employees = 24

7-71

574

5-8

830-

845

915-

930

10-1

015

1045

-11

1130

-114

5

1215

-123

01-

115

145-

2

230-

245

315-

330

4-41

544

5-5

530-

545

615-

630

0

5

10

15

20

25

30

Model 4 - Total Employees Working

Conclusions

• Alternative Solution = Model 1– Models temporary employee schedules – Permanent employee schedules are kept as they are currently– Temporary Employees = 9

7-71

574

5-8

830-

845

915-

930

10-1

015

1045

-11

1130

-114

5

1215

-123

01-

115

145-

2

230-

245

315-

330

4-41

544

5-5

530-

545

615-

630

02468

10

Model 1- Temporary Employees Working

Conclusions

• Realistic Recommendation– Add two to three employees to CPLEX output

• Break and Lunch Schedule Recommendation– Limit lunches between 12:15 to 1:15 due to high call volume

• Additional Suggestions– Part-Time Employee Schedules

• Additional shifts from 10:00 – 2:00– 4 Day Work Week

• Go Green

Q&A

top related