# Artificial Flora (AF) Optimization Algorithm
## 1 Introduction
Each bird has its own best position, and the birds can adjust their speed and position according to individual and overall information to keep the individual flight optimal. The whole population remains optimal based on individual performance. The algorithm has the characteristics of being simple, highly efficient, and producing fast convergence, but for a complex multimodal problem, it is easy to get into a local optimal solution, and the search precision is low [32]. In order to prevent premature convergence of the PSO algorithm, [PERSON] a neighborhood operator to ensure the diversity of population [33]. [PERSON] introduced a sequential modification to the object function in the neighborhood of each local minimum found [34]. The particles are additionally repelled from these local minimums so that the global minimum will be found by the swarm. In [35], a dual-PSO system was proposed. This system can improve search efficiency. In 2005, [PERSON] proposed the artificial bee colony (ABC) algorithm based on the feeding behavior of bees [36]. This algorithm becomes a hot research topic because of its easy implementation, simple calculation, fewer control parameters, and robustness. The bee is a typical social insect, and the behavior of a single bee is extremely simple in the swarm. However, the whole bee colony shows complex intelligent behavior through the division and cooperation of the bees with different roles. However, the ABC algorithm has some disadvantages [37]: for example, its search speed is slow, and its population diversity will decrease when approaching the global optimal solution. It results in the local optimal. [PERSON] proposed a modified ABC algorithm for numerical optimization problems [38]. A set of benchmark problems are used to test its performance, and the result shows that the performance is improved. [PERSON] proposed an improved ABC algorithm to improve the global search ability of the ABC [39]. [PERSON] investigated an improved version of the ABC algorithm with mutation based on Levy probability distributions [40]. This paper proposed a new intelligent algorithm called the artificial flora (AF) algorithm. It was inspired by the reproduction and the migration of flora. A plant cannot move but can spread seeds to let the flora move to the most suitable environment. Original plants spread seeds in a certain way, and the propagation distance is actually learning from the previous original plants. Whether the seeds can survive or not is related to environmental fitness. If a seed, also called offspring plant, cannot adapt to the environment, it will die. If a seed survives, it will become original plants and spread seeds. By using the special behavior of plants, the artificial flora algorithm updates the solution with the migration of flora. The main contributions of this paper are given as follows:  
1. AF is multi-parent techniques, the movement in AF is related to the past two generation plants. So, it can balance more updating information. This can help algorithm avoid running into the local extremum. 2. AF algorithm selects the alive offspring plants as new original plants each iteration. It can take the local optimal position as the center to explore around space. It can converge to optimal point rapidly. 3. Original plants can spread seeds to any place within their propagation range. This guarantees the local search capability of the algorithm. The classical optimization problem is an important application of the AF algorithm. Function optimization is a direct way to verify intelligent algorithm performance. In this paper, we successfully apply it to unconstrained multivariate function optimization problems. We try to apply it to multi-objective, combinatorial, and more complex problems. In addition, a lot of practical problems, such as wireless sensor network optimization and parameter estimation, can be converted to optimization problems, and we can use AF to find a satisfactory solution. The rest of this paper is organized as follows.