anyLogistix
Expand
Font size

MRP Policy. How it works

The purpose of Material Requirements Planning (MRP) in the model is the timely inventory replenishment based on the forecasted inventory and safety stock levels.

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 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.

  • The report size depends on the Days for report creation parameter of the MRP policy.
  • Each column of the report table represents one simulation day.
  • The first day in the report (day index: 0) is the day when MRP is calculated (today in terms of policy).
  • Each report table is created for a certain pair (facility, product).
  • If you enable the policy's Periodic Check (in the Inventory table), then MRP will be calculated once per defined Period.

The numbered lists in tutorials are actually checklists. Click the numbers to save your progress!

Estimating inventory replenishment

  1. The policy checks the facility's current inventory level on the first day (day index: 0).
  2. For the rest of the days shown in the report (defined by the Days for report creation parameter), the MRP policy calculates:
  3. Having found the day on which the inventory level is forecasted to be less than the safety stock (let's name it N), the policy marks it as the day on which the replenishment must be received.
  4. Now the policy considers the defined Expected lead time parameter to estimate the day on which the replenishment order must be placed.
    e.g. If Expected lead time is set to 5, and day N is the day with index 7, then the replenishment order is expected to be placed on day with index 7 - 5 = 2.
  5. If the replenishment order is expected to be placed:
  6. Finally, the policy checks if aggregation of orders is required and tells the facility to place the real replenishment order in the simulation model for the required amount.

Inventory forecast calculation

The inventory forecast is made for the number of days specified in the Days for report creation parameter except the report creation day (day index: 0).

It is calculated as:

Previous day inventory + Expected replenishment – Demand forecast for previous day

Inventory for the previous day (as well as for any other day) is the inventory level at the beginning of the day before demand forecast is applied.

Safety stock estimation

Safety stock is estimated for each day of the report. It is based on the forecast and MRP Policy parameters.

There are two options of safety stock estimation:

  • Fixed safety stock — if the Safety stock quantity value (MRP parameter) is greater than zero, the safety stock is the same for any day.
  • Dynamic safety stock — if the Safety stock quantity value (MRP parameter) is set to zero, the safety stock for every day is calculated as:

    Safety stock = Round (( Forecast for safety stock horizon / Safety stock horizon) * Days of safety stock )

    Where:

    • Round — rounded value
    • 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.

    See example of how the safety stock is calculated

Order size estimation

MRP policy estimates the size of the replenishment order by:

  • Using the following formula: Demand forecast + Safety stock – Inventory
    Where Demand forecast is the forecast for the number of days specified in the Period of supply policy parameter.
  • Rounding up actual requirements according to the defined MRP parameters:
    • Min order quantity — the minimum amount of products that can be ordered.
    • Max order quantity — the maximum amount of products that can be ordered.
    • Mult order quantity — the amount of products, by which the Min order quantity can be increased.

Placing an order

The policy calculates the day on which the replenishment order must be placed only if such order is required, i.e., if the N day has been forecasted.

The order placement day is calculated as N day less ELT days, where:

  • 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.

If calculations show that the order must be placed today (the day, when calculations are made) or any day before today, the policy will tell the facility to place the real replenishment order for the required amount. Otherwise, the order will not be placed.

Examples:

  • If Expected lead time is set to 5, and day N is the day with index 7, then the replenishment order is expected to be placed on day with index 7 - 5 = 2, i.e., the order will not be placed today.
  • If Expected lead time is set to 5, and day N is the day with index 4, then the replenishment order will be placed today.

Aggregation of orders

The policy can aggregate orders for the number of days specified in the Aggregation period, days parameter.

Having defined the order placement day, the policy will consider the Aggregation period, days parameter to see if order aggregation is required. If the parameter's value is greater than zero the policy will aggregate all orders within the specified number of days.

To aggregate orders

  1. The policy defines the order placement day.
  2. Then it checks the Aggregation period, days parameter. If its value is greater than zero, the policy will aggregate all orders within the specified amount of days.

    E.g. If the parameter's value is 5, the policy will aggregate all orders that are expected to be placed within 5 days (i.e. today and the next four days) to place one big order today.

  3. Having prepared the aggregated order, the policy sets the number of orders for each day of the aggregated period to 0 to not consider them again when processing data for the next ordering day.

  4. Finally, the policy moves on to the next order placement day to proceed from step 2 of this scenario.

How can we improve this article?