Skip to main content

Dragonfly algorithm: a new meta-heuristic optimization technique for solving single-objective, discrete, and multi-objective problems

Abstract

A novel swarm intelligence optimization technique is proposed called dragonfly algorithm (DA). The main inspiration of the DA algorithm originates from the static and dynamic swarming behaviours of dragonflies in nature. Two essential phases of optimization, exploration and exploitation, are designed by modelling the social interaction of dragonflies in navigating, searching for foods, and avoiding enemies when swarming dynamically or statistically. The paper also considers the proposal of binary and multi-objective versions of DA called binary DA (BDA) and multi-objective DA (MODA), respectively. The proposed algorithms are benchmarked by several mathematical test functions and one real case study qualitatively and quantitatively. The results of DA and BDA prove that the proposed algorithms are able to improve the initial random population for a given problem, converge towards the global optimum, and provide very competitive results compared to other well-known algorithms in the literature. The results of MODA also show that this algorithm tends to find very accurate approximations of Pareto optimal solutions with high uniform distribution for multi-objective problems. The set of designs obtained for the submarine propeller design problem demonstrate the merits of MODA in solving challenging real problems with unknown true Pareto optimal front as well. Note that the source codes of the DA, BDA, and MODA algorithms are publicly available at http://www.alimirjalili.com/DA.html.

This is a preview of subscription content, access via your institution.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21

References

  1. Mirjalili S, Mirjalili SM, Lewis A (2014) Grey wolf optimizer. Adv Eng Softw 69:46–61

    Article  Google Scholar 

  2. Muro C, Escobedo R, Spector L, Coppinger R (2011) Wolf-pack (Canis lupus) hunting strategies emerge from simple rules in computational simulations. Behav Process 88:192–197

    Article  Google Scholar 

  3. Jakobsen PJ, Birkeland K, Johnsen GH (1994) Swarm location in zooplankton as an anti-predator defence mechanism. Anim Behav 47:175–178

    Article  Google Scholar 

  4. Higdon J, Corrsin S (1978) Induced drag of a bird flock. Am Nat 112(986):727–744

  5. Goss S, Aron S, Deneubourg J-L, Pasteels JM (1989) Self-organized shortcuts in the Argentine ant. Naturwissenschaften 76:579–581

    Article  Google Scholar 

  6. Beni G, Wang J (1993) Swarm intelligence in cellular robotic systems. In: Dario P, Sandini G, Aebischer P (eds) Robots and biological systems: towards a new bionics? NATO ASI series, vol 102. Springer, Berlin, Heidelberg, pp 703–712

  7. Bonabeau E, Dorigo M, Theraulaz G (1999) Swarm intelligence: from natural to artificial systems. Oxford University Press, Oxford

    MATH  Google Scholar 

  8. Dorigo M, Stützle T (2003) The ant colony optimization metaheuristic: algorithms, applications, and advances. In: Glover F, Kochenberger GA (eds) Handbook of metaheuristics. International series in operations research & management science, vol 57. Springer, USA, pp 250–285

  9. Dorigo M, Maniezzo V, Colorni A (1996) Ant system: optimization by a colony of cooperating agents. Syst Man Cybern Part B Cybern IEEE Trans 26:29–41

    Article  Google Scholar 

  10. Colorni A, Dorigo M, Maniezzo V (1991) Distributed optimization by ant colonies. In: Proceedings of the first European conference on artificial life, pp 134–142

  11. Eberhart RC, Kennedy J (1995) A new optimizer using particle swarm theory. In: Proceedings of the sixth international symposium on micro machine and human science, pp 39–43

  12. Eberhart RC, Shi Y (2001) Particle swarm optimization: developments, applications and resources. In: Proceedings of the 2001 congress on evolutionary computation, pp 81–86

  13. Karaboga D (2005) An idea based on honey bee swarm for numerical optimization. In: Technical report-tr06, Erciyes university, engineering faculty, computer engineering department

  14. Karaboga D, Basturk B (2007) A powerful and efficient algorithm for numerical function optimization: artificial bee colony (ABC) algorithm. J Global Optim 39:459–471

    MathSciNet  Article  MATH  Google Scholar 

  15. AlRashidi MR, El-Hawary ME (2009) A survey of particle swarm optimization applications in electric power systems. Evolut Comput IEEE Trans 13:913–918

    Article  Google Scholar 

  16. Wei Y, Qiqiang L (2004) Survey on particle swarm optimization algorithm. Eng Sci 5:87–94

    Google Scholar 

  17. Chandra Mohan B, Baskaran R (2012) A survey: ant colony optimization based recent research and implementation on several engineering domain. Expert Syst Appl 39:4618–4627

    Article  Google Scholar 

  18. Dorigo M, Stützle T (2010) Ant colony optimization: overview and recent advances. In: Gendreau M, Potvin J-Y (eds) Handbook of metaheuristics. International series in operations research & management science, vol 146. Springer, USA, pp 227–263

  19. Karaboga D, Gorkemli B, Ozturk C, Karaboga N (2014) A comprehensive survey: artificial bee colony (ABC) algorithm and applications. Artif Intell Rev 42:21–57

    Article  Google Scholar 

  20. Sonmez M (2011) Artificial Bee Colony algorithm for optimization of truss structures. Appl Soft Comput 11:2406–2418

    Article  Google Scholar 

  21. Wang G, Guo L, Wang H, Duan H, Liu L, Li J (2014) Incorporating mutation scheme into krill herd algorithm for global numerical optimization. Neural Comput Appl 24:853–871

    Article  Google Scholar 

  22. Wang G-G, Gandomi AH, Alavi AH (2014) Stud krill herd algorithm. Neurocomputing 128:363–370

    Article  Google Scholar 

  23. Wang G-G, Gandomi AH, Alavi AH (2014) An effective krill herd algorithm with migration operator in biogeography-based optimization. Appl Math Model 38:2454–2462

    MathSciNet  Article  Google Scholar 

  24. Wang G-G, Gandomi AH, Alavi AH, Hao G-S (2014) Hybrid krill herd algorithm with differential evolution for global numerical optimization. Neural Comput Appl 25:297–308

    Article  Google Scholar 

  25. Wang G-G, Gandomi AH, Zhao X, Chu HCE (2014) Hybridizing harmony search algorithm with cuckoo search for global numerical optimization. Soft Comput. doi:10.1007/s00500-014-1502-7

  26. Wang G-G, Guo L, Gandomi AH, Hao G-S, Wang H (2014) Chaotic krill herd algorithm. Inf Sci 274:17–34

    MathSciNet  Article  Google Scholar 

  27. Wang G-G, Lu M, Dong Y-Q, Zhao X-J (2015) Self-adaptive extreme learning machine. Neural Comput Appl. doi:10.1007/s00521-015-1874-3

  28. Mirjalili S (2015) The ant lion optimizer. Adv Eng Softw 83:80–98

  29. Mirjalili S, Mirjalili SM, Hatamlou A (2015) Multi-Verse Optimizer: a nature-inspired algorithm for global optimization. Neural Comput Appl. doi:10.1007/s00521-015-1870-7

  30. Wolpert DH, Macready WG (1997) No free lunch theorems for optimization. Evolut Comput IEEE Trans 1(1):67–82

    Article  Google Scholar 

  31. Thorp JH, Rogers DC (2014) Thorp and Covich’s freshwater invertebrates: ecology and general biology. Elsevier, Amsterdam

    Google Scholar 

  32. Wikelski M, Moskowitz D, Adelman JS, Cochran J, Wilcove DS, May ML (2006) Simple rules guide dragonfly migration. Biol Lett 2:325–329

    Article  Google Scholar 

  33. Russell RW, May ML, Soltesz KL, Fitzpatrick JW (1998) Massive swarm migrations of dragonflies (Odonata) in eastern North America. Am Midl Nat 140:325–342

    Article  Google Scholar 

  34. Reynolds CW (1987) Flocks, herds and schools: a distributed behavioral model. ACM SIGGRAPH Comput Gr 21:25–34

    Article  Google Scholar 

  35. Yang X-S (2010) Nature-inspired metaheuristic algorithms, 2nd edn. Luniver Press

  36. Cui Z, Shi Z (2009) Boid particle swarm optimisation. Int J Innov Comput Appl 2:77–85

    Article  Google Scholar 

  37. Kadrovach BA, Lamont GB (2002) A particle swarm model for swarm-based networked sensor systems. In: Proceedings of the 2002 ACM symposium on applied computing, pp 918–924

  38. Cui Z (2009) Alignment particle swarm optimization. In: Cognitive informatics, 2009. ICCI’09. 8th IEEE international conference on, pp 497–501

  39. Mirjalili S, Lewis A (2013) S-shaped versus V-shaped transfer functions for binary particle swarm optimization. Swarm Evolut Comput 9:1–14

    Article  Google Scholar 

  40. Saremi S, Mirjalili S, Lewis A (2014) How important is a transfer function in discrete heuristic algorithms. Neural Comput Appl:1–16

  41. Mirjalili S, Wang G-G, Coelho LDS (2014) Binary optimization using hybrid particle swarm optimization and gravitational search algorithm. Neural Comput Appl 25:1423–1435

    Article  Google Scholar 

  42. Mirjalili S, Lewis A (2015) Novel performance metrics for robust multi-objective optimization algorithms. Swarm Evolut Comput 21:1–23

    Article  Google Scholar 

  43. Coello CAC (2009) Evolutionary multi-objective optimization: some current research trends and topics that remain to be explored. Front Comput Sci China 3:18–30

    Article  Google Scholar 

  44. Ngatchou P, Zarei A, El-Sharkawi M (2005) Pareto multi objective optimization. In: Intelligent systems application to power systems, 2005. Proceedings of the 13th international conference on, pp 84–91

  45. Branke J, Kaußler T, Schmeck H (2001) Guidance in evolutionary multi-objective optimization. Adv Eng Softw 32:499–507

    Article  MATH  Google Scholar 

  46. Coello Coello CA, Lechuga MS (2002) MOPSO: A proposal for multiple objective particle swarm optimization. In: Evolutionary computation, 2002. CEC’02. Proceedings of the 2002 congress on, pp 1051–1056

  47. Coello CAC, Pulido GT, Lechuga MS (2004) Handling multiple objectives with particle swarm optimization. Evolut Comput IEEE Trans 8:256–279

    Article  Google Scholar 

  48. Yao X, Liu Y, Lin G (1999) Evolutionary programming made faster. Evolut Comput IEEE Trans 3:82–102

    Article  Google Scholar 

  49. Digalakis J, Margaritis K (2001) On benchmarking functions for genetic algorithms. Int J Comput Mathematics 77:481–506

    MathSciNet  Article  MATH  Google Scholar 

  50. Molga M, Smutnicki C (2005) Test functions for optimization needs. Test functions for optimization needs. http://www.robertmarks.org/Classes/ENGR5358/Papers/functions.pdf

  51. Yang X-S (2010) Test problems in optimization. arXiv preprint arXiv:1008.0549

  52. Liang J, Suganthan P, Deb K (2005) Novel composition test functions for numerical global optimization. In: Swarm intelligence symposium, 2005. SIS 2005. Proceedings 2005 IEEE, pp 68–75

  53. Suganthan PN, Hansen N, Liang JJ, Deb K, Chen Y, Auger A et al (2005) Problem definitions and evaluation criteria for the CEC 2005 special session on real-parameter optimization. In: KanGAL Report, vol 2005005

  54. Kennedy J, Eberhart R (1995) Particle swarm optimization. In: Neural networks, 1995. Proceedings, IEEE International conference on, pp 1942–1948

  55. John H (1992) Holland, adaptation in natural and artificial systems. MIT Press, Cambridge

    Google Scholar 

  56. Derrac J, García S, Molina D, Herrera F (2011) A practical tutorial on the use of nonparametric statistical tests as a methodology for comparing evolutionary and swarm intelligence algorithms. Swarm Evolut Comput 1:3–18

    Article  Google Scholar 

  57. van den Bergh F, Engelbrecht A (2006) A study of particle swarm optimization particle trajectories. Inf Sci 176:937–971

    MathSciNet  Article  MATH  Google Scholar 

  58. J. Kennedy J, Eberhart RC (1997) A discrete binary version of the particle swarm algorithm. In: Systems, man, and cybernetics, 1997. computational cybernetics and simulation, 1997 IEEE international conference on, pp 4104–4108

  59. Rashedi E, Nezamabadi-Pour H, Saryazdi S (2010) BGSA: binary gravitational search algorithm. Nat Comput 9:727–745

    MathSciNet  Article  MATH  Google Scholar 

  60. Zitzler E, Deb K, Thiele L (2000) Comparison of multiobjective evolutionary algorithms: empirical results. Evol Comput 8:173–195

    Article  Google Scholar 

  61. Sierra MR, Coello Coello CA (2005) Improving PSO-based multi-objective optimization using crowding, mutation and ∈-dominance. In: Coello Coello CA, Hernández Aguirre A, Zitzler E (eds) Evolutionary multi-criterion optimization. Lecture notes in computer science, vol 3410. Springer, Berlin, Heidelberg, pp 505–519

  62. Van Veldhuizen DA, Lamont GB (1998) Multiobjective evolutionary algorithm research: a history and analysis (Final Draft) TR-98-03

  63. Deb K, Pratap A, Agarwal S, Meyarivan T (2002) A fast and elitist multiobjective genetic algorithm: NSGA-II. Evolut Comput IEEE Trans 6:182–197

    Article  Google Scholar 

  64. Carlton J (2012) Marine propellers and propulsion. Butterworth-Heinemann, Oxford

    Google Scholar 

Download references

Acknowledgments

The author would like to thank Mehrdad Momeny for providing his outstanding dragonfly photo.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Seyedali Mirjalili.

Electronic supplementary material

Below is the link to the electronic supplementary material.

Supplementary material 1 (GIF 460 KB)

Appendices

Appendix 1: Single-objective test problems utilized in this work

See Tables 10, 11, 12.

Table 10 Unimodal benchmark functions
Table 11 Multimodal benchmark functions
Table 12 Composite benchmark functions

Appendix 2: Multi-objective test problems utilized in this work

ZDT1:

$${\text{Minimise}}:f_{1} \left( x \right) = x_{1}$$
(7.1)
$${\text{Minimise}}:f_{2} \left( x \right) = g\left( x \right) \times h\left( {f_{1} \left( x \right), g\left( x \right)} \right)$$
(7.2)
$${\text{Where}}:G\left( x \right) = 1 + \frac{9}{N - 1}\mathop \sum \limits_{i = 2}^{N} x_{i}$$
(7.3)
$$h\left( {f_{1} \left( x \right),g\left( x \right)} \right) = 1 - \sqrt {\frac{{f_{1} \left( x \right)}}{g\left( x \right)}} \quad 0 \le x_{i} \le 1, 1 \le i \le 30$$
(7.4)

ZDT2:

$${\text{Minimise}}:f_{1} \left( x \right) = x_{1}$$
(7.5)
$${\text{Minimise}}:f_{2} \left( x \right) = g\left( x \right) \times h\left( {f_{1} \left( x \right), g\left( x \right)} \right)$$
(7.6)
$${\text{Where}}:G\left( x \right) = 1 + \frac{9}{N - 1}\mathop \sum \limits_{i = 2}^{N} x_{i}$$
(7.7)
$$h\left( {f_{1} \left( x \right),g\left( x \right)} \right) = 1 - \left( {\frac{{f_{1} \left( x \right)}}{g\left( x \right)}} \right)^{2} \quad 0 \le x_{i} \le 1, 1 \le i \le 30$$
(7.8)

ZDT3:

$${\text{Minimise}}:f_{1} \left( x \right) = x_{1}$$
(7.9)
$${\text{Minimise}}:f_{2} \left( x \right) = g\left( x \right) \times h\left( {f_{1} \left( x \right), g\left( x \right)} \right)$$
(7.10)
$${\text{Where}}:G\left( x \right) = 1 + \frac{9}{29}\mathop \sum \limits_{i = 2}^{N} x_{i}$$
(7.11)
$$h\left( {f_{1} \left( x \right),g\left( x \right)} \right) = 1 - \sqrt {\frac{{f_{1} \left( x \right)}}{g\left( x \right)}} - \left( {\frac{{f_{1} \left( x \right)}}{g\left( x \right)}} \right)\text{sin}\left( {10\pi f_{1} \left( x \right)} \right)\quad 0 \le x_{i} \le 1, 1 \le i \le 30$$
(7.12)

ZDT1 with linear PF:

$${\text{Minimise}}:f_{1} \left( x \right) = x_{1}$$
(7.13)
$${\text{Minimise}}:f_{2} \left( x \right) = g\left( x \right) \times h\left( {f_{1} \left( x \right), g\left( x \right)} \right)$$
(7.14)
$${\text{Where}}:G\left( x \right) = 1 + \frac{9}{N - 1}\mathop \sum \limits_{i = 2}^{N} x_{i}$$
(7.15)
$$h\left( {f_{1} \left( x \right),g\left( x \right)} \right) = 1 - \frac{{f_{1} \left( x \right)}}{g\left( x \right)}\quad 0 \le x_{i} \le 1, 1 \le i \le 30$$
(7.16)

ZDT2 with three objectives:

$${\text{Minimise}}:f_{1} \left( x \right) = x_{1}$$
(7.17)
$${\text{Minimise}}:f_{2} \left( x \right) = x_{2}$$
(7.18)
$${\text{Minimise}}:f_{3} \left( x \right) = g\left( x \right) \times h\left( {f_{1} \left( x \right), g\left( x \right)} \right) \times h\left( {f_{2} \left( x \right), g\left( x \right)} \right)$$
(7.19)
$${\text{Where}}:G\left( x \right) = 1 + \frac{9}{N - 1}\mathop \sum \limits_{i = 3}^{N} x_{i}$$
(7.20)
$$h\left( {f_{1} \left( x \right),g\left( x \right)} \right) = 1 - \left( {\frac{{f_{1} \left( x \right)}}{g\left( x \right)}} \right)^{2} \quad 0 \le x_{i} \le 1, 1 \le i \le 30$$
(7.21)

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Mirjalili, S. Dragonfly algorithm: a new meta-heuristic optimization technique for solving single-objective, discrete, and multi-objective problems. Neural Comput & Applic 27, 1053–1073 (2016). https://doi.org/10.1007/s00521-015-1920-1

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00521-015-1920-1

Keywords

  • Optimization
  • Multi-objective optimization
  • Constrained optimization
  • Binary optimization
  • Benchmark
  • Swarm intelligence
  • Evolutionary algorithms
  • Particle swarm optimization
  • Genetic algorithm