Adaptive Collaborative Quantum-Inspired Evolutionary Algorithm for Global Numerical Functions

– A novel adaptive collaborative quantum-inspired evolutionary algorithm (ACQEA) is proposed by combining the collaborative evolution and adaptive mutation mechanism together in this paper. In ACQEA, the whole population will be divided into multi sub-populations which can complete the evolution independently, and then the collaborative evolution mechanism is used to make these multi sub-populations full exchange their evolution information in operation process. In addition, the adaptive mutation and update strategies are implemented in order to give ACQEA the power to explore its search space on the basis of characteristic information of the elite individual and corresponding population diversity. Finally, the proposed ACQEA is compared with existing quantum evolution algorithm (QEA) in solving global numerical functions and the experiments results verify that the advantages of ACQEA on convergence rate and searching


Introduction
Quantum-inspired evolutionary algorithm (QEA) is proposed by combining quantum computing theory with evolutionary theory. It utilizes the concepts of quantum bit, superposition of states and collapse of states and it applies quantum rotation gate to guiding the searching direction into the optimal area and accelerating the algorithm's convergence speed [1]. Thus QEA have a number of computational advantages compared with the traditional optimization algorithms. QEA is still easy to fall into local optimum, especially for complex global optimization problems [2]. Recently, numerous literatures about improved QEA have been reported which focus on making its performance better, and these works can be summarized as following three aspects.
(1) The new encoding methods are proposed on QEA to improve the global search ability. Li Panchi et al. used Bloch coordinates comprise gene chain to represent quantum individuals, which can accelerate the convergence process [3]; Zhao Shuanfeng et al. proposed a real-coded chaotic quantum genetic algorithm based on the chaotic and coherent characters of Q-bits [4]; Zhang Lei et al. adopt phase angle and its corresponding real mapping to construct quantum individual with probabilistic representation, which can represent all the feasible solution probabilistically [5]; Jianyong Liu et al. had thought conventional quantum genetic algorithm (QGA) could be used to solve combinatorial optimization problems well than real-valued problems, so they proposed Real-coded QGA [6].
(2) New evolutionary strategies are adopted into QEA to improve its performance. Jianyong Liu et. al. combine quantum coding, immune clone and niche mechanism together to solve multi-modal function optimization more effectively [7]; Tzyy-Chyang Lu proposed a region-based QEA, the algorithm adopted quantum bit representation for the selection of regions; Its search process uses a region-by-region exploration in the beginning and, as the candidate regions are identified, a randomized search in good regions is employed for exploitation [8]; Qian Jie et al. proposed a statistical learning QEA. Experiments had shown that this new design could avoid premature convergence [9].
(3)The hybrid approaches are proposed which combines the traditional version with other optimization algorithms. Yu Yang et al. combined QEA with PSO and proposed two hybrid QEAs, one is to embed the evolutionary equation of PSO into QEA, while the other one is applied the quantum chromosomes of QEA to binary PSO [10]; Li Zhiyong et al. proposed a novel quantum bat algorithm, which is based on quantum evolution algorithm and bat algorithm [11]; Wu Shun-Chi et al. proposed a two-stage scheme that combines quantum evolutionary algorithm and tabu search, simultaneously possessed the capabilities of exploration and exploitation and could be effectively employed for LP design with less computational load [12].
In addition, co-evolutionary algorithms (CEAs), as a new evolutionary algorithm framework, focus on the idea of mutual influence or co-ordination among different species to ensure algorithms have better search accuracy and search efficiency [13]. In recent years, some researchers began to combine co-evolutionary mechanism with QEA and then proposed some improved QEAs. Gu  three new strategies named as competitive hunter, cooperative surviving and the big fish eating small fish [14]. Xiong, Gui et al. proposed a double population coevolution algorithm based on the quantum evolution algorithm and difference evolution algorithm. In their algorithm, one population is used for global searching; the other one is for partial searching [15]. Zhang proposed an elite collaborative quantum evolution algorithm. Two sub-populations were selected randomly. Subsequently, the corresponding elite individuals from the selected two sub-populations would construct a mutually beneficial relationship in order to implement coevolutionary operation, and guide the individual populations evolve toward the optimal solution [16].
In this paper, the co-evolutionary mechanisms are introduced into QEA in order to propose Adaptive Collaborative Quantum-inspired Evolutionary Algorithm (ACQEA). This new ACQEA will fully extract the characteristic information of every sub-population in order to lead the algorithm has a better performance. The rest of this paper is organized as following. The preliminary knowledge of co-evolutionary algorithm and quantum evolution algorithm is explained in Section 2; section 3 gives the details of the proposed algorithm; section 4 shows the experimental simulation using the novel algorithm; finally, conclusions are drawn in section 5.

Co-evolutionary algorithm
Now there are two structural forms for CEAs to implement evolution. One is Competitive Coevolutionary Algorithm (Com-CEA) and the other one is Cooperative Co-evolutionary Algorithm (Coo-CEA) [17] [18]. In Coo-CEA, the fitness of individual is not evaluated separately. It is firstly in accordance with the prior knowledge of solving problem; subsequently, it combines the "representatives" individuals from the other sub-populations to construct a solution vector of solving problem and then to evaluate the fitness of individuals. This process is called "cooperation"; the cooperative coevolution mechanism also provides a generalized evolution framework to solve the high-dimensional or complex optimization problems [19].
As for Com-CEA, the individual fitness in a subpopulation is determined by the competition results which include a series of competition with the individuals in other sub-population. At this time, these two subpopulations always take the role of "Host" population and "Parasite". The evolutionary operations will use these populations to produce new sub-populations. With the development of the evolution, these different subpopulations will show different genetic characteristics.

Quantum evolution algorithm
Quantum evolution Algorithm (QEA) has advantages of quantum computing and evolutionary computation. It uses quantum bit (Q-bit) as a probabilistic representation to improve the diversity of population. It also uses quantum rotation gate (Q-gate) as the update operation, which can guide the search direction of individual to the optimal area, and increase the algorithm's convergence speed. In the traditional QEA, a Q-bit may be in the "1" state, "0" state, or any superposition of these two states. It can be represented as following: |Ψ > = |0 > + |1 > (2-1) Where α and β are complex numbers that specify the corresponding probability amplitudes of the states "0" and "1". Normalization of the two states to unity always guarantees: | | 2 + | | 2 = 1 (2-2) So a Q-bit in QEA can be defined with a pair of numbers: [ ] . In general, a quantum individual is defined as a string of Q-bits, = � 1 where is the size of population, and is the number of Q-bits. Since the Q-bits representation is able to express as a linear superposition of states probabilistically, evolutionary computing with the Q-bit representation is often has a better performance than traditional approaches. The main evolutionary way of QEA is realized by Qgate, which transfer the probability of Q-bits converge either to "1" (or "0"). Q-gate can be designed according to the actual problem. In this paper, we use the common one as following.
( ) = � cos ( ) The update process of Q-gate and its related adjustment strategy is: Where is the rotation angle whose size and sign is definited by adjustment strategy in literature [20]. By using Q-gates, the quantum individuals can be guided toward the better solutions throughout the iteration process.

Adaptive collaborative quantum evolut ionary algorithm
This section proposes adaptive collaborative quantum evolutionary algorithm. Firstly, the initial population will be divided into multiple sub-populations; then the following new evolutionary strategies are introduced into these multiple sub-populations in order to improve its global optimization ability.

Elite individuals
Elite individual generally corresponds to the individual with a better fitness and contains corresponding ITM Web of Conferences 16, 02010 (2018) https://doi.org/10.1051/itmconf/20181602010 AMCSE 2017 evolutionary characteristic information. Maintaining best Q-bit individuals as elite individual in every generation can avoid the possibility of losing high quality individuals. At the same point, it is even more powerful if the elitism is further strengthened and the solutions are spread out by quantum mechanism [21]. In ACQEA, every sub-population will produce an elite individual which actually contains the characteristics information of current sub-population in the implementation process of algorithm. Thus, these elite individuals can be collected as guiding individual. Accompanied by the evolution of the whole population, these guiding elites will be applied to help the poor performance sub-population and constantly updated.

Definition of population diversity
Current experience has shown that the population diversity is very important in giving the algorithm the power to explore the search space and not get trapped in local optima [22]. Normally, if the diversity of subpopulations is not identified at the end of iteration, it would be gradually reduced in the later iterative process of the algorithm. This could result in a gene decrease for effective individuals, and affect the optimization process of the algorithm and finally cause a premature convergence. Therefore, it is necessary to design a mechanism to maintain the diversity of the population.
In this section, a modified indicator of degree of population diversity is introduced to measure the diversity of sub-populations based on the reference [23].
Here the modified indicator includes the characteristic information of every individual in each sub-population and also is a parameter involved in the evolution of the population. Definition 3.1 When the Q-bits are applied to optimization problems, they will converge to the corresponding binary encoding space {0,1} L , where L is the length of binary code, the population size is n. A group of individuals in this population can be described: Q = {q 1 , q 2 , … , q n } , where q j = {q 1j , q 2j , … , q Lj } , and j = 1,2, … , n . The degree of population diversity is defined as the following formula: where scale is the size of individuals in population, and scale = L × n , ∑ q lj � indicates that the distribution of binary code "0" and "1" of all the individuals in the population. In each iteration, the greater the result, the more unbalanced distribution between the binary code "1" and "0", which also means the population diversity is in reducing. Finally, when the result of div(Q) becomes smaller, it shows the diversity of the population is getting worse. As mentioned in above formula (3-1), when the ACQEA divides the population into many subpopulations, every sub-population will has its own div(Sub_Q) as an indicator to measure the sub-population diversity during the entire evolutionary process.

Adaptive mutation and update mechanism
Mutation operator can produce a random disturbance for the candidate solution in order to get new generations. In general, the efficiency of evolutionary algorithm relies strongly on the performance of mutation operation [24]. The ACQEA in this section will implement mutation operation for the worst sub-population with smallest div(Q) in order to improve its diversity. Here should be noted that the change of div(Q) is related to the probability of mutation. Therefore, when the div(Q) becomes smaller, it means the diversity of population is getting worse, while the mutation probability of the subpopulation will increase. Here the diversity of population and global searching abilities would be improved by adaptively changing of the mutation probability.
With this process, if the original value of the Q-bit is '0', then it will turn into '1' after this mutation operation; the other way around is '1', then it will turn into '0' after mutation operation. When the QEA used Q-gate to update these sub-populations, the best individual with in the elite library will be used to guide and update the following two sub-populations instead of the whole. One is the sub-population which is corresponding to the worst individual in elite library, and the other is the worst diversity of the population in order to ensure the poor sub-populations have a better optimization performance. The remaining sub-populations will be updated by their own best individuals.
As a whole, the mutation and update strategy is actually equivalent to build up an information exchange mechanism between the best sub-population and the worst sub-population, at the same time, this mechanism also ensure some of the sub-populations can maintain their independent evolutions.

Simulation tests
In order to illustrate the effectiveness and performance of the proposed ACQEA, we compare it with the traditional QEA [25] by using the following typical global numerical functions with diverse complexities from virtual library of Simulation Experiments in Simon Fraser University. These functions listed below are some of the common functions used for testing optimization algorithms, and all of them have many local minima points. The maximum number of the iteration of these two algorithms is 100, and the initial population size is 200. The population of ACQEA is divided into four sub-populations with size of 50 each.

Description of the test functions
These test functions are listed as following: � + a + exp (1) Where d is the dimensions; The Ackley function is widely used for testing optimization algorithms. In its two-dimensional form in the plot above, it is characterized by a nearly flat outer region, and a large hole at the centre. The function poses a risk for optimization algorithms, particularly hillclimbing algorithms, to be trapped in one of its many local minima.  f(x) = 100�|x 2 − 0.01x 1 2 | + 0.01|x 1 + 10| The sixth Bukin function has many local minima, all of which lie in a ridge; and it is usually evaluated on the rectangle 3] . Its global minimum f(x * ) = 0 at x * = (−10,1).

Function 3: Cross-in-Tray Function
The Cross-in-Tray function has multiple global minima. It is shown here with a smaller domain in the second plot, so that its characteristic "cross" will be visible. The function is usually evaluated on the square All the above numerical optimization benchmark functions have many local minima around the global minimum, therefore they can be used to test the global search ability of the algorithm and its ability to escape from local optima. Notices that the above numerical optimization benchmark functions are used to solve the minimum, and we will reverse these optimization functions into solving the maximum in order to handling uniformity. Each algorithm runs 10 times independently. The statistical results including the best optimal result, the average result, the worst results, and the standard deviations are described as following table. Table 1 shows the overall statistical results of QEA and ACQEA for the above functions. The statistical results indicate that the ACQEA is superior to QEA from the view of quality of solutions when these two optimization algorithms perform the same functions from table 1. The results show that the ACQEA is more efficient in finding the global optimal solution and robustness than QEA. The standard deviation indicates that ACQEA has a good stability and widespread adaptability. In addition, we take the evolutionary results for function 5 based on ACQEA for example, although each sub-population is evolving independently, these four subpopulations will become synchronized toward convergence in the later iterative process. Here for function 5, their corresponding sub-populations can almost converge to their optimal solutions throughout the iteration cycle at the same time. As for function 5 in Figure 1, the optimal solutions in sub-population 1, 2, 3, The results also present the following three conclusions. Firstly, the new evolutionary strategies are effective for the adaptive collaborative quantum evolutionary algorithm. On the other hand, the elite individual in the constructing elite library just guide the selected sub-population instead of entire population toward the global optimum, which is enough to complete the optimize search and can improve the operating efficiency of the algorithm to a certain degree. Thirdly, Our ACQEA can use smaller populations to complete complex optimization problems with the help of coevolutionary mechanism and performs better than traditional QEA regardless the complexity of test functions.

Conclusions
An Adaptive Collaborative Quantum Evolutionary Algorithm is proposed in this paper. In ACQEA, the whole population is firstly divided into multiple subpopulations which complete the evolution process independently; and then makes full use of the characteristic information of each sub-population with the new evolutionary strategy to implement the evolution process. ACQEA is compared with existing QEA using the established test functions. The results of simulation experiments for ACQEA show that its convergence performance is superior to QEA; and ACQEA is more accurate and stable in finding the global value in the functions. In the future work, how to apply the algorithm to the more complex multi-objective optimization problems and adjust the parameters of this algorithm in order to ensure it can get the best performance need more research.