liveBook · Manning

Evolutionary computation

As explained in Evolutionary Deep Learning: Genetic algorithms and neural networks

An evolutionary optimizer is an optimization algorithm that searches candidate configurations through population-based variation and selection.

Evolutionary computation (EC) is a family of AI methods that simulates biological or natural processes to solve complex problems. It searches for effective individuals or populations in an artificial environment, using natural selection as a guiding model rather than calculus-based optimization alone. section 1.1.1 section 4.5

An EC problem needs a representation of an individual, a way for individuals to change, and a fitness measure. Fitness quantifies how well an individual survives, performs, or solves the target problem; it drives the search toward stronger candidate solutions. section 1.1.1

EC supplies practical search strategies for machine-learning work:

  • Optimize deep-learning systems across stages from data collection through validation, providing an AutoML-oriented toolset for difficult configuration choices. section 1.1 section 1.5
  • Tune hyperparameters by encoding settings as vectors, converting vector values into bounded parameter ranges, training a model, and using loss as fitness. section 5.4.2
  • Approximate continuous, discontinuous, and complex functions with differential evolution, including problems not limited to smooth or convex solutions. section 4.5
  • Search CNN architectures when manually choosing convolutional layers, kernels, and pooling settings requires trial and error. section 7.1.2

Using particle search for hyperparameter optimization

Represent each candidate as a vector. Map its elements onto hyperparameter ranges such as middle-layer size and learning rate, keep fixed values such as batch size and epochs, train the resulting model, and return its loss as fitness. A DEAP toolbox generates a population, evaluates particles, records their fitness and decoded settings, retains the best candidate, and updates the population over iterations. section 5.4.2

EC is useful alongside deep learning rather than only as a replacement for it. Evolutionary deep learning combines evolutionary methods with DL to automate tuning, data and feature work, model choices, and architecture exploration. It can reduce manual experimentation, but evolutionary search adds computational cost and may require distributed computing for serious projects. section 1.5.6 section 12.5.4

Figure 1.4 Applying EC (EDL) to the AI/ML model development workflow for DL

Use the workflow figure to locate evolutionary strategies across the AI/ML development process and relate search targets to data, model, and validation work. section 1.5

How Evolutionary Deep Learning: Genetic algorithms and neural networks covers it

How deep it goes
Defines populations and fitness, then develops simulations, differential evolution, and DEAP-based particle-search implementations without formal proofs.
Examples
Uses Conway’s Game of Life, continuous and discontinuous function approximation, CNN layer experiments, and DEAP particle-based hyperparameter tuning.
What it assumes
Assumes familiarity with deep learning while teaching evolutionary-computation fundamentals from the ground up.
What you can do after
Apply it via DEAP to encode, evaluate, and iteratively improve deep-learning hyperparameter configurations.
How it connects
Connects deep learning, AutoML, hyperparameter optimization, genetic algorithms, differential evolution, particle swarm optimization, and neuroevolution.

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 Evolutionary Deep Learning: Genetic algorithms and neural networks. The section links point to the parts of the book it draws on.