Well, both genetic algorithms and differential evolution are examples of evolutionary computation.

Genetic algorithms keep pretty closely to the metaphor of genetic reproduction. Even the language is mostly the same-- both talk of chromosomes, both talk of genes, the genes are distinct alphabets, both talk of crossover, and the crossover is fairly close to a low-level understanding of genetic reproduction, etc.

Differential evolution is in the same style, but the correspondences are not as exact. The first big change is that DE is using actual real numbers (in the strict mathematical sense-- they're implemented as floats, or doubles, or whatever, but in theory they're ranging over the field of reals.) As a result, the ideas of mutation and crossover are substantially different. The mutation operator is modified so far that it's hard for me to even see why it's called mutation, as such, except that it serves the same purpose of breaking things out of local minima.

On the plus side, there are a handful of results showing DEs are often more effective and/or more efficient than genetic algorithms. And when working in numerical optimization, it's nice to be able to represent things as actual real numbers instead of having to work your way around to a chromosomal kind of representation, first. (Note: I've read about them, but I've not messed extensively with them so I can't really comment from first hand knowledge.)

On the negative side, I don't think there's been any proof of convergence for DEs, yet.

Answer from Novak on Stack Overflow
Top answer
1 of 2
29

Well, both genetic algorithms and differential evolution are examples of evolutionary computation.

Genetic algorithms keep pretty closely to the metaphor of genetic reproduction. Even the language is mostly the same-- both talk of chromosomes, both talk of genes, the genes are distinct alphabets, both talk of crossover, and the crossover is fairly close to a low-level understanding of genetic reproduction, etc.

Differential evolution is in the same style, but the correspondences are not as exact. The first big change is that DE is using actual real numbers (in the strict mathematical sense-- they're implemented as floats, or doubles, or whatever, but in theory they're ranging over the field of reals.) As a result, the ideas of mutation and crossover are substantially different. The mutation operator is modified so far that it's hard for me to even see why it's called mutation, as such, except that it serves the same purpose of breaking things out of local minima.

On the plus side, there are a handful of results showing DEs are often more effective and/or more efficient than genetic algorithms. And when working in numerical optimization, it's nice to be able to represent things as actual real numbers instead of having to work your way around to a chromosomal kind of representation, first. (Note: I've read about them, but I've not messed extensively with them so I can't really comment from first hand knowledge.)

On the negative side, I don't think there's been any proof of convergence for DEs, yet.

2 of 2
15

Differential evolution is actually a specific subset of the broader space of genetic algorithms, with the following restrictions:

  • The genotype is some form of real-valued vector
  • The mutation / crossover operations make use of the difference between two or more vectors in the population to create a new vector (typically by adding some random proportion of the difference to one of the existing vectors, plus a small amount of random noise)

DE performs well for certain situations because the vectors can be considered to form a "cloud" that explores the high value areas of the solution solution space quite effectively. It's pretty closely related to particle swarm optimization in some senses.

It still has the usual GA problem of getting stuck in local minima however.

🌐
Ijs
dis.ijs.si › tea › Publications › Tusar07Differential.pdf pdf
Differential Evolution Versus Genetic Algorithms in Multiobjective Optimization
Differential Evolution Versus GAs in Multiobjective Optimization ... Fig. 2. Variation of real-coded individuals ... If the candidate is better than its parent, it replaces the parent in the population. Otherwise, the candidate is discarded. As a steady-state algorithm, DE implicitly
🌐
Micai
micai.org › 2009 › proceedings › complementary › cd › ws-imso › 88 › paper88.micai09.pdf pdf
A Comparative Study on Differential Evolution and Genetic ...
ity. The empirical study shows that the differential evolution algorithm · has a greater degree of computational complexity for combinatorial prob- lems than the genetic algorithm.
🌐
Springer
link.springer.com › home › evolutionary multi-criterion optimization › conference paper
Differential Evolution versus Genetic Algorithms in Multiobjective Optimization | Springer Nature Link
Experimental results on 16 numerical ... of problems, the algorithms based on differential evolution perform significantly better than the corresponding genetic algorithms with regard to applied quality indicators....

Well, both genetic algorithms and differential evolution are examples of evolutionary computation.

Genetic algorithms keep pretty closely to the metaphor of genetic reproduction. Even the language is mostly the same-- both talk of chromosomes, both talk of genes, the genes are distinct alphabets, both talk of crossover, and the crossover is fairly close to a low-level understanding of genetic reproduction, etc.

Differential evolution is in the same style, but the correspondences are not as exact. The first big change is that DE is using actual real numbers (in the strict mathematical sense-- they're implemented as floats, or doubles, or whatever, but in theory they're ranging over the field of reals.) As a result, the ideas of mutation and crossover are substantially different. The mutation operator is modified so far that it's hard for me to even see why it's called mutation, as such, except that it serves the same purpose of breaking things out of local minima.

On the plus side, there are a handful of results showing DEs are often more effective and/or more efficient than genetic algorithms. And when working in numerical optimization, it's nice to be able to represent things as actual real numbers instead of having to work your way around to a chromosomal kind of representation, first. (Note: I've read about them, but I've not messed extensively with them so I can't really comment from first hand knowledge.)

On the negative side, I don't think there's been any proof of convergence for DEs, yet.

Answer from Novak on Stack Overflow
🌐
ResearchGate
researchgate.net › publication › 225878834_Differential_Evolution_versus_Genetic_Algorithms_in_Multiobjective_Optimization
(PDF) Differential Evolution versus Genetic Algorithms in Multiobjective Optimization
May 19, 2007 - Experimental results on 16 numerical ... of problems, the algorithms based on differential evolution perform significantly better than the corresponding genetic algorithms with regard to applied quality indicators....
🌐
Wikipedia
en.wikipedia.org › wiki › Differential_evolution
Differential evolution - Wikipedia
February 9, 2025 - Differential evolution (DE) is an evolutionary algorithm to optimize a problem by iteratively trying to improve a candidate solution with regard to a given measure of quality. Such methods are commonly known as metaheuristics as they make few or no assumptions about the optimized problem and can search very large spaces of candidate solutions.
🌐
Springer
link.springer.com › home › computational science and its applications – iccsa 2012 › conference paper
Comparison between Genetic Algorithms and Differential Evolution for Solving the History Matching Problem | Springer Nature Link
This work presents a performance comparison between Differential Evolution (DE) and Genetic Algorithms (GA), for the automatic history matching problem of reservoir simulations. The history matching process is an inverse problem that searches a set of parameters that...
Find elsewhere
🌐
Quora
quora.com › What-is-the-difference-between-Genetic-algorithm-and-differential-evolution
What is the difference between Genetic algorithm and differential evolution? - Quora
Answer (1 of 3): The main difference is the encoding, genetic algorithm always encodes its individuals in a population as bit strings. The real number encoding of GA is usually called evolutionary strategies or genetic programming if using a ...
🌐
Springer
link.springer.com › home › advances in information systems › conference paper
Performance Comparison of Genetic and Differential Evolution Algorithms for Digital FIR Filter Design | Springer Nature Link
Differential Evolution (DE) algorithm is a new heuristic approach mainly having three advantages; finding the true global minimum of a multi modal search space regardless of the initial parameter values, fast convergence, and using a few control parameters. DE algorithm which has been proposed particulary for numeric optimization problems is a population based algorithm like genetic algorithms using the similar operators; crossover, mutation and selection.
🌐
Consensus
consensus.app › search › differential-evolution-versus-genetic-algorithms › jJg0IYlxRXuNFoHlfUW9yw
Differential Evolution Versus Genetic Algorithms - Consensus
Genetic algorithms (GAs) and ... DE is generally simpler, often more efficient, and tends to outperform GAs in many numerical optimization tasks, especially in high-dimensional or multiobjective problems...
🌐
Frontiers
frontiersin.org › articles › 10.3389 › fbuil.2020.00102 › full
Frontiers | A Comparative Study of Differential Evolution Variants in Constrained Structural Optimization
July 9, 2020 - Differential evolution (DE) is a population-based metaheuristic search algorithm that optimizes a problem by iteratively improving a candidate solution based on an evolutionary process. Such algorithms make few or no assumptions about the underlying optimization problem and can quickly explore very large design spaces.
🌐
IEEE Xplore
ieeexplore.ieee.org › document › 6505683
Comparison of Differential Evolution and Genetic Algorithm in the design of permanent magnet Generators | IEEE Conference Publication | IEEE Xplore
The Genetic Algorithm (GA) is a ... find global optima. The Differential Evolution (DE) Algorithm is a population-based, combinatorial algorithm and like the GA, is able to find the global minimum ......
🌐
IEEE Xplore
ieeexplore.ieee.org › document › 7586422
Comparison between genetic algorithm and differential evolution algorithm applied to one dimensional bin-packing problem | IEEE Conference Publication | IEEE Xplore
The one dimensional bin-packing problem (BPP) based on the genetic algorithm (GA) and differential evolution (DE) is studied. First of all, we propose the mathematical model of one BPP. In the next step, in order to obtain the solution of BPP, we design the detailed processes and strategies for one BPP based on the GA and DE algorithms and analyze the mainly different between two algorithms.
Top answer
1 of 2
6

If you're asking for a homework assignment, then I can't really help you, because the answer really depends on how your professor interprets the taxonomy. But if you're asking for your own edification, I can give you my view.

First, the distinctions between the four classes you list (particularly between 1, 3, and 4) are largely historic. There are still some very real differences of course, but we don't view the lines between them as sharply as we once did. This means, for example, that GAs can be real-valued instead of binary and might rely on mutation more than crossover. You can have an evolution strategy for the traveling salesman problem. Really the description in the book isn't terribly well suited for use as a taxonomy for this reason. I teach from this book, and I like it a lot, so that's not really a criticism. I don't think the authors intended for you to try and use it as a well-defined taxonomy either.

If we go with this idea as a rough taxonomy though, then in principle, we have an umbrella term: "Evolutionary Computation" or "Evolutionary Algorithms" that covers all four of the cases you list. In practice though, while if someone says "evolution strategy" or "genetic programming", it's because they intentionally want to highlight that that's what they're doing, people sometimes say "genetic algorithms" when they really mean "evolutionary algorithms". So that term is especially hard to interpret.

So we might be able to call DE a GA with that understanding and be OK, but it really depends on who's asking the question as to whether that's what they had in mind or not.

Looking at the problem another way though, it gets even fuzzier. Right now, you're reading someone else's taxonomy and trying to fit the pieces together. What if you take a step back and try to formally define what a genetic algorithm or evolutionary algorithm is yourself? You might come up with something like "an algorithm that maintains a population of one or more candidate solutions, usually generated randomly, and continually selects the better individuals from the population, produces new individuals from the old ones via some type of variation operators, and favors the better of these new individuals for insertion into the population".

It's hard to get much narrower than that without excluding some things we think are "obviously" evolutionary algorithms, but this definition is really very broad. Certainly things like differential evolution and particle swarm optimization meet this definition, but so does, for example, simulated annealing. You can even take a simple next-descent hill-climber and call it a (1+1)-ES.

Personally then, my answer to your question is "sort of". If I write a paper that proposes a novel DE variant that looks super-awesome, I'd absolutely submit it to a journal like Evolutionary Computation. I know that my algorithm would be viewed as being appropriate for a venue that focused on genetic and evolutionary algorithms. But I probably wouldn't tell people that I used a "genetic algorithm" either, because that term doesn't feel precise enough to capture what it is that I want to express.

I'm not sure this is a particularly helpful answer, but I think it's probably a pretty common view among people in the field.

2 of 2
4

The wording of the original paper that introduced Differential Evolution is such that the authors consider DE a different thing from Genetic Algorithms or Evolution Strategies. Example:

Choosing a subgroup of parameters for mutation is similiar to a process known as crossover in GAs or ESs.

Another one:

A further disadvantage of GAs is the amount of expertise that is required to operate them, the same holds true for ESs.

Yet the differences remain unclear to me (I am not an expert in the field). Taking Eiben & Smith taxonomy strictly I would say DE is just another class of Evolutionary Algorithms.

🌐
ScienceDirect
sciencedirect.com › topics › computer-science › differential-evolution-algorithm
differential evolution algorithm - an overview | ScienceDirect Topics
The Differential Evolution (DE) algorithm is an SI-based search strategy technique that has been developed to solve complex optimization problems. This optimization method is introduced to overcome the main weakness of the genetic algorithm, namely the lack of local search in this algorithm.
🌐
Towards Data Science
towardsdatascience.com › home › latest › unit 7) differential evolution – automated machine learning
Unit 7) Differential Evolution - Automated Machine Learning | Towards Data Science
January 15, 2025 - Despite Differential Evolution ... differs from standard genetic algorithms in that it relies upon distance and directional information through unit vectors for reproduction....
🌐
ScienceDirect
sciencedirect.com › science › article › abs › pii › S0308521X04000745
Differential evolution – an easy and efficient evolutionary algorithm for model optimisation - ScienceDirect
July 19, 2004 - Investigations of its performance in the optimisation of a challenging beef property model with 70 interacting management options (hence a 70-dimensional optimisation problem) indicate that DE performs better than Genial (a real-value genetic algorithm), which has been the preferred operational package thus far. Despite DE's apparent simplicity, the interacting key evolutionary operators of mutation and recombination are present and effective.
🌐
IEEE Xplore
ieeexplore.ieee.org › document › 4424575
Comparison and integrated use of differential evolution and genetic algorithms for space trajectory optimisation | IEEE Conference Publication | IEEE Xplore
Results show that, depending on the features of the problem, the comparison may produce different results, as GA can be better than DE in terms of efficiency, i.e., capability of finding the global optimum, and number of function evaluations, ...
🌐
IOPscience
iopscience.iop.org › article › 10.1088 › 1757-899X › 1098 › 3 › 032082
Comparison between genetic algorithm with Differential ...
To ensure we keep this website safe, please can you confirm you are a human by ticking the box below · If you are unable to complete the above request please contact us using the below link, providing a screenshot of your experience