You are on page 1of 7

Int J Adv Manuf Technol

DOI 10.1007/s00170-012-4600-7

ORIGINAL ARTICLE

Dynamic production planning model: a dynamic


programming approach
Hamed Khaledi & Mohammad Reisi-Nafchi

Received: 25 August 2010 / Accepted: 30 October 2012


# Springer-Verlag London 2012

Abstract Production planning is one of the most important


issues in manufacturing. The nature of this problem is
complex and therefore researchers have studied it under
several and different assumptions. In this paper, applied
production planning problem is studied in a general manner
and it is assumed that there exists an optimal control problem that its production planning strategy is a digital controller and must be optimized. Since this is a random problem
because of stochastic values of sales in future, it is modeled
as a stochastic dynamic programming and then it is transformed to a linear programming model using successive
approximations. Then, it is proved that these two models
are equivalent. The main objective of the proposed model is
achieving optimal decisions using forecasting sales which
can be applied in master production schedule, manufacturing resource planning, capacity requirements planning, and
job shop/shop floor scheduling.
Keywords Production planning . Dynamic programming .
Linear programming . Optimal control

1 Introduction
Nowadays, because of the intensely competitive markets
and limited resources, many manufacturers have come to
appreciate the importance of production planning. So, designing the best strategy and policy in this scope is vital.
H. Khaledi
Department of Industrial Engineering,
Sharif University of Technology,
Tehran, Iran
M. Reisi-Nafchi (*)
Department of Industrial and Systems Engineering,
Isfahan University of Technology,
Isfahan, Iran
e-mail: mohamad.reisi@in.iut.ac.ir

Many researchers have studied the production planning in


various aspects during last decades.
Zwicker [1] studied inventory and production planning
models by system dynamics. Byrne and Bakir [2] presented
a hybrid approach which combines aspects of both analytic
methods like mathematical programming and simulation
which are two classes of the problem of multi-period
multi-product production planning. They demonstrated
how the analytical model working in cooperation with the
simulation model can give better results than either method
alone. Elhafsi [3] investigated a bi-level inventory system
which was subject to failures and repairs. The objective of
his study was to minimize the expected total cost so as to
determine the production plan for a single demand and finite
horizon. His production planning problem was composed of
the optimal number of lot sizes, the optimal size for each lot,
the optimal ordering schedule for unfinished items, and the
optimal due date to be assigned to the demand.
Yokoyama and Lewis [4] considered a production system
to produce products of multiple items by several machines
to meet time-varying stochastic demand. In their research,
planning horizon was finite and divided into discrete periods. Wang and Liang [5] presented an interactive possibilistic linear programming approach for solving the multiproduct aggregate production planning problem with imprecise forecast demand, related operating costs, and capacity.
Their proposed approach attempts to minimize total costs
with reference to inventory levels, labor levels, overtime,
and machine and warehouse capacity. Rein-qian [6] considered uncertain market and stochastic production environment and the influences of stochastic factors. In order to
deal with these items, he built a stochastic capacity expansion model which aims to minimize the production and
capacity expansion cost. Chazal et al. [7] studied the deterministic optimization problem of a profit-maximizing firm
which plans its sales/production schedule. In their research, they have assumed that the storage cost is convex

Int J Adv Manuf Technol

since this allows relating the optimal planning problem to


the study of a backward integro-differential equation,
from which they obtain explicit construction of the optimal plan.
Jamalnia and Soukhakian [8] developed a hybrid fuzzy
multi-objective nonlinear programming model with different goal priorities for aggregate production planning problem in a fuzzy environment. Their proposed model tries to
minimize total production costs, carrying and back ordering
costs and costs of changes in workforce level (quantitative
objectives) and maximize total customer satisfaction (qualitative objective) regarding the inventory level, demand,
labor level, machines capacity, and warehouse space. Pilar
et al. [9] outlined a stochastic dynamic programming approach that makes use of the scenario tree in a back-to-front
scheme and multi-period stochastic problems related to the
sub-trees whose root nodes are the starting nodes, and then
solved at each given stage along the time horizon. Huang
and Ahmed [10] presented an approach for studying the
planning horizon of capacity planning problems within the
framework of stochastic programming instead of Markov
decision. Firstly, they considered an infinite horizon stochastic capacity planning model involving a single resource,
linear cost structure, and discrete distributions of general
stochastic cost and demand data and then given sufficient
conditions for the existence of an optimal solution.
According to the above-mentioned research studies, production planning is studied in different assumptions and
various situations and this problem has been studied by
system dynamics and optimal control methods in special
cases. For more information, researchers are referred to the
book of Sethi and Thompson [11], which has studied the
optimal control theory and it has mentioned some good
application for it.
Unlike the mentioned papers, in this paper, the production planning problem is studied in a general and applied
manner. So, here, the objective is to achieve optimal decisions using forecasting sales which can be used in the
following cases:

MPS 0 Master production schedule


MRP II 0 Manufacturing resource planning
CRP 0 Capacity requirements planning
Job shop/shop floor scheduling

Therefore, this papers method could have many applications because of generality and could be applied in cases
where the production planning problem is defined. The rest
of papers structure is as follows:
In Section 2, the problem is described and its parameters
and variables are introduced. A classic model based on
linear programming for the problem is presented in Section 3, and in Section 4, a new dynamic programming model
is proposed and proved it is equivalent to the proposed

linear programming model. At the last section, conclusions


and future works are presented.

2 Problem description
In this paper, the problem objective is attempting to prepare
orders and requests of customers by considering setup costs,
tardiness, and products shortage costs. In addition, producing
customers necessities according to forecasts is another objective now and in future. Therefore, there exists an optimal
control problem that its production planning strategy is a
digital controller and must be optimized. Since this is a random problem, because of stochastic values of sales in future,
in this paper it is modeled as a stochastic dynamic programming and is transformed to a linear programming model using
successive approximations. To understand the problem better,
first, transformed model, i.e., linear programming model, is
presented and then original model, i.e., dynamic programming
and stages of its linearization are described. For linear
programming model, its constraints are introduced at first
and then its objective function is presented.
All necessary parameters and variables are defined as
follows:
i, j01, , n1, , n2, , n: All types of materials, items
and products which should be considered in production
planning
i, j01, , n1: Raw materials, which are purchased and
consumed but are not produced
i, j0n1 +1, , n2: Work in process materials and products which are produced and consumed
i, j0n2 +1, , n: Final products which are produced
and sold
m: Total number of producing machines which have
capacity constraints
k01, , m: Indicates the producing machine k
T: Total periods of production planning horizon
t00, 1, , T: Periods of production planning horizon;
t00: previous period, t01: first period
A: Total number of warehouses.
tIi: Inventory level of item i at the end of period t, so
matrix I is defined as below:
3
2
. . . . . . T I1
0 I1
1 I1
.. 7
6
7
6
...
6 0 I2
. . . . . . .. 7
7
6
.
6
. 7
6
. 7
I 6
7
6...
. . . t Ii . . . .. 7
7
6
7
6
6 ..
.. 7
.. . . . .
4 .
. 5
.
. .
I
.
.
.
.
.
.
.
.
.
0 n
T In
tPi:

Producing/purchasing level of item i in period t, so


matrix P is defined as below:

Int J Adv Manuf Technol


2

1 P1
6
6 P
61 2
6
6
6
P 6...
6
6
6 ..
6 .
4
1 Pn

2 P1

...

..
.

...

t Pi

...

..
.

..

... ...

T P1

..
.
..
.
..
.
..
.

3
7
7
7 2
3
7
Raw materials : Purchase
7
7 4
5
WIPs : Produce
7
7
End products : Produce
7
7
7
5

2 S1

...

6
..
6 S
.
...
61 2
6
6
S 6
6...
...
6
t Si
6 .
.. . .
4 ..
.
.
1 Sn . . . . . .

T S1

..
.
..
.
..
.
..
.

q11

6
6 q21
6
6
Q 6 ...
6
6 ..
4 .
qn;1

q12
..
.

...
...

qik . . .
.. . .
.
.
... ...

C11

6
6 C21
6
6
C 6...
6
6 ..
4 .
Cn1

C12
..
.

...
...

Cij . . .
.. . .
.
.
... ...

t t n;1

T Sn

3
2
q1;m
0
.. 7
6 ...
. 7
7 6
.. 7 6 qn ;1
6 1
. 7
7 6
.. 7 4 ...
. 5
0
q
nm

0
..
.

3
0
.. 7
. 7
0 7
7
.. 7
. 5

...
..
.
. . . qnm

3 2
C1n
0 C1n1
.. 7 6
..
. 7
.
7 60
.. 7 6
6
0
0

7
. 7 6
..
.. 7 6
40
.
. 5
0
0
Cnn

3
... 0
..
.. 7
.
. 7
7
. . . Cn2 n 7
7
..
.. ... 7
5
.
.
0 0 0

1 : if machine k produces item i in period t


0 : if machine k does not produce item i in period t 2 3
0
3
2
607
3
2
t b11
t b12 . . . t b1;m
7
6
0 0
0
6 .. 7
6
..
.. 7
.. ..
.. 7
.
6
7
7
6
6 t b21
.
...
. 7 6. .
. 7
6 7
6
7
7 6
607
6
.
.
6 1 . . . 0 7 t bk 6 7
tB 6 . . .
...
. 7
t bik
7
7 6
617
6
6 7
6 ..
..
..
.. 7 4 ... . . . ... 5
607
4 .
.
.
. 5
6. 7
0
.
.
.
1
4 .. 5
. . . t bnm
t bn;1 . . .
0

t t 11

6
6 t t 21
6
6
t 6 . . .
6 .
4 ..

7
7 2
3
7
Raw materials : Consumption
7
7 4
5
WIPs : Consumption
7
7
End products : Sales
7
7
5

t b ik

...

Cij: Consumption amount of item i for producing each


unit of item j, so matrix C is defined as below:
2

rn;1

...
...
..
.
...

3
2
r1;m
0
.. 7
.
7
6
. 7 6 ..
.. 7 6 rn ;1
6 1
. 7
7 6
.. 7 4 ...
. 5
0
rnm

0
..
.
...
..
.
...

3
0
.. 7
. 7
0 7
7
.. 7
. 5
rnm

t t 12

..
.

t t ik

..
.
...

...

t t 1m

..
.
..
.
..
.

...
...
..
.
...

3
7
7
7
7
7
7
5

t t nm

Hk: Available time on machine k in each period.


ik: Required time for changing from each item to item i
on machine k

qik: Capacity amount of machine k for producing item i


in each period, so matrix Q is defined as below:
2

rik
..
.

...

tt ik: Producing time of item i in machine k in period t,


so matrix tt is defined as below:

Consuming/sale amount of item i in period t, so


matrix S is defined as below:
1 S1

r12
..
.

6
6 r21
6
6
R 6...
6
6 ..
4 .

T Pn

tSi:

r11


t d ik

1 : if machine k setups for item i in period t


0 : if machine k doesnot setup for item i in period t

To understand better the above definitions, some parameters and variables are shown in Fig. 1 in a schematic
diagram.

3 Linear programming model


In this section, the linear programming model of the problem is presented. Firstly, constraints of the model are described and then its objective function is introduced.
Constraints of the model are as follow:
According to Eq. (1), t periods and n items of goods are
considered in such ways that initial inventories are assumed
to be in hand.

0 Ii

initial inventoriesproblem data i 1 . . . n1 . . . n2 . . . n

t Ii t1 Ii t Pi t Si

i 1 . . . n1 . . . n2 . . . n; t 1T

t Ii

 0production supplies

i 1 . . . n1 . . . n2 ; t 1 . . . T

t Ii

free in signpresales  net inventory

1
2
3

i n21 . . . n;t 1 . . . T

4
rik: Production rate of item i in machine k, so matrix R
is defined as below:

i2La t Ii

 Ua

a 1 . . . Awarehouse capacity

Int J Adv Manuf Technol


0B
0I
1B*, 1P*, 1S*
1I
2B , 2P , 2S
2I
---t=0 -------|---------- t=1 ---------|---------- t=2 ----------|

T-1I

TB , TP , TS
TI
|---------- t=T ----------|

Fig. 1 Schematic diagram of parameters and variables

Averageexpected valueof sale forecasting of each product in


each forward periods problem data
i n2 1 . . . n; t 1 . . . T

considered discount factor and a specific combinatorial


function as Eq. (13). The objective function of the model
is presented below:

t Si

6
Pn

t Si

jn1

  
Cij  t Pj

i 1 . . . n1 . . . n2 . . . n; t 1 . . . T

Min W

m
X

q ik  t b ik  q i 

k1

m
X

Z t I; t B;

in1 1

t b ik

Binary0=1

k 1...m
10

m
X

rik  t t ik  ri 

k1

m
X

m
n
X
  1 X
bi  t Ii 
lk
jt bik t1 bik j
2 k1
in2 1
in1 1
n
X

15

If producing with maximum capacity is not wanted, then


the costs of maintaining extra inventory could be added to
the right hand side of Eq. (14). This added item could be
linear or quadratic term like the following relation:

t t ik i n1 1 . . . n2 ; t 1 . . . T

k1

11
m
X

jt bik t1 bik j t bik XORt1 bik

Another way to consider machines constraints i.e. Eqs.


(9) and (10) is like follow constraints:
t Pi

t1 B

In Eq. (14), i is shortage and tardiness costs of product i


and t Ii is shortage amount of product i at the end of period t.
Also, lk is average cost of changing product (line) for
machine k, and the last term in Eq. (14), i.e., jt bik t1 bik j
is equal to:

k1

t b ik 1;

13

14
t b ik i n1 1 . . . n2 ; t 1 . . . T

9
n
P

t1 B

In this equation, is discount factor and Z(.) is the costs


of one period which can be as follow:

There are some machine constraints in our approach


which are introduced in relations (9) and (10).
tP i

t1  Z t I; t B;

t1

According to delivery of purchased raw material 8


problem datai 1 . . . n1 ; t 1 . . . T

t Pi

T
X

n
X

t t ik ik t dik  Hk ; 0  t ik  M :t dik ; t dik Binary0=1

k1

n
X
 
 2
g i  t Ii or
g i  t Ii

i1

16

i1

12
In the above relation, i is unit cost of inventory surplus
and t Ii is surplus amount of inventory of product i at the end
of period t.
Some other scenarios for changing production line could
be considered. These scenarios are presented as the
following:

Figure 2 shows the relationship between defined parameters and variables graphically. This figure demonstrates that in
each period there exist some inventories (I) and during the
period this inventory increases by producing products (P) and
at the end of the period some products may be sold (S) and the
rest amount of inventory will remain for the next period.
The objective function of the proposed model is to minimize the total cost of inventories according to the

&

If the cost of changing production line is related to the


first and last item and not to the items sequence, the Z

1P*

Fig. 2 Relationship between


defined parameters and
variables

4P
2P

1S*
1I

2S

0I

2I

4S
3P=0

4I

3S
3I=0

t=0

t=1

t=2

t=3

t=4

Int J Adv Manuf Technol

equation could be as Eq. (17), in which (lik +ljk)/2 is the


average cost of changing from item i to k and k to i.

Z t I; t B;

t1 B

n
X

bi 

in2 1


t Ii

m
n
X
1 X
lik  jt bik t1 bik j

2 k1 in 1

And another important note is that all of the above multiple


terms could be transformed to the linear relationship:


Equivalent
,
t e ijk t b jk  t1 b ik



If the cost of changing production line is related only to


the last item, Z equation will be as Eq. (18), where lik is
the average cost of changing from each item to item i
(this multiplier is equivalent to ik in alternative mode).

t f ijk t b ik

t1 B

n
X
in2 1

 
bi  t Ii

m
X

n
X

t1 B

n
X
in2 1

m X
n
  X
b i  t Ii
lik  1t bik  t1 bik

1t b ik  t1 b ik

If the cost of changing production line is related to the


first item and the second one and also their sequence, Z
equation will be as Eq. (20), where lik is the average cost
of changing from item i to item j.

n
X
in2 1

t1 B
m
n
n
X
X
 X
 
b i  t Ii
lijk  t bjk  t1 bik

Min W
(


T
X

at1

t1
n
X

bi 


t Ii

It should be mentioned that multiple operator in the


above equations is equivalent to the following logic
terms:
t b jk

t b ik

n
X

gi 

i1

t Ii

m X
n
X

n
X

lijk  t bjk  t1 bik

k1 in1 1 in1 1

27
(

Although in the case of considering quadratic terms like


)
n
n
  2 P
P
2
bi : t Ii ; g i : t Ii , the KKT conditions will
i1

be linear and therefore simplex method and branch and


bound could be used to solve the problem.

k1 in1 1 in1 1

20


 

b  t b jk  t g ijk
 t1 jk


2 t g ijk  1 t1 b jk  t b ik

Since the objective function must be minimized, in the


three above equations, i.e., (24), (25), and (26), the second
inequality is unnecessary because they will be satisfied
automatically.
At last, the most complete objective function for the
production planning problem is suggested as follow:

in2 1

Equivalent

26

in2 1

Z t I; t B;



 t bjk  t1
 b ik   t f ijk
2 t f ijk  1 t b jk  t1 b ik

k1 in1 1

19
&

likt bik 1t1 bik

If the cost of changing production line is related


only to the first item, Z equation will be as Eq.
(19), where lik is the average cost of changing from
item i to each item.
Z t I; t B;

Equivalent

k1 in1 1

18
&

 1t1 b ik

25
t g ijk

Z t I; t B;

24

17
&

 t1
 b ik   t e ijk 1
2 t e ijk  t b jk t1 b ik
tb
 jk



 t1 b ik t b jk and t1 b i k



 1t1 b ik t b jk and not

t1 b ik

21

4 Dynamic programming approach


In this section, the dynamic programming model is
presented for the mentioned problem. The state variables of this model are available inventory and current
item of machines, which are shown by vector I and
matrix B. Vector X is a random variable of possible
amount of sales, and f(X) is a joint probability distribution function (pdf) of possible sales.
The original stochastic dynamic programming model in the
infinite case (unlimited forward periods) is shown in Eq. (28).

22



1t b ik  t1 b ik not t b jk and t1 b ik

RRR

1;...;1

V I ;BMin
B0

23

...

fZ I P B 0 X ; B 0 ; B a:V I P B 0 X ; B 0 g : f X :d X

X0;...;0

28

Int J Adv Manuf Technol

Now, according to the previous section, Z is a linear


function of X, and because of being Markovian process of
8
>
<

V I ; B Min
Z I P B 0 
B0 >
:

ZZZ
1;...;1

Z
...

production planning process, integral (of expected value)


traverses from recursive relation of dynamic programming:

X :f X :d X ; B 0 ; B a:V I P B 0 

X0;...;0

ZZZ
1;...;1

Z
...

x0;...;0

X :f X :d X ; B 0

9
>
=
>
;

29

Besides, it is known that:


ZZZ
1;...;1

X : f X : d X EX !
X S Sn2 1 ; Sn2 2 ; . . . ; Sn

...

30

X 0;...;0

:
Where vector S is the expected values of forecasting
sales. Therefore, probability distributions of forecasting
sales are not important and it is enough to know their
average. Now, dynamic programming is as follows:

V1 T 1 I;T1 B

TB

35

31
V0  0

V I ; B lim VT I0 ; B0 lim Min W lim W


T !1

T !1

T!1

32

Proof If the number of periods is limited to T, and B* is


optimal decisions then:

Now, by substituting from the last to the first, we have:




 
VT 0 I;0 B Z 0 I P 1 B* 1 S ; 1 B* ; 0 B
 
 

a: Z 1 I P 2 B* 2 S ; 2 B* ;1 B*
 
 *


a: Z 2 I P 3 B 3 S ; 3 B* ; 2 B* a:f. . .g


Z 1 I ; 1 B* ; 0 B
 

 


a: Z 2 I ; 2 B* ; 1 B* a: Z 3 I ; 3 B* ; 2 B* a:f. . .g
T
X


at1  Z t I; t B* ; t1 B* W *

37

1B

33

VT1 1 I;1 B MinfZ 1 I P2 B2 S ; 2 B ; 1 B


2B

a:V
 T 21 I  P2 B2 S ; 2 B
 g
Z 1 I P 2 B* 2S ; 2B* ; 1 B

a:VT2 1 I P 2 B* 2 S ; 2 B*

36

t1

VT 0 I; 0 B MinfZ 0 I P1 B1 S ; 1 B ; 0 B
a:V
 T 1 0 I P1 B1 S ; 1 Bg
Z 0 I P 1 B* 1 S ; 1 B* ; 0 B 
a:VT 1 0 I P 1 B* 1 S ; 1 B*

T1 Bg

a:V
 0 T 1 I PT BT S ; T Bg 
Z T1 I P T B* T S; T B* ; T1B
a:V0 T 1 I P T B* T S ; T B*

V I ; B Min
fZ I P B 0  S ; B 0 ; B a:V I P B 0  S; B0 g
0

Theorem The objective function of dynamic programming


approach and linear programming model are equivalent,
like Eq. (32).

MinfZ T 1 I PT BT S ; T B ;

34

So, the optimal solution of the proposed linear programming in the previous section is exactly equal to the optimal
solution of original dynamic programming, which to solve
it, the problem should be solved for T01 and then the value
of T must increase successively until the solution of T+1
and T become equal. In this case, the optimal solution of
unlimited periods is obtained.

Int J Adv Manuf Technol

It could be mentioned that if the top management policy


is to use the maximum capacity of the equipment, then the
costs of maintaining extra inventory must be omitted from
the objective function. On the other hand, by decreasing the
time of changing production line (ik) and decreasing setup
costs (ijk), it is possible to go toward just-in-time production by considering maintaining extra inventory costs. In
fact, optimal strategy of the proposed dynamic programming is gotten solution as pulling according to sales value,
and if the strategy is to achieve agile manufacturing, then it
is equivalent to implementing KANBAN.

5 Conclusion
Production planning has become one of the most important
issues for manufacturers from several years ago. So, its related
problems have been studied by many researchers from different
point of views. In this paper, the problem is considered in a
general and applied manner and a new model is proposed to
achieve optimal decisions which are applicable in master production schedule, manufacturing resource planning, capacity
requirements planning, and job shop/shop floor scheduling. A
new stochastic dynamic programming model and its transformed
linear model are presented for the problem and then it is proved
that these two models are equivalent. For further studies, it is
suggested that these models are applied on real world data.
Besides, fuzzy concepts could be useful to model the problem.

References
1. Zwicker E (1980) System dynamics in inventory and production
planning. OR-Spektrum 1:143168
2. Byrne MD, Bakir MA (1999) Production planning using a
hybrid simulation-analytical approach. Int J Prod Econ
59:305311
3. Elhafsi M (2002) A production planning model for an unreliable
production facility: case of finite horizon and single demand. Eur J
Oper Res 143:94114
4. Yokoyama M, Lewis HW (2003) Optimization of the stochastic
dynamic production cycling problem by a genetic algorithm.
Comput Oper Res 30:18311849
5. Wang RC, Liang TF (2005) Applying possibilistic linear programming to aggregate production planning. Int J Prod Econ 98:
328341
6. Rein-qian Z (2007) Research on capacity planning under stochastic production and uncertain demand. Syst Eng Theory Pract 27
(1):5159
7. Chazal M, Jouini E, Tahraoui R (2008) Production planning and
inventories optimization: a backward approach in the convex storage cost case. Int J Math Econ 44:9971023
8. Jamalnia A, Soukhakian MA (2009) A hybrid fuzzy goal programming approach with different goal priorities to aggregate production planning. Comput Ind Eng 56:14741486
9. Pilar CM, Escudero LF, Monge JF (2009) On stochastic dynamic
programming for solving large-scale planning problems under
uncertainty. Comput Oper Res 36:24182428
10. Huang K, Ahmed S (2010) A stochastic programming approach
for planning horizons of infinite horizon capacity planning problems. Eur J Oper Res 200:7484
11. Sethi S, Thompson GL (2000) Optimal control theory: applications
to management science and economics, 2nd ed. Springer,
New York