Management II - Part 4 - Push and Pull Systems
Management II - Part 4 - Push and Pull Systems
3
Push vs. Pull
• Material requirements planning (MRP) is the basic push
system
»based on forecast demands for end items over a given planning
horizon
»determines production quantities for each level of the system
»relies on the explosion calculus, which requires knowledge of the
gozinto factor and production lead times
4
Push vs. Pull
• Kanban is the earliest pull system
»developed by Toyota, evolved into the just-in-time (JIT) and lean
production movements
»fundamental goal is to reduce work-in-process to a bare minimum
»items are only moved when requested by the next higher level in
the production process
5
Material requirements planning
• A production plan is
»a complete specification of the amounts of each end item or final
product and subassembly produced,
»the exact timing of the production lot sizes, and
»the final schedule of completion.
• The production plan can be broken down into 3 parts:
»the master production schedule (MPS)
»the materials requirements planning (MRP)
»the detailed job shop schedule
6
Material requirements planning
• The MPS specifies the exact amounts and timing of
production of each end item in a production system
• The MRP breaks down the MPS into a detailed schedule of
production for each of the components that comprise an end
item
• The MRP is then translated into specific shop floor schedules
and requirements for raw materials (e.g. using the methods
from the next part of this class)
7
Material requirements planning
Phase 1
Phase 2
Phase 3
8
Material requirements planning
• The explosion calculus
» A set of rules by which gross requirements at one level of the product
structure are translated into a production schedule at that level and
requirements at lower levels
• The product structure
» The relationship between the components at adjacent levels of the
system
• The product structure diagram shows
» parent-child relationship of components at each level
» number of periods required for production of each component
» number of components required to produce one unit at the parent level
9
Material requirements planning
• The disposition level of a product is defined as the maximum
length of the path from an item to an end item.
»e.g., the disposition level of item 6 is 5
1 8
2 3 3 9 6 length=1
4 2 5 2 5 3 7
length=3 6 7 4 4 2 5
length=4 6 7 length=4 6 7 4
length=5 6 7 10
Material requirements planning
• Re-arrange the product structure according to disposition
levels. Each item may only be present at a single level.
1 8 Level 0
9 Level 1
3 3 3 Level 2
2 2 5 2 5 2 5 Level 3
4 4 4 4 Level 4
6 7 6 7 6 7 6 7 7 6 Level 5
11
Explosion calculus
Explosion calculus
• Go through the levels from top to bottom
• For each item on the current level determine
»the gross requirements (= primary demand + secondary demand)
»the net requirements (= gross requirement – on-hand inventory)
»the time-phased net requirements (= net requirements shifted to
the left according to lead time)
»the planned order release (= the lot-sizing solution for the time-
phased net requirements)
13
Explosion calculus - Example (lot-by-lot order release)
Trumpet
Level 0
(end item)
14
Explosion calculus - Example (lot-by-lot order release)
Predicted demands
Week 8 9 10 11 12 13 14 15 16 17
Trumpets 77 42 38 21 26 112 45 14 76 38
15
Explosion calculus - Example (lot-by-lot order release)
17
Explosion calculus - Example (lot-by-lot order release)
18
Explosion calculus - Example (lot-by-lot order release)
19
Explosion calculus - Example (lot-by-lot order release)
20
Order release (lot sizing)
• In this example, orders were released on a lot-by-lot basis
»in each period the production quantity equals the time-phased net
requirements for that period
»this is, in general, not optimal and sometimes even infeasible (e.g.,
if not more than 200 valves can be produced per period)
• Lot sizing can be done more efficiently to minimize the total
holding and setup costs over the planning horizon.
21
Silver-Meal heuristic
Silver-Meal heuristic
• The Silver-Meal heuristic is a forward method
»increase the current lot size to cover one more period as long as
the average total costs per covered period 𝐶𝐶(𝑇𝑇) decrease (setup
costs plus holding costs for 𝑇𝑇 covered periods)
• Input data
»𝐾𝐾 … setup costs per production lot
»ℎ … holding costs per unit and period
»𝑟𝑟𝑡𝑡 … requirement for period 𝑡𝑡
23
Silver-Meal heuristic
• Procedure
»Start with 𝑡𝑡 = 1 and 𝑇𝑇 = 1 (produce only 𝑟𝑟1 in period 1)
→ 𝐶𝐶 1 = 𝐾𝐾
»Increase 𝑇𝑇 by one (add one more period‘s demand to the lot)
𝐾𝐾 + 1ℎ𝑟𝑟𝑡𝑡+1 + 2ℎ𝑟𝑟𝑡𝑡+2 + ⋯ + 𝑇𝑇 − 1 ℎ𝑟𝑟𝑡𝑡+𝑇𝑇−1
→ 𝐶𝐶 𝑇𝑇 =
𝑇𝑇
It is essential, that you do this step, even if the next period’s demand is zero!
»If 𝐶𝐶 𝑇𝑇 > 𝐶𝐶 𝑇𝑇 − 1
• set the lot size for period t to 𝑦𝑦𝑡𝑡 = 𝑟𝑟𝑡𝑡 + 𝑟𝑟𝑡𝑡+1 + ⋯ + 𝑟𝑟𝑡𝑡+𝑇𝑇−2
• continue with 𝑡𝑡 = 𝑡𝑡 + 𝑇𝑇 − 1 and 𝑇𝑇 = 1 (i.e., start a new lot)
24
Silver-Meal heuristic - Example
• Machine shop
»Requirement for the next five weeks 𝒓𝒓 = (18, 30, 42, 5, 20)
»Holding costs ℎ = 2$ per item and week
»Production setup costs 𝐾𝐾 = 80$
»What is the recommended lot sizing?
25
Silver-Meal heuristic - Example
• Starting period 𝑡𝑡 = 1
»𝐶𝐶 𝑇𝑇 = 1 = 𝐾𝐾 = 80
𝐾𝐾+1�ℎ𝑟𝑟2 80+1�2�30
»𝐶𝐶 𝑇𝑇 = 2 = = = 70
𝑇𝑇 2
𝐾𝐾+1ℎ𝑟𝑟2 +2ℎ𝑟𝑟3 80+1�2�30+2�2�42
»𝐶𝐶 𝑇𝑇 = 3 = = = 102.67
𝑇𝑇 3
»𝐶𝐶 3 > 𝐶𝐶 2 → 𝑦𝑦1 = 𝑟𝑟1 + 𝑟𝑟2 = 48 → t = 3, T = 1
26
Silver-Meal heuristic - Example
• Starting period 𝑡𝑡 = 3
»𝐶𝐶 𝑇𝑇 = 1 = 𝐾𝐾 = 80
𝐾𝐾+1ℎ𝑟𝑟4 80+1�2�5
»𝐶𝐶 𝑇𝑇 = 2 = = = 45
𝑇𝑇 2
𝐾𝐾+1ℎ𝑟𝑟4 +2ℎ𝑟𝑟5 80+1�2�5+2�2�20
»𝐶𝐶 𝑇𝑇 = 3 = = = 56.67
𝑇𝑇 3
»𝐶𝐶 3 > 𝐶𝐶 2 → 𝑦𝑦3 = 𝑟𝑟3 + 𝑟𝑟4 = 47 → t = 5, T = 1
27
Silver-Meal heuristic - Example
• Starting period 𝑡𝑡 = 5
»No more periods to add → 𝑦𝑦5 = 𝑟𝑟5 = 20
»𝒚𝒚 = 48, 0, 47, 0, 20
»Total cost are 3 � 80 + 2 � 30 + 2 � 5 = 310
28
Part Period Balancing
Part Period Balancing
• Part period balancing
»is an approximate solution approach
»is very popular in practice
»often obtains slightly worse results than the Silver-Meal method
• Idea
»Set the number of periods covered by each lot such that the total
holding cost is as equal to the setup cost over the covered periods
as possible
30
Part Period Balancing - Example
• Machine shop
»Requirement for the next five weeks 𝒓𝒓 = (18, 30, 42, 5, 20)
»Holding costs ℎ = 2$ per item and week
»Production setup costs 𝐾𝐾 = 80$
»What is the recommended lot sizing?
31
Part Period Balancing - Example
• Lot produced in period 1, setup cost = 80
# periods Total holding cost
1 0
2 2 ∗ 30 = 60
3 2 � 30 + 2 � 2 � 42 = 228
32
Part Period Balancing - Example
• Lot produced in period 3, setup cost = 80
# periods Total holding cost
1 0
2 2 ∗ 5 = 10
3 2 � 5 + 2 � 2 � 20 = 90
• As 90 > 80 and 90 is closer to 80 than 10, the number of periods
covered is 3
• 𝒚𝒚 = 48, 0, 67, 0, 0
• Total cost are 2 � 80 + 2 � 30 + 2 � 5 + 2 � 2 � 20 = 310
33
Wagner-Whitin algorithm
Wagner-Whitin algorithm
• The Wagner-Whitin algorithm is an exact method
»Without capacity limitation, in every optimal policy, each value of
𝒚𝒚 is exactly the sum of a set of consecutive future demands.
»Never will only part of a future demand be produced in a previous
period or holding and setup costs would have to be paid.
»The problem can thus be interpreted as a shortest path problem
• If 𝑖𝑖, 𝑗𝑗 |𝑖𝑖 < 𝑗𝑗 is on the path, an order is placed in period 𝑖𝑖,
which covers the demand of 𝑖𝑖 and all periods between 𝑖𝑖 and 𝑗𝑗
(not including 𝑗𝑗). Then 𝑗𝑗 is the next period of ordering.
35
Wagner-Whitin algorithm
• The optimal solution can be found by
»complete enumeration or
»by dynamic programming:
𝑓𝑓𝑛𝑛+1 = 0
36
Wagner-Whitin – Example
• Machine shop
»Requirement for the next five weeks 𝒓𝒓 = (18, 30, 42, 5, 20)
»Holding costs ℎ = 2$ per item and week
»Production setup costs 𝐾𝐾 = 80$
»What is the recommended lot sizing?
37
Wagner-Whitin – Example
1 2 3 4 5 6=E
38
Wagner-Whitin – Example
• 𝑓𝑓6 = 0
• 𝑓𝑓5 = min 𝑐𝑐5𝑗𝑗 + 𝑓𝑓𝑗𝑗 = 80 + 0 = 80 at 𝑗𝑗 = 6
𝑗𝑗>5
𝑐𝑐46 + 𝑓𝑓6 80 + 1 � 2 � 20 + 0
• 𝑓𝑓4 = min 𝑐𝑐4𝑗𝑗 + 𝑓𝑓𝑗𝑗 = min = min = 120 at 𝑗𝑗 = 6
𝑗𝑗>4 𝑐𝑐45 + 𝑓𝑓5 80 + 80
• 𝑓𝑓3 = min 𝑐𝑐3𝑗𝑗 + 𝑓𝑓𝑗𝑗 =
𝑗𝑗>3
𝑐𝑐36 + 𝑓𝑓6 80 + 1 � 2 � 5 + 2 � 2 � 20 + 0 170
min 𝑐𝑐35 + 𝑓𝑓5 = min 80 + 1 � 2 � 5 + 80 = min 170 = 170 at 𝑗𝑗 = 5 or 𝑗𝑗 = 6
𝑐𝑐34 + 𝑓𝑓4 80 + 120 200
39
Wagner-Whitin – Example
• 𝑓𝑓2 = min 𝑐𝑐2𝑗𝑗 + 𝑓𝑓𝑗𝑗 =
𝑗𝑗>2
𝑐𝑐26 + 𝑓𝑓6 80 + 1 � 2 � 42 + 2 � 2 � 5 + 3 � 2 � 20 + 0 304
𝑐𝑐 + 𝑓𝑓5 80 + 1 � 2 � 42 + 2 � 2 � 5 + 80 264
min 25 = min = min = 250 at 𝑗𝑗 = 3
𝑐𝑐24 + 𝑓𝑓4 80 + 1 � 2 � 42 + 120 284
𝑐𝑐23 + 𝑓𝑓3 80 + 170 250
• 𝑓𝑓1 = min 𝑐𝑐1𝑗𝑗 + 𝑓𝑓𝑗𝑗 =
𝑗𝑗>1
𝑐𝑐16 + 𝑓𝑓6 80 + 1 � 2 � 30 + 2 � 2 � 42 + 3 � 2 � 5 + 4 � 2 � 20 + 0 498
𝑐𝑐15 + 𝑓𝑓5 80 + 1 � 2 � 30 + 2 � 2 � 42 + 3 � 2 � 5 + 80 418
min 𝑐𝑐14 + 𝑓𝑓4 = min 80 + 1 � 2 � 30 + 2 � 2 � 42 + 120 = min 428 = 310
𝑐𝑐13 + 𝑓𝑓3 80 + 1 � 2 � 30 + 170 310
𝑐𝑐12 + 𝑓𝑓2 80 + 250 330
at 𝑗𝑗 = 3
40
Wagner-Whitin – Example
• Determine the optimal order policy - retrace the solution
back from the beginning:
»𝑡𝑡 = 1 𝑗𝑗 = 3 𝑦𝑦1 = 𝑟𝑟1 + 𝑟𝑟2 = 48
»𝑡𝑡 = 3 𝑗𝑗 = 5 or 6 choose one arbitrarily 𝑦𝑦3 = 𝑟𝑟3 + 𝑟𝑟4 = 47
»𝑡𝑡 = 5 𝑗𝑗 = 6 𝑦𝑦5 = 𝑟𝑟5 = 20
»Optimal solution: 𝒚𝒚 = 48, 0, 47, 0, 20
»Alternative solution: 𝒚𝒚 = 48, 0, 67, 0, 0
»Total costs: 310
41
Explosion calculus with lot sizing
Explosion calculus - Example (with lot sizing)
Trumpet
(end item)
43
Explosion calculus - Example (with lot sizing)
These time-phased net requirements are the demands for the lot-sizing method (here: Silver-Meal):
𝑟𝑟4 = 42, 𝑟𝑟5 = 42, 𝑟𝑟6 = 32, 𝑟𝑟7 = 12, 𝑟𝑟8 = 26, 𝑟𝑟9 = 112, 𝑟𝑟10 = 45, 𝑟𝑟11 = 14, 𝑟𝑟12 = 76, 𝑟𝑟13 = 38
44
Explosion calculus - Example (with lot sizing)
• Starting period 𝑡𝑡 = 4
» 𝐶𝐶 𝑇𝑇 = 1 = 𝐾𝐾 = 132
𝐾𝐾+1�ℎ𝑟𝑟5 132+1�0.6�42
» 𝐶𝐶 𝑇𝑇 = 2 = = = 78.6
𝑇𝑇 2
𝐾𝐾+1ℎ𝑟𝑟5 +2ℎ𝑟𝑟6 132+1�0.6�42+2�0.6�32
» 𝐶𝐶 𝑇𝑇 = 3 = = = 65.2
𝑇𝑇 3
𝐾𝐾+1ℎ𝑟𝑟5 +2ℎ𝑟𝑟6 +3ℎ𝑟𝑟7 132+1�0.6�42+2�0.6�32+3�0.6�12
» 𝐶𝐶 𝑇𝑇 = 4 = = = 54.3
𝑇𝑇 4
𝐾𝐾+1ℎ𝑟𝑟5 +2ℎ𝑟𝑟6 +3ℎ𝑟𝑟7 +4ℎ𝑟𝑟8 132+1�0.6�42+2�0.6�32+3�0.6�12+4�0.6�26
» 𝐶𝐶 𝑇𝑇 = 5 = = =
𝑇𝑇 5
55.92
» 𝐶𝐶 5 > 𝐶𝐶 4 → 𝑦𝑦4 = 𝑟𝑟4 + 𝑟𝑟5 + 𝑟𝑟6 + 𝑟𝑟7 = 128
» Continue with 𝑡𝑡 = 8 and 𝑇𝑇 = 1
45
Explosion calculus - Example (with lot sizing)
• Starting period 𝑡𝑡 = 8
» 𝐶𝐶 𝑇𝑇 = 1 = 𝐾𝐾 = 132
𝐾𝐾+1�ℎ𝑟𝑟9
» 𝐶𝐶 𝑇𝑇 = 2 = = 99.6
𝑇𝑇
𝐾𝐾+1ℎ𝑟𝑟9 +2ℎ𝑟𝑟10
» 𝐶𝐶 𝑇𝑇 = 3 = = 84.4
𝑇𝑇
𝐾𝐾+1ℎ𝑟𝑟9 +2ℎ𝑟𝑟10 +3ℎ𝑟𝑟11
» 𝐶𝐶 𝑇𝑇 = 4 = = 69.6
𝑇𝑇
𝐾𝐾+1ℎ𝑟𝑟9 +2ℎ𝑟𝑟10 +3ℎ𝑟𝑟11 +4ℎ𝑟𝑟12
» 𝐶𝐶 𝑇𝑇 = 5 = = 92.16
𝑇𝑇
» 𝐶𝐶 5 > 𝐶𝐶 4 → 𝑦𝑦8 = 𝑟𝑟8 + 𝑟𝑟9 + 𝑟𝑟10 + 𝑟𝑟11 = 197
» Continue with 𝑡𝑡 = 12 and 𝑇𝑇 = 1
46
Explosion calculus - Example (with lot sizing)
• Starting period 𝑡𝑡 = 12
»𝐶𝐶 𝑇𝑇 = 1 = 𝐾𝐾 = 132
𝐾𝐾+1�ℎ𝑟𝑟13
»𝐶𝐶 𝑇𝑇 = 2 = = 77.4
𝑇𝑇
»𝐶𝐶 3 < 𝐶𝐶 1 → 𝑦𝑦12 = 𝑟𝑟12 + 𝑟𝑟13 = 114
»No more demands End
»The found lot-sizes 𝑦𝑦 = 128,0,0,0,197,0,0,0,114,0 are the
planned order releases
47
Explosion calculus - Example (with lot sizing)
48
Explosion calculus - Example (with lot sizing)
The gross requirements on the lower level are calculated based on the planned order release of
the upper level (here: 3 times the planned order release of valve casings in each week).
49