Skip to content
Back to skills

2920 Doe Methods 67382ad0

ASecurity

Design of Experiments (DOE) creates sample points in parameter space to efficiently explore simulation behavior. The goal is to maximize information gained per simulation run.

  • 9 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 11, 2026
datagotesting

Security analysis

A100/100

Scanned October 11, 2026

npx -y skills add tools-only/X-Skills --skill 2920-doe_methods_67382ad0 --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of 2920 Doe Methods 67382ad0?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for 2920 Doe Methods 67382ad0
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/tools-only-2920-doe-methods-67382ad0/badge)](https://www.skillsdirectory.com/skills/tools-only-2920-doe-methods-67382ad0)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

SKILL.md
# Design of Experiments (DOE) Methods

## Overview

Design of Experiments (DOE) creates sample points in parameter space to efficiently explore simulation behavior. The goal is to maximize information gained per simulation run.

## Method Comparison

| Method | Sample Count | Space Coverage | Best Dimension | Deterministic |
|--------|--------------|----------------|----------------|---------------|
| LHS | User-defined | Good | 3-20 | No (random) |
| Sobol | User-defined | Excellent | 2-15 | Yes |
| Factorial | k^d (levels^dim) | Complete | 1-3 | Yes |

---

## Latin Hypercube Sampling (LHS)

### How It Works

LHS divides each parameter range into `n` equal intervals, then places exactly one sample in each interval per dimension. This ensures no two samples share the same row or column in any 2D projection.

```
Example: 5 samples in 2D

    1.0 |     x     |     |     | x   |
    0.8 |  x  |     |     |     |     |
    0.6 |     |     |     | x   |     |
    0.4 |     |     | x   |     |     |
    0.2 |     | x   |     |     |     |
        +-----+-----+-----+-----+-----+
          0.2   0.4   0.6   0.8   1.0
```

### When to Use

- General parameter exploration
- Moderate dimensions (3-20 parameters)
- Unknown response surface shape
- Limited simulation budget

### When to Avoid

- Need exact corner/edge coverage
- Very low dimensions where factorial is feasible
- Reproducibility required (use fixed seed)

### Sample Size Recommendations

| Dimension | Minimum Samples | Recommended |
|-----------|-----------------|-------------|
| 2-3 | 10 | 20-30 |
| 4-6 | 20 | 40-60 |
| 7-10 | 30 | 60-100 |
| 11-20 | 50 | 100-200 |

---

## Sobol Sequences (Quasi-Random)

### How It Works

Sobol sequences are low-discrepancy sequences that fill space more uniformly than random sampling. Points are generated deterministically using bit operations on direction numbers.

```
Example: Sobol vs Random in 2D (16 points)

Sobol (uniform fill)        Random (clusters/gaps)
+---+---+---+---+          +---+---+---+---+
| x |   | x |   |          |   | x |   | x |
+---+---+---+---+          +---+---+---+---+
|   | x |   | x |          | x |   |   |   |
+---+---+---+---+          +---+---+---+---+
| x |   | x |   |          |   | x | x | x |
+---+---+---+---+          +---+---+---+---+
|   | x |   | x |          |   |   | x |   |
+---+---+---+---+          +---+---+---+---+
```

### When to Use

- Sensitivity analysis (Sobol indices)
- Need uniform coverage guarantees
- Reproducible experiments
- Sequential sampling (can add points incrementally)

### When to Avoid

- Very high dimensions (>15, curse of dimensionality)
- Need stratified random sampling

### Sample Size Recommendations

For Sobol sensitivity analysis, use `N * (d + 2)` samples where:
- `N` = base sample size (64, 128, 256, 512, 1024)
- `d` = number of parameters

| Dimension | Base N | Total Samples |
|-----------|--------|---------------|
| 3 | 64 | 320 |
| 5 | 128 | 896 |
| 10 | 256 | 3072 |

---

## Full Factorial Design

### How It Works

Factorial designs test all combinations of discrete parameter levels. For `k` levels across `d` dimensions, this produces `k^d` samples.

```
Example: 3 levels, 2 dimensions = 9 samples

    High  | x   x   x |
          |           |
    Med   | x   x   x |
          |           |
    Low   | x   x   x |
          +-----------+
            L   M   H
```

### When to Use

- Low dimensions (1-3 parameters)
- Need exact corner coverage
- Testing parameter interactions
- Screening designs

### When to Avoid

- High dimensions (exponential growth)
- Continuous parameters with smooth response
- Limited budget

### Sample Count Growth

| Dimension | 2 Levels | 3 Levels | 5 Levels |
|-----------|----------|----------|----------|
| 2 | 4 | 9 | 25 |
| 3 | 8 | 27 | 125 |
| 4 | 16 | 81 | 625 |
| 5 | 32 | 243 | 3125 |

---

## Decision Flowchart

```
START
  |
  v
Is d <= 3 AND need corner coverage?
  |
  +-- YES --> FACTORIAL
  |
  +-- NO --> Is sensitivity analysis the goal?
               |
               +-- YES --> SOBOL
               |
               +-- NO --> LHS
```

## Implementation Notes

The `doe_generator.py` script in this skill:
- Uses standard library only (no scipy/numpy required)
- LHS: True Latin Hypercube with random permutations
- Sobol: Simplified quasi-random (for full Sobol, use scipy.stats.qmc)
- Factorial: Full grid with level interpolation

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.