377. MRP

Material Requirements Planning (MRP): explodes the MPS into time-phased requirements for every part / component / material needed to make the planned products.

Foundation of every ERP system (SAP, Oracle, NetSuite, etc.).

377.1. Inputs

  1. MPS — planned production quantities, time-phased
  2. Bill of materials (BOM) — what components go into each product (and how many of each)
  3. Inventory file — on-hand and scheduled receipts of every part
  4. Lead-time data — manufacturing / procurement lead time for each part

377.2. BOM example

Product Bicycle:

Two-level explosion: Bicycle → Wheel/Frame/Handlebar; then Wheel → Tire/Rim/Spoke; etc.

377.3. Three core steps per item

For each part, working level-by-level from top to bottom of the BOM:

  1. Gross requirements — how many needed in each period (driven by parent’s planned orders + parent’s lead time)

  2. Net requirements — gross minus available (on-hand + scheduled receipts)

  3. Planned orders — when to release an order to cover net requirements, offset by lead time

For each part, time period t:
    Gross[t] = parent_demand[t]
    Net[t] = max(0, Gross[t] - OnHand[t-1] - SchedReceipts[t])
    OnHand[t] = OnHand[t-1] + SchedReceipts[t] - Gross[t] + PlannedReceipt[t]
    Planned release at t - lead_time = Net[t]  (lot-sized; see below)

377.4. Lot sizing

Plan orders in batches, not unit-by-unit:

377.5. Time-phased record example

Part: Wheel. Lead time: 2 weeks. On-hand: 50. Lot size: 100.

Week 1 2 3 4 5 6
Gross requirements (from Bicycle) 200 240 220 200 260 240
Scheduled receipts 100 0 0 0 0 0
Projected on-hand −50 60 −160 40 −220 40
Net requirements 0 0 160 0 220 0
Planned order receipt 0 0 200 0 300 0
Planned order release (lead time −2) 200 0 300 0 0 0

(Numbers illustrative; not perfectly consistent — purpose is to show the structure.)

377.6. MRP I → MRP II → ERP

377.7. Limitations

377.8. See also