alterlab-pymoo — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited alterlab-pymoo (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Pymoo is a comprehensive Python framework for optimization with emphasis on multi-objective problems. Solve single and multi-objective optimization using state-of-the-art algorithms (NSGA-II/III, MOEA/D), benchmark problems (ZDT, DTLZ), customizable genetic operators, and multi-criteria decision making methods. Excels at finding trade-off solutions (Pareto fronts) for problems with conflicting objectives.
This skill should be used when:
Pymoo uses a consistent minimize() function for all optimization tasks:
from pymoo.optimize import minimize
result = minimize(
problem, # What to optimize
algorithm, # How to optimize
termination, # When to stop
seed=1,
verbose=True
)Result object contains:
result.X: Decision variables of optimal solution(s)result.F: Objective values of optimal solution(s)result.G: Constraint violations (if constrained)result.algorithm: Algorithm object with historySingle-objective: One objective to minimize/maximize Multi-objective: 2-3 conflicting objectives → Pareto front Many-objective: 4+ objectives → High-dimensional Pareto front Constrained: Objectives + inequality/equality constraints Dynamic: Time-varying objectives or constraints
get_problem(...), or subclass ElementwiseProblem for custom (objectives in out["F"], inequality constraints g(x) <= 0 in out["G"], equality h(x) = 0 in out["H"]).references/quick_reference.md.('n_gen', N) or get_termination("f_tol", tol=0.001).minimize(problem, algorithm, termination, seed=1, verbose=True).result.X / result.F / result.G (or result.CV for constraint violation).Scatter/PCP/Petal.Always set seed for reproducibility, normalize objectives when scales differ, and provide reference directions for NSGA-III.
| You need… | Go to |
|---|---|
| Complete copy-paste examples for all 7 workflows (single/multi/many-objective, custom problems, constraint handling, MCDM decision making, visualization) | references/workflows.md |
| Algorithm-selection tables, benchmark problem list, operator config, troubleshooting, best practices, install | references/quick_reference.md |
| Deep algorithm reference (parameters, usage, selection) | references/algorithms.md |
| Benchmark test problems (ZDT, DTLZ, WFG) with characteristics | references/problems.md |
| Genetic operators (sampling, selection, crossover, mutation) | references/operators.md |
| All visualization types with examples | references/visualization.md |
| Constraint handling + multi-criteria decision making | references/constraints_mcdm.md |
Runnable scripts (scripts/): single_objective_example.py, multi_objective_example.py, many_objective_example.py, custom_problem_example.py, decision_making_example.py. Run with uv run python scripts/<name>.py.
Search references: grep -r "NSGA-II\|NSGA-III\|MOEA/D" references/ · grep -r "Feasibility First\|Penalty\|Repair" references/ · grep -r "Scatter\|PCP\|Petal" references/
uv pip install pymooDependencies: NumPy, SciPy, matplotlib, autograd (optional). Docs: https://pymoo.org/ — this skill targets pymoo 0.6.x.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.