Tabu Search Algorithm Based on Lower Bound and Exact Algorithm Solutions for Minimizing the Makespan in Non-Identical Parallel Machines Scheduling

Recently, several heuristics have been interested in scheduling problems, especially those that are difficult to solve via traditional methods, and these are called NP-hard problems. As a result, many methods have been proposed to solve the difficult scheduling problems; among those, effective methods are the tabu search algorithm (TS), which is characterized by its high ability to adapt to problems of the large size scale and ease of implementation and gives solution closest to the optimum, but even though those difficult problems are common inmany industries, there are only a few numbers of previous studies interested in the scheduling of jobs on unrelated parallel machines. In this paper, a developed TS algorithm based on lower bound (LB) and exact algorithm (EA) solutions is proposed with the objective of minimizing the total completion time (makespan) of jobs on nonidentical parallel machines. )e given solution via EA was suggested to enhance and assess the solution obtained from TS. Moreover, the LB algorithm was developed to evaluate the quality of the solution that is supposed to be obtained by the developed TS algorithm and, in addition, to reduce the period for searching for the optimal solution. Two numerical examples from previous studies from the literature have been solved using the developed TS algorithm. Findings show that the developed TS algorithm proved its superiority and speed in giving it the best solution compared to those solutions previously obtained from the literature.


Introduction
Scheduling plays an essential role in the management of production.
e scheduling dictates what will be done, where, and with what resources [1]. Production scheduling is an important decision-making process at the operational level and is a difficult problem depending on the number of calculations needed to get a schedule that will maximize the criterion chosen. Many scheduling issues exist in modern manufacturing environments. ere are many shops in the factory, depending on the machine configuration and workflow [2]. A flow shop is a shop in which machines are organized in series; jobs start processing on an initial machine, cross several intermediate machines, and end in a final machine. In a job shop, jobs can be done in any order on machines. In other words, no unique restriction of machine order is enforced.
Machine scheduling is one of the most widely researched fields in the research literature on operations, and it covers a wide range of issues [3]. e issue discussed in this paper is that independent jobs should be scheduled on nonidentical parallel machines to minimize the total completion time of the job "makespan." ere are n separate jobs, each with its own processing time and can be processed on any m parallel machine that is nonidentical. Each of these unrelated machines has a different speed as S i . Makespan (C max ) is the completion time for the last job leaving the system for scheduling issues. Typically, small C max means a high use. Reducing C max should also result in a higher performance level [4,5].
ere are m machines and n jobs which need to be handled in an organized way. Jobs may not need all m machines and may need to be visited by those machines more than once. Only one machine is able to perform a specific task. In reality, many copies of the same machine are always present (parallel machine).
ere are also several machines that can perform the work. Scheduling determines the number of jobs completed. e requisite inputs are a list of operations that must be performed, the time it takes for each operation, and a list of any prior restrictions that define the operations that must be followed by others. If jobs have no precedence constraints, it is named as an open shop. In a general job shop, there are two scheduling types: for the first one, for a single machine and n jobs, there are n! choices of possible schedules. For the second type, if there are m machines and n jobs, the number of possible schedules is (n!) m [2]. erefore, the scheduling problem is more difficult to be solved via dispatching rules (LPT, SPT, EDD, etc.), and these are called NP-hard problems [6,7]. With traditional optimization approaches, it is very difficult to achieve an optimum solution. Mathematical optimizations can provide an optimal solution for a reasonable size problem, but their implementation is limited in the case of a large-scale problem. Dispatch rules can be only adapted for small-scale problems, and there are no good results in different problems with a single dispatching rule [8]. Consequently, many previous studies' effort centered on heuristic methods to solve complex problems.
In this study, the tabu search (TS) algorithm has been developed to solve like these complex problems based on the exact (EA) and lower bound (LB) algorithms. e reason for presenting TS for minimizing the makespan in nonidentical parallel machines' scheduling in this paper is that the solutions of the proposed method depend on the value of the lower bound to stop, unlike the previous TS methods, in which the solution iterations are predetermined to stop, even if they do not find the optimum solution. Also, it is known that the exact algorithm (EA) cannot solve the large scheduling problems. Unlike the proposed approach, it can solve big scheduling problems quickly.

Literature Review
In this section, prior research studies related to the scheduling of nonidentical parallel machines and related observations are summarized. Fanjul-Peyro and Ruiz [9] proposed a set of simple iterated greedy local search-based metaheuristics for nonidentical parallel machines' scheduling with the objective to minimize the makespan, which produce solutions of very good quality in a very short amount of time. In the study of Vallada and Ruiz [10], a genetic algorithm (GA) was introduced to the nonrelated parallel scheduling machines with considered machine and job sequence setup times. e proposed GA includes a simple local search and a crossover operator enhanced with local search. e proposed method produced good results as a model for large-scale and small-scale experiments. Fanjul-Peyro and Ruiz [11] proposed mixed-integer programming mathematical formulations via two generalizations for scheduling the nonidentical parallel machines' problem for makespan minimization: the first is a condition in which not every parallel machine available should be used and only a subset of parallel machines should be used; the second is no responsibility to manage all jobs available. Comprehensive tests show that the two suggested algorithms boost the results substantially. Balin [12] proposed GA and fuzzy processing time simulation for scheduling a set of jobs on unrelated parallel machines. e results were compared with those obtained from when using the longest processing time (LPT) rule. e proposed approach showed good results and achieved them easily and multiple times in one sprint. Joo and Kim [13] proposed two metaheuristics; these are GA and a new evolutionary metaheuristic population-based algorithm called self-evolution to assess job allocation and scheduling of nonidentical parallel machines to reduce the makespan. e efficiency of the metaheuristic algorithms is evaluated by using randomly generated several examples to compare with optimal solutions.
Fleszar et al. [14] developed a variable neighborhood descent search algorithm hybridized with mathematical programming elements for minimizing the makespan for scheduling jobs on unrelated parallel machines. e study of Joo and Kim [15] proposed hybrid GA with dispatching rules for scheduling a set of jobs on nonidentical parallel machines with sequence-and machine-dependent setup times and machine-dependent processing times for minimizing the makespan. Geyik and Elibal [16] proposed a fuzzy linguistic approach for considering the learning effect for solving nonidentical parallel processor scheduling under uncertain processing times. Arroyo and Leung [17] developed a lower bound for the problem and proposed a mixed-integer programming model and several heuristics based on first-fit and best-fit earliest job-ready time rules to minimize the makespan in unrelated parallel batch-processing machines for scheduling nonidentical job sizes and unequal ready times. Tan et al. [18] proposed a hybrid GA and greedy strategy for green batch scheduling on unrelated parallel machines to minimize total electricity costs in production.
Liu et al. [19] developed a mixed-variable differentiate evolution (MVDE) as the scheduling algorithm for coordinated charging scheduling of electric vehicles. Zhou et al. [20] proposed a self-adaptive differential evolution algorithm for scheduling a single batch-processing machine with arbitrary job sizes and release times. e study goal is to assign jobs into batches without breaking the machine capacity constraint and then sort the batches to minimize the makespan. Zhao et al. [21] proposed a self-learning discrete Jaya algorithm for multiobjective energy-efficient distributed no-idle flow-shop scheduling problem in the heterogeneous factory system. Zhao et al. [22] proposed a twostage cooperative evolutionary algorithm with problemspecific knowledge for energy-efficient scheduling of the nowait flow-shop problem.
Many heuristics have been proposed such as branch and bound (B&B), simulated annealing (SA), genetic algorithm (GA), tabu search (TS), and neural network (NN). Among these different approaches to various scheduling problems, lately, there is an increasing interest in applying TS because of its high ability to give a solution that is very close to the optimal solution and its ease of implementation. Glover [23] implemented the TS algorithm, and since then, it has become very popular in solving the optimization issues. Many studies such as [24][25][26] have shown that the TS will yield higher timetables than others. TS approach uses the memory to store search-related information that helps avoid cycles (previous solutions that were visited could be reselected). Tabu list is the name of the memory used. e tabu list is updated for every TS iteration. Due to the limitations in the tabu list, the risk of rejecting solutions not yet produced may occur. Tabu solutions for a condition that is called aspiration criteria are then reviewed. If the tabu solution has a better objective value than the best objective value so far found, it is then acknowledged and excluded from the tabu list. is tabu solution will be removed from the tabu list [27]. TS algorithm has different elements that must be tuned before the search process is initiated. e primary solution, tabu list, neighboring structure, aspiration criteria, and stop criteria are the principal features of the TS. e initial TS solution was developed by using the LPT rule in which jobs in the nonincreasing order of processing time are sequenced. e two classic and useful operators for constructing promising neighborhood structures are parity interchange and reverse reintegration [28]. e pairwise interchange operator was implemented in the proposed TS algorithm for generating new candidate solutions. e importance of the metaheuristic parameters has an effect on its efficiency. In general, the main difficulties in TS include tabu list design, list management mechanism, and nonprohibited selection of the move [29]. is is not an easy job for certain optimization issues. In addition, TS may be very sensitive to certain parameters, such as tabu list size [27].

Problem Description
In this study, a number of n jobs on m nonidentical parallel machines are to be processed. Each machine (i) can process just one job (j) at a time. Each job should be handled continuously without any interruption. Put P (i, j) as the processing time of job j on machine i. e objective is to make the maximum makespan as minimized as possible.
In equation (3), the processing time j on different machines is expressed as follows: where S 1 is the speed of machine 1 and S 2 is the speed of machine 2. Equation (4) expresses on the makespan of the jobs: us, the objective function may be defined as follows:

The Proposed Methodology
e proposed methodology of this study consists of three phases. In the first phase, we proposed an exact algorithm to be used as a base of comparison to measure the effectiveness of the next two phases. en, the second phase established a lower bound that judges the optimality of the next heuristic algorithm. Also, it helps in identifying the stopping criteria of the search. Finally, tabu search algorithm is used to search for the best and optimal solution depending on the proposed lower bound.

Scheduling Using the Exact Algorithm (EA).
is section discusses the exact algorithm that is intended to calculate optimal total completion time as the following: (1) Decision variables: (2) Objective function: (3) Constraints: m i�1 x(i, j) � 1, ∀j ∈ 1, . . . , n, Mathematical Problems in Engineering e objective function shown in equation (7) is to minimize the maximum completion time for all the jobs. Constraint (8) calculates the completion time for each job. Constraint (9) guarantees that each job is assigned precisely to one machine. Constraint (10) is a binary decision variable.

Lower Bound (LB).
In this section, the lower bounds LB 1 and LB 2 that are used to evaluate the quality of the heuristic method that is used to find the optimal makespan are proposed. Set, for 1 ≤ j ≤ n, D j � min i � 1, . . . , m p ij , and LB 1 is defined as a lower bound for the problem, LB 1 � n j�1 D j /n, where D j is the smallest processing time of each job. It is worth noting that every machine is busy processing some jobs. Next, define ε(j) as an efficiency of the second smallest processing time of a job (j); therefore, ε(j) � second smallest processing time c of job j/smallest processing time of job j. en, the lower bound LB 2 is iteratively calculated in order to improve the lower bound LB 1 as described in Algorithm 1 [39]. e objective is to increase the overall processing time from the likely minimum value step by step. LB 3 is the new minimum total processing time of the jobs over the total machines, which is intuitively a lower bound. With this algorithm, the total processing time is increased each time; this increase is the minimum possible. While LB 2 ≤ LB 3 , the value of LB 2 will remain as a lower bound because it is less than the possible minimum makespan at that point of time. Only when LB 2 > LB 3 , the last LB 2 value will take as the lower bound.
Put LB 3 ← (smallest overall processing time of the jobs/total machines). LB 2 ← LB 3 While LB 2 ≤ LB 3 do Remove jobs that have the lowest ε(j) percentage with preemption from machines that have makespan greater than LB 2 to their second-fastest machines. LB 3 ← (new minimum overall processing time of the jobs/total machines).

Scheduling Using Tabu Search (TS).
is section discusses the TS algorithm that is intended to calculate optimal total completion time and shows how to select the parameter values for the TS algorithm.
Parameter tuning is an important problem in the design of metaheuristics. To this end, test runs for a wide range of parameter values for the TS algorithm have been performed, and the best configuration has been selected and described as follows: (1) Based on preliminary experiments, the number of candidates produced was 70 (2) ere were three elements of the tabu list size, and an update to the tabu list was performed using the firstin-first-out (FIFO) technique (3) e iterations have been designed to be 5000; the iterations stop if the tabu solutions equal with the lower bound (4) e criteria for ambition have been defined as described previously (if a step leads to a better solution than the best one ever) In general, the TS algorithm can be defined as described in Algorithm 2.
Firstly, the general structure of TS shows an initial solution of the problem using the LPTmethod and then creates a set of neighbor solutions; after that, the evaluation of the solutions is done using LB, and the best permissible solution is selected as described in Figure 1.

Results and Discussion
In this section, the scheduling problem of n jobs on m nonidentical machines is solved using EA and TS algorithms described above. As a numerical example in the study of Balin [5], nine jobs are scheduled on four nonidentical machines. e objective is to minimize makespan (C max ). Problem data are summarized in Table 1. Table 2 shows the scheduling of the nine jobs on the four nonidentical machines problem using GA proposed by Balin [5] and shows that the makespan obtained is 16 minutes. Gantt chart for scheduling every job on the machines is shown in Figure 2. Tables 3 and 4 show the same scheduling solution of the same problem proposed by Balin [5] and show the best makespan using EA and TS which is only 15.6 minutes.

Mathematical Problems in Engineering
To show the effect of every algorithm on the makespan, Figure 4 compares between the makespan solutions obtained from LPT and GA algorithms given by Balin [5] and the developed EA and TS algorithm solutions.
To enhance the effect of the developed algorithms on minimizing the makespan, another big example from the study of Lei and Liu [40] is studied. e example consists of thirty jobs which are scheduled in five nonidentical parallel machines as shown in Table 5. e developed algorithms have given the best makespan over the artificial bee colony (ABC) algorithm which was used by Lei and Liu [40].
Gantt charts for job scheduling the problem studied by Lei and Liu [40] using ABC and (EA or TS) are shown in Figures 5 and 6, respectively. It is observed that the makespan obtained using EA and TS is 209 minutes which is best than that obtained from ABC, which is 218 minutes.
To assess the quality of EA and TS algorithm solutions on minimizing the makespan, Figure 7 compares between the ABC algorithm solution proposed by Lei and Liu [40] and the developed algorithm solutions. It is observed that the solution obtained from the developed algorithms is better than that obtained from the ABC algorithm. Additionally, it always equals the lower bound. Based on the value of the lower bound, the TS method was devised. ere are no preset endpoints to the solution iterations, unlike the prior TS techniques. e EA is well known to be unable to address huge scheduling issues. In contrast to the proposed method, it can swiftly address large scheduling issues.

Conclusion
Many scheduling problems are NP-hard. Consequently, it is impossible to solve these problems efficiently via polynomial-time algorithms. Mathematical optimization techniques are suitable only for small-scale problems; therefore, they have limited applications in the case of a large-scale problem. us, the study efforts have focused on heuristic approaches. Among these approaches, TS outperforms others because of its high ability to give a solution that is very close to the optimum solution and its ease of implementation.
is paper proposed a developed TS algorithm for scheduling a set of jobs on nonidentical parallel machines with the intention of studying this algorithm's effect on minimizing the makespan. EA solution was proposed to enhance and evaluate the solution obtained from TS. Moreover, lower bound was developed to assess the quality of the proposed algorithm solution. e proposed algorithm solution is compared with the solutions obtained from other algorithms from the literature. Computational results showed that the solution obtained from the developed TS algorithm outperforms all the algorithms in the literature. e essential difference between TS and other heuristics is that TS is one of the most efficient heuristic techniques in the sense that it finds quality solutions in relatively short running time. Moreover, the developed TS algorithm always gives a solution that is equal or close to the lower bound.

j:
Index of a job n: Total number of jobs i: Index of a machine m: Total number of machines P(i, j): Processing time of job j on machine i C max : Total completion time (makespan).

Data Availability
e raw data are included within the manuscript in Tables 1  and 5, so researchers can verify the results of the manuscript, replicate the analysis, and conduct secondary analyses.

Conflicts of Interest
e authors declare that they have no conflicts of interest.