EFFICIENT ALGORITHMS TO MINIMIZE MAKESPAN OF THE UNRELATED PARALLEL BATCH-PROCESSING MACHINES SCHEDULING PROBLEM WITH UNEQUAL JOB READY TIMES

This paper considers the minimization of makespan in the unrelated parallel batch processing machines scheduling problem with considering non-identical job size and dynamic job ready time. The considered unrelated machines have different capacity and different processing speed. Each machine processes a number of the jobs as a batch at the same time so that the machine’s capacity is not exceeded. The batch processing time and the batch ready time are equal to the largest processing time and the largest ready time of jobs in the same batch, respectively. In this paper, a Mixed Integer Linear Programming (MILP) model, two categories of the heuristic procedures (six heuristics) and a meta-heuristic algorithm are proposed to solve the problem. A lower bound is also presented by relaxing of the original problem to evaluate the quality of the proposed algorithms. The computational experiments show the performance of the proposed algorithms under the considered measures. Mathematics Subject Classification. 90B35, 90C11, 68W25. Received April 16, 2020. Accepted April 17, 2021.

By studying in the literature of batch processing, the various machine's environments are observable such as; Dauzère-Pérès and Mönch [7] studied a single batch processing machine with incompatible job families to minimize the weighted number of tardy jobs objective, they proposed two different mixed integer linear programming formulations and a random key genetic algorithm. Koh et al. [13] studied a single batch processing machine with arbitrary job sizes and incompatible job families, they obtained optimal solution for the small size problem by integer programming model and efficient solution for the large size problem in the reasonable computational time by heuristic algorithms. Zarook et al. [28] suggested a new mathematical model to minimize makespan on the single batch-processing machine scheduling problem with considering machine's aging effect and maintenance activities, they proposed two meta-heuristic algorithms (GA & ICA) to solve the real size problem. Zhou et al. [30] presented a multi-objective model for a single batch processing machine scheduling problem with dynamic job arrival times, due to computational complexity, they proposed a hybrid multiobjective meta-heuristic algorithm to find the Pareto front. Another machine environment in the BP is identical batch processing in the parallel machines that machines have similarity characters. Chang et al. [3] proposed a simulated annealing algorithm to minimize makespan in identical parallel batch-processing machines setting with arbitrary job size. Damodaran and Chang [4] presented the heuristic algorithms to minimize Makespan on the identical parallel batch processing machines; they compared the performance of the proposed heuristics with a simulated annealing approach. Kashan et al. [11] and Damodaran et al. [6] proposed the heuristics and metaheuristic algorithms to minimize makespan in the identical parallel batch processing machines with arbitrary job sizes. Shengchao et al. [23] proposed distance matrix based heuristics to minimize makespan in the identical parallel-batch processing machines with arbitrary job sizes and dynamic job release times. Muter [20] proposed the exact algorithms to minimize Makespan on the single and identical-parallel batch processing machines. In the real production systems, new machinery and old ones are often used together; newer machines usually have the larger capacities and the shorter processing times rather than the older ones; this machinery environment is called the unrelated parallel machines. José Elias et al. [9] studied the minimization of makespan in the unrelated parallel batch processing machines with non-identical job sizes and unequal job ready times where the machines have same capacity; they proposed several efficient heuristics and also a lower bound to evaluate the quality of the proposed heuristics. Zhao-Hong et al. [29] studied the effective heuristics for minimizing makespan in the parallel batch machines with the different machine's capacity and the dynamic job release times while the speed of the machines was considered identical. José Elias et al. [10] considered the unrelated parallel batch processing machine scheduling problem with different speed and capacity of the machines and unequal job ready time. They proposed an Iterated Greedy algorithm to minimize total flow time as the objective function. Table 1 shows a brief description of the previous studies: According to Table 1, this study considers the unrelated parallel batch-processing machines with different speed and capacity. Each job has arbitrary size and dynamic ready time. The proposed problem minimizes the makespan, or, the completion time of the last batch therefore leads to the upper throughput level in the bottleneck station and the upper productivity, finally. The motivation of this paper is stem from elimination of the bottleneck in the production lines such as the cutting stations in the metal industries; where there are the several cutting machines with different speed and capacity (unrelated P-batching). The cutting machines have the capability of cutting the batches of the sheets metal with different thicknesses (job size) at the same time, that leads to eliminate production bottlenecks and higher productivity. This problem is shown as R m |p-batch, p jk , s j , r j , B k |C max in the classical symbolic of the scheduling literature, where first section of the symbolization shows machinery environment (R m indicates m machines in the unrelated parallel environment). The second section of the symbolization explains conditions and constraints of the proposed scheduling problem (p jk denotes the processing time of job j on the machine k, s j and r j denote size and ready time of job j, respectively, B k denotes the capacity of machine k, p-batch shows parallel batch processing machines). In the third section of symbolization objective function of scheduling problem is shown (C max or makespan: the completion time of the last batch).
Uzsoy [25] showed that minimization of the Makespan on a single BPM with non-identical job sizes and identical release times to be NP-hard, therefore our problem is also NP-hard. On the other hand, Pinedo [21]  Lower bound: is a type of heuristic approach that is adapted to the relaxation problem. shows the relaxation of the proposed problem (R m | |C max ) is strongly NP-hard, therefore, considered problem is also NP-hard in strong sense. For this reason, an MILP model is only used to solve small size of the problem exactly in this paper, since that to exactly solve real size of the NP-hard problem in the reasonable time is impossible, so in the most of literature studies, researchers have used of the approximate methods to find a better solution in a reasonable amount of time [5,10,16,18,22,27]. The proposed scheduling problem can be partitioned in two sub-problems; i.e., grouping the jobs in the batches and scheduling of the batches on the machines, based on this strategic, this paper considers two categories of the heuristics algorithms; in first category, batching of the jobs is done by a Modified Full Batch Largest Process Time (FBLPT) role and then the allocation of the batches on the machines takes place with considering various the machine's scenarios; Earliest Idle time (EI), Shortest Completion time (SC) and Shortest Processing time (SP). In second category, the allocation of the jobs on the machines takes place with considering various machine's scenarios: Earliest Idle time (EI), Shortest Completion time (SC) and Shortest Processing time (SP) and then batching of the jobs on each machine is done by Full Batch Largest Process Time-Shortest Release Time (FBLPT-SRT) role. Therefore, in this paper, six efficient heuristics and an effective meta-heuristic algorithm are proposed to solve of the real size problems with the little computational effort, which is valuable in some of the practical applications. A lower bound is provided to evaluate the performance of the proposed algorithms. Figure 1 shows scheme of the proposed problem as graphically.
The rest of the paper is organized as follows: Section 2 includes a problem definition and mathematical modeling. The proposed heuristics and RKGA meta-heuristic are presented in Section 3. Design of experiments, parameters setting and a lower bound are presented to evaluate the quality of the proposed algorithms as computational experiments in Section 4. Finally, Section 5 presents the conclusion and the suggestions for the future researches.

Problem description
This paper considers the unrelated parallel batch processing machines scheduling problem with the following assumptions: -There are N jobs with arbitrary job size, dynamic job arrival, and different processing time on the machines. -There are M unrelated parallel machines that have different speed and capacity.
-Total job sizes within each batch should not be exceeded than allocated machine's capacity.
-No job is allowed to split on the different batches.
-Each batch must be processed without interruption (Once a batch is being processed, the batch-processing machine cannot be interrupted; no jobs can be removed from the machine until the processing of the batch is completed). -The machine is assumed to be available continuously and breakdown is not allowed.
-The machines cannot be idle when be existed at least one non-completed batch.
-The size of the jobs does not exceed of the largest machine capacity -All of the parameters are non-negative integer number.

Parameters (non-negative integer number)
s j Size of job j. r j Release date of job j. p jk Processing time of job j on machine k. B k Capacity of machine k.

Independent decision variables (binary)
X jik = 1, if job j is assigned to batch i on machine k; 0, otherwise.

Dependent decision variables (non-negative integer number)
P ik = processing time of batch i on machine k. ST ik = start time of batch i on machine k. C ik = completion time of batch i on machine k.

The mathematical modeling
In this subsection, the objective function and the constraints are formulated as follows: In the proposed mathematical model, objective function (2.1) is minimization of Makespan. Constraint set (2.2) ensures that each job should be assigned to the one batch and be just processed on the one machine. Constraint set (2.3) guaranties the sequence of the batches on each machine, it means that batch i + 1 on machine k can be processed when batch i has been processed on machine k. Constraint set (2.4) ensures that the total size of the jobs in batch i that is assigned to machine k does not exceed of the capacity of machine k. Constraint sets (2.5) and (2.6) indicate relationship of the start time of batch i on the machine k with the largest release time of the jobs in same batch and completion time of previous batch i − 1 on the machine k, respectively. These constraints guarantee that each batch can be processed when it is ready and the previous one on the machine has been processed. Constraint sets (2.7) and (2.8) calculate the processing time and the completion time of batch i on the machine k, respectively. In the other word, process time of each batch is equal to largest job processing time in same batch and completion time each batch is equal to the start time of the batch in addition to the processing time of same batch. Constraint set (2.9) defines objective function of the model (Makespan; which is equal to the largest batch completion time among all the batches). Constraint sets (2.10) and (2.11) represent non-negative and binary decision variables.
The proposed mathematical model coded in commercial solver (Lingo 11), on an hp 4520 s laptop with 4 GB of RAM and a 3 GHz processor running in windows 7. Since that the proposed problem is Np-Hard, the proposed model can be solved small size instances optimality and it expends an exponential CPU time with ascending problem size and unable to achievement optimal solution for large problem instances in the reasonable time. Therefore, the proposed heuristics and meta-heuristic algorithm are described to approximately solve large-sized problem instances in reasonable time as the following.

Heuristics
The proposed scheduling problem can be partitioned in two sub-problems; i.e., grouping the jobs in the batches and scheduling the batches on the machines Based on this strategic this paper proposes two categories of heuristic algorithms as following:  Table 3. Structure of proposed heuristics. Second category considers two stages as follows: Stage 1: allocating of the jobs to the machines. Stage 2: batching of the jobs on each batch processing machine.
A numerical example is provided to better understanding of the proposed heuristics, consider 3 machines with capacity; B 1 = 6, B 2 = 4 and B 3 = 5 and 10 jobs with the parameters of Table 2. Table 3 shows the structure of proposed heuristics which are described in more.

First category heuristics
Procedures of this category are described by provided numerical example as following: Stage 1. Batching the jobs; since that each job has m processing times on the machines and also each machine has different capacity, Full Batch Largest Processing Time (FBLPT) role cannot be used directly [29]. Thus, we Modified FBLPT role as follows: Step 1. Arrange the jobs in the decreasing order of k∈M P jk / |M |. In the proposed numerical example job order be: Step 2. Select the job at head of the above list and place it in a feasible batch with the smallest residual capacity. If the job fits in no existing batches, place the job in a new batch. Repeat step 2 until all of the jobs have been assigned to the batches. Note that the capacity of batches is equal to the smallest machine's capacity. In the proposed numerical example the created batches be:  Stage 2. Allocate batches to machines.

Second category heuristics
Procedures of this category are described by provided numerical example as following: Stage 1. Allocating of the jobs to the machines as following: Step 1. Arrange the jobs in Shortest Ready Times role and named JSRT list. In the proposed numerical example JSRT list is equal to: J 3 , J 1 , J 8 , J 10 , J 2 , J 4 , J 6 , J 5 , J 9 , J 7 .
Step 2. Three methods are presented to assign to JSRT list to the machines as follows: (

RKGA meta-heuristic
Genetic Algorithm (GA) has been presented by Holland [8] at the first time which has been used to solve combinational optimization problems. RKGA is a special type of GA which is introduced by Bean [2] for the first time and it has been used in the literature [12,14,26]. This paper proposes RKGA to solve of the R m |p-batch, p jk , s j , r j , B k |C max problem in the real size instance. The proposed RKGA is described in more detail as following.

Encoding & Decoding
In this subsection, random key representation scheme proposed by Bean [2] is developed to generate initial population as much as the population size. The main advantage of the considered representation is covering of the entire solution space, i.e., there is a unique string associated with the every feasible solution for the problem. The proposed chromosome included a matrix m × n where all of the elements are 0 or 1, so that in each column, number 1 is only repeated at the once, after allocation of the jobs on the machines, a FBLPT-SRT role is used for batching of the jobs and scheduling of the batches on the machines. Figure 4 shows an encoding and decoding chromosome on the provided numerical example.
In Figure 4, random key chromosome allocates the jobs to the machines as:

Evaluation & selection strategies
The fitness evaluation function assigns a value to each member of the population which is reflecting their relative superiority. In the proposed algorithm, the evaluation of the solutions is based on objective function value (Makespan), in the other word; a solution with the lower Makespan is preferable, therefore, 1 / C max (the inversed Makespan) is as the proposed fitness function. The proposed selection strategy is based on the roulette wheel proposed by Holland [8].

Proposed operators for reproduction
Since of the proposed RKGA is a population-based approach, at first a random population is generated much as population size. Afterward, to reproduction from one generation to the next one is done with an elitist strategy, the mutation and the crossover operators which the mechanisms of the operators are shown in Figures 5  and 6.

Termination criterion
A population based algorithm repeats iterations until to reach a termination condition such as max-time, max-generations, and/or the generations without improvement. In this paper, RKGA is stopped, if the maximum number of generations (max gen) and/or the pre-determined iteration without improvement in the best solution (max no improve) to be happened. Figure 7 shows structure of the proposed RKGA. The more details of the proposed RKGA are provided by a Pseudo-code in the appendix section.

Data generation & parameters setting
Random test problem instances with number of the jobs equal to N = 10, 20, 50, 100, and 200 and the number of the machines equal to, M = 2, 3, 4, and 5 are considered to evaluate the efficiency of the proposed algorithms. The parameters of machine's capacity, job processing, job ready time, and job size are generated with discrete uniform distributions in intervals [4,10], [1,50], [0, 50], and [1, max k {B k }], respectively. The parameters of the considered problem instances and their levels are shown in Table 4 which 20 test problem instances are extracted from it. The problem instances are symbolized as N j M k for example, N 1 M 2 i.e., the problem instance with    There are several effective factors on the performance of the proposed RKGA such as: Max generation, Max no improvement, Population size, Crossover rate, and Mutate rate. In this study, Taguchi experimental design is applied to analyze affect of the parameters of RKGA [24], the appropriate orthogonal array will be L 17 4 4 , 5 1 for the considered factor's levels of Table 5 which the readers can be refer to Zarook et al. [28] in more details of parameters setting. All of the possible combinations of the factors were executed on the random test problems for the run five times. Finally, the results of parameters setting are tuned in the last column of Table 5.

Lower bound
In this subsection, a Lower Bound (LB) is presented for the problem so that the comparison of between the proposed algorithms can be possible. Since of the proposed problem is strongly NP-hard, it is computationally infeasible to obtain optimal solutions for large-scale instances, this is another reason why a lower bound is needed. The proposed algorithms are compared with the MILP model in the small size instances and with the proposed lower bound in the large size instances, respectively. The proposed LB is achieved by relaxing of R m |batch, p jk , s j , r j , B k |C max (original problem) to P m |batch, prmp, r j , s j , p j , B |C max problem, it means that the unrelated parallel machine is relaxed to the identical parallel machine with p j = min k∈M {p jk } and machine's capacity equal to B = max k∈M {B k } which the proposed LB is provided on the relaxed problem as following: (1) Let J be the set of all jobs and J 1 be the subset of J so that satisfies equation (4.1). Let each job from J 1 is assigned to a separate batch. Arrange B in descending order of their processing times such as P 1 ≥ P 2 ≥ . . . ≥ P |B| . Therefore, a lower bound on the relaxation problem is calculated as equation (4.2).

Comparison of the proposed algorithms
In this section, all of the extracted problem instances of Table 4, are solved by the proposed approaches (mathematical model, LB, heuristics and RKGA meta-heuristic). The proposed mathematical model is programmed in Lingo11 (commercial solver) and the proposed heuristics, the proposed lower bound, and RKGA meta-heuristic have been coded with C++ language (in Matlab7 software) on an HP 4520 s laptop with 4 GB of RAM and a 3 GHz processor running on Windows 7. The results of the solutions (Makespan) are reported at Table 6. The results of Table 6 show MILP model solves problem instances 1-6 as optimality and MILP is unable to solve problem instances 7 until 14 as optimality, therefore, the best of obtained solution in 1800 s is considered as local optimal solution. Also MILP obtains any solution for large instance 15 until 20 in 1800 s whereas the proposed heuristics, LB and meta-heuristic reach to the solution in reasonable computational time for these problem instances, approximately.
One of the measures to evaluate of the proposed algorithms is Relative Percentage Deviation (RPD) measure which is calculated according to the equation (4.3).
In this equation, RPD A i is RPD measure of algorithm A on the problem instance i and C A maxi , C LB maxi are equal to C max of algorithm A and the proposed LB on the problem instance i, respectively. In the other word, RPD A i value shows Gap between algorithm A and LB which the smaller value of RPD A i shows a better algorithm A. Table 7 reports RPD measure of the proposed algorithms on the all of the problem instances.
In equation (4.4), X RPD A is the mean and S RPD A is the standard deviation of the RPD of the proposed algorithm A which are calculated on the RPD values of the Table 7, t is the t-distribution in the uncertainty level (α) is equal to 5% and n = 20 is degrees of freedom (t 0.025,19 = 1.48). Table 8 is calculation report of Minitab software according to equation (4.4) and Figure 8 shows interval plot of RPD measure according to Table 8 and also the GAP between of the proposed algorithms is observable in this figure. Notes. * Optimal (exact) solution in 1800 . (a) Local optimum solution (best solution in 1800 ). − Commercial solver unable to achieve any solution in time 1800 (s).

Conclusions and future research
In this paper, the minimization of Makespan in the unrelated parallel batch processing machine environment studied with considering non-identical job sizes and dynamic job ready times which the unrelated parallel batchprocessing machines have different capacity and speed. At first, a MILP model is presented for this problem. Since of the problem is NP-hard, 6 heuristics and a meta-heuristic algorithm are proposed to solve the problem in the real size instances. Heuristics classified in two categories; category1 allocate the jobs into the batches and then the batches are scheduled on the machines. On the contrary, category2 allocate the jobs on the machines and then each machine is considered as a single batch processing machine scheduling problem. Finally, a lower bound is proposed to evaluate the quality of the proposed algorithms.
The computational results showed the priority of the proposed algorithms in aspect of minimum objective value (or mean RPD) and maximum stability (or minimum deviation RPD) as follows: JSRT-SC|FBLPT-SRT FBLPT-SRT|SC FBLPT-SRT|EI JSRT-EI|FBLPT-SRT RKGA JSRT-SP|FBLPT-SRT FBLPT-SRT|SP and the priority of the proposed algorithms in terms of minimum CPU time on the large size    Table 8. LSD implementation for RPD measure.