190 likes | 486 Views
Call Center Scheduling Problem Federal 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
E N D
Call Center Scheduling ProblemFederal Reserve Bank United States TreasuryMay 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
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
Problem Objective • Optimization functionalities • Minimize cost by not over hiring temporary workers • Maximize customer service by eliminating dropped calls • Our analysis focused on 2nd, 3rd, and 4th weeks • Most checks delivered in the 1st week of the month • Highest call volume demands
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 2nd shift: on at 7:15, off at 4:45 3rd shift: on at 7:30, off at 5 1st shift: on at 7, off at 4:30 7am 7:15 7:30 7:45 4:30 4:45 5:00 # agents ≥ # needed for response time this interval 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
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
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
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
Conclusions • Alternative Solution = Model 1 • Models temporary employee schedules • Permanent employee schedules are kept as they are currently • Temporary Employees = 9
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