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 .
This office action is responsive to the applicant’s arguments filed on 12/09/2025.
Claims 1-7, 10, 11, and 13-16 are pending.
Claims 1 and 15-16 are amended. Claim 12 has been canceled.
Response to Arguments
Regarding claim objections:
The objection has been updated in view of the amendments.
Regarding rejections under 35 USC § 101:
Applicant's arguments filed on 12/09/2025 have been fully considered but they are not persuasive.
With respect to the remarks, pages 17-19, regarding technological improvement, the Examiner respectfully disagrees.
To clarify, it is important to note that the judicial exception alone cannot provide the improvement. The improvement can be provided by one or more additional elements. See MPEP § 2106.05(a). Additionally, as discussed in MPEP 2106.05(a)(II), for improvements to technology or technical fields, “an improvement in the abstract idea itself ... is not an improvement in technology.” The improvement must be provided by additional elements.
Firstly, the remarks alleges that the alleged technical improvement is in detecting an abnormality. Detecting an abnormality amounts to a mental process covering a mental judgment. Secondly, the limitations “execute a pseudo model that is a model simulating an on-site process that is at least part of the OT-side process, the on-site process including one or more tasks that start and finish for each of one or more targets, and execute the IT-side process, based on pseudo execution data that is data obtained by execution of the pseudo model[ ... ], wherein the IT-side process executed based on the generated pseudo execution data includes generating and display a manufacturing dashboard having a first axis indicating time, a second axis corresponding to the arrangement and start time and end times of each task of the macro task, a line segment indicating where a delay occurs highlighted and points indicating the start time and end times with intervening points indicating values estimated based on the pseudo execution data” and “input the pseudo execution data into a machine learning model learned based on data as a result of execution of a normal on-site process, execute the machine learning model to determine whether the pseudo execution data includes a value indicating an abnormality, and upon determining, based on a result of the execution of the machine learning model that the pseudo execution data includes the value indicating the abnormality, output a notification of the abnormality” the remarks alleges as providing improvement do not provide improvement because, as explained in the 101 rejection, they recite abstract ideas or amount to additional elements that do not provide meaningful limitation to the recited judicial exception.
Regarding rejections under 35 USC § 103:
Applicant’s arguments regarding the 103 rejection are based on newly amended subject matter. Therefore, all arguments are addressed in the 103 rejection of the claims below.
Claim Objections
Claims 1, 15, and 16 are objected to because of the following informalities: there should be a comma in between the words “model” and “that” in the limitation “upon determining, based on a result of the execution of the machine learning model that the pseudo execution data includes the value indicating the abnormality”. Appropriate correction is required.
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-7, 10, 11, and 13-16 are rejected under 35 U.S.C. 101 because the claimed invention is directed to abstract ideas without significantly more.
Step 1: Claims 1-7, 10, 11, 13, and 14 are directed to a system, which is a machine, falling under a statutory category of invention. Claim 15 is directed to a method, which is a process, falling under a statutory category of invention. Claim 16 is directed to a non-transitory computer readable storage medium, which is a manufacture, falling under a statutory category of invention. Therefore, claims 1-7, 10, 11, and 13-16 are directed to patent eligible categories of invention.
Regarding claim 1:
Step 2A Prong 1: The following limitations recite abstract ideas:
The limitation “execute a pseudo model that is a model simulating an on-site process that is at least part of the OT-side process” under broadest reasonable interpretation covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper, but for the recitation of a computer. Execution of a pseudo model is described by the below limitations from the limitation reciting “in execution of the pseudo model ….” Therefore, execution of a pseudo model covers a mental process. See below for a detailed analysis.
The limitations “the on-site process including one or more tasks that start and finish for each of one or more targets” and “wherein the pseudo model includes the tasks constituting a macro task for each of the one or more targets” merely further limit the on-site process and the pseudo model recited in the previous limitation, and therefore the same analysis as the previous limitation is applicable, falling under a mental process.
The limitation “in execution of the pseudo model … (A) identify a delay absent group, and a delay present group” under broadest reasonable interpretation covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper. For example, identifying a delay absent group and a delay present group covers mentally observing and distinguishing such groups.
The limitations “the delay absent group is one or more standard series that are sequential in a time series manner, the delay present group is one or more non-standard series that are sequential in a time series manner, for each target, the series is a set of times that include a given start time and a given completion time of the macro task, the standard series is a series where a difference between a standard time period of the macro task and a pseudo time period is equal to or less than a certain value, the standard time period is a standard value between the start time and the completion time of the macro task, the pseudo time period is a difference between the given start time and the given completion time of the macro task” further limit the delay absent group and the delay present group recited in the previous limitation and therefore is a mental process. Furthermore, calculating a difference between values and determining whether or not the difference value is equal to or less than a certain value can be performed mentally or with a pen and paper. This also amounts to mathematical concepts. For example, calculating a difference value involves mathematical calculations, formulas, and/or relationships. Furthermore, specification para [0159] discloses an equation for calculating the difference between a standard time period of the macro task and a pseudo time period.
The limitation “(B) based on a basic series among the one or more standard series, for each of the one or more non-standard series in the delay present group, estimate a likely delay of the non-standard series, the basic series is a series where a difference between the standard time period and the pseudo time period of the macro task is shortest, and the start time and the completion time of each of the tasks is estimated based on the standard time of each of the tasks in the macro task” under broadest reasonable interpretation covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper. For example, estimating a likely delay covers mentally observing the start and completion times and mentally calculating the delay. This also amounts to mathematical concepts in view of specification para [0159]: “The pseudo model executor 342 calculates the basic series (fastest likely pattern), from at least one of the value of G t(k)-R t(k) and the given standard time period of each step i. For example, the basic series is a series which has the shortest difference between the standard time period of the macro step and the pseudo time period and whose start time and completion time for each macro step element are estimated on the basis of the standard time period of each macro step element (arrangement or step) of the macro step.”
The limitation “(C) generate the pseudo execution data based on a result of estimation of (B)” under broadest reasonable interpretation covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper. Specification at paragraph [0104] discloses that the pseudo execution data is a set of information that includes information such as the start time, finish time, presence or absence of an error, and the content of the error, etc. Fig. 20 also shows that pseudo execution data is simply a set of information organized in a way that shows the relations between different information. Therefore, generating pseudo execution data based on the estimation result covers mentally observing such information and the estimation result, and summarizing or organizing such information either mentally or with a paper and pencil. This also amounts to mathematical concepts for the similar reasons as explained above, for the generation of the pseudo execution data involves mathematical calculations, formulas, and/or relationships as explained above.
The limitation “generating … a manufacturing dashboard having a first axis indicating time, a second axis corresponding to the arrangement and start time and end times of each task of the macro task, a line segment indicating where a delay occurs highlighted and points indicating the start time and end times with intervening points indicating values estimated based on the pseudo execution data” under broadest reasonable interpretation covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper. For example, once the necessary data including start time, end time, delay, etc. are determined, a person can plot these data on a chart or graph, draw line segments, and highlight desired data. This can be performed mentally or with a pen and paper.
Step 2A Prong 2: The following limitations recite additional elements:
“at least one processor which when executing at least one program configures the at least one processor to …”
“the at least one processor is configured to: …”
“execute the IT-side process, based on pseudo execution data that is data obtained by execution of the pseudo model”
“wherein the IT-side process executed based on the generated pseudo execution data includes … displaying …”
“input the pseudo execution data into a machine learning model learned based on data as a result of execution of a normal on-site process”
“execute the machine learning model to determine whether the pseudo execution data includes a value indicating an abnormality”
“upon determining, based on a result of the execution of the machine learning model, that the pseudo execution data includes the value indicating the abnormality, output a notification of the abnormality”
However, these additional elements do not integrate the judicial exception into a practical application.
The additional elements “at least one processor which when executing at least one program configures the at least one processor to …” and “the at least one processor is configured to: …” do not integrate the judicial exception into a practical application because they amount to no more than mere instructions to apply the judicial exception using a generic computer. See MPEP 2106.05(f).
The additional elements “execute the IT-side process, based on pseudo execution data that is data obtained by execution of the pseudo model” and “wherein the IT-side process executed based on the generated pseudo execution data includes … displaying …” do not integrate the judicial exception into a practical application because they amount to insignificant extra-solution activities. Specifically, it amounts to a post-solution activity of displaying a result on an interface. See MPEP 2106.05(g).
The additional element “input the pseudo execution data into a machine learning model learned based on data as a result of execution of a normal on-site process” does not integrate the judicial exception into a practical application because it amounts to no more than mere instructions to apply the judicial exception using a generic computer. Inputting data is a generic computer function. See MPEP 2106.05(f). This also amounts to an insignificant extra-solution activity of transmitting data. See MPEP 2106.05(g).
The additional element “execute the machine learning model to determine whether the pseudo execution data includes a value indicating an abnormality” does not integrate the judicial exception into a practical application because it amounts to no more than mere instructions to apply the judicial exception using a generic computer. The use of the machine learning model is recited generically that it amounts to merely using a generic computer. See MPEP 2106.05(f). This also amounts to generally linking the use of a judicial exception to a particular technological environment or field of use. The machine learning model is generically recited and amounts to merely applying the machine learning model to the field of determining an abnormality in data. See MPEP 2106.05(h).
The additional element “upon determining, based on a result of the execution of the machine learning model, that the pseudo execution data includes the value indicating the abnormality, output a notification of the abnormality” does not integrate the judicial exception into a practical application because it amounts to no more than mere instructions to apply the judicial exception using a generic computer. Outputting data is a generic computer function. See MPEP 2106.05(f). This also amounts to an insignificant extra-solution activity of outputting a result. See MPEP 2106.05(g).
Even when viewed in combination, these additional elements do not integrate the judicial exception into a practical application.
Accordingly, the claim does not recite any additional elements that integrate the judicial exception into a practical application.
Step 2B: Furthermore, the additional elements do not amount to significantly more than the judicial exception.
The additional elements “at least one processor which when executing at least one program configures the at least one processor to …” and “the at least one processor is configured to: …” do not amount to significantly more than the judicial exception because they amount to no more than mere instructions to apply the judicial exception using a generic computer. See MPEP 2106.05(f).
The additional elements “execute the IT-side process, based on pseudo execution data that is data obtained by execution of the pseudo model” and “wherein the IT-side process executed based on the generated pseudo execution data includes … displaying …” do not amount to significantly more than the judicial exception because they amount to an insignificant extra-solution activity which is akin to a well-understood, routine, and conventional activity of presenting offers and gathering statistics. See MPEP 2106.05(d)(II): “iv. Presenting offers and gathering statistics, OIP Techs., 788 F.3d at 1362-63, 115 USPQ2d at 1092-93”.
The additional elements “input the pseudo execution data into a machine learning model learned based on data as a result of execution of a normal on-site process” and “upon determining, based on a result of the execution of the machine learning model, that the pseudo execution data includes the value indicating the abnormality, output a notification of the abnormality” do not amount to significantly more than the judicial exception because they amount to no more than mere instructions to apply the judicial exception using a generic computer. See MPEP 2106.05(f). They also amount to an insignificant extra-solution activity which is akin to a well-understood, routine, and conventional activity of receiving or transmitting data over a network. See MPEP 2106.05(d)(II): “i. Receiving or transmitting data over a network, e.g., using the Internet to gather data, Symantec, 838 F.3d at 1321, 120 USPQ2d at 1362 (utilizing an intermediary computer to forward information); TLI Communications LLC v. AV Auto. LLC, 823 F.3d 607, 610, 118 USPQ2d 1744, 1745 (Fed. Cir. 2016) (using a telephone for image transmission); OIP Techs., Inc., v. Amazon.com, Inc., 788 F.3d 1359, 1363, 115 USPQ2d 1090, 1093 (Fed. Cir. 2015) (sending messages over a network); buySAFE, Inc. v. Google, Inc., 765 F.3d 1350, 1355, 112 USPQ2d 1093, 1096 (Fed. Cir. 2014) (computer receives and sends information over a network); but see DDR Holdings, LLC v. Hotels.com, L.P., 773 F.3d 1245, 1258, 113 USPQ2d 1097, 1106 (Fed. Cir. 2014) ("Unlike the claims in Ultramercial, the claims at issue here specify how interactions with the Internet are manipulated to yield a desired result‐‐a result that overrides the routine and conventional sequence of events ordinarily triggered by the click of a hyperlink." (emphasis added))”.
The additional element “execute the machine learning model to determine whether the pseudo execution data includes a value indicating an abnormality” does not amount to significantly more than the judicial exception because it amounts to no more than mere instructions to apply the judicial exception using a generic computer and generally linking the use of a judicial exception to a particular technological environment or field of use. See MPEP 2106.05(f) and 2106.05(h).
Accordingly, the claim does not recite any additional elements that amount to significantly more than the judicial exception.
Therefore, claim 1 is not eligible.
Regarding claim 2: Claim 2 merely further limits the pseudo model recited in claim 1. Accordingly, the same analysis used in claim 1 is applicable.
Therefore, claim 2 is not eligible.
Regarding claims 3-4: Claims 3-4 merely further limit the pseudo model and/or scenario data recited in claim 2. Accordingly, the same analysis used in claim 2 is applicable.
Therefore, claims 3-4 are not eligible.
Regarding claim 5:
The limitation “determining presence or absence of a contradiction in the scenario represented by the scenario data, based on the pseudo model” under broadest reasonable interpretation covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper. For example, determining a presence or absence of a contradiction covers mentally making an observation on a contradiction and making a judgment of its presence.
The limitation “resolving the contradiction when the determination is true and the contradiction is allowed to be resolved within a range of a predetermined rule” under broadest reasonable interpretation covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper. Fig. 12 discloses the predetermined rules for resolving the contradiction. Resolving contradiction such as by selecting one of dual definition or selecting a default value covers mentally observing the predetermined rules and mentally making a judgment as to which rule should be applied.
The claim does not recite any additional elements that would have provided practical application of or have added significantly more to the cited abstract idea.
Therefore, claim 5 is not eligible.
Regarding claim 6:
The limitation “allocating an instance of each resource represented by the scenario, to the resource, based on the pseudo model and the scenario data” under broadest reasonable interpretation covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper. For example, this covers mentally observing an instance of resource and making a judgment as to how to allocate the instance of resource to the resource.
The limitation “allocating an occurrence time of the delay to the resource where the delay occurs among the resources represented by the scenario” under broadest reasonable interpretation covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper. For example, this covers mentally observing an occurrence time of the delay and making a judgment as to how to allocate the occurrence time of the delay to the resource.
The claim does not recite any additional elements that would have provided practical application of or have added significantly more to the cited abstract idea.
Therefore, claim 6 is not eligible.
Regarding claim 7:
The limitations “wherein the pseudo model includes an execution order of a plurality of macro tasks, and a control function of controlling execution of the macro tasks”; “wherein each of the macro tasks includes one or more tasks where the execution order is specified”; “wherein the scenario is at least one delay of following (x) and (y), (x) at least one delay, with respect to each of the one or more tasks, of a delay caused by an object related to the task, and a delay caused by the resource allocated to the task, and (y) a delay caused by latency for synchronization between two or more macro tasks” merely further limits the pseudo model and scenario recited in claim 3. Accordingly, the same analysis used in claim 3 is applicable.
The limitations “wherein the preprocess, and the instantiation process are specified in the control function” merely further limits the preprocess and instantiation processes and the processor recited in claim 3. Accordingly, the same analysis used in claim 3 is applicable.
The limitation “determining of presence or absence of a contradiction in the scenario represented by the scenario data,” as previously explained, covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper.
The limitation “resolving the contradiction when the determination is true and the contradiction is allowed to be resolved within a range of a predetermined rule,” as previously explained, covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper.
The limitation “allocating of an instance of each resource represented by the scenario, to the resource, based on the pseudo model and the scenario data,” as previously explained, covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper.
The limitation “allocating of an occurrence time of the delay to the resource where the delay occurs among the resources represented by the scenario,” as previously explained, covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper.
The limitation “wherein when generating data violating the scenario, … generate scenario violation information that is information representing content of the violation” under broadest reasonable interpretation covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper. For example, generating information covers mentally observing and identifying details of violation.
The limitation “output the scenario violation information” is an additional element.
Step 2A Prong 2: The additional elements do not integrate the judicial exception into a practical application.
The additional element “output the scenario violation information” does not integrate the judicial exception into a practical application because it amounts to no more than mere instructions to apply the judicial exception using a generic computer. Outputting data is a generic computer function. See MPEP 2106.05(f). This also amounts to an insignificant extra-solution activity. Specifically, it amounts to a post-solution activity of outputting a result. See MPEP 2106.05(g).
Even when viewed in combination, this additional element does not integrate the judicial exception into a practical application.
Accordingly, the claim does not recite any additional elements that integrate the judicial exception into a practical application.
Step 2B: Furthermore, the additional elements do not amount to significantly more than the judicial exception.
As previously explained, the additional element amounts to no more than mere instructions to apply the judicial exception using a generic computer. Mere instructions to apply an exception using a generic computer do not amount to significantly more than the judicial exception. See MPEP 2106.05(f). It also amounts to an insignificant extra-solution activity that falls under receiving or transmitting data over a network or presenting offers and gathering statistics. Such activities do not amount to significantly more than the judicial exception. See MPEP 2106.05(d)(II).
Accordingly, the claim does not recite any additional elements that amount to significantly more than the judicial exception.
Therefore, claim 7 is not eligible.
Regarding claim 10:
The limitation “wherein in (B), … (b1) identify one or more start time groups, and one or more completion time groups” under broadest reasonable interpretation covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper. For example, identifying start time groups and completion time groups covers mentally observing and determining such groups.
The limitations “where the start time group includes one or more given start times of the macro task that are sequential in a time series manner, and in the start time group, a difference between adjacent given start times is equal to or less than a certain value, and the completion time group includes one or more given completion times of the macro task that are sequential in a time series manner, and in the completion time group, a difference between adjacent given completion times is equal to or less than a certain value” merely further limit the start time groups and completion time groups recited in the previous limitation. Accordingly, this amounts to mental processes and mathematical concepts for the similar reasons.
The limitation “(b2) identify one or more start and completion groups” under broadest reasonable interpretation covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper. For example, identifying start and completion groups covers mentally observing and determining such groups.
The limitations “where the start and completion group is a group that includes one or more start groups and one or more completion groups, and in the start and completion group, every given start time and every given completion time are closed in the start and completion group” merely further limit the start and completion groups recited in the previous limitation. Accordingly, the same analysis used in the previous limitation is applicable.
The limitation “(b3) for each of the start and completion groups, (b3-1) set N basic series of time series are set” under broadest reasonable interpretation covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper. For example, setting a basic series to the start and completion groups covers mentally calculating the basic series and assigning it to the groups.
The limitation “for each of the start and completion groups, N is a natural number and a number that belongs to the start and completion group and is equal to or less than the number of non-standard series” merely further limits the N recited in the previous limitation. Accordingly, the same analysis used in the previous limitation is applicable.
The limitation “(b3-2) for each of the N basic series, (b3-2-1) an entire m-th basic series that is the basic series is moved so as to overlay the completion time of the m-th basic series on the completion time of the non-standard series corresponding to the m-th basic series” under broadest reasonable interpretation covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper. For example, someone would be able to move a basic series mentally or with a pen and paper.
The limitation “(b3-2-2) an entire upper level time group of the m-th basic series is moved so as to overlay the start time of the m-th basic series on the start time of the non-standard series corresponding to the m-th basic series” under broadest reasonable interpretation covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper. For example, someone would be able to move a basic series mentally or with a pen and paper.
The limitation “a first basic series is a basic series having a latest start time among the N basic series, and for each basic series, the upper level time group includes times including the start time of the basic series to an m-th time, and a first time is the start time” merely further limits the basic series recited in the previous limitation. Accordingly, the same analysis used in the previous limitation is applicable.
The claim does not recite any additional elements that would have provided practical application of or have added significantly more to the cited abstract idea.
Therefore, claim 10 is not eligible.
Regarding claim 11:
The limitation “wherein the pseudo model includes an execution order of a plurality of macro tasks, each of the macro tasks includes one or more tasks where the execution order is specified” merely further limits the pseudo model recited in claim 2. Accordingly, the same analysis used in claim 2 is applicable.
The limitation “for each of the macro tasks, … determine whether pseudo execution data generated for the macro task matches data about a macro task immediately before or immediately after the macro task concerned in an execution order” under broadest reasonable interpretation covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper. For example, determining covers mentally making an observation and judgment.
The limitation “change the pseudo execution data to data violating the scenario in an acceptable range, when a result of the determination is false” under broadest reasonable interpretation covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper. For example, changing the pseudo execution data covers making changes to a value in mind or with a pen and paper.
The claim does not recite any additional elements that would have provided practical application of or have added significantly more to the cited abstract idea.
Therefore, claim 11 is not eligible.
Regarding claim 13:
The limitation “determine whether a condition defined as an abnormality is satisfied based on the pseudo execution data and on actual execution data obtained accompanied by execution of the on-site process” under broadest reasonable interpretation covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper. For example, determining whether a condition is satisfied covers mentally observing the condition, the pseudo execution data and the actual execution data and making a judgment based on the observation.
The limitation “… by executing the pseudo model in parallel with execution of the on-site process” covers a mental process as previously explained.
The limitation “obtain pseudo execution data” is an additional element.
The limitation “output the abnormality when a result of the determination is true” is an additional element.
Step 2A Prong 2: The additional elements do not integrate the judicial exception into a practical application.
The additional element “obtain pseudo execution data” does not integrate the judicial exception into a practical application because it is a data gathering activity. See MPEP 2106.05(g).
The additional element “output the abnormality when a result of the determination is true” does not integrate the judicial exception into a practical application because it amounts to no more than mere instructions to apply the judicial exception using a generic computer. Outputting a value is a generic computer function. See MPEP 2106.05(f). This also amounts to an insignificant extra-solution activity. Specifically, it amounts to a post-solution activity of outputting a result. See MPEP 2106.05(g).
Even when viewed in combination, this additional element does not integrate the judicial exception into a practical application.
Accordingly, the claim does not recite any additional elements that integrate the judicial exception into a practical application.
Step 2B: Furthermore, the additional elements do not amount to significantly more than the judicial exception.
The additional element “obtain pseudo execution data” is a data gathering activity that falls under receiving or transmitting data over a network. Such activities do not amount to significantly more than the judicial exception. See MPEP 2106.05(d)(II).
The additional element “output the abnormality when a result of the determination is true” does not amount to significantly more than the judicial exception for the similar reasons as discussed in Step 2A Prong 2. Mere instructions to apply an exception using a generic computer do not amount to significantly more than the judicial exception. See MPEP 2106.05(f). It also amounts to an insignificant extra-solution activity that falls under receiving or transmitting data over a network or presenting offers and gathering statistics. Such activities do not amount to significantly more than the judicial exception. See MPEP 2106.05(d)(II).
Accordingly, the claim does not recite any additional elements that amount to significantly more than the judicial exception.
Therefore, claim 13 is not eligible.
Regarding claim 14:
The limitation “execute the pseudo model, based on the scenario data” covers a mental process as previously explained.
The limitation “construct scenario data representing the scenario, based on data of data where a cause of target delay occurrence and an occurrence rate of the delay are designated, and data on knowledge of the OT-side process, upon input of the data” under broadest reasonable interpretation covers a mental process including an observation, evaluation, judgment or opinion that could be performed in the human mind or with the aid of pencil and paper. Fig. 15 shows the scenario data which shows a set of information organized in a table. Therefore, constructing scenario data covers someone mentally observing the information about where a cause of target delay occurrence and an occurrence rate of the delay are designated and OT-side process, and summarizing or organizing such information either mentally or with a pen and paper.
Alternatively, “construct scenario data representing the scenario, based on data of data where a cause of target delay occurrence and an occurrence rate of the delay are designated, and data on knowledge of the OT-side process, upon input of the data” is an additional element.
Step 2A Prong 2: The additional elements do not integrate the judicial exception into a practical application.
Even when considered as an additional element, the additional element “construct scenario data representing the scenario, based on data of data where a cause of target delay occurrence and an occurrence rate of the delay are designated, and data on knowledge of the OT-side process, upon input of the data” does not integrate the judicial exception into a practical application because it amounts to no more than mere instructions to apply the judicial exception using a generic computer. Processing data is a generic computer function. See MPEP 2106.05(f).
Even when viewed in combination, this additional element does not integrate the judicial exception into a practical application.
Accordingly, the claim does not recite any additional elements that integrate the judicial exception into a practical application.
Step 2B: Furthermore, the additional elements do not amount to significantly more than the judicial exception.
The additional elements do not amount to significantly more than the judicial exception for the similar reasons as discussed in Step 2A Prong 2. Mere instructions to apply an exception using a generic computer do not amount to significantly more than the judicial exception. See MPEP 2106.05(f).
Accordingly, the claim does not recite any additional elements that amount to significantly more than the judicial exception.
Therefore, claim 14 is not eligible.
Regarding claim 15, claim 15 is substantially similar to claim 1. Therefore, the similar analysis as claim 1 is applicable.
Regarding claim 16, claim 16 is substantially similar to claim 1. Therefore, the similar analysis as claim 1 is applicable.
Furthermore, the limitation “a non-transitory computer readable storage medium” is an additional element.
Step 2A Prong 2: The additional elements do not integrate the judicial exception into a practical application.
The additional element “a non-transitory computer readable storage medium” does not integrate the judicial exception into a practical application because it amounts to no more than mere instructions to apply the judicial exception using a generic computer. See MPEP 2106.05(f).
Even when viewed in combination, this additional element does not integrate the judicial exception into a practical application.
Accordingly, the claim does not recite any additional elements that integrate the judicial exception into a practical application.
Step 2B: Furthermore, the additional elements do not amount to significantly more than the judicial exception.
The additional elements do not amount to significantly more than the judicial exception for the similar reasons as discussed in Step 2A Prong 2. Mere instructions to apply an exception using a generic computer do not amount to significantly more than the judicial exception. See MPEP 2106.05(f).
Accordingly, the claim does not recite any additional elements that amount to significantly more than the judicial exception.
Therefore, claim 16 is not eligible.
Accordingly, claims 1-7, 10, 11, and 13-16 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception (i.e. an abstract idea) without anything significantly more.
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.
Claim(s) 1-3, 10, 11, and 13-16 is/are rejected under 35 U.S.C. 103 as being unpatentable over Asami et al. (JP2010282583A), hereinafter Asami, in view of Matsumoto (US20180060464A1) in further view of Matsuya et al. (US20200150636A1), hereinafter Matsuya, in further view of Komasu et al. (WO2019146315A1), hereinafter Komasu.
Regarding claim 1, Asami discloses
at least one processor (Pg. 3, Para. 5: “Each block shown here can be realized in terms of hardware by elements such as a CPU and a memory of a computer, and in terms of software, it can be realized by a computer program or the like loaded in the memory.”) which when executing at least one program configures the at least one processor to:
execute a pseudo model that is a model simulating an on-site process that is at least part of the OT-side process (Pg. 5, Para. 8: “As described above, according to the present embodiment, a model of a production line composed of the same processes as an actual production line in a factory can be configured on a computer and a simulation can be executed.”) (Pg. 3, Para. 10: “The simulation execution unit 50 includes a line configuration unit 52 and a calculation unit 54. The line configuration unit 52 analyzes the production management data and creates a flow diagram representing the flow of processes of the production line to be simulated. The computing unit 54 computes the processing quantity, processing time, etc. of the material in each process of the production line with reference to the created flow diagram, layout sheet, layer, and various parameters. Furthermore, based on the calculation results, the number of final products produced, production time, and the like are calculated.”) (Pg. 5, Para. 7: “The calculation unit 54 refers to the production management data, layout sheet, layer, and various parameters, and calculates the production time, the number of products, etc. of the product in a given production line (S18).”),
the on-site process including one or more tasks that start and finish for each of one or more targets (Pg. 2, Para. 6: “This device is a production management system that holds production management data in which input material data related to materials input to the process and discharged material data related to materials discharged from the process are recorded for each process required from the start to the end of production of the product.”), and
execute the IT-side process, based on pseudo execution data that is data obtained by execution of the pseudo model (Pg. 5, Para. 7: “The output unit 62 outputs the simulation result to the user terminal 20 (S20).”) (Pg. 5, Para. 3: “The production line simulation apparatus may have a function of displaying a Gantt chart, an operation rate graph, a proximity analysis result, and the like as an image based on the simulation result.”),
Examiner notes that specification at paragraph [0039] discloses the IT-side process as storing the pseudo execution and displaying the manufacturing dashboard, which includes a diagram chart.
wherein the pseudo model includes the tasks constituting a macro task for each of the one or more targets (Pg. 2, Para. 6: “This device is a production management system that holds production management data in which input material data related to materials input to the process and discharged material data related to materials discharged from the process are recorded for each process required from the start to the end of production of the product.”),
in execution of the pseudo model, the at least one processor is configured to (Pg. 5, Para. 8: “As described above, according to the present embodiment, a model of a production line composed of the same processes as an actual production line in a factory can be configured on a computer and a simulation can be executed.”) (Pg. 3, Para. 10: “The simulation execution unit 50 includes a line configuration unit 52 and a calculation unit 54. The line configuration unit 52 analyzes the production management data and creates a flow diagram representing the flow of processes of the production line to be simulated. The computing unit 54 computes the processing quantity, processing time, etc. of the material in each process of the production line with reference to the created flow diagram, layout sheet, layer, and various parameters. Furthermore, based on the calculation results, the number of final products produced, production time, and the like are calculated.”) (Pg. 5, Para. 7: “The calculation unit 54 refers to the production management data, layout sheet, layer, and various parameters, and calculates the production time, the number of products, etc. of the product in a given production line (S18).”) (Pg. 3, Para. 5: “Each block shown here can be realized in terms of hardware by elements such as a CPU and a memory of a computer, and in terms of software, it can be realized by a computer program or the like loaded in the memory.”):
for each target, the series is a set of times that include a given start time and a given completion time of the macro task (Pg. 4, Para. 6: “FIG. 5 shows an example of the production line operation time input form 400, in which a production start time 402, an end time 404, and an operation time 406 therebetween can be set.”) (Pg. 4: “FIG. 7 shows an example of the production management data 200. … The “flow number” column 204 represents a flow number indicating a connection before and after the process. … The “process” column 208 includes a column representing the order, number, name, and step number of each process.”),
the pseudo time period is a difference between the given start time and the given completion time of the macro task (Pg. 3, Para. 10: “The simulation execution unit 50 includes a line configuration unit 52 and a calculation unit 54. … The computing unit 54 computes the processing quantity, processing time, etc. of the material in each process of the production line with reference to the created flow diagram, layout sheet, layer, and various parameters. Furthermore, based on the calculation results, the number of final products produced, production time, and the like are calculated.”) (Pg. 5, Para. 7: “The calculation unit 54 refers to the production management data, layout sheet, layer, and various parameters, and calculates the production time, the number of products, etc. of the product in a given production line (S18).”),
(C) generate the pseudo execution data (Pg. 3, Para. 10: “The simulation execution unit 50 includes a line configuration unit 52 and a calculation unit 54. The line configuration unit 52 analyzes the production management data and creates a flow diagram representing the flow of processes of the production line to be simulated. The computing unit 54 computes the processing quantity, processing time, etc. of the material in each process of the production line with reference to the created flow diagram, layout sheet, layer, and various parameters. Furthermore, based on the calculation results, the number of final products produced, production time, and the like are calculated.”) (Pg. 5, Para. 7: “The calculation unit 54 refers to the production management data, layout sheet, layer, and various parameters, and calculates the production time, the number of products, etc. of the product in a given production line (S18).”) (Pg. 5, Para. 6: “In addition, based on the failure rate and recovery time set in the equipment parameters, the calculation unit 54 performs the above calculation in consideration of the probability of failure occurring in the equipment, so that the actual production line operation status Can be more accurately reflected in the simulation.”).
Asami does not explicitly disclose
(A) identify a delay absent group, and a delay present group,
the delay absent group is one or more standard series that are sequential in a time series manner,
the delay present group is one or more non-standard series that are sequential in a time series manner,
the standard series is a series where a difference between a standard time period of the macro task and a pseudo time period is equal to or less than a certain value,
the standard time period is a standard value between the start time and the completion time of the macro task, and
the pseudo time period is a difference between the given start time and the given completion time of the macro task,
(B) based on a basic series among the one or more standard series, for each of the one or more non-standard series in the delay present group, estimate a likely delay of the non-standard series,
the basic series is a series where a difference between the standard time period and the pseudo time period of the macro task is shortest, and the start time and the completion time of each of the tasks is estimated based on the standard time of each of the tasks in the macro task,
(C) generate the pseudo execution data based on a result of estimation of (B); and
wherein the IT-side process executed based on the generated pseudo execution data includes generating and displaying a manufacturing dashboard having a first axis indicating time, a second axis corresponding to the arrangement and start time and end times of each task of the macro task, a line segment indicating where a delay occurs highlighted and points indicating the start time and end times with intervening points indicating values estimated based on the pseudo execution data, and
input the pseudo execution data into a machine learning model learned based on data as a result of execution of a normal on-site process,
execute the machine learning model to determine whether the pseudo execution data includes a value indicating an abnormality, and
upon determining, based on a result of the execution of the machine learning model, that the pseudo execution data includes the value indicating the abnormality, output a notification of the abnormality.
However, Matsumoto teaches
determining whether or not a process has a delay for each processes in a series of processes ([0045]: “The type 201 is a field showing a type of event that could occur and has “increase in process work time,” “delay in process start time,” “delay in order start time,”) ([0083]: “Next, the event occurrence processing module 011 determines whether an event such as an increase in process work time or a delay in start time occurs or not for each process of each order obtained from the read-out production result data 025 in the simulation (S903)”) ([0086]: “If the process is affected by the occurrence of the event, the simulation takes into consideration a delay in the process work time by the occurrence of the event and the like. If the process is not affected by the occurrence of the event, the simulation is conducted based on the process start time and work time of the original schedule.”);
a standard time period ([0106]: “In the work time 603, which is a data field value of the process definition data 024, the difference between the completion time 806 and the start time 805, which are the data field values of the production result data 025, is registered.”) ([0075]-[0076]: “The production result data 025 includes … standard time … The standard time 803 shows a standard period of time required to complete the process.”);
a pseudo time period ([0108]: “Next, the simulation processing module 012 initializes the variable Date. (S1105). The variable Date corresponds to the current time in the simulation (simulation current time). Date (simulation current time) is used to determine whether the process has been completed at that time or not, whether the time is a process start time or not, and whether it is the time for the schedule management system to detect an event and perform the rescheduling or not.”) ([0106]: “In the work time 603, which is a data field value of the process definition data 024, the difference between the completion time 806 and the start time 805, which are the data field values of the production result data 025, is registered.”);
comparing a pseudo time period of a series to the standard time period ([0109]: “Next, the simulation processing module 012 determines whether the event identified in FIG. 9 occurs at the time indicated by Date (simulation current time) or not for each schedule data 023 (S1106). If Date (simulation current time) has reached the planned start time 503 of the process at which the event is predicted to occur, the simulation processing module 012 determines that the event occurs at that time.”) ([0110]: “if the planned start time 503 of the extracted schedule data 023 equals to Date (simulation current time), the simulation processing module 012 determines that the predicted event (event that causes a delay in process) occurs at that time.”) ([0117]: “That is, the simulation processing module 012 determines whether the Date (simulation current time) matches with the planned rescheduling time or not.”);
a basic series ([0063]: “If “delay in the process start time” or “delay in order start” occurs in a particular process, the planned start time 503 of the schedule data 023 is updated. Also, the planned start time 503 and the planned equipment ID 504 may be updated by the scheduler in order to create a more efficient new schedule in Step S1111 of the simulation process flow, taking into account the relationship with the respective processes or other orders.”);
(Examiner notes that Matsumoto teaches, in response to determining a presence/amount of delay, updating the schedule to create a more efficient new schedule. Under broadest reasonable interpretation, a more efficient schedule would mean that the difference between the planned schedule and the execution schedule is minimal. Therefore, this corresponds to determining a basic series is a series where a difference between the standard time period and the pseudo time period of the macro task is shortest.);
estimating a likely delay of the non-standard series ([0090]: “The event occurrence process is to determine whether an event such as an increase in process work time or a delay in start time is going to occur or not for each order or each process of each order conducted in the simulation.”) ([0039]: “The simulation processing module 012 is configured to estimate a process completion time for a case in which the schedule for the unfinished processes is revised every time when a schedule management system detects an occurrence of an event”) ([0101]: “the schedule for the processes that are unfinished at a time when the schedule management system detects the occurrence of the event is revised, so that the start time and completion time of each process can be estimated.”) ([0148]: “According to an embodiment of the present invention, by conducting a simulation, the effect of introducing the system to collect actual results can be estimated quantitatively.”);
(Examiner notes that Matsumoto teaches estimating the delay for an event that does not match the planned time. Therefore, this corresponds to estimating a likely delay of the non-standard series.)
estimating the start time and the completion time of each of the tasks based on the standard time of each of the tasks ([0075]-[0077]: “The production result data 025 includes … standard time … The standard time 803 shows a standard period of time required to complete the process. … The production result data 025 is used to initially create the schedule data 023 and the process definition data 024 for each process used for the simulation.”) ([0106]: “The simulation is conducted based on the respective values of the process definition data 024, along with the schedule data 023.”) ([0101]: “the schedule for the processes that are unfinished at a time when the schedule management system detects the occurrence of the event is revised, so that the start time and completion time of each process can be estimated.”) ([0148]: “According to an embodiment of the present invention, by conducting a simulation, the effect of introducing the system to collect actual results can be estimated quantitatively.”); and
generating a simulation data based on the estimation ([0101]: “the schedule for the processes that are unfinished at a time when the schedule management system detects the occurrence of the event is revised, so that the start time and completion time of each process can be estimated.”) ([0112]: “Next, the simulation processing module 012 updates the schedule data 023 (S1108). The schedule data 023 is updated to reflect “delay in process start time,” “delay in order start time,” or “change in planned equipment” caused by the event occurrence.”) ([0142]: “Specifically, the simulation result data 026 has items similar to the production result data 025 that has the order 801, process sequence 802, equipment ID 804, start time 805, and completion time 806, and in the respective items, the order to which the process completed in the simulation belongs, the process sequence thereof, the equipment used for the process, and start time and completion time of the process in the simulation are registered.”).
Asami and Matsumoto are analogous to the claimed invention because they are in the same field of simulating/modeling production management based on scenario data.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the scenario data of Asami to incorporate the scenario data including delay information of Matsumoto to include delay information indicating whether any delay occurs in one or more tasks in the scenario data and identify delay present groups and delay absent groups accordingly.
One of ordinary skill in the art would have been motivated to make this modification because delays affect the start and end time of each process thereby affecting the overall production time and therefore including delays in the scenario data and estimating delays allows accounting for the delays in scheduling the production process and produce more accurate simulation results (Matsumoto, [0007]: “This causes a delay in the start time and end time of the third process using equipment 4 for the first order, and as a result, in a manner similar to FIG. 16, the schedule of the process using the equipment 4 for the second order is affected.”) (Matsumoto, [0112]: “Next, the simulation processing module 012 updates the schedule data 023 (S1108). The schedule data 023 is updated to reflect “delay in process start time,” “delay in order start time,” or “change in planned equipment” caused by the event occurrence.”) (Matsumoto, [0063]: “Also, the planned start time 503 and the planned equipment ID 504 may be updated by the scheduler in order to create a more efficient new schedule in Step S1111 of the simulation process flow, taking into account the relationship with the respective processes or other orders.”).
It would also have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate Matsumoto’s teachings for a standard time period and comparing a pseudo time period to the standard time period to modify Asami to provide a standard time period and compare a pseudo time period to the standard time period to determine standard and non-standard series and basic series.
One of ordinary skill in the art would have been motivated to make this modification because this also allows reflecting delay with respect to the expected standard time period in the simulation and thereby generate more accurate simulation results (Matsumoto, [0007]: “This causes a delay in the start time and end time of the third process using equipment 4 for the first order, and as a result, in a manner similar to FIG. 16, the schedule of the process using the equipment 4 for the second order is affected.”) (Matsumoto, [0112]: “Next, the simulation processing module 012 updates the schedule data 023 (S1108). The schedule data 023 is updated to reflect “delay in process start time,” “delay in order start time,” or “change in planned equipment” caused by the event occurrence.”) (Matsumoto, [0063]: “Also, the planned start time 503 and the planned equipment ID 504 may be updated by the scheduler in order to create a more efficient new schedule in Step S1111 of the simulation process flow, taking into account the relationship with the respective processes or other orders.”).
Therefore, the combination of Asami and Matsumoto teaches
(A) identify a delay absent group, and a delay present group (Asami, Pg. 4, Para. 6: “FIG. 5 shows an example of the production line operation time input form 400, in which a production start time 402, an end time 404, and an operation time 406 therebetween can be set.”) (Pg. 4: “FIG. 7 shows an example of the production management data 200. … The “flow number” column 204 represents a flow number indicating a connection before and after the process. … The “process” column 208 includes a column representing the order, number, name, and step number of each process.”) (Matsumoto, [0045]: “The type 201 is a field showing a type of event that could occur and has “increase in process work time,” “delay in process start time,” “delay in order start time,”) (Matsumoto, [0083]: “Next, the event occurrence processing module 011 determines whether an event such as an increase in process work time or a delay in start time occurs or not for each process of each order obtained from the read-out production result data 025 in the simulation (S903)”) (Matsumoto, [0086]: “If the process is affected by the occurrence of the event, the simulation takes into consideration a delay in the process work time by the occurrence of the event and the like. If the process is not affected by the occurrence of the event, the simulation is conducted based on the process start time and work time of the original schedule.”),
the delay absent group is one or more standard series that are sequential in a time series manner (Asami, Pg. 4, Para. 6: “FIG. 5 shows an example of the production line operation time input form 400, in which a production start time 402, an end time 404, and an operation time 406 therebetween can be set.”) (Asami, Pg. 4: “FIG. 7 shows an example of the production management data 200. … The “flow number” column 204 represents a flow number indicating a connection before and after the process. … The “process” column 208 includes a column representing the order, number, name, and step number of each process.”) (Matsumoto, [0045]: “The type 201 is a field showing a type of event that could occur and has “increase in process work time,” “delay in process start time,” “delay in order start time,”) (Matsumoto, [0083]: “Next, the event occurrence processing module 011 determines whether an event such as an increase in process work time or a delay in start time occurs or not for each process of each order obtained from the read-out production result data 025 in the simulation (S903)”) (Matsumoto, [0086]: “If the process is affected by the occurrence of the event, the simulation takes into consideration a delay in the process work time by the occurrence of the event and the like. If the process is not affected by the occurrence of the event, the simulation is conducted based on the process start time and work time of the original schedule.”) (Matsumoto, [0113]: “That is, the simulation processing module 012 adds elements to the schedule data 023 such that the process work of the process sequence 1 is started immediately after the completion time of the current work and the respective subsequent processes are successively conducted …. That is, the simulation processing module 012 adds elements to the schedule data 023 such that the process work of the process sequence 1 is started immediately after the completion time of the last process of the current order and the respective subsequent processes are successively conducted”) (Matsumoto, Figs. 15-20 show sequential, time series processes.),
the delay present group is one or more non-standard series that are sequential in a time series manner (Asami, Pg. 4, Para. 6: “FIG. 5 shows an example of the production line operation time input form 400, in which a production start time 402, an end time 404, and an operation time 406 therebetween can be set.”) (Pg. 4: “FIG. 7 shows an example of the production management data 200. … The “flow number” column 204 represents a flow number indicating a connection before and after the process. … The “process” column 208 includes a column representing the order, number, name, and step number of each process.”) (Matsumoto, [0045]: “The type 201 is a field showing a type of event that could occur and has “increase in process work time,” “delay in process start time,” “delay in order start time,”) (Matsumoto, [0083]: “Next, the event occurrence processing module 011 determines whether an event such as an increase in process work time or a delay in start time occurs or not for each process of each order obtained from the read-out production result data 025 in the simulation (S903)”) (Matsumoto, [0086]: “If the process is affected by the occurrence of the event, the simulation takes into consideration a delay in the process work time by the occurrence of the event and the like. If the process is not affected by the occurrence of the event, the simulation is conducted based on the process start time and work time of the original schedule.”) (Matsumoto, [0113]: “That is, the simulation processing module 012 adds elements to the schedule data 023 such that the process work of the process sequence 1 is started immediately after the completion time of the current work and the respective subsequent processes are successively conducted …. That is, the simulation processing module 012 adds elements to the schedule data 023 such that the process work of the process sequence 1 is started immediately after the completion time of the last process of the current order and the respective subsequent processes are successively conducted”) (Matsumoto, Figs. 15-20 show sequential, time series processes.),
the standard series is a series where a difference between a standard time period of the macro task and a pseudo time period is equal to or less than a certain value (Asami, Pg. 3, Para. 10: “The simulation execution unit 50 includes a line configuration unit 52 and a calculation unit 54. … The computing unit 54 computes the processing quantity, processing time, etc. of the material in each process of the production line with reference to the created flow diagram, layout sheet, layer, and various parameters. Furthermore, based on the calculation results, the number of final products produced, production time, and the like are calculated.”) (Pg. 5, Para. 7: “The calculation unit 54 refers to the production management data, layout sheet, layer, and various parameters, and calculates the production time, the number of products, etc. of the product in a given production line (S18).”) (Matsumoto, [0075]-[0076]: “The production result data 025 includes … standard time … The standard time 803 shows a standard period of time required to complete the process.”) (Matsumoto, [0005]: “a discrepancy between the initial schedule and the actual production”) (Matsumoto, [0109]: “Next, the simulation processing module 012 determines whether the event identified in FIG. 9 occurs at the time indicated by Date (simulation current time) or not for each schedule data 023 (S1106). If Date (simulation current time) has reached the planned start time 503 of the process at which the event is predicted to occur, the simulation processing module 012 determines that the event occurs at that time.”) (Matsumoto, [0110]: “if the planned start time 503 of the extracted schedule data 023 equals to Date (simulation current time), the simulation processing module 012 determines that the predicted event (event that causes a delay in process) occurs at that time.”) (Matsumoto, [0117]: “That is, the simulation processing module 012 determines whether the Date (simulation current time) matches with the planned rescheduling time or not.”),
the standard time period is a standard value between the start time and the completion time of the macro task (Matsumoto, [0075]-[0076]: “The production result data 025 includes … standard time … The standard time 803 shows a standard period of time required to complete the process.”) (Matsumoto, [0106]: “In the work time 603, which is a data field value of the process definition data 024, the difference between the completion time 806 and the start time 805, which are the data field values of the production result data 025, is registered.”), and
(B) based on a basic series among the one or more standard series, for each of the one or more non-standard series in the delay present group, estimate a likely delay of the non-standard series (Matsumoto, [0063]: “If “delay in the process start time” or “delay in order start” occurs in a particular process, the planned start time 503 of the schedule data 023 is updated. Also, the planned start time 503 and the planned equipment ID 504 may be updated by the scheduler in order to create a more efficient new schedule in Step S1111 of the simulation process flow, taking into account the relationship with the respective processes or other orders.”) (Matsumoto, [0090]: “The event occurrence process is to determine whether an event such as an increase in process work time or a delay in start time is going to occur or not for each order or each process of each order conducted in the simulation.”) (Matsumoto, [0039]: “The simulation processing module 012 is configured to estimate a process completion time for a case in which the schedule for the unfinished processes is revised every time when a schedule management system detects an occurrence of an event”) (Matsumoto, [0101]: “the schedule for the processes that are unfinished at a time when the schedule management system detects the occurrence of the event is revised, so that the start time and completion time of each process can be estimated.”) (Matsumoto, [0148]: “According to an embodiment of the present invention, by conducting a simulation, the effect of introducing the system to collect actual results can be estimated quantitatively.”),
the basic series is a series where a difference between the standard time period and the pseudo time period of the macro task is shortest (Matsumoto, [0063]: “If “delay in the process start time” or “delay in order start” occurs in a particular process, the planned start time 503 of the schedule data 023 is updated. Also, the planned start time 503 and the planned equipment ID 504 may be updated by the scheduler in order to create a more efficient new schedule in Step S1111 of the simulation process flow, taking into account the relationship with the respective processes or other orders.”), and
the start time and the completion time of each of the tasks is estimated based on the standard time of each of the tasks in the macro task (Matsumoto, [0075]-[0077]: “The production result data 025 includes … standard time … The standard time 803 shows a standard period of time required to complete the process. … The production result data 025 is used to initially create the schedule data 023 and the process definition data 024 for each process used for the simulation.”) (Matsumoto, [0106]: “The simulation is conducted based on the respective values of the process definition data 024, along with the schedule data 023.”) (Matsumoto, [0101]: “the schedule for the processes that are unfinished at a time when the schedule management system detects the occurrence of the event is revised, so that the start time and completion time of each process can be estimated.”) (Matsumoto, [0148]: “According to an embodiment of the present invention, by conducting a simulation, the effect of introducing the system to collect actual results can be estimated quantitatively.”), and
(C) generate the pseudo execution data based on a result of estimation of (B) (Asami, Pg. 3, Para. 10: “The simulation execution unit 50 includes a line configuration unit 52 and a calculation unit 54. The line configuration unit 52 analyzes the production management data and creates a flow diagram representing the flow of processes of the production line to be simulated. The computing unit 54 computes the processing quantity, processing time, etc. of the material in each process of the production line with reference to the created flow diagram, layout sheet, layer, and various parameters. Furthermore, based on the calculation results, the number of final products produced, production time, and the like are calculated.”) (Asami, Pg. 5, Para. 7: “The calculation unit 54 refers to the production management data, layout sheet, layer, and various parameters, and calculates the production time, the number of products, etc. of the product in a given production line (S18).”) (Asami, Pg. 5, Para. 6: “In addition, based on the failure rate and recovery time set in the equipment parameters, the calculation unit 54 performs the above calculation in consideration of the probability of failure occurring in the equipment, so that the actual production line operation status Can be more accurately reflected in the simulation.”) (Matsumoto, [0101]: “the schedule for the processes that are unfinished at a time when the schedule management system detects the occurrence of the event is revised, so that the start time and completion time of each process can be estimated.”) (Matsumoto, [0112]: “Next, the simulation processing module 012 updates the schedule data 023 (S1108). The schedule data 023 is updated to reflect “delay in process start time,” “delay in order start time,” or “change in planned equipment” caused by the event occurrence.”) (Matsumoto, [0142]: “Specifically, the simulation result data 026 has items similar to the production result data 025 that has the order 801, process sequence 802, equipment ID 804, start time 805, and completion time 806, and in the respective items, the order to which the process completed in the simulation belongs, the process sequence thereof, the equipment used for the process, and start time and completion time of the process in the simulation are registered.”).
Asami/Matsumoto does not explicitly teach
wherein the IT-side process executed based on the generated pseudo execution data includes generating and displaying a manufacturing dashboard having a first axis indicating time, a second axis corresponding to the arrangement and start time and end times of each task of the macro task, a line segment indicating where a delay occurs highlighted and points indicating the start time and end times with intervening points indicating values estimated based on the pseudo execution data;
input the pseudo execution data into a machine learning model learned based on data as a result of execution of a normal on-site process,
execute the machine learning model to determine whether the pseudo execution data includes a value indicating an abnormality, and
upon determining, based on a result of the execution of the machine learning model, that the pseudo execution data includes the value indicating the abnormality, output a notification of the abnormality.
However, Matsuya teaches generating and display a manufacturing dashboard having a first axis indicating time, a second axis corresponding to the arrangement and start time and end times of each task of the macro task, a line segment indicating where a delay occurs highlighted and points indicating the start time and end times with intervening points indicating values ([0060]: “The support program 150 performs visualization of a production situation as one of supports for production management. … In the present embodiment, in the chart 170, the horizontal axis (an example of a first axis) corresponds to time, the vertical axis (an example of a second axis) corresponds to the steps, and one polygonal line corresponds to one product (individual product).”) ([0061]: “In the chart 170, in the sequential order of the steps, starting axes 159S each corresponding to a starting time and parallel with the time axis and ending axes 159E each corresponding to an ending time and parallel with the time axis are alternately arranged along a direction parallel with the step axis (i.e., direction perpendicular to the time axis). Consequently, the intra-step bands 160A and the inter-step bands 160B are alternately arranged along a direction parallel with the step axis. For each product, the point on each of the starting axes 159S corresponds to the starting time of the step for the product corresponding to the starting axis 159S. Also, for each product, the point on each of the ending axes 159E corresponds to the ending time of the step for the product corresponding to the ending axis 159E.”) ([0063]: “Note that the “accentuated display of the target portion” may be the display of a display object having a length corresponding to the period having the satisfying retention situation along a direction of the time axis such that the display object overlaps a line segment (a portion of the polygonal line) over the inter-step band 160B (or intra-step band 160A) corresponding to the inter-step range (or intra-step range) in which the satisfying retention situation has occurred or the like.”) ([0066]: “Also, in the present embodiment, the “retention situation satisfying a predetermined requirement” is a situation in which the retention number is equal to or larger than a first threshold or the retention number is less than a second threshold smaller than the first threshold, in the inter-step range (and/or in the intra-step range). This allows the inter-step range (and/or intra-step range) in which an excess situation having a relatively large retention number has occurred or the inter-step range (and/or intra-step range) in which an over-reduction situation having a relatively small retention number has occurred to be recognized from the diagram chart. Note that, e.g., the “excess situation” includes a warning retention situation in which the retention number is equal to or larger than a warning threshold and less than an abnormal threshold (the warning threshold is smaller than the abnormal threshold) and an abnormal retention situation in which the retention number is equal to or larger than the abnormal threshold.”) ([0180]: “This allows the user to browse through the diagram chart 170 and compare the event display object 1301 to the portion (e.g., the rectangular portion corresponding to the warning retention situation or the abnormal retention situation) of the diagram chart 170 which is subjected to the accentuated display.”) (Figs. 1, 11-15, 21-22).
Asami/Matsumoto and Matsuya are analogous to the claimed invention because they are in the same field of analyzing and visualizing production management process.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine the teachings from Matsuya on generating and displaying the dashboard with the teachings from Asami/Matsumoto on the pseudo execution data to generate such a manufacturing dashboard using the generated pseudo execution data. The motivation to combine would have been that doing so allows a user to more easily recognize the generated data by visually displaying the data (Matsuya, [0062]: “This allows the user to recognize (visually recognize), for a relatively large number of products as the whole, the situation in each inter-step range (and/or in each intra-step range).”) (Matsuya, [0065]: “This allows the user to easily discriminate the regions corresponding to the intra-step ranges from the regions corresponding to the inter-stage ranges.”).
Therefore, the combination of Asami/Matsumoto and Matsuya teaches
wherein the IT-side process executed based on the generated pseudo execution data includes generating and displaying a manufacturing dashboard having a first axis indicating time, a second axis corresponding to the arrangement and start time and end times of each task of the macro task, a line segment indicating where a delay occurs highlighted and points indicating the start time and end times with intervening points indicating values estimated based on the pseudo execution data (Asami, Pg. 2, Para. 6: “This device is a production management system that holds production management data in which input material data related to materials input to the process and discharged material data related to materials discharged from the process are recorded for each process required from the start to the end of production of the product.”) (Asami, Pg. 4, Para. 6: “FIG. 5 shows an example of the production line operation time input form 400, in which a production start time 402, an end time 404, and an operation time 406 therebetween can be set.”) (Asami, Pg. 4: “FIG. 7 shows an example of the production management data 200. … The “flow number” column 204 represents a flow number indicating a connection before and after the process. … The “process” column 208 includes a column representing the order, number, name, and step number of each process.”) (Asami, Pg. 3, Para. 10: “The simulation execution unit 50 includes a line configuration unit 52 and a calculation unit 54. The line configuration unit 52 analyzes the production management data and creates a flow diagram representing the flow of processes of the production line to be simulated. The computing unit 54 computes the processing quantity, processing time, etc. of the material in each process of the production line with reference to the created flow diagram, layout sheet, layer, and various parameters. Furthermore, based on the calculation results, the number of final products produced, production time, and the like are calculated.”) (Asami, Pg. 5, Para. 7: “The calculation unit 54 refers to the production management data, layout sheet, layer, and various parameters, and calculates the production time, the number of products, etc. of the product in a given production line (S18).”) (Asami, Pg. 5, Para. 6: “In addition, based on the failure rate and recovery time set in the equipment parameters, the calculation unit 54 performs the above calculation in consideration of the probability of failure occurring in the equipment, so that the actual production line operation status Can be more accurately reflected in the simulation.”) (Asami, Pg. 5, Para. 7: “The output unit 62 outputs the simulation result to the user terminal 20 (S20).”) (Asami, Pg. 5, Para. 3: “The production line simulation apparatus may have a function of displaying a Gantt chart, an operation rate graph, a proximity analysis result, and the like as an image based on the simulation result.”) (Matsumoto, [0045]: “The type 201 is a field showing a type of event that could occur and has “increase in process work time,” “delay in process start time,” “delay in order start time,”) (Matsumoto, [0083]: “Next, the event occurrence processing module 011 determines whether an event such as an increase in process work time or a delay in start time occurs or not for each process of each order obtained from the read-out production result data 025 in the simulation (S903)”) (Matsumoto, [0106]: “The simulation is conducted based on the respective values of the process definition data 024, along with the schedule data 023.”) (Matsumoto, [0101]: “the schedule for the processes that are unfinished at a time when the schedule management system detects the occurrence of the event is revised, so that the start time and completion time of each process can be estimated.”) (Matsumoto, [0142]: “Specifically, the simulation result data 026 has items similar to the production result data 025 that has the order 801, process sequence 802, equipment ID 804, start time 805, and completion time 806, and in the respective items, the order to which the process completed in the simulation belongs, the process sequence thereof, the equipment used for the process, and start time and completion time of the process in the simulation are registered.”) (Matsuya, [0060]: “The support program 150 performs visualization of a production situation as one of supports for production management. … In the present embodiment, in the chart 170, the horizontal axis (an example of a first axis) corresponds to time, the vertical axis (an example of a second axis) corresponds to the steps, and one polygonal line corresponds to one product (individual product).”) (Matsuya, [0061]: “In the chart 170, in the sequential order of the steps, starting axes 159S each corresponding to a starting time and parallel with the time axis and ending axes 159E each corresponding to an ending time and parallel with the time axis are alternately arranged along a direction parallel with the step axis (i.e., direction perpendicular to the time axis). Consequently, the intra-step bands 160A and the inter-step bands 160B are alternately arranged along a direction parallel with the step axis. For each product, the point on each of the starting axes 159S corresponds to the starting time of the step for the product corresponding to the starting axis 159S. Also, for each product, the point on each of the ending axes 159E corresponds to the ending time of the step for the product corresponding to the ending axis 159E.”) (Matsuya, [0063]: “Note that the “accentuated display of the target portion” may be the display of a display object having a length corresponding to the period having the satisfying retention situation along a direction of the time axis such that the display object overlaps a line segment (a portion of the polygonal line) over the inter-step band 160B (or intra-step band 160A) corresponding to the inter-step range (or intra-step range) in which the satisfying retention situation has occurred or the like.”) (Matsuya, [0066]: “Also, in the present embodiment, the “retention situation satisfying a predetermined requirement” is a situation in which the retention number is equal to or larger than a first threshold or the retention number is less than a second threshold smaller than the first threshold, in the inter-step range (and/or in the intra-step range). This allows the inter-step range (and/or intra-step range) in which an excess situation having a relatively large retention number has occurred or the inter-step range (and/or intra-step range) in which an over-reduction situation having a relatively small retention number has occurred to be recognized from the diagram chart. Note that, e.g., the “excess situation” includes a warning retention situation in which the retention number is equal to or larger than a warning threshold and less than an abnormal threshold (the warning threshold is smaller than the abnormal threshold) and an abnormal retention situation in which the retention number is equal to or larger than the abnormal threshold.”) (Matsuya, [0180]: “This allows the user to browse through the diagram chart 170 and compare the event display object 1301 to the portion (e.g., the rectangular portion corresponding to the warning retention situation or the abnormal retention situation) of the diagram chart 170 which is subjected to the accentuated display.”) (Matsuya, Figs. 1, 11-15, 21-22).
Asami/Matsumoto/Matsuya does not explicitly teach
input the pseudo execution data into a machine learning model learned based on data as a result of execution of a normal on-site process,
execute the machine learning model to determine whether the pseudo execution data includes a value indicating an abnormality, and
upon determining, based on a result of the execution of the machine learning model, that the pseudo execution data includes the value indicating the abnormality, output a notification of the abnormality.
However, Komasu teaches using a machine learning model for detecting abnormality in facility equipment operation by comparing the actual operation data and simulation data; and outputting a notification based on the result (Pg. 2, Description para. 5: “There is a method using machine learning as an abnormality detection method. In this method, first, data at normal time is learned and a normal identification model is created. Then, it is determined whether the facility equipment is normal or abnormal based on whether the actual operation data obtained from the facility equipment deviates from the normal range defined by the identification model by the threshold or more.”) (Pg. 2, Description para. 12: “A data generation unit that generates abnormality simulation data necessary for evaluation, and a notification unit that notifies an evaluation result of the identification model.”).
Asami/Matsumoto/Matsuya and Komasu are analogous to the claimed invention because they are in the same field of determining abnormality in data related to an operation technology process.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine the teachings from Komasu on using a machine learning model for detecting abnormality with the teachings from Asami/Matsumoto/Matsuya on determining abnormality in the pseudo execution data and outputting the result. The motivation to combine would have been that doing so allows more effectively detecting abnormalities which allows preventing a serious accident from occurring (Komasu, Pg. 2, Description para. 3: “Equipment equipment that is scheduled to always operate, such as a wind turbine, is required to detect component abnormalities in advance in order to improve the operation rate or to prevent a serious accident from occurring.”).
Therefore, the combination of Asami/Matsumoto/Matsuya and Komasu teaches
input the pseudo execution data into a machine learning model learned based on data as a result of execution of a normal on-site process (Asami, Pg. 5, Para. 8: “As described above, according to the present embodiment, a model of a production line composed of the same processes as an actual production line in a factory can be configured on a computer and a simulation can be executed.”) (Asami, Pg. 3, Para. 10: “The simulation execution unit 50 includes a line configuration unit 52 and a calculation unit 54. The line configuration unit 52 analyzes the production management data and creates a flow diagram representing the flow of processes of the production line to be simulated. The computing unit 54 computes the processing quantity, processing time, etc. of the material in each process of the production line with reference to the created flow diagram, layout sheet, layer, and various parameters. Furthermore, based on the calculation results, the number of final products produced, production time, and the like are calculated.”) (Komasu, Pg. 2, Description para. 5: “There is a method using machine learning as an abnormality detection method. In this method, first, data at normal time is learned and a normal identification model is created. Then, it is determined whether the facility equipment is normal or abnormal based on whether the actual operation data obtained from the facility equipment deviates from the normal range defined by the identification model by the threshold or more.”) (Komasu, Pg. 2, Description para. 12: “A data generation unit that generates abnormality simulation data necessary for evaluation, and a notification unit that notifies an evaluation result of the identification model.”),
execute the machine learning model to determine whether the pseudo execution data includes a value indicating an abnormality (Asami, Pg. 3, Para. 10: “The simulation execution unit 50 includes a line configuration unit 52 and a calculation unit 54. The line configuration unit 52 analyzes the production management data and creates a flow diagram representing the flow of processes of the production line to be simulated. The computing unit 54 computes the processing quantity, processing time, etc. of the material in each process of the production line with reference to the created flow diagram, layout sheet, layer, and various parameters. Furthermore, based on the calculation results, the number of final products produced, production time, and the like are calculated.”) (Matsumoto, [0045]: “The type 201 is a field showing a type of event that could occur and has “increase in process work time,” “delay in process start time,” “delay in order start time,”) (Matsumoto, [0083]: “Next, the event occurrence processing module 011 determines whether an event such as an increase in process work time or a delay in start time occurs or not for each process of each order obtained from the read-out production result data 025 in the simulation (S903)”) (Matsumoto, [0005]: “a discrepancy between the initial schedule and the actual production”) (Matsumoto, [0117]: “That is, the simulation processing module 012 determines whether the Date (simulation current time) matches with the planned rescheduling time or not.”) (Komasu, Pg. 2, Description para. 5: “There is a method using machine learning as an abnormality detection method. In this method, first, data at normal time is learned and a normal identification model is created. Then, it is determined whether the facility equipment is normal or abnormal based on whether the actual operation data obtained from the facility equipment deviates from the normal range defined by the identification model by the threshold or more.”) (Komasu, Pg. 2, Description para. 12: “A data generation unit that generates abnormality simulation data necessary for evaluation, and a notification unit that notifies an evaluation result of the identification model.”), and
upon determining, based on a result of the execution of the machine learning model, that the pseudo execution data includes the value indicating the abnormality, output a notification of the abnormality (Asami, Pg. 5, Para. 7: “The output unit 62 outputs the simulation result to the user terminal 20 (S20).”) (Komasu, Pg. 2, Description para. 5: “There is a method using machine learning as an abnormality detection method. In this method, first, data at normal time is learned and a normal identification model is created. Then, it is determined whether the facility equipment is normal or abnormal based on whether the actual operation data obtained from the facility equipment deviates from the normal range defined by the identification model by the threshold or more.”) (Komasu, Pg. 2, Description para. 12: “A data generation unit that generates abnormality simulation data necessary for evaluation, and a notification unit that notifies an evaluation result of the identification model.”).
Regarding claim 2, Asami discloses scenario data (Pg. 2: “The layout sheet holding unit holds a layout sheet configured to join a plurality of production lines in a predetermined process, and the production management data holding unit includes a plurality of input material data and the predetermined process.”) (Pg. 4: “FIG. 7 shows an example of the production management data 200. … The “flow number” column 204 represents a flow number indicating a connection before and after the process. … The “process” column 208 includes a column representing the order, number, name, and step number of each process.”).
Asami does not explicitly disclose the scenario data including that any delay does not occur at all or a delay occurs in one or more tasks.
However, Matsumoto teaches a scenario data including whether or not a delay occurs ([0045]: “The type 201 is a field showing a type of event that could occur and has “increase in process work time,” “delay in process start time,” “delay in order start time,”) ([0083]: “Next, the event occurrence processing module 011 determines whether an event such as an increase in process work time or a delay in start time occurs or not for each process of each order obtained from the read-out production result data 025 in the simulation (S903)”) ([0086]: “If the process is affected by the occurrence of the event, the simulation takes into consideration a delay in the process work time by the occurrence of the event and the like. If the process is not affected by the occurrence of the event, the simulation is conducted based on the process start time and work time of the original schedule.”).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the scenario data of Asami/Matsumoto/Matsuya/Komasu to incorporate the scenario data including delay information of Matsumoto to include delay information in the scenario data, indicating that any delay does not occur at all or a delay occurs in one or more tasks.
One of ordinary skill in the art would have been motivated to make this modification because delays affect the start and end time of each process thereby affecting the overall production time and therefore including delays in the scenario data allows accounting for the delays in scheduling the production process and produce more accurate simulation results (Matsumoto, [0007]: “This causes a delay in the start time and end time of the third process using equipment 4 for the first order, and as a result, in a manner similar to FIG. 16, the schedule of the process using the equipment 4 for the second order is affected.”) (Matsumoto, [0112]: “Next, the simulation processing module 012 updates the schedule data 023 (S1108). The schedule data 023 is updated to reflect “delay in process start time,” “delay in order start time,” or “change in planned equipment” caused by the event occurrence.”) (Matsumoto, [0063]: “Also, the planned start time 503 and the planned equipment ID 504 may be updated by the scheduler in order to create a more efficient new schedule in Step S1111 of the simulation process flow, taking into account the relationship with the respective processes or other orders.”).
Therefore, Asami/Matsumoto/Matsuya/Komasu teaches
execute the pseudo model, based on scenario data that represents a scenario including that any delay does not occur at all or a delay occurs in one or more tasks (Asami, Pg. 5, Para. 8: “As described above, according to the present embodiment, a model of a production line composed of the same processes as an actual production line in a factory can be configured on a computer and a simulation can be executed.”) (Asami, Pg. 3, Para. 10: “The simulation execution unit 50 includes a line configuration unit 52 and a calculation unit 54. The line configuration unit 52 analyzes the production management data and creates a flow diagram representing the flow of processes of the production line to be simulated. The computing unit 54 computes the processing quantity, processing time, etc. of the material in each process of the production line with reference to the created flow diagram, layout sheet, layer, and various parameters. Furthermore, based on the calculation results, the number of final products produced, production time, and the like are calculated.”) (Asami, Pg. 5, Para. 7: “The calculation unit 54 refers to the production management data, layout sheet, layer, and various parameters, and calculates the production time, the number of products, etc. of the product in a given production line (S18).”) (Asami, Pg. 2, Para. 8: “The layout sheet holding unit holds a layout sheet configured to join a plurality of production lines in a predetermined process, and the production management data holding unit includes a plurality of input material data and the predetermined process.”) (Asami, Pg. 4, Para. 9: “FIG. 7 shows an example of the production management data 200. … The “flow number” column 204 represents a flow number indicating a connection before and after the process. … The “process” column 208 includes a column representing the order, number, name, and step number of each process.”) (Matsumoto, [0045]: “The type 201 is a field showing a type of event that could occur and has “increase in process work time,” “delay in process start time,” “delay in order start time,”) (Matsumoto, [0083]: “Next, the event occurrence processing module 011 determines whether an event such as an increase in process work time or a delay in start time occurs or not for each process of each order obtained from the read-out production result data 025 in the simulation (S903)”) (Matsumoto, [0086]: “If the process is affected by the occurrence of the event, the simulation takes into consideration a delay in the process work time by the occurrence of the event and the like. If the process is not affected by the occurrence of the event, the simulation is conducted based on the process start time and work time of the original schedule.”).
Regarding claim 3, Asami/Matsumoto/Matsuya/Komasu teaches
wherein the pseudo model includes a start time and a completion time of the task (Asami, Pg. 4: “FIG. 5 shows an example of the production line operation time input form 400, in which a production start time 402, an end time 404, and an operation time 406 therebetween can be set.”), and
a relationship between a resource and the task (Asami, Pg. 2: “A data holding unit, a machine (resource) used in each process or an equipment data holding unit that holds equipment data including information on the production capacity of work in each process (task)”),
wherein the resource related to each of the one or more tasks is at least one of the resource as an object itself, and the resource for a process for an object (Asami, Pg. 2: “The layout sheet holding unit holds a layout sheet configured to join a plurality of production lines in a predetermined process, and the production management data holding unit includes a plurality of input material data (object) and the predetermined process. … the production management data holding unit has one input material for the predetermined process.”) (Asami, Pg. 2: “A data holding unit, a machine used in each process or an equipment data holding unit that holds equipment data including information on the production capacity of work in each process”) (Asami, Pg. 3: “In this specification, “Production line” is the connection of multiple processes to obtain a certain final product (object)”), and
wherein the scenario is at least one delay, with respect to each of the one or more tasks, of a delay caused by an object related to the task, and a delay caused by the resource related to the task (Matsumoto, [0007]: “FIG. 17 is a diagram showing an example in which a fault of the production machine or an investigation on the location of work-in-process took place. In this example, a time between the second process and the third process for the first order is made longer. This causes a delay in the start time and end time of the third process using equipment 4 for the first order”).
The already provided combination is applicable.
Regarding claim 10, Asami/Matsumoto/Matsuya/Komasu teaches
wherein in (B), at least one processor is configured to: (b1) identify one or more start time groups, and one or more completion time groups (Asami, Pg. 3, Para. 5: “Each block shown here can be realized in terms of hardware by elements such as a CPU and a memory of a computer, and in terms of software, it can be realized by a computer program or the like loaded in the memory.”) (Matsumoto, [0075]: “The production result data 025 includes order 801, process sequence 802, standard time 803, equipment ID 804, start time 805, and completion time 806 as the data fields.”) (Matsumoto, [0077]: “The production result data 025 is used to initially create the schedule data 023 and the process definition data 024 for each process used for the simulation.”) (Matsumoto, [0061]: “The schedule data 023 includes order 501, process sequence 502, planned start time 503, and planned equipment ID 504 as the data fields.”),
where the start time group includes one or more given start times of the macro task that are sequential in a time series manner, and in the start time group, a difference between adjacent given start times is equal to or less than a certain value (Matsumoto, [0113]: “That is, the simulation processing module 012 adds elements to the schedule data 023 such that the process work of the process sequence 1 is started immediately after the completion time of the current work and the respective subsequent processes are successively conducted …. That is, the simulation processing module 012 adds elements to the schedule data 023 such that the process work of the process sequence 1 is started immediately after the completion time of the last process of the current order and the respective subsequent processes are successively conducted”) (Matsumoto, Figs. 15-20 show sequential, time series processes.), and
the completion time group includes one or more given completion times of the macro task that are sequential in a time series manner, and in the completion time group, a difference between adjacent given completion times is equal to or less than a certain value (Matsumoto, [0113]: “That is, the simulation processing module 012 adds elements to the schedule data 023 such that the process work of the process sequence 1 is started immediately after the completion time of the current work and the respective subsequent processes are successively conducted …. That is, the simulation processing module 012 adds elements to the schedule data 023 such that the process work of the process sequence 1 is started immediately after the completion time of the last process of the current order and the respective subsequent processes are successively conducted”) (Matsumoto, Figs. 15-20 show sequential, time series processes.),
Examiner notes that in this case, the “certain value” would equal to the work time of a previous process if a subsequent process starts right after the previous process, i.e., the completion time of the previous process is the start time of the subsequent process.
(b2) identify one or more start and completion groups, where the start and completion group is a group that includes one or more start groups and one or more completion groups, and in the start and completion group, every given start time and every given completion time are closed in the start and completion group (Matsumoto, [0075]: “The production result data 025 includes order 801, process sequence 802, standard time 803, equipment ID 804, start time 805, and completion time 806 as the data fields.”) (Matsumoto, [0077]: “The production result data 025 is used to initially create the schedule data 023 and the process definition data 024 for each process used for the simulation.”) (Matsumoto, [0061]: “The schedule data 023 includes order 501, process sequence 502, planned start time 503, and planned equipment ID 504 as the data fields.”),
Examiner notes that according to the description in specification at paragraph [0161], a given start time and a given completion time being “closed” in the start and completion group appears to merely mean that these times are within the group of the start and completion group.
(b3) for each of the start and completion groups, (b3-1) set N basic series of time series are set (Matsumoto, [0063]: “If “delay in the process start time” or “delay in order start” occurs in a particular process, the planned start time 503 of the schedule data 023 is updated. Also, the planned start time 503 and the planned equipment ID 504 may be updated by the scheduler in order to create a more efficient new schedule in Step S1111 of the simulation process flow, taking into account the relationship with the respective processes or other orders.”),
for each of the start and completion groups, N is a natural number and a number that belongs to the start and completion group and is equal to or less than the number of non-standard series (Matsumoto, [0083]: “Next, the event occurrence processing module 011 determines whether an event such as an increase in process work time or a delay in start time occurs or not for each process of each order obtained from the read-out production result data 025 in the simulation (S903).”) (Matsumoto, [0090]: “The event occurrence process is to determine whether an event such as an increase in process work time or a delay in start time is going to occur or not for each order or each process of each order conducted in the simulation.”) (Matsumoto, [0086]: “The simulation process is conducted at timings where the schedule management system detects an occurrence of an event and performs rescheduling based on the detection timings. If the process is affected by the occurrence of the event, the simulation takes into consideration a delay in the process work time by the occurrence of the event and the like. If the process is not affected by the occurrence of the event, the simulation is conducted based on the process start time and work time of the original schedule. After the time at which an event is detected and the rescheduling is performed … a simulation is conducted from the start to the end of each process.”) (Matsumoto, [0108]: “Date (simulation current time) is used to determine whether the process has been completed at that time or not, whether the time is a process start time or not, and whether it is the time for the schedule management system to detect an event and perform the rescheduling or not. … updating the schedule data 023 and process definition data 024 in accordance with the event occurrence, rescheduling, and starting and completing the respective processes. Thereafter, the simulation processing module 012 increments Date (simulation current time) and repeatedly conducts the subsequent processes on all of the remaining data obtained in S1102.”),
Examiner notes that this limitation corresponds to identifying whether a given process is a process with a delay. One of ordinary skill in the art would understand that if this is done for each process of a plurality of processes, then it would give a total number of non-standard series. It would be obvious that the number of basic series is less than or equal to the number of non-standard series because basic series by definition is a subset of a given series.
(b3-2) for each of the N basic series, (b3-2-1) an entire m-th basic series that is the basic series is moved so as to overlay the completion time of the m-th basic series on the completion time of the non-standard series corresponding to the m-th basic series (Matsumoto, [0086]: “The simulation process is conducted at timings where the schedule management system detects an occurrence of an event and performs rescheduling based on the detection timings. If the process is affected by the occurrence of the event, the simulation takes into consideration a delay in the process work time by the occurrence of the event and the like. If the process is not affected by the occurrence of the event, the simulation is conducted based on the process start time and work time of the original schedule.”) (Matsumoto, [0108]: “Date (simulation current time) is used to determine whether the process has been completed at that time or not, whether the time is a process start time or not, and whether it is the time for the schedule management system to detect an event and perform the rescheduling or not. … updating the schedule data 023 and process definition data 024 in accordance with the event occurrence, rescheduling, and starting and completing the respective processes. Thereafter, the simulation processing module 012 increments Date (simulation current time) and repeatedly conducts the subsequent processes on all of the remaining data obtained in S1102.”) (Matsumoto, [0112]: “The schedule data 023 is updated to reflect “delay in process start time,” “delay in order start time,””) (Matsumoto, See Figs. 15-20 for how the schedule (start and end time) has updated to reflect the delays),
(b3-2-2) an entire upper level time group of the m-th basic series is moved so as to overlay the start time of the m-th basic series on the start time of the non-standard series corresponding to the m-th basic series (Matsumoto, [0086]: “The simulation process is conducted at timings where the schedule management system detects an occurrence of an event and performs rescheduling based on the detection timings. If the process is affected by the occurrence of the event, the simulation takes into consideration a delay in the process work time by the occurrence of the event and the like. If the process is not affected by the occurrence of the event, the simulation is conducted based on the process start time and work time of the original schedule. After the time at which an event is detected and the rescheduling is performed … a simulation is conducted from the start to the end of each process.”) (Matsumoto, [0108]: “Date (simulation current time) is used to determine whether the process has been completed at that time or not, whether the time is a process start time or not, and whether it is the time for the schedule management system to detect an event and perform the rescheduling or not. … updating the schedule data 023 and process definition data 024 in accordance with the event occurrence, rescheduling, and starting and completing the respective processes. Thereafter, the simulation processing module 012 increments Date (simulation current time) and repeatedly conducts the subsequent processes on all of the remaining data obtained in S1102.”) (Matsumoto, [0112]: “The schedule data 023 is updated to reflect “delay in process start time,” “delay in order start time,””) (Matsumoto, See Figs. 15-20 for how the schedule (start and end time) has updated to reflect the delays),
Examiner notes that the steps of moving basic series correspond to rescheduling the processes in a delay present group to reflect the delays, by aligning the start times and end times.
a first basic series is a basic series having a latest start time among the N basic series (Matsumoto, [0063]: “If “delay in the process start time” or “delay in order start” occurs in a particular process, the planned start time 503 of the schedule data 023 is updated. Also, the planned start time 503 and the planned equipment ID 504 may be updated by the scheduler in order to create a more efficient new schedule in Step S1111 of the simulation process flow, taking into account the relationship with the respective processes or other orders.”) (Matsumoto, [0086]: “The simulation process is conducted at timings where the schedule management system detects an occurrence of an event and performs rescheduling based on the detection timings. If the process is affected by the occurrence of the event, the simulation takes into consideration a delay in the process work time by the occurrence of the event and the like. If the process is not affected by the occurrence of the event, the simulation is conducted based on the process start time and work time of the original schedule. After the time at which an event is detected and the rescheduling is performed … a simulation is conducted from the start to the end of each process.”) (Matsumoto, [0108]: “Date (simulation current time) is used to determine whether the process has been completed at that time or not, whether the time is a process start time or not, and whether it is the time for the schedule management system to detect an event and perform the rescheduling or not. … updating the schedule data 023 and process definition data 024 in accordance with the event occurrence, rescheduling, and starting and completing the respective processes. Thereafter, the simulation processing module 012 increments Date (simulation current time) and repeatedly conducts the subsequent processes on all of the remaining data obtained in S1102.”), and
Examiner notes that this limitation appears to merely assign one of the basic series to a “first basic series” so as to locate the “m-th” basic series in terms of the first basic series. When counting the basic series, it would be obvious to start the count from either end of the series.
for each basic series, the upper level time group includes times including the start time of the basic series to an m-th time, and a first time is the start time (Matsumoto, [0075]: “The production result data 025 includes order 801, process sequence 802, standard time 803, equipment ID 804, start time 805, and completion time 806 as the data fields.”) (Matsumoto, [0077]: “The production result data 025 is used to initially create the schedule data 023 and the process definition data 024 for each process used for the simulation.”) (Matsumoto, [0111]: “The process definition data 024 is updated to reflect an increase in process work time caused by the event occurrence and a change in the earliest start time. … If the type 301 is “delay in process start time,” the simulation processing module 012 delays the earliest start time 604.”) (Matsumoto, Figs. 15-20).
The already provided combination is applicable.
Regarding claim 11, Asami discloses
wherein the pseudo model includes an execution order of a plurality of macro tasks (Pg. 2: “The layout sheet holding unit holds a layout sheet configured to join a plurality of production lines in a predetermined process, and the production management data holding unit includes a plurality of input material data and the predetermined process (macro tasks).”) (Pg. 4: “FIG. 7 shows an example of the production management data 200. … The “flow number” column 204 represents a flow number indicating a connection before and after the process. … The “process” column 208 includes a column representing the order, number, name, and step number of each process.”),
each of the macro tasks includes one or more tasks where the execution order is specified (Pg. 4: “FIG. 7 shows an example of the production management data 200. … The “flow number” column 204 represents a flow number indicating a connection before and after the process. … The “process” column 208 includes a column representing the order, number, name, and step number of each process.”).
Asami does not explicitly disclose
for each of the macro tasks, … determine whether pseudo execution data generated for the macro task matches data about a macro task immediately before or immediately after the macro task concerned in an execution order, and
change the pseudo execution data to data violating the scenario in an acceptable range, when a result of the determination is false.
However, Matsumoto teaches comparing the execution result to a planned schedule ([0005]: “a discrepancy between the initial schedule and the actual production”) ([0109]: “Next, the simulation processing module 012 determines whether the event identified in FIG. 9 occurs at the time indicated by Date (simulation current time) or not for each schedule data 023 (S1106). If Date (simulation current time) has reached the planned start time 503 of the process at which the event is predicted to occur, the simulation processing module 012 determines that the event occurs at that time.”) ([0110]: “if the planned start time 503 of the extracted schedule data 023 equals to Date (simulation current time), the simulation processing module 012 determines that the predicted event (event that causes a delay in process) occurs at that time.”) ([0117]: “That is, the simulation processing module 012 determines whether the Date (simulation current time) matches with the planned rescheduling time or not.”).
Matsumoto also teaches the data about a macro task immediately before or immediately after the macro task concerned in an execution order ([0113]: “That is, the simulation processing module 012 adds elements to the schedule data 023 such that the process work of the process sequence 1 is started immediately after the completion time of the current work and the respective subsequent processes are successively conducted, and then sets the scheduled start time for each addition element.”).
Furthermore, Matsumoto teaches changing/updating the pseudo execution data in response to determining a violation ([0112]: “Next, the simulation processing module 012 updates the schedule data 023 (S1108).”) ([0117]: “Next, the simulation processing module 012 determines whether rescheduling is necessary or not (S1110), and if the rescheduling is necessary, the simulation processing module 012 performs the rescheduling (S1111). Rescheduling is to update the planned start time 503 and planned equipment 504 to proper values in the schedule data … That is, the simulation processing module 012 determines whether the Date (simulation current time) matches with the planned rescheduling time or not.”).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify Asami/Matsumoto/Matsuya/Komasu to incorporate the teachings of Matsumoto to compare the execution data to a scenario data, detect any violation, and change the pseudo execution data in response to detecting the violation.
One of ordinary skill in the art would have been motivated to make this modification because a reschedule could be performed if there is a violation, which generates a more efficient schedule (Matsumoto, [0123]: “If an event does not occur, it is not necessary for the simulation processing module 012 to perform the rescheduling, and therefore, the simulation processing module 012 conducts a simulation using the current schedule data 023.”) (Matsumoto, [0063]: “Also, the planned start time 503 and the planned equipment ID 504 may be updated by the scheduler in order to create a more efficient new schedule in Step S1111 of the simulation process flow, taking into account the relationship with the respective processes or other orders.”).
Therefore, Asami/Matsumoto/Matsuya/Komasu teaches
for each of the macro tasks, the at least one processor is configured to: determine whether pseudo execution data generated for the macro task matches data about a macro task immediately before or immediately after the macro task concerned in an execution order (Asami, Pg. 3, Para. 5: “Each block shown here can be realized in terms of hardware by elements such as a CPU and a memory of a computer, and in terms of software, it can be realized by a computer program or the like loaded in the memory.”) (Matsumoto, [0005]: “a discrepancy between the initial schedule and the actual production”) (Matsumoto, [0109]: “Next, the simulation processing module 012 determines whether the event identified in FIG. 9 occurs at the time indicated by Date (simulation current time) or not for each schedule data 023 (S1106). If Date (simulation current time) has reached the planned start time 503 of the process at which the event is predicted to occur, the simulation processing module 012 determines that the event occurs at that time.”) (Matsumoto, [0110]: “if the planned start time 503 of the extracted schedule data 023 equals to Date (simulation current time), the simulation processing module 012 determines that the predicted event (event that causes a delay in process) occurs at that time.”) (Matsumoto, [0117]: “That is, the simulation processing module 012 determines whether the Date (simulation current time) matches with the planned rescheduling time or not.”) (Matsumoto, [0113]: “That is, the simulation processing module 012 adds elements to the schedule data 023 such that the process work of the process sequence 1 is started immediately after the completion time of the current work and the respective subsequent processes are successively conducted, and then sets the scheduled start time for each addition element.”), and
change the pseudo execution data to data violating the scenario in an acceptable range, when a result of the determination is false (Matsumoto, [0112]: “Next, the simulation processing module 012 updates the schedule data 023 (S1108).”) (Matsumoto, [0117]: “Next, the simulation processing module 012 determines whether rescheduling is necessary or not (S1110), and if the rescheduling is necessary, the simulation processing module 012 performs the rescheduling (S1111). Rescheduling is to update the planned start time 503 and planned equipment 504 to proper values in the schedule data … That is, the simulation processing module 012 determines whether the Date (simulation current time) matches with the planned rescheduling time or not.”).
Regarding claim 13, Asami/Matsumoto/Matsuya/Komasu teaches
obtain pseudo execution data by executing the pseudo model in parallel with execution of the on-site process (Asami, Pg. 3, Para. 10: “The simulation execution unit 50 includes a line configuration unit 52 and a calculation unit 54. The line configuration unit 52 analyzes the production management data and creates a flow diagram representing the flow of processes of the production line to be simulated. The computing unit 54 computes the processing quantity, processing time, etc. of the material in each process of the production line with reference to the created flow diagram, layout sheet, layer, and various parameters. Furthermore, based on the calculation results, the number of final products produced, production time, and the like are calculated.”) (Asami, Pg. 5, Para. 7: “The calculation unit 54 refers to the production management data, layout sheet, layer, and various parameters, and calculates the production time, the number of products, etc. of the product in a given production line (S18).”) (Matsumoto, [0074]: “The production result data 025 is a table that includes the start time and work time collected from the manufacturing site by the POP (point of production) system for each process of each order.”) (Matsumoto, [0081]: “First, the production result data 025 is read out (S901). Then, in order to conduct a simulation process for all of the processes having the production results, the event occurrence processing module 011 reads out all the data stored in the production result data 025.”),
determine whether a condition defined as an abnormality is satisfied based on the pseudo execution data and on actual execution data obtained accompanied by execution of the on-site process (Matsumoto, [0005]: “a discrepancy between the initial schedule and the actual production”) (Matsumoto, [0109]: “Next, the simulation processing module 012 determines whether the event identified in FIG. 9 occurs at the time indicated by Date (simulation current time) or not for each schedule data 023 (S1106). If Date (simulation current time) has reached the planned start time 503 of the process at which the event is predicted to occur, the simulation processing module 012 determines that the event occurs at that time.”) (Matsumoto, [0110]: “if the planned start time 503 of the extracted schedule data 023 equals to Date (simulation current time), the simulation processing module 012 determines that the predicted event (event that causes a delay in process) occurs at that time.”) (Matsumoto, [0117]: “That is, the simulation processing module 012 determines whether the Date (simulation current time) matches with the planned rescheduling time or not.”), and
output the abnormality when a result of the determination is true (Asami, Pg. 3: “The user can … browse the output result via the user terminal 20”) (Asami, Pg. 5: “The output unit 62 outputs the simulation result to the user terminal 20 (S20).”).
The already provided combination is applicable.
Regarding claim 14, Asami/Matsumoto/Matsuya/Komasu teaches
construct scenario data representing the scenario (Asami, Pg. 2: “The import unit 60, instead of allowing the user to input data necessary for the simulation at the user terminal, data such as the created production management data, layout sheet, and various parameters into a data format that the production line simulation apparatus 10 can read.”) (Asami, Pg. 4: “The production management data 200 may be created in a spreadsheet format such as Excel, or may be created in a text format such as CSV.”),
based on data of data where a cause of target delay occurrence and an occurrence rate of the delay are designated (Matsumoto, [0007]: “FIG. 17 is a diagram showing an example in which a fault of the production machine or an investigation on the location of work-in-process took place. In this example, a time between the second process and the third process for the first order is made longer. This causes a delay in the start time and end time of the third process using equipment 4 for the first order”), and
data on knowledge of the OT-side process (Asami, Pg. 5: “First, on the layout screen provided by the layout editor control unit 32 through the user terminal 20, the user creates a layout sheet that expresses a production line to be simulated and a layer that defines transport equipment between processes, and each layout sheet holding unit 44 And stored in the layer holding unit 45 (S10). The user creates production management data expressing input materials, discharge materials and flows between processes in each process and stores them in the production management data holding unit 42 (S12). Also, equipment parameters that define equipment performance in each process and transport equipment parameters that define the performance of each transport equipment are created and stored in the parameter holding unit 46 (S14). Further, the operation time of the production line is set (S16). Note that the order of S10 to S16 can be arbitrarily changed.”),
upon input of the data (Asami, Pg. 2: “The import unit 60, instead of allowing the user to input data necessary for the simulation at the user terminal, data such as the created production management data, layout sheet, and various parameters into a data format that the production line simulation apparatus 10 can read.”) (Asami, Pg. 2: “You may further provide the import part which imports the said production management data from the outside of the said production line simulation apparatus.”), and
execute the pseudo model, based on the scenario data (Asami, Pg. 5: “As described above, according to the present embodiment, a model of a production line composed of the same processes as an actual production line in a factory can be configured on a computer and a simulation can be executed.”) (Asami, Pg. 4: “FIG. 7 shows an example of the production management data 200. … The “flow number” column 204 represents a flow number indicating a connection before and after the process. … The “process” column 208 includes a column representing the order, number, name, and step number of each process.”).
The already provided combination is applicable.
Claim 15 is substantially similar to claim 1. Therefore, the similar analysis as claim 1 is applicable.
Claim 16 is substantially similar to claim 1. Therefore, the similar analysis as claim 1 is applicable.
Furthermore, Asami/Matsumoto/Matsuya teaches a non-transitory computer readable storage medium (Asami, Pg. 3: “Thus, data can be shared. Spreadsheets may be exchanged between departments without being connected via the network 12 in a state of being recorded on a recording medium.”).
Claim(s) 4 is/are rejected under 35 U.S.C. 103 as being unpatentable over Asami in view of Matsumoto in further view of Matsuya in further view of Komasu in further view of Al-bayati et al. (“Multitask Implementation of Synchronous Reactive Models with Earliest Deadline First Scheduling”), hereinafter Al-bayati.
Regarding claim 4, Asami/Matsumoto/Matsuya/Komasu teaches
wherein the pseudo model includes an execution order of a plurality of macro tasks (Asami, Pg. 2: “The layout sheet holding unit holds a layout sheet configured to join a plurality of production lines in a predetermined process, and the production management data holding unit includes a plurality of input material data and the predetermined process (macro tasks).”) (Asami, Pg. 4: “FIG. 7 shows an example of the production management data 200. … The “flow number” column 204 represents a flow number indicating a connection before and after the process. … The “process” column 208 includes a column representing the order, number, name, and step number of each process.”),
wherein each of the macro tasks includes one or more tasks where the execution order is specified (Asami, Pg. 4: “FIG. 7 shows an example of the production management data 200. … The “flow number” column 204 represents a flow number indicating a connection before and after the process. … The “process” column 208 includes a column representing the order, number, name, and step number of each process.”).
Asami/Matsumoto/Matsuya/Komasu does not explicitly teach a delay caused by latency for synchronization between two or more macro tasks.
However, Al-bayati teaches a delay caused by latency for synchronization between two or more tasks in a synchronous system (Pg. 177: “In this paper, we consider the optimization of the multitask implementation for synchronous reactive models scheduled with dynamic priority (EDF).”) (Pg. 170: “Figure 2 shows the effect of the added delay on the input/output relation. Any such added delay will cause an increase in end-to-end latency”) (Pg. 170: “Such added delays change the behavior of the model, and affect the performance of the control algorithm”).
Asami/Matsumoto/Matsuya/Komasu and Al-bayati are analogous to the claimed invention because they are in the same field of scheduling synchronous tasks in a model.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the scenario data of Asami/Matsumoto/Matsuya/Komasu to incorporate the teachings for a delay caused by latency for synchronization of Al-bayati to include delay caused by latency for synchronization in the scenario data.
One of ordinary skill in the art would have been motivated to make this modification because taking such delays caused by latency for synchronization in a multitask system allows finding an optimal schedule even in the presence of such delays (Al-bayati, Pg. 169: “In some cases, a correct task implementation is not schedulable unless the designer modifies the model by adding functional delays on selected links with performance and memory costs. The issue can be formalized as a design optimization problem: finding the schedulable implementation that requires the addition of the minimum number of functional delays, or, as better stated, the delays with minimum performance and memory penalty.”).
Therefore, the combination of Asami/Matsumoto/Matsuya/Komasu and Al-bayati teaches
wherein the scenario includes a delay caused by latency for synchronization between two or more macro tasks (Asami, Pg. 2: “The layout sheet holding unit holds a layout sheet configured to join a plurality of production lines in a predetermined process, and the production management data holding unit includes a plurality of input material data and the predetermined process.”) (Asami, Pg. 4: “FIG. 7 shows an example of the production management data 200. … The “flow number” column 204 represents a flow number indicating a connection before and after the process. … The “process” column 208 includes a column representing the order, number, name, and step number of each process.”) (Al-bayati, Pg. 170: “Figure 2 shows the effect of the added delay on the input/output relation. Any such added delay will cause an increase in end-to-end latency”) (Al-bayati, Pg. 170: “Such added delays change the behavior of the model, and affect the performance of the control algorithm”).
Claim(s) 5 is/are rejected under 35 U.S.C. 103 as being unpatentable over Asami in view of Matsumoto in further view of Matsuya in further view of Komasu in further view of Puissant et al. (“Resolving model inconsistencies using automated regression planning”), hereinafter Puissant.
Regarding claim 5, Asami/Matsumoto/Matsuya/Komasu does not explicitly teach
determining a presence or absence of a contradiction in the scenario represented by the scenario data, based on the pseudo model; and
resolving the contradiction when the determination is true and the contradiction is allowed to be resolved within a range of a predetermined rule.
However, Puissant teaches determining the presence or absence of a contradiction in a model data (Pg. 464: “We specify the models using Praxis [15]. It comes with a suite of Eclipse plugins to reason about ECore and XMI models … to detect model inconsistencies.”) (Pg. 465: “An inconsistency is detected if it matches the pattern defined by the inconsistency type.”) (See Fig. 1 for an example of an inconsistencies in model data); and resolving the contradiction when the determination is true and the contradiction is allowed to be resolved within a range of a predetermined rule (Pg. 462: “The problem domain (e.g., model inconsistency resolution) is expressed as a set of possible actions (e.g., to change a model). A possible action specifies a valid way to go from one state to another.”) (Pg. 462: “Automated planning aims to generate plans, i.e., sequences of actions that lead from an initial state to a state meeting a specific predefined goal.”).
Examiner notes that the model data of Puissant corresponds to the scenario data because they both contain necessary model variables and parameters according to a syntax.
Asami/Matsumoto/Matsuya/Komasu and Puissant are analogous to the claimed invention because they are in the same field of modeling based on scenario data.
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the teachings for detecting and resolving inconsistencies in a model of Puissant into the scenario data and pseudo model of Asami/Matsumoto/Matsuya/Komasu to provide a preprocess of determining presence of a contradiction in the scenario based on the pseudo model and resolve it using a predetermined rule.
One of ordinary skill in the art would have been motivated to make this modification because inconsistencies are inevitable in models, and therefore there is a need to address inconsistencies (Puissant, Pg. 461: “Such model inconsistencies are inevitable [3], because a software system’s description is composed of a wide diversity of models, some of which are developed and maintained in parallel.”).
Therefore, the combination of Asami/Matsumoto/Matsuya/Komasu and Puissant teaches
wherein the at least one processor is configured to perform a preprocess, and wherein the preprocess includes: determining a presence or absence of a contradiction in the scenario represented by the scenario data, based on the pseudo model (Asami, Pg. 3, Para. 5: “Each block shown here can be realized in terms of hardware by elements such as a CPU and a memory of a computer, and in terms of software, it can be realized by a computer program or the like loaded in the memory.”) (Asami, Pg. 5: “As described above, according to the present embodiment, a model of a production line composed of the same processes as an actual production line in a factory can be configured on a computer and a simulation can be executed.”) (Asami, Pg. 2: “The layout sheet holding unit holds a layout sheet configured to join a plurality of production lines in a predetermined process, and the production management data holding unit includes a plurality of input material data and the predetermined process.”) (Puissant, Pg. 464: “We specify the models using Praxis [15]. It comes with a suite of Eclipse plugins to reason about ECore and XMI models … to detect model inconsistencies.”) (Puissant, Pg. 465: “An inconsistency is detected if it matches the pattern defined by the inconsistency type.”) (Puissant, Fig. 1); and
resolving the contradiction when the determination is true and the contradiction is allowed to be resolved within a range of a predetermined rule (Puissant, Pg. 462: “The problem domain (e.g., model inconsistency resolution) is expressed as a set of possible actions (e.g., to change a model). A possible action specifies a valid way to go from one state to another.”) (Puissant, Pg. 462: “Automated planning aims to generate plans, i.e., sequences of actions that lead from an initial state to a state meeting a specific predefined goal.”).
Claim(s) 6 is/are rejected under 35 U.S.C. 103 as being unpatentable over Asami in view of Matsumoto in further view of Matsuya in further view of Komasu in further view of Ringrose et al. (US20060041458A1), hereinafter Ringrose.
Regarding claim 6, Asami/Matsumoto/Matsuya/Komasu does not explicitly teach allocating an instance of resource or an occurrence time of the delay to a resource.
However, Ringrose teaches allocating resources according to scenarios that represent constraints and operational conditions ([0003]: “This disclosure relates to systems for the creation and use of scenarios that represent and/or Simulate Sets of constraints and operational conditions under which resources are allocated by resource-allocation systems.”) ([0026]: “The scenario creation and editing systems described herein can be employed in resource-allocation systems for any of a wide variety of business environments in which the allocation of resources such as (without limitation) worker time, equipment, machinery, and/or supplies need to be distributed under constraints such as (without limitation) physical space, demand for services, worker contracts, and/or operational conditions.”) ([0030]: “The allocation module applies those business rules to the operational data 104 and may produce as output a resource allocation plan (128, 130) corresponding to each scenario.”).
Asami/Matsumoto/Matsuya/Komasu and Ringrose are analogous to the claimed invention because they are in the same field of simulating/modeling business environments based on scenario data.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the teachings for allocating resources based on a scenario data taught by Ringrose into the resources and delay information of Asami/Matsumoto/Matsuya/Komasu to allocate an instance of each resource to the resource and an occurrence time of the delay to the resource based on the scenario.
Examiner notes that since Ringrose teaches allocating resources according to the constraints and operational conditions represented by the scenario data, it would be obvious for one of ordinary skill in the art to allocate an occurrence time of the delay to the resource when the delay information is given by the scenario. Ringrose also mentions the scenario including time-dependent components and taking into account the time-dependent components when allocating resources ([0084]: “Because the scenario (or the rules contained in the scenario) can include time-dependent components, the projection may take into account the fact that demand for the airport's services is not constant over time.”).
One of ordinary skill in the art would have been motivated to make this modification because resource allocation issue arises in business environments, and it is ideal to allocate resources in an efficient manner (Ringrose, [0005]: “The problem of resource allocation arises in a wide variety of business environments in which it is necessary to structure the use at a business facility of limited resources such as worker hours, machinery, and/or equipment according to constraints imposed by such considerations as physical space, demand for services offered by the facility, and/or worker contracts. Any such resource allocation ideally should optimize the efficiency of the facility while minimizing operating costs.”).
Therefore, the combination of Asami/Matsumoto/Matsuya/Komasu and Ringrose teaches
wherein the at least one processor is configured to perform an instantiation process, and the instantiation process includes: allocating of an instance of each resource represented by the scenario, to the resource, based on the pseudo model and the scenario data (Asami, Pg. 3, Para. 5: “Each block shown here can be realized in terms of hardware by elements such as a CPU and a memory of a computer, and in terms of software, it can be realized by a computer program or the like loaded in the memory.”) (Asami, Pg. 5: “As described above, according to the present embodiment, a model of a production line composed of the same processes as an actual production line in a factory can be configured on a computer and a simulation can be executed.”) (Asami, Pg. 2: “The layout sheet holding unit holds a layout sheet configured to join a plurality of production lines in a predetermined process, and the production management data holding unit includes a plurality of input material data and the predetermined process.”) (Asami, Pg. 2: “A data holding unit, a machine (resource) used in each process or an equipment data holding unit that holds equipment data including information on the production capacity of work in each process”) (Ringrose, [0003]: “This disclosure relates to systems for the creation and use of scenarios that represent and/or Simulate Sets of constraints and operational conditions under which resources are allocated by resource-allocation systems.”) (Ringrose, [0026]: “The scenario creation and editing systems described herein can be employed in resource-allocation systems for any of a wide variety of business environments in which the allocation of resources such as (without limitation) worker time, equipment, machinery, and/or supplies need to be distributed under constraints such as (without limitation) physical space, demand for services, worker contracts, and/or operational conditions.”) (Ringrose, [0030]: “The allocation module applies those business rules to the operational data 104 and may produce as output a resource allocation plan (128, 130) corresponding to each scenario.”); and
allocating of an occurrence time of the delay to the resource where the delay occurs among the resources represented by the scenario (Asami, Pg. 2: “The layout sheet holding unit holds a layout sheet configured to join a plurality of production lines in a predetermined process, and the production management data holding unit includes a plurality of input material data and the predetermined process.”) (Matsumoto, [0045]: “The type 201 is a field showing a type of event that could occur and has “increase in process work time,” “delay in process start time,” “delay in order start time,”) (Ringrose, [0003]: “This disclosure relates to systems for the creation and use of scenarios that represent and/or Simulate Sets of constraints and operational conditions under which resources are allocated by resource-allocation systems.”) (Ringrose, [0026]: “The scenario creation and editing systems described herein can be employed in resource-allocation systems for any of a wide variety of business environments in which the allocation of resources such as (without limitation) worker time, equipment, machinery, and/or supplies need to be distributed under constraints such as (without limitation) physical space, demand for services, worker contracts, and/or operational conditions.”) (Ringrose, [0030]: “The allocation module applies those business rules to the operational data 104 and may produce as output a resource allocation plan (128, 130) corresponding to each scenario.”) (Ringrose, [0084]: “Because the scenario (or the rules contained in the scenario) can include time-dependent components, the projection may take into account the fact that demand for the airport's services is not constant over time.”).
Claim(s) 7 is/are rejected under 35 U.S.C. 103 as being unpatentable over Asami in view of Matsumoto in further view of Matsuya in further view of Komasu in further view of Puissant in further view of Ringrose.
Regarding claim 7, Asami/Matsumoto/Matsuya/Komasu/Puissant teaches
wherein the pseudo model includes an execution order of a plurality of macro tasks (Asami, Pg. 2: “The layout sheet holding unit holds a layout sheet configured to join a plurality of production lines in a predetermined process, and the production management data holding unit includes a plurality of input material data and the predetermined process (macro tasks).”) (Asami, Pg. 4: “FIG. 7 shows an example of the production management data 200. … The “flow number” column 204 represents a flow number indicating a connection before and after the process. … The “process” column 208 includes a column representing the order, number, name, and step number of each process.”), and
a control function of controlling execution of the macro tasks (Asami, Pg. 3: “The simulation execution unit 50 includes a line configuration unit 52 and a calculation unit 54. The line configuration unit 52 analyzes the production management data and creates a flow diagram representing the flow of processes of the production line to be simulated.”) (Asami, Pg. 5: “As described above, according to the present embodiment, a model of a production line composed of the same processes as an actual production line in a factory can be configured on a computer and a simulation can be executed.”),
wherein each of the macro tasks includes one or more tasks where the execution order is specified (Asami, Pg. 4: “FIG. 7 shows an example of the production management data 200. … The “flow number” column 204 represents a flow number indicating a connection before and after the process. … The “process” column 208 includes a column representing the order, number, name, and step number of each process.”),
wherein the scenario is at least one delay of following (x) and (y), (x) at least one delay, with respect to each of the one or more tasks, of a delay caused by an object related to the task, and a delay caused by the resource allocated to the task, and (y) a delay caused by latency for synchronization between two or more macro tasks (Matsumoto, [0007]: “FIG. 17 is a diagram showing an example in which a fault of the production machine or an investigation on the location of work-in-process took place. In this example, a time between the second process and the third process for the first order is made longer. This causes a delay in the start time and end time of the third process using equipment 4 for the first order”),
wherein the preprocess … are specified in the control function, wherein the at least one processor is configured to perform the preprocess … that are specified in the control function (Asami, Pg. 3, Para. 5: “Each block shown here can be realized in terms of hardware by elements such as a CPU and a memory of a computer, and in terms of software, it can be realized by a computer program or the like loaded in the memory.”) (Asami, Pg. 3: “The simulation execution unit (control function) 50 includes a line configuration unit 52 and a calculation unit 54. The line configuration unit 52 analyzes the production management data and creates a flow diagram representing the flow of processes of the production line to be simulated.”) (Asami, Pg. 5: “As described above, according to the present embodiment, a model of a production line composed of the same processes as an actual production line in a factory can be configured on a computer and a simulation can be executed.”) (See below for the mappings for the preprocess),
the preprocess includes: determining presence or absence of a contradiction in the scenario represented by the scenario data (Asami, Pg. 2: “The layout sheet holding unit holds a layout sheet configured to join a plurality of production lines in a predetermined process, and the production management data holding unit includes a plurality of input material data and the predetermined process.”) (Puissant, Pg. 464: “We specify the models using Praxis [15]. It comes with a suite of Eclipse plugins to reason about ECore and XMI models … to detect model inconsistencies.”) (Puissant, Pg. 465: “An inconsistency is detected if it matches the pattern defined by the inconsistency type.”) (Puissant, Fig. 1); and
resolving the contradiction when the determination is true and the contradiction is allowed to be resolved within a range of a predetermined rule (Puissant, Pg. 462: “The problem domain (e.g., model inconsistency resolution) is expressed as a set of possible actions (e.g., to change a model). A possible action specifies a valid way to go from one state to another.”) (Puissant, Pg. 462: “Automated planning aims to generate plans, i.e., sequences of actions that lead from an initial state to a state meeting a specific predefined goal.”),
wherein when generating data violating the scenario, the at least one processor is configured to generate scenario violation information that is information representing content of the violation (Asami, Pg. 3, Para. 5: “Each block shown here can be realized in terms of hardware by elements such as a CPU and a memory of a computer, and in terms of software, it can be realized by a computer program or the like loaded in the memory.”) (Matsumoto, [0005]: “a discrepancy between the initial schedule and the actual production”) (Matsumoto, [0109]: “Next, the simulation processing module 012 determines whether the event identified in FIG. 9 occurs at the time indicated by Date (simulation current time) or not for each schedule data 023 (S1106). If Date (simulation current time) has reached the planned start time 503 of the process at which the event is predicted to occur, the simulation processing module 012 determines that the event occurs at that time.”) (Matsumoto, [0110]: “if the planned start time 503 of the extracted schedule data 023 equals to Date (simulation current time), the simulation processing module 012 determines that the predicted event (event that causes a delay in process) occurs at that time.”) (Matsumoto, [0117]: “That is, the simulation processing module 012 determines whether the Date (simulation current time) matches with the planned rescheduling time or not.”), and
output the scenario violation information (Asami, Pg. 3: “The user can … browse the output result via the user terminal 20”) (Asami, Pg. 5: “The output unit 62 outputs the simulation result to the user terminal 20 (S20).”).
Asami/Matsumoto/Matsuya/Komasu/Puissant does not explicitly teach the instantiation process.
However, Ringrose teaches the instantiation process ([0003]: “This disclosure relates to systems for the creation and use of scenarios that represent and/or Simulate Sets of constraints and operational conditions under which resources are allocated by resource-allocation systems.”) ([0026]: “The scenario creation and editing systems described herein can be employed in resource-allocation systems for any of a wide variety of business environments in which the allocation of resources such as (without limitation) worker time, equipment, machinery, and/or supplies need to be distributed under constraints such as (without limitation) physical space, demand for services, worker contracts, and/or operational conditions.”) ([0030]: “The allocation module applies those business rules to the operational data 104 and may produce as output a resource allocation plan (128, 130) corresponding to each scenario.”).
Asami/Matsumoto/Matsuya/Komasu/Puissant and Ringrose are analogous to the claimed invention because they are in the same field of simulating/modeling business environments based on scenario data.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the instantiation process of Ringrose into the control function of Asami/Matsumoto/Matsuya/Komasu/Puissant to execute the instantiation process specified in the control function and allocate an instance of each resource to the resource and an occurrence time of the delay to the resource based on the scenario.
Examiner notes that since Ringrose teaches allocating resources according to the constraints and operational conditions represented by the scenario data, it would be obvious for one of ordinary skill in the art to allocate an occurrence time of the delay to the resource when the delay information is given by the scenario. Ringrose also mentions the scenario including time-dependent components and taking into account the time-dependent components when allocating resources ([0084]: “Because the scenario (or the rules contained in the scenario) can include time-dependent components, the projection may take into account the fact that demand for the airport's services is not constant over time.”).
One of ordinary skill in the art would have been motivated to make this modification because resource allocation issue arises in business environments, and it is ideal to allocate resources in an efficient manner (Ringrose, [0005]: “The problem of resource allocation arises in a wide variety of business environments in which it is necessary to structure the use at a business facility of limited resources such as worker hours, machinery, and/or equipment according to constraints imposed by such considerations as physical space, demand for services offered by the facility, and/or worker contracts. Any such resource allocation ideally should optimize the efficiency of the facility while minimizing operating costs.”).
Therefore, the combination of Asami/Matsumoto/Matsuya/Komasu/Puissant and Ringrose teaches
wherein the preprocess, and the instantiation process are specified in the control function, wherein the at least one processor is configured to perform the preprocess and the instantiation process that are specified in the control function (Asami, Pg. 3, Para. 5: “Each block shown here can be realized in terms of hardware by elements such as a CPU and a memory of a computer, and in terms of software, it can be realized by a computer program or the like loaded in the memory.”) (Asami, Pg. 3: “The simulation execution unit (control function) 50 includes a line configuration unit 52 and a calculation unit 54. The line configuration unit 52 analyzes the production management data and creates a flow diagram representing the flow of processes of the production line to be simulated.”) (Asami, Pg. 5: “As described above, according to the present embodiment, a model of a production line composed of the same processes as an actual production line in a factory can be configured on a computer and a simulation can be executed.”) (See below for the mappings for the instantiation process),
wherein the instantiation process includes: allocating an instance of each resource represented by the scenario, to the resource, based on the pseudo model and the scenario data (Asami, Pg. 2: “The layout sheet holding unit holds a layout sheet configured to join a plurality of production lines in a predetermined process, and the production management data holding unit includes a plurality of input material data and the predetermined process.”) (Asami, Pg. 2: “A data holding unit, a machine (resource) used in each process or an equipment data holding unit that holds equipment data including information on the production capacity of work in each process”) (Ringrose, [0003]: “This disclosure relates to systems for the creation and use of scenarios that represent and/or Simulate Sets of constraints and operational conditions under which resources are allocated by resource-allocation systems.”) (Ringrose, [0026]: “The scenario creation and editing systems described herein can be employed in resource-allocation systems for any of a wide variety of business environments in which the allocation of resources such as (without limitation) worker time, equipment, machinery, and/or supplies need to be distributed under constraints such as (without limitation) physical space, demand for services, worker contracts, and/or operational conditions.”) (Ringrose, [0030]: “The allocation module applies those business rules to the operational data 104 and may produce as output a resource allocation plan (128, 130) corresponding to each scenario.”); and
allocating of an occurrence time of the delay to the resource where the delay occurs among the resources represented by the scenario (Asami, Pg. 2: “The layout sheet holding unit holds a layout sheet configured to join a plurality of production lines in a predetermined process, and the production management data holding unit includes a plurality of input material data and the predetermined process.”) (Matsumoto, [0045]: “The type 201 is a field showing a type of event that could occur and has “increase in process work time,” “delay in process start time,” “delay in order start time,”) (Ringrose, [0003]: “This disclosure relates to systems for the creation and use of scenarios that represent and/or Simulate Sets of constraints and operational conditions under which resources are allocated by resource-allocation systems.”) (Ringrose, [0026]: “The scenario creation and editing systems described herein can be employed in resource-allocation systems for any of a wide variety of business environments in which the allocation of resources such as (without limitation) worker time, equipment, machinery, and/or supplies need to be distributed under constraints such as (without limitation) physical space, demand for services, worker contracts, and/or operational conditions.”) (Ringrose, [0030]: “The allocation module applies those business rules to the operational data 104 and may produce as output a resource allocation plan (128, 130) corresponding to each scenario.”) (Ringrose, [0084]: “Because the scenario (or the rules contained in the scenario) can include time-dependent components, the projection may take into account the fact that demand for the airport's services is not constant over time.”).
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Zhang et al. (CN110796243A)
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 HEIN JEONG whose telephone number is (703)756-1549. The examiner can normally be reached M-F 9am-5pm ET.
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, Renee Chavez can be reached on (571) 270-1104. 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.
/HEIN JEONG/Examiner, Art Unit 2188
/RENEE D CHAVEZ/Supervisory Patent Examiner, Art Unit 2186