基于滤波的分段线性Hammerstein系统的递推辨识方法

2023-10-26 01:24刘喜梅樊亚敏李梅航
控制理论与应用 2023年9期
关键词:新息参数估计分段

刘喜梅,樊亚敏,李梅航

(青岛科技大学自动化与电子工程学院,山东青岛 266061)

1 引言

非线性现象在现实生活中广泛存在,就控制领域而言,几乎所有的系统都存在一定的非线性特性[1–2].随着现代科技的不断发展,控制对象的非线性程度和复杂程度不断提高,许多先进的控制方法都需要非线性系统的数学模型[3–4],建立准确的数学模型离不开系统辨识[5].复杂模型结构由于不便实现,控制器难于设计等原因,实际应用中仍面临壁垒.Hammerstein模型是一类典型的非线性模型,其基本结构是一个输入非线性模块后连接一个动态线性模块,具有结构简单,可广泛描述多种典型非线性过程等优点,其辨识问题已经成为诸多领域的重要研究内容[6–7].在实际应用中,不同的场景往往对应不同形式的线性和非线性模块,为构建普适性强的非线性模型,研究人员提出了多种表示方法来描述Hammerstein模型的输入非线性部分.对于一些复杂且不规则的非线性特性,特别是硬非线性和不连续非线性等,使用分段线性函数能够有效拟合其特征,具有参数化,易于辨识等优点[8].因此,对于分段线性函数描述的非线性系统的参数辨识问题,近年来引起了广泛关注.例如,针对具有输入不可逆分段线性特性和输出间隙非线性级联的非线性动态系统,文献[9]利用关键项分离技术给出了非线性模型的参数线性化描述,并提出了一种最小二乘迭代算法辨识其未知参数.文献[10]研究了两种特殊的分段非线性结构(饱和特性和预负载特性),提出了辨识分段非线性Hammerstein系统的迭代算法.

递推辨识和迭代辨识是两类主流的参数估计方法.递推辨识在每一步递推计算时利用增益与新息的乘积对上一时刻的参数估计进行修正,适用于在线辨识[11–12].近年来,数据滤波技术和多新息理论等先进的辨识思想与经典的递推辨识方法结合,在各类线性及非线性系统的辨识中得到了广泛应用.研究工业过程的建模及控制问题时,不得不考虑系统受外部噪声的影响[14–15].外部噪声主要有白噪声和有色噪声两种形式,与白噪声相比,有色噪声更具普遍性和代表性.近年来,对于受有色噪声干扰的系统,许多学者利用数据滤波技术,在不改变系统输入输出关系的前提下改变系统的模型结构,能简化计算,提高参数估计精度.例如,Ji等[16]研究了具有自回归滑动平均噪声的双输入单输出Hammerstein有限脉冲响应系统的参数估计问题,应用数据滤波技术提出了一种基于滤波的多新息随机梯度算法.新息就是修正参数和状态估计的有效信息,多新息辨识理论就是将单新息修正技术加以推广,在每一步递推计算中利用多重新息修正参数估计,在系统辨识、故障诊断、自校正控制等问题上得到了广泛的应用[1,5].例如,Ma等[17]在系统辨识领域提出了一种基于支持向量机的在线辨识新方法,将牛顿搜索与多新息辨识理论相结合有效提高了算法收敛性.受上述内容启发,本文针对Hammerstein系统的输入非线性部分具有的多样性、复杂性和难以参数化的问题,采用分段线性函数对其进行拟合,将其表示为一系列参数化的分段函数形式,引入切换函数和位置函数将多分段函数转化为包含所有非线性参数的解析形式.在此基础上,利用估计的噪声传递函数模型对系统的输入输出进行滤波,构造系统的滤波辨识模型,以滤波辨识模型为依据,提出基于滤波的遗忘梯度(F-FG,filter-based forgetting gradient)算法和基于滤波的递推广义最小二乘(F-RGLS,filtered recursive generalized least squares)算法估计未知参数.为进一步提高F-FG算法的参数估计精度,结合多新息辨识理论,提出了基于滤波的多新息遗忘梯度(F-MI FG,filter-based multi-new information forgetting gradient)算法.

本文的章节组织如下: 第2节提出了用分段线性函数拟合的模型输入非线性模块,并推导了分段线性Hammerstein输出误差自回归系统的滤波辨识模型;第3,4,5 节分别给出了F-FG算法、F-RGLS算法和FMIFG算法的详细推导;第6节列举一个数值仿真实例验证所提方法的有效性;最后,在第7节提出了一些结论以及对未来研究的建议和展望.

2 系统描述

分段线性函数具有平衡计算量和拟合误差的优点,常被用作逼近复杂非线性特性.理论上讲,若分段节点的位置及数量选取得当,分段线性函数能够以任意精度拟合非线性关系.因此,基于分段线性函数建立的控制系统模型具有参数化,普遍适用性强等特点,为高度复杂非线性系统的精确控制提供了可能.分段线性函数一般由一系列相互连接的线段组成的静态非线性函数表示[8,18],其数学表达式为

其中:ζ=[ζ0ζ1···ζm]T∈Rm+1是一个由分段节点ζi(i=0,1,···,m)组成的参数向量,且分段节点的选取满足ζ0<ζ1<···<ζm.λ=[λ0λ1···λm]T∈Rm+1为参数向量,其元素λi(i=0,1,···,m)为分段线性函数在分段节点ζi处的函数值.hi(u(t),ζ)是关于系统输入u(t)和参数向量ζ的函数,也称为“帐篷函数”,向量h(u(t),ζ)是由“帐篷函数”hi(u(t),ζ)组成的向量,其表达式为

当参数向量ζ给定时,h(u(t),ζ)可以被简化表示为h(u(t)),其组成元素hi(u(t))的表达式如下:

由式(2)得,在ζi已知情况下,hi(u(t))的值仅与输入信号u(t)相关.为建立系统的辨识模型,需给出分段线性函数的参数线性表达形式.为此,定义切换函数

利用式(3)中的切换函数,可构造位置函数:

因此,h(u(t))可以被重新写作

经过整理,式(1)中的分段线性函数可以由分段函数的形式转化为一个线性参数表达式,即

该分段线性函数具有良好的分段逼近特性,将其作为Hammerstein模型输入非线性环节的映射,有利于提高模型的拟合精度.考虑存在自回归噪声干扰的Hammerstein输出误差系统,它由一个非线性无记忆模块与一个线性动态子系统串联组成,其数学表达式为

其中:y(t)为系统输出;x(t)表示非线性模块的输出,其表达式未知,利用分段线性函数对其进行拟合分析,其表达式与式(6)中的f(u(t))相同,w(t)为有色噪声,其表达式为

其中:v(t)表示方差为σ2的零均值白噪声;A(z),B(z),C(z)是关于z-1(z-1是一个单位后向移位算子,满足z-1u(t)=u(t-1))的定常多项式,即

为辨识全部线性和非线性参数,避免冗余参数的出现,利用关键项分离技术[19–20],将B(z)的第一个非零系数规一化为1,系统的无噪真实输出g(t)可写作

假设系统的阶次na,nb和nc为已知,n0=na+nb+nc+m+1,定义参数向量θ及其对应的信息向量ϕ(t)为

根据上述定义,分段线性Hammerstein输出误差自回归系统(7)的辨识模型可表示为

值得注意的是,系统的噪声结构,即不可测有色噪声w(t),是一个自回归过程.有色噪声的存在导致了参数估计的偏差.采用数据滤波技术,将受有色噪声干扰的系统模型转化为白噪声干扰模型,提出基于滤波的递推辨识算法估计参数向量θ.利用噪声模型传递函数C(z)作为滤波器,对线性动态子系统的输入和输出进行滤波,得到一个更容易辨识的输入非线性输出误差辨识模型.定义静态非线性模块的滤波输出

以及系统的滤波真实输出

将式(7)的左右两边同时乘以C(z),得到

将式(10)–(11)代入式(12)中,整理得到

定义滤波信息向量

从而建立分段线性Hammerstein输出误差自回归系统的滤波辨识模型

下面将推导F-FG算法,F-RGLS算法和F-MIFG算法估计系统的未知参数.

3 F-FG算法

本节针对输入非线性部分采用分段线性函数拟合的Hammerstein输出误差自回归系统,结合辅助模型思想和梯度搜索方法,提出F-FG算法.设(t)是t时刻参数向量θ的估计,即

令r(t)为收敛因子,‖XXX‖2=tr[XXXXXXT]表示矩阵XXX的范数.利用负梯度搜索,可得如下递推关系:

由于滤波信息向量ϕf(t)包含未知滤波变量gf(t-j)和xf(t-j),且计算非线性输出x(t)的估计所必须的非线性参数也是未知的,因此上述算法无法实现.为了解决这一问题,构造3个辅助模型估计滤波变量gf(t-j),xf(t-j)和x(t-j).利用非线性参数λi(t)估计(t),定义估计未知项x(t)的辅助模型为

构造用于估计未知滤波变量xf(t)和gf(t)的辅助模型

将(15)–(16)中的滤波信息向量ϕf(t)替换为其估计f(t),得到用于估计参数向量θ的基于滤波的广义随机梯度算法.为优化算法的瞬态性能,引入遗忘因子0 ≤µ<1,整理得到F-FG算法如下:

估计参数向量θ的F-FG算法计算步骤如下:

1) 令t=1,给定数据长度L,设初值(0)为一个n0维的随机向量,的初始值为随机数;

2) 收集输入和输出数据u(t)和y(t),按式(20)构造滤波信息向量(t);

3) 由式(22)计算r(t),并通过式(21)刷新参数估计(t);

5) 若t

4 F-RGLS算法

作为一类经典的递推辨识方法,递推最小二乘方法与随机梯度法相比具有更快的收敛速度以及更高的参数估计精度.本节将辅助模型思想与最小二乘方法相结合,利用式(14)中的滤波辨识模型推导F-RGLS算法.利用最小二乘原理可得如下递推关系:

用式(25)–(27)中辅助模型的输出替换ϕf(t)中的未知项,可得ϕf(t)的估计

用ϕf(t)的估计(t)替换式(23)–(24)中的ϕf(t),得到F-RGLS算法

因此,用于辨识分段线性Hammerstein输出误差自回归系统的F-RGLS算法包括以下步骤:

1) 令t=1,给定数据长度L,置初值(0)为一个n0维随机向量,P(0)=p0I,(t-j),(t-j),(t-j),j=0,1,2,···,max[na,nb,nc]的初始值为随机数,p0=106;

2) 收集输入和输出数据u(t)和y(t),按式(28)构造滤波信息向量(t);

3) 由式(30)计算协方差矩阵P(t),并通过式(29)刷新参数估计(t);

5) 若t

5 F-MIFG算法

F-RGLS算法收敛速度快,但由于涉及协方差矩阵的计算,导致计算量增大,F-FG算法与F-RGLS算法相比计算量虽然减小,但其收敛速率慢,辨识准确度低,主要因为在每一步递推计算中对数据有效信息的提取能力不足.为了平衡收敛速率和计算量,并进一步提高参数估计精度,利用多新息辨识理论,引入新息长度p,推导基于滤波的多新息遗忘梯度算法.通过扩展新息e(t)=y(t)-(t)(t-1),可得多新息递推关系如下:

将式(31)与F-FG算法中的式(15)比较后不难发现,F-FG算法在每一步递推计算中只用到了当前时刻的数据和新息,而F-MIFG算法不仅用到当前时刻的数据和新息,同时用到了过去p个时刻的数据集和新息,这也是提高收敛速度的关键所在.另外,通过多新息理论的应用,每次更新的梯度都是从批数据中获取,既可以保证梯度方向趋于稳定一致,又能避免单一新息更新引起的方向过多的问题,能够有效减少局部最优问题的出现.当新息长度p的值为1时,F-MIFG算法退化为F-FG算法.与F-FG算法和F-RGLS算法类似,F-MIFG算法也存在滤波信息向量ϕf(t)包含不可测变量的问题.同样,利用参数的估计值构造未知变量x(t-j),xf(t-j),gf(t-j)的辅助模型,用辅助模型的输出(t-j),(t-j),(t-j)替换ϕf(t)中的未知变量,得到ϕf(t)的估计.用(t)替换式(31)–(32)中的ϕf(t),引入遗忘因子µ,F-MIFG算法可归纳为

用于估计分段线性Hammerstein输出误差自回归系统的F-MIFG算法步骤如下:

1) 令t=1,给定数据长度L,设初值(0)为一个n0维随机向量,r(0)=1,(t-j),(t-j),(t-j),j=0,1,2,···,max[na,nb,nc]的初始值为随机数,确定新息长度p;

2) 收集输入和输出数据u(t)和y(t),按式(35)构造滤波信息向量(t);

3) 由式(34)计算r(t),并通过式(33)刷新参数估计(t);

5) 若t

6 仿真实例

本节采用分段线性函数拟合Sigmoid函数,并将其作为输出误差自回归Hammerstein系统输入非线性模块的映射.Sigmoid函数是一种常见的S型函数,由于其单调递增和逆函数单调递增的特性,常被用作神经网络的激活函数.考虑以下输出误差自回归Hammerstein系统:

x(t)为Sigmoid函数的数学表达式,由图1所示的6个等距的分段函数拟合,

图1 用分段线性函数拟合的Sigmoid曲线Fig.1 Sigmoid curve fitted by the piecewise-linear functions

其表达式可被重新写作

是已知的等距分段节点,

是与分段节点对应的函数值,待估计的参数向量为

仿真中,取数据集{u(t),y(t),t=1,···,5300},前5000组用于参数估计,其余300组用于模型验证.输入u(t)是均值为零,方差为1的连续激励信号序列,v(t)是均值为零,方差为σ2=0.202的白噪声序列,输出y(t)由输入u(t)和实际的参数计算生成.用文中提到的3种方法估计未知参数,F-FG算法和FMIFG算法中遗忘因子µ的取值为0.995.F-FG算法、F-RGLS算法和F-MIFG 算法(新息长度p=3,6,9)的参数估计(t)及其误差δ=‖(t)–θ‖/‖θ‖如表1-3所示.图2给出了3种基于滤波的递推算法的参数估计误差δ随t的变化曲线.

表1 F-FG参数估计及误差Table 1 The F-FG estimates and errors

图2 参数估计误差δ随t的变化曲线Fig.2 The estimation errors δ versus t

此外,用F-FG参数估计(表1第6行),F-RGLS 参数估计(表2第6行)和F-MIFG参数估计(表3倒数第2行,p=9)构造预报模型.假设(t)是系统的估计输出,(t)是估计的无噪输出,(t)是非线性模块的估计输出,得到模型输出为

表2 F-RGLS参数估计及误差Table 2 The F-RGLS estimates and errors

表3 F-MIFG参数估计及误差(p=3,6,9)Table 3 The F-MIFG estimates and errors(p=3,6,9)

将t=5001到t=5300的Lr=300组剩余样本用于计算模型输出.利用系统输出y(t)和上述3种算法的模型输出(t),(t)和(t)计算均方根误差(RMSEs,root mean square errors),得到

为方便比较,图3给出了t=5001到t=5050 的50组数据,能够清晰直观地看出3种算法的模型输出(t),(t),(t)与系统输出y(t)随时间t的变化情况.

图3 系统输出y(t)和模型输出(t),(t),(t)随t的变化Fig.3 System outputs y(t)and the model outputs (t),(t)and(t)versus t

由表1–3以及图2–3,可以得出如下结论.

1) 随着数据长度t的增加,文中提到的3种递推辨识算法给出的参数估计误差逐渐减小.在相同的仿真条件下,F-RGLS 算法和F-MIFG 算法在收敛速度和参数估计精度方面都明显优于F-FG 算法.对F-MIFG 算法而言,新息长度p的取值越大,得到的参数估计就越准确.当新息长度的选取足够大时,由F-MIFG 算法生成的参数估计令人满意,可达到与F-RGLS 算法相似的性能,见表1–3 和图2.

3) 适当选择新息长度可以实现更快的收敛速度和更准确的参数估计.当新息长度达到一定大小时,估计误差就很小了.因此,在综合考虑算法参数估计精度和计算量的基础上,可以折衷地选取新息长度.

7 结论

本文采用分段线性函数拟合一类含有色噪声Hammerstein模型的输入非线性部分,具有良好的拟合精度和普遍适用性.利用数据滤波技术和关键项分离技术推导了系统的滤波辨识模型,并以此为基础提出了3种基于滤波的递推辨识方法.仿真结果表明,F-RGLS算法的参数估计误差小,通过多新息辨识理论的应用,F-MIFG算法具有比F-FG算法更高的参数估计精度.文中主要利用分段函数拟合结构和参数均为未知的非线性特性,若是结构已知而参数未知的情形,例如饱和非线性,死区非线性,间隙非线性等硬非线性特性,则可根据模型的结构特点写出相应的分段函数表达式,进而利用文中提到的方法辨识未知参数.另外,文中提到的基于滤波的递推辨识方法也可用于其它包含有色噪声的线性和非线性系统的建模及辨识问题中.

猜你喜欢
新息参数估计分段
基于新型DFrFT的LFM信号参数估计算法
一类连续和不连续分段线性系统的周期解研究
传递函数辨识(21):线性回归系统的递阶递推参数估计
分段计算时间
M估计的强跟踪SVD-UKF算法在组合导航中的应用
Logistic回归模型的几乎无偏两参数估计
基于向前方程的平稳分布参数估计
3米2分段大力士“大”在哪儿?
自适应卡尔曼滤波在航空重力异常解算的应用研究
基于竞争失效数据的Lindley分布参数估计