# Design Of Experiments

> >-

- **Type:** Skill
- **Install:** `agentstack add skill-jskherman-engg-skills-design-of-experiments`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [jskherman](https://agentstack.voostack.com/s/jskherman)
- **Installs:** 0
- **Category:** [Agent Skills](https://agentstack.voostack.com/c/agent-skills)
- **Latest version:** 0.1.0
- **License:** Apache-2.0
- **Upstream author:** [jskherman](https://github.com/jskherman)
- **Source:** https://github.com/jskherman/engg-skills/tree/main/skills/design-of-experiments

## Install

```sh
agentstack add skill-jskherman-engg-skills-design-of-experiments
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Design of Experiments

## Overview

Factorial DOE helpers:

- Full factorial design enumeration for an arbitrary number of factors at
  arbitrary level counts.
- Two-level factorial design (2^k) with optional randomization.
- Main-effect estimates from a fitted run (simple averaging contrast).

Suitable for hands-on screening campaigns with a small number of factors;
not a replacement for full RSM (central composite, Box-Behnken) or
optimal-design software.

## Prerequisites

1. `uv` available.

## When to Use

- Planning a 2-5 factor screening campaign with clear inputs and a single
  response.
- Generating a randomised run sheet for a small experiment.
- Computing the rough magnitude of main effects after a small run.

## Don't use for

- Response-surface methodology (RSM, central composite, Box-Behnken).
- Plackett-Burman or fractional-factorial confounding analysis.
- Observational data — DOE assumes you control the factor levels.
- Mixture experiments (constrained simplex designs).

## Utility Scripts

- `uv run scripts/doe.py full-factorial --factor "T=300,320" --factor "P=1e5,2e5" --output /tmp/fact.json`
- `uv run scripts/doe.py two-level --factors "A,B,C" --randomize --seed 42 --output /tmp/2k.json`

## Procedure

1. List factors and their levels (2 for screening, more for full
   factorial).
2. Choose the design (full factorial for small k; two-level if you only
   want main effects and 2-factor interactions).
3. Randomise the run order to mitigate time-order effects.
4. Add replication externally if you need pure-error estimates or curvature checks.
5. After the run, compute main effects.
6. If main effects are statistically significant, iterate to RSM with a
   different tool.

## Pitfalls

- Choosing two levels that are too close; main effects fall in the noise.
- Forgetting to randomise; time-order confounds the factor effects.
- Reporting effects without replicate variability.
- Confusing main effect (averaged over the other factors) with
  conditional slope (computed at fixed values of the other factors).
- Treating a two-level design as a curvature test; this script does not add
  centre points or run an RSM analysis.
- Using a 2^k design when you have only one shot per condition (no
  replicates) and treating ±SE as meaningful.
- Picking response that is correlated with multiple physical phenomena
  without thinking about what the design is testing.
- Forgetting blocking when the experiment spans multiple days /
  raw-material lots.

## Fallback Strategies

- If the number of factors exceeds 5, switch to fractional-factorial or
  Plackett-Burman screening (use `pyDOE2` outside this skill).
- For curvature exploration, switch to a central composite design with a
  dedicated package.

## Verification

- Run the listed script with representative inputs and an `--output` file when a deterministic calculation is available.
- Confirm the JSON result contains `ok: true`, expected units, and no unhandled warnings.
- Check result magnitudes against the stated assumptions, references, and a hand calculation or known operating range before reporting them.

## References

- `references/factorial_designs.md` — design conventions and analysis
  outline.
- Montgomery, *Design and Analysis of Experiments* (any edition).

## Anti-Patterns

- Reporting "the effect of T is X" without naming the level range and
  the other factors held fixed.
- Designing an experiment without randomization and reporting the
  estimates as if independent.
- Using 2-level factorial for a known curved response.

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [jskherman](https://github.com/jskherman)
- **Source:** [jskherman/engg-skills](https://github.com/jskherman/engg-skills)
- **License:** Apache-2.0

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-jskherman-engg-skills-design-of-experiments
- Seller: https://agentstack.voostack.com/s/jskherman
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
