1 Introduction

The classical lot-sizing problem is defined over a finite planning horizon with discrete time periods. The demand for a single item in each time period is provided as an input. The demand could be satisfied by either manufacturing the item or through the inventory carried from a previous period. There are no restrictions on how much we can manufacture in a given period. Items produced in excess of demand are carried over to the next period in the inventory. The objective is to determine the least cost production plan that satisfies the demands at every period. With the remanufacturing option, the demands can be satisfied either by manufacturing new items or remanufacturing returned items. The returns at every period are provided as an input to the problem. The problem consists of separate inventory costs for carrying remanufactured items and manufactured items (sometimes referred to as serviceable inventory), and there is also a cost incurred for manufacturing or remanufacturing. Remanufacturing is the process of recovering used products by repairing and replacing worn out components so that a product is created at the same quality level as a newly manufactured product. This saves tonnes of landfill every year by providing an environmentally friendlier alternative to classical manufacturing. It also offers industries the potential to significantly save money by exploiting used product inventories and reusing many precious raw materials that are becoming increasingly scarcer. With this motivation, we study the single item production planning problem over a finite horizon with the option of remanufacturing.

The classical lot-sizing problem was introduced in [18] by Wagner and Whitin, where the manufacturing has an unrestricted capacity. They provided a dynamic program that can solve this problem in polynomial time. Various variants of it have been thoroughly studied over the last 6 decades, see [3] for a recent review. Later, the capacitated version was introduced and the problem was shown to be NP-hard, see [6]. A dynamic program was provided in [5] which runs in polynomial time for unary encoding. A fully polynomial time approximation scheme (FPTAS) was provided in [9]. There are a number of variations to the classical lot sizing problem (see for instance [1, 11]). The most pertinent variation to this study with remanufacturing option was first studied in [8] and proved as NP-hard in [15]. A dynamic program with polynomial running time was provided for a special case of when the cost involved are time invariant and there is a joint set-up cost involved for both manufacturing and remanufacturing [14]. A polynomial time algorithm was provided when all costs are linear by solving it as a flow problem [8]. Since then, little progress has been made for polynomial special cases. The general variations of the problem have been shown to be NP-hard [12]. In addition several tight formulations and their comparisons based on their lower bounds were investigated in [4, 12, 13]. In [10], the authors exploit the optimality structure to decompose the problem into polynomially solveable subproblems. A heuristic procedure was then provided, where a polynomial subset of these subproblems were then chosen and solved.

The remainder of the paper is organized as follows. We start with a formal problme description in Sect. 2. Then we show in Sect. 3 that the general case of this problem cannot have an FPTAS unless P = NP. We refer the reader to [7] for concepts about NP-hardness and [17] for concepts about FPTAS. In Sect. 4 we develop a dynamic programming algorithm that runs in polynomial time to solve a special case, where the inventory cost of the returned items is at least as much as the inventory cost of the manufactured items. In addition, we assume that the concave costs involved in manufacturing has a fixed cost and variable cost component. We also assume that the costs are time invariant.

2 Problem description

In the single item economic lot-sizing problem with remanufacturing option (ELSR), we are given a time horizon T. Let \([T] := \{1,\dots , T\}\). For each time period \(t\in [T]\), we are given a demand \(D_t\), and the amount of returned products \(R_t\) that is available for remanufacturing. W.l.o.g., we assume that manufacturing and remanufacturing can be both completed for an item in a single period. We also define the following cost functions for each time period \(t\in [T]\):

  1. 1.

    Manufacturing cost \(f^m_t:{\mathbb {R}}_{\ge 0}\rightarrow {\mathbb {R}}_{\ge 0}\), for all \(t\in [T]\),

  2. 2.

    Remanufacturing cost \(f^r_t:{\mathbb {R}}_{\ge 0}\rightarrow {\mathbb {R}}_{\ge 0}\), for all \(t\in [T]\)

  3. 3.

    Cost of holding manufactured items (we will refer to this as serviceable inventory items) \(h^m_t:{\mathbb {R}}_{\ge 0}\rightarrow {\mathbb {R}}_{\ge 0}\), for all \(t\in [T]\) and

  4. 4.

    Cost of holding returned items (we will refer to this as return inventory items) \(h^r_t:{\mathbb {R}}_{\ge 0}\rightarrow {\mathbb {R}}_{\ge 0}\), for all \(t\in [T]\).

We assume that costs are time dependent. However, our main results in Sect. 4 require that the costs are time invariant. Both inventory costs are linear. The concave cost structure associated with remanufacturing and manufacturing involves in a fixed cost and linear variable cost component , i.e., \(f^i_t(x) = f^i_t + l^i_tx\), when \(x>0\) and 0 otherwise, for \(i \in \{r,m\}\). \(f^r_t, f^m_t (l^r_t, l^m_t)\) are the fixed costs (linear variable costs) incurred in period t for remanufacturing and manufacturing respectively. We slightly abuse the notation here to denote both the fixed cost component and the function by the same notation, but this is easy to distinguish from the context. In each time period, we have the option to remanufacture the returned item, manufacture the item new, or use serviceable inventory from previous period to satisfy the demand. The problem requires a production plan that details the amount of products to be manufactured \(x_t\), remanufactured \(y_t\), the returned items carried in inventory \(p_t\), and serviceable items carried in the inventory \(q_t\), for each time period \(t\in [T]\) such that the demand is met in each time period and we minimize the total cost incurred. Excess returns from the production plan at the end of the planning period will just be disposed at no extra cost. We define the notation \({\mathcal {D}}_{i,j} := \sum _{t=i}^jD_t\) (corr. \({\mathcal {R}}_{i,j} := \sum _{t=i}^jR_t\)) to denote the cumulative demands (corr. returns) between the periods i and j, for all \(0\le i\le j\le T\). We also define an interval of time periods \([u,w]:=\{u,u+1,\dots , w\}\). We now give the formulation for this problem. Let

  • \(y_t (x_t)\): Amount of remanufactured (manufactured) item in time period t,

  • \(p_t (q_t)\): Amount of return (serviceable) inventory carried at time t, and

  • \(u^r_t (u^m_t)\): Binary variable indicating whether we remanufactured (manufactured) in period t.

Then a formulation for the problem is as follows:

figure a

Assuming \(p_0\) and \(q_0\) are 0, we can rewrite the inventory levels in terms of manufactured quantities as below.

$$\begin{aligned}p_t = {\mathcal {R}}_{1,t} - \sum _{i=1}^t{y}_{i}\end{aligned}$$
$$\begin{aligned}q_t = {\mathcal {D}}_{1,t} - \sum _{i=1}^t{y}_{i} - \sum _{i=1}^t{x}_{i}\end{aligned}$$

This would mean that we can accommodate the inventory cost by appropriately modifying the unit production costs (\(l_t^r\) and \(l_t^m\)) as:

$$\begin{aligned}{\hat{l}}_t^r := l_t^r - \sum _{t}^T h_t^r - \sum _{t}^T h_t^m\end{aligned}$$
$$\begin{aligned}{\hat{l}}_t^m := l_t^m - \sum _{t}^T h_t^m\end{aligned}$$

We can then take the unit inventory costs to be 0 and add the constants \(\sum _{t=1}^Th^r_t{\mathcal {R}}_{1,t}\) and \(\sum _{t=1}^Th^m_t{\mathcal {D}}_{1,t}\) to the objective function later. We also denote the modified remanufacturing cost (corr. manufacturing cost) by \({\hat{f}}_r^t(x):= f^r_t + {\hat{l}}_t^rx\) (corr. \({\hat{f}}_m^t(x):= f^r_t + {\hat{l}}_t^mx\)) if \(x > 0\) and 0 otherwise. In Sect. 4, we apply the above modification, which significantly simplifies the presentation of our results.

3 Complexity

The problem is known to be NP-hard in general [12, 15]. We extend the reduction provided in [15] to show the following theorem. Note that the following proof had appeared in an unpublished work of the author [16] using a reduction from the partition problem. We repeat the proof here in this work. The problem could be viewed as non-time invariant or expected to have a zero outgoing return inventory at the end of the planning period.

Theorem 1

ELSR does not have FPTAS unless P = NP.

Proof

We will show this through a reduction from the partition problem, wherein we are given n integers \(a_1, a_2, \dots , a_{n}\). We want to determine if there exists a subset \(S\subset \{1,...,n\}\) of integers such that \(\sum _{i\in S}a_i = A\).

Fig. 1
figure 1

Reduction from partition problem

In our reduction (see Fig. 1), we first take the time horizon \(T=n+1\) and the demand for each time period \(i=1,\dots , T-1=n\) as \(a_i\). The demand is zero for the last time period. We incur a fixed cost of 1 for both manufacturing and remanufacturing. The serviceable inventory cost is n for all time periods and returned inventory cost is 0 for the first n periods and it is n for the last period. The amount of returns in period 1 is \(R_1=A\) and there are no returns for all other time periods, \(R_i=0, i=2,\dots , n+1\). If there is a solution to the partition problem, i.e, YES instance, then the optimal solution to ELSR is less than n. We will use the returns A to satisfy the set of items adding up to A and the remaining items (which also add up to A) are satisfied by remanufacturing, each period resulting in manufacturing or remanufacturing cost (but not both). If the partition problem is a NO instance, i.e., then there are no subsets adding up to A, then we either need to manufacture and remanufacture at least in 1 period in addition to either manufacturing and remanufacturing in every other period or we would incur a serviceable inventory cost or the return inventory cost in the last period, resulting in a cost of at least \(n+1\). This also rules out an FPTAS for the problem, since we can choose an \(\epsilon < \frac{1}{n}\), say \(\epsilon = \frac{1}{2n}\). Now, an algorithm that runs in \(O(f(n,\frac{1}{\epsilon }))\), with \(f(n,\frac{1}{\epsilon }) = f(n,2n)\) being a polynomial function in n, provides an \((1+\epsilon )\)-approximation for the ELSR that can distinguish YES and NO instances of the partition problem in polynomial time as follows. We can transform a PARTITION instance into our ELSR instance. Then we can apply this approximation algorithm. If the output of this algorithm is at most n, then we can conclude the PARTITION instance as YES instance, since the approximation guarantee imply its solution has an objective value at most \(n(1+\epsilon ) < n(1+\frac{1}{n}) = n+1\) and we can only have integer solutions. Else we can conclude that the PARTITION instance is a NO instance. \(\square \)

4 Dynamic program for the special case: return inventory cost is higher than serviceable inventory cost

4.1 Characterization of an optimal solution

We now investigate the special case where \(h^r(p) \ge h^m(p), \text {for all } p\in {\mathbb {R}}_{\ge 0}\). Generally, the serviceable inventory costs tend to be higher as the value of the products carried in the serviceable inventory is higher. In the special case, for instance, where the value of the returned products depreciate faster than a newly manufactured product or when there is no difference between a returned or a manufactured product, the problem has its applications. Note that we also omitted the time index as we are assuming the costs are time invariant. In the sequel, we present a couple of optimality properties which we exploit to design a dynamic program that runs in polynomial time.

Lemma 1

Let \(t^*\) be the last period of remanufacturing. Then there exists an optimal solution where in any remanufacturing period t with \(t<t^*\) it holds \(p_t=0\).

Proof

Consider a remanufacturing period t in an optimal solution where the property does not hold. Hence, some intermediate return stock of \(0< a < {\hat{R}}_t\) is carried. Since \(t<t^*\) by definition, there exists a time period after t in the optimal solution where we remanufacture. Let \({\tilde{t}}\) be the first time period after t, when we remanufacture in the optimal solution. We are also carrying a non-zero return inventory until this time period. If we remanufacture at least a in time \({\tilde{t}}\), then we could have remanufactured this a in time t and carried a units of manufactured inventory until time \({\tilde{t}}\) without increasing the cost, since return inventory cost is higher than manufactured inventory cost. If we produced less than a in time \({\tilde{t}}\), say \({\tilde{a}}\), then we could have produced \({\tilde{a}}\) in time t and produced nothing in time \({\tilde{t}}\) and continue with our argument (with \(a - {\tilde{a}}\) being the new a and the next time period of remanufacturing being the new \({\tilde{t}}\)). If \({\tilde{t}} = t^*\) and \({\tilde{a}} < a\), then we would have a new optimal solution with t being the last time period of remanufacturing. \(\square \)

In other words, the lemma shows that in a remanufacturing period, we always remanufacture as many returns as available (unless for probably the last remanufacturing period). To illustrate the lemma, Fig. 2 shows how we can reroute the remanufactured items to an earlier time period and get a new production plan with better or same cost.

Fig. 2
figure 2

Rerouting the returns remanufactured at \({\tilde{t}}\) to time period t

Lemma 2

There exists an optimal solution in which between two successive manufacturing periods (say t and \(t+j\)), the serviceable inventory falls to zero, i.e., the outgoing serviceable inventory is zero for at least one period between t and \(t+j-1\).

Proof

Let x be the smallest inventory level between the periods t and \(t+j\) and y be the amount of manufactured items in time t. We now reduce the inventory level of all time periods between t and \(t+j\) by \(\min (x,y)\) and decrease the manufactured items in time t by \(\min (x,y)\) and increase the manufactured item in time \(t+j\) by \(\min (x,y)\). If we reduced the manufactured items in t to zero, then we repeat the argument with \(t+j\) and the period before t when we manufactured. Note that this procedure results in a new solution with lower holding cost for serviceables (note that production cost will not decrease because they are time invariant) and with at least one time period with zero serviceable inventory between two successive manufacturing periods. \(\square \)

Lemmas 1 and 2 suggest to decompose an optimal solution into so-called “subplans” according to the following definition.

Definition 1

We refer to a quadruple of time periods [tuvw], such that \(t\le u\le v\le w\), as a subplan of a production plan, if the following conditions are true

  1. 1.

    Incoming serviceable inventory of u is zero

  2. 2.

    Outgoing serviceable inventory of w is zero or \(w=T\)

  3. 3.

    Outgoing serviceable inventory of every period in the interval \([u,w-1]\) is non-zero

  4. 4.

    The last remanufacturing period within the interval [uw] happens at period v

  5. 5.

    The last remanufacturing before period u was at time \(t-1\) (\(t=1\) implies remanufacturing never happened till period u)

A graphical illustration of a subplan, illustrated by the arcs in the network with positive flow, is given in Fig. 3. Lemma 1 suggests that the last subplan in an optimal solution may be different from intermediate ones, as the serviceable inventory may be positive. Indeed, the following lemma shows what the structure of such a subplan is in case no manufacturing takes place.

Fig. 3
figure 3

Illustration of a typical subplan [tuvw]. \([i,j,k, \ell ]\) and [pqrs] are the subplans that precede and succeed [tuvw]. \([i,j,k, \ell ]\) is a subplan without a manufacturing period. Note in the above, we will have \(t= k+1, u=\ell +1, p = v+1\) and \(q=w+1\)

Lemma 3

Let \({\hat{t}}\) be the last period of remanufacturing and assume that no manufacturing takes place. Then there exists an optimal solution \(({\mathbf {p}}^*,{\mathbf {q}}^*)\) where either (i) \(p^*_{{\hat{t}}} = 0\) or (ii) \(q^*_{T} = 0\).

Proof

As the problem can be modelled as an uncapacitated concave cost network flow problem, an optimal solution can be found among the extreme flows. Every flow can be decomposed into paths and cycles and extreme flows do not contain a cycle (see [2]). If we have a solution not satisfying the property, hence \(p^*_{{\hat{t}}} > 0\) and \(q^*_{T} > 0\), then we end up with a cycle in the flow based solution. This is because \(p^*_{{\hat{t}}} > 0\) implies that \(p^*_{T} > 0\) and both the arcs corresponding to \(p^*_{T}\) and \(q^*_{T}\) both end in the same ‘super’ sink node. \(\square \)

Note that in case (i) of Lemma 3 we may end up with positive serviceable inventory in an optimal solution. This case cannot be excluded because we assume that return inventory cost are at least equal to the serviceable inventory cost. Hence, one could save on return inventory cost by remanufacturing all available returns in the last remanufacturing period.

4.2 Dynamic programming algorithm

For a quadruple [tuvw] that specifies a subplan, let \(\phi (t,u,v,w)\) be the least cost incurred in order to satisfy the demands in the interval [uw], \({\mathcal {D}}_{u,w}\), by remanufacturing the return items, \({\mathcal {R}}_{t,v}\), in the interval [uv], and manufacturing the remaining demand, \({\mathcal {D}}_{u,w} - {\mathcal {R}}_{t,v}\), in some period in the interval [uw]. Note that we need a non-trivial procedure to determine a least cost subplan which informs us when to remanufacture in the interval [uv] and manufacture in the interval [uw]. We provide such a procedure in Sect. 4.3 to compute \(\phi (t,u,v,w)\). We call two subplans [tuvw] and [pqrs] as consecutive non-overlapping subplans if \(p=v+1\) and \(q=w+1\) (see Fig. 3). From this, we have that an optimal production plan is a sequence of consecutive non-overlapping subplans and the cost of such a solution is simply obtained by summing the least cost value, \(\phi (.)\), of each subplan in the sequence. We formalise this in the sequel.

We first create a dummy time period \(T+1\) after the time horizon T with 0 return and demand. We define F(tu) be the cost incurred by a production plan that satisfies demands, \({\mathcal {D}}_{u,T+1}\), in the interval \([u,T+1]\), given the last remanfacturing before period u happend in time period \(t-1\) in that production plan. When we set \(t=1\) in the definition of F(tu), we mean that remanufacturing has not happened in the interval [1, u]. We now define a backward recursion to compute F(tu) for all pairs of tu, such that \(1\le t \le u \le T+1\).

$$\begin{aligned} F(t,u) = \min _{(v,w):t\le v\le w\le T}\{\phi (t,u,v,w) + F(v,w+1)\} \end{aligned}$$
(1)

The recursion is initialised by \(F(t,T+1)=0\) for all \(t =1,\dots , T+1\).

Lemma 4

F(tu) calculated according to (1) is the least cost incurred to satisfy demands, \({\mathcal {D}}_{u,T}\), in the interval [uT] when the last remanfacturing before period u happend in time period \(t-1\).

Proof

We show this through induction. Clearly \(F(t,T+1) = 0\) for all t is correct as no demands need to be satisfied. Let us assume \(F(t,k+1)\) be the optimal solution for some k and t and if F(tk) is not the least cost incurred to satify demands \({\mathcal {D}}_{k,T}\), then we either violate the recursion Eq. (1) or the induction hypothesis. \(\square \)

We now have the following corollaries due to Lemma 4.

Corollary 1

F(1, 1) calculated according to (1) is the optimal cost of a production plan to ELSR.

Corollary 2

The dynamic program following the recursive Eq. (1) takes \({\mathcal {O}}(C(\phi (.)) T^4)\), where \(C(\phi (.))\) is the time taken to compute \(\phi (.)\).

4.3 Subplan cost computation using shortest path problem

For a given quadruple [tuvw] that specifies a subplan, we now give a procedure that computes \(\phi (t,u,v,w)\) (the last subplan will be treated later). We will set up a shortest path problem on a directed acyclic graph with \(O(T^2)\) nodes and arcs (see Fig. 4). Each node of the graph is represented by \((i,X_i)\), for all \(i=u, u+1, \dots , w\). This indicates that at time period i, a total of \(X_i\) amount of items have been either remanufactured in the time periods \(\{t,\dots ,i\}\) or manufactured in some time period in \(\{u,\dots ,i\}\). An arc from \((i,X_i)\) to \((i+1,X_{i+1})\) captures the state change of whether remanufacturing or manufacturing happened at time period i and \(i+1\), which we will formalise shortly. We will have one dummy source node \({\mathcal {A}}\) with outgoing arcs to all nodes \((u,X_u)\) and one dummy sink node \({\mathcal {B}}\) that accepts incoming arcs from all nodes \((w,X_w)\).

Fig. 4
figure 4

Shortest path network

We first determine the possible values \(X_i\) can take on if no manufacturing takes place or has taken place yet in the subplan. From Lemma 1, we know that for any \(i \in \{u,\dots ,v-1\}\), the total amount of returns remanufactured in the periods between u and i will be in the set\(\{{\mathcal {R}}_{t,u}, {\mathcal {R}}_{t,u+1},\dots , {\mathcal {R}}_{t,i}\}\) and \(X_i\) will take a value in this set, if manufacturing did not take place in any time period between u and i. From the definition of a subplan, we have v as the last remanufacturing period in that subplan. Thus total amount of remanufactured items between the periods u and i, for all \(i\in \{v,v+1,\dots , w\}\) will be exactly \({\mathcal {R}}_{t,v}\). So \(X_i\) will be in the set \(\{{\mathcal {R}}_{t,v}, {\mathcal {D}}_{u,w}\}\) for all \(i\ge v\) if manufacturing does not take place in the subplan. Note \( {\mathcal {D}}_{u,w}\) is only possible if we are in the last subplan. For the last subplan, we could either manufacture all of the available returns and carry over excess serviceable inventory past the planning period T or we remanufacture exactly the demands in the subplan [tuvw] and the remaining returns \({\mathcal {R}}_{t,v} - {\mathcal {D}}_{u,w}\) will be carried as excess return inventory past the planning period T. Other remanufacturing levels are not possible for the reasons mentioned in the proof of Lemma 3.

We now consider the possible values of \(X_i\) when the additional manufacturing period occurs. By definition of a subplan, the incoming (corr. outgoing serviceable) inventory of time u (corr. time w) is zero. Thus we will manufacture exactly \({\mathcal {M}}_{t,u,v,w}:= {\mathcal {D}}_{u,w} - {\mathcal {R}}_{t,v}\) if we have to satisfy all demands in the period between u and w. For compactness, we will not use the indices to refer to the subplan [tuvw] and just use the notation \({\mathcal {M}}\). From Lemma 2, if manufacturing happens, it will happen exactly once in a subplan. Thus we will manufacture these \({\mathcal {M}}\) items in some time period between u and w. If manufacturing happened in some period between u and i, then the set of possible values that \(X_i\) can take will then be in the set \(\{{\mathcal {M}}, {\mathcal {R}}_{t,u}+{\mathcal {M}}, {\mathcal {R}}_{t,u+1}+{\mathcal {M}},\dots , {\mathcal {R}}_{t,i}+{\mathcal {M}}\}\). Clearly, there are only \({\mathcal {O}}(T)\) many possible values for i and thus for \(X_i\). So we have at most \({\mathcal {O}}(T^2)\) nodes in the graph.

After having defined the graph, we will now focus on computing the arc costs. The cost of an arc \((i,X_i)\) to \((i+1,X_{i+1 })\) will incorporate the cost of manufacturing and remanufacturing at time period \(i+1\). The cost of arcs from the source node \({\mathcal {A}}\) to \((u,X_u)\) will depend on whether manufacturing or remanufacturing took place at u. \(X_u\) can take a value of \(0,{\mathcal {M}}, {\mathcal {R}}_{t,u}\) or \({\mathcal {R}}_{t,u} +{\mathcal {M}}\). The associated costs would then be \(0, {\hat{f}}^m({\mathcal {M}}), {\hat{f}}^r({\mathcal {R}}_{t,u})\) or \({\hat{f}}^r({\mathcal {R}}_{t,u})+{\hat{f}}^m({\mathcal {M}})\) respectively. The outgoing arcs from nodes \((w,X_w)\) to the sink node \({\mathcal {B}}\) will have zero costs. There are at most four possible options for \(X_{i+1}\) to take for the arc, \((i,X_i)\rightarrow (i+1,X_{i+1})\) depending on \(X_i\). We now provide these options and explain its associated cost structure. Any arc with \({\mathcal {D}}_{u,i+1} - X_{i+1} > 0\) is an infeasible arc and will not be included in the graph. This indicates that the total amount produced till \(i+1\) is not sufficient to satisfy the demands till \(i+1\). Otherwise, we have the following cases with corresponding cost:

  1. 1.

    Neither manufacturing nor remanufacturing happens at \(i+1\), \(X_{i+1} = X_{i}\):

    \({\hat{f}}^r(0) + {\hat{f}}^m(0)\)

  2. 2.

    Remanufacturing alone happens at \(i+1\), \(X_{i+1} = {\mathcal {R}}_{t,i+1}\) (or \({\mathcal {R}}_{t,i+1}+{\mathcal {M}}\)) :

    \({\hat{f}}^r(X_{i+1} - X_{i}) + {\hat{f}}^m(0)\)

  3. 3.

    Manufacturing alone happens at \(i+1\), \(X_{i+1} = X_{i} + {\mathcal {M}}\):

    \({\hat{f}}^r(0) + {\hat{f}}^m({\mathcal {M}})\).

  4. 4.

    Both manufacturing and remanufacturing happen at \(i+1\), \(X_{i+1} = {\mathcal {R}}_{t,i+1} +{\mathcal {M}}\):

    \({\hat{f}}^r(X_{i+1}-X_{i}) + {\hat{f}}^m({\mathcal {M}})\)

Note that for \(i=v\), remanufacturing has to take place for the subplan and we will not have the option to not remanufacture as an arc choice for \(X_{i+1}\). Since v is the last time period of remanufacturing, for \(i\in \{v+1,\dots , w\}\), we will not have an option to remanufacture in the above arc choices. If v is also the last period of remanufacturing in the production plan, then \(X_{v}\) can take one additional value of \({\mathcal {R}}_{t,v} - {\mathcal {D}}_{u,w}\) and we can only have incoming arcs from nodes \((v-1,X_{v-1})\) with \(X_{v-1}\in \{0,{\mathcal {R}}_{t,v-1}\}\). The cost of this arc will be \({\hat{f}}^r(X_{v} -X_{v-1})\). Since every node has at most 4 outgoing arcs, the number arcs in the graph is also \({\mathcal {O}}(T^2)\). Note that since we always have arcs from nodes of type \((i,X_i)\) to \((i+1, X_{i+1})\), we have an acyclic graph.

Lemma 5

The shortest path from \({\mathcal {A}}\) to \({\mathcal {B}}\) in the directed acyclic graph correspond to the optimal production plan for the subplan [tuvw].

Proof

A production plan for the subplan, (Sk), can be specified by the subset S of time periods in the interval \(\{t,\dots , v\}\) when remanufacturing took place and a time period \(k\in \{u,\dots , w\}\) when manufacturing took place (\(k=0\) if manufacturing did not happen in the subplan). There is a one-to-one correspondence between a path from \({\mathcal {A}}\) to \({\mathcal {B}}\) in the constructed graph and any such feasible production plan. Let S(i) be the earliest time period on or before time i that is present in set S. The path corresponding to a production plan (Sk) would then be \({\mathcal {A}}\rightarrow (u,{\mathcal {R}}_{t,S(u)})\rightarrow \dots \rightarrow (k,{\mathcal {R}}_{t,S(k)}+{\mathcal {M}}{\mathbb {I}}_{k\ne 0})\rightarrow \dots \rightarrow (w,{\mathcal {R}}_{t,v})+{\mathcal {M}}{\mathbb {I}}_{k\ne 0})\rightarrow {\mathcal {B}}\), where \({\mathbb {I}}_{k\ne 0}\) is an indicator variable with value 1 if \(k\ne 0\) and 0 otherwise. \(\square \)

The above lemma immediately gives us the corollary.

Corollary 3

\(\phi (t,u,v,w)\) can be computed in \({\mathcal {O}}(T^2)\).

The following theorem follows directly from Corollaries 2 and 3.

Theorem 2

The overall dynamic program procedure given by the recursive Eq. (1) takes \({\mathcal {O}}(T^6)\) time.

5 Conclusion and open problems

In this work, we studied the ELSR problem. We first provided a hardness proof that rules out FPTAS for this problem in the general case. Then we showed how to design a polynomial running time algorithm, when we make some assumptions on the cost structure. A number of open problems still remain to be solved. Although we have ruled out a possibility of FPTAS for the general case, we have no proofs for APX-hardness (see [17]) or lack of FPTAS for the time invariant case. The polynomial time algorithm presented only works for fixed cost structure. For general concave costs, we do not yet know the complexity. The algorithm itself may not be practical for large instances but knowing that it is tractable would give incentives to look for linear programming representations and extended formulations for these problems.