A method and apparatus for determining safety stock

CN115375216BActive Publication Date: 2026-10-09HUAWEI TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202110559931.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-05-21
Publication Date
2026-10-09
Estimated Expiration
2041-05-21

AI Technical Summary

Technical Problem

[0003]目前,安全库存策略不考虑制造网络中众多节点之间的相互关系,将每个节点的需求关系视作相互独立的,计算所有节点的安全库存,而实际生产过程中,这种安全库存策略无法对整个生产链条的安全库存布局进行全局优化,就会导致安全库存的冗余或者短缺

Benefits of technology

[0031] It should be understood that the second to sixth aspects of this application correspond to the technical solutions of the first aspect of this application, and the beneficial effects achieved by each aspect and the corresponding feasible implementation are similar, and will not be repeated here.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115375216B_ABST
    Figure CN115375216B_ABST
Patent Text Reader

Abstract

The embodiment of the present application provides a kind of method and device for determining safety stock.The method comprises: according to the bill of materials of commodity, the plurality of nodes for manufacturing and / or assembling the commodity are determined, the commodity includes finished product or semi-finished product;Based on the service time of each node and the lead time of its upstream node, one or more critical nodes that need to plan safety stock and the safety stock amount of each critical node are determined;Wherein, the lead time of a node includes the service time of the node, the manufacturing lead time of the node and the supply lead time.Because the correlation of each node in bill of materials is considered comprehensively, the service time of each node and the lead time of its upstream node are combined to determine the node that needs to plan safety stock and the safety stock amount of each node, so that the safety stock layout of the entire production chain is optimized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of inventory management technology, and more specifically, to a method and apparatus for determining safety stock. Background Technology

[0002] Inventory management is a crucial part of the supply chain. Setting reasonable inventory levels can not only meet production needs but also reduce inventory costs.

[0003] Currently, safety stock strategies do not consider the interrelationships between numerous nodes in a manufacturing network. They treat the demand relationships of each node as independent and calculate the safety stock of all nodes. However, in actual production, this safety stock strategy cannot optimize the safety stock layout of the entire production chain globally, which leads to redundancy or shortage of safety stock.

[0004] Therefore, optimizing the safety stock layout across the entire production chain is an urgent problem that needs to be solved. Summary of the Invention

[0005] This application provides a method and apparatus for determining safety stock, which can determine safety stock based on the service time and lead time of nodes, thereby optimizing the safety stock layout of the entire production chain.

[0006] In a first aspect, this application provides a method for determining safety stock, the method comprising: identifying multiple nodes for manufacturing and / or assembling a commodity, the commodity including finished or semi-finished products, based on a bill of materials; identifying one or more critical nodes requiring planned safety stock, and the safety stock quantity for each critical node, based on the service time of each of the multiple nodes and the lead time of its upstream nodes; wherein the lead time of the upstream node includes the service time of the upstream node, the manufacturing lead time of the upstream node, and the supply lead time; the service time represents the response time to the demand of downstream nodes.

[0007] Based on the above technical solution, after identifying multiple nodes for manufacturing and / or assembling goods, the critical nodes requiring safety stock are determined according to the service time of each node and the lead time of its upstream nodes, along with the safety stock levels at these critical nodes. This process comprehensively considers the relevance of each node in the product supply chain, the relationships between upstream and downstream nodes, and the service time of each node, as well as the lead time of its upstream nodes, to determine the critical nodes requiring planned safety stock, and thus the safety stock levels at each critical node. Because it incorporates the relationships between upstream and downstream nodes, as well as factors such as service time and lead time, the determination of critical nodes and their safety stock covers the time frame of demand fluctuations, thereby optimizing the safety stock layout of the entire production chain.

[0008] In conjunction with the first aspect, in some possible implementations of the first aspect, based on the service time of each node in the multiple nodes and the lead time of its upstream nodes, one or more key nodes that require planned safety stock, and the safety stock quantity of each key node, are determined, including: calculating the total holding cost of the multiple nodes using the service time of each node in the multiple nodes and the lead time of its upstream nodes as variables; determining one or more key nodes that require planned safety stock, and the safety stock quantity of each key node, with the goal of minimizing the total holding cost of the multiple nodes; wherein nodes with safety stock quantities close to zero are not considered key nodes.

[0009] In the above process, the total holding cost of multiple nodes is calculated by taking the service time of each node and the lead time of its upstream nodes as variables. Then, with the goal of minimizing the total holding cost of multiple nodes, one or more key nodes that need to plan safety stock are determined, as well as the safety stock amount of each key node. The method of calculating the safety stock of key nodes is concretized, thereby optimizing the safety stock layout of the entire production chain.

[0010] In conjunction with the first aspect, in some possible implementations of the first aspect, the method further includes: predicting the changing trend of demand for the commodity in the future period based on historical sales data of the commodity; and determining the need to plan safety stock for the commodity based on the changing trend of demand for the commodity in the future period.

[0011] In the above process, based on historical sales data, the demand trend of the product in the future period is predicted. Based on the trend, it is determined whether to plan safety stock for the product. This can filter out some products that do not need safety stock, thus avoiding unnecessary safety stock and reducing the amount of calculation for subsequent safety stock planning steps, thereby improving efficiency.

[0012] In conjunction with the first aspect, in some possible implementations of the first aspect, predicting the changing trend of demand for goods in future periods based on historical sales data includes: predicting the statistical characteristics of demand for goods in multiple future time windows based on historical sales data, where the multiple time windows are time windows in the future period; and determining the changing trend of demand for goods in the future period based on the statistical characteristics of demand in the multiple time windows.

[0013] In the above process, based on the historical sales data of the product, the statistical characteristics of the demand for the product in multiple future time windows are predicted. Then, based on these statistical characteristics, the changing trend of the demand for the product in future periods is determined, thereby concretizing the changing trend of demand as the changing trend of the statistical characteristics of the demand.

[0014] Optionally, the above statistical characteristics include: expected value and standard deviation, whereby the expected value indicates the quantity demanded and the standard deviation indicates the volatility of the quantity demanded.

[0015] The expected value indicates the quantity demanded of a product, while the standard deviation indicates the volatility of that demand. A larger standard deviation indicates greater volatility, and a smaller standard deviation indicates less volatility. Therefore, by analyzing changes in these statistical characteristics, products that do not require safety stock can be identified, reducing the computational workload.

[0016] In conjunction with the first aspect, in some possible implementations of the first aspect, the statistical characteristics of the demand for goods in multiple future time windows are predicted based on the historical sales data of the goods, including: extracting the characteristics of the goods based on the historical sales data of the goods; constructing a statistical model based on the characteristics of the goods; and predicting the statistical characteristics of the demand for goods in multiple future time windows through the statistical model.

[0017] In the above process, based on the historical sales data of the product, the characteristics of the product can be extracted, and then based on the characteristics of the product, a corresponding statistical model can be constructed. This enables the constructed statistical model to more accurately predict the statistical characteristics of the demand for the product in multiple future time windows, thereby improving the fit between the prediction results and the actual results.

[0018] Optionally, the above features include one or more of the following: order sequence features, product attribute features, bill of materials features, event features, planning features, business experience features, and external factor features.

[0019] Based on one or more of the above features, a corresponding statistical model can be constructed to predict the statistical characteristics of demand. The above process provides multiple extractable features and considers multiple factors affecting demand, making it more comprehensive.

[0020] In conjunction with the first aspect, in some possible implementations of the first aspect, the method further includes: assessing the safety stock of each of the one or more critical nodes to determine the demand fulfillment rate of each critical node.

[0021] In the above process, the safety stock level of each key node can be evaluated through simulation to determine the demand fulfillment rate of each key node, thereby verifying the effectiveness of the safety stock plan.

[0022] In conjunction with the first aspect, in some possible implementations of the first aspect, the method further includes: adjusting the safety stock of key nodes that have not met expected indicators, wherein the key nodes that have not met expected indicators are nodes where the demand satisfaction rate has not reached the preset target demand satisfaction rate.

[0023] In the above process, the safety stock at key nodes that have not reached the expected targets can be adjusted to obtain the optimal safety stock plan, thereby optimizing the safety stock layout of the entire production chain.

[0024] Secondly, this application provides an apparatus for determining a safety stock, including modules or units for implementing the methods of the first aspect and any possible implementation thereof. It should be understood that each module or unit may implement its respective function by executing a computer program.

[0025] Thirdly, this application provides an apparatus for determining a safety stock, including a processor configured to perform the method for determining a safety stock as described in the first aspect and any possible implementation thereof.

[0026] The device may further include a memory for storing instructions and data. The memory is coupled to the processor, which, when executing the instructions stored in the memory, can implement the methods described in the foregoing aspects. The device may also include a communication interface for communicating with other devices; exemplary, the communication interface may be a transceiver, circuit, bus, module, or other type of communication interface.

[0027] Fourthly, this application provides a chip system including at least one processor for supporting the implementation of the functions involved in the first aspect and any possible implementation of the first aspect, such as receiving or processing data and / or information involved in the above methods.

[0028] In one possible design, the chip system also includes a memory for storing program instructions and data, which may be located within or outside the processor. The chip system can be composed of chips or may include chips and other discrete devices.

[0029] Fifthly, this application provides a computer-readable storage medium including a computer program that, when run on a computer, causes the computer to implement the methods of the first aspect and any possible implementation of the first aspect.

[0030] In a sixth aspect, this application provides a computer program product comprising: a computer program (also referred to as code or instructions) that, when executed, causes a computer to perform the methods of the first aspect and any possible implementation thereof.

[0031] It should be understood that the second to sixth aspects of this application correspond to the technical solutions of the first aspect of this application, and the beneficial effects achieved by each aspect and the corresponding feasible implementation are similar, and will not be repeated here. Attached Figure Description

[0032] Figure 1 This is a schematic diagram of the bill of materials network;

[0033] Figure 2 This is a schematic diagram of the supply chain architecture applicable to the method for determining safety stock provided in the embodiments of this application;

[0034] Figure 3 This is a schematic diagram of multiple modules used to perform the method for determining safety stock provided in the embodiments of this application;

[0035] Figure 4 This is a schematic flowchart illustrating the method for determining safety stock provided in the embodiments of this application;

[0036] Figure 5 This is a schematic diagram of the model used in the regression algorithm provided in the embodiments of this application;

[0037] Figure 6 This is a schematic block diagram of an apparatus for determining safety stock provided in an embodiment of this application. Detailed Implementation

[0038] The technical solutions in this application will now be described with reference to the accompanying drawings.

[0039] Before introducing the embodiments of this application, the terminology involved in this application will be briefly explained.

[0040] 1. Safety Stock: Also known as safety reserves or insurance stock, it refers to the amount of reserve stock planned to mitigate the impact of uncertainties. These uncertainties can include, for example, large sudden orders, unexpected delays in delivery, temporary increases in usage, or late deliveries. Safety stock is not used under normal circumstances; it is only used in cases of excessive inventory or delivery delays.

[0041] 2. Bill of Materials (BOM): This is a technical document that describes the composition of a company's products. For example, a BOM can show the structural relationships between the product's main assembly, sub-assemblies, components, parts, and even raw materials, as well as the required quantities.

[0042] The Bill of Materials (BOM) can be represented using a BOM network. Figure 1 This is a schematic diagram of a BOM network. Figure 1The diagram shows multiple black dots and straight lines connecting them. Each black dot can represent a part, component, assembly, or sub-assembly; for ease of description, they will all be referred to as nodes below. Nodes that are upstream or downstream of each other can be connected by lines. Multiple nodes connected by lines form a bundle of nodes, or a cluster of nodes. This bundle of nodes can correspond to a final product, such as A, B, and C marked in the diagram. It should be understood that the goods mentioned here can specifically refer to products sold by the company. These goods can be finished products, such as mobile phones and tablets; or semi-finished products, such as batteries and screens.

[0043] Depend on Figure 1 As can be seen, each product includes multiple nodes, meaning that the manufacture of each product requires a large number of specialized and general-purpose parts. For example, node a is a node in product A, indicating that node a is used to manufacture product A, such as a specialized part used to manufacture product A. Nodes b and d are nodes in products A, B, and C respectively, indicating that nodes b and d are used to manufacture products A, B, and C respectively, such as general-purpose parts. Node c can be used to manufacture or assemble nodes b and d, or it can be a general-purpose part.

[0044] Figure 1 In the BOM network shown, the connections between nodes represent the upstream and downstream relationships between them. For example, node c is an upstream node of nodes b and d; nodes b and d are downstream nodes of node c. It can be seen that each node may have one or more upstream nodes and / or one or more downstream nodes. Upstream nodes can be used to produce or assemble downstream nodes, and the generation and assembly of downstream nodes depend on the manufacturing cycle, supply cycle, and service time of the upstream nodes. Upstream nodes can also be called parent nodes, and downstream nodes can also be called child nodes. It should be understood that the upstream and downstream relationships between nodes can also be called hierarchical relationships.

[0045] In this BOM network, each node can be represented as a code, the connections between nodes can represent the upstream and downstream relationships between products, the edge lengths between nodes can represent lead times, and the characteristic information of nodes includes service time. It should be understood that the BOM network is used to describe the nodes in the BOM used to manufacture goods and the hierarchical relationships between them; therefore, it can also be called a manufacturing network.

[0046] 3. Decoupling Point: This refers to establishing a disconnect between material supply and usage. In other words, it involves establishing safety stock between upstream and downstream processes to ensure that supply fluctuations do not limit the productivity or utilization of the next process. In this embodiment, the inventory decoupling point can be called a critical node, which is the node where safety stock needs to be planned.

[0047] 4. Service time: In a bill of materials network, the service time of a node refers to the response time of that node to the demands of its downstream nodes.

[0048] 5. Lead Time: The lead time of a node can include the node's service time and the time required for downstream nodes to manufacture and transport goods to replenish the node. The manufacturing time is called the manufacturing lead time, and the transportation time is called the supply lead time. For example, if a node's service time is S, and the manufacturing and transportation time required for downstream nodes to replenish goods from the node is T, then the node's lead time is S+T. In other words, the lead time for downstream nodes to replenish goods from this node is S+T, meaning the replenishment lead time for downstream nodes is S+T.

[0049] It should be understood that the longer a node's service time, the longer the replenishment lead time for its downstream nodes, and the greater the risk that downstream nodes need to bear due to demand uncertainty. In other words, the longer a node's service time, the less safety stock it needs, and the more safety stock its downstream nodes need.

[0050] Currently, safety stock strategies do not consider the interrelationships between nodes in the BOM network; that is, each node is treated as an independent node, and the demand of each node is considered as independent demand. In practice, the future demand of each node is first predicted using a traditional demand forecasting model. Then, the safety stock for each node is calculated, for example, based on a normal distribution and a traditional safety stock calculation model. Finally, the safety stock strategy is updated periodically. For example, the safety stock strategy can be updated monthly, meaning the safety stock is calculated once a month.

[0051] However, the above-mentioned method for determining safety stock lacks flexibility and is difficult to adapt to complex scenarios such as multi-level inventory. For example, when a certain end product has multiple levels of nodes, it is difficult to meet the requirements by simply calculating the safety stock for each node.

[0052] Therefore, this application proposes a method for determining safety stock, which treats the BOM network of each product as a whole, uses the BOM network as the basis for decision-making, comprehensively considers the relationship between nodes at each level, and uses the service time, manufacturing lead time, and supply lead time of each node as decision variables to calculate the safety stock of each node in the overall production chain, thereby optimizing the safety stock layout in the entire production chain.

[0053] The method for determining safety stock provided in the embodiments of this application will now be described in detail with reference to the accompanying drawings.

[0054] To facilitate understanding of the embodiments of this application, firstly, in conjunction with Figure 2 A brief description is given of the supply chain architecture of the method applicable to the embodiments of this application. Figure 2 This is a schematic diagram of the supply chain architecture applicable to the method for determining safety stock provided in the embodiments of this application.

[0055] like Figure 2 As shown, this supply chain architecture includes a sales department, a master planning department, a production department, and a purchasing department. The sales department can generate sales forecasts for specific codes. The master planning department, based on sales forecasts and capacity factors, transforms the sales forecast for each code into a master planning demand forecast for all codes. The production department further considers various constraints such as materials, substitutes, and priorities, and optimizes future production plans, outputting a purchasing plan for the future period to the purchasing department based on the plan. The master planning department can also calculate the safety stock for each code based on the future sales forecast, thereby optimizing safety stock levels. The master planning department can provide the production department with the safety stock level for each code as a reference level. The production department can compare this safety stock reference level with the production plan to ensure that the ending inventory of each future period reaches the safety stock reference level.

[0056] It should be understood that the safety stock optimization described above can be achieved by performing the method for determining safety stock provided in the embodiments of this application. Figure 3 Exemplary examples illustrate multiple modules for performing the method for determining safety stock provided in embodiments of this application. These multiple modules may be deployed, for example, in a computing device to implement different functions. The multiple modules may be integrated in the same computing device or distributed across multiple computing devices. The computing device may, for example, be a server. This application does not limit this. For ease of explanation, the apparatus for performing the method for determining safety stock provided in embodiments of this application will be referred to below as an apparatus for determining safety stock.

[0057] like Figure 3 As shown, the computing device includes: a demand forecasting module, an inventory strategy module, an inventory planning module, an inventory simulation module, and an inventory optimization module.

[0058] The demand forecasting module is used to predict the statistical characteristics of the demand for various commodities. These statistical characteristics may include a weighted average, an upper bound, and a standard deviation. The weighted average can also be considered the expected value of the demand over a future period. For example, if the probability of a commodity's demand being 'a' is m%, the probability of demand being 'b' is n%, the probability of demand being 'c' is p%, and the probability of demand being 'd' is q%, then the expected value of the commodity's demand over the next month is w = a × m% + b × n% + c × p% + d × q%. The maximum value among the demand quantities a, b, c, and d can be used as the upper bound of the commodity's demand over the next month. The standard deviation can be determined by dividing the demand quantities a, b, c, and d by the average value, and the specific calculation formula for standard deviation can be found in existing technologies, which will not be detailed here.

[0059] The inventory strategy module can preprocess the necessary nodes for each product by combining product characteristics, inventory characteristics, supply characteristics, and business requirements. For example, it can filter certain nodes or classify nodes. Product characteristics include demand, manufacturing cycle, raw material supply cycle, perishability, and expiration rate. Inventory characteristics can include inventory volatility; for example, if historical data shows a node is prone to redundancy, less safety stock can be maintained. Business requirements may include, but are not limited to, reducing safety stock for high-value, high-volatility nodes and increasing safety stock for low-value, low-volatility nodes, etc.

[0060] The inventory planning module can determine key nodes and their safety stock based on the service time of each node, combined with inventory parameters, cost parameters, generation constraints, inventory constraints, and target service levels. Cost parameters describe the value of goods at each node. Inventory parameters refer to the amount of safety stock to maintain under normal circumstances. For example, a week's worth of usage can be considered safety stock. It should be understood that cost and inventory parameters can be obtained based on historical data. The target service level describes the probability of covering actual demand. For example, if the expected future demand is w, the upper bound of demand is w1, and the target service level is k%, then the probability that the actual demand is less than w1 is greater than or equal to k%.

[0061] The inventory simulation module can evaluate the safety stock at each key node output by the inventory planning module, taking into account business objectives and constraints. The inventory optimization module can evaluate the simulation results to determine whether the expected targets have been met. If the expected targets have not been met, the safety stock at the key nodes output by the inventory planning module can be further optimized.

[0062] The aforementioned safety stock optimization module includes, but is not limited to, the following application scenarios. The following is a detailed introduction to several application scenarios of the safety stock optimization module.

[0063] Scenario 1: Taking into account outbound forecasts.

[0064] Decomposing the data downwards from higher-level nodes amplifies the error, and because lead time is not a fixed period, the upper bound of the safety stock for raw materials has a significant deviation. To minimize the overall error of the safety stock strategy, an upper bound can be set for the demand at each node; safety stock can then be maintained as long as the demand does not exceed this upper bound.

[0065] Scenario 2: Considering cost and volatility.

[0066] In our operations, we have experience and a habit of setting safety stock based on historical outbound volumes. To control costs, we can set different upper limits based on material costs and volatility. In other words, we can manually set the upper limit of safety stock for each node. For example, for nodes with high material costs and high volatility, we can build less safety stock and set the upper limit of safety stock lower. For nodes with low material costs and low volatility, we can build more safety stock and set the upper limit of safety stock higher.

[0067] Scenario 3: Consider a coding service level agreement (SLA).

[0068] Raw materials and intermediate components need to meet both their own external order requirements and the requirements of their parent components. However, SLA commitments are only valid for external orders. Directly adding a constraint of S≤SLA to such items might result in an excessively short promised service time for the parent component. It should be understood that an SLA commitment only valid for external orders means that for finished products, there is a customer-facing SLA commitment, while for intermediate components, there is no SLA commitment.

[0069] If a code can be sold directly as an external order or used as middleware to manufacture other finished products, a virtual node can be set up to represent the demand as an external order. An SLA commitment can be added to the virtual node, transferring the forecast of demand for external orders to the virtual node. The virtual node has the same volatility as the original node. It should be understood that this SLA commitment can serve as a constraint when calculating safety stock.

[0070] Scenario 4: Consider the coding delivery time.

[0071] Consider the manufacturing lead time and supply lead time for all nodes. For nodes with short lead times and long committed service times, it is preferable not to set safety stock, while nodes with long lead times and short committed service times are preferable to have higher safety stock levels.

[0072] It should be understood that Figure 3 The specific functions of each module will be explained in the following text. Figure 4 The method embodiments are described in detail, but for the sake of brevity, they will not be described in detail here.

[0073] The following will combine Figure 4 This application provides a detailed description of the method for determining safety stock based on its embodiments. Figure 4 The illustrated embodiments are as follows: Figure 3 The steps are described using the various modules shown as examples. However, this should not be construed as limiting the embodiments of this application. Figure 3 The modules shown are simply divisions based on different functions. These modules may or may not be physically separate.

[0074] Figure 4 A schematic flowchart illustrating a method 400 for determining safety stock provided in an embodiment of this application. Figure 4 As shown, the method 400 may include steps 410 to 460.

[0075] In step 410, the demand forecasting module predicts the statistical characteristics of the demand for a product in multiple future time windows based on historical sales data of various products.

[0076] Specifically, the forecasting of demand for goods can be achieved using regression algorithms. For example, by extracting the characteristics of each product from historical sales data, summarizing the patterns, and then using a regression algorithm to model a predictive model, the predictive model can be used to forecast the demand for the product at any future time period. Historical sales data may include historical order data, historical outbound data, etc., and this application embodiment includes, but is not limited to, these.

[0077] In this embodiment of the application, features of various products in multiple dimensions can be extracted based on historical sales data, such as including but not limited to the following dimensions:

[0078] I. Order Time Series Characteristics. Order time series characteristics refer to features extracted from historical demand sequences. These sequences can be derived from historical sales data of a product arranged chronologically. Historical demand sequences can be classified according to different characteristics. For example, based on feature type, they can be categorized into lag characteristics, time characteristics, and rolling window characteristics. Lag characteristics indicate a lag between the sales time and the ordering time. For example, if a product is expected to be sold during the Spring Festival, it needs to be ordered in advance. Time characteristics can include features described by the absolute and relative positions of quarters, months, and weeks. Rolling window characteristics are similar to lag characteristics, considering the time difference between ordering and delivery. Sales occur after delivery, meaning there is a cycle between ordering and sales. For example, a cycle of one month: if a product is ordered in March, it will be sold in April; if ordered in April, it will be sold in May. Furthermore, based on the source of the features, they can be divided into product-specific time series characteristics and related product time series characteristics. Both product-specific and related product time series characteristics can include the aforementioned lag characteristics, time characteristics, and rolling window characteristics.

[0079] II. Product Attribute Features. Product attribute features can be obtained from the product's inherent attributes. For example, product attribute features may include lifecycle status, material cost, initial inventory, product family, and product description. Here, product family refers to the type of product; for example, a product family could be food, household goods, etc. The product description can be extracted using natural language processing (NLP) to describe the product. It should be understood that the above features are only a few examples of product attribute features provided in the embodiments of this application. Product attribute features may also include other features obtained from the product's inherent attributes, and this application includes, but is not limited to, these.

[0080] III. BOM Features. BOM features refer to the information about a product within the BOM network. For example, it can include the hierarchical relationships between nodes, that is, the upstream and downstream relationships between nodes. BOM features can also include the structural features of the hierarchy in which each node is located, that is, the structural features of the nodes included in the product in the BOM network. For example, producing a certain product requires nodes b and c, generating node b requires node d, and the structure of its downstream nodes.

[0081] IV. Event Characteristics. Event characteristics refer to the features identified and summarized from the separation and analysis of recurring events in history.

[0082] V. Planning Characteristics. Planning characteristics can refer to features extracted from sales plans and procurement plans.

[0083] VI. Business Experience Characteristics. Business experience characteristics can refer to rule-based characteristics formed by transforming business experience related to demand.

[0084] VII. External Factor Characteristics. External factor characteristics refer to features extracted from external factors. For example, features extracted based on weather. It should be understood that whether or not external factor characteristics need to be extracted depends on the specific circumstances.

[0085] As can be seen from the features listed above, the features extracted from various commodities in this embodiment have high dimensionality, which can be reduced using feature selection algorithms. On the other hand, to reduce the risk of overfitting in the prediction model, clustering algorithms can be used to group the commodities. Prediction models for the same group of commodities can use the same analytical expression. Specifically, clustering algorithms can be used to centrally group the features of these commodities, preventing them from being too dispersed, thus facilitating the identification of typical features. Commodities with similar features are grouped together, and features from the same group can serve as shared training samples, thereby reducing the risk of overfitting in the prediction model and preventing the loss of patterns.

[0086] As an example and not a limitation, the models used in regression algorithms can include time series models, machine learning models, and deep learning models.

[0087] Figure 5 This is a schematic diagram of the model used in the regression algorithm provided in the embodiments of this application.

[0088] like Figure 5 As shown, time series models can include, but are not limited to, the following types: triple exponential smoothing (e.g., Holt-Winters), autoregressive integrated moving average (ARIMA), and exponential smoothing.

[0089] Machine learning models can include, but are not limited to, the following types: gradient boosting decision tree, extreme gradient boost (XGboost), random forest, and support vector machine (SVM).

[0090] Deep learning models can include, but are not limited to, the following types: recursive neural networks (RNN), gated recurrent units (GRU), generative adversarial networks (GAN), and long short-term memory networks (LSTM).

[0091] It should be understood that predicting the demand for a commodity in a future period using regression algorithms can be performed using any of the models mentioned above, or a weighted model combining multiple models can be used. This application's embodiments do not limit this approach.

[0092] Using random forest as an example, we will briefly explain how to solve for the demand of a commodity in the future.

[0093] The Random Forest algorithm is a parallel decision tree algorithm that constructs m trees and then averages the m results to obtain the final predicted value. The prediction formula is: Final predicted value = (Predicted value of the first tree + Predicted value of the second tree + ... + Predicted value of the mth tree) / m. For example, if the first tree predicts 100, the second tree predicts 80, and the third tree predicts 60, the final predicted value = (100 + 80 + 60) / 3 = 80.

[0094] It should be understood that explanations of random forests and other various models can be found in existing technologies. For the sake of brevity, they will not be elaborated upon here.

[0095] After establishing the predictive model, historical order data and historical outbound data for each product can be input into the model. The predictive model can then output statistical characteristics of the future demand for each product. These statistical characteristics may include the weighted average, upper bound, and standard deviation. Explanations regarding these statistical characteristics have been detailed above and will not be repeated here for brevity.

[0096] Based on the methods described above, the predictive model can predict the statistical characteristics of demand for each commodity within multiple future time windows. For example, it can predict the statistical characteristics of demand for each commodity within N time windows (N > 1 and is an integer). These multiple time windows can be consecutive, or they can be multiple time windows divided in chronological order. For example, using months as a unit, these multiple time windows can be multiple consecutive months, such as January, February, March, April, etc.; they can also be multiple non-consecutive months, such as January, March, May, July, etc.; or they can be sliding time windows, such as January 1st to January 31st, January 16th to February 15th, February 1st to February 28th, February 16th to March 15th, March 1st to March 31st, and so on. For simplicity, they will not be listed individually here. Since these multiple time windows are arranged in chronological order, they can also be called a time window sequence.

[0097] It should be understood that these multiple time windows can be multiple time windows within a preset future period. This preset period can be used to observe the changing trends in demand for various commodities.

[0098] In step 420, based on the statistical characteristics of the demand for each commodity in multiple time windows, the commodities that require planned safety stock are determined.

[0099] Based on the statistical characteristics of demand for each commodity across multiple time windows, the demand trend for each commodity in future periods can be obtained. Based on the demand trend for each commodity in these future periods, it can be determined whether a safety stock plan is needed for that commodity.

[0100] For example, based on forecasts of demand for each commodity across multiple time windows, the changing trends in demand for each commodity can be obtained. For instance, if the weighted average value of a commodity increases over multiple time windows, it indicates that the demand for that commodity is trending upwards; conversely, if the demand for a commodity is trending downwards, the average value will decrease. It should also be understood that standard deviation can represent the volatility of demand. A larger standard deviation indicates greater volatility, and a smaller standard deviation indicates less volatility.

[0101] Based on the statistical characteristics of demand forecasts for various commodities across multiple time windows, it becomes possible to determine which commodities show an upward trend in demand, which show a downward trend, which remain unchanged, which experience significant demand fluctuations, and which exhibit relatively small fluctuations. For commodities with an upward trend in demand, safety stock planning is necessary, especially for those with significant demand fluctuations; larger safety stock can be maintained for commodities with smaller demand fluctuations. For commodities with a downward trend in demand or no change in demand, no safety stock is required. Alternatively, for commodities with a downward trend in demand and significant demand fluctuations, a small amount of safety stock can be maintained, while for commodities with an upward trend in demand and relatively small demand fluctuations, no safety stock is necessary.

[0102] Here, maintaining safety stock for goods specifically refers to maintaining safety stock at each stage of the manufacturing and / or assembly of the goods. For example, Figure 1 In the BOM network shown, if we want to create safety stock for product A, we can consider creating safety stock for the nodes that make up product A (nodes a, b, c, and d shown in the figure).

[0103] The following description uses a node as an example to illustrate the method for determining safety stock provided in this application. The node can be a node used to manufacture or assemble one or more goods. For ease of description, the method for determining the safety stock of each node is illustrated below using one of the aforementioned goods. This good is, for example, referred to as the first good, which can be manufactured and / or assembled by multiple nodes. The first good can be, for example, a good that requires safety stock as determined by steps 410 and 420 above, or a good that is manually designated as requiring safety stock. This application does not limit this aspect.

[0104] Step 430: The inventory strategy module preprocesses the multiple nodes that make up the first product.

[0105] Preprocessing multiple nodes can reduce the computational load in subsequent steps. Therefore, preprocessing multiple nodes can be an optional step. The device for determining safety stock described above can also skip step 430 and directly execute subsequent steps. In other words, the inventory strategy module is an optional module. The demand quantities and statistical characteristics of various commodities output by the demand forecasting module can also be directly input into the inventory planning module.

[0106] One possible implementation is that the inventory strategy module can preprocess multiple nodes based on product characteristics, inventory characteristics, supply characteristics, business requirements, etc.

[0107] Another possible approach is to analyze the BOM network structure of the first product to obtain the in-degree and out-degree of each node. Specifically, the in-degree and out-degree of a node refers to the number of upstream nodes, the number of downstream nodes, and their pairing relationships. Based on the in-degree and out-degree of each node, its historical outbound and demand volumes, the historical outbound and demand volumes of its downstream nodes, its historical inventory, and its lead time, nodes that do not require safety stock can be filtered out.

[0108] Optionally, preprocessing multiple nodes may include filtering them to remove nodes that do not require safety stock. For example, some nodes may be in the final stages and do not require safety stock; some nodes may have been decided to be discontinued and also do not require safety stock; and some nodes may become idle if stocking them would lead to stagnation, therefore they also do not require safety stock. Nodes that do not require safety stock are not limited to the cases listed above, and for the sake of brevity, they are not listed here.

[0109] Furthermore, as mentioned earlier, in a BOM network, each product comprises multiple nodes, meaning it is manufactured and / or assembled by multiple nodes. However, among these nodes, some are high-value, high-volatility products, requiring less inventory due to their high cost and large fluctuations; some are low-value, low-volatility products, allowing for larger inventory due to their low cost and small fluctuations; some are high-value, low-volatility products, requiring small inventory due to their high cost but small fluctuations; and some are low-value, high-volatility products, requiring small inventory due to their large fluctuations but low cost. Therefore, preprocessing multiple nodes can also include classifying them.

[0110] Optionally, preprocessing multiple nodes may further include: classifying the nodes and setting upper and / or lower bounds for safety stock for different categories of nodes. For example, nodes can be classified according to different characteristics, and different upper bounds for safety stock can be set for each category. For instance, high-value, high-volatility nodes can be classified as one category, requiring minimal inventory, e.g., an upper bound of a1; low-value, low-volatility nodes can be classified as another category, requiring more inventory, e.g., an upper bound of a2; high-value, low-volatility nodes can be classified as another category, requiring a small amount of inventory, e.g., an upper bound of a3; and low-value, high-volatility nodes can be classified as yet another category, requiring a small amount of inventory, e.g., an upper bound of a4. Here, a1, a2, a3, and a4 are all natural numbers, with a1 being the smallest, a2 the largest, and a3 and a4 in between.

[0111] In step 440, critical nodes and safety stock for each critical node are determined based on the service time of each node and the lead time of its upstream nodes.

[0112] Critical nodes can specifically be nodes that require planned safety stock. A node's service time, manufacturing lead time, and supply lead time can be termed its lead time. Therefore, the lead time of an upstream node includes its service time, manufacturing lead time, and supply lead time. For any given node, based on its replenishment lead time and supply lead time from upstream nodes, the upstream nodes' service time, and its own service time, the time range of demand fluctuations that the node needs to cover can be determined. Furthermore, by considering demand volatility, the required safety stock for that node can be calculated.

[0113] It's understandable that the longer the lead time of an upstream node, the more safety stock that node should have; conversely, the longer a node's service time, the less safety stock it needs. And for any given node, the longer the lead time of its upstream node, the more safety stock that node can require.

[0114] As can be seen, the safety stock of each node can be a function of its own service time and the lead time of the upstream node. If we use the service time of each node and the lead time of the upstream node as decision variables, we can construct the function f(x). i ,y i ), where x i y represents the service time of node i (1≤i≤i, where i is a natural number) out of I (I is a natural number) nodes. i This represents the lead time of node i.

[0115] If the objective is to minimize the total holding cost of the safety stock, the critical nodes and their respective safety stocks can be solved. For example, suppose the cost of node i is p. i p i >0, the total holding cost of I nodes can be expressed as: By minimizing the total holding cost, the decoupling point of the safety stock, i.e. the critical node, and the safety stock amount at each critical node can be determined.

[0116] It should be understood that the safety stock of each node is not a simple function of service time, lead time, etc. Other factors also affect safety stock. For example, the connection relationships in the BOM structure, the supply of nodes, and the raw materials of the products.

[0117] Furthermore, constraints can be introduced in the process of calculating the safety stock of each critical node. For example, constraints could include setting a target service level so that the target service level of each node reaches k%. Alternatively, for certain nodes, upper and / or lower bounds can be introduced to minimize the total holding cost of the safety stock at each critical node under constraints.

[0118] In step 450, the inventory simulation module evaluates the safety stock at each key node.

[0119] In the inventory simulation module, the same time window described in step 410 can be considered. The inventory simulation module allows for the reconstruction of as many business rules as possible within the production process, enabling the evaluation of the safety stock plan.

[0120] One possible implementation is to input the demand quantities of goods output by the demand forecasting module over multiple future time windows into the inventory simulation module, which then randomly generates the actual demand quantity for each node. As an example, and not a limitation, the inventory simulation module could use a Monte Carlo method to randomly generate the actual demand quantity for each node. Then, the demand fulfillment is assessed based on the safety stock strategy and the actual demand quantities.

[0121] It should be understood that the forecasting process of the demand forecasting module may not take into account all factors, and the demand for goods in the future may not be accurate. Therefore, the Monte Carlo method can be used to simulate the actual demand.

[0122] Optionally, the parameters input to the inventory simulation module may include, but are not limited to, the following: safety stock at each node, existing raw material or semi-finished product inventory, sales plan, and business rules in the production process.

[0123] Optionally, the inventory simulation module can also randomly generate the actual lead time based on the lead time of the input high-risk nodes using the Monte Carlo method.

[0124] It should be understood that when the number of simulations is sufficient, comprehensive evaluation becomes meaningful. For example, based on the aforementioned multiple time windows, multiple sets of demand data can be generated, and the simulation process can be repeated to obtain multiple sets of inventory and stockout quantities. The average inventory and stockout quantities can then be calculated, thereby determining the demand fulfillment rate. For example, the Monte Carlo method can be used to simulate the actual demand, and the demand fulfillment rate can be calculated based on the ratio of inventory to actual demand.

[0125] It should also be understood that the specific process of using the Monte Carlo method to simulate actual demand or actual lead time and to evaluate the safety stock plan through the inventory simulation module can be found in existing technologies, and will not be detailed here for the sake of brevity.

[0126] In step 460, the inventory optimization module optimizes the safety stock of key nodes that have not reached the expected indicators.

[0127] Based on the evaluation results output by the simulation module, the safety stock of products whose demand fulfillment rate or other key indicators do not meet the expected indicators is further optimized, which is to say, the inventory strategy is adjusted.

[0128] The expected targets can be set manually. For example, a target demand fulfillment rate can be preset for each key node. For nodes whose demand fulfillment rate is lower than the preset target demand fulfillment rate, the safety stock of that key node is adjusted based on the stockout quantity, demand quantity, and target demand fulfillment rate output by the inventory simulation module. For example, if a code is out of stock, the safety stock can be increased; if a node has redundant inventory, the safety stock can be decreased. If the demand fulfillment rate still does not meet the expected target after adjustment, the algorithm can iterate multiple times until the demand fulfillment rate of all nodes reaches their respective target demand fulfillment rates, and then the minimum safety stock level is output, which is the minimum safety stock level that satisfies the expected targets of all nodes.

[0129] Based on the above technical solution, multiple nodes for manufacturing and / or assembling the product are identified according to the product's BOM network. Then, based on the lead time of each node and the service time of its upstream nodes, the key nodes that require planned safety stock and the safety stock quantity of each key node are determined. This method comprehensively considers the correlation between various nodes, thereby optimizing the safety stock layout of the entire production chain.

[0130] Figure 6 This is a schematic block diagram of an apparatus 600 for determining safety stock according to an embodiment of this application. The apparatus 600 can be a chip system, or an apparatus configured with a chip system to implement the function of determining safety stock in the above-described method embodiments. In this embodiment, the chip system can be composed of chips, or it can include chips and other discrete devices.

[0131] like Figure 6 As shown, the device 600 may include a processor 610 and a communication interface 620. The communication interface 620 can be used to communicate with other devices via a transmission medium, thereby enabling the device in the device 600 to communicate with other devices. The communication interface 620 may be, for example, a transceiver, an interface, a bus, a circuit, or a device capable of transmitting and receiving functions. The processor 610 can use the communication interface 620 to input and output data and to implement… Figure 4 The method for determining safety stock described in the corresponding embodiments.

[0132] For example, processor 610 can be used to determine multiple nodes for manufacturing and / or assembling a commodity, including finished or semi-finished products, based on a bill of materials for the commodity; and to determine one or more critical nodes requiring planned safety stock, and the safety stock quantity for each critical node, based on the lead time of each node and the service time of its upstream nodes; the lead time of the node includes the service time of the node, the manufacturing lead time of the node, and the supply lead time of the node. See the detailed description in the method embodiments for further details, which will not be repeated here.

[0133] Optionally, the device 600 further includes at least one memory 630 for storing program instructions and / or data. The memory 630 is coupled to the processor 610. The coupling in this embodiment is an indirect coupling or communication connection between devices, units, or modules, and can be electrical, mechanical, or other forms, used for information exchange between devices, units, or modules. The processor 610 may operate in conjunction with the memory 630. The processor 610 may execute program instructions stored in the memory 630. At least one of the at least one memory may be included in the processor.

[0134] This application embodiment does not limit the specific connection medium between the processor 610, the communication interface 620, and the memory 630. This application embodiment... Figure 6 The processor 610, communication interface 620, and memory 630 are connected via bus 640. Bus 640 is... Figure 6 The connections between other components are shown in bold and are for illustrative purposes only, not as limiting information. The bus can be divided into address bus, data bus, control bus, etc. For ease of illustration, Figure 6 The bus is represented by a single thick line, but this does not mean that there is only one bus or one type of bus.

[0135] This application provides a computer program product, comprising: a computer program (also referred to as code or instructions), which, when executed, causes a computer to perform... Figure 4 The method in the illustrated embodiment.

[0136] This application also provides a computer-readable storage medium storing a computer program (also referred to as code or instructions). When the computer program is executed, it causes the computer to perform... Figure 4 The method in the illustrated embodiment.

[0137] It should be understood that the processor in the embodiments of this application can be an integrated circuit chip with signal processing capabilities. In implementation, each step of the above method embodiments can be completed by the integrated logic circuitry in the processor's hardware or by instructions in software form. The processor can be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. It can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this application can be directly embodied in the execution of a hardware decoding processor, or executed by a combination of hardware and software modules in the decoding processor. The software modules can be located in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. The storage medium is located in memory, and the processor reads the information in the memory and, in conjunction with its hardware, completes the steps of the above method.

[0138] It should also be understood that the memory in the embodiments of this application can be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. The non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. The volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous linked dynamic random access memory (SLDRAM), and direct rambus RAM (DR RAM). It should be noted that the memory used in the systems and methods described herein is intended to include, but is not limited to, these and any other suitable types of memory.

[0139] The terms “unit”, “module”, etc., used in this specification may be used to refer to computer-related entities, hardware, firmware, combinations of hardware and software, software, or software in execution.

[0140] Those skilled in the art will recognize that the various illustrative logical blocks and steps described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application. In the several embodiments provided in this application, it should be understood that the disclosed apparatus, devices, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the shown or discussed mutual couplings or direct couplings or communication connections may be through some interfaces; indirect couplings or communication connections between devices or units may be electrical, mechanical, or other forms.

[0141] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0142] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.

[0143] In the above embodiments, the functions of each functional unit can be implemented entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially in the form of a computer program product. The computer program product includes one or more computer instructions (programs). When the computer program instructions (programs) are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available media may be magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., DVDs), or semiconductor media (e.g., solid-state disks, SSDs), etc.

[0144] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0145] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A method for determining safety stock, characterized in that, include: Based on the bill of materials for a product, identify multiple nodes for manufacturing and / or assembling the product, which may include finished or semi-finished products; A first function is constructed using the service time of each of the plurality of nodes and the lead time of its upstream nodes as variables; Based on the first function and the cost of each node, the total holding cost function of the multiple nodes is obtained; With the goal of minimizing total holding cost, the total holding cost function is solved to obtain one or more key nodes that require planned safety stock, as well as the safety stock quantity for each key node; The lead time of the upstream node includes the service time of the upstream node, the manufacturing lead time of the upstream node, and the supply lead time. The service time represents the response time to the demand of the downstream node. Nodes with safety stock close to zero are not considered as critical nodes. The method further includes: Preprocessing of the multiple nodes: Determine the in-degree of each node, where the in-degree of a node refers to the number of upstream nodes, the number of downstream nodes, and the pairing relationships. Based on the inbound / outbound degree of each node, the historical outbound and demand of each node, the historical outbound and demand of each node's downstream nodes, the historical inventory of each node, and the lead time of each node, nodes that do not require safety stock are filtered out.

2. The method as described in claim 1, characterized in that, The method further includes: Based on the historical sales data of the product, predict the changing trend of demand for the product in the future period; Based on the changing demand trends for the commodity during the future period, determine the need to plan for safety stock of the commodity.

3. The method as described in claim 2, characterized in that, The method of predicting the demand trend of the product in the future based on the product's historical sales data includes: Based on the historical sales data of the product, predict the statistical characteristics of the demand for the product in multiple future time windows, where the multiple time windows are time windows within the future period. Based on the statistical characteristics of demand within the multiple time windows, the trend of demand for the commodity in the future period is determined.

4. The method as described in claim 3, characterized in that, The statistical characteristics include expected value and standard deviation, whereby the expected value indicates the quantity demanded and the standard deviation indicates the volatility of the quantity demanded.

5. The method as described in claim 3 or 4, characterized in that, The statistical characteristics for predicting the demand for the product in multiple future time windows based on the product's historical sales data include: Based on the historical sales data of the product, extract the features of the product; Based on the characteristics of the product, a statistical model is constructed; The statistical model is used to predict the statistical characteristics of the demand for the commodity in multiple future time windows.

6. The method as described in claim 5, characterized in that, The features include one or more of the following: order sequence features, product attribute features, bill of materials features, event features, planning features, business experience features, and external factor features.

7. The method according to any one of claims 1-4 and 6, characterized in that, The method further includes: The safety stock of each of the one or more critical nodes is evaluated to determine the demand fulfillment rate of each critical node.

8. The method as described in claim 7, characterized in that, The method further includes: Adjust the safety stock at key nodes that fail to meet expected targets. These key nodes are those where the demand satisfaction rate does not reach the preset target demand satisfaction rate.

9. An apparatus for determining safety stock, characterized in that, The device includes at least one processor for executing a computer program, causing the device to perform the following operations: Based on the bill of materials for a product, identify multiple nodes for manufacturing and / or assembling the product, which may include finished or semi-finished products; A first function is constructed using the service time of each of the plurality of nodes and the lead time of its upstream nodes as variables; Based on the first function and the cost of each node, the total holding cost function of the multiple nodes is obtained; With the goal of minimizing total holding cost, the total holding cost function is solved to obtain one or more key nodes that require planned safety stock, as well as the safety stock quantity for each key node; The lead time of the upstream node includes the service time, manufacturing lead time, and supply lead time of the upstream node, where the service time represents the response time to the demand from downstream nodes; wherein, nodes with safety stock levels close to zero are not considered critical nodes; and, Preprocessing of the multiple nodes: Determine the in-degree of each node, where the in-degree of a node refers to the number of upstream nodes, the number of downstream nodes, and the pairing relationships. Based on the inbound / outbound degree of each node, the historical outbound and demand of each node, the historical outbound and demand of each node's downstream nodes, the historical inventory of each node, and the lead time of each node, nodes that do not require safety stock are filtered out.

10. The apparatus as claimed in claim 9, characterized in that, The at least one processor is configured to execute a computer program, causing the device to perform the following operations: Based on the historical sales data of the product, predict the changing trend of demand for the product in the future period; Based on the changing demand trends for the commodity during the future period, determine the need to plan for safety stock of the commodity.

11. The apparatus as claimed in claim 10, characterized in that, The at least one processor is configured to execute a computer program, causing the device to perform the following operations: Based on the historical sales data of the product, predict the statistical characteristics of the demand for the product in multiple future time windows, where the multiple time windows are time windows within the future period. Based on the statistical characteristics of demand within the multiple time windows, the trend of demand for the commodity in the future period is determined.

12. The apparatus as claimed in claim 11, characterized in that, The statistical characteristics include expected value and standard deviation, whereby the expected value indicates the quantity demanded and the standard deviation indicates the volatility of the quantity demanded.

13. The apparatus as claimed in claim 11 or 12, characterized in that, The at least one processor is configured to execute a computer program, causing the device to perform the following operations: Based on the historical sales data of the product, extract the features of the product; Based on the characteristics of the product, a statistical model is constructed; The statistical model is used to predict the statistical characteristics of the demand for the commodity in multiple future time windows.

14. The apparatus as claimed in claim 13, characterized in that, The features include one or more of the following: order sequence features, product attribute features, bill of materials features, event features, planning features, business experience features, and external factor features.

15. The apparatus as described in any one of claims 9-12 and 14, characterized in that, The at least one processor is configured to execute a computer program, causing the device to perform the following operations: The safety stock of each of the one or more critical nodes is evaluated to determine the demand fulfillment rate of each critical node.

16. The apparatus as claimed in claim 15, characterized in that, The at least one processor is configured to execute a computer program, causing the device to perform the following operations: Adjust the safety stock at key nodes that fail to meet expected targets. These key nodes are those where the demand satisfaction rate does not reach the preset target demand satisfaction rate.

17. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is run on a computer, it causes the computer to perform the method as described in any one of claims 1 to 8.

18. A computer program product, characterized in that, Includes a computer program that, when run, causes a computer to perform the method as described in any one of claims 1 to 8.

Citation Information

Patent Citations

  • System and Method to Provide Inventory Optimization in a Multi-Echelon Supply Chain Network

    US20150254589A1