CMA-ES
Explore a design with CMA-ES, a population-based search that does not require objective derivatives.
Explore a design with CMA-ES, a population-based search that does not require objective derivatives.
Where to find it
System Solver → Optimization
How to use it
Define an objective, select the design controls and their bounds, and add constraints before running the optimization study. Choose CMA-ES, provide sensible bounds and scales, and budget enough model evaluations for several generations.
Settings and initial values
| Setting | Initial value |
|---|---|
| Maximum concurrent trial solves | 8 |
| Maximum number of outer iterations | 100 |
| Optimality tolerance | 0.001 |
| Constraint tolerance | 0.001 |
| Step tolerance | 0.001 |
| Population size | null |
| Parent count | null |
| Random seed | 1729 |
| CMA-ES covariance | Diagonal |
| CMA-ES covariance precision | Automatic |
| Full covariance maximum controls | 4096 |
| Full covariance maximum bytes | null |
| Total memory limit bytes | null |
| Resident memory estimate bytes | null |
| Candidate memory estimate bytes | null |
| Resident memory estimate scope | null |
| Candidate memory estimate scope | null |
| Retain all candidate payloads | false |
| Full covariance FP64 threshold bytes | 8589934592 |
| Covariance rank-update block bytes | 67108864 |
| Initial step size | 0.25 |
| Minimum step size | 1e-07 |
| Maximum step size | 0.8 |
| Covariance learning rate | null |
| Constraint penalty | 1000.0 |
| Penalty increase factor | 2.0 |
| Maximum constraint penalty | 1000000000000.0 |
| Parallel trial solves | 1 |
| Cpu thread budget | null |
| Native threads per candidate | 1 |
| Maximum number of model evaluations | 1000 |
| Maximum wall-clock time | null |
| Elapsed time offset seconds | 0.0 |
| Objective stalled-iteration limit | 12 |
Result
Compare the final objective, constraint values, design and termination reason together.
Troubleshooting
Limits on iterations or evaluations can end a search before an optimum is reached. Inspect feasibility and termination reason, then verify the final design with a solve. Each candidate can require a complete solve. Compare multiple runs when randomness changes the outcome.