Preprint
Article

A Simulation Based Solution Approach for the Capacitated Lot-Sizing Problem With Remanufacturing

Altmetrics

Downloads

368

Views

135

Comments

0

This version is not peer-reviewed

Submitted:

11 April 2023

Posted:

12 April 2023

Read the latest preprint version here

Alerts
Abstract
We present a new model formulation for a class of capacitated lot-sizing problem considering setup costs, product returns, and remanufacturing (CLSP-RM). We investigate a broad class of instances that fall into two groups, in the first group we can reformulate the problem with a relaxation and test whether the original problem is solvable. The relaxation gives near optimal solutions and the solution of this class does not give any difficulty to known solvers such as Cplex, Gurobi or Xpress. The second group of instances are of category NP and will be solved with a simple period-by-period simulation.
Keywords: 
Subject: Computer Science and Mathematics  -   Data Structures, Algorithms and Complexity

1. Introduction

The production planning with consideration of recycling options has received increasing attention in the last few years [1]. The literature describes two different categories of recycling production planning problems. In the first category (Cat. 1), the given external demand of the products has to be satisfied by remanufactured or newly produced goods (Figure 1). Only two types of inventories are regulated: the inventory of new products and the inventory of remanufactured products, and this is the category that has been thoroughly investigated by numerous authors. It is assumed that new and remanufactured products are identical, and hence, both are regarded as serviceables, i.e., entities that can be used to satisfy demands. In the second category (Cat. 2) the additional feature of this problem is that in each period a deterministic amount of returned items enters the system. These returns can be remanufactured and used to satisfy the demand for remanufactured products in addition to the regular production of new items. Thus, there are three types of inventory: new product inventory, remanufactured product inventory and returned product inventory (Figure 1). This situation is typical in paper manufacturing. Demand for recovered paper has increased enormously worldwide, making separate collection more attractive again. Peter Probst, CEO of LEIPA Group, Germany (Viadrina University, 05.2019) explains the advantage: "paper recycling proves to be economically and ecologically efficient, because the production of recycled paper requires considerably less water and considerably less energy than the production of virgin fiber papers. In addition, the transport distances are generally shorter as well. Recycled paper comes from Germany, while the fresh fibers and fresh fiber papers are also imported to Germany in larger proportions". Paper production is also energy intensive. It takes as much energy to produce one ton of paper from fresh wood fibers as it does to produce one ton of steel ([2]).

2. Literature Review

Publications regarding Category 1: [3] analyzes several CLSP-RM formulations with the column generation method, where he uses the idea of Garfinkel and Nemhauser (1969), namely the Set Partitioning Problem (SPP). [4] compared MIP approaches to the economic lot-sizing with remanufacturing (ELSR) and proposes a shortest path formulation. [5] studied another multi-item variant of the problem and propose a variable neighborhood search heuristic. The polynomial-time heuristics of [6] also belongs to this category, where there is also an excellent compilation of the methods developed by [7,8,9,10,11].
Publications regarding category 2: The only publication known to us is that of [12] where he presents a Lagrange relaxation to solve the problem. Based on Zhang’s model we formulate the same problem but taking more general capacity constraints and doing more extensive numerical experiments.
The capacitated lot sizing problem model is NP-hard. The proof of this statement is to be found in [13,14].  [15] has shown that even the two-item problem with constant capacity is NP-hard. Many methods have been proposed to solve the CLSP  [16]. In general, these heuristics do not use random numbers. However, many heuristics cannot guarantee the generation of a feasible solucion  [15]. These heuristic methods used to solve a CLSP class problem are generally based on the definition of a multitude of rules derived from demand, capacity, setup costs, inventing costs and productions costs e.g., [9,10,17].The solution margin varies between 1% and 10% [12,17].
The contribution of this work is: independently of the input parameters of the problem, we organize the production in the framework of feasibility and randomly. A simple simulation with quasi-random numbers ( QRN ) will be presented. The heuristic will always generate a feasible solution, if the problem is solvable. After simulating N production plans we choose the cheapest one. The scheduling is very simple, the results are quite acceptable considering the size of the presented problems.
It is well known that the QRN of [18,19,20] have significant properties [21]. The most important of these are: they are uniformly distributed. These are some allow us a systematic search of the solution in the set of admissible points with a few QRN . We implement a search algorithm with Halton’s QRN and compare it with numerical solutions by the Gurobi solver.
In Section 3 we propose a new mathematical programming formulation for the problem. In Section 4 we present a relaxation of the problem without capacity constraints (Model A) and we will see that the solution obtained for the chosen class of tasks is very close to the optimal solution of the original problem. In Section 5, we present a heuristic solution method (Model B) for another class of tasks. In Section 6, we report the results of computational experiments. In Section 7 we present some conclusions and suggested directions for further research.

3. Problem description

We assume that a factory produces two types of products, one manufactured from raw materials and the other remanufactured from collected used products. The demands for these two products are separate, deterministic, and time varying during a finite planing horizon, and should be satisfied without backlogging. The costs consist of fixed setup cost, linear production cost proportional to the production quantity, and linear inventory holding costs. All cost components are considered for both manufacturing and remanufacturing activities per unit and periode  [12]. The following Table 3 summarize the notation used in this paper.
We make the following assumptions, which are necessary for the feasibility of the problem
  • The demand for new products and remanufactured products are separate and backlog is not allowed.
  • The manufacturing capacity is sufficient to meet the demands in each period, in particularly we have: the capacity can satisfy the demands for new products and remanufactured products simultaneously, i.e.,
    j = 1 t ( d j n + d j r ) j = 1 t c j , t = 1 , , T
  • Initial and end inventory stocks are zero, 1 i.e.,
    i 0 n = 0 , i 0 r = 0 , i 0 r e = 0 i T n = 0 , i T r = 0
    The demand will be fully satisfied if the final inventories are zero.
  • The quantity of returned products can satisfy the demand for remanufactured products i.e.,
    j = 1 t d j r j = 1 t r j r e t = 1 , , T .
  • In economic terms, inventory holding cost of returned products is less than that of remanufactured products.
    j = t T h j r e j = t T h j r , t = 1 , , T
    This hypothesis can be found in [22] too.
Hence, the problem can be formulated as
f ( x n , x r ) = t = 1 T ( s t n α t + p t n x t n + h t n i t n ) + t = 1 T ( s t r α t r + p t r x t r + h t r i t r ) + t = 1 T ( h t r e i t r e ) min
subject to
i t n = i t 1 n + x t n d t n , t = 1 , , T
i t r = i t 1 r + x t r d t r , t = 1 , , T
i t r e = i t 1 r e + r t r e x t r , t = 1 , , T
x t n + x t r c t , t = 1 , , T
x t n d [ T ] n α t n , t = 1 , , T
x t r d [ T ] r α t r , t = 1 , , T
x t n , x t r 0 , t = 1 , , T
α t n , α t r 0 , 1
The objective function (5) minimizes the sum of setup cost, production cost, and inventory cost for new products and remanufactured products in all periods. Constraints (6),(7) and (8) are the inventory balance constraints for new products, remanufactured products and returned products. Constraints (9) represent capacity constraints for manufacturing and remanufacturing activities. Constraints (10), (11) allow production only with the according setups (i.e α t n = 1 , α t r = 1 . ) (12) and (13) are the standard integrality and non-negative constraints.

3.1. Rewriting the optimization problem

i t n , i t r , i t r e are replaced in the objective function by
i t n = j = 1 t x j n d j n , i t r = j = 1 t x j r d j r ,
i t r e = j = 1 t r j r e x j r
And with a bit of algebraic transformations, we obtain
t = 1 T ( p t n x t n + h t n i t n ) = t = 1 T ( p t n + j = t T h j n ) x t n t = 1 T ( h t n k = 1 t d k n ) t = 1 T ( p t r x t r + h t r i t r + h t r e i t r e ) = t = 1 T ( p t r + j = t T ( h j r h j r e ) ) x t r + t = 1 T ( h t r k = 1 t d k r + h t r e k = 1 t r k r e )
With the notation
v t n = p t n + j = t T h j n , v t r = p t r + j = t T ( h j r h j r e ) K = t = 1 T h t n k = 1 t d k n h t r k = 1 t d k r + h t r e k = 1 t r k r e .
our model is finally
φ ( x n , x r ) = t = 1 T [ s t n α t n + v t n x t n ] + [ s t r α t r + v t r x t r ] + K min
Subject to
j = 1 t x j n j = 1 t d t n , t = 1 , , T
j = 1 t x j r j = 1 t d t r , t = 1 , , T
j = 1 t r j r e j = 1 t x j r , t = 1 , , T
x t n + x t r c t , t = 1 , , T
x t n d [ T ] n α t n , t = 1 , , T
x t r d [ T ] r α t r , t = 1 , , T
x t n , x t r 0 , t = 1 , , T
α t n , α t r 0 , 1
Table 1. Data and parameters.
Table 1. Data and parameters.
Name Paramenter
T Number of time periods
t 1 , , T
i 0 n , i 0 r , i 0 r e Initial inventory stocks
Cost per unit and period t
s t n Setup cost for manufacturing new product
s t r Setup cost for remanufacturing product
p t n production cost of new product
p t r production cost of remanufactured product
h t n holding cost of new product
h t r holding cost of remanufactured product
h t r e holding cost of returned product
Demand and return in period t
d t n Demand of new product
d t r Demand of remanufactured product
r t r e Quantity of returned product
Available Capacities in period t
c t capacities for manufacturing and
remanufacturing
(capacity requirement for new product and
recovery product is set to one).
d t = d t n + d t r , t = 1 , , T
d [ T ] n = t = 1 T d t n
d [ T ] r = t = 1 T d t r
Table 2. Decision variables.
Table 2. Decision variables.
Name Paramenter
α t n 1, if new products are manufactured
in period t; 0, otherwise
x t n quantity of new products manufactured
in period t
i t n inventory stock of new products
at the end of period t
α t r 1, if returned products are remanufactured
in period t; 0, otherwise
x t r quantity of returned products remanufactured
in period t
i t r inventory stock of remanufactured
products at the end of period t
i t r e inventory stock of returned products
at the end of period t
Table 3. Original Data.
Table 3. Original Data.
t r t r e d t n d t r d t c t w
1 198 153 183 336 609 57
2 806 84 302 386 632 246
3 223 100 146 246 101 -145
4 283 100 127 227 295 68
5 500 248 598 846 620 -226
6 500 0 0 0 561 0
Sum 2510 685 1356 2041 2818 0

4. Model A (Relaxation)

According to our conditions(1) and (3) the general problem has a solution, if the total pro-period demand is less than the pro-period capacity (i.e., d t < = c t ). However there are situations, where conditions (1) and (3) are satisfied but d t < = c t is not satisfied. We need a feasibility routine which ensures that all demand is satisfied without backlogging. Indeed there are periods (or could be) in which total demand exceeds total capacity. In this case some inventory will have to be build up in earlier periods which slack capacity. We explain how to shift excess demand to earlier periods in which slack capacity is available. We use and complement the idea of [23].
w ˜ T = 0 w ˜ t = max d t + 1 c t + 1 + w ˜ t + 1 ; 0 , t = T 1 , , 1 .
We define
w 1 = w ˜ 1
w t = w ˜ t w ˜ t 1 , t = 2 , , T .
It is easy to see that the sum w [ T ] is null.
w [ T ] = w 1 + w 2 + + w T = w ˜ 1 + ( w ˜ 2 w ˜ 1 ) + + ( w ˜ T w ˜ T 1 ) = w ˜ T = 0 .
Remark 1. 
The vector w T = ( w 1 , , w T ) is very useful. Because w t gives the amount of stock to accumulate ( w t > 0 ) or reduce ( w t < 0 ) in each period so that production does not exceed available capacity pro period. And allows us to determine a good permissible solution.
We see that the demand transformation done in Table 4 is a valid (permissible) solution to the problem (16)-(24). There are many ways to make this transformation, for this reason to transform the demand in an optimal way we formulate the following problem.
φ ( x , y ) = t = 1 T [ s t n α t n + v t n x t n ] + [ s t r α t r + v t r x t r ] + K min
Subject to
j = 1 t x j n j = 1 t d t n , t = 1 , , T
j = 1 t x j r j = 1 t d t r , t = 1 , , T
j = 1 t r j r e j = 1 t x j r , t = 1 , , T
x t n + x t r d t n d t r = w t , t = 1 , , T
x t n d [ T ] n α t n , t = 1 , , T
x t r d [ T ] r α t r , t = 1 , , T
x t n , x t r 0 , t = 1 , , T
α t n , α t r 0 , 1
If the model (25)-(33) has no solution, it means the model (16)-(24) has no solution too.
We have a problem with no capacity restrictions. We solve this problem and compare it with the optimal solution of the initial problem (16)-(24).
Remark 2. 
It is important to clarify that this task only makes sense if the vector w is not equal to the null vector. If the vector w is equal to the null vector it means that in each period d t < = c t . In this case a relaxation is not possible and the problem (16)-(24) will be solved with a heuristic method (Model B).

5. Model B (Simulation)

5.1. Low discrepancy sequences

The generation of random numbers with a computer is not possible Knuth [24]. As John von Neumann said: Any one who considers arithmetical methods of producing random digits is, of course, in a state of sin, [25]. An excellent overview of the methods of generating pseudo-random numbers are available eg. [24,26] or [27].
In this section we explain the number-theoretical concept of discrepancy. Then, we introduce the Halton sequence which is probably the easiest low-discrepancy 2 number generation method to describe.
Definition 1. 
Let z 1 , , z N a sequence of real numbers with 0 < z i < 1 , i = 1 , , N . The discrepancy D N for the sequence is defined as
D N = sup l S N ( l ) N | l |
where l is any subinterval [ a , b ) [ 0 , 1 ] , | l | = b a , and S N ( l ) denotes the number of elements of the sequence, that belongs to the interval l .
A measure for how a sequence of real numbers z 1 , , z N , a < z i < b , i = 1 , , N is equidistributed on an interval [ a , b ] is the discrepancy D N . Low-discrepancy sequences, also known as quasirandom sequences, are numbers that are better equidistributed in a given volume than pseudo-random numbers.
Remark 3. 
A sequence z 1 , , z N , 0 < z i < 1 , i = 1 , , N of real numbers is said equidistributed on the interval [ 0 , 1 ] if D N = o ( N ) , N , [18].
The ( QRN ) of Halton, Sobol and Niederreiter have a low discrepancy D N = O ( ln ( N ) / N ) . While pseudorandon sequences have a discrepancy D N = O ( 1 / N ) , [26]. Figure 2 uses two-dimensional projection of a pseudorandom sequence and of a low-discrepancy (Halton) sequence to demonstrate the fundamental difference between the two classes of sequences.
The desirable properties of a sequence of this ( QRN ) may be summarized as follows ( [20]):
  • the least period length should be sufficiently large,
  • it should have littie intrinsic structure (such as lattice structure),
  • it should have good statistical properties,
  • the algorithm generating the sequence should be reasonably efficient.
It’s easy to generate sequences of Halton with the following algorithm 1,  [20]. The following Halton sequences of Table 5 are constructed according to algorithm 1 that uses a prime number as its base.
Remark 4. 
To generate the n-th Halton point in a sequence consider the base b ary expansion of a n = i = 0 a i b i where the b ary coefficients a i 0 , , b 1 . Then the n-th Halton point is H ( n ) = i = 0 a i b i 1 . It’s easy to build a Halton-sequence with the following observation: If a 0 < b 1 then H ( n + 1 ) = H ( n ) + 1 / b else if a 0 = b 1 then H ( n + 1 ) = H ( n ) ( 1 b k b k + 1 ) where k = min i 0 : a i b 1 (details see  [21]). This method is very efficient and will be used in this paper.
Algorithm 1:Construction of Halton sequences
Preprints 70864 i001

5.2. Notation

We use the following notation t = 1 , , T
Name Meaning
d [ t ] n = j = 1 t d j n d [ 0 ] n = 0
d [ t ] r = j = 1 t d j r d [ 0 ] r = 0
r [ t ] r e = j = 1 t r j r e r [ 0 ] r e = 0
x [ t ] n = j = 1 t x j n x [ 0 ] n = 0
x [ t ] r = j = 1 t x j r x [ 0 ] r = 0
The notation x [ a , b ] p means x = ( b a ) z + a , a b , 0 z 1 and the number z is simulated with the following distribution
z = z h 0 1 p q q 0 p 1 , q = 1 2 ( 1 p ) , z h is a Halton number
We generate a pseudorandom number 0 g 1 to decide, that values take z, see algorithm 2. In Model B (Section 5) we will investigate the class of problems with the condition
d t n + d t r = d t c t , t
If this condition is not satisfied, the problem is easily solved with Model A (Section 4).
Algorithm 2:Simulation of z with distribution (37)
Preprints 70864 i002

5.3. Simulation

The simulation is based on the following lemma.
Lemma 1. 
Let x t = x t n + x t r and d t c t , t = 1 , , T . Then
d [ t ] x [ t 1 ] x t c t , t = 1 , , T
Proof. 
The proof proceeds by induction on t. In fact, if t = 1 because x [ 0 ] = 0 and d 1 c 1 , we can choose x 1 such that d 1 x 1 c 1 .
d [ t + 1 ] x [ t ] = d t + 1 x t + d [ t ] x [ t 1 ]
By induction hypothesis
1 1 d t + 1 x t + x t
c t + 1
Then we can x t + 1 choose such that d [ t + 1 ] x [ t ] x t + 1 c t + 1 .    □
Remark 5. 
If in lemma 1 d [ t ] x [ t 1 ] < 0 then production in period t is x t = 0 because production up to period t 1 satisfies demand up to period t.
Remark 6. 
Lemma 1 gives the following lower bound for the production of the products
x t n u t n = max d [ t ] n x [ t 1 ] n ; 0
x t r u t r = max d [ t ] r x [ t 1 ] r ; 0

5.4. Basis of the simulation

The production plan is created step by step starting from period t = 1 . To determine the production in period t, we know the selected production until period t 1 . In each period, using the constraints of the task (16)-(24) for the production of the products, we determine a lower and an upper bound. Then the production quantity is chosen randomly between the lower and upper limits. These production quantities affect the lower and upper bounds of the future period. We continue in this way until the period t = T . Then we calculate the value of the cost function( i.e., objective function). We repeat this procedure (N times) and choose the production plan with the lowest cost. The advantages of this method, we do not have to worry about the inventory, production or setup costs. The method is now presented in more detail.
Proposition 1. 
If u t n = 0 then x t n = 0 , α t n = 0 , else x t n u t n , α t n = 1 .
Proof. 
From (17) we get
x [ t ] n d [ t ] n = x t + ( x [ t 1 ] n d [ t ] n ) 0
If ( x [ t 1 ] n d [ t ] n ) 0 , then total production of new products up to period ( t 1 ) satisfies total demand up to period t and therefore nothing is produced in period t , i.e., x t n = 0 , α t n = 0 .
If ( x [ t 1 ] n d [ t ] n ) < 0 , then the production x t n has a lower bound. From (40) we obtain
x t n d [ t ] n x [ t 1 ] n .
   □
Proposition 2. 
If u t r = 0 then x t r = 0 , α t r = 0 , else α t r = 1 and
r [ t ] r e x [ t 1 ] r x t r u t r .
Proof. 
From (18) and (19)
r [ t ] r e x t r + x [ t 1 ] r d [ t ] r .
If ( x [ t 1 ] r d [ t ] r ) 0 , then total production up to period ( t 1 ) satisfies total demand up to period t and therefore nothing is produced in period t , i.e., x t r = 0 , α t r = 0 .
If ( x [ t 1 ] r d [ t ] r ) < 0 , then the production x t r has an upper and lower bound. From (43) results the assertion.    □
Proposition 3. 
If u t n > 0 and u t r > 0 , then
o t n = min c t u t r , d [ T ] n x [ t 1 ] n o t r = min c t x t n , d [ T ] r x [ t 1 ] r , r [ t ] r e x [ t 1 ] r
And
u t n x t n o t n
u t r x t r o t r
Proof. 
From (20) and remark 6
c t x t n + x t r x t n + u t r c t u t r x t n
From (2)
d [ T ] n = x [ T ] n x [ t 1 ] n + x t n d [ T ] n x [ t 1 ] n x t n
From (46) and (47)
x t n o t n
Therefore we simulate the production x t n according to (35)
x t n [ u t n , o t n ] p , α t n = 1 .
From (20) using x t n of (49) we get
c t x t n x t r
and then from (2) we obtain
d [ T ] r = x [ T ] r x [ t ] r = x t r + x [ t 1 ] r d [ T ] r x [ t 1 ] r x t r
From (50), (51) and (42) results
x t r o t r
Therefore we simulate the production x t r according to (35)
x t r [ u t r , o t r ] p , α t r = 1 .
   □

5.5. Simulation of the objective function

Let R be a matrix with Halton’s QRN
R = R ( 1 , 1 ) R ( 1 , T ) R ( 2 , 1 ) R ( 2 , T ) = R 1 R 2
We simulate the production starting in period t=1. The calculation of the objective function is carried out with Algorithm 3 using proposition (1), (2) and (3).
Further information on the complexity-theoretic approach to randomness can be found in [28,29,30].
Remark 7. 
  • The generation of the matrix R [ N × T ] requires O ( N × T ) operations.
  • Die evaluation of the function φ ( x , y ) with Algorithm 3 requires O ( T ) operations
Then, the computational complexity of the simulation with N points and T periods is O ( N × T ) .
Algorithm 3:Calculation of the objective function
Preprints 70864 i003

6. Numerical Experiments

6.1. Test Design

We analyse the quality of our solution approach of model A and model B by defining 11 problem classes (PC) by varying the number of periods, see Table 6. The planning horizon T is made very large because in the paper industry planning is done daily. Each PC consists of 200 test instances (TI). In model A, 1824 of the 2200 TI were solvable, in model B 2200. In total, we examined 4024 TI. Model A and Model B are implemented on a computer with I n t e l ( R ) C o r e ( T M ) i T 9700 K , C P U @ 3 . 60 G H z , 3600 M H z . We vary different parameters to define the TI, e.g., the time between orders (TBO) to determine setup costs. The specifications of the parameters are designed in an exaggerated form, which may not occur in practice, to make the TI as difficult as possible.
The parameters for generating data sets (see Table 7) use the following notation x [ a ; b ] x = ( b a ) θ + a , a b , where 0 θ 1 is a random number, that means the values are uniformly distributed on the interval [ a , b ] .

6.2. Model A

We randomly generate capacities c t , then with condition (1) randomly generate aggregate demand d t . This latter is then randomly cut into d t n and d t r . The remaining parameters according to Table 7.

6.2.1. Results of Model A

The solution of problem (25)-(33) (TD) and the optimal solution of problem (16)-(24) (OP) were found with the Gurobi solver version 9.0.3.
We randomly generated 200 instances per PC and usually between 10 and approx. 20% of the instances have no solution (see line Count). This justifies the fact that the problem is not standard. For example, in Table A1 we see that of the 200 instances for problem class T = 60 , only 167 had a solution.
With the following notation, we can better understand the results of Table A1.
T 15 , 30 , , 300
m C o u n t = 172 , 155 , , 170
φ T i ( x n , x r ) i = 1 , , m solution of problem (25)-(33)
φ T i * ( x n , x r ) i = 1 , , m solution of problem (16)-(24)
μ T = i = 1 m φ T i ( x n , x r ) m
μ T * = i = 1 m φ T i * ( x n , x r ) m
C P U T = i = 1 m C P U T i m
C P U T * = i = 1 m C P U T i * m
In Table A1 the relative error for Total costs (Tc) and CPU-time for every problem class was calculated as
R e l a t i v e A v g . E r r o r ( T c ) = μ T μ T * μ T * R e l a t i v e A v g . E r r o r ( C P U ) = C P U T C P U T * C P U T *
This is exactly how we calculated the relative errors in inventory cost and setup cost.
Attached in Appendix A are the results of the average total cost, average CPU time, average Inventory costs
There is hardly any difference between the cost of relaxation (TD) and the original task (OP). Only the computation time for relaxation is faster. The longer the planning horizon, the smaller the difference between the optimal solutions of the problems TD and original optimization task OP. This feature applies to the stocks of the return and setup costs too. On the other hand, the inventory costs for problem TD are always smaller than the inventory costs of problems OP. For more details, please see Figure A1 and Appendix A.1 for the exact calculations. However, we see beyond doubt that this class of problems can be solved very well either with the relaxation TD or directly with a standard solver (here Gurobi).

6.3. Model B

[13] have shown that several families of CLSP are Np-hard. For the construction of the Np-hard instances (2200 instances) we follow the findings of  [14]. They use the following notation N r / α / β / γ / σ , where N r , α , β , γ and σ specify respectively the number of items, a special structure for the setup costs, the holding costs, production costs, and capacities. In this paper  [14] they show that the following class 2/C/G/A/C is NP-hard. For this reason we have created 2200 instances, where the set-up costs per product and capacities per instance are constant. The holding cost do not necessarily follow a specified pattern, the production costs can be chosen arbitrarily. The maximum calculation time for Gurobi is 600 seconds. The heuristic operates according to the number of simulations, which gradually increases with the number of periods. The largest group T300 uses 130 seconds. The parameters for generating data sets (see Table 8) use the following notation x [ a ; b ] x = ( b a ) θ + a , a b , where 0 θ 1 is a random number, that means the values are uniformly distributed on the interval [ a , b ] .
The important assumption in model B is: the capacities for each TI is constant, the set-up costs in each TI and for each product are constant. These parameters vary between a minimum and a maximum depending on the T parameter.
The capacities for each TI vary according to the parameter T. For example if T = 15 the capacities are between 600 and 800. If T = 300 the capacities vary between 3000 and 5500. Analogously the other parameters. The remaining parameters according to Table 8. For the simulation we used following parameters:
N T = 2 15 T
N T is the Halton’s numbers used for T periods (see Table 9).
All instances for T = 15 , 30 , 300 have the same schema Step 1 until Step 5. We used τ = 4 (see Table 10).
Algorithm 4:Heuristic: blind search
Preprints 70864 i004

6.3.1. Results of Model B

We generated 200 random instances for each problem class (PC) and with a Box-plot we compared the feasible solutions G T i ( x n , x r ) of the problem (16)-(24) found by Gurobi 9.0.3 with the solution S T i ( x n , x r ) of the simulation presented in this paper and clearly see the similarity of the results found (see Figure A4, Figure A5).
With the following notation we present the results (see Table A3).
T 15 , 30 , , 300
m = 200
S T i ( x n , x r ) i = 1 , , m
G T i ( x n , x r ) i = 1 , , m
μ T = i = 1 m S T i ( x n , x r ) m
μ T * = i = 1 m G T i ( x n , x r ) m
C P U _ S T = i = 1 m C P U T i m with Simulation
C P U T * = i = 1 m C P U T i * m with Gurobi
In Table A3 the relative error for Total costs (Tc) and CPU-time for every problem class was calculated as
R e l a t i v e A v g . E r r o r ( T c ) = μ T μ T * μ T * R e l a t i v e A v g . E r r o r ( C P U ) = C P U _ S T C P U T * C P U T *
The graphical comparison is shown in Figure A3.
This is exactly how we calculated the relative errors in inventory cost and setup cost. Attached in Appendix B are the results of the average total cost, average CPU time, average Inventory costs. Figure A3 (average CPU time) clearly shows that the Gurobi admissible solution for the PC from T150 to T300 are not optimal and that the CPU of the simulation is much faster.
The simulation in average determines the setup costs and return inventory costs always higher than Gurobi. On the other hand, the inventory costs of Gurobi are higher than the simulation. What can we say about the quality of the solution of the problems? the simulation could not give a better solution than Gurobi’s solution. Gurobi solved the (PC) problems up to T120 in an optimal way. The problems from T150 to T300 were not solved optimally by Gurobi, since it would take too much time due to the Np-hard category of the problem. The simulation found feasible solutions much faster than Gurobi. Here is the advantage of the simulation, the simplicity of its implementation and the speed in finding an acceptable solution.

7. Conclusions and Outlook

We have analyzed a problem that belongs to the NP-hard class. However, the choice of the parameters is very important to obtain a problem that is really Np-hard. With the choice of parameters made in model A, we see that this class of problems is easily solved with a standard solver. By doing a relaxation of the problem, the solution is found more quickly. The error rate is between 0.02% and 2% (taking into account more than 1800 instances).
If we choose the parameters according to model B, Gurobi needs a lot of time to find the optimal solution. In this kind of problem the presented simulation can help a lot in finding a good solution. We have seen that the error rate is between 1.7% and 3.5% (taking into account more than 2000 instances). The simulation is sometimes better than Gurobi, but on average Gurobi solves the problem with a maximum time of 600 seconds better than the simulation. The great advantage of the simulation is that the calculation is extremely fast and easy.Thanks to the Halton numbers, few simulations are needed to obtain a very good approximation of the solution.
The simulation has a general character and can be adapted to investigate even more complex problems of the Np-hard category ( for example, researching CLSP problems with n products).
The quality of the solutions can be improved by increasing the number of simulations but it is necessary to have a fairly fast computer. In this work we use at most 10 million simulations. Another parameter that influences the quality of the solutions is the correct choice of the probability p (see (35)). Is there an optimal probability? This is a question for further research.

Acknowledgments

My special thanks to Luis Aurelio Rocha of Passau University for his comments on this work.

Appendix A. Results visualization

Appendix A.1. Model A

Figure A1. Model A: Average Totalcost and CPU Time
Figure A1. Model A: Average Totalcost and CPU Time
Preprints 70864 g0a1
Figure A2. Model A: Average Inventory cost
Figure A2. Model A: Average Inventory cost
Preprints 70864 g0a2

Appendix A.2. Model B

Visualization of the results and average costs.
Figure A3. Model B: Average Total cost and CPU time
Figure A3. Model B: Average Total cost and CPU time
Preprints 70864 g0a3
Figure A4. Model B: Total costs
Figure A4. Model B: Total costs
Preprints 70864 g0a4
Figure A5. Model B: Total costs
Figure A5. Model B: Total costs
Preprints 70864 g0a5

Appendix B. Average costs

Appendix B.1. Model A

Table A1. Model A: Average Total Costs
Table A1. Model A: Average Total Costs
Total costs T 15 30 60 90 120 150
Count 172 155 167 162 166 164
TD Mean 274061 665537 1798127 3348945 5552436 8062797
Std. 87161 151370 389288 660684 906092 1349699
Optimal Mean 268593 659453 1792494 3344788 5546715 8058311
Std. 83431 148783 385859 659403 904686 1348457
Relative error TcError 2,04% 0,92% 0,31% 0,12% 0,10% 0,06%
Total costs T 150 180 210 240 270 300
Count 164 164 168 168 170 168
TD Mean 8062797 11087631 14620895 19015245 23243458 28160753
Std. 1349699 1811439 2199306 2911556 3384673 3870830
Optimal Mean 8058311 11081145 14614610 19008049 23237758 28154353
Std. 1348457 1808995 2198938 2910200 3382841 3868995
Relative error TcError 0,06% 0,06% 0,04% 0,04% 0,02% 0,02%
Table A2. Model A: Average CPU time
Table A2. Model A: Average CPU time
CPU Time T 15 30 60 90 120 150
Count 172 155 167 162 166 164
TD Mean 0,10 0,11 0,21 0,31 0,50 0,78
Std. 0,06 0,05 0,10 0,16 0,26 0,39
Optimal Mean 0,14 0,28 0,41 0,59 1,12 1,79
Std. 0,06 0,11 0,17 0,30 0,51 1,42
Relative error CPUError -25,27% -59,97% -49,61% -47,53% -55,39% -56,26%
CPU Time T 150 180 210 240 270 300
Count 164 164 168 168 170 168
TD Mean 0,78 1,00 1,25 1,59 1,77 2,36
Std. 0,39 0,47 0,69 0,82 0,90 1,39
Optimal Mean 1,79 2,44 3,52 5,03 5,33 7,60
Std. 1,42 1,73 3,00 3,50 3,98 5,97
Relative error CPUError -56,26% -59,00% -64,53% -68,46% -66,87% -68,94%

Appendix B.2. Model B

Table A3. Model B: Average Total Costs
Table A3. Model B: Average Total Costs
Total costs T 15 30 60 90 120 150
Count 200 200 200 200 200 200
Simulation Mean 185971 342933 815220 4576352 7829443 3979678
Std. 21273 45909 155884 858442 1559305 397507
Gurobi Mean 182040 332163 784654 4498331 7718552 3845522
Std. 21125 45150 155097 882996 1594738 393440
Relative error TcError 2,16% 3,24% 3,90% 1,73% 1,44% 3,49%
Total costs T 150 180 210 240 270 300
Count 200 200 200 200 200 200
Simulation Mean 3979678 5477237 8177244 19065355 18786745 20708665
Std. 397507 593444 1275892 4030464 3201422 3672141
Gurobi Mean 3845522 5318346 7905438 18570461 18146172 19992493
Std. 393440 590176 1265172 4055425 3179322 3670651
Relative error TcError 3,49% 2,99% 3,44% 2,66% 3,53% 3,58%
Table A4. Model B: Average CPU time
Table A4. Model B: Average CPU time
CPU Time T 15 30 60 90 120 150
Count 200 200 200 200 200 200
Simulation Mean 0,79 2,28 5,94 11,68 19,87 34,12
Std. 0,13 0,13 0,16 0,18 0,23 0,54
Gurobi Mean 0,12 1,57 90,38 111,93 204,94 597,03
Std. 0,08 1,53 156,10 186,04 245,47 36,02
Relative error CPUError 552,92% 44,87% -93,43% -89,56% -90,31% -94,28%
CPU Time T 150 180 210 240 270 300
Count 200 200 200 200 200 200
Simulation Mean 34,12 46,26 62,84 77,96 101,69 130,17
Std. 0,54 0,58 1,22 2,63 2,74 3,78
Gurobi Mean 597,03 596,88 597,47 591,51 596,54 593,22
Std. 36,02 4,06 3,92 33,19 3,80 7,14
Relative error CPUError -94,28% -92,25% -89,48% -86,82% -82,95% -78,06%
Table A5. Model B: Inventory costs
Table A5. Model B: Inventory costs
Inventory costs T 15 30 60 90 120 150
Count 200 200 200 200 200 200
Simulation Mean 28307 52842 112536 253095 340599 260657
Std. 5341 8170 12391 86118 107587 28744
Gurobi Mean 27801 57117 132943 509248 790970 318360
Std. 6907 12243 29889 194930 324335 43350
Relative error Inv. Error 1,82% -7,49% -15,35% -50,30% -56,94% -18,13%
Inventory costs T 150 180 210 240 270 300
Count 200 200 200 200 200 200
Simulation Mean 260657 345666 542344 990715 1147482 1282444
Std. 28744 38613 75292 175805 161861 196713
Gurobi Mean 318360 507104 835915 1859977 1730800 1959659
Std. 43350 89630 191367 486708 372666 455506
Relative error Inv. Error -18,13% -31,84% -35,12% -46,74% -33,70% -34,56%
Table A6. Model B: Return stock cost
Table A6. Model B: Return stock cost
Return Inventory costs T 15 30 60 90 120 150
Count 200 200 200 200 200 200
Simulation Mean 45867 92667 249888 3690209 6646915 821946
Std. 18040 35850 137395 1028216 1793396 208315
Gurobi Mean 41356 74641 195294 3346068 6070949 700634
Std. 17493 33456 133042 1109603 1957840 207573
Relative error Ret. Inv. Error 10,91% 24,15% 27,96% 10,28% 9,49% 17,31%
Return Inventory costs T 150 180 210 240 270 300
Count 200 200 200 200 200 200
Simulation Mean 821946 1548362 2628642 9347966 7251886 8608929
Std. 208315 482657 1041268 4406311 2744151 3706917
Gurobi Mean 700634 1293559 2169556 8142232 6309891 7524531
Std. 207573 477084 1026872 4293352 2685984 3610684
Relative error Ret. Inv. Error 17,31% 19,70% 21,16% 14,81% 14,93% 14,41%
Table A7. Model B: Average Setup costs
Table A7. Model B: Average Setup costs
Setup Costs T 15 30 60 90 120 150
Count 200 200 200 200 200 200
Simulation Mean 50033 106876 238570 293071 388685 1521814
Std. 10663 17638 31424 27563 34664 212705
Gurobi Mean 55707 114588 248504 307481 408104 1458747
Std. 10343 17268 30443 27399 37230 201433
Relative error Setup. Error -10,19% -6,73% -4,00% -4,69% -4,76% 4,32%
Setup Costs T 150 180 210 240 270 300
Count 200 200 200 200 200 200
Simulation Mean 1521814 1699197 2214098 2828660 3716988 4920930
Std. 212705 233148 330991 404730 467555 902775
Gurobi Mean 1458747 1641182 2118141 2669355 3397775 4526298
Std. 201433 223689 310292 367954 412785 200
Relative error Setup. Error 4,32% 3,53% 4,53% 5,97% 9,39% 8,72%

References

  1. M. Thierry, M. Salomon, J. Van Nunen, and L. Van Wassenhove. Strategic issues in product recovery management. California Management Review, 37(2):114–135, 1995. [CrossRef]
  2. Umweltbundesamt. Papier und druckerzeugnisse, 2020. URL https://www.umweltbundesamt.de/papier-druckerzeugnisserechnungen-amp-prognosen-der-studie-des-ifeu-instituts (Access date: 2020-09-14).
  3. F. Sahling. A column-generation approach for a short-term production planning problem in closed-loop supply chains. BuR- Business Research, 6(1):55–75, 2016. [CrossRef]
  4. R. Helmrich, M.J. Jans, W. van den Heuvel, and A.P.M. Wagelmans. Economic lot-sizing with remanufacturing: Complexity and efficient formulations. IISE Transactions, 46(1):67–86, 2014. [CrossRef]
  5. A. Sifaleras and I. Konstantaras. Variable neighborhood descent heuristic for solving reverse logistics multi-item dynamic lot-sizing problems. Electronic Notes in Discrete Mathematics, 47:69–76, 2015. [CrossRef]
  6. O.A. Kilic and W. van den Heuvel. Economic lot sizing with remanufacturing: Structural properties and polynomial-time heuristics. IISE Transactions, 51:12:1318–1331, 2019. [CrossRef]
  7. K. Richter and M. Sombrutzki. Remanufacturing planing for the reverse wagner/whitin models. Journal of Operational Research, 121:304–315, 2000.
  8. K. Richter and J. Weber. Thre reverse wagner/whitin model with variable manufacturing and remanufacturing cost. International Journal of Production Economics, 71:447–456, 2001. [CrossRef]
  9. R.H. Teunter, Z.P. Bayindir, and W. van den Heuvel. Dynamic lot sizing with product returns and remanufacturing. Int. Journal of Production Research, pages 4377–4400, 2006. [CrossRef]
  10. T. Schulz. A new silver-meal basic heuristic for the single-item dynamic lot sizing problem with returns and remanufacturing. International Journal of Production Research, page 2519–2533, 2011. [CrossRef]
  11. J.O. Cunha and R.A. Melo. A computational comparison of formulations for the economic lot-sizing with remanufacturing. Computers & Industrial Engineering, 92:72–81, 2016. [CrossRef]
  12. Z.H. Zhang, H. Jiang, and X. Pan. A lagrangian relaxation based approach for the capacitated lot sizing problem in closed-loop supply chain. Int. J. Productions Economics, 140:249–255, 2012. [CrossRef]
  13. M. Florian, J.K. Lenstra, and K. Rinnooy. Deterministic production planning algorithms and complexity. Management Science, 26(7):669–679, 1980. [CrossRef]
  14. G.R. Bitran and H.H. Yanasse. Computational complexity of the capacitated lot size problem. Management Science, 28(10):1174–1186, 1982. [CrossRef]
  15. P.S. Dixon. Multi-Item Lot-Sizing with Limited Capacity. dissertation, University of Waterloo, Ontario, 1979.
  16. B. Karimi, S. Fatemi Ghomi, and J. M. Wilson. The capacitated lot sizing problem review of models and algorithms. OMEGA, 31:365–378, 2003. [CrossRef]
  17. J. Maes, JO. McClain, and LN. Van Wassenhove. Multilevel capacitated lotsizing complexity and lp-based heuristics. Journal of Operational Research, 53:131–148, 1991. [CrossRef]
  18. I.M. Sobol. Calculation of improper integrals using uniformly distributed sequences. Soviet Math. Dokl., 14:734–738, 1973. [CrossRef]
  19. J. H. Halton. On the efficiency of certain quasi-random sequences of points in evaluating multi-dimensional integrals. Numer. Math., 2:84–90, 1960. [CrossRef]
  20. H. Niederreiter. Quasi-monte carlo methods and pseudo-random numbers. Bull. Am. Math. Soc., 84:957–1041, 1978. [CrossRef]
  21. B. Klinger. Numerical integration of singular integrands using low-discrepancy sequences. Computing, 59(3):223–236, 1997. [CrossRef]
  22. W.V.D. Heuvel and A.P.M. Wagelmans. Four equivalent lot-sizing models. Operations Research Letters, 36:465–470, 2008. [CrossRef]
  23. J. Maes and L.N. Van Wassenhove. A simple heuristic for the multi item single level capacitated lotsizing problem. Operations research letters, 4:265–273, 1986. [CrossRef]
  24. Donald E. Knuth. The Art of Compute Programming: Seminumerical Algorithms. Volume 2. Addison-Wesley, 1981.
  25. J. von Neumann. Various techniques used in connection with random digits. Monte Carlo Method, Appl. Math. Series, 12:36–38, 1951.
  26. H. Niederreiter. Random Number Generation and Quasi-Monte Carlo Methods. SIAM, 1992. ISBN 10:0-89871-295-5.
  27. S. Tezuka. Uniform Random Numbers: Theory and Practice. Kluwer Academic, 1995.
  28. G.J. Chaitin. Information, randomness and incompleteness. Papers on Algorithmic Information Theory., page 236, 1987. [CrossRef]
  29. A.N. Kolmogorov and V.A. Uspenskii. Algorithms and randomness. Teor. Veroyatnost i Primenen., 32:425–455, 1987.
  30. C.P. Schnorr. Zufälligkeit und wahrscheinlichkeit. Lecture Notes in Math., 218:109, 1971.
1
We can always transform a problem with non zero initial or final stock by adapting the demand.
2
low discrepancy sequences are called quasi-random sequences
Figure 1. Dynamic Capacitated Lot-Sizing with Produkt Returns and Remanufacturing
Figure 1. Dynamic Capacitated Lot-Sizing with Produkt Returns and Remanufacturing
Preprints 70864 g001
Figure 2. Two-dimensional projection of 5000 Halton and Pseudorandom points
Figure 2. Two-dimensional projection of 5000 Halton and Pseudorandom points
Preprints 70864 g002
Table 4. Demand Transformation.
Table 4. Demand Transformation.
t d t n ˜ d t r ˜ d ˜ t c t d ˜ [ t ] c [ t ]
1 195 198 393 609 393 609
2 42 590 632 632 1025 1241
3 101 0 101 101 1126 1342
4 295 0 295 295 1421 1637
5 52 568 620 620 2041 2257
6 0 0 0 561 2041 2818
Sum 685 1356 2041 2818
Table 5. Halton Numbers
Table 5. Halton Numbers
Prime numbers
2 3 5 7
n Halton numbers
1 0,5 0,33333333 0,2 0,14285714
2 0,25 0,66666667 0,4 0,28571429
3 0,75 0,11111111 0,6 0,42857143
4 0,125 0,44444444 0,8 0,57142857
5 0,625 0,77777778 0,04 0,71428571
Table 6. Problem classes
Table 6. Problem classes
PC1 PC2 PC3 PC4 PC5 PC6
T 15 30 60 90 120 150
PC7 PC8 PC9 PC10 PC11
T 180 210 240 270 300
Table 7. Parameters for Model A
Table 7. Parameters for Model A
c t [ 0 ; 800 ] d t n , d t r with condition (1)
p n [ 15 ; 20 ] p r [ 10 ; 15 ]
h t n [ 5 ; 10 ] h t r [ 3 ; 8 ]
h t r e with condition (4) r t r e with condition (3)
s t n = d ¯ n T B O 2 h t n 2 , T B O 1 , 2 , 4
s t r = d ¯ r T B O 2 h t r 2 , T B O 1 , 2 , 4
Table 8. Model B: Parameters
Table 8. Model B: Parameters
c [ 200 ; 5500 ] d t n , d t r with condition (1)
p n [ 4 ; 20 ] p r [ 2 ; 15 ]
h t n [ 0.6 ; 10 ] h t r [ 0.6 ; 8 ]
h t r e with condition (4) r t r e with condition (3)
s c n [ 4000 ; 30000 ] s r r [ 3000 ; 16000 ]
Table 9. Periods, Halton’s numbers
Table 9. Periods, Halton’s numbers
T N T
15 491520
30 983040
60 1966080
90 2949120
120 3932160
150 4915200
180 5898240
210 6881280
240 7864320
270 8847360
300 9830400
Table 10. Schematic of the simulation
Table 10. Schematic of the simulation
Step 1 Initialisation: φ * , k = 1 ,   τ > k , T , N = N T τ
Step 2 p k = k τ . If k = τ , stop; otherwise go to Step 3.
Step 3 Using algorithm 4 and p k calculate the function
φ p k : = min φ i ( x , y ) , i = 1 , , N .
Step 4 If φ * > φ p k then φ * = φ p k .
Step 5 k = k + 1 and go to Step 2.
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.
Copyright: This open access article is published under a Creative Commons CC BY 4.0 license, which permit the free download, distribution, and reuse, provided that the author and preprint are cited in any reuse.
Prerpints.org logo

Preprints.org is a free preprint server supported by MDPI in Basel, Switzerland.

Subscribe

© 2024 MDPI (Basel, Switzerland) unless otherwise stated