IP Library Patent Application 18812467
Patent Application
App. No. 18/812,467

WORKFORCE SCHEDULING BASED ON SHIFT ENUMERATION

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 None
App. No.
18/812,467
Abstract

An example method of workforce scheduling includes: identifying a plurality of variables associated with scheduling a plurality of workers to perform a plurality of jobs during respective shifts defined by corresponding time periods, wherein each variable is associated with a corresponding shift; identifying a scheduling problem for optimizing an objective function defined on the plurality of variables subject to a plurality of constraints; identifying, based on a historic schedule assigning at least a subset of the plurality of workers to perform at least a subset of the plurality of jobs during a plurality of past time periods, a subset of the plurality of variables; determining, based on the subset of the plurality of variables, a tentative solution of the scheduling problem; responsive to determining that the tentative solution fails a predefined quality criterion, modifying the tentative solution; and generating a schedule based on the modified tentative solution.

Claims (81)

1 . A method, comprising:

identifying, by a processing device, a plurality of variables associated with scheduling a plurality of workers to perform a plurality of jobs during respective shifts defined by corresponding time periods, wherein each variable of the plurality of variables is associated with a corresponding shift;

identifying a plurality of constraints associated with the plurality of variables;

identifying a scheduling problem for optimizing an objective function defined on the plurality of variables subject to the plurality of constraints;

identifying, based on a historic schedule assigning at least a subset of the plurality of workers to perform at least a subset of the plurality of jobs during a plurality of past time periods, a subset of the plurality of variables of the scheduling problem;

determining, based on the subset of the plurality of variables, a tentative solution of the scheduling problem;

responsive to determining that the tentative solution fails a predefined quality criterion, modifying the tentative solution; and

generating, based on the tentative solution, a schedule to assign at least the plurality of workers to perform at least the plurality of jobs during at least the plurality of time periods.

2 . The method of claim 1 , further comprising:

responsive to determining that the tentative solution fails a predefined quality criterion, modifying the subset of the plurality of variables of the scheduling problem.

3 . The method of claim 1 , wherein identifying the subset of the plurality of variables further comprises:

identifying, in the historic schedule, a subset of jobs that were most frequently assigned to a particular worker;

identifying, in the historic schedule, a plurality of shifts during which the particular worker was assigned to perform a job of the subset of jobs; and

appending, to the subset of variables, one or more variables associated with the plurality of shifts.

4 . The method of claim 1 , wherein identifying the subset of the plurality of variables further comprises:

identifying a subset of shifts of the historic schedule; and

for each shift of the subset of shifts, identify a start time and an end time of the shift;

append, to the subset of variables, one or more variables associated with at least one of: a first shift that starts within a predefined timeframe from the start time or a second shift that ends within a predefined timeframe from the end time.

5 . The method of claim 1 , wherein identifying the subset of the plurality of variables further comprises:

identifying a subset of shifts of the historic schedule; and

for each shift of the subset of shifts, identify a start time of the shift;

responsive to determining that the start time is within a predefined timeframe of a predicted demand rise time, appending, to the subset of variables, one or more variables associated with the shift.

6 . The method of claim 1 , wherein identifying the subset of the plurality of variables further comprises:

identifying a subset of shifts of the historic schedule; and

for each shift of the subset of shifts, identify an end time of the shift;

responsive to determining that the end time is within a predefined timeframe of a predicted demand drop time, appending, to the subset of variables, one or more variables associated with the shift.

7 . The method of claim 1 , wherein modifying the tentative solution further comprises performing at least one of: modifying a start time of a chosen shift of the tentative solution, modifying an end time of a chosen shift of the tentative solution, modifying duration of a chosen shift of the tentative solution, or swapping a first shift and a second shift of the tentative solution.

8 . The method of claim 1 , wherein modifying the tentative solution further comprises:

identifying a sub-schedule of a tentative solution; and

replacing one or more shifts of the sub-schedule.

9 . A system, comprising:

a memory; and

a processing device coupled to the memory, the processing device configured to:

identify a plurality of variables associated with scheduling a plurality of workers to perform a plurality of jobs during respective shifts defined by corresponding time periods, wherein each variable of the plurality of variables is associated with a corresponding shift;

identify a plurality of constraints associated with the plurality of variables;

identify a scheduling problem for optimizing an objective function defined on the plurality of variables subject to the plurality of constraints;

identify, based on a historic schedule assigning at least a subset of the plurality of workers to perform at least a subset of the plurality of jobs during a plurality of past time periods, a subset of the plurality of variables of the scheduling problem;

determine, based on the subset of the plurality of variables, a tentative solution of the scheduling problem;

responsive to determining that the tentative solution fails a predefined quality criterion, modify the tentative solution; and

generate, based on the modified tentative solution, a schedule to assign at least the plurality of workers to perform at least the plurality of jobs during at least the plurality of time periods.

10 . The system of claim 9 , wherein identifying the subset of the plurality of variables further comprises:

identifying, in the historic schedule, a subset of jobs that were most frequently assigned to a particular worker;

identifying, in the historic schedule, a plurality of shifts during which the particular worker was assigned to perform a job of the subset of jobs; and

appending, to the subset of variables, one or more variables associated with the plurality of shifts.

11 . The system of claim 9 , wherein identifying the subset of the plurality of variables further comprises:

identifying a subset of shifts of the historic schedule; and

for each shift of the subset of shifts, identify a start time and an end time of the shift;

append, to the subset of variables, one or more variables associated with at least one of: a first shift that starts within a predefined timeframe from the start time or a second shift that ends within a predefined timeframe from the end time.

12 . The system of claim 9 , wherein identifying the subset of the plurality of variables further comprises:

identifying a subset of shifts of the historic schedule; and

for each shift of the subset of shifts, identify a start time of the shift;

responsive to determining that the start time is within a predefined timeframe of a predicted demand rise time, appending, to the subset of variables, one or more variables associated with the shift.

13 . The system of claim 9 wherein identifying the subset of the plurality of variables further comprises:

identifying a subset of shifts of the historic schedule; and

for each shift of the subset of shifts, identify an end time of the shift;

responsive to determining that the end time is within a predefined timeframe of a predicted demand drop time, appending, to the subset of variables, one or more variables associated with the shift.

14 . The system of claim 9 , wherein modifying the tentative solution further comprises performing at least one of: modifying a start time of a chosen shift of the tentative solution, modifying an end time of a chosen shift of the tentative solution, modifying duration of a chosen shift of the tentative solution, or swapping a first shift and a second shift of the tentative solution.

15 . A computer-readable non-transitory storage medium comprising executable instructions that, when executed by a processing device, cause the processing device to:

identify a plurality of variables associated with scheduling a plurality of workers to perform a plurality of jobs during respective shifts defined by corresponding time periods, wherein each variable of the plurality of variables is associated with a corresponding shift;

identify a plurality of constraints associated with the plurality of variables;

identify a scheduling problem for optimizing an objective function defined on the plurality of variables subject to the plurality of constraints;

identify, based on a historic schedule assigning at least a subset of the plurality of workers to perform at least a subset of the plurality of jobs during a plurality of past time periods, a subset of the plurality of variables of the scheduling problem;

determine, based on the subset of the plurality of variables, a tentative solution of the scheduling problem;

responsive to determining that the tentative solution fails a predefined quality criterion, modify the tentative solution; and

generate, based on the modified tentative solution, a schedule to assign at least the plurality of workers to perform at least the plurality of jobs during at least the plurality of time periods.

16 . The computer-readable non-transitory storage medium of claim 15 , wherein identifying the subset of the plurality of variables further comprises:

identifying, in the historic schedule, a subset of jobs that were most frequently assigned to a particular worker;

identifying, in the historic schedule, a plurality of shifts during which the particular worker was assigned to perform a job of the subset of jobs; and

appending, to the subset of variables, one or more variables associated with the plurality of shifts.

17 . The computer-readable non-transitory storage medium of claim 15 , wherein identifying the subset of the plurality of variables further comprises:

identifying a subset of shifts of the historic schedule; and

for each shift of the subset of shifts, identify a start time and an end time of the shift;

append, to the subset of variables, one or more variables associated with at least one of: a first shift that starts within a predefined timeframe from the start time or a second shift that ends within a predefined timeframe from the end time.

18 . The computer-readable non-transitory storage medium of claim 15 , wherein identifying the subset of the plurality of variables further comprises:

identifying a subset of shifts of the historic schedule; and

for each shift of the subset of shifts, identify a start time of the shift;

responsive to determining that the start time is within a predefined timeframe of a predicted demand rise time, appending, to the subset of variables, one or more variables associated with the shift.

19 . The computer-readable non-transitory storage medium of claim 15 , wherein modifying the tentative solution further comprises performing at least one of: modifying a start time of a chosen shift of the tentative solution, modifying an end time of a chosen shift of the tentative solution, modifying duration of a chosen shift of the tentative solution, or swapping a first shift and a second shift of the tentative solution.

20 . The computer-readable non-transitory storage medium of claim 15 , wherein modifying the tentative solution further comprises:

identifying a sub-schedule of a tentative solution; and

replacing one or more shifts of the sub-schedule.

Assignments (3)
SECURITY AGREEMENT (1ST LIEN) Recorded Sep 13, 2024
From: UKG INC.
To: NOMURA CORPORATE FUNDING AMERICAS, LLC, AS COLLATERAL AGENT
Reel/Frame 069036/0272 →
SECURITY INTEREST Recorded Sep 12, 2024
From: UKG INC.
To: COMPUTERSHARE TRUST COMPANY, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 068572/0456 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 23, 2024
From: HADJAR, AHMED; TACHEFINE, BEYIME; LEMAMOU, EUNICE; MONTULET, PIERRE; BENDAYAN, SALOMON; GELINAS, SYLVIE
To: UKG INC.
Reel/Frame 068379/0192 →