Flower Pollination Algorithm (FPA): A Novel Method Motivated from the Behavior of Flowers for Optimal Solution

1. Introduction

      Flower Pollination Algorithm (FPA) is a nature inspired population based algorithm proposed by Xin-She Yang (2012). The main objective of the flower pollination is to produce the optimal reproduction of plants by surviving the fittest flowers in the flowering plants. In fact this is an optimization process of plants in species. FPA is a swarm-based optimization technique that has attracted the attention of many researchers in several optimization fields due to its impressive characteristics [1]. FPA has very fewer parameters and has shown a robust performance when applied in various optimization problems. In addition, FPA is a flexible, adaptable, scalable, and simple optimization method. Therefore, FPA, compared with other metaheuristic algorithms, shows good results for solving various real-life optimization problems from different domains such as electrical and power system, signal and image processing, wireless sensor networking, clustering and classification, global function optimization, computer gaming, structural and mechanical engineering optimization, and many others. FPA is a population-based optimization technique, initiated with a set of provisional or random solutions [2]. At each iteration, either one of the two operators is carried out for each individual population member: local pollination operator and global pollination operator. In a local pollination operator, the decision variables of the current solution attract the other two randomly selected solutions from two population members. In a global pollination operator, the decision variables of the current solution attract to the globally best solution found. The switch operator is responsible for exchanging the improvement loop either locally or globally. This process repeats until a predefined stopping criterion is met [3]. The procedural optimization framework of FPA at its initial version has undergone modification or hybridization to enhance its performance with relation to different types of problem landscapes. FPA is investigated to determine the optimal loading of generators in power systems. Simulations results for small and large scale power system considering the valve loading effect are implemented to indicate the robustness of FPA.

2. Characteristics of Flower Pollination Algorithm (FPA)

      There are over a quarter of a million types of flowering plants in Nature, 80% of them are flowering species. The main purpose of a flower is ultimately reproduction via pollination [4]. Flower pollination process is associated with the transfer of pollen by using pollinators such as insects, birds, bats…etc.

Fig1: Characteristic of Flower Pollination Algorithm

There are two major processes for transferring the pollen [5]

  • Biotic and cross pollination process
  • Abiotic and self pollination process
  • Flower constancy

2.1. Biotic and cross pollination process

     Biotic pollination represents 90% of flowering plants, while 10% of pollination takes from abiotic process. In the biotic pollination, pollen is transferred from one flower in different plant by pollination such as insects, birds, bats …etc. Biotic, cross-pollination may occur at long distance and they can consider as a global pollination process with pollinators performing Levy flights. Cross pollination is the transfer of pollen grains from the anther of one flower [6].

Fig2: Cross Pollination

2.2. Abiotic and self pollination process

     On the other hand, abiotic or self pollination process is a fertilization of one flower from pollen of the same flower of different flower of the same plant. In this type of pollination, wind and diffusion in water help pollination of such flowering plants. Abiotic and self pollination process is considered as local pollination [7]. Pollen from the anther is transferred to the stigma.

Fig3: Self Pollination

2.3. Flower constancy

     Sometimes, it is advantageous for both plants and pollinators such as hummingbirds to form a partnership to save energy with guaranteed success. Consequently, flower constancy has been evolved [8]. In this case, pollinators only visit a fixed set of flower types without wasting energy for exploring new flower types, while the flower plants evolve to provide sufficient nectar reward to pollinators so as to encourage frequent visits by pollinators and thus maximize their reproduction success.

     The above characteristics have been used to design an optimization algorithm, called flower pollination algorithm (FPA) [9].

3. Flower Pollination Algorithm (FPA)

     Flower constancy and pollinator behavior as the following rules:

  • Biotic and cross-pollination is considered as global pollination process with pollen-carrying pollinators performing Levy flights.
  • Abiotic and self-pollination are considered as local pollination [10].
  • Flower constancy can be considered as the reproduction probability is proportional to the similarity of two flowers involved.
  • Local pollination and global pollination is controlled by a switch probability p ∈ [0, 1]. Due to the physical proximity and other factors such as wind, local pollination can have a significant fraction p in the overall pollination activities [11].

     Obviously, in reality, each plant can have multiple flowers, and each flower patch often release millions and even billions of pollen gametes. However, for simplicity, we also assume that each plant only has one flower, and each flower only produce one pollen gamete. Thus, there is no need to distinguish a pollen gamete, a flower, a plant or solution to a problem. From the above discussions and the idealized characteristics, we can design a flower-based on algorithm, namely, flower pollination algorithm (FPA). There are two key steps in this algorithm; they are global pollination and local pollination [12].

Fig4: Flower Pollination Algorithm

3.1. Basic Steps for Flower Pollination Algorithm (FPA)

  • Input population
  • Find the current best solution
  • Global pollination using Levy Flight
  • Evaluate new solution
  • Output the Best solution

3.1.1. Input Population

     The main purpose of a flower is ultimately reproduction via pollination. Flower pollination is typically correlating with the transfer of pollen, which often associated with pollinators such as birds and insects. Indeed, some flowers and insects have a very specialized flower-pollinator partnership, as some flowers can only attract a specific species of insect or bird for effective pollination [13].

3.1.2. Find the current best solution

     Pollination appears in two major forms: abiotic and biotic. About 90% of flowering plants depend on the biotic pollination process, in which the pollen is transferred by pollinators. About 10% of pollination follows abiotic form that does not require any pollinators [14]. Wind and diffusion help in the pollination process of such flowering plants.

3.1.3. Global pollination using Levy Flight

     Cross-pollination, or allogamy, means pollination can occur from pollen of a flower of a different plant, while self-pollination is the fertilization of one flower, such as peach flowers, from pollen of the same flower or different flowers of the same plant, which often occurs when there is no reliable pollinator available. Biotic, cross-pollination may occur at long distance, and the pollinators such as bees, bats, birds and flies can fly a long distance, thus they can considered as the global pollination [15]. In addition, bees and birds may behave as Levy flight behavior, with jump or fly distance steps obeying a Levy distribution.

3.1.4. Evaluate new solution

      To generate the updating formulas, the above rules have to be converted into proper updating equations. For example at the global pollination step, the pollinators such as insects carry the flower pollen gametes, so the pollen can travel over a long distance because of the ability of these insects to fly and move in much longer ranges.

3.1.5. Output the Best solution

      It is clear that the fuel cost obtained by the proposed FPA is better than other algorithms. Also, lists the statistical comparison between FPA and different algorithms reported in terms of the best, mean, worst cost and computational (CPU) time through 50 trials. Best output solutions are calculated [16].

3.2. Flow Chart of FPA

Fig5: Flow Chart of Flower Pollination Algorithm

4. Example for FPA4.1. Flower Pollination Algorithm (Simply Flower Algorithm)

5. Numerical Methods of FPA

     Numerical methods of Flower Pollination Algorithm (FPA) is given by [17],

6. Applications of Flower Pollination Algorithm

  • Power and energy
  • Signal and image processing [18]
  • Structural design
  • Clustering and feature selection
  • Computer gaming [19]
  • Wireless sensor networking

Fig6: Applications of Flower Pollination Algorithm

7. Advantages of Flower Pollination Algorithm

  • FPA have been developed by modification, hybridization, and parameter-tuning to cope with the complex nature of optimization problems [20].
  • Flower algorithm is used to solve a nonlinear design benchmark, which shows the convergence rate is almost exponential.
  • The flower algorithm is more efficient than both GA and PSO.
  • The Flower Pollination Algorithm is recommended as the fastest and the most accurate optimization technique for the optimal parameters extraction process [21].
  • The metaheuristic algorithms can be used as an alternative tool to find near-optimal solutions. Thus, inventing new metaheuristic techniques and enhancing the current algorithms is necessary.
  • Flower Pollination Algorithm (FPA) is used to solve ELD and CEED problems in power systems [22].


[1] Abdel-Basset, M. and Shawky, L. (2018). Flower pollination algorithm: a comprehensive review. Artificial Intelligence Review.

[2] Nabil, E. (2016). A Modified Flower Pollination Algorithm for Global Optimization. Expert Systems with Applications, 57, pp.192-203.

[13] Alam, D., Yousri, D. and Eteiba, M. (2015). Flower Pollination Algorithm based solar PV parameter estimation. Energy Conversion and Management, 101, pp.410-422.

[4] Yang, X., Karamanoglu, M. and He, X. (2013). Multi-objective Flower Algorithm for Optimization. Procedia Computer Science, 18, pp.861-868.

[5] Bekdaş, G., Nigdeli, S. and Yang, X. (2015). Sizing optimization of truss structures using flower pollination algorithm. Applied Soft Computing, 37, pp.322-331.

[6] Abdelaziz, A., Ali, E. and Abd Elazim, S. (2016). Combined economic and emission dispatch solution using Flower Pollination Algorithm. International Journal of Electrical Power & Energy Systems, 80, pp.264-274.

[7] Sakib, N., Wasi Ul Kabir, M., Subbir Rahman, M. and Shafiul Alam, M. (2014). A Comparative Study of Flower Pollination Algorithm and Bat Algorithm on Continuous Optimization Problems. International Journal of Applied Information Systems, 7(9), pp.20-19.

[8] Zhang, W., Qu, Z., Zhang, K., Mao, W., Ma, Y. and Fan, X. (2017). A combined model based on CEEMDAN and modified flower pollination algorithm for wind speed forecasting. Energy Conversion and Management, 136, pp.439-451.

[9] Rodrigues, D., Silva, G., Papa, J., Marana, A. and Yang, X. (2016). EEG-based person identification through Binary Flower Pollination Algorithm. Expert Systems with Applications, 62, pp.81-90.

[10] Wang, R., Zhou, Y., Qiao, S. and Huang, K. (2016). Flower Pollination Algorithm with Bee Pollinator for cluster analysis. Information Processing Letters, 116(1), pp.1-14.

[11] AbdEl-Fattah Sayed, S., Nabil, E. and Badr, A. (2016). A binary clonal flower pollination algorithm for feature selection. Pattern Recognition Letters, 77, pp.21-27.

[12] Abdelaziz, A., Ali, E. and Abd Elazim, S. (2016). Flower Pollination Algorithm and Loss Sensitivity Factors for optimal sizing and placement of capacitors in radial distribution systems. International Journal of Electrical Power & Energy Systems, 78, pp.207-214.

[13] Draa, A. (2015). On the performances of the flower pollination algorithm – Qualitative and quantitative analyses. Applied Soft Computing, 34, pp.349-371.

[14] Abdelaziz, A., Ali, E. and Abd Elazim, S. (2016). Optimal sizing and locations of capacitors in radial distribution systems via flower pollination optimization algorithm and power loss index. Engineering Science and Technology, an International Journal, 19(1), pp.610-618.

[15] Ram, J., Babu, T., Dragicevic, T. and Rajasekar, N. (2017). A new hybrid bee pollinator flower pollination algorithm for solar PV parameter estimation. Energy Conversion and Management, 135, pp.463-476.

[16] Abdelaziz, A., Ali, E. and Abd Elazim, S. (2016). Implementation of flower pollination algorithm for solving economic load dispatch and combined economic emission dispatch problems in power systems. Energy, 101, pp.506-518.

[17] Dash, P., Saikia, L. and Sinha, N. (2016). Flower Pollination Algorithm Optimized PI-PD Cascade Controller in Automatic Generation Control of a Multi-area Power System. International Journal of Electrical Power & Energy Systems, 82, pp.19-28.

[18] Salgotra, R. and Singh, U. (2017). Application of mutation operators to flower pollination algorithm. Expert Systems with Applications, 79, pp.112-129.

[19] Xu, S. and Wang, Y. (2017). Parameter estimation of photovoltaic modules using a hybrid flower pollination algorithm. Energy Conversion and Management, 144, pp.53-68.

[20] Ramadas, M., Pant, M., Abraham, A. and Kumar, S. (2016). ssFPA/DE: an efficient hybrid differential evolution–flower pollination algorithm based approach. International Journal of System Assurance Engineering and Management, 9(1), pp.216-229.

[21] Jagatheesan, K., Anand, B., Samanta, S., Dey, N., Santhi, V., Ashour, A. and Balas, V. (2016). Application of flower pollination algorithm in load frequency control of multi-area interconnected power system with nonlinearity. Neural Computing and Applications, 28(S1), pp.475-488.

[22] Oda, E., Abdelsalam, A., Abdel-Wahab, M. and El-Saadawi, M. (2017). Distributed generations planning using flower pollination algorithm for enhancing distribution system voltage stability. Ain Shams Engineering Journal, 8(4), pp.593-603.

  1. I’ve been searching for such algorithms with good graphical representation. Thank you for your help…

  2. In Genetic Algorithm (GA), chromosomes denote solution vectors and genes inside each chromosome denote design variables. Here in Flower Pollination Algorithm, a Flower or a Pollen or a Plant denotes solution vector. But what term is used for design variables in Flower Pollination Algorithm? Can we say that pollen grains denote design variables?

      1. Dear Decoderz you didn’t say something about my question. Have you understood my question?

Leave a Reply

%d bloggers like this: