In this example we will assume that one of the sites of your supply chain is using the Material Requirements Planning policy to timely replenish its inventory.
All further calculations will be based on the MRP policy, which is configured in the following way:
Policy parameters are described here.
To plan a replenishment order, the MRP policy makes certain calculations and prepares a special daily report table, which allows it to define if a facility needs to place an order:
The numbered lists in tutorials are actually checklists. Click the numbers to save your progress!
- Estimates the period, for which the inventory must be analyzed.
- Checks the facility's current inventory level.
- Estimates the day on which inventory replenishment is required by:
- Estimates the required amount.
- Estimates the day on which the replenishment order must be placed.
- Checks if aggregation of orders is required.
- Signals facility to place the replenishment order.
Estimating report period
A report period in this case is the period of time for which the policy evaluates the risk of inventory dropping below the safety stock level. The policy checks the Days for report creation parameter, which is set to 10 in our case. This means that the policy will create a report for 10 days.
The table below is a graphical representation of how MRP policy works. This table is not available in anyLogistix interface. All calculations are done in the background. Further details are provided for clarification purposes only.
Current inventory level
The current inventory level is what the facility has in stock on the day when the report is made (by default day index: 0). As you can see on the table extract below, the current inventory constitutes 52.
The inventory for the first day of the report is taken as it is, while for the rest of the days inventory forecasting is required.
On the current step the inventory is calculated in the following way:
day #1 inventory = day #0 inventory - day #0 demand forecast
Safety stock calculation
Since the Safety stock quantity parameter is set to 0, the policy will have to estimate the safety stock for each day.
The safety stock is estimated by the following formula:
Safety stock = Round (( Forecast for safety stock horizon / Safety stock horizon ) * Days of safety stock )
- Forecast for safety stock horizon - the sum of demand for the number of days specified in the Safety stock horizon parameter.
- Safety stock horizon - [MRP parameter] defining the number of days that are used to calculate average safety stock.
- Days of safety stock - [MRP parameter] defining the number of days of average safety stock the specified site must have.
If you look at the table extract below, you will see that the safety stock for day #1 is estimated to be 18.
Let us have a closer look at the safety stock estimation for day #1:
- First, the policy calculates the sum of demand for the number of days specified in the
Safety stock horizon parameter.
This is required to further estimate the average safety stock.
The sum of the forecasted demand for the period of 10 days starting from day #1 constitutes 90.
- The next step is to calculate the average safety stock within the safety stock horizon period. It is calculated as:
Forecast for safety stock horizon / Safety stock horizon = 90 / 10 = 9
- Finally, the policy calculates the safety stock for day #1 as:
Average safety stock * Days of safety stock = 9 * 2 = 18
Estimating inventory replenishment day
Having forecasted the inventory and estimated the safety stock for each day, the policy can define the day on which the replenishment is required. This is done by comparing such values of each day.
If you look at the table extract below, you will see that the inventory is expected to be less than the safety stock on day with index 4.
Order size estimation
Having detected the day on which the replenishment must be received, the policy estimates the amount that must be ordered:
Order size = Demand forecast + Safety stock – Inventory
- Demand forecast - the demand forecast for the number of days specified in the Period of supply policy parameter (the day on which replenishment is expected).
- Safety stock - the estimated safety stock for this day (on which replenishment is expected).
- Inventory - the estimated inventory for this day (on which replenishment is expected).
Let us have a closer look at the order size estimation for day #4:
- First, the policy estimates the amount of products required to cover the demand,
which is forecasted within the next 5 days (defined in the Period of supply parameter)
after the day on which replenishment is expected.
In our case, the Demand forecast for 5 days with indexes 4-9 is 40.
- Then the actual order size is calculated as
Demand forecast + Safety stock – Inventory = 40 + 18 - 12 = 46
Finally the received value is rounded up to 50 according to the policy settings.
The report table will be updated with the received data:
- actual requirement - the exact required amount of products.
- requirements - the estimated replenishment amount considering the policy settings.
Placing replenishment order
If calculations show that the order must be placed today (the day with index 0) or any day before today, the policy will tell the facility to place the real replenishment order for the required amount.
In our case the order will not be placed, since calculations show that it must be placed on day with index 1, which is tomorrow in terms of our report:
N day less ELT days = 4 - 3 = 1
- N day - the index of the day, when replenishment must be received.
- ELT days - the number of days specified in the Expected lead time parameter.
Aggregation of orders
With the last step the policy checks if it is required to combine orders within the defined period of time into one big order.
In our case aggregation is not required since the Aggregation period, days parameter is not defined.
To learn more about aggregation of orders refer here.
Having completed the required calculations, the MRP policy switches to the next day to calculate the possible safety stock violation in the same way.
How can we improve this article?