Prosecution Insights
Last updated: October 02, 2026
Application No. 18/072,349

SYSTEMS AND METHODS FOR AUTOMATION DISCOVERY AND ANALYSIS USING ACTION SEQUENCE SEGMENTATION

Final Rejection §103
Filed
Nov 30, 2022
Examiner
GOLDBERG, IVAN R
Art Unit
3619
Tech Center
3600 — Transportation & Electronic Commerce
Assignee
Nice Ltd.
OA Round
4 (Final)
35%
Grant Probability
At Risk
5-6
OA Rounds
6m
Est. Remaining
71%
With Interview

Examiner Intelligence

Grants only 35% of cases
35%
Career Allowance Rate
135 granted / 382 resolved
-16.7% vs TC avg
Strong +36% interview lift
Without
With
+35.5%
Interview Lift
resolved cases with interview
Typical timeline
4y 4m
Avg Prosecution
39 currently pending
Career history
429
Total Applications
across all art units

Statute-Specific Performance

§101
27.3%
-12.7% vs TC avg
§103
42.2%
+2.2% vs TC avg
§102
3.8%
-36.2% vs TC avg
§112
21.2%
-18.8% vs TC avg
Black line = Tech Center average estimate • Based on career data from 382 resolved cases

Office Action

§103
DETAILED ACTION 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 . Notice to Applicant The following is a Non-Final Office Action. In response to Examiner’s Non-Final Rejection of 4/20/26, Applicant, on 7/20/26, made amendments. Claims 1, 3-4, 6, 8-10, 12-13, 15, and 17-20 are pending in the instant application. Claims 1, 4, 8-10, 13, and 17-18 are rejected; claims 3, 6, 12, and 15 are objected to; and claims 19-20 are allowed. Response to Amendment The amendments are acknowledged. The double patenting is withdrawn light of the amendments. The 101 is withdrawn, as best understood in light of the 112b rejections, as now “not being directed to an abstract idea,” and under MPEP 2106.05a (improving computing technology) and MPEP 2106.05e (meaningful imitations) as the claim is automatically executing some sequences of segmented actions based on an input query. Allowable Subject Matter Independent Claim 19 and dependent claim 20 are allowed. Claim 19 has the added feature of training neural network by predicting word representing an action with a probability based on a paragraph vector assigned to the sentence, in combination with other features of the claim pertaining to the input query, and analyzing segmenting and sequence of actions. Claims 3 and 12 (with similar limitations as claim 19) are objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims. Claims 6 and 15 depend from claim 3 and 12, and are objected to for the same reasons. 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 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. The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows: 1. Determining the scope and contents of the prior art. 2. Ascertaining the differences between the prior art and the claims at issue. 3. Resolving the level of ordinary skill in the pertinent art. 4. Considering objective evidence present in the application indicating obviousness or nonobviousness. Claims 1, 4, 8-10, 13, and 17-18 are rejected under 35 U.S.C. 103 as being unpatentable over Ma ‘920 (US 2020/0206920) and Prasad (US 2020/0073639). Concerning independent claim 1, Ma ‘920 discloses: A method for automation discovery using action sequence segmentation (Ma –see par 223 - Regardless of whether segmentation and clustering are performed separately or in a combined fashion, in operation 310 of method 300, one or more processes for robotic automation (RPA) are identified from among the clustered traces. Identifying processes for RPA includes identifying segments/traces wherein a human-performed task is subject to automation (e.g. capable of being understood and performed by a computer without human direction), the method comprising: in a computerized system comprising one or more processors (Ma –See par 66 -67 - In another generalized implementation, a computer program product for discovering processes for robotic process automation (RPA) includes a computer readable storage medium having program instructions embodied therewith. The program instructions are executable by a processor to cause the processor to: record a plurality of event streams, each event stream corresponding to a human user interacting with a computing device to perform one or more tasks), and a data store of a plurality of data items describing one or more actions input to a computer (Ma – see par 72 - A plurality of event streams, each event stream corresponding to a human user interacting with a computing device to perform one or more tasks, are recorded in operation 302. In operation 304, event streams are concatenated. At least some, possibly all, of the concatenated event streams are segmented, in operation 306, to generate individual traces each corresponding to a particular task performed by a user interacting with a computing device; see par 81 - Regardless of the particular type and sequence of events performed during a given user session (e.g. a given work day), the entire recording collected in operation 302 of method 300 is stored in a database on a per-event basis, such that each database entry comprises an event stream. In preferred approaches, each event stream is represented as a table, although various implementations may include multiple rows for any given event, e.g. where the event includes a combination of inputs such as a keystroke, a mouse click, and one or more associated API calls performed by the device; see par 87, 88, 93 – descriptive value for event, event type, element class; see par 98, Table 1 – five rows dedicated to describing an event; see par 293 - users may be required/requested to indicate the particular task they wish to accomplish and streams filtered based on the users' responses). Ma ‘920 discloses having event streams for user interacts with computing devices corresponding to a task and candidate processes for robotic automation (See par 66). Ma ‘920 discloses assisting a user interacts with an automated agent, a user may choose among suitable options help perform a “desired goal/perform the desired task” (See par 289), users can optionally be requested to indicate a particular task they wish to accomplish (See par 293), and that a user may wish to submit a request for help/support with an existing service or product with which the user is having difficulty, and a service provider (using server 114) may host an online help system (See par 308). Ma ‘920 does not explicitly disclose the next limitation. Prasad discloses: receiving an input query describing a process, the process comprising one or more actions input to a computer, wherein the input query comprises a start event, and an end event (Prasad – see par 20 - process automation platform 110 may receive process data associated with a particular format. In this case, process automation platform 110 may receive process data including natural language descriptions of processes, tasks associated therewith, workflows for completing tasks, and/or the like; see par 21 - a tool may include a plurality of sub-tools that may be configured to complete a process, such as a first tool to complete a first task of a process, a second tool to complete a second task of the process, and/or the like, that may be arranged to interact to complete the process. Additionally, or alternatively, the tool may include a workflow or procedure for completing a process, such as a set of procedures that process automation platform 110 and/or one or more resources allocated therewith may complete to complete the process. As an example, a procedure may include configuring process automation platform 110 to automatically change a resource allocation to a software program in a particular manner based on detecting a particular status of a project to enable the software program to execute, thereby; see par 34 - In some implementations, when performing a natural language processing (e.g., to determine a meaning of a tool description, a questionnaire response, etc.) or natural language generation technique (e.g., for a virtual assistant as described herein), process automation platform 110 may perform a content determination procedure (e.g., determining content to be represented in a sentence), a document restructuring procedure (e.g., structuring a conveyed context of a sentence), an aggregation procedure (e.g., to combine multiple sentences having sequential meanings). Ma ‘920 and Prasad disclose: segmenting, by one or more of the processors, a plurality of action sequences from one or more of the plurality of data items (Ma see par 139 - segmenting of operation 306 comprises splitting the concatenated event streams into a plurality of application traces, each application trace comprising a sequence of one or more events performed within a same application; see par 223 - Regardless of whether segmentation and clustering are performed separately or in a combined fashion, in operation 310 of method 300, one or more processes for robotic automation (RPA) are identified from among the clustered traces. Identifying processes for RPA includes identifying segments/traces wherein a human-performed task is subject to automation (e.g. capable of being understood and performed by a computer without human direction) based on the input query (Ma - See par 268 - For instance, if two variants share a middle operation but have different start and end sequences, it is preferred to present the DAG as a single graph with four unique paths where the middle portion of nodes belongs to all four paths instead of a graph with exactly two paths where none of the nodes are shared among paths; see par 289 - upon receiving various responses from the user, the automated agent may provide appropriate replies, preferably including suitable options from among which the user may choose to ultimately obtain the desired goal/perform the desired task; see par 292 – event streams corresponding to users seeking to purchase or return a particular product are preferably grouped and separated from event streams corresponding to other task types; See also Prasad for entire limitation – see par 24 - process automation platform 110 may process the process data to generate the process analysis model, which may be a deep neural network based model to classify processes and tools associated with automatically completing processes, to determine an assessment score of a suitability of a tool for automatically completing a process, to determine a predicted benefit (e.g., a resource utilization reduction) from implementing a tool for automatically completing a process, and/or the like; see par 32 - For example, process automation platform 110 may use the process analysis model to identify a subset of a set of assessment parameters of processes that correlate to whether the process is automatable using a particular tool. In this case, process automation platform 110 may generate a set of values for the subset of the set of assessment parameters that can be determined for a new process to classify the new process and provide a recommendation regarding whether to automate the new process with a particular tool.), wherein the segmenting of the plurality of action sequences comprises: finding one or more occurrences of an action specified as the start event followed by an action specified as the end event within the one or more data items, and segmenting one or more actions occurring between each of the one or more occurrences of the start event and the end event as one or more action sequences matching the input query (Ma ‘920 – see par 151 - segmentation in accordance with operation 306 involve a more complex classification or labeling process than described above. In essence, the classification portion includes marking different events according to the task to which the events belong. In one approach, this may be accomplished by identifying the events that delineate different tasks, and labeling events as “external” (i.e. identifying a task boundary, whether start or end) or “internal” (i.e. belonging to a task delimited by sequentially-labeled boundary events). Various exemplary approaches to such classification include known techniques such as binary classifiers, sequence classification; see par 161 - concatenated event streams are parsed into subsequences using the sliding window length N and feature vectors are calculated for each subsequence starting at each position within the event stream. In an exemplary embodiment, each subsequence includes categorical and/or numerical features, where categorical features include a process or application ID; an event type (e.g. mouse click, keypress, gesture, button press, etc.; a series of UI widgets invoked during the subsequence; and/or a value (such as a particular character or mouse button press) for various events in the subsequence.) As above, Ma ‘920 is not considered to have a query “describing a process,” Prasad discloses: finding one or more occurrences of an action specified as the start event followed by an action specified as the end event within the one or more data items, and segmenting one or more actions occurring between each of the one or more occurrences of the start event and the end event as one or more action sequences matching the input query (Prasad – see par 22 - process automation platform 110 may use natural language processing to process application descriptions and/or user comments regarding applications in an application store, workflows in a workflow repository, and/or the like to identify applications to use for completing processes, workflows to automatically follow to complete processes; see par 26 - identify similar processes or tools from which to form an association (e.g., a class of processes, a tool that may automate processes of the class of processes; see par 34 - In some implementations, when performing a natural language processing (e.g., to determine a meaning of a tool description, a questionnaire response, etc.) or natural language generation technique (e.g., for a virtual assistant as described herein), process automation platform 110 may perform a content determination procedure (e.g., determining content to be represented in a sentence), a document restructuring procedure (e.g., structuring a conveyed context of a sentence), an aggregation procedure (e.g., to combine multiple sentences having sequential meanings)). Ma ‘920 and Prasad disclose: segmenting one or more remaining data items, not included in the one or more action sequences matching the input query, into one or more further action sequences based on one or more intervals in action execution time (Ma ‘920 - See par 156-157 – segmentation and clustering of concatenated event streams in 306, 308; According to the preferred, “combined” or “hybrid” segmentation and clustering approach, recorded event streams are concatenated (optionally following cleaning/normalization), and substantially similar subsequences (i.e. having a content similarity greater than a predetermined similarity threshold) that appear within an event stream more often than a predetermined frequency threshold … are identified.; see par 161 - The concatenated event streams are parsed into subsequences using the sliding window length N and feature vectors are calculated for each subsequence starting at each position within the event stream; Numerical features include… time elapsed since a most recent previous event occurrence (disclosing same example of Applicant’s [0054] as published for “action execution time” – “action execution times (for example, a timeframe of length n, e.g., in seconds, during which no action was executed may indicate that a given action sequence has ended and another, subsequent sequence begins”); see par 162 - Preferably, the feature vectors are calculated using a known auto-encoder and yield dense feature vectors for each window, e.g. vectors having a dimensionality in a range from about 50 to about 100 for a window length of about 30 events per subsequence. see par 169 - In more approaches, the clustering described immediately above may be further expanded by extending subsequences bidirectionally, to include additional events occurring before and after the initially-defined window. see par 210 - intermediate structures of sequences may be identified within event traces using a fuzzy measure. Adjacent or nearly-adjacent sequences may be built and extended in a manner substantially similar to that described above for application traces, but using fuzzy labels and seeking similar sequences using a similarity measure); generating, by a machine learning model, one or more vector representations for the one or more action sequences matching the input query and for the one or more further action sequences (Ma ‘920 – see par 161 - In an exemplary embodiment, each subsequence includes categorical and/or numerical features, where categorical features include a process or application ID; an event type (e.g. mouse click, keypress, gesture, button press, etc.; a series of UI widgets invoked during the subsequence; and/or a value (such as a particular character or mouse button press) for various events in the subsequence. see par 215 - According to this implementation, each event may be considered analogous to a “word” in the language, and thus each trace forms a sentence. Continuing with the language analogy, there may be multiple ways to express the same idea, or accomplish the same task. see par 217 - In more approaches, events may be encoded using techniques from language modeling; see par 219 - Descriptions of traces may be created using known document representation techniques, and/or auto-encoding techniques that create embeddings within the traces according to deep learning frameworks, e.g. DOC2VEC in one implementation); calculating, by one or more of the processors, for one or more pairs of action sequences, each pair comprising one of the vector representations of the one or more action sequences matching the input query and one of the vector representations of the one or more further action sequences, a similarity score based on a distance between the vector representations of the pair (Ma ‘920 – see par 163 - Regardless of the particular manner in which feature vectors are generated, a distance matrix is computed for all pairs of subsequences. The preferred metric for the distance given the calculation of the feature vectors as described above is the Euclidean distance; however, other distance metrics can also be of value, for instance the cosine similarity, or the Levenshtein distance if the feature vectors are understood to be directly word sequences in the event language. see par 164 - Optionally, but preferably, the initial k subsequences pairs chosen as clusters are supplemented by adding additional subsequences characterized by the next smallest distance to elements of the initial k subsequences. For example, additional subsequences may be added to the initial set k in an iterative fashion according to smallest distance until an overall distance and/or complexity threshold is reached, at which point the clustering is considered complete. see par 165 - The distance d.sub.i is preferably measured between a longest common subsequence shared among the subsequence pair; and more preferably is expressed according to a measure selected from a group consisting of: a Euclidean distance, a Levenshtein distance, a Hamming distance, and an auto-encoder metric; see par 166 - With continuing reference to the particularly preferred approach, clustering may further include: updating the initial clustering by iteratively adding one or more additional subsequences to the initial clusters, wherein each additional subsequence added to a given initial cluster is characterized by a distance between the additional subsequence and at least one member of the given cluster having a magnitude less than a maximum clustering distance threshold; extending one or more of the subsequences of the updated clustering to include: one or more additional events occurring before the events included in the respective subsequence; and/or one or more additional events occurring after the events included in the respective subsequence.); categorizing, by one or more of the processors, the further action sequence of a pair as non- exact matching the input query in response to the similarity score for the pair exceeding a predetermined threshold, and discarding the further action sequence of the pair in response to the similarity score not exceeding the predetermined threshold (Ma ‘920 – see par 3 - Robotic Process Automation (RPA) is an emerging field of intelligent automation that seeks to improve the efficiency of performing repetitive tasks; see par 169 - In any event, and as noted above, the subsequences are preferably extended as far as possible, e.g. until reaching/surpassing a predetermined overall distance and/or complexity threshold, at which point clustering is complete. see par 212 - in FIG. 3, operation 308 of method 300 includes clustering the traces according to a task type. Preferably, the traces clustered according to task type are characterized by: … exhibiting a content similarity greater than or equal to a predetermined similarity threshold; Prasad - see par 26 - process automation platform 110 may perform a set of semantic searches (e.g., identifying context, intent, variation, and/or the like in words of a description of a process or tool) to identify similar processes or tools from which to form an association (e.g., a class of processes, a tool that may automate processes of the class of processes)); par 31 - perform pattern recognition with regard to patterns of whether processes including different semantic descriptions are members of a particular class, whether the particular class is automatable using a tool that is configured to resolve another class of processes, and/or the like; see par 33 - process automation platform 110 may parse a natural language description of the new process to assign scores to the subset of the set of assessment parameters based on a semantic meaning of the natural language description determined using the process analysis model, and resulting in process automation platform 110 classifying the new process autonomously); producing, by one or more of the processors, one or more automation candidates based on the one or more action sequences matching the input query and the one or more further action sequences categorized as non-exact matching the input query (Ma ‘920 – see par 3 - Robotic Process Automation (RPA) is an emerging field of intelligent automation that seeks to improve the efficiency of performing repetitive tasks; See par 156-157 – segmentation and clustering of concatenated event streams in 306, 308; According to the preferred, “combined” or “hybrid” segmentation and clustering approach, recorded event streams are concatenated (optionally following cleaning/normalization), and substantially similar subsequences (i.e. having a content similarity greater than a predetermined similarity threshold) that appear within an event stream more often than a predetermined frequency threshold … are identified.; see par 223 - Regardless of whether segmentation and clustering are performed separately or in a combined fashion, in operation 310 of method 300, one or more processes for robotic automation (RPA) are identified from among the clustered traces. Prasad - see par 26 - process automation platform 110 may perform a set of semantic searches (e.g., identifying context, intent, variation, and/or the like in words of a description of a process or tool) to identify similar processes or tools from which to form an association (e.g., a class of processes, a tool that may automate processes of the class of processes); transmitting an instruction to one or more remote computers based on one or more of the automation candidates, the instruction to automatically execute at least one computer operation on one or more of the remote computers (Ma ‘920 - See par 242, 300 - From among the resulting clusters, one or more candidate processes for robotic automation of service provision, modification, and/or cancellation are identified, e.g. per operation 310 of method 300, and prioritized (e.g. according to overall cost/weight of performance, frequency of performance, etc. as described in greater detail elsewhere herein), e.g. per operation 312; See par 291 – A significant technical improvement conveyed by employing RPA agents in such situations is avoiding additional (especially human-driven) programming efforts in order to automate a previously human-driven process; see par 308 - The manufacturer/service provider may host, e.g. using one or more servers such as servers 114 of architecture 100, an online help system application/interface for customers. Substantially as described above regarding obtaining/ modifying/ canceling a service, one or more processes for robotically automating user support (e.g. a “helpdesk” model) are identified, e.g. per FIG. 3 and corresponding descriptions, while an RPA model for supporting users with offered products/services is generated in accordance with FIG. 4 and corresponding descriptions. see also Prasad – see par 21 - A tool may be used to automatically complete a process or a task thereof. For example, a tool may include a software program or an application that is configured to automatically complete one or more tasks, such as generating code, altering code, copying code, and/or the like based on one or more code repositories to automatically complete a process. see par 68 - Furthermore, using the process analysis model to automatically select tools for automatically completing processes improves automation of process completion as a quantity of tools increases and/or a quantity of processes increases beyond what can be manually classified and manually completed.). Both Ma ‘920 and Prasad are analogous art as they are directed to identifying solutions that can be automated (see Ma Abstract, par 36, 308; Prasad Abstract, par 19, 64). 1) Ma ‘920 discloses having event streams for user interacts with computing devices corresponding to a task and candidate processes for robotic automation (See par 66, 77). Ma ‘920 discloses assisting a user interacts with an automated agent, a user may choose among suitable options help perform a “desired goal/perform the desired task” (See par 289), users can optionally be requested to indicate a particular task they wish to accomplish (See par 293), and that a user may wish to submit a request for help/support with an existing service or product with which the user is having difficulty, and a service provider (using server 114) may host an online help system (See par 308). Prasad improves upon Ma by disclosing that it can conduct reception of descriptions of processes where content includes set of tasks/procedures and sequential aspects (See par 20-21, 34) where similarity is used relative to description of a process for finding that tools that automate classes of processes (See par 26). One of ordinary skill in the art would be motivated to further include descriptions of processes where series of tasks occur and similarity for tools that may automate processes to efficiently improve upon the requests for performing desired tasks in Ma (See par 289). Accordingly, 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 identifying of candidate processes for robotic automation based on segmenting event streams in Ma to further include descriptions of processes where series of tasks occur and similarity for tools that may automate processes as disclosed in Prasad, since the claimed invention is merely a combination of old elements, and in combination each element merely would have performed the same function as it did separately, and one of ordinary skill in the art would have recognized that the results of the combination were predictable and there is a reasonable expectation of success. Concerning independent claim 10, Ma and Prasad disclose: A computerized system for automation discovery using action sequence segmentation (Ma –See par 66 -67 - In another generalized implementation, a computer program product for discovering processes for robotic process automation (RPA) includes a computer readable storage medium having program instructions embodied therewith. The program instructions are executable by a processor to cause the processor to: record a plurality of event streams, each event stream corresponding to a human user interacting with a computing device to perform one or more tasks; see par 223 - Regardless of whether segmentation and clustering are performed separately or in a combined fashion, in operation 310 of method 300, one or more processes for robotic automation (RPA) are identified from among the clustered traces. Identifying processes for RPA includes identifying segments/traces wherein a human-performed task is subject to automation (e.g. capable of being understood and performed by a computer without human direction), the system comprising: one or more processors (Ma –See par 66 -67 - In another generalized implementation, a computer program product for discovering processes for robotic process automation (RPA) includes a computer readable storage medium having program instructions embodied therewith. The program instructions are executable by a processor to cause the processor to…), and a memory including a data store of a plurality of data items describing one or more actions input to a computer (Ma –See par 66 -67, 72 - In another generalized implementation, a computer program product for discovering processes for robotic process automation (RPA) includes a computer readable storage medium having program instructions embodied therewith. The program instructions are executable by a processor to cause the processor to: record a plurality of event streams, each event stream corresponding to a human user interacting with a computing device to perform one or more tasks; see par 81 - Regardless of the particular type and sequence of events performed during a given user session (e.g. a given work day), the entire recording collected in operation 302 of method 300 is stored in a database on a per-event basis, such that each database entry comprises an event stream. In preferred approaches, each event stream is represented as a table, although various implementations may include multiple rows for any given event, e.g. where the event includes a combination of inputs such as a keystroke, a mouse click, and one or more associated API calls performed by the device). The remaining limitations are similar to claim 1 and are rejected for the same reasons. Obvious to combine Ma and Prasad for the same reasons as claim 1. Concerning claims 4 and 13, Ma and Prasad disclose: The method of claim 1, wherein the producing of one or more of the automation candidates comprises mining, by one or more of the processors, one or more action subsequences based on the one or more action sequences matching the input query and the one or more further action sequences categorized as non-exact matching the input query (Ma – See par 141 - The simplest implementation of segmentation per method 300 and operation 306 involves analyzing the text of concatenated event streams to extract common subsequences of a predetermined length. See par 163 – distance matrix computed for subsequences; can use Levenshtein distance if the feature vectors are understood to be directly word sequences in the vent language; see par 169 - In more approaches, the clustering described immediately above may be further expanded by extending subsequences bidirectionally, to include additional events occurring before and after the initially-defined window; see par 210 - Adjacent or nearly-adjacent sequences may be built and extended in a manner substantially similar to that described above for application traces, but using fuzzy labels and seeking similar sequences using a similarity measure. see par 263 - Continuing now with the notion of building DAGs from RPA mining data obtained and analyzed in accordance with method 300, as described hereinabove this process involves identifying and assigning a weight to each trace in each cluster generated during the RPA mining phase.); and wherein the method further comprises calculating, by one or more of the processors, one or more automation scores for one or more of the automation candidates (Ma – see par 224, 237, 300 - From among the resulting clusters, one or more candidate processes for robotic automation of service provision, modification, and/or cancellation are identified, e.g. per operation 310 of method 300, and prioritized (e.g. according to overall cost/weight of performance, frequency of performance, etc. as described in greater detail elsewhere herein), e.g. per operation 312. From among the prioritized candidate processes, at least one is selected for automation in accordance with operation 314 of method 300). Concerning claims 8 and 16, Ma and Prasad disclose: The method of claim 1, further comprising documenting, by one or more of the processors, one or more of the automation candidates in a report (Ma par 72 - traces are clustered according to task type, and candidate processes for robotic automation are identified from among these clusters in operation 310. To ensure optimal efficiency benefits for the overall task performance, the identified candidate processes are prioritized for purposes of robotic automation in operation 312, and in operation 314 at least one of the prioritized candidate processes is selected for robotic automation. The selected process(es) may or may not be those having the highest priority, in various approaches.); and displaying the report on a graphical user interface (GUI) of a remote computer (Ma – see par 247 - Coverage should be understood as representative of a DAG's value or contribution relative to the value or contribution of all the traces that could be included into the DAG. For example, a DAG 400 with a coverage of 80% contains the information from the variants representing 80% of the available traces, in one implementation. see par 251 - for a filter value of 80%, the DAG 400 would only contain nodes that contribute to at least 80% of the paths through the graph. This allows a curator to focus on sub-paths with a DAG 400 that represent the most value by setting the coverage filter to a high value. Conversely, by setting the coverage filter to a low value, e.g. 15%, the curator can find efficient ways to implement a task that have not been followed in a majority of the cases; see par 262 - curator observing DAG 400, or an automated process of generating RPA models, may further improve upon the efficiency of the corresponding save task by collapsing the DAG to exclude one or more of the first, second, and third variants. Whether or not to pursue this change in the DAG depends on factors such as weight, etc. as may be defined in an enterprise policy). Concerning claims 9 and 18, Ma ‘920 and Prasad disclose: The method of claim 1, … comprises an intermediate event (Ma ‘920 – see par 151 - segmentation in accordance with operation 306 involve a more complex classification or labeling process than described above. In essence, the classification portion includes marking different events according to the task to which the events belong. In one approach, this may be accomplished by identifying the events that delineate different tasks, and labeling events as “external” (i.e. identifying a task boundary, whether start or end) or “internal” (i.e. belonging to a task delimited by sequentially-labeled boundary events). Various exemplary approaches to such classification include known techniques such as binary classifiers, sequence classification; The method of claim 1, wherein “the input query” comprises an intermediate event (Prasad disclosing entire limitation– see par 20 - process automation platform 110 may receive process data associated with a particular format. In this case, process automation platform 110 may receive process data including natural language descriptions of processes, tasks associated therewith, workflows for completing tasks, and/or the like; see par 21 - a tool may include a plurality of sub-tools that may be configured to complete a process, such as a first tool to complete a first task of a process, a second tool to complete a second task of the process, and/or the like, that may be arranged to interact to complete the process. Additionally, or alternatively, the tool may include a workflow or procedure for completing a process, such as a set of procedures that process automation platform 110 and/or one or more resources allocated therewith may complete to complete the process. As an example, a procedure may include configuring process automation platform 110 to automatically change a resource allocation to a software program in a particular manner based on detecting a particular status of a project to enable the software program to execute, thereby; see par 34 - In some implementations, when performing a natural language processing (e.g., to determine a meaning of a tool description, a questionnaire response, etc.)…process automation platform 110 may perform a content determination procedure (e.g., determining content to be represented in a sentence), a document restructuring procedure (e.g., structuring a conveyed context of a sentence), an aggregation procedure (e.g., to combine multiple sentences having sequential meanings), and wherein the segmenting of the plurality of action sequences further comprises filtering the one or more action sequences matching the input query based on the intermediate event (Ma ‘920 – see par 161 - concatenated event streams are parsed into subsequences using the sliding window length N and feature vectors are calculated for each subsequence starting at each position within the event stream. In an exemplary embodiment, each subsequence includes categorical and/or numerical features, where categorical features include a process or application ID; an event type (e.g. mouse click, keypress, gesture, button press, etc.; a series of UI widgets invoked during the subsequence; and/or a value (such as a particular character or mouse button press) for various events in the subsequence; see par 210 - In still more approaches, intermediate structures of sequences may be identified within event traces using a fuzzy measure.; see par 251 - for a filter value of 80%, the DAG 400 would only contain nodes that contribute to at least 80% of the paths through the graph. This allows a curator to focus on sub-paths with a DAG 400 that represent the most value by setting the coverage filter to a high value. Conversely, by setting the coverage filter to a low value, e.g. 15%, the curator can find efficient ways to implement a task that have not been followed in a majority of the cases). Obvious to combine Ma and Prasad for the same reasons as claim 1. Response to Arguments Applicant’s arguments filed 7/20/26 have been fully considered but they are not persuasive. With regards to 103, Applicant’s arguments are moot in view of the new rejections necessitated by the amendments. Conclusion 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 IVAN R GOLDBERG whose telephone number is (571)270-7949. The examiner can normally be reached 830AM - 430PM. 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, Anita Coupe can be reached at 571-270-3614. 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. /IVAN R GOLDBERG/Primary Examiner, Art Unit 3619
Read full office action

Prosecution Timeline

Show 1 earlier event
Mar 24, 2025
Non-Final Rejection mailed — §103
Jun 23, 2025
Response Filed
Jul 15, 2025
Final Rejection mailed — §103
Jan 06, 2026
Request for Continued Examination
Feb 12, 2026
Response after Non-Final Action
Apr 20, 2026
Non-Final Rejection mailed — §103
Jul 20, 2026
Response Filed
Sep 24, 2026
Final Rejection mailed — §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12743671
AUTOMATED MANAGEMENT OF SUPPORT CHANNEL AND TICKETING
2y 2m to grant Granted Sep 22, 2026
Patent 12718162
Workflow Optimization Leveraging Generative AI and Quantum Simulation
2y 6m to grant Granted Aug 25, 2026
Patent 12705634
System, Method, and Computer Program Product for Predicting Consumer Behavior Based on Demographics and New Product Features Using Machine Learning Models
2y 4m to grant Granted Aug 11, 2026
Patent 12693286
DRILLING FLUID OPTIMIZATION FOR CUTTINGS TRANSPORT AND RATE OF PENETRATION
2y 10m to grant Granted Jul 28, 2026
Patent 12687502
METHOD FOR DETECTING DIAPER WETNESS BASED ON RATIO SIGNAL TECHNOLOGY
2y 11m to grant Granted Jul 21, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

5-6
Expected OA Rounds
35%
Grant Probability
71%
With Interview (+35.5%)
4y 4m (~6m remaining)
Median Time to Grant
High
PTA Risk
Based on 382 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month