Systems and Methods of Automatically Scheduling a Workforce
First Claim
1. A computer-implemented method of scheduling a set of workers, each worker associated with one of a set of flexibility classifications, the classifications including a non-flex-time classification and at least one flex-time classification, comprising the steps of:
- receiving a set of shift constraints;
creating a set of shift templates representing at least two variations allowed by the shift constraints;
determining a number of instances of each shift template to cover forecasted demand over a planning period;
creating the determined number of shifts instances; and
producing a set of staff mix enumerations to cover the shift instances, the set of enumerations varying from a first enumeration including zero workers of the at least one non-flex-time classification and a first computed number of workers of the flex-time classification, to a last enumeration including a maximum number of workers of the at least one non-flex-time classification and a last computed number of workers of the flex-time classification, wherein the producing step further comprises;
assigning the shift instances to the set of workers by an iteration of each worker, wherein the iteration comprises;
applying dynamic programming to assign the shift instances within the planning period to a selected one of the workers, such that total hours assigned to the selected worker approach, but do not exceed, a per-interval maximum associated with the classification of the selected worker, wherein workers having a classification other than flex-time are selected before workers having a flex-time classification.
6 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods of workforce scheduling are disclosed. One example embodiment, among others, comprises a computer-implemented method of scheduling workers. Each worker is associated with one of a set of flexibility classifications, which include non-flex-time and at least one flex-time. The method includes generating a set of shift instances to cover forecasted demand over a planning period, and assigning the shift instances to the set of workers by iterating through the each of the workers to assign at least a portion of the shift instances to a selected one of the workers. The assigning is such that total hours assigned to the selected worker depends on a number associated with the classification of the selected worker.
129 Citations
20 Claims
-
1. A computer-implemented method of scheduling a set of workers, each worker associated with one of a set of flexibility classifications, the classifications including a non-flex-time classification and at least one flex-time classification, comprising the steps of:
-
receiving a set of shift constraints; creating a set of shift templates representing at least two variations allowed by the shift constraints; determining a number of instances of each shift template to cover forecasted demand over a planning period; creating the determined number of shifts instances; and producing a set of staff mix enumerations to cover the shift instances, the set of enumerations varying from a first enumeration including zero workers of the at least one non-flex-time classification and a first computed number of workers of the flex-time classification, to a last enumeration including a maximum number of workers of the at least one non-flex-time classification and a last computed number of workers of the flex-time classification, wherein the producing step further comprises; assigning the shift instances to the set of workers by an iteration of each worker, wherein the iteration comprises; applying dynamic programming to assign the shift instances within the planning period to a selected one of the workers, such that total hours assigned to the selected worker approach, but do not exceed, a per-interval maximum associated with the classification of the selected worker, wherein workers having a classification other than flex-time are selected before workers having a flex-time classification. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method of scheduling a set of workers, each worker associated with one of a set of flexibility classifications, the classifications including a non-flex-time classification and at least one flex-time classification, the method comprising the steps of:
-
generating shift instances to cover forecasted demand over a planning period; producing a set of staff mix enumerations to cover the shift instances; and assigning the shift instances to the set of workers by an iteration comprising; assigning the shift instances to a selected one of the workers, such that total hours assigned to the selected worker depends on a number corresponding to the classification of the selected worker, wherein workers having a classification other than flex-time are selected before workers having a flex-time classification. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A system of scheduling a set of workers, each worker associated with one of a set of flexibility classifications, the set including a flex-time classification, comprising the steps of:
-
logic configured to generate a set of shift instances to cover forecasted demand over a planning period; and logic configured to assign the shift instances to the set of workers by iterating through the each of the workers to assign at least a portion of the shift instances to a selected one of the workers, such that total hours assigned to the selected worker depends on a number associated with the classification of the selected worker. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification