Method and apparatus for queue-based automated staff scheduling
First Claim
1. A queue-based scheduling apparatus for automated staff scheduling and for enforcing scheduling rules and requirements, comprising:
- means for defining conditional and unconditional rules;
means for ranking rules and requests in varying priority as represented by a numeric value assigned to each rule and request; and
means for specifying rules both per individual and per group; and
means for generating schedules in multiple phases;
wherein during each phase, an automatic scheduler entirely schedules every assignment on every day in a scheduling period;
wherein on second and later phases, said auto scheduler learns from any hazards detected in earlier phases to generate a better overall schedule;
wherein said hazards are detected whenever said automatic scheduler cannot find an individual that would not violate some rule or request;
said automatic scheduler determining if any conditional rule has caused detection of hazard, and if said conditional rule is satisfied, finding a source or a condition of the rule that generated a violating request;
said automatic scheduler generating and submitting an internal request; and
in subsequent phases, said automatic scheduler avoiding said hazard by using said submitted request from previous phases.
2 Assignments
0 Petitions
Accused Products
Abstract
A queue-based scheduling system, which comprises an automated staff scheduling computer program that is highly flexible in enforcing scheduling rules. This flexibility comes from the ability to: (1) Define conditional and unconditional rules; (2) Rank the rules/requests in varying priority as represented by a numeric value assigned to each rule/request; and (3) Specify rules both per individual and per group. These three abilities synergistically produce an automatic scheduling system that can enforce a wide variety of scheduling rules and requirements seen in actual staff scheduling situations. Furthermore, all these abilities rely on using a queue per scheduled assignment to hold requests and rules.
17 Citations
11 Claims
-
1. A queue-based scheduling apparatus for automated staff scheduling and for enforcing scheduling rules and requirements, comprising:
-
means for defining conditional and unconditional rules; means for ranking rules and requests in varying priority as represented by a numeric value assigned to each rule and request; and means for specifying rules both per individual and per group; and means for generating schedules in multiple phases; wherein during each phase, an automatic scheduler entirely schedules every assignment on every day in a scheduling period; wherein on second and later phases, said auto scheduler learns from any hazards detected in earlier phases to generate a better overall schedule; wherein said hazards are detected whenever said automatic scheduler cannot find an individual that would not violate some rule or request; said automatic scheduler determining if any conditional rule has caused detection of hazard, and if said conditional rule is satisfied, finding a source or a condition of the rule that generated a violating request; said automatic scheduler generating and submitting an internal request; and
in subsequent phases, said automatic scheduler avoiding said hazard by using said submitted request from previous phases. - View Dependent Claims (2)
-
-
3. A scheduling process, comprising the steps of:
-
collecting requests and rules using a graphical user-interface; determining a scheduling period that has a user-defined start date and stop date; creating a request queue for each day of a period; for each request or rule, determining which days said request or rule is applicable; for each applicable day, inserting a request into its queue; sorting said days from most constrained to least constrained; beginning scheduling from a most constrained day; for each assignment in a day, creating a list of candidates for that assignment for that day; for each candidate, associating a highest priority request in said request queue that applies to said candidate, wherein said highest priority value for a candidate is a candidate bid for a chosen assignment; sorting said candidates according to a bid calculated in the immediately preceding step; scheduling a candidate having a highest number; determining a schedule for any remaining days; and means for generating schedules in multiple phases; wherein during each phase, an automatic scheduler entirely schedules every assignment on every day in a scheduling period; wherein on second and later phases, said automatic scheduler learns from any hazards detected in earlier phases to generate a better overall schedule; wherein said hazards are detected whenever said automatic scheduler cannot find an individual that would not violate some rule or request; said automatic scheduler determining if any conditional rule has caused detection of hazard, and said conditional rule is satisfied, finding a source or a condition of the rule that generated a violating request; said automatic scheduler generating and submitting an internal request; and
insubsequent phases, said automatic scheduler avoiding said hazard by using said submitted request from previous phases. - View Dependent Claims (4, 5, 6, 7, 8, 9, 10, 11)
-
Specification