Next Article in Journal
Evaluation Procedures for Forecasting with Spatiotemporal Data
Next Article in Special Issue
Profitability Index Maximization in an Inventory Model with a Price- and Stock-Dependent Demand Rate in a Power-Form
Previous Article in Journal
Mass-Preserving Approximation of a Chemotaxis Multi-Domain Transmission Model for Microfluidic Chips
Previous Article in Special Issue
Close-Enough Facility Location
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Effective Algorithms for the Economic Lot-Sizing Problem with Bounded Inventory and Linear Fixed-Charge Cost Structure

by
José M. Gutiérrez
*,
Beatriz Abdul-Jalbar
,
Joaquín Sicilia
and
Inmaculada Rodríguez-Martín
Departamento Matemáticas, Estadística e Investigación Operativa, Universidad de La Laguna, 38200 Santa Cruz de Tenerife, Spain
*
Author to whom correspondence should be addressed.
Mathematics 2021, 9(6), 689; https://doi.org/10.3390/math9060689
Submission received: 2 February 2021 / Revised: 1 March 2021 / Accepted: 16 March 2021 / Published: 23 March 2021

Abstract

:
Efficient algorithms for the economic lot-sizing problem with storage capacity are proposed. On the one hand, for the cost structure consisting of general linear holding and ordering costs and fixed setup costs, an O T 2 dynamic programming algorithm is introduced, where T is the number of time periods. The new approach induces an accurate partition of the planning horizon, discarding most of the infeasible solutions. Moreover, although there are several algorithms based on dynamic programming in the literature also running in quadratic time, even considering more general cost structures and assumptions, the new solution uses a geometric technique to speed up the algorithm for a class of subproblems generated by dynamic programming, which can now be solved in linearithmic time. To be precise, the computational results show that the average occurrence percentage of this class of subproblems ranges between 13% and 45%, depending on both the total number of periods and the percentage of storage capacity availability. Furthermore, this percentage significantly increases from 13% to 35% as the capacity availability decreases. This reveals that the usage of the geometric technique is predominant under restrictive storage capacities. Specifically, when the percentage of capacity availability is below 50%, the average running times are on average 100 times faster than those when this percentage is above 50%. On the other hand, an O T on-line array searching method in Monge arrays can be used when the costs are non-speculative costs.

1. Introduction

The economic lot-sizing problem is a classical deterministic inventory problem which was independently introduced by Wagner and Whitin (abbreviated W-W) [1] and Manne [2] as an extension of the economic order quantity (EOQ) model to cases with time-varying parameters. Accordingly, the goal for this problem consists of determining an optimal procurement schedule that satisfies the demands of time for each of the T time periods in which the planning horizon is divided. The cost structure defined in [1] is the sum of the fixed charge replenishment costs and the linear holding costs for each period. It is a well-known result that among the optimal solutions for the dynamic version of the EOQ, there is at least one satisfying the zero inventory ordering (ZIO) policy (i.e., an order is placed only if the inventory is depleted, which can be used to derive polynomially efficient solutions). Later, Veinott [3] proved that ZIO policies could be likewise used to derive optimal plans when the cost structure was concave in general. Since then, a significant number of contributions have been published in the literature considering diverse extensions of this simple model (refer to Brahimi et al. [4] and Wolsey [5] for more comprehensive surveys and to [6,7,8,9,10] for more recent contributions).
One of these extensions introduces bounds on the inventory levels as a consequence of the storage capacities. This version constitutes a subfamily of lot-sizing problems usually referred to as either the economic lot-sizing problem with bounded inventory (ELSPBI) or the economic lot-sizing problem with storage capacities (ELSPSC), and unfortunately, it has attracted poor attention from researchers. Throughout, the acronym ELSPBI instead of ELSPSC is used to refer to this family of problems. The importance of the ELSPBI lies primarily in its applicability in the context of material requirements planning (MRP) to improve productivity for businesses and industries. In this scenario, the decision-maker is interested in scheduling the production requirements of subassemblies (components, packaging, spare parts and raw materials involved in the manufacturing process) at the different levels within a multi-echelon system, after the firm (organization) determines or estimates the demand of finished products. Since there is normally a significant number of subassemblies involved in the manufacturing processes (e.g., automobile, pharmaceutic and aerospace industries, among others), which do not usually share the same storage area, efficient algorithms for the ELSPBI are essential to reduce the computing times needed to obtain optimal replenishment plans.
The first contribution devoted to the ELSPBI is credited to Love [11], who allowed shortages in the model and introduced a characterization of the optimal plans to derive an O T 3 algorithm based on dynamic programming (the big O notation O g n denotes the asymtotic behavior of an algorithm, and it is used to classify them according to how their run time or space requirements grow as the input size n grows. Accordingly, f n = O g n if there exist M , n 0 such that f n M g n for all n n 0 . Thus, f is bounded above by g (up to a constant factor) asymptotically.). Gutiérrez et al. in [12] and [13] addressed the problem, providing a new characterization and hence a new algorithm to identify optimal plans for the model with and without backorders, respectively. Even though the theoretical time complexity of the algorithm by Love could not be reduced, the computational experiment in [12] revealed that the running times were almost 30% faster than those reported by Love’s method.
In the last few decades, several time complexity improvements have been presented. For instance, Toczylowski [14] transformed the ELSPBI into an equivalent shortest-path problem in a multigraph and developed an O T 2 algorithm to construct the shortest path solution. Nevertheless, even though the new approach shares the same asymptotic running time, it uses an O T log T geometric technique inspired by the algorithm developed by Hershberger [15] to handle the class of subproblems referred to as e l e m e n t a r y   n o n s i n g u l a r   p l a n s with descending   edges , defined in [14]. Basically, a subproblem belongs to this class when its initial period is successor to a breaking   period (a period where the maximum quantity of items to be stored corresponds to the physical storage capacity in that period) and its incoming inventory level is positive.
Sedeño-Noda et al. [16] devised an O T log T algorithm for a case without backorders or setup costs and linear ordering and holding costs. More recently, Atamtürk and Kücükyavuz [17] developed an O T 2 algorithm for a case with linear and fixed holding and ordering costs and without backlogging. Their algorithm is based on the definition of a b l o c k , which is simply a sequence of consecutive periods satisfying certain features of the inventory levels. However, the new method computes the objective value of those blocks with a positive initial inventory level by using an O T log T geometric method, whereas the algorithm in [17] takes O T 2 time.
Taking advantage of the geometrical technique in Wagelmans et al. [18], Liu [19] and Gutiérrez et al. [20] proposed, respectively, O T 2 and O T log T algorithms assuming linear order and holding costs and setup costs, as well as backorders in the former model. Moreover, Liu [19] devised an O T method for the Wagner and Whitin (W-W) cost structure (non-speculative motives). However, Önal et al. [21] and van den Heuvel et al. [22] demonstrated independently that both the algorithm by Liu and the algorithm by Gutiérrez et al. might fail to find an optimal solution in general.
Hwang and van den Heuvel [23] addressed a general concave cost structure for procurement and holding and backlogging, and they presented a dynamic programming algorithm that runs in O T 2 by using matrix-searching in a Monge array. As noted above, the algorithm proposed in this paper is also based on dynamic programming and also runs in O T 2 amortized time, but it uses an O T log T geometric method for a class of subproblems. Concretely, this class of subproblems is related to the concept of w a r e h o u s e   p o i n t in [23]. According to the authors, a period is said to be a warehouse point when there are inventory units available at the beginning of that period.
Most recently, Wolsey [24] derived a versatile and tight model based on a shortest path formulation that was also able to account for stock fixed costs, stock overloads and backlogging. Since the unit flow polyhedron resulting from the constraints was totally unimodular, the extreme points were binary. The author also showed that there was an O T 2 algorithm that solved the problem.
The following list summarizes the most significant contributions to the ELSPBI in the literature (all of them, including the algorithm proposed in this paper, run in quadratic amortized time) along with the corresponding nomenclature of the subproblems, for which the new algorithm outperforms the existing methods. This improvement lies mainly in the use of the O T log T geometric technique instead of using a straightforward O T 2 implementation from the dynamic programming, as in those papers.
ReferenceSubproblem Nomenclature
E. Toczylowski [14]Elementary nonsingular plan
A. Atamtürk, S. Kücükyavuz [17]Block with positive initial inventory level
H.C. Hwang, W. van den Heuvel [23]Warehouse point
The new approach is based on what we have called b r e a k i n g   p e r i o d s (periods when the inventory level could reach its physical storage capacity), which induces a partition of the planning horizon so that each part (subpartition) can be computed in quadratic time. However, the main contribution in this paper is that when a subpartition (subproblem) fulfils the same assumptions of either an elementary nonsingular plan as in [14] or a block as in [17] with a positive initial inventory level, or the subpartition starts with a warehouse point as in [23], the subproblem can be solved in O T log T time by means of a geometric technique, rather than O T 2 as in the previous papers. This kind of subpartition plays a relevant role in the computation of an optimal plan, since the lower the storage capacity, the greater the number of occurrences of these subproblems. Specifically, our computational experiment shows that the average occurrence percentage of this class of subproblems (i.e., the average usage rate of the geometric technique) ranges between 13 % and 45 % , depending on both the total number of periods and the percentage of storage capacity availability. Furthermore, this percentage increases significantly from 13 % to 35 % as the percentage of storage capacity availability decreases. Moreover, the computational experiment also shows that when T is fixed and the percentage of capacity availability is below 50 % , the average running times are on average 100 times faster than those reported when this percentage is above 50 % , due to the intensive use of the geometric technique. Furthermore, the new algorithm discards a large fraction of (infeasible) subproblems generated by the dynamic programming by defining upper bounds on each interval of periods.
For the case with a non-speculative cost structure, Hwang and van den Heuvel [23] claimed that the problem could be solved in O T by employing a geometric technique. However, in this paper, an on-line array-searching method in Monge arrays is proposed to obtain, in linear time, an optimal plan considering the same cost structure.
The natural extension of the single-item ELSPBI also considering the bounds on the production and replenishment quantity at each period has been addressed recently by Akbalik et al. [25]. Concretely, for the single-item CLSP-IB with a constant production capacity, time-dependent inventory bounds and concave costs, the authors showed that the problem could be solved in time O T 4 . They proposed an O T 3 time dynamic programming algorithm for non-speculative costs.
The goal of this paper is to develop efficient algorithms for the ELSPBI with linear holding and ordering costs and set-up (fixed-charge) costs in each period. Firstly, for the general linear cost structure, the original problem is decomposed into subproblems using the notion of breaking   periods . Then, some properties are introduced to effectively define recurrence equations, thereby obtaining a more precise description of the feasible set. Secondly, when the cost structure is non-speculative, it is shown that there exists an optimal plan satisfying the zero inventory ordering (ZIO) policy. Moreover, the array containing the optimal costs of all subproblems is Monge, and hence an on-line array-searching algorithm can be used to construct an optimal plan in O T .
The rest of the article is organized as follows. In Section 2, the problem formulations are defined, and the procedure to decompose the original problem into subproblems is also introduced. The recurrence equations restricted to the subproblems generated by the decomposition method, as well as the procedure to implement such equations, are presented in Section 3. Furthermore, in Section 4, the dynamic programming algorithm for the ELSPBI is sketched, and a numerical example to illustrate the solution is provided. The case with the Wagner and Whitin cost structure is analyzed in Section 5. In Section 6, a computational experiment to validate the complexity and the performance of the new method is carried out. Finally, some final remarks are discussed in Section 7.

2. Problem Formulations and Breaking Periods

The ELSPBI concerns the scheduling of an optimal replenishment plan at a minimum cost that satisfies the demand in each period on time without exceeding the storage capacity. It is assumed that both the replenishment and the withdrawal of items are instantaneously completed at the beginning of each period at the warehouse.
Before formulating the ELSPBI, the following notation is introduced. Let H = 1 , , T be the set of time periods. Throughout, let d t ,   S t and D t = j = t T d j , t H denote the demand and physical storage capacity in period t and the cumulated demand from period t to period T , respectively. Thus, the cumulated demand between two periods t and t can be easily computed as D t , t = D t D t + 1 , where D T + 1 = 0 . Moreover, the cost structure is assumed to be the sum of a setup (fixed charge) cost f t > 0 and linear replenishment and holding costs p t and h t through the planning horizon. Initially, no assumption is made about the speculative nature of the linear costs (i.e., it is assumed to have a general linear cost structure). The case with a non-speculative cost structure is discussed later. Additionally, the decision variables representing the order quantity in period t and its corresponding binary variable are denoted by x t and y t ( y t = 0 if x t = 0 ;   y t = 1 otherwise), respectively. Likewise, the variable I t denotes the inventory level at the end of the period t . The list below summarizes the parameters and variables for each period t H used to formulate the problem. Moreover, the list also provides the notation of the subproblems to be solved by dynamic programming and the data structures used in the implementation of the algorithm.
Parameters
T periods of the planning horizon
H = 1 , , T set of indices of time periods
d t demand for period t
D t = j = t T d j cumulated demand from period t to period T
D t , t = D t D t + 1 cumulated demand between periods t t H
f t setup (fixed charge) cost in period t
p t unit replenishment cost in period t
h t unit holding cost in period t
c t = p t + j = t T h j marginal cost of ordering one unit of an item in period t and holding it up to period T
W t maximum feasible storage usage in period t
l t the greatest period whose demand can be fully met from an order placed in period t
Variables
x t Order or replenishment quantity in period t
y t binary variable such that y t = 0   if x t = 0 ;   y t = 1 otherwise
I t inventory level at the end of period t
I t k inventory point (period) k 0 , 1 :   I t 0 = 0 and I t 1 = W t d t
Problems
g i , j , k , l minimum cost of the subproblem involving periods from i to j 1 with initial and final stock levels I i 1 k and I j 1 l and where at most only one replenishment point (period) is allowed
G i , k minimum cost of the subproblem starting in period i with incoming inventory I i 1 k and final inventory I T 0 = 0
Data Structures
B sorted list of breaking   periods ( t H : W t = S t ) which induce a partition of the planning horizon into subpartitions (subproblems)
P r t array containing the number of the subproblem to which each period t belongs
F n set of line segments related to the subproblem starting in (breaking) period t n + 1
L F n x lower envelope of the set F n computed by an adaptation of the algorithm in [15]
L n sorted list of tuples x , t where the first component denotes the x -coordinate of a breakpoint β in L F n and the second term stands for the line segment in L F n containing β
τ i , j , k , l replenishment point (period) minimizing g i , j , k , l (i.e., τ i , j , k , l = argmin g i , j , k , l )
T matrix containing the replenishment points (periods) τ i , j , k , l for all 1 i < j T + 1 and k , l 0 , 1
s u c c i , k array containing two-tuples j , l where j is the inventory point (period) successor to period i and l 0 , 1 denotes the inventory level at the end of j 1
Accordingly, the first formulation for the ELSPBI is as follows.
Formulation   I min   t = 1 T f t y t + p t x t + h t I t
s . t .
I t + d t = x t + I t 1 t H
I t 1 + x t S t t H
x t y t D t 0 t H
I 0 = I T = 0
x t , I t 0 ;   y t 0 , 1 t H
However, taking into account that I t = j = 1 t x j d j = j = 1 t x j D 1 , t for t H and denoted by c t = p t + j = t T h j , for the marginal cost of ordering one unit of an item in period t and holding it up to period T , the following formulation is obtained as an extension of that in [18].
Formulation   II min   t = 1 T f t y t + c t x t t = 1 T h t D 1 , t
s . t .
t = 1 T x t = D 1 , T
j = 1 t x t D 1 , t t = 1 , , T 1
j = 1 t x t W t + D 1 , t 1 t = 1 , , T
x t y t D t 0 t = 1 , , T
x t 0 ;   y t 0 , 1 t = 1 , , T
The parameter W t stands for the maximum feasible storage usage in period t rather than the physical storage capacity S t , which can be computed as W t = min W t + 1 + d t , S t , t = T 1 , , 1 , with W T = d T . It is noted that W t d t W t + 1 for all t 1 , , T 1 or, in general, W t D t , t W t + 1 and W t D t , t W t + 1 D t + 1 , t for any t t . Moreover, let l t = max j H : W t D t , j   W t < D t , j + 1 be the greatest period whose demand can be fully met from an order placed in period t . Setting l T + 1 = l T = T , the remaining values l t , t = 1 , , T 1 can be determined in O T as shown below.
Determining   l t   for   t = 1 , , T + 1   in   O T
l T + 1 = l T = T
j = 1
For   t = 1 , , T 1 do
While   W t D t , j   and   j T do
j = j + 1
endwhile
l t = j 1
endfor
return   l t ,   t H
To define a dynamic programming recurrence for Formulation II, a key result to characterize optimal plans for the ELSPBI introduced by Love in [11] is used. Assuming that stockouts are not permitted, he claimed that b e t w e e n   t w o   a d j a c e n t   i n v e n t o r y   p o i n t s (periods in which the inventory level is either 0 or at its maximum feasible capacity that can be stored) t h e r e   i s   a t   m o s t   o n e   p r o d u c t i o n   p o i n t (period with nonzero replenishment). Accordingly, let k 0 , 1 be a superscript that indicates the value of the inventory level at the end of the inventory point i so that I i k = 0 if k = 0 and I i k = W i d i if k = 1 . Moreover, let i and j be two consecutive inventory points, and let g i , j , k , l denote the minimum cost of a subproblem involving periods from i to j 1 with inventories on hand I i 1 k at the end of period i 1 and I j 1 l at the end of period j 1 , respectively, and where, at most, only one replenishment point t :   i t l i + 1 and t < j l t + 1 is allowed. Therefore, g i , j , k , l can be expressed as follows:
g i , j , k , l = min i t l i + 1 t < j l t + 1 f t δ D i , j 1 I i 1 k + I j 1 l + c t D i , j 1 I i 1 k + I j 1 l if   I i 1 k D i , t 1   + otherwise
where δ x = 0 if x 0 and δ x = 1 if x > 0 .
It is clear that a naive implementation of (1) to compute all the values g i , j , k , l for i H ,   j H T + 1 and k , l 0 , 1 takes O T 3 time. This complexity actually represents a bottleneck for determining the minimum cost G i , k of a subproblem starting in period i with incoming inventory I i 1 k and ending in period T + 1 with final inventory I T 0 = 0 . Note that G i , k can be recursively expressed as
G i , k = min i < j l l i + 1 + 1 l 0 , 1 g i , j , k , l + G j , l
where G T + 1 , 0 = 0 , G T + 1 , 1 = + and where G 1 , 0 stands for the optimal cost for a corresponding instance of the ELSPBI.
At this point, the goal is to reduce the time complexity for computing (1). To this end, the values that g i , j , k , l can take, depending on the relationship between the positions of the inventory points i and j , are analyzed, as well as the inventory levels at these points. Accordingly, let us denote by B = t H : W t d t < W t + 1 the sorted list of breaking periods (i.e., the set of periods t H for which W t = S t ). The term breaking periods is used to refer to the periods in B because they break the monotonicity when determining the values of W t , t = 1 , .. , T . It is noted that, given two consecutive breaking periods t n < t n + 1 in B , the sequence of values W t n + 1 W t n + 2 W t n + 1 is monotonically nonincreasing. A simple procedure to generate the sorted list B and the array P r is sketched in Procedure 1, where P r t gives the number of the subproblem containing period t H .
Procedure 1: Construct the sorted list  B   and the array  P r   in  O T
B =
n = 1
For  t = 1 , , T 1 do
P r t = n
If   W t < W t + 1 + d t   then
   Insert   t to B
    n = n + 1
endif
endfor
If   W T 1 < W T + d T 1   then  P r T = P r T 1 + 1   else  P r T = P r T 1
If  B   then
 Insert  0 at the beginning of B
 Insert T at the end of B
endif
Return B and P r
The breaking periods in B allow us to decompose the original problem into a set of subproblems. Thus, given two consecutive breaking periods t n , t n + 1 B , the subproblem P t n + 1 , t n + 1 consists of consecutive periods t = t n + 1 , , t n + 1 , satisfying W t D t , t n + 1 1 = W t n + 1 . Therefore, the size of subproblem P t n + 1 , t n + 1 is given by T n = t n + 1 t n + 1 + 1 = t n + 1 t n . It should be noted that if B = for a given instance of the ELSPBI, then the instance is uncapacitated, and hence it can be solved by any of the classical methods running in O T log T (see [18,26,27]). Henceforth, we focus our attention on the case where list B is not empty. Let B denote the number of breaking periods and, consequently, B 1 denotes the number of subproblems. Accordingly, when B , then t 1 = 0 and t B = T .

3. Restricted Recurrence Equations

Now, some properties to reduce from O T 3 to O T 2 the time complexity of the solution method to compute (1) are shown. In Properties 1 and 2 below, the case to determine g i , j , k , l when i and j are within the same subproblem (i.e., when t n + 1 < i < j t n + 1 ) is first addressed. Under this assumption, a result similar to the planning horizon theorem, first introduced by Wagner and Whitin [1] , is provided. Afterward, the case in which i = t n + 1 ,   n = 2 , , B 1 and k = 1 is separately analyzed in Property 3, because computing g t n + 1 , j , 1 , l differs from the former technique for intermediate periods. Specifically, the lower envelope of the set of line segments F n = s t x = f t + c t x   |   t = t n + 1 , , l t n + 1   and   x 0 , W t I t n 1 D t n + 1 , t 1 , related to the subproblem starting in period t n + 1 , is constructed in O T n log T n . Once the lower envelope L F n x = min t n + 1 t l t n + 1 s t x has been constructed using, for instance, an adaptation of the classical approach described in [15] , a list L n of tuples of the form x , t , where the first component stands for the x -coordinate of a breakpoint β in L F n and the second term indicates the line segment s t such that β L F n s t , can be defined. Note that the list L n is sorted in increasing order of the x -coordinates, and we denote by L n m . x and L n m . t the x -coordinate and the corresponding replenishment point t related to the breakpoint at position m in L n , respectively. Besides that, the overall time complexity to construct all the lower envelopes L F n x for n = 2 , , B -1 is
n = 2 B 1 O T n log T n n = 2 B 1 O T n log T   O log T n = 2 B 1 O T n O T log T .
To determine g t n + 1 , j , k , l , it suffices to seek for, by binary search, the consecutive values of x -coordinates in L n , L n m . x and L n m + 1 . x such that L n m . x D t n + 1 , j 1 I t n k + I j 1 l < L n m + 1 . x for j = t n + 2 , , l t n + 1 + 1 and the corresponding line segment s L n m . t . It is noted that the case where n = 1 does not need to be considered because i = t 1 + 1 = 1 , and hence g 1 , j , 1 , l = . Finally, the case in which the inventory points i and j are not in the same subproblem is discussed in Property 4.
Property 1. 
Given two consecutive breaking periods t n < t n + 1 in B , the replenishment point t that minimizes g i , j , k , l is not smaller than the replenishment point t minimizing g i 1 , j , k , l when either t n + 1 < i 1 < j t n + 1 and k , l 0 , 1 or if k = 0 ,   l 0 , 1 and t n + 1 = i 1 .
Proof. 
Suppose that t > t . Then, the following cases can arise:
  • If k = 0 and d i 1 0 , then t = i 1 , and hence t < t ;
  • If k = 0 and d i 1 = 0 , then g i 1 , j , k , l = min f i 1 + c i 1 D i , j 1 + I j 1 l , g i , j , k , l because D i 1 , t 1 = D i , t 1 and I i 2 k = I i 1 k = 0 . Thus, either t = i 1 or t = t , and hence t t ;
  • If k = 1 , then I i 2 k = I i 1 k + d i 1 = W i 1 and I i 1 k = W i 1 d i 1 = W i , and hence
    g i 1 , j , k , l = min f i 1 + c i 1 D i 1 , j 1 I i 2 k + I j 1 l , g i , j , k , l
Clearly, the quantity to be replenished in period i 1 must be greater than 0 (i.e., D i 1 , j 1 I i 2 k + I j 1 l > 0 ) so that period i 1 is a replenishment period. However, D i 1 , j 1 + I j 1 l I i 2 k = W i 1 to ensure the feasibility of the decision, which implies that period i 1 is not actually a replenishment period and g i 1 , j , k , l = g i , j , k , l , and hence t = t . It is noted that the same argument can be applied to the rest of the periods in the subproblem (i.e., for t ^ = i 1 , , j , W i 1 D i 1 , t ^ 1 = W t ^ ), and hence no replenishment is possible if k = l = 1 . Therefore, g i , j , k , l = 0 and t = t = T + 1 ( d u m m y   p e r i o d ). Conversely, if k = 1 and l = 0 , then g i , j , 1 , 0 = since if k = 1 , then necessarily, l = 1 as well.
Moreover, as Equation (3) holds for all t n + 1 < i < j t n + 1 and k , l 0 , 1 , g i , j , k , l   can be determined applying the following result. □
Property 2. 
Given l 0 , 1 and two consecutive breaking periods t n < t n + 1 in B , the cost g i , j , k , l for either k 0 , 1 and t n + 1 < i < j t n + 1 or k = 0 and t n + 1 = i can be recursively determined as follows:
g i , j , k , l = + i f   k > l , 0 i f   k = l = 1 , f i + c i D i , j 1 + I j 1 l i f   k = 0   a n d   d i 0 , min f i δ D i , j 1 + I j 1 l + c i D i , j 1 + I j 1 l , g i + 1 , j , k , l i f   k = 0   a n d   d i = 0 .
Proof. 
By virtue of the characterization described in [11], it is well known that there must be at most one replenishment point between two inventory points i and j . Moreover, as k and l are given for i and j , the inventories on hand are also fixed for all the intermediate periods i t < j , and hence the following cases can be distinguished:
  • If k = 1 , l = 0 and i > t n + 1 , then the inventory on hand at the end of period i 1 is enough to satisfy the demands for periods i through j 1 and to hold I i 1 k D i , j 1 0 units at the end of period j 1 . Therefore, this case is infeasible for all t n < i < j t n + 1 since it is assumed that l = 0 and hence, I j 1 l = 0 . Consequently, g i , j , k , l = + ;
  • If k = l = 1 and i > t n + 1 , then the inventory on hand I i 1 k at the end of period i 1 is enough to satisfy the demands for periods i through j 1 and to hold I j 1 l units at the end of period j 1 . Therefore, there cannot be a replenishment point between i and j , and g i , j , k , l = 0 for all t n + 1 < i < j t n + 1 ;
  • If k = 0 and l = 0 , then there must be at most one replenishment point between i and j whenever D i , j 1 0 . Clearly, the replenishment point must be either the period i or the period that minimizes g i + 1 , j , k , l , according to (3) in Property 1;
  • If k = 0 and l = 1 , then there must be at most one replenishment point between i and j , even when D i , j 1 = 0 . Again, the replenishment point should be either the period i or the period that minimizes g i + 1 , j , k , l , according to (3) in Property 1.
Therefore, the values g i , j , k , l for t n < i < j t n + 1 can be computed in constant time, which leads to a time complexity of O T n 2 . Given that T = n = 1 B 1 T n , then the overall time complexity to compute all the values g i , j , k , l , t n < i < j t n + 1 and n = 1 , , B 1 is O T 2 .
The next property addresses the case in which the inventory point i is a period successor to a breaking period (i.e., i = t n + 1 ) for n > 1 , and hence, either I i 1 k = 0 or I i 1 k = S t n d t n if t n < T . Under this assumption, Property 1 and Property 2 are no longer applicable, because it cannot be ensured that g i , j , k , l = min f i + c i D i , j 1 + I j 1 l I i 1 k , g i + 1 , j , k , l when k = 1   I i 1 k = I t n 1 = S t n d t n . This situation is related to the notions of an elementary nonsingular plan in [14] or a block in [17] with a positive initial inventory level, or a subproblem starting with a warehouse point as in [23], which were solved in O T 2 .
Note that the inventory on hand I i 1 k at the end of period i 1 is not enough to fully meet the demands for periods i through l t n + 1 . Thus, an order should be placed in that period t = argmin g i , j , k , l ; in other words, f t + c t D i , j 1 + I j 1 l I i 1 k = min i t l t n + 1 < j f t + c t D i , j 1 + I j 1 l I i 1 k . Instead of using an O T n sequential search to determine such a period, period t can be obtained in O log T n by a binary search if the lower envelope L F n x of the set of line segments F n on the interval 0 , D t n + 1 , t n + 1 + I t n + 1 1 was previously computed in O T n log T n time. Clearly, given a period j : i < j t n + 1 and l 0 , 1 , if D t n + 1 , j 1 I t n k + I j 1 l 0 , D t n + 1 , t n + 1 + I t n + 1 1 , then g i , j , k , l = . Conversely, either t = L n 1 . t if there is only one entry in L n , or there must be two adjacent entries, say m and m + 1 , in list L n such that L n m . x D t n + 1 , j 1 I t n 1 + I j 1 l < L n m + 1 . x , and hence t = L n m . t . □
Property 3. 
Given k = 1 , l 0 , 1 and n > 1 , the cost g t n + 1 , j , 1 , l for t n + 1 < j l t n + 1 + 1 can be determined as follows:
g t n + 1 , j , 1 , l = 0 i f   D t n + 1 , j 1 + I j 1 l = I t n 1 , f t + c t D t n + 1 , j 1 I t n 1 + I j 1 l i f   t < j   a n d   D t n + 1 , j 1 I t n 1 + I j 1 l 0 , W t I t n 1 D t n + 1 , t 1 +   o t h e r w i s e ,
where the replenishment point t = argmin t n + 1 t l t n + 1 f t + c t D t n + 1 , j 1 I t n 1 + I j 1 l is initially determined in O log T n by a binary search of the first component of the tuples in list L n . If t j , then a sequential search is implemented to finally obtain in O T n the actual period t < j with the minimum cost.
Proof. 
Clearly, if D t n + 1 , j 1 + I j 1 l = I t n k , there is no need to place an order, and g t n + 1 , j , k , l = 0 . Let us assume now that D t n + 1 , j 1 I t n k + I j 1 l 0 , W t I t n 1 D t n + 1 , t 1 . If L n has only one entry, then t = L n 1 . t . Otherwise, there must be two consecutive entries, say m and m + 1 , in L n such that L n m . x D t n + 1 , j 1 I t n 1 + I j 1 l < L n m + 1 . x . Thus, the replenishment point t = L n m . t is optimal for g t n + 1 , j , 1 , l because it is feasible (i.e., D t n + 1 , t 1 I t n 1 ), and the cost returned by (5) is minimal because the line segment s t is either partially or completely contained in L F n , or s t is the feasible segment ( t < j ) above the lower envelope with a minimum cost. On the contrary, when D t n + 1 , j 1 + I j 1 l < I t n k for some period, j t n + 1 is due to k = 1 and, thereby, the inventory on hand I t n 1 = S t n d t n is above the requirements to satisfy D t n + 1 , j 1 + I j 1 l . Consequently, an infeasibility occurs, since the actual inventory on hand at the end of period j 1 is greater than I j 1 l , which leads to g t n + 1 , j , k , l = + . □
The case in which periods i and j are not in the same subproblem P t n + 1 , t n + 1 (i.e., t n < i t n + 1 < j ) is addressed below.
Property 4. 
Given k , l 0 , 1 , the cost g i , j , k , l for t n < i t n + 1 < j can be recursively determined as follows:
g i , j , k , l = { f i + c i D i , j 1 + I j 1 l i f   k = 0 ,   D i , j 1 + I j 1 l W i ,   d i 0 , min f i δ D i , j 1 + I j 1 l + c i D i , j 1 + I j 1 l , g i + 1 , j , k , l i f   k = 0 ,   D i , j 1 + I j 1 l W i ,   d i = 0 , g i + 1 , j , k , l i f   k = 0 ,   D i , j 1 + I j 1 l > W i ,   d i = 0 , g t n + 1 + 1 , j , k , l i f   k = 1   a n d   i 1 > t n , + o t h e r w i s e .
Proof. 
Let us analyze the following cases:
  • When k = 0 and D i , j 1 + I j 1 l W i , then it is feasible to place a single order to satisfy the required quantity D i , j 1 + I j 1 l as in Property 2, depending on whether d i 0 or d i = 0 . When D i , j 1 + I j 1 l > W i , no replenishment can be placed in period i . However, if d i = 0 , then g i , j , k , l = g i + 1 , j , k , l ;
  • When k = 1 , two situations may occur. On the one hand, when i 1 > t n , the inventory on hand I i 1 k at the end of period i 1 is enough to satisfy the demands for periods i through t n + 1 and to hold I t n + 1 k = W t n + 1 d t n + 1 units at the end of period t n + 1 . Therefore, no replenishment can be placed between i and t n + 1 , since the inventory capacity in that period is at its maximum. The only admissible decision is to order D t n + 1 + 1 , j 1 + I j 1 l I t n + 1 k in that period t n + 1 + 1 t l t n + 1 + 1 that minimizes the corresponding cost, and hence g i , j , k , l reduces to calculate g t n + 1 + 1 , j , k , l using Property 3. On the other hand, if i 1 = t n , two replenishments must be placed to meet the quantities D t n + 1 , t n + 1 + I t n + 1 k I t n 1 and D t n + 1 + 1 , j 1 I t n + 1 k + I j 1 l with k 0 , 1 , and hence g i , j , k , l = + . The exception in this case is when j = t n + 1 + 1 . If this occurs, k and l must be necessarily equal, and the cost g t n + 1 , t n + 1 + 1 , k , l is computed according to Equation (5) in Property 3;
  • For the remaining cases, either two replenishments must be placed to satisfy the quantities D i , t n + 1 + I t n + 1 k and D t n + 1 + 1 , j 1 I t n + 1 k + I j 1 l , or the inventory on hand I j 1 l = W t n + 1 D t n + 1 , j 1 at the end of period j 1 does not correspond to the actual value for that variable (i.e., I j 1 l = W j 1 d j 1 ) when l = 1 . Both cases lead to infeasibilities, and hence g i , j , k , l = + .
An additional array to store the replenishment point related to g i , j , k , l is necessary. Thus, let T = τ i , j , k , l be a T × T + 1 × 2 × 2 matrix in which each element τ i , j , k , l represents the replenishment point that minimizes g i , j , k , l (i.e., τ i , j , k , l = argmin g i , j , k , l ). It is clear that when g i , j , k , l = + , then τ i , j , k , l = T + 1 to indicate that a replenishment cannot be placed between the inventory points i and j when the inventories on hand are I i 1 k and I j 1 l , respectively. Moreover, if k = 0 and D i , j 1 + I j 1 l = 0 , then g i , j , k , l = 0 in Property 2 and Property 4, and therefore the procedure sets τ i , j , k , l = T + 1 to also specify that an order cannot be placed between periods i and j . □
The method to determine the values g i , j , k , l and τ i , j , k , l for all combinations i , j , k , l H × H T + 1 × 0 , 1 × 0 , 1 is sketched in Procedure 2. Clearly, g i , j , k , l = + for those combinations with i j , and hence τ i , j , k , l = T + 1 . Moreover, setting l T + 1 = T ensures that the index j does not exceed the correct range when l i = T .
Procedure 2: Determine  g i , j , k , l   and  τ i , j , k , l   for  1 i < j T + 1   and  k , l 0 , 1   in  O T 2
apply Procedure 1 to obtain the sorted list B and vector P r
If  B =  then use the geometric technique developed by Wagelmans et al. in [18]
else
  initialize g i , j , k , l = + and τ i , j , k , l = T + 1 , 1 i T + 1 , 1 j T + 1 and k , l 0 , 1
  initialize g T , T + 1 , k , 0 = f T δ d T I T 1 k + c T d T I T 1 k and τ T , T + 1 , k , 0 = T , for k 0 , 1
  initialize g T , T + 1 , k , 1 = g T , T + 1 , k , 0 and τ T , T + 1 , k , 1 = T , for k 0 , 1
  compute the lists L n , n = 2 , , B 1 in O T log T using an adaptation of the algorithm in [15]
   For  i = T 1 , , 1   do
    n = P r i
    For  j = i + 1 , , l l i + 1 + 1   do
     For  k = 0 , 1 do 
      For  l = 0 , 1   do
       If  i = t n + 1   then
        If  k = 0   then
        If  j t n + 1 + 1  then compute  g t n + 1 , j , 0 , l using (4) in Property 2
         If  g t n + 1 , j , 0 , l +  then
           τ t n + 1 , j , 0 , l = argmin g t n + 1 , j , 0 , l
         endif
        else
         compute g t n + 1 , j , 0 , l using (6) in Property 4
         If g t n + 1 , j , 0 , l + then
           τ t n + 1 , j , 0 , l = argmin g t n + 1 , j , 0 , l
         endif
        endif
       elseif  i > 1   then
        compute g t n + 1 , j , 1 , l using (5) in Property 3
        If  g t n + 1 , j , 1 , l +   then
          τ t n + 1 , j , 1 , l = argmin g t n + 1 , j , 1 , l
         endif
       endif
      else
       If  i > t n + 1 and j t n + 1 then
        compute g i , j , k , l using (4) in Property 2
        If  g i , j , k , l +   then
          τ i , j , k , l = argmin g i , j , k , l
         endif
       else
        compute g i , j , k , l using (6) in Property 4
        If  g i , j , k , l +   then
          τ i , j , k , l = argmin g i , j , k , l
        endif
       endif
      endif
     endfor
    endfor
    endfor
  endfor
endif
return g i , j , k , l and τ i , j , k , l for 1 i < j T and k , l 0 , 1

4. Solution Method and Numerical Example

Once all the values g i , j , k , l and τ i , j , k , l are computed, G 1 , 0 is solved in O T 2 as shown in Algorithm 1. This algorithm assumes that B ; otherwise, more efficient O T log T algorithms could be used (see, for instance, [18,26,27]). A new array, s u c c , is introduced in which each element s u c c i , k , 1 i T , and k 0 , 1 is a two-tuple j , l . Precisely, the first component s u c c i , k . j represents the inventory point j adjacent to the inventory point i , and the second term s u c c i , k . l stands for the inventory level I j 1 l at the end of period j 1 . This array is used in Procedure 3 to construct the optimal plan for an instance of the ELSPBI.
Algorithm 1:Determine G 1 , 0 in O T 2 when B
apply Procedure 2 to compute g i , j , k , l and τ i , j , k , l for 1 i < j T + 1 and k , l 0 , 1
initialize G i , k = + and s u c c i , k = 0 , 0 for all 1 i T + 1 and k = 0 , 1
initialize G T + 1 , 0 = 0
For i = T , , 1 do
For j = i + 1 , ,   l l i + 1 + 1 do
  For k = 0 , 1 do
   For l = 0 , 1 do
    If G i , k > g i , j , k , l + G j , l then
      G i , k = g i , j , k , l + G j , l
      s u c c i , k = j , l
    endif
   endfor
  endfor
endfor
endfor
return G 1 , 0
As outlined in Procedure 3, an optimal schedule x 1 , x 2 , , x T and y 1 , y 2 , , y T can be obtained in O T for a given instance of the ELSPBI.
Procedure   3 :   Determine   an   optimal   plan   x 1 , x 2 , , x T   and   y 1 , y 2 , , y T   in   O T
initialize x 1 , x 2 , , x T and y 1 , y 2 , , y T to 0 , 0 , , 0
k = 0
i = 1
While  i < T + 1   do
j = s u c c i , k . j
l = s u c c i , k . l
x τ i , j , k , l = D i , j 1 + I j 1 l I i 1 k
y τ i , j , k , l = 1
i = j
k = l
endwhile
return x 1 , x 2 , , x T and y 1 , y 2 , , y T
A simple example consisting of T = 5 periods is solved to illustrate Algorithm 1. The parameters and preliminary values are shown in Table 1, where it is assumed that c t = p t and hence h t = 0 for t = 1 , , 5 . Otherwise, if h t 0 for some period t , then the quantity t = 1 T h t D 1 , t must be subtracted from the value G 1 , 0 to obtain the actual minimum cost.
Since B = 0 , 2 , 3 , 5 , three subproblems, namely P 1 , 2 ,   P 3 , 3 and P 4 , 5 , are defined, and hence the values g i , j , k , l for 1 i < j 6 and k , l 0 , 1 can be determined according to Procedure 2. Precisely, Table 2 shows four T + 1 × T + 1 arrays G k , l = g i , j = g i , j , k , l , one for each combination of k , l 0 , 0 , 0 , 1 , 1 , 0 , 1 , 1 , in which the element occupying row i and column j corresponds to the cost g i , j , k , l .
Additionally, the T × T + 1 arrays T k , l = τ i j = τ i , j , k , l corresponding to each combination k , l are shown in Table 3.
A T + 1 × 2 array G = G i , k is used now to store the minimum cost of the problems starting in period i , where 1 i T , and ending in period T + 1 , with the inventory on hand being I i 1 k , k 0 , 1 . The arrays G and s u c c i , k are shown in Table 4.
Procedure 3 leads to the optimal plan x 1 = 6 , x 2 = 0 , x 3 = 5 , x 4 = 2 , x 5 = 10 and y 1 = 1 , y 2 = 0 , y 3 = 1 , y 4 = 1 , y 5 = 1 with a minimum cost of 176.
Observe that the optimal plan ordered six units in period 1, which did not correspond to the sum of demands or to the physical capacity of the warehouse, but to the maximum feasible storage usage ( W 1 ). The same occurred in period 3, where the sum of the inventory on hand ( I 2 = 4 units) plus the order quantity ( x 3 = 5 units) equaled W 3 = 9 . However, the quantity ordered in period 4 ( x 4 = 2 units) was such that when it was added to the inventory on hand ( I 3 = 1 units), it just satisfied the demand in that period ( d 4 = 3 units). Finally, the order quantity in period 5 met the demand for that period ( d 5 = W 5 = 10 units). It is worth noting that the maximum feasible storage usage ( W t ) and not the physical storage capacity ( S t ) was the parameter that was involved in computing an optimal solution.

5. The Wagner and Whitin Cost Structure

The cost structure proposed by Wagner and Whitin (W-W) in [1] assumes that the replenishment costs are constant (i.e., p t = p 0 ) and the holding costs are nonnegative (i.e., h t 0 , t = 1 , , T ). Accordingly, the marginal costs c t = p t + t = t T h t satisfy the inequality c t c t + 1 for t = 1 , , T 1 . This cost structure is also referred to as nonspeculative costs, because advancing partial orders to meet future demands does not lead to less costly solutions.
Although this case has been previously studied in [23], where the authors devised an O T algorithm inspired by the geometric technique introduced in [18], an alternative approach based on the on-line array-searching O T method in Monge arrays described in [28], is proposed. To this end, the following properties are introduced.
Property 5. 
If a Wagner and Whitin cost structure is assumed, a ZIO optimal plan for the ELSPBI can be determined.
Proof. 
For a contradiction, let us assume an optimal plan for the ELSPBI with Wagner and Whitin costs, where there are at least two consecutive replenishment points t < t such that I t 1 > 0 . Clearly, either a better plan or an equally optimal plan can be derived by simply ordering I t 1 units in period t rather than in period t , which leads to savings in c t c t I t 1 . By applying the same argument to the rest of the adjacent non-ZIO replenishment periods, a ZIO optimal schedule is obtained. □
According to Property 5, the search of the optimal plan must be narrowed to the case where the inventories on hand for any pair of consecutive inventory points i and j are zero (i.e., k = l = 0 , and so I i 1 k = I j 1 l = 0 ). Moreover, as Property 1 holds, it follows that τ i , j , 0 , 0 τ i + 1 , j , 0 , 0 and s u c c i , 0 . j s u c c i + 1 , 0 . j . Given that k = 0 in the optimal solution, Property 3 is not applicable. For notational convenience, let G i be the minimum cost of the problem starting in period i and ending in period T when the inventory on hand at the end of period i 1 is zero, and let s u c c i be the replenishment period successor to period i . It is noted that G i = G i , 0 and s u c c i = s u c c i , 0 . j , where G i , 0 and s u c c i , 0 . j were defined in the previous section. Similar to Wagelmans et al. [24], the cost G i can be formulated using the following recurrence equation:
G i = min i < j s u c c i + 1 f i + c i D i , j 1 + G j i f   d i > 0 min min i + 1 < j s u c c i + 1 f i + c i D i , j 1 + G j , G i + 1 i f   d i = 0 ,
where G T + 1 = 0 and s u c c T + 1 = T + 1 .
To compute the current G T ,   , G 1 in linear time, let us consider the T × T + 1 array A = a i , j , where
a i , j = f i + c i D i , j 1 + G j i f   i < j l i + 1 , + i f   i j   o r   j > l i + 1 .
Following similar observations to those introduced by Aggarwal and Park in [26], G i can be expressed according to the following recurrence equation for 1 i T :
G i = min i < j l i + 1 a i , j i f   d i > 0 , min min i + 1 < j l i + 1 a i , j , G i + 1 i f   d i = 0 .
At this point, let us demonstrate that A is a Monge array. Note that A is a Monge array if and only if for 1 i 1 < i 2 T and 1 j 1 < j 2 T + 1 , the following inequality holds:
a i 1 , j 1 + a i 2 , j 2 a i 1 , j 2 + a i 2 , j 1
Property 6. 
A is a Monge array.
Proof. 
Let A = a k , l denote a 2 × 2 subarray of A , and for k , l 1 , 2 , let r k , l = f i k + c i k D i k , j l 1 + G j l < + be a real number. Accordingly, sixteen setting types of A may be given:
r 1 , 1 r 1 , 2 r 2 , 1 r 2 , 2 , r 1 , 1 r 1 , 2 r 2 , 1 + , + + + r 2 , 2 , + + + +
Note that only those subarrays A with real numbers in the secondary diagonal might not satisfy (7). Therefore, the next four cases could be critical and thereby need to be evaluated:
1.
If A = r 1 , 1 r 1 , 2 r 2 , 1 r 2 , 2 .
Given that c i 2 c i 1 , then c i 2 D j 1 , j 2 1 c i 1 D j 1 , j 2 1 , and when adding f i 1 + G j 1 + f i 2 + G j 2 to both sides of the inequality, the following holds:
f i 1 + G j 1 + c i 2 D j 1 , j 2 1 + f i 2 + G j 2 f i 1 + G j 1 + c i 1 D j 1 , j 2 1 + f i 2 + G j 2 .
Moreover, as D j 1 , j 2 1 = D i 2 , j 2 1 D i 2 , j 1 1 and also D j 1 , j 2 1 = D i 1 , j 2 1 D i 1 , j 1 1 , then
f i 1 + c i 1 D i 1 , j 1 1 + G j 1 + f i 2 + c i 2 D i 2 , j 2 1 + G j 2 f i 1 + c i 1 D i 1 , j 2 1 + G j 2 + f i 2 + c i 2 D i 2 , j 1 1 + G j 1 ,
and hence r 1 , 1 + r 2 , 2 r 1 , 2 + r 2 , 1 so that A holds (7);
2.
When A = r 1 , 1 r 1 , 2 r 2 , 1 + .
This combination of values for a 2 , 2 = + and a 2 , 1 = r 2 , 1 < + can only occur when j 2 > l i 2 + 1 . However, if j 2 > l i 2 + 1 , then j 2 > l i 2 + 1 l i 1 + 1 since i 1 < i 2 , which leads to a 1 , 2 = + . Therefore, the resulting subarray is a Monge array;
3.
If A = + r 1 , 2 r 2 , 1 r 2 , 2 .
Once again, the combination of values for a 1 , 1 = + and a 2 , 1 = r 2 , 1 < + implies that j 1 > l i 1 + 1 , which leads to j 2 > j 1 > l i 1 + 1 , and hence a 1 , 2 = + . Thus, the resulting subarray satisfies (7);
4.
When A = + r 1 , 2 r 2 , 1 + .
Following identical arguments to those in the preceding points, it holds that the resulting subarray is a Monge array.
Given that all the critical cases for A are either Monge or reduced to Monge subarrays, then A is also a Monge array.
Analogous to [26], the Eppstein’s on-line array-searching algorithm in [28] can be applied to determine an optimal plan for the ELSPBI with a W-W cost structure in O T time, since G i can be computed in constant time from G i + 1 and the i th column minimum of A , and a i , j can be also obtained from G i in constant time for all 1 i T and 1 j T + 1 . □

6. Computational Experiment

In order to validate both the time complexity and the performance of Algorithm 1, a computational experiment was carried out using C++ (g++ 5.1) and CPLEX on a MacBook Pro with an Intel Core i5 at 2.3 GHz and 8 GB of RAM running OS X Yosemite.
For each period T from 10 to 100, with a step of 10, ten instances were randomly generated for each problem, with demands, setup costs and production costs uniformly distributed in the interval 0 ,   10 . Moreover, the holding costs were set to 0 in all cases, and A 5 , 10 , 20 , 25 , 50 , 100 denotes the percentage of capacity availability. Thus, if A = 20 for one instance, this means that the warehouse allowed an extra capacity of 20 % of the accumulated demand up to period T . Therefore, the physical storage capacity in period t , S t , was uniformly distributed in the interval d t , d t + A 100 D t + 1 to ensure the feasibility of the instances.
The output data reported by CPLEX and Algorithm 1 are shown in Table 5. Specifically, columns one and seven indicate the number of periods ( T ), whereas columns two and eight show the percentage of capacity availability ( A ). The third and fourth columns, as well as columns nine and ten, provide the average running times (in seconds) of the ten instances for a fixed T reported by CPLEX and Algorithm 1, respectively. Finally, the fifth and sixth columns, and similarly the eleventh and twelfth columns, list the average number of breaking periods ( β ) and the average usage rate of Property 3 ( P r o p .   3 ), respectively. Specifically, the P r o p .   3 columns show the average rate of the number of calls to Property 3 (i.e., the usage of the geometric technique), which is defined as the quotient between the number of calls to Property 3 and the total number of calls to all the properties (i.e., P r o p .   3 / i = 2 4 P r o p .   i ) in Procedure 2.
As expected, the running times in Table 5 reported by Algorithm 1 were practically negligible when compared with those obtained by CPLEX. Furthermore, for a fixed T , the average running times provided by Algorithm 1 were almost constant, and the average number of breaking periods in B diminished as parameter A increased. Note that the values in the column labeled β might have been greater than T due to periods 0 and T being included in B . Moreover, the column P r o p . 3 in Table 5 suggests that the average rate of the number of calls to Property 3 decreased as the percentage of capacity availability increased. Conversely, this rate increased to vary within the interval 35 % , 45 % in the most extreme conditions; that is when the percentage of storage capacity availability ( A ) decreased to 5 % . The latter shows that the O T log T geometric technique used in this paper played a decisive role in the resolution of the ELSPBI when the storage capacity availability was limiting, since it outperformed the O T 2 approaches previously proposed in the literature for the same family of subproblems.
A comparison of the average running times reported by both CPLEX (in red) and Algorithm 1 (in blue) for different values of A is shown in Figure 1, as well as the expression of the best fit curve for the computing times of Algorithm 1 and the coefficient of determination ( R square), which was above 97 % in all the cases. It is worth noting that when A was below 50 % , the average running times were on average 100 times faster than those reported when A was above 50 % as a result of applying Property 3 (the geometric technique).
Furthermore, the average number of breaking periods in B versus the parameter A for different values of T is depicted in Figure 2. As one would expect, the average number of breaking periods β tended to diminish with the increasing percentage of capacity availability, as the empirical results in both Table 5 and Figure 2 reveal. According to the same results, the linear relationship between both parameters for relatively small values of T became a quadratic curve as T increased.

7. Concluding Remarks

Two dynamic programming algorithms for the ELSPBI were presented. For the general linear cost structure, the new O T 2 approach focused on the evaluation of the feasible solution set by conveniently decomposing the original problem into subproblems. As the computational experiment revealed, the average number of such subproblems diminished as the storage capacity per period increased. Moreover, an O T log T geometric technique was used to speed up the algorithm for those subproblems, fulfilling the same assumptions of either an elementary nonsingular plan as in [14] or a block with a positive initial inventory level as in [17], or the subpartition started with a warehouse point as in [23]. The computational results also showed that the usage of this technique was predominant under restrictive storage capacities, and hence when the percentage of capacity availability was below 50 % , the average running times were on average 100 times faster than those reported when this percentage was above 50 % .
On the other hand, for the case with non-speculative costs, we showed that an O T on-line array-searching method in Monge arrays could be used.
Clearly, the proposed algorithm cannot be used for a concave cost structure, and the method in [23] should be applied instead, even when an efficient algorithm for optimal piecewise linear function approximation is available, because its time complexity would likely be worse than O T 2 . However, the case where the stockouts are assumed to be backlogged (when the demand in a period cannot be met on time and it is met with an order placed in a later period) can be analyzed in future research to deal with issues (e.g., vacations or strikes) which can imply a disruption in the production process. Therefore, it should be demonstrated that the geometric technique used in this paper is also valid when the demands can be backlogged.
Another even more interesting topic is to determine whether an O T log T algorithm can be devised for the ELSPBI with either a general concave or linear and fixed-charge cost structure. Although several researchers have focused their interest on this topic in the last few decades, this is currently a challenging open problem which likely will be overcome using some technique derived from the computational geometry.

Author Contributions

Investigation, J.M.G., B.A.-J. and J.S.; Methodology, J.M.G.; Validation, B.A.-J. and J.S.; Visualization, I.R.-M.; Writing—review & editing, I.R.-M. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by Ministerio de Ciencia e Innovación (Spain) grant number PID2019-104928RB-I00.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Acknowledgments

We thank Marcos Colebrook for his assistance with the programming of the algorithms.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Wagner, H.M.; Whitin, T.M. Dynamic version of the economic lot size model. Manag. Sci. 1958, 5, 89–96. [Google Scholar] [CrossRef]
  2. Manne, A.S. Programming of economic lot sizes. Manag. Sci. 1958, 4, 115–135. [Google Scholar] [CrossRef] [Green Version]
  3. Veinott, A.F. Unpublished Class Notes for the Program in Operational Research; Standford University: Standford, CA, USA, 1963. [Google Scholar]
  4. Brahimi, N.; Dauzère–Pérès, S.; Najid, N.M.; Nordli, A. Single item lot sizing problems. Eur. J. Oper. Res. 2006, 168, 1–16. [Google Scholar] [CrossRef]
  5. Wolsey, L.A. Progress with single-item lot-sizing. Eur. J. Operational Res. 1995, 86, 395–401. [Google Scholar] [CrossRef]
  6. Jing, F.; Mu, Y. Dynamic lot-sizing model under perishability, substitution, and limited storage capacity. Comput. Oper. Res. 2020, 122, 104978. [Google Scholar] [CrossRef]
  7. Phouratsamay, S.L.; Kedad-Sidhoum, S.; Pascual, F. Two-level lot-sizing with inventory bounds. Discret. Optim. 2018, 30, 1–19. [Google Scholar] [CrossRef] [Green Version]
  8. Suzanne, E.; Absi, N.; van den Heuvel, W. A single-item lot-sizing problem with a by-product and inventory capacities. Eur. J. Oper. Res. 2020, 287, 844–855. [Google Scholar] [CrossRef]
  9. Fan, J.; Wan, G. Joint optimization of dynamic lot and warehouse sizing problems. Eur. J. Oper. Res. 2018, 267, 849–854. [Google Scholar]
  10. Zhong, J.; Chu, F.; Chu, C.; Yang, S. Polynomial dynamic programming algorithms for lot sizing models with bounded inventory and stockout and/or backlogging. J. Syst. Sci. Syst. Eng. 2016, 25, 370–397. [Google Scholar] [CrossRef]
  11. Love, F. Bounded production and inventory models with piecewise concave costs. Manag. Sci. 1973, 20, 313–318. [Google Scholar]
  12. Gutiérrez, J.M.; Colebrook, M.; Abdul-Jalbar, B.; Sicilia, J. A new characterization for the dynamic lot size problem with bounded inventory. Comput. Oper. Res. 2003, 30, 383–395. [Google Scholar] [CrossRef]
  13. Gutiérrez, J.M.; Sedeño-Noda, A.; Colebrook, M.; Sicilia, J. A polynomial algorithm for the production/ordering planning problem with limited storage. Comput. Oper. Res. 2007, 34, 934–937. [Google Scholar] [CrossRef]
  14. Toczylowski, E. An O T 2 algorithm for the lot-sizing problem with limited inventory levels. In Proceedings of the INRIA/IEEE Symposium on Emerging Technologies and Factory Automation, Paris, France, 10–13 October 1995; Volume 3, pp. 77–85. [Google Scholar]
  15. Hershberger, J. Finding the upper envelope of n line segments in O n log n time. Inf. Process. Lett. 1989, 33, 169–174. [Google Scholar] [CrossRef]
  16. Sedeño-Noda, A.; Gutiérrez, J.M.; Abdul-Jalbar, B.; Sicilia, J. An O T log T algorithm for the dynamic lot size problem with limited storage and linear costs. Comput. Optim. Appl. 2004, 28, 311–323. [Google Scholar] [CrossRef]
  17. Atamtürk, A.; Kücükyavuz, S. An O n 2 algorithm for lot sizing inventory bounds and fixed costs. Oper. Res. Lett. 2008, 36, 297–299. [Google Scholar] [CrossRef]
  18. Wagelmans, A.P.M.; van Hoesel, C.P.M.; Kolen, A. Economic lot sizing: An O T log T algorithm that runs in linear time in the Wagner-Whitin case. Oper. Res. 1992, 40, S145–S156. [Google Scholar] [CrossRef] [Green Version]
  19. Liu, T. Economic lot sizing with inventory bounds. Eur. J. Oper. Res. 2008, 185, 204–215. [Google Scholar] [CrossRef]
  20. Gutiérrez, J.M.; Sedeño-Noda, A.; Colebrook, M.; Sicilia, J. An efficient approach for solving the lot-sizing problem with time-varying storage capacities. Eur. J. Oper. Res. 2008, 189, 682–693. [Google Scholar] [CrossRef]
  21. Önal, M.; van den Heuvel, W.; Liu, T. A note on “The economic lot sizing problem with inventory bounds”. Eur. J. Oper. Res. 2012, 223, 290–294. [Google Scholar] [CrossRef] [Green Version]
  22. Van den Heuvel, W.; Gutiérrez, J.M.; Hwang, H. Note on “An efficient approach for solving the lot-sizing problem with time-varying storage capacities”. Eur. J. Oper. Res. 2011, 213, 455–457. [Google Scholar] [CrossRef]
  23. Hwang, H.C.; van den Heuvel, W. Improved algorithms for a lot-sizing problem with inventory bounds and backlogging. Nav. Res. Logist. 2012, 59, 244–253. [Google Scholar] [CrossRef] [Green Version]
  24. Wolsey, L.A. Erratum: A tight formulation for uncapacitated lot-sizing with stock upper bounds. Math. Program. A 2017, 161, 603–609. [Google Scholar] [CrossRef]
  25. Akbalik, A.; Penz, B.; Rapine, C. Capacitated lot sizing problems with inventory bounds. Ann. Oper. Res. 2015, 229, 1–18. [Google Scholar] [CrossRef]
  26. Aggarwal, A.; Park, J.K. Improved algorithms for economic lot-size problems. Oper. Res. 1993, 41, 49–571. [Google Scholar]
  27. Federgruen, A.; Tzur, M. A simple forward algorithm to solve general dynamic lot-sizing models with n periods in O n log n or O n time. Manag. Sci. 1991, 37, 909–925. [Google Scholar] [CrossRef] [Green Version]
  28. Eppstein, D. Sequence comparison with mixed convex and concave costs. J. Algorithms 1990, 11, 85–101. [Google Scholar]
Figure 1. Comparison of average running times for different values of A reported by CPLEX (in red) and Algorithm 1 (in blue).
Figure 1. Comparison of average running times for different values of A reported by CPLEX (in red) and Algorithm 1 (in blue).
Mathematics 09 00689 g001
Figure 2. Average number of breaking periods (β) vs. the percentage of storage availability (A) for different values of T.
Figure 2. Average number of breaking periods (β) vs. the percentage of storage availability (A) for different values of T.
Mathematics 09 00689 g002
Table 1. Input data.
Table 1. Input data.
t = 1 t = 2 t = 3 t = 4 t = 5
d t 208310
f t 24867
c t 3285109
S t 12491511
W t 6491310
l t 22355
P r t 11233
Table 2. Values for g(i, j, k, l), i, jH ∪ (T + 1) and k, l ∈ {0,1}.
Table 2. Values for g(i, j, k, l), i, jH ∪ (T + 1) and k, l ∈ {0,1}.
G 0 , 0 = 8 8 0 48 48 36 136 97 G 0 , 1 = 20 20 116 53 53 136 136 97
Case a. (k, l) = (0, 0)Case b. (k, l) = (0, 1)
G 1 , 0 = 28 28 26 126 0 G 1 , 1 = 33 33 126 126 0
Case c. (k, l) = (1, 0)Case d. (k, l) = (1, 1)
Table 3. Values for τ(i, j, k, l), iH, jH ∪ (T + 1) and k, l ∈ {0,1}.
Table 3. Values for τ(i, j, k, l), iH, jH ∪ (T + 1) and k, l ∈ {0,1}.
T 0 , 0 = 6 1 1 6 6 6 6 6 6 3 6 6 6 6 6 3 6 6 6 6 6 6 4 4 6 6 6 6 6 5 T 0 , 1 = 6 1 1 6 6 6 6 6 2 3 6 6 6 6 6 3 6 6 6 6 6 6 4 4 6 6 6 6 6 5
Case a. (k, l) = (0, 0)Case b. (k, l) = (0, 1)
T 1 , 0 = 6 6 6 6 6 6 6 6 6 3 6 6 6 6 6 3 6 6 6 6 6 6 4 4 6 6 6 6 6 6 T 1 , 1 = 6 6 6 6 6 6 6 6 6 3 6 6 6 6 6 3 6 6 6 6 6 6 4 4 6 6 6 6 6 6
Case c. (k, l) = (1, 0)Case d. (k, l) = (1, 1)
Table 4. Arrays G and succ for the instance in Table 1.
Table 4. Arrays G and succ for the instance in Table 1.
G = 176 176 156 176 156 133 123 97 0 0 s u c c = 2 , 1 0 , 0 3 , 0 4 , 1 4 , 1 4 , 1 5 , 0 5 , 0 6 , 0 6 , 0 0 , 0 0 , 0
Table 5. Output data of the computational experiment.
Table 5. Output data of the computational experiment.
  T   A CPLEX ALG 1 β P r o p .   3   T   A CPLEX ALG 1   β   P r o p .   3
1050.002990.0001511.30.431586050.116560.0024751.60.40626
100.003200.0001611.00.43085 100.177440.0027844.50.34104
200.018910.0001610.50.37831 200.171220.0023435.30.25744
250.020990.0001610.30.38940 250.274690.0028333.70.24487
500.014160.000169.10.27863 500.192700.0030825.40.17087
1000.045290.000147.30.21151 1000.096760.0027419.50.11570
2050.007620.0004419.60.425517050.212740.0043658.20.39074
100.041290.0004719.40.41511 100.341470.0040748.70.32003
200.032160.0003818.20.37849 200.173000.0043637.90.23139
250.054710.0003817.20.34397 250.290320.0043237.10.22554
500.045830.0003814.20.27908 500.219350.0044726.00.14902
1000.046060.0003510.50.17480 1000.128610.0040820.00.10927
3050.025200.0006429.30.443068050.244280.0052563.00.37283
100.057220.0008526.00.37833 100.258940.0048853.10.30406
200.063570.0007623.00.32821 200.406580.0045443.00.23567
250.120000.0006222.00.31140 250.334780.0046139.50.21222
500.086270.0008716.20.20420 500.226520.0049130.40.15197
1000.075670.0007113.30.16098 1000.225120.0052622.30.11115
4050.057120.0015236.40.417559050.262510.0067369.00.36266
100.110960.0015133.40.37898 100.389520.0061856.70.28845
200.167170.0014227.90.29700 200.289250.0051144.80.21447
250.075750.0013624.60.27455 250.245290.0061442.30.20008
500.078520.0012120.10.20402 500.152980.0053530.50.13162
1000.090480.0015113.90.12192 1000.141020.0066122.90.09540
5050.095620.0021342.90.3950510050.495710.0076673.40.35169
100.111300.0021737.00.33252 100.426490.0075160.10.26814
200.142780.0022331.50.27841 200.398620.0074347.80.21000
250.226470.0022130.10.25846 250.287040.0072944.00.19311
500.166920.0022721.70.17446 500.151900.0070632.30.13127
1000.106910.0020617.50.12979 1000.152140.0086523.00.08664
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Gutiérrez, J.M.; Abdul-Jalbar, B.; Sicilia, J.; Rodríguez-Martín, I. Effective Algorithms for the Economic Lot-Sizing Problem with Bounded Inventory and Linear Fixed-Charge Cost Structure. Mathematics 2021, 9, 689. https://doi.org/10.3390/math9060689

AMA Style

Gutiérrez JM, Abdul-Jalbar B, Sicilia J, Rodríguez-Martín I. Effective Algorithms for the Economic Lot-Sizing Problem with Bounded Inventory and Linear Fixed-Charge Cost Structure. Mathematics. 2021; 9(6):689. https://doi.org/10.3390/math9060689

Chicago/Turabian Style

Gutiérrez, José M., Beatriz Abdul-Jalbar, Joaquín Sicilia, and Inmaculada Rodríguez-Martín. 2021. "Effective Algorithms for the Economic Lot-Sizing Problem with Bounded Inventory and Linear Fixed-Charge Cost Structure" Mathematics 9, no. 6: 689. https://doi.org/10.3390/math9060689

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop