The formula
N = L₁ · L₂ · … · L_k
Reading: the run count of a full factorial is the product of the level counts. Three factors at two, three, and four levels is 2·3·4 = 24 runs. Every setting of every factor meets every setting of every other factor — that is the definition [2].
N = 2^k
Reading: the workhorse case — k factors, each at a low (−1) and high (+1) setting. Two factors is 4 runs, three is 8, four is 16, five is 32 [2]. The geometry is worth keeping in your head: a 2³ design is the eight corners of a cube, one run per corner.
E_A = ȳ(A = +1) − ȳ(A = −1)
Reading: a main effect is the average of all runs with factor A high, minus the average of all runs with it low. Every single run lands in one of those two averages, so every run works on every effect.
E_AB = ½·[ (effect of A when B is high) − (effect of A when B is low) ]
Reading: the interaction effect measures how much one factor's effect depends on where another factor sits. If E_AB = 0, the factors act independently and their effects simply add. If not, "the effect of A" is an incomplete sentence — you have to say at which B.
y = β₀ + Σ βᵢ·xᵢ + Σ βᵢⱼ·xᵢ·xⱼ + … + ε , βᵢ = Eᵢ/2
Reading: the fitted model. Each coefficient is half its effect because moving a coded factor from −1 to +1 is a two-unit step. A 2^k design estimates exactly 2^k − 1 effects — k main effects, k(k−1)/2 two-factor interactions, and so on up — which is every parameter the model has besides the mean.
Where you meet it
- The environmental chamber. A potting compound cures soft on some units and hard on others. Cure temperature, cure time, primer on or off:
2³ = 8pucks, one oven day, and you learn not just which factor matters but whether primer only earns its keep at the low-temperature cure. That last part is the interaction, and no one-at-a-time series of oven runs will ever surface it. - The propulsion or engine test stand. Mixture ratio and chamber pressure famously do not act alone — performance at one pressure says little about the ratio you want at another. A factorial over the operating box maps the whole corner-to-corner behavior in the minimum number of hot fires, which is the currency that matters when each run costs a stand day.
- The EMC or vibration lab. Cable routing, shield termination, and filter option against a radiated-emissions limit. Eight configurations sounds like a long afternoon until you price the alternative: chasing a failure that only appears with this routing and that termination, a combination a sequential checkout never visits.
- The review board. Someone asks why the qual matrix tests temperature and vibration together when both already passed separately. The factorial answer: separate tests estimate two main effects and assume the interaction is zero. Combined environments are a test for exactly the term that assumption throws away — and combined-environment failures are the ones that reach the field.
How it works
Put numbers on it. A 2² design on factors A and B returns y(−,−) = 10, y(+,−) = 12, y(−,+) = 14, y(+,+) = 22. The effect of A is +2 with B low and +8 with B high. Averaging gives the main effect E_A = (12+22)/2 − (10+14)/2 = 5, and the disagreement is the interaction: E_AB = (8 − 2)/2 = 3. A one-at-a-time test that held B low would have reported "A barely matters" and walked away wrong — not noisy, wrong. Non-parallel lines on a two-factor plot of those four points are the same story drawn instead of computed [1].
The efficiency comes from what DOE texts call hidden replication. In a 2³ design, each main effect is the difference of two four-run averages; the same eight runs are re-partitioned three more ways to get the other effects. One-factor-at-a-time spends two runs per question. The factorial spends all N runs on every question at once, which is why it wins on precision at equal cost and on cost at equal precision [1].
Bookkeeping is a solved problem. Write the runs in standard order — the first factor's column alternates −,+, the second's alternates in pairs, the k-th column is 2^(k−1) minus signs then 2^(k−1) plus signs — and multiply sign columns together to get each interaction's contrast. Yates's algorithm turns the whole effect calculation into repeated adding and subtracting of adjacent pairs, a scheme built for the pencil era that still underlies the software output [3][7].
The gotchas, in the order they bite:
- The run count is exponential.
2⁷is 128 runs; add replication and it's a program, not a test. NIST's guidance is blunt — full factorials stop being the recommended tool at five or more factors; screen with a fractional design first and spend full-factorial runs on the survivors [2]. - No replication means no error estimate. An unreplicated
2^kspends all2^k − 1degrees of freedom on effects, leaving zero for noise. The standard outs: replicate, add center points, or rank the effects on a normal probability plot and treat the ones that fall on the line as your noise estimate. Pooling high-order interactions into error works too — until one of them is real. - Two levels see straight lines only. The design fits a plane between corners. If the response peaks mid-range, the corner runs straddle the peak and report "no effect." Center points are the cheap curvature check; if they light up, you need a response-surface design, not a bigger factorial.
- Interactions are symmetric, causes are not.
E_AB = E_BA— the math cannot tell you whether A modulates B or B modulates A, only that they move together. Physics has to finish that sentence. - Randomize the run order anyway. The factorial structure protects you from confusing factors with each other, not from confusing them with time. Run the matrix in standard order and the slowest-changing factor's main effect quietly absorbs the afternoon's thermal drift — in Yates order a steady trend loads almost entirely onto the last factor's column, whose sign flips exactly once, halfway through the day.
History
Factorial experiments grew out of farmland, where a season is one run and nobody gets to iterate. Ronald Fisher arrived at Rothamsted Experimental Station in 1919 to make statistical sense of its long-running field trials [8][9]. In his 1926 paper "The Arrangement of Field Experiments" he pushed back on the doctrine that a proper experiment asks nature one question at a time, arguing that nature answers best when presented with "a logical and carefully thought out questionnaire" — vary the factors together, in a balanced pattern, and let the arithmetic separate the answers [1][4]. His 1935 book The Design of Experiments made the case at full length: combining treatments in one experiment was not entirely new, but Fisher demonstrated its logical and statistical advantage over the one-factor-at-a-time tradition, interactions included [1][5].
The computational machinery came from Frank Yates, who joined Rothamsted as Fisher's assistant statistician in 1931 and took over the statistics department in 1933 when Fisher left for University College London [6][7]. Yates's 1937 monograph, The design and analysis of factorial experiments, published as Technical Communication No. 35 of the Commonwealth Bureau of Soils, systematized the designs, and the add-and-subtract algorithm bearing his name made estimating every effect in a 2^k experiment a routine hand calculation [6][7][3]. The standard run order engineers still see in software output is called Yates order for that reason [3]. Industry adopted the machinery wholesale after the war; the two-level factorial in particular became the standard opening move of industrial experimentation, which is where the test-lab reader met it.
Related tools
- /tools/strain-gauge-bridge — the response channel on most structural test factorials; its sensitivity sets the
σyour effects must clear - /tools/snr-enob — the acquisition chain's noise floor decides the smallest interaction any run count can resolve
- /tools/adc-resolution — an effect smaller than one quantization step is invisible at the eight corners of any cube
- /tools/vibration-natural-freq — the response variable in half the shaker-lab factorials ever run
Sources
- https://en.wikipedia.org/wiki/Factorial_experiment
- https://www.itl.nist.gov/div898/handbook/pri/section3/pri333.htm
- https://www.itl.nist.gov/div898/handbook/eda/section3/eda35i.htm
- https://repository.rothamsted.ac.uk/item/8v61q/the-arrangement-of-field-experiments
- https://en.wikipedia.org/wiki/The_Design_of_Experiments
- https://mathshistory.st-andrews.ac.uk/Biographies/Yates/
- https://en.wikipedia.org/wiki/Frank_Yates
- https://mathshistory.st-andrews.ac.uk/Biographies/Fisher/
- https://en.wikipedia.org/wiki/Ronald_Fisher