Abstract
Nature-inspired algorithms are problem-solving tactics and methodologies and have been gaining much recognition for their competence. These algorithms have gained massive acclaim in the last few years to solve puzzling real-world (Nondeterministic polynomial-hard and Nondeterministic polynomial-complete) problems and solve complex optimization problems and functions whose exact solution doesn’t exist. These are the algorithms that are inspired by natural processes and phenomena. The nature-inspired algorithm can be categorized based on some biological processes or any other phenomena which happen in nature. So, in this paper, we have classified some popular nature-inspired algorithms such as Genetic algorithm, Simulated Annealing, harmony search, Black hole, and many more. Based on four parameters from which the first parameter is Subject from which they were inspired. The second parameter is the optimization technique i.e. Stochastic or Deterministic. The third parameter of our classification is the number of solutions they maintain i.e. population-based or trajectory-based. And the last parameter of this categorization is memory i.e. algorithm is memory-based or memory less.
Access provided by Autonomous University of Puebla. Download conference paper PDF
Similar content being viewed by others
Keywords
- Nature-inspired algorithms
- Stochastic algorithms
- Deterministic algorithms
- Memory based algorithms
- Memory-less algorithms
1 Introduction
1.1 Previous Classifications
Nature-inspired computing is a discipline that develops new computing techniques by observing how nature behaves to solve existing complex problems in different environmental situations. Algorithms that are inspired by natural problems are known as Nature-Inspired Algorithms. These algorithms have gained much popularity as real-world problems are becoming more and more complex and extensively large in contrast with past computing techniques. Nature-inspired algorithms are applied mostly to optimization problems and are used to give feasible and acceptable solutions to optimization problems rather than guaranteed optimal solution within a reasonable amount of time. Nature-inspired algorithms are broadly classified into four major categories which are evolution-based, swarm intelligence based algorithms, physics based algorithms, and human-based algorithms [1].
Evolution-based algorithms are inspired by the evolutionary behavior of natural systems and the laws of natural evolution. In these algorithms, a set of the population is stochastically selected and is processed over successive generations through evolutionary operations. The best individuals are selected are sent through the next generation process and this process is continued until the optimal solution is obtained or the termination criteria are reached. These algorithms are inspired by Charles Darwin Theory [2, 3] e.g. - Genetic Algorithm (GA), Differential Evolution (DE), etc. Swarm-based intelligence (SI), which is also known as Swarm optimization techniques [4], is inspired by the collective behavior of natural swarms. The working process of swarm-based algorithms is that they mimic the social behavior of groups on animals. Like particle swarm optimization [5], artificial bee colony algorithm [5, 6], and ant colony optimization algorithm [7]. One of the most popular Swarm based algorithms is Particle Swarm Optimization which was developed by James Kennedy and Russell C. Eberhart. It mimics the behavior of bird flocks and fish schooling. Physics-based nature-inspired algorithms are those algorithms that are inspired by physical processes in nature. Some common examples of physics-based algorithms are Simulate Annealing (SA) [8], Gravitational Search Algorithm (GSA) [9], Central Force Optimization (CFO) [10] and Black Hole (BH) algorithm [11], etc. While Human-based nature-inspired algorithms are inspired by human behaviors and try to imitate human characteristics. The most common example of human-based algorithms is the Harmony Search algorithm (HS) [12]. Besides this very simple categorization, nature-inspired algorithms are further classified into many categories based on their working process, mathematical functions, searching methods, and capability of finding optimal solutions.
1.2 History of Nature – Inspired Computing
Another reason why we use nature-inspired algorithms is the fact that these algorithms are inspired by nature itself. Nature is amazing and it has always been a source of inspiration for scientists and researchers. Besides these visible natural phenomena, there are numerous of invisible events and marvels that our scientists are still trying to explain. For centuries, scientists and philosophers are observing natural occurrences and trying to emulate and adapt these processes. There are already numerous researches proving that nature-inspired algorithms are much efficient and have a competitive edge over deterministic methods. In today’s world where real-world problems are getting complex day-by-day and extensively large due to scientific advancements, nature-inspired computing can be exceptionally beneficial. Real-world problems have innumerable search spaces with countless difficulties, a large number of variables, and multiple dimensions. These real-world problems enhance and elucidate multiobjective functions and solve NP-hard problems. Thus, demand for resolving these complications has engaged many scientists and researchers to come down with much faster, precise, explicitly powerful nature-inspired optimization algorithms. The revolutionary period for nature-inspired algorithms started when evolution-based algorithms came into existence. In 1950, Alan Turing proposed a machine that was inspired and emulated based on principles of evolution. 1960–1970 was the most crucial decade for the development of these algorithms. In 1963, Rechenberg and Haul-Paul Schwefel solved complex computation problems in aerospace engineering using a searching technique called evolution strategy and it was extensively acknowledged as a feasible optimization method [13]. The Genetic Algorithm was then introduced by John Holland in the early 1970s and his book “Adaptation in Natural and Artificial Systems” [14]. Genetic Algorithm is a biologically inspired computational procedure that is inspired by Darwin’s theory of evolution. It shows the ability to exploit the previous information to find the optimal result or expecting off-springs. 1980–1990s were also important decades as Simulated Annealing [8] was developed by Scott Kirkpatrick, Mario P. Vechchi, and C. DanielGellat in 1983. In 1992, Marco Dorigo proposed his work on the Ant Colony Optimization algorithm [15]. It is a swarm intelligence based algorithm inspired by the social behavior of ant colonies. In 1995, a remarkable advancement was made when John Kennedy and Russell C. Eberhart came up with Particle Swarm Optimization (PSO). Differential Evolution [16] was developed by Rainer Storm and Kenneth Price in 1997 and it turned out to be much more efficient than the Genetic Algorithm on many aspects. Xin-She Yang developed many nature-inspired algorithms like Firefly Algorithm (2007) [17], Bat Algorithm (2010) [17], Cuckoo Search (2009) [17], and Flower Pollination Algorithm in 2012 [18]. Since the 2000’s many nature-inspired algorithms were developed and many of them were modified by scientists to give better solutions. The number of these algorithms in the past two decades has risen exponentially. Even in present times, this field of nature-inspired algorithms is evolving rapidly.
1.3 Uses of Nature – Inspired Algorithms
Nature-inspired algorithms are implemented and used in many fields of science and engineering. The genetic Algorithm which is an evolution-based algorithm is used for Machine Learning, Deep Learning, Computer Architecture, Bayesian Inference, etc. Swarm intelligence based algorithm i.e. Ant Colony Optimization (ACO) and Particle Swarm algorithm (PSO) are used for network routing applications [18], Neural network system design, image processing etc. [19]. Firefly algorithm, Bat Algorithm, and Cuckoo Search algorithm which were developed by Xin-She Yang are also preferred in Neural Network programming, Semantic Web, Software testing, and image clustering [20, 21]. Nature-inspired algorithms are immensely popular and preferred when dealing with multi-dimensional functions and complex problems where optimal solutions are required in a discrete search space.
1.4 Reason for Classification
In this paper, Nature-Inspired algorithms are classified into different categorize on various factors. Classification is very important because it helps us to identify and differentiate these algorithms on the basis of their searching technique, ability to provide an optimal solution, derivation, etc. It helps in a better understanding of these algorithms and to determine which technique to use for that specific operation and it also allows us to understand the mechanism of algorithms easily and efficiently either individually or in a group.
1.5 Basis of Classification
In this paper, algorithms are classified into Four major parameters which are optimization technique, population, and the number of solutions, subjects they are inspired from. Based on optimization, it is categorized into two categories which are Stochastic optimization and Deterministic optimization [1]. Stochastic Optimization generates and uses random variables. Stochastic optimization algorithms have expansive applications in problems in mathematics, computation techniques, and engineering. Deterministic global optimization focuses on finding global solutions to optimization problems. The next parameter is population-based against single solution based search [22]. Population-based algorithms execute a search with various initial points. Single solution method focus on modifying and enhancing an individual solution. The third parameter focuses on the source of inspiration and the subject from which they are derived. Besides the broad classification that we already have, it further classifies these algorithms based on the subject like biological evolution, chemical processes, physics-based, music-based and swarm behavior or social psychology. As per our knowledge, we have further distributed this paper in Sect. 2 and Sect. 3. In Sect. 2 we have described the drawbacks of the previous classifications which have been proposed earlier. Then in Sect. 3, we proposed our classification. Following which Sect. 4 concludes this paper with some related future work.
2 Drawbacks
Nothing is perfect, everything lacks something in it. As time passes by new issues and new problems arise. And thus, people keep working to turn it into the best possible version of it. Nature-inspired algorithms are developed to solve problems or to find a better solution to a problem. Today we have lots of Nature-inspired algorithms available to solve a particular problem. But how we are going to decide which would be the best algorithm to solve that problem. Though it is found that in some cases or circumstances one algorithm performs better than the other or Vice – Versa. It mainly depends on the problem, dimensions of the problem, inputs, variables, and many other factors that decide the success of the algorithm. So there is no universal algorithm that outperforms the other algorithms [23]. A best available algorithm must be effective in terms of performance and efficiency in terms of resources such as computation cost and time allowed to come up with the solution. These are important factors in deciding what algorithm to use.
While we were studying for our research work we have gone through a lot of books and research papers and we have found that a lot of researchers have classified Nature-inspired algorithms only based on their subject namely, swarm intelligence, physical or chemical-based algorithms, and evolutionary algorithms [24]. In our classification, we have also classified Nature-Inspired Algorithms based on their subject, nature of optimization, number of solutions, and also on the basis of memory, and in each category, we have arranged the list of Nature-Inspired Algorithms in their Chronological order.
3 Classification
Here we classify Natural Inspired Algorithm according to different categories which are described below one by one.
-
Inspired Subject: In this category, we classify algorithms according to their subject from which they are inspired. Like the Gravitational Search algorithm which is inspired by Physics.
-
Number of Solutions: In this category, we have two sub-Categories:
-
Trajectory-Based NIA: In this Category, we put those algorithms which use the single agent/particle/solution which get better upon iteration. And in the trajectory-based method, the initial agent/particle/solution is randomly selected.
-
Population-Based NIA: In this category, we put those algorithms which use the set of agent/particle/solutions which also result in obtaining the number of a solution in a particular iteration. A population-based algorithm selects the best solution among the number of solutions generated in the iterations. This is called elitism.
-
-
Based on optimization: In this category also we have two sub-categories:
-
Deterministic Algorithms: These algorithms follow a certain procedure and provide the same solution on different runs.
-
Stochastic Algorithms: These algorithms possess randomness and provide different solutions on a different run. The main advantage of stochastic algorithms is the ability to explore several regions of the search space. That is the reason they can escape from the local optima to reach the global optimum.
-
-
Based on Memory: In this category also we have two sub-categories:
-
Memory-Based Algorithms: Memory-based algorithms approach the problem by functioning over the entire dataset. The memory-based approach uses data to compute the similarity between items. These memory-based algorithms calculate the similarity between previously analyzed items and produce a prediction by taking the weighted average of all the ratings.
-
Memory-less Algorithms: Memory-less algorithms operate on an individual problem and its dataset to find an optimal solution rather than comparing and predicting results from previously compiled solutions (Tables 1 and 2).
-
4 Conclusion and Future Works
As the provenance of innovation of nature-inspired algorithms are very contrasting and distinct so it is indisputable that algorithms are also varying in their nature. Hence in this paper, we classify the existing nature-inspired algorithms like genetic algorithm, Cuckoo search, Bat algorithm, Central force algorithm, Differential evolution, Genetic programming, and many other natural inspired algorithms based on four parameters. This can be a very informative source to choose the appropriate algorithm for the problem and also to form a base for further higher research.
It might be notable that the classification is not unique. But this paper seems to be effective for the researchers and a also for the common people who don’t have prior knowledge about these algorithms. It is very hard to find the appropriate algorithm for the problem because there is a huge number of nature-inspired algorithms are present out there. So the main motive of the paper is to help the researcher to find the appropriate algorithm from the ocean of these algorithms. So they can solve the real-world optimization problem more effectively. As we all know that the development of nature-inspired algorithms for optimization is arising rapidly and has seen enormous growth in the past few decades.
In the future, we try to add on more parameters in the classification of natureinspired algorithms i.e. objective function of the algorithm. But this classification can be broadened to freshly originated nature-inspired algorithms and also can be practiced for alteration and modifying already existing nature-inspired algorithms.
References
Birattari, M., Paquete, L., Stutzle, T., Varrentrapp, K.: Classification of metaheuristics and design of experiments for the analysis of components. Technical report, AIDA-01-05 (2001)
Digalakis, J.G., Margaritison, K.G.: Benchmarking functions for genetic algorithms. Int. J. Comput. Math. 00, 1–27 (2000)
Tang, K.S., Man, K.F., Kwong, S., He, Q.: Genetic algorithms and their applications. IEEE Signal Process. Mag. 13(6), 22–37 (1996)
Shi, Y., Eberhart, R.: A modified particle swarm optimizer. In: Proceedings of IEEE International Conference on Evolutionary Computation, pp. 69–73 (1998)
Kennedy, J., Eberhart, R.: Particle swarm optimization. In: Proceedings of IEEE International Conference on Neural Networks, pp. 1942–1948 (1995)
Karaboga, D., Basturk, B.: On the performance of artificial bee colony (ABC) algorithm. Appl. Soft Comput. 8(1), 687–697 (2007)
Dorigo, M., Maniezzo, V., Colorni, A.: Ant system: optimization by a colony of cooperating agents. IEEE Trans. Syst. Man Cybern. 26(1), 1–13 (1996)
Kirkpatrick, S., Gelatto, C.D., Vecchi, M.P.: Optimization by simulated annealing. Science 220, 671–680 (1983)
Rashedi, E., Nezamabadi, S., Saryazdi, S.: GSA: a gravitational search algorithm. Inf. Sci. 179(13), 2232–2248 (2009)
Formato, R.A.: Central force optimization: a new metaheuristic with applications in applied electromagnetics. Prog. Electromagn. Res. PIER 77, 425–491 (2007)
Hatamlou, A.: Black hole: a new heuristic optimization approach for data clustering. Inf. Sci. 222, 175–184 (2012)
Yang, X.-S.: Harmony search as a metaheuristic algorithm. In: Geem, Z.W. (ed.) Music-Inspired Harmony Search Algorithm. SCI, vol. 191, pp. 1–14. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-00185-7_1
Back, T., Hoffmeister, F., Shwefel, H.-P.: Application of evolutionary algorithms. Report of the System Analysis Research Group, (LS XI) SYS -2/92, University of Dortmund, Department of Computer Science (1992)
Goldberg, D.E.: Genetic Algorithms in Search, Optimization and Machine Learning. Addison-Wesley, Reading (1989)
Dorigo, M., Birattari, M., Stützle, T.: Ant colony optimization – artificial ants as a computational intelligence technique. IEEE Comput. Intell. Mag., 2839 (2006)
Storn, R., Price, K.: Differential evolution – a simple and efficient heuristic for global optimization over continuous spaces. J. Global Optim. 11(4), 341–359 (1997). https://doi.org/10.1023/A:1008202821328
Yang, X.S., He, X.: Firefly algorithm: recent advances and applications. Int. J. Swarm Intell. 1(1), 36–50 (2013)
Yang, X.-S.: Flower pollination algorithm for global optimization. In: Durand-Lose, J., Jonoska, N. (eds.) UCNC 2012. LNCS, vol. 7445, pp. 240–249. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-32894-7_27
Omran, G.M., Engelbrecht, A.P., Salman, A.: Particle swarm optimization method for image clustering. Int. J. Pattern Recognit. Artif. Intell. 19(03), 297–321 (2005)
Horng, M.H.: Vector quantization using the firefly algorithm for image compression. Expert Syst. Appl. 39(1), 1078–1091 (2012)
Valian, E., Mohanna, S., Tavakoli, S.: Improved cuckoo search algorithm for feedforward neural network training. Int. J. Artif. Intell. Appl. 2(3), 36–43 (2011)
Beheshti, Z., Shamsuddin, S.M.: A review of population-based meta-heuristic algorithm. Int. J. Adv. Soft Comput. Appl. 5, 1–35 (2013)
Adam, S.P., Alexandropoulos, S.-A.N., Pardalos, P.M., Vrahatis, M.N.: No free lunch theorem: a review. In: Demetriou, I.C., Pardalos, P.M. (eds.) Approximation and Optimization. SOIA, vol. 145, pp. 57–82. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-12767-1_5
Yadav, S.L., Phogat, M.: Study of nature inspired algorithms. Int. J. Comput. Trends Technol. (IJCTT) 49(2), 100–105 (2017)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 IFIP International Federation for Information Processing
About this paper
Cite this paper
Tahir, M.A., Khan, H.F., Khan, M.M. (2020). Comparative Study of Nature-Inspired Algorithms. In: Sharma, S.K., Dwivedi, Y.K., Metri, B., Rana, N.P. (eds) Re-imagining Diffusion and Adoption of Information Technology and Systems: A Continuing Conversation. TDIT 2020. IFIP Advances in Information and Communication Technology, vol 617. Springer, Cham. https://doi.org/10.1007/978-3-030-64849-7_32
Download citation
DOI: https://doi.org/10.1007/978-3-030-64849-7_32
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-64848-0
Online ISBN: 978-3-030-64849-7
eBook Packages: Computer ScienceComputer Science (R0)