Soft Computing (Genetic Algorithm Past, Present, Future)
Soft Computing (Genetic Algorithm Past, Present, Future)
future
Abstract
Analysis of recent advances in genetic algorithms: In this paper, the discussion of recent
advances in genetic algorithms is outlined. A number of genetic algorithms of great
interest in a research community are selected for analysis. This review would provide the
better vision of genetic algorithms to new and demanding researchers. The known
algorithms and their implementation along with their pros and cons are presented. A
discussion of genetic operators along with their usages is made to facilitate new
researchers.
Different research areas related to genetic algorithms will be covered. Future research
directions in the area of genetic operators, fitness function, and hybrid algorithms will be
discussed.
This is a structured review and will be useful for research and graduate teaching.
Keywords Optimization. Metaheuristic. Genetic algorithm. Crossover. Mutation. Selection
. Evolution
1 Introduction
During the past few years, the metaheuristic algorithms have been implemented to solve
complex problems arising from real-life situations in various domains, including
economics, engineering, politics, management, and engineering. The two significant
elements that are really important in the metaheuristic algorithm are intensification and
diversification. This balancing between the two factors is essential to be able to solve the
real-life problem perfectly. Most of the metaheuristic algorithms are inspired by the
process of biological evolution, swarm behaviour, and the laws of physics. These
algorithms fall broadly in two categories namely single solution and population-based
metaheuristic algorithm (Fig. 1). Single-solution based metaheuristic algorithms use a
single candidate solution and improve this solution by using local search. However, the
solution obtained from single-solution based metaheuristics may get stuck in local optima.
Some well-known single-solution based metaheuristics are
1
Metaheuristics
Evolutionary Swarm-Intelligence
Algorithms Algorithms
simulated annealing, tabu search (TS), microcanonical annealing (MA), and guided local
search (GLS). Population-based metaheuristics uses multiple candidate solutions during
the search process. These metaheuristics take care of population diversity and do not fall
into local optima. Some of the well-known population-based metaheuristic algorithms are
genetic algorithm (GA), particle swarm optimization (PSO), ant colony optimization
(ACO), spotted hyena optimizer (SHO), emperor penguin optimizer (EPO), and seagull
optimization (SOA).
The main focus of this paper is two-fold. First, the variants of GA and their possible
applications in different fields are presented. Second, it is widening the area of potential
users in different fields. Different types of crossovers, mutation, selection, and encoding
techniques are discussed. Single-objective, multi-objective, parallel, and hybrid GAs are
deliberated with their advantages and disadvantages. The multimedia applications of GAs
are elaborated.
The rest of this paper is divided as follows: The methodology used to carry out the
research is presented in Section 2. The classical genetic algorithm and genetic operators
are discussed in Section 3. This section elaborates on the varieties of genetic algorithm
with its pros and cons. Section 5 gives the description of the applications of genetic
algorithm. Section 6 presents the challenges and future research directions. The
concluding remarks drawn in Section 7.
2 Research methodology
According to the guidelines provided by PRISMA, the GA review has been done.
Research papers related to GA have been found through a detailed search on Google
scholar and PubMed. The important research works found during the manual search have
also been added in this paper. During the search, some keywords, such as "Genetic
Algorithm" or "Application of GA" or "operators of GA" or "representation of GA" or
"variants of GA" were used. The selection and rejection of explored research papers are
based on the principles that is mentioned in Table 1.
Total 27,64,792 research papers were searched on Google Scholar, PubMed and manual
search. The research work associated with the genetic algorithm for multimedia
applications were also included. During the screening of research papers, all the duplicate
papers and papers published before 2007 were discarded. 4340 research papers were
selected based on 2007 and duplicate entries. Thereafter, 4050 research papers were
eliminated based on titles. Abstract reading removed 220 research papers. 70 research
papers remained after third-round screening. 40 more research papers were discarded after
full paper reading and facts were found in the paper. After fourth round of screening, final
30 research papers are selected for review.
Based on the relevance and quality of research, 30 papers were selected for evaluation.
The relevance of research is decided through some criteria, which is mentioned in Table 1.
The
Table 1 Selection criterion for shortlisted research papers
Sr. Parameters Selection criteria Elimination criteria
No.
3 Background
In this section, the basic structure of GA and its genetic operators are discussed with pros
and cons.
3.1 Classical GA
GAs applied the following operators in the process of searching. Such operators are
encoding schemes, crossover, mutation, and selection. Figure 2 demonstrates the operators
in GAs.
For most of the computational problems, encoding scheme, i.e., convert in particular
form, plays a crucial role. The given information has to be encoded in a particular bit
string. The encoding schemes are differentiated according to the problem domain. The
well-known encoding schemes are binary, octal, hexadecimal, permutation, value-based,
and tree.
The commonly used encoding scheme is binary encoding. In binary encoding, gene or
chromosome is represented as a string of 1 or 0. In case of binary encoding, the bits
represent the characteristics of the solution. It provides faster implementation of crossover
and mutation operators. However, it requires extra effort to convert into binary form and
accuracy of algorithm depends upon the binary conversion. Depending on the problem, the
bit stream changes. Due to epistasis and natural representation, some of the design
problems in engineering are not appropriate for the binary encoding scheme.
In the case of an octal encoding scheme, the gene or chromosome is represented in the
form of an octal number from 0 to 7. In the case of a hexadecimal encoding scheme, the
gene or chromosome is represented in the form of a hexadecimal number from 0 to 9, A-F.
The permutation encoding
Scheme is mainly applied in ordering problems. In this encoding scheme, the gene or
chromosome is represented by the string of numbers which describe the position in a
sequence. In value encoding scheme, the gene or chromosome is represented using string
of some values. These values might be real, integer number, or character. This encoding
scheme can be useful to solve such kind of problems that involve more complex values.
Because binary encoding fails to solve such kind of problems. It is mainly used in neural
networks for finding the optimum weights.
In the tree encoding, the gene or chromosome can be represented in the format of a tree of
functions or commands. This may refer to any programming language. This is quite
similar to the tree format used for the representation of repression. This kind of encoding
is mostly used in an evolving program or expression. Table 2 compares various schemes of
encoding of GA.
3.2.2 Selection techniques
Selection is another step of genetic algorithms which determines that the particular string
would participate in the reproduction process or not. Sometimes, this step of selection is also
referred to as a reproduction operator. The convergence rate of GA is dependent on the
selection pressure. Well-known selection techniques are roulette wheel, rank, tournament,
Boltzmann, and stochastic universal sampling.
Roulette wheel selection maps all the possible strings onto a wheel with a portion of the wheel
allocated to them according to their fitness value. Then, a random wheel is produced that can
select the desired solutions to participate in the formation of the next generation. However,
Table 2 Comparison of different encoding schemes
Encoding Pros Cons Application
Scheme
Boltzmann selection is based on entropy and sampling methods used in Monte Carlo
Simulation. It solves the problem of premature convergence. The probability to
choose the best string is very high, but it executes in very less time. However, there is
a possibility of information loss. It can be managed through elitism. Elitism selection
was proposed by K. D. Jong (1975) is implemented for Roulette wheel selection to
enhance performance. It ensures that the fittest individual of a generation always
survives to the next generation. If an individual having the highest fitness value is not
in the following generation after going through a regular selection procedure, then an
elitist one will also survive to the following generation automatically. The comparison
of above-mentioned selection techniques is depicted in Table 3.
Crossover operators are used to generate the offspring by combining the genetic
information of two or more parents. The well-known crossover operators are single-
Table 3 Comparison of different selection techniques
Selection Techniques Pros Cons
In 1985, Davis first proposed the concept of Order crossover (OX). OX copies one or more
sections of a parent to the offspring at the selected cut-points and fills the remaining space
with any of the values except the ones featured in the copied section. The various types of
OX are suggested by different researchers for the application of problems of different
natures. OX is useful for ordering problems. It is noted that OX is not efficient in case of
Travelling Salesman Problem. Precedence preserving crossover (PPX) preserves the
ordering of individual solutions as present in the parent of offspring before the application
of crossover. The offspring is initialized to a string of random 1's and 0's that decides
whether the individuals from both parents are to be selected or not. In, authors proposed a
modified version of PPX for multi-objective scheduling problems.
Eshelman et al. proposed shuffle crossover to reduce the bias introduced by other
crossover techniques. In this technique, it shuffles the values of an individual solution
before the crossover and un-shuffles them after crossover operation is performed so that
the crossover point does not introduce any bias in crossover. However, the utilization of
this crossover is very limited in the recent years. Reduced surrogate crossover (RCX)
removes those crossovers that do not pay any benefits if the parents have the same gene
sequence for solution representations. RCX is a method based on the idea that GA will
produce better individuals if the parents are sufficiently diversified in their genetic
composition. However, RCX will be unable to produce better individuals for those parents
that have same composition. Cycle crossover was proposed by Oliver. It generates an
offspring using parents where each element occupies the position by referring to the
position of their parents. In the first cycle, it takes some elements from the first parent. In
the second cycle, it takes the remaining elements from the second parent as shown in Fig.
7.
This table, presented as Table 4, is crossover techniques comparison. From Table 4 it can
be observed that the single and k-point crossover technique is implemented without
complexity. Uniform crossover is suitable for large subsets. Order and cycle crossovers
provide better exploration than other crossover techniques. Partially matched crossover
provides better exploration. The performance of partially matched crossover is superior to
other crossover techniques. Reduced surrogate and cycle crossovers suffer from premature
convergence.
Mutation is an operator that maintains the genetic diversity from one population to the
next population. The well-known mutation operators are displacement, simple inversion,
and scramble mutation. Displacement mutation (DM) operator displaces a substring of a
given individual solution within itself. The place is randomly chosen from the given
substring for displacement such that the resulting solution is valid as well as a random
displacement mutation. There are variants of DM are exchange mutation and insertion
mutation. In Exchange mutation and insertion mutation operators, a part of an individual
solution is either exchanged with another part or inserted in another location, respectively.
4. Applications
Genetic Algorithms have been applied in various NP-hard problems with high accuracy
rates.
There are a few application areas in which GAs have been successfully applied.
4.1.1 Scheduling
GAs have been applied in various fields of multimedia. Some of well-known multimedia
fields are encryption, image processing, video processing, medical imaging, and gaming.
With the advancement in multimedia applications, images, videos and audios are
transmitted from one place to another through Internet. It has been reported in literature
that images are most vulnerable to errors during the transfer process. Therefore, image
protection techniques like encryption, watermarking, and cryptography are needed.
Classical image encryption techniques are dependent on the input parameters of
encryption. Incorrect selection of input parameters may result in poor encryption
outcomes. GA and its variants are used for the selection of appropriate control parameters.
Kaur and Kumar developed the multi-objective genetic algorithm to optimize the control
parameters of chaotic map. The secret key is generated using the beta chaotic map. The
generated key is used for encrypting an image. Parallel Gas are also used to encrypt the
image.
4.2.2 Image processing
Genetic algorithms have been applied in medical imaging such as edge detection in MRI
and pulmonary nodules detection in CT scan images. In, authors used a template matching
technique with GA for detecting nodules in CT images. Kavitha and Chellamuthu used GA
based region growing method for detecting the brain tumour. GAs have been applied on
medical prediction problems captured from pathological subjects. Sari and Tuna applied
GA in solving problems that arise from the biomechanics. It will be applied during
examination to predict pathologies. Ghosh and Bhattacharyya have applied sequential GA
with cellular automata for modelling coronavirus disease 19, the COVID-19 data set. GAs
could be used in parallel mode, searching through rules in biological datasets. The authors
have proposed a parallel GA that run by dividing the process into small sub-generations
and evaluating the fitness of each individual solution in parallel. The authors used genetic
algorithms for many applications in medicine and other related fields. Koh et al. presented
a genetic algorithm-based method for the evaluation of adverse effects of a given drug.
4.2.4 Gaming
GAs have been successfully used in games such as gomoku. In [4], the authors proven that
the GA based approach finds the solution with the highest fitness than the normal tree-
based methods. However, in real-time strategy-based games, GA based solutions become
less practical to implement. GAs have been implemented to the path planning problems
considering the environment constraints as well as to avoid the obstacles to reach the given
destination. Burchardt and Salomon described an implementation for path planning for
soccer games. GA can encode the path planning problems via the coordinate points of a
two-dimensional playing field, hence resulting in a variable length solution. The length of
path, along with the terms for collision avoidance for soccer players, is considered in the
fitness function of path planning.
4.3 Wireless networking
As GA is adaptive, scalable, and easy to implement, it has been used to solve many of the
various issues of wireless networking. Some of the main problems that wireless
networking can encounter are routing, quality of service, load balancing, localization,
bandwidth allocation, and channel assignment. GA has been hybridized with other
metaheuristics for solving routing problems. Hybrid GA not only produce effective routes
between pair of nodes but also used for load balancing.
In this section, the main challenges faced during the implementation of GAs are discussed
followed by the possible research directions.
5.1 Challenges
Despite the several advantages, there are some challenges that need to be resolved for
future advancements and further evolution of genetic algorithms. Some major challenges
are given below:
The size of population is always supposed to be an important factor for the performance of
genetic algorithms. The size of population also affects the quality of the solution. The
researchers argue that if a large population is considered, then it takes more computation
time. However, small population may lead to poor solution. Therefore, finding the
appropriate population size always turns out to be a challenging issue. Harik and Lobo has
researched the population through self-adaption method. They have used two approaches
namely (1) applying self-adaption before algorithm execution in which the size of
population is kept constant and (2) in which the self-adaption is applied during the
algorithm execution in which the population size is impacted by a fitness function.
The driving force here is the fitness function which plays a critical role in selecting the
fittest individual in each iteration of the algorithm. If the number of iterations are low, then
one can afford an expensive fitness function. The increase of the number of iterations may
increase the computational cost. A good choice of a fitness function depends on their
suitability as well as their computational cost. In [5], authors have used the Davies-
Bouldin index for document classification.
5.1.3 Degree of mutation and crossover
The crossover and mutation operators are integral components of GAs. In the absence of
mutation during evolution, there will not be any new information available to evolve. In
the absence of crossover during evolution, the algorithm may converge to a local
optimum. The degrees of these operators affect the performance of GAs to a great extent.
Proper balance among these operators needs to be achieved in order to ensure the global
optima. The probabilistic nature cannot define the precise degree to be achieved for an
optimal solution.
GAs requires a particular encoding scheme for a specific problem. There is no general
methodology for deciding whether the particular encoding scheme is suitable for any type
of
real-life problem. In case of two different problems then it needs two different encoding
schemes. Ronald [7] suggested that the encoding schemes should be designed so that they
dominate the redundant forms. The genetic operators should be implemented in such a
way that they are not biased toward the redundant forms.
5.2 Future research directions
Based on the basic structure, this algorithm has been applied to different fields due to
modification. The current challenge that afflicts the obtained solution from GA can be
overcome by the optimization of the solution. Some possible prospects for GA as given
below:
1) The crossover and mutation operators to be chosen must be appropriate. For example,
in Self-Organizing GA, the crossover and mutation operators are adapted based upon the
problem given. This saves computation time and hence is faster.
2) Future work to reduce the premature convergence problem may also be considered.
Some researchers are working in this direction. However, it is suggested that new methods
of crossover and mutation techniques are required to tackle the premature convergence
problem.
3) Genetic algorithms behave like an in vivo process of evolution. Now, there well may be
a realm of space in which the process of natural evolution could be replicated; like the
reaction of the human immune system and the mutation of viruses.
6 Conclusions
In this paper, genetic algorithms are presented with a structured and explained view. GA
and its variants are discussed with application. Application-specific genetic operators are
discussed. Some of the genetic operators are representation based, but they do not apply to
research domains. The role of genetic operators like crossover, mutation, and selection in
alleviating the premature convergence is studied exhaustively. Discussions on applicability
of GA and its variants in diverse research domains have been presented here. Multimedia
and wireless network applications were some of the main aspects of this paper. Challenges
and issues discussed within this paper will be helpful to the practitioners to carry out their
research. There are various benefits in terms of using GAs within other research domains
and for metaheuristic algorithms.
This paper will not only reflect on the origin of new research in GAs but also give
information about each component of GA. It will encourage researchers to understand the
basics of GA and apply the knowledge in their research problems.
References
1. Abbasi M, Rafiee M, Khosravi MR, Jolfaei A, Menon VG, Koushyar JM (2020) An efficient
parallel genetic algorithm solution for vehicle routing problem in cloud implementation of the
intelligent transportation systems. Journal of cloud Computing 9(6)
2. Mudaliar DN, Modi NK (2013) Unraveling travelling salesman problem by genetic
algorithm using mcrossover operator. International Conference on Signal Processing,
Image Processing & Pattern Recognition, Coimbatore
3. Larranaga P, Kuijpers C, Murga R, Inza I, Dizdarevic S (1999) Genetic algorithms for
the travelling salesman problem: a review of representations and operators. Artificial
Intelligence.
4. Junru Wang and Lan Huang (2014) Evolving gomoku Solver by Genetic Algorithm.
IEEE Workshop on Advanced Research and Technology in Industry Applications
(WARTIA) pp 1064–1067.
5. Diaz-Manríquez A, Ríos-Alvarado AB, Barrón-Zambrano JH, Guerrero-Melendez TY,
Elizondo-Leal JC (2018) An automatic document classifier system based on genetic
algorithm and taxonomy. IEEE Access 6:21552–21559.
https://doi.org/10.1109/ACCESS.2018.2815992
6. Pandian S, Modrák V (December 2009) "possibilities, obstacles and challenges of
genetic algorithm in manufacturing cell formation," advanced logistic systems, University
of Miskolc. Department of Material Handling and Logistics 3(1)
7. Ronald S (1997) Robust encoding in genetic algorithms: a survey of encoding issues.
IEEE international conference on evolutionary computation,
8. Arakaki RK, Usberti FL (2018) Hybrid genetic algorithm for the open capacitated arc
routing problem. Comput Oper Res 90:
9. Pinto G, Ainbinder I, Rabinowitz G (2009) A genetic algorithm-based approach for
solving the resourcesharing and scheduling problem. Comput Ind Eng 57(3):
10. Yuce B, Fruggiero F, Packianather MS, Pham DT, Mastrocinque E, Lambiase A, Fera
M (2017) Hybrid genetic bees algorithm applied to single machine scheduling with
earliness and tardiness penalties. Comput Ind Eng 113:842–858
11. Abdelghany A, Abdelghany K, Azadian F (2017) Airline flight schedule planning
under competition. Comput Oper Res 87:20–39
12. Guido R, Conforti D (2017) A hybrid genetic approach for solving an integrated multi-
objective operating room planning and scheduling problem. Comput Oper Res 87:270–
282
13. Palencia AER, Delgadillo GEM (2012) A computer application for a bus body
assembly line using genetic algorithms. Int J Prod Econ 140(1):431–438
14. Zhang R, Ong SK, Nee AYC (2015) A simulation-based genetic algorithm approach
for remanufacturing process planning and scheduling. Appl Soft Comput 37:521–532