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 .
Priority
This application claims the benefit under 35 U.S.C. § 120 as a continuation of application 17,708,985, filed March 30, 2022, which claims the benefit under 35 U.S.C. § 119(e) of provisional application 63/169,017, filed March 31, 2021.
Status of the Claims
Claims 1-14 are pending in the instant patent application.
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.
Regarding Claims 1-7, they are directed to a method, however the claims are rejected because they are directed to a judicial exception without significantly more. Claims 1-7 are directed to the abstract idea of forecasting supply chain demand of products of goods or services.
Performing the Step 2A Prong 1 analysis while referring specifically to independent Claim 1, claim 1 recites using data acquisition logic, retrieving a training data set comprising product demand data indicating consumer demand for millions of products at a plurality of time points; determining that at least a portion of the product demand data comprises consumption data that corresponds with the supply chain network and updating the product demand data for the products by imputing sales values based on the consumption data; clustering the training data set into a plurality of time series clusters; executing a classifier to output calculations of one or more break points in one or more of the time series clusters of the training data set, for the products represented in the updated product demand data based on evaluation of the product demand data, each of the break points corresponding to a disruptive event; determining, based on demand patterns of the product demand data, a baseline model of expected consumer demand for each of the products; determining, for a particular product of the products, a baseline forecast comprising a probability that the particular product will experience a disruptive event based on a deviation from the baseline model of the expected consumer demand, and calculating one or more of a mean demand level, a median demand level, or a standard deviation of demand level for selected periods of the training data set that are before and after one or more of the break points; identifying a deviation between the baseline forecast and a particular time series cluster among the plurality of time series clusters before and after one or more of the break points corresponding to one or more disruptive events, the deviation exceeding 1.5 * Inter Quartile Range (IQR), above and below 75th and 25th percentiles of the baseline forecast; in response to identifying the deviation between the baseline forecast and the particular time series cluster before and after the one or more of the break points, flagging the particular time series cluster as impacted by a disruptive event; processing configuration information that specifies third-party data for training one or more models and, in response thereto, accessing one or more of mobility tracking data specifying a percent change in visits to stores within a geographic area, a social distance index, school closures data, case count data, unemployment claims data, consumer sentiment data, hospital utilization data, as additional data source for which the one or more machine learning models may be trained; transforming one or more of the training data set and the third-party data to be used for training the one or more models into a format suitable for the one or more models by one or more of: resizing inputs to a particular fixed size, converting non-numeric data features into numeric feature ones, normalizing numeric data features, or lower-casing or tokenizing metadata text features; inputting one or more new time points respectively associated with products; and using the one or more models to generate a real-time demand forecast output for the products considering the disruptive event.
These claim limitations fall within the Certain Methods of Organizing Human Activity due to the fundamental economic principles/practices taking place as the limitations pertain to economy and commerce. In addition, the limitations fall within the Mental Processes grouping of abstract ideas for they are concepts that can be practically performed in the human mind and/or with pen/paper. Dependent Claims 4 and 6 also fall within the Mental Processes grouping of abstract ideas. Claims 3 and 7 fall within the Mathematical Concepts grouping of abstract ideas due to the mathematical relationships taking place. Claim 5 also falls with the Certain Methods of Organizing Human Activity due to the fundamental economic principles/practices taking place as the limitations pertain to economy and commerce.
Furthermore the recitation of one or more machine learning models and a supervised multi-class machine learning classifier does not take the claim out the abstract idea groupings noted.
Accordingly the claim recites abstract ideas and dependent claims 2-7 further recite the abstract idea.
Regarding Step 2A Prong 2 analysis, the judicial exception is not integrated into a practical application. In particular the claim recites the elements of a computing system, one or more other computing systems, supervised multi-class machine learning classifier, one or machine learning models and training the one or more machine learning models based on the training data set and the third-party data after the transforming. The computing system, one or more other computing systems, supervised multi-class machine learning classifier, one or machine learning models and training the one or more machine learning models based on the training data set and the third-party data after the transforming are merely generic computing devices and do not integrate the judicial exception into a practical application.
With respect to 2B, the claims do not include additional elements amounting to significantly more than the abstract idea. Claim 1 includes various elements that are not directed to the abstract idea under 2A. These elements include a computing system, one or more other computing systems, supervised multi-class machine learning classifier, one or machine learning models, training the one or more machine learning models based on the training data set and the third-party data after the transforming and the generic computing elements described in the Applicant's specification in at least Para 0030-0032. These elements do not amount to more than the abstract idea because it is a generic computer performing generic functions.
Therefore, Claim 1 is not drawn to eligible subject matter as it is directed to abstract ideas without significantly more.
Regarding Claims 8-14, they are directed to a non-transitory computer readable storage media, however the claims are rejected because they are directed to a judicial exception without significantly more. Claims 8-14 are directed to the abstract idea of forecasting supply chain demand of products of goods or services.
Performing the Step 2A Prong 1 analysis while referring specifically to independent Claim 8, claim 8 recites using data acquisition logic, retrieving a training data set comprising product demand data indicating consumer demand for millions of products at a plurality of time points; determining that at least a portion of the product demand data comprises consumption data that corresponds to one or more other computing systems associated with the supply chain network and updating the product demand data for the products by imputing sales values based on the consumption data; clustering the training data set into a plurality of time series clusters; executing a classifier to output calculations of one or more break points in one or more of the time series clusters of the training data set, for the products represented in the updated product demand data based on evaluation of the product demand data, each of the break points corresponding to a disruptive event; determining, based on demand patterns of the product demand data, a baseline model of expected consumer demand for each of the products; determining, for a particular product of the products, a baseline forecast comprising a probability that the particular product will experience a disruptive event based on a deviation from the baseline model of the expected consumer demand, and calculating one or more of a mean demand level, a median demand level, or a standard deviation of demand level for selected periods of the training data set that are before and after one or more of the break points; identifying a deviation between the baseline forecast and a particular time series cluster among the plurality of time series clusters before and after one or more of the break points corresponding to one or more disruptive events, the deviation exceeding 1.5 * Inter Quartile Range (IQR), above and below 75th and 25th percentiles of the baseline forecast; in response to identifying the deviation between the baseline forecast and the particular time series cluster before and after the one or more of the break points, flagging the particular time series cluster as impacted by a disruptive event; processing configuration information that specifies third-party data for training one or more models and, in response thereto, accessing one or more of mobility tracking data specifying a percent change in visits to stores within a geographic area, a social distance index, school closures data, case count data, unemployment claims data, consumer sentiment data, hospital utilization data, as additional data source for which the one or more models may be trained; transforming one or more of the training data set and the third-party data to be used for training the one or more models into a format suitable for the one or more models by one or more of: resizing inputs to a particular fixed size, converting non-numeric data features into numeric feature ones, normalizing numeric data features, or lower-casing or tokenizing metadata text features; inputting one or more new time points respectively associated with products; and using the one or more models to generate a real-time demand forecast output for the products considering the disruptive event.
These claim limitations fall within the Certain Methods of Organizing Human Activity due to the fundamental economic principles/practices taking place as the limitations pertain to economy and commerce. In addition, the limitations fall within the Mental Processes grouping of abstract ideas for they are concepts that can be practically performed in the human mind and/or with pen/paper. Dependent Claims 11 and 13 also fall within the Mental Processes grouping of abstract ideas. Claims 10 and 14 fall within the Mathematical Concepts grouping of abstract ideas due to the mathematical relationships taking place. Claim 12 also falls with the Certain Methods of Organizing Human Activity due to the fundamental economic principles/practices taking place as the limitations pertain to economy and commerce.
Furthermore the recitation of one or more machine learning models and a supervised multi-class machine learning classifier does not take the claim out the abstract idea groupings noted.
Accordingly the claim recites abstract ideas and dependent claims 9-14 further recite the abstract idea.
Regarding Step 2A Prong 2 analysis, the judicial exception is not integrated into a practical application. In particular the claim recites the elements of a computing system, one or more other computing systems, one or more processors, supervised multi-class machine learning classifier, one or machine learning models and training the one or more machine learning models based on the training data set and the third-party data after the transforming. The computing system, one or more other computing systems, one or more processors, supervised multi-class machine learning classifier, one or machine learning models and training the one or more machine learning models based on the training data set and the third-party data after the transforming are merely generic computing devices and do not integrate the judicial exception into a practical application. Claims 10-14 recite the elements of one or more processors which are merely being used as tools to carry out the abstract idea.
With respect to 2B, the claims do not include additional elements amounting to significantly more than the abstract idea. Claims 8 and 10-14 include various elements that are not directed to the abstract idea under 2A. These elements include a computing system, one or more other computing systems, one or more processors, supervised multi-class machine learning classifier, one or machine learning models, training the one or more machine learning models based on the training data set and the third-party data after the transforming and the generic computing elements described in the Applicant's specification in at least Para 0030-0032. These elements do not amount to more than the abstract idea because it is a generic computer performing generic functions.
Therefore, Claims 8 and 10-14, alone or in combination, are not drawn to eligible subject matter as they are directed to abstract ideas without significantly more.
Distinguishable Over the Prior Art
Examiner analyzed the claims view of the prior art on record and finds not all claim limitations are explicitly taught nor would one of ordinary skill in the art find it obvious to combine these references, or more, with a reasonable explanation of success as discussed below.
While Gorin (US 2004/0006447 A1) teaches of Outlier thresholds may be selected according to any suitable criteria or system, such as defined values, values specified by or derived from user-provided data, or according to a statistical algorithm. In the present embodiment, the upper and lower outlier thresholds may be calculated by multiplying a baseline factor, such as approximately 1.5 or other suitable value, by the inter-quartile range for the data associated with the test. The resulting value may be added to the upper quartile value and subtracted from the lower quartile value to generate the upper and lower outlier thresholds, respectively. Any appropriate rules, recipes, and/or procedures may be applied, however, to identify data to be filtered).
While Cavoue et al. (US 2014/0188748 A1) teaches of set of time values may then be processed as described above undergo a qualification process in order to determine whether or not estimate predictive time information that may be generated therefrom would be eligible for use, for instance in a service delivery process. Such processing may include determining whether or not the number of available time values exceeds a predetermined threshold, calculating a median value of a set of time values among the available time values, and/or calculating a median value quality factor, for example based on the standard deviation of the set of time values and the interquartile range of the set of time values. Such processing may include generating estimate time predictive information for servicing the package at the given geographical address, which may include, according to various embodiments, for example, determining a median value of the set of time values, determining a mean value (such as the algebraic mean, geometric mean, or harmonic mean) of the set of time values, determining the interquartile range of the set of time values, and/or determining the standard deviation of the set of time values. In embodiments corresponding to the exemplary qualification process described herein, generated estimate time predictive information may include the calculated median value.
While Oliveira et al. (US 2020/0074370 A1) teaches of As for outliers, an outlier is a data point with a lead time that can lie outside an overall pattern of a time series. As an example of identification of outliers, the interquartile range (IQR) may be used (other statistical methods may also be used to calculate outliers). In the IQR method, a data point is an outlier if it is, for example, more than 1.5 times the IQR above the third quartile (Q3); or if it is, for example, less than 1.5 times the IQR in the first quartile (Q1). This can be expressed mathematically: a data point (DP) is an outlier if. DP<Q1−1.5*IQR or DP>Q3+1.5*Q3 The IQR method, as defined above, includes the following steps: 1. Calculates the median, the quartiles, and the IQR. 2. Calculates 1.5*IQR below the first quartile to check for low outliers. 3. Calculates 1.5*IQR above the third quartile to check for high outliers. The calculations result in an upper and lower bound. Any records with lead times that are below the lower bound and above the upper bound are removed from the data set prior to input to the machine learning algorithms.
While de Abreu Pinho et al. (US 2021/0208995 A1) teaches of In anomaly detection via conventional time-series analysis, a prediction model of normality indicates the expected values of the target variables being monitored based on past data. The model defines a range of normality for the prediction and classifies samples as anomalous if they are outside the normal ranges… As an example, a simple method to define normality ranges for the combination of variables is to compute the centroid of all elements in a group and obtain the normal range of distances to the centroid. For example, FIG. 3 illustrates an example, non-limiting, boxplot of an intra-group distance-to-centroid distribution for a test case in accordance with one or more embodiments described herein. Specifically, FIG. 3 illustrates a model of normality 302 based on the distance to the centroid 304, which is indicated on the vertical axis. The example of FIG. 3 is for an anomalous test case. A normal range can be computed via an Inter-Quartile Range (IQR) of all distances computed for the group, as in FIG. 3.
Neither, alone or in combination with other prior art, teaches of identifying a deviation between the baseline forecast and a particular time series cluster among the plurality of the time series clusters before and after the one or more of the breakpoints corresponding to one or more disruptive events, the deviation exceeding 1.5 * Inter Quartile Range (IQR), above and below 75th and 25th percentiles of the baseline forecast.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to TYRONE E SINGLETARY whose telephone number is (571)272-1684. The examiner can normally be reached 9 - 5:30.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Beth Boswell can be reached at 571-272-6737. 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.
/T.E.S./Examiner, Art Unit 3625
/BETH V BOSWELL/Supervisory Patent Examiner, Art Unit 3625