Full Factorial Matrix¶
Artifact — instantiates Cross-Axis Product Space Design
Enumerates all factor-level combinations for small experimental or testing spaces.
A Full Factorial Matrix is the artifact that holds every combination — one row for each way of choosing one level from each factor, with nothing filtered, sampled, or collapsed. Its defining idea is completeness: the matrix earns its name by leaving no cell out, so that every main effect and every interaction can be observed on equal footing. This is also its confessed limitation. Completeness is only affordable when the space is small — a handful of factors at a few levels each — because the row count is the product of the level counts and grows explosively. Where a support artifact declares a bounded envelope, the full factorial declines to draw any boundary at all: its whole value is that the design space is exhaustively present, giving experiment or assurance work a clean, balanced foundation with no combination privileged over another.
Example¶
A specialty coffee roaster wants to understand what actually drives cup quality, and decides to brew every combination of three factors rather than trust the head roaster's intuitions. The factors and their levels: roast level (light, medium, dark), grind size (fine, medium, coarse), and brew method (pour-over, French press). That is 3 × 3 × 2 = 18 distinct cells, and the matrix lists all eighteen — light/fine/pour-over, light/fine/French-press, light/medium/pour-over, and so on down to dark/coarse/French-press.
Because the design is full and balanced, each level of each factor appears the same number of times against every level of the others, so when the tasting panel scores all eighteen cups the roaster can cleanly separate the effect of roast from the effect of grind and see the interaction between them — perhaps light roast rewards a fine grind on pour-over but a coarse grind on French press, a cross-effect that testing one factor at a time would have missed entirely. Eighteen cups is a long but finishable morning. The same design over five factors at four levels each would be over a thousand cups, and the matrix would have quietly become impossible — which is exactly the signal that a different mechanism is needed.
How it works¶
- Name the factors. Fix the small set of independent dimensions the study will cross; the artifact is only honest if these are genuinely separate factors, not one dimension in disguise.
- Fix the levels. Give each factor its complete, discrete value set — the exact roast levels, grind sizes, and methods that will be run.
- Take the full product. Generate one row per element of the Cartesian product, so the row count is the product of the level counts and every combination is present exactly once.
- Keep it balanced. Because no cell is dropped, the design stays orthogonal — every factor is crossed evenly with every other, which is what lets effects and interactions be read cleanly.
Tuning parameters¶
- Factor count — each added factor multiplies the row count by its number of levels; the single dial that decides whether "full" stays affordable.
- Level granularity — coarse levels (two or three) keep the product small; fine levels resolve dose-response detail but blow the size up fast.
- Replication — how many times each cell is run. Replication sharpens the signal against noise but multiplies an already-full design.
- Randomization / run order — the sequence in which cells are executed, to keep drift and time effects from confounding the factors.
- Blocking — whether runs are grouped to absorb a nuisance variable (roasting day, machine); useful, but it complicates the clean full-product reading.
When it helps, and when it misleads¶
Its strength is unmatched clarity on a small space: with every combination present and balanced, main effects and interactions are all estimable, nothing is confounded by omission, and there is no argument about which cells were "left out" because none were. For a genuinely small, high-assurance problem it is the gold standard — the design against which reduced plans are judged.
Its failure mode is that the same completeness becomes a trap the instant the space grows: the curse of dimensionality[n1] turns "just add one more factor" into a combinatorial wall, and a team that insists on a full factorial past that point either runs out of budget or, worse, quietly starts skipping cells while still calling the design "full." The classic misuse is exactly that relabeling — a partially-run factorial presented as complete. The guarding discipline is to check the row count before committing, and when it exceeds what can be run, to switch honestly to a reduced design rather than pretend the full one survived.
How it implements the components¶
combination_enumerator— it is the exhaustive enumeration: one row for every element of the Cartesian product, none omitted.axis_set_definition— it fixes the small set of independent factors that will be crossed.level_set_per_axis— it pins the complete discrete value set for each factor, which together fix the total cell count.
It does not draw a supported/unsupported boundary or collapse configurations into representative rows (product_boundary_statement, equivalence_class_collapse_rule — that is Configuration Matrix, its nearest twin, which keeps only a bounded envelope), and it does not shrink the space to a covering subset (sampling_or_reduction_rule — that is Pairwise Covering Array). The full factorial keeps every cell; those siblings deliberately keep fewer.
Related¶
- Instantiates: Cross-Axis Product Space Design — it is the exhaustive-enumeration artifact for the small end of the archetype's scale.
- Sibling mechanisms: Combinatorial Test Coverage Grid · Configuration Matrix · Invalid Combination Rule Sheet · Pairwise Covering Array · Product Space Generator Script · Scenario Cube · Coverage Heatmap
Editorial Notes¶
Form Classification¶
Form family: Representation, Specification & Plan
Rationale: Full Factorial Matrix operates as a non-executable information artifact that externalizes static or prospective structure because it enumerates all factor-level combinations for small experimental or testing spaces.
Independent corroboration: The frozen evidence defines Full Factorial Matrix as 'Enumerates all factor-level combinations for small experimental or testing spaces', so its operative form is Representation, Specification & Plan.
Nearest alternative: Experiment, Test & Rehearsal — The full-factorial matrix prospectively enumerates the combinations to run; a separate test executes those rows against the system.
Review outcome: Independent reviewer agreement; medium confidence.
Origin Attribution¶
Primary origin: Statistics & Experimental Design
Origin pattern: Single lineage
Present-day reach: Multi-domain
Rationale: The matrix is the standard enumeration artifact of full-factorial experimental design.
Review outcome: Independent reviewer agreement; high confidence.
Notes¶
The full factorial is the reference point the whole reduced-design family is measured against: a pairwise array or a fractional design is only meaningful as a fraction of the full factorial it declines to run. Keep the full matrix computable even when you don't execute it — the row count alone is the honest early warning that tells you when exhaustive is no longer an option.
[n1] Curse of dimensionality — the general phenomenon whereby the size of a combinatorial or geometric space grows exponentially with the number of dimensions, so that exhaustive coverage becomes intractable well before the dimension count feels large. For a full factorial it is the reason the design is a small-space tool: each new factor multiplies, rather than adds to, the work. ↩