控制理论与控制工程学位课程《系统辨识》考试报告递推阻尼最小二乘法公式详细推导专业:控制理论与控制工程班级:2011双控(研)学生姓名:江南学号:20110201016任课教师:蔡启仲老师2012年06月29 日摘要在参数辨识中,递推最小二乘法是用得最多的一种算法。
但是,最小二乘法存在一些缺点,如随着协方差矩阵的减小,易产生参数爆发现象;参数向量和协方差矩阵的处置选择不当会使得辨识过程在参数收敛之前结束;在存在随机噪声的情况下,参数易产生漂移,出现不稳定等。
为了防止参数爆发现象,Levenberg 提出在参数优化算法中增加一个阻尼项,以增加算法的稳定性。
本文在一般的最小二乘法中增加了阻尼因子,构成了阻尼最小二乘法。
又根据实时控制的要求,详细推到了递推阻尼最小二乘公式,实现在线辨识。
关键字:系统辨识,最小二乘法,递推算法正文1.题目的基本要求已知单入单出系统的差分方程以及噪声,在应用最小二乘法进行辨识的时候,在性能指标中加入阻尼因子,详细推导阻尼最小二乘法的递推公式。
2.输入辨识信号和系统噪声的产生方法和理论依据 2.1系统辩识信号输入选择准则(1)输入信号的功率或副度不宜过大,以免使系统工作在非线性区,但也不应过小,以致信噪比太小,直接影响辩识精度;(2)输入信号对系统的“净扰动”要小,即应使正负向扰动机会几乎均等; (3)工程上要便于实现,成本低。
2.2白噪声及其产生方法 (1) 白噪声过程(2)白噪声是一种均值为0、谱密度为非0常数的平稳随机过程。
(3)白噪声过程定义:如果随机过程()t ω的均值为0,自相关函数为()()2R t t ωσδ= (2.2.1)式中()t δ 为狄拉克(Dirac) 分布函数,即(){(),00,01t t t dt δδ∞∞=≠∞==⎰-且t (2.2.2)则称该随机过程为白燥声过程。
2.3白噪声序列 (1) 定义 如果随机序列{()}w t 均值为0,并且是两两不相关的,对应的自相关函数为()2,0,1,2w l R l l σδ==±± 式中{1,00,0l l l δ=≠=则称这种随机序列{()}w t 为白噪声序列。
2.4白噪声序列的产生方法(1) (0,1)均匀分布随机数的产生在计算机上产生(0,1)均匀分布随机数的方法很多,其中最简单、最方便的是数学方法。
产生伪随机数的数学方法很多,其中最常用的是乘同余法和混合同余法。
①乘同余法。
这种方法先用递推同余式产生正整数序列{Xi=Axi-1(modM),i=1,2,3…式中:M 为2的方幂,k 为大于2的整数;A ≡3(mod8)或A ≡5(mod8),且A 不能太小;初值x0取正奇数,例如取x0=1.再令 ,1,2, (i)i x i Mξ== 则{}i ξ 是伪随机序列,循环周期可达22k - 。
②混合同余法。
混合同余法产生伪随机数的递推同余式为1(m od )i i x Ax c M -=+式中:2,kM =K 为大于2的整数;A ≡1(mod4),即21nA =+其中n 为满足关系式2≦n ≦34的整数。
初值x0为非负整数。
令(),2ki i x Mξξ=i 则是循环周期为的伪随机数序列。
(2) 正态均匀分布随机数的产生①统计近似抽样法:正态分布白噪声 2(,)N μσ12(1)*121{()(6)}i k i k ημσξ+-==+-∑,其中ξ为服从(0,1)均匀分布的白噪声。
②变换抽样法:设1ξ和2ξ是2个互相独立的(0,1)均匀分布随机变量,则()()12112122122ln cos 22ln sin 2ηξπξηξπξ=-⎛ ⎝=- (2.4.1)是相互独立、服从N(0,1)分布的随机变量。
2.5伪随机噪声对白噪声的一个样本函数w(t)截取[0,T]时间内一段,对其它时间段[T,2T],[2T,3T],…,以 周期 T 延拖下去,这样获得的函数w(t)是周期T 的函数,在[0,T]时间内是白噪声,在此时间之外是重复的白噪声,它的自相关函数()()()w R E w t w t ττ=+⎡⎤⎣⎦的周期也是T.由于在[0,T]时间内自相关函数()w R τ就是白噪声的自相关函数,它具有周期性,称为w(t)为伪随机噪声。
2.6 M 序列的产生方法M 序列是一种离散二位式:随机序列,所谓“二位式”是指每个随机变量只有2种状态。
可用多级线性反馈移位寄存器产生M 序列。
2.6.1 M 序列的性质(1)由n 级移位寄存器产生的周期为N=2ⁿ-1的M 序列,在一个循环周期内,“0”出现的次数为N-1/2,”1”出现的次数为N+1/2.(2)M 序列中,状态“0”或“1”连续出现的段称为游程,一个游程中“0”或“1”的个数称为游程长度。
(3)所有M 序列均具有移位可加性,即2个彼此移位等价的相异M 序列,按位模2相加所得到的和序列仍为M 序列,并与原M 序列等价。
2.6.2二电平M 序列的自相关函数分为三种情况: 设每个基本电平的延迟时间为△(1)0(2)||(3)0||τττ=>∆<<∆综合上述3种情况,可得二电平M 序列的自相关函数 ()()2211,,1N a N x a N NE R ττττ+⎛⎫--∆<<∆ ⎪∆⎝⎭-∆≤≤+∆⎧⎪=⎨⎪⎩如图所示2.6.3二电平M 序列的功率谱密度2202sin22(){()(1)[][()]}2M k k taS N k t N ωπωδωδωωω∞=-∞≠∆=++-∆∑其中:02N t πω=∆ 设为一步M 序列信号的持续时间,N 是一个周期的持续时间。
M序列的频谱为:上式告诉我们:(1) M 序列的频谱不是光滑的曲线,而是线条谱。
(2 ) M 序列的直流分量 222(0)M a S Nπω==与N2成正比,因此,加大N ,可减少M 序列中的直流分量。
(3 ) M 序列的频带为13B H z t=∆因此,减少t ∆可增加带宽。
(4) 谱线密度与N t ∆成正比。
3.按照题目要求进行理论与公式推 3.1最小二乘法公式推导3.1.1最小二乘法的基本原理.设单输入-单输出线性定常系统的差分方程表示为)()()()(11k i k u b i k y ak y abn i n i i iξ∑∑==+-=-+可写成:(3.1.1) 其中()()()1nii k n k a n k i ξ==+-∑ n(k)为均值为0的白噪声现分别测出n+N 个输出输入值y(1),y(2),…,y(n+N),u(1),u(2),…,u(n+N), 则可写出N 个方程,写成向量-矩阵形式(3.1.2)设则上面的式子可写成 (3.1.3)式中:y 为N 维输出向量;ξ为N 为维噪声向量;θ为(2n+1)维参数向量;Φ为N ×(2n+1)测量矩阵。
因此,式(5.1.7)是一个含有(2n+1)个未知参数,由N 个方程组成的联立方程组。
ξφφθ1-1--y = (3.1.4)在给定输出向量y 和测量矩阵Φ的条件下求参数θ的估计,这就是系统辨识问题。
3.1.2最小二乘估计算法最小二乘法是系统参数辨识中最基本最常用的方法。
最小二乘法因其算法简单、理论成熟和通用性强而广泛应用于系统辨识中。
但它存在着一定的局限性和不足,当系统噪声为有色噪声时,最小二乘法不能给出无偏一致估计;在使用最小二乘法进行参数辨识时,要预先假设噪声模型结构。
设 θˆ 表示θ 的估计值,ŷ表示y 的最优估计,则有 (3.1.5) 式中()()()()()()()()()()()()()()()()()()10111121222112n n y n y n y u n u y n y n y u n u y n N y n N y Nu n Nu N a n a n b n N b ξξξ+--+⎡⎤⎡⎤⎢⎥⎢⎥+-+-+⎢⎥⎢⎥=⨯⎢⎥⎢⎥⎢⎥⎢⎥+-+--+⎢⎥⎢⎥⎣⎦⎣⎦⎡⎤⎢⎥+⎡⎤⎢⎥⎢⎥⎢⎥+⎢⎥+⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥+⎢⎥⎣⎦⎢⎥⎢⎥⎣⎦()()()()()()101122,,n n a y n n y n a n y b y n N n N b ξξθξξ⎡⎤⎢⎥++⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥++⎢⎥⎢⎥===⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥++⎢⎥⎢⎥⎣⎦⎣⎦⎢⎥⎢⎥⎣⎦y φθξ=+ˆˆy θ=Φ()()()10ˆˆ1ˆˆ2ˆˆ,ˆˆˆn n a y n a y n y b y n N b θ⎡⎤⎢⎥+⎡⎤⎢⎥⎢⎥⎢⎥+⎢⎥⎢⎥==⎢⎥⎢⎥⎢⎥⎢⎥+⎢⎥⎣⎦⎢⎥⎢⎥⎣⎦()()()()()()()()1201121n n y k a y k a y k a y k n b u k b u k b u k n k ξ=-------++-++-+设e(k)=y(k)- ŷ(k), e(k)称为残差,则有 θφˆ-y yˆ-y e == (3.1.6) 最小二乘估计要求残差的平方和最小,即按照指数函数 (3.1.7)求J对∧θ的偏导数并令其等于0可得(3.1.8)由式 可得θ 的最小二乘估计()y Tφφφθ1Tˆ-=(3.1.9)J 为极小值的充分条件是即矩阵ΦT Φ为正定矩阵,或者说是非奇异的.3.2阻尼最小二乘法在一般最小二乘法的目标函数上增加了对参数变化的阻尼项,即:22)1(ˆ)(ˆ)](ˆ)()([∑-=---+-=kNk i T ik k k k i i y J θθμθφβ(3.2.1)其中,10≤<β为遗忘因子。
选择不同的β值就可得到不同的遗忘效果。
β越小遗忘速度越快,或者说记忆越短。
0>μ为阻尼因子,其大小标志着自变量增量与函数值之间,在J 取极小值时的相对重要性。
即,如果模型的线性程度较大,那么对于很小的μ,由(3.2.1)求得的)(ˆk θ可以对θ有较好的修正;如果模型的线性程度较差,那么必须μ较大,才能保证有(3.2.1)求得的)(ˆk θ对θ有较好的修正。
指标可以写成向量形式:)]1(ˆ)(ˆ[)]1(ˆ)(ˆ[)](ˆ)()()[()](ˆ)()([----+--=k k k k k k k Y k W k k k Y J TT θθθθμθφθφ (3.2.2)其中:⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡--------+---+-------=)(...)2()1(............)1()(...)1(............)1()2(...)1()()1(...)()(N k u k u k u k u N k y k y N k u k y N k y N k u k y N k y k φ,Tk y N k y N k y k Y )](),...,2(),1([)(+-+-=,),...,,()(021βββ--=N N diag k W3.3阻尼最小二乘法的递推算法:为了实现实时控制,必须采用递推算法,实现在线控制。