liveBook · Manning

Evolutionary computation

As explained in Optimization Algorithms: AI techniques for design, planning, and control problems

Evolutionary computation is a family of computational methods inspired by biological evolution that iteratively improves candidate solutions through variation and selection.

Evolutionary computation (EC) is a family of search methods inspired by biological evolution. Instead of improving one candidate solution at a time, it works with a population of candidates and repeatedly produces and selects new ones. Genetic algorithms, differential evolution, genetic programming, evolutionary programming, evolutionary strategies, cultural algorithms, and co-evolution belong to this family. section 7.2.3 section 7.1

A search-team analogy

Imagine several people searching for treasure. Keep the better-performing searchers, replace others with new recruits, and continue searching. That captures the selection intuition: promising candidates influence the next generation. It is an analogy, not a substitute for defining how candidate solutions and their quality are measured. section 7.0 section 7.2.3

A typical evolutionary search repeats these operations:

  • Create an initial population of candidate solutions, randomly or with a heuristic. section 7.2.3
  • Evaluate each candidate with a fitness function and select promising parents. section 7.2.3
  • Create offspring through crossover, which combines parent traits, and mutation, which introduces random changes. Evaluate the population and continue through multiple generations. section 7.2.3 section 7.2.2

Population size is a practical choice, not a universal constant: problem complexity, variable count, accuracy needs, and computing resources all matter. Initialization also trades off diversity, cost, and initial solution quality. Genetic algorithms use crossover and mutation to balance exploring new areas against refining existing solutions; too little diversity risks premature convergence. Unlike evolutionary computation, swarm intelligence draws on the collective behavior of social organisms. section 7.2.3 section 7.5 section 7.1

Table 7.1 Initialization strategies for population-based metaheuristics (view table figure)

Initialization strategy

Diversity

Computational cost

Quality of initial solution

Pseudo-random

Moderate

Low

Low

Quasi-random

High

Low

Low

Sequential diversification

Very high

Moderate

Low

Parallel diversification

Very high

Low

Low

Heuristics (e.g., local search or greedy heuristic)

Low

High

High

Compare population-initialization strategies by diversity, computational cost, and initial solution quality before choosing one to test. section 7.1

How Optimization Algorithms: AI techniques for design, planning, and control problems covers it

How deep it goes
Defines the population, fitness, selection, crossover, and mutation workflow, with tuning considerations rather than a full implementation of every EC variant.
Examples
Illustrates selection with a treasure-hunting team and compares initial-population sampling strategies using Python examples and a table.
What it assumes
Introduces natural selection before translating populations, fitness, and reproduction into computational terms.
What you can do after
Evaluate/understand evolutionary search components and compare population-initialization choices before experimenting with a genetic algorithm.
How it connects
Connects evolutionary computation to population-based metaheuristics, genetic algorithms, natural selection, and swarm intelligence.

Also explained in

Compare how 3 books explain evolutionary computation →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Optimization Algorithms: AI techniques for design, planning, and control problems. The section links point to the parts of the book it draws on.