A business can rely on marketing information to plan its operations. Past performance can be determined from reported data in combination with an extrapolation of that performance to close any gaps in the data for periods not yet available for reporting—e.g., for the past month. For example, a manufacturing company with a global marketing department might be interested in global reporting on its product retail sales. The global reporting can be provided by data services that accumulate market research in databases.
The data, as provided, can be suitable for detailed local-market share analysis for the region(s) and/or country(ies) represented in that data. For local reporting different delivery schedules and time granularities are no issue because data can get reported simply when it is available in the system. But in a company with a global marketing department that is interested in global reporting, a cumulative world-wide report could need reports from several databases at once. Usually, the data services maintain information in their databases at one granularity of time intervals that are dependent on the industry reporting conventions of the local marketplace. Working across different databases comes with a number of challenges. For example, databases maintained by different providers (and of different regions) can have different data delivery cycles. Additionally, the data itself could represent different time granularities—e.g., weekly, four-weekly, monthly, bimonthly, etc. Different delivery cycles is a consequence of the databases having different time granularities—for example, a database with bi-monthly data can be provided only every two months (i.e., six times a year). However, a database containing weekly data could get theoretically provide the latest data every week. In practice, weekly data is provided twelve times a year on a 4-4-5 or 5-4-4 pattern to bundle the last four to five new weeks.
Using SAP Demand Signal Management (SAP DSiM), a manufacturer, or any user, can extrapolate data points that are not yet available to fill gaps in the reported data. Conventionally, the extrapolation of market research data to fill the reporting gaps could be based on weighting factors. To reflect seasonal deviations in product sales, a user can define weighting factors for the corresponding periods. Conventionally, one set of weighting factors can be assigned to one, or several, databases. By using one set of weighting factors for one database all products will get extrapolated with the same seasonal sales pattern that is described by the weighting factors. However within one database, different product categories could be provided where the products have completely different seasonal deviations in sales. Such compensation of inter-product seasonal deviations by the same weighting factors can introduce inaccurate or less precise values into the extrapolated data.
At a product level the result of this extrapolation method might be insufficient as the pattern of the weighting factors might not reflect the seasonal deviation of the product. If all products have the same extrapolation calculation, relative key parameters, such as market share, will not change for the extrapolated periods. To assign multiple sets of weighting factors to a database to handle individual seasonal deviations of each product results in an enormous volume of data weighting factors. This large volume of data is a cost driver increase to users. Additionally, the transparency of how the extrapolation is executed is further decreased by determining, calculating, and applying individual seasonal deviations for each product at each database.
In accordance with embodiments, systems and methods provide product-specific extrapolation that uses triple exponential smoothing implemented using a predictive analysis library component of a relational database management system. This product-level simple extrapolation for each product is achieved without any additional data maintenance, and free of the need for persistence of weighting factors.
Electronic communication network 120 can be, can comprise, or can be part of, a private internet protocol (IP) network, the Internet, an integrated services digital network (ISDN), frame relay connections, a modem connected to a phone line, a public switched telephone network (PSTN), a public or private data network, a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), a wireline or wireless network, a local, regional, or global communication network, an enterprise intranet, any combination of the preceding, and/or any other suitable communication means. It should be recognized that techniques and systems disclosed herein are not limited by the nature of network 120.
RDBMS 130 can include central control processor 132 running computer executable instructions. The executable instructions can be stored locally in memory 138, and/or accessible over electronic communication network 120 from an external memory unit. The central control processor may be a processing unit, a field programmable gate array, discrete analog circuitry, digital circuitry, an application specific integrated circuit, a digital signal processor, a reduced instruction set computer processor, etc. Memory 138 can include internal memory (e.g., volatile and/or non-volatile memory devices).
The components of RDBMS 130 are in communication with the central control processor over bus 133. These components can include data store 136, which contains data received from data providers 110, 112, 114, 116, 118. The RDBMS also can include extrapolation unit 140 and predictive analysis library 142. Extrapolation unit 140 can access the aggregated data from data store 136, and predictive algorithms from the predictive analysis library to perform extrapolation algorithms on market research data in accordance with embodiments.
Data gap arrows 220, 222, 224 each respectively represent the data gap that needs to be filled to the end of the first calendar quarter for Germany, U.S., and U.K. As noted above, the current solution to fill these data gaps is to extrapolate market research data based on weighting factors that are the same for each database, country, and product.
To reflect seasonal deviations in product sales customer can define weighting factors manually for the corresponding periods. These weighting factors can be independent of the year or can exceptional factors can be defined for single calendar years. The weighting factors are grouped in profiles and then assigned to the data delivery agreement between the end user of RDBMS 100 and the one or more data providers 105.
With continued reference to
SAP Demand Signal Management enables you to still execute a monthly global reporting across databases by offering an extrapolation function. Missing data records or databases of poor quality can be temporarily replaced by extrapolated values until the next delivery or a corrected delivery is available.
Although only three databases are discussed, there might be hundreds of databases available to the end user. Conventionally, weighting factors can be generated automatically for each market research database using, perhaps, the time series data of one product of the delivery as a reference. To adjust the weighting factors to the most current data, an end user can regenerate the weighting factors automatically each time an extrapolation is executed during data upload. The extrapolated values can be calculated based on Equation 1.
expol_j=gew_j*(sum(sales_hist)/sum(gew_hist)) (EQ. 1)
Where:
sum(sales_hist) is the sum of all historic sales;
sum(gew_hist) is the sum of all historic weighting factors;
j is the period to be extrapolated;
gew_j is the weighting factor of the period j; and
expol_j is the extrapolated value of period j.
By using one set of weighting factors for one database, all products will get extrapolated with the same seasonal sales pattern that is described by the weighting factors. However within one database different product categories could be provided where the products have completely different seasonal deviations in sales. This leads to a negative impact on the conventional methodology.
For example, at a product level the result of conventional extrapolation might be insufficient as the pattern of the weighting factors might not reflect the seasonal deviation of the product. If all products have the same extrapolation calculation, relative key figures (e.g., market share, etc.) will not change for the extrapolated periods.
Improving the extrapolation results this conventional methodology by assigning multiple sets of weighting factors to a database for each product's individual seasonal deviations is not a valid option, as such an approach results in a huge volume of weighting factors. Such a volume will increase the total cost of database ownership, resources, and database maintenance. Moreover, the increased complexity will decrease the transparency of how extrapolation is executed.
Process 400 begins with receiving, step 405, aggregated market research data from data providers. The aggregated data for each product is checked, step 410, to determine if the time series of the product is complete. If the time series is complete, a season/linear trend analysis for this time series is performed, step 415. This trend analysis decomposes the time series value into a season component, a trend component and an unexplainable remainder. The unexplainable remainder is then compared, step 420, to a predetermined threshold. In one implementation this predetermined threshold can be 50%. If the unexplainable remainder is less than the predetermined threshold, the time series is extrapolated, step 425, using an optimized triple exponential smoothing algorithm from predictive analysis library 142.
If at step 410, a determination is made that the time series is not complete, process 400 continues to step 430. Similarly, if the unexplainable remainder is at or above the predetermined threshold (step 420), process 400 also continues to step 430. The data for these products are extrapolated with an alternative algorithm.
Create, step 430, weighting factors during run time using one product as a reference representing the overall market (e.g., the top node of the product hierarchy). These weighting factors are not persisted, so database costs and resources are not impacted beyond their use in the extrapolation. These weighting factors are created using (1) the last value of the product provided by the market data provider; and (2) the average sales over a time period for the history of the product.
Products that are not complete or cannot get explained by seasonal trend analysis get extrapolated with the same algorithm using one set of weighting factors that are generated during run time. So weighting factors are not persisted. In addition, products that can get extrapolated using exponential triple smoothing are most likely the strong products covering a high percentage of the overall sales in the market. Incomplete and unexplainable products are mostly very weak products not contributing significantly to the market. Therefore an individual extrapolation for those products are not necessary and will not increase inaccuracy of extrapolation significantly. Missing time series data is extrapolated, step 435, using the weighting factors.
The extrapolated data generated at step 425 and commonly extrapolated data using runtime weighting factors of step 435, is now available, step 430, for market research.
Embodying systems and methods provide that each product can be extrapolated with its individual season trend pattern as long as the product fulfills the above mentioned conditions. This condition is usually true for the most important products provided into the marketplace. Therefore even relative key figures (e.g., market share, etc.) will show up changes on an aggregated level for the extrapolated periods if there are any.
In accordance with some embodiments, a computer program application stored in non-volatile memory or computer-readable medium (e.g., register memory, processor cache, RAM, ROM, hard drive, flash memory, CD ROM, magnetic media, etc.) may include code or executable instructions that when executed may instruct and/or cause a controller or processor to perform methods discussed herein such as a method for extrapolating market research data time series, as described above.
The computer-readable medium may be a non-transitory computer-readable media including all forms and types of memory and all computer-readable media except for a transitory, propagating signal. In one implementation, the non-volatile memory or computer-readable medium may be external memory.
Although specific hardware and methods have been described herein, note that any number of other configurations may be provided in accordance with embodiments of the invention. Thus, while there have been shown, described, and pointed out fundamental novel features of the invention, it will be understood that various omissions, substitutions, and changes in the form and details of the illustrated embodiments, and in their operation, may be made by those skilled in the art without departing from the spirit and scope of the invention. Substitutions of elements from one embodiment to another are also fully intended and contemplated. The invention is defined solely with regard to the claims appended hereto, and equivalents of the recitations therein.