Dove swarm optimization algorithm

Popular methods to deal with computation become strenuous due to the optimization demands that develop more complex nowadays. This research aims to propose a new optimal algorithm, Dove Swarm Optimization (DSO), that adopts the foraging behaviors of doves to have six benchmark functions expressing DSO performance. By considering competition for forage, DSO is designed to ensure the most satisfied dove as well as optimization, then compared with 15 popular optimization algorithms using random initial and lattice initial values. The results reveal that DSO performs the best in time efficiency and well in both convergences for these functions in a reasonable region from 1 to 3 seconds, and population diversity for the initialization method from less than 1 second to 9 seconds dependent on the population size. As a result, DSO is indeed a time-efficient and effective algorithm in solving optimization problems.


I. INTRODUCTION
Optimization is a method to generate the optimal solution from all of the possible solutions. Over the decades, the optimization methods have been evolved. The researcher have figured out optimization to discover the most suitable possible solutions by using various mechanisms. Optimization algorithms have become a useful tool in numerous research domains. In the engineering domains, it is prevalent to utilize metaheuristic algorithms such as; Genetic algorithm (GA). GA was developed based on the theory of Darwin. The swarm intelligence (SI) algorithm is typically defined as "nature-inspired algorithms that concern the collective, emerging behavior of multiple, interacting agents that follow some simple rules". It is based on social behavior from swarms (e.g. troops) of the organism in nature. The SI advantages are to explore creatures' working mechanism [1][2][3][4][5]. They are relevant because of their simplicity of inspiration, flexibility, derivative-free mechanism, and local optimum avoidance such as Particle Swarm Optimization (PSO), Ant Colony Optimizer (ACO), and Artificial Bee Colony (ABC) [9][10][11][12][13][14][15]. They may fit better in particular demands [16,17]. Moreover, although hardware techniques have developed rapidly to deal with computation, the optimization demands become more complex nowadays. It is always a strong desire to develop an SI algorithm designed for optimization problem more efficiently. By considering competition for forage, DSO is designed to ensure the most satisfied dove as well as optimization. As a result, the research objective is to develop the dove swarm optimization (DSO) algorithm using SI concepts in solving optimization problems.

II. OPTIMIZATION ALGORITHMS
The optimal algorithms can be categorized into two classes by mathematics. One is the derivative-based approach (e.g., steepest descent method and Newton's method etc.), and the other is the derivative-free approach (e.g., GAs, simulated annealing, evolutionary programming, evolutionary strategies, and swarm intelligence such as ACO and PSO etc. [9][10][11][12][13][14][15]). The derivative-based algorithm is also a gradient-based algorithm that can determine the search direction according to the derivative information of the objective function. The derivative-free algorithm is an iterative and random search algorithm that uses a set of operators or mechanisms to find the global optimal solution in the large solution space. The basic concepts of these two optimizations and popular algorithms are shown in the following sections.

Derivative-Based Optimization
The derivative-based algorithm is a gradient-based algorithm that can determine the search direction according to the derivative information of its objective function(s). There are two most popular derivative-based optimal algorithms: the steepest descent method and Newton's method. These two algorithms are the foundation of most gradient-based algorithms. Instrumental algorithms can be regarded as a form of compromise between steepest descent method and Newton's methods. The derivative-based algorithm is usually applied to optimizing nonlinear system models, allowing such models to play a prominent role in the framework of soft computing. In fact, it is one of the major algorithms used for neural network learning. In addition, the least-squares method is another widely employed algorithm because the sum of squared errors is chosen as the object function to be minimized for empirical cases [18][19][20][21][22][23].

Derivative-Free Optimization
The derivative-free algorithm is an iterative and random search algorithm using a set of operators or mechanisms to find the global solution in the large solution space. Common characteristics shared by these methods are derivative freeness, intuitive guidelines, slowness, flexibility, randomness, analytic opacity, and iterative nature. There are popular derivative-free optimization methods: evolutionary computation (EC), simulated annealing (SA), and random search method. The EC methods are included in Genetic algorithms (GA), Evolutionary Programming (EP), Evolution Strategies (ES), and Genetic Programming (GP). Of those four in EC methods, majority have been done with GA that is typical derivative-free stochastic optimization methods based on the concepts of natural selection and evolutionary processes. As a general-purpose optimization tool, GA has been moving out of academia and finding significant applications in many other venues. Numerous researchers pay attention to both EC and SA due to their optimization capabilities for both continuous and discrete optimization problems. Both of them are motivated by socalled nature's wisdom: EC is loosely based on the concepts of natural selection and evolution while SA originated in the annealing processes found in thermo-dynamics and metallurgy. Random search is primarily for continuous optimization problems and it is typically the simplest and most intuitive optimization scheme. Although the concept and implementation of random search is simpler than those of EC and SA, it cannot be inferred that EC and SA outperform for all problems all the time. In general, one would not expect any single technique to outperform all the others in a given application.

Swarm Intelligence
The swarm intelligence is also a popular derivative-free optimization method recently. It usually adopts a population of simple agents based on social-psychological to find the optimal solution. Many properties of social insect (or animals) collective behaviors have attracted a great amount of attention from researchers. Social insects have inspired us with a powerful concept to create decentralized systems of simple interacting, and often mobile, agents (e.g., ants, bees, birds). A rich source of mechanisms in social insect collective behaviors may serve as metaphors for designing the so-called swarm-intelligence-based systems [18][19][20][21][22][23].
Swarm intelligence is the emergent collective intelligence of groups of simple agents which communicate directly or indirectly with each other, and which collectively carry out distributed problem solving. There are swarm intelligence algorithms for optimization such as ACO, PSO, and glowworm swarm optimization (GSO) etc. The Study regarding bird flocking and fish schooling was already a research topic for social psychology in the 1930s. An influential simulation of bird flocking was proposed where the study assumed that flocking birds were attributed to the following three local forces: collision avoidance, velocity matching, and flocking centering. Additionally, a similar idea about bird flocking was also introduced at about the same time. A rich source of mechanisms in bird flocking and fish schooling may serve as metaphors for designing computational systems. Different computational systems are inspired by different subsets of the available metaphors [24].

III. DOVE SWARM OPTIMIZATION ALGORITHM
People easily observe that doves forage at plazas where there are crumbs around and each dove searches crumbs. Some doves may be satisfied but not for all. One may observe that unsatisfied doves fly forward to spots for more crumbs. Gradually, we can see that fed doves can occupy spots with most crumbs. The doves' foraging behavior has motivated ones to propose a novel optimal algorithm. In this method, the optimization objective function is ( ). Each data pattern, , in a data set is regarded as a position with crumbs and the amount of crumbs in these place, ,has ( ) crumbs. The best solution means where it is the place with the most crumbs. Figure 1 demonstrates the flowchart for the DSO algorithm. VOLUME XX, 2018 3

FIGURE 1. Flowchart of DSO
Step1: Decide the number of doves and then deploy them on the solution space. Assume that the number of doves is pre-specified to be N. These doves can be randomly distributed on the space; however, we suggest deploying them uniformly on a rectangular region. Step2: Set the number of epochs, e=0 and set the degree of satiety, for dove d, d = 1,…, N. The initialization of the position vector ⊂ of dove d can be done in two ways. The simplest way is to randomly initialize around the solution space. The other way is to initialize lattice initialized method. The steps are shown as follows: Two efficient weight initialization schemes were proposed to initialize the weight vectors to accelerate the training process for constructing a topologically ordered feature map. Based on the initialization scheme, we propose an initialization method especially suitable for the algorithm. Let the smallest hyperrectangle for the parameter space, which contains the valid values of all the parameters, be denoted as [ 1 , 1 ],…, [ , ] where and represent the low bound and the up bound of the a-dimension in the solution space. The basic idea of the proposed initialization method is to squeeze the n-dimensional hyper-rectangle into a 2-dimensional plane so a twodimensional net can effectively cover the solution space. For the clarity purpose, we use i and j to index the rectangular cells from 1 to A × B. The detail steps are as follows: Step 2-1. Initialization of the cells on the four corners: The weight vectors of the four neurons on the corners of the network are initialized as (1).
Step 2-2. Initialization of the cells on the four edges: We initialize the cells' value on the four edges according to (2): Step 2-3. Initialization of the remaining cells: The weight vectors of the four neurons on the corners of the network are initialized. We initialize the remaining neurons from top to bottom and from left to right. The pseudo-code description of the initialization method for the remaining neurons is given as follows.

Begin
For j from 2 to B- End; End; End; We choice different sizes and evaluate the result. In order to evaluate the training result, we count winner numbers of all neurons and the difference value. The initial value of learning rate is set to 0.1, and the decrease rate of the learning rate is as follows.
) 100 where t is the iterative number, and 0 is the initial learning rate.
Step3: Compute the all doves' fitness function ( ), j = 1,..,N at epoch as a total number of the crumbs in the position of the d th dove.
Step4: Locate the dove nearest to the largest amount of crumbs using the maximum criterion at epoch e: Step5: Update each dove's satiety degree by using the following equation: Step6: Select the most satisfied dove, , with the highest degree of satiety using following maximum criterion: The dove, ds , selected by (7) is the dove which presents the best foraging performance and it is the one which deserves to be imitated by other doves in the flock.
Step7: Update each dove's position vector using following maximum criterion: The parameters, η , is the learning rate for updating the dove position vector, respectively. Detailed descriptions of the updating Equations (8)-(10) are given in next step.
Step8: Go to step3 and increase the number of epochs by one (i.e., e=e+1) until the terminate condition is met. The terminate condition is as follows.
The dove swarm optimization algorithm has the order of complexity, ( ) where is the number of data points in the data set, is the number of doves, and is the number of epochs.
If the optimization is the minimum criterion that it's the best solution to find the minimum ( ) , then (5) and (6) can be respectively change to (12) and (13). = arg min{ ( )}, = 1, … , For easier understanding, we interpret the updating rules given in Equations (8)-(10) as follows: 1. An individual is influenced by the success of the best individual in the flock and tries to imitate the behavior of the best individual. That is, doves move toward the dove with the highest degree of satiety to find more food. This social learning is simulated by updating the position vector to be more like the position vector of the dove with the highest degree of satiety . (i.e., +1 = + ( − )).

2.
When a dove is with a higher degree of satiety, it is prone to become conservative and would hesitate to change its present foraging policy. On the contrary, when a dove is with a lower degree of satiety it would probably have a strong desire to change its present foraging policy and be more willing to imitate the behavior of the best individual. This social influence is simulated by making the adjustment proportional to the value of the first term on the right -hand-side of (9). (i.e., ( − )).
3. Basically, social impact gradually decays as it spreads out; therefore, the degree of impact is inversely proportional to the distance between the dove and the best dove in the flock. This kind of social impact is simulated by making the adjustment amount proportional to the value of the third term on the right-hand-side of (9) (i.e.,

IV. RESULT AND RULES OF AUDITING STANDARDS
For the experiments, assume that the population size is preset to 100 for all algorithms including of GA, and PSO algorithms. The maximum generations are pre-set to 100, either. For all the simulations, the parameters for all algorithms remain the same. The settings are as follows: In the GA, each variable was represented by 16 bits and the crossover probability and the mutation probability are set to 0.75 and 0.05, respectively. In PSO, the maximum velocity is set to 10 and the inertial weight decreased linearly from 0.9 to 0.4. The parameters for the proposed DSO algorithm are set λ=0.9, and η=0.18~0.375. It is necessary for new developed optimization algorithms to be evaluated using benchmark/test functions. There are numerous functions available where some are recommended including De Jong f4, Rastrigin, Giunta, Griewank, Ackley, and Rosenbrock functions [25]. This study adopts these six benchmark functions to evaluate DSO, and the results of DSO and linear mapping methods. They are expressed in mathematical way as follows [26][27][28][29] (19) The global minimum of Giunta is near 0.9, and all others is zero. For the comparison purpose, we also utilize the GA, the PSO algorithm, and some other 15 existing popular methods such as SOC 1 [30,31], SOC 2 [30,31], DSPSO [32][33][34], FAPSO 1, FAPSO 2, and arPSO [32][33][34], SFS [35], MCS [35,36], GSA [35,37], ABC [35,38], DHS [39], CKH [40], MBO [41], IHS [40], and HS [40] to test these six functions. The results are in Tables 1-6.   TABLE 1  THE PERFORMANCE COMPARISON OF THE DE JONE F4 FUNCTIONS   TABLE 2  THE PERFORMANCE COMPARISON OF THE RASTRIGIN FUNCTIONS   TABLE 3  THE PERFORMANCE COMPARISON OF THE GIUNTA FUNCTIONS   TABLE 4  THE PERFORMANCE COMPARISON OF THE GRIEWANK FUNCTIONS   TABLE 5  THE PERFORMANCE COMPARISON OF THE ACKLEY FUNCTIONS   TABLE 6  THE PERFORMANCE COMPARISON OF THE ROSENBROCK FUNCTIONS   In Tables 1-6, we tabulate the comparison of the simulation results of the proposed DSO algorithm with others. The mean column and the standard deviation column represent the mean and the standard deviation of the best solutions of 10 runs. The comparison of algorithms on the computational time as shown in the last column. All these five optimal algorithms were run on an Intel(R) Core(TM) i7 2.93GHz computer with 4 GB RAM under Microsoft Windows 7 operating system. For the overall results compared in the tables, DSO outruns GA and PSO. Although the standard deviation of DSO's results is slightly larger than that of PSO's due to initial input values, we employ the lattice initial method in order to resolve it shown in Table 7. There is a comparison for the convergence performance among functions including De Jone f4, Rastrigin, Giunta, Griewank, Ackley, and Rosenbrock. The convergence for these functions fall into a reasonable region from 1 to 3 seconds. The results yielded from DSO outperform that from PSO. DSO is an efficient and effective algorithm in solving optimization problems. Table 8 demonstrates comparative experiments of population diversity for the initialization method. The results all fall in a reasonable region from less than 1 second to 9 seconds dependent on the population size.
The strength for the proposed algorithm relative to wellestablished algorithms described in tables 1-6 mainly lie on time required to yield the results, which is the most efficient. This is a significant advantage compared to other algorithms if dealing with complex demands. Problem demands gradually become complicated nowadays due to multiaspect considerations in reality. Time-efficiency usually implies better capability in dealing with higher dimensional problems. Nevertheless, achieving time efficiency may cost a slight gap to the optimization. Tables 1-6 demonstrate this phenomenon where DSO still yields one of the best solutions. Although it is typically a trade-off between optimization and time-efficiency, the proposed algorithm performs well for both.

V. CONCLUSION
In this study, we proposed a novel optimal algorithm, DSO, based on the swarm intelligence concept by observing foraging behaviors at doves. We evaluate the proposed algorithm by six standard benchmarks and compare with 15 existing algorithms using random initial value and lattice initial value. In random initial, the result shows that DSO significantly outruns GA in finding solutions and computing time, and so it does to PSO and others slightly. In lattice initial condition, DSO performs much better than PSO and others in both finding solutions and computing time. As a result, DSO is an efficient and effective algorithm in solving optimization problems. The proposed algorithm may have varieties for future work. It can be applied to most optimization problems in science and social science fields such as commination, qualifying, quantifying, costing, scheduling, resource allocating, predicting, etc. its accuracy and efficiency benefits industries in both academic and practical aspects.