Interaction Enhanced Imperialist Competitive Algorithms

.


Introduction
Optimization is a rapidly developing field due to its practical application to many real life problems.In this paper, we study a special class of optimization problem in the form of: where f(x) is the objective function to be minimized, x = (x 1 , x 2 , …, x n )  R n is the variable vector, and L = (l 1 , l 2 , …, l n ) and U = (u 1 , u 2 , …, u n ) are the lower bound and upper bound of x, respectively.That is, l i ≤ x i ≤ u i for i = 1 to n.
ICA is a population-based method, whose population contains a set of solutions, called countries.ICA divides its population of countries into several sub-populations, called empires.Within each empire, ICA moves all non-best countries (called colonies) in an empire toward the best country (called imperialist) in the same empire through an operation called assimilation, which can be regarded as a primitive form of Particle Swarm Optimization [26].The feature that distinguishes ICA from other evolutionary algorithms is that ICA allows all empires to interact via competition with each other.The competition operation of ICA simply moves a colony from the weakest empire to another empire.From this aspect, ICA resembles Island Model Genetic Algorithm [27].Overall, ICA is essentially an integration of Island Model and a primitive form of PSO.
The impact of the competition operation is weaker than that of the assimilation operation since in each generation only one colony is directly affected by the competition operation but all colonies are moved by the assimilation operation.Previous work on ICA focuses mostly on improving the assimilation operation or replacing the assimilation operation with more powerful meta-heuristics, but none focuses on improving the competition operation or, more generally, on enhancing the interaction among the empires in ICA.The quality of interaction via the competition operation is poor since the interaction only involves moving an inferior solution (i.e., a colony from the weakest empire) to another empire.The objective of this paper is to enhance the interaction among the empires in ICA.Two methods are proposed to achieve this objective.The first method utilizes all imperialists to create a new artificial imperialist, and the second method uses a crossover operation on the imperialists to allow effective interaction among all empires.Performance study using a set of well-known benchmark functions supports the effectiveness of the proposed methods.
The rest of this paper is organized as follows.Section 2 reviews ICA and its variants.Section 3 describes our proposed methods.Section 4 gives experimental results.Section 5 concludes this paper and gives directions for future research.

ICA Basic Concept
This section reviews the original ICA [10].However, as the original ICA has some design problems, we adopt Atashpaz-Gargari's Matlab implementation of ICA [28] whenever appropriate.The original ICA is shown in Figure 1.It proceeds in two stages: initialization and evolution.1), a user-specified number of randomly generated solutions {p 1 , p 2 , …, p N } are created, where each solution p i (1≤ i ≤ N ) is a 1 × n array and is called a country, and N denotes the number of countries in the population.Then, the cost of each country p i is calculated as f(p i ).A user-specified number of countries with the lowest cost in the population are chosen as imperialists, and the remaining countries as colonies.Let N imp denote the number of imperialists.Next, N imp empires are formed by first assigning an imperialist to each empire, and then randomly assigning all colonies to these empires such that the number of colonies of an empire is proportional to the power of its imperialist.That is, )) ( ( where c i and P i denote the cost and power of the imperialist of empire i, respectively, and NC i denotes the number of colonies assigned to empire i, where 1 ≤ i ≤ N imp .Notably, Equation (2), proposed by Atashpaz-Gargari [28], calculates the power of an imperialist in a way different from that in the original ICA [10] to avoid the problem of assigning zero colony to the weakest empire in the original ICA.
During the evolution stage (lines 2-10 in Figure 1), assimilation within each empire and competition among all empires occur in every generation until the termination condition (e.g., all countries have converged or a user-specified number of generations has been reached) is satisfied.Assimilation within an empire is achieved by moving all colonies of the empire toward their imperialist (line 4 in Figure 1).Given a colony p c and its imperialist p i , the assimilation operation moves p c as follows [28]: where β is a parameter with default value 4, δ is a 1 × n array whose elements are random values between 0 and 1, and -.*‖ denotes element-by-element multiplication between two 1 × n arrays.For optimization problem with bounded variables, Equation ( 4) could generate values outside the search space.If this happens, the out-of-bound value, e.g., x i on the i-th dimension, is simply replaced by its nearest boundary (i.e., U i or L i ).
After moving all colonies to their new positions through the assimilation operation, their costs are recalculated (line 5 in Figure 1) and then compared against the cost of their imperialists (line 6 in Figure 1).If the cost of a colony is smaller than the cost of its imperialist, the colony and the imperialist swap roles to ensure that the imperialist of an empire is always the country with the lowest cost in the empire.
Next, the cost (denoted by Q i ) and the power (denoted by E i ) of each empire i are calculated using the cost of its imperialist (denoted by c i ) and the average cost of the colonies in empire i, as shown in Equations ( 5) and (6), respectively (line 8 in Figure 1).
Notably, ξ is a parameter with suggested value 0.1 in the original ICA, but with default value 0.02 in [28].This study uses ξ = 0.02.Competition among all empires (line 9 in Figure 1) is achieved by taking the weakest colony away from the weakest empire and giving it to a chosen empire, where the probability of empire i been chosen is calculated as follows.
When the last colony of an empire is taken away by another empire, the former empire is eliminated, and its imperialist also becomes a colony of the latter empire.

Variants of ICA
In the literature, many new operations have been proposed to enhance the basic operations in ICA.For example, Atashpaz-Gargari [28] introduced three new features into the original ICA.In each generation, a portion of the colonies are replaced by the same number of randomly generated new candidate solutions, through the revolution operation.When two imperialist are too close to each other, their empires are united as one, through the unite operation.Finally, instead of competition in every generation, the frequency of competition among empires is reduced to avoid converging too quickly.
Instead of using the revolution operation to replace a portion of colonies in every generation, Duan et al. [29] suggested monitoring the minimal cost and average cost of all countries, and if the minimal cost and the difference between the average cost and the minimal cost are below their respective user-specified thresholds, then a random number of countries in the population are replaced by new countries, generated using a chaotic sequence.Jain and Nigam [30] suggested using a genetic algorithm to generate new countries for the revolution operation.Khorani et al. [31] suggested applying genetic algorithm and ICA recursively to benefit from the search power of both algorithms.
The assimilation operation of ICA often converges to a local optimum prematurely [29,30,32], and thus many attempts have been proposed to replace it with more powerful operations.For examples, Bahrami et al. [33] used a chaotic map to determine the moving direction for the assimilation operation.Zhang et al. [34] defined the assimilation operation as a two-step process.First, each colony is moved precisely toward their imperialists.Then, some randomly chosen colonies are moved further in all dimensions to improve diversity.Lin et al. [35] replaced Equation ( 4) with Equation ( 8) below to allow some colonies moving away from their imperialists: They also suggested bouncing the out-of-bound values (e.g., x i on the i-th dimension) into the feasible space using Equation ( 9), instead of sticking them to the nearest boundary.
Lin et al. [26] indicated that the assimilation operation is a primitive form of Particle Swarm Optimization (PSO), and thereby suggested replacing the assimilation operation with PSO.Similarly, Karimi et al. [13] replaced the assimilation operation with an Electromagnetism-like Algorithm.Nozarian and Jahan [36] applied ICA as the local search mechanism in a memetic algorithm.Bahrami et al. [37] proposed an assimilation operation adaptive to the distribution of colonies to balance between the exploration and exploitation abilities of ICA.

Interaction Enhanced ICA
From the literature review in Section 2.2, it is obvious that previous work on ICA mostly focuses on improving the assimilation operation (i.e., the evolution within each empire), and pays little or no attention on the competition operation (i.e., the interaction among all empires).Ironically, the competition operation is what distinguishes ICA from other evolutionary algorithms, as its name implies.With ICA, each empire evolves almost separately, and the only interaction among empires is through the competition operation.However, the competition operation just removes a colony from the weakest empire and then adds the colony to another empire.Intuitively, the weakest empire does not benefit from this operation.The empire winning a colony does not benefit much from this operation either, because the quality of the colony is poor.Notably, the growth and decline of the numbers of colonies in these two empires rebalance the computational effort towards the stronger empire.Furthermore, in each generation, the assimilation operation affects all colonies, while the competition operation affects only one colony.Therefore, the competition operation has much less impact on the performance than the assimilation operation.
To strengthen the power of the competition operation, or more generally to enhance the quality of interaction among empires, we add an interaction step to ICA such that the niche of each empire can be shared by other empires.Since the imperialist of an empire is the best country in the empire, exchanging information about the imperialist with other empires posts a greater benefit than exchanging information about a colony, as did in the original competition operation.The resulting algorithm, called Interaction Enhanced ICA, is shown in Figure 2. It differs from the original ICA (see Figure 1) in three aspects.Firstly, the assimilation steps of Lin et al. [35] are adopted to improve the diversity of the assimilation operation (lines 4 and 5 in Figure 2).Secondly, an interaction step is added (line 10 of Figure 2).Two ways to perform the interaction step are described in detail in Sections 3.1 and 3.2.Thirdly, a new parameter ρ is introduced to control the frequency of competition (lines 11 and 12 in Figure 2) where 0 ≤ ρ ≤ 1.The original ICA can be regarded as having ρ = 1 since competition occurs in every generation.Intuitively, a smaller ρ causes the number of empires to reduce at a slower speed.Since the preceding interaction step only works with more than one empire, a small ρ can increase the impact of the interaction step.1. Initialization 2. While the termination criteria is not satisfied Do 3.For each empire i Do 4. Perform assimilation for all colonies in empire i using Equation (8); 5. Move all colonies of empire i with out-of-bound values using Equation (9); 6. Calculate the cost of each colony in empire i; 7. Update the imperialist in empire i; 8. End 9. Calculate the cost of each empire using Equation (5); 10.If there exist more than one empires then perform interaction operation; 11.Generate a random value ~U(0,1); 12.If μ ≤ ρ then perform competition among empires; //ρ is a parameter 13.End

Artificial Imperialist
This section proposes the idea of artificial imperialist, and describes how it is used in Interaction Enhanced ICA.Let p 1 , p 2 , …, p m denote the imperialists in current population, listed in ascending order of their costs.An artificial imperialist p a is constructed as the weighted sum of all imperialists, as shown below.
The weights of these imperialists form a geometric sequence with ratio 0.9.A better imperialist has a larger weight.Intuitively, the artificial imperialist combines the niche of all imperialists, and allows exploration of global optimum efficiently.To employ artificial imperialists in Interaction Enhanced ICA, the steps in Figure 3 are used for the interaction step in Figure 2. If the artificial imperialist p a is better than the weakest imperialist p m , then p a becomes the new imperialist of empire m, and p m is simply discarded.We denote the Interaction Enhanced ICA using Artificial Imperialist as ICAAI.1. Sort all imperialists in ascending order of their cost as p 1 , p 2 , …, p m ; 2. Construct artificial imperialist p a using Equations ( 10) and ( 11

Crossover Imperialists
With ICA, the imperialist of an empire cannot move unless it is no longer the best country in the empire.This situation is similar to Electromagnetic-like algorithm [4] where all particles except the best particle are allowed to move.However, with ICA, there exist several empires, and consequently, several imperialists.Thus, this motivates the idea of exchanging information among the imperialists to improve the convergence speed of ICA.Based on this motivation, this section proposes crossover imperialists (see Figure 4) for the interaction step in Interaction Enhanced ICA. 1.For k = 1 to ⌊νm⌋ Do 2. Randomly choose two imperialists p i and p j from all imperialists, assuming f(p i ) ≤ f(p j ); 3. Uniform crossover p i and p j to generate two new countries q 1 and q 2 ; 4. Assign the best of p i , p j , q 1 and q 2 as the imperialist of the empire i; 5. Assign the 2nd best of p i , p j , q 1 and q 2 as the imperialist of the empire j; 6. End Notably, ν in step 1 of Figure 4 is a parameter between 0 and 1 to control the crossover ratio, and m is the number of imperialists in the current population.Given two countries p i and p j , the steps to generate two new countries q 1 and q 2 using uniform crossover are shown in Figure 5. Denote Interaction Enhanced ICA using Crossover Imperialists as ICACI.ICACI incurs ⌊νm⌋ more calculations of the objective function per generation than ICA does.Notably, m equals N imp initially and is non-monotonic decreasing afterwards.The time complexity of ICACI remains the same as that of ICA.

Experiment Settings
A set of 13 well-known benchmark functions, listed in Table 1, was used in this experiment [33,38].The number of dimensions (i.e., n in Table 1) of the search space is set to 30.Functions f 1 -f 5 are unimodal, and functions f 6 -f 13 are multimodal.Notably, the function u in functions f 12 and f 13 is defined as follows.
This performance study contains two experiments.In experiment 1, PSO and three ICA variants (Perturbed ICA [35], ICAAI and ICACI) were tested.For the three ICA methods, the number of countries, the number of imperialists, β in Equations ( 4) and ( 8), and ξ in Equation ( 5) are set to 88, 8, 4 and 0.02, respectively.For ICACI, the crossover ratio ν is set to 0.8.For both ICAAI and ICACI, ρ in line 12 of Figure 2 is set to 1.For PSO, the number of particles, inertia weight w, and two acceleration coefficients c 1 and c 2 are set to 88, 0.7, 2 and 2, respectively.
Experiment 2 studied the effect of competition frequency on both ICAAI and ICACI.All experimental settings are the same as those in experiment 1 except that the value of ρ varied from 0 to 1 in step of 0.1.Notably, ρ = 0 means that no competition occurs among empires.
For each setting, 30 runs were conducted, and their average performance was obtained.Each run stops until the maximum number of generations (1000 or 3000 in experiment 1, and 1000 in experiment 2) is reached.For the same run, the same set of initial countries (or particles in PSO) was generated for all four methods.

Experiment 1: Impact of Interaction Operation
This experiment compares ICAAI and ICACI against PSO and Perturbed ICA [35].Wilcoxon signed-rank test has been conducted between every two methods, and p-values less than 0.05 are deemed statistically significant.Table 2 shows the average and the standard deviation of the best objective values obtained by each method after 1000 generations.Since ICAAI and ICACI are essentially the Perturbed ICA with the addition of an interaction step (line 10 of Figure 2), the impact of the interaction step can be shown by comparing the performance of ICAAI and ICACI against that of the Perturbed ICA.Wilcoxon signed-rank test shows that ICAAI statistically significantly outperforms the Perturbed ICA on benchmark functions f 1 , f 2 , f 5 , f 7 , f 8 , f 9 , f 10 , f 12 and f 13 , and that there is no significant difference between the two methods on the rest of the benchmark functions.Similarly, Wilcoxon signed-rank test shows that ICACI statistically significantly outperforms the Perturbed ICA on benchmark functions f 1 , f 7 , f 8 , f 12 and f 13 , and that the Perturbed ICA statistically significantly outperforms ICACI only on benchmark function f 9 .Therefore, the addition of an interaction step in ICAAI and ICACI improves the Perturbed ICA on some benchmark functions.
Wilcoxon signed-rank test between ICAAI and ICACI shows that ICAAI statistically significantly outperforms ICACI on benchmark functions f 1 , f 4 , f 5 , f 7 , f 8 , f 9 , f 10 , f 12 and f 13 , and that there is no significant difference between the two methods on the rest of the benchmark functions.Therefore, the interaction step using artificial imperialist appears to be more effective than that using crossover imperialists.
Wilcoxon signed-rank test between ICAAI and PSO shows that ICAAI statistically significantly outperforms PSO on benchmark functions f 3 , f 6 and f 9 , and that PSO statistically significantly outperforms ICAAI on benchmark functions f 1 , f 2 , f 5 , f 7 , f 8 and f 13 .Similarly, Wilcoxon signed-rank test between ICACI and PSO shows that ICACI statistically significantly outperforms PSO also on benchmark functions f 3 , f 6 and f 9 , and that PSO statistically significantly outperforms ICACI on benchmark functions f 1 , f 2 , f 4 , f 5 , f 7 , f 8 , f 10 , f 12 and f 13 .Thus, PSO appears to be better than both ICAAI and ICACI, according to Wilcoxon signed-rank test.However, later in this section, we show that ICAAI becomes competitive to PSO after 3000 generations, according to Wilcoxon signed-rank test.
Experiment using Atashpaz-Gargari's ICA [28] has also been conducted, but its performance results are much poorer than the four methods discussed herein and thus are not included in Table 2. Wilcoxon signed-rank test shows that both ICAAI and ICACI statistically significantly outperform Atashpaz-Gargari's ICA on all benchmark functions.To see the possibility of further converging to a better solution, the same experiment is extended from 1000 to 3000 generations, and the results are shown in Table 3.According to Wilcoxon signed-rank test, ICACI statistically significantly outperforms the Perturbed ICA on benchmark functions f 1 , f 7 , f 8 and f 12 , and the Perturbed ICA statistically significantly outperforms ICACI only on benchmark function f 3 .ICAAI remains more effective than the Perturbed ICA after 3000 generations.According to Wilcoxon signed-rank test, ICAAI statistically significantly outperforms the Perturbed ICA on benchmark functions f 1 , f 5 , f 7 , f 8 , f 9 , f 10 and f 12 , and there is no significant difference between ICAAI and the Perturbed ICA on the rest of the benchmark functions.
ICAAI is still more effective than ICACI after 3000 generations.According to Wilcoxon signed-rank test, ICAAI statistically significantly outperforms ICACI on benchmark functions f 1 , f 4 , f 5 , f 7 , f 8 , f 9 and f 10 , and there is no significant difference between ICAAI and ICACI on the rest of the benchmark functions.
Both ICAAI and ICACI are more competitive to PSO after 3000 generations than after 1000 generations.According to Wilcoxon signed-rank test, ICAAI statistically significantly outperforms PSO on benchmark functions f 3 , f 5 , f 6 , f 7 and f 9 , and PSO statistically significantly outperforms ICAAI on benchmark functions f 1 , f 8 , f 10 , f 12 and f 13 .Similarly, Wilcoxon signed-rank test shows that ICACI statistically significantly outperforms PSO on benchmark functions f 3 , f 6 , f 7 and f 9 , and that PSO statistically significantly outperforms ICACI on benchmark functions f 1 , f 4 , f 5 , f 8 , f 10 , f 12 and f 13 .This experiment compares ICAAI and ICACI under various competition frequencies, which are controlled by the value of parameter ρ. Figure 6 shows that ICAAI consistently outperforms ICACI on all of the five unimodal benchmark functions f 1 ~f5 .For f 1 ~f4 , ICAAI often yields better results with smaller competition frequency (i.e., smaller ρ).
Figure 7 shows the results for the eight multimodal benchmark functions f 6 ~f13 .ICAAI consistently outperforms ICACI on f 9 and f 10 .For f 7 , f 8 and f 11 , ICAAI underperforms ICACI only when ρ = 0.For f 6 and f 12 , ICAAI often yields better results than ICACI does.Overall, ICACI performs better than ICAAI only on f 13 .Smaller competition frequency does not guarantee better performance for both ICAAI and ICACI, however, experimenting with ρ < 1 can often find better solutions.For example, Figure 6 and Figure 7 show that the best ρ for ICAAI is always less than 1 on all benchmark functions.

Conclusions
ICA often converges to a local optimum [29,30,32].To resolve this problem, previous work focuses mostly on improving the diversity of the colonies in ICA via perturbed assimilation move [35] or random replacement (e.g., the revolution operation in [28]).This work shifts the focus to improving the interaction among the imperialists.Two new methods, ICAAI and ICACI, are proposed.Both methods do not increase the time complexity of ICA.Experiment 1 shows that both methods often yield better results than ICA, and Experiment 2 shows that a better solution can be found by experimenting ICAAI with lower competition frequency (i.e., ρ < 1).Although ICAAI requires less computation than ICACI, ICAAI appears to be more effective than ICACI.
Two possible extensions to ICA are discussed as follows.Firstly, the multiple empires (i.e., sub-populations) in ICA offer a new ground for exploration.Ideas that were originally proposed for single population method can be extended to some or all empires in ICA.For example, Electromagnetism-like Algorithm [4] applies local search on the best candidate solution in the current population to improve the solution quality.With ICA, the same local search idea can be applied to either the imperialist of the best empire or all imperialists.
Secondly, an effective evolutionary method should be equipped with a way to detect stagnation and to know what to do when stagnation occurs [39].Previous work on this topic can also be extended to each empire or the whole population in ICA.Since the size of an empire is smaller than that of a population, the stagnation detection mechanism should be adjusted accordingly to avoid false detection.

); 3 .
If f(p a ) < f(p m ) then 4. p a replaces p m as the imperialist of empire m; 5. End If ICAAI only incurs one more calculation of the objective function per generation than the original ICA does.However, the time complexity remains the same for both methods.

Figure 5 .
Figure 5. Uniform crossover of two countries.

Figure 6 .
Figure 6.ICAAI (solid line) and ICACI (dashed line) for unimodal benchmark functions f 1 ~f5 .The horizontal axis is ρ, and the vertical axis is the average of the best objective values.

Figure 7 .
Figure 7. ICAAI (solid line) and ICACI (dashed line) for multimodal benchmark functions f 6 ~f13 .The horizontal axis is ρ, and the vertical axis is the average of the best objective values.

1 .
Initialization 2. While the termination criteria is not satisfied Do 3.For each empire i Do 4. Perform assimilation for all colonies in empire i; 5. Calculate the cost of each colony in empire i; 6. Update the imperialist in empire i;

Table 2 .
Average and standard deviation of the best objective values over 30 runs after 1000 generations.The standard deviation is shown in parentheses.

Table 3 .
Average and standard deviation of the best objective values over 30 runs after 3000 generations.The standard deviation is shown in parentheses.