Demand forecasting system and demand forecasting program
Patent Information
- Application Number
- JP2024054120
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2024-03-28
- Publication Date
- 2025-03-13
- Estimated Expiration
- 2044-03-28
AI Technical Summary
【0008】 本発明に係る需要予測システムは、季節性OTC医薬品等の季節性商品について、POSデータ(売上実績データ)を利用して、高精度の需要予測を行い、店舗別·商品別の推奨発注数を算出することができる。特に、本発明に係る需要予測システムは、マーケット予測値を算出する第1の所定の時系列予測アルゴリズムと、マーケットにおけるシェア予測値を算出予測する第2の所定の時系列予測アルゴリズムとを使用することにより、夫々の時系列の特性に適する予測を行うことができ、よって、需要予測の精度を向上させることができる。
Smart Images

Figure 0007645034000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to a demand forecasting system and a demand forecasting program, and more particularly to a demand forecasting system and a demand forecasting program for forecasting demand for seasonal products. [Background technology]
[0002] In retail stores that handle seasonal products such as seasonal OTC drugs, a reasonably accurate demand forecast is required to minimize lost sales opportunities due to in-store stockouts. On the other hand, if the product is a major product for a pharmaceutical manufacturer, reducing (improving) the overall amount of returns has a large profit impact, and it is said that accurate short-term or long-term demand forecasts are effective in reducing the overall amount of returns.
[0003] On the other hand, by using POS data from POS systems, it is now easy to collect data that maintains a time series on a weekly or daily basis over a long period of time (e.g., several years), such as sales performance data ("time series data"). Therefore, by analyzing time series data, it is possible to understand time trends such as trend changes from the past and periodicity.
[0004] The labeling device disclosed in Patent Document 1, which performs efficient labeling on time series data, extracts data using a time series algorithm selected by a user and then performs labeling. Examples of the selected time series algorithm include Prophet, ARIMA, Singular Spectrum Transformation, and Moving Average. Note that the labeling device disclosed in Patent Document 1 is not intended to refine predictions. [Prior art documents] [Patent documents]
[0005] [Patent Document 1] JP 2020-27540 A Summary of the Invention [Problem to be solved by the invention]
[0006] The present invention aims to construct a demand forecasting system that can perform highly accurate demand forecasts for seasonal products such as seasonal OTC drugs by utilizing actual sales data, and calculate recommended order quantities by store and SKU. [Means for solving the problem]
[0007] A demand forecasting system for forecasting demand for seasonal products according to the present invention comprises: The system includes a demand forecasting unit that receives actual sales data as input and outputs demand forecast data for the target SKU for each store, using a first predetermined time series forecasting algorithm that predicts market trends for a target seasonal product and a second predetermined time series forecasting algorithm that predicts share trends of the target SKU in the market for the target seasonal product, a current inventory estimation unit that receives actual sales data and store delivery / return data as inputs and outputs current inventory estimate data for the target SKU for each store, and a recommended order quantity calculation unit that receives actual sales data, demand forecast data for the target SKU for each store, and current inventory estimate data for the target SKU for each store as inputs, and outputs recommended order quantity data for the target SKU for each store. Effect of the Invention
[0008] The demand forecasting system according to the present invention can perform highly accurate demand forecasting for seasonal products such as seasonal OTC drugs by utilizing POS data (sales performance data) and can calculate recommended order quantities for each store and each product. In particular, the demand forecasting system according to the present invention can perform forecasting suited to the characteristics of each time series by using a first predetermined time series forecasting algorithm that calculates a market forecast value and a second predetermined time series forecasting algorithm that calculates a market share forecast value, thereby improving the accuracy of the demand forecasting. [Brief description of the drawings]
[0009] [Figure 1] FIG. 1 is a schematic system configuration diagram of a demand forecasting system according to an embodiment. [Diagram 2] FIG. 2 is a functional block diagram of a demand forecasting system according to an embodiment. [Diagram 3] FIG. 3 is a diagram illustrating a process flow in the demand forecasting unit of the demand forecasting system according to the embodiment. [Figure 4] FIG. 4 is a diagram showing a process flow in the current inventory estimation unit of the demand forecasting system according to the embodiment. [Diagram 5] FIG. 5 is a diagram illustrating a process flow in the recommended order quantity calculation unit of the demand forecasting system according to the embodiment. [Figure 6] FIG. 6 is a functional block diagram of an adjustment unit that calculates an evaluation index for a parameter specified for a specific time series forecasting algorithm used in a demand forecasting system according to an embodiment, and a diagram showing a processing flow in the adjustment unit. [Figure 7] FIG. 7 is a diagram showing an example of POS data (sales performance data) inputted into the demand forecasting system according to the embodiment. [Figure 8] FIG. 8 is a diagram illustrating an example of store delivery / return data input to the demand forecasting system according to the embodiment. [Figure 9] FIG. 9 is a diagram illustrating an example of demand forecast data output by the demand forecast system according to the embodiment. [Figure 10] FIG. 10 is a diagram illustrating an example of current inventory estimated value data output by the demand forecasting system according to the embodiment. [Figure 11] FIG. 11 is a diagram illustrating an example of recommended order quantity data output by the demand forecasting system according to the embodiment. [Figure 12] FIG. 12 is a diagram for explaining an algorithm by Prophet, which is a predetermined time-series forecasting algorithm used in the demand forecasting system according to the embodiment. [Figure 13]FIG. 13 is a diagram showing tuning of parameters specified for the Prophet algorithm using the hold-out method. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0010] Hereinafter, the embodiments will be described in detail with reference to the drawings as appropriate. However, more detailed explanation than necessary may be omitted. For example, detailed explanation of already well-known matters or duplicate explanation of substantially the same configuration may be omitted. This is to avoid the following explanation becoming unnecessarily redundant and to facilitate understanding by those skilled in the art.
[0011] It should be noted that the inventor provides the accompanying drawings and the following description so that those skilled in the art can fully understand the present disclosure, and they are not intended to limit the subject matter described in the claims.
[0012] 1. [Background to this disclosure] In retail stores that handle seasonal products such as seasonal OTC drugs, the first priority is to minimize lost sales opportunities due to stockouts. On the other hand, excessive shipments increase the cost of returns. For these reasons, there is a demand for a demand forecasting system that can perform precise demand forecasts with appropriately fine spatial and temporal granularity (for example, by store or by week).
[0013] On the other hand, with the advancement of data collection technologies using IoT devices, POS systems, etc., it is becoming easier to collect performance data that retains the time series characteristics that serve as the basis for accurate demand forecasting.
[0014] On the other hand, pharmaceutical manufacturers and other suppliers do not have real-time information on detailed inventory quantities for each individual seasonal OTC drug at a retail store. In that case, even if a demand forecast is required by store, week, and product, if the current inventory quantity at a specific time is not estimated, the supplier cannot provide each retail store with information on the specific recommended order quantity for each product.
[0015] The demand forecasting system disclosed herein solves the above problems, performs highly accurate demand forecasting for seasonal products using sales performance data, and calculates specific recommended order quantities for each store and product in a specific period. The demand forecasting system disclosed herein is composed of a demand forecasting unit, a current inventory estimating unit, and a recommended order quantity calculation unit.
[0016] In the demand forecasting system disclosed herein, for the sake of simplicity, it is assumed that one product code (JAN code) is assigned to one SKU (stock keeping unit), and one retail store code is assigned to one store.
[0017] 2. [Embodiment] Preferred embodiments of the present disclosure will now be described with reference to the accompanying drawings.
[0018] 2.1. [System configuration] The demand forecasting system and the demand forecasting program according to the embodiment are a demand forecasting system and a program for performing demand forecasting, estimating current inventory, and calculating recommended order quantities for seasonal products. Fig. 1 is a system configuration diagram of a demand forecasting system 2 according to the present embodiment.
[0019] In the embodiment of the present specification, a seasonal OTC drug, a general cold medicine, is taken as a seasonal product. The seasonal OTC drug is not limited to a general cold medicine, and may include, for example, a drug for treating hay fever.
[0020] Furthermore, the target seasonal product in this specification is a seasonal product that is a target of prediction by the demand forecasting system according to the embodiment. The target SKU is a specific SKU within the category of the target seasonal product, and is a target of prediction by the demand forecasting system according to the embodiment.
[0021] The demand forecasting system 2 has a computer device 4, a storage device 12, and a data server 14. The computer device 4 and the storage device 12 are connected by a wired or wireless communication line, and can transmit and receive data to and from each other. The demand forecasting system 2 is further connected to an external network 16. The external network 16 is a communication network that connects the computer device 4 and the data server 14.
[0022] The computer device 4 is a server machine, a workstation computer, a personal computer, or the like equipped with one or more processors.
[0023] The storage device 12 is a storage device provided outside the computer device 4, such as a disk drive or a flash memory, and stores various data sets and various computer programs used by the computer device 4. The storage device 12 records, for example, POS data (sales performance data) transmitted from a data server 14, store delivery / return data, demand forecast data output from the computer device 4, current inventory estimate data, and recommended order quantity data, all of which will be described later.
[0024] The data server 14 stores, for example, POS data (sales performance data) for the past few years across all retail stores, and store delivery and return data, and provides these data to the computer device 4. The POS data (sales performance data) and store delivery and return data will be described later.
[0025] The external network 16 is, for example, the Internet, and is connected to the computer device 4 via an interface device 6 such as a network terminal.
[0026] The computing device 4 further includes an interface device 6 , a processing circuit 8 , and a memory 10 .
[0027] The interface device 6 is an interface unit capable of acquiring data from the outside and outputting data to the outside. The interface device 6 includes, for example, a network terminal, a video input terminal, a USB terminal, a keyboard, a mouse, and the like. "External" means the outside of the computer device 4, and in this embodiment, for example, the storage device 12 or the external network 16. Various data are acquired from the outside via the interface device 6. The data are, for example, POS data (sales record data) and store delivery and return data. After being acquired from the external network 16, these data can be transmitted again via the external network 16 to the storage device 12 and recorded in the storage device 12. The data recorded in the storage device 12 can be appropriately acquired again into the computer device 4 via the interface device 6.
[0028] Furthermore, various data generated by the demand forecasting system 2 is appropriately recorded in the storage device 12. The various data are, for example, demand forecast data, current inventory estimate data, and recommended order quantity data. The various data generated by the demand forecasting system 2 and appropriately recorded in the storage device 12 can be acquired again into the computer device 4 via the interface device 6.
[0029] The processing circuit 8 is configured with a processor. The processor here includes a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), and a DSP. The various processes of the demand forecasting system 2 according to this embodiment are realized by the processing circuit 8 executing various programs. The various processes may be realized by an ASIC (Application Specific Integrated Circuit) or the like, or a combination of these.
[0030] The memory 10 is a rewritable storage unit within the computer device 4, and is configured, for example, by a RAM (Random Access Memory) including a large number of semiconductor memory elements. The memory 10 temporarily stores specific computer programs, variable values, parameter values, etc., when the processing circuit 8 executes various processes. The memory 10 may include a so-called ROM (Read Only Memory). The ROM stores in advance a computer program that realizes the processes of the demand forecasting system 2 described below. The processing circuit 8 reads out the computer program from the ROM and expands it in the RAM, thereby enabling the processing circuit 8 to execute the computer program.
[0031] In this embodiment, the above-mentioned computer program is created using a computer language such as Python, and constitutes a part of the demand forecasting system 2 according to this embodiment. Computer languages used to create computer programs that can be used to build the demand forecasting system 2 according to the present disclosure are not limited to these, and other computer languages may of course be used.
[0032] Furthermore, the demand forecasting system 2 according to the present embodiment uses a time series forecasting algorithm. Examples of time series forecasting algorithm models include ARIMA, LightGBM, and the like, but in this disclosure, Prophet is particularly used. Here, Prophet is a software library for time series forecasting developed by Meta (registered trademark), Inc.
[0033] 2.2.[System Operation] FIG. 2 is a functional block diagram of the demand forecasting system 2 according to the embodiment. The demand forecasting system 2 according to the embodiment includes functional blocks of the demand forecasting unit 22, the current inventory estimating unit 24, and the recommended order quantity calculation unit 26. A single or multiple computer programs that realize the processing of the demand forecasting unit 22, the current inventory estimating unit 24, and the recommended order quantity calculation unit 26 are stored in the memory 10 of the computer device 4 shown in FIG. 1. The processing circuit 8 reads the computer program from the ROM of the memory 10 and expands it in the RAM of the memory 10, so that the processing circuit 8 can execute the computer program. Therefore, the processing circuit 8 is composed of the functional blocks of the demand forecasting unit 22, the current inventory estimating unit 24, and the recommended order quantity calculation unit 26. A part of the computer program that realizes the processing of these functional blocks may be stored in the storage device 12 or another computer system.
[0034] The input data, POS data (sales record data) 42 and store delivery / return data 44, are stored in the data server 14 and the storage device 12. The output data, demand forecast data 52, current inventory estimate data 54, and recommended order quantity data 56, are recorded in the storage device 12.
[0035] The demand forecasting unit 22 of the demand forecasting system 2 receives, for example, POS data (sales performance data) 42 accumulated in the data server 14 as input data, and outputs demand forecast data 52. The current inventory estimation unit 24 receives, for example, POS data (sales performance data) 42 and store delivery / return data 44 accumulated in the data server 14 as input data, and outputs current inventory estimate data 54. The recommended order quantity calculation unit 26 receives the demand forecast data 52, the POS data (sales performance data) 42, and the current inventory estimate data 54, and outputs recommended order quantity data 56. Specific details of the respective processes of the demand forecasting unit 22, current inventory estimation unit 24, and recommended order quantity calculation unit 26 will be described later with reference to FIGS. 3 to 5.
[0036] As shown in Fig. 6, the demand forecasting system 2 according to the embodiment includes an adjustment unit 28 as a functional block, which calculates an evaluation index for parameters specified for a predetermined time series forecasting algorithm (algorithm by Prophet). A computer program for implementing the processing of the adjustment unit 28 is also stored in the memory 10, the storage device 12, and / or another computer system. The adjustment unit 28 calculates an evaluation index for parameters specified for a predetermined time series forecasting algorithm (algorithm by Prophet) used in the demand forecasting unit 22, leading to the generation of tuned hyperparameters. The processing of the adjustment unit 28 will be described later with reference to Fig. 7.
[0037] Meanwhile, POS data (sales performance data) 42, which is input data for the demand forecasting system 2, is a data file that stores daily sales quantities by store and SKU (stock keeping unit) as shown in Fig. 7. Similarly, store delivery / return data 44, which is input data for the demand forecasting system 2, is a data file that stores daily delivery quantities and / or return quantities by store and SKU as shown in Fig. 8.
[0038] The POS data (sales record data) 42 and the store delivery / return data 44 are data generated and supplied by an external system such as a POS system. The supplied POS data (sales record data) 42 and the store delivery / return data 44 are stored in the storage device 12 and / or the data server 14.
[0039] Returning to the functional block diagram of Figure 2, the demand forecasting unit 22 receives POS data (actual sales data) 42 as input and outputs demand forecast data 52 (see Figure 9) for the target SKU for each store, using a first predetermined time series forecasting algorithm that predicts market trends for the target seasonal product and a second predetermined time series forecasting algorithm that predicts share trends of the target SKU in the market for the target seasonal product.
[0040] As shown in FIG. 12, in this embodiment, an algorithm by Prophet is used as the above-mentioned (first or second) predetermined time series prediction algorithm. Prophet is a general additive model that automatically structures data. The predetermined time series prediction algorithm by Prophet reads time series performance data and decomposes the performance value (y(t)) into a trend component (g(t)), a seasonal component (s(t)), a holiday or other event effect component (h(t)), and other errors (residuals) (ε(t)). Furthermore, the predetermined time series prediction algorithm by Prophet derives future prediction data from the decomposed components (g(t), s(t), h(t), ε(t)). The predicted value y(t) at time t is expressed as follows:
number
[0041] Here, the trend component (g(t)) is expressed by one of the following two types of trend functions, “1” or “2”. 1. Linear Trend 2. Logistic nonlinear trend First, the default "linear trend" is expressed as follows:
number
number
[0042] The seasonal component (s(t)) represents the periodicity and is expressed as a general Fourier series, where P is the period.
number
[0043] Regarding the effect component of events such as holidays (h(t)), Prophet is designed to allow analysts to create an event calendar list and incorporate it into the model.
[0044] In this embodiment, as shown in the following formula, emphasis is placed on trends (market conditions) over several years and seasonality (periodicity), and only trend components and seasonal components are used.
number
[0045] Tuning of parameters specified by the Prophet algorithm will be described later (see Figures 6 and 13).
[0046] Next, the current inventory estimation unit 24 receives the POS data (sales performance data) 42 and the store delivery / return data 44 as input, and outputs current inventory estimate data 54 (see FIG. 10) for the target SKU for each store.
[0047] Next, the recommended order quantity calculation unit 26 receives as input the POS data (sales performance data) 42, demand forecast data 52 for the target SKU for each store, and current inventory estimate data 54 for the target SKU for each store, and outputs recommended order quantity data 56 (see Figure 11) for the target SKU for each store.
[0048] 2.2.1. [Operation of the Demand Forecasting Section] 3 is a diagram showing a processing flow in the demand forecasting unit 22 of the demand forecasting system 2 according to the embodiment. The demand forecasting unit 22 first aggregates POS data (sales performance data) 42 by store, SKU, and week (S02). The demand forecasting unit 22 selects (S04) and extracts (S06) data of a store to be forecasted from the POS data (sales performance data) aggregated by store, SKU, and week. The weekly data granularity may be daily or other.
[0049] Here, stores whose POS data (sales performance data) 42 during the performance period are free of gaps or insufficient granularity are selected as target stores (S04). Data (records) of the selected stores are extracted (S06). For example, stores that have at least one sales record of any product on more than half of the business days of each month from the start to the end of the performance period are selected as target stores.
[0050] Next, the POS data (sales performance data) extracted (S08) for the target seasonal product (e.g., general cold medicine) to which the target SKU belongs is aggregated by store and week (S12). In parallel, the POS data (sales performance data) extracted (S10) for the target SKU belonging to the target seasonal product is aggregated by store and week (S14). Furthermore, market share performance data for the target SKU for each store is calculated and output (S20) from the sales performance data for the target seasonal product for each store and the sales performance data for the target SKU for each store.
[0051] Next, from the actual sales data of the target seasonal product for each store, a first predetermined time series prediction algorithm, i.e., a first Prophet algorithm, is used to predict and output market forecast value data for the target seasonal product for each store (S22). At this time, predetermined appropriate hyperparameters are specified based on the tuned hyperparameters 46 (S16). In parallel, from the actual market share data of the target SKU for each store, a second predetermined time series prediction algorithm, i.e., a second Prophet algorithm, is used to predict and output market share forecast value data for the target SKU for each store (S24). At this time, predetermined appropriate hyperparameters are specified based on the tuned hyperparameters 46 (S18).
[0052] Here, the first predetermined time series prediction algorithm calculates a market forecast value from actual sales data for a target seasonal product for each store, and the second predetermined time series prediction algorithm calculates a market share forecast value from actual market share data for a target SKU for each store.
[0053] Next, the market forecast value data for the target seasonal product for each store is multiplied by the market share forecast value data for the target SKU for each store, and demand forecast data 52 for each store for the target SKU is calculated and output (S26).
[0054] FIG. 9 is a diagram showing an example of demand forecast data 52 output by the demand forecasting unit 22. The demand forecast data 52 is generated for each store (retailer code) by week and by target SKU (JAN code) over a forecast period. In the data example shown in FIG. 9, the "market forecast" for the "sales occurrence week" "2024 / 01 / 21" is "300", and the "share forecast" is "5%", so the "sales forecast" is "300" x "5%" = "15". Here, the forecast granularity on the time axis is "weekly", but may be another granularity, for example, "daily", etc.
[0055] As described above, the demand forecasting unit 22 (a1) a step of aggregating sales performance data for target seasonal products by store from sales performance data (S02, S04, S06, S08, S12); (a2) a step of aggregating sales performance data for a target SKU belonging to a target seasonal product by store from the sales performance data (S02, S04, S06, S10, S14); (a3) calculating and outputting market share performance data for the target SKU for each store from sales performance data for the target seasonal product for each store and sales performance data for the target SKU for each store (S20); (a4) predicting and outputting market forecast value data for the target seasonal product for each store from sales performance data for the target seasonal product for each store using a first predetermined time series prediction algorithm in which predetermined hyper parameters are specified (S16, S22); (a5) predicting and outputting market share forecast data for the target SKU for each store from market share performance data for the target SKU for each store using a second predetermined time series prediction algorithm in which predetermined hyper parameters are specified (S18, S24); (a6) A step (S26) of calculating and outputting demand forecast data for the target SKU for each store from market forecast value data for the target seasonal product for each store and market share forecast value data for the target SKU for each store; Do the following.
[0056] As described above, the demand forecasting unit 22 uses a first predetermined time series forecasting algorithm for calculating a market forecast value and a second predetermined time series forecasting algorithm for calculating and predicting a market share forecast value. The advantage of using two predetermined time series forecasting algorithms simultaneously in forecasting is the following "improvement of forecast accuracy."
[0057] -Improved prediction accuracy Sales of individual seasonal products (for example, a general cold medicine) are influenced by a mixture of two trend factors: (A) overall market trends, which represent fads and seasonality unrelated to the individual product, and (B) trends of increasing or decreasing consumer choice of the individual product. For example, the former (A) has a certain degree of seasonality, but the degree of prevalence varies from year to year. Therefore, for example, when forecasting the former (A), it is considered appropriate to calculate a mean-reversion forecast rather than predicting the trend from increases and decreases in past data. Also, for example, the latter (B) is less affected by seasonality, and it is considered appropriate to calculate a forecast on the assumption that once the share starts to trend upward or downward, that trend will continue. In this way, by dividing the market and share into components, it is possible to make predictions suited to the characteristics of each series.Furthermore, by finally multiplying the two predicted values, it is possible to obtain the effect of improving the accuracy of forecasting the sales of individual products.
[0058] 2.2.2. [Operation of the Current Stock Estimation Unit] Fig. 4 is a diagram showing a process flow in the current inventory estimation unit 24 of the demand forecasting system 2 according to the embodiment. Fig. 10 is a diagram showing an example of current inventory estimated value data output by the demand forecasting system 2 according to the embodiment.
[0059] The current inventory estimation unit 24 aggregates store delivery / return data 44 by store, SKU, and day (S32). In parallel, the current inventory estimation unit 24 aggregates POS data (sales performance data) 42 by store, SKU, and day (S34). The granularity of the daily data may be weekly or other.
[0060] Next, the current inventory estimation unit 24 integrates the aggregated sales performance data for the target SKU and the aggregated store delivery / return data for the target SKU by store and sorts them in chronological order (S36). FIG. 10(1) shows an example of the sales performance data and store delivery / return data for the target SKU integrated by store and sorted in chronological order. Data with "transaction type" = "sales" is sales performance data obtained from the POS data 42, and data with "transaction type" = "delivery" or "return" is data delivered to the store or returned from the store. All of the data are for the same store (retailer code = 123xxx) and the same SKU (JAN code = 0932xxxxxx). Note that data (records) with "transaction type" = "initial inventory" are newly provided. However, the quantity of initial inventory in this new data (records) is "- (undefined)".
[0061] Next, the current inventory estimation unit 24 temporarily sets the "initial inventory" to a predetermined value, for example, "0," and calculates the transition of the provisional inventory for the target SKU based on the actual sales data for the target SKU sorted in chronological order for each store and the store delivery and return data for the target SKU (S38). Figure 10(2) shows data obtained by temporarily setting the quantity of "initial inventory" in the data shown in Figure 10(1) to 0 and calculating the transition of the provisional inventory thereafter. The provisional inventory estimate changes from 0, -2, -5, -1, -2 in accordance with the change in the "quantity."
[0062] Next, the current inventory estimation unit 24 estimates the initial inventory for the target SKU based on the minimum value in the transition of the provisional inventory for the target SKU for each store (S40). In the data shown in FIG. 10(2), the minimum provisional inventory estimate is -5. Therefore, the "initial inventory" is at least "5", and the initial inventory is estimated to be "5".
[0063] The initial inventory may be, for example, a predetermined number (eg, 1) added to (or subtracted from) the absolute value of the minimum value of the provisional inventory estimate as described above.
[0064] Next, the current inventory estimation unit 24 calculates the inventory transition for the target SKU based on the initial inventory for the target SKU (for each store) estimated in S40 (S42). Figure 10(3) shows data obtained by setting the "initial inventory" quantity to "5" in the data shown in Figure 10(2) and calculating the inventory transition thereafter. The inventory estimate value changes from 5, 3, 0, 4, 3 in accordance with the fluctuation of the "quantity."
[0065] Next, the current inventory estimation unit 24 outputs the current inventory estimate data 54, for example, the data shown in FIG. 10(3) (S44). If the current time is "2022 / 03 / 14", the current inventory estimate value is "3".
[0066] As described above, the current inventory estimation unit 24 (b1) a step (S32) of aggregating store delivery / return data for a target SKU by store from the store delivery / return data; (b2) a step (S34) of aggregating sales performance data for the target SKU for each store from the sales performance data; (b3) A step (S36) of integrating the sales performance data for the target SKU and the store delivery / return data for the target SKU for each store and sorting them in chronological order; (b4) A step (S38) of temporarily setting the initial stock for the target SKU for each store to a predetermined value and calculating the transition of the provisional stock for the target SKU for each store from the actual sales data for the target SKU sorted in chronological order for each store and the store delivery / return data for the target SKU; (b5) estimating an initial inventory for the target SKU for each store based on a minimum value in a transition of a provisional inventory for the target SKU for each store (S40); (b6) calculating a change in inventory for the target SKU for each store based on the estimated initial inventory for the target SKU for each store (S42); (b7) outputting current inventory estimate data for the target SKU for each store (S44); Do the following.
[0067] 2.2.3. [Operation of the Recommended Order Quantity Calculator] Fig. 5 is a diagram showing a process flow in the recommended order quantity calculation unit 26 of the demand forecasting system 2 according to the embodiment. Fig. 11 is a diagram showing an example of recommended order quantity data 56 output by the recommended order quantity calculation unit 26.
[0068] The recommended order quantity calculation unit 26 calculates the remaining seasonal demand quantity for the target SKU for each store from the demand forecast data 52 for the target SKU for each store and the POS data (sales performance data) 42 (S52). Here, the demand forecast data 52 for the target SKU for each store is generated, for example, at a weekly granularity over the forecast period (i.e., the season). The sales forecast data in these demand forecast data 52 are summed up during the forecast period to calculate the "seasonal demand forecast value" in the recommended order quantity data 56 shown in FIG. 11. In the example shown in FIG. 11, the "seasonal demand forecast value"=12. Furthermore, from the POS data (sales performance data) 42 for the target SKU for each store, the quantity already consumed (i.e., already sold) for the target SKU at each store during the forecast period is obtained and calculated as "(amount already consumed)". In the example shown in FIG. 11, the "(amount already consumed)"=2. The remaining demand for the season (here, "10") can be calculated by subtracting "(amount already consumed)" from "seasonal demand forecast value".
[0069] Next, the recommended order quantity calculation unit 26 subtracts the remaining seasonal demand for the target SKU for each store from the current inventory estimate data 54 for the target SKU for each store to calculate the product shortage quantity for the target SKU for each store (S54). In the data example shown in FIG. 11, the "estimated inventory quantity" on the reference date (2022 / 03 / 14) is set to "3". This "estimated inventory quantity" is data from the current inventory estimate data 54 (see FIG. 10). The product shortage quantity (=-7) is obtained by subtracting the remaining seasonal demand quantity (=10) from the "estimated inventory quantity" (=3).
[0070] Next, the recommended order quantity calculation unit 26 outputs the recommended order quantity for the target SKU for each store based on the product shortage quantity for the target SKU for each store (S56). In the data example shown in FIG. 11, since the product shortage quantity is "-7", the "recommended order quantity" on the reference date (2022 / 03 / 14) is calculated and output as "7".
[0071] The recommended order quantity is not limited to the absolute value of the shortage quantity of the product, but may be, for example, the absolute value of the shortage quantity plus a predetermined number (e.g., 2) or a predetermined increase rate (e.g., 30%).
[0072] As described above, the recommended order quantity calculation unit 26 (c1) A step (S52) of calculating the remaining seasonal demand quantity for the target SKU for each store from the demand forecast data and the sales performance data for the target SKU for each store; (c2) A step (S54) of calculating the quantity of product shortages for the target SKU for each store by subtracting the remaining seasonal demand quantity for the target SKU for each store from the estimated current inventory data for the target SKU for each store; (c3) a step (S56) of outputting recommended order quantity data for the target SKU for each store based on the shortage quantity of the product for the target SKU for each store; Do the following.
[0073] 2.2.4. [Operation of the adjustment unit] FIG. 6 is a functional block diagram of the adjustment unit 28 that calculates evaluation indexes for specified parameters for the Prophet algorithm, which is a predetermined time-series forecasting algorithm used in the demand forecasting system 2 according to the embodiment, and a diagram showing the processing flow in the adjustment unit 28.
[0074] The adjustment unit 28 calculates evaluation indexes for specified parameters for a first predetermined time series prediction algorithm that predicts the market trend of the target seasonal product and a second predetermined time series prediction algorithm that predicts the share trend of the target SKU in the market of the target seasonal product.
[0075] When calculating evaluation indexes for parameters specified for a first predetermined time series prediction algorithm that predicts market trends of a target seasonal product, the adjustment unit 28 aggregates POS data (sales performance data) 42 to generate market sales performance data for the target seasonal product for each store (S82).
[0076] When calculating evaluation indexes for parameters specified for a second predetermined time series prediction algorithm that predicts the share change of a target SKU in the market for a target seasonal product, the adjustment unit 28 aggregates POS data (sales performance data) 42 to generate market share performance data for the target SKU for each store (S82).
[0077] Next, the adjustment unit 28 causes the Prophet algorithm to decompose and estimate the trend component (g(t)) and the seasonal component (s(t)) based on the market sales performance data for the target seasonal product for each store during the learning period, or the market share performance data for the target SKU for each store during the learning period, i.e., to perform learning. Furthermore, the adjustment unit 28 causes data prediction for the evaluation period to be performed using the decomposed trend component (g(t)) and seasonal component (s(t)) (learning and prediction: S84).
[0078] Here, the "learning period" is a part of the performance period in the market sales performance data or the market share performance data, and the "evaluation period" is a part of the performance period other than the "learning period". In the adjustment unit 28 of the demand forecasting system 2 according to this embodiment, learning and evaluation are performed, for example, by the hold-out method. FIG. 13 is a diagram showing the tuning period (learning period, evaluation period) by the hold-out method for parameters specified for the algorithm by Prophet. Although FIG. 13 shows one example of the tuning period (learning period, evaluation period), multiple tuning periods (learning period, evaluation period) can be set.
[0079] Furthermore, the adjustment unit 28 calculates an evaluation index indicating the deviation between the predicted data and the actual data in the evaluation period (S86). As the evaluation index, for example, the "Mean Absolute Percentage Error (MAPE)" expressed by the following formula can be adopted.
number
[0080] As an evaluation index, for example, a "season cumulative error rate (Total Diff Rate)" expressed by the following formula may be adopted.
number
[0081] Based on the evaluation of the calculated evaluation index, one or more appropriate parameters may be determined. The determined appropriate parameters are set as tuned hyperparameters 46. The tuned hyperparameters 46 are used in specifying the predetermined hyperparameters in the demand forecasting unit 22 (S16, S18).
[0082] The predetermined tuned hyperparameters 46 may of course be determined by other means or methods other than by the tuning unit 28.
[0083] 2.3. Summary of embodiments The demand forecasting system 2 according to the present embodiment includes a demand forecasting unit 22 that receives actual sales data as an input and outputs demand forecast data for each store, using a first predetermined time series forecasting algorithm that predicts a market trend of a target seasonal product and a second predetermined time series forecasting algorithm that predicts a share trend of a target SKU in the market of the target seasonal product. The demand forecasting system 2 further includes a current inventory estimating unit 24 that receives actual sales data and store delivery / return data for each store as input, and outputs current inventory estimate data for each store. The demand forecasting system 2 further includes a recommended order quantity calculation unit 26 that receives actual sales data, demand forecast data for each store, and current inventory estimate data for each store as input, and outputs recommended order quantity data for each store.
[0084] The demand forecasting system 2 according to the embodiment can perform highly accurate demand forecasting for seasonal products such as seasonal OTC drugs, and can further calculate specific recommended order quantities for each store and product in a specific period. In particular, the demand forecasting system 2 according to the embodiment can perform forecasting suited to the characteristics of each time series by using a first predetermined time series forecasting algorithm that calculates a market forecast value and a second predetermined time series forecasting algorithm that calculates and predicts a market share forecast value, thereby improving the accuracy of the demand forecasting.
[0085] 3. [Other embodiments] As described above, the embodiments have been described as examples of the technology disclosed in the present application. However, the technology in the present disclosure is not limited to these, and may be applied to embodiments in which modifications, substitutions, additions, omissions, etc. are made as appropriate.
[0086] In addition, the accompanying drawings and detailed description are provided to explain the embodiments. Therefore, among the components described in the accompanying drawings and detailed description, not only essential components for solving the problem but also components that are not essential for solving the problem in order to illustrate the above technology may be included. Therefore, the fact that the non-essential components are described in the accompanying drawings or detailed description should not be interpreted as immediately indicating that the non-essential components are essential.
[0087] Furthermore, since the above-described embodiments are intended to illustrate the technology in the present disclosure, various modifications, substitutions, additions, omissions, and the like can be made within the scope of the claims or their equivalents. [Explanation of symbols]
[0088] 2 ···Demand forecasting system, 4 ···Computer device, 6 ···Interface device, 8 ···Processing circuit, 10 ···Memory, 12 ···Storage device, 16 ···External network, 22 ···Demand forecasting unit, 24 ···Current inventory estimation unit, 26 ···Recommended order quantity calculation unit, 28 ···Adjustment unit, 42 ···POS data (sales performance data), 44 ···Store delivery / return data, 46 ···Tuned hyperparameters, 52 ···Demand forecast data, 54 ···Current inventory estimate data, 56 ···Recommended order quantity data.
Claims
1. A demand forecasting system for forecasting demand for seasonal products, a demand forecasting unit that receives actual sales data as an input and outputs demand forecast data for the target SKU for each store, using a first predetermined time series forecasting algorithm that forecasts a market trend for the target seasonal product and a second predetermined time series forecasting algorithm that forecasts a share trend of the target SKU in the market for the target seasonal product; a current inventory estimation unit that receives the sales performance data and the store delivery / return data as inputs and outputs current inventory estimation data for the target SKU for each store; a recommended order quantity calculation unit that receives as inputs demand forecast data for the target SKU for each store, the sales performance data, and current inventory estimate data for the target SKU for each store, and outputs recommended order quantity data for the target SKU for each store; Demand forecasting system.
2. The demand forecasting unit is aggregating sales performance data for target seasonal products for each store from the sales performance data; aggregating, from the sales performance data, sales performance data for target SKUs belonging to target seasonal products for each store; calculating and outputting market share performance data for the target SKU for each store based on sales performance data for the target seasonal product for each store and sales performance data for the target SKU for each store; A step of predicting and outputting market forecast value data for the target seasonal product for each store from actual sales data for the target seasonal product for each store using a first predetermined time series prediction algorithm in which predetermined hyper parameters are specified; a step of predicting and outputting market share forecast value data for the target SKU of each store from market share actual data for the target SKU of each store using a second predetermined time series prediction algorithm in which predetermined hyper parameters are specified; calculating and outputting demand forecast data for the target SKU for each store from market forecast value data for the target seasonal product for each store and market share forecast value data for the target SKU for each store; To carry out The demand forecasting system according to claim 1 .
3. The current inventory estimation unit is aggregating store delivery / return data for a target SKU for each store from the store delivery / return data; aggregating sales performance data for target SKUs for each store from the sales performance data; A step of integrating the sales performance data for the target SKU and the store delivery / return data for the target SKU for each store and sorting them in chronological order; A step of temporarily setting an initial inventory for a target SKU for each store to a predetermined value, and calculating a transition of provisional inventory for the target SKU for each store from actual sales data for the target SKU sorted in chronological order for each store and store delivery / return data for the target SKU; A step of estimating an initial inventory for the target SKU for each store based on a minimum value in a transition of a provisional inventory for the target SKU for each store; A step of calculating a change in inventory for the target SKU for each store based on the estimated initial inventory for the target SKU for each store; outputting current inventory estimate data for the target SKU for each store; To carry out The demand forecasting system according to claim 2.
4. The recommended order quantity calculation unit is A step of calculating the remaining demand quantity for the season for the target SKU for each store from the demand forecast data for the target SKU for each store and the sales performance data; A step of calculating a shortage quantity of the target SKU for each store by subtracting the remaining seasonal demand quantity for the target SKU for each store from the current inventory estimate data for the target SKU for each store; outputting recommended order quantity data for the target SKU for each store based on the number of products in short supply for the target SKU for each store; To carry out The demand forecasting system according to claim 3.
5. In the demand forecasting unit, the forecast granularity of the time axis is weekly, and the current inventory estimation unit processes data at a daily granularity. The demand forecasting system according to claim 4.
6. a demand forecasting step of receiving actual sales data as an input and outputting demand forecast data for the target SKU for each store, using a first predetermined time series forecasting algorithm for forecasting a market trend for the target seasonal product and a second predetermined time series forecasting algorithm for forecasting a share trend of the target SKU in the market for the target seasonal product; a current inventory estimation step of receiving the sales performance data and store delivery / return data as inputs and outputting current inventory estimation data for the target SKU for each store; and a recommended order quantity calculation step of receiving the sales performance data, the demand forecast data for the target SKU for each store, and the current inventory estimate data for the target SKU for each store as inputs, and outputting recommended order quantity data for the target SKU for each store; A demand forecasting program for forecasting demand for seasonal products, which causes a computer device to execute the above.
7. The demand forecasting step includes: aggregating sales performance data for target seasonal products for each store from the sales performance data; aggregating, from the sales performance data, sales performance data for target SKUs belonging to target seasonal products for each store; calculating and outputting market share performance data for the target SKU for each store based on sales performance data for the target seasonal product for each store and sales performance data for the target SKU for each store; a step of predicting and outputting market forecast value data for the target seasonal product for each store from actual sales data for the target seasonal product for each store using a first predetermined time series prediction algorithm in which predetermined hyper parameters are specified; a step of predicting and outputting market share forecast value data for the target SKU of each store from market share performance data for the target SKU of each store using a second predetermined time series prediction algorithm in which predetermined hyper parameters are specified; calculating and outputting demand forecast data for the target SKU for each store from market forecast value data for the target seasonal product for each store and market share forecast value data for the target SKU for each store; Including, The demand forecasting program according to claim 6.
8. The current inventory estimation step includes: aggregating store delivery / return data for a target SKU for each store from the store delivery / return data; aggregating sales performance data for target SKUs for each store from the sales performance data; a step of integrating the sales performance data for the target SKU and the store delivery / return data for the target SKU for each store and sorting them in chronological order; A step of temporarily setting an initial inventory for a target SKU for each store at a predetermined value, and calculating a transition of provisional inventory for the target SKU for each store from actual sales data for the target SKU sorted in chronological order for each store and store delivery / return data for the target SKU; estimating an initial inventory for the target SKU for each store based on a minimum value in a transition of a provisional inventory for the target SKU for each store; Calculating a change in inventory for the target SKU for each store based on the estimated initial inventory for the target SKU for each store; outputting current inventory estimate data for the target SKU for each store; The demand forecasting program according to claim 7 .
9. The recommended order quantity calculation step includes: A step of calculating a remaining demand quantity for the season for the target SKU for each store from demand forecast data for the target SKU for each store and the sales performance data; A step of calculating a shortage quantity of the target SKU for each store by subtracting the remaining seasonal demand quantity for the target SKU for each store from the current inventory estimate data for the target SKU for each store; outputting recommended order quantity data for the target SKU for each store based on the number of products in short supply for the target SKU for each store; Including, The demand forecasting program according to claim 8.
10. In the demand forecasting step, the forecast granularity of the time axis is weekly, and in the current inventory estimating step, data processing is performed at a daily granularity. The demand forecasting program according to claim 9.
Citation Information
Patent Citations
Ordering proposal system and method
JP2004334327A
Labeling device, labeling method and program
JP2020027540A
Demand prediction device, demand prediction method, and program
JP2021103374A
SKU number determination server, method, and program
WO2018056222A1