Tutorials#
These pages show implementations for specific optimization scenarios. Choose a page for single-objective, multi-objective, constrained, mixed-variable, or another goal. Each page is an example for one scenario and does not assume a particular configuration depth.
Optimization scenarios#
Solve an expensive single-objective problem with minimize(), choosing the algorithm, surrogate, and evaluation strategy.
Solve a problem with trade-offs between objectives and extract the Pareto front.
Define inequality constraints and control how infeasible solutions are handled.
Solve problems that include integer and categorical variables alongside continuous variables.
Switch the evaluation strategy or SurrogateManager at runtime based on the surrogate’s prediction accuracy.
Make long-running optimizations reproducible and resumable.
Record optimization progress with the standard logging module.
Incorporate scikit-learn and PyTorch models as surrogates, and pymoo operators, algorithms, and problems, through adapters.
Configuration and control#
These guides cover choosing built-in components, assembling the low-level API, and adding Hooks or Callbacks to an execution path. The guides contain the details; this page provides an overview and links.
Choose the built-in component for a responsibility.
Assemble a full configuration with a surrogate, combine termination conditions, and inspect each generation with iterate().
Choose how to extend and observe an execution path.
Run an optimization through the high-level API and read its Result.
Implement, register, and test a custom component that follows an existing contract. The guide also covers porting external Operators to native code.