0% found this document useful (0 votes)
16 views

7 DynamicDemandModels

The document discusses production and inventory control for items with independent and dynamic demand. It describes how the economic order quantity model is not appropriate for dynamic demand and presents several heuristics to determine production lot sizes over multiple time periods, minimizing total variable costs. These include the part-period balancing, Silver-Meal, and least unit cost heuristics. An example application of each heuristic to a sample demand pattern is also provided.

Uploaded by

Linh Tran
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views

7 DynamicDemandModels

The document discusses production and inventory control for items with independent and dynamic demand. It describes how the economic order quantity model is not appropriate for dynamic demand and presents several heuristics to determine production lot sizes over multiple time periods, minimizing total variable costs. These include the part-period balancing, Silver-Meal, and least unit cost heuristics. An example application of each heuristic to a sample demand pattern is also provided.

Uploaded by

Linh Tran
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 21

Department of Industrial Engineering

Department of Industrial Engineering

Supply Chains:
Planning with Dynamic
Demand

Jayant Rajgopal, Ph.D., P.E.


Department of Industrial Engineering
University of Pittsburgh
Pittsburgh, PA 15261
Department of Industrial Engineering

PRODUCTION / INVENTORY CONTROL OF


ITEMS WITH INDEPENDENT, DYNAMIC
DEMAND
• If the demand rate is not reasonably steady over time then the EOQ
model would not be appropriate.
• Suppose we have demand forecasts for the next n time periods as
D1, D2, …, Dn and these are very different

Example: (n=6) Given A=$50, h=$0.30/unit/unit time

t 1 2 3 4 5 6

D 10 40 80 60 30 20

© Jayant Rajgopal, 2016


Department of Industrial Engineering

DYNAMIC DEMAND MODELS


Simple (simplistic?) approaches:
1. Lot-for-lot: no holding cost; total cost 6*50=$300
2. Approximate EOQ based on average demand: (10+40+…+20)/6=40, so
EOQ≈(2*40*50/0.3)0.5=115. Produce in batches of around 115 at a time –
maybe (10+40+80) in period 1 and (60+30+20) in period 4.
3. Production order quantity (POQ): a common approach in practice where we
convert the approximate EOQ into a time supply and produces for this many
periods each time: EOQ/(average demand) = 115/40 ≈ 3. So produce for three
periods at a time.
None of these work too well in practice…

Q: When is dynamic demand “sufficiently dynamic” to preclude use of the EOQ


model?
A: When the coefficient of variation (std. dev. ÷ mean) is more than 20-25%. (For
our example c.v. = 26/40=65%)
© Jayant Rajgopal, 2016
Department of Industrial Engineering

PRODUCTION / INVENTORY
CONTROL WITH DYNAMIC DEMAND
Important Property: Each production run covers the
demand across some integer number of future periods. As
a consequence, if there is any inventory at the end of a
period, there can never be any production in the next
period, i.e., (It-1)*(Pt) = 0

• If It=0, then t is called a regeneration point


• If Pt>0, then t is called a replenishment point

© Jayant Rajgopal, 2016


Department of Industrial Engineering

PRODUCTION / INVENTORY
CONTROL WITH DYNAMIC DEMAND
EXAMPLE: Suppose we have 5 periods in our planning horizon. Some
possible production patterns are
P1 P2 P3 P4 P5
D1+D2+D3 0 0 D4+D5 0
D1 D2+D3 0 D4 D5
D1+D2 0 D3+D4 0 D5
D1 D2 D3 D4 D5
D1+D2+D3+D4+D5 0 0 0 0
Corresponding end-of-period inventory levels are:
I1 I2 I3 I4 I5
D2+D3 D3 0 D5 0
0 D3 0 0 0
D2 0 D4 0 0
0 0 0 0 0
D2+D3+D4+D5 D3+D4+D5 D4+D5 D5 0
© Jayant Rajgopal, 2016
Department of Industrial Engineering

Consider a production run. Let


• s ≡ Some replenishment period (in which the production run took place;
thus s-1 was a regeneration point)
• t ≡ Period until which demand is covered by the run, i.e. t is the next
regeneration point
HC(s,t) = Holding Cost incurred during the run due to the production (in period s)
of an amount equal to Ds+Ds+1+...+Dt
= hs×(Ds+1+Ds+2+...+Dt) + hs+1 ×(Ds+2+Ds+3+...+Dt)
+ hs+3 ×(Ds+3+Ds+4+...+Dt) + ... + ht-1 ×(Dt) + ht ×(0)

Then the total variable cost for the production run is equal to As+HC(s,t).

Note that Aj is the setup cost in period j and hj is the holding cost in period j
- if these are the same in all periods we can replace all Aj with A and hj with
h.
© Jayant Rajgopal, 2016
Department of Industrial Engineering

Heuristics: The general approach is:


1. Start with s=j=1
2. Increase j successively to s+1, s+2, etc., i.e., evaluate
production runs of Ds, (Ds+Ds+1), (Ds+Ds+1+Ds+2), etc.,
until we stop for some value of j; say j=t. Thus the
production run covers demand for periods s through
t. Different heuristics use different criteria to decide
when to stop
3. Reset s=j=t+1 and repeat Step 2. Continue the process
until the end of the planning horizon is reached
We will study three different heuristics that work well in
practice…
© Jayant Rajgopal, 2016
Department of Industrial Engineering

Part-Period Balancing Heuristic

End the run at j for which HC(s,j) is as close as possible to


As. Since HC(s,j) is monotone increasing in j, we find the
first j for which HC(s,j) exceeds As. Then t is equal to either
j or j-1, depending on whether HC(s,j) or HC(s,j-1) is closer
to As.

Note that this method tries to choose a run for which setup
and holding costs are balanced as far as possible.

© Jayant Rajgopal, 2016


Department of Industrial Engineering

Silver-Meal Heuristic
End the run at j for which the total variable cost per unit
time = TVCUT(s,j) first reaches a minimum, i.e., t is the
first value of j for which TVCUT(s,j+1)>TVCUT(s,j).
Here we define
TVCUT(s,j) = [As+ HC(s,j)] ÷ [j-s+1]

TVC for run No of periods covered by run

© Jayant Rajgopal, 2016


Department of Industrial Engineering

Least Unit Cost Heuristic


End the run at j for which the total variable cost per unit of demand =
TVCUD(s,j) first reaches a minimum, i.e., t is the first value of j for
which TVCUD(s,j+1)>TVCUD(s,j).
Here we define
TVCUD(s,j) = [As+ HC(s,j)] ÷ [Ds+Ds+1+...+Dj]

TVC for run Demand covered by run

© Jayant Rajgopal, 2016


Department of Industrial Engineering

DYNAMIC LOT SIZING - AN EXAMPLE


Given: A=$50, h=i*c= 0.2*18= 3.6 $/unit/year = 3.6/12= $0.30/unit/month.
t 1 2 3 4 5 6
D 10 40 80 60 30 20
Part Period Balancing Heuristic
s=1
j=1, Ps=10; HC(1,1) = 0.3*0 = 0 < 50
j=2, Ps=50; HC(1,2) = 0.3*(40+0) = 12 < 50
j=3, Ps=130; HC(1,3) = 0.3*(120+80+0) = 60 > 50!
Since 60 is closer (than 12 is) to 50, we have t=3
P1=130, P2=P3=0
Reset: s=4
j=4, Ps=60; HC(4,4) = 0.3*0 = 0 < 50
j=5, Ps=90; HC(4,5) = 0.3*(30+0) = 9 < 50
j=6, Ps=110; HC(4,6) = 0.3*(50+20+0) = 21 < 50
Would like to go on, but we've reached the end of the planning horizon – STOP, with t=6
P4=110, P5=P6=0
Variable Cost = 2×50 + 0.3 ×(120+80+0+50+20+0) = $181
(setups) ------(inventory)------
© Jayant Rajgopal, 2016
Department of Industrial Engineering

DYNAMIC LOT SIZING EXAMPLE (cont’d)

Silver-Meal Heuristic
s=1
j=1, Ps=10; TVCUT(1,1) = [50+0.3*0]÷1 = 50
j=2, Ps=50; TVCUT(1,2) = [50+0.3*(40+0)]÷2 = 31 (<50 - continue)
j=3, Ps=130; TVCUT(1,3) = [50+0.3*(120+80+0)] ÷3 = 36.33 (> 31 - reset!)
Thus t=2 and P1=60, P2=0
Reset s=3
j=3, Ps=80; TVCUT(3,3) = [50+0.3*0]÷1 = 50
j=4, Ps=140; TVCUT(3,4) = [50+0.3*(60+0)]÷2 = 34 (<50 - continue)
j=5, Ps=170; TVCUT(3,5) = [50+0.3*(90+30+0)] ÷3 = 28.67 (<34 - continue)
j=6, Ps=190; TVCUT(3,6) = 0+0.3*(110+50+20+0)]÷4 = 26 (<28.67 - continue)
Would go on, but reached end of planning horizon – STOP with t=6 and
P3=190, P4=P5=P6=0.
Variable Cost = 2*50 + 0.3*(40+0+110+50+20+0) = $166
(setups) ------(inventory)------
© Jayant Rajgopal, 2016
Department of Industrial Engineering

DYNAMIC LOT SIZING EXAMPLE (cont’d)

The Least Unit Cost Heuristic


s=1
j=1, Ps=10; TVCUD(1,1) = [50+0.3*0]÷10 = 5
j=2, Ps=50; TVCUD(1,2) = [50+0.3*(40+0)]÷ 50 = 1.24 (<5 - continue)
j=3, Ps=130; TVCUD(1,3) = [50+0.3*(120+80+0)]÷130 = 0.85 (<1.24 - continue)
j=4,Ps=190; TVCUD(1,4) = [50+0.3*(180+140+60+0)] ÷190 = 0.863 (>0.85 - reset)
Thus t=3 and P1=130, P2=P3=0
Reset s=4
j=4, Ps=60; TVCUD(4,4) = [50+0.3*0]÷60 = 0.833
j=5, Ps=90; TVCUD(4,5) = [50+0.3*(30+0)]÷90 = 0.655 (<0.833 - continue)
j=6, Ps=110; TVCUD(4,6) = [50+0.3*(50+20+0)] ÷110 = 0.645 (<0.655 - continue)
Would go on, but reached end of planning horizon – STOP with t=6 and
P4=110, P5=P6=0.
Variable Cost = 2*50 + 0.3*(120+80+0+50+20+0) = $181
(setups) ------(inventory)------
© Jayant Rajgopal, 2016
Department of Industrial Engineering

An Optimal Approach using Dynamic


Programming: The Wagner-Whitin Algorithm
P1 P2 Pn

I0 I1 I2 In-1 In
1 2 n

Define D1 D2 Dn

• F(t) = minimum cost of satisfying demands in periods 1 through t.


(So of course, we seek F(n)…)
• st* = the best period in which to start the production run that satisfies
demand for period t.
The general recursive equation is
F (t ) = Mins ≤t { F ( s − 1) + A + HC ( s , t )}
F (1) = A, s1* = 1
F (0) = 0
© Jayant Rajgopal, 2016
Department of Industrial Engineering

Wagner-Whitin Algorithm
t=1

F(1) = 50, and =1
t=2
F(2) = Min {[F(0)+ A+ HC(1,2)], [F(1)+ A+HC(2,2)}
= Min {[0+50+0.3×40)], [50+50+0]} = Min {62, 100}=62;
s2*=1
t=3
F(3) = Min { [F(0)+ A+ HC(1,3)], [F(1)+ A+HC(2,3)], [F(2)+ A+HC(3,3)] }
= Min { [0+50+0.3×120+0.3×80)], [50+50+0.3 ×80], [62+50+0] }
= Min {110, 124, 112} = 110
s3*=1
© Jayant Rajgopal, 2016
Department of Industrial Engineering

t=4
F(4) = Min { [F(0)+ A+HC(1,4)], [F(1)+ A+HC(2,4)], [F(2)+ A+HC(3,4)],
[F(3)+ A+HC(4,4)] }
= Min { [0+50+0.3 ×180+0.3×140+0.3×60], [50+50+0.3×140+0.3×60],
[62+50+0.3×60], [110+50+0] }
= Min {164, 160, 130, 160} = 130
s4*=3
t=5
F(5) = Min { [F(0)+ A+HC(1,5)], [F(1)+ A+HC(2,5))], [F(2)+ A+HC(3,5))],
[F(3)+ A+HC(4,5)], [F(4)+ A+HC(5,5) }
= Min { [0+50+0.3*210+0.3*170+0.3*90+0.3*30)],
[50+50+0.3*170+0.3*90+0.3*30], [62+50+0.3*90+0.3*30],
[110+50+0.3*30], [130+50+0]}
= Min {200, 187, 148, 169, 180} = 148
s5*=3 © Jayant Rajgopal, 2016
Department of Industrial Engineering

t=6
F(6) = Min { [F(0)+ A+HC(1,6)], [F(1)+ A+HC(2,6)],
[F(2)+ A+HC(3,6)], [F(3)+ A+HC(4,6)]
[F(4)+ A+HC(5,6)], [F(5)+ A+HC(6,6)] }
=Min { [0+50+0.3*230+0.3*190+0.3*110+0.3*50+0.3*20)],
[50+50+0.3*190+0.3*110+0.3*50+0.3*20],
[62+50+0.3*110+0.3*50+0.3*20],
[110+50+0.3*50+0.3*20], [130+50+0.3*20], [148+50+0]}
= Min {230, 211, 166, 181, 186, 198} = 166
s6*=3

So the optimal plan has production in periods s6* (=3) and s2* (=1) so that
P3=D3+D4+D5+D6=190 and P1=D1+D2=50.

© Jayant Rajgopal, 2016


Department of Industrial Engineering

P3=D3+D4+D5+D6=190 and P1=D1+D2=50.

The DP algorithm implicitly evaluates all the paths shown in the graph
below, where each node represents a possible regeneration point

0 1 2 3 4 5 6

© Jayant Rajgopal, 2016


Department of Industrial Engineering

INCORPORATING LEAD TIMES

• Consider an independent demand item with dynamic


demand for which we have planned orders using one of
the methods we just saw. In this context, A would be the
order processing cost for each order.
• Suppose there is a lead time L for these orders to be
delivered from the source – say a factory (to a distribution
center), or perhaps a distribution center (to a store).
• We need to ensure that orders to the source are timed
correctly for the correct amounts in order to ensure timely
delivery

© Jayant Rajgopal, 2016


Department of Industrial Engineering

An example:
DISTRIBUTION REQUIREMENTS PLANNING (DRP)

EXAMPLE:
Consider a warehouse that supplies several stores every
week with some item. Demand for the item is highly
dynamic because of differences in what each store orders
ever week and because not all stores order every week.
The total demand at the warehouse over the next 12
weeks was considered and orders were planned using the
Silver-Meal heuristic. Suppose that the lead time to obtain
a shipment of items from the supplier in China is 2 weeks

© Jayant Rajgopal, 2016


Department of Industrial Engineering

DRP Example
ITEM RX-2100
Lead Time 2 weeks Order lot sizes based on
Safety Stock 20 Silver-Meal heuristic
Current Inventory 25

WEEK 1 2 3 4 5 6 7 8 9 10 11 12
Requirements 80 65 20 50 90 80 60 25 70 30 40 75
Scheduled 165
Receipts
Projected
Ending 25 110 45 25 110 20 80 20 120 50 20 95 20
Balance
Planned 135 140 125 115
Receipts
Planned Order 135 140 125 115
Release

© Jayant Rajgopal, 2016

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy