Skip to content

Guide · Agent skill

How to use the Pymoo Optimization Toolkit agent skill

Updated · written with AI from the project's own documentation and checked against our catalogue data

The pymoo skill is a set of instructions, reference files and example scripts that lets an AI agent set up, run and explain multi-objective optimization with the pymoo Python library. It is for engineers, researchers, students and developers who have several goals that conflict, such as cost versus performance. After this guide you will know what the skill does, how to install it, how to ask for it in plain language and what to check before trusting the results.

Pymoo Optimization ToolkitK-Dense-AI/scientific-agent-skills · MIT

Quick start

  1. 1Download the ZIP. Get the pymoo skill ZIP from the page where you found this guide.
  2. 2Unzip into the skills folder. Unzip into ~/.claude/skills/ for personal use or into a project's .claude/skills/ folder. In the Claude apps, upload the ZIP under Settings, Capabilities, Skills instead.
  3. 3Install pymoo. Run the pinned install command in an environment with Python 3.10 or newer. Add joblib, optuna or dill only if you need parallel runs, the Optuna wrapper or checkpoints.
  4. 4Describe your problem. Tell the agent the variables and their limits, the objectives to minimize or maximize, and any constraints in plain language.
  5. 5Review the Pareto front and check constraints. Ask for X, F and constraint values, then re-check the chosen design against the original requirements before acting on it.

What agent skills are and what this one makes the agent do

An agent skill is a folder containing a SKILL.md file and supporting files that an AI agent reads when a task matches the skill's description. You do not need to write code to use it; you describe the problem and the agent follows the skill's guidance.

Once installed, the pymoo skill lets the agent frame an optimization problem by listing the variables, objectives and constraints, pick an evolutionary algorithm such as NSGA-II, NSGA-III or MOEA/D, run it with pymoo, and explain the results. It can also show a Pareto front, the set of trade-off solutions, and help you choose one using decision-making methods.

  • Covers single-, multi- and many-objective problems
  • Covers constraints, reference directions and Pareto approximations
  • Includes ZDT and DTLZ benchmark problems for testing and teaching
  • Includes reference files on algorithms, operators, constraints, visualization and parallel runs

Install the pymoo skill in Claude

Download the skill's ZIP file from the page where you found this guide. Then choose one of two routes.

For a personal install across projects, unzip the download into ~/.claude/skills/. For a single project, unzip it into the project's .claude/skills/ folder. In the Claude apps you can instead upload the ZIP under Settings, then Capabilities, then Skills.

  • Personal: unzip into ~/.claude/skills/
  • Single project: unzip into .claude/skills/ inside the project folder
  • Claude apps: Settings → Capabilities → Skills, then upload the ZIP

Install the pymoo library the skill depends on

The skill runs code that needs the pymoo library itself. The source pins a specific release for reproducible environments. Use the command below, which pins the version the skill was reviewed against.

The released package requires Python 3.10 or newer and installs NumPy, SciPy, moocore, autograd, cma, matplotlib, alive_progress and Deprecated. Joblib, Optuna and dill are separate installs needed only for parallel runs, the Optuna wrapper and checkpoints.

  • Python 3.10 or newer
  • Optional: joblib for parallel runs, optuna for its wrapper, dill for checkpoints
  • Network access is needed for installation only
uv pip install "pymoo==0.6.2"

Trigger the skill with natural requests

You do not need to name the skill. Describe the goal in plain words and mention the trade-off, the number of objectives or the constraints. The skill is meant for tasks such as solving optimization problems with one or several objectives, finding Pareto-optimal solutions, working with constraints, and choosing among competing solutions.

Include the details the agent needs: what you can change (variables and their ranges), what you want to minimize or maximize, and any limits that must hold. If you are testing, say so and ask for a benchmark such as ZDT or DTLZ.

  • Example: Minimize weight and deflection of a beam with two variables and a stress limit, and show me the Pareto front.
  • Example: Compare NSGA-II and MOEA/D on the ZDT1 benchmark and explain which gives a better front at the same budget.
  • Example: I have four objectives for this design. Suggest an algorithm and write a script that runs it.
  • Example: Given this Pareto front, help me pick one solution using a decision-making method.
from pymoo.problems import get_problem problem = get_problem("zdt1") problem = get_problem("dtlz2", n_obj=5, n_var=12)

Understand the results the agent gives you

Every run returns a result object. The agent reports X for the decision variables and F for the objective values. Constraint information is reported as G and H, with CV as the aggregated violation. If no feasible solution was found, X and F can be empty, and a returned candidate may still break a constraint.

Evolutionary results are approximations. The skill's own guidance says to compare seeds at matched evaluation budgets, and it says algorithm choices are starting points, not performance guarantees. Ask the agent to re-check chosen designs against the original physical constraints before you use them.

  • X and F: decision variables and objective values of the solution(s)
  • G: inequality values, where G at or below 0 is feasible
  • H: equality residuals
  • CV: total constraint violation
  • Ask for several seeds if you need confidence in a front
result = minimize(problem, algorithm, termination, seed=1, verbose=True)

Check the safety notes before running scripts

The skill's metadata says it runs scripts and that it does not use the network except during installation. The scripts it includes are example files for single-objective, multi-objective, many-objective, custom-problem and decision-making tasks. Because the agent may run them on your machine, read a script before you let the agent execute it in a folder with sensitive files.

The skill declares the tools Read, Write, Edit and Bash. Bash access means the agent can run commands on your system, so use it in a project you trust.

  • Read scripts in scripts/ before running them on real data
  • Use a project folder, not a folder containing unrelated sensitive files
  • Network use is limited to installing packages

What people use it for

  • Choosing a design that balances cost against performance, with the trade-offs shown as a Pareto front
  • Comparing NSGA-II, NSGA-III and MOEA/D on ZDT or DTLZ benchmarks to learn how the algorithms behave
  • Writing a custom pymoo problem with variables, objectives and constraints as a starting template
  • Selecting one solution from a set of trade-off results with a decision-making method

Frequently asked questions

Is the pymoo skill free to use?

The directory listing gives the licence as MIT, but the SKILL.md front matter says Apache-2.0. Check the LICENSE file in the downloaded folder before reusing or redistributing it. The source does not state pricing for the pymoo library, so check its own documentation.

What do I need to run the pymoo skill?

You need Python 3.10 or newer and pymoo at the pinned release with its dependencies, including NumPy, SciPy and matplotlib. Joblib, Optuna and dill are optional and only needed for specific features. Network access is needed for installation only.

How do I install the pymoo skill in Claude?

Download the ZIP and unzip it into ~/.claude/skills/ for personal use or into a project's .claude/skills/ folder. You can also upload the ZIP in the Claude apps under Settings, then Capabilities, then Skills.

Does the skill need internet access to run optimizations?

No. The skill's metadata says it does not use the network. Network access is needed only to install pymoo and its dependencies.

Why does the agent say no feasible solution was found?

If no solution meets all constraints, the result can have empty X and F values. The result may also return a least-infeasible candidate that still violates constraints, so check its CV and residuals rather than treating it as feasible.

How does pymoo compare with other optimization tools?

The skill's source does not compare pymoo with other tools. It is best for multi-objective problems with conflicting goals. For one variable problems, a spreadsheet or a basic script may be simpler, as the skill's own scope notes suggest.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

Use this skill if you are an engineer, researcher, student or developer working on problems with several conflicting goals and want an agent to set up pymoo runs, show Pareto fronts and explain the results. Pick something else for simple one-variable problems, or for safety-critical decisions made without expert review, since evolutionary results are approximations with no guarantee of optimality. It also will not work where installing Python packages is not allowed.

Download the skill