正交设计
这个方法是做什么的
不读数据表,按“因子数 k”与“水平数 s”两个控件直接生成一张正交表,用远少于全因子的次数分辨多个因子的主效应。正交表的定义性质是强度 2:任意两列的 s² 种水平组合等次出现,因此各因子的主效应估计彼此正交、互不混杂。省下来的次数很可观——实测 13 个 2 水平因子用 L16(2^13) 只要 16 次(全因子 8192 次),8 个 7 水平因子用 L49(7^8) 只要 49 次(全因子 5,764,801 次)。
报告五张卡:选表结果与自由度预算、设计矩阵(含“建议实施顺序”随机排列)、设计空间投影与水平频次、代数评价指标、实施与后续分析路径。第四张卡是这个模块最该看的一张:除了正交性 max|r|、强度 2 校验、水平均衡度、D-效率与 G-效率,它还单列一行主效应 ↔ 两因子交互的别名强度,把“省次数换来的代价”量化成一个可核验的数字。所有指标都按本次生成的矩阵现算,不是查表来的。
什么时候用它
- 筛选阶段:因子较多,只想先排出谁重要、谁可以放掉
- 有理由相信二因子交互可以忽略,或者本轮暂时不打算估计交互
- 定类因子(催化剂种类)与定量因子(温度)混在一起——编码值只表示“第几个水平”,不要求等间距,卡② 的结论文案明确说了这一点
- 做完试验准备用「极差分析」快速给出因素主次与推荐组合
前提是水平数只能取 2 或素数。s=2 走 Hadamard 构造,试验次数自动取不小于 k+1 的 2 的幂,因子数可到 13;s≥3 走 GF(s) 线性构造 OA(s², s+1, s),试验次数固定为 s²,因子数最多 s+1。越界会被直接拦下:实测 s=3、k=5 报“3 水平 OA(s²) 构造最多容纳 4 个因子”,s=4 报“仅支持 2 或素数(3,5,7...)”。
什么时候不要用它
- 必须估计交互作用:正交表做不到,用「全因子设计」把组合做全,再用「多因素方差分析」拆交互。
- 因子是定量的,目标是找最优工艺点而不是排主次:用「中心复合设计(CCD)」或「Box-Behnken设计」排点,再用「响应面分析(RSM)」拟合曲面寻优。
- 水平数是 4、6 这类既非 2 也非素数的值:本模块会直接报错。要么把水平合并成 2 或 3 档,要么改用「均匀设计」——它对水平数没有这个限制。
- 因子数超过 s+1(如 3 水平想放 5 个因子):用「均匀设计」,或者次数付得起就用「全因子设计」。
- 试验已经做完、手上是响应数据:本模块只生成方案,分析用「极差分析」。
容易误读的地方
- “正交”保证的是主效应之间不混杂,完全不保证交互能估计——这是正交设计最贵的一课。 实测 2 水平表的别名强度恒为 max|r|=1.0000,摘要的括注写的是“存在完全混杂,交互不可估计”。也就是说 L8(2^4) 里某个“显著”的主效应,完全可能是另外两个因子的交互在冒名顶替,而这批数据本身分不出来。素数水平的表没这么极端,但也不干净:实测 L9(3^3) 为 0.6124、L9(3^4) 为 0.7071、L25(5^6) 为 0.5164、L49(7^8) 为 0.4226——没有一个是 0。
- 饱和表没有剩余自由度,后续连 p 值都出不来。 卡① 会给出“剩余自由度”:实测 L4(2^3)、L8(2^7)、L9(3^4) 都是 0,这些表把 N−1 个自由度全分给了主效应。这样的数据交给「极差分析」,它会照常给极差 R 与因素主次,但摘要会写“本试验无重复(残差自由度 0),未进行方差分析,报告中不含任何 p 值与统计效应量”——用 L9(3^4) 实测确认过。想要显著性,就在选表时留出剩余自由度(如 3 水平只放 3 个因子,实测剩余 2),或者安排重复测量。
- 表列多于因子时,多出来的列是资源不是浪费。 卡② 结论文案说多余的列可留作误差列(空列),并且不要把两个因子分派到同一列。实测 k=4、s=2 时 N=8、剩余 3 个自由度,正是这几个空列换来的;硬把因子塞满每一列,换来的就是上一条的饱和表。
- “节省了 X 次试验”这个数字,前提是你本来真打算做全因子。 摘要会写“相较同规模全因子设计的 5,764,801 次可节省 5,764,752 次”这类话。它省掉的不只是成本,还有全部交互信息;把它当成收益写进报告可以,但别据此认为这份设计和全因子等价。
- “强度 2 校验通过”只覆盖两两列,与三个及以上因子的组合无关。 那一行的判定写的是“正交表定义成立,主效应可无混杂估计”——它是主效应可估的依据,不是“设计已经覆盖了各种情形”的依据。三因子交互在正交表里同样是别名的一部分,报告并没有为它做任何检验。