# Optimize Multi-Objective Problems with pymoo

Conflicting objectives make algorithm selection, constraint handling, and trade-off analysis difficult. This skill provides practical pymoo workflows, examples, and reference guidance.

## Install

```bash
npx skillstore add davila7/pymoo
```

## Metadata

- Status: approved
- Slug: davila7-pymoo
- Skillstore revision: r2
- Version status: missing
- Tree hash: 8118e60ebe4bc5129fb62f2bff6c6c6070c5198f9df32b59ea036ce7a9b1e70d
- Author: davila7
- GitHub username: davila7
- License: MIT
- Repository: https://github.com/davila7/claude-code-templates/tree/main/cli-tool/components/skills/scientific/pymoo
- Ref: c43861a65bb95efcae259cd161c9d6f4dc7eec6f
- Supported tools: Claude, Codex, Claude Code
- Audit status: complete
- Agent install advisory: allowed
- Manual install advisory: allowed
- Artifact signature: available
- Audit attestation: unavailable
- Human verification: not\_verified
- Risk factors: external\_commands, network
- Quality score: 81
- Quality tier: silver
- Public page: https://skillstore.pages.dev/skills/davila7-pymoo
- Manifest: https://skillstore.pages.dev/api/skills/davila7-pymoo/manifest

## Capabilities

- Explains single, multi-objective, many-objective, and constrained optimization workflows.
- Guides selection among GA, DE, PSO, NSGA-II, NSGA-III, MOEA/D, and related methods.
- Shows how to define custom ElementwiseProblem objectives, bounds, and constraints.
- Demonstrates benchmark problems from the ZDT, DTLZ, WFG, and single-objective families.
- Covers Pareto-front visualization and preference-based solution selection.
- Provides runnable examples for optimization, constraints, and multi-criteria decision making.

## Use Cases

- Compare Engineering Designs: Model cost, weight, and performance objectives, then inspect feasible Pareto-optimal designs.
- Benchmark Evolutionary Algorithms: Run reproducible comparisons on ZDT or DTLZ problems using suitable algorithms and termination criteria.
- Teach Pareto Optimization: Use focused examples to explain conflicting objectives, constraints, Pareto fronts, and preference-based selection.

## Prompt Templates

### Choose a Starting Algorithm

```
Recommend a pymoo algorithm for [objective count], [variable type], and [constraints]. Explain the choice and suggest initial population and termination settings.
```

### Define a Custom Problem

```
Design a pymoo ElementwiseProblem for [objectives], [bounds], and [constraints]. Check objective direction and convert inequalities to the required form.
```

### Diagnose Optimization Results

```
Review these convergence statistics and Pareto results: [results]. Identify scaling, feasibility, diversity, or termination issues and recommend controlled experiments.
```

### Build a Validation Study

```
Create a reproducible comparison of [algorithms] on [problem]. Define seeds, budgets, indicators, constraint metrics, visualizations, and decision criteria.
```

## Limitations

- Requires Python and a compatible pymoo 0.6.x installation.
- Example parameters are starting points and require validation for each problem.
- The skill does not guarantee global optimality or convergence.
- Interactive plots may require a graphical environment or notebook backend.

## Best Practices

- Set random seeds and compare multiple runs before drawing conclusions.
- Normalize objectives when scales differ and report feasibility separately.
- Match algorithms, operators, and termination criteria to variable and objective structure.

## Anti Patterns

- Do not treat one stochastic run as reliable evidence.
- Do not compare algorithms with different evaluation budgets.
- Do not select a Pareto solution before documenting stakeholder preferences.

## Security Audit

- Audited at: 2026-07-23T16:21:46.308\+00:00
- Summary: All 70 static findings are false positives caused by Markdown formatting, benign fixed commands, and a documentation link. No prompt injection, data exfiltration, unsafe command construction, or malicious intent was found.

## Stats

- Views: 495
- Downloads: 9
- Favorites: 1
- Popularity score: 0
