Island-based Cuckoo Search with Elite Opposition- based Learning and Multiple Mutation Methods for Solving Discrete and Continuous Optimization Problems

The Island Cuckoo Search (iCSPM) algorithm is a new variation of Cuckoo Search (CS) that uses the island model and the Highly Disruptive Polynomial (HDP) mutation for solving a broad range of optimization problems. This article introduces an improved iCSPM algorithm called iCSPM with elite opposition-based learning and multiple mutation methods (iCSPM2). iCSPM2 has three main characteristics. Firstly, it separates candidate solutions into a number of islands (sub-populations) and then divides the islands equally among four improved versions of CS: CS via Lévy flights (CS1) [1], CS with HDPM mutation (CS10) [2], CS with Jaya mutation (CSJ) and CS with pitch adjustment mutation (CS11) [2]. Secondly, it uses Elite Opposition-based Learning (EOBL) to improve its convergence rate and exploration ability. Finally, it uses the Smallest Position Value (SPV) with scheduling problems to convert continuous candidate solutions into discrete ones. A set of 15 popular benchmark functions was used to compare the performance of iCSPM2 to the performance of the original iCSPM algorithm based on different experimental scenarios. Results indicate that iCSPM2 exhibits improved performance over iCSPM. However, the sensitivity analysis of iCSPM and iCSPM2 to their parameters indicates that their convergence behavior is sensitive to the island model parameters. Further, the single-objective IEEE CEC 2014 functions were used to evaluate and compare the performance of iCSPM2 to four well-known swarm optimization algorithms: DGWO [3], L-SHADE [4], MHDA [5] and FWA-DM [6]. The overall experimental and statistical results suggest that iCSPM2 has better performance than the four well-known swarm optimization algorithms. iCSPM2’s performance was also compared to two powerful discrete optimization algorithms (GAIbH [7] and MASC [8]) using a set of Taillard’s benchmark instances for the permutation flow shop scheduling problem. The results indicate that iCSPM2 performs better than GAIbH and MASC. The source code of iCSPM2 is publicly available at https://github.com/bilalh2021/iCSPM2


Introduction
Exact algorithms are usually used to find optimal solutions for simple optimization problems such as the feature selection problem [9,10]. However, NP-hard optimization problems, such as the Traveling Salesman Problem and Shortest Path Problem [11,12], typically cannot be solved with exact algorithms and require heuristic or optimization algorithms to solve them. This is because the search area of of an NP-hard optimization problem is either extremely large or infinite. An optimization algorithm can be applied iteratively to compare different candidate solutions for an optimisation problem until finding a satisfactory or optimal solution. In the optimization field, the term single-solution optimisation describes an optimization algorithm that iteratively optimizes a single candidate solution, while the term population-based optimization is used to describe an optimization algorithm that iteratively optimizes multiple candidate solutions at the same time. A general problem with optimization algorithms is that they may converge to unaccepted solutions (premature convergence) during an early stage of their optimization process. Besides, the performance and speed of optimization algorithms degrade with the increase of the dimensionality (i.e., number of decision variables) of optimization problems [3,13,14].
One frequently used option of population-based optimisation algorithms is the island-based approach, which is based on the principle of divide and conquer. In island-based optimization algorithms, an island model divides the overall candidate solution population into smaller, equalsized independent sub-populations (islands) to ensure diversity of candidate solutions through a structured, distributed approach. An optimisation algorithm is then independently applied to each island, though the process of migration is modelled by the islands regularly communicating with each other [13,[15][16][17].
Island-based optimization algorithms (e.g. Island Artificial Bee Colony [18], Island Flower Pollination algorithm [16], Island Bat algorithm [17], Island-based Harmony search [19], Islandbased Genetic algorithm [20] and Island-based Cuckoo Search with Highly Disruptive Polynomial Mutation (i CSPM) [13]) have been used with a high degree of success in both continuous and discrete problems. According to [13,21], i CSPM exhibits a superior performance compared to other island-based optimization algorithms. This is possibly because of three reasons. Firstly the i CSPM model, especially in conjunction with its abandon method, helps increase diversity in each island. Secondly, low-fitness solutions are given the opportunity to evolve to improved solutions. Thirdly, the included Highly Disruptive Polynomial Mutation (HDP) method allows the exploration of the entire search space regardless of the decision variable's current value.
In this research study, we introduce an improved i CSPM algorithm, i CSPM2, which incorporates three modifications into i CSPM. Firstly, it partitions its n candidate solutions between s independent islands and then equally divides them among four Cuckoo Search (CS) algorithms: CS via Lévy flights (CS1) [1], CS with HDP mutation (CS10) [2], CS with Jaya Mutation (CSJ), and CS with pitch adjustment mutation (CS11) [2]. Secondly, it uses Elite Opposition-based Learning (EOBL) [22] to explore solutions around the current elite solutions (best solutions) in each island's population. Finally, it employs the Smallest Position Value (SPV) [23] with scheduling problems to convert the continuous values of any decision variables to discrete ones in a candidate solution.
We are encouraged to use several variations of CS in i CSPM2 because of the unique advantages that each CS variation has to offer. CS1 uses the Lévy flight mutation, which has a better exploration capability than the random mutation method [1]. CS10 uses the HDP mutation method that can sample the entire search space between the lower and upper bounds of a decision variable regardless of its value [2,13,21]. CSJ uses the Jaya mutation method that mutates the candidate solutions using stochastic moves based on the best and worst candidate solutions [24]. CS11 uses the pitch adjustment mutation, which is known for its quick convergence [2,19] .   1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63  64  65   Title Suppressed Due to Excessive Length   3 Besides, we are particularly interested to use EOBL in i CSPM2 because it is capable of speeding up the convergence speed of optimization algorithms by exploring the opposite solutions of the best-known candidate solutions [25,26].
We conducted three sets of experiments to test and evaluate the efficiency of i CSPM2 compared to popular optimization algorithms using popular benchmark suites for continuous and discrete problems. Firstly, we used 15 popular benchmark functions to compare i CSPM2 to i CSPM. The experimental results indicate that i CSPM2 exhibits better performance than i CSPM. Secondly, we used 30 IEEE CEC 2014 functions to compare the performance of i CSPM2 against the performance of four state-of-the-art swarm optimization algorithms: Distributed Grey Wolf Optimizer (DGWO) [3], Distributed adaptive differential evolution with linear population size reduction evolution (L-SHADE) [4], Memory-based Hybrid Dragonfly Algorithm (MHDA) [5] and Fireworks Algorithm with Differential Mutation (FWA-DM) [6]. The overall simulation and statistical results clearly indicate that i CSPM2 outperforms the other tested swarm optimization algorithms. Finally, we evaluated and compared i CSPM2 to two powerful discrete evolutionary algorithms (Generalized Accelerations for Insertion-based Heuristics (GAIbH) [7] and Memetic algorithm with novel semi-constructive crossover and mutation operators (MASC) [8]) using a set of Taillard's benchmark instances for the Permutation Flow Shop Scheduling Problem (PFSSP) [27]. The simulation results indicate that i CSPM2 produces better schedules than GAIbH and MASC.
The remainder of the paper is organized as follows. We first review the preliminaries in Section 2. In Section 3, we provide a critical review of recently proposed island-based algorithms. Section 4 then presents our proposed variation of i CSPM. In Section 5, we demonstrate the performance of i CSPM2 compared to the other island-based algorithms, and discuss these results in Section 6. Finally, Section 7 concludes the paper and presents future work.

Cuckoo Search Algorithm
The Cuckoo Search (CS) algorithm [1] is a nature-inspired, evolutionary algorithm. It aims to optimize a population of candidate solutions for a given optimization problem using two simulation models related to the behaviors of birds in nature. The first model simulates the parasitic procreation habit of cuckoos, while the second model simulates the random actions of flying and landing of birds using Lévy flights [1,28].
In CS, an egg (current candidate solution) can be mutated into a cuckoo's egg. CS generates, at each iteration, a mutated solution using a function that comprises the Lévy-flight operator. It then attempts to swap the new solution with a lower quality solution in the population. Two parameters control the optimization process of CS: the population size (number of eggs) n, and the fraction of the worst candidate solutions that get replaced with randomly generated solutions (p a 2 [0, 1]). The simulation models of CS are based on the following notations and assumptions: j is a random value generated using a uniform-random, generation function where U (0, 1) represents a uniform random number in the interval (0, 1), LB i j is the lower bound and UB i j is the upper bound of the search range of x i j .
is the objective or fitness value of the candidate solution~ ! X i . 4 Bilal H. Abed-alguni * ,D a v i dP a u l -~ ! X i (i =1, 2,...,n) is a population of n candidate solutions. -At the last step of each iteration, the CS algorithm replaces a fraction p a 2 [0, 1] of the lowest fitted solutions with new randomly generated solutions. -The new modified population is then moved to the next iteration of CS.
The CS algorithm initially produces a population of n candidate solutions~ ! X i (i =1, 2,...,n) from the range of possible solutions of the fitness function f (~ ! X i ). The maximum number of iterations (MaxItr) of the improvement loop of CS is specified according to of complexity of CS attempts, at each iteration, to enhance a randomly-selected, candidate solution (~ ! X i (t)) using a Lévy-flight mutation function and produces a new solution (~ ! X i (t + 1)) as follows: where >0 controls the distance of mutation and represents entry-wise multiplication. The Lévy flight is conventionally defined as a special random walk with a dynamic step length. The step length is generated from an infinite, heavy-tailed, Lévy distribution that follows the power law: where ↵ 2 (1, 3] is the parameter of fractal dimension and L is the step size. This distribution produces a small percentage of random solutions around the local optimal solutions, while producing the majority of random solutions away from the local optimums. Therefore, the Lévy flight-mutation method has a better exploration capability than a standard random walk, since the distance value increases gradually during the simulation.

Cuckoo Search with Pitch Adjustment
Cuckoo Search with Pitch Adjustment (CS11) is an algorithm that uses the Pitch Adjustment (PA) method in place of Lévy flight. PA is a probabilistic method [29] that mutates~ ! X j (t)b y mutating each one of its decision variables with probability PAR2 (0, 1): where r is a random number in [0, 1], BW (bandwidth) determines the mutation distance and U( 1, 1) is a random number in ( 1, 1).

Cuckoo Search with Jaya Mutation
The Jaya algorithm [24] is an evolutionary algorithm that was designed according to the concept of victory. In the improvement loop of Jaya, the candidate solutions are randomly moved between the best and worst candidate solutions. This behavior aims to explore the search area between the worst and best candidate solutions. Cuckoo Search with Jaya mutation (CSJ) is a CS variation that employs the Jaya mutation instead of Lévy flight. In CSJ, the decision variables of~ ! X j (t) are updated one by one using the corresponding decision variables of the best candidate solution~ ! X B (t) and worst candidate solution~ ! X W (t) at iteration t as follows: , respectively at iteration t. r 1 and r 2 are random parameters in [0,1]. After mutating all decision variables of~ ! X j (t), if the fitness value of~ ! X j (t + 1) is an improvement over the fitness of~ ! X j (t), the solution~ ! X j (t) is replaced by~ ! X j (t + 1).

Island-based Cuckoo Search with Highly Disruptive Polynomial Mutation
The island Cuckoo Search (i CSPM) is a parallel variation that integrates two modifications to CS. Firstly, it uses a structured population model called the island model [30] to organize candidate solutions in CS to smaller manageable sub-populations (islands). This model increases the probability that unfit candidate solutions are improved into better solutions, and improves the diversity of the candidate solutions [16,17]. Secondly, it uses CS with with HDP mutation (CS10) [2] to optimize the candidate solutions on each island. This is because, according to several experimental studies [31][32][33], CS10 is a better exploratory algorithm than the CS algorithm. Besides, the HDP mutation used in CS10 can sample the entire search space between the lower and upper bounds of a decision variable regardless of its value [21,13,2].
CS10 uses the HDP method to alter the values of the decision variables of~ ! X j (t) by mutating each of its decision variables with probability P m 2 [0, 1] as follows [34]: The definitions of the parameters in the above equations are as follows: the ith decision variable of the jth candidate solution~ ! X j (t) at iteration t r: a uniform random number in [0, 1] -P m : the probability of mutation -LB i : the lower boundary of x j i (t) -UB i : the upper boundary of x j i (t) -1 : the distance between x j i (t) and LB i over the closed interval [UB i , LB i ] -2 : the distance between UB i and x j i (t) over the closed interval [UB i , LB i ] -⌘ m : the distribution index, which is a non-negative number 6 Bilal H. Abed-alguni * ,D a v i dP a u l A vital part of the island model is the migration procedure that periodically allows the islands to exchange candidates solutions. It enables i CSPM to select and transfer a subset of candidate solutions among the different islands, depending on two factors. Firstly, the number of generations that should evolve in each island before the triggering the migration procedure (the migration frequency, M f ). Secondly, the fraction of the of candidate solutions on each island that can be moved between neighboring islands (the migration rate, M r ). After each M f iterations of i CSPM, the islands are organized in a random ring shape, with each island establishing one connection in from a neighboring island, and one connection out to its other neighbor. The i CSPM algorithm uses a "best-worst migration policy", which determines the best candidate solutions on one island to be swapped with the worst candidate solutions on a neighboring island. The algorithmic details and the source code of i CSPM are available in [33].

Elite Opposition-based Learning
Zhou et al., [35] proposed a special type of opposition-based learning by the name EOBL (short for Elite Opposition-based Learning). EOBL was inspired from the intuition that opposite solutions of elite (best) solutions are more likely to be close to the global optima than any other solutions. EOBL was used with optimization methods such as the Bat algorithm [25] and Harris Hawks Optimization algorithm [26] to improve their efficiency.
We can apply EOBL to decision variables of candidate solutions. Let~ ! X = hx 1 ,x 2 ..., x m i be an elite candidate solution with m decision variables. The elite opposite-based solution~ ! X o can be calculated using Equation 9: In the above equation, 2 (0, 1) is a parameter used to control the opposition magnitude, and da i and db i are the dynamic boundaries which are calculated as follows: The value of an opposite decision variable x o i may be outside [LB i , UB i ]. This can be solved using the following equation: where rand(LB i ,UB i ) is a random number between LB i and UB i .

Permutation Flow Shop Scheduling Problem
The Permutation Flow Shop Scheduling Problem (PFSSP) is a popular NP-hard combinatorial optimization problem. Several heuristic-and optimization-based scheduling algorithms have been evaluated using the PFSSP [21,12,36,37]. The mathematical model of the PFSSP is built around two lists. Firstly, a list of n jobs (j 1 ,j 2 ,...,j n ), where each job comprises m sequential operations where each machine can execute only the corresponding operation in a job. In PFSSP, t i,j denotes the processing time required for machine j to complete job i and O i,j is the processing operation of job i on machine j. There is a strict order of jobs that have to be processed by each machine, and each machine can only process one job at a time. A candidate schedule is a permutation of jobs ⇡ = {⇡ 1 ,⇡ 2 ,...,⇡ n }   1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63  64  65 for which completion times of all operations can be calculated. The completion time C j of job j is defined to be the completion of job j's last operation O j,m (C j = C j,m ). The optimal solution in PFSSP is the candidate schedule that has the lowest total completion time of all jobs. The equations of the PFSSP are as follows [37,38]: We used the above equations in Section 5.6 to test the performance of i CSPM2 using 12 instances of Taillard's benchmark for the PFSSP [27].

Literature Review
The island model is a structured-population strategy that has been incorporated into many evolutionary algorithms to improve their population diversity and convergence speed [3, 15-19, 21, 12, 36, 39-42]. This section provides a critical review of recently proposed island-based optimization algorithms.
The Island-based Differential Evolution algorithm (Island-based DE) is a variation of Differential Evolution (DE) that is based on the multi-size island model [43]. This model can be applied to the population of candidate solutions using two different approaches. In the first approach, the population of candidate solutions can be divided to islands with different sizes. In the second approach, the algorithm starts its optimization process with one population and then changes its size over the course of optimization process. In both approaches, a copy of DE is applied to each island, where communication between islands, or migration of candidate solutions, is not permitted. Island-based DE was compared in [43] to DE and IBDEAmd (Island-Based DE Algorithm with Islands of Equal sizes) using complex scheduling problems. The results showed that Island-based DE is the best performing algorithm. However, Island-based DE requires more computational resources than the other algorithms in the beginning of its optimization process. In addition, if it is executed sequentially, it may require longer running time than the other algorithms.
The parallel multi-population Chaotic Bat Algorithm (CBAS) [44] is an island-based algorithm that incorporates four modifications into the Bat Algorithm (BA): the island model [16], chaotic maps [45], Lévy flight search [46] and contraction factor. The island model is used to divide the population of CBAS into islands. The chaotic maps are evolution functions with chaotic behaviors usually used to generate random numbers in BA. The contraction factor is a parameter that controls the direction of optimization in BA. The Lévy flight search is based on the Lévy flight operator, which is a special random walk with a dynamic step length. The experimental results in [44], using a few general benchmark functions, suggest that CBAS outperforms   1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63  64 8 Bilal H. Abed-alguni * ,D a v i dP a u l some variations of BA (suggested also by the same authors) such as Shrink-factor BA, Chaotic BA and Lévy-flight BA. However, the performance of CBAS should be compared to the performance of state-of-the-art swarm optimization algorithms such as DGWO and L-SHADE using strong benchmark suite such as the CEC 2015 test suite. This will allow us to fairly evaluate the performance of CBSA.
The HS algorithm is a widely used optimization algorithm inspired by the improvisation of music players [29]. The island-based HS (i HS) [19] is a variation of HS that integrates the concepts of island model into with HS. The optimization loop of HS is applied to each island independently. The quality of each island's solutions is periodically improved by exchanging candidate solutions among island through a migration process. The experimental study in [19] suggests that i HS provides more accurate fitness values than the original HS algorithm for a large number of continuous numerical problems. The i HS was utilized in [47] to solve the economic load dispatch problem (i.e., the scheduling for an electrical generation system to provide the load demand in addition to the transmission loss with the objective of minimizing generation fuel cost). According to the experimental results in [47], i HS outperformed the original HS algorithm and other algorithms (e.g., island Bat Algorithm [17]) by providing the best results for three out of five real-world economic load dispatch test cases.
Chen et al., proposed the Chaotic Multi-population hybrid DE and Harris Hawks Optimization (CMDHHO) algorithm for solving the single-objective optimisation problems [48]. CMD-HHO integrates the chaos maps, island model and optimization operators of DE into the Harris Hawks Optimisation (HHO) algorithm. The experimental and statistical results in [48] using CEC 2011 and CEC 2107 suggest that CDHHO is faster and provides better performance than HHO and DE. However, CMDHHO requires more computational resources than DE and HHO in the beginning of its optimization process. Besides, the chaotic maps in CMDHHO are more suitable to continuous optimization problems than discrete problems.
Lardeux and Goëffon [39] proposed a dynamic island model for the Genetic algorithm (GA). This model uses complete graph modeling that allows the implementation of any type of migration topologies from edgeless graphs to popular island topologies such as uni-directional or bi-directional, rings and lattices. This model is called dynamic because the topology in it continues to evolve during the search process following the rewards and penalties received during previous migration waves. The experimental results in [39] using 0/1 Knapsack and MAX-SAT problems suggest that the dynamic island model helps GA to achieve good results. However, a problem with this model is that it uses a GA that is sensitive to its internal parameters and methods such as the rate of mutation, rate of crossover, population size and selection method.
Kurdi [36] suggested the Island Model Genetic Algorithm (IMGA) for solving the PFSSP. In IMGA, islands use different variations of the GA algorithm (GA with insertion operator, GA with swap operator, GA with inversion operator). Results in [36] suggest that IMGA offers improved performance than the variations of GA that depend on a single evolutionary method.
Alawad and Abed-alguni [21] proposed Discrete i CSPM with opposition-based learning strategy (Di CSPM), a discrete variation of i CSPM. This algorithm provides efficient schedules for workflow applications in distributed environments. It uses random generation and oppositionbased learning approachs to generate diverse initial population candidate solutions. It also optimizes decision variable values in candidate solutions using the SPV method. The simulation results in [21] using WorkflowSim [49] suggest that Di CSPM provides efficient schedules in cloud computing environments.
The island Bat Algorithm (i BA) [17] incorporates the island model into BA. Similar to i HS, the population in i BA is divided into smaller sub-populations, where the improvement loop of BA is applied independently to each sub-population. A migration process and the ring topology are used in i BA to improve the diversity of the candidate solutions in each sub-population and improve the convergence speed. i BA was evaluated in [17] using 25 IEEE-CEC2005 benchmark functions. Results indicate that i BA improves the performance of BA.
The ant colony algorithm has also been modified to an island model in the Ant Colony Optimization with lookahead (ACO) algorithm [42]. It was proposed to help solve the problem of finding the shortest supersequence str of two sequences str1 and str2 such that both sequences are part of str. AOC incorporates the same principles of the island model as i HS and i BA, but it additionally uses a lookahead function to mutate the candidate solutions taking into account the influence of the current mutation on the mutation in the next iteration.
The Distributed Grey Wolf Optimizer (DGWO) algorithm [3] is a distributed variation of the Grey Wolf Optimizer (GWO) algorithm [51]. DGWO attempts to increase the convergence speed of GWO by improving diversity through the incorporation of the principles of the island model into GWO. DGWO was compared to four optimization algorithms (GWO, Distributed adaptive differential evolution with linear population size reduction evolution (L-SHADE) [4], memory-based hybrid Dragonfly algorithm (MHDA) [5] and Fireworks algorithm with differential mutation(FWA-DM) [6]) using 30 CEC 2014 functions. DGWO performs significantly better than the other tested algorithms.
Abed-alguni and Alawad [12] proposed a discrete variation of DGWO for scheduling of dependent tasks to virtual machines in distributed environments. It uses the largest order value (LOV) method to produce discrete job permutations from continuous candidate solutions. The simulation results using WorkflowSim [49] indicate that the discrete variation of DGWO is efficient for solving scheduling problems.
The Flower Pollination Algorithm (FPA) is an evolutionary algorithm based on the biological evolution of pollination of flowers [52]. In [16], the island model was applied to FPA to control its diversity and solve its premature convergence problem. The proposed algorithm was called IsFPA. 23 test functions were used to evaluate the performance of IsFPA compared to GA, PSO, gravitational search algorithm (GSA), multi-verse optimizer (MVO), i BA, and i HS. IsFPA was found to perform better than each of the other algorithms.
The Artificial Bee Colony (ABC) algorithm [53] simulates honey bee foraging behavior to solve various optimization problems. It is an efficient algorithm, but may very quickly converge to sub-optimal solutions at the beginning of its optimization process. The island artificial bee colony (i ABC) algorithm [18] helps overcome this problem by distributing ABC's optimization process over multiple islands. Evaluation of the performance of i ABC using the IEEE-CEC 2015 indicated that i ABC indeed improved diversity and performance of ABC, and also provided interesting performance compared to 18 other tested algorithms.
The island-based Differential Evolution (i DE) algorithm [40] modifies the DE algorithm to use an island model. i DE divides the population of candidate solutions to islands with varying population size and parameters. Therefore, each island has different convergence behavior compared to the other islands. i DE was evaluated in [40] using a set of basic test functions and found to be more efficient than DE.
The Whale Optimization Algorithm (WOA) simulates humpback whale bubble-net hunting mechanisms to solve optimisation problems [54]. However, WOA may suffer from the premature convergence, degrading the performance of the evolutionary algorithm. To mitigate this issue ,   1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63 64 65 In this section, we present i CSPM2 which is a variation of i CSPM with EOBL and four mutation methods. Fig. 1 illustrates the flowchart of i CSPM2. The first step in the process generates a population of n candidate solutions using a random-based generation function. The n candidate solutions are then randomly divided among s islands. Afterwards, the islands are divided equally among four variations of CS: CS1, CS10, CSJ and CS11. Each variation is then executed for M f iterations to the islands assigned to it, combined with EBOL at the end of each generation to replace each elite candidate solution with its opposite (as described in Section 2.5) if the opposite is evaluated to be a better candidate. This step can be performed in parallel because each variation of CS is applied to an independent set of islands. Even the optimization loop in each variation of CS can be executed in parallel. This issue is explained in Algorithm 1, which shows the algorithmic details of i CSPM2.
Algorithm 1 has two differences compared to i CSPM. Firstly, it divides the islands among four variations of CS: CS1, CS10, CSJ and CS11 (Line 7). The optimization loop (Lines 12-25) is applied to each island according to the CS variation assigned to it (Line 13). This allows the optimization loops to be performed in parallel because the islands only communicate with each other during the migration process. Secondly, it applies EOBL to a fraction (p b ) of the elite solutions in each island (Line 20). The elite-opposite solutions are generated using the procedure and equations discussed in Section 2.5. An opposite-elite solution replaces its corresponding elite solution if it has a better fitness than the elite solution.

Benchmarking
The 30 single-objective real-parameter optimization functions of CEC2014 are various complex functions: F 1 -F 3 are unimodal functions, F 4 -F 16 are multimodal functions, F 17 -F 22 are hybrid functions and F 23 -F 30 are composite functions [56]. The search range of each function is [-100, 100] D . We have previously used the single-objective functions of CEC2014 to compare the convergence speeds and the reliability of six popular optimization algorithms: CS, GWO, DGWO [3], L-SHADE [4], MHDA [5] and FWA-DM [6]. In Section 5.4, we compared the simulation results of i CSPM2 using the single-objective functions of CEC2014 to the four best performing algorithms in [3] (DGWO, L-SHADE, MHDA, FWA-DM).

Sensitivity Analysis of i CSPM2 to The Parameters of Island Model
In order to determine how sensitive the performance of i CSPM and i CSPM2 are to the island model parameters (s, M f , M r ), experiments were run over nine scenarios (presented in Table 3). The main goal of Scenarios 1-3 is to understand the relationships between the number of islands s and the performance of i CSPM and i CSPM2. The purpose of Scenarios 4-6 is to measure the effect of migration frequency M f on the performance of i CSPM and i CSPM2. The goal of Scenarios 7-9 is to investigate the migration rate M r 's influence on the performance of i CSPM and i CSPM2.
Tables 4-6 show the average over 50 runs of the best objective values of the experimental scenarios in Table 3 for the 15 benchmark functions in Table 2. The best objective value for a benchmark function is its lowest value that is achieved after applying the tested optimization algorithms to it for a specified number of iterations (MaxItr). The number of decision variables (dimension) of each benchmark function was 10 except for the two-dimensional six-hump camelback function (f 1 0). In each table, two rows correspond to each function. The first row contains the simulation results of i CSPM, while the second row contains the results of i CSPM2. Each row's best results are marked with bold font. Table 4 shows the experimental results of the first three scenarios in Table 3. The results clearly indicate that both i CSPM and i CSPM2 performance are sensitive to the value of s.Their performance becomes better with every increase in the value of s. This is expected because any increase in the value of s means that more search regions with smaller sizes are explored simultaneously. Besides, larger islands have better diffusion than smaller islands [13,[15][16][17]. Therefore, s = 12 was selected for the next six scenarios. Table 5 shows the simulation results of the next three experimental scenarios (Scenario4, Scenario5 and Scenario6), which were designed to show the effect of different values of M f on the convergence behavior of i CSPM and i CSPM2. The rank of the scenarios in Table 5 were: Scenario4 (M f = 100), Scenario5 (M f = 50) and finally Scenario6 (M f = 500). This means that low and medium migration frequencies generate better results than large-migration frequencies.
This maybe because large-scale migrations have more effects on the diversity of populations in the islands compared to low-scale migrations. The value of M f = 100, which achieved the best results in Table 5, was used in the last three experimental scenarios. Table 6 shows the simulation results for the last three experimental scenarios (Scenario7, Scenario8 and Scenario9). There is no clear indication in Table 6 on the effects of low and high values of M r on the performance of i CSPM and i CSPM2. This is possibly because of the small dimension of the benchmark functions.
The results in Tables 4-6 show that i CSPM and i CSPM2 achieved similar results for 7 benchmark functions (f 1 ,f 2 ,f 3 ,f 5 ,f 7 ,f 8 ,f 9 ). However, i CSPM2 outperformed i CSPM for 8 of out 15 functions. These observations suggest that i CSPM2 has better performance than i CSPM.

Comparison Between i CSPM2 and other Well-known Optimization Algorithms
We used the 30 single-objective, real-parameter, optimization, functions of CEC2014, described in Section 5.2, to compare the simulation results of i CSPM2 (Scenario 8) to the reported simulation results in [3] for four popular optimization algorithms (DGWO [3], L-SHADE [4], FWA-DM [6] and MHDA [5]). Table 7 shows the function error values (FEV) for the 30 CEC 2014 functions. FEV is the distance between the best objective value calculated over multiple runs by an optimization algorithm and the actual optimal value. In the table, the best FEV for each function is highlighted   1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63  64 65 in Bold. It is obvious that i CSPM2 outperforms all the algorithms in Table 7 by achieving the lowest FEV values for 14 out of the 30 functions. We suggest three possible reasons for the superior performance of i CSPM2. Firstly, it partitions the population of n candidate solutions for a given optimization between s independent islands and then it equally divides them among 4 efficient variations of CS: CS1, CS10, CSJ and CS11. Secondly, the island model and its migration process provide a suitable environment for unfitted solutions to evolve to better solutions. 16 Bilal H. Abed-alguni * ,D a v i dP a u l Thirdly, it uses EOBL to explore the neighborhood of the elite solutions in the population of each island. In addition, L-SHADE is the algorithm with the second best performance in Table 7. It achieved the lowest FEV for almost a third of the 30 CEC2014 functions, which may be because L-SHADE dynamically adjusts its internal parameters and population size during its optimization process.

Results of Statistical Tests
In this section, a nonparametric statistical test called Friedman's test [57,58] was applied to the FEV for each of the 30 CEC 2014 functions in Table 7. The results of Friedman's test (Table 8) are statistical information about the ranks of i CSPM2, DGWO, L-SHADE, MHDA and FWA-DM. In this table, the best rank is marked with bold font. The order of ranks of the algorithms was as follows: i CSPM2, L-SHADE, DGWO, MHDA and FWA-DM respectively. This means that i CSPM2 performed best amongst the tested algorithms .   1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63 64 65 Table 6: The effect of various values of M r on the performance of i CSPM and i CSPM2. D = 10, runs = 50 and number of iterations = 10,000 and number of runs is 50. We compared the performance of i CSPM2 to the performance of GAIbH and MASC using 12 instances of Taillard's benchmark (described in Section 5.2). Table 9 shows the mean makespans over 50 runs and the ARD (average relative difference) values. An ARD value shows the relative difference between the obtained mean value using an optimization algorithm to the best-known value for a given benchmark function. The ARD values were computed using the following equation [37]: where C A is the makespan achieved by the tested algorithm and C opt is the upper bound with the minimum value for the tested instance of Taillard's benchmark. The simulation results in Table 9 suggest that i CSPM2 outperforms GAIbH and MASC. i CSPM2 achieved the best known results (lowest Mean and ARD) for 10 instances out of the 12 instances of Taillard's benchmark and it also scored the lowest total average ARD (0.23%). 1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63 64 65 This may be because i CSPM2 incorporates four powerful variations of CS into the island model, which increases the diversity of its candidates solutions and improves its convergence behavior.

Discussion
The simulation results in Table 7  . It is obvious that L-SHADE provides competitive results (second best performing algorithm with the lowest FEV values for 9 out of the 30 CEC 2014 functions) compared to the results of i CSPM2. This is mainly because it follows a dynamic adjustment procedure for its internal parameters and population size during its optimization process. Besides, it is based on the DE algorithm, which is one of the most efficient basic evolutionary algorithms [4]. Further, the results of Friedman's test in Table 8 showed that i CSPM2 achieved the highest rank among all tested algorithms, which means that the simulation results of i CSPM2 are significant and provide sufficient evidence that i CSPM2 is the best performing algorithm. The results of Friedman's test also suggest that DGWO is the third best performing algorithms and strongly competitive to L-SHADE .   1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63  64 65  The results in Table 9 also showed that i CSPM2 is the best performing algorithm by achieving the lowest ARD values for 10 out of the 12 Taillard's benchmark instances for the PFSSP. Note that i CSPM2 provided the lowest ARD values for the most complex instances of Taillard's benchmark (Ta110 and Ta120). The results also showed that i CSPM2 has the lowest average ARD value (0.23) for the 12 instances of Taillard's benchmark over 50 independent runs. This means that i CSPM2, in general, provides better schedules for the 12 instances of Taillard's benchmark than other tested algorithms. On the other hand, MASC in Table 9 is the second best performing algorithm and also provides competitive results compared to the results of i CSPM2. This may be because it combines the strengths of the Simulated Annealing and Nawaz-Enscore-Ham algorithms into the GA algorithm. Note that GAIbH is the worst performing algorithm in Table  9. This may be because GAIbH is only based on a heuristic procedure that calculates the completion times of all jobs in a job permutation based on the job position in other existing partial job permutations.
There are three main explanations for the superior performance of i CSPM2 in solving the CEC 2014 suit and 12 instances of Taillard's benchmark for the PFSSP.
Firstly, i CSPM2 is based on the island model, while the other tested algorithms (DGWO, L-SHADE, MHDA, FWA-DM, GAIbH and MASC) are not based on the island model. The island model provides several advantages when integrated with an evolutionary algorithm [3,[16][17][18]. It increases the chances of candidate solutions with low objective values evolving into better ones. It can also be run in parallel on several processing devices or a device that supports parallel processing. The migration mechanism in the island model regulates population diversity and lowers the possibility of early convergence.
Secondly, the four variations of CS used in i CSPM2 have unique advantages. CS1 utilizes the Lévy flight mutation, which has a better exploration capability than the random mutation method [1]. CS10 uses the HDP mutation method that can sample the entire search space between the lower and upper bounds of a decision variable regardless of its value [2,13,21]. CSJ uses the Jaya mutation method that mutates the candidate solutions using stochastic moves based on the best and worst candidate solutions [24]. CS11 uses the pitch adjustment mutation, which is known for its quick convergence [2,19]. In summary, we conclude that the mutation methods in i CSPM2 collectively provide it with strong exploration and exploitation capabilities.
Finally, i CSPM2 utilizes two well-known opposition learning approaches (OBL and EOBL), while the other tested algorithms in Section 5 do not utilize any opposition learning approach. The OBL approach is used in the initialization step of i CSPM2 to widen the search are by considering the opposite solutions of randomly generated solutions. This helps in increasing the diversity of initial population. The EOBL approach speeds up the convergence of i CSPM2 by exploring the opposite solutions of the best-known candidate solutions [25,26].

Conclusions and Future Work
This paper introduced an improved variation of the i CSPM algorithm by the name i CSPM with elite opposition-based learning and multiple mutation methods (i CSPM2). The new algorithm distributes the population of candidate solutions for a given optimization among s independent islands and then it evenly divides the islands among 4 variations of Cuckoo Search (Cuckoo search via Lévy flights (CS1) [1], Cuckoo Search with polynomial mutation (CS10) [2], Cuckoo Search with Jaya Mutation (CSJ), Cuckoo Search with pitch adjustment mutation (CS11) [2]). This means that each variation of Cuckoo Search is applied to n/4 islands. Besides, i CSPM2 uses elite opposition-based learning to explore the neighborhood of elite solutions in the population of each island. i CSPM2 is capable of solving complex, scheduling problems as well as contin -1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63  64  65 uous optimization problems. This is because it uses the SPV method with complex scheduling problems, such as the PFSSP, to convert the continuous candidate solutions into discrete ones.
i CSPM2 is shown to perform better than a number of other well-known optimization algorithms through several experiments conducted in order to test its performance using popular benchmark suites. Firstly, the sensitivity of i CSPM and i CSPM2 to the number of islands s, migration frequency M f and migration rate M r were studied and analyzed based on different experimental scenarios. Overall results indicate that higher values of s and lower values of M f give better performance for both i CSPM and i CSPM2. However, it remains unclear whether high or low values of M r improve either algorithm's performance. However, the experimental results do indicate that i CSPM2 outperforms i CSPM. Secondly, performance of i CSPM2 was compared against four well-known swarm optimization algorithms: DGWO [3], L-SHADE [4], MHDA [5] and FWA-DM [6] using the single-objective IEEE CEC 2014 functions. The overall results show that i CSPM2 performs better than the other well-known swarm optimization algorithms. Finally, we conducted experiments using 12 instances of Taillard's benchmark for the PFSSP to show that i CSPM2 is an efficient algorithm for scheduling problems. In these experiments, i CSPM2 was compared to two efficient discrete evolutionary algorithms (GAIbH [7] and MASC [8]). The results indicate that i CSPM2 is a better scheduling algorithm than GAIbH and MASC.
However, i CSPM2 has two main limitations. Firstly, the computational complexity of i CSPM2 is O(M w .s.M f .k), which is more than the computational complexity of the basic CS algorithm (O(MaxItr.n)). Hence, we recommend i CSPM2 be executed over s parallel devices, which will reduce its computational complexity to O(M w .M f .k). Secondly, i CSPM2 can only be directly applied to single-objective optimization problems. Therefore, one of our future goals is to develop a variation of i CSPM2 that can solve some multi-objective optimization problems.
In the future, the mutation methods in Equilibrium optimizer [59], Jaya [24], Grasshopper [60], L-SHADE and MHDA will be incorporated into i CSPM2. Further, i CSPM2 will be applied to multi-agent cooperative reinforcement learning [61][62][63] based on the models described in [64][65][66]. Finally, it could be possible to improve other heuristics and metaheurisics by enhancing them with different mutation methods and Elite Opposition-based Learning in a similar manner to how i CSPM was improved in this paper.