Method and system for assessing and planning business operations utilizing rule-based statistical modeling

The principles of the present invention include a system and method for assessing business activities. The method includes retrieving historical data associated with a business activity. At least one statistical model is generated based on the historical data. Knowledge is developed based on the statistical model(s). The knowledge is applied to at least one predetermined rule. Validity of the statistical model(s) is assessed based on the application of the knowledge using the predetermined rule(s). A valid statistical model is recommended to a user.

BACKGROUND OF THE PRESENT INVENTION

1. Field of the Invention

The present invention relates generally to business assessment tools, and more particularly, but not by way of limitation, to a method and system for assessing and planning business operations utilizing rule-based statistical modeling.

2. Description of the Related Art

Statistical analysis has long been used to analyze past events and predict future trends based on the past events. Statisticians often develop statistical models that are used in performing the statistical analysis. Developing and applying such statistical models is technically difficult, requires a great deal of understanding, and is often a trial and error process. Furthermore, interpretation of the results to determine validity of the statistical models requires significant conceptual analysis and expertise.

Statistical analysis may be utilized by businesses that are interested in improving their ability to assess their current fiscal state and predict future activities. For example, businesses that produce consumer goods are interested in determining production and inventory requirements to meet future market demands. Data representative of past events, such as sales, advertising efforts, pricing, etc., may be utilized by the statistician in developing the statistical models.

Since the development of computers, software tools have become a significant asset for statisticians in developing statistical models for businesses. However, these software tools are limited in functionality and intelligent features. Some software tools provide time-series analysis capabilities, but do not support regression analysis. High-end spreadsheet programs provide statistical analysis functions, such as regression and analysis of variance, but rely on an operator to (i) understand the statistical analysis functions, (ii) know how to apply the functions, and (iii) interpret results of the statistical analysis functions. For example, in the case of regression analysis, the operator needs to evaluate a resulting correlation coefficient, and determine whether the correlation coefficient indicates that a relationship between two parameters (e.g., sales and pricing) is strong enough to warrant use of a regression model in further analyses. In a case of performing analysis of variance, once a statistical tool has calculated the F-value for the analysis of variance (the quotient of the total sum of squares divided by the error sum of squares), the operator is required to compare the F-value to a corresponding value accessed from a table of statistics. This comparison provides an assessment of the significance of the variance and serves as the indication that the variance is either due to chance or some other factor that must be determined through further analysis.

From the above examples, it should be understood that statistical analysis is non-trivial. Initially, the statistician must first determine useful parameters or historical data for assessing and predicting a future trend. Secondly, the statistician must utilize multiple statistical tools and understand how to apply the statistical tools to develop a statistical model. Thirdly, the statistician must interpret results produced by the statistical tools to determine whether the developed statistical model is valid. Fourthly, if the statistical model is invalid, then the statistician must determine whether alternative statistical models can be utilized, where each of the alternative statistical models have different results that may have to be analyzed in different ways to determine if the alternative model(s) are valid. Because of the complexity involved in producing a valid statistical model, in general, only highly skilled statisticians are capable of performing such work.

SUMMARY OF THE INVENTION

To overcome the problems of requiring a highly skilled statistician to develop statistical models and determine their validity, an integrated statistical modeling package has been developed that uses rule-based analysis techniques to aid in determining validity of a selected analytical model. The rule-based integrated statistical modeling package may utilize correlation coefficients to assess the level of confidence in the generated model, and, based on rule evaluation, recommend whether the statistically generated mathematical model is valid for use in further analysis and/or prediction of business activities, for example. Because of the combination of the various statistical tools and predetermined rules, the system may be semi or fully automated. Furthermore, such an integrated package may allow the statistician to reduce analysis time and perform other, more creative tasks.

The principles of the present invention include a system and method for assessing business activities. The method includes retrieving historical data associated with a business activity. At least one statistical model is generated based on the historical data. Knowledge is developed based on the statistical model(s). The knowledge is applied to at least one predetermined rule. Validity of the statistical model(s) is assessed based on the application of the knowledge using the predetermined rule(s). A valid statistical model is recommended to a user.

Another embodiment includes a system for assessing data. The system includes a statistics component for performing statistical analysis on historical data. At least one statistical model component is coupled to the statistics component, said at least one statistical model component generating at least one statistical model. An analyst component is coupled to the statistics component, where the analyst component initiates the statistics component to perform the statistical analysis on the historical data. An inference engine is coupled to said analyst component, and a database includes at least one rule, the rule(s) being applied by said inference engine to assess validity of the statistical model(s).

DETAILED DESCRIPTION OF THE DRAWINGS

Planning is a fundamental business operation. Planning analysts, often statisticians, are tasked to develop credible analyses to assist planners in the development of strategic, operational, and tactical business plans. Planning provides businesses a roadmap that can be followed to attain competitive success. However, planning requires that the analyst have the ability to (i) identify significant events from the past that may have impacted the business, (ii) understand the nature of the impact of the events, (iii) translate that understanding into forecasts, and (iv) provide a confidence or certainty factor in those forecasts. Planning is also fraught with uncertainty and risk as a seemingly minor event from the past may have significant implications on future business, and an apparently significant event may prove to be of no importance whatsoever.

To assist the analyst in planning operations, an integrated statistical modeling package has been developed to provide an operator with well-defined, statistical modeling tools employing rule-based analysis methods. The integrated statistical modeling package is capable of automatically analyzing historical data, such as business data, and generating and recommending mathematical models that can be utilized by the operator to make predictions as to future business trends.

Predetermined rules are defined to assist in assessing and recommending valid statistical models. For example, a linear regression may be performed to determine if two different historical data elements or categories (e.g., advertising and sales) have a dependency relationship. If a dependency relationship is not substantiated through calculation and assessment of the correlation coefficient from the regression using the predetermined rules, a non-linear regression model may be generated to further determine whether a dependency or strength of the relationship in the historical data exists. If, based on the predefined rules, dependency is found, then an autocorrelation may be performed on the independent variable used in the regression model. This autocorrelation assessment may then be used in conjunction with approximately defined rules to determine if the values of the independent variable used in the regression are dependent on earlier values of the same variable or if the data are random, whereupon a random model may be applied.

Based on the predetermined rules, alternative models may be investigated to determine a statistical model offering the highest explanatory capabilities. If any of the statistical models are considered valid, then the modeling package recommends at least one statistical model. An assessment of the certainty that the model provides valid results for forecasting may be further provided by the modeling package. The operator may then utilize the valid model(s) to create forecasts of future business trends.

FIG. 1Ashows an integrated statistical modeling package100A that is rule-based. As shown, the integrated statistical modeling package100A includes software tools and data repositories or databases.

The software tools include an analyst component105, a statistics component110, a regression model component115, an autoregression model component120, an inference engine125, and a pattern matcher130. The software tools provide both statistical modeling and analysis for the integrated statistical modeling package100a.The software tools are preferably object-oriented coded, but may be coded using non-objected-oriented programming techniques.

A data bus135operates on the computing device (not shown) to provide the software tools access to the databases. Multiple databases may be utilized, a source database140and rules database145. The source databases140includes historical information or data of a business, for example. The rules database145includes predetermined rules used to process or analyze results from the statistical analysis performed by the software tools. Additionally, the rules database145may include additional knowledge, facts and assertions, that is generated by the software tools. Alternatively, the rules database may be formed of component databases, one or more for the rules and one or more database for the knowledge.

In operation, the analyst component105is used as a driver for the other software tools. In other words, the analyst component105coordinates the integrated statistical modeling package105by associating statistical modeling (e.g., statistics component110) with assessment tools (e.g., analyst component105). The analyst component105directs the statistics component110to provide knowledge from the historical data and then directs the inference engine125to utilize the knowledge.

The statistics component110generates facts and assertions. A fact is defined as something that is known, the fact cannot be proven false. An assertion is defined as something believed to be true, but can be proven false. The statistics component110interfaces with the regression model component115and the autoregression model component120to perform statistical analysis on the historical information stored in the source database140. Once the statistics component110has received statistical results and assessments from the regression model115and/or the auto regression model components120, and/or generated knowledge based on the statistical results, the statistics component110delivers the knowledge and/or statistical results to the analyst component105.

The regression model component115(i) populates regression parameters of the regression model(s) with data based on the historical information, (ii) calculates regression models, and (iii) generates knowledge in the form of an assertion. As an example of operation of the regression model component115, dependent variables parameters may be found to be linearly correlated to independent variables with a correlation of 0.85. If a rule defines a correlation greater than 0.75 to be strong enough to use the linear regression model for forecasting purposes, then the regression model generated by the regression model component115is considered valid. An assertion suggests that the independent and dependent variables are correlated and provide for a valid linear regression model. As understood in the art, regression determines the amount of influence independent variables have on dependent variables (e.g., sales and advertising), and autoregression determines the amount of impact preceding values have on succeeding values on a single variable (e.g., sales prediction).

The inference engine125utilizes rules and knowledge to assess or interpret validity of statistical models, including linear, non-linear, and random models. The inference engine receives the rules from the rules database145, receives knowledge from a knowledge database, and applies results from the statistics component110to the rules and knowledge. Based on results from the inference engine125, the analyst component105may recommend and publish the statistical model(s).

The pattern matcher130is a general purpose tool to create and apply patterns of information. The pattern matcher does not perform calculations, but rather selects a pattern and places or removes the pattern from the database. Further, the pattern matcher130can generate assertions that the inference engine125may use. For example, the pattern matcher130may create a pattern having certain characteristics to determine if the pattern is produced by an autoregression model. If the created pattern matches a pattern produced by the autoregression model, a new piece of knowledge may be created.

FIG. 1Bis an alternative embodiment of an integrated statistical modeling package100bof the integrated statistical modeling package100a.As shown, the software tools have been reconfigured such that the analyst component105includes the statistics component110, inference engine125, and pattern matcher130. The inference engine125further is represented as including knowledge145aand predetermined rules145b.The analyst component105is coupled to a model component150, where the model component150includes the regression model component115and the autoregression model component120. The source database135is coupled to the analyst component105. Although the software tools are configured differently from the software tools ofFIG. 1A, operation of the integrated statistical modeling package100bis substantially the same.

FIG. 2is an exemplary flow diagram200afor operation of the integrated statistical modeling package100a.The process starts at step202. At step204, historical data is received. The historical data may be any data representing past business events or efforts stored by a business. Statistical models are generated at step206. At step208, knowledge, such as facts or assertions, of the historical data may be developed based on the generated statistical models.

At step210, results of the statistical model(s) are assessed. At step212, valid statistical model(s) are recommended to a user of the integrated statistical modeling package100a.In addition to recommending the valid statistical models, a validity or certainty factor may be provided to the user. The certainty factor provides a measure as to how well a valid statistical model may predict future trends based upon the historical data. Finally, at step214, the process ends.

FIGS. 3A and 3Bpresent a more detailed flow diagram200bof the flow diagram200A (FIG. 2) of the operation for the integrated statistical modeling package100a.At step300, the process starts. At step204, historical data to be applied to regression analysis is retrieved. A regression model is built at step206. In a first pass through the process, a linear regression model is generated. Based on the generated linear regression model, knowledge is developed at step208, which is represented by a dashed line box surrounding steps302a,304, and310.

At step302a,the regression model is assessed. The assessment includes developing knowledge of regression in generating facts based on the regression results. To generate the facts, a correlation function may be utilized to determine the strength of the correlation between independent and dependent variables. For example, a fact which may state, “For the current regression model, a strong correlation between independent and dependent variables exists.” Alternatively, the fact may be numeric or Boolean. At step304, it is determined whether the linear regression is valid. If the linear regression model is valid, the knowledge is created at step310. Otherwise, if the linear regression model is not valid, the process of assessing a non-linear aggression model commences. The non-linear regression model is generated at step206, assessed at step302a,and knowledge is created therefrom at step310.

The non-linear regression model is similar to a linear regression model. However, the non-linear regression utilizes non-linear mathematical functions, such as logarithms. Specifically, a linear regression model may be represented as Y=mX+B; a non-linear regression model may be LOG(Y)=a−b(LOG(X)). It should be understood that the linear and non-linear regression models may be formulated using different equations or functions, but have similar functionality (i.e., performing linear and non-linear regression).

Step210fromFIG. 2is shown as a dashed box around steps312and314. At step312, knowledge developed by step208is applied to predetermined rules, which are used to objectively determine validity of the linear and/or non-linear statistical models. At step314, the validity of the statistical models are assessed. At step214, valid statistical model(s) are recommended, where the validity or certainty factor may be included with the recommendation of the statistical model(s). At step316, the process continues into a time-series statistical analysis, which was not included inFIG. 2.

At step318, a determination is made as to whether a time-series model needs to be generated based upon the validity of the regression analysis. If a time-series analysis does not need to be generated, then the valid statistical model (e.g., linear regression model) is published at step320. At step322, the process ends.

If it is determined at step318that no linear and non-linear regression models are valid, then an autoregression model is generated at step324. The autoregression modeling process is a secondary process for determining whether the historical information provides any possible insight or utility for predicting future trends using a time-series analysis. At step302b,the autoregression model is assessed. The assessment is rule-based and utilizes a coefficient from an autocorrelation of the autoregression model to determine the validity of the autoregression model. At step326, a determination is made as to whether the autoregression model is valid. In other words, if a time-series of the historical information can be shown to be something other than random, then the autoregression model may be valid.

The process continues at step328, where additional autoregression analysis is performed. The additional autoregression analysis may include generating additional models, performing other statistical modeling, or performing other assessments. At step330, knowledge of the autoregression is generated via an autocorrelation function, for example. At step332, a time-series model is recommended based on the knowledge as applied to the predetermined rules. At step334, a valid candidate model is selected, and the model is published at step320.

If at step326, a determination is made that a random model should be used to model the historical information, then a random-walk model is created and recommended at step336. At step334, the random-walk model is selected and published at step320. It should be noted that a random-walk model is computed as Yt=Yt−1+e. Similar to the linear and non-linear models, alternative random models may be employed to provide similar functionality.

A Box-Pierce Q statistic is used to test for significance of autocorrelation. The Box-Pierce Q statistic is computed as a weighted sum-of-squares of a sequence of autocorrelations. If the errors of the model are white noise, then the Box-Pierce Q statistic distributes approximately as a chi-square distribution with h-m degrees of freedom (where h is the value of the time component where autocorrelation has been tentatively identified and m is the number of parameters of the fitted model; for raw data, m is set to 0). In the case of the integrated statistical modeling package100a,the number of degrees of freedom coincide with the number of autocorrelations used to calculate the autocorrelation errors.

FIG. 4Ais a very simplistic overview of the process ofFIGS. 3A-3B. Although simplistic, this figure provides a good overview as to the nature of statistical operations of the integrated statistical modeling package100a.The process400astarts at step402. At step404, a linear regression is performed. At step406, a non linear regression is performed, and at step408, a time-series analysis is performed. The process ends at step410. It should be understood that ordering of the statistical operations may be varied, but that the linear, non-linear, and random ordering is more intuitive.

FIG. 4Bis a representative communication diagram of the components (e.g., analyst component105) of the integrated statistical modeling package100afor performing the linear regression modeling of step404(FIG. 4A). As shown, the elements communicating between one another include the analyst component105, the regression model component115, the statistics component110, and the autoregression model component120. A user412of the integrated statistical modeling package100ais shown as a dashed line.

At step204, historical data is retrieved by the analyst component105. The analyst component115directs the regression model component115to populate regression model parameters at step206a.Further at step206a,the regression model component115, in turn, directs the statistics component112to calculate average and standard deviation based on the regression model further at step206a.Additionally at step206a,the regression model component115directs the statistics component110to calculate the sum-of-squares.

At step302a,the regression model component115assesses the regression model by computing correlation and analyzing correlation coefficients. At step230, the regression model component115provides the analyst component105with knowledge (e.g., facts and/or assertions) of the linear regression model. The analyst component105applies the regression knowledge to the predetermined rules at step208and210. The results of the linear regression are reported to the user412by the analyst component105at step214.

The integrated statistical modeling package may automatically perform a non-linear regression analysis at step406(FIG. 4A) whether or not the linear regression analysis provides a valid linear regression model. Alternatively, the integrated statistical modeling package105may be semi-automated or fully manual to begin the process of determining the non-linear regression model of step406.

To perform the non-linear regression analysis of step406, the analyst component105directs the regression model component115to calculate a non-linear regression model at step232. The analyst component105further directs or commands the regression model component115to transform parameters (i.e., historical information) at step206a.Transformation may be achieved through the use of a logrithmic transformation. Further at step206a,the regression model component115directs the statistics component110to calculate the average and standard deviation using the non-linear regression model. Still further at step206a,the regression model component115directs the statistics component110to calculate the sum-of-squares for the non-linear regression model.

The regression model component115may assess the regression at step302aby utilizing correlation coefficients or some other results from the model. At step208and210, the non-linear regression results are reported from the regression model component115to the analyst component105, and the analyst component105communicates the results of the non-linear regression to the user412at step214.

FIG. 4Dshows communication between elements of the integrated statistical modeling package105for performing the time-series analysis of step408. The time-series analysis may be automatically, semi-automatically, or manually initiated by the user412.

At step318a,initiation of the time-series analysis is provided to the analyst component105. At step318b,determination to perform the time-series analysis is made by the analyst component105. If a time-series analysis is required, then the analyst component105directs the autoregression model component120to build an autoregression model at step324. The analyst component105additionally directs the statistics component110to perform the assessment of the autoregression at step302b.At324a,Y-values (i.e., dependent variables) are communicated from the statistics component110to the regression model component115. At step324b,the statistics component110is directed to further compute the Y-values. The statistics component110directs the autoregression model component120to set initial values for the autoregression at step324c,which may or may not be used in furtherance of performing the time-series analysis.

At step302b,the autoregression is assessed by applying the autocorrelation coefficients to the predetermined rules to determine the validity of the time-series model (e.g., autoregression model). The results of the autoregression are communicated from the statistics component110to the analyst component105at step320. Significance of the autocorrelation is assessed at step326by the analyst component, which may utilize the inference engine125to perform this assessment based on predetermined rules. At step336, the analyst component105recommends an autoregression model, if valid, and reports the validity of the autoregression model. If the validity of the auto regression model is not significant (i.e., weakly describes the historical data), then a random-walk model is to be generated.

If it is determined that there is periodicity in the historical data, the Box-Pierce Q statistic is used to determine if there is significance provided by the autocorrelation function. If no significance is found, then a random model is determined. The analyst component105provides first difference data of the historical data being analyzed to the statistics component110at step328a.The use of first difference data is to find an alternative trend, such as rate of change, in the historical data. The first difference is simply a remainder produced by subtracting a prior data point from a next data point in a time series. The statistics component110forwards the first difference data to the autoregression model component120at step328b.The results of the autoregression calculation at step328cis provided by the autoregression model component120to the statistics component110. The statistics component110assesses the autoregression model and the results of the autocorrelation of the first difference are communicated from the statistics component110to the analyst component105at step330.

The significance of the autocorrelation results are assessed by the analyst component105at step332by applying the correlation coefficients to the predetermined rules. At step334, if the model is valid, then the autocorrelation model is recommended to the user from the analyst component105. Additionally, the validity of the model may be reported to the user412.

Steps328a-334are repeated, except that rather than utilizing first difference data, second difference data is used to perform the autocorrelation model. The second difference data is simply a subtraction of successive data elements of the first difference data. By using the second difference data, alternate trends, such as direction of rate of change, in the historical data may be found by the autoregression and autocorrelation functions.

FIG. 5shows an exemplary network500that includes a computer system500for operating the integrated statistical modeling package100a.The computer system505may be a server or a personal computer. It should be understood that the computer system505may be a standalone system not connected and not part of a network500.

The computer system505includes a processor510coupled to a memory515and two databases, the source database140and the rules database145. The computer system may be connected to a local, wide area, or global network, such as the Internet520. Two businesses, business A and business B, may be further connected to the Internet520.

In operation, the processor510reads instructions from a floppy disk, hard disk, or optical disk, for example, that form the integrated statistical modeling package100a.The integrated statistical modeling package100amay be read into the memory515and executed by the processor510. The integrated statistical modeling package100amay read data stored in the databases140and145or, alternatively, read from remote database(s) from businesses A and B, for example, that include historical information. By being able to read from remote locations, an operator of the integrated statistical modeling package100amay operate as a service provider rather than simply an in-house analyst.

It should be understood that the integrated statistical modeling package100amay be a stand-alone system or treated as software tools as part of a larger software system. For example, a large business may utilize a system including an accounting package or other business assessment package for managers of the business to track and account for business operations. The integrated statistical modeling package100amay be included as a subset or part of the accounting software package used by the business managers. As such, the managers or other personnel, such as statisticians, may select an assessment or forecasting tool in the larger software package that initiates the integrated statistical modeling package100a.The integrated statistical modeling package100amay utilize the software tools and historical data stored by the larger software package and apply the statistical modeling and analysis as described herein.

The previous description is of a preferred embodiment for implementing the invention, and the scope of the invention should not necessarily be limited by this description. The scope of the present invention is instead defined by the following claims.