【最小二乘法 | 高斯法】来认识一下传说中的最小二乘法
最小二乘法在三坐标测量时常常被提起,那什么是最小二乘法呢?它具备什么样的特点?根据标准,哪些要求必须采用最小二乘法呢?今天我们就来聊一聊这个传说中的最小二乘法。
在认识最小二乘法之前,我们必须要先认识一个人:
图1 卡尔·弗里德里希·高斯(1777-1855)没错,此人就是那个高斯(这就是蔡司三坐标测量软件里,把最小二乘法也称为高斯法),最小二乘法就是他整出来的。
一看此人面相就知道此君骨骼清奇,性格内向,思想诡异。这么说可能对他老人家大大的不尊敬,他可是和阿基米德、牛顿齐名并列为世界三大数学家,以高斯命名的让人眼花缭乱的定律之类的东西就有110项,恐怕是目前数学成果最多的数学家,真没有之一。所以这个老头被称为“数学王子”(估计是最老的王子)。高斯诡异的思想是贡献给人类的,他的数学成果应用在各个领域。有一项应用在当今制造业质量系统的管控,相信各位同行都很熟悉的,那就是著名的正态分布(也叫高斯分布)。
好了,不扯了,关于高斯NB的故事太多,扯不完。回归主题,我们还是来认识一下高斯18岁时就找到的最小二乘法吧。
一. 最小二乘法的拟合原理
根据《数学指南》书中的解释:
图2 《数学指南》中对最小二乘法的解释上面这段话,枯燥且无趣,大家不用厌恶,数学向来这个样子。
现在,我们来慢慢认识上面这段话的意思,这句话的意思是说,拟合有两个前提:
1. 要有N个不同的点(x1,x2...xN)的测量值(y1,y2,y3..yN) ,说得简单一点,就是要用三坐标在零件上采很多个不同位置的点,如(x1,y1);(x2,y2)...(xN,yN)。
2. 要有目标,就是我们要知道想把这些点拟合成什么样的特征,即所谓的给定函数f(x,a1,a2,...an)。比如说,用三坐标在零件上采了很多个点,我们想把它拟合成圆呢还是拟合成平面?这个我们是在拟合前必须要知道的。
我们继续往下走,假设我们知道我们想把采的点拟合成一个平面,但是这个平面的在空间坐标系中的位置,方向我们并不知道。也就是说要确定这个平面的在三维坐标系中的具体方程,就必须要知道那个给定函数f(x, a1,a2,...an)中的参数a1, a2,...an!
好了,说了半天,我们最终目的就是为了求a1, a2,...an! 而求这些参数的过程就是那个神神叨叨的拟合!
当然了,拟合方法有很多种,只是拟合满足的条件不同。其中有一种只要满足下面的条件,
那么这种拟合方法就是最小二乘法,也就是高斯法。相信讲到这里,还是有很多小伙伴不太明白,我们再来举个简单的例子说明一下最小二乘法的拟合。
条件1:假设我们在一个平面上采了三个点,分别是u(10,10),v(40,42),w(20,45)
条件2:我们已知想把这三个点拟合成一条直线。这条直线的方程则是 y=ax+b
如果a,b的数值不一样,那么这个直线在空间中的方向和位置也不一样。所以所谓的拟合过程就是求直线方程中的a和b的过程(a,b就是前面提到的参数a1,a2,a3..an)。a,b一旦得出,那么这个直线也就得出来了。见图3:
图3 拟合数据和目标如何确定a和b呢?根据下面的公式,条件是要求Y方向的差值的平方和最小.
即要求下列公式中的R最小。 关于r1, r2, r3见图4. 图4 高斯拟合原理由图4中不难得出:r1=10a+b-10 r2=20a+b-45 r3=40a+b-42,则有:
求解的过程就是求当R处于最小值时,对应a,b的值。如果真要手工计算这个过程,要用到高等数学中的求偏导,为了不让大家恶心,在这里就不再详细叙述计算过程,把计算过程交给那些苦逼加牛逼的软件工程师们吧。
经过一番计算,我们可以得出 a=1.4009 ;b=-0.3482
则我们可以知道经过所谓的最小二乘法拟合出来的直线是 y=1.401x-0.348. 见下图:
图5 软件中用最小二乘法拟合直线上面就是对最小二乘法拟合的过程给大家做了一个简单的介绍。现实中所应用的拟合会比上面的例子复杂很多,但是现在软件的算法相对成熟,不管是拟合直线,平面,曲面等,软件都可以快速算出来。具体的我们就不去深究了,但是我们需要知道最小二乘法的特点:
1. 最小二乘法拟合出来的特征是理想的
2. 最小二乘法拟合出来的特征是唯一的
3. 如果没有附加特别的约束(即a1,a2,a3...an之间需要满足某种关系),最小二乘法拟合出来的理想特征,一定在拟合点之间(不是最中间)
4. 最小二乘法具备“民主性”,即倾向于大多数(切比雪夫法是绝对的“中间主义”)。如果和切比雪夫法做比较,下图则可以体现出最小二乘法的所谓的“民主性”。
图6 最小二乘法的“民主”性二. 在标准里边哪里必须要用到最小二乘法呢?
相比较ASME而言,ISO更加喜欢最小二乘法,下边我们列出一些案例。
1. 最小二乘法应用在尺寸部分
1.1 尺寸要素的默认尺寸
ISO默认独立原则,对尺寸要素的尺寸要求是”两点尺寸”必须合格。如果被测的零件是根轴,要求直径要合格,这时我们就要求两点尺寸必须合格。
什么是两点尺寸呢?,我们对它的定义是“指的是在垂直于轴线的任意截面内,连线过圆心且在零件表面上的两点间的距离”,这里的“轴线”必须是最小二乘圆柱的轴线,“圆心”必须是最小二乘圆的圆心。见下图:
图7 图纸和实际零件已知图纸要求和实际零件如图7所示,如何严格按照标准来检测该轴的直径呢?分三步:
第一步,在实际零件表面采点拟合成最小而成圆柱,找出最小二乘圆柱轴线,见图8:
图8 拟合最小二乘圆柱第二步,垂直于图8中获得的最小二乘圆柱的轴线,找出截面A-A(多个),见图9:
图9 找出截面A-A第三步,在该截面上采点拟合称最小二乘圆,找出该最小二乘圆的圆心。然后在该截面上任意取连线过该圆心的两点,测出距离, 如下图中的d1,d2,d3, 这就是两点尺寸(局部尺寸)。见图10:
图10 两点尺寸(局部尺寸)只要图10中的两点距离满足22±0.1,该轴的直径就是合格的。
看完上面的三大步骤,相信经常在生产线上做检测的小伙伴嘴里马上会蹦出两个字,“蛋疼”!
而生产车间,检测部门,为了检测这根轴的直径,常规的做法也是分三步来检测:
第一步,拿起游标卡尺
第二步,检测
第三步,放下游标卡尺
事实上,在零件的形状误差不大的情况下,用常规的三大步和高逼格的三大步测量结果的差异并不大,是可以执行的。但并不意味着标准规定的测量方法是多余,它是规定了一种严谨的,具体的,没有争议的一种操作方法,如果客户和供应商发生争执,必须依据标准规定的测量方法来仲裁。
顺便提一下,海克斯康的2017版三坐标软件PC-DMIS里边已经有了测量局部尺寸的功能,如图11中的LP指的就是两点尺寸即局部尺寸(Local Point)。
图11 局部尺寸在PC-DMIS中1.2 尺寸要素的尺寸加GG修饰符号
根据ISO14405-1,如果尺寸要素的尺寸加了GG修饰符号,这时要求实际零件的最小二乘圆柱的直径必须满足图纸要求,见图12:
图12 GG要求在图纸中图12要求,则要求该实际轴线的最小二乘圆柱直径d必须满足Φ22±0.1。另外, GG的测法在2017版的PC-DMIS里也有,参考图11.
2. 最小二乘法应用在几何公差
2.1 默认的几何公差控制
在ISO中,当几何公差控制的对象是中心线的时候,默认都是提取中心线。已知零件图和实际零件如下图所示,要求测量直线度,这时直线度的约束对象则是这根轴的提取中心线,而这个提取中心线的获得,也是要分三步才能获得。见下图:
图13 图纸要求和实际零件第一步,在实际零件表面采点获得最小二乘圆柱的轴线。见图14
图14 获得最小二乘圆柱轴线第二步,在垂直于该最小二乘圆柱轴线的平面内采点,拟合出最小二乘圆(平面圆),找出其圆心,见图15
图15 获得最小二乘圆圆心第三步,将所有获取的每个截面的最小二乘圆的圆心连起来,就形成了一条弯弯曲曲的中心线,这个中心线叫提取中心线(或提取中心要素),在ISO中,当几何公差约束中心要素时,所约束的对象就是这个玩意儿。只要这个提取中心线能够处在直径为Φ0.1的公差带范围内,该轴线的直线度就合格。
图16 直线度的要求2.2 加修饰符G圈的几何公差控制
最新版的ISO1101:2017增加了很多修饰符号。尽管很烦,其最大的好处在于,设计工程师可以根据功能的需要任意定义需要控制的对象,能更加清晰的表明对零件的要求,使生产制造和质量检测不会出现误解。还有一个好处就是减少了ISO和ASME两个标准之间的差异。
其中有一个符号就是G圈,一旦加了G圈,其几何公差所约束的对象不再是提取中心线,而是最小二乘圆柱的轴线。见图17:
图17 图纸要求和实际零件图17的垂直度增加了G圈的修饰符号,意味着被测对象不再是该孔的提取中心线,而是用该孔拟合出来的最小二乘圆柱的轴线,如图17所示:
图18 垂直度的要求图18中,只要用实际孔拟合出来的最小二乘圆柱的轴线落在0.2的圆柱形公差带范围内,该孔的垂直度就合格。需要注意的是,一旦加了G圈,该垂直度不再控制直线度,为了控制其直线度,还要额外增加直线度的要求。而在ISO默认的要求(没有任何修饰符)中,该案例垂直度本来是可以控制直线度的。
最小二乘法的拟合,在几何公差的测量里还有其他地方会用到(如基准后边加G),这里不再一一叙述。
小结
本片文章叙述了最小二乘法的拟合原理以及拟合出来的特征所具备的特点,同时举例说明了ISO标准中最小二乘法在尺寸公差和几何公差中的应用。