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 Final Office action. In response to Examiner’s Non-Final Rejection of 12/17/25, Applicant, on 3/16/26, amended claims. Claims 1, 3-8, 10-15, and 17-20 are pending in this application and have been rejected below.
Response to Amendment
Applicant’s amendments are acknowledged.
Claim Interpretation
The following is a quotation of 35 U.S.C. 112(f):
(f) Element in Claim for a Combination. – An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
The following is a quotation of pre-AIA 35 U.S.C. 112, sixth paragraph:
An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
The claims in this application are given their broadest reasonable interpretation using the plain meaning of the claim language in light of the specification as it would be understood by one of ordinary skill in the art. The broadest reasonable interpretation of a claim element (also commonly referred to as a claim limitation) is limited by the description in the specification when 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is invoked.
As explained in MPEP § 2181, subsection I, claim limitations that meet the following three-prong test will be interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph:
(A) the claim limitation uses the term “means” or “step” or a term used as a substitute for “means” that is a generic placeholder (also called a nonce term or a non-structural term having no specific structural meaning) for performing the claimed function;
(B) the term “means” or “step” or the generic placeholder is modified by functional language, typically, but not always linked by the transition word “for” (e.g., “means for”) or another linking word or phrase, such as “configured to” or “so that”; and
(C) the term “means” or “step” or the generic placeholder is not modified by sufficient structure, material, or acts for performing the claimed function.
Use of the word “means” (or “step”) in a claim with functional language creates a rebuttable presumption that the claim limitation is to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites sufficient structure, material, or acts to entirely perform the recited function.
Absence of the word “means” (or “step”) in a claim creates a rebuttable presumption that the claim limitation is not to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is not interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites function without reciting sufficient structure, material or acts to entirely perform the recited function.
Claim limitations in this application that use the word “means” (or “step”) are being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action. Conversely, claim limitations in this application that do not use the word “means” (or “step”) are not being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action.
This application includes one or more claim limitations that do not use the word “means,” but are nonetheless being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, because the claim limitation(s) uses a generic placeholder that is coupled with functional language without reciting sufficient structure to perform the recited function and the generic placeholder is not preceded by a structural modifier. Such claim limitation(s) is/are: “decipher engine” in the 4th limitation of claim 1.
Examiner interprets the corresponding structure to be based on [0023] as published where it states “ These computer readable program instructions are stored in various types of computer readable storage media, such as cache 121 and the other storage media discussed below. The program instructions, and associated data, are accessed by processor set 110 to control and direct performance of the inventive methods. In computing environment 100, at least some of the instructions for performing the inventive methods may be stored in insight discovery code 150 in persistent storage 113” and [0049] as published “To uncover the configuration that conduct to the observed pattern, insight discovery program 150 may utilize a decipher engine (not shown) to eliminate data points whose relationship with the intersect trajectory would break the observed pattern.”
Because this/these claim limitation(s) is/are being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, it/they is/are being interpreted to cover the corresponding structure described in the specification as performing the claimed function, and equivalents thereof.
If applicant does not intend to have this/these limitation(s) interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, applicant may: (1) amend the claim limitation(s) to avoid it/them being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph (e.g., by reciting sufficient structure to perform the claimed function); or (2) present a sufficient showing that the claim limitation(s) recite(s) sufficient structure to perform the claimed function so as to avoid it/them being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph.
Claim Rejections - 35 USC § 112
The following is a quotation of the first paragraph of 35 U.S.C. 112(a):
(a) IN GENERAL.—The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor or joint inventor of carrying out the invention.
The following is a quotation of the first paragraph of pre-AIA 35 U.S.C. 112:
The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor of carrying out his invention.
Claims 1, 3-8, 10-15, and 17-20 are rejected under 35 U.S.C. 112(a) or 35 U.S.C. 112 (pre-AIA ), first paragraph, as failing to comply with the written description requirement. The claim(s) contains subject matter which was not described in the specification in such a way as to reasonably convey to one skilled in the relevant art that the inventor or a joint inventor, or for applications subject to pre-AIA 35 U.S.C. 112, the inventor(s), at the time the application was filed, had possession of the claimed invention. Claim 1 now recites “. [0049] as published states “To uncover the configuration that conduct to the observed pattern, insight discovery program 150 may utilize a decipher engine (not shown) to eliminate data points whose relationship with the intersect trajectory would break the observed pattern.” There is no support for a “configuration pattern,” it is unclear how the pattern itself is even having a “configuration.” No other portion of the disclosure even explains what this is related to. As Examiner best understands it, the “patterns” here appear to be referring to the data points clustered together that are below a certain distance value. Examiner suggests using consistent terminology in the claims, and avoiding using this one mention of “configuration” to somehow extrapolate into a “configuration pattern”. Applicant is invited to explain the support and/or amend the claim to overcome the rejection.
Independent claims 8, 15 recite similar limitations and are rejected for the same reasons.
Claims 3-7, 10-14, and 17-20 depend from claims 1, 8, and 15 and are rejected for the same reasons.
Claim 5 recites “generating a histogram by summing columns within the generated weighted binary matrix representations of the generated clusters.” Claim 1 recites “by summing data points for the generated clusters.” Given that “summing the columns of those rows” is only in [0049] as published, it appears both limitations are referring to the exact same operation, but there is no support for having “two distinct” summing operations. Examiner is not sure what to suggest. Applicant is invited to explain the support and/or amend the claim to overcome the rejection.
Claims 12 and 19 recite similar limitations as claim 5 and are rejected for the same reasons.
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 1, 3-8, 10-15, and 17-20 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Claim 1 recites the limitation "a computer-based method" in the preamble; “a computer” in the 2nd limitation; and “a computer” in the 3rd limitation; and “a decipher engine”, which under “Claim Interpretation” section above and FIG. 1 and [0023, 0049] as published, has corresponding structure of a computer. There is insufficient antecedent basis for the limitations in the claim. It is unclear if there are one, two, or three, or four computers involved. For purposes of applying prior art only, Examiner interprets claim 1 as reciting: “computer-based method" in the preamble; “[[a]] the computer” in the 2nd limitation; and “[[a]] the computer” in the 3rd limitation, and “a decipher engine stored in memory and executed by the computer” in the 4th limitation.
Claim 1 recites the limitation “scanning said generated clusters to uncover configuration patterns using a decipher engine so as to eliminate data points whose relationships with an intersect trajectory disrupts a pattern, wherein said clusters are scanned along binary vectors that contain a data point intersect trajectory.” However, later in the claim, it recites “identifying data point intersections within the generated weighted binary matrix representations” and ends with “executing automatic discovery across multiple statistical domains using data point intersections generated using the generated weighted binary matrix representation.” There is insufficient antecedent basis for “an intersect”; “intersect”; and “data point intersections” as it is unclear how many different intersections are being referred to. It is unclear what exactly is happening here, as the support for the new limitation is [0049] as published, which is from FIG. 2, which shows that the intersections eliminated are from the “identified intersections” in step 208. The claim though does not “identify intersections” until 3 steps after. This appears to mean that the limitation is referring to the same intersection from later. Examiner is not sure what to suggest exactly, but suggests using consistent language.
Claim 1 recites the limitation “scanning said generated clusters to uncover configuration patterns using a decipher engine so as to eliminate data points whose relationships with an intersect trajectory disrupts a pattern, wherein said clusters are scanned along binary vectors that contain a data point intersect trajectory.” No other portion of the claim refers to “pattern.” However, step 204 in FIG. 2, in [0038] as published, explains that “denoting a target pattern (complex relationship insight in multivariate data) that may be activated by the binary vectors (data points KPI's). Data point KPI's ‘1’ and ‘2’ are shown to have a mutual Mahalanobis distance that is less than a predetermined cutoff threshold value (distance) of ‘z2’. Thus, insight discovery program 150 clusters data point KPIs ‘1’ and ‘2’ within the same cluster 322.” Claim 1 already refers to “generating clusters including a series of binary vectors corresponding to the detected set of data point KPIs, wherein neighboring binary vectors having a mutual Mahalanobis distance below a threshold value are clustered together” in the earlier limitation. There is insufficient antecedent basis for “configuration patterns” and “a pattern” as they appear to be referring to the same “set of data point KPIs… clustered together” and other terminology in claim. Examiner suggests using consistent terminology, because as constructed, it appears “a pattern” is unrelated to the previous limitation and subsequent limitations, but it appears from the specification that it should be referring to the “set of data points KPIs… clustered together” as best understood. Examiner is not sure what to suggest exactly, but suggests using consistent language.
Claim 1 recites the limitation “scanning said generated clusters to uncover configuration patterns using a decipher engine so as to eliminate data points whose relationships with an intersect trajectory disrupts a pattern, wherein said clusters are scanned along binary vectors that contain a data point intersect trajectory.” However, later in the claim, it recites “executing automatic discovery across multiple statistical domains using data point intersections generated using the weighted binary matrix representation.” There is insufficient antecedent basis for the final limitation, as it appears to be referring to the same “uncover” patterns using intersect earlier referred to. It is unclear if these are referring to two different steps or a repeated step. Examiner is not sure what to suggest exactly, but suggests using consistent language.
Independent claims 8, 15 recite similar limitations and are rejected for the same reasons.
Claims 3-7, 10-14, and 17-20 depend from claims 1, 8, and 15 and are rejected for the same reasons.
Claim 5 recites “wherein performing the insight discovery by identifying the data point intersections within the generated weighted binary matrix representations further comprises: generating a histogram by summing columns within the generated weighted binary matrix representations of the generated clusters.” However, this limitation is supported by [0049], which explains this is part of the very same limitation added earlier on “eliminate data points… break the observed pattern.” It states:
To uncover the configuration that conduct to the observed pattern, insight discovery program 150 may utilize a decipher engine (not shown) to eliminate data points whose relationship with the intersect trajectory would break the observed pattern. In embodiments, for example, this is achieved by scanning a given clustering matrix representation along the binary vectors (rows) that contain a data point intersect trajectory and summing the columns of those rows, creating a histogram of data points versus the number of clusters in which it appeared.
It is thus unclear if “performing the insight discovery by identifying the data point intersections within the generated weighted binary matrix representations” as recited in claim 5 is actually the same, a duplication of, or different than the new limitation of “scanning said generated clusters to uncover configuration patterns using a decipher engine so as to eliminate data points whose relationships with an intersect trajectory disrupts a pattern, wherein said clusters are scanned along binary vectors that contain a data point intersect trajectory.” Perhaps the new limitation (“scanning… to uncover… using a decipher engine…with an intersect trajectory”) is actually a more specific version of the last limitation (“…discovery… using data point intersections…”)? It is unclear what to suggest to Applicant.
Claim 5 recites “generating a histogram by summing columns within the generated weighted binary matrix representations of the generated clusters.” Claim 1 recites “by summing data points for the generated clusters.” There is insufficient antecedent basis for “summing columns” as it is unclear if this is duplicating claim 1; or referring to a different summation. Given that “summing the columns of those rows” is only in [0049] as published, it appears both limitations are referring to the exact same operation, and this portion of claim 5 should be cancelled or the claim 1 limitation should state the same thing. Examiner is not sure what to suggest.
Claims 12 and 19 recite similar limitations as claim 5 and are rejected for the same reasons.
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-8, 10-15, and 17-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception (i.e. an abstract idea) without reciting significantly more.
Step One - First, pursuant to step 1 in MPEP 2106.03, the claim 1 is directed to a method which is a statutory category.
Step 2A, Prong One - MPEP 2106.04 - The claim 1 recites–
“A … method of performing automatic insight discovery across multiple statistical or machine learning domains, the method comprising:
detecting a set of data point key performance indicators (KPIs) from one or more statistical or machine learning domain spaces;
integrating an Enterprise Performance Management (EPM) … to access any data collected including data sourced from databases, spreadsheets, and external sources derived from various … domain spaces and updating the KPI;
generating… clusters including a series of binary vectors corresponding to the detected set of data point KPIs, wherein neighboring binary vectors having a mutual Mahalanobis distance below a threshold value are clustered together;
generating weighted binary matrix representations of the generated clusters; and
identifying data point intersections within the generated weighted binary matrix representations;
applying a set of clustering rules following simultaneous linear congruence formats;
executing … discovery across multiple statistical domains using data point intersections generated (([0015] the insights discovered as published states “For example, by considering a previous correlation insight between an exemplary KPI ‘X’ related to ‘Sales deals won during the current year’ and a second exemplary KPI ‘Y’ related to ‘Budget available during current year’ the user may want to understand if this KPI pair insight is dependent of another datapoint such as ‘Country’, ‘Market’, or ‘GEO’, etc.”).
As drafted, this is, under its broadest reasonable interpretation, within the Abstract idea grouping of “Certain methods of organizing human activity – marketing or sales activities) and “mathematical relationships” as here we are performing a series of mathematical operations- first, detecting KPIs (e.g. “sales” in [0015] as published) from statistical domain spaces, accessing data collected from various sources and updating KPIs, generating clusters with vectors and calculated distances from a known mathematical algorithm (Mahalanobis) and adjusting distances to form clusters, scanning clusters to uncover partners to eliminate some data points, adjusting a cluster size based on mathematical distance and summing data points (various math relationships), generating weighted binary matrix, and performing discovery, using more math (weighted binary matrix; rules of linear congruence; statistical domains). Accordingly, claim 1 is directed to an abstract idea because it is doing a series of mathematical calculations to make a recommendation related to KPI (sales).
Step 2A, Prong Two - MPEP 2106.04 - This judicial exception is not integrated into a practical application. In particular, the claim 1 recites additional elements that are:
A computer-based method…
integrating an Enterprise Performance Management (EPM) using a computer to access any data collected including data sourced from databases, spreadsheets, and external sources derived from various from one or more statistical or machine learning domain spaces (MPEP 2106.05f applies –the claim involves a computer, and is considered “apply it [the abstract idea] on a computer”; merely uses a computer as a tool to perform an abstract idea; even if alternative of “machine learning” is positively recited, still would be “apply it [abstract idea of mathematical relationships] on a computer”, notably, the claim starts out in the alternative – so “machine learning” is still not yet required);
generating, by a computer, clusters…
integrating an Enterprise Performance Management (EPM) system to access any data collected including data sourced from databases, spreadsheets, and external sources derived from various machine learning domain spaces and updating the KPI;
scanning said generated clusters to uncover configuration patterns using a decipher engine… (under “Claim Interpretation” section above and FIG. 1 and [0023, 0049] as published, has corresponding structure of a computer)
executing automatic discovery across multiple statistical domains using data point intersections generated using the weighted binary matrix representation (MPEP 2106.05f applies –the claim involves a computer, and is considered “apply it [the abstract idea] on a computer”; merely uses a computer (or 2, or 3, or 4) as a tool to perform an abstract idea and send and receive information; even if alternative of “machine learning” is positively recited, still would be “apply it [abstract idea of mathematical relationships] on a computer; See July 2024 Subject Matter Eligibility Update, Example 47, claim 2; Example 48, claim 1; the “machine learning model” here is “mere instructions to implement abstract idea on a computer at MPEP 2106.05f); see also MPEP 2106.05h “field of use” for combination of computer, system, and “machine learning” for accessing/retrieving data).
Accordingly, the additional elements do not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea. The claim also fails to recite any improvements to another technology or technical field, improvements to the functioning of the computer itself, use of a particular machine, effecting a transformation or reduction of a particular article to a different state or thing, and/or an additional element applies or uses the judicial exception in some other meaningful way beyond generally linking the use of the judicial exception to a particular technological environment, such that the claim as a whole is more than a drafting effort designed to monopolize the exception. See 84 Fed. Reg. 55. The claim is directed to an abstract idea.
Step 2B in MPEP 2106.05 - The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to integration of the abstract idea into a practical application, the additional element of a computing system, is treated as MPEP 2106.05(f) (Mere Instructions to Apply an Exception – “Thus, for example, claims that amount to nothing more than an instruction to apply the abstract idea using a generic computer do not render an abstract idea eligible.” Alice Corp., 134 S. Ct. at 235)). Mere instructions to apply an exception using a generic computer component cannot provide an inventive concept.
In addition, the claim now recites “system to access any data collected” which is considered a conventional computer function (See MPEP 2106.05d - iv. Storing and retrieving information in memory, Versata Dev. Group, Inc. v. SAP Am., Inc., 793 F.3d 1306; i. Receiving or transmitting data over a network, e.g., using the Internet to gather data, Symantec, 838 F.3d at 1321).
The claim fails to recite any improvements to another technology or technical field, improvements to the functioning of the computer itself, use of a particular machine, effecting a transformation or reduction of a particular article to a different state or thing, adding unconventional steps that confine the claim to a particular useful application, and/or meaningful limitations beyond generally linking the use of an abstract idea to a particular environment. See 84 Fed. Reg. 55. The claim is not patent eligible. Viewed individually or as a whole, these additional claim element(s) do not provide meaningful limitation(s) to transform the abstract idea into a patent eligible application of the abstract idea such that the claim(s) amounts to significantly more than the abstract idea itself.
Independent claim 8 is directed to a system at step 1, which is a statutory category. Claim 8 recites similar limitations as claim 1 and is rejected for the same reasons at step 2a, prong one, 2a, prong 2, and step 2b. The additional limitations, of processor, computer-readable memories for storing program instructions executed by processors, are all part of “apply it on a computer” (MPEP 2106.05f) at step 2a, prong 2 and step 2b. The claim is not patent eligible.
Independent claim 15 is directed to an article of manufacture at step 1, which is a statutory category. Specification [0019] as filed states “A computer readable storage medium, as that term is used in the present disclosure, is not to be construed as storage in the form of transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide, light pulses passing through a fiber optic cable, electrical signals communicated through a wire, and/or other transmission media.” Claim 15 recites similar limitations as claim 1 and claim 8 and is rejected for the same reasons at step 2a, prong one, 2a, prong 2, and step 2b. The additional limitations, of “computing system”, tangible storage medium, are part of “apply it on a computer” (MPEP 2106.05f) at step 2a, prong 2 and step 2b. The claim is not patent eligible.
Claim 3-5, 7, 9-12, 14, and 16-19 narrow the abstract idea by having various mathematical algorithms, operations, and relationships recited. Claim 3 – probabilistic data; claim 4 – Chinese Remainder Theorem with numbers that are coprime; claim 5 – histogram; summing columns. Claim 6 – statistical domain space may be only alternative used. Claims 6, 13, and 20 recite an additional element of “stored within an accessible enterprise performance management system.” This is viewed as “apply it [abstract idea] on a computer” (MPEP 2106.05f) at step 2a, prong 2 and step 2B. It is also a conventional computer function at step 2B (MPEP 2106.05d(II) - iv. Storing and retrieving information in memory, Versata Dev. Group, Inc. v. SAP Am., Inc., 793 F.3d 1306, 1334).
Therefore, the claim(s) are rejected under 35 U.S.C. 101 as being directed to non-statutory subject matter.
For more information on 101 rejections, see MPEP 2106.
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, 3, 6-8, 10, 13-15, 17, and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Venkata (US 2020/0097879) in view of Konuri (US 2022/0236957) and Sheppard (US 20220036390).
A computer-based method of performing automatic insight discovery across multiple statistical or machine learning domains (Venkata – see par 4 – computers perform operations including opportunity evaluation and classifying opportunities within a multi-dimensional space; see par 69-71, FIG. 7 – distributed system 700 with client computing devices executing applications, from server 712; see par 77-78 – server 712 analyzes and consolidates data feeds or events from sources, data streams, clickstream analysis, etc and data repositories 714, 716 for storing information;
See also Konuri – see par 16 - The EPM system 26 may be configured to implement one or more multidimensional databases 32 for an enterprise, which may also be referred to as cubes, and may be configured to leverage the multidimensional databases 32 for planning, budgeting, forecasting, and reporting business performance of the enterprise.), the method comprising:
detecting a set of data point key performance indicators (KPIs) from one or more statistical or machine learning domain spaces ([0013] as published - of Enterprise Performance Management (EPM) systems to help manage the organization's performance and make better-informed decisions through insight discovery. For example, an EPM may help an organization process data to identify areas for improvement, track progress against key performance indicators (KPIs), and make informed decisions about resource allocation, investments, or other strategic initiatives
(Venkata – see par 32 - The data sources 120 can be mined by machine learning algorithms to identify types of opportunities, opportunities that were successful, the products involved in opportunities, the activities that occurred during the opportunities, and so forth. Specifically, smart search and navigation engine 135 can search for information relevant to improving the prospects of each opportunity, and provide it to activity manager 160 for use in evaluating open opportunities… Example data sources may include quantitative and qualitative data pertaining to… metric indicators (e.g. key performance indicators); see par 55 - scoring and next best action information can be provided in a user interface to the sales representatives or in a dashboard type user interface to executives that watch key performance indicators (“KPI”). The information for each opportunity can be tracked and used to generate other KPIs for viewing in the dashboard as well. FIGS. 4, 5, and 6 provide exemplary graphical user interfaces for providing the information (e.g. FIG. 4-5 – showing dollar value of different possible contracts/sales);
See also Konuri – see par 20 - When the target platform 14 is serving an enterprise, for example, such applications may be employed for the purposes of planning, budgeting, forecasting, and reporting business performance at different levels of granularity. For instance, an application may be developed that is configured, upon execution on the target platform 14, to generate and display a comprehensive view of net sales revenue of the enterprise that is broken down by one or more members of one or more dimensions of the multidimensional databases 32 (e.g., by product, entity, customer, sales channel, period);
integrating an Enterprise Performance Management (EPM) system (Venkata – see par 70 - In certain embodiments, server 712 may provide services or software applications... In some embodiments, these services may be offered as web-based or cloud services, such as under a Software as a Service (SaaS) model to the users of client computing devices; see par 84-85 – cloud infrastructure system 802 may provide one or more cloud services using different models such as under a Software as a Service (SaaS) model; Examples of SaaS services provided include… enterprise performance management (EPM)).
Venkata discloses “providing” a service, that can be “Enterprise Performance Management (EPM)” (See par 70, 84-85). At this time, no other limitations explain what the EPM system is doing amongst any other limitations, so at this time, Venkata discloses the limitation.
Konuri discloses the limitation as well:
integrating an Enterprise Performance Management (EPM) system (Konuri – see par 14 - the target platform 14 may include a master data management (MDM) server 20 configured to implement an MDM system 22 for an enterprise, and may include an enterprise performance management (EPM) server 24 configured to implement an EPM system 26 for an enterprise; see par 27 - The application builder server 16 may host an application creation engine 34 configured to generate the custom applications for querying and deriving target outputs from an enterprise's multidimensional databases 32. The application creation engine 34 may include a discovery module 36)
Venkata and Konuri in combination disclose:
using a computer (Venkata – see par 19 - System 100 may be one or more computer systems, such as computer system 900 of FIG. 9. System 100 may be incorporated into a networked system 700 as, for example, one or more servers 712 as described with respect to FIG. 7. System 100 may optionally be incorporated into a cloud-based system 800 as, for example, cloud infrastructure system 802;
see also Konuri par 117 - In particular, the program code may be distributed using a computer readable storage medium having computer readable program instructions thereon for causing a processor to carry out aspects of the embodiments of the invention.) to access any data collected including data sourced from databases, spreadsheets, and external sources derived from various machine learning domain spaces and updating the KPIs (Venkata – see par 30 - Data regarding successful and unsuccessful opportunities, including reference models of activities, may be obtained from the opportunities and sales database found in the customer relationship management (“CRM”) system and activity knowledge base 150 respectively; see par 32 - The data sources 120 can be mined by machine learning algorithms to identify types of opportunities, opportunities that were successful, the products involved in opportunities, the activities that occurred during the opportunities, and so forth. The information gleaned from the mining can be used to assess current opportunities using machine learning based models including but not limited to capsule-network based neural networks for short range order and long short term memory for long range order to find if there is novel information of interest to the end user; Further data for each existing customer may include web logs (pages visited, errors, performance, time outs, activity logs, and so forth) as well as social media activities; see par 41-42 – common multi-dimensional space can have 180+ variables listed in Table 1, accessed from the CRM databases (disclosing databases, spreadsheets); see par 55 - he scoring and next best action information can be provided in a user interface to the sales representatives or in a dashboard type user interface to executives that watch key performance indicators (“KPI”). The information for each opportunity can be tracked and used to generate other KPIs for viewing in the dashboard as well;
see also Konuri see par 15 - The MDM system 22 may be communicatively coupled to these business units and applications, and may be configured to update the master data 30 as operations across the enterprise result in changes to the master data 30 to ensure the timeliness, accuracy and completeness of the master data 30; see par 16 - The EPM system 26 may be configured to implement one or more multidimensional databases 32 for an enterprise, which may also be referred to as cubes, and may be configured to leverage the multidimensional databases 32 for planning, budgeting, forecasting, and reporting business performance of the enterprise; FIG. 1, par 27 - The application builder server 16 may host an application creation engine 34 configured to generate the custom applications for querying and deriving target outputs from an enterprise's multidimensional databases 32. The application creation engine 34 may include a discovery module 36; The modules may be configured to cooperate with one another, with various databases, and various external systems, such as the user device 12, the MDM system 22, and the EPM system 26, to facilitate creation of the dynamic machine written applications;
see also Sheppard – see par 147 - The processor platform 1600 can be, for example, a server, a personal computer, a workstation, a self-learning machine (e.g., a neural network));
generating, by a computer (Venkata – see par 19 - System 100 may be one or more computer systems, such as computer system 900 of FIG. 9. System 100 may be incorporated into a networked system 700 as, for example, one or more servers 712 as described with respect to FIG. 7. System 100 may optionally be incorporated into a cloud-based system 800 as, for example, cloud infrastructure system 802;
see also Konuri par 117 - In particular, the program code may be distributed using a computer readable storage medium having computer readable program instructions thereon for causing a processor to carry out aspects of the embodiments of the invention), clusters including a series of binary vectors corresponding to the detected set of data point KPIs, wherein neighboring binary vectors having a mutual Mahalanobis distance below a threshold value are clustered together (Venkata see par 37 - Based on the sequence of actions in the current opportunities, similar opportunities can be identified in the historical data and in the open opportunities from data sources 120 by smart search and navigation engine 135. Action recognizer 166 can group the opportunities into multi-dimensional neighborhoods based on, for example, Mahalanobis distance-based extremity driven normalized measures on the multi-dimensional distributions. For example, a similar opportunity can be based on the size of the deal, the timing of the deal, one or more products involved in the deal, or similarity of activities in the deals. See par 58 - At step 310, a subset of the variables in each neighborhood are identified. The identified subset of variables are the locally important variables (e.g. 2 to 7). The process of identifying these variables may be, for example, to … determining which derivatives have the largest positive or negative statistically significant impact to change the state of the opportunity through a search through the local space as identified by the extrema of the boundary conditions of the top n similar opportunities as determined by a Mahalanobis distance measure on normalized variables. After identifying which variables have the largest impact, the search space may be limited to a multi-dimensional space consisting only of those identified variables. These variables form the local multi-dimensional subset;
See also Konuri – see par 84 - Responsive to assigning the weighted target output identifiers 92 to the target outputs 72, the AMS module 62 may be configured to automatically group the target outputs 72 into mutually exclusive groups based on the weighted target output identifiers 92. Each group may include two or more of the target outputs 72 calculated at a same or similar level of granularity, such as according to the weighted target output identifiers 92);
scanning said generated clusters to uncover configuration patterns using a decipher engine (Venkata – see par 38 - The weighted metrics can be used to calculate a score for the opportunity. The score can be an indicator of the probability of a successful closing of the opportunity. This score can be used to classify the opportunity as a winning or losing opportunity. The score may have a temporal and variable driven weighting based on long range and short range order calculated through multi-variate nonstationary time series models with attention, including but not limited to long short term memory based models (disclosing “trajectory”); see par 33, 46 - The system 100 classifies the opportunities, identifies the opportunities classified as losing or likely to lose, and uses a difference calculation and simulation search to generate a recommendation for the losing opportunity to become a winning opportunity) so as to eliminate data points whose relationships with an intersect trajectory disrupts a pattern, wherein said clusters are scanned along binary vectors that contain a data point intersect trajectory (Applicant’s [0012, 0035] as published “Deciphering the pattern allows the trajectory of an original data point KPI to be inferred with high confidence.”; [0038] as published “In FIG. 3, each of data point KPIs 310, represented as squares, are shown in differing statistical or machine learning domain search spaces of an exemplary clustering scheme 300, with domain variables x and y, denoting a target pattern (complex relationship insight in multivariate data) that may be activated by the binary vectors (data points KPI's). Data point KPI's ‘1’ and ‘2’ are shown to have a mutual Mahalanobis distance that is less than a predetermined cutoff threshold value (distance) of ‘z2’. Thus, insight discovery program 150 clusters data point KPIs ‘1’ and ‘2’ within the same cluster 322.” Applicant’s [0049] as published states “ To uncover the configuration that conduct to the observed pattern, insight discovery program 150 may utilize a decipher engine (not shown) to eliminate data points whose relationship with the intersect trajectory would break the observed pattern.
Konuri discloses the limitations, as best understood in light of 112 rejections, and based on broadest reasonable interpretation in light of the specification – see par 31 - The granularity data for each target output may also indicate a granularity level to provide for the target output relative to the other dimensions (e.g., generate the target output broken down by … time period) (disclosing trajectory); See par 38 - The period granularity configuration parameter may define the time granularity in which the enterprise plans their financials, such as by year, quarter, month, week, day, or a combination thereof. The fiscal calendar configuration parameter may indicate the first month of a calendar year for the enterprise, such as defined in the enterprise's EPM system 26. The decision module 38 may be configured to utilize these configuration parameters to set up the proper computation logic for rolling balances, inventories, setting up reporting periods, and so on ) (disclosing trajectory). see par 75 - For instance, if a user desires to calculate a target output 72 as a function of only the positive values of a given influencer 74 within the multidimensional databases 32, then the user may apply an exception to the influencer 74 that indicates, in connection with the target output 72, to determine whether the value of the influencer 74 for a given intersection of the granularity dimensions 80 is negative (where one of the dimensions is “period 80E”). If so, then the exception may indicate to set the value to zero for the purposes of calculating the target output 72.);
configuring to adjust a cluster size by increasing a predetermined cutoff threshold value for Mahalanobis distance, thereby adjusting which data point KPIs would be close enough, or too far away,… (Venkata – see par 37 - Action recognizer 166 can group the opportunities into multi- dimensional neighborhoods based on, for example, Mahalanobis distance-based extremity driven normalized measures on the multi-dimensional distributions. For example, a similar opportunity can be based on the size of the deal, the timing of the deal, one or more products involved in the deal, or similarity of activities in the deals. See par 58 - The process of identifying these variables may be, for example, to find local derivatives of the deep learning models identified earlier for opportunity scoring, and determining which derivatives have the largest positive or negative statistically significant impact to change the state of the opportunity through a search through the local space as identified by the extrema of the boundary conditions of the top n similar opportunities as determined by a Mahalanobis distance measure on normalized variables;
See also Konuri – disclosing “grouping”, considering distances” – see FIG. 2 – target outputs 72 = “net sales revenue” (disclosing a KPI), See par 70 - the decision module 38 may be configured to automatically group the target outputs 72 into a plurality of mutually exclusive groups each including two or more of the target outputs 72 by applying a weighting algorithm to the application definition 42 that assigns influencer weights to each influencer 74 relative to the granularity dimensions 80 based on the influencer granularity definitions 82 for that influencer 74, assigns target output weights to each target output 72 relative to the granularity dimensions 80 that correspond to the influencer weights assigned to the influencers 74 for the target output 72, and identifies the target outputs 72 for each group based on the target output weights assigned to each target output 72. See par 99 - each granularity dimension 80 may include members within the multidimensional databases 32 that are organized into mutually exclusive generations of the granularity dimension 80 each corresponding to a different distance from a root node of the granularity dimension 80, and the application definition 42 may be discovered by generating a GUI 50 with fields for receiving identification of the target outputs 72, influencers 74, and granularity dimensions 80.)
Venkata discloses grouping opportunities from data sources into multi-dimensional neighborhoods, that includes measures for “size of the deal, timing of the deal, similarity of activities in the deals, as well as a metrics to analyze the current opportunity (See par 37-38). Konuri discloses that computation logic related to multidimensional databases can include computation logic including “addition” (See par 31). Konuri also discloses looking at for “each possible combination of the members of the granularity dimensions” while avoiding querying and processing other data stored in multidimensional databases that is “not relevant” (See par 88).
Sheppard discloses, as best understood in light of 112 rejections:
by summing data points for the generated clusters (Sheppard – see par 44 – One type of data structure that is useful to provide summary statistics (e.g., sketch data) in the context of tracking exposure to media is the Bloom filter array. A typical Bloom filter array is a vector or array of bits that are initialized to 0 and then populated by flipping individual ones of the bits from 0 to 1 based on the allocation or assignment of users (or other data entries) in a database (e.g., the databases 124a-b of the database proprietors 106a-b of FIG. 1) to respective ones of the bits in the Bloom filter array (disclosing clustering). The users (or other data entries) in a database that are represented in the Bloom filter array are identified as corresponding to summary statistics of interest (e.g., users that were exposed to a particular media item); see par 71 - As each element in the Bloom filter array is assigned either an even number of times (to end up with a value of 0) or an odd number of times (to end up with a value of 1), the sum of c.sub.E and c.sub.O equals the total number of elements in the Bloom filter array (e.g., c.sub.E+c.sub.O=m); see par 88 – “sum” equals cardinality for Bloom filter arrays being 1, 2, or 3).
Venkata discloses “Each of the identified metrics can be weighted based on the historical data analysis. The weighted metrics can be used to calculate a score for the opportunity. The score can be an indicator of the probability of a successful closing of the opportunity” (see par 38) and that “Action recognizer 116 chooses the most significant factors in each neighborhood dynamically by creating local linear surrogate models on top of the original model. Thus, each neighborhood has its own dimensionality. In this way, opportunities are segmented and the solution resolves the challenge of large multi-dimensional vectors falling on the surface of the hypersphere. This Common Multi-Dimensional Space enables common distance measures because each neighborhood represents a normalized distance based locality. Higher weightage may be given to closer points when local searches are performed and may use local linear surrogate models for explanations” (See par 41). Venkata also discloses “the processing performed by cloud infrastructure system 802 may involve big data analysis…The data used for this analysis may include structured data (e.g., data stored in a database or structured according to a structured model) and/or unstructured data (e.g., data blobs (binary large objects))” (See par 91).
Konuri discloses:
generating weighted binary matrix representations of the generated clusters (Applicant’s [0040] as published states FIG. 4 is an example weighted binary matrix, where values are 0 or 1; [0046] as published – “binary entry of ‘1’;
Konuri discloses the limitations based on broadest reasonable interpretation in light of the specification – see par 72 - Referring to FIG. 3, for example, the WbL module 60 may be configured to use a binary weighting system in which the WbL module 60 assigns one influencer weight 86 value (e.g., one) to each influencer granularity definition 82 indicating a nonzero level of granularity, and assigns another influencer weight 86 value (e.g., zero) for each influencer granularity definition 82 indicating a null level of granularity (e.g., “none”). The WbL module 60 may also be configured to generate and store a weight index 61 (See FIG. 1) in the application definition database 58 that tracks the influencer granularity definitions 82 for which the former influencer weight 86 (FIG. 3) value is assigned. See par 73 - In this case, the WbL module 60 may be configured to generate entries in the weight index 61 that track the members or group of members corresponding to each assigned nonzero influencer weight 86 value.); and
Venkata and Konuri disclose:
identifying data point intersections (Venkata – se par 33, 46 - The system 100 classifies the opportunities, identifies the opportunities classified as losing or likely to lose, and uses a difference calculation and simulation search to generate a recommendation for the losing opportunity to become a winning opportunity;
see also Konuri – see par 20 - an application may be developed that is configured, upon execution on the target platform 14, to generate and display a comprehensive view of net sales revenue of the enterprise that is broken down by one or more members of one or more dimensions of the multidimensional databases 32 (e.g., by product, entity, customer, sales channel, period, and so on). see par 90- The DbDe module 64 (See FIG. 1 – within Decision Module 38) may thus be configured to generate an equation for each target output 72 … to determine the granularity dimensions 80, members, and/or member groups applicable to each influencer 74 for the target output 72 by querying the weight index 61 with the nonzero influencer weights 86 of the weighted influencer identifier 90 assigned to the influencer 74, and generate code for each influencer 74 for the target output 72 that indicates an intersection of the influencer 74 with the members of the granularity dimensions 80 determined as applicable to the influencer 74. The DbDe module 64 may then be configured to combine the generated intersections based on the computation logic 76 for the target output 72) within the generated weighted binary matrix representations (Konuri – also discloses interactions – see par 17, 7 - if a user desires to calculate a target output 72 as a function of only the positive values of a given influencer 74 within the multidimensional databases 32, then the user may apply an exception to the influencer 74 that indicates, in connection with the target output 72, to determine whether the value of the influencer 74 for a given intersection of the granularity dimensions 80 is negative. If so, then the exception may indicate to set the value to zero for the purposes of calculating the target output 72. Konuri discloses using the binary matrix representation as above - see par 72 - Referring to FIG. 3, for example, the WbL module 60 may be configured to use a binary weighting system in which the WbL module 60 assigns one influencer weight 86 value (e.g., one) to each influencer granularity definition 82 indicating a nonzero level of granularity, and assigns another influencer weight 86 value (e.g., zero) for each influencer granularity definition 82 indicating a null level of granularity (e.g., “none”). see par 84 - Each group may include two or more of the target outputs 72 calculated at a same or similar level of granularity, such as according to the weighted target output identifiers 92. For instance, the AMS module 62 may be configured to identify and group target outputs 72 having the same weighted target output identifiers 92).
Venkata discloses “Semantic indexes 125 may be generated by learning generalized rules into a semantic memory (semantic indexes 125) that include generalizations based on episodes from multiple sales people, customers, and opportunities over time” (See par 27). Venkata also discloses “Action recognizer 116 chooses the most significant factors in each neighborhood dynamically by creating local linear surrogate models on top of the original model.” Konuri discloses having different granularity definitions for groups of members from granularity dimensions (See par 73) and using weighted identifiers for querying data from multidimensional databases (See par 85).
Sheppard discloses:
applying a set of clustering rules following simultaneous linear congruence formats (Applicant’s example clustering rule in par 40-41
PNG
media_image1.png
106
446
media_image1.png
Greyscale
Sheppard – see par 44 – One type of data structure that is useful to provide summary statistics (e.g., sketch data) in the context of tracking exposure to media is the Bloom filter array. A typical Bloom filter array is a vector or array of bits that are initialized to 0 and then populated by flipping individual ones of the bits from 0 to 1 based on the allocation or assignment of users (or other data entries) in a database (e.g., the databases 124a-b of the database proprietors 106a-b of FIG. 1) to respective ones of the bits in the Bloom filter array (disclosing clustering). The users (or other data entries) in a database that are represented in the Bloom filter array are identified as corresponding to summary statistics of interest (e.g., users that were exposed to a particular media item); See par 56 - The final value in a Bloom filter array after all data entries (e.g., users) have been assigned to respective elements in the Bloom filter array may be determined based on modulo 2 arithmetic. Stated generally, in mathematics “modulo d” is defined as the remainder after dividing an integer number by d. The possible output is any number between 0 and d−1. Two numbers are said to be congruent if they share the same remainder. This can be stated as a≡b (mod d). For example 17 and 27 are both congruent modulo 10 as they share the same remainder of 7 after dividing by 10, which is written as a congruence relation as 17≡27 (mod 10).
PNG
media_image2.png
34
294
media_image2.png
Greyscale
Venkata, Konuri, and Sheppard disclose:
executing automatic discovery across multiple statistical domains using data point intersections generated (Applicant’s [0014] as published states “Exemplary statistical or machine learning domains may include, for example, random graphs, random trees, causal trees, Markov chains, analysis of variance, and inferences, among many others. Consequently, as vast amounts of complex data from multiple domains becomes increasingly common, utilizing correlation tools to perform Insights as a Service Discovery (IaaSD) becomes a highly complex combinatorial multiobjective optimization problem.”
Venkata – se par 33, 46 - The system 100 classifies the opportunities, identifies the opportunities classified as losing or likely to lose, and uses a difference calculation and simulation search to generate a recommendation for the losing opportunity to become a winning opportunity;
see also Konuri – see par 20 - an application may be developed that is configured, upon execution on the target platform 14, to generate and display a comprehensive view of net sales revenue of the enterprise that is broken down by one or more members of one or more dimensions of the multidimensional databases 32 (e.g., by product, entity, customer, sales channel, period, and so on). see par 90- The DbDe module 64 (See FIG. 1 – within Decision Module 38) may thus be configured to generate an equation for each target output 72 … to determine the granularity dimensions 80, members, and/or member groups applicable to each influencer 74 for the target output 72 by querying the weight index 61 with the nonzero influencer weights 86 of the weighted influencer identifier 90 assigned to the influencer 74, and generate code for each influencer 74 for the target output 72 that indicates an intersection of the influencer 74 with the members of the granularity dimensions 80 determined as applicable to the influencer 74. The DbDe module 64 may then be configured to combine the generated intersections based on the computation logic 76 for the target output ) using the generated weighted binary matrix representation (Konuri – see par 72 - Referring to FIG. 3, for example, the WbL module 60 may be configured to use a binary weighting system in which the WbL module 60 assigns one influencer weight 86 value (e.g., one) to each influencer granularity definition 82 indicating a nonzero level of granularity, and assigns another influencer weight 86 value (e.g., zero) for each influencer granularity definition 82 indicating a null level of granularity (e.g., “none”). see par 91 - For instance, referring to the example illustrated in FIG. 3, the AMS module 62 may have grouped the net sales revenue target output 72A and the third party licensing revenue target output 72B based on the same weighted target output identifier 92 being assigned to each of these target outputs 72; par 85 - responsive to assigning the weighted identifiers 90, 92 and grouping the target outputs 72, the AMS module 62 may pass control to the DbDe module 64, which may generally be configured to analyze the system generated data, coupled with information supplied by user input, and synthesize/create recommendations using the complex weighted schematic to provide improved accuracy across a range of predictive outputs).
Both Venkata and Konuri are analogous art as they are directed to analyzing clusters/groups of business opportunities/performance/sales data (see Venkata Abstract; Konuri Abstract, par 15, 20). Venkata, Konuri, and Sheppard are analogous art as they are directed to analyzing clusters/classification of data (see Venkata Abstract; Konuri Abstract, par 15, 20; See Sheppard par 44 – assignment of users to respective bits; par 56; par 65 – member or non-membership). 1) Venkata discloses “providing” a service, that can be “Enterprise Performance Management (EPM)” (See par 70, 84-85). Venkata discloses weighting metrics (see par 38), segmenting opportunities and using weights when searching for similar topics (See par 41), and having “binary” large objects in data analysis (See par 91). Konuri improves upon Venkata by disclosing having an Enterprise Performance Management (EPM) to implement a system (See par 14), where it can cooperate with external systems (See par 27), using a binary matrix and weighting in clusters while looking for intersections in a matrix/table (See par 72, 90) that is also used for comprehensive views of sales broken down by different dimensions (See par 20). One of ordinary skill in the art would be motivated to further include a binary matrix in the clustering/grouping of data/performance to efficiently improve upon the classification of opportunities for sales in Venkata. 2) Venkata discloses “Semantic indexes 125 may be generated by learning generalized rules into a semantic memory (semantic indexes 125) that include generalizations based on episodes from multiple sales people, customers, and opportunities over time” (See par 27). Venkata also discloses “Action recognizer 116 chooses the most significant factors in each neighborhood dynamically by creating local linear surrogate models on top of the original model.” Venkata discloses grouping opportunities from data sources into multi-dimensional neighborhoods, that includes measures for “size of the deal, timing of the deal, similarity of activities in the deals, as well as a metrics to analyze the current opportunity (See par 37-38). Konuri discloses that computation logic related to multidimensional databases can include computation logic including “addition” (See par 31). Konuri also discloses looking at for “each possible combination of the members of the granularity dimensions” while avoiding querying and processing other data stored in multidimensional databases that is “not relevant” (See par 88). Konuri discloses having different granularity definitions for groups of members from granularity dimensions (See par 73) and using weighted identifiers for querying data from multidimensional databases (See par 85). Sheppard improves upon Venkata and Konuri by disclosing using a “sum” for assigning items (See par 71, 88) and a congruent modulo arithmetic in a linear formulation a = b (mod d) (See par 44, 56). One of ordinary skill in the art would be motivated to further include a modulo arithmetic in a linear formulation and using “summing” to efficiently improve upon the classification of opportunities for sales in Venkata and the grouping of clustering in Konuri.
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 classifications of opportunities from sales from multi-dimensional space in Venkata, to further include using a binary matrix in the clustering/classification as disclosed in Konuri, and to further use a modulo linear formulation for data entries and using “summing” as disclosed in Sheppard, 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 8, Venkata and Konuri and Sheppard disclose:
A computer system (Venkata – see par 4 – computers perform operations including opportunity evaluation and classifying opportunities within a multi-dimensional space; see par 69-71, FIG. 7 – distributed system 700 with client computing devices executing applications, from server 712; see par 77-78 – server 712 analyzes and consolidates data feeds or events from sources, data streams, clickstream analysis, etc and data repositories 714, 716 for storing information), the computer system comprising:
one or more processors, one or more computer-readable memories, one or more computer-readable tangible storage medium, and program instructions stored on at least one of the one or more computer-readable tangible storage medium for execution by at least one of the one or more processors via at least one of the one or more computer-readable memories, wherein the computer system is capable of performing a method comprising (Venkata – see par 104 - the processing units in processing subsystem 904 can execute instructions stored in system memory 910 or on computer readable storage media 922. In various embodiments, the processing units can execute a variety of programs or code instructions and can maintain multiple concurrently executing programs or processes.)
The remaining limitations are similar to claim 1 above.
Claim 8 is rejected for the same reasons.
It would be obvious to combine Venkata and Konuri and Sheppard for the same reasons as claim 1.
Concerning independent claim 15, Venkata and Konuri and Sheppard disclose:
A computer program product, the computer program product comprising (Venkata – see par 4 – computers perform operations including opportunity evaluation and classifying opportunities within a multi-dimensional space; see par 69-71, FIG. 7 – distributed system 700 with client computing devices executing applications, from server 712; see par 77-78 – server 712 analyzes and consolidates data feeds or events from sources, data streams, clickstream analysis, etc and data repositories 714, 716 for storing information), one or more computer-readable tangible storage medium and program instructions stored on at least one of the one or more computer-readable tangible storage medium, the program instructions executable by a processor capable of performing a method, the method comprising: (Venkata – see par 104 - the processing units in processing subsystem 904 can execute instructions stored in system memory 910 or on computer readable storage media 922. In various embodiments, the processing units can execute a variety of programs or code instructions and can maintain multiple concurrently executing programs or processes.)
The remaining limitations are similar to claim 1 above.
Claim 15 is rejected for the same reasons.
It would be obvious to combine Venkata and Konuri and Sheppard for the same reasons as claim 1.
Concerning claims 3, 10, and 17, Venkata, Konuri, and Sheppard disclose:
The computer-based method of claim 1, wherein generating the weighted binary matrix representations of the generated clusters further comprises:
utilizing probabilistic data structures representing intra-positional sequence data point KPIs (Venkata – see par 20 - Ontology knowledge base 105 may be partly explicitly coded by experts of the domain and partly encoded as task sequence embeddings using neural networks including, but not limited to, neural networks like bidirectional long short term memory (“LS™”) with variable attention and temporal attention to encode what actions follow which others and which are expected to come up in sequence for successful versus unsuccessful opportunities; See par 46 - the goal of the system 100 is to generate an ordered list of shortest paths each including a sequence of the next best actions as a recommendation to the user to help the salesperson move the at-risk opportunity to a better state with a higher likelihood of success. see par 48, 54 - To simulate or approximate abductive reasoning, a local search (defined by the normalized distance described above, that includes a configurable number of Wins or Losses) along the greatest gradient to positive or negative change to find the top five shortest paths by perturbing current states to the nearest opportunity classified as a Win by the original neural network based model, with cost of change, along with Bayesian probabilities of success and probability of activation/occurrence/success of each step in the path based on distributions of past data on the opportunities.
Applicant’s examples of the “probabilistic data structures” include: [0045] - Suitable probabilistic data structures that may be utilized by insight discovery program 150, may include, for example, bloom filters, cuckoo filters, HyperLogLog, Count-Min Sketch, or Trie. For example, in embodiments the rows of a generated matrix may represent binary vectors, and each row may be represented by a bloom filter, where columns represent data point KPI's.
Sheppard also discloses the limitations:
The computer-based method of claim 2, wherein generating the weighted binary matrix representations of the generated clusters further comprises:
“utilizing probabilistic data structures” representing intra-positional sequence data point KPIs (Sheppard – See FIGS. 3-5, par 46 - That is, where the Bloom filter array 202 has a length of m (e.g., m=10 in the illustrated examples), the probability p.sub.i that a given input (e.g., a particular email address 302, 402, 502) is assigned to the ith element is p.sub.i=1/m.).
It would be obvious to combine Venkata and Konuri and Sheppard for the same reasons as claim 1.
Concerning claims 6, 13, and 20, Venkata discloses:
The computer-based method of claim 1, wherein the detected set of data point key performance indicators from the one or more statistical or machine learning domain spaces are stored within an accessible enterprise performance management system (Venkata – see par 22 - Episodic memory of each action of the sales person may include emails, phone calls, memos, presentations, travel, success and movement of opportunity, service quality of past opportunities at customer, competitive information, and the like. The system may capture, store, and replay the context of the activity being performed, as well as the context information of previous tasks and activities. The captured activity information may be stored in a structured form including all the information relative to the process and its context, and making it available to other modules to access and modify this information; see par 42 - To create the common multi-dimensional space, all the 180+ variables listed in Table 1, for example, may be accessed from the CRM databases, in the context of the ontology knowledge base 105. All categorical variables can be converted using entropy encoding to replace each categorical variable with a probability of its occurrence in the dataset using semantic analysis engine 140.).
Concerning claims 7, 14, Venkata discloses:
The computer-based method of claim 1, wherein the threshold value is adjustable to alter the size of the generated clusters (Venkata – see par 58 - The process of identifying these variables may be, for example, to find local derivatives of the deep learning models identified earlier for opportunity scoring, and determining which derivatives have the largest positive or negative statistically significant impact to change the state of the opportunity through a search through the local space as identified by the extrema of the boundary conditions of the top n similar opportunities as determined by a Mahalanobis distance measure on normalized variables. After identifying which variables have the largest impact, the search space may be limited to a multi-dimensional space consisting only of those identified variables.).
Claims 4, 11, and 18 are rejected under 35 U.S.C. 103 as being unpatentable over Venkata (US 2020/0097879) and Konuri (US 2022/0236957), and Sheppard (US 20220036390), as applied above to claims 1, 3, 6-8, 10, 13-15, 17, and 20, and further in view of Cuyt (US 20140195200).
Concerning claims 4, 11, and 18, Sheppard discloses having a “remainder” while assigning elements in the Bloom filter based on a modulo 2 arithmetic (See par 56). Sheppard also discloses having congruence (see par 56-57). However, Venkata, Konuri, and Shepard do not disclose that the named Theorem used is “Chinese Remainder Theorem.”
Cuyt discloses:
The computer-based method of claim 3, wherein generating the weighted binary matrix representations of the generated clusters further comprises:
maximizing efficiency of the generated cluster schemes by employing a Chinese Remainder Theorem such that each set of clustering intervals is coprime with respect to each other (Cuyt – see par 82 – data to be represented may for example be made to… mathematical data… textual data, etc; See par 84 – determining a subset of a family of functions of data; see par 97 – using technique based on Chinese remainder theorem, where subset elements, taking into account “prime” relationship of components; par 123 (col. 2) – roots of unity of relatively prime order… retrieved from an application for the Chinese remainder theorem).
Venkata, Konuri, Sheppard, and Cuyt are analogous art as they are directed to analyzing clusters/classification of data (see Venkata Abstract; Konuri Abstract, par 15, 20; See Sheppard par 44 – assignment of users to respective bits; par 56; par 65 – member or non-membership; Cuyt par 84). Venkata discloses “Semantic indexes 125 may be generated by learning generalized rules into a semantic memory (semantic indexes 125) that include generalizations based on episodes from multiple sales people, customers, and opportunities over time” (See par 27). Venkata also discloses “Action recognizer 116 chooses the most significant factors in each neighborhood dynamically by creating local linear surrogate models on top of the original model.” Sheppard discloses having a “remainder” while assigning elements in the Bloom filter based on a modulo 2 arithmetic (See par 56). Sheppard also discloses having congruence (see par 56-57). Cuyt improves upon Venkata, Konuri, and Sheppard by disclosing using the known and named Chinese Remainder Theorem that includes having prime aspects. One of ordinary skill in the art would be motivated to further include the named “Chinese Remainder Theorem” to efficiently improve upon the classification of opportunities for sales in Venkata and the grouping of clustering in Konuri (see page 209, 213) and the assigning of elements based on a modulo arithmetic in a linear formulation that has a “remainder” and congruence as disclosed in Sheppard.
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 classifications of opportunities from sales from multi-dimensional space in Venkata, to further include using a binary matrix in the clustering/classification as disclosed in Konuri, to further assign elements based on a modulo linear formulation for data entries as disclosed in Sheppard, and to further employ the Chinese Remainder Theorem, 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.
Claims 5, 12, 19 are rejected under 35 U.S.C. 103 as being unpatentable over Venkata (US 2020/0097879) and Konuri (US 2022/0236957) and Sheppard (US 20220036390), as applied above to claims 1, 3, 6-8, 10, 13-15, 17, and 20, and further in view of Qian (CN112256964).
Concerning claims 5, 12, and 19, Venkata discloses grouping opportunities from data sources into multi-dimensional neighborhoods, that includes measures for “size of the deal, timing of the deal, similarity of activities in the deals, as well as a metrics to analyze the current opportunity (See par 37-38). Sheppard discloses having a “sum” and count of elements (See par 71) and having a sum that equals cardinality for Bloom filter arrays being 1, 2, or 3 (See par 88).
The computer-based method of claim 1, wherein performing the insight discovery by identifying the data point intersections within the generated weighted binary matrix representations further comprises:
generating a histogram by summing columns within the generated weighted binary matrix representations of the generated clusters (Qian – See page 8, last paragraph – obtain mass of enterprise data; Y represents the data set after
centralized using calculating the Mahalanobis distance; obtaining the distance between any two samples x, y. wherein x, y represent two different samples, sigma represents the variance calculated; sequencing the Mahalanobis distance in ascending order; supposing the obtained result is [a, b, c, ...], wherein a Mahali
distance after calculating the minimum distance; setting the threshold value of the sample to be removed by the formula threshold=a (m-ceil (m * 0.02)), wherein a is the minimum distance of the calculated Mahalanobis distance; see page 9 - Y represents the data after being centralized using the formula calculating the
covariance matrix E; histogram algorithm, firstly discretizing the continuous floating point characteristic value into k integer, at the same time, constructing a histogram of width k. when the data is traversed, according to the discretized value as index in the histogram accumulation statistic, when traversing the data, histogram accumulates the needed statistic, then according to the discrete value of the histogram, traversing finding the optimal segmentation point; … finding the optimal segmentation in the category feature of 1 k-dimensional; before enumerating the segmentation point, firstly ordering the histogram according to the average value of each category; … respectively searching the optimal dividing point on different characteristic sets of different machines; … recommending enterprise according to the level prediction of each enterprise).
Venkata, Konuri, Sheppard, and Qian are analogous art as they are directed to analyzing clusters/classification of data of opportunities/retail data (see Venkata Abstract; Konuri Abstract, par 15, 20; See Qian Abstract, page 3 – distance between samples of data). Venkata discloses grouping opportunities from data sources into multi-dimensional neighborhoods, that includes measures for “size of the deal, timing of the deal, similarity of activities in the deals, as well as a metrics to analyze the current opportunity (See par 37-38). Qian improves upon Venkata and Konuri by disclosing using distances between data sets, and a histogram accumulation statistics, to find optimal segmentations, to then aid in a recommendations for an enterprise (See pages 8-9). One of ordinary skill in the art would be motivated to further include analyzing histogram amounts from sets of data that have distance measures from each other to efficiently improve upon the classification of opportunities for sales in Venkata and the grouping in Konuri.
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 classifications of opportunities from sales from multi-dimensional space in Venkata, to further include using a binary matrix in the clustering/classification as disclosed in Konuri, and to further use histograms in making recommendations for enterprises as disclosed in Qian, 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.
Response to Arguments
Applicant's arguments filed 3/16/26 have been fully considered but they are not persuasive and/or are moot in view of the new rejections.
With regards to 101, Applicant argues the claims are not directed to an abstract idea because it is “applying an amount of data beyond what may be comprehensible by a single person” and is “utilizing ever-changing user input to formulate an updated suggestion.” Remarks, page 11. In response, Examiner respectfully disagrees. First, it is unclear how the claims even require something “beyond” a single person; the identified abstract idea was not “mental evaluation” anyways – it was “Certain Methods of Organizing Human Activity” and Mathematical relationships. See also MPEP 2106.05(a)(I) “Accelerating a process of analyzing audit log data when the increased speed comes solely from the capabilities of a general-purpose computer, FairWarning IP, LLC v. Iatric Sys., 839 F.3d 1089, 1095, 120 USPQ2d 1293, 1296 (Fed. Cir. 2016).” Second, having “changing” data alone does not make something eligible. Third, there are no “suggestions” in the claim. Moreover, the claim begins with “insight” and ends in “discovery” but the insights at this time cover business insights, e.g. [0015] as published states “For example, by considering a previous correlation insight between an exemplary KPI ‘X’ related to ‘Sales deals won during the current year’ and a second exemplary KPI ‘Y’ related to ‘Budget available during current year’ the user may want to understand if this KPI pair insight is dependent of another datapoint such as ‘Country’, ‘Market’, or ‘GEO’, etc.”
Applicant argues the claims are a practical application under Step 2A, Prong Two, that the claims here are a “particular/specific” solution similar to McRO. Remarks, page 12-13. In response, Examiner respectfully disagrees. In response, Examiner respectfully disagrees. First, eligibility based on 101 is not simply whether any “specific” limitations are recited in the claim – it needs to be a particular solution to “improve a computer or other technology.” Rather, McRo, as explained in MPEP 2106.05(a)(II)(“Improvements to Any Other Technology of Technical Field”), states “The McRO court also noted that the claims at issue described a specific way (use of particular rules to set morph weights and transitions through phonemes) to solve the problem of producing accurate and realistic lip synchronization and facial expressions in animated characters.” In contrast, here, the claim is not directed to improving some computing technology, but rather is using sets of mathematical operations as best understood in light of 112 rejections, to detect KPIs. Examiner had made suggestion in interview summary mailed 10/17/2025 regarding [0049-0050] as examples of connecting learning, ciphering, and deciphering, which Applicant can consider. As additional suggestion - see [0012] as published - discovery by identifying data point intersections within the generated weighted binary matrix representations. Therefore, the presently described embodiments have the capacity to improve insight discovery using combinatorial low-dimensional clustering by leveraging combinatorial cluster strategies in which clusters, rather than individual binary vectors, are assigned binary matrix representations. Thus, the identify of each data point KPI in presently described embodiments is ciphered within the clustering pattern rather than by its association with a particular binary vector sequence. Deciphering the pattern allows the trajectory of an original data point KPI to be inferred with high confidence. Consequently, this learning results in significant reduction in KPI insight discovery time (down to the scale of hours rather than weeks when compared to conventional correlation analysis tools) for new data points.) The current set of claims fail to even conduct any learning relative to the deciphering, on top of many 112 issues with different terminology and indefiniteness issues. Rather, in many limitations, it access “learning domains” in the alternative; and the one time it is required it is only accessing data “from various machine learning domains.”
With respect to step 2b, Applicant argues the claims here are eligible based on Bascom. Remarks, pages 13-14. In response, Examiner respectfully disagrees with the analysis. With regards to step 2B, only those additional elements (analyzed under 2B) that are deemed “conventional” need to comply with Berkheimer. When elements are just part of “apply it” [abstract idea] on a computer, under MPEP 2106.05(f); or “field of use” under MPEP 2106.05h, no evidence is needed. Moreover, parts of the claim do identify conventional computer functions in rejection above. Bascom is discussed in MPEP 2106.05 – “Adding a specific limitation other than what is well-understood, routine, conventional activity in the field, or adding unconventional steps that confine the claim to a particular useful application, e.g., a non-conventional and non-generic arrangement of various computer components for filtering Internet content, as discussed in BASCOM Global Internet v. AT&T Mobility LLC, 827 F.3d 1341.” There is no similar situation here, just by having “a computer” and “possible machine learning” and “accessing machine learning domain” as explained in the revised 101.
With regards to 103, Applicant argues “Venkata has nothing to do with improvement into insight discovery using combinatorial low-dimensional clustering.” Remarks, page 14-15. In response, Examiner respectfully disagrees. Limitations such as “combinatorial” do not appear to be in the claim and/or it is unclear which limitation is even being argued. Applicant’s further arguments about “opportunities” are also unrelated to claim limitations. Furthermore, none of the citations in Venkata are even argued, thus the arguments are not persuasive. No specific arguments are made against the other references either, so the arguments are not persuasive at this time. The arguments are also moot over the revised 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