Polynomial Time Algorithms for Stochastic Uncapacitated Lot-Sizing Problems

Size: px
Start display at page:

Download "Polynomial Time Algorithms for Stochastic Uncapacitated Lot-Sizing Problems"

Transcription

1 Polynomial Time Algorithms for Stochastic Uncapacitated Lot-Sizing Problems Yongpei Guan School of Industrial Engineering, University of Oklahoma, Norman, OK 73019, U.S.A, Andrew J. Miller Department of Industrial and Systems Engineering, University of Wisconsin, Madison, WI 53706, U.S.A, Submitted: June 2006; Revised: January 2007 and June 2007 Abstract In 1958, Wagner and Whitin published a seminal paper on the deterministic uncapacitated lot-sizing problem, a fundamental model that is embedded in many practical production planning problems. In this paper we consider a basic version of this model in which demands (and other problem parameters) are stochastic: the stochastic uncapacitated lot-sizing problem (SULS). We define the production path property of an optimal solution for our model and use this property to develop a backward dynamic programming recursion. This approach allows us to show that the value function is piecewise linear and right continuous. We then use these results to show that a full characterization of the optimal value function can be obtained by a dynamic programming algorithm in polynomial time for the case that each non-leaf node contains at least two children. Moreover, we show that our approach leads to a polynomial time algorithm to obtain an optimal solution to any instance of SULS, regardless of the structure of the scenario tree. We also show that the value function for the problem without setup costs is continuous, piecewise linear, and convex, and therefore an even more efficient dynamic programming algorithm can be developed for this special case. Key words: Lot-sizing; stochastic programming; dynamic programming. Subject classification: Production/scheduling: Planning; Programming: Integer, stochastic. Area of review: Optimization. 1

2 1 Introduction The deterministic uncapacitated lot-sizing problem (ULS) is the problem of determining the amount to produce in each time period over a finite discrete horizon so as to satisfy the demand for each period while minimizing the summation of setup, production, and inventory holding costs (Nemhauser and Wolsey (1988), Wolsey (1998), Pochet and Wolsey (2006)). This fundamental model, first introduced by Wagner and Whitin (1958), is embedded within many practical production planning problems. It is easily seen to be fixed-charge flow problem in a network composed of a directed path and a dummy production node, and understanding and exploiting this structure has been essential in developing approaches to complicated, real-world problems (see, for example, Tempelmeier and Derstroff (1996), Belvaux and Wolsey (2000), Belvaux and Wolsey (2001), Stadtler (2003), and many others). Polynomial time algorithms for the deterministic ULS are based on the Wagner-Whitin property, i.e., no production is undertaken if inventory is available. A simple dynamic programming algorithm based on this property runs in O(T 2 ) time, where T is the number of time periods; this was improved later to O(T log T ) or linear time for the case in which the costs exclude speculative motives (for details see Aggarwal and Park (1993), Federgruen and Tzur (1991), and Wagelmans et al. (1992)). Polynomial time algorithms have also been developed for variants of the deterministic ULS. A partial list of examples includes an O(T 4 ) time algorithm for the constant capacity problem by Florian and Klein (1971) and an improved version that runs in O(T 3 ) time by van Hoesel and Wagelmans (1996), an O(T log T ) time algorithm for the uncapacitated problem with backlogging by Federgruen and Tzur (1993), and a polynomial time algorithm for the uncapacitated problem with demand time windows by Lee et al. (2001). In many situations the assumption of known, deterministic data (such as demand) is not necessarily realistic. Recently, Halman et al. (2006) studied a stochastic version of the deterministic ULS problem in which demand for each time period is uncertain. There are several possible demand values for each time period with certain probabilities. They showed that the simplest stochastic version of the deterministic ULS problem with no setup cost, two possible demand values for each time period and uncorrelated demand from period to period is N P-complete in T. Thus, they developed an approximation scheme that is fully polynomial in T and the error term for the problem. Other 2

3 dynamic programming and approximate dynamic programming approaches for related problems are explored in Papadaki and Powell (2002, 2003) and Topaloglu and Powell (2006) (among others). These approaches have proven capable of generating high quality plans for practical problems in the transportation industry, including multi-commodity transportation planning with integrality restrictions and batch dispatching problems with setup costs. While these approaches are approximate, the authors have demonstrated that they converge to optimal solutions; and they also seem to scale well for large problems. In this paper we investigate a formulation of the stochastic version of the deterministic ULS which allows demand dependance; in particular, we study the extension of the deterministic ULS in which a stochastic programming approach (Ruszczyński and Shapiro (2003)) is adopted to address demand and other uncertain problem parameters. We refer to the resulting model as the stochastic uncapacitated lot-sizing problem (SULS). The model SULS is the most basic lot-sizing model with production, setup, and inventory costs that can be stated as a stochastic programming problem. Thus, investigation of how to solve production planning problems using a scenario tree to model demand and other parameters should start with the analysis of this model, just as investigation of how to solve deterministic production planning problems begins with analysis of the deterministic ULS. Examples of problems that contain submodels of the form SULS embedded within them include stochastic capacity expansion problems (Ahmed and Sahinidis (2003)), stochastic batchsizing problems (Lulli and Sen (2004)), and stochastic production planning problems (Beraldi and Ruszczyński (2002)). Since a special case of our problem is shown N P-complete in Halman et al. (2006), it is unlikely to develop a polynomial time algorithm for the problem in terms of the number of time periods T. In this paper, we derive a polynomial time algorithm for the problem in terms of input size, i.e., the number of nodes in the stochastic programming scenario tree. Ahmed et al. (2003) showed that the Wagner-Whitin optimality conditions do not hold for SULS, which makes it nontrivial to derive a polynomial time algorithm similar to the deterministic case. In the remaining part of the paper, we first introduce the notation and a mathematical formulation of SULS in Section 2. Then, in Section 3, we state the production path property for SULS, a fundamental optimality condition that is analogous to the Wagner-Whitin property for the de- 3

4 terministic case. We use this property to develop a characterization of the dynamic programming value function in terms of breakpoints, breakpoint evaluations, and slopes. This property allows us to show that a full characterization of the optimal value function that contains breakpoint values, evaluations of breakpoints, and the right slope of each breakpoint can be obtained in O(n 3 log C) time, where n is the number of nodes in the scenario tree and C is the maximum number of children for each node in the tree. In Section 4, we show that these results can be extended to develop polynomial time algorithms for more generalized tree structures and a couple of special cost structured SULS. Especially, we show that the optimal solution for the general SULS can be obtained in O(n 2 max{c, log n}) time and the value function for SULS without setup costs is continuous, piecewise linear and convex, which leads to an O(n 2 ) algorithm. (For the latter case, Huang and Ahmed (2004, 2005) have presented an O(n 2 ) primal-dual algorithm for a slightly more restricted version.) We finally offer concluding remarks. 2 Notation and mathematical formulation In this paper we assume that the uncertain demands and problem parameters evolve as a discrete time stochastic process with finite probability space. The resulting information structure can be interpreted as a scenario tree with T levels (stages) as shown in Figure 1, where node i in stage t P(i) i 1 L V j V(j) Stage 1 Stage 2 Stage T Figure 1: Multi-stage stochastic scenario tree formulation of the tree gives the state of the system that can be distinguished by information available up to stage t. Each node i of the scenario tree, except the root node (indexed as i = 1), has a unique parent a(i). Note that the resulting problem, while highly structured, will no longer be properly 4

5 called a flow problem (as it is in the deterministic case). The reason is that the same inventory that flows out of a given node i must flow to each of i s children. Decisions made at node i must be made before having certain information about how the future unfolds from node i. Let V(i) represent the set of all descendants of node i (including i itself), L denote the set of leaf nodes and P(i, l) denote the set of nodes on the path from node i to node l. For notational brevity, define V = V(1) and P(i) = P(1, i). If i L, then P(i) corresponds to a scenario and represents a joint realization of the problem parameters over all periods 1,..., T. Let p i denote the probability associated with the state represented by node i and C(i) denote the children of node i (i.e., C(i) = {j V : a(j) = i} and C = max i V { C(i) }). Since there are several children explored from node i, the probability p i = j C(i) p j. Finally, let t(i) denote the time stage or level of node i in the tree (i.e., t(i) = P(i) ). Using this notation, a multi-stage stochastic MIP formulation of the single-item, uncapacitated, stochastic lot-sizing problem as shown in Guan et al. (2006b) is (SULS) : min i x i + β i y i + h i s i ) i V(α s.t. s a(i) + x i = d i + s i i V, (1) x i My i i V, (2) x i, s i 0, y i {0, 1} i V, (3) where M is a very big number, decision variables x i and s i represent the production and the inventory at the end of time period t(i) corresponding to the state defined by node i, and y i is the indicator variable for a production setup in time period t(i) for node i. Problem parameters α i, β i, and h i represent the nonnegative production, setup and holding costs and d i represents the demand in node i. For notational brevity, probability p i is included in problem parameters α i, β i and h i. Constraint (1) represents the inventory flow balance and constraint (2) indicates the relationship between production and setup for each node i. 3 A polynomial time algorithm We develop a polynomial time dynamic programming algorithm to provide a full characterization of the value function for SULS. To facilitate the development of this algorithm, we first introduce the 5

6 production path property, which characterizes conditions that at least one optimal solution of every instance of SULS must satisfy. This will allow us to define a backward recursion for which the value function of each node i is piecewise linear and right continuous; these value functions can therefore be analyzed in terms of breakpoints (i.e., discontinuities), functional evaluations of breakpoints, and the slopes of the segments to the right of the breakpoints. We achieve the complexity bound by analyzing the number of breakpoints whose evaluations and right slopes must be stored and computed at each node, and by analyzing how long these computations take. For both of these calculations the production path property will be essential. 3.1 An optimality condition Proposition 1 (Production Path Property) For any instance of SULS, there exists an optimal solution (x, y, s ) such that for each node i V, if x i > 0, then x i = d ij s a(i) for some j V(i), (4) where d ij = k P(i,j) d k. In other words, there always exists an optimal solution such that if we produce at a node i, then we produce exactly enough to satisfy demand along the path from node i to some descendant of node i. Proof: By contradiction; we will show that any optimal solution that contains a node that violates (4) is a convex combination of optimal solutions, at least one of which contains one less node that violates (4). Assume the claim is not correct. That is, for any optimal solution (x, y, s ), there exists some i V such that x i > 0 and x i d ij s a(i) for any j V(i). Let Ψ(i) be those descendants of node i that are the first nodes with positive production quantities along some path from node i to a leaf node. That is, Ψ(i) = l L V(i) min {k P(i, l) \ {i} and x k > 0}. Correspondingly, let Φ(i) be the set of nodes in the subpaths from node i to each node in Ψ(i); that is, Φ(i) = k Ψ(i) P(i, k). Define the cost corresponding to the remaining part of the tree as G(x, y, s ) = (α k x k + β kyk + h ks k ). k V\Φ(i) 6

7 Thus the objective function value of the optimal solution (x, y, s ) is F(x, y, s ) = G(x, y, s ) + α i x i + β i yi + h i s i + h k s k + (α k x k + β kyk + h ks k ). k Φ(i)\({i} Ψ(i)) k Ψ(i) Now consider two alternative solutions ( x, ȳ, s ) and (ˆx, ŷ, ŝ ) such that x i = x i ɛ, s k = s k ɛ for each k Φ(i) \ Ψ(i) and x k = x k + ɛ for each k Ψ(i) ˆx i = x i + ɛ, ŝ k = s k + ɛ for each k Φ(i) \ Ψ(i) and ˆx k = x k ɛ for each k Ψ(i) and other components are the same as (x, y, s ). It is easy to observe that these two solutions satisfy constraints (1) (3). Thus, they are feasible for SULS and correspondingly and F( x, ȳ, s ) = G(x, y, s ) + (α i (x i ɛ) + β i y i + h i (s i ɛ)) + + k Ψ(i) (α k (x k + ɛ) + β ky k + h ks k ) = F(x, y, s ) α i ɛ k Φ(i)\Ψ(i) h k ɛ + k Ψ(i) α k ɛ F(ˆx, ŷ, ŝ ) = G(x, y, s ) + (α i (x i + ɛ) + β i y i + h i (s i + ɛ)) + + k Ψ(i) (α k (x k ɛ) + β ky k + h ks k ) = F(x, y, s ) + α i ɛ + k Φ(i)\Ψ(i) h k ɛ k Ψ(i) α k ɛ. k Φ(i)\({i} Ψ(i)) k Φ(i)\({i} Ψ(i)) h k (s k ɛ) h k (s k + ɛ) If α i + k Φ(i)\Ψ(i) h k k Ψ(i) α k 0, then min{f( x, ȳ, s ), F(ˆx, ŷ, ŝ )} < F(x, y, s ), contradicting the assumption that (x, y, s ) is an optimal solution. Otherwise, if α i + k Φ(i)\Ψ(i) h k k Ψ(i) α k = 0, then ɛ can be increased such that x i = d ij s a(i) or ˆx i = d ij s a(i) for some j {i} Ψ(i). Without loss of generality, assume x i = d ij s a(i) for some j {i} Ψ(i). Then ( x, ȳ, s ) is also an optimal solution. A similar argument can be applied to ( x, ȳ, s ) if there exists a node k V such that x k d kj s a(k) for any j V(k) and consecutively the following ones. We will eventually either obtain a solution (x, y, s) such that x i = d ij s a(i) for some j V(i) if x i > 0 corresponding to each node i V or find a solution with a smaller objective function value, contradicting the 7

8 original assumption. Therefore, the original conclusion holds. The production path property clearly implies there are n candidates for x 1 (the production at the root node) in an optimal solution and therefore we have immediately Proposition 2 There exists an algorithm that runs in linear time for the two-period SULS. 3.2 Value functions For the multi-period SULS, let H(i, s) represent the optimal value function for node i V when the inventory left from previous period is s (for notational brevity, use s rather than s a(i) for the second argument of this function). There are two options for each node i V: production and non-production. If production occurs, then the value function for this node contains 1) setup, production and inventory costs corresponding to this node and 2) the cost for later periods. We will call this function the production value function H P (i, s). From the production path property, the production quantity at node i is x i = d ij s for some j V(i) such that d ij > s. Therefore H P (i, s) = β i + min α i(d ij s) + h i (d ij d i ) + H(l, d ij d i ). (5) j V(i):d ij >s l C(i) Otherwise, if non-production option occurs, then the value function for this node contains only 1) inventory holding costs corresponding to this node and 2) the cost for later periods. We will call this function the non-production value function H NP (i, s). We only need to define it for the case in which s d i, and it can be expressed as H NP (i, s) = h i (s d i ) + l C(i) For the value function H(i, s) at node i, there are three cases: H(l, s d i ). (6) (1) If s < d i, then setup and production is required. Since s < d i d ij for any j V(i), the value function can be simplified as H(i, s) = HP(i, 1 s) = β i + min α i(d ij s) + h i (d ij d i ) + H(l, d ij d i ). (7) j V(i) l C(i) 8

9 (2) If s max j V(i) d ij, then no setup and production is required since current inventory is enough to cover the demands of all descendants of node i. The value function for this case can be defined as H(i, s) = H NP (i, s) = h i (s d i ) + H(l, s d i ). (8) l C(i) (3) If d i s < max j V(i) d ij, then either production or non-production will occur for node i, and the backward recursion function can be described as H(i, s) = min {H P (i, s), H NP (i, s)}. (9) Let [1],..., [ V(i) ] be an ordering of the descendants of node i, including i itself, such that d i = d i[1] d i[2]... d i[ V(i) ]. In the remaining part of this section, we study the optimal value function of a general T period scenario tree case in which there are at least two possible outcomes for each node in the tree (i.e., C(i) 2, i V \ L). We describe an important property after making two observations. Observation 1 The summation of piecewise linear and right continuous functions is still a piecewise linear and right continuous function. Observation 2 The minimum of two piecewise linear and right continuous functions is still a piecewise linear and right continuous function. Proposition 3 The value function H(i, s) for each node i V is piecewise linear and right continuous in s. Moreover, for each positive discontinuous point s, the value H(i, s ) lim s s H(i, s). Proof: By induction. Base case: In period T, the value function for each node i is { αi (d H(i, s) = i s) + β i if 0 s < d i, h i (s d i ) otherwise. As shown in Figure 2, this value function is piecewise linear and right continuous. Moreover, at the single discontinuous point s = d i, we have H(i, d i ) lim s d i H(i, s). Inductive step: Assume, for each node i V such that t(i) t + 1, the value function H(i, s) 9

10 H(i, s) α i d i + β i α i h i 0 d i s Figure 2: Value function H(i, s) for node i at time period T is piecewise linear and right continuous, and that for each discontinuous point s, H(i, s ) lim s s H(i, s). We prove that the claim holds for all i V such that t(i) = t. From (5), we can observe the number of candidate optimal production values for x i decreases as s increases. For instance, when s < d i, all values d ij s for each j V(i) are candidates. In general, for the interval d i[r 1] s < d i[r] with d i[0] = 0, values d ij s for each j = [r], [r + 1],..., [ V(i) ] are candidates and accordingly, we can define HP(i, r s) = β i + min α i(d ij s) + h i (d ij d i ) + H(l, d ij d i ). (10) j {[r],...,[ V(i) ]} l C(i) From (5), we can also observe that for each node i V, the value functions β i + α i (d ij s) + h i (d ij d i ) + l C(i) H(l, d ij d i ) corresponding to all j V(i) such that d ij > s have the same slope α i. Therefore, there exists a set of nodes {[r j ] : 1 j K} such that d i d i[r1 ] d i[r2 ]... d i[rk ] = d i[ V(i) ] and each [r j ] = argmin {k V(i):dik >s} β i + α i (d ik s) + h i (d ik d i ) + H(l, d ik d i ) for a range of inventory level s. Accordingly, we have l C(i) H r P(i, s) = H r j P (i, s) for all r j 1 < r r j and 1 j K with r 0 = 0. (11) Then based on (7), (8), (9) and (11), the value function H(i, s) for each node i can be expressed as follows: HP(i, 1 s), if 0 s < d i ; H(i, s) = min { H r j P (i, s), H NP (i, s) }, if max{d i, d i[rj 1 ]} s < d i[rj ], for 1 j K; H NP (i, s), if s d i[ V(i) ]. 10

11 In this formulation, the production value function H r j P (i, s) for each 1 j K is a linear function of s and right continuous. From the induction assumption, the non-production value function H NP (i, s) is the summation of piecewise linear and right continuous functions, as shown in (6). From Observation 1, this function is also piecewise linear and right continuous. Thus the value function H(i, s) is the minimum of two piecewise linear, right continuous functions, and from Observation 2 it is therefore also piecewise linear and right continuous. Similarly, since H(l, s ) lim s s H(l, s) holds at each discontinuous point s for each node l C(i) and H NP (i, s) is the summation of right continuous functions, we have H(i, s ) lim s s H(i, s) at each discontinuous point s of H NP (i, s). Thus, it can be observed that H(i, s ) lim s s H(i, s) holds at each discontinuous point s in the intervals max{d i, d i[rj 1 ]} s < d i[rj ] for each 1 j K. and At each discontinuous point s = d i[rj ], we have from (10) and (6) that lim H P(i, s) = β i + h i (d i[rj s d i[rj ] ] d i ) + H NP (i, d i[rj ]) = h i (d i[rj ] d i ) + Then, due to the fact that β i 0, we have l C(i) l C(i) H(l, d i[rj ] d i ) H(l, d i[rj ] d i ). lim H P(i, s) H NP (i, d i[rj ]). (12) s d i[rj ] If lim s di[rj ] H NP(i, s) lim s di[rj ] H P(i, s), then lim H(i, s) = lim H NP(i, s) H NP (i, d i[rj ]) H(i, d i[rj ]) s d i[rj ] s d i[rj ] where the first inequality follows from the induction argument and the second inequality follows from (9). Otherwise if lim s di[rj ] H NP(i, s) > lim s di[rj ] H P(i, s), then, based on (12), lim H(i, s) = lim H P(i, s) H NP (i, d i[rj ]) H(i, d i[rj ]). s d i[rj ] s d i[rj ] Therefore, the conclusion holds. From the above proof, we can easily obtain the following Corollary. 11

12 Corollary 1 The non-production value function H NP (i, s) is piecewise linear and right continuous; and at each positive discontinuous point s, the value H NP (i, s ) lim s s H NP (i, s). The value functions H(i, s) are discontinuous. In general the minimum of a discontinuous function may not exist if the infimum is not actually attained. However, in our case, because the set up cost is assumed to be nonnegative and the value of the function on the right of each point of discontinuity is smaller than the limit value on the left as shown in Proposition 3, the minimum is always achieved. Then, based on the value function H(i, s), we can also observe the following Proposition (i.e., obtain the optimal initial inventory) as a by-product. Proposition 4 For each i V, there exists a minimizer s 0 of H(i, s), and therefore the value min s 0 H(i, s) = H(i, s ) exists. The claim in Proposition 4 can also be extended to SULS with some negative set up costs β i. In this case, it suffices to fix y i to 1 in case β i < 0, and to solve SULS by using the positive part of the set up costs β i for all nodes. Since the value function H(i, s) for each node i V is piecewise linear and right continuous, we can let breakpoints represent the s values such that the value function jumps and/or the slope changes. The value function H(i, s) can be then computed and stored in terms of breakpoints, evaluations of breakpoints, and slopes corresponding to breakpoints. Let B(i) represent the set of breakpoints for the value function H(i, s) at node i. The complexity of the problem depends on the number of breakpoints. Proposition 5 The number of breakpoints corresponding to the value function H(i, s) for each node i V is bounded by O( V(i) 2 ). Proof: We calculate the number of breakpoints B(i) for each node i V backwards from time period T to time period 1. First, as shown in Figure 2, there are two breakpoints for the value function corresponding to each leaf node. For instance, B(i) = {0, d i } and B(i) = 2 for each leaf node i at time period T. Now we calculate the number of breakpoints B(i) for each node i V in terms of three intervals: 12

13 For the interval 0 s < d i, from formulation (7), we see that the value function H(i, s) is linear with slope α i. For the interval s d i[ V(i) ], no production is required and equation (8) applies for each node k V(i). The value function H(i, s) is thus linear with slope k V(i) h k in this interval. Therefore, the two breakpoints s = 0 and d i[ V(i) ] are the only breakpoints for H(i, s) in the intervals 0 s < d i and s d i[ V(i) ]. For the interval d i s < d i[ V(i) ], as shown in Proposition 3, the value function H(i, s) = min { H r j P (i, s), H NP (i, s) } for each 1 j K and max{d i, d i[rj 1 ]} s < d i[rj ]. (13) Now we consider the number of breakpoints generated by H NP (i, s) and H P (i, s), respectively. Number of breakpoints generated by H NP (i, s): From (6) and the fact that adding piecewise linear functions does not generate new breakpoints, the number of breakpoints for H NP (i, s) is no more than the total number of breakpoints generated by H(l, s) for each l C(i). Thus, in the interval d i s < d i[ V(i) ], the number of breakpoints for H NP (i, s) is B NP (i) l C(i) B(l) 1 (14) since d i[ V(i) ] is a breakpoint in B(l) for some l C(i) and not in the interval d i s < d i[ V(i) ]. Number of breakpoints generated by H P (i, s): From (10) we see that the value function H r j P (i, s) is linear in the interval max{d i, d i[rj 1 ]} s < d i[rj ]. Therefore, all possible breakpoints for H P (i, s) in the interval d i s < d i[ V(i) ] are d i[1], d i[2],..., d i[ V(i) 1]. Note here each breakpoint d i[r], 1 < r V(i) originates from the breakpoint d [r] corresponding to value function H([r], s) and it evolves as the breakpoint d a([r])[r] in B NP (a([r])) and so on the breakpoint d k[r] in B NP (k) for each node k P([r]). Then the breakpoint d i[r] is in B NP (i) since i P([r]). Therefore, all breakpoints for H r j P (i, s) are also breakpoints in B NP (i). We may denote these breakpoints in B NP (i) as old breakpoints for this iteration. Now, we consider the number of new breakpoints generated, which is the last step necessary to characterize the value function H(i, s). First note the following factors: (1) Breakpoints d i[1], d i[2],..., d i[ V(i) 1] are also breakpoints for H NP (i, s). (2) The production value function H r j P (i, s) in the interval max{d i, d i[rj 1 ]} s < d i[rj ] is linear, as shown in (10). 13

14 (3) The non-production value function H NP (i, s) is piecewise linear, as shown in Corollary 1. Given these three observations, the expression (13) shows that the value function H(i, s) between two old breakpoints in H NP (i, s) can be viewed as the minimum of two linear functions. Therefore, between any two old breakpoints, there is at most one new breakpoint. Whether there is a breakpoint depends on the evaluations of the two functions at the breakpoints, which can be computed easily based on previously stored information. Essentially, if one of the two functions dominates the other between the two old breakpoints, there will not be a new breakpoint. Otherwise there will be one new breakpoint between two old breakpoints. Therefore, we have that B(i) 2 B NP (i) + 2 (15) since the number of breakpoints is at most double the size of the old breakpoints in the interval d i s < d i[ V(i) ] and two more breakpoints in the intervals 0 s < d i and s d i[ V(i) ]. Combining (14) and (15), we have that B(i) 2 B NP (i) B(l). (16) l C(i) Since B(j) = 2 = 2 V(j) for each leaf node j at time period T, we have that B(i) 2 T t(i)+1 V(i). Since every non-leaf node has at least two children, we have V(i) T t(i) = 2 T t(i)+1 1. (17) Then, combining (16) and (17), the number of breakpoints B(i) 2 T t(i)+1 V(i) V(i) 2 + V(i). Thus, the number of breakpoints is bounded by O( V(i) 2 ). 3.3 Algorithm analysis We are now ready to analyze the dynamic programming algorithm, which is a construction of H(i, s), the value function for each node i V. 14

15 Theorem 1 For the case that C(i) 2 for each i V \ L, the value functions H(i, s) for all i V can be defined by a dynamic programming algorithm that runs in O(n 3 log C) time. Proof: For each node i V, the value function H(i, s) is piecewise linear and therefore can be stored in terms of breakpoint values, evaluations of breakpoints, and the right slope of each breakpoint. In our approach, breakpoints are stored in a non-decreasing order of their inventory levels using a Linked-List data structure. We construct the value functions H(i, s) by induction starting from each leaf node at time period T. The value function of each leaf node is shown in Figure 2 and it can be stored in terms of two breakpoints: (1) two breakpoints: s = 0 and s = d i. (2) the evaluations at these two breakpoints: H(i, 0) = α i d i + β i and H(i, d i ) = 0. (3) the right slope of each breakpoint: r(i, 0) = α i and r(i, d i ) = h i. For the general case to store the value function H(i, s) for each node i V, we need to perform the following several steps: (1) Generate the list of breakpoints of l C(i) H(l, s) in non-decreasing order: First of all, we notice that, by induction, the O( V(l) 2 ) breakpoints in B(l) corresponding to H(l, s) for each l C(i) have already been stored in non-decreasing order of their inventory levels. In our construction process, the basic idea is to pick the smallest inventory level breakpoint in l C(i) B(l) and add it to the end of the non-decreasing order breakpoint list for l C(i) H(l, s). (i) We initially construct a list κ that collects the first breakpoint in B(l) for all l C(i). We next sort the C(i) breakpoints in κ in non-decreasing order of their inventory levels, which takes O( C(i) log C(i) ) time. (ii) We remove the first element, the smallest inventory level breakpoint, in κ and add it to the end of the non-decreasing order breakpoint list for l C(i) H(l, s). Without loss of generality, denote this breakpoint as node ω, the first element in B(l 1 ) for some node l 1 C(i). Then, node ω s next breakpoint (i.e., node u) in B(l 1 ) becomes the 15

16 first breakpoint in B(l 1 ). We insert this node (i.e., node u) at the right place in list κ such that the non-decreasing order still holds in κ. This can be done by binary search in O(log C(i) ) time since all existing nodes in κ are in non-decreasing order. We repeat this process until all breakpoints in l C(i) H(l, s) have been generated. It takes O( V(i) 2 log C(i) ) time since the number of breakpoints in l C(i) H(l, s) is bounded by O( V(i) 2 ). (iii) It can be observed that the generated breakpoints for l C(i) H(l, s) are in non-decreasing order. Since O( C(i) log C(i) ) O( V(i) 2 log C(i) ), this entire step can be completed in O( V(i) 2 log C(i) ) time. (2) Calculate and store l C(i) H(l, s): Note here at each breakpoint, only one of the functions in the summation jumps and/or changes slope (duplicated breakpoints are considered separately). Starting from the initial value l C(i) H(l, 0) and the initial right slope l C(i) lim s 0 H(l,s) + s, we spend O(1) time to calculate and store each breakpoint, and therefore this step can be completed in O( V(i) 2 ) time, since the number of breakpoints is bounded by O( V(i) 2 ) (from Proposition 5). (3) Calculate and store the breakpoints, evaluations of breakpoints, and slopes for H NP (i, s): Recall that H NP (i, s) depends on H(l, s d i ) for each l C(i). This step can therefore be completed in O( V(i) 2 ) time based on (2), since the number of breakpoints is bounded by O( V(i) 2 ) (from Proposition 5). (4) Calculate ρ(j) = α i d ij + h i (d ij d i ) + l C(i) H(l, d ij d i ) and store it for each j V(i): Based on the result in (2), the value of the function l C(i) H(l, d ij d i ) with a given j can be obtained by binary search in O(log V(i) 2 ) time, since the number of breakpoints is bounded by O( V(i) 2 ). Therefore, this entire step can be completed in O( V(i) log V(i) ) time. (5) Calculate and store the breakpoints, evaluations of breakpoints, and slopes for H P (i, s): The slope for each piece is fixed (i.e., α i ). Sort ρ(j) in non-decreasing order such that ρ([1]) ρ([2])... ρ([ V(i) ]). Following this order, select the node index [r 1 ], [r 2 ],..., [r K ], corresponding to each of the K pieces of the value function H P (i, s). This can be done by choosing r 1 = 1 and [r t ] = argmin j V(i) {ρ(j) : d ij > d i[rt 1 ]} for all t : 2 t K. This step 16

17 can be completed in O( V(i) log V(i) ) time. (6) Calculate and store the breakpoints, evaluations of breakpoints, and slopes for H(i, s): Here we must check each linear piece of H P (i, s) with the corresponding one or several pieces of H NP (i, s), take the minimum of the two functions based on their slopes and evaluations of breakpoints, and store the new breakpoints, the evaluations of the new breakpoints and the slopes for the new pieces. This step can be completed in O( V(i) 2 ) time since the number of breakpoints is bounded by O( V(i) 2 ) (from Proposition 5). The maximum complexity for each step is O( V(i) 2 log C(i) ). Since the above operations are required for each node i V, the optimal value function for SULS can be obtained and stored in O(n 3 log C) time. If the scenario tree is balanced, for instance, C(i) = C for all i V \ L, the algorithm yields an improved complexity result. Corollary 2 If C(i) = C 2 for each i V \ L, then the value functions H(i, s) for all i V can be defined by a dynamic programming algorithm that runs in O(n 3 ) time. Proof: It can be observed that the number of breakpoints for this case is the same as shown in Proposition 5. The computational complexity of Steps (2)-(6) is also the same as the unbalanced tree case. In Step (1), the calculation in (ii) for the balanced tree case can be completed in O(C V(l) 2 log C) O( V(i) 2 ) time, since V(i) = C V(l) + 1. Therefore, the value function can be obtained in O(n 3 ) time. 3.4 An example Consider a three period SULS example shown in Figure 3 and the corresponding problem parameters are shown in Table 1. As described in Figure 2, for time period T, the value function H(4, s) is right continuous and piecewise linear with two pieces. For this function, we store the two breakpoints s = 0 and s = d 4 = 15, the evaluations for these two breakpoints H(4, 0) = α 4 d 4 + β 4 = 35 and H(4, 15) = 0, and the slopes for each piece α 4 = 1 and h 4 = 1. The value function H(5, s) can be obtained in the same way. Then the function H(4, s)+h(5, s) can be calculated accordingly and 17

18 Figure 3: An example Table 1: Problem parameters for the example β i α i h i d i the results are shown in Figure 4. Note here, the value function H(4, s) + H(5, s) is still piecewise linear and right continuous and will be used later to calculate H(2, s) for node 2. Similarly, the value functions H(6, s), H(7, s) and H(6, s) + H(7, s) are shown in Figure 5. H(4, s) H(5, s) H(4, s) + H(5, s) s s Figure 4: Value functions H(4, s), H(5, s) and H(4, s) + H(5, s) Then, to obtain the value function H(2, s), we first calculate ρ(2) = α 2 d 2 + H(4, 0) + H(5, 0) = 90, ρ(5) = α 2 d 25 + h 2 (d 25 d 2 ) + H(4, d 25 d 2 ) + H(5, d 25 d 2 ) = 70, and ρ(4) = α 2 d 24 + h 2 (d 24 d 2 ) + H(4, d 24 d 2 ) + H(5, d 24 d 2 ) = 65, where the value H(4, s) + H(5, s) can be obtained from Figure 4 directly. Thus [r 1 ] = [r K ] = 4 and there is only one piece for the production value function H P (2, s). As shown in Figure 6, the slope for the production value function H P (2, s) is α 2 = 1 in the interval 0 s <

19 32 28 H(6, s) H(7, s) H(6, s) + H(7, s) s s Figure 5: Value functions H(6, s), H(7, s) and H(6, s) + H(7, s) The non-production value function H NP (2, s) can be described easily by moving the function H(4, s) + H(5, s) introduced in Figure 4 to the right by d 2 = 25 and increasing the slope by h 2 = 1. It is shown in Figure 6 the three pieces in the intervals 25 s < 35, 35 s < 40 and s 40. Then the value function H(2, s) is the minimum of two value functions H P (2, s) and H NP (2, s) as shown the solid line in the Figure. In this case, two new breakpoints are generated in the intervals 25 s < 35 and 35 s < 40 respectively during the minimization operation. The value function H(3, s) can be calculated in a similar way. In this case, there are two pieces for H P (3, s) and only one new breakpoint generated as shown in Figure 6. Finally, for the value function expression of H(1, s), we only calculate H(1, 0). We have ρ(1) = α 1 d 1 + H(2, 0) + H(3, 0) = 339, ρ(2) = α 1 d 12 + h 1 (d 12 d 1 ) + H(2, d 12 d 1 ) + H(3, d 12 d 1 ) = 301.5, ρ(3) = ρ(4) = α 1 d 14 + h 1 (d 14 d 1 ) + H(2, d 14 d 1 ) + H(3, d 14 d 1 ) = 255, ρ(5) = α 1 d 15 + h 1 (d 15 d 1 ) + H(2, d 15 d 1 ) + H(3, d 15 d 1 ) = 273.6, ρ(6) = α 1 d 16 + h 1 (d 16 d 1 ) + H(2, d 16 d 1 ) + H(3, d 16 d 1 ) = 273, ρ(7) = α 1 d 17 + h 1 (d 17 d 1 ) + H(2, d 17 d 1 ) + H(3, d 17 d 1 ) = 304, where ρ(3) = ρ(4) holds due to the fact that d 13 = d 14. Then, following (7), we obtain the optimal objective value for this problem with zero initial inventory H(1, 0) = H P (1, 0) = β 1 + min k V(1) ρ(k) = =

20 83 80 H(2, s) H(3, s) s s Figure 6: Value functions H(2, s) and H(3, s) 4 Extensions In the previous section, we derived a polynomial time algorithm for the full characterization of H(i, s) in which C(i) 2 for each i V \ L. Since the full characterization of H(i, s) contains breakpoint values, evaluations of breakpoints, and the right slope of each breakpoint, it can provide insights of the problem that include sensitivity analysis at any inventory level for each node i V. It is not known if a polynomial time algorithm exists for deriving the full characterization of H(i, s) for the cases in which C(i) may be equal 1 for some i V \ L. In this section, we extend our analysis to the cases that allow C(i) = 1 for some i V \ L. In one direction, we derive polynomial time algorithms to solve the more general case to obtain the optimal solution instead of fully characterizing the value function H(i, s) for each i V. For instance, the general SULS case in Section 4.1 and the two-stage case in Section 4.2. In the other direction, we study the polynomial time algorithms to provide the full characterization of H(i, s) for the more general case under certain cost restrictions. For instance, SULS without speculative motives in Section 4.3 and SULS without setup costs in Section The general SULS In this section, we consider the general SULS problem (i.e., C(i) 1 for each node i V \ L). For this case, it is not known if the full characterization of the value function H(i, s) for each i V can be obtained in polynomial time. However, an optimal solution of the general SULS can be obtained in polynomial time. Without loss of generality, we assume zero initial inventory. We also notice that the general SULS problem for which the initial inventory level is unknown and is itself a 20

21 decision variable can be transformed into another general SULS problem with zero initial inventory by adding a dummy root node 0 as the parent node of node 1 with zero production, setup and inventory costs as well as zero demand. Theorem 2 The general SULS can be solved in O(n 2 max{c, log n}) time. Proof: With zero initial inventory, according to Proposition 1, we have x 1 = d 1j and s 1 = d 1j d 1 for some j V in an optimal solution. Then, corresponding to the value function H(l, s) for each l C(1), we only need to store the breakpoints s = d 1j d 1 for all j V and their evaluations. In general, based on (8) and (9), the breakpoints for the value function H(i, s) are obtained by moving the breakpoints for the value function H(l, s) for all l C(i) to the right by d i plus new breakpoints generated by minimizing two piecewise linear functions. Thus, in order to store the breakpoints s = d 1j d 1a(i) for all j V : d 1j d 1a(i) 0 for node i, in the calculation of the value functions H(l, s) for all l C(i), we only need to store the breakpoints s = d 1j d 1i = d 1j d 1a(l) for all j V : d 1j d 1a(l) 0. Therefore, in the algorithm of Theorem 1 to calculate the value function H(i, s) for each node i V backwards starting from leaf nodes, we store the breakpoints s = d 1j d 1a(i) for all j V : d 1j d 1a(i) 0 and their evaluations. There are at most O(n) breakpoints for each value function H(i, s). This reduction in the number of breakpoints means that, at each step calculating the value function H(i, s), we can bound the time the algorithm will take as follows: Step (1): Since we have stored the same set of O(n) breakpoints s = d 1j d 1a(l) = d 1j d 1i for all j V : d 1j d 1a(l) 0 corresponding to each value function H(l, s), l C(i), the list of breakpoints of l C(i) H(l, s) has the same set of O(n) breakpoints. This step takes O(n) time; Step (2): Based on (1), we have the same set of O(n) breakpoints for each H(l, s), l C(i) as well as l C(i) H(l, s). This step takes O(Cn) time since the maximum number of children is C; Step (3): Based on (2), this step can be completed in O(n) time since the number of breakpoints is bounded by O(n); 21

22 Step (4): Based on (2), the function values l C(i) H(l, d ij d i ) for each j V are stored in l C(i) H(l, s) since d ij d i = d 1j d 1i = d 1j d 1a(l) for each l C(i). There are V(i) n candidates for ρ(k) and the value of each ρ(k) can be obtained by binary search in O(log n) time since the number of breakpoints is bounded by O(n). Therefore, this entire step can be completed in O(n log n) time; Step (5): This step can be completed in O(n log n) time since the number of breakpoints is bounded by O(n); Step (6): To calculate and store the breakpoints of H(i, s), we have H(i, s) = H P (i, s) for the breakpoints s = d 1j d 1a(i) for each j V such that d 1a(i) d 1j < d 1i and H(i, s) = min{h P (i, s), H NP (i, s)} for the breakpoints s = d 1j d 1a(i) for each j V such that d 1j d 1i. To obtain the minimum in this expression, we compare each linear piece of the production value function H P (i, s) with several breakpoint values of the corresponding non-production value function. This step can be completed in O(n) time since the number of breakpoints is bounded by O(n). Therefore, the total amount of work required at each node is bounded by O(n max{c, log n}). The result follows by multiplying this by the number of nodes. 4.2 The two-stage SULS For a T period planning problem, a two-stage SULS has known demands for the first t periods, which are usually considered as defining the first-stage problem. The uncertainty for the secondstage is explored in time period t+1. Demands for time periods t+1 to T perform as a deterministic case corresponding to each scenario explored in time period t + 1. For instance, assuming there are K scenarios explored in time period t + 1, we have C(i) = K if t(i) = t and C(i) = 1 for other non-leaf nodes. Proposition 6 The two-stage SULS can be solved in O(n 2 log n) time. Proof: From Proposition 1, assuming t(i ) = t, we have s i = d i k d i for some k V(i ) in the optimal solution, which contains K(T t) + 1 n candidates. Corresponding to each candi- 22

23 date, the first t period problem is a deterministic ULS with a given final inventory level, which is equivalent to another ULS without final inventory by updating the demand at time period t. Thus, the optimal solution can be obtained in O(n log n) time as studied by Aggarwal and Park (1993). Similarly, the second T t period problem corresponding to each scenario is a deterministic ULS with a given initial inventory level. Thus, the optimal solution for the second-stage problems can be obtained in O(K(T t) log(t t)) O(n log n) time. Finally, the minimum value among all candidates can be achieved in O(n 2 log n) time and the conclusion holds. 4.3 SULS without speculative motives For the deterministic ULS, researchers and practitioners have long recognized that, in many situations, the costs will never encourage us to produce before we have to. For instance, If we are planning to set up in time periods both t and t + 1, it will never be cheaper to produce in period t to satisfy demand in t + 1 than it is to produce in period t + 1 to satisfy demand in t + 1. Cost structures satisfying this condition are referred to as without speculative motives orwagner-whitin costs in the literature (see Wagelmans et al. (1992) and Pochet and Wolsey (1994, 2006), among others). We consider a similar cost structure for SULS. Assume that for each i V \ L, α i + h i α j and β i β j. (18) j C(i) j C(i) This condition states that the sum of the unit production and inventory holding costs at node i is not less than the sum of unit production costs of its children. It also states that the setup cost β i at node i is not less than the sum of setup costs of its children. Thus, we need never consider producing at a node i if the inventory entering i is sufficient to satisfy the demand at i (i.e., if s a(i) d i ) since we can set up and produce at each node j C(i) instead of node i with a non-larger cost. For this case we can show that our algorithm runs faster than in the general case described in Section 3. In terms of the value functions of Section 3, (18) implies that we can assume that H(i, s) = H P (i, s) if and only if 0 s < d i, and that H(i, s) = H NP (i, s) if s d i. Because of this, there will never be new breakpoints at node i that occur between old breakpoints defined by the 23

24 value functions H(l, s), l C(i). Therefore the number of breakpoints required to define the value function H(i, s) will be O( V(i) ), for every i V. In terms of the algorithm of Theorem 1, this reduction in the number of breakpoints means that we can bound the time that each step will take as follows: Step (1) is not needed since the breakpoints can be pre-determined and they correspond to each node k V(i); Step (2) now takes O( V(i) ) time; Step (3) now takes O( V(i) ) time; Step (4) now takes O( V(i) ) time since there are only V(i) candidates corresponding to V(i) breakpoints; Step (5) can now be done in O( V(i) ) time, since we are now only interested in the choice of k that minimizes ρ(k); Step (6) now takes O( V(i) ) time, and consists simply of setting H(i, s) = H P (i, s) if 0 s < d i, and H(i, s) = H NP (i, s) if s d i. We can now state Proposition 7 Without speculative motives, the value functions H(i, s), i V, can be defined by a dynamic programming algorithm that runs in O(n 2 ) time. Proof: From the above argument, the total amount of work done at each node is bounded by O( V(i) ) = O(n). The result follows by multiplying this by the number of nodes. 4.4 SULS without setup costs As described in Zipkin (2000), in many applications setup costs can be neglected in production planning. The deterministic version in this case is easily solved by using a greedy algorithm described in Johnson (1957). In this case the formulation of the stochastic problem (which we call 24

25 SULS-W) simplifies to (SULS-W) : min i V(α i x i + h i s i ) s.t. s a(i) + x i = d i + s i i V, x i, s i 0 i V. Primal and dual algorithms with complexity O(n 2 ) have been developed recently in Huang and Ahmed (2004, 2005) for the special case of this model in which the tree is balanced with zero initial inventory. In this section, we provide the full characterization of the optimal value function for a general tree structure (i.e., C(i) 1 for each i V \L). The optimal value function can be obtained in O(n 2 ) time. As will be seen in the development of this section, this analysis relies on the fact that the value function H(i, s) for SULS-W is not only piecewise linear but also convex. For brevity, we remind the reader here that any function that is convex must also necessarily be continuous (we will omit stating that the value functions are continuous in the development of this section). This is the primary advantage that the absence of setups allows us to exploit in our analysis: Not only do the value functions become continuous (recall that, for SULS, this is not true in general), but they are also convex. This, along with the production path property, allows us to show that the number of breakpoints of H(i, s) is an order of magnitude smaller at each node i than for SULS, yielding the improved complexity result. We write the value function for SULS-W in a slightly different way. For the non-production case we have H NP (i, s) = h i (s d i ) + H(l, s d i ). (19) l C(i) Since the production path property still holds and no setup cost, the production value function can be written as H r P(i, s) = min k {[r],...,[ V(i) ]} α i(d ik s) + h i (d ik d i ) + l C(i) H(l, d ik d i ) (20) in the interval d i[r 1] s < d i[r], for r = 1,..., V(i) with d i[0] = 0. Similar as the case with setup costs, there are several production value function pieces ending with breakpoints s = 25

26 d i[r1 ], d i[r2 ],..., d i[rk ] such that d i = d i[1] d i[r1 ]... d i[rk ] = d i[ V(i) ] and H r P(i, s) = H r j P (i, s) for all r j 1 < r r j and 1 j K with r 0 = 0. Then, HP(i, 1 s), if 0 s < d i ; H(i, s) = min { H r j P (i, s), H NP (i, s) }, if max{d i, d i[rj 1 ]} s < d i[rj ], for 1 j K; H NP (i, s), if s d i[ V(i) ]. We can observe from (20) that Thus, we have H r j P (i, s) = α i (d i[rj ] s) + h i (d i[rj ] d i ) + l C(i) H(l, d i[rj ] d i ). H r j P (i, d i[rj ]) = H NP (i, d i[rj ]) for each 1 j K. (21) Before we prove that the value function H(i, s) is piecewise linear and convex, we define [r ] = [r 1 ] = argmin k {[1],...,[ V(i) ]} α id ik + h i (d ik d i ) + H(l, d ik d i ) l C(i) (22) and introduce an important Lemma. Lemma 1 If H NP (i, s) as defined in (19) is piecewise linear and convex, and contains V(i) break- H points s = d i[1],..., d i[ V(i) ], then α i lim NP (i,s) s d + i[r s ] r > 1. H and lim NP (i,s) s d i[r s ] α i if H Proof: We first show α i lim NP (i,s) s d + i[r s. ] that Let H 1 (i, s) = α i (d i[r +1] s) + h i (d i[r +1] d i ) + l C(i) H(l, d i[r +1] d i ) and we can observe H 1 (i, d i[r +1]) = H NP (i, d i[r +1]) = H NP (i, d i[r ]) + lim s d + i[r ] H NP (i, s) (d s i[r +1] d i[r ]), (23) where the second equation follows from the fact that s = d i[r ] and s = d i[r +1] are two consecutive breakpoints of a piecewise linear and convex function H NP (i, s). We can also observe that, according to the definition of H r P(i, s) shown in (20) and r shown in (22), H r P (i, d i[r +1]) = H r P (i, d i[r ]) α i (d i[r +1] d i[r ]) (24) 26

A Branch-and-Cut Algorithm for the Stochastic Uncapacitated Lot-Sizing Problem

A Branch-and-Cut Algorithm for the Stochastic Uncapacitated Lot-Sizing Problem Yongpei Guan 1 Shabbir Ahmed 1 George L. Nemhauser 1 Andrew J. Miller 2 A Branch-and-Cut Algorithm for the Stochastic Uncapacitated Lot-Sizing Problem December 12, 2004 Abstract. This paper addresses a

More information

Sequential pairing of mixed integer inequalities

Sequential pairing of mixed integer inequalities Sequential pairing of mixed integer inequalities Yongpei Guan, Shabbir Ahmed, George L. Nemhauser School of Industrial & Systems Engineering, Georgia Institute of Technology, 765 Ferst Drive, Atlanta,

More information

The stochastic lot-sizing problem with quantity discounts

The stochastic lot-sizing problem with quantity discounts Loughborough University Institutional Repository The stochastic lot-sizing problem with quantity discounts This item was submitted to Loughborough University's Institutional Repository by the/an author.

More information

Worst case analysis for a general class of on-line lot-sizing heuristics

Worst case analysis for a general class of on-line lot-sizing heuristics Worst case analysis for a general class of on-line lot-sizing heuristics Wilco van den Heuvel a, Albert P.M. Wagelmans a a Econometric Institute and Erasmus Research Institute of Management, Erasmus University

More information

A holding cost bound for the economic lot-sizing problem with time-invariant cost parameters

A holding cost bound for the economic lot-sizing problem with time-invariant cost parameters A holding cost bound for the economic lot-sizing problem with time-invariant cost parameters Wilco van den Heuvel a, Albert P.M. Wagelmans a a Econometric Institute and Erasmus Research Institute of Management,

More information

On the Polyhedral Structure of a Multi Item Production Planning Model with Setup Times

On the Polyhedral Structure of a Multi Item Production Planning Model with Setup Times CORE DISCUSSION PAPER 2000/52 On the Polyhedral Structure of a Multi Item Production Planning Model with Setup Times Andrew J. Miller 1, George L. Nemhauser 2, and Martin W.P. Savelsbergh 2 November 2000

More information

Faster Primal-Dual Algorithms for the Economic Lot-Sizing Problem

Faster Primal-Dual Algorithms for the Economic Lot-Sizing Problem Acknowledgment: Thomas Magnanti, Retsef Levi Faster Primal-Dual Algorithms for the Economic Lot-Sizing Problem Dan Stratila RUTCOR and Rutgers Business School Rutgers University Mihai Pătraşcu AT&T Research

More information

arxiv: v1 [cs.ds] 26 Feb 2016

arxiv: v1 [cs.ds] 26 Feb 2016 On the computational complexity of minimum-concave-cost flow in a two-dimensional grid Shabbir Ahmed, Qie He, Shi Li, George L. Nemhauser arxiv:1602.08515v1 [cs.ds] 26 Feb 2016 Abstract We study the minimum-concave-cost

More information

Extreme Point Solutions for Infinite Network Flow Problems

Extreme Point Solutions for Infinite Network Flow Problems Extreme Point Solutions for Infinite Network Flow Problems H. Edwin Romeijn Dushyant Sharma Robert L. Smith January 3, 004 Abstract We study capacitated network flow problems with supplies and demands

More information

CAPACITATED LOT-SIZING PROBLEM WITH SETUP TIMES, STOCK AND DEMAND SHORTAGES

CAPACITATED LOT-SIZING PROBLEM WITH SETUP TIMES, STOCK AND DEMAND SHORTAGES CAPACITATED LOT-SIZING PROBLEM WITH SETUP TIMES, STOCK AND DEMAND SHORTAGES Nabil Absi,1 Safia Kedad-Sidhoum Laboratoire d Informatique d Avignon, 339 chemin des Meinajariès, 84911 Avignon Cedex 09, France

More information

Classification of Dantzig-Wolfe Reformulations for MIP s

Classification of Dantzig-Wolfe Reformulations for MIP s Classification of Dantzig-Wolfe Reformulations for MIP s Raf Jans Rotterdam School of Management HEC Montreal Workshop on Column Generation Aussois, June 2008 Outline and Motivation Dantzig-Wolfe reformulation

More information

2007/48. Single Item Lot-Sizing with Non-Decreasing Capacities

2007/48. Single Item Lot-Sizing with Non-Decreasing Capacities CORE DISCUSSION PAPER 2007/48 Single Item Lot-Sizing with Non-Decreasing Capacities Yves Pochet 1 and Laurence A. Wolsey 2 June 2007 Abstract We consider the single item lot-sizing problem with capacities

More information

Research Article Dynamic Programming and Heuristic for Stochastic Uncapacitated Lot-Sizing Problems with Incremental Quantity Discount

Research Article Dynamic Programming and Heuristic for Stochastic Uncapacitated Lot-Sizing Problems with Incremental Quantity Discount Mathematical Problems in Engineering Volume 2012, Article ID 582323, 21 pages doi:10.1155/2012/582323 Research Article Dynamic Programming and Heuristic for Stochastic Uncapacitated Lot-Sizing Problems

More information

R u t c o r Research R e p o r t

R u t c o r Research R e p o r t R u t c o r Research R e p o r t Strongly Polynomial Primal-Dual Algorithms for Concave Cost Combinatorial Optimization Problems Thomas L. Magnanti a Dan Stratila b RRR 10-2012, February 2012 RUTCOR Rutgers

More information

Tight Formulations for Some Simple Mixed Integer Programs and Convex Objective Integer Programs

Tight Formulations for Some Simple Mixed Integer Programs and Convex Objective Integer Programs Tight Formulations for Some Simple Mixed Integer Programs and Convex Objective Integer Programs Andrew J. Miller 1 Laurence A. Wolsey 2 March 19, 2008 Abstract We study the polyhedral structure of simple

More information

arxiv: v2 [cs.ds] 27 Nov 2014

arxiv: v2 [cs.ds] 27 Nov 2014 Single machine scheduling problems with uncertain parameters and the OWA criterion arxiv:1405.5371v2 [cs.ds] 27 Nov 2014 Adam Kasperski Institute of Industrial Engineering and Management, Wroc law University

More information

Multi-item lot-sizing with joint set-up costs

Multi-item lot-sizing with joint set-up costs Math. Program., Ser. A (2009) 119:79 94 DOI 10.1007/s10107-007-0202-9 FULL LENGTH PAPER Multi-item lot-sizing with joint set-up costs Shoshana Anily Michal Tzur Laurence A. Wolsey Received: 1 May 2007

More information

1 Production Planning with Time-Varying Demand

1 Production Planning with Time-Varying Demand IEOR 4000: Production Management Columbia University Professor Guillermo Gallego 28 September 1 Production Planning with Time-Varying Demand In this lecture we present a few key results in production planning

More information

Solving LP and MIP Models with Piecewise Linear Objective Functions

Solving LP and MIP Models with Piecewise Linear Objective Functions Solving LP and MIP Models with Piecewise Linear Obective Functions Zonghao Gu Gurobi Optimization Inc. Columbus, July 23, 2014 Overview } Introduction } Piecewise linear (PWL) function Convex and convex

More information

Polynomial time algorithms for the Minimax Regret Uncapacitated Lot Sizing Model

Polynomial time algorithms for the Minimax Regret Uncapacitated Lot Sizing Model Polynomial time algorithms for the Minimax Regret Uncapacitated Lot Sizing Model Dong Li a,, Dolores Romero Morales a a Säid Business School, University of Oxford, Park End Street, Oxford, OX1 1HP, United

More information

Time Aggregation for Network Design to Meet Time-Constrained Demand

Time Aggregation for Network Design to Meet Time-Constrained Demand 20th International Congress on Modelling and Simulation, Adelaide, Australia, 1 6 December 2013 www.mssanz.org.au/modsim2013 Time Aggregation for Network Design to Meet Time-Constrained Demand N. Boland

More information

Uncapacitated Lot Sizing with Backlogging: The Convex Hull

Uncapacitated Lot Sizing with Backlogging: The Convex Hull Mathematical Programming manuscript No. (will be inserted by the editor) Simge Küçükyavuz Yves Pochet Uncapacitated Lot Sizing with Backlogging: The Convex Hull January 2007, revised July 2007 Abstract

More information

Optimal Backlogging Over an Infinite Horizon Under Time Varying Convex Production and Inventory Costs

Optimal Backlogging Over an Infinite Horizon Under Time Varying Convex Production and Inventory Costs Optimal Backlogging Over an Infinite Horizon Under Time Varying Convex Production and Inventory Costs Archis Ghate Robert L. Smith Industrial Engineering, University of Washington, Box 352650, Seattle,

More information

On the Power of Robust Solutions in Two-Stage Stochastic and Adaptive Optimization Problems

On the Power of Robust Solutions in Two-Stage Stochastic and Adaptive Optimization Problems MATHEMATICS OF OPERATIONS RESEARCH Vol. xx, No. x, Xxxxxxx 00x, pp. xxx xxx ISSN 0364-765X EISSN 156-5471 0x xx0x 0xxx informs DOI 10.187/moor.xxxx.xxxx c 00x INFORMS On the Power of Robust Solutions in

More information

1 Production Planning with Time-Varying Demand

1 Production Planning with Time-Varying Demand IEOR 4000: Production Management Columbia University Professor Guillermo Gallego 28 September 1 Production Planning with Time-Varying Demand In this lecture we present a few key results in production planning

More information

The network maintenance problem

The network maintenance problem 22nd International Congress on Modelling and Simulation, Hobart, Tasmania, Australia, 3 to 8 December 2017 mssanz.org.au/modsim2017 The network maintenance problem Parisa Charkhgard a, Thomas Kalinowski

More information

Branch-and-cut Approaches for Chance-constrained Formulations of Reliable Network Design Problems

Branch-and-cut Approaches for Chance-constrained Formulations of Reliable Network Design Problems Branch-and-cut Approaches for Chance-constrained Formulations of Reliable Network Design Problems Yongjia Song James R. Luedtke August 9, 2012 Abstract We study solution approaches for the design of reliably

More information

Recoverable Robustness in Scheduling Problems

Recoverable Robustness in Scheduling Problems Master Thesis Computing Science Recoverable Robustness in Scheduling Problems Author: J.M.J. Stoef (3470997) J.M.J.Stoef@uu.nl Supervisors: dr. J.A. Hoogeveen J.A.Hoogeveen@uu.nl dr. ir. J.M. van den Akker

More information

On the Power of Robust Solutions in Two-Stage Stochastic and Adaptive Optimization Problems

On the Power of Robust Solutions in Two-Stage Stochastic and Adaptive Optimization Problems MATHEMATICS OF OPERATIONS RESEARCH Vol. 35, No., May 010, pp. 84 305 issn 0364-765X eissn 156-5471 10 350 084 informs doi 10.187/moor.1090.0440 010 INFORMS On the Power of Robust Solutions in Two-Stage

More information

A Primal-Dual Algorithm for Computing a Cost Allocation in the. Core of Economic Lot-Sizing Games

A Primal-Dual Algorithm for Computing a Cost Allocation in the. Core of Economic Lot-Sizing Games 1 2 A Primal-Dual Algorithm for Computing a Cost Allocation in the Core of Economic Lot-Sizing Games 3 Mohan Gopaladesikan Nelson A. Uhan Jikai Zou 4 October 2011 5 6 7 8 9 10 11 12 Abstract We consider

More information

TRANSPORTATION PROBLEMS

TRANSPORTATION PROBLEMS Chapter 6 TRANSPORTATION PROBLEMS 61 Transportation Model Transportation models deal with the determination of a minimum-cost plan for transporting a commodity from a number of sources to a number of destinations

More information

k-protected VERTICES IN BINARY SEARCH TREES

k-protected VERTICES IN BINARY SEARCH TREES k-protected VERTICES IN BINARY SEARCH TREES MIKLÓS BÓNA Abstract. We show that for every k, the probability that a randomly selected vertex of a random binary search tree on n nodes is at distance k from

More information

An O(n 2 ) Algorithm for Lot Sizing with Inventory Bounds and Fixed Costs

An O(n 2 ) Algorithm for Lot Sizing with Inventory Bounds and Fixed Costs An O(n 2 ) Algorithm for Lot Sizing with Inventory Bounds and Fixed Costs Alper Atamtürk and Simge Küçükyavuz September 4, 2007 Abstract We present an O(n 2 ) dynamic programming algorithm for lot sizing

More information

Advanced Linear Programming: The Exercises

Advanced Linear Programming: The Exercises Advanced Linear Programming: The Exercises The answers are sometimes not written out completely. 1.5 a) min c T x + d T y Ax + By b y = x (1) First reformulation, using z smallest number satisfying x z

More information

The L-Shaped Method. Operations Research. Anthony Papavasiliou 1 / 38

The L-Shaped Method. Operations Research. Anthony Papavasiliou 1 / 38 1 / 38 The L-Shaped Method Operations Research Anthony Papavasiliou Contents 2 / 38 1 The L-Shaped Method 2 Example: Capacity Expansion Planning 3 Examples with Optimality Cuts [ 5.1a of BL] 4 Examples

More information

Stochastic Integer Programming An Algorithmic Perspective

Stochastic Integer Programming An Algorithmic Perspective Stochastic Integer Programming An Algorithmic Perspective sahmed@isye.gatech.edu www.isye.gatech.edu/~sahmed School of Industrial & Systems Engineering 2 Outline Two-stage SIP Formulation Challenges Simple

More information

On deterministic reformulations of distributionally robust joint chance constrained optimization problems

On deterministic reformulations of distributionally robust joint chance constrained optimization problems On deterministic reformulations of distributionally robust joint chance constrained optimization problems Weijun Xie and Shabbir Ahmed School of Industrial & Systems Engineering Georgia Institute of Technology,

More information

2007/87. Valid inequalities for the single-item capacitated lot sizing problem with step-wise costs. Ayse Akbalik and Yves Pochet

2007/87. Valid inequalities for the single-item capacitated lot sizing problem with step-wise costs. Ayse Akbalik and Yves Pochet 2007/87 Valid inequalities for the single-item capacitated lot sizing problem with step-wise costs Ayse Akbalik and Yves Pochet CORE DISCUSSION PAPER 2007/87 Valid inequalities for the single-item capacitated

More information

Stochastic Dual Dynamic Integer Programming

Stochastic Dual Dynamic Integer Programming Stochastic Dual Dynamic Integer Programming Jikai Zou Shabbir Ahmed Xu Andy Sun December 26, 2017 Abstract Multistage stochastic integer programming (MSIP) combines the difficulty of uncertainty, dynamics,

More information

Polynomial time algorithms for some multi-level lot-sizing problems with production capacities

Polynomial time algorithms for some multi-level lot-sizing problems with production capacities Polynomial time algorithms for some multi-level lot-sizing problems with production capacities Stan van Hoesel, H. Edwin Romeijn, Dolores Romero Morales, Albert P.M. Wagelmans ERIM REPORT SERIES RESEARCH

More information

CS 161 Summer 2009 Homework #2 Sample Solutions

CS 161 Summer 2009 Homework #2 Sample Solutions CS 161 Summer 2009 Homework #2 Sample Solutions Regrade Policy: If you believe an error has been made in the grading of your homework, you may resubmit it for a regrade. If the error consists of more than

More information

3.10 Lagrangian relaxation

3.10 Lagrangian relaxation 3.10 Lagrangian relaxation Consider a generic ILP problem min {c t x : Ax b, Dx d, x Z n } with integer coefficients. Suppose Dx d are the complicating constraints. Often the linear relaxation and the

More information

Economic lot-sizing games

Economic lot-sizing games Economic lot-sizing games Wilco van den Heuvel a, Peter Borm b, Herbert Hamers b a Econometric Institute and Erasmus Research Institute of Management, Erasmus University Rotterdam, P.O. Box 1738, 3000

More information

Parametric analysis of setup cost in the economic lot-sizing model without speculative motives

Parametric analysis of setup cost in the economic lot-sizing model without speculative motives Int. J. Production Economics 66 (2000) 13}22 Parametric analysis of setup cost in the economic lot-sizing model without speculative motives C.P.M. Van Hoesel, A.P.M. Wagelmans* Department of Quantitative

More information

Solving Multi-Item Capacitated Lot-Sizing Problems with Setup Times by Branch-and-Cut 1

Solving Multi-Item Capacitated Lot-Sizing Problems with Setup Times by Branch-and-Cut 1 Solving Multi-Item Capacitated Lot-Sizing Problems with Setup Times by Branch-and-Cut 1 Andrew J. Miller CORE Voie du Roman Pays, 34 B-1348 Louvain la Neuve Belgium George L. Nemhauser Martin W.P. Savelsbergh

More information

Computer Science & Engineering 423/823 Design and Analysis of Algorithms

Computer Science & Engineering 423/823 Design and Analysis of Algorithms Computer Science & Engineering 423/823 Design and Analysis of Algorithms Lecture 03 Dynamic Programming (Chapter 15) Stephen Scott and Vinodchandran N. Variyam sscott@cse.unl.edu 1/44 Introduction Dynamic

More information

Description of 2-integer continuous knapsack polyhedra

Description of 2-integer continuous knapsack polyhedra Discrete Optimization 3 (006) 95 0 www.elsevier.com/locate/disopt Description of -integer continuous knapsack polyhedra A. Agra a,, M. Constantino b a Department of Mathematics and CEOC, University of

More information

A Tighter Variant of Jensen s Lower Bound for Stochastic Programs and Separable Approximations to Recourse Functions

A Tighter Variant of Jensen s Lower Bound for Stochastic Programs and Separable Approximations to Recourse Functions A Tighter Variant of Jensen s Lower Bound for Stochastic Programs and Separable Approximations to Recourse Functions Huseyin Topaloglu School of Operations Research and Information Engineering, Cornell

More information

Advanced Counting Techniques. Chapter 8

Advanced Counting Techniques. Chapter 8 Advanced Counting Techniques Chapter 8 Chapter Summary Applications of Recurrence Relations Solving Linear Recurrence Relations Homogeneous Recurrence Relations Nonhomogeneous Recurrence Relations Divide-and-Conquer

More information

PRIME LABELING OF SMALL TREES WITH GAUSSIAN INTEGERS. 1. Introduction

PRIME LABELING OF SMALL TREES WITH GAUSSIAN INTEGERS. 1. Introduction PRIME LABELING OF SMALL TREES WITH GAUSSIAN INTEGERS HUNTER LEHMANN AND ANDREW PARK Abstract. A graph on n vertices is said to admit a prime labeling if we can label its vertices with the first n natural

More information

Inventory optimization of distribution networks with discrete-event processes by vendor-managed policies

Inventory optimization of distribution networks with discrete-event processes by vendor-managed policies Inventory optimization of distribution networks with discrete-event processes by vendor-managed policies Simona Sacone and Silvia Siri Department of Communications, Computer and Systems Science University

More information

Advanced Analysis of Algorithms - Midterm (Solutions)

Advanced Analysis of Algorithms - Midterm (Solutions) Advanced Analysis of Algorithms - Midterm (Solutions) K. Subramani LCSEE, West Virginia University, Morgantown, WV {ksmani@csee.wvu.edu} 1 Problems 1. Solve the following recurrence using substitution:

More information

Mixing MIR Inequalities with Two Divisible Coefficients

Mixing MIR Inequalities with Two Divisible Coefficients Mixing MIR Inequalities with Two Divisible Coefficients Miguel Constantino, Andrew Miller, Mathieu Van Vyve To cite this version: Miguel Constantino, Andrew Miller, Mathieu Van Vyve. Mixing MIR Inequalities

More information

Decomposition Algorithms for Two-Stage Chance-Constrained Programs

Decomposition Algorithms for Two-Stage Chance-Constrained Programs Mathematical Programming manuscript No. (will be inserted by the editor) Decomposition Algorithms for Two-Stage Chance-Constrained Programs Xiao Liu Simge Küçükyavuz Luedtke James Received: date / Accepted:

More information

Practical Tips for Modelling Lot-Sizing and Scheduling Problems. Waldemar Kaczmarczyk

Practical Tips for Modelling Lot-Sizing and Scheduling Problems. Waldemar Kaczmarczyk Decision Making in Manufacturing and Services Vol. 3 2009 No. 1 2 pp. 37 48 Practical Tips for Modelling Lot-Sizing and Scheduling Problems Waldemar Kaczmarczyk Abstract. This paper presents some important

More information

Formulations and heuristics for the multi-item uncapacitated lot-sizing problem with inventory bounds

Formulations and heuristics for the multi-item uncapacitated lot-sizing problem with inventory bounds International Journal of Production Research ISSN: 0020-7543 (Print) 1366-588X (Online) Journal homepage: http://www.tandfonline.com/loi/tprs20 Formulations and heuristics for the multi-item uncapacitated

More information

Totally Unimodular Multistage Stochastic Programs

Totally Unimodular Multistage Stochastic Programs Totally Unimodular Multistage Stochastic Programs Ruichen (Richard) Sun a, Oleg V. Shylo b, Andrew J. Schaefer a, a Department of Industrial Engineering, University of Pittsburgh, Pittsburgh, PA 15261

More information

Selecting Efficient Correlated Equilibria Through Distributed Learning. Jason R. Marden

Selecting Efficient Correlated Equilibria Through Distributed Learning. Jason R. Marden 1 Selecting Efficient Correlated Equilibria Through Distributed Learning Jason R. Marden Abstract A learning rule is completely uncoupled if each player s behavior is conditioned only on his own realized

More information

Computer Science & Engineering 423/823 Design and Analysis of Algorithms

Computer Science & Engineering 423/823 Design and Analysis of Algorithms Computer Science & Engineering 423/823 Design and Analysis of s Lecture 09 Dynamic Programming (Chapter 15) Stephen Scott (Adapted from Vinodchandran N. Variyam) 1 / 41 Spring 2010 Dynamic programming

More information

The Dual Simplex Algorithm

The Dual Simplex Algorithm p. 1 The Dual Simplex Algorithm Primal optimal (dual feasible) and primal feasible (dual optimal) bases The dual simplex tableau, dual optimality and the dual pivot rules Classical applications of linear

More information

Santa Claus Schedules Jobs on Unrelated Machines

Santa Claus Schedules Jobs on Unrelated Machines Santa Claus Schedules Jobs on Unrelated Machines Ola Svensson (osven@kth.se) Royal Institute of Technology - KTH Stockholm, Sweden March 22, 2011 arxiv:1011.1168v2 [cs.ds] 21 Mar 2011 Abstract One of the

More information

THE MIXING SET WITH FLOWS

THE MIXING SET WITH FLOWS THE MIXING SET WITH FLOWS MICHELE CONFORTI, MARCO DI SUMMA, AND LAURENCE A. WOLSEY Abstract. We consider the mixing set with flows: s + x t b t, x t y t for 1 t n; s R 1 +, x Rn +, y Zn +. It models a

More information

Scenario Grouping and Decomposition Algorithms for Chance-constrained Programs

Scenario Grouping and Decomposition Algorithms for Chance-constrained Programs Scenario Grouping and Decomposition Algorithms for Chance-constrained Programs Siqian Shen Dept. of Industrial and Operations Engineering University of Michigan Joint work with Yan Deng (UMich, Google)

More information

Operations Research Letters. Joint pricing and inventory management with deterministic demand and costly price adjustment

Operations Research Letters. Joint pricing and inventory management with deterministic demand and costly price adjustment Operations Research Letters 40 (2012) 385 389 Contents lists available at SciVerse ScienceDirect Operations Research Letters journal homepage: www.elsevier.com/locate/orl Joint pricing and inventory management

More information

On the complexity of maximizing the minimum Shannon capacity in wireless networks by joint channel assignment and power allocation

On the complexity of maximizing the minimum Shannon capacity in wireless networks by joint channel assignment and power allocation On the complexity of maximizing the minimum Shannon capacity in wireless networks by joint channel assignment and power allocation Mikael Fallgren Royal Institute of Technology December, 2009 Abstract

More information

Network Flows. 6. Lagrangian Relaxation. Programming. Fall 2010 Instructor: Dr. Masoud Yaghini

Network Flows. 6. Lagrangian Relaxation. Programming. Fall 2010 Instructor: Dr. Masoud Yaghini In the name of God Network Flows 6. Lagrangian Relaxation 6.3 Lagrangian Relaxation and Integer Programming Fall 2010 Instructor: Dr. Masoud Yaghini Integer Programming Outline Branch-and-Bound Technique

More information

Primal-Dual Algorithms for Deterministic Inventory Problems

Primal-Dual Algorithms for Deterministic Inventory Problems Primal-Dual Algorithms for Deterministic Inventory Problems Retsef Levi Robin Roundy David B. Shmoys Abstract We consider several classical models in deterministic inventory theory: the single-item lot-sizing

More information

Approximate Dynamic Programming Methods for an Inventory Allocation Problem under Uncertainty

Approximate Dynamic Programming Methods for an Inventory Allocation Problem under Uncertainty Approximate Dynamic Programming Methods for an Inventory Allocation Problem under Uncertainty Huseyin Topaloglu, Sumit Kunnumkal September 7, 2005 Abstract In this paper, we propose two approximate dynamic

More information

Primal-Dual Algorithms for Deterministic Inventory Problems

Primal-Dual Algorithms for Deterministic Inventory Problems Primal-Dual Algorithms for Deterministic Inventory Problems Retsef Levi Robin Roundy David B. Shmoys Abstract We consider several classical models in deterministic inventory theory: the single-item lot-sizing

More information

The common-line problem in congested transit networks

The common-line problem in congested transit networks The common-line problem in congested transit networks R. Cominetti, J. Correa Abstract We analyze a general (Wardrop) equilibrium model for the common-line problem in transit networks under congestion

More information

Distributionally Robust Discrete Optimization with Entropic Value-at-Risk

Distributionally Robust Discrete Optimization with Entropic Value-at-Risk Distributionally Robust Discrete Optimization with Entropic Value-at-Risk Daniel Zhuoyu Long Department of SEEM, The Chinese University of Hong Kong, zylong@se.cuhk.edu.hk Jin Qi NUS Business School, National

More information

Electronic Companion to Optimal Policies for a Dual-Sourcing Inventory Problem with Endogenous Stochastic Lead Times

Electronic Companion to Optimal Policies for a Dual-Sourcing Inventory Problem with Endogenous Stochastic Lead Times e-companion to Song et al.: Dual-Sourcing with Endogenous Stochastic Lead times ec1 Electronic Companion to Optimal Policies for a Dual-Sourcing Inventory Problem with Endogenous Stochastic Lead Times

More information

Distributed Optimization. Song Chong EE, KAIST

Distributed Optimization. Song Chong EE, KAIST Distributed Optimization Song Chong EE, KAIST songchong@kaist.edu Dynamic Programming for Path Planning A path-planning problem consists of a weighted directed graph with a set of n nodes N, directed links

More information

The L-Shaped Method. Operations Research. Anthony Papavasiliou 1 / 44

The L-Shaped Method. Operations Research. Anthony Papavasiliou 1 / 44 1 / 44 The L-Shaped Method Operations Research Anthony Papavasiliou Contents 2 / 44 1 The L-Shaped Method [ 5.1 of BL] 2 Optimality Cuts [ 5.1a of BL] 3 Feasibility Cuts [ 5.1b of BL] 4 Proof of Convergence

More information

A Duality-Based Relaxation and Decomposition Approach for Inventory Distribution Systems

A Duality-Based Relaxation and Decomposition Approach for Inventory Distribution Systems A Duality-Based Relaxation and Decomposition Approach for Inventory Distribution Systems Sumit Kunnumkal, 1 Huseyin Topaloglu 2 1 Indian School of Business, Gachibowli, Hyderabad 500032, India 2 School

More information

CS 6820 Fall 2014 Lectures, October 3-20, 2014

CS 6820 Fall 2014 Lectures, October 3-20, 2014 Analysis of Algorithms Linear Programming Notes CS 6820 Fall 2014 Lectures, October 3-20, 2014 1 Linear programming The linear programming (LP) problem is the following optimization problem. We are given

More information

Stochastic Programming Math Review and MultiPeriod Models

Stochastic Programming Math Review and MultiPeriod Models IE 495 Lecture 5 Stochastic Programming Math Review and MultiPeriod Models Prof. Jeff Linderoth January 27, 2003 January 27, 2003 Stochastic Programming Lecture 5 Slide 1 Outline Homework questions? I

More information

An Optimization Framework for Solving Capacitated Multi-level Lot-sizing Problems with Backlogging

An Optimization Framework for Solving Capacitated Multi-level Lot-sizing Problems with Backlogging Submitted to manuscript (Please, provide the mansucript number!) An Optimization Framework for Solving Capacitated Multi-level Lot-sizing Problems with Backlogging Tao Wu, Leyuan Shi, Joseph Geunes, Kerem

More information

Lecture 6,7 (Sept 27 and 29, 2011 ): Bin Packing, MAX-SAT

Lecture 6,7 (Sept 27 and 29, 2011 ): Bin Packing, MAX-SAT ,7 CMPUT 675: Approximation Algorithms Fall 2011 Lecture 6,7 (Sept 27 and 29, 2011 ): Bin Pacing, MAX-SAT Lecturer: Mohammad R. Salavatipour Scribe: Weitian Tong 6.1 Bin Pacing Problem Recall the bin pacing

More information

A simplex method for uncapacitated pure-supply and pure-demand infinite network flow problems

A simplex method for uncapacitated pure-supply and pure-demand infinite network flow problems A simplex method for uncapacitated pure-supply and pure-demand infinite network flow problems Christopher Thomas Ryan Robert L Smith Marina Epelman July 6, 2017 Abstract We provide a simplex algorithm

More information

Computational Game Theory Spring Semester, 2005/6. Lecturer: Yishay Mansour Scribe: Ilan Cohen, Natan Rubin, Ophir Bleiberg*

Computational Game Theory Spring Semester, 2005/6. Lecturer: Yishay Mansour Scribe: Ilan Cohen, Natan Rubin, Ophir Bleiberg* Computational Game Theory Spring Semester, 2005/6 Lecture 5: 2-Player Zero Sum Games Lecturer: Yishay Mansour Scribe: Ilan Cohen, Natan Rubin, Ophir Bleiberg* 1 5.1 2-Player Zero Sum Games In this lecture

More information

Stochastic Submodular Cover with Limited Adaptivity

Stochastic Submodular Cover with Limited Adaptivity Stochastic Submodular Cover with Limited Adaptivity Arpit Agarwal Sepehr Assadi Sanjeev Khanna Abstract In the submodular cover problem, we are given a non-negative monotone submodular function f over

More information

R O B U S T E N E R G Y M AN AG E M E N T S Y S T E M F O R I S O L AT E D M I C R O G R I D S

R O B U S T E N E R G Y M AN AG E M E N T S Y S T E M F O R I S O L AT E D M I C R O G R I D S ROBUST ENERGY MANAGEMENT SYSTEM FOR ISOLATED MICROGRIDS Jose Daniel La r a Claudio Cañizares Ka nka r Bhattacharya D e p a r t m e n t o f E l e c t r i c a l a n d C o m p u t e r E n g i n e e r i n

More information

Some Results Concerning Uniqueness of Triangle Sequences

Some Results Concerning Uniqueness of Triangle Sequences Some Results Concerning Uniqueness of Triangle Sequences T. Cheslack-Postava A. Diesl M. Lepinski A. Schuyler August 12 1999 Abstract In this paper we will begin by reviewing the triangle iteration. We

More information

On improving matchings in trees, via bounded-length augmentations 1

On improving matchings in trees, via bounded-length augmentations 1 On improving matchings in trees, via bounded-length augmentations 1 Julien Bensmail a, Valentin Garnero a, Nicolas Nisse a a Université Côte d Azur, CNRS, Inria, I3S, France Abstract Due to a classical

More information

Column Generation. i = 1,, 255;

Column Generation. i = 1,, 255; Column Generation The idea of the column generation can be motivated by the trim-loss problem: We receive an order to cut 50 pieces of.5-meter (pipe) segments, 250 pieces of 2-meter segments, and 200 pieces

More information

arxiv: v1 [math.co] 22 Jan 2013

arxiv: v1 [math.co] 22 Jan 2013 NESTED RECURSIONS, SIMULTANEOUS PARAMETERS AND TREE SUPERPOSITIONS ABRAHAM ISGUR, VITALY KUZNETSOV, MUSTAZEE RAHMAN, AND STEPHEN TANNY arxiv:1301.5055v1 [math.co] 22 Jan 2013 Abstract. We apply a tree-based

More information

Notes on induction proofs and recursive definitions

Notes on induction proofs and recursive definitions Notes on induction proofs and recursive definitions James Aspnes December 13, 2010 1 Simple induction Most of the proof techniques we ve talked about so far are only really useful for proving a property

More information

MIP reformulations of some chance-constrained mathematical programs

MIP reformulations of some chance-constrained mathematical programs MIP reformulations of some chance-constrained mathematical programs Ricardo Fukasawa Department of Combinatorics & Optimization University of Waterloo December 4th, 2012 FIELDS Industrial Optimization

More information

CO 250 Final Exam Guide

CO 250 Final Exam Guide Spring 2017 CO 250 Final Exam Guide TABLE OF CONTENTS richardwu.ca CO 250 Final Exam Guide Introduction to Optimization Kanstantsin Pashkovich Spring 2017 University of Waterloo Last Revision: March 4,

More information

Week 4. (1) 0 f ij u ij.

Week 4. (1) 0 f ij u ij. Week 4 1 Network Flow Chapter 7 of the book is about optimisation problems on networks. Section 7.1 gives a quick introduction to the definitions of graph theory. In fact I hope these are already known

More information

A Deterministic Fully Polynomial Time Approximation Scheme For Counting Integer Knapsack Solutions Made Easy

A Deterministic Fully Polynomial Time Approximation Scheme For Counting Integer Knapsack Solutions Made Easy A Deterministic Fully Polynomial Time Approximation Scheme For Counting Integer Knapsack Solutions Made Easy Nir Halman Hebrew University of Jerusalem halman@huji.ac.il July 3, 2016 Abstract Given n elements

More information

On the Approximate Linear Programming Approach for Network Revenue Management Problems

On the Approximate Linear Programming Approach for Network Revenue Management Problems On the Approximate Linear Programming Approach for Network Revenue Management Problems Chaoxu Tong School of Operations Research and Information Engineering, Cornell University, Ithaca, New York 14853,

More information

Disjunctive Decomposition for Two-Stage Stochastic Mixed-Binary Programs with GUB Constraints

Disjunctive Decomposition for Two-Stage Stochastic Mixed-Binary Programs with GUB Constraints Disjunctive Decomposition for Two-Stage Stochastic Mixed-Binary Programs with GUB Constraints Brian Keller Booz Allen Hamilton, 134 National Business Parkway, Annapolis Junction, MD 20701, USA, keller

More information

CS261: A Second Course in Algorithms Lecture #12: Applications of Multiplicative Weights to Games and Linear Programs

CS261: A Second Course in Algorithms Lecture #12: Applications of Multiplicative Weights to Games and Linear Programs CS26: A Second Course in Algorithms Lecture #2: Applications of Multiplicative Weights to Games and Linear Programs Tim Roughgarden February, 206 Extensions of the Multiplicative Weights Guarantee Last

More information

Duality of LPs and Applications

Duality of LPs and Applications Lecture 6 Duality of LPs and Applications Last lecture we introduced duality of linear programs. We saw how to form duals, and proved both the weak and strong duality theorems. In this lecture we will

More information

CS2223 Algorithms D Term 2009 Exam 3 Solutions

CS2223 Algorithms D Term 2009 Exam 3 Solutions CS2223 Algorithms D Term 2009 Exam 3 Solutions May 4, 2009 By Prof. Carolina Ruiz Dept. of Computer Science WPI PROBLEM 1: Asymptoptic Growth Rates (10 points) Let A and B be two algorithms with runtimes

More information

Polynomial Time Algorithms for Minimum Energy Scheduling

Polynomial Time Algorithms for Minimum Energy Scheduling Polynomial Time Algorithms for Minimum Energy Scheduling Philippe Baptiste 1, Marek Chrobak 2, and Christoph Dürr 1 1 CNRS, LIX UMR 7161, Ecole Polytechnique 91128 Palaiseau, France. Supported by CNRS/NSF

More information

Online Appendix: An Economic Approach to Generalizing Findings from Regression-Discontinuity Designs

Online Appendix: An Economic Approach to Generalizing Findings from Regression-Discontinuity Designs Online Appendix: An Economic Approach to Generalizing Findings from Regression-Discontinuity Designs Nirav Mehta July 11, 2018 Online Appendix 1 Allow the Probability of Enrollment to Vary by x If the

More information

Classical Complexity and Fixed-Parameter Tractability of Simultaneous Consecutive Ones Submatrix & Editing Problems

Classical Complexity and Fixed-Parameter Tractability of Simultaneous Consecutive Ones Submatrix & Editing Problems Classical Complexity and Fixed-Parameter Tractability of Simultaneous Consecutive Ones Submatrix & Editing Problems Rani M. R, Mohith Jagalmohanan, R. Subashini Binary matrices having simultaneous consecutive

More information