Demand forecasting overview
Applies to: Dynamics 365 Supply Chain Management
Demand forecasting is the process of predicting future demand for products and services to estimate revenue and drive strategic and operational business planning, among other activities. Demand forecasting is useful for businesses because it allows them to predict future sales demand and use that data to drive certain business decisions.
When organizations have greater certainty in their expected demand, it provides them the ability to minimize buffer inventory as a result which reduces the amount of money that is tied up in on hand inventory. It can also help organizations avoid the cost of expediting procurement or production due to unexpected demand.
Another benefit of demand forecasting is that it can allow organizations to reduce order fulfillment lead times. In a make-to-order model, the fulfillment lead time will be constrained by the procurement and/or production lead times. If organizations use a demand forecast to drive planning processes, they can order or make longer-lead-time items in advance, reducing the amount of time from sales order entry to customer delivery. Forecasting also allows organizations to look at their holistic demand over larger periods of time which can be useful to drive global capacity planning and feed into strategic planning processes.
In industries such as retail, having inventory on hand at the time an order is placed is critical. When inventory is not available, the customer will go buy it somewhere else rather than waiting for your organization to buy or make more. An accurate demand forecast can help prevent stock-out scenarios and allow organizations to gain the revenue that they would have otherwise lost in a stockout.
Demand forecasting is a fluid process that is often implemented in later phases or iterations of larger projects. The demand forecasting process and solution design should be reviewed on a regular basis to accomodate for the changing global supply chain.
Many people in an organization will need to contribute to the decision-making process and design of the demand forecasting process in your Dynamics 365 project. This includes, but is not limited to the following
Finance stakeholders – Examples: CFO, Controller, Accounting manager
Sales stakeholders – Examples: VP of sales, Sales Directors, General Managers
Operations stakeholders – Examples: COO, Warehouse managers, Production managers
Demand forecasting process flow
The first step of the demand forecasting process is to gather historical data. This might include importing external historical demand to supplement the demand data in Dynamics 365. The next step in the process is to generate the statistical baseline forecast with Azure Machine Learning, which will create the forecast model, and then test the Mean Absolute Percentage Error (MAPE) for the model.
Once the forecast is generated, it is reviewed in Dynamics 365 and users can update the recommended values as needed. When the forecasting values are approved, a user can authorize the forecast which publishes it to the system for use in planning and other operations. The following graphic shows the process flow described above.
Terminology for demand forecasting
The following terminology and concepts are used throughout the demand planning process.
Time series forecasting
The main strategy used to generate forecasts in Dynamics 365 Supply Chain Management is time series forecasting. Time series forecasting refers to models that use previous demand values to predict future demand. The components of a time series forecast model into three categories as follows.
- Trend: the general direction in which demand is moving, i.e. increasing or decreasing
- Seasonality: the presence of repeating short-term patterns in demand. For example, a recurring trend in demand where there is a spike at the end of the quarter due to a push to close sales, or an annual pattern where demand spikes during the summer months. Seasonality does not have to relate to specific seasons of the year, and can be related to any internal or external event.
- Error: the unexplained or random variation in a time series. In real life, there is no way to create a statistical model that explains the trend and seasonality of demand with complete accuracy; some degree of error must always be expected.
When the three components are added together, they are used to predict future demand. The different statistical forecasting algorithms used by Dynamics 365 and other forecasting tools will calculate and combine these general components in different ways, allowing organizations to compare different forecasting models and select the one that best seems to predict the demand. The following graphic shows the components and formula to represent time series forecasting.
Forecast accuracy: Mean Absolute Percentage Error (MAPE)
When Azure Machine Learning generates a forecasting model, an industry standard indicator which is called mean absolute percentage error (MAPE), is used to analyze the expected accuracy of the model. To calculate MAPE, Azure Machine Learning uses a subset of the historical demand data, and calculates the forecast for those dates according to the model, and then compares the values.
The diagram below shows demand history in the chart on the left for the data that was used to determine the forecast model. In the chart on the right, the purple line on the top shows the demand history for the data from the test set. The light blue line below it is the calculation of what the equation would have predicted for those dates.
The MAPE calculation compares the actual value versus the forecasted value for each of the data points to find the average difference between these two different data series as an absolute value. This is represented in the diagram below on the chart on the right with the small red arrows between the two lines on the chart. This provides a measure of how close the forecasted values are to the actual demand, indicating how accurate the forecast model is.
The specific equation for calculating MAPE is displayed at the bottom of the graphic, where At is the actual value and Ft is the forecast value. The difference is divided by the actual value At. The absolute value in this ratio is summed for every forecasted point in the dataset and divided by the number of fitted points n.
MAPE is expressed as a percentage, as indicated in the equation in the diagram. The lower the MAPE value is, the more accurate the forecast likely is. In general, a MAPE of twenty percent or less would considered acceptable, but ten percent would be even better. The best MAPE value that an organization can achieve is going to be dependent on the amount of historical demand data and how volatile the values are.
When the forecast is generated by Azure Machine Learning, organizations can define which dimensions or attributes will be included. The mandatory forecast dimensions are Company, Site, and Allocation key. If a more detailed forecast is required, additional forecast dimensions are availble for Country/region, State, Customer group, Customer account, Warehouse, Inventory status, and Item number and dimensions.
The unique combination of forecast dimension values is reffered to as a granularity attribute. This represents the level of detail at which a forecast is generated.
Demand forecasting key metrics
There are many key metrics that can be used to monitor and measure the success of implementing a demand forecasting systems. The following sections outline the top key metrics that an organization might monitor and measure for demand forecasting.
Increase forecast accuracy
Configuring demand forecasting
There are a variety of components that are used in the configuration of demand forecasting in Dynamics 365 applications. The following table shows the configurations available, and the sequence recommended for setting up the configurations. FO in the Product column indicates finance and operations app, and CE indicates customer engagement apps. The Req? column indicates a "Y" for required and an "N" for not required. Use the links on the configuration component to learn more about how to configure that component.
|Seq||Configuration component||Req?||Product||Menu path|
|1||Demand forecasting parameters||Y||FO||Master planning > Setup > Demand forecasting > Demand forecasting parameters|
|2||Item allocation keys||Y||FO||Master planning > Setup > Demand forecasting > Item allocation keys|
|3||Forecast models||Y||FO||Master planning > Setup > Demand forecasting > Forecast models|
|4||Outlier removal||N||FO||Master planning > Setup > Demand forecasting > Outlier removal|
|5||Intercompany planning groups||N||FO||Master planning > Setup > Intercompany planning groups|
|6||Forecast plans||Y||FO||Master planning > Setup > Forecast plans|
|7||Master plans||Y||FO||Master planning > Setup > Master plans|
|8||Forecasting algoritm parameters||Y||FO||Master planning > Setup > Demand forecasting > Forecasting algorithm parameters|
|9||Period allocation categories||N||FO||Master planning > Setup > Demand forecasting > Period allocation categories|