Operations Research Letters 25 (1999) 81–88
www.elsevier.com/locate/orms
Lotsizing with backlogging and start-ups: the case of Wagner–Whitin costs Agostinho Agra a , Miguel Constantino b; ∗ a Centro
b Centro
de Investigacao ˜ Operacional, Faculdade de Ciencias ˆ da Universidade de Lisboa, 1749-016 Lisboa, Portugal de Investigacao ˜ Operacional e Departamento de EstatÃstica e Investigaca˜ o Operacional, Faculdade de Ciencias ˆ da Universidade de Lisboa, 1749-016 Lisboa, Portugal Received 1 November 1997; received in revised form 1 February 1999
Abstract We examine the uncapacitated single-item lotsizing problem with backlogging and start-up costs where Wagner–Whitin costs are assumed. We generalize some theoretical results obtained in [5] for the polyhedral description of the convex hull of feasible solutions for models that can be viewed as particular cases of the one treated in this paper (models without start-up costs and models where backlog is not allowed). In the presence of Wagner–Whitin costs (which satisfy pt + h˜t + − pt+1 ¿0; for 06t6n − 1; and pt+1 + h˜t − − pt ¿0, for 16t6n; where pt ; h˜t + and h˜t − are the unit production, storage and backlogging costs; in the case that unit production costs are constant over time, the Wagner–Whitin assumption corresponds to non-negative holding costs and backlogging costs) we present a linear extended formulation with O(n) variables and O(n2 ) constraints. By projection, we obtain a linear formulation in the original space of variables with an exponential number of constraints. c 1999 Elsevier Science B.V. All rights reserved.
Keywords: Lotsizing problem; Wagner–Whitin cost; Extended formulation; Polyhedral combinatoric; Mixed integer programming
1. Introduction It is well known that uncapacitated single-item lotsizing models can be eciently solved by polynomial dynamic programs, see [7,2]. However, the study of the convex hull of the feasible solutions is very useful because it allows the derivation of results, such as valid inequalities and linear formulations, which
∗ Corresponding author. Fax: + 351-1 750 0081. E-mail addresses:
[email protected] (A. Agra),
[email protected]. ul.pt (M. Constantino)
can be applied in more general models (see [6]). This study is the purpose of our work. In this problem, we consider a nite horizon divided into periods. For each period, the demand of an item is known in advance. This demand can be satis ed by production, by stock carried over from previous periods or by backlog. In the last case, the demand is satis ed from production in subsequent periods. We also consider two kinds of xed costs: the set-up cost that is incurred whenever the machine is able to produce, and the start-up cost which is incurred whenever the machine is set up for the item and was not set up for the item in the previous period.
c 1999 Elsevier Science B.V. All rights reserved. 0167-6377/99/$ - see front matter PII: S 0 1 6 7 - 6 3 7 7 ( 9 9 ) 0 0 0 3 0 - 9
82
A. Agra, M. Constantino / Operations Research Letters 25 (1999) 81–88
To model this problem, we de ne the following parameters: n is the number of periods considered, dt the demand in period t; 16t6n; ft the set-up cost in period t; 16t6n; gt the start-up cost in period t; 16t6n; pt the unit production cost in period t; 16t6n; h˜t + the unit holding cost in period t; 06t6n − 1; h˜t − the unit shortage cost in period t; 16t6n and y0 the initial state of the machine: y0 = 1 if the machine is set up, y0 = 0 otherwise, where dt ¿ 0; ft ¿0 and gt ¿0; for all t; and the following variables are de ned: xt is the quantity of item produced in period t; 16t6n; st the stock of item carried from period t to period t + 1; 06t6n − 1 and rt the backlog of item carried from period t + 1 to period t; 16t6n; 1 if the machine is set up in period t; 16t6n; yt = 0 otherwise; 1 if period t is the rst of a sequence of periods in 16t6n: zt = which the machine is set up; 0 otherwise: Ps Ps The notation dks = t=k dt and zks = t=k zt are also used. These quantities are equal to zero if s ¡ k. A standard formulation for the lotsizing model with backlogging and start-up costs follows: min
n X
ft yt +
t=1
+
n X t=1
n X
h˜t rt + −
t=1
s:t:
pt xt +
n−1 X
h˜t + st
xt 6d1n yt ; yt ¿zt ;
16t6n;
16t6n; (1) (2) (3)
zt ¿yt − yt−1 ;
16t6n;
(4)
xt ; st−1 ; rt ¿0;
16t6n;
(5)
yt ; zt ∈ {0; 1};
16t6n:
(6)
where sn = r0 = 0: This problem can be seen as a network- ow problem where each period corresponds
16t6n;
06t6n − 1:
Note that these new variables can be seen as “switch-o ” variables since they assume the value 1 (wt = 1) if a switch-o occurs in period t, i.e. the machine is set up in period t and is not set up in the following period (yt = 1 and yt+1 = 0): These variables can be useful in modelling situations where a xed cost is incurred every time the machine P is switched o. We will use the notation s wks = t=k wt (wks = 0 if s ¡ k): The production variables xt can be eliminated from the previous model using the ow conservation equation (1). Therefore, the new objective function is n X
ft yt +
n−1 X
(h˜t + + pt − pt+1 )st
t=0 n X t=1
gt zt
16t6n;
wt ¿0;
+
t=1
xt + st−1 + rt = dt + st + rt−1 ;
zt − wt−1 = yt − yt−1 ;
t=1
t=0 n X
to a node, considering two additional nodes, 0 and n + 1, which can be viewed as some initial and nal dummy periods (Fig. 1). Constraints (1) are the ow conservation constraints on each node. Constraints (2) ensure that if there is production in period t then the machine must be set up in that period. Constraints (3) and (4) are needed to de ne correctly the start-up variables. For simplicity, we will introduce slack variables w on constraints (4). Thus, the model can be rewritten replacing constraints (4) by the following two sets of constraints:
(h˜t − + pt+1 − pt )rt +
n X t=1
gt zt +
n X
t=1 Pn t=1
pt dt ;
pt dt is where p0 = pn+1 = 0: Note that the term a constant and so it can be dropped from the objective function. We will denote the new stock and backlog costs in ˜+ the following way: h+ t = ht +pt −pt+1 ; for 06t6n− − − ˜ 1; and ht = ht +pt+1 −pt ; for 16t6n; respectively. In this paper, we will omit all the proofs, which are presented in detail in Agra and Constantino [1]. They are similar to the ones presented by Pochet and Wolsey in [5] for the problem where start-up costs are not considered. In the above papers, the w variables are not used. Next we will consider the case of Wagner–Whitin costs.
A. Agra, M. Constantino / Operations Research Letters 25 (1999) 81–88
83
Fig. 1. Example of the network- ow problem for n = 5 periods.
2. The Wagner–Whitin costs case Deÿnition 2.1. A problem is said to have Wagner– Whitin costs if the cost coecients satisfy the following inequalities: h˜t + +pt −pt+1 ¿0; for t =0; : : : ; n−1; and h˜t − + pt+1 − pt ¿0; for t = 1; : : : ; n: Using the de nition, a problem has Wagner–Whitin costs if the new objective coecients of the stock and backlog variables are non-negative; this is h+ t ¿0; for ¿0; for 16t6n: 06t6n − 1; and h− t For problems with this kind of objective coecients, it is possible to establish conditions that are satis ed, at least, by one of the optimal solutions. It can be shown that there always exists an optimal solution satisfying the following properties (see Fig. 2): • the demand of a period is satis ed exclusively by production in that period, by stock or by backlog; • if the machine is set up in a given period, the demand of that period is satis ed by production in that period. The rst property follows from the fact that this uncapacitated single-item lotsizing problem can be represented as a minimum-concave-cost single-source network- ow problem. So, the form of the extreme points comes from the form of extreme ows in such network- ow problems. These extreme ows have at most one positive input at any node (see [8]). Thus, at most one of the variables si−1 ; ri ; xi can be positive. To describe these points, consider the set of production periods S1 ; S1 = {u1 ; : : : ; up }; the
Fig. 2. Example of an optimal solution for n = 8:
set of the set-up periods, S, which contains S1 and S2 ; S2 = S \ S1 is the set of set-up periods with no production; and periods 060 ¡ 1 ¡ · · · ¡ p 6n; with ui 6i ¡ ui+1 ; i = 0; : : : ; p (u0 = 0 and up+1 = n + 1); such that dui ;i is produced in period ui and di +1; ui+1 is produced in period ui+1 (0 ¡ i ¡ p): These extreme points are the vectors of the form: xui = di−1 +1;i ;
sui −1 = 0;
rui = 0;
y ui = 1
for i = 1; : : : ; p;
xj = 0;
yj = 1
yj = 0
for j ∈ {1; : : : ; n} \ S;
sj × rj = 0 zj = 1
for j = 1; : : : ; n − 1;
if j ∈ S and j − 1 6∈ S;
zj ∈ {0; 1} zj = 0
for j ∈ S2 and xj = 0;
if j ∈ S and j − 1 ∈ S;
if j 6∈ S:
The values of the variables s and r can be obtained by the ow conservation constraints (1). The second property is a consequence of the Wagner–Whitin costs. If the machine is set up in a given period then the lowest cost way to satisfy the demand of that period is by producing and avoiding the holding as well as backlogging costs in that
84
A. Agra, M. Constantino / Operations Research Letters 25 (1999) 81–88
period. This property determines that, with these costs, there exists an optimal solution with S2 = ∅: To model these solutions, we also de ne, for 16t6n; the binary variables t = 1 if demand in period t is satis ed by stock, and t = 1 if demand in period t is satis ed by backlog. Note that, from the second property, for these solutions yt = 1 if and only if the demand in period t is satis ed from production in that period. Since we have assumed that dt ¿ 0; for 16t6n; this implies that in all periods one of the three possible ways of satisfying the demand has to occur: stock, backlog or production (t + t + yt = 1): Next, we de ne the s (stock) and r (backlog) variables in terms of the new variables. Since we are assuming that the new coecients of s and r are non-negative (case of Wagner–Whitin costs), we are interested in modelling the solutions where these variables are minimal. To obtain these stock and backlog minimal solutions, we can de ne the s and r variables as st−1 =
n X
dk [k − wt; k−1 ]+ ;
16t6n;
k=t
rt =
t X
dk [ k − zk+1; t ]+ ;
16t6n;
k=1
where [x]+ = max{0; x}: Note that, for t6k; st−1 includes the demand of period k; (dk ); when k −wt −wt+1 −· · ·−wk−1 =1; and this can only occur when dk is satis ed by stock (k = 1) and the machine was not switched o from periods t to k −1 (wt =wt+1 =· · ·=wk−1 =0) and so there was no production from period t to period k: Thus, dk must have been produced before the beginning of period t which means that dk should be included in st−1 : For the rt variables, we have a similar situation. Thus, rt includes the demand in period k (k6t) when k = 1 and zk+1 = zk+2 = · · · = zt = 0: This means that rt includes dk if dk is satis ed from backlog and there were no start-ups in periods k + 1 to t; and so there was no production in periods k to t: The solutions described above can be de ned using the following set of constraints: t + t + yt = 1; t + wt ¿t+1 ;
16t6n; 16t6n;
(7) (8)
t+1 + zt+1 ¿ t ; st−1 =
n X
16t6n;
(9)
dk [k − wt; k−1 ]+ ;
16t6n;
(10)
k=t
rt =
t X
dk [ k − zk+1; t ]+ ;
16t6n;
(11)
k=1
yt ¿zt ;
16t6n;
(12)
zt − wt−1 = yt − yt−1 ;
16t6n;
(13)
t ; t ; yt ; zt ; wt−1 ¿0;
16t6n;
(14)
t ; t ; yt ; zt ∈ {0; 1};
16t6n:
(15)
Constraints (7) ensure that in each period the demand is satis ed exclusively by stock, backlog or production. Constraints (8) and (9) avoid cycles between two consecutive nodes. Constraints (8) determine that if dt+1 is satis ed by stock then either dt is also satis ed by stock or a switch-o occurs in period t: Constraints (9) are similar to (8), and determine that if the demand of a period t is satis ed by backlog, either the demand of period t + 1 is satis ed by backlog or a start-up occurs in period t + 1; which excludes the possibility of dt+1 being satis ed by stock. In the presence of equations (7), constraints (8) and (9) are equivalent. Therefore, we are going to use only constraints (9). To present (10) and (11) as linear equations, we also de ne the variables: 1 if demand of period k is satis ed by stock from 16t6k6n; kt−1 = period t − 1; 0 otherwise 1 if demand of period k is satis ed by backlog k 16k6t6n: t = from period t; 0 otherwise: The form of the optimal solutions can be modelled by the following mixed-integer program: min
n X t=1
ft yt +
n−1 X t=0
h+ t st +
n X t=1
h− t rt +
n X
gt zt ;
t=1
(16)
A. Agra, M. Constantino / Operations Research Letters 25 (1999) 81–88
s:t:
st−1 =
n X
dk kt−1 ;
16t6n;
(17)
k=t
rt =
t X
dk tk ;
16t6n;
(18)
k=1
t + t + yt = 1;
16t6n;
(19)
t+1 + zt+1 ¿ t ;
16t6n;
(20)
kt−1 ¿k − wt; k−1 ; tk ¿ k − zk+1; t ; yt ¿zt ;
16t6k6n; 16k6t6n;
16t6n;
zt − wt−1 = yt − yt−1 ;
(23) 16t6n;
(24)
t ; t ; yt ; zt ; kt−1 ; tk ∈ {0; 1}
(25) for all t and k: (26)
Note that constraints (19) and (25) ensure that yt 61; for 16t6n; and constraints (23) ensure that zt 61; for 16t6n: Theorem 2.1. The constraint matrix corresponding to the constraints (19)–(25) is totally unimodular. The proof of this theorem can be found in Agra and Constantino [1]. This theorem shows that the extended formulation (16) – (25) is exact for the problem. Since we have assumed that the coecients of r and s variables on the objective function are non-negative, we can replace constraints (17) and (18) in the previous formulation by st−1 ¿
n X
dk kt−1 ;
16t6n;
(27)
k=t
rt ¿
t X
dk tk ;
16t6n;
(Q)
t + t + yt = 1; t+1 + zt+1 ¿ t ; st−1 ¿
k X
16t6n;
(29)
16t6n;
di (i − wt; i−1 );
(30) 16t6k6n;
(31)
i=t
rt ¿
t X
di ( i − zi+1; t );
16k6t6n;
(32)
i=k
yt ¿zt ;
16t6n;
zt − wt−1 = yt − yt−1 ;
t ; t ; yt ; zt ; wt−1 ; st−1 ; rt ; kt−1 ; tk ¿0 for all t and k;
Proposition 2.1. Let P denote the polyhedron deÿned by (19)–(25), (27), (28). Projecting P onto the (s; r; y; z; w; ; ) space; we obtain
(21) (22)
85
(33) 16t6n;
t ; t ; yt ; zt ; wt−1 ; st−1 ; rt ¿0;
16t6n:
(34) (35)
It is important to observe that this formulation, valid only in the presence of Wagner–Whitin costs, has O(n) variables and O(n2 ) constraints; i.e. it is of the same order of the natural formulation. 2.1. Linear description of the optimal solutions in the natural space In this section, we generalize other results obtained by Pochet and Wolsey [5] to the problem with backlogging, where start-up costs are not considered. Projecting the polyhedron de ned by (Q) onto the original space of variables (space of variables (s; r; y; z; w)), we obtain a linear formulation with an exponential number of constraints. First, consider the polyhedron (Q0 ) de ned by (29), (31) – (34) yt ; zt ; wt−1 ; st ; rt ¿0; for all t: Polyhedron (Q0 ) diers from (Q) because it does not include constraints (30) and t ; t ¿0, for 16t6n. The following proposition (proved in [1]) ensures that the polyhedron (Q0 ) can be used instead of the polyhedron (Q) to obtain Proj (s; r; y; z; w) (Q):
(28)
Proposition 2.2. Proj (s; r; y; z; w) (Q)=Proj (s; r; y; z; w) (Q0 ):
respectively, because there always exists an optimal solution of the problem which satis es constraints (27) and (28) as equalities.
We denote Proj (s; r; y; z; w) (Q0 ) by R: By the Projection Theorem (see [4]), associating the dual variables l ; vtk and utk to the set of constraints
k=1
86
A. Agra, M. Constantino / Operations Research Letters 25 (1999) 81–88
(29), (31) and (32), respectively, R is represented by the points (s; r; y; z; w) that satisfy n X n X
vtk
k X
di wt; i−1 + st−1
n X t X
t X
utk
t=1 k=1
¿
n X
n X
di zi+1; t + rt
i di (1 − yi );
(36)
yt ¿zt ; 16t6n;
(37) 16t6n;
(38)
yt 61; 16t6n; 16t6n;
k=i n X
16i6n;
n X
ut1 ;
t=1
vik +
i−1 X
ui−1k =
vtn =
i =
n X
i−1 X
vti−1 +
t=1
k=1
(41)
n X
uti ;
26i6n;
t=i
unk ;
k=1 i X n X
vtk ;
16i6n;
t=1 k=i
di utk = di i ;
16i6n;
(42)
vtk ¿0;
16t6k6n;
(43)
utk ¿0;
16k6t6n:
(44)
From (41) and (42) comes di vtk −
n X i X
di utk = 0;
16i6n:
t=i k=1
t=1 k=i
Since di ¿ 0; for 16i6n; then di vtk −
t=1 k=i
⇔
v1k =
k=1
(40)
t=i k=1
n i X X
n X
n X
t=1 k=i
i X n X
26i6n:
for all extreme rays of the cone:
t=1
di vtk = di i ;
ui−1k = 0;
(36)–(40)
(39)
for all extreme rays of:
n X i X
i−1 X
vti−1
t=1
So, the polyhedron R can be de ned by the points (s; r; y; z; w) that satisfy
i=1
n i X X
i−1 X
uti −
k=1
i=k
st−1 ; rt ; yt ; zt ; wt−1 ¿0;
n X t=i
+
!
zt + wt−1 = yt − yt−1 ;
vik −
k=i
i=t
t=1 k=t
+
!
Subtracting constraint i − 1 from constraint i; for 26i6n; we have
n i X X t=1 k=i
i n X X
di utk = 0
t=i k=1
vtk −
i n X X t=i k=1
utk = 0;
16i6n:
vtk ¿0;
16t6k6n;
utk ¿0;
16k6t6n:
The constraints on variables (v; u) representing the previous cone can be seen as ow-conservation constraints of a complete digraph G = (V; A); without loops, where V = {1; : : : ; n + 1}; vtk is the ow in arc (t; k + 1) and utk is the ow in arc (t + 1; k) (see Fig. 3). It is well known that extreme ows correspond to ows on elementary cycles, see [3], so all extreme rays of the cone correspond to ows on elementary cycles in G: Now, we are at a position to establish an exact separation algorithm to decide whether a given point (s; r; y; z; w) is in Q or not, and if not, nd a valid inequality for Q that is violated. Given a non-negative point (s; r; y; z; w) satisfying 1¿yt ¿zt and zt −wt−1 = yt − yt−1 for all t; then (s; r; y; z; w) ∈= Q if and only if there exists a negative-weight cycle in G with
A. Agra, M. Constantino / Operations Research Letters 25 (1999) 81–88
87
Fig. 3. Graph G for n = 4.
arc weights: st−1 +
k X
d i yi +
i=t
rt +
t X
di zi+1; t ;
k X
di wt; i−1 −
k X
i=t
di ;
arc(t; k+1);
i=t
arc(t + 1; k):
i=k
To check whether there exists a negative-weight cycle in G or not, we can use the Floyd–Warshall algorithm which runs in O(n3 ). Example 2.1. Consider the cycle obtained by taking v12 = u22 = v24 = u44 = u31 = 1: The corresponding constraint is (s0 + d1 y1 + d2 y2 + d2 w1 − d12 ) + (r2 ) + (s1 + d2 y2 + d3 y3 + d4 y4 + d3 w2 + d4 w23 − d24 ) + (r4 ) + (r3 + d1 z23 + d2 z3 )¿0: This constraint can be written in the following equivalent way: s0 + s1 + r2 + r3 + r4 ¿d1 (1 − y1 − z2 − z3 ) + d2 (1 − y2 ) + d2 (1 − w1 − y2 − z3 ) + d3 (1 − w2 − y3 ) + d4 (1 − w2 − w3 − y4 ): Observe that d2 appears twice on the right-hand side of the previous inequality. This can be explained by the following facts: if there is no production in period 2 (y2 =0); d2 must be included either in s1 or in r2 ; and so, that quantity is added on the left-hand side. If there
is no production in periods 1, 2, 3 (w1 = y2 = z3 = 0); then d2 must be included either in s0 or in r3 which is also added on the left-hand side of the constraint. This example gives an idea of how constraints (36) can be rewritten in an equivalent way. By doing that, polyhedron R can be de ned by the points (s; r; y; z; w) that satisfy yt ¿zt ;
16t6n;
zt − wt−1 = yt − yt−1 ; yt 61;
16t6n;
st−1 ; rt ; yt ; zt ; wt−1 ¿0; X X sj + rj j∈L
16t6n; 16t6n;
j∈R
l X X
¿
dl (1 − wk(l; i); l−1 − yl − zl+1; k 0 (l; i) );
l : l ¿0 i=1
for all elementary cycles in G: Where L = {ki − 1: i = 1; : : : ; p} and R = {ki0 : i = 1; : : : ; q} with L ∩ R = ∅; k1 ¡ k2 ¡ · · · ¡ kp are the head nodes of the forward arcs in the cycle and k10 + 1 ¿ k20 + 1 ¿ · · · ¿ kq0 + 1 are the head nodes of the backward arcs in the cycle. The dual variable l (16l6n) represents the number of the forward arcs with head node t6l and destination node k ¿ l; i.e.,
l =
l X n X t=1 k=l
vtk =
l n X X t=l k=1
utk ;
16l6n:
88
A. Agra, M. Constantino / Operations Research Letters 25 (1999) 81–88
And, for 16l6n we have: k(l; i) as the ith largest ki among heads ki 6l; k 0 (l; i) as the ith smallest ki0 among heads ki0 ¿l: References [1] A. Agra, M. Constantino, Lotsizing with backlogging and start-ups: the case of Wagner–Whitin costs. Technical report, CIO, University of Lisbon, Portugal, 1997. Working paper 5=97. [2] A.W.J. Kolen, C.P.M. van Hoesel, A.P.M. Wagelmans, Economic lot-sizing: an O(n log n) algorithm that runs in linear time in Wagner–Whitin case, Oper. Res. 40 (Suppl 1) (1992) 145 –156.
[3] L.R. Ford Jr, D.R. Fulkerson, Flows in Networks, Princeton University Press, Princeton, NJ, 1962. [4] G.L. Nemhauser, L.A. Wolsey, Integer and Combinatorial Optimization, Wiley, New York, 1988. [5] Y. Pochet, L.A. Wolsey, Polyhedra for lot-sizing with Wagner– Whitin costs, Math. Programm. 67 (1994) 297–323. [6] Y. Pochet, L.A. Wolsey, Algorithms and reformulations for lot-sizing problems. in: L. Lovasz, W. Cook, P. Seymour (Eds.), Combinatorial Optimization, DIMACS Series in Discrete Mathematics and Computer Science, 1995, pp. 245 –294. [7] C.P.M. van Hoesel, Models and algorithms for single-item lot-sizing problem, Ph.D. Thesis, Erasmus University, Rotterdam, The Netherlands, 1991. [8] W.I. Zangwill, Minimum concave cost ows in certain networks, Manage. Sci. 14 (1968) 429– 450.