IP Library Granted Patent US 7,254,546
Granted Patent B1
US 7,254,546 · App. 11/479,924 · Granted Aug 7, 2007

System and method for complex schedule generation

Assignee: Witness Systems, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,254,546
App. No.
11/479,924
Granted
Aug 7, 2007
Kind
B1
Abstract

A system and method for generating a schedule for multiple employees in a complex environment. In one embodiment, the method includes generating a schedule for multiple employees with varying skill sets for a time period, wherein the plurality of employees have varying overlapping skill sets that enable them to perform various tasks, and wherein employees are shared across tasks within the time period. In one embodiment, the method includes receiving a plurality of user inputs to a scheduling program, including a number of employee designations that each refer to a unique employee, and a number of skill sets that each correspond to one of the employee designations. The method further includes receiving a user input that changes the number of employee designations by indicating at least one changed employee, and estimating an effect of the at least one changed employee on effective staffing levels for each of the various tasks. The method further includes generating estimated effective staffing levels for each of the various tasks.

Claims (80)

1. A computer-implemented method for generating a schedule for a plurality of employees in a call center environment, the method comprising:

receiving a plurality of user inputs to a scheduling program, including a number of employee designations each of which refers to a unique employee, and a number of skill sets each of which corresponds to one of the employee designations;

during the method for generating the schedule, determining an effect on the schedule of an incremental change to the plurality of user inputs, including:

receiving a user input that changes the number of employee designations by indicating at least one changed employee;

estimating an effect of the at least one changed employee on effective staffing levels for each of various tasks, wherein the estimating uses as an input a skill set associated with the at least one changed employee;

determining whether to simulate the schedule based at least in part on an adaptive algorithm; and

generating estimated effective staffing levels for each of the various tasks; and

displaying the schedule for the plurality of employees in the call center environment with varying skill sets for a time period, wherein each time period includes a plurality of queues associated with corresponding tasks, wherein the plurality of employees have varying overlapping skill sets that enable them to perform the various tasks in the plurality of queues within the time period, hence, the employees are shared across tasks in the plurality of queues within the time period.

2. The method of claim 1 , wherein the user input that changes the number of employee designations has an effect chosen from a group including adding at least one employee designation and subtracting at least one employee designation.

3. The method of claim 1 , further comprising, determining a number of changes that can be made to the schedule during the scheduling method without simulating a proposed schedule, wherein determining includes comparing a predetermined amount of allowed error and a cumulative error that results from estimating.

4. The method of claim 3 , wherein estimating comprises:

calculating a total effective work a changed employee will perform; scaling each task by at least one predetermined factor; and

adjusting a work distribution for every unique employee other than the changed employee based upon the total effective work the changed employee will perform.

5. The method of claim 4 , further comprising distributing the changed employee's effective work across the plurality of tasks.

6. The method of claim 4 , wherein the at least one predetermined factor includes a measure of average time to handle a subtask divided by a number of subtasks per time interval, and a measure of how much work remains in a task based upon results of a previous simulation.

7. The method of claim 4 , wherein calculating a total effective work a changed employee will perform comprises applying a function to: a number of skills of the changed employee; proficiencies of the changed employee; and priorities of the changed employee.

8. The method of claim 4 , wherein adjusting the work distribution for every unique employee other than the changed employee includes adjusting an effective contribution to each task worked by one of the other unique employees by a factor reflecting that a different amount of work will be required for tasks worked by the changed employee.

9. The method of claim 1 , wherein the schedule is for staffing a call center, and wherein the plurality of employees comprises a plurality of agents.

10. The method of claim 6 , wherein the schedule is for staffing a call center, wherein the plurality of employees comprises a plurality of agents, a task comprises a call queue, and a subtask comprises a call.

11. The method of claim 10 , wherein the varying skill sets include multiple skills for each agent, and wherein each agent may work on multiple call queues in one time period.

12. A system for generating a schedule for a plurality of employees in a call center environment, the system comprising:

at least one server comprising at least one storage device; and

at least one client processor coupled to the server through a network, wherein the client processor is coupled to a plurality of storage devices, including a storage device that stores instructions that, when executed, cause the at least one client processor to,

receive a plurality of user inputs to a scheduling program, including a number of employee designations each of which refers to a unique employee, and a number of skill sets each of which corresponds to one of the employee designations; and

during execution of the scheduling program, determine an effect on the schedule of an incremental change to the plurality of user inputs, including:

receive a user input that changes the number of employee designations by indicating at least one changed employee;

estimate an effect of the at least one changed employee on effective staffing levels for each of various tasks, including estimating using as an input a skill set associated with the at least one changed employee;

determine whether to simulate the schedule based at least in part on an adaptive algorithm; and

generate estimated effective staffing levels for each of the various tasks; and

displaying the schedule for the plurality of employees in the call center environment with varying skill sets for a time period, wherein each time period includes a plurality of queues associated with corresponding tasks, wherein the plurality of employees have varying overlapping skill sets that enable them to perform the various tasks in the plurality of queues within the time period, hence, the employees are shared across tasks in the plurality of queues within the time period.

13. The system of claim 12 , wherein the storage device that stores the instructions is accessed by the at least one processor through the network.

14. The system of claim 13 , wherein the storage device that stores the instructions is the at least one storage device of the server.

15. The system of claim 12 , wherein the user input that changes the number of employee designations has an effect chosen from a group including adding at least one employee designation and subtracting at least one employee designation.

16. The system of claim 12 , wherein the instructions, when executed, further cause the at least one processor to determine a number of changes that can be made to the schedule during the scheduling process without simulating a proposed schedule, wherein determining includes comparing a predetermined amount of allowed error and a cumulative error that results from estimating.

17. The system of claim 16 , wherein the instructions, when executed, further cause the at least one processor to:

calculate a total effective work a changed employee will perform;

scale each task by at least one predetermined factor; and

adjust a measure of effective work for every unique employee other than the changed employee based upon the total effective work the changed employee will perform.

18. The system of claim 17 , further comprising distributing the changed employee's effective work across the plurality of tasks.

19. The system of claim 17 , wherein the at least one predetermined factor includes a measure of average time to handle a subtask divided by a number of subtasks per time interval, and a measure of how much work remains in a task based upon results of a previous simulation.

20. The system of claim 17 , wherein calculating a total effective work a changed employee will perform comprises applying a function to: a number of skills of the changed employee; proficiencies of the changed employee; and priorities of the changed employee.

21. The system of claim 17 , wherein adjusting the work distribution for every unique employee other than the changed employee includes adjusting an effective contribution to each task worked by one of the other unique employees by a factor reflecting that a different amount of work will be required for tasks worked by the changed employee.

22. The system of claim 12 , wherein the schedule is for staffing a call center, and wherein the plurality of employees comprises a plurality of agents.

23. The system of claim 19 , wherein the schedule is for staffing a call center, wherein the plurality of employees comprises a plurality of agents, a task comprises a call queue, and a subtask comprises a call.

24. The system of claim 23 , wherein the varying skill sets include multiple skills for each agent, and wherein each agent may work on multiple call queues in one time period.

25. An electromagnetic medium containing executable instructions which, when executed in a processing system, cause the system to generate a schedule in a call center environment, wherein generating the schedule comprises:

receiving a plurality of user inputs to a scheduling program, including a number of employee designations each of which refers to a unique employee, and a number of skill sets each of which corresponds to one of the employee designations;

during execution of the scheduling program, determining an effect on the schedule of an incremental change to the plurality of user inputs, including:

receiving a user input that changes the number of employee designations by indicating at least one changed employee;

estimating an effect of the at least one changed employee on effective staffing levels for each of various tasks, wherein the estimating uses as an input a skill set associated with the at least one changed employee;

determining whether to simulate the schedule based at least in part on an adaptive algorithm; and

generating estimated effective staffing levels for each of the various tasks; and

displaying the schedule for the plurality of employees in the call center environment with varying skill sets for a time period, wherein each time period includes a plurality of queues associated with corresponding tasks, wherein the plurality of employees have varying overlapping skill sets that enable them to perform the various tasks in the plurality of queues within the time period, hence, the employees are shared across tasks in the plurality of queues within the time period.

26. The electromagnetic medium of claim 25 , wherein the user input that changes the number of employee designations has an effect chosen from a group including adding at least one employee designation and subtracting at least one employee designation.

27. The electromagnetic medium of claim 25 , wherein generating the schedule further comprises, determining a number of changes that can be made to the schedule during the scheduling process without simulating a proposed schedule, wherein determining includes comparing a predetermined amount of allowed error and a cumulative error that results from estimating.

28. The electromagnetic medium of claim 27 , wherein estimating comprises:

calculating a total effective work a changed employee will perform;

scaling each task by at least one predetermined factor; and

adjusting a work distribution for every unique employee other than the changed employee based upon the total effective work the changed employee will perform.

29. The electromagnetic medium of claim 28 , wherein generating the schedule further comprises distributing the changed employee's effective work across the plurality of tasks.

30. The electromagnetic medium of claim 28 , wherein the at least one predetermined factor includes a measure of average time to handle a subtask divided by a number of subtasks per time interval, and a measure of how much work remains in a task based upon results of a previous simulation.

31. The electromagnetic medium of claim 28 , wherein calculating a total effective work a changed employee will perform comprises applying a function to: a number of skills of the changed employee; proficiencies of the changed employee; and priorities of the changed employee.

32. The electromagnetic medium of claim 28 , wherein adjusting the work distribution for every unique employee other than the changed employee includes adjusting an effective contribution to each task worked by one of the other unique employees by a factor reflecting that a different amount of work will be required for tasks worked by the changed employee.

33. The electromagnetic medium of claim 25 wherein the schedule is for staffing a call center, and wherein the plurality of employees comprises a plurality of agents.

34. The electromagnetic medium of claim 30 , wherein the schedule is for staffing a call center, wherein the plurality of employees comprises a plurality of agents, a task comprises a call queue, and a subtask comprises a call.

35. The electromagnetic medium of claim 34 , wherein the varying skill sets include multiple skills for each agent, and wherein each agent may work on multiple call queues in one time period.

36. A computer-implemented method for generating a schedule in a call center environment, the method comprising:

initiating an automatic scheduling process that receives employee data including skill sets as an input;

determining whether to simulate a proposed schedule, including measuring a cumulative error of using an estimation function from results of the simulation, and a predetermined allowed error;

if it is determined not to simulate the proposed schedule, continuing with the method including evaluating and outputting the proposed schedule;

determining whether a change has been made to the employee data;

if a change has been made to the employee data, calculating an effective change to staffing levels, wherein the calculating includes estimating an effect of at least one changed employee on the effective change to staffing levels for a number of various tasks, wherein the estimating uses as an input a skill set associated with the at least one changed employee, wherein the calculating includes determining whether to simulate the schedule based at least in part on an adaptive algorithm;

continuing with the method including evaluating and outputting the proposed schedule; and

displaying the schedule for the plurality of employees in the call center environment with varying skill sets for a time period, wherein each time period includes a plurality of queues associated with corresponding tasks, wherein the plurality of employees have varying overlapping skill sets that enable them to perform the various tasks in the plurality of queues within the time period, hence, the employees are shared across tasks in the plurality of queues within the time period.

37. The method of claim 36 , wherein the skill sets comprise abilities to service different call queues, and wherein calculating the effective change to staffing levels comprises:

determining a total effective work a changed employee will perform, wherein a changed employee is selected from a group comprising an added employee and a removed employee; and

scaling each of a plurality of call queues to be staffed in accordance with the total effective work of the changed employee.

38. The method of claim 37 , further comprising:

distributing the changed employee's effective work across the plurality of call queues; and

adjusting other employees' effective work in accordance with the total effective work of the changed employee.

Assignments (11)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (043293/0567) Recorded Nov 26, 2025
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: VERINT AMERICAS INC.
Reel/Frame 073796/0639 →
GRANT OF SECURITY INTEREST IN PATENT RIGHTS Recorded Jul 21, 2017
From: VERINT AMERICAS INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 043293/0567 →
RELEASE OF SECURITY INTEREST Recorded Jun 30, 2017
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: VERINT AMERICAS INC.
Reel/Frame 043066/0473 →
RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Oct 21, 2013
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: VERINT AMERICAS INC.; VERINT SYSTEMS INC.; VERINT VIDEO SOLUTIONS INC.
Reel/Frame 031448/0373 →
GRANT OF SECURITY INTEREST IN PATENT RIGHTS Recorded Oct 21, 2013
From: VERINT AMERICAS INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 031465/0450 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2013
From: ANDRE, DAVID; NOURBAKHSH, ILLAH; UCKUN, SERDAR
To: BLUE PUMPKIN SOFTWARE
Reel/Frame 030506/0289 →
MERGER Recorded May 29, 2013
From: BLUE PUMPKIN SOFTWARE, INC.
To: WITNESS SYSTEMS, INC.
Reel/Frame 030506/0494 →
CHANGE OF NAME Recorded May 29, 2013
From: WITNESS SYSTEMS, INC.
To: VERINT AMERICAS INC.
Reel/Frame 030508/0649 →
RELEASE OF SECURITY INTEREST Recorded May 2, 2011
From: CREDIT SUISSE AG
To: VERINT AMERICAS INC.; VERINT VIDEO SOLUTIONS INC.; VERINT SYSTEMS INC.
Reel/Frame 026206/0340 →
SECURITY AGREEMENT Recorded May 2, 2011
From: VERINT AMERICAS INC.
To: CREDIT SUISSE AG
Reel/Frame 026207/0203 →
SECURITY AGREEMENT Recorded Jun 9, 2009
From: VERINT AMERICAS INC.
To: CREDIT SUISSE AS ADMINISTRATIVE AGENT
Reel/Frame 022793/0879 →
Continuity (1)
Continuation 0982558900 · Apr 3, 2001