实验设计三大铁律:随机化、区组化、重复性
做DOE这么多年,我见过太多人一上来就急着排实验、跑数据。结果呢?数据一堆,结论全错。为什么?因为忽略了三条最基本的规则——随机化、区组化、重复性。
这三条不是理论家拍脑袋想出来的。它们是无数实验翻车之后,用真金白银换来的教训。我个人习惯,拿到任何一个实验项目,先花10分钟把这三条捋清楚。捋不清楚,绝不动手。
核心观点:随机化消除未知偏差,区组化控制已知干扰,重复性量化误差大小。三条缺一不可。
1. 随机化——别让“顺序”毁了你的实验
什么叫随机化?说白了,就是实验的先后顺序不能由你“觉得方便”来决定。得用抽签、随机数表或者软件来排。
为什么要这么麻烦?因为时间会带来变化。
举个例子。你测试4种工艺参数对焊接强度的影响。如果按参数A、B、C、D的顺序做,刚好做到C的时候,车间湿度突然升高了。结果C的数据全偏了。你以为是参数的问题,其实是湿度的锅。
随机化就是把这种“时间效应”打散,让它均匀分布到各个处理组合里。这样,就算有干扰,也不会集中攻击某一个条件。
我的习惯:每次实验前,我都会用Minitab或JMP生成一个随机运行序列表,打印出来贴在实验台旁边。操作员必须严格按照这个顺序做,不许自己调。
随机化还有一个隐藏好处——它能让你的统计推断更可靠。大多数统计检验都假设数据是独立随机的。你不随机,这个假设就破了,p值算出来也是假的。
避坑指南:我曾经遇到一个项目,工程师觉得“随机化太麻烦,反正我盯着做不会有问题”。结果因为刀具磨损,后面做的几组数据全部偏大。最后花了三周重新补实验。嗯,从那以后,我再也不跟随机化讨价还价了。
2. 区组化——把“已知的麻烦”隔离出去
随机化对付的是你不知道的干扰。但有些干扰,你是知道的。比如:
- 上午和下午的原材料批次不同
- 两台设备之间有差异
- 两个操作员的手法不一样
这些干扰你没法消除,但你可以控制。怎么控制?用区组化。
区组化的思路很简单:把实验分成几个“块”,每个块内部尽量均匀,块之间的差异就是你已知的那个干扰因素。然后,在每个块内部做完整的实验组合。
| 场景 | 区组变量 | 为什么这么分 |
|---|---|---|
| 原材料分两批到货 | 批次(批1、批2) | 不同批次的原料可能有细微差异 |
| 实验跨三天完成 | 天数(Day1、Day2、Day3) | 环境条件每天可能不同 |
| 两台注塑机同时生产 | 机器(机A、机B) | 机器之间的机械偏差无法忽略 |
区组化之后,你在分析数据时可以把“区组”作为一个因子放进模型。这样,区组之间的差异就被“吸收”掉了,你真正关心的那些因子效应会更干净。
注意:区组变量本身不是你想研究的对象,你只是不想让它干扰结论。所以区组一般不做交互作用分析,只作为随机效应处理。
我个人习惯,在实验计划表里专门留一列叫“区组编号”。每次排实验,先把已知的干扰因素列出来,然后决定要不要分区组。分区组不是万能的,但能分区组的时候,我从不偷懒。
3. 重复性——没有重复,就没有真相
重复性,就是同一个实验条件,你做了不止一次。注意,我说的是“真正的重复”——重新装夹、重新设置、重新运行,而不是同一个样品测两次。
为什么要重复?因为任何测量都有误差。你只做一次,你根本不知道这个结果到底是真值还是运气。
举个例子。你测某个工艺条件下的强度,得到85 MPa。你觉得不错。但如果你重复做3次,得到85、92、78,平均值85,标准差7。你还会觉得“不错”吗?这个波动范围,可能直接把你的结论推翻。
重复性给你两样东西:
- 误差估计:你能算出每个条件下的标准差,知道数据有多“散”
- 统计检验力:重复次数越多,你越容易发现真实的因子效应
经验之谈:我一般建议每个条件至少重复2-3次。如果实验成本允许,5次更好。但别盲目追求重复——重复次数和实验总次数是矛盾的,你得在资源和精度之间找平衡。
避坑指南:我曾经见过一个团队,为了省钱,每个条件只做1次。结果分析出来一个因子“显著”,花了几十万去改工艺。改完之后发现根本没效果。回头一查,那个“显著”其实是偶然误差。嗯,重复性省下来的钱,最后都加倍赔回去了。
三条铁律的关系——一张图说清楚
这三条不是孤立的。它们共同构成了实验设计的“防错体系”。我画了一张图,帮你理解它们怎么配合:
三条铁律的优先级——先做哪个?
你可能会问:如果资源有限,先保哪条?
我的排序是这样的:
- 先保重复性。没有误差估计,你连数据靠不靠谱都不知道。至少每个条件做2次。
- 再保随机化。顺序效应是DOE的头号杀手。哪怕只做一次重复,也必须随机。
- 最后考虑区组化。区组化会消耗自由度,如果你的实验次数本来就少,分区组可能得不偿失。这时候,优先用随机化去“稀释”干扰。
一个实用技巧:如果你的实验总次数少于20次,我建议优先保证重复性和随机化。区组化可以等实验规模大了再引入。反过来,如果实验次数超过50次,区组化几乎必须做,否则干扰会累积到不可控。
一个真实案例——三条铁律全用上
我之前帮一家电子厂优化回流焊温度曲线。实验涉及3个因子:预热温度、峰值温度、传送速度。每个因子2个水平,全因子设计就是8个组合。
当时的情况是:
- 实验要分两天做完(区组化:按天分区组)
- 每块PCB板来自不同批次(随机化:打乱板子顺序)
- 每个条件测3块板(重复性:n=3)
最后分析结果,区组效应显著——第二天的数据整体偏高。但因为我们做了区组化,这个差异被成功隔离,真正影响焊接质量的因子(峰值温度)被准确识别出来。如果没有区组化,我可能会误以为峰值温度不显著,那就全完了。
嗯,这就是三条铁律的价值。它们不显眼,但少了任何一条,你的实验都可能变成一场赌博。