Differential Evolution

Michael BrenndoerferOctober 29, 20262 min read
Machine Learning from ScratchAll chapters
Part 15 of 15Heuristic and Evolutionary Optimization
Chapter 92Differential Evolution
Reading section 1 of 10 · Differential Evolution · 2 minSection 1 of 10 · 2 min

Section 1 of 10 · 2 min read

Differential EvolutionSection view · Sections in this chapter1 / 10 ↓
Reading tools Definitions, links & notes

Choose your expertise level to adjust how many terms are explained. Beginners see more tooltips, experts see fewer to maintain reading flow. Hover over underlined terms for instant definitions.

Article links

Make inline references clickable

Notes & comments

A simulation may return a cost for each proposed design without providing a usable gradient. If several basins contain good designs, repeatedly improving one starting point can miss a better region. Gradient Descent and Numerical Optimization gave us local updates, Local Search and Simulated Annealing introduced stochastic search, and Genetic Algorithms used a population of discrete candidates. We now build a population search directly for continuous decision variables.

Differential Evolution (DE) forms a perturbation from the difference between two population members, scales it by a factor FF, and adds it to a third member. That difference supplies a direction and length from the current population geometry. It contains no objective values and is not a gradient estimate.

Step lengths depend on the population: widely separated donors can produce long differences, and a contracting population produces shorter differences. This self-scaling mechanism needs no explicit cooling schedule, but contraction can occur around a poor solution as well as a good one.

This chapter develops DE/rand/1/bin from differential mutation, binomial crossover, greedy one-to-one replacement, and box-bound handling. We compare it with uniform random search and bounded multistart local optimization on a small synthetic objective. Every method receives the same number of candidate evaluations, including initialization. That controls evaluation effort; it does not imply equal runtime or a universal ranking.

Comments

Add to the conversation

A question, a correction, or an example from your own work.

No comments yet. Be the first to share your thoughts!

Newsletter

Stay up to date

Get new articles, book updates, and notes on AI and technology.

Unsubscribe at any time. Privacy policy