LM算法在二阶过阻尼系统参数估计中的应用
2015-03-11ApplicationofLMAlgorithminParameterEstimationforSecondorderOverdampedSystem
Application of LM Algorithm in Parameter Estimation for Second-order Over-damped System
李敏花 柏 猛 吕英俊
(山东科技大学电气信息系,山东 济南 250031)
LM算法在二阶过阻尼系统参数估计中的应用
Application of LM Algorithm in Parameter Estimation for Second-order Over-damped System
李敏花柏猛吕英俊
(山东科技大学电气信息系,山东 济南250031)
摘要:针对二阶过阻尼系统传递函数的参数辨识问题,提出一种根据二阶过阻尼系统阶跃响应估计系统传递函数未知参数的新方法。该方法首先求解出二阶过阻尼系统的阶跃响应表达式,然后定义模型输出与观测数据的差值作为代价函数,将参数估计问题转换为非线性最小二乘问题。通过采用Levenberg-Marquarat算法极小化代价函数,估计出系统未知参数。为确定参数估计的初值,给出采用两点法的参数初值估计方法。仿真结果表明,在含有观测噪声的情况下,提出的方法能有效解决过阻尼二阶系统未知参数的估计问题。
关键词:二阶过阻尼系统传递函数参数估计阶跃响应非线性最小二乘Levenberg-Marquarat算法观测噪声
Abstract:Aiming at the problem of parameter identification for transfer function of two order over damping system, a novel method for estimating unknown parameters in transfer function of the second order over-damped system in accordance with its step response is proposed. With this method, firstly, the expression of the step response of the second order over-damped system is solved, then defining the difference between the model output and observed data as the cost function, the issue of parameter estimation is converted into a nonlinear least square topic. The cost function is minimized through using Levenberg-Marquarat (L-M) algorithm, to estimate unknown parameters of the system. In order to determine that initial value for parameter estimation, the estimation method of initial value two-point method is given. The results of simulation demonstrate that the method proposed can effectively solve the problem for unknown parameter estimation of such system under observation noises exist.
Keywords:Second-order over-damped systemTransfer functionParameter estimationStep responseNonlinear least square
Levenberg-Marquarat algorithmObservation noise
0引言
在基于模型的控制系统设计中,建立系统动态模型是控制器设计的前提,模型的精确程度直接影响所设计控制系统的性能。在众多的系统模型中,二阶系统模型被广泛应用于惯导系统[1]、化工过程、机电设备等系统的建模,在实际应用中,获得这些系统模型最有效的途径是系统辨识。虽然近年来在采用系统辨识方法获取二阶系统传递函数的研究方面已取得较大进展[1-4],但对一些化工过程和无法实现频繁启动的机电设备,现实的建模方法依然是通过系统阶跃响应数据获取系统模型。目前,由阶跃响应曲线辨识二阶系统传递函数参数的经典方法主要有两点法、相良节夫法、半对数法和面积法等[2]。但这些方法的精度受观测噪声的影响较大,对此,本文提出一种基于数据拟合的二阶过阻尼系统参数辨识方法。该方法通过将二阶系统的参数辨识问题转换为阶跃响应数据的拟合问题,采用非线性最小二乘方法解决含有观测噪声情况下二阶过阻尼系统的参数辨识问题。
1非线性最小二乘参数估计方法
1.1 算法原理
在不考虑时间滞后的情况下,典型二阶过阻尼系统传递函数可表示为:
(1)
式中:T1和T2为时间常数,且T1≥T2。在零初始状态下,二阶过阻尼系统的单位阶跃响应可表示为:
(2)
假设在ti时刻,系统阶跃响应y(ti)的观测值为z(ti),且有:
z(ti)=y(ti)+v(ti)
(3)
式中:v(ti)为观测噪声,i=1,2,…,N。
令z(i)=z(ti)、y(i)=y(ti)、θ=[T1,T2]T,则二阶系统未知参数θ的估计问题可转化为如下函数的极小化问题:
(4)
式中:J(θ)为代价函数。
(5)
显然,代价函数J(θ)的极小化问题是典型的非线性最小二乘问题。令fi(θ)=z(i)-y(i),则式(5)可表示为:
(6)
假设f(θ)具有连续的二阶偏导数,则f(θ)在θ附近的Taylor展开可表示为:
f(θ+Δθ)=f(θ)+s(θ)Δθ+O(‖Δθ‖2)≈
f(θ)+s(θ)Δθ=l(Δθ)
(7)
式中:s(θ)为Jacobian矩阵。
(8)
将式(7)代入式(6),可得:
(9)
sT(θ)s(θ)Δθ=-sT(θ)f(θ)
(10)
当sT(θ)s(θ)为正定矩阵时,求解式(10)可得经典Guass-Newton方法迭代步长:
(11)
当s(θ)Ts(θ)为半正定矩阵时,为使式(10)有解,采用阻尼Guass-Newton方法可得:
(12)
式中:μ>0为阻尼系数。
一般情况下,对于算法的每一步迭代,希望在保证算法函数值有一定下降量的情况下,步长尽可能大,以便尽快接近最优点。因此,μ的取值非常关键。为解决μ的取值问题,本文采用Levenberg-Marquarat(LM)算法解决代价函数的极小化问题。LM算法结合了Guass-Newton算法和梯度下降法的优点[5],可较好地解决非线性最小二乘问题,被广泛应用于各类最优化问题的求解[6-9]。在LM算法中,(k+1)次迭代的μ值取决于k次迭代和(k-1)次迭代J(θk)和J(θk-1)的值,即:
(13)
式中:λ>1为增长因子,一般取λ=2或10。
(14)
由上述参数迭代过程可见,采用式(14)估计二阶系统未知参数时,需要设置参数初值。由于非线性最小二乘法为局部收敛,参数初值会直接影响算法的收敛,因此有必要考虑参数初值的估计问题[5]。
1.2 参数初值估计
为确定待辨识参数初值,本文采用两点法计算二阶系统参数[10]。该方法选取系统阶跃响应(2)中的两个典型点,通过联立方程组计算T1和T2的值。
对于二阶过阻尼系统单位阶跃响应曲线,一般取y(t1)=0.4和y(t2)=0.8两个点作为典型点。将这两点代入式(2),可得方程组:
(15)
该方程组的近似解为:
(16)
通过求解上式可得T1和T2的估计值。在求解过程中,对于二阶系统,t1和t2应满足关系[10]:
(17)
综上所述,本文提出的采用LM算法对二阶过阻尼系统进行参数辨识的方法步骤如下。
(2) 参数初值估计。取z2(tk)在0.4和0.8位置附近满足式(17)的时间t1和t2,代入式(16),求出T1和T2作为参数θ的初值,即θ0=[T1,T2]T。
(3) 设置阻尼系数初值μ0、增长因子λ>1和迭代次数kmax。其中,本文取λ=10。
(4) 分别采用式(8)和式(12)计算sk(θ)和Δθk。
2仿真结果与分析
为检验本文所提出二阶过阻尼系统参数辨识方法的有效性,对以下典型二阶过阻尼系统进行参数辨识。
(1) 直流电机模型参数辨识
直流电动机的数学模型可表示[11]:
(18)
式中:Tm和Tl分别为机电时间常数和电磁时间常数;Ce为直流电机在额定磁通下的电动势系数。试验中,模型取Ce=0.192 5,Tm=0.075,Tl=0.017,迭代次数kmax=20。参数辨识结果如表1和图1所示。其中,表1为根据归一化后直流电机阶跃响应得到的参数辨识结果。图1为根据含有观测噪声数据辨识得到的系统模型与真实模型阶跃响应的比较结果。
表1 参数辨识结果
由试验结果可见,当无观测噪声时,采用直流电机阶跃响应数据可准确辨识出电机电磁时间常数和机电时间常数。当观测数据含有噪声时,本文提出的算法依然可以较好地估计出电机时间常数,具有较高的参数估计精度。
图1 直流电机单位阶跃响应
(2) 双惯性系统参数辨识
试验采用式(1)所示的双惯性系统作为二阶过阻尼系统。试验中,取T1=11,T2=3,kmax=20。采用单位阶跃响应数据得到的参数估计结果如表2所示,辨识模型与真实模型阶跃响应的比较结果如图2所示。
表2 参数估计结果
图2 双惯性系统单位阶跃响应
由试验结果表2和图2可见,采用本文提出的方法可有效估计出具有较大时间常数的过阻尼系统参数。
虽然在含有观测噪声时系统参数的估计精度略低于无观测噪声时的情况,但辨识得到的系统模型依然具有较好的阶跃响应拟合精度。综上所述,本文提出的方法可根据系统单位阶跃响应有效估计出二阶过阻尼系统参数,适用于工业系统建模。
3结束语
本文提出的参数辨识方法是将二阶系统参数辨识问题转换为系统阶跃响应数据的非线性函数拟合问题,通过采用LM算法可有效解决参数估计中的非线性最小二乘问题。该方法适用于过程控制系统或无法实现频繁启动的控制系统的模型辨识。由算法推导过程可见,该方法同样适用于一阶和二阶欠阻尼系统的参数估计问题。在给定参数初值的情况下,该方法同样适用于多变量系统的参数辨识问题。另外,提出的方法实现简单,适用性强,便于工程应用。
参考文献
[1] 胡钢墩,李发泽.惯性系统的时域在线辨识[J].控制与决策,2010,25(1):133-136.
[2] 严德昆.二阶过阻尼系统传递函数辨识的新方法[J].控制理论与应用,2001,18(4):638-640.
[3] Bajarangbali,Somanath M.Relay based identification of systems[J].International Journal of Scientific & Engineering Research,2012,3(6):1-4.
[4] Soltesz K,Hagglund T,Astrom K J.Transfer function parameter identification by modified relay feedback[C]//Proceedings of the American Control Conference,2010:2164-2169.
[5] 张光澄,王文娟,韩会磊.非线性最优化计算方法[M].北京:高等教育出版社,2005:146-168.
[6] Fan J.The modified Levenberg-Marquardt method for nonlinear equations with cubic convergence[J].Mathematics of Computation,2012,81(277):447-466.
[7] Sugihara T.Solvability-unconcerned inverse kinematics by the Levenberg-Marquardt method[J].IEEE Transactions on Robotics,2011,27(5):984-991.
[8] Chan K Y,Dillon T S,Singh J,et al.Neural-network-based models for short-term traffic flow forecasting using a hybrid exponential smoothing and Levenberg-Marquardt algorithm[J].IEEE Transactions on Intelligent Transportation Systems,2012,13(2):644-654.
[9] Kleefeld A,Reiβel M.The Levenberg-Marquardt method applied to a parameter estimation problem arising from electrical resistivity tomography[J].Applied Mathematics and Computation,2011,217(9):4490-4501.
[10]黄德先,王京春,金以慧.过程控制系统[M].北京:清华大学出版社,2011:39-44.
[11]阮毅,陈伯时.电力拖动自动控制系统-运动控制系统[M].4版.北京:机械工业出版社,2010:26-29.
中图分类号:TP273
文献标志码:A
DOI:10.16086/j.cnki.issn1000-0380.201507024
山东省自然科学基金资助项目(编号:ZR2011FQ022、ZR2012FQ018);
中国科学院自动化研究所开放课题资助项目(编号:20140109)。
修改稿收到日期:2015-01-16。
第一作者李敏花(1981-),女,2009年毕业于中国科学院自动化研究所模式识别与智能系统专业,获博士学位,副教授;主要从事机器人控制、图像处理、机器视觉等方面的研究。