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
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
algorithm based on dynamic programming (the big O notation
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
grows. Accordingly,
if there exist
such that
for all
. Thus,
is bounded above by
(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
algorithm to construct the shortest path solution. Nevertheless, even though the new approach shares the same asymptotic running time, it uses an
geometric technique inspired by the algorithm developed by Hershberger [
15] to handle the class of subproblems referred to as
with
, defined in [
14]. Basically, a subproblem belongs to this class when its initial period is successor to a
(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
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
algorithm for a case with linear and fixed holding and ordering costs and without backlogging. Their algorithm is based on the definition of a
, 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
geometric method, whereas the algorithm in [
17] takes
time.
Taking advantage of the geometrical technique in Wagelmans et al. [
18], Liu [
19] and Gutiérrez et al. [
20] proposed, respectively,
and
algorithms assuming linear order and holding costs and setup costs, as well as backorders in the former model. Moreover, Liu [
19] devised an
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
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
amortized time, but it uses an
geometric method for a class of subproblems. Concretely, this class of subproblems is related to the concept of
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
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 geometric technique instead of using a straightforward implementation from the dynamic programming, as in those papers.
Reference | Subproblem 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
(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
time by means of a geometric technique, rather than
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
and
, depending on both the total number of periods and the percentage of storage capacity availability. Furthermore, this percentage increases significantly from
to
as the percentage of storage capacity availability decreases. Moreover, the computational experiment also shows that when
is fixed and the percentage of capacity availability is below
, the average running times are on average 100 times faster than those reported when this percentage is above
, 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
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
. They proposed an
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 . 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 .
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 be the set of time periods. Throughout, let and , denote the demand and physical storage capacity in period and the cumulated demand from period to period , respectively. Thus, the cumulated demand between two periods and can be easily computed as , where . Moreover, the cost structure is assumed to be the sum of a setup (fixed charge) cost and linear replenishment and holding costs and 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 and its corresponding binary variable are denoted by and ( if otherwise), respectively. Likewise, the variable denotes the inventory level at the end of the period . The list below summarizes the parameters and variables for each period 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 | |
| periods of the planning horizon |
| set of indices of time periods |
| demand for period |
| cumulated demand from period to period |
| cumulated demand between periods |
| setup (fixed charge) cost in period |
| unit replenishment cost in period |
| unit holding cost in period |
| marginal cost of ordering one unit of an item in period and holding it up to period |
| maximum feasible storage usage in period |
| the greatest period whose demand can be fully met from an order placed in period |
Variables | |
| Order or replenishment quantity in period |
| binary variable such that if otherwise |
| inventory level at the end of period |
| inventory point (period) and |
Problems | |
| minimum cost of the subproblem involving periods from to with initial and final stock levels and and where at most only one replenishment point (period) is allowed |
| minimum cost of the subproblem starting in period with incoming inventory and final inventory |
Data Structures | |
| sorted list of () which induce a partition of the planning horizon into subpartitions (subproblems) |
| array containing the number of the subproblem to which each period belongs |
| set of line segments related to the subproblem starting in (breaking) period |
| lower envelope of the set computed by an adaptation of the algorithm in [15] |
| sorted list of tuples where the first component denotes the -coordinate of a breakpoint in and the second term stands for the line segment in containing |
| replenishment point (period) minimizing (i.e., ) |
| matrix containing the replenishment points (periods) for all and |
| array containing two-tuples where is the inventory point (period) successor to period and denotes the inventory level at the end of |
Accordingly, the first formulation for the ELSPBI is as follows.
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
However, taking into account that
for
and denoted by
, for the marginal cost of ordering one unit of an item in period
and holding it up to period
, the following formulation is obtained as an extension of that in [
18].
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
The parameter stands for the maximum feasible storage usage in period rather than the physical storage capacity , which can be computed as , , with . It is noted that for all or, in general, and for any . Moreover, let be the greatest period whose demand can be fully met from an order placed in period . Setting , the remaining values , can be determined in as shown below.
|
|
|
do |
do |
|
endwhile |
|
endfor |
|
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
(periods in which the inventory level is either 0 or at its maximum feasible capacity that can be stored)
(period with nonzero replenishment). Accordingly, let
be a superscript that indicates the value of the inventory level at the end of the inventory point
so that
if
and
if
. Moreover, let
and
be two consecutive inventory points, and let
denote the minimum cost of a subproblem involving periods from
to
with inventories on hand
at the end of period
and
at the end of period
, respectively, and where, at most, only one replenishment point
and
is allowed. Therefore,
can be expressed as follows:
where
if
and
if
.
It is clear that a naive implementation of (1) to compute all the values
for
and
takes
time. This complexity actually represents a bottleneck for determining the minimum cost
of a subproblem starting in period
with incoming inventory
and ending in period
with final inventory
. Note that
can be recursively expressed as
where
,
and where
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 can take, depending on the relationship between the positions of the inventory points and , are analyzed, as well as the inventory levels at these points. Accordingly, let us denote by the sorted list of breaking periods (i.e., the set of periods for which ). The term breaking periods is used to refer to the periods in because they break the monotonicity when determining the values of , . It is noted that, given two consecutive breaking periods in , the sequence of values is monotonically nonincreasing. A simple procedure to generate the sorted list and the array is sketched in Procedure 1, where gives the number of the subproblem containing period .
Procedure 1: Construct the sorted list
and the array
in
|
|
|
For
do |
|
If
then |
Insert to |
|
endif |
endfor |
If
then
else
|
If
then |
Insert at the beginning of |
Insert at the end of |
endif |
Return and |
The breaking periods in
allow us to decompose the original problem into a set of subproblems. Thus, given two consecutive breaking periods
, the subproblem
consists of consecutive periods
, satisfying
. Therefore, the size of subproblem
is given by
. It should be noted that if
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
(see [
18,
26,
27]). Henceforth, we focus our attention on the case where list
is not empty. Let
denote the number of breaking periods and, consequently,
denotes the number of subproblems. Accordingly, when
, then
and
.
3. Restricted Recurrence Equations
Now, some properties to reduce from
to
the time complexity of the solution method to compute (1) are shown. In Properties 1 and 2 below, the case to determine
when
and
are within the same subproblem (i.e., when
) 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
and
is separately analyzed in Property 3, because computing
differs from the former technique for intermediate periods. Specifically, the lower envelope of the set of line segments
, related to the subproblem starting in period
, is constructed in
. Once the lower envelope
has been constructed using, for instance, an adaptation of the classical approach described in [
15]
, a list
of tuples of the form
, where the first component stands for the
-coordinate of a breakpoint
in
and the second term indicates the line segment
such that
, can be defined. Note that the list
is sorted in increasing order of the
-coordinates, and we denote by
and
the
-coordinate and the corresponding replenishment point
related to the breakpoint at position
in
, respectively. Besides that, the overall time complexity to construct all the lower envelopes
for
-1 is
To determine , it suffices to seek for, by binary search, the consecutive values of -coordinates in , and such that for and the corresponding line segment . It is noted that the case where does not need to be considered because , and hence . Finally, the case in which the inventory points and are not in the same subproblem is discussed in Property 4.
Property 1. Given two consecutive breaking periods in , the replenishment point that minimizes is not smaller than the replenishment point minimizing when either and or if and .
Proof. Suppose that . Then, the following cases can arise:
If and , then , and hence ;
If and , then because and . Thus, either or , and hence ;
If
, then
and
, and hence
Clearly, the quantity to be replenished in period must be greater than (i.e., ) so that period is a replenishment period. However, to ensure the feasibility of the decision, which implies that period is not actually a replenishment period and , and hence . It is noted that the same argument can be applied to the rest of the periods in the subproblem (i.e., for , ), and hence no replenishment is possible if . Therefore, and (). Conversely, if and , then since if , then necessarily, as well.
Moreover, as Equation (3) holds for all and , can be determined applying the following result. □
Property 2. Given and two consecutive breaking periods in , the cost for either and or and can be recursively determined as follows: 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
and
. Moreover, as
and
are given for
and
, the inventories on hand are also fixed for all the intermediate periods
, and hence the following cases can be distinguished:
If , and , then the inventory on hand at the end of period is enough to satisfy the demands for periods through and to hold units at the end of period . Therefore, this case is infeasible for all since it is assumed that and hence, . Consequently, ;
If and , then the inventory on hand at the end of period is enough to satisfy the demands for periods through and to hold units at the end of period . Therefore, there cannot be a replenishment point between and , and for all ;
If and , then there must be at most one replenishment point between and whenever . Clearly, the replenishment point must be either the period or the period that minimizes , according to (3) in Property 1;
If and , then there must be at most one replenishment point between and , even when . Again, the replenishment point should be either the period or the period that minimizes , according to (3) in Property 1.
Therefore, the values for can be computed in constant time, which leads to a time complexity of . Given that , then the overall time complexity to compute all the values , and is .
The next property addresses the case in which the inventory point
is a period successor to a breaking period (i.e.,
) for
, and hence, either
or
if
. Under this assumption, Property 1 and Property 2 are no longer applicable, because it cannot be ensured that
when
. 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
.
Note that the inventory on hand at the end of period is not enough to fully meet the demands for periods through . Thus, an order should be placed in that period ; in other words, . Instead of using an sequential search to determine such a period, period can be obtained in by a binary search if the lower envelope of the set of line segments on the interval was previously computed in time. Clearly, given a period and , if , then . Conversely, either if there is only one entry in , or there must be two adjacent entries, say and , in list such that , and hence . □
Property 3. Given and , the cost for can be determined as follows:where the replenishment point is initially determined in by a binary search of the first component of the tuples in list . If , then a sequential search is implemented to finally obtain in the actual period with the minimum cost. Proof. Clearly, if , there is no need to place an order, and . Let us assume now that . If has only one entry, then . Otherwise, there must be two consecutive entries, say and , in such that . Thus, the replenishment point is optimal for because it is feasible (i.e., ), and the cost returned by (5) is minimal because the line segment is either partially or completely contained in , or is the feasible segment above the lower envelope with a minimum cost. On the contrary, when for some period, is due to and, thereby, the inventory on hand is above the requirements to satisfy . Consequently, an infeasibility occurs, since the actual inventory on hand at the end of period is greater than , which leads to . □
The case in which periods and are not in the same subproblem (i.e., ) is addressed below.
Property 4. Given , the cost for can be recursively determined as follows: Proof. Let us analyze the following cases:
When and , then it is feasible to place a single order to satisfy the required quantity as in Property 2, depending on whether or . When , no replenishment can be placed in period . However, if , then ;
When , two situations may occur. On the one hand, when , the inventory on hand at the end of period is enough to satisfy the demands for periods through and to hold units at the end of period . Therefore, no replenishment can be placed between and , since the inventory capacity in that period is at its maximum. The only admissible decision is to order in that period that minimizes the corresponding cost, and hence reduces to calculate using Property 3. On the other hand, if , two replenishments must be placed to meet the quantities and with , and hence . The exception in this case is when . If this occurs, and must be necessarily equal, and the cost is computed according to Equation (5) in Property 3;
For the remaining cases, either two replenishments must be placed to satisfy the quantities and , or the inventory on hand at the end of period does not correspond to the actual value for that variable (i.e., ) when . Both cases lead to infeasibilities, and hence .
An additional array to store the replenishment point related to is necessary. Thus, let be a matrix in which each element represents the replenishment point that minimizes (i.e., ). It is clear that when , then to indicate that a replenishment cannot be placed between the inventory points and when the inventories on hand are and , respectively. Moreover, if and , then in Property 2 and Property 4, and therefore the procedure sets to also specify that an order cannot be placed between periods and . □
The method to determine the values and for all combinations is sketched in Procedure 2. Clearly, for those combinations with , and hence . Moreover, setting ensures that the index does not exceed the correct range when .
Procedure 2: Determine
and
for
and
in
|
apply Procedure 1 to obtain the sorted list and vector |
If then use the geometric technique developed by Wagelmans et al. in [18] |
else |
initialize and , , and |
initialize and , for |
initialize and , for compute the lists , in using an adaptation of the algorithm in [15] |
For
do |
|
For
do |
For
do
|
For
do |
If
then |
If
then |
If then compute using (4) in Property 2 |
If then endif
else compute using (6) in Property 4 If then
endif endif |
elseif
then |
compute using (5) in Property 3 |
If
then
endif |
endif |
else |
If and then |
compute using (4) in Property 2 |
If
then
endif |
else |
compute using (6) in Property 4 |
If
then endif |
endif |
endif |
endfor
endfor |
endfor |
endfor |
endif |
return and for and |
4. Solution Method and Numerical Example
Once all the values
and
are computed,
is solved in
as shown in Algorithm 1. This algorithm assumes that
; otherwise, more efficient
algorithms could be used (see, for instance, [
18,
26,
27]). A new array,
, is introduced in which each element
,
, and
is a two-tuple
. Precisely, the first component
represents the inventory point
adjacent to the inventory point
, and the second term
stands for the inventory level
at the end of period
. This array is used in Procedure 3 to construct the optimal plan for an instance of the ELSPBI.
Algorithm 1:Determineinwhen |
apply Procedure 2 to compute and for and |
initialize and for all and |
initialize |
Fordo |
For do |
For do |
For do |
If then |
|
|
endif |
endfor |
endfor |
endfor |
endfor |
return |
As outlined in Procedure 3, an optimal schedule and can be obtained in for a given instance of the ELSPBI.
|
initialize and to |
|
|
While
do |
|
|
|
|
|
|
endwhile |
return and |
A simple example consisting of
periods is solved to illustrate Algorithm 1. The parameters and preliminary values are shown in
Table 1, where it is assumed that
and hence
for
. Otherwise, if
for some period
, then the quantity
must be subtracted from the value
to obtain the actual minimum cost.
Since
, three subproblems, namely
and
, are defined, and hence the values
for
and
can be determined according to Procedure 2. Precisely,
Table 2 shows four
arrays
, one for each combination of
, in which the element occupying row
and column
corresponds to the cost
.
Additionally, the
arrays
corresponding to each combination
are shown in
Table 3.
A
array
is used now to store the minimum cost of the problems starting in period
, where
, and ending in period
, with the inventory on hand being
,
. The arrays
and
are shown in
Table 4.
Procedure 3 leads to the optimal plan and 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 (). The same occurred in period 3, where the sum of the inventory on hand ( units) plus the order quantity ( units) equaled . However, the quantity ordered in period 4 ( units) was such that when it was added to the inventory on hand ( units), it just satisfied the demand in that period ( units). Finally, the order quantity in period 5 met the demand for that period ( units). It is worth noting that the maximum feasible storage usage () and not the physical storage capacity () 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.,
) and the holding costs are nonnegative (i.e.,
,
). Accordingly, the marginal costs
satisfy the inequality
for
. 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
algorithm inspired by the geometric technique introduced in [
18], an alternative approach based on the on-line array-searching
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 such that . Clearly, either a better plan or an equally optimal plan can be derived by simply ordering units in period rather than in period , which leads to savings in . 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
and
are zero (i.e.,
, and so
). Moreover, as Property 1 holds, it follows that
and
. Given that
in the optimal solution, Property 3 is not applicable. For notational convenience, let
be the minimum cost of the problem starting in period
and ending in period
when the inventory on hand at the end of period
is zero, and let
be the replenishment period successor to period
. It is noted that
and
, where
and
were defined in the previous section. Similar to Wagelmans et al. [
24], the cost
can be formulated using the following recurrence equation:
where
and
.
To compute the current
in linear time, let us consider the
array
, where
Following similar observations to those introduced by Aggarwal and Park in [
26],
can be expressed according to the following recurrence equation for
:
At this point, let us demonstrate that
is a Monge array. Note that
is a Monge array if and only if for
and
, the following inequality holds:
Property 6. is a Monge array.
Proof. Let
denote a
subarray of
, and for
, let
be a real number. Accordingly, sixteen setting types of
may be given:
Note that only those subarrays 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 .
Given that
, then
, and when adding
to both sides of the inequality, the following holds:
Moreover, as
and also
, then
and hence
so that
holds (7);
- 2.
When .
This combination of values for and can only occur when . However, if , then since , which leads to . Therefore, the resulting subarray is a Monge array;
- 3.
If .
Once again, the combination of values for and implies that , which leads to , and hence . Thus, the resulting subarray satisfies (7);
- 4.
When .
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 are either Monge or reduced to Monge subarrays, then 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
time, since
can be computed in constant time from
and the
th column minimum of
, and
can be also obtained from
in constant time for all
and
. □
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 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 . Moreover, the holding costs were set to in all cases, and denotes the percentage of capacity availability. Thus, if for one instance, this means that the warehouse allowed an extra capacity of of the accumulated demand up to period . Therefore, the physical storage capacity in period , , was uniformly distributed in the interval 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 (
), whereas columns two and eight show the percentage of capacity availability (
). 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
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 (
), respectively. Specifically, the
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.,
) 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
, the average running times provided by Algorithm 1 were almost constant, and the average number of breaking periods in
diminished as parameter
increased. Note that the values in the column labeled
might have been greater than
due to periods
and
being included in
. Moreover, the column
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
in the most extreme conditions; that is when the percentage of storage capacity availability (
) decreased to
. The latter shows that the
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
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
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 (
square), which was above
in all the cases. It is worth noting that when
was below
, the average running times were on average 100 times faster than those reported when
was above
as a result of applying Property 3 (the geometric technique).
Furthermore, the average number of breaking periods in
versus the parameter
for different values of
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
became a quadratic curve as
increased.