DETAILED ACTION
This communication is a Final Office Action rejection on the merits. Claims 1-2, 4-8, 10-14, and 16-19 are currently pending and have been addressed below.
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Priority
Receipt is acknowledged of certified copies of papers required by 37 CFR 1.55.
Information Disclosure Statement (IDS)
The information disclosure statement(s) filed on 06/06/2024 comply with the provisions 37 CFR 1.97, 1.98, and MPEP 609 and is considered by the Examiner.
Response to Arguments
Applicant's arguments filed on 04/06/26 (related to the 103 Rejection) have been fully considered but are moot in view of new grounds of rejection. Applicant's amendments necessitated the new ground(s) of rejection presented in this Office action. Rejection based on a newly cited reference(s) follows.
Applicant's arguments filed on 04/06/26 (related to the 101 Rejection) have been fully considered but they are not persuasive.
Applicant states, on pages 7-8, that the algorithm limits the shift conditions to two or more shift conditions and predicts an effect of the evaluation based on whether or not all the limited shift conditions are achieved, the claimed algorithm can detect the conflict between the shift condition for which the evaluation has been improved and the shift condition other than the shift condition for which the evaluation has been improved in a short time.
Claims 1, 7 and 13 as a whole integrate the method of organizing human activity into a practical application. Specifically, claims 1, 7 and 13 provide a technical solution against a technical problem by limiting the shift conditions to two or more shift conditions and predicts an effect of the evaluation based on whether or not all the limited shift conditions are achieved.
Examiner respectfully disagrees with Applicant. These claim elements are considered to be abstract ideas because they are directed to “certain methods of organizing human activity” which include “managing interactions between people.” In this case, generating a shift based on a predicted effect of a change in the shift condition is a social activity. If a claim limitation, under its broadest reasonable interpretation, covers managing interactions between people, then it falls within the “certain methods of organizing human activity” grouping of abstract ideas. Accordingly, the claim recites an abstract idea.
The main functions of the additional elements recited in claim 1 are merely used to: collect data (e.g. shift conditions and the member information), analyze the data (e.g. generate a shift and predict an effect of a change in the shift conditions on the evaluation based on whether or not all the limited shift conditions are achieved), and display certain results of the collection and analysis (e.g. present the predicted effect). Those are functions that the courts have described as merely indicating a field of use or technological environment in which to apply a judicial exception (see MPEP 2106.05(h)). Also, the step used to evaluate two or more shift conditions is merely taking into consideration additional conditions, but the algorithm is not improved (see 2106.059(g), selecting a particular data source or type of data to be manipulated).
The claim fails to recite any improvements to another technology or technical field, improvements to the functioning of the computer itself, use of a particular machine, effecting a transformation or reduction of a particular article to a different state or thing, adding unconventional steps that confine the claim to a particular useful application, and/or meaningful limitations beyond generally linking the use of an abstract idea to a particular environment. See 84 Fed. Reg. 55. Viewed individually or as a whole, these additional claim element(s) do not provide meaningful limitation(s) to transform the abstract idea into a patent eligible application of the abstract idea such that the claim(s) amounts to significantly more than the abstract idea itself.
Independent claims 7 and 13 recite similar features and therefore are rejected for the same reasons as independent claim 1. Claims 2, 4-6, 8, 10-12, 14, and 16-19 are rejected for having the same deficiencies as those set forth with respect to the claims that they depend from, independent claims 1, 7, and 13.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-2, 4-8, 10-14, and 16-19 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception (i.e., an abstract idea) without reciting significantly more.
Independent Claim 1
Step One - First, pursuant to step 1 in the January 2019 Revised Patent Subject Matter Eligibility Guidance (“2019 PEG”) on 84 Fed. Reg. 53, the claim 1 is directed to an apparatus which is a statutory category.
Step 2A, Prong One - Claim 1 recites: A shift generation system that accepts shift conditions and member information, generates a shift for a member based on the shift conditions and the member information, evaluates an achievement state of the shift conditions for the generated shift, limits the shift conditions to two or more shift conditions including the shift condition for which the evaluation has been improved and the shift condition other than the shift condition for which the evaluation has been improved, predicts an effect of a change in the shift conditions on the evaluation based on whether or not all the limited shift conditions are achieved, and presents the predicted effect. These claim elements are considered to be abstract ideas because they are directed to “certain methods of organizing human activity” which include “managing interactions between people.” In this case, generating a shift based on a predicted effect of a change in the shift condition is a social activity. If a claim limitation, under its broadest reasonable interpretation, covers managing interactions between people, then it falls within the “certain methods of organizing human activity” grouping of abstract ideas. Accordingly, the claim recites an abstract idea.
Step 2A Prong 2 - The judicial exception is not integrated into a practical application. Claim 1 includes additional elements: a hardware processor.
The hardware processor is merely used to accept a shift condition and member information, generate a shift for a member based on the shift condition and the member information, evaluate an achievement state of the shift condition for the generated shift, predicts an effect of a change in the shift condition on the evaluation, and present the predicted effect (Paragraph 0009). Merely stating that the step is performed by a computer component results in “apply it” on a computer (MPEP 2106.05f). This element of “processor” is recited at a high level of generality such that it amounts no more than mere instructions to apply the exception using a generic computer element. Also, the processor is considered “field of use” since it’s just used to receive inputs and provide information for a predicted effect, but the technology is not improved (MPEP 2106.05h). Accordingly, alone and in combination, this additional element does not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea. Therefore, the claim is directed to an abstract idea.
Step 2B - The claim does not include additional elements that are sufficient to amount significantly more than the judicial exception. As discussed above with respect to integration of the abstract idea into a practical application, the claims describe how to generally “apply” the concept of generating a shift based on a predicted effect of a change in the shift condition. The specification shows that the hardware processor is merely used to accept a shift condition and member information, generate a shift for a member based on the shift condition and the member information, evaluate an achievement state of the shift condition for the generated shift, predicts an effect of a change in the shift condition on the evaluation, and present the predicted effect (Paragraph 0009). Further, the step of “presenting the predicted effect” is considered a well-understood, routine, and conventional function since it's just “receiving or transmitting data over a network” (MPEP 2106.05(d)). Thus, nothing in the claim adds significantly more to the abstract idea. The claim is ineligible.
Independent claim 7 is directed to a method at step 1, which is a statutory category. Claim 7 recites similar limitations as claim 1 and is rejected for the same reasons at step 2a, prong one; step 2a, prong 2; and step 2b. Claim 7 does not recite any additional elements to consider under step 2A prong 2 and step 2B. Therefore, viewed as a whole, the claim does not provide meaningful limitations to transform the abstract idea into a patent eligible application of the abstract idea such that the claims amount to significantly more than the abstract idea itself. The claim is ineligible.
Independent claim 13 is directed to an article of manufacture at step 1, which is a statutory category. Claim 13 recites similar limitations as claim 1 and is rejected for the same reasons at step 2a, prong one; step 2a, prong 2; and step 2b. Claim 13 further recites: a non-transitory recording medium – which is treated as just an explicit “processor/computer” for storing and executing the operations and is treated under MPEP 2106.05f in the same manner as claim 1. Accordingly, this additional element is viewed as “apply it on a computer” at step 2a, prong 2 and step 2b.
Dependent claims 2, 6, 8, 12, 14, and 18 are not directed to any additional claim elements. Rather, these claims offer further descriptive functions of elements found in the independent claims and addressed above - such as wherein the hardware processor is used to: evaluate an achievement state by limiting the shift conditions to any one of the shift conditions of which the evaluated achievement states do not satisfy a predetermined criterion. In this case, the main functions are merely used to: collect data (e.g., specify limited shift conditions) and analyze the data (e.g., whether there’s an improvement when the shift conditions are limited). Those are functions that the courts have described as merely indicating a field of use or technological environment in which to apply a judicial exception (see MPEP 2106.05(h)). Mere instructions to apply an exception using a generic computer component cannot provide an inventive concept. Thus, nothing in the claim adds significantly more to the abstract idea. The claim is ineligible.
Dependent claims 4-5, 10-11, and 16-17 are directed to an additional element such as: a genetic algorithm. The genetic algorithm is merely used to generate a plurality of shifts based on set shift conditions (Paragraph 0040). Merely stating that the step is performed by a computer component (e.g., genetic algorithm) results in “apply it” on a computer (MPEP 2106.05f) being applicable at both Step 2A, Prong 2 and Step 2B. Mere instructions to apply an exception using a generic computer component cannot provide an inventive concept. Thus, nothing in the claim adds significantly more to the abstract idea. The claim is ineligible.
Dependent claim 19 is directed to additional element such as: an image forming apparatus. The image forming apparatus is merely used to form an image on a sheet and output the sheet (Paragraph 0053). Merely stating that the step is performed by a computer component results in “apply it” on a computer (MPEP 2106.05f) being applicable at both Step 2A, Prong 2 and Step 2B. Mere instructions to apply an exception using a generic computer component cannot provide an inventive concept. Further, instructions to display and/or arrange information in a graphical user interface may not be sufficient to show an improvement in computer-functionality (MPEP 2106.05a). Thus, nothing in the claim adds significantly more to the abstract idea. The claim is ineligible.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
The factual inquiries set forth in Graham v. John Deere Co., 383 U.S. 1, 148 USPQ 459 (1966), that are applied for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 1-2, 4-8, 10-14, and 16-19 are rejected under 35 U.S.C. 103 as being unpatentable over Yang (US 11,948,106 B1), in view of Birru et al. (US 2023/0360783 A1).
Regarding claim 1 (Currently Amended), Yang discloses a shift generation system comprising a hardware processor that accepts a shift condition and member information (Figure 2, item 208, processor; Column 3, lines 34-41, A system for simultaneous shift design and shift assignment transforms input data to determine an appropriate optimization problem. The optimization problem is concerned about making a set of related decisions in such a way that a set of given constraints are satisfied and a utility function (called the objective function) is optimized (e.g., either minimized or maximized depending on the type of the objective function); Column 4, lines 25-49, The scheduling engine determines the optimal schedule by … (4) transforming input data to determine a set of constraints using the decision variables wherein the set of constraints is built based on a set of conditions/restrictions that are to be respected while determining the optimal schedule (e.g., the labor demands need to be met, worker's availability and qualification should be respected, two shifts assigned to one worker cannot overlap, the budget should be respected, etc.); Column 6, lines 52-57, A generated shift candidate is subject to labor law legal constraints, union contract constraints, company policy constraints, etc. For example, a union contract can dictate that the duration of a shift has to be between four and nine hours, or a state law can require a half hour unpaid meal break for every 5 hours consecutive work; Examiner interprets “worker’s qualification” as the “member information.” Also, Examiner interprets the “union contract and state law” as the “shift conditions”), generates a shift for a member based on the shift conditions and the member information (Column 7, lines 20-45, The next step for the Scheduling Engine is to form the proper decision variables for the shift design and shift assignment problem at hand. The optimization algorithm provided by a MIP solver is the process of determining the proper values for the decision variables to take on in such a way that all relevant constraints are satisfied and the objective function is optimized (i.e., total schedule cost is minimized here. Thus the decision variables x.sub.i,j and y.sub.j together are able to describe what shape of the shifts that should be used to cover the labor demand (the shift design or shift selection) and which worker should work on which shift (the shift assignment)), evaluates an achievement state of the shift conditions for the generated shift (Column 8, lines 41-48, Within the set of solutions that satisfy all constraints, an optimal or near-optimal solution is determined with respect to an objective function (e.g., by minimizing or maximizing the objective function). For example, a typical objective function represents the total cost of the schedule, wherein the total cost comprises the real cost of paying the workers for the schedule and a soft penalty cost that measures the desirability of the schedule along many dimensions; Column 14, lines 29-35, If in the test of 616 a feasible solution is found, the quality of the solution will be assessed in 620. This can be done either objectively by using the pre-configured criteria (e.g., at least 95% of the demand is covered and spending is within 2% of the given budget, etc.) or manually judged by the user through the examining of the resulting schedule; Examiner interprets “minimize cost while covering 95% of the demand” as the “achievement state”), limits the shift conditions to two or more shift conditions including the shift condition for which the evaluation has been improved and the shift condition other than the shift condition for which the evaluation has been improved (Column 12, lines 6-14, FIG. 3D is a diagram illustrating an embodiment of penalty cost configurations that are used to influence the schedule quality. In the example, shown, a table of rows describing penalty cost associated with schedule consistency, a worker's timing preference, a worker's total weekly hours preference, a worker's role preference and penalty cost for leaving demand uncovered. By varying the penalty costs, different shapes of the final schedule can be obtained from the solver; Column 13, lines 59-66, The advantage of the system is that the shift candidate generation does not have to be perfect as long as it generates enough shift candidates (which is verifiable). It is the later optimization step that will select the right subset of the shift candidates to use in the final schedule so that all constraints (including the labor demand coverage constraints) are respected, and the total cost is minimized; Column 14, lines 29-40, If in the test of 616 a feasible solution is found, the quality of the solution will be assessed in 620. This can be done either objectively by using the pre-configured criteria (e.g., at least 95% of the demand is covered and spending is within 2% of the given budget, etc.) or manually judged by the user through the examining of the resulting schedule. If the schedule quality is not good enough (e.g., only 40% of workers' preferences are respected), the control is passed to 622 to adjust the corresponding penalty cost weight of a particular term in the objective function and new objective function is formed in 612 (as will be illustrated in FIG. 9 later); Examiner notes that shift is generated based on two shift conditions. In this case, the demand is the shift condition A and the budget is the shift condition B), predicts an effect of a change in the shift condition on the evaluation based on whether or not all the limited shift conditions are achieved (Column 8, lines 53-67, The soft penalty cost comprises, for example, a schedule consistency cost (e.g., a cost associated with assigning a worker an inconsistent week to week schedule), a worker below average skill proficiency cost (e.g., a cost associated with assigning a below average skilled worker to a shift), a worker day and time preference violation cost (e.g., a cost associated with assigning an employee to a shift outside of his/her days of the week or time of the day preferences), a worker weekly scheduled time preference violation cost (e.g., a cost associated with assigning a worker to a weekly scheduled time below or above of his/her weekly scheduled time preferences), a worker job role preference violation cost (e.g., a cost associated with assigning a worker to a shift associated with job role outside of his/her preferred role when the worker is qualified for multiple roles), and/or any other appropriate costs; Column 9, lines 4-39, With the decision variables defined, a set of constraints expressed in terms of the decision variables and an objective function (total cost) expressed in terms of the decision variable, the Scheduling Engine invokes a solver (a MIP solver) which determines the optimal value each decision variable should take on in such a way that all constraints are respected and the objective function is optimized (in this case the total cost is minimized). In the case that the solver does not find a solution for the given set of constraints, the Scheduling Engine will relax certain constraints and invoke the solver again with the relaxed problem. When the Scheduling Engine relaxes a constraint, it removes the constraint from the set of constraints sent to the solver and adds the amount of the constraint violation (expressed as a function of the decision variables) multiplied by a penalty cost factor to the objective function. For example, Σ.sub.jx.sub.i,j (β.sub.j−α.sub.j−b.sub.j)≤H.sub.i is the maximum weekly hours constraint for worker i where (β.sub.j−α.sub.j−b.sub.j) is the paid number of hours for shift candidate j and H.sub.i is the maximum weekly hours for worker i. To relax this constraint, in addition to removing it from the set of constraints, a term c.sub.i.sup.H max (0, Σ.sub.jx.sub.i,j(β.sub.j−α.sub.j−b.sub.j)−H.sub.i) is added to the objective function of the total cost, where c.sub.i.sup.H is the hourly penalty cost if the assigned total weekly shift hours is above the maximum weekly hours H.sub.i for worker i. When a constraint is relaxed, the solver will try to find a solution that respects the remaining constraints and at the same time minimizes the amount of the violation of the relaxed constraint due to the penalty cost term added to the objective function. A constraint that can be relaxed by the Scheduling Engine is called a soft constraint. The order in which the Scheduling Engine may relax varieties of soft constraints is configurable. For example, if it is more important to cover the labor demands than to conform to maximum weekly hours for a particular company, the maximum weekly hour constraints would be relaxed first before relaxing the labor demand coverage constraint; As stated in Paragraph 0047 of Applicant’s specification; Examiner notes that Yang evaluates whether the change in the shift condition resulted in a better percentage of the demand covered of the shift/schedule), and presents the … (Column 14, lines 35-45, If the schedule quality is not good enough (e.g., only 40% of workers' preferences are respected), the control is passed to 622 to adjust the corresponding penalty cost weight of a particular term in the objective function and new objective function is formed in 612 (as will be illustrated in FIG. 9 later). In the event that the schedule quality is good, the final schedule is presented to the user in 624. For any practical scheduling problem, once certain number of constraints are relaxed (such as demand coverage constraint and minimum weekly hour constraints), a feasible solution is always found).
Although Yang discloses a system that evaluates a predicted effect of a change in the shift condition and presents the generated shift (e.g., presents a schedule with a change in the shift condition), Yang does not specifically disclose wherein the system presents the predicted effect to the user.
However, Birru et al. discloses predicts an effect of a change in the shift conditions on the evaluation based on whether or not all the limited shift conditions are achieved, and presents the predicted effect (Paragraph 0100, Demand Forecasting: The model leverages predictive analytics and forecasting techniques to estimate future nursing service demand based on historical data patterns. It helps in determining the required staffing levels for different shifts and time frames; Paragraph 0103, Output Module: The output module presents the final schedules generated by the model module and provides relevant information to stakeholders. It includes components such as; Paragraph 0104, Nurse Schedules: The output module displays the finalized schedules for nursing staff, indicating the assigned shifts, working hours, and any special considerations; Paragraph 0106, Reporting and Analytics: The output module generates reports and analytics on key scheduling metrics such as staffing levels, overtime hours, shift coverage, and compliance with regulations. These reports help in evaluating the effectiveness of the scheduling process and identifying areas for improvement; Paragraph 0165, The evaluation module 612 assesses the fitness or quality of each schedule in the population. It uses an objective function or evaluation metric that quantifies how well a schedule satisfies the constraints and achieves the desired objectives. The evaluation module considers factors such as staffing levels, skill matching, nurse preferences, fairness, optimized demand assignments, and other relevant criteria. The objective function guides the selection process in the optimization module by assigning higher fitness values to schedules that better meet the defined objectives; Examiner interprets “changes in key performance metrics based on the predicted demand” as the “evaluation”).
It would have been obvious to one ordinary skill in the art before the effective filing date to modify the shift generation system, wherein an effect of a change in the shift condition is evaluated (e.g., change the minimum weekly hour constraint) of the invention of Yang to further specify wherein the effect of the change in the shift condition is presented to the user of the invention of Birru et al. because doing so would allow the system to generate reports and analytics on key scheduling metrics wherein the reports help in evaluating the effectiveness of the scheduling process and identifying areas for improvement (see Birru et al., Paragraphs 0106 & 0165). Further, the claimed invention is merely a combination of old elements, and in combination each element would have performed the same function as it did separately, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
Regarding claim 7 (Currently Amended), Yang discloses a shift generation method executed by a shift generation system that generates a shift for a member, the shift generation method comprising (Column 3, lines 34-41, A system for simultaneous shift design and shift assignment transforms input data to determine an appropriate optimization problem. The optimization problem is concerned about making a set of related decisions in such a way that a set of given constraints are satisfied and a utility function (called the objective function) is optimized (e.g., either minimized or maximized depending on the type of the objective function):
(a) accepting shift conditions and member information (Column 4, lines 25-49, The scheduling engine determines the optimal schedule by … (4) transforming input data to determine a set of constraints using the decision variables wherein the set of constraints is built based on a set of conditions/restrictions that are to be respected while determining the optimal schedule (e.g., the labor demands need to be met, worker's availability and qualification should be respected, two shifts assigned to one worker cannot overlap, the budget should be respected, etc.); Column 6, lines 52-57, A generated shift candidate is subject to labor law legal constraints, union contract constraints, company policy constraints, etc. For example, a union contract can dictate that the duration of a shift has to be between four and nine hours, or a state law can require a half hour unpaid meal break for every 5 hours consecutive work; Examiner interprets “worker’s qualification” as the “member information.” Also, Examiner interprets the “union contract and state law” as the “shift conditions”);
(b) generating the shift for the member based on the shift condition and the member information (Column 7, lines 20-45, The next step for the Scheduling Engine is to form the proper decision variables for the shift design and shift assignment problem at hand. The optimization algorithm provided by a MIP solver is the process of determining the proper values for the decision variables to take on in such a way that all relevant constraints are satisfied and the objective function is optimized (i.e., total schedule cost is minimized here. Thus the decision variables x.sub.i,j and y.sub.j together are able to describe what shape of the shifts that should be used to cover the labor demand (the shift design or shift selection) and which worker should work on which shift (the shift assignment));
(c) evaluating an achievement state of the shift condition for the generated shift (Column 8, lines 41-48, Within the set of solutions that satisfy all constraints, an optimal or near-optimal solution is determined with respect to an objective function (e.g., by minimizing or maximizing the objective function). For example, a typical objective function represents the total cost of the schedule, wherein the total cost comprises the real cost of paying the workers for the schedule and a soft penalty cost that measures the desirability of the schedule along many dimensions; Column 14, lines 29-35, If in the test of 616 a feasible solution is found, the quality of the solution will be assessed in 620. This can be done either objectively by using the pre-configured criteria (e.g., at least 95% of the demand is covered and spending is within 2% of the given budget, etc.) or manually judged by the user through the examining of the resulting schedule; Examiner interprets “minimize cost while covering 95% of the demand” as the “achievement state”);
limiting the shift conditions to two or more shift conditions including the shift condition for which the evaluation has been improved and the shift condition other than the shift condition for which the evaluation has been improved (Column 12, lines 6-14, FIG. 3D is a diagram illustrating an embodiment of penalty cost configurations that are used to influence the schedule quality. In the example, shown, a table of rows describing penalty cost associated with schedule consistency, a worker's timing preference, a worker's total weekly hours preference, a worker's role preference and penalty cost for leaving demand uncovered. By varying the penalty costs, different shapes of the final schedule can be obtained from the solver; Column 13, lines 59-66, The advantage of the system is that the shift candidate generation does not have to be perfect as long as it generates enough shift candidates (which is verifiable). It is the later optimization step that will select the right subset of the shift candidates to use in the final schedule so that all constraints (including the labor demand coverage constraints) are respected, and the total cost is minimized; Column 14, lines 29-40, If in the test of 616 a feasible solution is found, the quality of the solution will be assessed in 620. This can be done either objectively by using the pre-configured criteria (e.g., at least 95% of the demand is covered and spending is within 2% of the given budget, etc.) or manually judged by the user through the examining of the resulting schedule. If the schedule quality is not good enough (e.g., only 40% of workers' preferences are respected), the control is passed to 622 to adjust the corresponding penalty cost weight of a particular term in the objective function and new objective function is formed in 612 (as will be illustrated in FIG. 9 later); Examiner notes that shift is generated based on two shift conditions. In this case, the demand is the shift condition A and the budget is the shift condition B);
(d) predicting an effect of a change in the shift condition on the evaluation based on whether or not all the limited shift conditions are achieved (Column 8, lines 53-67, The soft penalty cost comprises, for example, a schedule consistency cost (e.g., a cost associated with assigning a worker an inconsistent week to week schedule), a worker below average skill proficiency cost (e.g., a cost associated with assigning a below average skilled worker to a shift), a worker day and time preference violation cost (e.g., a cost associated with assigning an employee to a shift outside of his/her days of the week or time of the day preferences), a worker weekly scheduled time preference violation cost (e.g., a cost associated with assigning a worker to a weekly scheduled time below or above of his/her weekly scheduled time preferences), a worker job role preference violation cost (e.g., a cost associated with assigning a worker to a shift associated with job role outside of his/her preferred role when the worker is qualified for multiple roles), and/or any other appropriate costs; Column 9, lines 4-39, With the decision variables defined, a set of constraints expressed in terms of the decision variables and an objective function (total cost) expressed in terms of the decision variable, the Scheduling Engine invokes a solver (a MIP solver) which determines the optimal value each decision variable should take on in such a way that all constraints are respected and the objective function is optimized (in this case the total cost is minimized). In the case that the solver does not find a solution for the given set of constraints, the Scheduling Engine will relax certain constraints and invoke the solver again with the relaxed problem. When the Scheduling Engine relaxes a constraint, it removes the constraint from the set of constraints sent to the solver and adds the amount of the constraint violation (expressed as a function of the decision variables) multiplied by a penalty cost factor to the objective function. For example, Σ.sub.jx.sub.i,j (β.sub.j−α.sub.j−b.sub.j)≤H.sub.i is the maximum weekly hours constraint for worker i where (β.sub.j−α.sub.j−b.sub.j) is the paid number of hours for shift candidate j and H.sub.i is the maximum weekly hours for worker i. To relax this constraint, in addition to removing it from the set of constraints, a term c.sub.i.sup.H max (0, Σ.sub.jx.sub.i,j(β.sub.j−α.sub.j−b.sub.j)−H.sub.i) is added to the objective function of the total cost, where c.sub.i.sup.H is the hourly penalty cost if the assigned total weekly shift hours is above the maximum weekly hours H.sub.i for worker i. When a constraint is relaxed, the solver will try to find a solution that respects the remaining constraints and at the same time minimizes the amount of the violation of the relaxed constraint due to the penalty cost term added to the objective function. A constraint that can be relaxed by the Scheduling Engine is called a soft constraint. The order in which the Scheduling Engine may relax varieties of soft constraints is configurable. For example, if it is more important to cover the labor demands than to conform to maximum weekly hours for a particular company, the maximum weekly hour constraints would be relaxed first before relaxing the labor demand coverage constraint);
and (e) presenting the … (Column 14, lines 35-45, If the schedule quality is not good enough (e.g., only 40% of workers' preferences are respected), the control is passed to 622 to adjust the corresponding penalty cost weight of a particular term in the objective function and new objective function is formed in 612 (as will be illustrated in FIG. 9 later). In the event that the schedule quality is good, the final schedule is presented to the user in 624. For any practical scheduling problem, once certain number of constraints are relaxed (such as demand coverage constraint and minimum weekly hour constraints), a feasible solution is always found).
Although Yang discloses predicting an effect of a change in the shift condition and presenting the generated shift (e.g., presenting a schedule with a change in the shift condition), Yang does not specifically disclose wherein the predicted effect is presented to the user.
However, Birru et al. discloses (d) predicting an effect of a change in the shift condition on the evaluation based on whether or not all the limited shift conditions are achieved; and (e) presenting the effect obtained in (d) (Paragraph 0100, Demand Forecasting: The model leverages predictive analytics and forecasting techniques to estimate future nursing service demand based on historical data patterns. It helps in determining the required staffing levels for different shifts and time frames; Paragraph 0103, Output Module: The output module presents the final schedules generated by the model module and provides relevant information to stakeholders. It includes components such as; Paragraph 0104, Nurse Schedules: The output module displays the finalized schedules for nursing staff, indicating the assigned shifts, working hours, and any special considerations; Paragraph 0106, Reporting and Analytics: The output module generates reports and analytics on key scheduling metrics such as staffing levels, overtime hours, shift coverage, and compliance with regulations. These reports help in evaluating the effectiveness of the scheduling process and identifying areas for improvement; Paragraph 0165, The evaluation module 612 assesses the fitness or quality of each schedule in the population. It uses an objective function or evaluation metric that quantifies how well a schedule satisfies the constraints and achieves the desired objectives. The evaluation module considers factors such as staffing levels, skill matching, nurse preferences, fairness, optimized demand assignments, and other relevant criteria. The objective function guides the selection process in the optimization module by assigning higher fitness values to schedules that better meet the defined objectives; Examiner interprets “changes in key performance metrics based on the predicted demand” as the “evaluation”).
It would have been obvious to one ordinary skill in the art before the effective filing date to modify the shift generation system, wherein an effect of a change in the shift condition is evaluated (e.g., change the minimum weekly hour constraint) of the invention of Yang to further specify wherein the effect of the change in the shift condition is presented to the user of the invention of Birru et al. because doing so would allow the system to generate reports and analytics on key scheduling metrics wherein the reports help in evaluating the effectiveness of the scheduling process and identifying areas for improvement (see Birru et al., Paragraphs 0106 & 0165). Further, the claimed invention is merely a combination of old elements, and in combination each element would have performed the same function as it did separately, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
Regarding claim 13 (Currently Amended), Yang discloses a non-transitory recording medium storing a computer-readable shift generation program for causing a computer to execute processing comprising (Abstract, A system includes one or more processors; and at least one non-transitory machine-readable storage media comprising instructions which, when executed by the one or more processors, cause the one or more processors to; Column 3, lines 34-41, A system for simultaneous shift design and shift assignment transforms input data to determine an appropriate optimization problem. The optimization problem is concerned about making a set of related decisions in such a way that a set of given constraints are satisfied and a utility function (called the objective function) is optimized (e.g., either minimized or maximized depending on the type of the objective function):
(a) accepting a shift conditions and member information (Column 4, lines 25-49, The scheduling engine determines the optimal schedule by … (4) transforming input data to determine a set of constraints using the decision variables wherein the set of constraints is built based on a set of conditions/restrictions that are to be respected while determining the optimal schedule (e.g., the labor demands need to be met, worker's availability and qualification should be respected, two shifts assigned to one worker cannot overlap, the budget should be respected, etc.); Column 6, lines 52-57, A generated shift candidate is subject to labor law legal constraints, union contract constraints, company policy constraints, etc. For example, a union contract can dictate that the duration of a shift has to be between four and nine hours, or a state law can require a half hour unpaid meal break for every 5 hours consecutive work; Examiner interprets “worker’s qualification” as the “member information.” Also, Examiner interprets the “union contract and state law” as the “shift conditions”);
(b) generating a shift for a member based on the shift condition and the member information (Column 7, lines 20-45, The next step for the Scheduling Engine is to form the proper decision variables for the shift design and shift assignment problem at hand. The optimization algorithm provided by a MIP solver is the process of determining the proper values for the decision variables to take on in such a way that all relevant constraints are satisfied and the objective function is optimized (i.e., total schedule cost is minimized here. Thus the decision variables x.sub.i,j and y.sub.j together are able to describe what shape of the shifts that should be used to cover the labor demand (the shift design or shift selection) and which worker should work on which shift (the shift assignment));
(c) evaluating an achievement state of the shift condition for the generated shift (Column 8, lines 41-48, Within the set of solutions that satisfy all constraints, an optimal or near-optimal solution is determined with respect to an objective function (e.g., by minimizing or maximizing the objective function). For example, a typical objective function represents the total cost of the schedule, wherein the total cost comprises the real cost of paying the workers for the schedule and a soft penalty cost that measures the desirability of the schedule along many dimensions; Column 14, lines 29-35, If in the test of 616 a feasible solution is found, the quality of the solution will be assessed in 620. This can be done either objectively by using the pre-configured criteria (e.g., at least 95% of the demand is covered and spending is within 2% of the given budget, etc.) or manually judged by the user through the examining of the resulting schedule; Examiner interprets “minimize cost while covering 95% of the demand” as the “achievement state”);
limiting the shift conditions to two or more shift conditions including the shift condition for which the evaluation has been improved and the shift condition other than the shift condition for which the evaluation has been improved (Column 12, lines 6-14, FIG. 3D is a diagram illustrating an embodiment of penalty cost configurations that are used to influence the schedule quality. In the example, shown, a table of rows describing penalty cost associated with schedule consistency, a worker's timing preference, a worker's total weekly hours preference, a worker's role preference and penalty cost for leaving demand uncovered. By varying the penalty costs, different shapes of the final schedule can be obtained from the solver; Column 13, lines 59-66, The advantage of the system is that the shift candidate generation does not have to be perfect as long as it generates enough shift candidates (which is verifiable). It is the later optimization step that will select the right subset of the shift candidates to use in the final schedule so that all constraints (including the labor demand coverage constraints) are respected, and the total cost is minimized; Column 14, lines 29-40, If in the test of 616 a feasible solution is found, the quality of the solution will be assessed in 620. This can be done either objectively by using the pre-configured criteria (e.g., at least 95% of the demand is covered and spending is within 2% of the given budget, etc.) or manually judged by the user through the examining of the resulting schedule. If the schedule quality is not good enough (e.g., only 40% of workers' preferences are respected), the control is passed to 622 to adjust the corresponding penalty cost weight of a particular term in the objective function and new objective function is formed in 612 (as will be illustrated in FIG. 9 later); Examiner notes that shift is generated based on two shift conditions. In this case, the demand is the shift condition A and the budget is the shift condition B);
(d) predicting an effect of a change in the shift condition on the evaluation based on whether or not all the limited shift conditions are achieved (Column 8, lines 53-67, The soft penalty cost comprises, for example, a schedule consistency cost (e.g., a cost associated with assigning a worker an inconsistent week to week schedule), a worker below average skill proficiency cost (e.g., a cost associated with assigning a below average skilled worker to a shift), a worker day and time preference violation cost (e.g., a cost associated with assigning an employee to a shift outside of his/her days of the week or time of the day preferences), a worker weekly scheduled time preference violation cost (e.g., a cost associated with assigning a worker to a weekly scheduled time below or above of his/her weekly scheduled time preferences), a worker job role preference violation cost (e.g., a cost associated with assigning a worker to a shift associated with job role outside of his/her preferred role when the worker is qualified for multiple roles), and/or any other appropriate costs; Column 9, lines 4-39, With the decision variables defined, a set of constraints expressed in terms of the decision variables and an objective function (total cost) expressed in terms of the decision variable, the Scheduling Engine invokes a solver (a MIP solver) which determines the optimal value each decision variable should take on in such a way that all constraints are respected and the objective function is optimized (in this case the total cost is minimized). In the case that the solver does not find a solution for the given set of constraints, the Scheduling Engine will relax certain constraints and invoke the solver again with the relaxed problem. When the Scheduling Engine relaxes a constraint, it removes the constraint from the set of constraints sent to the solver and adds the amount of the constraint violation (expressed as a function of the decision variables) multiplied by a penalty cost factor to the objective function. For example, Σ.sub.jx.sub.i,j (β.sub.j−α.sub.j−b.sub.j)≤H.sub.i is the maximum weekly hours constraint for worker i where (β.sub.j−α.sub.j−b.sub.j) is the paid number of hours for shift candidate j and H.sub.i is the maximum weekly hours for worker i. To relax this constraint, in addition to removing it from the set of constraints, a term c.sub.i.sup.H max (0, Σ.sub.jx.sub.i,j(β.sub.j−α.sub.j−b.sub.j)−H.sub.i) is added to the objective function of the total cost, where c.sub.i.sup.H is the hourly penalty cost if the assigned total weekly shift hours is above the maximum weekly hours H.sub.i for worker i. When a constraint is relaxed, the solver will try to find a solution that respects the remaining constraints and at the same time minimizes the amount of the violation of the relaxed constraint due to the penalty cost term added to the objective function. A constraint that can be relaxed by the Scheduling Engine is called a soft constraint. The order in which the Scheduling Engine may relax varieties of soft constraints is configurable. For example, if it is more important to cover the labor demands than to conform to maximum weekly hours for a particular company, the maximum weekly hour constraints would be relaxed first before relaxing the labor demand coverage constraint);
and (e) presenting the … (Column 14, lines 35-45, If the schedule quality is not good enough (e.g., only 40% of workers' preferences are respected), the control is passed to 622 to adjust the corresponding penalty cost weight of a particular term in the objective function and new objective function is formed in 612 (as will be illustrated in FIG. 9 later). In the event that the schedule quality is good, the final schedule is presented to the user in 624. For any practical scheduling problem, once certain number of constraints are relaxed (such as demand coverage constraint and minimum weekly hour constraints), a feasible solution is always found).
Although Yang discloses predicting an effect of a change in the shift condition and presenting the generated shift (e.g., presenting a schedule with a change in the shift condition), Yang does not specifically disclose wherein the predicted effect is presented to the user.
However, Birru et al. discloses (d) predicting an effect of a change in the shift condition on the evaluation based on whether or not all the limited shift conditions are achieved; and (e) presenting the effect obtained in (d) (Paragraph 0100, Demand Forecasting: The model leverages predictive analytics and forecasting techniques to estimate future nursing service demand based on historical data patterns. It helps in determining the required staffing levels for different shifts and time frames; Paragraph 0103, Output Module: The output module presents the final schedules generated by the model module and provides relevant information to stakeholders. It includes components such as; Paragraph 0104, Nurse Schedules: The output module displays the finalized schedules for nursing staff, indicating the assigned shifts, working hours, and any special considerations; Paragraph 0106, Reporting and Analytics: The output module generates reports and analytics on key scheduling metrics such as staffing levels, overtime hours, shift coverage, and compliance with regulations. These reports help in evaluating the effectiveness of the scheduling process and identifying areas for improvement; Paragraph 0165, The evaluation module 612 assesses the fitness or quality of each schedule in the population. It uses an objective function or evaluation metric that quantifies how well a schedule satisfies the constraints and achieves the desired objectives. The evaluation module considers factors such as staffing levels, skill matching, nurse preferences, fairness, optimized demand assignments, and other relevant criteria. The objective function guides the selection process in the optimization module by assigning higher fitness values to schedules that better meet the defined objectives; Examiner interprets “changes in key performance metrics based on the predicted demand” as the “evaluation”).
It would have been obvious to one ordinary skill in the art before the effective filing date to modify the shift generation system, wherein an effect of a change in the shift condition is evaluated (e.g., change the minimum weekly hour constraint) of the invention of Yang to further specify wherein the effect of the change in the shift condition is presented to the user of the invention of Birru et al. because doing so would allow the system to generate reports and analytics on key scheduling metrics wherein the reports help in evaluating the effectiveness of the scheduling process and identifying areas for improvement (see Birru et al., Paragraphs 0106 & 0165). Further, the claimed invention is merely a combination of old elements, and in combination each element would have performed the same function as it did separately, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
Regarding claims 2, 8, and 14 (Original), which are dependent of claims 1, 7, and 13, the combination of Yang and Birru et al. discloses all the limitations in claims 1, 7, and 13. Yang further discloses wherein the hardware processor evaluates an achievement state for each of shift conditions, and predicts the effect on the evaluation based on whether or not the evaluation is improved by limiting the shift conditions to any one of the shift conditions of which the evaluated achievement states do not satisfy a predetermined criterion (Column 8, lines 53-67, The soft penalty cost comprises, for example, a schedule consistency cost (e.g., a cost associated with assigning a worker an inconsistent week to week schedule), a worker below average skill proficiency cost (e.g., a cost associated with assigning a below average skilled worker to a shift), a worker day and time preference violation cost (e.g., a cost associated with assigning an employee to a shift outside of his/her days of the week or time of the day preferences), a worker weekly scheduled time preference violation cost (e.g., a cost associated with assigning a worker to a weekly scheduled time below or above of his/her weekly scheduled time preferences), a worker job role preference violation cost (e.g., a cost associated with assigning a worker to a shift associated with job role outside of his/her preferred role when the worker is qualified for multiple roles), and/or any other appropriate costs; Column 9, lines 4-39, With the decision variables defined, a set of constraints expressed in terms of the decision variables and an objective function (total cost) expressed in terms of the decision variable, the Scheduling Engine invokes a solver (a MIP solver) which determines the optimal value each decision variable should take on in such a way that all constraints are respected and the objective function is optimized (in this case the total cost is minimized). In the case that the solver does not find a solution for the given set of constraints, the Scheduling Engine will relax certain constraints and invoke the solver again with the relaxed problem. When the Scheduling Engine relaxes a constraint, it removes the constraint from the set of constraints sent to the solver and adds the amount of the constraint violation (expressed as a function of the decision variables) multiplied by a penalty cost factor to the objective function. For example, Σ.sub.jx.sub.i,j (β.sub.j−α.sub.j−b.sub.j)≤H.sub.i is the maximum weekly hours constraint for worker i where (β.sub.j−α.sub.j−b.sub.j) is the paid number of hours for shift candidate j and H.sub.i is the maximum weekly hours for worker i. To relax this constraint, in addition to removing it from the set of constraints, a term c.sub.i.sup.H max (0, Σ.sub.jx.sub.i,j(β.sub.j−α.sub.j−b.sub.j)−H.sub.i) is added to the objective function of the total cost, where c.sub.i.sup.H is the hourly penalty cost if the assigned total weekly shift hours is above the maximum weekly hours H.sub.i for worker i. When a constraint is relaxed, the solver will try to find a solution that respects the remaining constraints and at the same time minimizes the amount of the violation of the relaxed constraint due to the penalty cost term added to the objective function. A constraint that can be relaxed by the Scheduling Engine is called a soft constraint. The order in which the Scheduling Engine may relax varieties of soft constraints is configurable. For example, if it is more important to cover the labor demands than to conform to maximum weekly hours for a particular company, the maximum weekly hour constraints would be relaxed first before relaxing the labor demand coverage constraint).
Regarding claims 4, 10, and 16 (Original), which are dependent of claims 1, 7, and 13, the combination of Yang and Birru et al. discloses all the limitations in claims 1, 7, and 13. Yang further discloses wherein the hardware processor generates the shift using a … algorithm (The optimization algorithm provided by a MIP solver is the process of determining the proper values for the decision variables to take on in such a way that all relevant constraints are satisfied and the objective function is optimized (i.e., total schedule cost is minimized here)).
Although Yang discloses wherein the hardware processor generates the shift using an optimization algorithm, Yang does not specifically disclose wherein the optimization algorithm is a genetic algorithm.
However, Birru et al. discloses wherein the hardware processor generates the shift using a genetic algorithm (Paragraph 0158, In an example embodiment, the genetic algorithm (GA) 302 can be utilized to generate optimal scheduling of nursing services in a hospital setting. The process involves three main components: a schedule initializer 602, a schedule optimization 604 module, and an evaluation 606 module. Mentioned below are each of these components contributes to producing optimal scheduling).
It would have been obvious to one ordinary skill in the art before the effective filing date to modify the shift generation system, wherein the generated shift is generated using an algorithm (e.g., MIP solver) of the invention of Yang to further specify wherein the optimization algorithm is a genetic algorithm of the invention of Birru et al. because doing so would allow the system to generate optimal scheduling using a genetic algorithm (see Birru et al., Paragraph 0158). Further, the claimed invention is merely a combination of old elements, and in combination each element would have performed the same function as it did separately, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
Regarding claims 5, 11, and 17 (Original), which are dependent of claims 2, 8, and 14, the combination of Yang and Birru et al. discloses all the limitations in claims 2, 8, and 14. Yang further discloses wherein, during the generation of the shift for each generation using a … algorithm, in response to detection of the shift condition of which the achievement state does not satisfy the predetermined criterion … of the generation of the shift, the hardware processor generates the shift based on the detected shift condition, and predicts whether or not the evaluation is improved based on the shift generated based on the detected shift condition (Column 8, lines 53-67, The soft penalty cost comprises, for example, a schedule consistency cost (e.g., a cost associated with assigning a worker an inconsistent week to week schedule), a worker below average skill proficiency cost (e.g., a cost associated with assigning a below average skilled worker to a shift), a worker day and time preference violation cost (e.g., a cost associated with assigning an employee to a shift outside of his/her days of the week or time of the day preferences), a worker weekly scheduled time preference violation cost (e.g., a cost associated with assigning a worker to a weekly scheduled time below or above of his/her weekly scheduled time preferences), a worker job role preference violation cost (e.g., a cost associated with assigning a worker to a shift associated with job role outside of his/her preferred role when the worker is qualified for multiple roles), and/or any other appropriate costs; Column 9, lines 4-39, With the decision variables defined, a set of constraints expressed in terms of the decision variables and an objective function (total cost) expressed in terms of the decision variable, the Scheduling Engine invokes a solver (a MIP solver) which determines the optimal value each decision variable should take on in such a way that all constraints are respected and the objective function is optimized (in this case the total cost is minimized). In the case that the solver does not find a solution for the given set of constraints, the Scheduling Engine will relax certain constraints and invoke the solver again with the relaxed problem. When the Scheduling Engine relaxes a constraint, it removes the constraint from the set of constraints sent to the solver and adds the amount of the constraint violation (expressed as a function of the decision variables) multiplied by a penalty cost factor to the objective function. For example, Σ.sub.jx.sub.i,j (β.sub.j−α.sub.j−b.sub.j)≤H.sub.i is the maximum weekly hours constraint for worker i where (β.sub.j−α.sub.j−b.sub.j) is the paid number of hours for shift candidate j and H.sub.i is the maximum weekly hours for worker i. To relax this constraint, in addition to removing it from the set of constraints, a term c.sub.i.sup.H max (0, Σ.sub.jx.sub.i,j(β.sub.j−α.sub.j−b.sub.j)−H.sub.i) is added to the objective function of the total cost, where c.sub.i.sup.H is the hourly penalty cost if the assigned total weekly shift hours is above the maximum weekly hours H.sub.i for worker i. When a constraint is relaxed, the solver will try to find a solution that respects the remaining constraints and at the same time minimizes the amount of the violation of the relaxed constraint due to the penalty cost term added to the objective function. A constraint that can be relaxed by the Scheduling Engine is called a soft constraint. The order in which the Scheduling Engine may relax varieties of soft constraints is configurable. For example, if it is more important to cover the labor demands than to conform to maximum weekly hours for a particular company, the maximum weekly hour constraints would be relaxed first before relaxing the labor demand coverage constraint; Column 14, lines 29-35, If in the test of 616 a feasible solution is found, the quality of the solution will be assessed in 620. This can be done either objectively by using the pre-configured criteria (e.g., at least 95% of the demand is covered and spending is within 2% of the given budget, etc.) or manually judged by the user through the examining of the resulting schedule).
Although Yang discloses wherein the hardware processor generates the shift using an optimization algorithm, Yang does not specifically disclose wherein the optimization algorithm is a genetic algorithm.
However, Birru et al. discloses wherein, during the generation of the shift for each generation using a genetic algorithm, in response to detection of the shift condition of which the achievement state does not satisfy the predetermined criterion even after lapse of a predetermined time from start of the generation of the shift (Paragraph 0166, The genetic algorithm 304 iteratively repeats the steps of selection, crossover, mutation, and evaluation until a termination condition is met. This condition can be a specific number of generations, reaching a desired fitness threshold, or a predefined computational time limit. At the end of the optimization process, the genetic algorithm produces one or more optimal schedules that satisfy the defined constraints and maximize the defined objectives), the hardware processor generates the shift based on the detected shift condition, and predicts whether or not the evaluation is improved based on the shift generated based on the detected shift condition (Paragraph 0021, Through successive iterations of selection, crossover, and mutation, the optimization module gradually refines the population, favoring schedules that better adhere to the soft constraints and exhibit improved fitness. This optimization process aims to find schedules that maximize desirable criteria while satisfying the necessary constraints; Paragraph 0288, Adaptation to Changing Conditions: In the context of nursing services scheduling, conditions and requirements may change over time. By repeating the mutation and crossover operations, the genetic algorithm can adapt to these changes and adjust the population of candidate solutions accordingly. For example, if there are changes in nurse availability or patient demand, the algorithm can explore new possibilities through mutation and generate offspring with adjusted schedules via crossover).
It would have been obvious to one ordinary skill in the art before the effective filing date to modify the shift generation system, wherein the generated shift is generated using an algorithm (e.g., MIP solver) of the invention of Yang to further specify wherein the optimization algorithm is a genetic algorithm of the invention of Birru et al. because doing so would allow the system to generate optimal scheduling using a genetic algorithm (see Birru et al., Paragraph 0158). Further, the claimed invention is merely a combination of old elements, and in combination each element would have performed the same function as it did separately, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
Regarding claims 6, 12, and 18 (Original), which are dependent of claims 2, 8, and 14, the combination of Yang and Birru et al. discloses all the limitations in claims 2, 8, and 14. Yang further discloses wherein the hardware processor generates the shift based on the plurality of shift conditions, generates, in response to acceptance of one of the plurality of shift conditions, the shift based on the one of the plurality of shift conditions, and predicts whether or not the evaluation is improved based on the shift generated based on the one of the plurality of shift conditions (Column 8, lines 53-67, The soft penalty cost comprises, for example, a schedule consistency cost (e.g., a cost associated with assigning a worker an inconsistent week to week schedule), a worker below average skill proficiency cost (e.g., a cost associated with assigning a below average skilled worker to a shift), a worker day and time preference violation cost (e.g., a cost associated with assigning an employee to a shift outside of his/her days of the week or time of the day preferences), a worker weekly scheduled time preference violation cost (e.g., a cost associated with assigning a worker to a weekly scheduled time below or above of his/her weekly scheduled time preferences), a worker job role preference violation cost (e.g., a cost associated with assigning a worker to a shift associated with job role outside of his/her preferred role when the worker is qualified for multiple roles), and/or any other appropriate costs; Column 9, lines 4-39, With the decision variables defined, a set of constraints expressed in terms of the decision variables and an objective function (total cost) expressed in terms of the decision variable, the Scheduling Engine invokes a solver (a MIP solver) which determines the optimal value each decision variable should take on in such a way that all constraints are respected and the objective function is optimized (in this case the total cost is minimized). In the case that the solver does not find a solution for the given set of constraints, the Scheduling Engine will relax certain constraints and invoke the solver again with the relaxed problem. When the Scheduling Engine relaxes a constraint, it removes the constraint from the set of constraints sent to the solver and adds the amount of the constraint violation (expressed as a function of the decision variables) multiplied by a penalty cost factor to the objective function. For example, Σ.sub.jx.sub.i,j (β.sub.j−α.sub.j−b.sub.j)≤H.sub.i is the maximum weekly hours constraint for worker i where (β.sub.j−α.sub.j−b.sub.j) is the paid number of hours for shift candidate j and H.sub.i is the maximum weekly hours for worker i. To relax this constraint, in addition to removing it from the set of constraints, a term c.sub.i.sup.H max (0, Σ.sub.jx.sub.i,j(β.sub.j−α.sub.j−b.sub.j)−H.sub.i) is added to the objective function of the total cost, where c.sub.i.sup.H is the hourly penalty cost if the assigned total weekly shift hours is above the maximum weekly hours H.sub.i for worker i. When a constraint is relaxed, the solver will try to find a solution that respects the remaining constraints and at the same time minimizes the amount of the violation of the relaxed constraint due to the penalty cost term added to the objective function. A constraint that can be relaxed by the Scheduling Engine is called a soft constraint. The order in which the Scheduling Engine may relax varieties of soft constraints is configurable. For example, if it is more important to cover the labor demands than to conform to maximum weekly hours for a particular company, the maximum weekly hour constraints would be relaxed first before relaxing the labor demand coverage constraint; Column 14, lines 29-35, If in the test of 616 a feasible solution is found, the quality of the solution will be assessed in 620. This can be done either objectively by using the pre-configured criteria (e.g., at least 95% of the demand is covered and spending is within 2% of the given budget, etc.) or manually judged by the user through the examining of the resulting schedule; Examiner notes that Yang evaluates whether the change in the shift condition resulted in a better percentage of the demand covered of the shift/schedule).
Regarding claim 19 (New), which is dependent of claim 1, the combination of Yang and DeSilva et al. discloses all the limitations in claim 1. Although Yang further discloses a system that generates a shift for a member based on the shift conditions and the member information (see Figure 5 and related text in Column 7, lines 20-45, The next step for the Scheduling Engine is to form the proper decision variables for the shift design and shift assignment problem at hand), Yang does not specifically disclose the image forming apparatus.
However, Birru et al. discloses wherein the hardware processor presents the generated shift by transmitting the generated shift to an image forming apparatus and forming an image on a sheet (Paragraph 0083, The machine 200 may include further optional aspects such as a graphics display unit 210 comprising any type of display; Paragraph 0103, Output Module: The output module presents the final schedules generated by the model module and provides relevant information to stakeholders. It includes components such as; Paragraph 0104, Nurse Schedules: The output module displays the finalized schedules for nursing staff, indicating the assigned shifts, working hours, and any special considerations; Paragraph 0106, Reporting and Analytics: The output module generates reports and analytics on key scheduling metrics such as staffing levels, overtime hours, shift coverage, and compliance with regulations. These reports help in evaluating the effectiveness of the scheduling process and identifying areas for improvement; Paragraph 0165, The evaluation module 612 assesses the fitness or quality of each schedule in the population. It uses an objective function or evaluation metric that quantifies how well a schedule satisfies the constraints and achieves the desired objectives. The evaluation module considers factors such as staffing levels, skill matching, nurse preferences, fairness, optimized demand assignments, and other relevant criteria. The objective function guides the selection process in the optimization module by assigning higher fitness values to schedules that better meet the defined objectives; Examiner notes that a graphics display unit is responsible for rendering and displaying images on a screen).
It would have been obvious to one ordinary skill in the art before the effective filing date to modify the shift generation system, wherein the generated shift is generated using an algorithm (e.g., MIP solver) of the invention of Yang to further specify wherein the wherein the shift is outputted by using an image forming apparatus of the invention of Birru et al. because doing so would allow the system to use a graphics display unit to present the final schedule (see Birru et al., Paragraphs 0083 & 0103). Further, the claimed invention is merely a combination of old elements, and in combination each element would have performed the same function as it did separately, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant’s disclosure.
Nakajima (JP H0969050 A) – discloses a scheduling method using a genetic algorithm, and more particularly to a scheduling method in which a group of individuals combine a plurality of crossover methods and use them simultaneously to perform a genetic operation (see at least background of the invention).
Morris (US 8,583,467 B1) – discloses multiple constraints can be used for each level of optimization. Each constraint can be scaled by a weight assigned to the constraint. For example, optimization can be performed to maximize resource utilization and minimize completion time. In addition, because different sets of scenarios can be generated depending on the order in which constraints are applied, a user can specify a specific order for applying the constraints (see at least Column 9, lines 55-62).
DeSilva et al. (US 2005/0004828 A1) – discloses scheduling constraints and parameters are input by the user in order to run scenarios on the effect of changes to constraints, such as a change to shift structures (see at least Paragraph 0098).
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to MARJORIE PUJOLS-CRUZ whose telephone number is (571)272-4668. The examiner can normally be reached Mon-Thru 7:30 AM - 5:00 PM.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Patricia H Munson can be reached at (571)270-5396. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/M.P./Examiner, Art Unit 3624 /PATRICIA H MUNSON/Supervisory Patent Examiner, Art Unit 3624