Skip to main content

Advertisement

Log in

Genetic algorithms: theory, genetic operators, solutions, and applications

  • Review Article
  • Published:
Evolutionary Intelligence Aims and scope Submit manuscript

Abstract

A genetic algorithm (GA) is an evolutionary algorithm inspired by the natural selection and biological processes of reproduction of the fittest individual. GA is one of the most popular optimization algorithms that is currently employed in a wide range of real applications. Initially, the GA fills the population with random candidate solutions and develops the optimal solution from one generation to the next. The GA applies a set of genetic operators during the search process: selection, crossover, and mutation. This article aims to review and summarize the recent contributions to the GA research field. In addition, the definitions of the GA essential concepts are reviewed. Furthermore, the article surveys the real-life applications and roles of GA. Finally, future directions are provided to develop the field.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9

Similar content being viewed by others

References

  1. BoussaïD I, Lepagnot J, Siarry P (2013) A survey on optimization metaheuristics. Inf Sci 237:82–117

    Article  MathSciNet  MATH  Google Scholar 

  2. Agushaka JO, Ezugwu AE, Abualigah L (2022) Dwarf mongoose optimization algorithm. Comput Methods Appl Mech Eng 391:114570

    Article  MathSciNet  MATH  Google Scholar 

  3. Ezugwu AE, Agushaka JO, Abualigah L, Mirjalili S, Gandomi AH (2022) Prairie dog optimization algorithm. Neural Comput Appl 34(22):20017–20065

    Article  Google Scholar 

  4. Abualigah L, Abd Elaziz M, Sumari P, Geem ZW, Gandomi AH (2022) Reptile search algorithm (RSA): a nature-inspired meta-heuristic optimizer. Expert Syst Appl 191:116158

    Article  Google Scholar 

  5. Oyelade ON, Ezugwu AE-S, Mohamed TI, Abualigah L (2022) Ebola optimization search algorithm: a new nature-inspired metaheuristic optimization algorithm. IEEE Access 10:16150–16177

    Article  Google Scholar 

  6. Holland J, Goldberg D (1989) Genetic algorithms in search, optimization and machine learning. Addison-Wesley, Massachusetts

    Google Scholar 

  7. Mattfeld DC (2013) Evolutionary search and the job shop: investigations on genetic algorithms for production scheduling

  8. Arabali A, Ghofrani M, Etezadi-Amoli M, Fadali MS, Baghzouz Y (2013) Genetic-algorithm-based optimization approach for energy management. IEEE Trans Power Deliv 28(1):162–170

    Article  Google Scholar 

  9. Koza JR (1994) Genetic programming as a means for programming computers by natural selection. Stat Comput 4(2):87–112

    Article  Google Scholar 

  10. Kim J-H, Myung H (1997) Evolutionary programming techniques for constrained optimization problems. IEEE Trans Evol Comput 1(2):129–140

    Article  MathSciNet  Google Scholar 

  11. Storn R, Price K (1997) Differential evolution—a simple and efficient heuristic for global optimization over continuous spaces. J Global Optim 11(4):341–359

    Article  MathSciNet  MATH  Google Scholar 

  12. Rechenberg I (1973) Evolution strategy: optimization of technical systems by means of biological evolution. Fromman Holzboog Stuttgart 104:15–16

    Google Scholar 

  13. Holland JH (1975) Adaptation in natural and artificial systems. In: An introductory analysis with application to biology, control, and artificial intelligence. Ann Arbor: University of Michigan Press, pp 439–444

  14. Man K-F, Tang K-S, Kwong S (1996) Genetic algorithms: concepts and applications [in engineering design]. IEEE Trans Ind Electron 43(5):519–534

    Article  Google Scholar 

  15. Mitchell M (1998) An introduction to genetic algorithms

  16. Sudholt D (2018) The benefits of population diversity in evolutionary algorithms: a survey of rigorous runtime analyses. arXiv preprint arXiv:1801.10087

  17. Kazimipour B, Li X, Qin AK (2014) A review of population initialization techniques for evolutionary algorithms. In: 2014 IEEE congress on evolutionary computation (CEC), IEEE, pp 2585–2592

  18. Whitley D (1994) A genetic algorithm tutorial. Stat Comput 4(2):65–85

    Article  Google Scholar 

  19. Mukhopadhyay A, Maulik U, Bandyopadhyay S, Coello CAC (2014) A survey of multiobjective evolutionary algorithms for data mining: part i. IEEE Trans Evol Comput 18(1):4–19

    Article  Google Scholar 

  20. Bodenhofer U (2003) Genetic algorithms: theory and applications. Lecture notes, Fuzzy logic laboratorium Linz-Hagenberg, Winter

  21. Sastry K, Goldberg DE, Kendall G (2014) Genetic algorithms. In: Search methodologies, pp 93–117

  22. Goldberg DE, Holland JH (1988) Genetic algorithms and machine learning. Mach Learn 3(2):95–99

    Article  Google Scholar 

  23. Baker JE (1987) Reducing bias and inefficiency in the selection algorithm. In: Proceedings of the second international conference on genetic algorithms, pp 14–21

  24. Goldberg DE, Deb K (1991) A comparative analysis of selection schemes used in genetic algorithms. Found Genetic Algorithms 1:69–93

    MathSciNet  Google Scholar 

  25. Schlierkamp-Voosen D, Mühlenbein H (1993) Predictive models for the breeder genetic algorithm. Evol Comput 1(1):25–49

    Article  Google Scholar 

  26. Spears WM, De Jong KD (1995) On the virtues of parameterized uniform crossover. Technical report, Naval Research Lab Washington DC

  27. Sivrikaya-Şerifoğlu F (1997) A new uniform order-based crossover operator for genetic algorithm applications to multi-component combinatorial optimization problems. Unpublished PhD dissertation, Boğaziçi University, Istanbul

  28. Paul PV, Ramalingam A, Baskaran R, Dhavachelvan P, Vivekanandan K, Subramanian R (2014) A new population seeding technique for permutation-coded genetic algorithm: service transfer approach. J Comput Sci 5(2):277–297

    Article  Google Scholar 

  29. Deng Y, Liu Y, Zhou D (2015) An improved genetic algorithm with initial population strategy for symmetric TSP. In: Mathematical problems in engineering

  30. Hassanat AB, Prasath V, Abbadi MA, Abu-Qdari SA, Faris H (2018) An improved genetic algorithm with a new initialization mechanism based on regression techniques. Information 9(7):167

    Article  Google Scholar 

  31. Kaya M (2011) The effects of two new crossover operators on genetic algorithm performance. Appl Soft Comput 11(1):881–890

    Article  Google Scholar 

  32. Rafsanjani MK, Eskandari S (2011) A new combinational selection operator in genetic algorithm. AIP Conf Proc 1389:1082–1085 (AIP)

    Article  Google Scholar 

  33. Rafsanjani MK, Eskandari S (2012) The effect of a new generation based sequential selection operator on the performance of genetic algorithm. Indian J Sci Technol 5(12):3758–3761

    Article  Google Scholar 

  34. Hussain A, Muhammad YS (2020) Trade-off between exploration and exploitation with genetic algorithm using a novel selection operator. Complex Intell Syst 6(1):1–14

    Article  Google Scholar 

  35. Kaya Y, Uyar M, Tekın R (2011) A novel crossover operator for genetic algorithms: ring crossover. arXiv preprint arXiv:1105.0355

  36. Semenkin E, Semenkina M (2012) Self-configuring genetic algorithm with modified uniform crossover operator. In: International conference in swarm intelligence, Springer, pp 414–421

  37. Thakur M (2014) A new genetic algorithm for global optimization of multimodal continuous functions. J Comput Sci 5(2):298–311

    Article  MathSciNet  Google Scholar 

  38. Elsayed SM, Sarker RA, Essam DL (2014) A new genetic algorithm for solving optimization problems. Eng Appl Artif Intell 27:57–69

    Article  Google Scholar 

  39. Osaba E, Onieva E, Carballedo R, Diaz F, Perallos A (2014) An adaptive multi-crossover population algorithm for solving routing problems. In: Nature inspired cooperative strategies for optimization (NICSO 2013), pp 113–124

  40. Jin C, Li F, Tsang EC, Bulysheva L, Kataev MY (2017) A new compound arithmetic crossover-based genetic algorithm for constrained optimisation in enterprise systems. Enterpr Inf Syst 11(1):122–136

    Article  Google Scholar 

  41. Demirci H, Ozcerit A, Ekiz H, Kutlu A (2015) Chaotic crossover operator on genetic algorithm. In: Proceedings of 2nd international conference on information technology

  42. Alkafaween E (2018) Novel methods for enhancing the performance of genetic algorithms. CoRR https://arxiv.org/abs/1801.02827

  43. Hassanat AB, Alkafaween E (2017) On enhancing genetic algorithms using new crossovers. Int J Comput Appl Technol 55(3):202–212

    Article  Google Scholar 

  44. Xue Y, Zhu H, Liang J, Słowik A (2021) Adaptive crossover operator based multi-objective binary genetic algorithm for feature selection in classification. Knowl Based Syst 227:107218

    Article  Google Scholar 

  45. Koohestani B (2020) A crossover operator for improving the efficiency of permutation-based genetic algorithms. Expert Syst Appl 151:113381

    Article  Google Scholar 

  46. Manzoni L, Mariot L, Tuba E (2020) Balanced crossover operators in genetic algorithms. Swarm Evol Comput 54:100646

    Article  Google Scholar 

  47. Viana MS, Morandin Junior O, Contreras RC (2020) A modified genetic algorithm with local search strategies and multi-crossover operator for job shop scheduling problem. Sensors 20(18):5440

    Article  Google Scholar 

  48. Albayrak M, Allahverdi N (2011) Development a new mutation operator to solve the traveling salesman problem by aid of genetic algorithms. Expert Syst Appl 38(3):1313–1320

    Article  Google Scholar 

  49. Marung U, Theera-Umpon N, Auephanwiriyakul S (2016) Top-n recommender systems using genetic algorithm-based visual-clustering methods. Symmetry 8(7):54

    Article  MathSciNet  Google Scholar 

  50. Yuan Y, Wang W, Pang W (2021) A genetic algorithm with tree-structured mutation for hyperparameter optimisation of graph neural networks. In: 2021 IEEE congress on evolutionary computation (CEC), IEEE, pp 482–489

  51. Haghrah A, Nekoui M, Nazari-Heris M, Mohammadi-ivatloo B (2021) An improved real-coded genetic algorithm with random walk based mutation for solving combined heat and power economic dispatch. J Ambient Intell Humaniz Comput 12(8):8561–8584

    Article  Google Scholar 

  52. Alhijawi B, Kilani Y (2020) A collaborative filtering recommender system using genetic algorithm. Inf Process Manag 57(6):102310

    Article  Google Scholar 

  53. Armagan A, Dunson DB, Lee J (2013) Generalized double pareto shrinkage. Stat Sin 23(1):119

    MathSciNet  MATH  Google Scholar 

  54. Kumar M, Husian M, Upreti N, Gupta D (2010) Genetic algorithm: review and application. Int J Inf Technol Knowl Manag 2(2):451–454

    Google Scholar 

  55. Paulinas M, Ušinskas A (2007) A survey of genetic algorithms applications for image enhancement and segmentation. Inf Technol Control 36:3

    Google Scholar 

  56. Połap D (2020) An adaptive genetic algorithm as a supporting mechanism for microscopy image analysis in a cascade of convolution neural networks. Appl Soft Comput 97:106824

    Article  Google Scholar 

  57. Sun Y, Xue B, Zhang M, Yen GG, Lv J (2020) Automatically designing CNN architectures using the genetic algorithm for image classification. IEEE Trans Cybern 50(9):3840–3854

    Article  Google Scholar 

  58. Chen R, Yang B, Li S, Wang S (2020) A self-learning genetic algorithm based on reinforcement learning for flexible job-shop scheduling problem. Comput Ind Eng 149:106778

    Article  Google Scholar 

  59. Zhou Z, Li F, Zhu H, Xie H, Abawajy JH, Chowdhury MU (2020) An improved genetic algorithm using greedy strategy toward task scheduling optimization in cloud environments. Neural Comput Appl 32(6):1531–1541

    Article  Google Scholar 

  60. Maulik U, Bandyopadhyay S (2000) Genetic algorithm-based clustering technique. Pattern Recogn 33(9):1455–1465

    Article  Google Scholar 

  61. Sheikh RH, Raghuwanshi MM, Jaiswal AN (2008) Genetic algorithm based clustering: a survey. In: 2008. ICETET’08. First international conference on emerging trends in engineering and technology, IEEE, pp 314–319

  62. Mohammadrezapour O, Kisi O, Pourahmad F (2020) Fuzzy c-means and k-means clustering with genetic algorithm for identification of homogeneous regions of groundwater quality. Neural Comput Appl 32(8):3763–3775

    Article  Google Scholar 

  63. Harman M, McMinn P, De Souza JT, Yoo S (2012) Search based software engineering: techniques, taxonomy, tutorial. In: Empirical software engineering and verification, pp 1–59

  64. Srivastava PR, Kim T (2009) Application of genetic algorithm in software testing. Int J Softw Eng Appl 3(4):87–96

    Google Scholar 

  65. Harman M (2007) The current state and future of search based software engineering. In: 2007 Future of software engineering, IEEE Computer Society, pp 342–357

  66. Ramkumar R, Mala G (2021) Non functional requirement based software architecture scheme with security requirement using hybrid group search optimization and genetic algorithm. J Ambient Intell Humaniz Comput 12(5):4863–4876

    Article  Google Scholar 

  67. Alhijawi B, Awajan A (2021) Novel textual entailment technique for the Arabic language using genetic algorithm. Comput Speech Lang 68:101194

    Article  Google Scholar 

  68. Iqbal F, Hashmi JM, Fung BC, Batool R, Khattak AM, Aleem S, Hung PC (2019) A hybrid framework for sentiment analysis using genetic algorithm based feature reduction. IEEE Access 7:14637–14652

    Article  Google Scholar 

  69. Ar Y, Bostanci E (2016) A genetic algorithm solution to the collaborative filtering problem. Expert Syst Appl 61:122–128

    Article  Google Scholar 

  70. Dwivedi P, Kant V, Bharadwaj KK (2018) Learning path recommendation based on modified variable length genetic algorithm. Educ Inf Technol 23(2):819–836

    Article  Google Scholar 

  71. Hashemi S, Kiani S, Noroozi N, Moghaddam ME (2010) An image contrast enhancement method based on genetic algorithm. Pattern Recogn Lett 31(13):1816–1824

    Article  Google Scholar 

  72. Daniel E, Anitha J (2015) Optimum green plane masking for the contrast enhancement of retinal images using enhanced genetic algorithm. Optik Int J Light Electron Opt 126(18):1726–1730

    Article  Google Scholar 

  73. Deborah H, Arymurthy AM (2010) Image enhancement and image restoration for old document image using genetic algorithm. In: 2010 Second international conference on advances in computing, control and telecommunication technologies (ACT), IEEE, pp 108–112

  74. Guo F, Peng H, Tang J (2016) Genetic algorithm-based parameter selection approach to single image defogging. Inf Process Lett 116(10):595–602

    Article  Google Scholar 

  75. Wijayaningrum VN, Mahmudy WF (2016) Optimization of ship’s route scheduling using genetic algorithm. Indones J Electr Eng Comput Sci 2(1):180–186

    Google Scholar 

  76. Xu Y, Li K, Hu J, Li K (2014) A genetic algorithm for task scheduling on heterogeneous computing systems using multiple priority queues. Inf Sci 270:255–287

    Article  MathSciNet  MATH  Google Scholar 

  77. Faghihi V, Reinschmidt KF, Kang JH (2014) Construction scheduling using genetic algorithm based on building information model. Expert Syst Appl 41(16):7565–7578

    Article  Google Scholar 

  78. Konar D, Bhattacharyya S, Sharma K, Sharma S, Pradhan SR (2017) An improved hybrid quantum-inspired genetic algorithm (Hqiga) for scheduling of real-time task in multiprocessor system. Appl Soft Comput 53:296–307

    Article  Google Scholar 

  79. Keshanchi B, Souri A, Navimipour NJ (2017) An improved genetic algorithm for task scheduling in the cloud environments using the priority queues: formal verification, simulation, and statistical testing. J Syst Softw 124:1–21

    Article  Google Scholar 

  80. Soundarya V, Kanimozhi U, Manjula D (2017) Recommendation system for criminal behavioral analysis on social network using genetic weighted k-means clustering. JCP 12(3):212–220

    Article  Google Scholar 

  81. Wang Z, Yu X, Feng N, Wang Z (2014) An improved collaborative movie recommendation system using computational intelligence. J Vis Lang Comput 25(6):667–675

    Article  Google Scholar 

  82. Georgiou O, Tsapatsoulis N (2010) Improving the scalability of recommender systems by clustering using genetic algorithms. In: International conference on artificial neural networks, Springer, pp 442–449

  83. El-Samak AF, Ashour W (2015) Optimization of traveling salesman problem using affinity propagation clustering and genetic algorithm. J Artif Intell Soft Comput Res 5(4):239–245

    Article  Google Scholar 

  84. Rahman MA, Islam MZ (2014) A hybrid clustering technique combining a novel genetic algorithm with k-means. Knowl Based Syst 71:345–365

    Article  Google Scholar 

  85. Shaw MKE (2015) K-means clustering with automatic determination of k using a multiobjective genetic algorithm with applications to microarray gene expression data. PhD thesis, San Diego State University

  86. Lahari K, Murty MR, Satapathy SC (2015) Partition based clustering using genetic algorithm and teaching learning based optimization: performance analysis. In: Emerging ICT for bridging the future-proceedings of the 49th annual convention of the computer society of India CSI, vol 2, Springer, pp 191–200

  87. Ahmed MA, Hermadi I (2008) Ga-based multiple paths test data generator. Comput Oper Res 35(10):3107–3124

    Article  Google Scholar 

  88. Rao KK, Raju G, Nagaraj S (2012) Optimizing the software testing efficiency using genetic algorithm-implementation methodology. Softw Eng Technol 4(10):432–439

    Google Scholar 

  89. Räihä O (2010) A survey on search-based software design. Comput Sci Rev 4(4):203–249

    Article  Google Scholar 

  90. Bhatia N (2016) A cluster adaptive genetic model for improving the recommender system. Imp J Interdiscip Res 2:8

    Google Scholar 

  91. Gupta A, Shivhare H, Sharma S (2015) Recommender system using fuzzy c-means clustering and genetic algorithm based weighted similarity measure. In: International conference on computer, communication and control (IC4), IEEE

  92. Alahmadi DH, Zeng X-J (2015) Twitter-based recommender system to address cold-start: a genetic algorithm based trust modelling and probabilistic sentiment analysis. In: IEEE 27th international conference on tools with artificial intelligence (ICTAI), IEEE, pp 1045–1052

  93. Verma A, Virk HK (2015) A hybrid recommender system using genetic algorithm and KNN approach. Int J Comput Sci Trends Technol (IJCST) 6(3):131–134

    Google Scholar 

  94. Verma A, Virk H (2015) A hybrid genre-based recommender system for movies using genetic algorithm and KNN approach. Int J Innov Eng Technol 5(4):48–55

    Google Scholar 

  95. Alhijawi B, Kilani Y (2016) Using genetic algorithms for measuring the similarity values between users in collaborative filtering recommender systems. In: 2016 IEEE/ACIS 15th international conference on computer and information science (ICIS), IEEE, pp 1–6

  96. Xiao J, Luo M, Chen J-M, Li J-J (2015) An item based collaborative filtering system combined with genetic algorithms using rating behavior. In: International conference on intelligent computing, Springer, pp 453–460

  97. Alhijawi B, Kilani Y, Alsarhan A (2020) Improving recommendation quality and performance of genetic-based recommender system. Int J Adv Intell Paradig (IJAIP) 10:1

    Google Scholar 

  98. Fong S, Ho Y, Hang Y (2008) Using genetic algorithm for hybrid modes of collaborative filtering in online recommenders. In: Eighth international conference on hybrid intelligent systems, HIS’08, IEEE, pp 174–179

  99. Salehi M (2014) Latent feature based recommender system for learning materials using genetic algorithm. Inf Syst Telecommun 137

  100. Athani M, Pathak N, Khan AU (2014) Dynamic music recommender system using genetic algorithm. Int J Eng Adv Technol 3(4):230–232

    Google Scholar 

  101. Zhang F, Chang H-y (2006) A collaborative filtering algorithm employing genetic clustering to ameliorate the scalability issue, IEEE, pp 331–338

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Bushra Alhijawi.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Alhijawi, B., Awajan, A. Genetic algorithms: theory, genetic operators, solutions, and applications. Evol. Intel. (2023). https://doi.org/10.1007/s12065-023-00822-6

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s12065-023-00822-6

Keywords

Navigation