You are on page 1of 3

Operations Research Letters 36 (2008) 300302

www.elsevier.com/locate/orl

An algorithm for single-item economic lot-sizing problem with general


inventory cost, non-decreasing capacity, and non-increasing setup and
production cost
Shaoxiang Chen a , Yi Feng b, , Arun Kumar c , Bing Lin a
a Nanyang Business School, Nanyang Technological University, 50 Nanyang Avenue, Singapore 639798, Singapore
b School of Management, Zhejiang University, ZiJinGang Campus, Hangzhou 310058, China
c Center for Supply Chain Management, School of Mechanical & Aerospace Engineering, Nanyang Technological University, Singapore

Received 4 March 2007; accepted 20 September 2007


Available online 18 October 2007

Abstract
This paper considers an economic lot-sizing model with non-decreasing capacity constraint, non-increasing setup cost and production cost, and
a general inventory cost. We prove that when periodic starting inventory is not less than a certain critical value, it is optimal to produce nothing;
this critical value can be computed easily which results in a new effective algorithm.
c 2007 Elsevier B.V. All rights reserved.

Keywords: Production; Inventory; Dynamic programming; Algorithm; Algorithm complexity

1. Introduction
The single-item economic lot-sizing problem is classical
in the field of operations management. [1] and [4] prove
that even for numerous special cases, capacitated economic
lot-sizing problems are NP-hard. Based on Wagner and
Whitins fundamental work in [11], recent research has been
focusing on studying algorithm complexity for different model
variations [710]. The detailed literature review can be found
in [3,6].
This paper considers the model with non-increasing periodic
setup cost, non-decreasing periodic capacity constraint, nonincreasing production cost, and general inventory cost. A
direct dynamic programming algorithm with computational
is presented in [5], where N is the number
time of O(N 2 cd)
of planning periods, and c and d are the average capacity and
average demand over the N periods, respectively. [2] considers
a model similar to ours except that they assume both the
production cost and holding cost to be linear. [8] proposes an
to solve a capacitated economic lotalgorithm of O(N 2 q d)
sizing model whose production cost is piecewise linear, and
Corresponding author. Tel.: +86 136 3417 0258.

E-mail address: yifeng@zju.edu.cn (Y. Feng).


c 2007 Elsevier B.V. All rights reserved.
0167-6377/$ - see front matter
doi:10.1016/j.orl.2007.09.005

where q is the average number of pieces required to represent


the production cost function.
In this paper, we present a new pseudo-polynomial dynamic

programming algorithm with computational time of O(N 2 d)


for the model in which backlogging is not allowed. This
theoretical result can also be extended to the case that
backlogging is allowed, and the computational complexity for
the algorithm is nearly the same.
This paper is organized as follows: Section 2 describes
a basic model with necessary notations. In Section 3, a
central issue about the basic model is proposed and theoretical
results have been given. Section 4 is devoted to the study
of the dynamic programming algorithm and the analysis of
computational complexity. The model extension of allowing
backlogging is discussed in Section 5.
2. Model notation and description
The notation for the basic model is given below. Here, n is
an integer, such that 0 < n N :
N number of periods in the planning horizon.
cn production capacity, or limit on order size in period n,
a positive integer.

301

S. Chen et al. / Operations Research Letters 36 (2008) 300302

sn starting inventory level (on hand plus on order) prior


to production or placing any order in period n.
dn deterministic demand in period n.
K n (q) + pn (q) production or ordering cost for q units
(cn q 0), where K n (>0) is the setup cost in period n,
and (x) is the binary function {(x) = 1 for x > 0, and
0 for x 0}. pn (q) is the production cost of producing q
units in period n. pn (0) = 0, and pn (.) is continuous and nondecreasing in production quantity.
ln (.) the single periodic inventory holding and shortage
(if backlogging is allowed) cost function. ln (.) is continuous.
It is non-decreasing for the case without backlogging and nonincreasing when there is backlogging.
f n (s) the optimal cost function for the finite-period
horizon problem with the starting inventory level of s at period
n.
In order to analyze the complexity of problems and
algorithms, we assume that all ln (.) and pn (.) can be computed
in constant time.
A general capacitated lot-sizing model can be formulated as:
Minimize

N
X

(K n (qn ) + pn (qn ) + ln (sn ))

(1)

n=1

Subject to sn+1 = sn + qn dn ,
0 q n cn ,
s0 = s N +1 = 0,
sn 0.
Model (1) does not allow backlogging. The last constraint
should be removed if backlogging is allowed. The model can
also be expressed as the following dynamic programming.
f n (sn ) =

min {K n (qn ) + ln (sn ) + pn (qn )

qn [0,cn ]

+ f n+1 (sn + qn dn )}
f N (d N ) = 0,
f N (s) = K N + p N (d N s)
if d N c N s d N 1,
f N (s) = + if 0 s d N c N 1,
sn 0, 1 n < N .

(2)

3. Basic model and central issue


The basic model investigated in this section has the
following additional assumptions:
Assumption (a) Backlogging is not allowed,
Assumption (b) Setup cost is non-increasing, i.e., K 1 K 2
K N 1 K N 0,
Assumption (c) Capacity is non-decreasing, i.e., c1 c2
c N 1 c N ,
Assumption (d) pi (x) p j (x), 1 i j N , x is a
feasible value. All pi (x) functions are concave. For instance,
when learning occurs, producing the same amount of product
in a later period costs less, and in each period, the production
cost is concave.
In order to introduce the main result of this section, the
following definition is necessary.

Definition. n is the minimum non-negative starting inventory


of sn at period n such that a feasible schedule exists for the basic
model which is from period n to N .
By the preceding definition, and sn n+1 + dn cn , we
have:
n = max(n+1 + dn cn , 0),

N +1 = 0.

(3)

Proposition 1. If sn dn +n+1 , then it is optimal to produce


nothing in period n;
if sn < dn + n+1 , then n must be a production period.
Proof. The second part of this proposition is obvious.
If sn dn + n+1 , assume that qn > 0 units are produced
in period n, then a new production schedule can be obtained
by postponing the production of those units to the first periods
with available capacity, reaching the capacity limits of those
periods sequentially until all qn units have been allocated. The
fact that the initial inventory is larger than the threshold ensures
the feasibility of postponing production.
We now show that the newly derived schedule has a lower
cost.
Suppose that the qn > 0 units in period n are postponed
to the later periods of j < k < < l < m with the
top-up quantity of b j , bk , . . . , bl , bm respectively. Clearly, b j ,
bk , . . . , bl make the production in periods j, k, . . . , l up to their
full capacity. First, the inventory levels and hence inventory
costs will not be increased due to the production postponement.
Second, by Assumption (c) there will be at the most one
additional set-up needed under the new schedule; hence setup
cost will not be increased by Assumption (b). Third, because
of Assumptions (c) and (d), the additional production cost for
b j , bk , . . . , and bl in the respective periods j, k, . . . , l (all are
the last units within capacity) respectively will not be more
than the cost of producing the same amount in period n. By
Assumption (d), producing the additional bm in period m will
not be more than the cost of producing the first bm units
in period n. In summary, the total production cost will not be
increased. Thus, it is optimal not to produce in period n. 
4. Dynamic programming algorithm
Once Proposition 1 is established, a dynamic programming
algorithm for Model (2) becomes straightforward.
PN
Define Un = dn + n+1 , and Dk =
j=k d j , C k =
PN
j=k c j .
For a fixed period n, the set of feasible starting inventory is
{n , n +1, . . . , Un , Un +1, . . . , Dn }. By Proposition 1, for all
Dn sn Un , f n (.) can be computed in O(Dn Un ) time; for
Un > sn n , since the capacity is cn , f n (.) can be computed
in O((Un n )cn ) time. By the definition of (3), O(Dn
Un ) cannot be greater than O(Dn+1 ), and O((Un n )cn )
cannot be greater than O(cn2 ). Thus, the complete dynamic
for relatively large
programming algorithm requires O(N 2 d)
N (N c2 /d), where c and d are the average capacity and
average demand over the planning horizon, respectively.
The main result of this section can be summarized as the
following proposition.

302

S. Chen et al. / Operations Research Letters 36 (2008) 300302

Proposition 2. The economic lot-sizing problem of Model (2)


time for relatively large N (N
can be solved in O(N 2 d)
2
c /d).

O((C1 D1 )cn ). Thus, the complete dynamic programming


algorithm requires O(N 2 c(c d)). Therefore, the following
proposition can be established.

An algorithm exploiting the theoretical result in Proposition 1 can be implemented easily. The main loop of an example
is as follows.
Algorithm:
Initialize: f N (d N ) = 0; = max(d N c N , 0)
for s = up to d N 1 do f N (s) = K N +
p N (d N s)
for i = N 1 down to 1 do
for s = di + up to Di do f i (s) = li (s) +
f i+1 (s di )
for s = up to di + 1 do computing f i (s) by
generic iteration method (2)
update the value of with = max(0, +
di ci )

Proposition 4. When backlogging is allowed, the economic lotsizing problem of Model (2) can be solved in O(N 2 c(c d))
time.

5. Extensions
In this section, we consider the case where backlogging is
allowed and the starting inventory could be negative. Define
n as the minimum starting inventory at period n such that
a feasible schedule exists for periods from n to N . Clearly,
n = Dn Cn = n+1 + dn cn , N +1 = 0. By the definition
of n , and following the proof in Proposition 1, it is easy to
obtain the following proposition.
Proposition 3. If sn dn +n+1 , then it is optimal to produce
nothing in period n;
if sn < dn + n+1 , then n must be a production period.
Clearly, for a fixed period n, the set of feasible starting
inventory is {n , n + 1, . . . , Un , Un + 1, . . . , Dn }. By
Proposition 3, for Dn sn Un , f n (.) can be computed in
O(Dn Un ) time; for Un > sn n , f n (.) can be computed
in O((Un n )cn ) time. O(Dn Un ) cannot be greater
than O(Dn+1 ), and O((Un n )cn ) cannot be greater than

Acknowledgments
The authors wish to thank Dr. Sridhar Seshadri, the
Associate Editor and the referees for their constructive
comments that greatly improved the paper.
References
[1] G.R. Bitran, H.H. Yanasse, Computational complexity of the capacitated
lot size problem, Management Science 28 (1982) 11741186.
[2] C.S. Chung, C.H.M. Lin, An O(T 2 ) algorithm for the NI/G/NI/ND
capacitated lot size problem, Management Science 43 (3) (1988) 420426.
[3] A. Drexl, A. Kimms, Lot sizing and scheduling survey and extensions,
European Journal of Operational Research 99 (1997) 221235.
[4] M. Florian, M. Klein, Deterministic production planning with concave
costs and capacity constraints, Management Science 18 (1) (1971) 1220.
[5] M. Florian, J.K. Lenstra, A.H.G.R. Kan, Deterministic production
planning: Algorithms and complexity, Management Science 26 (7) (1980)
669679.
[6] B. Karimi, S.M.T.F. Ghomi, J.M. Wilson, The capacitated lot sizing
problem: A review of models and algorithms, Omega 31 (2003) 365378.
[7] C.Y. Lee, S. Cetinkaya, A.P.M. Wagelmans, A dynamic lot-sizing
model with demand time windows, Management Science 47 (10) (2001)
13841395.
[8] D.X. Shaw, A.P.M. Wagelmans, An algorithm for single-item capacitated
economic lot-sizing with piecewise linear production costs and general
holding costs, Management Science 44 (1998) 831838.
[9] S. Seshadri, Determination of aggregate preventive maintenance programs
using production schedules, Computers and Industrial Engineering 14 (2)
(1988) 193200.
[10] A.P.M. Wagelmans, C.P.M. Van Hoesel, A.W.J. Kolen, Economic
lot-sizing: An O(n log n) algorithm that runs in linear time in the
WagnerWhitin case, Operations Research 14 (1992) S145156.
[11] H.M. Wagner, T.M. Whitin, Dynamic version of the economic lot size
model, Management Science 5 (1958) 8996.

You might also like