最小二乘法的道岔总电流读数校正研究
2021-11-03卡斯柯信号有限公司陈吉余余日可
卡斯柯信号有限公司 陈吉余 余日可
最小二乘法(又称最小平方法)是一种数学优化技术。它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。铁路运营,道岔动作电流曲线反映了道岔整个转换过程中的时间特性、机械特性和电器特性,是道岔日常维护和故障处理的重要参数指标。由于铁路现场条件复杂,经过联锁电务维修机一次校正的道岔总电流值往往出现较大偏差。一次校正的手段比较单一,校正力度不够,缺少反馈机制,完全由项目实施人员预估而定。单一的校正机制下调整出来的电流表界面显示值和实际值容易出现较大偏差。利用最小二乘法对电流表读数进行二次校正,从而得到了更加精确的电流表读数。
道岔总电流是反映道岔动作时道岔是否正常运转的重要指标。区别于单一的道岔电流曲线,道岔总电流反映了当时刻所有道岔动作的电流值总和。
值班员在操作表示机上进行操作道岔时,所有在动作的道岔产生的电流值的总和,由电流表采集模块集合后通过RS-422串口发送给联锁电务维修机。联锁电务维修机将收到的电流值在软件内部进行一次校正后显示在自身显示界面上,并且将界面显示值发送给联锁操作表示机予以显示。电务维修人员在调试联锁的时候,动作道岔。直接可以用在站场界面上用查看道岔电流表的指针数值,并通过观察电流表读书的办法直观的判断道岔正常运转与否。单一的一次校正的手段,仅以前馈系数为校正办法,校正准确度较差,缺少反馈机制,完全由项目实施人员预估前馈系数而定,导致调整出来的电流表界面显示值和道岔总电流值的实际值出现较大偏差。
为了克服上述现有技术存在的缺陷,提供一种基于最小二乘法校正道岔总电流表读数的方法,可以大幅度纠正电流表读数,提高车站计算机联锁显示界面电流表数字显示的正确率。
1 最小二乘法简介
最小二乘法(又称最小平方法)是一种数学优化技术。通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。最小二乘法还可用于曲线拟合,其他一些优化问题也可通过最小化能量或最大化熵用最小二乘法来表达。最小二乘估计量具有三特性。
(1)线性特性,是指估计量分别是样本观测值的线性函数,亦即估计量和观测值的线性组合。
(2)无偏性,是指参数估计量的期望值分别等于总体真实参数。
(3)最小方差性,是指估计量与用其它方法求得的估计量比较,其方差最小,即最佳。最小方差性又称有效性。这一性质就是著名的高斯一马尔可夫(Gauss-Markov)定理。这个定理阐明了普通最小二乘估计量与用其它方法求得的任何线性无偏估计量相比,它是最佳的。
考虑超定方程组(超定指方程个数大于未知量个数):
其中m代表有m个等式,n代表有n个未知数,m>n;将其进行向量化后为:
显然该方程组一般而言没有解,所以为了选取最合适的,让该等式"尽量成立",引入残差平方和函数S。
(在统计学中,残差平方和函数可以看成n倍的均方误差MSE)
通过对S(β)进行微分求最值,可以得到:
如果矩阵XTX非奇异则有唯一解:
2 道岔总电流表读数的形成
联锁电务维修机在串口接口接收到的道岔总电流值,是一个数字化的整形值。必须经过转化校正,才能转化为实际的道岔电流物理模拟量,从而显示到站场界面上。校正的方法为,在前馈环节直接定义转换系数,并且根据接口协议乘以采集值,将得到的结果发送到界面显示上。既有的校正算法,是一种简单的前馈校正的办法。因缺少反馈机制,校正得到的电流值和实际事实上的电流值往往相差较大。
3 利用最小二乘法对道岔总电流表读数的校正
基于最小二乘法校正道岔总电流表读数,采用前馈校正算法后得到的采集值和显示值,作为反馈的输入数据源,得到最小二乘法中的一元线性模型中使用的系数和偏差。再进一步利用计算得到的系数和残差进一步纠正电流表读数,提高联锁站场界面显示的正确率。实现步骤如下:
(1)动作一组道岔,记录在站场界面上显示的电流值。同时,在室外用万用表测量得到室外测量值。作为一组数据。
(2)将步骤1重复若干次,得到若干组这样的数据组,作为最小二乘法的输入。重复次数至少2次以上。按照(T1,T2)、(T3,T4)……方式组成若干个个特征点,与原点(0,0)组成曲线拟合的基础点。
(3)将步骤2得到的特征点数据组作为最小二乘法的输入,通过最小二乘法计算得到系数coeff和偏差offset。
(4)将其他时刻所有的道岔总电流输入值均采用步骤3计算得到的相关系数coeff和偏差offset予以校正。校正公式为y=coeff*x+offset。其中,x为校正前的观测输入值,y为校正后的电流表总电流输入值。
(5)将4中所校正后得到的道岔总电流校正值发送到站场界面予以显示(见图1、图2)。
图1 利用最小二乘法校正道岔总电流的流程图
图2 最小二乘法的流程图
4 算法软件实现
最小二乘法的程序流程如下:
(1)输入特征数据组counter组数据(tx[],ty[])
(2)将每个特征组的值循环计算得到
(3)计算得到
(4)计算得到coeff=(sigma_xy-nxy_bar)/(sigma_xx-nxx);
(5)coeff,offset即为计算得到的输出结果最小二乘法对应的系数和偏差。
5 实验数据分析
采集电流观测值,并且在采集时在室外道岔处同时测量实际的电流值,计算得到校正系数coeff和偏差offset,观测值和测量值见表1。
表1 采集电流观测值以及电流测量值(安培A)
考虑函数y=coeff*x+offset,其中coeff和offset是待定常数。如果离散点完全的在一直线上,可以认为变量之间的关系为一元函数。
解得:
故拟合方程为:
为了验证算法的效率和正确性,采用在现场测量电流值,并且用程序记录电流观测输入值的情况下,观察观测输入值(x)与计算值(y),见表2。
表2 电流测量值和计算值比较1(安培A)
由图3可见,校正前的观测的电流表读数值(x)与实际的道岔总电流值相差比较大,而经过校正的电流表计算值(y)精度得到了大幅度提升,与实际的道岔总电流值非常接近。
图3 电流测量值和计算值比较2(安培A)
为了能够更加精确的贴近实际道岔总电流值,可在采集测试阶段收集更多的数据,计算出更加准确的coeff和offset。此外,随着道岔使用时间的变化,电流采集电路输出也会发生变化,对电流表显示的校准则成为电务维护的工作之一。
既有的按电流表接口协议的数据转换功能,仅仅是利用前馈手段定义一个系数,和电流表采集模块采集到的值做线性的校正,从控制理论的角度来讲,仅仅停留在前馈阶段。而基于最小二乘法校正道岔总电流表读数,在单一的校正算法的基础上执行二次校正。二次校正采用的数据,来自前一次校正使用得到的测量值和观测值,将反馈控制的概念引入了电流表读数校正,因此更加准确的反映了道岔总电流的真实数值。