The application of artificial intelligence in everyday life is becoming all-pervasive and unavoidable. Within that vast field, a special place belongs to biomimetic/bio-inspired algorithms for multiparameter optimization, which find their use in a large number of areas. Novel methods and advances are being published at an accelerated pace.
1. Introduction
Nowadays, we are witnessing an enormous popularity and a literal avalanche of bio-inspired algorithms
[1] permeating practically all facets of life. Procedures using artificial intelligence (AI)
[2] are being built into a vast number of different systems that include Internet search engines
[3], cloud computing systems
[4], Internet of Things
[5], autonomous (self-driving) vehicles
[6], AI chips in flagship smartphones
[7], expert medical systems
[8], robots
[9], agriculture
[10], architectural designs
[11] and data mining
[12], to quote just a tiny fragment. AI can chat with humans and even solve problems stated in the common human language
[13], generate paintings and other artworks at a textual prompt
[14], create music
[15], translate between different languages
[16], play very complex games and win them
[17], etc. AI artworks have been winning art competitions (and creating controversies at that)
[15]. Questions are even posed as to whether AI can show its own creativity comparable to that of humans
[18]. Many AI functionalities are met in ordinary life, and we may not even recognize them. All of the mentioned applications and many more are exponentially multiplying, becoming more powerful and more spectacular. The possibilities, at least currently, appear endless. Concerns have been raised for possible dangers for humanity as a whole with using AI, and some legislations have already brought laws limiting the allowed performances and uses of artificial intelligence
[19].
Not all results in the field of biomimetic computing are so spectacularly in the spotlight and followed by hype as those that mimic human behavior or even our creativity. However, maybe the most important achievements are hidden among the results that do not belong to this group. They include handling big data, performing time analysis or performing multi-criteria optimization. Such intelligent algorithms that are mostly “invisible” to the eyes of the general public are causing a silent revolution not only in engineering, physics, chemistry, medicine, healthcare and life sciences, but also in economics, finance, business, cybersecurity, language processing and many more fields.
Bio-inspired optimization algorithms are extremely versatile and convenient for complex optimization problems. The result of such wide applicability is their overwhelming presence in diverse fields—there are practically no areas of human interest where they do not appear. As an illustration of their ubiquity, this section mentions just some selected fields where their applications have been reported. They encompass various branches of engineering, including mechanical engineering (automotive
[20][21][20,21], aerospace
[22], fluid dynamics
[23], thermal engineering
[24], automation
[25], robotics
[26], mechatronics
[27], MEMS
[28][29][28,29], etc.), electrical engineering
[30] (including power engineering
[31], electronics
[32], microelectronics
[33] and nanoelectronics
[33], control engineering
[34], renewable energy
[35], biomedical engineering
[36], telecommunications
[36], signal processing
[37]), geometrical optics
[38], photonics
[39], nanophotonics and nanoplasmonics
[40], image processing
[41] including pattern recognition
[42], computing
[30],
[43], networking (computer networks
[44] including Internet and Intranet
[45], social networks
[46], networks on a chip
[47], optical networks
[48], cellular (mobile) networks
[49], wireless sensor networks
[50], Internet of things
[51], etc.), data clustering and mining
[52], civil engineering
[53][54][53,54], architectural design
[55], urban engineering
[56], smart cities
[57], traffic control and engineering
[58], biomedicine and healthcare
[59][60][59,60], pharmacy
[61][62][61,62], bioinformatics
[63], genomics
[64], computational biology
[60], environmental pollution control
[65] and computational chemistry
[66]. Other optimization fields where biomimetic algorithms find application include transportation and logistics
[67], industrial production
[68], manufacturing including production planning, supply chains, resource allocation and management
[69], food production and processing
[70], agriculture
[71], financial markets
[72] including stock market prediction
[73], as well as cryptocurrencies and blockchain technology
[74], and even such seemingly unlikely fields as language processing and sentiment analysis
[75]. The cited applications are just a tip of an iceberg, and there is a vast number of other uses not even mentioned here.
2. A Possible Taxonomy of Bio-Inspired Algorithms
This section presents one possible hierarchical classification of bio-inspired algorithms. The consideration has been made without taking into account any specific targeted applications of the algorithms. Generally, taxonomies of bio-inspired algorithms are relatively rarely considered in the literature. The majority of papers simply skip the topic altogether or handle it casually, presenting only the methods that are of immediate interest to the subject of the paper or, even more often, giving only a partial and non-systematic picture and denoting it as a classification. This is not to say that exhaustive and systematic papers on the subject do not exist. However, it appears that no consensus has been reached about the taxonomy of at least some bio-inspired algorithms yet.
A problem when attempting to define a categorization in this field is that some approaches, although having different names, actually present algorithms very similar or even basically identical to those previously published. Often they offer only incremental advances, such as somewhat better results at benchmarks of precision or computing speed. This is a very slippery ground, however, since according to the previously mentioned No Free Lunch Theorem
[76], no algorithm is convenient for all purposes, and while one of them may offer a fast and accurate solution to one class of optimization problems, there is no guarantee that it will not perform drastically worse with other problems, become stuck in a local optimum, never even reaching a global optimum, or even fail completely to give a meaningful solution. For this reason, it is very difficult to decide which procedures merit inclusion in the classification and which do not.
A number of benchmarks have been proposed to compare different optimization procedures, and the most recent publications in the field use them to prove the qualities and advantages of their proposals over the competing ones. A systematic review of methods to compare the performance of different algorithms has been published by Beiranvand, Hare and Lucet
[77][81]. A more recent consideration of that kind dedicated to metaheuristics has been presented by Halim, Ismail and Das
[78][82], who offered an exhaustive and systematic review of measures for determining the efficiency and the effectiveness of optimization algorithms. A benchmarking process for five global approaches for nanooptics optimization has been described by Scheider et al.
[79][83].
One can find various taxonomy proposals in the literature, each with its own merits and disadvantages.
Figure 12 represents the scheme of a possible classification of bio-inspired optimization methods.
Figure 12.
Possible classification of bio-inspired optimization methods.
3. Heuristics
Heuristics can be briefly described as problem solving through approximate algorithms. The word stems from the Ancient Greek εὑρίσκω (meaning “to discover”). It includes approaches that do not mandatorily result in an optimum solution and are actually imperfect, yet are adequate for attaining a “workable” solution, i.e., a sufficiently good one that will probably be useful and accurate enough for a majority of cases. On the other hand, they may not work in certain cases, or may consistently introduce systematic errors in others. The methods used include pragmatic trade-offs, rules of thumb (use of approximations based on prior knowledge in similar situations), a trial and error approach, the process of elimination, guesswork (“educated guesses”) and acceptable/satisfactory approximations. The main benefit is that heuristic approaches usually have vastly lower computational cost, and their main deficiencies are that they are usually dependent on a particular problem (i.e., not generally applicable in all situations) and their accuracy may be quite low in certain cases, while inherently they do not offer a way to estimate that accuracy.
Heuristic approaches include common heuristic algorithms, metaheuristic algorithms and hyper-heuristic algorithms. All of these approaches are considered to represent the foundations of AI.
“Basic” Heuristic Algorithms
The heuristic algorithms represent the oldest approximate approach to optimization problems, from which metaheuristics and hyper-heuristics evolved. They include a number of approximate goal attainment methods. While there is no universally accepted taxonomy of common heuristic algorithms, a possible classification is presented in
Table 1. Metaheuristic and hyper-heuristic algorithms are not included in this subsection, since these are covered separately in the next two sections. This is a short overview only, presented for the sake of generality, since the quoted algorithms are mostly unrelated to bio-inspired methods. The comprehensiveness of the table is not claimed, and some quoted methods may overlap more or less, thus appearing in multiple categories at the same time.
Table 1.
Selected heuristic algorithms, excluding metaheuristics or hyper-heuristics.