You are on page 1of 144

3 SINGLE-ECHELON SYSTEMS

WITH INDEPENDENT ITEMS

Different items can be controlled


independently.

The items are stocked at a single location,


i.e., not in a multi-stage inventory system.
3.1 Costs
Holding costs
- Opportunity cost for capital tied up in
inventory
- Material handling costs
- Costs for storage
- Costs for damage and obsolescence
- Insurance costs
- Taxes
Ordering or Setup Costs

- setup and learning

- administrative costs associated with the


handling of orders

- transportation and material handling.


Shortage Costs or Service Constraints

- extra costs for administration


- price discounts for late deliveries
- material handling and transportation.

If the sale is lost, the contribution of the sale


is also lost. In any case it usually means a
loss of goodwill.
- component missing
- rescheduling, etc.

Because shortage costs are so difficult to


estimate, it is very common to replace them
by a suitable service constraint.
3.2 Different Ordering Systems
3.2.1 Inventory position

Inventory position = stock on hand +


outstanding orders - backorders.

Inventory level = stock on hand - backorders.


3.2.2 Continuous or Periodic Review

As soon as the inventory position is


sufficiently low, an order is triggered. We
denote this continuous review.

L = lead-time.

T = review period, i. e., the time interval


between reviews.
3.2.3 Different Prdering Policies
(R, Q) policy
Inventory position

R+Q

R
Inventory level

L L

Figure 3.1 (R, Q) policy with continuous review.


Continuous demand.
(R, Q) Policy

When the inventory position declines to or


below the reorder point R, a batch quantity of
size Q is ordered. (If the inventory position is
sufficiently low it may be necessary to order
more than one batch to get above R) .
(s, S) Policy
Inventory position

Inventory level

L L Time
Figure 3.2 (s, S) policy, periodic review.
When the inventory position declines to or below s,
we order up to the maximum level S.
3.3.1 Classical Economic Order
Quantity Model
Harris (1913), Wilson (1934), Erlenkotter
(1989)
- Demand is constant and continuous.
- Ordering and holding costs are constant over
time.
- The batch quantity does not need to be an
integer.
- The whole batch quantity is delivered at the
same time.
- No shortages are allowed.
Notation:
H = holding cost per unit and time unit

A = ordering or setup cost

D = demand per time unit

Q = batch quantity

C = costs per time unit


Stock level

Q/d Time
Figure 3.3 Development of inventory level over
time.
Q d
C h A (3.1)
2 Q
dC h d
2 A0 (3.2)
dQ 2 Q
2 Ad
Q
*
(3.3)
h

Adh Adh (3.4)


C
*
2 Adh
2 2
How important is it to use the optimal order
quantity? From (3.1), (3.3), and (3.4)
C Q h 1 2 Ad 1 Q Q*
*
* (3.5)
C 2 2 Ad 2Q h 2 Q Q
If Q/Q*= 3/2 (or 2/3), then C/C* = 1.08
from (3.5)
The cost increase is only 8 percent.
Costs are even less sensitive to errors in
the cost parameters. For example, if
ordering cost A is 50 percent higher than
correct ordering cost, from (3.3), batch
quantity is Q/Q*= (3/2)1/2 =1.225 , relative
cost increase 2 percent.
Example 3.1 A = $200, d = 300,
unit cost $100, holding cost is 20
percent of the value. Then,

h = 0.20 100 =$20

Applying (3.3), Q* = (2Ad/h)1/2 =


(2 200 300/20)1/2 = 77.5 units.

In practice Q often has to be an integer.


3.3.2 Finite Production Rate
If there is a finite production rate, the
whole batch is not delivered at the same time
Stock level

Q(1-d/p)

Q/p
Time
Q/d

Figure 3.4 Development of the inventory level over


time with finite production rate.
P = production rate (p > d).

The average inventory level is now


Q(1 - d/p)/2

Q(1 d / p) d. (3.6)
C h A
2 Q

2 Ad
Q
*
. (3.7)
h(1 d / p )
3.3.4 Quantity Discounts
v = price per unit for Q < Q0, i.e., the
normal price,

v=price per unit for Q Q0, where v < v.

Holding cost

h = h0 + rv for Q < Q0,

h= h0 + rv for Q Q0,
3.3.3 More General Models
Example 3.2
d: constant customer demand
Two machine production rates: p1 > p2 > d,
Two machine set up costs: A1 and A2
The fixed cost of the transportation of a batch of
goods from machine 2 to the warehouse: A3
The holding cost before machine 1 is h1 per unit
and time unit. The holding cost is h2 and after
machine 2 it is h3.
Optimal Batch size?
1 M1 2 M2 3 4

Stock level before machine 1 (1)

Time
Q/p1 Q/d
Stock level between machines 1 and 2 (2)

Time
Q/p1

Q/p2

Stock level after machine 2 (3)

Time
Q/p2

Stock level at warehouse (4)

Time
Transportation Q/d
Holding Cost Calculation:
Q(Q / p1 ) d
h h
2Q / d p1
p2 Q
Q(1 )
p1 p2 Qd p1 p2 Qd 1 1
h ( ) ( )
2Q / d 2 p1 p2 2 p2 p1

Q d d d d d
C h 1 ( )h 2 ( 1)h 3 (A1 A 2 A 3 )
2 p1 p 2 p1 p2 Q (3.8)

2(A1 A 2 A 3 )d
Q *
d d d d
h1 ( )h 2 ( 1)h 3
p1 p 2 p1 p2
(3.9)
Q d
C dv (h0 rv ) A for Q Q0 (3.10)
2 Q
Q d (3.11)
C dv (h0 rv) A for Q Q0
2 Q

QQ Q0 Q

Figure 3.6 Costs for different values of Q.


Two steps
1. First we consider (3.11) without the constraint
Q Q0. We obtain
2 Ad
Q (3.12)
h0 rv
and

C 2 Ad (h0 rv) dv . (3.13)

If Q Q0, (3.12) and (3.13) give the optimal


solution, i.e., Q* = Q, and C* = C.
Example 3.3 v = $100, v = $95 for
Q Q0 = 100. h0 = $5 per unit and year,
and r = 0.2, i.e., h = $25 and h= $24
per unit and year.
d = 300 per year, A = $200.

From (3.12) and (3.13), Q= 70.71 and

C= 30197. Since Q< Q0, go to step 2.


From (3.14) and (3.15), Q = 69.28 and
C = 31732. Applying (3.16), C(100) = 30300.
Q* = Q0 = 100.
2. If Q < Q0 we need to determine

2 Ad
Q . (3.14)
h0 rv

C 2 Ad (h0 rv ) dv . (3.15)
Since v > v we know that Q < Q< Q0

Q0 d
C (Q0 ) dv ( h0 rv ) A
. (3.16)
2 Q0
The optimal solution is the minimum of (3.15)
and (3.16).
Incremental Discounts

v3=0.7
A3
v2=0.8

A2
v1=1
A1

Q1=1000 Q2=2500

d =36500 , r =0.3
A1=A=15
A2=A1 +(c1-c2)Q1=15+(1-0.8)*1000=215
A3=A2 +(c2-c3)Q2=215+(0.8-0.7)*2500=465

2dAi
EOQi=
vi r
Procedure
Candidate oi from each segment
EOQi if feasible
Oi = Qi if EOQi > Qi
Qi-1 if EOQi < Qi-1
Q* =best of all Oi
Example
EOQ1=1910 > Q1 O1=Q1=1000

EOQ2= 2 * 36500 * 215 =8087 O2=Q2=2500


0.3 * 0.8
2 * 36500 * 465
EOQ3= =12714 feasible
0.3 * 0.7
TC(Qi) =vid+Qivir /2+dAi / Qi
TC(1000)=36500*1+1000*0.5*0.3*1+36500*15/1000
=36500+150+547.5=37197.5
TC(2500)=(1000*1+1500*0.8)*36500/2500
+2500*0.5*0.3*(1000*1+1500*0.8)/2500
+36500*15/2500=32120+330+219=32669
TC(12714)=[1000*1+1500*0.8
+(12714-2500)*0.7+15]*36500/12714
=26884.9+1404.7=28289.6

Q*=12714
3.3.5 Backorders Allowed
b1= shortage penalty cost per unit and time unit.
x = fraction of demand that is backordered.
Inventory level

Q(1-x)

Time
-Qx

Q/d

Figure 3.7 Development of inventory level over time


with backorders.
Q(1 x ) 2 Qx 2 d
C h b1 A . (3.17)
2 2 Q
h
x
*
, (3.18)
h b1
and inserting in (3.17) we get
Q hb1 d . (3.19)
C( x )
*
A
2 h b1 Q
2 Ad (h b1 )
Q
*

hb1 , (3.20)
2Ad hb1
C
*
.(3.21)
( h b1 )
Example 3.4

demand = 1000 units per year,


production rate = 3000 units per year,
holding cost before the machine = $10 per unit
and year,
holding cost after the machine =$15 per unit and
year,
shortage cost = $75 per unit and year,
ordering cost = $1000 per batch.
Stock level before the machine

Time
Q/3000 Q/1000

Stock level after the machine

Time
Q/3000 Q/1000

Stock level at warehouse

Q(1-x)

Time
-Qx
Q/1000

Q Q Q 2 1000
C (10 15) (1 x) 15 x 75
2
1000
6 2 2 Q
The optimal solution is x* = 15/90 = 1/6, and Q* = 310.
3.3.6 Time-varying Demand
T = number of periods

Di = demand in period i, i = 1,2,...,T, (Assume


that d1 > 0, since otherwise we can just
disregard period 1)

A = ordering cost,

h = holding cost per unit and time unit.


A replenishment must always cover the
demand in an integer number of consecutive
periods.

The holding costs for a period demand should


never exceed the ordering cost.

Case: when backorders are not allowed


3.3.7 The Wagner-Whitin Algorithm
fk=minimum costs over periods 1, 2, ..., k, i.e.,
when we disregard periods k + 1, k + 2, ..., T,

fk,t=minimum costs over periods 1, 2, ..., k, given that


the last delivery is in period t (1 t k).

f k min f k ,t , (3.22)
1 t k

f k ,t f t 1 A h( d t 1 2d t 2 ... ( k t )d k ) . (3.23)
Example 3.6
T =10, A = $300, h = $1 per unit and period.
Table 3.1 Solution, fk,t , of Example 3.6.

Period t 1 2 3 4 5 6 7 8 9 10
dt 50 60 90 70 30 100 60 40 80 20
k=t 300 600 660 840 1030 1090 1370 1450 1530 1770

k=t+1 360 690 730 870 1130 1150 1410 1530 1550

k=t+2 540 830 790 1070 1250 1230 1570 1570

k=t+3 750 920 1090 1250 1370 1470 1630

k=t+4 870 1330 1410 1550

k=t+5 1530
Table 3.2 Optimal batch sizes in
Example 3.6.

Period t 1 2 3 4 5 6 7 8 9 10

Solution 1 110 190 200 100

Solution 2 110 190 300


Rolling horizon
Whether it is possible to replace an infinite
horizon by a sufficiently long finite horizon such
that we still get the optimal solution in the first
period.
DYNAMIC DETERMINISTIC MODELS

- NONSTATIONARY DEMAND (POS OR NEG)


- ADDITIONAL MOTIVES FOR HOLDING INVENTORY
SMOOTHING,SPECULATIVE
- DISCRETE TIME MODELS FOR COMPUTATIONAL
REASONS
- FINITE HORIZON - INITIAL DECISION SHOULD NOT
BE VERY SENSITIVE TO THE HORIZON LENGTH T IF
T 'LARGE'.
- ROLLING PROCEDURE - USE THESE INITIAL
DECISIONS, REPEAT THE PROCESS USING
UPDATED FORECASTS IF AVAILABLE.
FORWARD ALGORITHM
AN EFFICIENT PROCEDURE FOR SOLVING
LONGER AND LONGER PROBLEMS.

STOPPING RULE: PROCEDURE TO STOP.


DECISION HORIZON IS A STOPPING RULE.
(WILL ELABORATE ON IT LATER.)
Q

t1 t2 t3 t

FIG. 2. NONSTATIONARY DEMAND


HOLDING COSTS ARE FLOWS h(t)
SETUP COSTS ARE LUMP SUM AMOUNTS A(ti)
LET S BE A POLICY AS SHOWN IN FIG. 2

V ( S ) h(t )e dt A(ti )e rti
rt
0
i 1

TOTAL DISCOUNTED COST


GENERAL PROBLEM MIN V(S) (VERY COMPLICATED)
S
ALSO V(S) = FOR ALL S, THEN WHAT?

1ST SIMPLIFICATION
- DISCRETE TIME
- PRODUCTION AT THE BEGINNING OF THE PERIOD.
- HOLDING COST BASED ON AVERAGE INVENTORY IN EACH
PERIOD
- FINITE TIME

T
V (S ) A(ti )e r ( i 1)

i 1
FUDGE THE DISCOUNT RATE INTO
INTEREST EXPENSE
T
V ( S ) A(i )
i 1

AVERAGE COST
1 T
V ( S ) A(i )
T i 1
2ND SIMPLIFICATION

- DYNAMIC PROGRAMMING INSTEAD OF THE


BRUTE FORCE METHOD OF EXAMINING EVERY S.

- STRUCTURE OF THE PROBLEM; IT IS POSSIBLE TO


SHOW IN THE DYNAMIC LOT SIZE MODEL THAT IT IS
OPTIMAL TO PRODUCE ONLY WHEN INVENTORY IS
ZERO. (WAGNER-WHITIN ALGORITHM)
WHY FINITE T ?
1) IT IS CONVENIENT
MAKES COMPUTATIONS FEASIBLE
DOES NOT REQUIRE ALL FUTURE FORECAST
REAL WORLD PROBLEMS ARE FINITE BUT T IS
USUALLY UNKNOWN: ALSO THE SALVAGE
VALUE IS UNKNOWN.
2) IT IS REASONABLE
ROLLING HORIZON PROCEDURE
SOLVE WITH T=40 AT t=0.
USE Q1, Q2 , Q3 , Q4 DECISIONS.
AT t=4, SOLVE A 40-PD PROBLEM FOR [5, 44].
USE Q5 THRU Q8 AS 'OPTIMAL' DECISIONS:
COMPUTATIONAL TIME CONSIDERATIONS.
. - AT THE VERY LEAST, WE MUST BELIEVE THAT
THE LARGER. THE VALUE OF T, THE LESS WILL
BE THE INFLUENCE OF FINAL PERIODS ON
THE INITIAL DECISIONS.
- SMALL VALUES OF T ARE COMPUTATIONALLY
CONVENIENT; LARGE T ARE SAFE IN GETTING
GOOD ANSWERS.
- A COMPROMISE: FORWARD ALGORITHM
SOLVE PROBLEMS FOR T =1,2,.. .,40.
IF SOLVING THESE FORTY PROBLEMS REQUIRE
LITTLE OR NO MORE WORK THAN SOLVING
THE 40-PD PROBLEM, THEN SUCH A
PROCEDURE IS CALLED A FORWARD
ALGORITHM.
STOPPING RULE

A PROCEDURE WHICH CHECKS WHETHER OR


NOT THE INITIALDECISION IS A 'GOOD ENOUGH
APPROXIMATION EVERY TIME T IS INCREASED BY ONE
PERIOD.

A) APPARENT DECISION HORIZON: Q1 HAS CHANGED


LITTLE OR NONE FOR THE LAST FEW VALUES OF T.

B) DECISION HORIZON: Q1 CAN BE GUARANTEED


NEVER TO CHANGE IF T WERE FURTHER
INCREMENTED (INDEPENDENTOF DEMAND IN PDS
AFTER T).
STOPPING RULE (CONTINUED)

C) NEAR-COST DECISION HORIZON: Q1 CAN BE


GUARANTEED TO BE WITHIN 5% OF THE
OPTIMAL COST.

D) NEAR-POLICY DECISION HORIZON: Q1 CAN BE


GUARANTEED TO WITHIN 5% OF Q1*.
FORECAST HORIZON, DECISION HORIZON

SUPPOSE AFTER SOLVING A FORWARD ALGORITHM


OUT TO T, WE CAN GUARANTEE THAT DECISIONS FOR
THE FIRST J PERIODS ARE CORRECT FOR ANY (T +K) -
PROBLEM, K 1 (INDEPENDENT OF DEMAND IN T+1,
T+2, ... PDS), THEN THE FIRST T PERIODS IS CALLED A
FORECAST HORIZON WHILE THE FIRST J PERIODS
ARE CALLED A DECISION HORIZON.
DEMAND CAN BE NETTED OUT AS SHOWN. (EXCESS
OVER 'SAFETY STOCKS') THUS I0 = 0
NET DEMAND dl d2 d3 . . .
Qt PRODUCTION AT THE BEGINNING OF t TH
PERIOD.
A + cQt Qt > 0
COST = 0 OTHERWISE

ENDING INVENTORY It = It-1 + Qt - dt, t > 0

It = AVERAGE INVENTORY
= It + dt = It-1 + Qt - dt
T
COST V [ t A cQt h I t ]
t 1
THEOREM: ANY OPTIMAL SOLUTION MUST SATISFY
I) It Qt+1 = 0 (I.E. Qt+1 > 0 It = 0
It > 0 Qt+ 1 = 0)
II) IT = 0

PROOF.
FIRST PRODUCTION WILL CERTAINLY NOT COME UNTIL
APERIOD (t+1) FOR WHICH dt+l > O. FOR ANY
FOLLOWING PRODUCTION PT. IF (I) DOES NOT HOLD,
THEN DECREASE PRECEDING PRODUCTION BY It AND
INCREASE Qt+l BY It GIVING A BETTER SOLUTION.
EXERCISE: COMPLETE THE PROOF IF THE
PREVIOUS PRODUCTION IS LESS THAN It.
ALSO SHOW IT MUST BE ZERO.

IF It = 0, THEN PERIOD t IS CALLED A REGENERATION


POINT.
IF Qt > 0, THEN PERIOD t IS CALLED A PRODUCTION
POINT.
REGENERATION - PRODUCTION ALTERNATION PROPERTY

I) BETWEEN ANY TWO SUCCESSIVE P-POINTS, THERE IS


AT LEAST ONE R-POINT.

II) BETWEEN ANY TWO SUCCESSIVE R-POINTS, THERE IS


AT MOST ONE P-POINT.

(CONVENTION: IF PERIOD t IS BOTH R AND P POINT, THEN


P IS SAID TO BE BEFORE R.)
PROOF:
I) LET t AND t+k BE SUCCESSIVE P-POINTS.
THEN Qt > 0, Qt+k > 0 => It+k-1 = 0 BY THEOREM.
I. E., t+k-1 IS AN R POINT. ALSO NOTE THAT
MORE R-POINTS POSSIBLE IF THERE ARE PERIODS
WITH NO DEMAND.
II) , WHICH
R P P R
CONTRADICTS WITH (I). NOTE: NO P-POINT CAN ONLY
OCCUR IF TWO SUCCESSIVE R-POINTS ARE
SEPARATED BY ZERO DEMAND.

EXERCISE: CONSTRUCT SITUATIONS

P R R P R R
FOR A COMPLETE SOLUTION, WE NEED TO KNOW
- THAT K IS AN R-POINT
- OPTIMAL SOLUTION FOR PERIOD K+1 TO T.

BOTH OF THESE ARE EASILY TAKEN CARE OF.

NOTES I) 0 AND T ARE R-POINTS


II) EASY TO OBTAIN AN OPTIMAL SOLUTION
BETWEEN TWO SUCCESSIVE R-POINTS.

R R
III) SIMPLIFY THE COST FUNCTION Qt = dt ,
AND THUS THE PORTION OF COSTS GIVEN BY
1
('SUNK' COST) = t h d t IS CONSTANT.
c Q
2
REDUCED COST C(T) = At + h It
FURTHER, LET t=12 AND t=9 BE THE NEXT TO THE LAST
R~POINT. THEN THE COST C(9,12).

-D10
GENERAL FORNULA
n
C ( j, n) A h (k j 1)d k
k j 1

WHERE j AND n ARE TWO SUCCESSIVE R-POINTS.

E.G. C(8,12) = A + h(d10 + 2d11+ 3d12)


C(8,13) = C(8,12) + h (4d13)
C(T) = j MIN
0,1...( T 1)
C j (T )
Cj(T) = OPTIMAL T PERIOD COST IF j IS PERCURSOR
R-POINT OF T
= C(j) + C(j,T)
OPT. COST FROM COST FROM j TO T
t =0 TO t =j WHERE j PRECEDES
(IMMEDIATELY) T.
NOTE ALSO

CT-1(T) = C(T-1) + A
Cj(T) = Cj(T-1) + (T-j-1) h dT, 1j<T1
II II II
C(j) + C(j,T) = C(j) + C(j,T-1) + (T-j-1)hdt
ALGORITHM
LET j*(T) BE IMMEDIATELY PRECEDING R-POINT
FOR THE OPTIMAL SOLUTION TO THE T-PERIOD
PROBLEM. LET f*(T) BE THE FIRST
1) SET T = 0, C(0) = 0, j*(0) = -1, f*(0) = 0
(UNDEFINED)
2) SAVE C(T), j*(T), f*(T), Cj(T), 0 j T -1
(UNDEFINED FIRST TIME)
3) INCREASE T BY 1
4) CT-1(T) = C(T-1) + A
Cj(T) = Cj (T-1) + (T-j-1)hdT , 0 j < T -1
(DON'T USE FIRST TIME)
5) C (T ) j MIN
0,1...( T 1)
[C j (T )]

6) SAVE THE LARGEST VALUE OF j* WHICH MINIMIZES


AS j*(T)

7) IF j*(T) = 0, THEN f*(T) = T


IF j*(T) > 0, THEN f*(T) = f*(j*(T))

8) GO TO STEP 2.
REMARKS

I) T = 0 IS JUST INITIALIZATION. WE DO NOT


BOTHER TO WRITE IT DOWN.

II) BOTTOM ELEMENT IN EACH COLUMN IS ALWAYS


OBTAINED BY ADDING A TO THE CIRCLED ITEM IN THE
COLUMN TO THE LEFT.
III) REMAINING ITEM, WORKING UP THE COLUMN, ARE
OBTAINED BY ADDING hdT TO THE ITEM DIRECTLY TO
THE LEFT, NEXT ITEM ADDING 2hdT TO THE ITEM
DIRECTLY TO ITS LEFT, THEN 3hdT , 4hdT AND SO ON.
IV) f* GIVES US OUR FIRST DECISION:
PRODUCE ENOUGH TO RUN OUT BY THE
END OF f*.

V) WE WILL ALSO SHOW HOW TO AVOID COMPUTING


NUMBERS IN THE SHADED AREA.

VI) NOTE THAT ROW WHICH IS CIRCLED ALWAYS


INCREASES AS T INCREASES.
REGENERATION MONOTONICITY: j*(T) WITH T.
REGENERATION MONOTONICITY THEOREM:
FOR THE DYNAMIC LOT SIZE MODEL WITH
LINEAR COSTS
T1 > T2 j*(T1) j*(T2)
PROOF: RECALL THAT IN FORMING THE T + 1 COLUMN
WE ADD LARGER MULTIPLES OF dT+1 TO THE T-COLUMN
VALUES AS j DECREASES, THIS ALWAYS BENEFITS
LARGER j'S TO BE A MINIMUM, THUS
j*(T) = 11 AND j*(T+1) = 9 IS IMPOSSIBLE SINCE
C9(T) > C11(T) C9 (T+1) > C11 (T+1).
NOTE:
C9(T+1) = C9(T) + (T-9)hdT+1
C11(T+1) = C11(T) + (T-11)hdT+1
THUS, WE DON'T HAVE TO COMPLETE THE WHOLE
TABLE. WE START AT THE BOTTOM AND STOP
OPPOSITE TO THE CIRCLED ITEM IN THE PREVIOUS
COLUMN. NOTE THAT TOTAL ENTRIES IN THE TABLE
ARE 1/2(T)(T) = 1/2T2. IT NOW REDUCES TO kT WHERE k
IS AVERAGE NUMBER OF ENTRIES IN A COLUMN.
DECISION HORIZON COROLLARY:

LOOK AT THE TABLE FOR T = 7 COLUMN j*(7) = 5.


BY COROLLARY, AT LEAST ONE OPTIMAL SOLUTION
FOR T 8-PROBLEMS WILL HAVE AN R-POINT IN [5,6].
I. E., EITHER THE 5 OR 6-PERIOD PROBLEMS WILL
ALWAYS BE A PART OF ANY LONGER PROBLEM. SINCE
FOR THESE PROBLEMS, f*(5) = 5, f*(6) = 6. THUS, AFTER
7-PERIODS, IT WILL BE OPTIMAL TO PRODUCE 13 OR 17
IN THE FIRST PERIOD. LOOK AT T=11. j*(11) = 6
[6,7,8,9,10] IS AN R-SET FOR T 12. THUS WE STILL KNOW
f* = 5 OR f* = 6. NOW LOOK AT T = 15, j*(15) = 12.
THUS [12,13,14] IS AN R-SET FOR T 16,
BUT ALL THREE PROBLEMS (I.E. 12, 13, 14 PERIOD)
HAVE f* = 5 PRODUCING EXACTLY 13 IN PERIOD 1. THUS
WE HAVE A FORECAST HORIZON OF 15 AND DECISION
HORIZON OF 5. WE NOW HAVE FOR A T-PERIOD
PROBLEM, {j*(T), j*(T)+1, ..., (T-1)} IS AN R-SET. IF j*(T) 0,
THEN
A) f*(j*(T)) = f*(j*(T)+1) ... = f*(T-1) T IS A FORECAST
HORIZON AND f* IS A DECISION HORIZON.

B) IN GENERAL, THE MAXIMUM AND MINIMUM VALUES OF


f* GIVES BOUNDS ON THE INITIAL DECISION FOR ANY
LONGER PROBLEM.
COROLLARY: IF j*(T) IS THE NEXT TO THE LAST
R-POINT IN A T -PROBLEM, THEN { j* (T), j*(T) + 1...,
(T -1) } IS GUARANTEED TO CONTAIN AN R-POINT
OF EVERY (T+K)-PROBLEM FOR K 1 (FOR AT LEAST
ONE OPTIMAL SOLUTION).

(DEFINITION: A GROUP OF PERIODS GUARANTEED TO


CONTAIN AN R-POINT FOR ANY LONGER PROBLEM WILL
BE TERMED AN R-SET.)
PROOF:
IF j*(20) = 15 THEN {15, 16, 17, 18, 19} IS .AN R-SET.
CONSIDER T + K = 28. BY THEOREM, j*(28) [15,27].
IF j*(28) [15,19]. WE ARE DONE. IF NOT, SUPPOSE
j*(28) = 24, THUS OPTIMAL SOLUTION OF 24-PROBLEM
IS A PART OF THE OPTIMAL SOLUTION TO THE
28-PROBLEM. BY THEOREM, j*(24) [15,23]. LET
j*(24) = 21. THEN j*(21) [15,20]. IF j*(21) [15,19].
WE ARE DONE. IF NOT, THEN j*(21) = 20. BUT WE KNOW
THAT j*(20) = 15. THIS COMPLETES THE PROOF.
TV SPEAKER PROBLEM SOLUTION
d1 = 3, d2 = 2, d3 = 3, d4 = 2, A = 2, h =0.2
T = 0, C(0) = 0, j*(0) = -1, f*(0) = 0
T = 1 C(1) = MIN j 0
C j (1) = C0(1) = C(0) + A = 2
j*(1) = 0, f*(1) = 1

T = 2, C(2) = MIN
j 0,1
C j (2) = 2.4, j*(2) = 0, f*(2) = 2
C0(2) = C0(1) + (2-0-1)hd2 = 2 + 1(.2)2 = 2.4*
C1(2) = C(1) + A = 2 + 2 = 4

T = 3, C(3) = MIN
j 0,1, 2
C j (3) = 3.6, j*(3) = 0, f*(3) = 3
C0(3) = C0 (2) + (3-0-1)hd3 = 2.4 + 2(.2)3 = 3.6*
C1(3) = C1(2) + 1(.2)3 = 4 + .6 = 4.6
C2 (3) = C(2) + A = 2.4 + 2 =4.4
T = 4, C(4) = jMIN
0,1, 2,3
C j (4)
C0(4) = C0 (3) + (4-0-1)hd2 = 3.6 + 3(.2)2 = 4.8*
C1(4) = C1 (3) + 2(.2)2 = 4.6 + .8 = 5.4
C2(4) = C2 (3) + 1(.2)2 = 4.4 + .4 = 4.8*
C3(4) = C(3) + A = 3.6 + 2 = 5.6.

NOTE A TIE IN j* SO WE CHOOSE j*(4) = 0 f*(4) = 4


IF WE CHOOSE j* = 2, THEN j*(4) = 2,
f*(4) = f*(2) = 2.
3.3.8 The Silver-Meal Heuristic
k k 1
A h ( j 1)d j A h ( j 1)d j
j 2

j 2 ,2 k n, (3.24)
k k 1

n1 n
A h ( j 1)d j A h ( j 1)d j
j 2

j 2 . (3.25)
n 1 n
Example 3.7
A = $300 and h = $1 per unit and period.
Table 3.3 Demands in Example 3.7.
Period t 1 2 3 4 5 6 7 8 9 10
dt 50 60 90 70 30 100 60 40 80 20

If the delivery in period 1 covers only the


demand in period 1, the ONLY cost for this
period is A = 300. Then,
2 periods (300 + 60)/2 = 180 < 300,
3 periods (300 + 60 + 2 90)/3 = 180 180,
4 periods (300 + 60 + 2 90 + 3 70)/4 = 187.5 > 180
The same procedure is now applied with
period 4 as the first period.
2 periods (300 + 30)/2 = 165 < 300,
3 periods (300 + 30 + 2 100)/3 = 176.67 > 165

Starting with period 6 as the first period


2 periods (300 + 60)/2 = 180 < 300,
3 periods (300 + 60 + 2 40)/3 = 146.67 180,
4 periods (300 + 60 + 2 40 + 3 80)/4 = 170 > 146.67

Starting with period 9 as the first period


2 periods (300 + 20)/2 = 160 < 300.
Table 3.4 Solution with the Silver- Meal
Heuristic.

Period t 1 2 3 4 5 6 7 8 9 10
Quantity 200 100 200 100

In most situations the cost increase is ONLY


about 1-2 %

The relative error can be arbitrarily large


3.3.9 A heuristic that balances
holding and ordering costs
- Classical economic order quantity formula
Optimal solution
- Holding costs = ordering costs
First delivery quantity covers n periods, where n
is determined by
n n 1
h ( j 1)d j A h ( j 1)d j , (3.26)
j 2 j 2

The relative error is bounded by 100 percent


Example 3.8
A = $300 and h = $1 per unit and period.
Demand table

Period t 1 2 3 4 5 6 7 8 9 10
dt 50 60 90 70 30 100 60 40 80 20

Starting with period 2

2 periods 60 300,

3 periods 60 + 2 90 = 240 300,

4 periods 60 + 2 90 + 3 70 = 450 > 300


period 4 as the first period.

2 periods 30 300,

3 periods 30 + 2 100 = 230 300,

4 periods 30 + 2 100 + 3 60 = 410 > 300

period 7 as the first period


2 periods 40 300,

3 periods 40 + 2 80 = 200 300,

4 periods 40 + 2 80 + 3 20 = 260 30.

Table 3.5 Solution with the heuristic.

Period t 1 2 3 4 5 6 7 8 9 10
Quantity 200 200 200
AVERAGE DEMAND: AVERAGE DEMAND FOR 10
PERIODS IS 60. IF STATIONARY, EOQ MODEL WOULD
IMPLY T* = 2 A / dh 10 . ROUNDING THIS TO 3
YIELD THE PLAN (1-3) (4-6) (7-9)(10).
REMARKS

I) HEURISTICS SEEM TO WORK WELL;


SUGGESTS THAT CONCLUSIONS OF STATIONARY
DEMAND MODELS MAY BE FAIRLY WELL APPLIED FOR
THE NONSTATIONARY CASE.

II) IF PRODUCTION COSTS ARE NON-STATIONARY THEN


ALL THE RESULTS GO THRU PROVIDED
ct + ht > ct+1
(I.E., IGNORING SET UP COSTS, IT IS NEVER CHEAPER
TO PRODUCE AND HOLD.) THIS PRECLUDES THE
SPECULATIVE MOTIVE.
3.4 Safety stocks and reorder
points
3.4.1 Demand processes
Cumulative demand: nondecreasing,
stationary, independent increments
Compound Poisson Process: probability for k
customers in a time interval of length t is
( t ) k t (3.27)
P(k ) e , k 0,1,2......
k!
Both the average and the variance are equal to
t.
The size of a customer demand is
independent of the distribution of the
customer arrivals.
fj=probability of demand size j (j = 1, 2, ... ),
fj =1.
This assumes no demands of size zero
without loss of generality (division by 1-f0).
f jk =probability that k customers give the total
demand j; f kj 0, j k.
D(t)=stochastic demand in the time interval of
length t.
f 1 j f j , and the j-fold convolution
0
0
, f 1

of fj:
j 1
f
j
k
fi
i k 1
k 1
f j i , k =2, 3, 4,....; j k. (3.28)

Note that i goes from k-1 to j-1,since for each


customer minimum demand is 1. Using (3.27)
(t ) k t k

P( D(t ) j ) e fj
k 0 k! . (3.29)
f i k 1 f j1 Prob of k-1 customers with total
demand i and one with the demand j-i
=average demand per unit of time,

=standard deviation of the demand per unit


of time

K =the stochastic number of customers during


one time unit

J =the stochastic demand size of a single


customer

Z = the stochastic demand during the time unit


considered.
Recall that E(K) = Var(K) =

E (Z ) E {E (Z K )} E {K E ( J )} E ( K ) E ( J ) E ( J ) jf j .(3.30)
j 1

To determine
E ( Z 2 ) E {E ( Z 2 K )} E {Var ( Z K ) ( E ( Z K )) 2 } E {KVar ( J ) K 2 ( E ( J )) 2 }.
(3.31)
Using E ( K 2 ) Var ( K ) ( E ( K )) 2 2 ,
2 E ( Z 2 ) 2 E {K Var ( J ) K 2 ( E ( J )) 2 } 2

Var ( J ) ( 2 )( E ( J )) 2 2 Var ( J ) ( E ( J )) 2

E ( J ) j 2 f j
2

j 1
(3.32)

Items with relatively low demand, use this


Poisson demand model in practice.
Items with higher demand, use a
continuous distribution.
If the time period is long enough, use normal
distribution.
Standardized normal distribution has the density
x2
1
( x) e 2
(3.33)
2
and the distribution function,
x u2
1
( x )
2
e 2
du (3.34)
For values of >0 and , the density is
(1 / ) (( x ) / ) ,the distribution function is(( x ) / ) .
Note: ' ( x) x ( x) from (3.33).
Note: Normal distribution can give negative
demand with a small probability.
3.4.2 Continuous review (R, Q)
policy - inventory level distribution
IP=inventory position.

Order Q or nQ immediately when IP R.


Thus, in steady state, R + 1 IP R + Q
Proposition 3.1
In steady state, the inventory position is uniformly
distributed on the integers R + 1, R + 2, ......,
R + Q.
Markov Chain:
Irreducible: all states communicate;
j transient: finite number of transitions to j;
j recurrent: infinite number of transitions to j;
Null recurrent: expected time to j is ;
Positive recurrent: expected time to j is finite;
Aperiodic: Period= 1;
Ergodic = aperiodic and positive recurrent;
unique steady state distribution with j > 0
Proof

Let pi,j = the probability for a jump from R + i to


R + j.
Markov chain: irreducible and ergodic. Thus, it
has a unique steady state distribution. Sufficient
to show that the uniform distribution is a steady
state distribution.
Uniform P(R i) 1 ,
Q
Q 1 1 Q
P( R j ) pi , j , j = 1, 2, ..., Q pi , j 1
i 1 Q Q i 1

(3.35)
But Qj1 pi , j 1 for a Markov chain. Given
demand size k, pij(D=k)=0 or 1, and for a
given j it is one for exactly one i.
So, i1 pij ( D k ) 1. Then,
Q

Q Q
pi , j pij ( D k ) P( D k )
i 1 i 1 k
Q
pij ( D k ) P( D k )
k i 1
Q
P( D k ) pij ( D k ) P( D k ) 1
k i 1 k
. (3.36)
With normally distributed demand, the
continuous inventory position is uniformly
distributed on the interval [R, R + Q], if we can
ignore the possibilities of negative demand.
L=lead time (constant)
IL=inventory level
D(t, t + ) = D( ) =stochastic demand in the
interval ( t, t + ].
Consider that the system has reached a steady
state by time t .
IL(t + L) = IP(t) - D(t, t + L). (3.37)
IP(t) uniform distribution on (R+1,R+Q)
IL(t+L) IP(t) R+Q
Since t is arbitrary, so is t+L. So we obtain the
steady state distribution of IL.
IL=j , IP(t)=k
Need to consider k j
IL(t+L) = IP(t)-D(t,t+L) =k-(k-j) =j
Consider compound Poisson demand
1 R Q
P(IL j) P(D(L) k j) j R Q (3.38)
Q k max{R 1, j}

Translation from R=r to R=0


1 r Q
P(IL j R r ) P(D(L) k j)
Q k max{ r 1, j}

1 Q
P(D(L) k ( j r )) P(IL j r R 0).
Q k max{ 1, j r}
(3.39)
In the special case of an S policy,
R = S - 1 and Q = 1 and (3.38) can be
simplified to
P(IL j) P(D(L) S j) jS (3.40)

Note: The steady state is S with Prob 1.


Normally distributed demand
IP uniformly distributed on [R, R+Q]; density 1/Q

= L = the average of the lead-time demand,

= L1/2 = the standard deviation of the lead-


time demand,
f(x) = the density of the inventory level in steady
state,
F(x)= the distribution function of the inventory
level in steady state: IP(t)=u, D(L) u-x
1 R Q u x
F( x ) P(IL x ) 1 du
Q R (3.41)
Loss function G(x):

G( x) (v x) (v)dv
x

G(x) (v)dv ( x) 1
x
, (3.43)

which means that G(x) is decreasing and that


G(x) is convex. See Figure 3.9.
G(x) given in Table in Appendix 2.
G(x)

0
-3.5 -2.5 -1.5 -0.5 0.5 1.5 2.5 3.5

Figure 3.9 The loss function G(x).


Using (3.43) to reformulate (3.41)
1 R Q u x R x R Q x
F(x ) G du G G
Q R Q
(3.44)
From (3.41) the density is
1 R Q 1 u x 1 R Q x R x
f (x) du
Q R Q

(3.45)
Example 3.9
=2, L=5. Continuous review (R,Q) policy

with R=9 and Q=5. =L=10. Applying (3.38)


1 14
10k j 10
P( IL j )
5 k max{ 10, j} (k j )!
e

For j =1,
1 14 10k 1 10
P( IL 1) e 0.106
5 k 10 (k 1)!
the normal approximation, = 10 and =101/2
10 x 1 x4
F ( x) G ( ) G( );
5 10 10 see (3.44)
It is reasonable to compare P(IL = j )
by F( j + 0.5) - F( j - 0.5)

Figure 3.10 Probability distributions in Example


3.9.
In case of continuous demand and
continuous review, order is triggered at t
when IP(t)=R. Thus, the average stock on
hand just before the order arrives at t+L is
denoted the safety stock, SS,

SS R R L. . (3.46)
Replace (3.44) by the equivalent expression
SS x SS Q x
F( x ) G G
Q . (3.47)
3.4.3 Service levels

S1=probability of no stockout per order cycle,


S2=fill rate- fraction of demand that can be
satisfied immediately from stock on hand,
S3=ready rate- fraction of time with positive
stock on hand=P(IL>0) or 1-F(0).
From a practical point of view it is usually
most important that the service level is
clearly defined and interpreted in the same
way throughout the company. A common
solution is to group the items in some way and
specify service levels for each group.

The choice of service level should be based on


customer expectations
3.4.4 Shortage costs

b1=shortage cost per unit and time unit,


b2=shortage cost per unit.
Shortage cost of type b1: spare parts
Shortage cost of type b2: overtime production
The optimal reorder point will increase with the
service level or the shortage cost used.
3.4.5 Determining the safety stock
for given S1

In the continuous demand case,


R SS
P( D( L) R) S1 (k )

(3.48)
k denotes the safety factor, and

SS k (3.49)
Finally we get the reorder point as R = SS + .
Table 3.6 illustrates how the safety
factor grows with service level S1.

Table 3.6 Safety factors for different values


of service level S1.
Service level S1 0.75 0.80 0.85 0.90 0.95 0.99

Safety factor k 0.67 0.84 1.04 1.28 1.64 2.33

Note: the safety factor is increasing rapidly


for large service levels.
3.4.6 Fill rate and ready rate
constraints

The ready rate:



S3 P( IL 0) P( IL j )
j 1 . (3.50)
The fill rate: Average filled/average demand

min( j, k ) f k P(IL j)
k 1 j1
S2

k fk
k 1 , (3.51)
For Poisson Demand f1=1, which implies S2=S3.
For continuous normally distributed demand,
S2 = S3 ,
R R Q
S3 1 F (0) 1 G G
Q
, (3.52)
S2 and S3 increase with R. S2 = S3 =0 for R -Q,
Since R+Q 0.
It is common to approximate (3.52) by
R
S3 1 G
Q , (3.53)
It underestimates S3 . Works well for large values
of Q.
Example 3.10
Consider pure Poisson demand with = 2,
L = 5, continuous review (R, Q) policy with
R = 9 and Q = 5. We want to determine the fill
rate S3 , which in this case are equal because we
have pure Poisson demand. Applying (3.38) and
(3.50) we obtain
14 1 14 10 k j 10
S 2 S3 P(IL 0) e 0.679
j1 5 k max{ 10, j} (k j)!
10 1 4
S 2 S3 1 F(0) 1 G G

0.666

5 10 10
R 1
S1 0.376

10
3.4.7 Fill rate - a different approach
Consider a batch Q that is ordered when the
inventory position is R.
The considered batch will be consumed by the
demand for Q units following after these first R
units. When the batch arrives in stock, a part of
this demand may already occurred, i.e., there are
backorders waiting for the batch.

Let B= backordered quantity that will be covered


by the batch.
Note that we are only considering the
backorders that are covered by the batch.
Therefore, we must have 0 B Q. If the
backorders exceed Q when the batch arrives in
stock, the quantity exceeding Q is covered by
future batches.
S 2 S3 1 E(B) / Q . (3.54)
u R means B = 0,
R < u R + Q means B = u - R,
R + Q < u means B = Q.
R Q 1 u 1 u
E(B) (u R ) du Q du
R R Q

1 u 1 u
(u R ) du ( u R Q ) du
R R Q

R R Q

G
G ,
(3.55)
3.4.8 Shortage cost per unit and
time unit
We optimize the reorder point by balancing
backorder costs against holding costs
(x)+ = max(x, 0),
(x)- = max(-x, 0).
Using x+- x- = x,
the total cost rate =h IL+ + b1IL
= hIL + (h + b1)(IL).
For the compound Poisson demand, we can
use (3.38) to obtain the average costs per
time unit,
C hE (IL) (h b1 ) E ( IL )
Q 1 1
h( R ) (h b1 ) P( IL j )
2 j (3.56)
Where E(IL)=average inventory R+(Q+1)/2 minus
average lead time demand
1 1
jP ( IL j ) j[ P( IL j ) P( IL j 1)]

1 1
jP ( IL j ) jP( IL j 1)

1 1 1
jP ( IL j ) ( j 1)P( IL j 1) P( IL j 1)

1 2 1
jP ( IL j ) iP( IL i ) P( IL j 1)

1 1 1
jP ( IL j ) iP( IL i ) (1) P( IL 1) P( IL j 1)

1
P( IL 1) P( IL j 1)

2
P( IL 1) P( IL i )

1
P( IL j )

From (3.39), P(IL j R r) P(IL j 1 R r 1)
Thus,
Q 1 1
C( r ) h ( r ) (h b1 ) P(IL j 1 R r 1)
2 j

Q 1 0
h (r ) (h b1 ) P(IL j R r 1)
2 j

C(r 1) h (h b1 )P(IL 0 R r 1) , (3.57)


Note :
Q 1 1
C (r 1) h(r 1 ' ) (h b1 ) P( IL j | R r 1)
2
Or equivalently,
C(r + 1) - C(r)=h- (h + b1)[1- S3(r+1)]
= - b1 + (h + b1) S3(r+1) .
(3.58)
where S3(r + 1) = is the ready rate for R = r +1.
Since S3 increases with r, C(r+1)-C(r) increases
with r. Thus C(r) is convex in the reorder point.
To find the optimal R, start with R = - Q
and increase R by one unit at a time until
the costs are increasing.
If R* is the optimal reorder point
b1
S 3 (R ) S3 (R 1)
h b1 . (3.59)
In case of pure Poisson demand this is also
true for the fill rate.
For continuous normally distributed
demand 0
C h (R Q / 2 ) (h b1 ) F( x )dx

0 1 R Q u x

h (R Q / 2 ) (h b1 )
G dudx
Q R

R Q u
h (R Q / 2 ) (h b1 ) G du .
Q R
. (3.60)
Uses (3.44), y=-x/ , and G()=0.
dC R Q R
h (h b1 ) G G h (h b1 )(S 2 1)
dR Q

b1 (h b1 )S 2 b1 (h b1 )S 3 .
(3.61)
Uses S3=1-F(0), (3.52) and (3.44).
Chose R when Q is given. Newsboy chooses
R+Q.
Since dC/dR is increasing with R, C is a
convex function of R. The optimal R is
obtained for dC/dR = 0,
b1
S3
h b1 (3.62)
hS3
b1
1 S3
(3.63)

S3(R*)=P(IL>0|r=R*)=Prob(D(L)R*+Q)
(R*+Q)=b1/(h+b1)
Exercise: Use (3.42) and (3.43) to derive
1

H(x) G(v)dv (x 1)(1 (x)) x(x)
2
2

x (3.64)
Since H(x) = - G(x), H(x) is decreasing and
convex.
H(x)

0
-3.5 -2.5 -1.5 -0.5 0.5 1.5 2.5 3.5

Figure 3.11 The function H(x).


Using H(x), we can express the costs in
(3.60) as

2 R R Q
C h (R Q / 2 ) (h b1 ) H H
Q

(3.65)
3.4.12 The newsboy model
Single period with stochastic demand
Penalty costs associated with ordering both too
much and too little
x = stochastic period demand,
S = ordered amount,
Co = overage cost, i.e., the cost per unit for a
remaining inventory at the end of the period,
cu = underage cost, i.e., the cost per unit for
unsatisfied period demand.
For a given demand x the costs are

C(x) (S x)c o x S, (3.81)

C(x) (x S)c u x S, (3.82)


and the expected cost is
S 1 x 1 x
C c o (S x ) ( )dx c u ( x S) ( )dx
S

1 x
c 0 (S ) (c o c u ) ( x S) ( )dx
S

(3.83)
S
c 0 (S ) (c o c u ) G .

To find the optimal solution,
dC S
c o (c o c u )( ( ) 1) 0,
dS (3.84)
or,
S cu
( ) .
co cu
(3.85)
It is easy to see that C is convex, so (3.85)
provides the optimal solution.
Compare with (3.62).
Example 3.12
co = 25, cu = 50, = 300, = 60,
Applying (3.85) we obtain the optimal
solution from
S 300 50
( ) 0.6667,
60 25 50

implying that
S 300
0.43,
60
S 326
This problem concerns a single period.
The simple newsboy solution (3.85) is,
however, also common in multi-period
settings.
3.5 Joint optimization of order quantity and
reorder point
3.5.1 Discrete demand
= L
IL(t + L) = IP(t) - D(L). (3.98)
(S - 1, S) policy with S = k, i.e., R = k - 1 and Q = 1. Then IP(t)=k at
all time.
P(IL j) P(D(L) k j), j k.
(3.99)
Let g(k) be the average holding and shortage costs per time unit.
1

g(k) h E(IL) (h b1 ) E(IL ) h(k ) (h b1 ) P(IL j).
j

(3.100)
From section 3.4.8, g(k) is convex, g(k) |k| .
The inventory position is uniform on [R + 1, R + Q].
A 1 R Q
C(R, Q) g(k).
Q Q k R 1 (3.101)
C (Q) min C ( R, Q) C ( R * (Q), Q).
R

C (1) C ( R * (1),1) A min g ( R 1)


R

A min g (k )
k

A g (k *)
(3.102)
Q = 1 R*(1) = k*- 1.
A 1
C (2) min [ g ( R 1) g ( R 2)]
2 2 R
Since g(k) is convex, the second best k is k*-1 or k*+1.
Case (1): g(k*-1) g(k*+1)
then g(k*-1)+ g(k*) g(k*)+ g(k*+1)
if R*(2) = R*(1)-1= k*-2
g(R*(2) +1)+ g(R *(2) +2) = g(k*-1)+ g(k*)
if R*(2) = R*(1)= k*-1
g(R*(2) +1)+ g(R *(2) +2) = g(k*)+ g(k*+1)
Case (1): R*(2) = R*(1) -1
Case (2): g(k*-1) > g(k*+1) R*(2) = R*(1)
Then g(R*(1) ) g(R*(1)+2 ) R*(2) = R*(1)-1
Otherwise, R*(2) = R*(1)
Also,
A 1
C (2) min[ g ( R * (1)), g ( R * (1) 2)]
2 2
1
g ( R * (1) 1)
2
C (1) 1
min[ g ( R * (1)), g ( R * (1) 2)]
2 2
General Step:

R * (Q 1) R * (Q) 1 if g(R * (Q)) g (R * (Q) Q 1),

R * (Q 1) R * (Q) otherwise, (3.103)

C(Q 1) C(Q)
Q
Q 1
Q1 1 .
min g(R * (Q), g(R * (Q) Q 1)

(3.104)
C(Q + 1) C(Q) if and only if
min{g(R*(Q), g(R*(Q) + Q + 1} C(Q).
min{g(R*(Q), g(R*(Q) + Q + 1} is increasing with Q.
Let Q* be the smallest Q such that C(Q + 1) C(Q).
C(Q) C(Q*) for any Q Q*.
Q* and R*(Q*) provides the optimal solution.
3.5.2 An iterative technique: Continuous Case
By adding the average setup cost per time unit
to the cost expression in (3.65) we have
2 R R Q A
C(R , Q) h (R Q / 2 ) (h b1 )
H H .
Q Q
(3.107)
C R Q R
h (h b1 ) G G .
R Q
(3.108)
The resulting R decreases with Q.

C 2 R R Q Q R Q A
h / 2 (h b1 ) 2
H H G 2 .
Q Q Q

(3.109)
Start by determining the batch quantity
Q 2A / h
0
(3.110)
Determine reorder point R0 from (3.108) and C / R 0

2A 2(h b1 ) 2 R i R i Q i Q i R i Q i
Q i 1
H H G .
h h



(3.111)
Determine the reorder point R1 corresponding to Q1 from (3.108)

Qi+1 Qi Ri+1 Ri

C(Ri, Qi+1) - C* h(Qi+1 - Qi)


Example 3.14 Let A = 100, h = 2, and b1 = 20.
The demand per time unit is normally distributed with
= 50 and = 20. The lead-time L = 4. We obtain
= L= 200 and = L1/2 = 40.
Table 3.7 Results from the iterations for the data in Example
3.14.

0 1 2 3 4 5
Iteration i
Order quantity 70.71 87.91 93.08 94.59 95.03 95.15
Qi

Reorder point 224.76 219.60 218.16 217.75 217.63 217.60


Ri

Costs Ci 232.01 226.63 226.24 226.21 226.20 226.20


3.6 Optimality of ordering policies
The (R, Q) type or of the (s, S) type.
Without ordering costs and given a fixed batch
quantity, an (R, Q) policy is optimal.
(s, S) policies are not necessarily optimal for
problems with service constraints.