Computing Atlas

How Computing Was Built
Sign In
Text size
100%
Theme
Algorithm

Differential Evolution

Optimization Algorithm

Differential evolution is an evolutionary algorithm that optimizes a problem by iteratively trying to improve a candidate solution with regard to a given measure of quality, a method commonly classed among metaheuristics since it makes few or no assumptions about the problem being optimized and can search very large spaces of candidate solutions, without any guarantee that an optimal solution will ever be found. It is used for multidimensional real-valued functions and does not use the gradient of the problem being optimized, so it does not require the optimization problem to be differentiable, unlike classic methods such as gradient descent and quasi-Newton methods, and it can therefore be applied to problems that are not even continuous or that are noisy or change over time. It works by maintaining a population of candidate solutions, creating new candidates by combining existing ones according to simple formulae, and keeping whichever candidate has the best score on the optimization problem at hand, treating the problem as a black box that merely provides a measure of quality for a given candidate.

Facts
Classification
Design Technique
Heuristic or Approximation 1
Sources
1. Differential Evolution (Wikipedia)
https://en.wikipedia.org/wiki/Differential_evolution
Quote, https://en.wikipedia.org/wiki/Differential_evolution
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.
Comments (0)
No comments yet. Be the first to share a thought.
Reader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.