Resource scheduling and monitoring
First Claim
1. A computer apparatus for implementing a resource scheduling system comprising:
- a memory structured to enable accessing stored scheduling parameters for optimized scheduling of resources, the scheduling parameters including;
a set of resources, each resource having any number of associated user-defined attributes,at least one calendar having a user-specified plurality of temporal intervals representing a pattern of user-specified dates, for utilizing resources,at least one shift, each shift including a user defined pattern of time periods representing a recurring pattern of time periods for resource utilization,at least one slot representing resource demand, resource demand being demand for one or more individual resources of the set of resources during at least one user selected shift of the at least one shifts, anda set of natural language resource constraints of the resources in the set based on the at least one resource and the at least one slot, the natural language resource constraints generated by a user;
an automatic calendar generator configured to create a calendar for resource scheduling based on the at least one calendar in memory;
a resource manager configured to select a shift from the at least one shift in memory, the resource manager further configured to allocate the selected shift to a time interval of the created calendar, the shift comprising slots representing resource demand for the time interval of the created calendar;
a scheduling processor configured to assign resources from the set of resources in the memory to the shift slots by accessing the memory to apply the set of natural language resource constraints to;
(i) attributes of each resource of the set of resources and (ii) attributes of the shift, to determine the resources that optimally fulfill the respective resource demands of each shift slot, the applying of the set of natural language resource constraints include;
(a) eliminating the natural language resource constraints that have no effect on the assigning and assigning resources to the shift slots based on remaining natural language resource constraints, and(b) automatically modifying the remaining natural language resource constraints based on attributes of the set of resources and attributes of the shift, such that applying the modified resource constraints optimize the assigning of the resources to the shift slots;
wherein the scheduling processor is further configured to;
schedule simultaneously multiple resources of the set of resources, such that the simultaneously scheduled multiple resources fulfill resource demand represented by the shift slots; and
for one resource of the set of resources, allow generation of one schedule of different shifts of one resource for different slots of demand of the one resource; and
a user interface configured to present a graphical user interface as a display and enable the user to define at least one attribute of the stored scheduling parameters with objects, including employees, resources, calendars, shift slots, assignments, and replacements by presenting a range of choices for type of each attribute, the choices being at least one of a defined list of alpha-numeric strings, numeric values having defined numerical limits, or a Boolean operator, and to generate the natural language resource constraints.
0 Assignments
0 Petitions
Accused Products
Abstract
A resource scheduling system includes a set of resources and associated resource attributes, a representation of resource demands, and a scheduling module for generating a schedule of resource utilization. The representation of resource demands and availability may include information about time slots, calendars, and shifts. A slot is a representation of a demand for one or more individual item. A calendar is a representation of dates when resources are needed. Each shift represents a set of time intervals of resource demands. Additionally, the system keeps track of individual resource availability and preferences and attempts to create a resource utilization schedule that satisfies all constraints generated based on the time slots, calendars, shifts, and resource schedules.
-
Citations
32 Claims
-
1. A computer apparatus for implementing a resource scheduling system comprising:
-
a memory structured to enable accessing stored scheduling parameters for optimized scheduling of resources, the scheduling parameters including; a set of resources, each resource having any number of associated user-defined attributes, at least one calendar having a user-specified plurality of temporal intervals representing a pattern of user-specified dates, for utilizing resources, at least one shift, each shift including a user defined pattern of time periods representing a recurring pattern of time periods for resource utilization, at least one slot representing resource demand, resource demand being demand for one or more individual resources of the set of resources during at least one user selected shift of the at least one shifts, and a set of natural language resource constraints of the resources in the set based on the at least one resource and the at least one slot, the natural language resource constraints generated by a user; an automatic calendar generator configured to create a calendar for resource scheduling based on the at least one calendar in memory; a resource manager configured to select a shift from the at least one shift in memory, the resource manager further configured to allocate the selected shift to a time interval of the created calendar, the shift comprising slots representing resource demand for the time interval of the created calendar; a scheduling processor configured to assign resources from the set of resources in the memory to the shift slots by accessing the memory to apply the set of natural language resource constraints to;
(i) attributes of each resource of the set of resources and (ii) attributes of the shift, to determine the resources that optimally fulfill the respective resource demands of each shift slot, the applying of the set of natural language resource constraints include;(a) eliminating the natural language resource constraints that have no effect on the assigning and assigning resources to the shift slots based on remaining natural language resource constraints, and (b) automatically modifying the remaining natural language resource constraints based on attributes of the set of resources and attributes of the shift, such that applying the modified resource constraints optimize the assigning of the resources to the shift slots; wherein the scheduling processor is further configured to; schedule simultaneously multiple resources of the set of resources, such that the simultaneously scheduled multiple resources fulfill resource demand represented by the shift slots; and for one resource of the set of resources, allow generation of one schedule of different shifts of one resource for different slots of demand of the one resource; and a user interface configured to present a graphical user interface as a display and enable the user to define at least one attribute of the stored scheduling parameters with objects, including employees, resources, calendars, shift slots, assignments, and replacements by presenting a range of choices for type of each attribute, the choices being at least one of a defined list of alpha-numeric strings, numeric values having defined numerical limits, or a Boolean operator, and to generate the natural language resource constraints. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A computer-implemented method for resource utilization scheduling, said method comprising:
-
in at least one hardware processor; recording, in a memory structured to enable accessing stored scheduling parameters for optimized scheduling of resources, the scheduling parameters including;
(i) information about a set of resources, each resource having associated user-defined attributes, (ii) at least one shift, each shift including a user defined pattern of time periods representing a recurring pattern of time periods for resource utilization, (iii) at least one slot associated with each shift representing resource demand, resource demand being demand for one or more individual resources of the set of resources during the associated shift, and (iv) any number of natural language resource constraints of the resources in the set based on the resource demand represented by the at least one slot, the natural language resource constraints generated by the user;storing in the memory at least one calendar having a user-defined plurality of temporal intervals representing a pattern of user-specified dates for utilizing resources in the set of resources; creating a calendar for resource scheduling based on the at least one calendar in memory; selecting a shift from the at least one shift in memory, wherein allocating the selected shift to a time interval of the created calendar, the shift comprising slots representing resource demand for the time interval of the created calendar; generating a schedule by assigning resources from the set of resources in the memory to the shift slots by accessing the memory to apply the set of natural language resource constraints to;
(i) attributes of each resource of the set of resources and (ii) attributes of the shift, to determine the resources that optimally fulfill the respective resource demands of each shift slot, the applying of the set of natural language resource constraints include;(a) eliminating the natural language resource constraints that have no effect on the assigning and assigning resources to the shift slots based on remaining natural language resource constraints, and (b) automatically modifying the remaining natural language resource constraints based on attributes of the set of resources and attributes of the shift, such that applying the modified resource constraints optimize the assigning of the resources to the shift slots; wherein generating the schedule; schedules simultaneously multiple resources of the set of resources, such that the simultaneously scheduled multiple resources fulfill resource demand represented by the shift slots; and providing a graphical user interface as a display and enabling the user to define at least one attribute of the stored scheduling parameters with objects, including employees, resources, calendars, shift slots, assignments, and replacements by presenting a range of choices for type of each attribute, the choices being at least one of a defined list of alpha-numeric strings, numeric values having defined numerical limits, or a Boolean operator, and to generate the natural language resource constraints. - View Dependent Claims (27, 28, 29, 30)
-
-
31. A non-transitory computer readable medium containing instructions, executed in a processor, for performing the steps of:
-
storing, in a memory structured to enable accessing stored scheduling parameters for optimized scheduling of resources, the scheduling parameters including;
(i) a set of resources, each resource having any number of associated user-defined attributes, (ii) at least one calendar having a user-defined plurality of temporal intervals representing a pattern of user-specified dates, for utilizing resources in the set, (iii) at least one shift, each shift including a user defined pattern of time periods representing a recurring pattern of time periods for resource utilization, (iv) at least one slot representing resource demand, resource demand being demand for one or more individual resources of the set of resources during at least one user selected shift of the at least one shifts, and (v) a set of natural language resource constraints of the resources in the set based on the at least one calendar and the at least one slot, the natural language resource constraints generated by the user;creating a calendar for resource scheduling based on the at least one calendar in memory; selecting a shift from the at least one shift in memory, wherein allocating the selected shift to a time interval of the created calendar, the shift comprising slots representing resource demand for the time interval of the created calendar; and generating a schedule by assigning resources from the set of resources in the memory to the shift slots by accessing the memory to apply the set of natural language resource constraints to;
(i) attributes of each resource of the set of resources and (ii) attributes of the shift, to determine the resources that optimally fulfill the respective resource demands of each shift slot, the applying of the set of natural language resource constraints include;(a) eliminating the natural language resource constraints that have no effect on the assigning and assigning resources to the shift slots based on remaining natural language resource constraints, and (b) automatically modifying the remaining natural language resource constraints based on attributes of the set of resources and attributes of the shift, such that applying the modified resource constraints optimize the assigning of the resources to the shift slots; wherein generating the schedule; schedules simultaneously multiple resources of the set of the resources, such that the simultaneously scheduled multiple resources satisfy demands for resources represented by the shift slots; and presenting a graphical user interface as a display and enabling the user to define at least one attribute of the stored scheduling parameters with objects, including employees, resources, calendars, shift slots, assignments, and replacements by presenting a range of choices for type of each attribute, the choices being at least one of a defined list of alpha-numeric strings, numeric values having defined numerical limits, or a Boolean operator, and to generate the natural language resource constraints. - View Dependent Claims (32)
-
Specification