《《系统建模与仿真》第4次课_第二章.ppt》由会员分享,可在线阅读,更多相关《《系统建模与仿真》第4次课_第二章.ppt(81页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、12022/12/15(1)乘同余法乘同余法首先,用递推同余式产生正整数序列首先,用递推同余式产生正整数序列xi,即,即M为为2的方幂,即的方幂,即M=2k,k为大于为大于2的整数;的整数;A3或或A5(mod8),且),且A不能太小;不能太小;初值初值x0取正奇数取正奇数。再令再令则则i是伪随机数序列,循环周期可达是伪随机数序列,循环周期可达2k-2。回顾回顾22022/12/15(2)混合同余法混合同余法首先,用递推同余式产生正整数序列首先,用递推同余式产生正整数序列xi,即,即M为为2的方幂,即的方幂,即M=2k,k为大于为大于2的整数;的整数;A=2n+1,其中其中2n34;初值初值x
2、0非负整数,非负整数,C为正整数为正整数。再令再令则则i是伪随机数序列,循环周期可达是伪随机数序列,循环周期可达2k。32022/12/15线性系统线性系统g()正常输入正常输入X(t)y(t)+yw(t)延迟延迟乘法器乘法器积分器积分器K g()白噪声白噪声Xw(t)Xw(t-)具有正常输入时的系统辨识模拟方块图具有正常输入时的系统辨识模拟方块图42022/12/15M序列的产生及性质序列的产生及性质 M序列是伪随机二位式序列的一种形式,它具有白噪声序列是伪随机二位式序列的一种形式,它具有白噪声的性质,不仅可以保证有较好的辨识效果,而且工程上又易的性质,不仅可以保证有较好的辨识效果,而且工程
3、上又易于实现。于实现。X1X2X3X4移位脉冲XOR输出52022/12/15M序列的性质序列的性质(1)由)由n级移位寄存器产生的级移位寄存器产生的M序列的最大周期为序列的最大周期为N=2n-1。(2)M序列中,状态序列中,状态“0”或或“1”连续出现的段称为游程。游程中连续出现的段称为游程。游程中“0”或或“1”的个数称为游程长度。的个数称为游程长度。由由n级移位寄存器产生的级移位寄存器产生的M序列的游程总数序列的游程总数2n-1,“0”“1”各一半各一半;并且长度为并且长度为1的游程占总数的的游程占总数的1/2,有,有2n-2个个;并且长度为并且长度为2的游程占总数的的游程占总数的1/4
4、,有,有2n-3个个;以此类推,长度为以此类推,长度为i(1in-2)的游程占总数的)的游程占总数的1/2i,有,有2n-i-1个个;长度为长度为n-1的游程只有的游程只有1个,为个,为“0”的游程的游程;长度为长度为n的游程只有的游程只有1个,为个,为“1”的游程的游程;1 1 1 1 0 0 0 1 0 0 1 1 0 1 062022/12/15(3)所有)所有M序列均具有移位可加性,即序列均具有移位可加性,即2个彼此移位等价个彼此移位等价的相异的相异M序列,按位模序列,按位模2相加所得到的序列仍为相加所得到的序列仍为M序列,并序列,并与原与原M序列等价。序列等价。10011010111
5、100010011010110101111000100110101111100010011010111100072022/12/15则式(2.87)可写为(2.88)N维输出向量2n+1维参数向量N维噪声向量N(2n+1)维测量矩阵最小二乘法:最小二乘法:82022/12/15(2.94)最小二乘估计要求残差的平方和为最小,即按照指标函数(2.95)为最小来确定估值 。求J对 的偏导数并令其等于0 可得 的最小二乘估计(2.98)J为极小值的充分条件是(2.99)即矩阵 为正定矩阵,或者说矩阵 是非奇异的。92022/12/15例例2.1已知某一单输入单输出线性系统的差分方程形式为但其参数 ,
6、为未知数,且 为不相关的随机序列。经过辨识试验,测得5组输入输出数据为102022/12/15试求出其最优参数估计。112022/12/15解解 令最优参数估计为 ,令输出 的最优估计为 。测量矩阵为 122022/12/15该矩阵的转置为 两者之积为 132022/12/15的特征值为 ,。由于它的特征值均为正数,所以 为正定矩阵,满足残差二次型 取最小的充分条件,其中。142022/12/15根据残差二次型 取最小的必要条件 可得最优参数估计为 152022/12/15矩阵 的逆为 于是162022/12/15最后求得 即最优参数估计为 172022/12/152.5.1.3 最小二乘辨识
7、中的输入信号问题最小二乘辨识中的输入信号问题 当矩阵 的逆阵存在时,式(2.98)才有解。一般地,如果 是随机序列或伪随机二位式序列,则矩阵 是非奇异的,即 存在,式(2.98)有解。现在从矩阵 必须是正定的这一要求出发,来讨论对 的要求。在这里为了方便起见,假定 是均值为0的随机过程。可以推出矩阵可以推出矩阵 为正定的必要条件是:为正定的必要条件是:为为持续激励信号。(推导过程略)持续激励信号。(推导过程略)随机序列或伪随机二位式序列都可以作为测试信号随机序列或伪随机二位式序列都可以作为测试信号 。182022/12/15 由于由于M序列对时间是离散的,而输入需要对时间连续,所序列对时间是离
8、散的,而输入需要对时间连续,所以在实际应用中,总是把状态为以在实际应用中,总是把状态为“0”和和“1”的的M序列变换序列变换成幅度为成幅度为+a和和-a的二电平序列,其中的二电平序列,其中“0”对应高电平对应高电平+a,“1”对应低电平对应低电平-a。这种对时间连续的序列称为二电平。这种对时间连续的序列称为二电平M序序列列二电平二电平M序列的产生序列的产生11110001001101002+a-a616t192022/12/152.5.1.4 最小二乘估计的概率性质最小二乘估计的概率性质 如果如果(k)是不相关随机数序列,且均值为是不相关随机数序列,且均值为0。1)无偏性无偏性 2)一致性)一
9、致性3)渐进正态性性渐进正态性性辅助变量法、广义最小二乘法辅助变量法、广义最小二乘法 如果如果是均值为是均值为0且服从正太分的白噪声向量,则最小二且服从正太分的白噪声向量,则最小二乘参数估计值服从正态分布。乘参数估计值服从正态分布。202022/12/152.5.2 一种不需矩阵求逆的最小二乘法一种不需矩阵求逆的最小二乘法 设系统的微分方程模型为(2.141)令(2.142)(2.143)212022/12/15则式(2.141)可以写为(2.144)取 222022/12/15则有(2.145)上式中矩阵 的阶数越大,所包含的信息量就越多,系统参数估计的精度就越高。为了获得满意的辨识结果,矩
10、阵 的阶数常常取得相当大。这样,在用式(2.146)计算系统参数的估计值 时,矩阵求逆的计算量很大。本节介绍一种算法来代替矩阵求逆,本节介绍一种算法来代替矩阵求逆,在不降低辨识精度的前提下,可以使辨识速度有较大在不降低辨识精度的前提下,可以使辨识速度有较大提高。具体算法如下。提高。具体算法如下。系统的最小二乘辨识结果为(2.146)232022/12/15首先设系统的阶次为0,则有242022/12/15则 和 均为常数,即(2.147)252022/12/15由式(2.146)可得(2.148)设(2.149)262022/12/15若系统阶次为n时已经求出 ,则系统阶次数为n+1时有(2.
11、150)式中(2.151)式中:为列向量;为一标量。272022/12/15由分块矩阵求逆公式可得(2.152)式中 282022/12/15则 这时,仿照上述方法容易求出 式中 292022/12/15(2.153)302022/12/15 这样,就可以按照式(2.146)辨识出阶次为n+1时系统的参数。由于这一过程只涉及矩阵相乘和矩阵与向量相乘等运算,所以计算量较小,而矩阵求逆的精度不变。所以说,本节算法在不损失辨本节算法在不损失辨识精度的前提下提高了辨识速度,这一算法尤其适识精度的前提下提高了辨识速度,这一算法尤其适用于阶次未知情况下的系统辨识。用于阶次未知情况下的系统辨识。312022
12、/12/15 为了实现实时控制,必须采用递推算法,这种辨识方法主要用于在线辨识。另外,某些自适应控制方法,比如自校正控制方另外,某些自适应控制方法,比如自校正控制方法也要用到递推最小二乘法。其基本原理是一边辨识法也要用到递推最小二乘法。其基本原理是一边辨识一边控制,循环递推。一边控制,循环递推。2.6 递推最小二乘法分析递推最小二乘法分析 递推最小二乘算法是动态系统实时辨识中使用得最多的。对其算法进行深入研究具有较大的实用意义。322022/12/15图4.1 动态系统递推最小二乘在线辨识过程原理图332022/12/15首先将式(2.88)改记为其中342022/12/15如果再获得一对新的
13、观测值 ,则有下面的递推公式这里忽略其推导过程,直接给出公式。352022/12/15(2.154)(2.155)(2.156)递推最小二乘算法362022/12/15其中为标量,它表示在已测得的基础上又多测得一个输出 。另外表示在 的最后一行再补充一行,所以其列数与 的列数相等,均为2n+1列。372022/12/15(1)设 为N的初始值,则可算出初值 (2)假定 ,c是充分大的常数,I为 单位矩阵 递推之后能得到较好的参数估计。,则经过若干次为了进行递推计算,需要给出 和 的初值 和,有两种给出初值的办法。382022/12/15(2.154)(2.155)(2.156)其中的公式(2.
14、155)所表达的 可以理解为递推最小二乘增益系数。公式(2.155)不具有递推性。公式(2.154)和(2.156)具有递推性。注释注释392022/12/152.6.1 递推最小二乘法举例递推最小二乘法举例例例2.2已知某一单输入单输出线性系统的差分方程形式但其参数 ,为未知数,且 为不相关的随机序列。实时测得4组输入输出数据为402022/12/15假设试用递推最小二乘法递推两步,分别求得 和 。412022/12/15解解对于这个问题有 ,先令 。422022/12/15于是432022/12/15442022/12/15由式(2.155)和(2.156)可得452022/12/15因此
15、由式(2.154)得462022/12/15至此,已求得了第一步递推值 。472022/12/15令 ,则 。482022/12/15492022/12/15502022/12/15至此,已求得了第二步递推值 。512022/12/152.6.2 递推最小二乘法程序结构递推最小二乘法程序结构522022/12/15532022/12/15542022/12/15552022/12/152.7 递推最小二乘辨识的在线算法递推最小二乘辨识的在线算法考虑被控对象的在线辨识和控制问题。为不相关的随机其中序列。主要目的是设计状态反馈控制律,使得输出趋向于零。但主要问题是模型参数 、未知。562022/1
16、2/15整个闭环系统原理如下图所示。572022/12/15 将被控对象模型变换成状态空间模型,令状态变量为:则有:这是一个一阶线性离散系统。582022/12/15暂不考虑干扰信号,设状态反馈控制律为:其中 为反馈增益系数。可得闭环系统方程其特征方程为:592022/12/15解出闭环极点为:假设期望闭环极点为:模小于1则有:602022/12/15于是在理论上状态反馈控制律为:可见状态反馈控制律不但依赖于系统的状态 ,而且还依赖于模型参数 、。但是这两个参数却是未知的,在这种情况下,我们通过最小二乘法辨识出这两个参数 和 ,最后得到实际的控制612022/12/15为了仿真研究的方便,我们
17、在解算模型的输出时,假设这两个参数为 、。在假设这两个参数已知的理想情形下,我们先对闭环系统进行仿真研究。622022/12/15假设状态初值为:随机干扰的范围为:632022/12/15编写下列M文件x0=-2.3;x(1)=x0;for k=1:1:20 x(k+1)=0.3*x(k)+0.2*rand(1)-0.1;endt=0:1:length(x)-1;stem(t,x);axis(0,21,-3,1);绘制枝干图随机干扰642022/12/15运行结果如下:652022/12/15可见在理想情况下,闭环系统是渐近稳定的。而实际情况下,被控系统的参数是未知的,需要通过最小二乘法进行辨
18、识。下面给出实际闭环系统仿真流程图662022/12/15开始给定真实参数 、解算模型输出之用设定较大的正常数给定估计参数初值 、不可为零否则控制律发散672022/12/15设定估计参数向量的初始化给定系统初始状态,即初始输出相当于682022/12/15设置设置矩阵P的初始化,相当于692022/12/15状态反馈控制律系统模型1表示11矩阵,即标量随机数,范围为01702022/12/15712022/12/15722022/12/15结束否?是结束否732022/12/15编制M文件如下:a1=2;%真实参数b0=1.4;%真实参数c=10000;%很大的正常数a1_m=0;%估计参数
19、初值b0_m=0.5;%估计参数初值sita_m(:,1)=a1_m,b0_m;%估计参数向量初值y(1)=-2.3;%系统初始状态(即初始输出)z=c2;%很大的正常数之平方P(:,:,1)=diag(z,z,0);%P阵的初始化742022/12/15for N=1:1:20 u(N)=(sita_m(1,N)+0.3)*y(N)/sita_m(2,N);y(N+1)=-a1*y(N)+b0*u(N)+0.2*rand(1)-0.1;fai(:,N+1)=-y(N),u(N);W=P(:,:,N)*fai(:,N+1);r=1/(1+W*fai(:,N+1);K(:,N+1)=W*r;P(
20、:,:,N+1)=P(:,:,N)-K(:,N+1)*W;sita_m(:,N+1)=sita_m(:,N)+K(:,N+1)*(y(N+1)-(fai(:,N+1)*sita_m(:,N);end控制律对象模型最小二乘算法752022/12/15u(21)=(sita_m(1,21)+0.3)*y(21)/sita_m(2,21);k=0:1:length(u)-1;subplot(2,1,1);stairs(k,u,r-);xlabel(time k);ylabel(u(k);subplot(2,1,2);stairs(k,y,b-);xlabel(time k);ylabel(y(k);
21、为了向量u和y的长度一致画阶梯线762022/12/15该文件的运行结果772022/12/15 从数字仿真的结果可见:在反馈控制律使用最小二乘估计参数的情况下,闭环系统还是渐近稳定的。782022/12/15 现在我们再来看一下这两个估计模型参数的收敛情况。继续上述M文件:figure;subplot(2,1,1);stairs(k,sita_m(1,:),k-);legend(a1_m);subplot(2,1,2);stairs(k,sita_m(2,:),m-);legend(b0_m);792022/12/15运行结果802022/12/15 从数字仿真的结果可见:最小二乘估计参数收敛相当快,而且估计稳态误差均为零。812022/12/15本次课内容总结本次课内容总结递推最小二乘法分析递推最小二乘法分析 递推最小二乘法笔算举例递推最小二乘法笔算举例 递推最小二乘法程序结构分析递推最小二乘法程序结构分析递推最小二乘辨识的在线算法递推最小二乘辨识的在线算法系统参数辨识系统参数辨识状态反馈控制状态反馈控制