An Effective Optimization Approach to Minimize Waste in a Complex Industrial System

Industrial waste is a major environmental concern. This paper proposes an optimization approach to better manage the operations of a food production line, with the aim of minimizing material waste. The configuration considered is inspired by a real situation. It is a two-stage flow shop with dedicated machines at stage 1 and identical parallel machines at stage 2. A mathematical model is first proposed that considers the minimization of the number of idle times exceeding an acceptable threshold as an objective. A positive time lag for the product and machine setup is considered as a constraint. To solve large problem instances, a hybrid genetic algorithm (HGA) is proposed. In addition, we developed a two-phase procedure based on a decision tree to select the parameters of the HGA. The results show that we could achieve the minimization of material waste without altering too much, another industrial goal, which is the total production time.


I. INTRODUCTION
Many industries are facing two major environmental problems, such as energy consumption and material waste. One example of these industries is pasta production. In this context, energy consumption is mainly due to the drying cabins, while material waste is owed to long idle time of a production line, causing the perishability of pasta stuck in the machine. In this article we consider a shop configuration inspired from the pasta industry. In this context, traditional evaluation criteria such as completion time known as the makespan (Cmax) or maximum tardiness (Tmax), etc. do not reflect the only objectives of the industry. A major concern in this situation is how to minimize the waste of perishable material due to a long machine idle time (IT). In this context, if the IT is below the non-perishability time limit, then the material or pasta stack inside the machine could be recycled, otherwise the material is thrown away. This represents a considerable loss to the industry. In other words, the objective is to minimize the number of occurrences of idle times exceeding the ''non-perishability'' limit. To our knowledge, as we will explain later in the literature review, such objective was only The associate editor coordinating the review of this manuscript and approving it for publication was Shih-Wei Lin . considered by us in a previous article [1]. This was confirmed by a literature review by Hesran et al. [2]. Compared to the work in [1], the MIP (Mixed Integer Program) is modified to result in more acceptable results for the industry, and in addition a metaheuristic is proposed for large size problems.
The production process is a hybrid flow shop (HF) with two stages. Stage one (S1) represents the production phase and contains two unrelated parallel machines, also called dedicated machines. Stage two (S2) represents the drying phase and is made of several identical parallel machines. In fact, S2 contains ten drying cabins in our case. The problem can be defined as follows: a set J of n jobs should be processed on S1, then on S2, where J = j1, j2,. . . jn. This set is subdivided into two subsets or families, J1 and J2, where J = J1 U J2. Jobs from J1 should be processed on the first dedicated machine M1 at S1; they are no wait jobs. This means that they should be processed on S2 (the drying cabins) immediately when they finish processing on S1. Jobs from J2 should be processed on the second dedicated machine M2 at S1; they are authorized to wait for a maximum time limit before going through S2. This means that we are in a situation with a maximum time lag (lag+). In addition, jobs from either J1 or J2 were subdivided into groups when processed on S1. In fact, a machine setup is needed to VOLUME 10, 2022 This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/ perform a mold change if two successive jobs, processed on the same machine, are from different groups. Following the α|β|γ notation of Graham et al. [3], this problem can be noted as HF2(PD2,Pm)|ST g,sd ,lag+ i |Nbr_IT+, where ST g,sd designates the constraint sequence-dependent group setup, lag+ i designates the maximum machine time lag for j i , and Nbr_IT+ is a notation introduced by us to designate the number of IT grater than perishability time limit (θ). In the previous notation; proposed by Yang et al. [4], the dedicated machines appear in the α term as PD2, while the identical parallel machines at S2 are represented by Pm. This problem could also be noted HF2 (R2,Pm)|Mj,ST g,sd , lag+ i |Nbr_IT+; following Ribas et al. [5] notations. In this second notation, R in the α field represents unrelated parallel machines, and M j in the β field indicates machine eligibility for the job.
In several industrial cases, a drying cabin is considered a batch machine that can handle multiple tasks in one operation. This could not be applied to our problem, as jobs do not have the same drying characteristics. The main contribution of this paper, compared to our previous work, is an approach to consider an important objective for the industry, which is the minimization of material waste through the minimization of Nbr_IT+ while giving special attention to satisfactory Cmax values. In a previous conference paper study, we investigated the same configuration. In the first article [6], two MIPs were proposed and compared, as well as several LBs, to minimize the Cmax. A second paper [1] presented a MIP for waste minimization without considering acceptable solutions to the industry. In a third study, a genetic algorithm (GA) approach [7] was proposed to minimize Cmax. In the present work, a third MIP and GA are proposed. The objective was to minimize material waste while maintaining a threshold for Cmax. The remainder of this paper is organized as follows. Section 2 presents a literature review of a two-stage HF with dedicated machines. Section 3 explains the constraints and the objectives considered in this paper. In Section 4, MIP is explained. Section 5 describes the GAs. Computational analysis is presented in Section 6. We close with a conclusion and perspectives.

II. LITERATURE REVIEW
In the following, we first investigate the literature on scheduling with simultaneous constraints. Then, we examined works dealing with scheduling operations for waste reduction.

A. FLOW SHOP SCHEDULING WITH SIMULTANEOUS CONSTRAINTS
In 2009, both Ruiz et al. [8] and Goncharov et al. [9] published reviews on non-permutation flow shop problem (NPFSP), in which the authors concluded that there was little work considering two simultaneous constraints: nowait and no_idle_time (N_IT). To our knowledge, the N_IT and no-wait constraints were first studied as separate constraints by Adiri and Pohoryles [10] in a permutation flow shop (PFS) in order to minimize the makespan. Kalczynski and Kamburowski [11] studied the same constraints simultaneously. In addition, Baraz and Mosheiov [12] presented a hybrid greedy algorithm with an enhancement heuristic to solve a NPFS to minimize the Cmax. Shao et al. [13] proposed a hybrid mimetic algorithm to solve a NIPFSP. The authors worked on the Cmax criterion and compared their results with those of the existing algorithms. More recently, Wang et al. [14] considered the two-stage no-wait HF scheduling problem with the ST sd at S1. The authors proposed a LB based on the Hungarian method, three heuristics, a branch and bound (B&B) approach and a tabu search (TS) algorithm. Khare et Agrawal. [15] proposed a configuration with a no-wait hybrid flowshop and sequence-dependent setup times (SDSTs). They proposed a MIP for small-sized problems and a pairwise iterated greedy (PIG) algorithm to solve medium-and large-size problems. To conclude, the problem considered in this paper, and in two papers published by us ( [1], [6]), are the only works considering three constraints simultaneously, that is the no-wait, lag+, and (ST g,sd ). Compared to previous studies, this study is the first to consider a new objective, which is the minimization of waste due to the occurrence of an idle time exceeding a given threshold (Nbr_IT+), and at the same time, indirectly considering a threshold on a second objective, the Cmax. It is worth mentioning that the objectives and constraints considered by us are inspired by a real situation.

B. WASTE MINIMIZATION IN OPERATIONS SCHEDULING
According to Dewi et al. [16], waste is caused by operational activities. The author identified seven types of operational waste: overproduction, waiting, movement transportation, unnecessary processes, inventory, and defects. Le Hesran [2] presented a review of waste minimization in operations scheduling. The author classified 71 articles according to their environmental and economic objectives. The authors identified four domains in which waste management was important. These domains are the cutting stock problem with scheduling aspects, the integrated cutting stock problem, the batch and hoist scheduling problem, and shop floor scheduling. According to this review, waste is mainly due to setup, idle time, operations sequencing, surface treatment, due dates, and machine cleaning. The waste is mainly composed of wastewater and perishable materials, such as food and chemical products. The same author [17] presented a method for the identification and modeling of waste-conscious scheduling problems using flow control. In the study case of hubcap manufacturing, the economic and environmental impacts are quantified, and decision variables for problem solving are provided. Georgios et al. [18] considered yoghurt production, a representative food process, in a large-scale dairy facility in Greece. They used rescheduling to avoid demand disruptions, leading to product waste. Table 1

III. EXPLANATION OF THE CONSTRAINTS AND THE OBJECTIVE
Given that the multitude of concepts considered in this paper can lead to confusion, this paragraph explains the constraints and objectives. In the following, we start with the presentation of the positive time lag (lag+) and the no-wait constraints. Then, we considered the setup constraints ST g,sd . Finally, we exhibit the objective Nbr_IT+, that is, the minimization of the number of idle times exceeding a certain limit objective.

A. POSITIVE TIME LAG AND NO-WAIT CONSTRAINTS
A positive time lag (lag+), is an upper bound (UB) on the elapsed time between two successive operations of the same job on S1 and S2. Let C j1 be the completion time of j j on S1 and D j2 the starting time of the same job on S2. Then the time lag TL = D j2 -C j1 . The constraint states that TL ≤ lag+. The following graph illustrates a situation with acceptable and non-acceptable TLs when lag+ = 2.
The No-wait constraint occurs when lag+ = 0.

B. THE SETUP CONSTRAINT
For the problem under consideration, the setup constraint is considered when two successive jobs, on the same machine at S1, are from different groups. Thus, if it is possible to process all the jobs belonging to the same group successively, without altering another constraint, the total setup time will be minimized. Figure 2 illustrates this situation. Let J i and J j be two jobs processed on M1 of S1, and belong to the same group, and J k and J l be two jobs processed on the same machine but belong to another group. And let the setup time = 30 min.

C. THE Nbr_IT+ OBJECTIVE
Nbr_IT+ is the number of idle times that exceed a given threshold θ. The idle time (IT) is the elapsed time between the end and starting time of the processing of two successive jobs on the same machine at S1. Let J i and J i+1 be two successive jobs on a given machine in S1. The IT = C i1 -D i+1,1 . If IT > θ, then Nbr_IT+ is incremented by one. The following figure illustrates the situation where θ = 1.

IV. MATHEMATICAL FORMULATION
In a previous paper, Harbaoui et al. [6] proposed a MIP model for the problem under consideration to minimize the Cmax. This model (MIP 1) generated either optimal solutions or UBs for small-size problems (up to 20 jobs). This formulation was then extended to minimize Nbr_IT+ (MIP 2). As mentioned by Hesran et al. [2], this is the first time that such an objective is considered. In fact, for each idle time exceeding the perishability time limit θ, the material stuck in the machine cannot be recycled. This results in a correlation between Nbr_IT+ and the quantity of waste material. The notations used in both MIPs are as follows: M k : set of machines at stage k P ik : processing time of job i at stage k S ik : setup time for job i at stage k L i1 : time lag of job i at stage 1 B ij : a binary matrix indicating whether j i and j j are from the same group.
The decision variables common to either MIP 1 or MIP 2 are as follows: two constraints were added, compared to MIP 1. The first ensures that the IT could not be smaller than the time elapsed between the completion and the starting time of two consecutive jobs affected to the same machine. The second one counts Nbr_IT +. Additionally, the Cmax constraint was deleted.
In this model, the objective function minimizes the Nbr_IT+. Constraints (1) and (2) ensure that the fictitious jobs j 0 and j n+1 have either zero predecessor or zero successor. Constraint (3) ensures that each job has at most one predecessor and one successor on the machine to which it is assigned. Constraints (4) and 5) state that each job must be processed exactly once on one machine for each stage. Constraints (6) and (7) pre-assign fictitious jobs to all machines. Constraint (8) and (9) represent the pre-assignment of jobs on each machine in S1 and S2. Constraint (10) expresses disjunctive property. Constraints (11) and (12) are the technological constraints. Constraints (13) and (14) successively measure IT and the number of IT > θ. Finally, constraints (15) to (17) are the non-negativity and binary constraints. Finally, the Mixed Integer Program 3 (MIP3), proposed in this paper, is based on following principle: Given that MIP2 generated solutions, sometimes not acceptable for the Cmax criteria, another MIP (MIP3) is created by adding to MIP2 a constraint representing an upper limit on the value of the completion time. This upper limit is derived from MIP 1 and is expressed as follows: The UB does not concern the objective of the model but it concerns the Cmax.

V. PRESENTATION OF THE GENETIC ALGORITHMS
Metaheuristics have been proposed to solve optimization problems known as NP-hard. Their objective was to generate good solutions within an acceptable time. In the literature, several metaheuristics have been proposed to solve HF. In this work, we chose GAs, as they proved their effectiveness with several problems with a configuration close to the one considered in this study. Indeed, we found several authors affirming the efficiency of GAs in the resolution of HF with different constraints, such as Reeves [20], Ruiz and Maroto, [21], Kahraman et al. [22], Jolai et al. [23], Besbes et al. [24], Sioud et al. [ [25], [26]] and Wang and Liu [27]. This motivated us to choose the resolution approach.
GAs were first introduced by Holland and then further developed by Goldberg and Deb [28]. They were inspired by Darwin's theory of natural evolution. A GA belongs to the family of evolutionary algorithms that are based on a set of several solutions simultaneously called a population. It evolves a population of solutions gradually from one generation to the other through a process of operators, that are, selection, reproduction, crossover, and mutation, to create new populations with better individuals. This process is repeated through generations until a final population is obtained with individuals of better quality. In this population, the best individuals get as close as possible to the optimal solution. The procedures proposed in this work consider two objectives: the minimization of Cmax and minimization of Nbr_IT+ without explicitly treating the problem as a bi-objective. We propose two hybrid GAs, called GA-C-I and GA-I-C. Figure 4 illustrates the functioning of the two procedures.
The GA-C-I main objective is to minimize the Cmax and evaluate the corresponding Nbr_IT+. For this first GA, the population is first sorted according to the Cmax, and then according to Nbr_IT+. The GA-I-C main objective is to minimize Nbr_IT+ and evaluate the corresponding Cmax. For this second GA, the population is first sorted according to Nbr_IT+, followed by Cmax. Through GA-C-I, which is not the main objective of this work, we will get an idea on how far we are from a more prominent Cmax based solution.
In the next subsections, the solution encoding and the genetic operators are explained.

A. SOLUTION ENCODING
A solution or a chromosome of this GA is represented by a permutation of all jobs. The job that appears first in the sequence is affected first to its dedicated machine. In the second stage, to obtain a full schedule, the jobs are processed in a FIFO manner. It is worth mentioning that the FIFO provides the only feasible solution for the no-wait jobs and a feasible solution for lag+ jobs. Figure 5 illustrates the encoding for a ten jobs' problem.

B. GENERATING THE INITIAL POPULATION
The initial population is composed of 200 individuals divided into three sub-populations: • The second sub-population, whose size depends on the number of job groups, is generated by considering one setup per group of jobs. Thus, the setup time is minimized. This sub-population presents 10% of the initial population, that is, 20 individuals. The principle is to use different group sequences to generate job permutations (see Algorithm 1 [19]). Indeed, we will consecutively launch all the jobs of the same group affected to the same machine to minimize the setup time. The choice of this sub-population is motivated by observations of the structure of the optimal solutions generated by the MIPs.
• The last sub-population, which represents the rest of the individuals, is generated randomly. i.e. 174 individuals.

C. SELECTION, CROSSOVER, MUTATION OPERATOR
In this section, we start by presenting the GA operators, and then explain how we select the best combination of them. The aim of these operators is to create a new generation with globally better fitness's than the previous one.

• Selection
The selection operators appear in two steps of the GA. The first one is the selection of parents for cross-over and the second one is the selection of individuals that will survive for the next generation. In this study, we experiment with well-known genetic operators. The roulette wheel method and the random selection were tested to choose two parents from the current population for crossover. Then, elitism selection is applied to choose the best individuals among all individuals in order to create the new generation.
• Crossover The two parents crossed over to produce two infants. We tested two techniques: SJOX (similar job order  crossover) proposed by Ruiz and Maroto [21] and random maximal preservative crossover (RMPX) proposed by Sioud et al. [25].

• Mutation
The mutation brings diversification to the population, in order to efficiently explore the research space and avoid premature convergence. In our study, we tested two techniques frequently used in the literature: swap and insert (FIGURE. 6). Swap involves randomly choosing two jobs, j i and j j , and swapping them. The insert involves randomly choosing a job j i and a position p (different from that of j i ) and then reinserting j i in position p.
Several combinations of operators were tested, and the best one was chosen experimentally. The best combination is presented in Table 2: We developed a procedure based on two phases to choose the best combination of operators. Phase one is a decision tree approach, and phase two is based on an Excel pivot table.
--In phase one, the decision tree tool used in this research (SIPINA) [29], enables us to identify the operators that differentiate the most between the results. This problem turns out to be the crossover operator.  --In phase two, a cross analysis of the crossover operator with the other operators reveals the best combination of operators.
In fact, we chose two instances of each family of problems that we tested with all combinations of parameters. It should be noted that the assessment of each instance is based on the deviation of Cmax from the LB (RD). Given the randomness of GA, we do not necessarily obtain the same result by running the same instance multiple times, even if the same settings are maintained. On this basis, the objective is to determine the setting that is likely to produce the largest number of good solutions (top 10%) with relative deviations (RD) and not necessarily the best solution. The method used to calibrate the GA is based on three steps. The first step consists of grouping the RDs into classes, which allows the labeling of the results. The second step is to apply a classification algorithm to determine which operator affects the result the most. The third step is to use Excel's pivot table to determine the RDs' averages based on the crossing of different operators.
We illustrate in what follows the procedure and the results for the family of problems with 20 jobs.

1)
Step 1: Grouping of results (see Table 3) We started by ranking the solutions according to the average deviation (AD) from the best LB (i.e. RD). 2) Step 2: Operator that mostly affects the solutions (see Table 4) The second step is to apply a classification algorithm based on a decision tree to determine the operator that most affects the RDs. We used the SIPINA software, which enabled us to conclude that the crossover operator better differentiated between the results (see table below).
In this context, RMPX was superior to SJOX (low RD values). Figure 7 illustrates the results of the SIPINA application. The fact that the crossover operator, as an attribute, is at the first level of the tree means that it differentiates between RD values better than other operators (mutation, number of generations, size of the population).

3) Step 3: Cross-referencing of results
The third step is to determine the RD averages for the other operators. Tables 5 and 6 present the results according to the mutation operator and the number of generations. These results were generated using Excel's pivot-table tool. It appears that the combination of the RMPX crossover operator with the SWAP mutation operator and a population of size 200 produces smaller RDs compared to other combinations in the case of 20 job problems.
Even though the results are slightly better with 500 generations, it is necessary to notice that the running time is quite high. For this, we stopped at G200 and not at G500. On this basis, for the GA, we adopted the parameters shown in the following table.

D. FITNESS EVALUATION
We propose choosing the best individual by introducing a filter function. To do so, in the case of GA-I-C, for each individual, we first compute Nbr_IT+ on S1 and then calculate its Cmax. We used a solution ranking function with two filters in terms of switching from one generation to another. We first sort individuals according to Nbr_IT+; then, we sort; in ascending order of Cmax, the individuals with the same Nbr_IT+. In this way, the population is organized in layers, where each layer contains sorted solutions in ascending order of Nbr_IT+ and Cmax (see Figure 8). The fitness evaluation for GA-C-I follows the same logic by sorting individuals based on Cmax, followed by Nbr_IT+.
Even though the objective was to obtain solutions with zero Nbr_IT + and therefore No-waste, we accepted solutions that do not necessarily satisfy a null number of Nbr_IT +. To do so, we propose a filtering function that allows a gradual VOLUME 10, 2022     will be carried out until the stopping criterion is reached. The stopping criterion is the number of iterations without improvement. This was experimentally set to 10. For more details, see Harbaoui [19].

F. EVALUATION AND VALIDATION OF THE MIP AND GA
A tight lower bound (LB) for Cmax permits the evaluation of the quality of a solution. In a previous work, Harbaoui et al. [6] tested a different LB and proposed a tight LB that assumes the existence of a waiting constraint and the smallest processing time on S2 is added. The authors added the setup time of each group only once, as if jobs from the same group were processed successively. It is evident that for the objective minimizing of Nbr_IT +, the LB is zero.

VI. COMPUTATIONAL ANALYSIS
This section is dedicated to computational experiments. We start with a presentation of the instances, and then we discuss the results generated by the proposed GAs. The evaluation of the quality of the algorithm is based on a comparison of the results to the LB and to the MIP output.

A. DATA GENERATION AND SETTINGS
Because there is no benchmark available for this problem, we randomly generated 30 instances for each family of problems. These instances depend on the total number of jobs (n), the number of jobs dedicated to M1 of S1 (n1), the number of machines at S2 (n-n1), the way the processing times are generated, the way the ST g,sd and lag+ are generated.
Two families of instances were generated. The first one is inspired by a real situation, where jobs from J1 are no-wait and jobs from J2 have a lag+ constraint. The second family of instances was proposed for theoretical purposes of exploring different instances.
Parameters common to both families of instances:   The values obtained by n1 were obtained from Wang and Liu. ( [27], [30]) and Yang. [4]. For the other parameters, the datasets depend on the family instances, as presented below.
1) Family 1 data sets: The processing times at S1 and at S2 are generated as following: P i1 ∈ [50,150] and P i2 ∈ [180,780] 2) Family 2 data sets: The processing times at S1 and at S2 are generated as following: • ; These instances were randomly generated using a uniform distribution. The processing time intervals with respect to the ratio, |M 1|/|M 2| = 2/10.
In the following, the results generated by the MIP models are presented, followed by a description of the GA's results. Finally, the results were analyzed and compared.

B. RESULTS GENERATED BY THE MATHEMATICAL MODELS
In the following, we compare first the results generated by the three models. As mentioned above, model 1 (MIP1) is the Cmax minimization, model 2 (MIP2) is the Nbr_IT+ minimization, and model 3 (MIP3) is the Nbr_IT+ minimization with an additional constraint on Cmax.
For MIP1, we recorded for each instance the objective value Cmax and the corresponding Nbr_IT+. For MIP2 and MIP3, we recorded for each instance the objective values Nbr_IT+ and the corresponding Cmax. Table 8 presents the results for the first family of instances, which is inspired by a real situation. Column one represents the model, columns 2 to 4 represent the average (ARD), maximum, and minimum relative deviations. Columns 5 to 7 represent the number of instances with zero Nbr_IT+, with only one Nbr_IT+, and with two or more Nbr_IT+. It is worth mentioning that zero Nbr_IT+ represents the optimal solution for the minimization of Nbr_IT+.
The relative deviation RD is defined as follows: Sol i is the Cmax of the solution under consideration. Given that we generated 30 instances for each configuration, the   ARD was defined by the following formula: For the 10 job problems, both MIP2 and MIP3 generated permutations corresponding to the optimal solutions in terms of Nbr_IT+ for 59/60 instances. Furthermore, for MIP3, the generated permutations also corresponded to optimal Cmax solutions. This is expected, as the number of parallel machines is equal as the number of jobs.
For the 20 job problems, both MIP2 and MIP3 generate optimal solutions in terms of Nbr_IT+. The Cmax generated by MIP3 was better than that generated by MIP2 for all the instances.
Tables 9 to 11 present the results for family 2 of the instances, with its three classes. For these tables, column 2 represents the number of jobs affected to M1 in   S1. We observe that for all classes, in the case of the 10 job problems, both MIP2 and MIP3 generate optimal Nbr_IT+, with better Cmax values for MIP3. This is true for three classes of instances.
We recall that the initial objective of MIP3 is to produce optimal or near-optimal results for material waste, with acceptable Cmax values. For the 20 jobs' problems, MIP2 generates optimal Nbr_IT+ values most of the time, and MIP3 generates optimal solutions 2/3 of the time in the worst case (Table 12).
The results generated by MIP3 for the Nbr_IT+ objective are much better than those generated by MIP1 (Table 12), while the decrease in the value of Cmax is not that important, as summarized in Table 13.
It is clear that MIP3 generates much better results from an industrial perspective, mainly when production is for the stock. In this case, a small increase in the completion time is not that important. It is worth mentioning that the results presented above are based on single solutions generated by the solver. Because we know that a MIP could have more than one optimal solution, we need to keep in mind that there could exist other optimal solutions, with better values of Nbr_IT+, for MIP1, and solutions with better values of Cmax for MIP2. In the following we will show experimentally how the GA can overcome this situation.

C. RESULTS GENERATED BY THE GAs
Tables 14 to 17 compare the results generated by GA-C-I to those generated by GA-I-C. It should be noted that the stopping criterion is the number of generations without improvement, which is fixed to 10, in addition to the running time. The running time is fixed to 60 s for 10 and 20 jobs' problems, 120 s for 50 jobs' problems, and 180 s for 100 and 200 jobs' problems.
1) For family 1 of instances, up to 10 jobs' problems, Nbr_IT+ is relatively high for GA-C-I, while the completion times are slightly better than GA-I-C. For problems with 100 jobs' and 200 jobs', Nbr_IT+ is high for both GA-C-I and GA-I-C. It should be mentioned that, in the case of 200 jobs, the number of Nbr_IT+ that exceeds 2 occurs with 4/30 instances only. 2) For the second family of instances, the solutions generated by both GAs are the same for the 10 jobs' problems. In fact, an optimal solution is generated for all instances. This is true for three classes of instances. For the rest of the problems, the optimal solutions are generated by GA-I-C for the first objective (zero Nbr_IT+), for all instances. However, we observe a decrease in the quality of Cmax most of the time. GA-C-I generated slightly better makespans at the price of more Nbr_IT+ (more material waste).
The ARD is slightly different for the two algorithms when the number of jobs is less than 50. For the remaining problems, the GA-C-I generated somewhat better makespans.  For the instances from the class 2 problem, the observations are similar to those of class 1, except that for the 200 jobs' problems, the GA-I-C did not generate zero Nbr_IT+ for approximately one third of the instances. For some instances, this number exceeded two Nbr_IT+.
For class 3 instances, the decrease in the performance of GA-I-C is observable starting from the problems of 50 jobs. This decrease in performance becomes important as the size of the problem increases. For the 200 jobs' problems, with both GAs, there is more than one Nbr_IT+ most of the time; for GA-I-C, and more than two Nbr_IT+ all the time with GA-C-I. The ARD is nearly the same for the two algorithms when the number of jobs is less than 50 for the remaining problems. GA-C-I resulted in a slightly better Cmax. This will be explained in the last section.
It should be mentioned that, for 100 jobs' problems, only 3/30 instances have a Nbr_IT+ that exceeds 2, for 200 jobs' problems, only 6/30 instances have a Nbr_IT+ exceeding 2. For class 3 instances, the decrease in the performance of GA-I-C is observable starting from the 50 jobs' problems. This decrease in performance becomes important as the size of the problem increases. For the 200 jobs' problems, with both GAs, there are more than one Nbr_IT+ most of the time; for GA-I-C, and more than two Nbr_IT+ all the time with GA-C-I. The Cmax ARD is almost the same for the two algorithms when the number of jobs is less than 50 for the remaining problems. The GA-C-I resulted in a slightly better Cmax. This is explained in the last section.
In the following, we propose to compare and understand the performances of the different classes of problems in terms of Nbr_IT+, mainly for GA-I-C.
It appears from this table that the performance of the algorithm with Class1 instances is better, whether there is an equilibrium of charge, in terms of number of jobs, on S1  machines or not. This could be explained by the fact that for class 1, there were some overlaps between the intervals of processing times for both stages. This means that there is a chance to encounter more jobs that are processed on S2 directly after completing (or within the lag+) on S1. Thus, there is no need to delay the launch of subsequent jobs on S1. In fact, it is this delay that results on situations where IT ≥ θ.

D. EVALUATION OF MATERIAL WASTE
As mentioned above, material waste is caused by an idle time that exceeds the perishability limit. In fact, in one of the pasta  production lines, it is necessary to clean the machine and remove the material stuck in it if its idle time exceeds 30 mn. The amount of removed pasta or material was estimated to be 50 kg. This quantity cannot be recycled or used for production purposes. During the full production period, the total waste (TW) is estimated as follows: TW = 50 × Nbr_IT+ Table 19 presents the results presented in Table 14 in terms of the quantity of material waste.
We observe that with the GA-I-C algorithm, zero waste was realized for all instances (90 instances) corresponding to problems of small and medium size (10, 20, and 50 jobs). It is worth mentioning that a 50 jobs 'instance corresponds to one week of production. This objective was achieved while maintaining a satisfactory makespan. It should be noted that GA-C-I causes a quantity of waste between 75 kg and 168 kg for large instances (100 and 200 jobs). GA-I-C maintains the average amounts of waste low (less than 100 kg) compared to those obtained by GA-C-I (more than 300 kg). From an industrial point of view, the results found by GA-I-C seem more interesting than those found by GA-C-I because the wasted material is divided by three while maintaining a satisfactory production time.

VII. CONCLUSION
The configuration presented in this paper that distinguishes this work from other studies is the objective of minimizing waste resulting from the occurrences of machine idle times exceeding the perishability limit (Nbr_IT+) while simultaneously considering several temporal constraints. A MIP incorporating the new objective and two hybrid GAs was proposed. The MIP generated better results than the previous ones without a significant increase in Cmax. Within the proposed GAs, we incorporated many priority rules and an iterative local search, with a filtering function for both Nbr_IT+ and Cmax. The effectiveness of the proposed approach was validated through a numerical analysis. The results indicate that the hybrid GA generates either optimal or near-optimal solutions. The generated solutions satisfied the industrial expectations as material waste was very limited or null, with acceptable completion times. Future research may be conducted to consider industrial objectives, especially those related to the due date, such as total tardiness. Another future improvement direction may be the use of other resolution methods, such as tree-based heuristics or constraint satisfaction optimization.