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 .
DETAILED ACTION
This final Office action is in response to applicant’s communication received on January 28, 2026, wherein claims 1-3, 5-13, and 15-20 are currently pending. Claim 4 and 14 have been cancelled by the Applicant.
Response to Arguments
Applicant's remarks have been fully considered but they are geared towards the newly heavily amended claims with newly added limitations. The newly added limitations and the heavily amended claims are considered and addressed for the first time the rejection below.
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-3, 5-13, and 15-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to non-statutory subject matter.
Regarding Step 1 (MPEP 2106.03) of the subject matter eligibility test per MPEP 2106.03, Claims 1-3 and 5-11 are directed to a method (i.e., process) and claims 12-13 and 15-20 are directed to an apparatus (i.e. machine). Accordingly, all claims are directed to one of the four statutory categories of invention.
(Under Step 2) The claimed invention is directed to an abstract idea without significantly more.
(Under Step 2A, Prong 1 (MPEP 2106.04)) The independent claims (1, 12) and dependent claims (2-3, 5-11, 13, 15-20) recite constructing/creating task/information flow/workflow tree-node structure (old-well known concept of mathematical graph theory (and data structures) to depict knowledge and flow of information in a graphical manner) using abstract (non-technical) information – by obtaining/receiving/etc., information/data (where the information), data analysis and manipulation to determine more data (logic flows and tree-node analysis; evaluation of value’ comparing information), and providing/displaying this determined data for display and decision-making (systematic task flow/planning). The claimed invention clearly uses mathematical steps/concepts (graph theory, discrete mathematics, and various calculations and using calculated values) to analyze and determine further data.
The limitations of the independent claims (1, 12) and dependent claims (2-3, 5-11, 13, 15-20), under the broadest reasonable interpretation, covers methods of mathematical concepts (graph theory, discrete mathematics, and various calculations and using calculated values (knowledge management to use in task planning)) and organizing human activity (following rules or instructions (task processes/flows; e.g. in sequence)). If a claims limitation, under its broadest reasonable interpretation, covers the performance of the limitation as fundamental economic principles or practices (including hedging, insurance, mitigating risk); commercial or legal interactions (including agreements in the form of contracts; legal obligations; advertising, marketing or sales activities or behaviors; business relations); managing personal behavior or relationships or interactions between people (including scheduling, social activities, teaching, and following rules or instructions), then it falls within the “organizing human activities” grouping of abstract ideas. (MPEP 2106.04; and also see 2019 Revised Patent Subject Matter Eligibility Guidance – Federal Register, Vol. 84, Vol. 4, January 07, 2019, pages 50-57). If a claims limitation, under its broadest reasonable interpretation, covers the performance of the limitation as mathematical relationships, mathematical formulas or equations, mathematical calculations then it falls within the Mathematical concepts grouping of abstract ideas. (MPEP 2106.04; and also see 2019 Revised Patent Subject Matter Eligibility Guidance - Federal Register, Vol. 84, Vol. 4, January 07, 2019, pages 50-57).
Accordingly, since Applicant's claims fall under mathematical concepts grouping and organizing human activities grouping, the claims recite an abstract idea.
(Under Step 2A, prong 2 (MPEP 2106.04(d))) This judicial exception is not integrated into a practical application because but for the recitation of generic/general-purpose computers, processors, and/or computing components/elements/devices, etc., for example, computer-implemented, computing devices, processors, etc., (in Independent claim 1 and its dependent claims 2-3, 5-11); and apparatuses, processors, memories, etc., (in independent claim 12 and its dependent claims 13, 15-20) in the context of the independent claims (1, 12) and dependent claims (2-3, 5-11, 13, 15-20), the independent claims (1, 12) and dependent claims (2-3, 5-11, 13, 15-20) encompass above stated abstract idea mathematical concepts (graph theory, discrete mathematics, and various calculations and using calculated values (knowledge management to use in task planning)) and organizing human activity (following rules or instructions (task processes/flows; e.g. in sequence)). As shown above, the claims and specification recite generic/general-purpose computers, processors, and/or computing components/elements/devices, etc., which are recited at a high level of generality performing generic computer functions. (MPEP 2106.04; and also see 2019 Revised Patent Subject Matter Eligibility Guidance – Federal Register, Vol. 84, Vol. 4, January 07, 2019, page 53-55). The generic/general-purpose computers, processors, and/or computing components/elements/devices, etc., terms/limitations are no more than mere instructions to apply the judicial exception (the above abstract idea) in an apply-it fashion using generic/general-purpose computers, processors, and/or computer components/elements/ devices, etc. The CAFC has stated that it is not enough, however, to merely improve abstract processes by invoking a computer merely as a tool.. Customedia Techs., LLC v. Dish Network Corp., 951 F.3d 1359, 1364 (Fed. Cir. 2020). The focus of the claims is simply to use computers and a familiar network as a tool to perform abstract processes involving simple information exchange. Carrying out abstract processes involving information exchange is an abstract idea. See, e.g., BSG, 899 F.3d at 1286; SAP America, 898 F.3d at 1167-68; Affinity Labs of Tex., LLC v. DIRECTV, LLC, 838 F.3d 1253, 1261-62 (Fed. Cir. 2016). And use of standard computers and networks to carry out those functions—more speedily, more efficiently, more reliably—does not make the claims any less directed to that abstract idea. See Alice Corp., 573 U.S. at 222-25; Customedia, 951 F.3d at 1364; Trading Techs. Int'l, Inc. v. IBG LLC, 921 F.3d 1084, 1092-93 (Fed. Cir. 2019); SAP America, 898 F.3d at 1167; Intellectual Ventures I LLC v. Symantec Corp., 838 F.3d 1307, 1314 (Fed. Cir. 2016); Electric Power Grp., LLC v. Alstom S.A., 830 F.3d 1350, 1353, 1355 (Fed. Cir. 2016); Intellectual Ventures I LLC v. Capital One Bank (USA), 792 F.3d 1363, 1367, 1370 (Fed. Cir. 2015); buySAFE, Inc. v. Google, Inc., 765 F.3d 1350, 1355 (Fed. Cir. 2014). Accordingly, the additional elements do not integrate the abstract idea in to a practical application because it does not impose any meaningful limits on practicing the abstract idea – i.e. they are just post-solution/extra-solution activities.
(Under Step 2B (MPEP 2106.05)) The independent claims (1, 12) and dependent claims (2-3, 5-11, 13, 15-20) do not include additional elements that are sufficient to amount to significantly more than the judicial exception because the claims do not recite an improvement to another technology or technical field, an improvement to the functioning of the computer itself, or meaningful limitations beyond generally linking the use of an abstract idea to a particular technological environment. The claims recite using known and/or generic/general-purpose computers, processors, and/or computing components/elements/devices, etc., and software (for example, computing devices, etc., (in Independent claim 1 and its dependent claims 2-11); and apparatuses, processors, memories, etc., (in independent claim 12 and its dependent claims 13-20)). For the role of a computer in a computer implemented invention to be deemed meaningful in the context of this analysis, it must involve more than performance of "well-understood, routine, [and] conventional activities previously known to the industry." Alice Corp. v. CLS Bank Int'l, 110 USPQ2d 1976 (U.S. 2014), at 2359 (quoting Mayo, 132 S. Ct. at 1294 (internal quotation marks and brackets omitted)). These activities as claimed by the Applicant are all well-known and routine tasks in the field of art – as can been seen in the specification of Applicant’s application (for example, see Applicant’s specification at, for example, fig. 3 and pages 6-8 [general-purpose/generic computers/processors/etc., and generic/general-purpose computing components/devices/etc.,]) and/or the specification of the below cited art (used in the rejection below and on the PTO-892) and/or also as noted in the court cases in §2106.05 in the MPEP. Further, "the mere recitation of a generic computer cannot transform a patent ineligible abstract idea into a patent-eligible invention." Alice, at 2358. None of the hardware offers a meaningful limitation beyond generally linking the system to a particular technological environment, that is, implementation via computers. Adding generic computer components to perform generic functions that are well‐understood, routine and conventional, such as gathering data, performing calculations, and outputting a result would not transform the claim into eligible subject matter. Abstract ideas are excluded from patent eligibility based on a concern that monopolization of the basic tools of scientific and technological work might impede innovation more than it would promote it. The independent claims (1, 12) and dependent claims (2-3, 5-11, 13, 15-20) do not include additional elements that are sufficient to amount to significantly more than the judicial exception because the claims require no more than a generic computer to perform generic computer functions. The additional elements or combination of elements in the independent claims (1, 12) and dependent claims (2-3, 5-11, 13, 15-20) other than the abstract idea per se amount(s) to no more than: (i) mere instructions to implement the idea on a computer, and/or (ii) recitation of generic computer structure that serves to perform generic computer functions that are well-understood, routine, and conventional activities previously known to the pertinent industry. Applicant is directed to the following citations and references: Digitech Image., LLC v. Electronics for Imaging, Inc.(U.S. Patent No. 6,128,415); and (2) Federal register/Vol. 79, No 241 issued on December 16, 2014, page 74629, column 2, Gottschalk v. Benson. Viewed as a whole, the claims do not purport to improve the functioning of the computer itself, or to improve any other technology or technical field. Use of an unspecified, generic computer does not transform an abstract idea into a patent-eligible invention. Thus, the independent claims (1, 12) and dependent claims (2-3, 5-11, 13, 15-20) do not amount to significantly more than the abstract idea itself. See Alice Corp. v. CLS Bank Int'l, 110 USPQ2d 1976 (U.S. 2014).
The dependent claims (2-3, 5-11, 13, 15-20) further define the independent claims and merely narrow the described abstract idea, but not adding significantly more than the abstract idea. The above rejection includes and details the discussion of dependent claims and the above rejection applies to all the dependent claim limitations. In summary, the dependent claims further state using obtained data/information (where the information itself is abstract in nature), data analysis and manipulation to determine more data, and providing/displaying this determined data for display and decision-making (systematic task flow/planning). The claimed invention and dependent claims clearly use mathematical steps/concepts (graph theory, discrete mathematics, and various calculations and using calculated values) to analyze and determine further data. These claims are directed towards mathematical concepts (graph theory, discrete mathematics, and various calculations and using calculated values (knowledge management to use in task planning)) and organizing human activity (following rules or instructions (task processes/flows; e.g. in sequence)). This judicial exception is not integrated into a practical application because the claims and specification recite known and/or generic/general-purpose computers, processors, and/or computing components/elements/devices, etc., and software (for example, computing devices, etc., (in Independent claim 1 and its dependent claims 2-11); and apparatuses, processors, memories, etc., (in independent claim 12 and its dependent claims 13-20)) which are recited at a high level of generality performing generic computer functions. (MPEP 2106.04 and also see 2019 Revised Patent Subject Matter Eligibility Guidance – Federal Register, Vol. 84, Vol. 4, January 07, 2019, page 53-55). The dependent claims also merely recites post-solution/extra-solution activities (with generic/general-purpose computers and/or computing components/devices/etc.,). The additional elements do not integrate the abstract idea in to a practical application because it does not impose any meaningful limits on practicing the abstract idea – i.e. they are just post-solution/extra-solution activities. The dependent claims merely use the same general technological environment and instructions to implement the abstract idea without adding any new additional elements. Also, the dependent claims also do not include additional elements that are sufficient to amount to significantly more than the juridical exception because the additional elements either individually or in combination are merely an extension of the abstract idea itself. See details above.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
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.
Claims 1-3, 5-13, and 15-20 are rejected under 35 U.S.C. 103 as being unpatentable over Gemignani (US 2022/0244708) in view of Galloway et al., (US 2014/0046983).
As per claim 1, Gemignani discloses a method of generating a task plan (Abstract [planner…task]; ¶¶ 0020-0022 [planner…sequence of tasks…planning technique], 0063), which is performed by a computing device including a processor, comprising:
constructing, by the processor, a causal operation network based on a knowledge base (¶¶ 0014-0018 [tree…task performed… subfunctions can further be structured as a combination of parallel and/or sequential nodes…tree comprises nodes including a root node, at least one control flow node and at least one execution node and directed edges. The nodes are connected with the directed edges: the root node has one outgoing edge and no incoming edge, each control flow node has one incoming edge and at least one outgoing edge and each execution node has one incoming edge and no outgoing edge. A node having an outgoing edge is defined as a parent node in relation to another node connected to this edge and a node having an incoming edge is defined as a child node in relation to another node connected to this edge),
wherein constructing the causal operation network comprises generating a plurality of specific operations by at least one numerical parameter according to a estimation rule including a minimum value and a maximum value, a value interval, and connecting the specific operations according to causal relationships determined by matching pre-conditions and post-conditions (¶¶ 0081-0085 [value indicator…data element related to the respective node…data elements can be passed between nodes via their shared link connections…data may be transferred between nodes upon completion of the sending node…data element indicator can achieve the advantage that the respective data element can be accessible to at least two nodes of the behavior tree simultaneously (data element indicator can comprise at least one required input value data indicator. Each required input value data indicator can indicate a data element whose value is required to be passed to the respective node for execution of the respective node. The connections between the nodes in the behavior tree specify the control flow and thereby the order in which the tasks associated with each node, respectively subtree are performed. That is, the directed edges discussed before relate to the control flow. However, this control flow is generally independent of the data flow, i.e., the rules indicating if and how data can be shared between different parts of the behavior tree. In some implementations, specific data elements can be passed between nodes. The specific data elements passed between nodes may not be available globally, to avoid conflicts with specific data elements of other nodes, respectively tasks. A node can be configured to define which data elements will serve as their input and which data elements will serve as their output. Data elements specified as an input can be read by the node, and data elements that are specified as an output can be written to by the node. The required input value indicator can be available to the executor application so that the executor application can take the data requirements into account at a compilation time (i.e., before the behavior tree is executed)); with 0131-0136 [intervals] and 0185], 0207 [recovery node 106 can be a sequence node configured to call its child nodes in a predefined sequence. Specifically, the recovery node 106 can have a loop node 105 linked to it as a first child node and a recovery plan section 107 linked to it as a second child node. The recovery plan section 107 can be a subtree or a single node configured to modify a subtree disposed hierarchically downstream of the loop node 105. Thereby, the recovery plan section 107 can alter the behavior tree 100 to mitigate a failure of the loop node 105. The loop node 105 may fail, for example, when the main task constituted by a plurality of function subtrees fails due to an irrecoverable error in the currently running function subtrees attached either directly to the loop node 105 or attached via proxy nodes downstream of the loop node 105. The alteration to the behavior tree 100 may still require the original main task to succeed, however, the function subtrees or their relative configuration to one another can be changed in such a way that the order or type of actions to be executed is modified.; with 0223-0226 [tree-node navigation and estimating (elements of discretization)]], 0071-0076 [interval…maximum…lower than a required…range (showing minimum and maximum)…intervals]);
constructing, by the processor, a search tree based on the knowledge base and the causal operation network (¶¶ 0014-0018 [tree…task performed… subfunctions can further be structured as a combination of parallel and/or sequential nodes…tree comprises nodes including a root node, at least one control flow node and at least one execution node and directed edges. The nodes are connected with the directed edges: the root node has one outgoing edge and no incoming edge, each control flow node has one incoming edge and at least one outgoing edge and each execution node has one incoming edge and no outgoing edge. A node having an outgoing edge is defined as a parent node in relation to another node connected to this edge and a node having an incoming edge is defined as a child node in relation to another node connected to this edge),
wherein constructing the search tree comprises including the plurality of specific operations as nodes and assigning, to each node, a heuristic evaluation value based on a level of a corresponding specific operation in the causal operation network (for example, see figs. 1-2; ¶¶ 0036-0043 [tree…control flow nodes…tree…traversed…behavior tree, in particular the subtree hierarchically below the control flow node calling the planner section, the behavior tree can be reevaluated and/or adjusted by the planner section…sequence node…task assigned to sequence node], 0097-0101);
generating, by the processor, a task plan based on the search tree (¶¶ 0014-0018 [tree…task performed…subfunctions can further be structured as a combination of parallel and/or sequential nodes…tree comprises nodes including a root node, at least one control flow node and at least one execution node and directed edges. The nodes are connected with the directed edges: the root node has one outgoing edge and no incoming edge, each control flow node has one incoming edge and at least one outgoing edge and each execution node has one incoming edge and no outgoing edge. A node having an outgoing edge is defined as a parent node in relation to another node connected to this edge and a node having an incoming edge is defined as a child node in relation to another node connected to this edge; see with 0021 [nodes…planner…sequence of tasks]], 0063; see also 0035-0038),
by iteratively selecting a node having a smallest heuristic evaluation value and updating a current state using post-conditions associated with the selected node until the current state matches a goal state stored in the knowledge base (¶¶ 0024-0026 [adjusting…tree…preconditions…planner; see with 0221 and 0230], 0036-0038 [update…status…tree…reevaluated and/or adjusted by the planner section; see with 0055-0060 [achieve…task…completed…loop node …step…completed…loop node], 0064 [loop node…configured to execute its child node in a loop for a number of times as long as the loop node succeeds (iteration)], and 0212 [completion node]]).
Gemignani does not explicitly state wherein discretizing at least one numerical parameter according to a discretization rule including a minimum value, and a maximum value.
Analogous art discloses Gallow discloses discretizing at least one numerical parameter according to a discretization rule including a minimum value and a maximum value (¶¶ 0263-0265 [data…discrete…data set…interval; see with 0231, 0238, 0307-0309 [node…relationship… a minimum and a maximum value]], 0295-0299, 0360-0362 [time series…discrete…tree]).
Therefore, it would be obvious to one of ordinary skill in the art to include in the system/method of Gemignani wherein discretizing at least one numerical parameter according to a discretization rule including a minimum value, and a maximum value as taught by analogous art Gallow in order to have optimally planned tasks and workflows since doing so could be performed readily by any person of ordinary skill in the art, with neither undue experimentation, nor risk of unexpected results (KSR-G/TSM); and also since one of ordinary skill in the art at the time of the invention would have recognized that applying the known technique and concepts of Gallow would have yielded predictable results because the level of ordinary skill in the art demonstrated by the references applied shows the ability to incorporate such concepts and features into similar systems (KSR-D). (MPEP 2141; and also see (1) 2007 Examination Guidelines for Determining Obviousness Under 35 U.S.C. 103 in View of the Supreme Court Decision in KSR International Co. v. Teleflex Inc. - Federal Register, Vol. 72, No. 195, October 10, 2007, pages 57526-57535; (2) 2010 Examination Guidelines Updated Developments in the Obviousness Inquiry After KSR v. Teleflex. -Federal Register, Vol. 75, No. 169, September 01, 2010, pages 53643-53660; and (3) materials posted at https://www.uspto.gov/patent/laws-and-regulations/examination-policy/examination-guidelines-training-materials-view-ksr).
As per claim 12, claim 12 discloses substantially similar limitations as claim 1 above; and therefore claim 12 is rejected under the same rationale and reasoning as presented above for claim 1.
As per claim 2, Gemignani discloses the method of claim 1, wherein the knowledge base includes operation knowledge and state knowledge, the operation knowledge includes a specification regarding an operation using a variable with an arbitrary numerical value as a parameter, and the specification includes information on a name of the parameter, an expression type of the parameter, and a discretization rule for discretizing the parameter (¶¶ 0015-0019 [describing complex apparatus behaviors as a composition of sub-functions which can be modular…hierarchical, efficient means for creating complex control systems that are both modular and reactive…nodes including a root node, at least one control flow node and at least one execution node and directed edges… different states… steps of the root node calling its child node, which is a control flow node; the root node's child node calling a first node; the first node returning a first state to the root node's child node; the root node's child node returning a second state to the root node…each node implements one function for executing the corresponding task or action that sets a node-internal execution state to the value RUNNING, SUCCESS, or FAILURE], 0065 [parameters of the apparatus pertaining to functions available via function subtrees, backtracking previously executed steps, i.e., executing functions with inverse parameters and/or in reverse order relative to their execution order; with 0063], 0076-0077 [shown as an example], 0081-0082 [plurality of the nodes may comprise at least one data element indicator indicating at least one data element related to the respective node. Data elements can be passed between nodes via their shared link connections. In particular, the data may be transferred between nodes upon completion of the sending node. A data element indicator can achieve the advantage that the respective data element can be accessible to at least two nodes of the behavior tree simultaneously. For example, one node may currently execute a task and change the value of the at least one data element]).
As per claim 13, claim 13 discloses substantially similar limitations as claim 2 above; and therefore claim 13 is rejected under the same rationale and reasoning as presented above for claim 2.
As per claim 3, Gemignani discloses the method of claim 2, wherein the expression type of the parameter is divided into an integer type, a float type, and a double type ((note that these are just numbers/values (e.g. integer are whole number and float/double include decimals and fractional amounts/values) used in software and the Gemignani does disclose using various numerical values in the process and computing) ¶¶ 0076-0077, 0079-0084, 0226, 0241-0246).
As per claim 5, Gemignani discloses the method of claim 1, wherein the constructing of the search tree includes: performing a process of generating a specific operation for all cases on each operation included in an operation knowledge of the knowledge base;
setting at least one of all specific operations as a goal node (¶¶ 0026-0028 [sub-trees…node…goal], 0221 [tree…child node…conditional node…target], 0229-0230 [node…goal…target]);
detecting a specific operation that has a causal relationship with a specific operation set as a top node at a current time among specific operations excluding a specific operation set as a node; setting the detected specific operation as a parent node of a node set as the top node at the current time, and the detecting of the specific operation and the setting of the detected specific operation as the parent node of the node set as the top node are repeatedly performed until there is no specific operation that has a causal relationship with the specific operation set as the top node at the current time (see citations above for claim 1-2 and 5 and also ¶¶ 0064, 0228-0231 [parent node…sequence node…child node…sequence…tree…control flow…selector node, which is the second child node of the first sequence node 102 to be called after the first selector node; see with 0232 [execution node 222 can be linked to the parallel node 220, wherein the parallel node 220 is configured to at least partially execute the first execution node 221 and the second execution node 222 in parallel. A partially parallel execution can be defined as the execution nodes…being in the state RUNNING for a time interval…behavior tree can further comprise a failure node 205 which is a child node of the first sequence node…first sequence node 102 can be configured to call the failure node 205 last in a sequence of nodes called by the first sequence node…the node 225 is configured to generate an indicator signal to provide information regarding the completion of the currently assigned job, respectively task by the apparatus. The node 225 can be configured to generate a marking in a database as the indicator signal, wherein the database can be accessible by further apparatuses so as to indicate that the job is complete to these further apparatuses. The indicator signal can comprise a time information indicating the time of completion of the job]]).
As per claim 15, claim 15 discloses substantially similar limitations as claim 5 above; and therefore claim 15 is rejected under the same rationale and reasoning as presented above for claim 5.
As per claim 6, Gemignani discloses the method of claim 5, wherein the performing of the process of generating a specific operation for all cases on each operation included in the operation knowledge of the knowledge base includes: repeatedly performing a process of selecting one operation included in the operation knowledge of the knowledge base as a goal operation and generating a specific operation of the goal operation for all cases while changing the goal operation; and repeatedly performing a process of generating a specific operation by substituting the value into the parameter while increasing a value interval recorded in a discretization rule of the goal operation from a minimum value recorded in the discretization rule of the goal operation to a maximum value recorded in the discretization rule of the goal operation to generate the specific operation of the goal operation for all the cases (see citations above for claim 5 and also see, for example, ¶¶ 0048 [organizational structure of a function subtree can be self-repeating to build a complex function], 0055-0057 [loop… speed up the recovery process as executing further nodes can incur further delays due to the nodes requiring a run time and/or due to subsequent nodes requiring further results that may incur a delay. The recovery plan being a subtree can achieve the advantage of a structured recovery plan comprising a plurality of connected nodes. Each node of the plurality of nodes can represent an action to be executed to complete the recovery plan to achieve the set goal; see with 0060-0065 [calling loop node…check last step is competed…reset…loop node…current task of the apparatus can be provided as a child node to the loop node…loop node can be a primary node which is disposed hierarchically above all apparatus resource nodes, function subtrees and/or the selector node…loop node…configured to execute its child node in a loop for a number of times as long as the loop node succeeds…loop node…call its child node indefinitely as long as each iteration succeeds… include one of resetting function parameters of the apparatus pertaining to functions available via function subtrees, backtracking previously executed steps, i.e., executing functions with inverse parameters and/or in reverse order relative to their execution order, executing an apparatus retrieval which enables the apparatus to return to a known location and/or resetting the current task]; also with 0071-0076 [interval…maximum…lower than a required…range (showing minimum and maximum)…intervals]]).
As per claim 16, claim 16 discloses substantially similar limitations as claim 6 above; and therefore claim 16 is rejected under the same rationale and reasoning as presented above for claim 6.
As per claim 7, Gemignani discloses the method of claim 5, wherein the setting of the at least one of all specific operations as the goal node includes detecting a specific operation action among all specific operations in which a part of a post-condition recorded in the knowledge base matches a part of a goal state recorded in the knowledge base and setting the detected specific action as the goal node (see citations above for claims 5 and 6 and also see, for example, ¶¶ 0026-0029 [tree…nodes…goal…planner; see with 0024-0026 [example – conditionally independent…current state…precondition; see with 0017-0019]], 0056 [goal], 0221-0230 [ tree 100 can comprise a first conditional node 206 and a second conditional node 207, which are children of the first selector node 203. The conditional nodes 206, 207 can be configured to evaluate a condition when called. For example, the first conditional node 206 can be configured to determine whether an item is in a gripper. The gripper can be a physical resource of an apparatus, specifically a robot, configured to grip items. Furthermore, the second conditional node 207 can be configured to determine whether an item is in its target…tree…control flow node, in particular a second selector node 204, which is the second child node of the first sequence node 102 to be called after the first selector node 203. The second selector node 204 can be a first node of a subtree pertaining to completing the current task, i.e. carrying out the last action required to complete the current task and/or initiating the start of the next task, respectively job. A task or job can be defined as an overall goal to be achieved by the apparatus, wherein a specific sequence of actions… conditional node 219 can be configured to determine whether an item is at its target]).
As per claim 17, claim 17 discloses substantially similar limitations as claim 7 above; and therefore claim 17 is rejected under the same rationale and reasoning as presented above for claim 7.
As per claim 8, Gemignani discloses the method of claim 5, wherein the specific operation that has the causal relationship with the specific operation set as the top node at the current time is a specific operation in which a part of a post-condition recorded in the knowledge base matches a part of a pre-condition of the specific operation set as the top node at the current time (¶¶ 0024-0026 [example – conditionally independent…current state…precondition; see with 0017-0019], 0037-0038 [control flow…state…first and second states may be equal to or different from one another (matching states)], 0061-0062 [compare to see if plan matches (based on steps) and has not changed], 0253-0255 [an example – robot is operating in a warehouse and wishes to navigate to a target location, it may require access to a map representative of the warehouse. However, such a map may have a relatively large size as regards its data. Thus, the respective node…have a data indicator being a required input reference indicator, i.e., the data indicator may indicate that a reference to a respective map…constant value data indicator]).
As per claim 18, claim 18 discloses substantially similar limitations as claim 8 above; and therefore claim 18 is rejected under the same rationale and reasoning as presented above for claim 8.
As per claim 9, Gemignani discloses the method of claim 1, wherein the generating of the task plan based on the search tree includes: detecting an operation in which a pre-condition recorded in the knowledge base matches a current state; setting the detected operation as front nodes (¶¶ 0037-0038 [control flow…state…first and second states may be equal to or different from one another (matching states)], 0061-0062 [compare to see if plan matches (based on steps) and has not changed], 0024-0026 [example – conditionally independent…current state…precondition; see with 0017-0019], 0253-0255 [an example – robot is operating in a warehouse and wishes to navigate to a target location, it may require access to a map representative of the warehouse. However, such a map may have a relatively large size as regards its data. Thus, the respective node…have a data indicator being a required input reference indicator, i.e., the data indicator may indicate that a reference to a respective map…constant value data indicator]);
calculating heuristic evaluation values for each of the front nodes; detecting a front node with the smallest heuristic evaluation value; detecting a post-condition of an operation corresponding to the detected front node from the knowledge base (¶¶ 0017-0019 [control flow nodes and the execution nodes are adapted to return different states to their respective parent nodes…states include success, running and failure…root node calling its child node, which is a control flow node; the root node's child node calling a first node; the first node returning a first state to the root node's child node; the root node's child node returning a second state to the root node…see with 0035-0038], 0071-0077 [also shows heuristic evaluations with smallest value (as an example in frequency of child node (note that the children nodes are sequential – first child, second child, etc.,))]); and
updating the current state by reflecting the detected post-condition, and the detecting of the operation matching the current state, the setting of the detected operation as the front nodes, the calculating of the heuristic evaluation value, the detecting of the smallest front node, the detecting in the knowledge base, and the updating of the current state are repeatedly performed until the current state matches a goal state (see citations above and in addition see ¶¶ 0019-0020 [each node implements one function for executing the corresponding task or action that sets a node-internal execution state to the value RUNNING, SUCCESS, or FAILURE. The execution nodes can update their status based on the result of the sub-action they perform. The control flow nodes update their status based on the status of their children. The execution state is updated to SUCCESS if the action has been successfully completed, updated to FAILURE if the action could not be completed, and updated to RUNNING if the action is still ongoing], 0148 [see with (implemented in an example) 0071-0081 [status change of the node, a status change of one of its child nodes and/or a status change of a subtree disposed hierarchically below the node. This may achieve the advantage of realizing an event-based polling mechanism. Every node comprised in the behavior tree may request the executor application to tick the behavior tree at any moment in time. When ticking the behavior tree, a recomputation of the state (repeating) of the behavior tree, respectively the apparatus and/or task represented by the behavior tree is triggered, when a specific event is detected by any node composing the behavior tree…upon receiving a tick request and an update of the apparatus status can be achieved with a comparable latency when comparing to a high constant tick frequency, wherein a high constant tick frequency refers to a tick frequency at least an order of magnitude higher than the implemented constant tick frequency in combination with the node-based tick request mechanism…each of a plurality of the nodes may comprise at least one data element indicator indicating at least one data element related to the respective node. Data elements can be passed between nodes via their shared link connections. In particular, the data may be transferred between nodes upon completion of the sending node. A data element indicator can achieve the advantage that the respective data element can be accessible to at least two nodes of the behavior tree simultaneously. For example, one node may currently execute a task and change the value of the at least one data element. Another node may access the at least one data element via the at least one data element indicator. Access to the at least one data element via the at least one data element indicator can be independent of the state (i.e., SUCCESS, FAILURE, RUNNING) of the node the at least one data element is related to. Thus, the advantage can be achieved that data can be passed between nodes during the execution of a node, which in particular can modify the value of the at least one data element during its execution]]; see also 0090, 0097, 0148).
As per claim 19, claim 19 discloses substantially similar limitations as claim 9 above; and therefore claim 19 is rejected under the same rationale and reasoning as presented above for claim 9.
As per claim 10, Gemignani discloses the method of claim 9, wherein, in the calculating of the heuristic evaluation value, the heuristic evaluation values for each front node is calculated using the causal operation network (see citations above for claim 9 and also see with ¶¶ 0133 [see with 0074-0079 and 0148 causing root node to call child node (causal operations)], 0201-0207 [showing examples of using causal operation network; see with 0241-0247 [showing example of heuristic evaluation and values and also calculation using causal operation network]]).
As per claim 20, claim 20 discloses substantially similar limitations as claim 10 above; and therefore claim 20 is rejected under the same rationale and reasoning as presented above for claim 10.
As per claim 11, Gemignani discloses the method of claim 10, wherein, in the calculating of the heuristic evaluation value, when the operation set as the front node is an operation of using a numerical value as the parameter value, a numerical value substituted into a parameter is discretized according to a discretization rule of the operation set as the front node, a specific operation corresponding to an operation using the discretized numerical value as a parameter value is searched for in the causal operation network, a level of a hierarchy where the searched specific operation is located is identified, and the identified level is used as a heuristic evaluation value (see citations above for claim 9 and also see with ¶¶ 0133 [see with 0074-0079 and 0148 causing root node to call child node (causal operations)], 0201-0207 [showing examples of using causal operation network; see with 0241-0247 [showing example of heuristic evaluation and values and also calculation using causal operation network]]).
Conclusion
The prior art made of record on the PTO-892 and not relied upon is considered pertinent to applicant's disclosure. For example, some of the pertinent art is as follows:
Shazly (US 2025/0018570): Providing an improved robotic device motion planning system that is capable of producing motion plans for accomplishing a task that are deterministic and at a higher success rate than typical systems is described herein. For example, the improved robotic device motion planning system may implement a hybrid motion planning approach in which the robotic device motion planning system initially attempts to develop a motion plan for a robotic device using a real-time motion planning algorithm. If the robotic device motion planning system is unable to develop a motion plan using a real-time motion planning algorithm, then the robotic device motion planning system may attempt to develop the motion plan using a sampling method.
Stephens et al., (US 2008/0235249): Provides data management systems with an ability to integrate parent-child and peer-to-peer relationships (e.g., hierarchies) in a single interface, allowing a user to parent/unparent, link/unlink, merge/unmerge, and modify trusted attributes in a single interaction using highly accurate algorithms to provide data, including hints and recommendations for the management of these hierarchies. A user interface allows a user to perform hierarchy global management functions including read, write, business-to-business (B2B) search, navigation, and maintenance.
Patrudu (US 9,176,951): Illustrates that the desired states/situations can optionally link to new process structures. The desired states may appear unattached at any process structure, at any level in the resulting graph. Informally, desired state implies that the process has reached a predefined objective. 5.1.3) The special states/situations link to new process structures in most cases. The special states may appear unattached only at the leaf level of the process structures. This additional restriction on special states is not strictly enforced, as a container at higher layer may take responsibility for the un-handled states at the lower level. Informally, the special state implies that a process has not reached its objective, and needs further processing by another process to reach the objective. 5.1.4) The complex states/situations always link to new process structures, such that either the desired or special states/situations of the new process structures loop back to the original process element, which produced the complex state/situation. The figure (FIG. 05) describes complex-1 state/situation, where the “desired” state of a child process structure, loops back to the original process element
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 GURKANWALJIT SINGH whose telephone number is (571)270-5392. The examiner can normally be reached on M-F 8:30-5:30.
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, Brian Epstein can be reached on 571-270-5389. 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.
/Gurkanwaljit Singh/
Primary Examiner, Art Unit 3625