Why Evolutionary Algorithms Are Rarely Studied and Used But Are Still Important

I’m a fan of Evolutionary Algorithms. But they do have weaknesses. Here I list six reasons why Evolutionary Algorithms are rarely seen in research and practice, and two reasons why Evolutionary Algorithms are very important.

What Are Evolutionary Algorithms?

Evolutionary algorithms are techniques that are very loosely based on analogies with biological systems or physics. The first evolutionary algorithm to make a big impression was numerical optimization using a Genetic Algorithm. An example of numerical optimization is finding the value of the weights and biases in a neural network that minimize some form of error.

Genetic Algorithms typically used binary encoding for numeric values, which made them very slow, and so Genetic Algorithms were adapted to use ordinary floating point numbers, and such an algorithm is typically called an Evolutionary Algorithm to distinguish it from a classic Genetic Algorithm. Another popular Evolutionary Algorithm for numerical optimization is Particle Swarm Optimization, based on the swarming behavior of animals like fish and birds.

Therefore, the term Evolutionary Algorithm (EA) refers to a specific kind of numerical optimization, and also refers to most techniques which use simulated forms of chromosome crossover, mutation, and natural selection.



A schematic of evolutionary optimization for a numerical optimization problem.


A second major category of Evolutionary Algorithms are those that solve a combinatorial optimization problem. An example is the Traveling Salesman Problem to find the order in which to visit a set of cities where a solution might look like (Boston, Denver, Chicago, Anaheim). The first combinatorial optimization EA to make a big impression was Simulated Annealing, which is very loosely based on the physics of cooling metal.

Simulated Annealing is rather limited and many other algorithms were devised, including Simulated Bee Colony algorithms, based on the behavior of honeybees.

Six Reasons Why Evolutionary Algorithms Are Not Studied And Used As Much As Classical Algorithms

Here are six reasons why EAs are not studied or used as often as classical mathematical algorithms. The reasons are all interrelated and overlapping.

1. EAs have limited mathematical foundation. This means there are low barriers to entry and even a high school student can understand and create an EA. This results in the study of EAs having low prestige compared to classical algorithms that require years of math study preparation.

2. The low barriers to entry lead to many poor research papers, again lowering prestige of the field.

3. Because EAs have limited mathematical foundation, EAs are very limited in the topics that can be rigorously studied. If you work in research, the name of the game is still publish or perish, and EAs don’t generate ideas that can be explored over and over, unlike classical algorithms.

4. Because EAs have limited mathematical foundation, it’s difficult to join the herd of young researchers who start every research paper with a load of math equations with Greek letters. Such math introductions are often unneeded and are there in large part solely to impress conference paper submission reviewers — who themselves are usually inexperienced graduate students who are part of the herd.

5. Because EAs have limited mathematical foundation, most research essentially takes the form of engineering — the creation of yet another algorithm based on yet another creature or physical system. Various Wikipedia articles list well over 100 types of EAs. This makes it very difficult to organize principal themes and common ideas.

6. An EA is not a specific algorithm. An EA is a meta-heuristic, or set of very general guidelines. Therefore no two implementations of an EA are the same. It is possible to create thousands of variations of an Evolutionary Algorithm for numerical optimization — how are individuals are selected for combination, how are they combined, how are they mutated, and on and on. Therefore there are no standards, compared with, say, neural networks, which have a somewhat standard set of terminologies and techniques.

Why Evolutionary Algorithms Are Important

Evolutionary Algorithms are important. Here are two reasons why.

1. EAs are very general and they can solve some problems that can’t be tackled by classical algorithms. Examples are numerical optimization problems that have an error function that isn’t differentiable, and therefore cannot be solved by techniques that use gradient ascent or gradient descent. Another example are numerical optimization problems that have complex constraints. For combinatorial optimization problems, EAs are arguably competitive with most classical algorithms.

2. Some people, including me, believe that Evolutionary Algorithms have the potential to surpass classical algorithms for advanced AI systems. A large language model, such as GPT-3, has 175 billion parameters (neural network weights and biases) that must be optimized. Applying classical gradient-based methods costs hundreds of thousands of dollars in compute resources, and takes weeks of runtime using the most powerful available hardware. In theory, an EA can do better. Currently, optimizing even a medium-sized neural network using an EA just takes much too long — thousands of times slower than using gradient-based back-propagation. But an EA can do better — but only when quantum computing becomes available. When that happens, EAs might dominate computing.



Several of my favorite science fiction movies feature the theme of human evolution in the far distant future.

Left: In “Dune” (1984), which is set in the year 10,191 in the far distant future, the Guild Navigators are ultra-evolved humans who can navigate spaceships through space time. The Navigators appear vaguely fish-like and live in a gas made from “spice” which gives them their powers.

Right: In “The Time Machine” (1960), the hero advances to the year 802,701 where he finds that humans have evolved into two species. The Eloi are gentle and peaceful. The Morlocks are brutish and violent.


This entry was posted in Machine Learning. Bookmark the permalink.

Leave a Reply