pymoo

Solve multi-objective optimization problems in Python with a uniform minimize interface and NSGA-II/III, MOEA/D algorithms.

94|11|Updated Mar 26, 2026
One-click install
npx skills add https://github.com/swaruplab/operon --skill pymoo-swaruplab
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: pymoo
Source: https://github.com/swaruplab/operon/tree/main/src-tauri/protocols/pymoo
Command: npx skills add https://github.com/swaruplab/operon --skill pymoo-swaruplab

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires pymoo, numpy, matplotlib, and includes scripts (resource) and references (resource) components.

What problem does it solve?

Pymoo unifies multi-objective optimization workflows in Python, enabling users to define problems once and apply a range of state-of-the-art algorithms to obtain diverse Pareto fronts.

Core Features & Use Cases

  • Algorithms: NSGA-II, NSGA-III, MOEA/D, and more for single and many-objective problems.
  • Constraint Handling: Built-in strategies and flexible problem definitions for real-world constraints.
  • Benchmarks & Visualization: Access to common test problems (ZDT, DTLZ) and rich visualization tools to analyze fronts.
  • Use Case: Design an engineering system optimizing cost, performance, and reliability, then compare Pareto fronts to choose the best trade-off.

Quick Start

Run a sample NSGA-II optimization on a standard benchmark (e.g., ZDT1) to generate a Pareto front.

Frequently Asked Questions about pymoo

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I solve multi-objective optimization problems in Python?

Solve multi-objective optimization problems in Python using a consistent minimize interface across algorithms. Define your problem once and apply state-of-the-art algorithms to obtain diverse Pareto fronts for engineering, design, and research tasks.

What algorithms are available for many-objective optimization?

Many-objective optimization is supported through algorithms like NSGA-II, NSGA-III, and MOEA/D. These algorithms handle 2-objective to many-objective tasks efficiently, allowing you to tackle complex engineering design problems with multiple competing objectives.

How do I run NSGA-II on a standard benchmark like ZDT1?

Run NSGA-II on benchmark ZDT1 by executing the provided sample scripts. This generates a Pareto front using the consistent minimize interface, demonstrating the workflow from problem definition to result visualization on standard test problems.

Can I handle real-world constraints when defining optimization problems?

Real-world constraints can be handled using built-in strategies and flexible problem definitions. The framework provides a uniform API for constraint handling, enabling you to apply benchmarks like ZDT and DTLZ to constrained engineering and design scenarios.

Does this framework include visualization tools for analyzing Pareto fronts?

Pareto front visualization tools are included to analyze optimization results. Combined with access to common test problems like ZDT and DTLZ, these visualization capabilities help you compare trade-offs among cost, performance, and reliability in your design.

What Python libraries do I need for multi-objective optimization?

Multi-objective optimization requires numpy for numerical operations and matplotlib for visualization. These dependencies support the core framework, enabling problem definitions, algorithm execution, and graphical analysis of the resulting Pareto fronts.