Inventory Control
PART 2: STOCHASTIC DEMAND: NEWSVENDOR AND BASE STOCK
MODELS
Georgia Tech, 2014
ISyE 3104 Fall 2014
Recap of Part 1
Specified a procedure for selecting the appropriate size of a replenishment quantity under constant and
deterministic demand
Batching causes inventory (i.e., larger lot sizes translate into more stock).
Under specific modeling assumptions the lot size that optimally balances holding and setup costs is given by the
square root formula:
Q* =
2 AD
h
Total cost is relatively insensitive to lot size (so rounding for other reasons, like coordinating shipping, may be
attractive).
Sizeable deviations from the EOQ produces small error in cost (robust)
Discussed several modifications
Now:
Stochastic demand inventory models
Georgia Tech, 2014
ISyE 3104 Fall 2014
The Effect of Demand Uncertainty
Many companies treat the world as if it were predictable:
Production and inventory planning are based on forecasts of demand made far in advance of
the selling season.
Although, they are aware of demand uncertainty when they create a forecast, they design
their planning process as if the forecast truly represents reality
Recall the three principles of all forecasting techniques:
Forecasting is always wrong!
The longer the forecast horizon the worst is the forecast
Aggregate forecasts are more accurate
Georgia Tech, 2014
ISyE 3104 Fall 2014
Dealing with Demand Uncertainty
Implicit: start with deterministic assumption, obtain solution, then modify solution
Explicit: represent uncertainty (variability) in the model
Georgia Tech, 2014
ISyE 3104 Fall 2014
Key Issues in stochastic inventory control
1.
2.
3.
How often inventory status should be checked?
This issue is trivial in deterministic demand inventory models, why?
When a replenishment order should be placed?
a tradeoff between carrying extra stock and inadequate customer service
How large the replenishment order should be?
Factors impacting this decision are those that affected the EOQ
Georgia Tech, 2014
ISyE 3104 Fall 2014
New Terminology
On-hand inventory (stock): stock that is physically on the shelf (can never be negative)
Net inventory (stock) = (on hand) (backorders)
Can be negative
Inventory position = On hand + On order Backorders - Committed
Inventory that has been requisitioned but not yet received less what has been backordered or promised
Safety stock: the average level of net inventory just before a replenishment order arrives
Georgia Tech, 2014
ISyE 3104 Fall 2014
Stockouts
When demand is no longer assumed to be deterministic, the costs of stockouts (shortages)
assume a greater importance
Two extreme cases in the event of a stockout
1.
2.
Complete backordering ->net inventory may go below zero
Complete lost sales -> net inventory remains at zero if demand exceeds on hand inventory
All else equal, the level of
safety stock will be different
for each of the two extreme
cases, which do you think will
have higher safety stock (all
other factors held constant)?
Georgia Tech, 2014
ISyE 3104 Fall 2014
To establish the inventory policy
Must decide:
1.
2.
3.
4.
5.
Is the item perishable, subject to becoming obsolete, or a single-season item?
How important is the item?
Can or should the inventory be reviewed continuously or periodically?
What form should the inventory policy take?
What specific cost or service objectives should be set?
The answers to these questions will determine the path your analysis should take
Georgia Tech, 2014
ISyE 3104 Fall 2014
How important is the item?
Recall the ABC classification based on sales dollar volume
A: make up roughly 20 % of total number of items and 80% of dollar sales volume
B: 30 % of items and 15% of dollar volume
C: 50% of items and 5% of dollar volume
Georgia Tech, 2014
ISyE 3104 Fall 2014
Continuous vs. Periodic Review
Main advantage of periodic review systems: synchronized orders or shipments
Main advantage of continuous review systems: require less safety stock than periodic review for
the same service level, why?
Georgia Tech, 2014
ISyE 3104 Fall 2014
10
Stochastic Inventory Models
Popular Stochastic Inventory Models:
1.
2.
3.
Newsvendor: single period planning for inventory that perishes or becomes obsolete
Base stock: multiple periods, demand comes in one unit at a time, replenishment order has one unit each
time
(Q,r): multiple periods, continuous review,
4.
(s,S): multiple periods, continuous review,
5.
when on-hand inventory reaches s, order up to S
(S,R): multiple periods, periodic review,
6.
when on-hand inventory reaches r, order Q
Every R time units, order up to S
(R,s,S): multiple periods, periodic review,
Check inventory every R time units
If on-hand inventory is s or below, order up to S
Georgia Tech, 2014
ISyE 3104 Fall 2014
11
Rules of Thumb
Continuous review
Periodic review
A items
(s,S)
(R,s,S)
B items
(Q,r)
(S,R)
Georgia Tech, 2014
ISyE 3104 Fall 2014
12
Cost and Service Objectives
Generally, we determine the inventory policy based on:
minimizing cost
Must develop an expression for the relevant costs
Determine its expected value
Find Q that minimizes the expected cost
achieving a certain customer service level
Decide on the service level measure
Determine the level of safety stock to achieve that service level
Georgia Tech, 2014
ISyE 3104 Fall 2014
13
The Newsvendor
Problem
Georgia Tech, 2014
ISyE 3104 Fall 2014
14
Single Period Models: The Newsvendor problem
At the start of each day,
a newsvendor must decide on the number of papers to purchase
Daily sales cannot be predicted exactly, and are represented by the random variable
Assumptions:
1. single period
2. random demand with known distribution
3. linear overage/shortage costs
4. minimum expected cost criterion
The demand is uncertain =>
Stock too much -> excess inventory
Stock too little -> lost profit
Examples?
Georgia Tech, 2014
ISyE 3104 Fall 2014
15
Single Period Models: The Newsvendor problem
Costs: co = unit cost of overage
cu = unit cost of underage
Inventory policy: order the quantity that minimizes the average cost
It can be shown that the optimal number of papers to purchase is the fractile of the
demand distribution given by F(Q*) = cu / (cu + co).
NB: minimizing average costs makes sense if the
newsvendor solves this problem repeatedly, e.g., every
day
Georgia Tech, 2014
ISyE 3104 Fall 2014
16
Newsvendor Model: Notation
X = demand (in units), a random variable.
G ( x ) = P ( X x ), cumulative distribution function of demand
input
parameters
g ( x) =
d
G ( x ) = density function of demand.
dx
co = overage cost (in dollars) per unit left over after demand is realized.
cu = underage cost (in dollars) per unit of shortage.
Decision
variable
Q = production/order quantity (in units)
Georgia Tech, 2014
ISyE 3104 Fall 2014
17
Newsvendor Model: Cost function
Cost Function:
+ cu E [# of units produced or ordered below demand ]
= co max{Q x,0}g ( x )dx
0
+ cu max{x Q ,0}g ( x )dx
0
= co (Q x ) g ( x )dx
+ cu ( x Q ) g ( x )dx
Georgia Tech, 2014
ISyE 3104 Fall 2014
18
Newsvendor Model: optimal order quantity Q*
As we have done before, we take the derivative of Y(Q) with respect to Q, set the derivative
equal to zero, and solve for Q* :
Q
Y (Q ) = co (Q x ) g ( x )dx + cu ( x Q ) g ( x )dx
0
dY (Q )
Using Liebnitz Rule
= coG (Q ) cu (1 G (Q ))
dQ
Second derivative check
d 2Y (Q )
= ( co + cu ) g (Q ) 0
dQ 2
therefore, Y(Q) is convex, the optimal order quantity Q * occurs when
dY (Q )
= coG (Q*) cu (1 G (Q*)) = 0
dQ
We call this the critical
cu
G (Q*) =
cu + co ratio
Georgia Tech, 2014
ISyE 3104 Fall 2014
19
Recall:
The Normal Distribution
Standard Deviation = 5
Standard Deviation = 10
Average = 30
0
10
Georgia Tech, 2014
20
30
ISyE 3104 Fall 2014
40
50
60
20
Newsvendor Model with Normal Demand
Suppose demand is normally distributed with mean and standard deviation . Then the
critical ratio formula reduces to:
cu
Q *
G (Q ) =
=
cu + co
*
Q *
cu
= z where ( z ) =
cu + co
find z from the standard normal tables
or use MS Excel function norminv( ( z ), , )
find Q * from
Q* = + z
Georgia Tech, 2014
ISyE 3104 Fall 2014
21
Newsvendor Examples
Georgia Tech, 2014
ISyE 3104 Fall 2014
22
Newsvendor Example
A GT student organization is planning to sell Happy Homecoming 2014 party decorations. The
organization will buy the decorations for $8 each. They will sell the decorations for $18.
Decorations that remain unsold at the end of the Homecoming week will be confiscated by the
officers to use in their fraternities and sororities for next year, so the organization will take a
complete loss on each unsold decoration.
For planning purposes, the officers are using an estimate for average demand of 225
decorations, but they know this value is highly uncertain so they estimate the standard deviation
to be 250. They also feel that a normal distribution will adequately represent the demand
probability density function. How many decorations would you recommend that they buy for
the finals week sale?
Georgia Tech, 2014
ISyE 3104 Fall 2014
23
Newsvendor Example
Model Parameters:
cu = ?
co = ?
=?
=?
G (Q*) =
cu
=
cu + co
z=
Q* = + z
Georgia Tech, 2014
ISyE 3104 Fall 2014
24
Newsvendor Model: Discrete Demand Example*
A company sells swimsuits.
Six months before summer, they must determine the production quantity
Based on past sales, knowledge of the industry, and economic conditions, the marketing
department has a probabilistic forecast
Demand
8000
10000
12000
14000
16000
18000
probability
0.11
0.11
0.27
0.23
0.18
0.1
Cumulative
Prob.
0.11
0.22
0.49
0.72
0.9
1
* From Designing and Managing the Supply Chain: Concepts, Strategies & Case Studies. David Simchi-Levi, Philip Kaminsky and Edith Simchi-Levi
Georgia Tech, 2014
ISyE 3104 Fall 2014
25
Probabilistic Demand Forecasts
00
0
18
00
0
16
00
0
14
00
0
12
10
80
00
0
30%
25%
20%
15%
10%
5%
0%
00
Probability
Demand Scenarios
Sales
The forecast averages about 13,000, but there is a chance that demand will be
greater or less than this
Georgia Tech, 2014
ISyE 3104 Fall 2014
26
Costs
Production cost per swimsuit (C): $80
Selling price per swimsuit (S): $125
Salvage value per unsold swimsuit (V): $20
Georgia Tech, 2014
ISyE 3104 Fall 2014
27
How Much to Make?
Average demand is 13,120 swimsuits.
Look at overage cost vs. underage cost
if extra swimsuit is sold, profit is 125-80 = 45
if not sold, cost is 80-20 = 60
Question: Will the optimal quantity be less than, equal to, or greater than average demand?
G(Q*)=
Q*=
Georgia Tech, 2014
ISyE 3104 Fall 2014
28
Multiple Period Problems
Difficulty: Technically, Newsvendor model is for a single period.
Extensions: But Newsvendor model can be applied to multiple period situations,
provided:
demand during each period is iid, distributed according to G(x)
there is no setup cost associated with placing an order
stockouts are either lost or backordered
Key: make sure co and cu appropriately represent overage and shortage cost.
Wallace J. Hopp, Mark L. Spearman, 1996, 2000
Georgia Tech, 2014
[Link]
ISyE 3104 Fall 2014
29
Example
Scenario:
GAP orders a particular clothing item every Friday
mean weekly demand is 100, std dev is 25
wholesale cost is $10, retail is $25
holding cost has been set at $0.5 per unit per week (to reflect obsolescence, damage, etc.)
Problem: how should they set order amounts?
Wallace J. Hopp, Mark L. Spearman, 1996, 2000
Georgia Tech, 2014
[Link]
ISyE 3104 Fall 2014
30
Example (cont.)
Newsvendor Parameters:
c0 = $0.5
cu = $15
Solution:
15
= 0.9677
0.5 + 15
Q 100
= 0.9677
25
Q 100
= 1.85
25
Q = 100 + 1.85( 25) = 146 Every Friday, they should
G (Q * ) =
Wallace J. Hopp, Mark L. Spearman, 1996, 2000
Georgia Tech, 2014
[Link]
ISyE 3104 Fall 2014
order-up-to 146, that is, if
there are x on hand, then
order 146-x.
31
Key Insights from the Newsvendor Model
Inventory is a hedge against demand uncertainty
Amount of protection depends on overage and shortage costs, as well as distribution of
demand
The optimal order quantity is not necessarily equal to average demand forecast
The optimal quantity depends on the relationship between overage cost and underage cost
As order quantity increases, average profit (cost) first increases (decreases) and then decreases
(increases)
If underage cost exceeds overage cost, optimal order quantity generally increases in both the
mean and standard deviation of demand
Georgia Tech, 2014
ISyE 3104 Fall 2014
32
The Base Stock Model
Georgia Tech, 2014
ISyE 3104 Fall 2014
33
Base Stock Model Main Assumptions
1. There is no fixed cost associated with placing an order
2. Unfilled demand is backordered
3. Leadtimes are fixed and known
4. Replenishments are ordered one at a time
5. Demands occur one at a time
6. Demand can be approximated by a continuous distribution
Georgia Tech, 2014
ISyE 3104 Fall 2014
34
Base Stock: Notation
Decision
variables
Q
r
R
l
X
p(x)
G(x)
h
b
S(R)
B(R)
I(R)
= 1, order quantity (fixed at one)
= reorder point
= r +1, base stock level
= delivery lead time
= demand during replenishment lead time (in units), a random variable
= mean demand during lead time = E(x)
= std dev of demand during lead time
= Probability{demand during lead time equals x} = P(X=x)
= Probability{demand during lead time is less than or equal to x} = P(X<x)
= unit holding cost per year
= unit backorder cost per year
= average fill rate (service level)
= fraction of orders filled from stock = G(R-1)=G(r)
= average backorder level
= average on-hand inventory level
Georgia Tech, 2014
ISyE 3104 Fall 2014
35
Inventory Profile for Base Stock System (R=5)
7
R=r+1
r
On Hand Inventory
Backorders
Orders
Inventory Position
l
3
0
0
10
15
20
25
30
35
Time
Wallace J. Hopp, Mark L. Spearman, 1996, 2000
Georgia Tech, 2014
[Link]
ISyE 3104 Fall 2014
36
Two Methods to Calculate r*
1.
Find r* that meets a predetermined service level
2.
Find r* that minimizes the expected annual cost
Georgia Tech, 2014
ISyE 3104 Fall 2014
37
The Base Stock Model:
Solution Approach 1
Georgia Tech, 2014
ISyE 3104 Fall 2014
38
Approach 1: r* based on Service Level (Fill Rate)
A stockout occurs if demand during lead time l is greater than reorder point r.
The proportion of demand during lead time getting fulfilled from available stock is:
S ( r ) = P ( X r ) = G ( r ), if G is discrete
Procedure: Find r* so that S(r*) > desired service level (fill rate)
Georgia Tech, 2014
ISyE 3104 Fall 2014
39
Base Stock Example
Consider a product with Poisson demand distribution
l = one month
= 10 units (per month)
What should the reorder point be to achieve an expected fill rate of at least 90%
Since demand is Poisson, the probability mass function is
g( x ) =
k e
k!
Therefore,
, k = 0 ,1 ,2 ,...
G( x ) = p( X x ) =
p( k ) =
k =0
Georgia Tech, 2014
x
10 k e 10
k =0
k!
ISyE 3104 Fall 2014
40
Base Stock Example Calculations
r
0
1
2
3
4
5
6
7
8
9
10
11
p(r)
0.000
0.000
0.002
0.008
0.019
0.038
0.063
0.090
0.113
0.125
0.125
0.114
G(r)
0.000
0.000
0.003
0.010
0.029
0.067
0.130
0.220
0.333
0.458
0.583
0.697
B(r)
10.000
9.000
8.001
7.003
6.014
5.043
4.110
3.240
2.460
1.793
1.251
0.834
r
12
13
14
15
16
17
18
19
20
21
22
23
p(r)
0.095
0.073
0.052
0.035
0.022
0.013
0.007
0.004
0.002
0.001
0.000
0.000
G(r)
0.792
0.864
0.917
0.951
0.973
0.986
0.993
0.997
0.998
0.999
0.999
1.000
B(r)
0.531
0.322
0.187
0.103
0.055
0.028
0.013
0.006
0.003
0.001
0.000
0.000
For fill rate of 90%, we must set r =14, so R=15 and safety stock
s = r- = 4.
Georgia Tech, 2014
ISyE 3104 Fall 2014
41
What is the expected backorder Level?
Expected backorder level, B(R) is the expected number of demand units that exceed on
hand stock
if x < R
0,
backorders =
x R , if x R
B( R ) =
( x R ) p( x ) = p( R ) + ( R )[1 G ( R )]
x=R
Georgia Tech, 2014
ISyE 3104 Fall 2014
42
Base Stock Example Calculations
r
0
1
2
3
4
5
6
7
8
9
10
11
p(r)
0.000
0.000
0.002
0.008
0.019
0.038
0.063
0.090
0.113
0.125
0.125
0.114
G(r)
0.000
0.000
0.003
0.010
0.029
0.067
0.130
0.220
0.333
0.458
0.583
0.697
B(r)
10.000
9.000
8.001
7.003
6.014
5.043
4.110
3.240
2.460
1.793
1.251
0.834
r
12
13
14
15
16
17
18
19
20
21
22
23
p(r)
0.095
0.073
0.052
0.035
0.022
0.013
0.007
0.004
0.002
0.001
0.000
0.000
G(r)
0.792
0.864
0.917
0.951
0.973
0.986
0.993
0.997
0.998
0.999
0.999
1.000
B(r)
0.531
0.322
0.187
0.103
0.055
0.028
0.013
0.006
0.003
0.001
0.000
0.000
For fill rate of 90%, we must set r =14, so R=15 and safety stock
s = r- = 4. Resulting service is 91.7%. B(R) = B(r+1)=B(15) =
0.103
Georgia Tech, 2014
ISyE 3104 Fall 2014
43
The Base Stock Model:
Solution Approach 2
Georgia Tech, 2014
ISyE 3104 Fall 2014
44
Approach 2: r* based on minimizing expected annual cost
Expected Annual Cost = Y(R)=Expected inventory holding cost + Expected backorder cost
1. Expected inventory holding cost calculation:
on-hand inventory - backorders = R-X
Average on-hand inventory = I(R) = R - E(X)+B(R)=R- +B(R)
Expected annual cost of holding inventory = h.I(R)
2. Expected backorder cost= b.B(R)
Georgia Tech, 2014
ISyE 3104 Fall 2014
45
Approach 2: r* based on minimizing expected annual cost
Expected Annual Cost = Expected inventory holding cost + Expected backorder
cost
Y ( R ) = h.I( R ) + b.B( R )
= h.( R + B( R )) + b.B( R )
= h( R ) + ( h + b ).B( R )
Solution: if we assume G is continuous, we find R* by the same procedure we
used before: taking the first derivative, setting it to zero, checking the second
derivative, we get:
b
G( R ) =
h+b
Set R* so that the fill rate = b/(h+b), what does this ratio remind you of?
*
Georgia Tech, 2014
ISyE 3104 Fall 2014
46
Base Stock Normal Approximation
If demand is normal, then
b
G( R*) =
h+b
R *
=z
where (z)=b/(h+b). So
R* = + z
Georgia Tech, 2014
ISyE 3104 Fall 2014
47
Back to the Base Stock Example
Suppose that h=$15/unit/yr, b=$25/unit/yr
What should R* be based on minimizing the expected annual cost
b
25
G( R*) =
=
= 0.625
h + b 15 + 25
If the demand is not too low, we can approximate the Poisson distribution with the
Normal distribution where =10 and = sqrt(10)=3.16 (Recall that the Poisson
distribution has mean = variance)
R* = + z = 10 + 0.32(3.16) = 11.01 11
Georgia Tech, 2014
ISyE 3104 Fall 2014
48
Base Stock Example Calculations
r
0
1
2
3
4
5
6
7
8
9
10
11
p(r)
0.000
0.000
0.002
0.008
0.019
0.038
0.063
0.090
0.113
0.125
0.125
0.114
G(r)
0.000
0.000
0.003
0.010
0.029
0.067
0.130
0.220
0.333
0.458
0.583
0.697
B(r)
10.000
9.000
8.001
7.003
6.014
5.043
4.110
3.240
2.460
1.793
1.251
0.834
r
12
13
14
15
16
17
18
19
20
21
22
23
p(r)
0.095
0.073
0.052
0.035
0.022
0.013
0.007
0.004
0.002
0.001
0.000
0.000
G(r)
0.792
0.864
0.917
0.951
0.973
0.986
0.993
0.997
0.998
0.999
0.999
1.000
B(r)
0.531
0.322
0.187
0.103
0.055
0.028
0.013
0.006
0.003
0.001
0.000
0.000
For R*=11, r*=10 the associated fill rate with this new
solution is G(10) = 0.583
Georgia Tech, 2014
ISyE 3104 Fall 2014
49
Base Stock Insights
[Link] points control prob of stockouts by establishing safety stock.
[Link] achieve a given fill rate, the required base stock level (and hence safety stock) is an
increasing function of mean and (provided backorder cost exceeds shortage cost) std dev of
demand during replenishment lead time.
[Link] optimal fill rate is increasing in the backorder cost and decreasing in the holding cost.
We can use either a service constraint or a backorder cost to determine the appropriate base
stock level.
[Link] stock levels in multi-stage production systems are very similar to kanban systems and
therefore the above insights apply.
Wallace J. Hopp, Mark L. Spearman, 1996, 2000
Georgia Tech, 2014
[Link]
ISyE 3104 Fall 2014
50
Summary of Part 2
Analyzed two stochastic demand inventory control models:
Newsvendor
Base stock
Next:
(Q,r), which allows for modeling the setup/fixed ordering cost
Georgia Tech, 2014
ISyE 3104 Fall 2014
51