最小二乘法参数辨识1 引言系统辨识是根据系统的输入输出时间函数来确定描述系统行为的数学模型。
现代控制理论中的一个分支。
通过辨识建立数学模型的目的是估计表征系统行为的重要参数,建立一个能模仿真实系统行为的模型,用当前可测量的系统的输入和输出预测系统输出的未来演变,以及设计控制器。
对系统进行分析的主要问题是根据输入时间函数和系统的特性来确定输出信号。
对系统进行控制的主要问题是根据系统的特性设计控制输入,使输出满足预先规定的要求。
而系统辨识所研究的问题恰好是这些问题的逆问题。
通常,预先给定一个模型类μ={M}(即给定一类已知结构的模型),一类输入信号u和等价准则J=L(y,yM)(一般情况下,J是误差函数,是过程输出y和模型输出yM的一个泛函);然后选择使误差函数J达到最小的模型,作为辨识所要求的结果。
系统辨识包括两个方面:结构辨识和参数估计。
在实际的辨识过程中,随着使用的方法不同,结构辨识和参数估计这两个方面并不是截然分开的,而是可以交织在一起进行的。
2 系统辨识的目的在提出和解决一个辨识问题时,明确最终使用模型的目的是至关重要的。
它对模型类(模型结构)、输入信号和等价准则的选择都有很大的影响。
通过辨识建立数学模型通常有四个目的。
①估计具有特定物理意义的参数有些表征系统行为的重要参数是难以直接测量的,例如在生理、生态、环境、经济等系统中就常有这种情况。
这就需要通过能观测到的输入输出数据,用辨识的方法去估计那些参数。
②仿真仿真的核心是要建立一个能模仿真实系统行为的模型。
用于系统分析的仿真模型要求能真实反映系统的特性。
用于系统设计的仿真,则强调设计参数能正确地符合它本身的物理意义。
③预测这是辨识的一个重要应用方面,其目的是用迄今为止系统的可测量的输入和输出去预测系统输出的未来的演变。
例如最常见的气象预报,洪水预报,其他如太阳黑子预报,市场价格的预测,河流污染物含量的预测等。
预测模型辨识的等价准则主要是使预测误差平方和最小。
只要预测误差小就是好的预测模型,对模型的结构及参数则很少再有其他要求。
这时辨识的准则和模型应用的目的是一致的,因此可以得到较好的预测模型。
④控制为了设计控制系统就需要知道描述系统动态特性的数学模型,建立这些模型的目的在于设计控制器。
建立什么样的模型合适,取决于设计的方法和准备采用的控制策略。
3 系统辨识的方法经典方法:经典的系统辨识方法的发展已经比较成熟和完善,他包括阶跃响应法、脉冲响应法、频率响应法、相关分析法、谱分析法、最小二乘法和极大似然法等。
其中最小二乘法(LS)是一种经典的和最基本的,也是应用最广泛的方法。
但是,最小二乘估计是非一致的,是有偏差的,所以为了克服他的缺陷,而形成了一些以最小二乘法为基础的系统辨识方法:广义最小二乘法(GI S)、辅助变量法(IV)、增广最小二乘法(EI,S)和广义最小二乘法(GI S),以及将一般的最小二乘法与其他方法相结合的方法,有最小二乘两步法(COR—I S)和随机逼近算法等。
经典的系统辨识方法还存在着一定的不足:(1)利用最小二乘法的系统辨识法一般要求输入信号已知,并且必须具有较丰富的变化,然而,这一点在某些动态系统中,系统的输入常常无法保证;(2)极大似然法计算耗费大,可能得到的是损失函数的局部极小值;(3)经典的辨识方法对于某些复杂系统在一些情况下无能为力。
现代方法:随着系统的复杂化和对模型精确度要求的提高,系统辨识方法在不断发展,特别是非线性系统辨识方法。
主要有:1、集员系统辨识法在1979年集员辨识首先出现于Fogel 撰写的文献中,1982年Fogel和Huang 又对其做了进一步的改进。
集员辨识是假设在噪声或噪声功率未知但有界UBB(Unknown But Bounded)的情况下,利用数据提供的信息给参数或传递函数确定一个总是包含真参数或传递函数的成员集(例如椭球体、多面体、平行六边体等)。
不同的实际应用对象,集员成员集的定义也不同。
集员辨识理论已广泛应用到多传感器信息融合处理、软测量技术、通讯、信号处理、鲁棒控制及故障检测等方面。
2、多层递阶系统辨识法多层递阶方法的主要思想为:以时变参数模型的辨识方法作为基础,在输入输出等价的意义下,把一大类非线性模型化为多层线性模型,为非线性系统的建模给出了一个十分有效的途径。
3、神经网络系统辨识法由于人工神经网络具有良好的非线性映射能力、自学习适应能力和并行信息处理能力,为解决未知不确定非线性系统的辨识问题提供了一条新的思路。
与传统的基于算法的辨识方法相比较,人工神经网络用于系统辨识具有以下优点:(1)不要求建立实际系统的辨识格式,可以省去对系统建模这一步骤;(2)可以对本质非线性系统进行辨识;(3)辨识的收敛速度仅与神经网络的本身及所采用的学习算法有关;(4)通过调节神经元之间的连接权即可使网络的输出来逼近系统的输出;(5)神经网络也是系统的一个物理实现,可以用在在线控制。
4、模糊逻辑系统辨识法模糊逻辑理论用模糊集合理论,从系统输入和输出的量测值来辨识系统的模糊模型,也是系统辨识的一个新的和有效的方法,在非线性系统辨识领域中有十分广泛的应用。
模糊逻辑辨识具有独特的优越性:能够有效地辨识复杂和病态结构的系统;能够有效地辨识具有大时延、时变、多输入单输出的非线性复杂系统;可以辨识性能优越的人类控制器;可以得到被控对象的定性与定量相结合的模型。
模糊逻辑建模方法的主要内容可分为两个层次:一是模型结构的辨识,另一个是模型参数的估计。
典型的模糊结构辨识方法有:模糊网格法、自适应模糊网格法、模糊聚类法及模糊搜索树法等。
5、小波网络系统辨识法小波网络是在小波分解的基础上提出的一种前馈神经网络口 ,使用小波网络进行动态系统辨识,成为神经网络辨识的一种新的方法。
小波分析在理论上保证了小波网络在非线性函数逼近中所具有的快速性、准确性和全局收敛性等优点。
小波理论在系统辨识中,尤其在非线性系统辨识中的应用潜力越来越大,为不确定的复杂的非线性系统辨识提供了一种新的有效途径,其具有良好的应用前景。
1. 设计内容设SISO 系统的差分方程为:)()2()1()2()1()(2121k k u b k u b k z a k z a k z υ+-+-=-+-+ 式(1-1) 参数取真值为:[]0.42 0.57 0.483 1.376=Tθ,利用MATLAB 的M 语言辨识系统中的未知参数1a 、2a 、1b 、2b 。
2. 设计过程2.1建立系统设SISO 系统的差分方程为:)()2()1()2()1()(2121k k u b k u b k z a k z a k z υ+-+-=-+-+ 式(2-1)参数取真值为:[]0.42 0.57 0.483 1.376=T θ,利用MATLAB 的M 语言辨识系统中的未知参数1a 、2a 、1b 、2b 。
要求:用参数的真值利用差分方程求出)(k z 作为测量值,)(k υ是均值为0,方差为0.1、0.5和0.01的不相关随机序列。
选取一种最小二乘算法辨识。
2.2 最小二乘简介2.2.1 最小二乘法的概念与应用对工程实践中测得的数据进行理论分析,用恰当的函数去模拟数据原型是一类十分重要的问题,最常用的逼近原则是让实测数据和估计数据之间的距离平方和最小,这即是最小二乘法。
最小二乘法是一种经典的数据处理方法。
在系统辨识领域中 ,最小二乘法是一种得到广泛应用的估计方法 ,可用于动态系统 ,静态系统 , 线性系统 ,非线性系统。
可用于离线估计,也可用于在线估计。
这种辨识方法主要用于在线辨识。
在随机的环境下,利用最小二乘法时,并不要求观测数据提供其概率统计方面的信息,而其估计结果,却有相当好的统计特性。
MATLAB 是一套高性能数字计算和可视化软件 ,它集成概念设计 ,算法开发 ,建模仿真 ,实时实现于一体 ,构成了一个使用方便、界面友好的用户环境 ,其强大的扩展功能为各领域的应用提供了基础。
对于比较复杂的生产过程 ,由于过程的输入输出信号一般总是可以测量的 ,而且过程的动态特性必然表现在这些输入输出数据中 ,那么就可以利用输入输出数据所提供的信息来建立过程的数学模型。
这种建模方法就称为系统辨识。
把辨识建模称作“黑箱建模”。
2.2.2 最小二乘法系统辨识结构:本文把待辨识的过程看作“黑箱”。
只考虑过程的输入输出特性,而不强调过程的内部机理。
图中,输入u(k)和输出z(k)是可以观测的;G (错误!未找到引用源。
)是系统模型,用来描述系统的输入输出特性;N (错误!未找到引用源。
)是噪声模型,v(k)是白噪声,e(k)是有色噪声,根据表示定理: 可以表示为e(k) =N (错误!未找到引用源。
)v(k))(1-zG )()(11--=z A z B)(1-zN )()(11--=z C z D 1121211212()1()a a b b n n n n A z a z a z a z B z b z b z b z --------⎧=++++⎪⎨=+++⎪⎩⎪⎩⎪⎨⎧+++=++++=--------b b a a n n n n z d z d z d z D z c z c z c z C 2211122111)(1)(2.2.3 准则函数设一个随机序列{}),,2,1(),(L k k z ∈的均值是参数θ的线性函数: {}θ)()(k h k z E T =,其中)(k h 是可测的数据向量,那么利用随机序列的一个实现,使准则函数:+ + e (k )图1 SISO 系统辨识“黑箱”结构图 y (k ) u (k ) z (k ) v (k ) )(1-z N )(1-z G21])()([)(∑=-=Lk T k h k z J θθ (式2-2)达到极小的参数估计值∧θ称作θ的最小二乘估计。
最小二乘格式:)()()(k e k h k z t+=θ,θ为模型参数向量,()k e 为零均值随机噪声。
2.3 广义最小二乘法2.3.1 广义最小二乘数学模型)()(1)()()()(111k v z C k u z B k z z A ---+= 式中,u(k)和)(k z 表示系统的输入输出;v(k)是均值为零的不相关的随机序列;且⎪⎩⎪⎨⎧++++=+++=++++=------------c c b b a a n n n n n n z c z c z c z C z b z b z b z B z a z a z a z A 2211122111221111)()(1)(2.3.2 广义最小二乘递推算法如下[][]⎪⎪⎪⎪⎩⎪⎪⎪⎪⎨⎧--=+--=--+-=--=+--=--+-=--)1()]()([)(1)()1()()()1()()]1(ˆ)()(ˆ)[()1(ˆ)(ˆ)1()]()([)(1)()1()()()1()()]1(ˆ)()()[()1(ˆ)(ˆ11k k k k k k k k k k k k k ek k k k k k k k k k k k k k k k z k k k ee e e ee e e e e ee e e e ff f f ff f f f f fffP h K P h P h h P K h K P h K P h P h h P K h K ττττττθθθθθθI I式中⎪⎩⎪⎨⎧-=----=------=)(ˆ)()()(ˆ)](ˆ,),1(ˆ[)()](,),1(),(,),1([)(k k k z k en k e k e k n k u k u n k z k z k ce bffafffθτττh h h2.3.3 广义最小二乘递推算法的计算步骤:1.给定初始条件 ⎪⎪⎩⎪⎪⎨⎧====I )0(P )0(ˆ)(I )0(P )()0(ˆe e 2f 0θθ为充分大的数充分小的实向量a a ε2利用式)()(z )()()(z )(11k z C k u k z C k z ff--==,计算)(k z f 和)(k u f;3利用式⎩⎨⎧------==ττ)](,),1(),(,),1([)(],,,,,[f f f f f 11ba n n n k u k u n k z k z kb b a a bah θ,构造)(fk h ;4利用式[]⎪⎪⎩⎪⎪⎨⎧--=+--=--+-=-)1()]()([)(1)()1()()()1()()]1(ˆ)()()[()1(ˆ)(ˆ1k k k k k k k k k k k k k z k k k ff f f ff f f f f fffP h K P h P h h P K h K τττθθθI 递推计算)(ˆk θ; 5利用)(ˆ)()()(ˆk k k z k eθτh -=和 τ)](,),1(),(,),1([)(ban k u k u n k z k z k ------= h 计算)(ˆk e; 6根据τ)](ˆ,),1(ˆ[)(c e n k e k ek ----= h 来构造)(k e h ; 7利用[]⎪⎩⎪⎨⎧--=+--=--+-=-)1()]()([)(1)()1()()()1()()]1(ˆ)()(ˆ)[()1(ˆ)(ˆ1k k k k k k k k k k k k k e k k k ee e e ee e e e e eeeeeP h K P h P h h P K h K τττθθθI返回第2步进行迭代计算,直至获得满意的辨识结果。