EvoloPy: An Open-source Nature-inspired Optimization Framework in Python

Hossam Faris, Ibrahim Aljarah, Seyedali Mirjalili, Pedro A. Castillo, Juan J. Merelo


EvoloPy is an open source and cross-platform Python framework that implements a wide range of classical and recent nature-inspired metaheuristic algorithms. The goal of this framework is to facilitate the use of metaheuristic algorithms by non-specialists coming from different domains. With a simple interface and minimal dependencies, it is easier for researchers and practitioners to utilize EvoloPy for optimizing and benchmarking their own defined problems using the most powerful metaheuristic optimizers in the literature. This framework facilitates designing new algorithms or improving, hybridizing and analyzing the current ones. The source code of EvoloPy is publicly available at GitHub (https://github.com/7ossam81/EvoloPy).


  1. Beyer, H.-G. and Schwefel, H.-P. (2002). Evolution strategies - a comprehensive introduction. Natural Computing, 1(1):3-52.
  2. Cahon, S., Melab, N., and Talbi, E.-G. (2004). Paradiseo: A framework for the reusable design of parallel and distributed metaheuristics. Journal of Heuristics, 10(3):357-380.
  3. Durillo, J. J. and Nebro, A. J. (2011). jMetal: A Java framework for multi-objective optimization. Advances in Engineering Software, 42:760-771.
  4. Fortin, F.-A., De Rainville, F.-M., Gardner, M.-A., Parizeau, M., and Gagné, C. (2012). DEAP: Evolutionary algorithms made easy. Journal of Machine Learning Research, 13:2171-2175.
  5. Hartmut Pohlheim (2006). Geatbx - the genetic and evolutionary algorithm toolbox for matlab.
  6. Ho, Y.-C. and Pepyne, D. L. (2002). Simple explanation of the no-free-lunch theorem and its implications. Journal of optimization theory and applications, 115(3):549-570.
  7. Holland, J. (1992). Genetic algorithms. Scientific American , pages 66-72.
  8. Humeau, J., Liefooghe, A., Talbi, E.-G., and Verel, S. (2013). ParadisEO-MO: From Fitness Landscape Analysis to Efficient Local Search Algorithms. Research Report RR-7871, INRIA.
  9. Kennedy, J. and Eberhart, R. (1995). Particle swarm optimization. In Neural Networks, 1995. Proceedings., IEEE International Conference on, volume 4, pages 1942-1948 vol.4.
  10. Koros?ec, P. and S?ilc, J. (2009). A distributed ant-based algorithm for numerical optimization. In Proceedings of the 2009 workshop on Bio-inspired algorithms for distributed systems - BADS 09. Association for Computing Machinery (ACM).
  11. Koza, J. R. (1992). Genetic programming: on the programming of computers by means of natural selection. MIT Press, Cambridge, MA, USA.
  12. Matthew Wall (1996). Galib: A c++ library of genetic algorithm components.
  13. Merelo Guerv ós, J. J. (2014). NodEO, a evolutionary algorithm library in Node. Technical report, GeNeura group. Available at http://figshare.com/articles/nodeo/972892.
  14. Merelo-Guerv ós, J.-J., Arenas, M. G., Carpio, J., Castillo, P., Rivas, V. M., Romero, G., and Schoenauer, M. (2000). Evolving objects. In Wang, P. P., editor, Proc. JCIS 2000 (Joint Conference on Information Sciences), volume I, pages 1083-1086. ISBN: 0- 9643456-9-2.
  15. Merelo-Guervs, J.-J., Castillo, P.-A., and Alba, E. (2010). Algorithm::Evolutionary, a flexible Perl module for evolutionary computation. Soft Computing, 14(10):1091-1109. Accesible at http://sl.ugr.es/000K.
  16. Mirjalili, S. (2015). Moth-flame optimization algorithm: A novel nature-inspired heuristic paradigm. KnowledgeBased Systems, 89:228 - 249.
  17. Mirjalili, S. and Lewis, A. (2016). The whale optimization algorithm. Advances in Engineering Software, 95:51 - 67.
  18. Mirjalili, S., Mirjalili, S. M., and Hatamlou, A. (2016). Multi-verse optimizer: a nature-inspired algorithm for global optimization. Neural Computing and Applications, 27(2):495-513.
  19. Mirjalili, S., Mirjalili, S. M., and Lewis, A. (2014). Grey wolf optimizer. Advances in Engineering Software, 69:46 - 61.
  20. Wagner, S. and Affenzeller, M. (2004). The heuristiclab optimization environment. Technical report, University of Applied Sciences Upper Austria.
  21. Wolpert, D. H. and Macready, W. G. (1997). No free lunch theorems for optimization. Evolutionary Computation, IEEE Transactions on, 1(1):67-82.
  22. Yang, X.-S. (2010a). Firefly algorithm, stochastic test functions and design optimisation. Int. J. Bio-Inspired Comput., 2(2):78-84.
  23. Yang, X.-S. (2010b). A new metaheuristic bat-inspired algorithm. In González, J. R., Pelta, D. A., Cruz, C., Terrazas, G., and Krasnogor, N., editors, Nature Inspired Cooperative Strategies for Optimization (NICSO 2010), pages 65-74, Berlin, Heidelberg. Springer Berlin Heidelberg.
  24. Yang, X.-S. (2013). Metaheuristic optimization: Natureinspired algorithms and applications. In Studies in Computational Intelligence, pages 405-420. Springer Science Business Media.
  25. Yang, X. S. and Deb, S. (2009). Cuckoo search via levy flights. In Nature Biologically Inspired Computing, 2009. NaBIC 2009. World Congress on, pages 210- 214.

Paper Citation

in Harvard Style

Faris H., Aljarah I., Mirjalili S., Castillo P. and Merelo J. (2016). EvoloPy: An Open-source Nature-inspired Optimization Framework in Python . In Proceedings of the 8th International Joint Conference on Computational Intelligence - Volume 1: ECTA, (IJCCI 2016) ISBN 978-989-758-201-1, pages 171-177. DOI: 10.5220/0006048201710177

in Bibtex Style

author={Hossam Faris and Ibrahim Aljarah and Seyedali Mirjalili and Pedro A. Castillo and Juan J. Merelo},
title={EvoloPy: An Open-source Nature-inspired Optimization Framework in Python},
booktitle={Proceedings of the 8th International Joint Conference on Computational Intelligence - Volume 1: ECTA, (IJCCI 2016)},

in EndNote Style

JO - Proceedings of the 8th International Joint Conference on Computational Intelligence - Volume 1: ECTA, (IJCCI 2016)
TI - EvoloPy: An Open-source Nature-inspired Optimization Framework in Python
SN - 978-989-758-201-1
AU - Faris H.
AU - Aljarah I.
AU - Mirjalili S.
AU - Castillo P.
AU - Merelo J.
PY - 2016
SP - 171
EP - 177
DO - 10.5220/0006048201710177