Improved Jaya Algorithm for Flexible Job Shop Rescheduling Problem

Machine recovery is met from time to time in real-life production. Rescheduling is often a necessary procedure to cope with it. Its instability gauges the number of changes to the existing scheduling solutions. It is a key criterion to measure a rescheduling solution’s quality. This work aims at solving a flexible job shop problem with machine recovery, which arises from the scheduling and rescheduling of pump remanufacturing systems. In their scheduling phase, the objective is to minimize makespan. In their rescheduling phase, two objectives are to minimize both instability and makespan. By introducing two novel local search operators into the original Jaya algorithm, this work proposes an improved Jaya algorithm to solve it. It performs experiments on ten different-scale cases of real-life remanufacturing environment. The results show that the improved Jaya is effective and efficient for solving a flexible job shop scheduling and rescheduling problems. It can effectively balance instability and makespan in a rescheduling phase.

The associate editor coordinating the review of this manuscript and approving it for publication was Mengchu Zhou .
In [16], a hybrid GA is developed to solve FJSP with random breakdown for robust and stable objectives. In [17], a GA with special chromosome encoding to adapt the machine disruption is proposed. It is compared with a right-shift reschedule and a pre-scheduler to verify its competitiveness. For the same problem and constraint, a rescheduling process is performed in [18] by using route changing and right-shift strategies. It handles right-shift scheduling, route changes and idle time insertion. In [19], game theory is employed to solve FJSP with machine breakdown of its objectives to maximize robustness and stability. The objectives are seen as two sides of the game and ideal Nash Equilibrium (NE) and near NE solution strategies are developed to achieve the optimal solution. Based on this idea, one NE searching algorithm is proposed and benchmarks with machine breakdown are tested to verify the performance. Ahmadi et al. [5] employ non-dominated ranking genetic algorithm and non-dominated sorting genetic algorithm II to solve FJSP with machine breakdown with the objectives to optimize makespan and stability.
In [45], the authors propose a novel machine grouporiented match-up rescheduling approach for dynamic semiconductor manufacturing systems where unexpected events, such as machine breakdown and due date changes could occur. In [42], considering disruptive changes, such as the arrival of new jobs or machine breakdowns, a rescheduling architecture which bases on a predictive-reactive strategy is designed and implemented. Different strategies, e.g., possible machine break down scheduling by using predictive strategy [20], time-varying scheduling with machine failure rate by using stochastic strategy [21], and machine preventive scheduling for maintenance activities [22] are proposed to deal with dynamic FJSP. They focus on machine failure while machine recovery is rarely considered. When a schedule is executed in a shop, a recovered machine can be selected for the operations that have not been started.
It has been proved that FJSP is an NP-hard problem [23], [24] and recent years have witnessed a new trend, i.e., using and improving meta-heuristics to solve FJSP. Particle swarm optimization [25], genetic algorithm [26], harmony search algorithm [27], artificial bee colony algorithm [28], memetic algorithm [29] and Jaya [13], [30] are among these algorithms. Jaya represents a simple and novel one, which is first developed in [32]. In comparison with existing algorithms, we only need to consider the number of iterations and population size in Jaya and there is not any other parameter. Thus, Jaya is more simple and easier. It has been successfully applied to solving many real-life problems since 2016 [32]- [36].
FJSP exists in many practical engineering fields and it is a topic with significance for theatrical research and value for engineering practices. In this paper, FJSP from pump remanufacturing with machine recovery is studied. In remanufacturing environment, rescheduling is necessary after machine recovery to reduce makespan. Instability is a key metric to measure rescheduling solutions' quality [8], [12]. To solve the concerned problem, Jaya is improved by using our proposed local search strategies. Ten pump remanufacturing cases are scheduled and rescheduled with machine recovery effectively and efficiently.
The rest of the paper is organized as follows. The mathematical model of a flexible job shop scheduling and rescheduling problem with machine recovery is described in the next Section. Then, the improved Jaya (iJaya) algorithm is developed and described in Section III. Section IV shows the comparisons and analysis of experimental results. Finally, the conclusions and some future research directions are given in Section V.

A. THE MODEL OF FJSP
In the FJSP, a job consists of several operations. One out of multiple candidate machines is selected for one operation.
And each operation can be processed on just one machine each time. The following assumptions and notations are used to formulate FJSP.
Decision variables 5. c i,h indicates the O i,h 's completion time, and the makespan (the completion time of the last job) is one objective to be optimized in this study, where c i is the completion time of job J i .

B. RESCHEDULING AND INSTABILITY FOR MACHINE RECOVERY
Machine recovery exists in a pump remanufacturing environment [37]. For a shop floor that is executing a schedule, when a recovered machine is added in a candidate machine set at time t, the makespan could be reduced by rescheduling the not-yet started operations. The start time of one job in a rescheduling phase is t or the completion time of the operation being currently processed. The available time of one machine in rescheduling stage is t or the completion time of the on-going operation on this machine. The scheduling problem in rescheduling stage becomes an FJSP with different job start time (S J ) and machine available time (S M ). In a rescheduling phase, the start time of machine M k and job J i are denoted as follows: In the above formulas, t is the time a recovered machine becoming available. We show an example in Fig. 1 to explain the problem more clearly. Fig. 1(a) shows one schedule which is being implemented. Makespan is 14. At time 3, one recovered machine M 4 is added to the candidate machine set. Fig. 1(b) presents a rescheduling solution after moving some operations to M 4 . As a result, makespan is reduced to 12 even if the processing time of operations O 2,2 and O 1,3 Instability describes the percentage of changed operations of the existing jobs on their respective processing machines during rescheduling. In practical production, low instability can reduce rescheduling cost, e.g., materials moving and machine setting. Low instability can guarantee seamless connection between current scheduling solution to rescheduling solution. The work [13] defines instability as the percentage of changed operations, which are moved to different machines in rescheduling. In this study, it is revised into: where M k and M k are operation O i,h s processing machines in the executing schedule and rescheduling solution.
The maximum distance from M k to other machines is d k,max , including the recovered one. q i denotes the number of J i 's operations in a rescheduling phase. The goal is to optimize rescheduling solutions' instability. It is clear that fewer operation exchanging and operations moving to a closer machine mean a higher stability or lower instability of a solution in rescheduling. For example, in Fig. 1(b), the result of makespan is 12, and it is less than 14, which is the makespan result in Fig. 1(a). Operations O 2,2 and O 1,3 from M 3 and M 2 are moved to M 4 . In Fig. 1(b), the rescheduling solution's instability relates to the physical distances from M 4 to M 3 and M 2 , respectively.

C. BI-OBJECTIVE FUNCTION
An optimization problem with multiple objectives can be defined as follows: where function F : → ∧ includes multiple objectives and a decision vector x = (x 1 , x 1 , · · · , x n ) belongs to a decision space . In this study, f 1 = Cmax is the makespan presented in Part A of Section II while f 2 = F is the instability of a rescheduling solution.
A bi-objective function is: Pareto domination is a widely used strategy that compares and ranks all the solutions for optimization problems with two objectives. For example, there are two solutions x = (x 1 , x 1 , · · · ,x n ) and x =(x 1 , x 2 , · · · ,x n ). x ≺x (x dominates x ) if and only if ∀p ∈ {1, 2} ,f p (x) ≤f p (x ) and ∃ q ∈ {1, 2} ,f q (x) <f q (x ). In the Pareto set, solution x is an optimal one if no other solution x dominates x. The collection of all Pareto optimal solutions is a Pareto optimal set and the Pareto front is the corresponding image in the objective space. There is an archive set (AS) employed for storing non-dominated solutions. In the optimizing process, the dominated solutions are replaced by the new one in AS.

III. IMPROVED JAYA ALGORITHM A. JAYA
In Sanskrit, the meaning of word ''Jaya'' is victory. By reaching the best solution, the applied strategy in Jaya always tries to become victorious [32]. Its first step is to initialize a population with its size being N P . Then, the solutions with the worst and the best results are selected to update the population in the following generation. The worst solution and the best one are updated in every generation. The updating method for new generated solutions is defined in the following formula, for i ∈ {1, 2, . . . , N P }: where X i (t) is the current position and X i (t + 1) is the updated position. X B (t) and X W (t) are the best and worst solutions, respectively. t is an iteration index and r 1 and r 2 are uniformly distributed random numbers in range [0, 1]. During its updating, if the objective function value of X i (t) is worse than that of X i (t + 1), then X i (t + 1) is accepted and replaces X i (t). At the end of each generation, all the remained solutions and updated solutions are treated as the initial solutions in the following iteration. The procedures of Jaya are shown as follows: Jaya algorithm S1. Initialization S2. Extract the best and worst solutions S3. Modify solutions by using the best and worst ones S4. If the new solution is better than the original one, accept it and replace the original one; else, keep the later. S5. If the stop criterion is satisfied, output the optimal solution and objective function values; else, go to S3.

B. IMPROVEMENT STRATEGIES
In the initialization phase, the encoding and decoding strategies in [13] are employed to represent the solution. In a VOLUME 8, 2020 solution, one element includes three values, the number of job, the number of operation and the number of the machine processing this operation. This encoding strategy makes it easy to change processing machine in designing local search algorithm. The best solution obtained in a scheduling phase is employed as an initial solution. For this initial solution, makespan and instability in a rescheduling phase are the best result of the scheduling phase and zero, respectively. The non-dominated solutions in rescheduling should have smaller makepsan values but larger instability values. Otherwise, the solutions are dominated by the above initial solution.
Since a flexible job shop scheduling and rescheduling problem is NP-hard, we propose two local search operators to improve the exploitation performance of Jaya, resulting an improved Jaya (iJaya). One is for makespan while another for instability. In a rescheduling phase, they are integrated as an ensemble to improve the convergence speed of Jaya. Two operators are presented as follows.

and O ) Endif
This heuristic starts from the last competed operation and is executed just on the operations in a critical path. The computation time for local search is very short and this operator is stopped once the objective value becomes better. Based on the procedures of the local search for Makespan, the complexity is O (Log2 (c)), where c is the count of operations on Machine M . The next one for instability focuses on the operations having more than one candidate machines. It moves the operations to machines with smaller physical distance to reduce instability. Since all operations on Machine M k are executed the local search for instability, the complexity is O(c), where c is the count of operations on M k .

C. FRAMEWOR OF iJaya
The framework of iJaya is shown in Fig. 2. Two local search operators are employed to improve the exploitation performance in iJaya. In a scheduling phase, iJaya obtains the best solutions for makespan. When a machine is recovered, the rescheduling phase is activated. The best solution in a scheduling phase is used to calculate the start time of jobs and available times of machines for rescheduling. Then, iJaya optimizes the bi-objective function in (9). Finally, iJaya outputs solutions which are not dominated by others in AS for instability and makespan.

IV. EXPERIMENTS AND DISCUSSIONS A. EXPERIMENTAL SETUP
To solve a flexible job shop scheduling and rescheduling problem by iJaya, we run computer experiments, analyze and discuss the results. Ten different-scale cases coming from real orders of a pump remanufacturing company are solved. Ten cases' scales are from 5 jobs, 23 operations and 4 machines to 20 jobs, 400 operations and 20 machines. For one instance, there is only one recovered machine. The desensitization data of the 10 cases are shown in the Supplemental File for readers. The recovery time of the first two cases is 10, and that of the third and fourth cases is 15. For other cases, the recovery time is 30. iJaya is coded in C++ and run on an Intel 3.20 GHz desktop computer with 8 GB memory. First, it is compared to some existing algorithms for five benchmark cases of FJSP. Then, it is employed for solving 10 remanufacturing  cases. Finally, iJaya is employed for rescheduling for machine recovery. For the benchmark FJSP cases, the population size is set to 50 while the maximum generation count is set to 1000. For flexible job shop rescheduling, the size of population and the maximum generation number are 50 and 10000, respectively. All experiments are executed 30 runs.

B. COMAPARING EXISTING ALGORITHMS
To test the performance of iJaya, five benchmark cases for FJSP are solved. iJaya is compared to five competitive metaheuristics, including a simple and effective evolutionary algorithm (SEA), Tabu search with neighborhood local search (TSPCB), two-stage artificial bee colony algorithm (TABC), and knowledge-based ant colony optimization (KBACO) [38]. Table 1 shows the results of makespan of all algorithms. All algorithms can find the best results for five Kacem instances. The second last column of Table 1 shows the standard deviation (SD) of makespan results over 30 repeats of each case by iJaya. Since these cases are FJSP benchmarks, we just show the results of the compared algorithms. For iJaya, both average makespan and running time (Agv_t) over 30 runs are recorded. Based on the comparison results with the existing algorithms, iJaya is an effective and efficient algorithm for scheduling flexible job shop problems. Hence, iJaya is employed for solving scheduling and re-scheduling flexible job shop problems with machine recovery in the next experiments.

C. iJaya FOR SCHEDULING AND RESCHEDULING
To solve 10 cases from remanufacturing, Table 2 shows the makespan results by iJaya. For each case, the maximum results (Max), the average results (Ave), and the minimum results (Min) in 30 runs are recorded. In this study, as the ratio of the SD over the average value, the coefficient of variation (CV) is employed to replace of the SD measurement. The aim is to show the robustness and stability of iJaya for scheduling and rescheduling flexible job shop problems. From Table 2, the CV values of makespan are less than 7%. It means that iJaya has high robustness and stability for 10 remanufacturing cases. For each case, the solution with the minimum makespan value is selected to execute on a shop floor.
When a recovery machine is added to the candidate machine set, the rescheduling phase is activated, to optimize the biobjective function based on the presently executed schedules.
In a rescheduling phase, iJaya is compared with two multi-objective optimization algorithms, i.e., a classical multi-objective algorithm, NSGAII [39], and a new published algorithm, improved shuffled frog leaping algorithm (ISFLA) [40]. For the real-life FJRP cases, nobody knows the actual Pareto front (PF) since the high complexity. In our work, its approximation is received by comparing non-dominated solutions obtained by three algorithms. The inverted generational distance (IGD) [12], [41] is a widely used performance indicator, which is employed to verify the competitiveness of non-dominated solutions gotten by three compared algorithms. The lower IGD values mean closer distances to the PF. In PF, the solutions' proportion metric [12], [41] obtained by all algorithms is calculated. The larger proportion means better performance. The aim is to obtain highly competitive non-dominated solutions.
For instability and makespan objectives, the Pareto results gotten by three compared algorithms are counted. The IGD and proportion values of results are recored in TABLEs 3 and 4. According to TABLE 3, the IGD results by three algorithms for first two small-scale cases are zero. It means that three algorithms can find the same non-dominated solutions, which are included in PF. For cases from 3 to 10, the IGD values via iJaya are smallest (0.00), which are included in PF. The results via NSGAII, and ISFLA are non-zero. Hence, iJaya has the best competitiveness among three algorithms for IGD and has best performance for rescheduling the FJSP with instability and makespan objectives.
In TABLE 4, θ is the number of non-dominated solutions in PF or obtained by all compared algorithms. It is obvious that the proportion values of NSGAII are non-zero (100, 100, and 20) for the three two cases and zero for cases 4 to 10. NSGAII can only find Pareto optimal solutions for the first two cases and just partial Pareto optimal solutions for the third case. ISFLA can also find Pareto optimal solutions for the first two cases. ISFLA obtains a part of Pareto optimal solutions for the third and fourth cases and the proportion values of these two cases are 50% and 25%. For all cases, the proportion values of iJaya are 100%. It means that iJaya obtains all Pareto solutions. To show the difference of three algorithms more clearly, the Pareto non-dominated solutions by all compared algorithms for all cases are shown in Fig. 3. It can be seen from Fig.3 that the non-dominated results by iJaya are better than those by NSGAII and ISFLA, especially for the instability objective.

V. CONCLUSION AND FUTURE WORKS
This work studies on scheduling and rescheduling flexible job shop problems with machine recovery. An improved Jaya algorithm is developed. The ensemble of two local search operators can improve the convergence speed of iJaya. One bi-objective function with instability and makespan is minimized. The superior performance of the proposed iJaya is verified through comparing with two existing algorithms.
In the future, we plan to 1. Improve Jaya's performance and develop more swarm and evolutionary algorithms for scheduling and rescheduling flexible job shop problems; 2. Consider more scheduling and rescheduling problems with constraints, e.g., environments with disruptions [42], Multiresource Constraints [43]. 3. Research on more scheduling and rescheduling problems in some special fields, e.g., semiconductor manufacturing [44], [45] and steel production [46] 4. Develop new local search heuristics based on problem features and ensembles of different local searchers to improve the performance of algorithms. 5. Extend Jaya algorithm to more scheduling and optimization problems, e.g., task scheduling in data center [47].