Differential evolution is a stochastic, nature-inspired evolutionary computing algorithm for search and optimization. It uses population-based candidate solutions and vector differences to create trial solutions. section 2.2 section 2.4
Use these distinctions to place differential evolution among optimization methods:
- Accepts randomness in parameters or decisions, so runs are not exactly repeatable and solution quality or runtime cannot be guaranteed. section 2.2
- Can avoid becoming trapped in local optima, although it may also miss an optimal solution. section 2.2
- Belongs to evolutionary computing, alongside genetic algorithms, genetic programming, evolutionary programming, and evolutionary strategies. section 2.4
Treasure-hunting analogy
Imagine a group searching an island for pirate treasure. Feasible areas represent the search space, the treasure represents an optimal solution, and the searchers represent search agents. Randomized exploration helps them avoid following one potentially misleading path. section 2.2
Figure 2.16 Deterministic vs. stochastic algorithms. Deterministic algorithms follow a set procedure, and the results are repeatable, while stochastic searches have elements of randomness built into the algorithms.
Compare repeatable deterministic procedures with stochastic searches that include randomness. section 2.2

