# Artificial Flora (AF) Optimization Algorithm
## 1 Introduction  
In science and engineering, there are cases in which a search for the optimal solution in a large and complex space is required [1]. Traditional optimization algorithms, such as [PERSON]'s method and the gradient descent method [2], can solve the simple and continuous differentiable function [3]. For complex, nonlinear, non-convex or discrete optimization problems, traditional optimization algorithms have a hard time finding a solution [4; 5]. Using a swarm intelligence algorithm, such as the particle swarm optimization (PSO) algorithm [6] and artificial bee colony (ABC) algorithm [7], can find a more satisfactory solution. A swarm intelligence optimization algorithm is based on the interaction and cooperation between individuals in a group of organisms [8; 9]. The behavior and intelligence of each individual is simple and limited, but the swarm will produce inestimable overall capacity by interaction and cooperation [10]. Every individual in the swarm intelligent algorithm must be processed artificially. The individuals do not have the volume and mass of the actual creatures, and the behavioral pattern is processed by humans in order to solve problems when necessary. The algorithm takes all the possible solution sets of the problem as the solution space. Then, it starts with a subset of possible solutions for the problem. After that, some operations are applied to this subset to create a new solution set. Gradually, the population will approach to the optimal solution or approximate optimal solution. In this evolutionary process, the algorithm does not need any information about the question to be solved, such as gradient, except for the objective function [11]. The optimal solution can be found whether the search space is continuously derivable or not. The swarm intelligence algorithm has characteristics of self-organization, robustness, coordination, simplicity, distribution and extensibility. Therefore, the swarm intelligence optimization algorithms are widely used in parameter estimation [12], automatic control [13], machine manufacturing [14], pattern recognition [15], transportation engineering [16], and so on. The most widely used intelligence algorithms include the genetic algorithm (GA) [17; 18], particle swarm optimization (PSO) algorithm [19], artificial bee colony (ABC) algorithm [20], ant colony optimization (ACO) [21], artificial fish swarm algorithm (AFSA) [22], firefly algorithm (FA) [23], Krill Herd algorithm (KHA) [24], and the flower pollination algorithm (FPA) [25]. In the 1960s, [PERSON] proposed the genetic algorithm (GA) [26]. GA is based on [PERSON]'s theory of evolution and [PERSON]'s genetic theory. GA initialize a set of solution, known as group, and every member of the group is a solution to the problem, called chromosomes. The main operation of GA is selection, crossover, and mutation operations. Crossover and mutation operations generate the next generation of chromosomes. It selects a certain number of individuals from the previous generation and current generations according to their fitness. They then continue to evolve until they converge to the best chromosome [27]. In [28], the Spatially Structured Genetic Algorithm (SSGA) is proposed. The populationin SSGA is spatially distributed with respect to some discrete topology. This gives a computationally cheap method of picking a level of tradeoff between having heterogeneous crossover and preservation of population diversity [29]. In order to realize the twin goals of maintaining diversity in the population and sustaining the convergence capacity of the GA, [PERSON] recommend the use of adaptive probabilities of crossover and mutation [30]. In 1995, [PERSON] and [PERSON] proposed the particle swarm optimization (PSO) algorithm [31]. The algorithm was inspired by the flight behavior of birds. Birds are lined up regularly during migration, and every bird changes position and direction continually and keeps a certain distance from the others.