A-COA: an adaptive cuckoo optimization algorithm for continuous and combinatorial optimization

  • H. R. BoveiriEmail author
  • M. Elhoseny
Intelligent Biomedical Data Analysis and Processing


Cuckoo optimization algorithm (COA) is inspired from the special and exotic lifestyle of a bird family called the cuckoo and her amazing and unique behavior in egg laying and breeding. Just like any other population-based swarm intelligence metaheuristic algorithms, the basic COA starts with a set of randomly generated solutions called “habitats.” Actually, the habitats can be the current locations of either the mature cuckoos or their eggs. In an iterative manner, cuckoos lay their eggs around their habitats inside the other birds’ nests by mimicking their eggs’ color, pattern, and size, and this is a kind of parasitic brooding behavior. Some hosts may discriminate the strange eggs and throw them out while the others not. The survival competition between cuckoos and their hosts, and migration of cuckoos in swarm are two main underlying motivations to introduce the COA. In this paper, an adaptive cuckoo optimization algorithm named A-COA is proposed in which three novelties in egg-laying and migration phases are applied. These modifications have made the basic algorithm more efficient with faster convergence to solve continuous and discrete optimization problems. A comprehensive comparison study of A-COA versus not only the basic COA but also some other conventional metaheuristics like GA, PSO, ABC, and TLBO has been made on a variety of unimodal and multimodal numerical benchmark functions with different characteristics, and the results show an overall 25.85% of improvement in terms of performance with a faster convergence speed compared to the basic COA, where the statistical Wilcoxon rank-sum test certifies our conclusions. In addition, a discretized version of A-COA and its application to the multiprocessor task scheduling problem as a complex combinatorial optimization problem are investigated where the proposed A-COA is very competitive with not only the strongest conventional heuristics, for example, MCP, ETF, and DLS, but also the basic COA and the newly proposed ACO-based approach.


Cuckoo optimization algorithm (COA) Metaheuristics Multiprocessor task scheduling problem (MTSP) Numerical benchmark functions Combinatorial optimization 



This research project has been supported by Sama Technical and Vocational Training College, Islamic Azad University, Shoushtar Branch, Shoushtar, Iran.

Compliance with ethical standards

Conflict of interest

There is no conflict of interest between the authors to publish this manuscript.


  1. 1.
    Holland JH (1975) Adaptation in Nature and Artificial Systems. The University of Michigan press, USAGoogle Scholar
  2. 2.
    Storn Rainer, Price Kenneth (1997) Differential evolution–a simple and efficient heuristic for global optimization over continuous spaces. J Global Optim 11(4):341–359MathSciNetzbMATHGoogle Scholar
  3. 3.
    Rechenberg I (1973) Evolutionsstrategie: Optimierung Technischer Systeme nach Prinzipien der Biologischen Evolution. Frommann-Holzboog, StuttgartGoogle Scholar
  4. 4.
    Fogel LJ, Owens AJ, Walsh MJ (1966) Artificial Intelligence Through Simulated Evolution. John Wiley, New YorkzbMATHGoogle Scholar
  5. 5.
    Farmer JD, Packard NH, Perelson AS (1986) The immune system, adaptation, and machine learning. Physica D 22(1–3):187–204MathSciNetGoogle Scholar
  6. 6.
    Passino Kevin M (2002) Biomimicry of bacterial foraging for distributed optimization and control. IEEE Control Syst 22(3):52–67MathSciNetGoogle Scholar
  7. 7.
    Kennedy J, Eberhart R (1995) Particle swarm optimization (PSO). In: Proceedings of the IEEE international conference on neural networks, Perth, Australia, pp 1942–1948Google Scholar
  8. 8.
    Dorigo M, Vittorio M, Alberto C, Vittorio M (1991) Positive feedback as a search strategyGoogle Scholar
  9. 9.
    Eusuff Muzaffar M, Lansey Kevin E (2003) Optimization of water distribution network design using the shuffled frog leaping algorithm. J Water Resour Plan Manag 129(3):210–225Google Scholar
  10. 10.
    Karaboga D (2005) An idea based on honey bee swarm for numerical optimization (vol. 200). Technical report-tr06, Erciyes university, engineering faculty, computer engineering departmentGoogle Scholar
  11. 11.
    Mirjalili S, Mirjalili SM, Lewis A (2014) Grey wolf optimizer. Adv Eng Softw 69:46–61Google Scholar
  12. 12.
    Mirjalili Seyedali, Lewis Andrew (2016) The whale optimization algorithm. Adv Eng Softw 95:51–67Google Scholar
  13. 13.
    Geem ZW, Kim JH, Loganathan GV (2001) A new heuristic optimization algorithm: harmony search. Simulation 76(2):60–68Google Scholar
  14. 14.
    Rashedi Esmat, Nezamabadi-Pour Hossein, Saryazdi Saeid (2009) GSA: a gravitational search algorithm. Inf Sci 179(13):2232–2248zbMATHGoogle Scholar
  15. 15.
    Simon Dan (2008) Biogeography-based optimization. IEEE Trans Evol Comput 12(6):702–713Google Scholar
  16. 16.
    Ahrari Ali, Atai Ali A (2010) Grenade explosion method—a novel tool for optimization of multimodal functions. Appl Soft Comput 10(4):1132–1140Google Scholar
  17. 17.
    Kashan Ali Husseinzadeh (2011) An efficient algorithm for constrained global optimization and application to mechanical engineering design: league championship algorithm (LCA). Comput Aided Des 43(12):1769–1792Google Scholar
  18. 18.
    Kaveh A, Talatahari S (2010) A novel heuristic optimization method: charged system search. Acta Mech 213(3):267–289zbMATHGoogle Scholar
  19. 19.
    Rao RV, Savsani VJ, Vakharia DP (2011) Teaching–learning-based optimization: a novel method for constrained mechanical design optimization problems. Comput Aided Des 43(3):303–315Google Scholar
  20. 20.
    Rajabioun Ramin (2011) Cuckoo optimization algorithm. Appl Soft Comput 11(8):5508–5518Google Scholar
  21. 21.
    Akbari Mehdi, Rashidi Hassan (2016) A multi-objectives scheduling algorithm based on cuckoo optimization for task allocation problem at compile time in heterogeneous systems. Expert Syst Appl 60:234–248Google Scholar
  22. 22.
    Elyasigomari V, Lee DA, Screen HRC, Shaheed MH (2017) Development of a two-stage gene selection method that incorporates a novel hybrid approach using the cuckoo optimization algorithm and harmony search for cancer classification. J Biomed Inf 67:11–20Google Scholar
  23. 23.
    Faradonbeh RS, Monjezi M (2017) Prediction and minimization of blast-induced ground vibration using two robust meta-heuristic algorithms. Eng Comput 33:835–851Google Scholar
  24. 24.
    Bazgosha Atiyeh, Ranjbar Mohammad, Jamili Negin (2017) Scheduling of loading and unloading operations in a multi stations transshipment terminal with release date and inventory constraints. Comput Ind Eng 106:20–31Google Scholar
  25. 25.
    Li X, Tang K, Omidvar MN, Yang Z, Qin K, China H (2013) Benchmark functions for the CEC’2013 special session and competition on large-scale global optimization. Gene 7(33):1–8Google Scholar
  26. 26.
    Liang J-J, Suganthan PN, Deb K (2005) Novel composition test functions for numerical global optimization. In: Proceedings 2005 IEEE swarm intelligence symposium, 2005. SIS 2005, IEEE, pp 68–75Google Scholar
  27. 27.
    Wilcoxon Frank (1945) Individual comparisons by ranking methods. Biom Bull 1(6):80–83Google Scholar
  28. 28.
    Buyya R (1999) High Performance Cluster Computing: Architecture and Systems, vol I. Prentice Hall, Upper SaddleRiver, NJ, USAGoogle Scholar
  29. 29.
    Wang Ting, Zhiyang Su, Xia Yu, Hamdi Mounir (2014) Rethinking the data center networking: architecture, network protocols, and resource sharing. IEEE Access 2:1481–1496Google Scholar
  30. 30.
    Cao J, Chan ATS, Sun Y, Das SK, Guo M (2006) A taxonomy of application scheduling tools for high performance cluster computing. Clust Comput 9(3):355–371Google Scholar
  31. 31.
    Elhoseny M, Yuan X, ElMinir HK, Riad AM (2016) An energy efficient encryption method for secure dynamic WSN. Secur Commun Netw Wiley 9(13):2024–2031Google Scholar
  32. 32.
    Wang T, Xia Y, Muppala J, Hamdi M (2015) Achieving energy efficiency in data centers using an artificial intelligence abstraction model. IEEE Trans Cloud Comput 1:1–11Google Scholar
  33. 33.
    Kwok YK, Ahmad I (1999) Benchmarking and comparison of the task graph scheduling algorithms. J Parallel Distrib Comput 59(3):381–422zbMATHGoogle Scholar
  34. 34.
    Adam TL, Chandy KM, Dickson JR (1974) A comparison of list schedules for parallel processing systems. Commun ACM 17(12):685–690zbMATHGoogle Scholar
  35. 35.
    Kruatrachue B, Lewis TG (1987) Duplication scheduling heuristics (DSH): a new precedence task scheduler for parallel processor systems. Technical report, Oregon State University, Report No.: OR 97331, CorvallisGoogle Scholar
  36. 36.
    Carolyn MC, Gill H (1989) Automatic determination of grain size for efficient parallel processing. Commun ACM 32(9):1073–1078Google Scholar
  37. 37.
    Baxter J, Patel JH (1989) The LAST algorithm: a heuristic-based static task allocation algorithm. In: Proceeding of the 1989 international conference on parallel processing, pp 217–222Google Scholar
  38. 38.
    Hwang JJ, Chow YC, Anger FD, Lee CY (1989) Scheduling precedence graphs in systems with interprocessor communication times. SIAM J Comput 18(2):244–257MathSciNetzbMATHGoogle Scholar
  39. 39.
    Sih GC, Lee EA (1993) A compile-time scheduling heuristic for interconnection-constrained heterogeneous processor architectures. IEEE Trans Parallel Distrib Syst 4(2):75–87Google Scholar
  40. 40.
    Wu MY, Gajski DD (1990) Hypertool: a programming aid for message-passing systems. IEEE Trans Parallel Distrib Syst 1(3):330–343Google Scholar
  41. 41.
    Boveiri HR (2010) ACO-MTS: a new approach for multiprocessor task scheduling based on ant colony optimization. In: 2010 International conference on intelligent and advanced systems (ICIAS), Kuala Lumpur, pp 1–5Google Scholar
  42. 42.
    Boveiri HR (2016) A novel ACO-based static task scheduling approach for multiprocessor environments. Int J Comput Intell Syst 9(5):800–811Google Scholar
  43. 43.
    Boveiri HR (2017) An incremental ant colony optimization based approach to task assignment to processors for multiprocessor scheduling. Front Inf Technol Electron Eng 18(4):498–510Google Scholar
  44. 44.
    Boveiri HR, Khayami R (2017) Static homogeneous multiprocessor task graph scheduling using ant colony optimization. KSII Trans Internet Inf Syst 11(6):3046–3070Google Scholar
  45. 45.
    Boveiri HR, Khayami R, Elhoseny M, Gunasekaran M (2018) An efficient swarm-intelligence approach for task scheduling in cloud-based internet of things applications. J Ambient Intell Hum Comput.
  46. 46.
    Boveiri HR (2014) Assigning tasks to the processors for task-graph scheduling in parallel systems using learning and cellular learning automata. In: Proceeding of the 1st national conference on computer engineering and information technology, Shoushtar, Iran, pp 1–8 (in Farsi)Google Scholar
  47. 47.
    Boveiri HR (2015) Multiprocessor task graph scheduling using a novel graph-like learning automata. Int J Grid Distrib Comput 8(1):41–54Google Scholar
  48. 48.
    Boveiri HR (2015) List-scheduling techniques in homogeneous multiprocessor environments: a survey. Int J Softw Eng Appl 9(4):123–132Google Scholar
  49. 49.
    Elhoseny M, Abdelaziz A, Salama AS, Riad AM, Muhammad K, Sangaiah AK (2018) A hybrid model of internet of things and cloud computing to manage big data in health services applications. Future Gener Comput Syst 86:1383–1394Google Scholar
  50. 50.
    Pereira LAM, Papa JP, Coelho ALV, Lima CAM, Pereira DR, de Albuquerque VHC (2017) Automatic identification of epileptic EEG signals through binary magnetic optimization algorithms. Neural Comput Appl.
  51. 51.
    Elhoseny H, Mohamed E, Riad AM, Hassanien AE (2018) A framework for big data analysis in smart cities. In: International conference on advanced machine learning technologies and applications, Springer, Cham, pp 405–414Google Scholar
  52. 52.
    Yuan X, Abouelenien M, Elhoseny M (2018) A boosting-based decision fusion method for learning from large, imbalanced face data set. In: Quantum computing: an environment for intelligent large scale real application, Springer, Cham, pp 433–448Google Scholar
  53. 53.
    Farouk A, Tarawneh O, Elhoseny M, Batle J, Naseri M, Hassanien AE, Abedl-Aty M (2018) Quantum computing and cryptography: an overview. In: Quantum computing: an environment for intelligent large scale real application, Springer, Cham, pp 63–100Google Scholar
  54. 54.
    Hwang R, Gen M, Katayama H (2008) A comparison of multiprocessor task scheduling algorithms with communication costs. Comput Oper Res 35(3):976–993MathSciNetzbMATHGoogle Scholar
  55. 55.
    Boveiri HR (2015) An efficient task priority measurement for list-scheduling in multiprocessor environments. Int J Softw Eng Appl 9(5):233–246Google Scholar
  56. 56.
    Boveiri HR (2015) Task assigning techniques for list-scheduling in homogeneous multiprocessor environments: a survey. Int J Softw Eng Appl 9(12):303–312Google Scholar

Copyright information

© Springer-Verlag London Ltd., part of Springer Nature 2018

Authors and Affiliations

  1. 1.Sama Technical and Vocational Training CollegeIslamic Azad UniversityShoushtarIran
  2. 2.Faculty of Computers and InformationMansoura UniversityMansouraEgypt

Personalised recommendations