Next Article in Journal
Optimization Algorithms for Detection of Social Interactions
Previous Article in Journal
Sparse Logistic Regression: Comparison of Regularization and Bayesian Implementations
Previous Article in Special Issue
A Novel Hybrid Metaheuristic Algorithm for Optimization of Construction Management Site Layout Planning
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Late Acceptance Hill-Climbing Matheuristic for the General Lot Sizing and Scheduling Problem with Rich Constraints

1
Institute of Information Systems, University of Hamburg, 20146 Hamburg, Germany
2
Department of Industrial Engineering and Business Information Systems, University of Twente, 7522 NH Enschede, The Netherlands
*
Author to whom correspondence should be addressed.
Algorithms 2020, 13(6), 138; https://doi.org/10.3390/a13060138
Submission received: 3 May 2020 / Revised: 1 June 2020 / Accepted: 2 June 2020 / Published: 9 June 2020
(This article belongs to the Special Issue Optimization Algorithms for Allocation Problems)

Abstract

:
This paper considers the general lot sizing and scheduling problem with rich constraints exemplified by means of rework and lifetime constraints for defective items (GLSP-RP), which finds numerous applications in industrial settings, for example, the food processing industry and the pharmaceutical industry. To address this problem, we propose the Late Acceptance Hill-climbing Matheuristic (LAHCM) as a novel solution framework that exploits and integrates the late acceptance hill climbing algorithm and exact approaches for speeding up the solution process in comparison to solving the problem by means of a general solver. The computational results show the benefits of incorporating exact approaches within the LAHCM template leading to high-quality solutions within short computational times.

1. Introduction

In many production processes, a fraction of the manufactured products can be defective due to an unreliable production system. Often, defective items incorporate substantial value and it is possible to rework them into an “as-good-as-new” state. Incorporating this feature results in a more ecological friendly production process as disposal reduces. Furthermore, reworking of defective items can only take place within a specific time span. For instance, in the pharmaceutical industry rework often has to take place in a short amount of time due to likely increasing contamination. In this context, we formulate a related problem and address a model formulation of the general lot sizing and scheduling problem with rework termed as GLSP-RP, which was first presented by [1]. This problem also considers lifetime constraints for defective items. As the authors report, the GLSP-RP model is hardly solvable by a general-purpose solver in an adequate amount of time. Even for small problem instances of non-practical size, it requires more than 1800 s. This leads to the necessity of faster approaches providing solutions within reasonable execution times.
Matheuristics can be defined as those solution approaches obtained from the interoperation between metaheuristics and mathematical programming techniques [2]. Within matheuristics, decomposition approaches belong to one of the most relevant algorithms (some recent examples can be consulted in, for example, [3,4,5]). For instance, the principal idea behind proposing the matheuristic version of POPMUSIC is to decompose the problems into smaller (and likely more tractable) ones and solve them by means of an exact technique [6]. As remarked by [7] to successfully apply decomposition matheuristic approaches, one may develop an iterated procedure where the information is interchanged along the process. Adapting those ideas to well-known single point metaheuristics such as late acceptance hill-climbing (LAHC, [8]) permits, within a hill-climbing framework, to substitute the inherent method for generating candidate solutions by an exact method solving a given sub-problem. Furthermore, recently, [9] showed by means of the unrelated parallel machine scheduling problem the importance of including advanced local search methods to improve the solution quality in LAHC. This, thus, led to our research question about how LAHC would perform if we use an exact approach instead of a local search solver.
Based on the previous discussion, the contribution of this paper is twofold:
  • We investigate the relationship between the original formulation of the general lot sizing and scheduling problem (GLSP) and the GLSP-RP by providing a comprehensive discussion of both problems.
  • For solving the GLSP-RP, we propose the Late Acceptance Hill-climbing Matheuristic (LAHCM) as a general solution framework, which is inspired by and integrates the LAHC strategy with the exact approaches, i.e., the solution of optimization models for reduced problems configured in the spirit of the LAHC. To assess its performance, we evaluate it over a set of well-defined instances. The computational results indicate that by means of our approach we are able to improve the objective function values for several instances where a general-purpose solver such as CPLEX (https://www.ibm.com/nl-en/analytics/cplex-optimizer) is not able to find optimal solutions in the given time limit of 1800 s.
The outline of this paper is as follows. In Section 2, those works related to the GLSP as well as its respective formulation are discussed. The general lot sizing and scheduling problem considering rework and lifetime constraints for defective items is explained in Section 3. Later, our matheuristic solution approach based on late acceptance hill-climbing is described in Section 4. The extensive computational experience is reported in Section 5. Finally, some conclusions and further research lines are exposed in Section 6.

2. Literature Review

To jointly decide on lot sizing and scheduling has attracted many researchers in recent years producing a rich body of literature on different models and problem formulations including, for example, the general lot sizing and scheduling problem (GLSP). In this paper, we present a novel solution approach for an extended version of the GLSP and focus on this specific problem while referring to [10], and [11] for extensive literature reviews on different simultaneous lot sizing and scheduling problems. In Section 2.1, we reappraise the original model formulation of the GLSP as it will later be used in the algorithm for creating an initial solution. In Section 2.2, we review solution approaches and model extensions to the GLSP.

2.1. The General Lot Sizing and Scheduling Problem

The GLSP was originally introduced by [12]. The authors presented two versions of the model, namely the GLSP-CS (Conservation of Setup state) where the setup state is preserved over idle periods and the GLSP-LS (Loss of Setup state). In this section, with the aim of making the paper self-contained, we present an extended mixed-integer programming (MIP) formulation for the GLSP-CS that includes sequence-dependent setup times as presented by [13] and a revised version of the minimum lot size constraint introduced by [14] and use the name GLSP for this formulation in the further course of this paper. The GLSP features integrated production planning and scheduling for capacitated single facility environments with multiple products. The setups for these products are sequence-dependent in times and costs, implying that setting up the production of the products in a certain sequence can be more favorable than another in terms of time and costs; see also [15,16]. To simultaneously determine the production sequence and the quantity of production lots, the GLSP includes a two-level time structure. Products j = 1 , , J are scheduled over a finite planning horizon consisting of macro-periods t = 1 , , T with given length. Micro-periods m = 1 , , L T (with L T denoting the last micro-period of the last macro-period T) are used to model the production sequence of products within the macro-periods. Each macro-period t consists of a predefined non-overlapping sequence of micro-periods with | M t | being an advance fixed total number of micro-periods within a macro-period t. The length of each macro-period is given by the input parameter for the resource capacity b t ; the lengths of micro-periods are decision variables expressed by the number of productions in the micro-period. A production lot consists of a sequence of consecutive micro-periods where the same product is produced and may continue over a series of micro-periods and macro-periods. As described, this model presents an extended version of the GLSP-CS where the setup state is preserved over idle periods, i.e., if after an idle micro-period the same product is produced as before, no additional setup is necessary.
The objective is to find an optimal production quantity and a sequence that minimizes overall production costs, consisting of setup changeover and inventory-holding costs. Table 1 presents the variables, parameters and indices of the GLSP model.
The problem is formulated as follows:
m i n j = 1 J t = 1 T h j · s j , t + i = 1 J j = 1 J m = 1 L T f i , j · z i , j , m
s j , t 1 + m M t y j , m d j , t = s j , t j , t
j = 1 J m M t t p j · y j , m b t i , j = 1 J m M t s t i , j · z i , j , m t , i j
y j , m M · x j , m j , m
j = 1 J x j , m = 1 m
y j , m κ j ( x j , m x j , m 1 ) j , t , m L t
y j , m + y j , m + 1 κ j ( x j , m x j , m 1 ) j , t , m = L t
z i , j , m ( x i , m 1 + x j , m ) 1 i , j , m , i j
y j , m , s j , t , z i , j , m 0 j , m , t
x j , m { 0 , 1 } j , m
The objective Function (1) minimizes the overall costs consisting of the holding costs for produced items and the sequence-dependent setup costs. Equation (2) depicts the inventory balancing constraint. It states that the inventory in macro-period t is composed of the inventory of the previous macro-period t 1 , the production amount of all micro-periods belonging to t subtracted by the demand of period t. Inequality (3) states that the maximum available capacity ( b t ) of macro-period t reduced by the sum of sequence-dependent setup times incurred by setup changes from product i to product j with m M t must be greater or equal to the sum of processing times in all micro-periods belonging to macro-period t. Constraints (4) and (5) ensure that product j can only be produced in micro-period m, if a setup for product j is performed in m, i.e., if the binary setup variable ( x j , m ) is set to one and that only a single product can be produced at a time in a micro-period m. The authors of [12] pointed out that minimum lot sizes have to be included, otherwise wrong calculations of setup costs could occur as a result of setup state changes without product changes in cases where the setup cost matrix does not satisfy the triangle inequality (i.e., f i , k + f k , j f i j with i , j , k 1 , , J ). As shown by [14], this originally introduced minimum lot size constraint was strictly limited as a production state between two consecutive periods; it is only conserved if the available capacity exceeds the minimum production quantity. Therefore, the authors adjusted Constraint (6) and introduced Constraint (7) to enforce the production continuity across macro-periods. Constraint (8) presents the changeover logic and Constraints (9) and (10) enforce non-negative and binary variables, respectively.
Many researchers have worked on this specific model and developed extensions, solution approaches, and applications for industrial settings, which will be reviewed in the next section.

2.2. Solution Approaches and Model Extensions

The authors of [12] present a solution procedure for the GLSP-based on the local search algorithm threshold accepting. The procedure starts from a configuration defined by a fixed setup pattern and calculates the corresponding lot sizes and costs through backward oriented heuristics. New candidates are created by neighborhood operations that change the old configuration and are accepted as a new configuration if they provide an improved solution. To escape local optima, new candidates are also accepted if their solution quality is not worse than a specific threshold, while the convergence of the algorithm is ensured by lowering this threshold. In [13,17], an improved version of this procedure is used that determines lot sizes optimally for a fixed pattern through ”dual reoptimization” instead of heuristically for solving two extended versions of the GLSP, i.e., the GLSP with setup times and the GLSP for parallel lines, respectively. While this approach proves to be efficient for the single-line GLSP, the results of the multi-line formulation are insufficient. Therefore, Meyr and Mann (2013) adjust the approach by aggregating the original multi-line ”master-problem” in order to decompose it into a set of isolated single-line ”sub-problems”, which are solved by the heuristic provided in [13]. A model extension of the single-stage GLSP to multiple production stages is presented in [18]. The authors of [19] adjust this model with respect to the synchronization of the machines and present several reformulations of the problem based on variable redefinitions. In addition, three heuristic approaches are presented to solve the problem. In [20], the authors present a GLSP-based model formulation called the synchronized and integrated two-level lot sizing and scheduling problem (SITLSP), which is motivated by industrial settings, mainly of soft-drink companies where the production process involves two interdependent levels with decisions concerning raw material storage and soft drink bottling. The authors of [21] solve the SITLSP by a genetic algorithm (GA) and study single-population and multi-population approaches. Additional solution approaches for the SITLSP are studied by [22]. They apply a tabu search (TS), threshold accepting (TA), genetic algorithm (GA) and hybrid genetic algorithms using a combination of GA with TS and TA, respectively, to the problem. The authors observe that for the hybrid approaches, an execution of TA and TS over the best individual of each population results in high computational times and that a strategy where these strategies are only executed when the best individual of all populations is updated performs best. The authors of [23] propose a multi-population GA with individuals structured in ternary trees to solve data provided by a soft-drink company. A simplified model formulation of the SITLSP called two-stage multi-machine lot scheduling model (P2SMM) is proposed by [24] where each filling line can only be connected to a single tank at the same point in time. As a relaxation approach, they first solve a single-stage version of the model and afterward determine the setup variables of the P2SMM. In addition, they propose fix-and-relax strategies and combinations of them with a relaxation approach to solve the P2SMM. Reference [25] study different relax-and-fix strategies to solve a model formulation similar to the single-stage P2SMM with only one production line and the production bottleneck in the bottling stage. Reference [26] propose four different alternative single-stage formulations of the P2SMM where the first two are based on the single-stage GLSP model with sequence-dependent setup times and costs, while the other two are asymmetric traveling salesman problem (ATSP)-based formulations with different subtour elimination constraints. Numerical experiments show that solution strategies based on the ATSP formulations perform best for the P2SMM. The authors of [27] apply a combined genetic algorithm and mathematical programming approach to solve the P2SMM that outperforms the approaches presented in [26]. In [28], the authors adjust the P2SMM for an application in the brewery industry and solve the problem heuristically by using a constructive relax-and-fix heuristic and several improvement procedures based on fix-and-optimize strategies. Note that these approaches borrow ideas from the much older POPMUSIC approach of [29].
The authors of [30] present a GLSP-based model formulation for a multi-product multi-level job shop production where they subdivide the macro-periods into three types of micro-periods: one type for production, one for setups, and one for idle time. Due to the high complexity of their formulation, only problems with a small number of periods, products, and machines can be solved to optimality. In [31], the authors propose a formulation for lot sizing and scheduling in a flow shop environment with sequence-dependent setups and develop four fix-and-relax heuristics that rely on successive resolutions of reduced size MIP-formulations of the problem. The authors of [32] propose a formulation based on the model of [30] for a flexible flow shop environment with sequence-dependent setups. Additionally, the authors of [33] develop two algorithms based on a rolling horizon approach where first, all binary variables of the problem are relaxed. Then, relaxed binary variables of the current period are divided into the two groups so that the members of the first and second groups get value one or zero, respectively.
The authors of [34] present two MIP-formulations for joint lot sizing and scheduling motivated by an animal feed plant. While the first formulation sequences each period independently, the second model takes linking setup states between periods into account. The authors present three relax-and-fix (RF) heuristic approaches where they either apply the RF heuristic for relaxing and fixing the lot sizes or the periods. While the RF heuristic on the integer lot sizes performs best, the authors observed that a forward-oriented RF over the periods acts like a greedy heuristic resulting occasionally in infeasible solutions for instances known to be feasible. In [35], the author presents an extended formulation for the GLSP with multiple production stages where an embedded State-Task-Network is used to model product substitution and flexible Bill-of-Materials by introducing several tasks that produce the same product while using different input products. In [36], the authors consider a GLSP-based model with different machine configurations. Therefore, the authors introduce tools as an additional, capacitated resource in a single-stage, multi-machine problem and model tool changeovers instead of product changeovers. As a specific tool cannot be used on more than one machine at a time, continuous variables for the starting and ending times of tool use are introduced. The authors of [37] present a hybrid mixed-binary model based on the GLSP for a practical problem of the process industry and propose two transportation-based reformulations, namely the quantity-based transportation problem (QTP) and the proportional transportation problem (PTP). In their statistical analysis, they observe that the PTP reformulation performs best on average, but for cases of a high level of minimum production quantities, it is outperformed by the QTP reformulation. In [38], the authors propose three novel mathematical formulations for a two-stage GLSP where multiple products are produced on parallel, non-identical machines inspired by the textile industry and solve them with a MIP-solver. The authors of [39] adapt this model for usage in the yarn production and solve the problem by means of a hybrid method called hamming-oriented partition search, which is a branch-and-bound-based procedure that incorporates a fix-and-optimize improvement method.
In [40], the authors propose a GLSP-based model for a pulp and paper mill planning problem and solve the problem with a two-step approach with a MIP-based construction heuristic followed by a MIP-based improvement heuristic. The authors of [41] extend this model to the multi-stage scenario and include additional constraints with the objective to maximize the steam output used to generate electrical energy. To solve the problem, the authors develop a hybrid approach that combines the general variable neighborhood search heuristic, a specific heuristic called speeds constraint heuristic and an exact solver. In [42], the authors also extend the model of [40] to the case of parallel non-identical paper machines and solve the problem by a hybrid solution method composed of an exact method embedded in a genetic algorithm. The authors of [43] present a model formulation for a production environment with wear and tear of resources and maintenance activities based on a combination of the PLSP and the GLSP where exogenous macro-periods with given length and demand are combined with endogenous micro-periods of flexible length. The authors propose a fix-and-optimize type decomposition heuristic to solve this problem.
The authors of [44] present a GLSP formulation with multiple machines in a job shop environment and solve the problem with two MIP-based algorithms based on the rolling horizon iterative procedure. A multi-stage GLSP formulation for a flexible job-shop problem is presented by [45] and solved with a metaheuristic method that combines a GA with particle swarm optimization (PSO) and a local search heuristic. Deterioration and perishability for the GLSP are considered by [46]. The authors propose a model formulation that includes products that deteriorate after a maximum lifetime while being stored in an inventory. In this paper, we regard a model formulation based on this GLSP version, which was first presented by [1] and combines lifetime constraints for defective items with the ideas of an imperfect production process and rework, called GLSP-RP.
Reference [47] study a robust optimization and a scenario-based two-stage stochastic programming model for the General Lot-Sizing and Scheduling Problem (GLSP) under demand uncertainty. The authors propose an extensive simulation experiment based on Monte Carlo to evaluate different characteristics of the solutions, such as average costs, worst-case costs, and standard deviation. The authors of [48] focus on a general lot-sizing and scheduling problem, including perishable food products, and apply two mixed-integer programming based heuristics to the problem. The authors use relax-and-fix approaches as a constructive heuristic to find an initial feasible solution and afterward apply a fix-and-optimize heuristic to improve the obtained initial solution.

3. The GLSP with Rework and Lifetime Constraint for Defective Items

The GLSP-RP was introduced by [1] to model process environments where conflicting items are required to avoid contact as they are subject to contamination, for example, the food processing industry where an-allergenic food items are produced on the same machine as regular food items. The problem considers an imperfect production system where a fraction of the planned lot size is not of serviceable quality and goes to a separate rework inventory where it is stored till it is reworked and shipped to customers or disposed of, which is illustrated in Figure 1.
Note that, in this paper, no distinction will be made between the quality of good quality items and reworked items. Furthermore, we assume that the rework process always succeeds. For scheduling rework lots, a joint setup variable is considered, i.e., if the machine is set up for the original production in micro-period m (i.e., x j , m = 1 ) and followed by a rework lot for product j in m + 1 and vice versa, no additional setup is needed and, therefore, no additional setup costs occur. To address this in the model, the binary setup variable x j , m of the GLSP formulation is redefined as the binary joint setup-variable. In addition, the defectives have a fixed lifetime while being stored in the rework inventory, i.e., if the defective items are not reworked in a fixed time frame expressed by a number of consecutive micro-periods ( Ω j ) they become scrap and have to be disposed, resulting in disposal costs ( λ j ). Table 2 shows the additional variables and parameters of the GLSP-RP.
The GLSP-RP is formulated as follows:
m i n j = 1 J t = 1 T h j · s j , t + i = 1 J j = 1 J m = 1 L T f i , j · z i , j , m + j = 1 J m = 1 L T h j R · s j , m R + j = 1 J m = 1 L T λ j · s j , m D + j = 1 J λ j · ( s j , L T R + R j , L T )
y j , m S = [ y j , m · ( 1 Θ j , t ) ] j , t , m M t
R j , m = ( y j , m · Θ j , t ) j , t , m M t
s j , t 1 + m M t y j , m S + m M t y j , m R d j , t = s j , t j , t
s j , m 1 R + R j , m y j , m R s j , m D = s j , m R j , m
s j , m D τ = 1 m Ω j R j , τ τ = 1 m 1 y j , τ R τ = 1 m 1 s j , τ D j , m
τ = 1 m 1 R j , τ τ = 1 m 1 y j , τ R y j , m R j , m
j = 1 J m M t ( t p j · y j , m + t p j R · y j , m R ) b t i , j = 1 J m M t s t i , j · z i , j , m t M t , i j
y j , m + y j , m R M · x j , m j , m
j = 1 J x j , m = 1 m
y j , m + y j , m R κ j ( x j , m x j , m 1 ) j , t , m L t
y j , m + y j , m + 1 + y j , m R + y j , m + 1 R κ j ( x j , m x j , m 1 ) j , t , m = L t
z i , j , m ( x i , m 1 + x j , m ) 1 i , j , m , i j
y j , m , y j , m R , y j , m S , s j , t , s j , t R , R j , m , z i , j , m , s j , m D 0 j , m , t
x j , m { 0 , 1 } j , m
The adjusted objective Function (11) of the GLSP-RP additionally considers the holding costs of defective items and the disposal costs for defective items that perished while holding. As a positive rework inventory at the end of the planning horizon is allowed for feasibility reasons any positive amount of defectives stored in the rework inventory or incurred in the last micro-period of the planning horizon ( m j , m = L T ) has to be disposed, leading to disposal costs that are included in the last term of the objective function. Equations (12) and (13) present the production process of defectives as described in [49]. Concerning the planned lot size amount y j , m of a given micro-period m, only the reduced amount of y j , m S is of serviceable quality and can be used for demand satisfaction. The amount of items that are defective ( R j , m ) has to be stored in the rework inventory and later reworked or disposed. Consequently, the GLSP-RP regards two separate inventories for serviceable items and defective items. Equation (14) shows the amended inventory balancing constraint for serviceable items. The serviceable inventory in macro-period t is composed of the inventory of the previous period t 1 , the amount of serviceable and rework production in all micro-periods belonging to macro-period t subtracted by the demand of period t. Equation (15) considers the rework inventory. The rework inventory is micro-period based as it symbolizes an interim inventory for the defective items. It is composed of the rework inventory in m 1 , the number of defective items of micro-period m minus the reworked items in m and the number of items that passed their lifetime while being stored ( s j , m D ). The interrelation between storage time and lifetime of the defective items is shown in Equation (16). It states that the amount of spoiled defectives for a given micro-period m is calculated by the defectives produced by the original production process from the beginning of the planning horizon until micro-period m deduced by the lifetime length Ω j of the defectives, less those items that are already reworked until micro-period m 1 and defectives that were already disposed in previous micro-periods. Constraint (17) ensures that defectives of micro-period m 1 can be reworked in m the earliest. The capacity constraints given in Inequalities (18) show that in addition to the sum of the processing times for the original production, the rework production process also has to be taken into account. Consequently, it has the maximum available capacity ( b t ) of macro-period t minus the sum of sequence dependent setup times by setup changes from product i to product j not to be exceeded by the total sum of processing times for the original and the rework production occurring in micro-periods belonging to t. Equation (19) depicts the joint setup constraint. This constraint ensures that product j can only be produced or reworked, respectively, in micro-period m, if a setup for product j is performed in m, with U B symbolizing a large number that has to be chosen in a way that it does not restrict the production volume. Constraint (20) ensures that only a single product is produced and/or reworked in micro-period m. Constraints (21) and (22) are the adjusted minimum lot size constraints and ensure that after a setup change the minimum lot size amount ( κ j ) has to be fulfilled by production and/or rework. Constraint (22) enforces the production continuity across macro-periods as described by [14], i.e., if the time interval of the last micro-period of a macro-period t is not sufficient to produce or rework κ j , and production is continued in the next macro-period ( t + 1 ), then the sum of production and rework of micro-period m and m + 1 has to satisfy the minimum production quantity. Constraint (23) presents the changeover logic and enforces variables ( z i , j , m ) for micro-period m to equal one if product i is produced or reworked in micro-period m 1 and followed by a production or rework lot of another product j in micro-period m. Constraints (24) and (25) enforce non-negative and binary variables, respectively.

4. Late Acceptance Hill-Climbing Matheuristic Template

The late acceptance hill-climbing (LAHC) algorithm is a single-point iterative search algorithm proposed by [8] that accepts non-improving movements when the objective function value of a candidate has a better value than the one number of iterations before. Namely, while in the standard hill-climbing algorithm a candidate solution is compared to the direct predecessor, in LAHC the candidate is compared with the current solution several iterations before.
LAHC has been successfully applied to several optimization problems. In the following, some of them are briefly reviewed. The authors of [8] apply the LAHC to exam timetabling problems reporting a competitive performance. This problem is later addressed by [50] where they present a hybridization of an adaptive artificial bee colony (ABC) and LAHC. The latter is applied as a local search procedure during the exploitation of the ABC algorithm. The results indicate that this hybridization performs better than other modifications of the ABC algorithm. In [51], the authors apply the LAHC to the traveling purchaser problem showing a suitable performance for solving that problem. The authors of [52] use this algorithm for balancing two-sided assembly lines with multiple constraints. The LAHC, in this case, is able to provide the same solutions as those provided by the optimization model implemented using LINGO for the small-sized instances. For large-sized instances, the model is not able to provide an optimal solution in reasonable computational time, thus leaving LAHC the best option for those instances. The author of [53] applies LAHC to the liner shipping fleet reposition problem. The author compares it to simulated annealing (SA) reporting that LAHC performs well on small instances, but on larger instances, SA exhibits better performance. The authors of [54] experimentally examine their proposed method and compare it to search techniques that employ a cooling schedule, i.e., simulated annealing, threshold accepting and the great deluge algorithm for the traveling salesman problem. In [55], the authors present a cutoff time strategy based on the coupon collector’s problem and apply it to the LAHC algorithm. The authors tested that approach on the Travelling Salesman Problem, the Quadratic Assignment Problem, and the Permutation Flow-shop Scheduling Problem. Their results show that the proposed strategy is a valid stopping method for a one-point stochastic local search algorithm that accepts worsening moves. The authors of [56] apply the LAHC for finding train composition causing greatest fatigue damage in railway bridges. In [9], the authors propose an LAHC approach to solve the unrelated parallel machine scheduling problem with sequence and machine-dependent setup times, the reported results indicated the relevancy of including advanced local search methods to improve LAHC performance. This raises the research question related to using an exact solver instead of a local search within LAHC.
Based on the previous discussion, there are two reasons for developing and proposing the Late Acceptance Hill-Climbing Matheuristic (LAHCM) in this paper. First, the LAHC as a metaheuristic reportedly performs well for the traveling purchaser problem and the traveling salesman problem. The traveling purchaser problem incorporates a choice option regarding the inclusion of nodes. As including rework into dynamic lot sizing shows a high similarity to this property and lot sizing models are frequently formulated as traveling salesman based formulations including the GLSP (see [26]), it is worth examining the application of LAHC for solving our GLSP model formulation. Second, considering the relevant performance of this strategy in the related literature and the benefits of exact approaches in terms of solution quality, the interplay between the two types of approaches is considered in LAHCM. In this sense, exact approaches are exploited to solve subproblems optimally and generate candidate solutions within LAHC. To the best of our knowledge, this is the first LAHC matheuristic template proposed so far and, therefore, we are contributing in this paper by presenting a LAHCM as a general solution framework.
The pseudo-code of LAHCM considering the GLSP-RP is reported in Algorithm 1. The parameter of the algorithm is a list length parameter l, which establishes the number of solutions to be stored. The initialization of the algorithm consists of creating an initial solution for the problem instance p (line 1). The current best solution is set to the initial solution (line 2), the number of iterations and the array for storing the solutions collected in the last l iterations are initialized in lines 3-6. The LAHCM search procedure is depicted in lines 7–15 and executed until a given stopping criterion is met. The index of the solution from l iterations before is stored in v (line 8). A candidate solution s is generated by solving a subproblem by means of an exact method (fixandsolve ()) defined by the user (line 9). At this point, it should be noted that the main difference between a standard LAHC and LAHCM resides in the way the candidate solution is generated. Furthermore, if the candidate solution enhances the objective value of the current solution or the one from l iterations before, then the candidate solution is the new current solution (lines 10–11). Moreover, the candidate solution is compared to the best solution found so far s b e s t in order to check if the candidate solutions improve the best one and thus replace it (lines 12–13). Finally, the solution is stored in the solution array and the iteration counter is incremented. In LAHCM, the search process is stopped when no improvement is obtained by means of the performance comparison shown in line 10.
As can be seen, the LAHCM template does not require a neighborhood structure to generate candidate solutions but an exact approach permitting to optimally generate candidate solutions for its mathematical programming neighborhood that can be defined by fixing some parameters or reducing the instance at hand. The previous permits, because of the size reduction, solving the subproblems with exact approaches in reasonable times to optimality.

4.1. Initial Solution

In order to generate an initial solution for the LAHCM algorithm, the procedure createinitialsol () (see Algorithm 1) is proposed. Its functioning consists of relaxing the problem by not considering the constraints concerning the rework and lifetime for defective items, that is to say, we solve the GLSP (see Section 2.1). Once that problem is solved, the solution is appropriately entered by means of fixing the sequence variables x j , m of the GLSP-RP. That is done by extending its corresponding model (Section 3) with the following constraints:
x j , m x ( G L S P ) j , m j , m
where x ( G L S P ) j , m denote the variable values taken in the GLSP solution.
Algorithm 1: Matheuristic Late Acceptance Hill-Climbing algorithm (LAHCM)
Algorithms 13 00138 i001
By means of this procedure, an initial solution is obtained in a reasonable computational time. It is worth pointing out that the solution entered to the GLSP-RP optimization model (Section 3) has the binary setup variables fixed. Since the initial solution comes from the GLSP, the selection of the variables is performed without losing the sense of feasibility. With the goal of facilitating the understanding of the initial solution generation process, an illustrative example considering three products ( j = 1 , , 3 ), three macro-periods ( t = 1 , , 3 ), and a fixed number of five micro-periods ( M t = 5 ) per macro-period is presented. The available capacity for all macro-periods is constant with b t = 400 . For all products, the processing times per product are t p j = 1 , the holding costs are h j = 5 , and the minimum lot size amount is κ j = 10 . The other parameters of this example are set as follows:
f i , j = [ 0 0.25 10 0.25 0 5 10 5 0 ] s t i , j = [ 0 0.5 5 0.5 0 2 5 2 0 ] d j , t = [ 95 91 108 0 238 58 107 150 93 ]
The first step for generating an initial solution is to solve the corresponding GLSP. This way, for the above-mentioned example the optimal solution is reported in Table 3. It should be noted that since the values of variables s j , t correspond to macro-periods, to avoid repetition only one number is reported for each row/block.
In the solution, we observe six setup changes with a total of 15.75 in setup changing costs. As the available capacity in t = 2 with b t = 400 is not sufficient to produce the total demand for all three products in t = 2 , proportions of the demand of products j = 1 and j = 2 are produced and stored in t = 1 leading to storage costs, of 410. Therefore, the overall cost for the GLSP solution is 425.75.
As previously described, additional parameters are needed for the GLSP-RP. Consequently, the lifetime of defective items while stored in the rework inventory is set to three micro-periods for all products ( Ω j , m = 3 ) and the disposal cost is λ j = 1000 per item. Regarding rework, we include rework holding costs of h j R = 1 , rework processing costs of t p j R = 1 for all j. The fraction of defectives per product and macro-period is given as follows:
Θ j , t = [ 0 0.005 0.01 0.005 0.01 0.02 0 0 0.005 ]
The solution for the GLSP-RP with the fixed setup sequence is shown in Table 4. As in Table 3, variables s j , t only report for each row/block one value as they correspond to macro-periods.
The above solution is used as the starting solution for solving the GLSP-RP with the LAHCM approach. Its objective function value is 4478.75. As can be checked, the setup costs of 15.75 for the GLSP-RP are the same as for the GLSP due to the same setup sequence. The imperfect production process results in much higher storage costs with 1460 costs for the inventory storage and an additional three costs for the rework inventory. The greatest cost driver by far are the disposal costs. As a result of the fixed production sequence, not all defective items can be reworked in a timely manner and therefore disposal costs of 3000 occur.

4.2. Mathematical Programming-Based Neighborhood

As discussed in the previous section, LAHCM differentiates from the standard LAHC in the way the candidate solutions are generated. While in the LAHC a neighborhood structure is usually used, in LAHCM generation of the candidate solution is done by means of an exact algorithm. Thus, in order to produce a candidate solution for the GLSP-RP, the method fixandsolve () is proposed. By means of this function, an input solution is used for extracting and fixing decision variables with the aim of generating smaller sub-problems and solving them in an exact way, producing thus a candidate solution. In a similar way as proposed in [6] through the definition of reduced sub-problems from larger and more complex ones, we are able to address them using an exact algorithm in a small and reasonable computational time. This, as discussed in the relevant section, allows improving the quality of the provided solution while reducing the overall solving time. The input of our approach considers different strategies in order to obtain a reduced sub-problem. In the current work, we use the following strategies:
  • Strategy 1 ( α 1 ): The x j , m variables are fixed except for those regarding a product j selected at random.
  • Strategy 2 ( α 2 ):The x j , m variables are fixed except for those regarding two products j and j selected at random and where j j .
  • Strategy 3 ( α 3 ):The x j , m variables are fixed except for those regarding three products j, j , and j selected at random and where j j j .
Henceforth, the resulting subset of non-fixed variables of x j , m is denoted as x j , m f . Moreover, the application of these strategies requires previous information about those variables that are to be fixed. That is done by considering previous information from a given solution s.
The pseudo-code of fixandsolve () is depicted in Algorithm 2. For a given problem instance of the GLSP-RP, the algorithm fixes some of the decisions associated to the variables x taking into account an input solution s. To determine the subset of variables to be free from x (i.e., x f ), a strategy is selected at random (line 2). Afterward, the optimization model of the GLSP-RP is solved for the ensuing sub-problem obtained from the input instance p with the decisions concerning x fixed except for x f (line 3). Hence, the model to be solved includes the following:
x j , m f 0 , j , m .
The solution s obtained from solving the reduced problem is compared to the input one to check if an improvement has been achieved (line 4). If no improvement is achieved, the input solution s is returned (line 7).
Algorithm 2: Fix and Solve algorithm for the GLSP-RP
Algorithms 13 00138 i002

4.3. Illustrative Example of the Functioning of the LAHCM for the GLSP-RP

With the goal of facilitating the comprehension of LAHCM, this subsection presents an example case of its functioning using the problem instance provided in Section 4.1 and considering a list length (l) of two.
Initial Solution: As detailed in Section 4.1, for creating a starting solution, the production sequence of the GLSP is given to the GLSP-RP, i.e., the complete sequence of x j , m of the GLSP is given to the GLSP-RP with no rescheduling enabled. Table 5 shows that the resulting sequence of the initial GLSP-RP solution matches the sequence of the GLSP.
The objective function value of the initial solution (i.e., 4478.75) is stored in the list l = [ 4478.75 ] and the iterative procedure with relaxation of the sequence is started.
Iteration 1: The strategy selected at random is α 2 and the selected products within the strategy are j = 1 and 2.
Therefore, the binary setup variables for j = 1 and 2 are reset to zero for all micro-periods m, which is once exemplified in Table 6. This allows a rescheduling of the sequence of products 1 and 2.
The above sequence is given to the GLSP-RP, producing thus a reduced problem, which is solved by means of an exact algorithm. The optimal solution of this problem results in the following new production sequence for iteration 1:
Having the sequence of products j = 1 and j = 2 free while the remaining products are fixed leads to four rescheduling decisions (shown in bold in Table 7) and results in an objective function value of 998.25. This new solution does not include disposal costs. Moreover, this objective value is added to the list l = [ 4478.75 ; 998.25 ] and the updated production sequence will be the new input sequence for iteration 2. As the list is filled (with the predefined list length l = 2 ), the next solutions of the next iterations will be compared to the first entry of the list until the stopping criterion is met.
Iteration 2: The strategy selected at random is α 1 and the selected product within the strategy is j = 1 .
All values of the production sequence of iteration 1 are fixed except for product j = 1 . This is given as an input to the GLSP-RP. This reduced problem does not lead to any rescheduling and, therefore, results in the same objective function value of 998.25, which is lower than the first entry of the list (i.e., 998.25 < 4478.75 ). Consequently, the first entry of the list is dropped and the objective function value of iteration 2 is added: l = [ 998.25 ; 998.25 ] .
Iteration 3: The strategy selected at random is α 1 and the selected product within the strategy is j = 3 . In this iteration of the algorithm, the products’ sequence is fixed except for product j = 3 . The optimal solution of the resulting reduced problem leads to a solution for the GLSP-RP with two rescheduling decisions, which are shown in Table 8.
The new objective function value is 994.25, which is lower than the corresponding entry of the list (i.e., 994.25 < 998.25 ). Therefore, that entry of the list is dropped and the objective function value of iteration 2 is added to the end of the list: l = [ 998.25 ; 994.25 ] .
Iteration 4: The strategy selected at random is α 1 and the selected product within the strategy is j = 2 .
All values of the production sequence of iteration 3 are fixed except for product j = 2 . Having the decision concerning this product free does not lead to any improvement and thus the objective function value of 994.25 is maintained. Nevertheless, this objective function value is lower than the corresponding one of the list (i.e., 994.25 < 998.25 ). Therefore, the entry of the list is dropped and the objective function value of iteration 4 is added to the end of the list: l = [ 994.25 ; 994.25 ] .
Iteration 5: The strategy selected at random is α 2 and the selected products within the strategy are j = 1 and 3.
Having the setup sequence of product j = 2 fixed and those with respect to products j = 1 and j = 3 unfixed does not enable any improving rescheduling, this results thus in the same objective function value of 994.25. This value is compared to the corresponding entry list. As both values are the same, the stopping criterion is met and the method ends with the final objective value of 994.25.

5. Computational Results

In this section, we provide a numerical analysis of the algorithm. We compare the algorithm to benchmark results for data classes that are generated with the same methodology as in [1], which is explained in more detail in the next section. The algorithm is programmed in JAVA and CPLEX 12.6 is used as the standard MIP-solver for solving the MIP formulations of the GLSP and iteratively the GLSP-RP with updated production sequences. CPLEX is is a high-performance general-purpose solver commonly used for solving linear and mixed-integer programming problems. All experiments are conducted on a computer equipped with an Intel Core i5-24510M CPU with 2.3 GHz and 6 GB RAM. We will present the parameters for the data classes in Section 5.1, and afterward, we will present the solutions of the algorithm and compare them to the CPLEX results in Section 5.2.

5.1. Data Set

All data classes consist of 50 instances. For generating the data classes we followed the same methodology as described in [1]. While the authors focused on a sensitivity analysis by varying specific parameters and test them for different numbers of micro-periods within the macro-periods we are going to test the performance of our algorithm for a single number of M t per class. We build three different data classes (A, B and C) where class A has the highest number of periodic decisions (i.e., 4 macro-periods and 7 micro-periods within a macro-period) and is therefore supposed to be the hardest class to solve. Table 9 summarizes the parameter settings for all data classes.

5.2. Algorithm Results

For testing our algorithm, we set a 100 s time limit on every iteration and a global time limit of 1800 s and compared the results to the best found solution by CPLEX 12.6 in a time limit of 1800 s. Concerning the algorithm parameters, we analyzed its performance for three relaxation strategies, i.e., α 1 , α 2 and α 3 (see Section 4.2), respectively, and tested the algorithm with regards to its main parameter l, i.e., for l = 1 , 10 , 20 , and 50. The results for all instances of the three data classes are shown in Table 10, Table 11 and Table 12. Finally, at the end of the section a study on the implication of having a very large parameter l (i.e., 100) is conducted.
The tables show that while the solution times of the algorithm are lowest for the small list length of l = 1 , the method tends to get stuck in a local optimum very fast for this list length. As a consequence, we can observe that only for a small number of instances better solutions could be found in comparison to the CPLEX results. In addition, we can see that the average objective function values are much higher than for the CPLEX results for all data classes. The effect of getting stuck in local optima is compensated for higher values of l resulting in much better objective function values but with also a small increase in solution times.
Furthermore, for the class A instances, CPLEX is not able to find an optimal solution for any instance in the given time limit of 1800 s. With l = 1 , the algorithm was able to find better solutions for six instances with a reduction in the average solution time of 92.2 % . While the average objective values for l = 1 for class A are higher than those from CPLEX, this changes for l = 10 . For l = 10 , the algorithm is able to find 37 better solutions and a reduction in the average objective values of 7.2 % . Also, the number of iterations rise resulting in larger computation times; these times are still much lower ( 78.8 % ) than for CPLEX. The best results for all the data classes are for the list length of l = 50 .
Analyzing the performance of the algorithm for each class of instances, we can observe that for the class A instances, the algorithm is able to find 48 better solutions in half of the computation time of CPLEX. Regarding the class B instances, 49 optimal solutions could be found by CPLEX in an average time of 212.23 s. For l = 50 , the algorithm is able to find 48 of these solutions resulting in an average objective value that is only 0.1 % higher than the CPLEX results while the computation time reduces by 20.8 % compared to CPLEX. For the class C instances, it can be observed that 20 instances could be solved to optimality by CPLEX and the overall average CPLEX time is very high with 1354.50 s. While the algorithm is not able to find a better solution for any of the 50 instances for l = 1 this number increases to 6 instances for l = 10 and 12 instances for l = 20 . For l = 50 our algorithm is able to find 40 better or same-quality solutions for the instances that could be solved by CPLEX. We can observe an average increase of 0.2 % in the objective values due to the 10 instances where the algorithm was not able to find a better solution. The small increases in the objective function values are superseded by the significant reduction of the computational time, which is a decrease of 86.6 % in this case in comparison to solving the optimization problem at once with a general solver.
Concluding this section, we can see several effects for the single parameter of LAHCM l. Reducing our approach to a hill-climbing matheuristic without late-acceptance criterion, i.e., setting l = 1 leads to solutions that get stuck in a local optimum soon for all data classes. Setting l = 10 is most effective for the solution quality of class A in terms of better solutions found. That is, for 37 instances better solutions can be found in comparison to the CPLEX results. However, this list size is not sufficient to overcome local optima for a large number of the instances for classes B and C. While for l = 20 the solution quality of the method increases, the best results can be seen for l = 50 . As we can observe, a strict solution quality improvement for longer list sizes we can also observe that choosing a good value for l is critical regarding the computational time of the method.
In Table 13, we test LAHCM with l = 100 for the instances where we could not find better or optimal results for l = 50 compared to the CPLEX results. This will permit analyzing the impact on LAHCM when larger l are considered and thus better exemplify the trade-off between that parameter and solution quality. For classes A and B for all instances the method with l = 100 was able to find the same or better solutions compared to CPLEX in shorter computational times. For class B, we can observe the discussed trade-off, that is, as the solution quality improves for l = 100 , the computational times are higher than for CPLEX. For class C, out of the 10 instances where the method could not provide better values for l = 50 (see Table 12), LAHCM was able to find eight equivalent results in less time than CPLEX for l = 100 . In this regard, the average number of iterations regarding the instances presented in Table 13 for finding the best solution is 73.21 iterations, which also means that a list length of 100 should have been sufficient to find better or optimal results for all instances. Therefore, we can state that the selection of the strategy has a much higher influence than increasing the list length. On the one hand, strategy α 3 needs the longest computation time as it allows the most rescheduling decisions. On the other hand, this strategy is very effective to escape local optima while the other strategies are useful to create fast neighborhood solutions.

6. Conclusions

In this paper, we have proposed the Late Acceptance Hill-climbing Matheuristic (LAHCM) as a general framework for solving the optimization problem. It has been successfully applied to the general lot sizing and scheduling problem with defective items and lifetime constraints (GLSP-RP). Moreover, we have discussed the differences between the original GLSP and the GLSP-RP and gave an extensive overview of solution approaches and conducted research on several extensions of the GLSP. We exemplified the proceeding of the LAHCM on an example case and later applied the algorithm on several data classes. The overall results show that LAHCM performs very well on the GLSP-RP and is able to find optimal solutions or at least better solutions in much less time than a general purpose exact solver like CPLEX. While we were still not able to solve all instances to optimality, we were able to find 48 better or equal solutions for data classes A and B and for 40 instances for class C out of 50 instances. The results of the method also showed that increasing the single-point parameter l led to better solution values while the trade-off between better solution values and computational times has to be closely monitored. Moreover, the performance of LAHCM advises its use in practical environments where, due to rework and lifetime constraints, fast and reliable solutions are required in reasonable computational times.
Further research will be conducted towards studying the performance of LAHCM on other optimization problems, especially those where exact approaches are computationally limited because of the instance size. In that regard, a further research direction is to investigate how different solvers could be exploited using LAHCM for the same given problem. Moreover, steering mechanisms inside the LAHCM such as defining upper-level rules for determining the application of the fixing strategies will be investigated. In addition, research will be conducted in the area of different model formulations for the GLSP-RP, for example, in the form of a simple plant location model formulation.

Author Contributions

Conceptualization, A.G. and E.L.-R.; Data curation, A.G.; Formal analysis, A.G. and E.L.-R.; Investigation, A.G. and E.L.-R.; Methodology, A.G. and E.L.-R.; Resources, S.V.; Software, A.G.; Supervision, E.L.-R. and S.V.; Validation, A.G.; Writing—original draft, A.G.; Writing—review & editing, E.L.-R. and S.V. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Goerler, A.; Pahl, J.; Voß, S. Simultaneous Lot Sizing and Scheduling for Contamination Sensitive Items with Rework Options; Working Paper; Institute of Information Systems, University of Hamburg: Hamburg, Germany, 2017. [Google Scholar]
  2. Maniezzo, V.; Stützle, T.; Voß, S. Matheuristics: Hybridizing Metaheuristics and Mathematical Programming. In Annals of Information Systems 10; Springer: New York, NY, USA, 2009. [Google Scholar]
  3. Meira, W.H.T.; Magatão, L.; Relvas, S.; Barbosa-Póvoa, A.P.; Neves, F., Jr.; Arruda, L.V. A matheuristic decomposition approach for the scheduling of a single-source and multiple destinations pipeline system. Eur. J. Oper. Res. 2018, 268, 665–687. [Google Scholar] [CrossRef]
  4. Lalla-Ruiz, E.; Voß, S. A popmusic approach for the multi-depot cumulative capacitated vehicle routing problem. Optim. Lett. 2019, 14, 671–691. [Google Scholar] [CrossRef]
  5. Caserta, M.; Voß, S. Accelerating mathematical programming techniques with the corridor method. Int. J. Prod. Res. 2020. [Google Scholar] [CrossRef]
  6. Lalla-Ruiz, E.; Voß, S. POPMUSIC as a matheuristic for the berth allocation problem. Ann. Math. Artif. Intell. 2016, 76, 173–189. [Google Scholar] [CrossRef]
  7. Archetti, C.; Speranza, M.G. A survey on matheuristics for routing problems. EURO J. Comput. Optim. 2014, 2, 223–246. [Google Scholar] [CrossRef] [Green Version]
  8. Burke, E.K.; Bykov, Y. A late acceptance strategy in hill-climbing for exam timetabling problems. In Proceedings of the PATAT 2008 Conference, Montreal, QC, Canada, 18 August 2008. [Google Scholar]
  9. Terzi, M.; Arbaoui, T.; Yalaoui, F.; Benatchba, K. Solving the Unrelated Parallel Machine Scheduling Problem with Setups Using Late Acceptance Hill Climbing. In Proceedings of the Asian Conference on Intelligent Information and Database Systems, Phuket, Thailand, 23–26 March 2020; pp. 249–258. [Google Scholar]
  10. Zhu, X.; Wilhelm, W. Scheduling and lot sizing with sequence-dependent setup: A literature review. IIE Trans. 2006, 38, 987–1007. [Google Scholar] [CrossRef]
  11. Copil, K.; Wörbelauer, M.; Meyr, H.; Tempelmeier, H. Simultaneous lotsizing and scheduling problems: A classification and review of models. OR Spectr. 2017, 39, 1–64. [Google Scholar] [CrossRef]
  12. Fleischmann, B.; Meyr, H. The general lotsizing and scheduling problem. OR Spectr. 1997, 19, 11–21. [Google Scholar] [CrossRef]
  13. Meyr, H. Simultaneous lotsizing and scheduling by combining local search with dual reoptimization. Eur J. Oper. Res. 2000, 120, 311–326. [Google Scholar] [CrossRef]
  14. Koçlar, A.; Süral, H. A note on The general lot sizing and scheduling problem. OR Spectr. 2005, 27, 145–146. [Google Scholar] [CrossRef]
  15. Haase, K. Lotsizing and Scheduling for Production Planning; Lecture Notes in Economics and Mathematical Systems; Springer: Berlin, Germany, 1994; Volume 408. [Google Scholar]
  16. Haase, K. Capacitated Lot-Sizing with Sequence Dependent Setup Costs. OR Spectr. 1996, 18, 51–59. [Google Scholar] [CrossRef] [Green Version]
  17. Meyr, H. Simultaneous lotsizing and scheduling on parallel machines. Eur. J. Oper. Res. 2002, 139, 277–292. [Google Scholar] [CrossRef]
  18. Meyr, H. Simultane Losgrößen- und Reihenfolgeplanung bei mehrstufiger kontinuierlicher Fertigung. Z. Betriebswirtschaft 2004, 74, 585–610. [Google Scholar]
  19. Seeanner, F.; Meyr, H. Multi-stage simultaneous lot-sizing and scheduling for flow line production. Spectrum 2013, 35, 33–73. [Google Scholar] [CrossRef]
  20. Toledo, C.; Kimms, A.; França, P.; Morabito, R. A Mathematical Model for the Synchronized and Integrated Two-Level Lot Sizing and Scheduling Problem; Working Paper; University of Campinas: Campinas, Brazil, 2006. [Google Scholar]
  21. Toledo, C.; França, P.; Rosa, K. Meta-heuristic approaches for a soft drink industry problem. In Proceedings of the ACM Symposium on Applied Computing, Ceara, Brazil, 16–20 March 2008; pp. 1777–1781. [Google Scholar]
  22. Toledo, C.; de Jesus Filho, J.; França, P. Meta-heuristic approaches for a soft drink industry problem. In Proceedings of the 2008 IEEE International Conference on Emerging Technologies and Factory Automation, Hamburg, Germany, 18 September 2008; pp. 1384–1391. [Google Scholar]
  23. Toledo, C.; França, P.; Morabito, R.; Kimms, A. Multi-population genetic algorithm to solve the synchronized and integrated two-level lot sizing and scheduling problem. Int. J. Prod. Res. 2009, 47, 3097–3119. [Google Scholar] [CrossRef] [Green Version]
  24. Ferreira, D.; Morabito, R.; Rangel, S. Solution approaches for the soft drink integrated production lot sizing and scheduling problem. Eur. J. Oper. Res. 2009, 196, 697–706. [Google Scholar] [CrossRef]
  25. Ferreira, D.; Morabito, R.; Rangel, S. Relax and fix heuristics to solve one-stage one-machine lot-scheduling models for small-scale soft drink plants. Comput. Oper. Res. 2010, 37, 684–691. [Google Scholar] [CrossRef]
  26. Ferreira, D.; Clark, A.; Almada-Lobo, B.; Morabito, R. Single-stage formulations for synchronised two-stage lot sizing and scheduling in soft drink production. Int. J. Prod. Econ. 2012, 136, 255–265. [Google Scholar] [CrossRef]
  27. Toledo, C.; de Oliveira, L.; de Freitas Pereira, R.; França, P.; Morabito, R. A genetic algorithm/mathematical programming approach to solve a two-level soft drink production problem. Comput. Oper. Res. 2014, 48, 40–52. [Google Scholar] [CrossRef]
  28. Baldo, T.; Santos, M.; Almada-Lobo, B.; Morabito, R. An optimization approach for the lot sizing and scheduling problem in the brewery industry. Comput. Ind. Eng. 2014, 72, 58–71. [Google Scholar] [CrossRef]
  29. Taillard, E.; Voß, S. POPMUSIC Partial Optimization Metaheuristic Under Special Intensification Conditions. In Essays and Surveys in Metaheuristics; Ribeiro, C., Hansen, P., Eds.; Kluwer: Alphen aan den Rijn, The Netherlands, 2002; pp. 613–629. [Google Scholar] [CrossRef] [Green Version]
  30. Fandel, G.; Stammen-Hegene, C. Simultaneous lot sizing and scheduling for multi-product multi-level production. Int. J. Prod. Econ. 2006, 104, 308–316. [Google Scholar] [CrossRef]
  31. Mohammadi, M.; Fatemi Ghomi, S.; Karimi, B.; Torabi, S. Rolling-horizon and fix-and-relax heuristics for the multi-product multi-level capacitated lotsizing problem with sequence-dependent setups. J. Intell. Manuf. 2010, 21, 501–510. [Google Scholar] [CrossRef]
  32. Mohammadi, M. Integrating lotsizing, loading, and scheduling decisions in flexible flow shops. Int. J. Adv. Manuf. Technol. 2010, 50, 1165–1174. [Google Scholar] [CrossRef]
  33. Mohammadi, M.; Torabi, S.; Fatemi Ghomi, S.; Karimi, B. A new algorithmic approach for capacitated lot-sizing problem in flow shops with sequence-dependent setups. Int. J. Adv. Manuf. Technol. 2010, 49, 201–211. [Google Scholar] [CrossRef]
  34. Toso, E.; Morabito, R.; Clark, A. Lot sizing and sequencing optimisation at an animal-feed plant. Comput. Ind. Eng. 2009, 57, 813–821. [Google Scholar] [CrossRef]
  35. Lang, J. Production and Inventory Management with Substitutions; Lecture Notes in Economics and Mathematical Systems; Springer: Berlin, Germany, 2010. [Google Scholar]
  36. Almeder, C.; Almada-Lobo, B. Synchronisation of scarce resources for a parallel machine lotsizing problem. Int. J. Prod. Res. 2011, 49, 7315–7335. [Google Scholar] [CrossRef]
  37. Transchel, S.; Minner, S.; Kallrath, J.; Löhndorf, N.; Eberhard, U. A hybrid general lot-sizing and scheduling formulation for a production process with a two-stage product structure. Int. J. Prod. Res. 2011, 49, 2463–2480. [Google Scholar] [CrossRef]
  38. Camargo, V.; Toledo, F.; Almada-Lobo, B. Three time-based scale formulations for the two-stage lot sizing and scheduling in process industries. J. Oper. Res. Soc. 2012, 63, 1613–1630. [Google Scholar] [CrossRef]
  39. Camargo, V.; Toledo, F.; Almada-Lobo, B. HOPS Hamming-Oriented Partition Search for production planning in the spinning industry. Eur. J. Oper. Res. 2014, 234, 266–277. [Google Scholar] [CrossRef] [Green Version]
  40. Santos, M.; Almada-Lobo, B. Integrated pulp and paper mill planning and scheduling. Comput. Ind. Eng. 2012, 63, 1–12. [Google Scholar] [CrossRef]
  41. Figueira, G.; Santos, M.; Almada-Lobo, B. A hybrid VNS approach for the short-term production planning and scheduling: A case study in the pulp and paper industry. Comput. Oper. Res. 2013, 40, 1804–1818. [Google Scholar] [CrossRef]
  42. Furlan, M.; Almada-Lobo, B.; Santos, M.; Morabito, R. Unequal individual genetic algorithm with intelligent diversification for the lot-scheduling problem in integrated mills using multiple-paper machines. Comput. Oper. Res. 2015, 59, 33–50. [Google Scholar] [CrossRef] [Green Version]
  43. Wolter, A.; Helber, S. Simultaneous Production and Maintenance Planning for a Single Capacitated Resource Facing Both a Dynamic Demand and Intensive Wear and Tear; Hannover Economic Papers (HEP); Leibniz Universität Hannover, Wirtschaftswissenschaftliche Fakultät: Hannover, Germany, 2013. [Google Scholar]
  44. Mohammadi, M.; Poursabzi, O. A rolling horizon-based heuristic to solve a multi-level general lot sizing and scheduling problem with multiple machines (MLGLSP_MM) in job shop manufacturing system. Uncertain Supply Chain Manag. 2014, 2, 167–178. [Google Scholar] [CrossRef]
  45. Rohaninejad, M.; Kheirkhah, A.; Fattahi, P. Simultaneous lot-sizing and scheduling in flexible job shop problems. Int. J. Adv. Manuf. Technol. 2015, 78, 1–18. [Google Scholar] [CrossRef]
  46. Pahl, J.; Voß, S.; Woodruff, D.L. Discrete Lot-Sizing and Scheduling with Sequence-Dependent Setup Times and Costs Including Deterioration and Perishability Constraints. In Proceedings of the Hawaiian International Conference on Systems Sciences (HICSS), Kauai, HI, USA, 4–7 January 2011; pp. 1–10. [Google Scholar]
  47. Alem, D.; Curcio, E.; Amorim, P.; Almada-Lobo, B. A computational study of the general lot-sizing and scheduling model under demand uncertainty via robust and stochastic approaches. Comput. Oper. Res. 2018, 90, 125–141. [Google Scholar] [CrossRef]
  48. Alipour, Z.; Jolai, F.; Monabbati, E.; Zaerpour, N. General lot-sizing and scheduling for perishable food products. RAIRO-Oper. Res. 2020, 54, 913–931. [Google Scholar] [CrossRef] [Green Version]
  49. Goerler, A.; Voß, S. Dynamic lot-sizing with rework of defective items and minimum lot-size constraints. Int. J. Prod. Res. 2016, 54, 2284–2297. [Google Scholar] [CrossRef]
  50. Alzaqebah, M.; Abdullah, S. An adaptive artificial bee colony and late-acceptance hill-climbing algorithm for examination timetabling. J. Sched. 2014, 17, 249–262. [Google Scholar] [CrossRef]
  51. Goerler, A.; Schulte, F.; Voß, S. An Application of Late Acceptance Hill-Climbing to the Traveling Purchaser Problem; Lecture Notes in Computer Science; Springer: Berlin, Germany, 2013; pp. 173–183. [Google Scholar]
  52. Yuan, B.; Zhang, C.; Shao, X. A late acceptance hill-climbing algorithm for balancing two-sided assembly lines with multiple constraints. J. Intell. Manuf. 2015, 26, 159–168. [Google Scholar] [CrossRef]
  53. Tierney, K. Late acceptance hill climbing for the liner shipping fleet repositioning problem. In Proceedings of the 14th EU/ME Workshop, Hamburg, Germany, 1 March 2013; pp. 21–27. [Google Scholar]
  54. Burke, E.K.; Bykov, Y. The late acceptance Hill-Climbing heuristic. Eur. J. Oper. Res. 2017, 258, 70–78. [Google Scholar] [CrossRef] [Green Version]
  55. Lobo, F.G.; Bazargani, M.; Burke, E.K. A cutoff time strategy based on the coupon collector’s problem. Eur. J. Oper. Res. 2020, 286, 101–114. [Google Scholar] [CrossRef]
  56. Frøseth, G.T.; Rönnquist, A. Finding the train composition causing the greatest fatigue damage in railway bridges by Late Acceptance Hill Climbing. Eng. Struct. 2019, 196, 109342. [Google Scholar] [CrossRef]
Figure 1. Illustration of the defective production process (see [49]).
Figure 1. Illustration of the defective production process (see [49]).
Algorithms 13 00138 g001
Table 1. Variables, parameters and indices used in the model.
Table 1. Variables, parameters and indices used in the model.
Indices
i , j Products with i , j = 1 , , J
L t Denoting the last micro-period of a macro-period t
mMicro-periods m = 1 , , L T with L T = t = 1 T | M t |
M t Set of micro-periods m within macro-period t
tMacro-periods with t = 1 , , T
Parameters
b t Available capacity in macro-period t in time units
d j , t Demand of product j in period t
f i , j Sequence-dependent setup costs for a change over from product i to j
h j Inventory holding cost factor for product j
κ j Minimum lot size amount of product j
| M t | Fixed number of micro-periods within a macro-period t
s t i , j setup times for a change over from product i to j
t p j Process time per unit of product j
Mbig number, e.g., m a x ( b ) t T
Variables
s j , t Inventory of product j in period t
x j , m Binary setup variable, 1 if product j is set up for production
in micro-period m, 0 otherwise
y j , m Production amount of product j in micro-period m
z i , j , m Changeover variable, 1 if production is changed from product i to j
in micro-period m, 0 otherwise
Table 2. Additional variables and parameters for the general lot sizing and scheduling problem with defective items and lifetime constraints (GLSP-RP).
Table 2. Additional variables and parameters for the general lot sizing and scheduling problem with defective items and lifetime constraints (GLSP-RP).
Parameters
h j R Inventory holding cost factor for defective items of product j
λ j Disposal cost for one perished item of product j
Ω j Lifetime of product j in micro-periods
Θ j , t Proportion of defective items 0 Θ j , t < 1 of product j in t
t p j R Process time for reworking a defective item per unit of product j
Variables
R j , m Number of defective items of product j produced in micro-period m
s j , m D Number of perished items of rework inventory of product j
in micro-period m
s j , m R Number of defective items stored in rework inventory of product j
in micro-period m
x j , m Binary joint-setup variable, 1 if product j is set up for production and/or rework
in micro-period m, 0 otherwise
y j , m R Quantity of defective items of product j reworked in micro-period m
y j , m S Production amount of good-quality items of product j in micro-period m
Table 3. GLSP optimal solution.
Table 3. GLSP optimal solution.
GLSPt:1 2 3
m:12345 678910 1112131415
j = 110000 00001 11100
x j , m j = 201000 00010 00010
j = 300111 11100 00001
j = 1960000 000090 0010800
y j , m j = 2079000 0001590 000580
j = 30011300 0144000 000093
j = 11 0 0
s j , t j = 279 0 0
j = 26 0 0
Table 4. Fixed GLSP-RP CPLEX solution.
Table 4. Fixed GLSP-RP CPLEX solution.
GLSP-RPt:1 2 3
m:12345 678910 1112131415
j = 110000 00001 11100
x j , m j = 201000 00010 00010
j = 300111 11100 00001
j = 11370000 000050 1070000
y j , m j = 20149000 0001000 000500
j = 30010970 2430000 00000
j = 11370000 000049 1050000
y j , m S j = 20148000 000990 000490
j = 30010970 2430000 00000
j = 100000 00001 20000
R j , m j = 201000 00010 00010
j = 300000 00000 00000
j = 100000 00000 12000
y j , m R j = 200000 00000 00000
j = 300000 00000 00000
j = 100000 00000 00000
s j , m D j = 201000 00010 00010
j = 300000 00000 00000
j = 100000 00001 20000
s j , m R j = 200000 00000 00000
j = 300000 00000 00000
j = 142 0 0
s j , t j = 2148 9 0
j = 20 93 0
Table 5. Production sequence of the initial solution for the GLSP-RP.
Table 5. Production sequence of the initial solution for the GLSP-RP.
GLSPt:1 2 3
m:12345 678910 1112131415
j = 110000 00001 11100
x ( i n i t i a l ) j , m j = 201000 00010 00010
j = 300111 11100 00001
Table 6. Relaxed production sequence of the initial solution for the GLSP-RP.
Table 6. Relaxed production sequence of the initial solution for the GLSP-RP.
GLSPt:1 2 3
m:12345 678910 1112131415
j = 100000 00000 00000
x ( r e l a x e d ) j , m j = 200000 00000 00000
j = 300111 11100 00001
Table 7. Output production sequence of Iteration 1 for the GLSP-RP.
Table 7. Output production sequence of Iteration 1 for the GLSP-RP.
GLSP-RPt:1 2 3
m:12345 678910 1112131415
j = 111000 00000 01100
x ( i t e r a t i o n 1 ) j , m j = 200000 00011 10000
j = 300111 11100 00011
Table 8. Production sequence of Iteration 3 for the GLSP-RP.
Table 8. Production sequence of Iteration 3 for the GLSP-RP.
GLSP-RPt:1 2 3
m:12345 678910 1112131415
j = 111000 00000 01100
x ( i t e r a t i o n 3 ) j , m j = 200110 00011 10000
j = 300001 11100 00011
Table 9. Parameter settings for the data classes.
Table 9. Parameter settings for the data classes.
ParameterClass AClass BClass C
# of instances505050
# of products (j)546
# of macro-periods (t)432
# of micro-periods within t ( | M t | )768
d j , t [0;40,120][0;40,120][0;600,1000]
f i , j [100,400][100,400][100,400]
s t i , j f i , j /10 f i , j /10[10,40]
t p j 111
t p j R 0.50.50.75
h j [10,20][10,20][1,5]
h j R h j / | M t | h j / | M t | ( h j / | M t | )*0.75
κ j 101050
λ j 100010001000
Ω j 332
Θ j , t [0;0.005,0.03][0;0.005,0.03][0;0.005,0.03]
b t j = 1 J t = 1 T d j , t 2 j = 1 J t = 1 T d j , t 2 j = 1 J t = 1 T d j , t 0.6
Table 10. Results of class A.
Table 10. Results of class A.
Class A CPLEX LAHCM ( l = 1 ) LAHCM ( l = 10 ) LAHCM ( l = 20 ) LAHCM ( l = 50 )
Instance ObjectiveTime ObjectiveTimeIterations ObjectiveTimeIterations ObjectiveTimeIterations ObjectiveTimeIterations
1 6049.711800 s 15535.14106 s5 5749.71568 s37 5749.71548 s52 5799.71665 s69
2 6099.291800 s 11273.29101 s3 6646.57229 s27 5392.71255 s50 5443.85508 s88
3 4597.861800 s 9076.71241 s8 3902.43204 s13 3902.43208 s29 4295.85800 s120
4 10941.601800 s 8799.86235 s4 8477.86922 s38 8318.141128 s57 8088.001558 s94
5 6332.861800 s 14586.85119 s4 5803.00407 s36 5733.50655 s45 5715.71849 s57
6 7872.141800 s 7422.14121 s4 7372.14322 s19 7372.14622 s46 7249.281172 s76
7 5074.141800 s 14331.85102 s7 5363.71286 s30 4875.57280 s39 4674.14543 s65
8 7044.711800 s 10723.57125 s7 6157.85293 s34 7118.43407 s39 6367.85669 s86
9 7846.141800 s 9596.28116 s5 8243.28722 s31 8048.57619 s28 7763.421434 s112
10 5972.001800 s 6290.29239 s11 5884.85605 s39 6032.57452 s45 5884.85935 s86
11 5030.001800 s 6050.71137 s5 4780.00529 s44 4685.71501 s35 4529.42543 s78
12 4625.001800 s 4628.28144 s9 4297.28251 s32 4347.29304 s41 4185.57316 s74
13 5176.001800 s 5909.57168 s7 4179.85263 s18 3925.71364 s44 3957.71389 s65
14 6927.001800 s 7077.00289 s12 7043.29318 s13 6526.99280 s27 6327.00450 s54
15 5316.141800 s 5450.43137 s6 5252.85321 s22 4966.14343 s34 5152.85408 s61
16 7428.861800 s 8962.29160 s10 6831.43376 s20 7167.001085 s70 6627.71764 s84
17 5168.001800 s 10950.85103 s4 5178.00385 s17 4878.00376 s47 4859.14705 s71
18 4793.711800 s 8443.43105 s4 4019.86293 s21 4069.85362 s56 4119.85330 s75
19 6122.141800 s 7208.71409 s7 5606.57721 s42 6222.14590 s33 5318.851714 s105
20 6858.001800 s 9694.43120 s5 6396.29669 s61 6096.71548 s49 6061.28946 s91
21 5355.571800 s 8035.28114 s3 5455.57530 s36 5455.57259 s59 5455.571066 s105
22 5983.861800 s 6472.57118 s6 6026.14229 s24 5477.71615 s49 5477.71612 s72
23 7784.291800 s 14793.29141 s5 6427.71875 s33 6384.28979 s71 6876.14965 s98
24 4834.861800 s 5756.00131 s4 4913.71156 s23 5325.71344 s42 4715.14652 s76
25 7774.291800 s 7876.29146 s3 7086.29272 s18 7186.29223 s27 7230.571040 s59
26 4199.571800 s 7983.57106 s4 3674.43226 s31 3854.43260 s39 3656.42443 s87
27 6020.711800 s 9443.57127 s3 5218.00170 s28 5370.71466 s55 5218.001031 s121
28 6260.291800 s 7497.14133 s4 5775.43234 s20 6956.29298 s24 5624.28512 s70
29 9204.291800 s 8537.71134 s8 7157.14705 s36 7157.14809 s57 7157.141542 s122
30 3922.711800 s 4428.43113 s7 3572.71172 s24 3572.71229 s36 3572.71528 s61
31 7513.141800 s 15084.29102 s3 5958.00403 s34 5770.00649 s47 5770.001800 s115
32 6869.141800 s 7081.57259 s7 6673.43253 s21 6233.281210 s59 6137.141157 s84
33 4902.711800 s 8331.71142 s4 4502.14306 s29 4502.14671 s71 4704.421110 s110
34 5602.861800 s 9533.86133 s4 5488.57316 s30 5638.57598 s24 5576.14904 s61
35 8134.571800 s 13257.86202 s5 6821.86700 s37 6571.85706 s42 6571.851589 s111
36 3811.861800 s 5019.71164 s7 3667.29208 s33 3720.71244 s31 3517.29363 s72
37 6487.711800 s 8290.29131 s7 6637.29410 s32 6588.71477 s38 6637.281037 s74
38 8037.431800 s 9030.29179 s3 6831.14533 s21 6831.14827 s57 6831.141345 s62
39 7095.431800 s 7939.00131 s4 6696.29272 s27 6053.71593 s50 5928.85653 s72
40 4176.001800 s 9561.14107 s5 4226.00202 s28 4274.29237 s48 4174.28538 s98
41 4141.711800 s 4058.57139 s4 3974.29170 s15 4031.43173 s31 3931.43453 s81
42 4625.001800 s 7156.71103 s5 5435.00145 s17 4337.43585 s71 4437.43839 s91
43 9968.571800 s 9535.99602 s9 8421.99604 s49 8622.00701 s38 8542.141333 s81
44 4851.291800 s 9972.42105 s5 4497.14263 s27 4669.14406 s31 4597.14449 s64
45 5191.141800 s 10550.71101 s4 3649.57184 s20 3599.57250 s25 3601.71474 s92
46 7982.711800 s 14014.29101 s3 7749.57510 s19 6879.29629 s45 7059.281304 s89
47 7434.431800 s 8172.43131 s4 6610.43313 s26 6214.00514 s30 6490.42865 s57
48 8093.571800 s 8817.57139 s4 8958.99266 s48 7449.14490 s34 6791.851423 s83
49 6721.141800 s 6426.29140 s7 6304.29325 s21 5825.71385 s33 5725.71863 s82
50 6238.431800 s 8563.86247 s8 6304.43475 s24 4960.85550 s51 4960.851208 s103
avg. 6289.891800.00 s 8864.68157.96 s5.52 5838.03382.22 s28.50 5698.86506.08 s43.62 5587.84875.92 s83.28
Gap to CPLEX (in %) +40.9%−91.2%- −7.2%−78.8%- −9.4%−71.9%- −11.2%−51.3%-
# of better sol. found* 6 37 40 48
With: l = list length, Objective = Objective function value, Time = CPU time in seconds, Iterations = Number of iterations, # of better sol. found* = number of better results or same results for instances with optimality.
Table 11. Results of class B.
Table 11. Results of class B.
Class B CPLEX LAHCM ( l = 1 ) LAHCM ( l = 10 ) LAHCM ( l = 20 ) LAHCM ( l = 50 )
Instance ObjectiveTime ObjectiveTimeIterations ObjectiveTimeIterations ObjectiveTimeIterations ObjectiveTimeIterations
1 1620.00107 s 2187.8331 s4 1818.1765 s32 1620.0094 s43 1620.00114 s60
2 1957.3366 s 2057.3323 s5 2003.6758 s18 1957.3383 s24 1957.33159 s54
3 1386.0021 s 1386.0016 s5 1386.0017 s12 1386.0028 s22 1386.0057 s65
4 3474.33332 s 4319.9924 s6 3554.66128 s37 3474.33324 s33 3474.33404 s69
5 2344.5045 s 4440.8320 s5 2344.4943 s25 2344.5048 s33 2344.4994 s63
6 2170.1756 s 4037.1710 s3 2170.1626 s13 2387.66122 s33 2170.17106 s58
7 4153.33313 s 7189.6635 s3 4304.99146 s24 4153.33320 s59 4153.33334 s62
8 2591.67341 s 2591.6657 s4 2591.6693 s17 2591.67127 s28 2591.66322 s73
9 1699.5033 s 6009.0013 s7 1699.5038 s14 1699.5060 s24 1699.49122 s68
10 3156.8397 s 4114.0056 s5 3156.83110 s24 3164.66119 s30 3156.83225 s62
11 2203.1727 s 2203.1713 s5 2203.1730 s17 2203.1659 s24 2203.1698 s54
12 3401.00757 s 3401.0072 s5 3602.33169 s24 3401.00167 s52 3401.00229 s58
13 2395.5064 s 2645.5036 s7 2395.5080 s17 2464.83118 s28 2395.50179 s69
14 2594.0032 s 6585.6727 s4 2594.0079 s23 2593.9075 s32 2593.99185 s110
15 2806.67146 s 4688.3317 s6 2806.67168 s22 2806.6694 s45 2806.66146 s55
16 2042.1778 s 2359.3332 s4 2359.3337 s14 2359.3351 s30 2042.16214 s97
17 2843.33112 s 2993.3326 s4 2843.3356 s13 2843.3373 s23 2843.33191 s55
18 3975.171061 s 4219.3320 s4 4126.3356 s15 4055.99313 s32 3975.16304 s56
19 2787.3344 s 4090.1725 s4 2787.3329 s16 3390.5093 s40 2787.33192 s72
20 1514.0033 s 2137.3329 s4 1514.0041 s27 1514.0074 s38 1514.00109 s94
21 3339.50233 s 4865.8365 s5 3339.5068 s13 3339.50151 s45 3339.50227 s91
22 2790.00173 s 3770.6729 s3 3341.9953 s13 2789.9997 s38 2790.00146 s70
23 3647.00175 s 9462.0042 s4 3879.67107 s12 3879.66194 s28 3647.00319 s62
24 3951.00427 s 4719.9946 s5 3998.66138 s22 4065.33393 s47 3951.00251 s58
25 1794.0027 s 1794.0016 s5 1794.0036 s15 1794.0061 s26 1794.0092 s61
26 2578.5089 s 3168.0034 s3 2679.1668 s34 2578.50154 s47 2578.50128 s69
27 2530.67241 s 8331.3313 s3 2803.1744 s22 2803.1655 s32 2530.66152 s64
28 983.5018 s 1083.5020 s4 983.4927 s17 983.5049 s46 983.5053 s58
29 2951.50156 s 3154.3342 s5 3154.3351 s13 3154.3383 s23 2951.4993 s53
30 2552.00144 s 2551.9937 s4 2555.6648 s20 2552.0080 s23 2697.16127 s58
31 2697.17136 s 3527.8338 s7 2697.1741 s18 2697.1733 s24 2697.17173 s77
32 3377.831003 s 3377.8334 s5 3377.8338 s13 3377.8387 s34 3377.83200 s84
33 3554.33231 s 4337.1651 s5 3554.33128 s25 3554.33195 s56 3554.33202 s81
34 3710.50234 s 4192.3361 s5 4010.33183 s15 3715.33119 s28 3710.50187 s59
35 2675.50179 s 3330.8336 s6 2875.5067 s13 2675.5062 s28 2675.50149 s54
36 2157.1786 s 3549.8341 s6 2157.1740 s27 2157.1790 s39 2157.1761 s53
37 3296.17229 s 4998.5020 s6 3495.3338 s13 3345.3371 s29 3296.17178 s67
38 3107.5095 s 1942.6727 s6 3248.6696 s26 3236.1766 s23 3107.49138 s63
39 1892.6726 s 1892.6725 s5 1942.6626 s20 1942.6635 s23 1892.6659 s56
40 2297.8339 s 2347.8321 s5 2347.8329 s12 2347.8342 s25 2347.8358 s58
41 4051.671800 s 5854.4939 s5 4051.6653 s16 4051.67192 s28 4051.67306 s53
42 2572.50110 s 6122.1724 s5 2572.5047 s12 2572.4975 s37 2572.50111 s60
43 1973.1718 s 2065.1721 s6 2173.1631 s19 1973.1748 s32 1973.1776 s66
44 1350.6722 s 1500.6714 s4 1350.6714 s14 1500.6642 s25 1350.6638 s54
45 2153.0017 s 2402.9920 s3 2153.0033 s17 2152.9954 s26 2153.00117 s67
46 2071.8348 s 2071.8331 s5 2071.8336 s13 2071.8360 s23 2071.83131 s56
47 2604.67143 s 3536.3339 s6 3342.3374 s13 2704.6789 s34 2604.67163 s55
48 2963.33235 s 3265.5041 s7 3451.3369 s17 2963.33145 s43 2963.33224 s72
49 3089.50277 s 7007.0030 s3 3141.83106 s17 3141.83163 s39 3089.50204 s74
50 3379.17233 s 4937.9930 s4 3379.17129 s13 3379.1795 s29 3379.17259 s70
avg. 2664.20212.18 s 3776.4031.38 s4.78 2763.7267.74 s18.36 2718.26110.44 s33.06 2668.10168.12 s65.54
Gap to CPLEX (in %) +41.7%−85.2%- +3.7%−68.1%- +2.0%−48.0%- +0.1%−20.8%-
# of better sol. found* 10 26 32 48
With: l = list length, Objective = Objective function value, Time = CPU time in seconds, Iterations = Number of iterations, # of better sol. found* = number of better results or same results for instances with optimality.
Table 12. Results of class C.
Table 12. Results of class C.
Class C CPLEX LAHCM ( l = 1 ) LAHCM ( l = 10 ) LAHCM ( l = 20 ) LAHCM ( l = 50 )
Instance ObjectiveTime ObjectiveTimeIterations ObjectiveTimeIterations ObjectiveTimeIterations ObjectiveTimeIterations
1 30064.101800 s 40243.62106 s4 29964.50156 s72 30064.50128 s36 29964.50160 s65
2 11761.90689 s 12110.75109 s10 18239.13119 s15 11810.75133 s36 11761.90174 s106
3 24294.50630 s 62634.50101 s7 35088.87118 s17 24694.50137 s53 24294.50142 s88
4 33426.101800 s 47853.8896 s3 34167.63124 s43 34017.63177 s97 33426.10184 s97
5 21528.40935 s 27950.75102 s4 22300.63115 s32 21578.37130 s64 21528.38194 s128
6 63558.001800 s 82703.50106 s4 64818.37129 s26 63558.00145 s45 63557.99190 s100
7 31807.30311 s 32314.75104 s5 32257.25140 s46 31857.25140 s71 31807.25152 s91
8 6384.75352 s 7195.63103 s6 6435.38114 s29 6585.38121 s42 6384.75153 s137
9 26849.50467 s 27050.00111 s7 27050.00119 s28 26850.00131 s64 26849.50139 s76
10 10713.00965 s 33008.75105 s3 11163.00114 s17 10847.00115 s32 10713.0074 s163
11 41102.001800 s 45801.63108 s6 41102.00119 s30 41102.00142 s62 40701.99179 s111
12 38239.10855 s 55782.00105 s3 38339.13119 s24 38289.12143 s51 38239.10145 s66
13 57119.401800 s 61553.00103 s4 60370.13113 s17 58023.25147 s40 57219.00276 s171
14 36329.901800 s 36879.8899 s10 36968.13113 s20 36418.00154 s77 36579.87150 s56
15 54449.601800 s 54595.87105 s4 53984.13122 s20 54486.63142 s33 53884.13309 s153
16 18046.101450 s 27043.75105 s6 18395.75104 s13 18046.10122 s44 18046.10175 s141
17 65550.501800 s 65748.25109 s7 65598.25115 s19 65700.50138 s47 65398.25184 s87
18 18158.5093 s 37458.25102 s3 18658.50106 s13 18158.50125 s37 18158.50147 s89
19 70202.501800 s 89141.88112 s7 70302.50143 s38 70202.49182 s66 70202.49204 s117
20 13960.90148 s 34704.50103 s4 13960.87108 s30 13960.88121 s58 13960.88122 s59
21 22345.40720 s 23208.50103 s5 22659.13142 s44 22345.38157 s45 22445.37217 s145
22 29961.801800 s 37861.75107 s7 30061.75111 s20 29911.75123 s24 29911.75180 s93
23 39030.301800 s 47525.7585 s6 39608.87100 s21 39509.25123 s46 39180.24152 s71
24 16223.301800 s 25611.50102 s4 17571.50112 s30 16473.87137 s35 16223.24165 s87
25 8436.0035 s 10938.00101 s3 8636.00105 s18 8736.00115 s38 8435.99116 s53
26 8741.13273 s 17349.13102 s5 16237.38121 s31 8991.13124 s39 8741.13151 s123
27 19510.631800 s 51356.99103 s5 19710.63124 s24 19610.63152 s42 19510.63180 s70
28 34204.001800 s 36959.62107 s5 37209.63113 s14 34204.00141 s38 34204.00252 s57
29 22248.75310 s 26831.63104 s5 22460.75136 s54 22598.75125 s26 22248.75173 s111
30 55401.501800 s 76742.25115 s4 55012.00123 s31 55451.50192 s78 55201.49198 s117
31 36470.381503 s 57020.25108 s4 37525.25128 s29 37374.88155 s54 36470.37175 s100
32 31585.251800 s 33886.37106 s9 31862.63137 s24 31585.25169 s57 31585.24163 s74
33 17730.251612 s 22179.75101 s4 17730.25116 s40 18030.25123 s40 17730.25150 s98
34 38211.631800 s 38782.00104 s4 38458.63132 s38 38382.00133 s24 38408.63265 s78
35 23770.88827 s 31775.13101 s3 23870.87115 s33 23920.87115 s29 23770.87174 s65
36 18219.501800 s 19472.50103 s8 18669.50120 s38 18453.50135 s34 18219.50168 s99
37 45210.251800 s 46334.25113 s7 48069.50127 s27 44249.75162 s56 44278.75211 s80
38 16696.501363 s 16945.88104 s7 16995.88116 s27 16845.88125 s52 16696.50182 s133
39 38395.131800 s 39751.75106 s5 40036.88126 s24 38295.13137 s37 38245.13166 s64
40 5876.00186 s 8229.25101 s5 6240.50110 s22 6240.50117 s42 5976.00163 s73
41 23764.381800 s 35347.63105 s5 24364.38116 s25 24071.00138 s39 23871.00170 s88
42 38450.131800 s 53822.38103 s4 38700.12138 s31 38550.13170 s45 38650.13308 s132
43 49706.631800 s 53004.37106 s4 52854.38140 s32 50056.38128 s34 49706.63204 s84
44 31453.001800 s 31956.50106 s4 31553.00125 s18 31953.00124 s31 31553.00199 s86
45 22222.751800 s 23462.13105 s4 22774.75118 s17 22672.75161 s46 22222.75172 s71
46 47763.751800 s 48213.75105 s6 48113.75122 s22 47963.75116 s23 47763.75180 s73
47 29746.131800 s 29996.1399 s4 29952.75119 s20 30008.25145 s41 29701.25271 s171
48 47663.501800 s 49409.88101 s5 49409.88109 s13 48163.63128 s33 47663.50173 s75
49 52298.001800 s 65293.49105 s9 56111.87138 s34 55961.87162 s67 55961.88187 s75
50 19509.251800 s 20109.25108 s6 20570.75129 s42 19759.25162 s55 19509.25185 s68
avg. 31287.841354.48 s 39223.06104.26 s5.26 32443.94121.56 s27.84 31532.42139.34 s46.10 31335.30182.06 s96.30
Gap to CPLEX (in %) +25.4%−92.3%- +3.7%−91.0%- +0.8%−89.7%- +0.2%−86.6%-
# of better sol. found* 0 6 12 40
With: l = list length, Objective = Objective function value, Time = CPU time in seconds, Iterations = Number of iterations, # of better sol. found* = number of better results or same results for instances with optimality.
Table 13. Results for LAHCM with l = 100 for selected instances where no better solution could be provided in previous experiments.
Table 13. Results for LAHCM with l = 100 for selected instances where no better solution could be provided in previous experiments.
CPLEXLAHCM ( l = 100 )
InstanceObjectiveTimeObjectiveTimeIterations
Class A
215355.571800 s5355.57843 s141
376487.711800 s6387.711017 s140
Class B
302552.00144 s2552.00209 s113
402297.8339 s2297.83189 s202
Class C
1357,119.401800 s57,119.40313 s253
1436,329.901800 s36,329.90233 s191
2122,345.40720 s22,345.40240 s169
2339,030.301800 s39,180.24225 s190
3438,211.631800 s38,211.63220 s120
405876.00186 s5876.00142 s132
4123,764.381800 s23,871.00241 s256
4238,450.131800 s38,450.13233 s121
4431,453.001800 s31,453.00253 s173
4952,298.001800 s52,298.00260 s224
With: l = list length, Objective = Objective function value, Time = CPU time in seconds, Iterations = Number of iterations.

Share and Cite

MDPI and ACS Style

Goerler, A.; Lalla-Ruiz, E.; Voß, S. Late Acceptance Hill-Climbing Matheuristic for the General Lot Sizing and Scheduling Problem with Rich Constraints. Algorithms 2020, 13, 138. https://doi.org/10.3390/a13060138

AMA Style

Goerler A, Lalla-Ruiz E, Voß S. Late Acceptance Hill-Climbing Matheuristic for the General Lot Sizing and Scheduling Problem with Rich Constraints. Algorithms. 2020; 13(6):138. https://doi.org/10.3390/a13060138

Chicago/Turabian Style

Goerler, Andreas, Eduardo Lalla-Ruiz, and Stefan Voß. 2020. "Late Acceptance Hill-Climbing Matheuristic for the General Lot Sizing and Scheduling Problem with Rich Constraints" Algorithms 13, no. 6: 138. https://doi.org/10.3390/a13060138

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