← Back to CoursesEvolutionary Programming

Neuroanatomy Explorer

Drag to rotate · scroll to zoom · click regions to explore

View
Loading 3D model…

Click a region
to explore it

Memory Deck

Flip each card and rate whether you knew it. Your score is saved.

Term
Definition

Deck complete — score saved.

Match the Pairs

Match each term to its definition. Finish the board to earn your score.

All matched — score saved.

Concept Constellation

Every key idea in this course, mapped as an explorable 3D constellation. Drag to rotate, scroll to zoom, click a node.

Click a node to read its definition.

CMA-ES and Modern Continuous Evolutionary Search

Manual: General · Subject: Evolutionary Programming

Understand covariance adaptation, natural gradient intuition, and why CMA-ES is highly effective on continuous problems.

Covariance Matrix Adaptation

Why CMA-ES Matters

CMA-ES is a powerful evolution strategy that adapts the covariance structure of the search distribution. This lets it learn correlations between variables and move efficiently through difficult continuous landscapes.

Search Distribution

Instead of mutating candidates independently, CMA-ES samples from a multivariate normal distribution N(m,σ2C)\mathcal{N}(\mathbf{m}, \sigma^2 \mathbf{C}), where m\mathbf{m} is the mean, σ\sigma is the global step size, and C\mathbf{C} is the covariance matrix.

Key Parameters

Mean m\mathbf{m}
Current center of the search distribution
Covariance C\mathbf{C}
Shape and orientation of search steps
Step size σ\sigma
Overall scale of exploration
Weights
How selected solutions influence updates

High-Level CMA-ES Pseudocode

  1. 1

    Step 1: Initialize mean, covariance, and step size.

  2. 2

    Step 2: Sample offspring from a multivariate normal distribution.

  3. 3

    Step 3: Evaluate offspring fitness.

  4. 4

    Step 4: Select the best offspring.

  5. 5

    Step 5: Update the mean toward selected solutions.

  6. 6

    Step 6: Update covariance to reflect successful search directions.

  7. 7

    Step 7: Adapt step size and repeat.

CMA-ES vs Basic ES

Basic ES

  • Uses simple Gaussian mutations
  • May use fixed or self-adaptive step sizes
  • Does not explicitly model correlations

CMA-ES

  • Learns covariance structure
  • Handles ill-conditioned problems well
  • Often state-of-the-art for black-box continuous optimization

What additional structure does CMA-ES learn beyond a single step size?

Why can covariance adaptation be useful?

CMA-ES is most naturally used for which type of optimization?

Practical Note

CMA-ES is especially effective when variables interact strongly, the landscape is noisy, or scaling differs across dimensions.

⚠️

Computation Cost

Maintaining and updating a covariance matrix can be expensive in very high dimensions.