系统辨识与自适应控制--大作业
系统辨识与自适应控制作业
系统辨识与自适应控制学院:专业:学号:姓名:系统辨识与自适应控制作业一、对时变系统进行参数估计。
系统方程为:y(k)+a(k)y(k-1)=b(k)u(k-1)+e(k) 其中:e(k)为零均值噪声,a(k)=b(k)=要求:1对定常系统(a=0.8,b=0.5)进行结构(阶数)确定和参数估计;2对时变系统,λ取不同值(0.9——0.99)时对系统辨识结果和过程进行比较、讨论3对辨识结果必须进行残差检验解:一(1):分析:采用最小二乘法(LS):最小二乘的思想就是寻找一个的估计值,使得各次测量的与由估计确定的量测估计之差的平方和最小,由于此方法兼顾了所有方程的近似程度,使整体误差达到最小,因而对抑制误差是有利的。
在此,我应用批处理最小二乘法,收敛较快,易于理解,在系统参数估计应用中十分广泛。
作业程序:clear all;a=[1 0.8]'; b=[ 0.5]'; d=3; %对象参数na=length(a)-1; nb=length(b)-1; %na、nb为A、B阶次L=500; %数据长度uk=zeros(d+nb,1); %输入初值:uk(i)表示u(k-i)yk=zeros(na,1); %输出初值x1=1; x2=1; x3=1; x4=0; S=1; %移位寄存器初值、方波初值xi=randn(L,1); %白噪声序列theta=[a(2:na+1);b]; %对象参数真值for k=1:Lphi(k,:)=[-yk;uk(d:d+nb)]'; %此处phi(k,:)为行向量,便于组成phi 矩阵y(k)=phi(k,:)*theta+xi(k); %采集输出数据IM=xor(S,x4); %产生逆M序列if IM==0u(k)=-1;elseu(k)=1;endS=not(S); M=xor(x3,x4); %产生M序列%更新数据x4=x3; x3=x2; x2=x1; x1=M;for i=d+nb:-1:2uk(i)=uk(i-1);enduk(1)=u(k);for i=na:-1:2yk(i)=yk(i-1);endyk(1)=y(k);endthetae=inv(phi'*phi)*phi'*y' %计算参数估计值thetae结果:thetae =0.7787 ,0.5103真值=0.8,0.5解:一(2):采用遗忘因子递推最小二乘参数估计;其仿真算法如下:Step1:设置初值、,及遗忘因子,输入初始数据;Step2:采样当前输入和输出数据;Step3:利用含有遗忘因子的递推公式计算、和;Step4:k=k+1,返回Step2继续循环。
中南大学系统辨识及自适应控制试卷3份及答案
2009级本科生 系统辨识及自适应控制 考试题一、 概述系统辨识与自适应控制的关系,以及自适应控制的研究对象和系统辨识的定义?(10分)关系:PPT 1.4图及说明。
自适应控制的研究对象:是具有一定程度不确定性的系统。
系统辨识:就是按规定准则在一类模型中选择一个与数据拟合得最好的模型。
二、描述随机过程统计特性的确定性时间函数有哪些?什么是白噪声,它有哪些特性,有何用途?在系统参数辨识实验中为什么常用M 序列或逆M 序列作为被辨识对象的输入信号?(20分)确定性时间函数有:均值函数、方差函数、均方值函数、相关函数等白噪声:一种均值为零,谱密度为非零常数的平衡随机过程白噪声特性:(1)是一种随机过程信号(2)没有记忆性,任意两时刻之间的值不相关(3)均值为零,方差为常数(4)功率谱密度函数为常数用途:(1)作为系统输入时,为系统的单位脉冲响应(2)作为被辨识系统输入时,可以激发系统的所有模态,可对系统充分激励(3)作为被辨识系统输入时,可防止数据病态,保证辨识精度(4)产生有色噪声原因:白噪声是一种理想的随机过程,若做为系统辨识的输入信号,则过程的辨识精度将大大提高,但是白噪声在工程上难以实现,因为工业设备无法按白噪声的变化特性运行。
M 序列与白噪声性质相近,保留了其优点,工业上可以接受。
但是M 序列含有直流成分,将造成对辨识系统的“净扰动”,而逆M 序列将克服这一缺点,是一种比M 序列更为理想的伪随机码序列。
三、简述在下列参数辨识公式中:111111ˆˆˆ[(1)()]()[()()]1[()]T N N N N T N N N T N N N K y N N K P N N P N P I K N P θθϕθϕλϕϕϕλ++-+++⎧⎪=++-⎪=+⎨⎪⎪=-⎩(1)系数λ的作用(10分);(2)初始值P0如何设定?说明理由(10分)。
(1)加权系数,削弱旧数据产生的误差,对新数据的误差乘以大的加权,其值愈小,跟随时变参数的能力就愈强,但参数估计精度愈低。
(整理)系统辨识自适应控制
1.1讨论系统方程为:(信噪比)至少30%)()1()()1()(k e k u k b k ay k y +-=-+)(k e 为零均值白噪声, =)(k a=)(k b 要求对系统参数辨识进行讨论(1) 定常系统 a=0.8,b=0.5参数递推估计 (2) 时变系统 取不同值是的不同结果并讨论。
(1)取初值P (0)=I 、∧θ(0)=0选择方差为1的白噪声作为输入信号u (k ),L=300,采用RLS 算法进行参数估计,代码及仿真结果图如下: clear all ;close all ;a=[1 0.8]';b=[0.5]';d=1; %对象参数na=length(a)-1;nb=length(b)-1; %na 、nb 为A 、B 阶次L=300; %仿真长度uk=zeros(d+nb,1); %输入初值:uk(i)表示u(k-i) yk=zeros(na,1); %输出初值u=randn(L,1); %输入采用白噪声序列 xi=sqrt(0.1)*randn(L,1); %白噪声序列theta=[a(2:na+1);b]; %对象参数真值thetae_1=zeros(na+nb+1,1); %thetae 初值 P=10^6*eye(na+nb+1); for k=1:Lphi = [-yk;uk(d:d+nb)]; %´此处phi 为列向量 y(k)=phi'*theta + xi(k); %采集输出数据%递推最小二乘法K=P*phi/(1+phi'*P*phi);thetae( : ,k)=thetae_1 + K*(y(k)-phi'*thetae_1); P=(eye(na+nb+1)-K*phi')*P;%更新数据thetae_1 = thetae( : ,k);for i=d+nb:-1:2 uk(i)=uk(i-1); enduk(1)=u(k); for i=na:-1:2yk(i)=yk(i-1); endyk(1)=y(k); endplot([1:L],thetae); %line([1,L],[theta,theta]); xlabel('k');ylabel('参数估计a 、b'); legend('a_1','b_0');axis([0 L -2 2]);图1-1 递推最小二乘法的参数估计结果(2))取初值P (0)=I 、∧θ(0)=0选择方差为1的白噪声作为输入信号u (k ),取 分别为0.91,0.95,0.98,1.00时,L=600,采用FFRLS 算法进行参数估计,代码及仿真图如下所示:clear all ;close all ;a=[1 0.8]';b=[0.5]';d=1; %对象参数na=length(a)-1;nb=length(b)-1; %na 、nb 为A 、B 阶次L=600; %仿真长度uk=zeros(d+nb,1); %输入初值:uk(i)表示u(k-i) yk=zeros(na,1); %输出初值u=randn(L,1); %输入采用白噪声序列xi=sqrt(0.1)*randn(L,1); %白噪声序列thetae_1=zeros(na+nb+1,1); %thetae初值P=10^6*eye(na+nb+1);lambda=0.98; %遗忘因子范围[0.9 1]for k=1:Lif k==301a=[1 0.6]';b=[0.3]'; %对象参数突变endtheta( : ,k)=[a(2 : na+1);b]; %对象参数真值phi = [-yk;uk(d:d+nb)]; %´此处phi为列向量y(k)=phi'*theta( : ,k) + xi(k); %采集输出数据%遗忘因子递推最小二乘法·¨K=P*phi/(lambda+phi'*P*phi);thetae( : ,k)=thetae_1 + K*(y(k)-phi'*thetae_1);P=(eye(na+nb+1)-K*phi')*P/lambda;%更新数据thetae_1 = thetae( : ,k);for i=d+nb:-1:2uk(i)=uk(i-1);enduk(1)=u(k);for i=na:-1:2yk(i)=yk(i-1);endyk(1)=y(k);endsubplot(1,2,1)plot([1:L],thetae(1:na,:));hold on;plot([1:L],theta(1:na,:),'k:'); xlabel('k');ylabel('参数估计a');legend('a_1');axis([0 L -2 2]);subplot(1,2,2)plot([1:L],thetae(na+1:na+nb+1,:));holdon;plot([1:L],theta(na+1:na+nb+1,:),'k:');xlabel('k');ylabel('参数估计b');legend('b_0');axis([0 L -0.5 2]);图1-2-1 遗忘因子递推最小二乘法的参数估计结果(λ=0.91)图1-2-2 遗忘因子递推最小二乘法的参数估计结果(λ=0.95)图1-2-3遗忘因子递推最小二乘法的参数估计结果(λ=0.98)图1-2-4 遗忘因子递推最小二乘法的参数估计结果(λ=1)由以上可以看出,技术对于参数突变的系统,采用FFRLS算法也能够有效地进行参数估计。
系统辨识及自适应控制实验..
Harbin Institute of Technology系统辨识与自适应控制实验报告题目:渐消记忆最小二乘法、MIT方案与卫星振动抑制仿真实验专业:控制科学与工程姓名:学号: 15S******指导老师:日期: 2015.12.06哈尔滨工业大学2015年11月本实验第一部分是辨识部分,仿真了渐消记忆递推最小二乘辨识法,研究了这种方法对减缓数据饱和作用现象的作用;第二部分是自适应控制部分,对MIT 方案模型参考自适应系统作出了仿真,分别探究了改变系统增益、自适应参数的输出,并研究了输入信号对该系统稳定性的影响;第三部分探究自适应控制的实际应用情况,来自我本科毕设的课题,我从自适应控制角度重新考虑了这一问题并相应节选了一段实验。
针对挠性卫星姿态变化前后导致参数改变的特点,探究了用模糊自适应理论中的模糊PID 法对这种变参数系统挠性振动抑制效果,并与传统PID 法比较仿真。
一、系统辨识1. 最小二乘法的引出在系统辨识中用得最广泛的估计方法是最小二乘法(LS)。
设单输入-单输出线性定长系统的差分方程为:()()()()()101123n n x k a x k a k n b u k b u x k n k +-+⋯+-=+⋯+-=,,,, (1.1) 错误!未找到引用源。
式中:()u k 错误!未找到引用源。
为控制量;错误!未找到引用源。
为理论上的输出值。
错误!未找到引用源。
只有通过观测才能得到,在观测过程中往往附加有随机干扰。
错误!未找到引用源。
的观测值错误!未找到引用源。
可表示为: 错误!未找到引用源。
(1.2)式中:()n k 为随机干扰。
由式(1.2)得错误!未找到引用源。
()()()x k y k n k =- (1.3)将式(1.3)带入式(1.1)得()()()()()()()101111()nn n i i y k a y k a y k n b u k b u k b u k n n k a k i n =+-+⋯+-=+-+⋯+-++-∑ (1.4)我们可能不知道()n k 错误!未找到引用源。
自适应控制习题(系统辨识)
自适应控制习题(徐湘元,自适应控制理论与应用,电子工业出版社,2007)【2-1】设某物理量丫与XI 、X2、X3的关系如下:丫=0 1X1 + 0 2X2+0 3X3由试验获得的数据如下表。
试用最小二乘法确定模型参数 0 1、0 2和0 3X1:0.620.40.420.820.660.720.380.520.450.690.550.36X2:12.014.214.612.110.88.2013.010.58.8017.014.212.8 X3:5.206.100.328.305.107.904.208.003.905.503.806.20 Y: 51.649.948.550.649.748.842.645.937.864.853.445.3【2-3】考虑如下模型其中w(t)为零均值、方差为1的白噪声。
根据模型生成的输入/输出数据u(k)和y(k), 分别采用批处理最小二乘法、具有遗忘因子的最小二乘法(入 =0.95)和递推最小二乘法 估计模型参数(限定数据长度 N 为某一数值,如N=150或其它数值),并将结果加以比 较。
【2-4】 对于如下模型(1 _0.8z 10.15z 2)y(k) 一(z 20.5z 3)u(k) - (1 - 0.65z 1- 0.1z 2)w(k)其中w(k)为零均值、方差为1的白噪声。
根据模型生成的输入/输出数据u(k)和y(k), 分别采用增广最小二乘法和随机逼近法进行模型参数估计,并比较结果。
(提示:w(t)可以用MATLAB^的函数“ randn ”产生)。
【3-1】 设有不稳定系统: (1z 1)y(k)- z ^(10.9z 1)u(k)期望传递函数的分母多项式为Amz z mr且无稳态误差。
试按照极点配置方法设计控制系统,并写出控制表达式。
【3-2} 设有被控过程:一 -_(1 1.7z 1 0.6z 2)y(k)z 2(11.2z 1)u(k) 一 ~- 一--1.3z0.5z u(t)w(t)I 0.3z 21 - - T ()(10.5),期望输出y 跟踪参考输入y ,y(t)给定期望传递函数的分母多项式为(1)(1 0.61 0.08 2),试按照极点配置方 A m zzz法设计控制系统,使期望输出无稳态误差,并写出控制表达式 u(k)。
系统辨识大作业加学习心得
论文系统辨识姿态角控制1.系统辨识概述辨识、状态估计和控制理论是现代控制理论三个相互渗透的领域。
辨识和状态估计离不开控制理论的支持,控制理论的应用又几乎不能没有辨识和状态估计技术。
随着控制过程复杂性的提高,控制理论的应用日益广泛,但其实际应用不能脱离被控对象的数学模型。
然而在大多数情况下,被控对象的数学模型是不知道的,或者在正常运行期间模型的参数可能发生变化,因此利用控制理论去解决实际问题时,首先需要建立被控对象的数学模型。
系统辨识正是适应这一需要而形成的,他是现代控制理论中一个很活跃的分支。
社会科学和自然科学领域已经投入相当多的人力去观察、研究有关的系统辨识问题。
系统辨识是建模的一种方法,不同的学科领域,对应着不同的数学模型。
从某种意义上来说,不同学科的发展过程就是建立他的数学模型的过程。
辨识问题可以归结为用一个模型来表示可观系统(或将要改造的系统)本质特征的一种演算,并用这个模型吧对客观系统的理解表示成有用的形式。
当然可以刻有另外的描述,辨识有三个要素:数据,模型类和准则。
辨识就是按照一个准则在一组模型类中选择一个与数据拟合得最好的模型。
总而言之,辨识的实质就是从一组模型类中选择一个模型,按照某种准则,使之能最好地拟合所关心的实际过程的静态或动态特性。
通过辨识建立数学模型的目的是估计表征系统行为的重要参数,建立一个能模仿真实系统行为的模型,用当前可测量的系统的输入和输出预测系统输出的未来演变,以及设计控制器。
对系统进行分析的主要问题是根据输入时间函数和系统的特性来确定输出信号。
对系统进行控制的主要问题是根据系统的特性设计控制输入,使输出满足预先规定的要求。
而系统辨识所研究的问题恰好是这些问题的逆问题。
通常,预先给定一个模型类{}M(即给定一类已知结构的模型),一类输入信号u和等价准则(,)JLyyM(一般情况下,J是误差函数,是过程输出y和模型输出yM的一个泛函);然后选择是误差函数J达到最小的模型,作为辨识所要求的结果。
系统辨识与自适应控制实验报告
系统辨识与自适应控制实验报告一、实验目的1.了解最小二乘算法的实现;2.使用最小二乘法一次完成算法、递推最小二乘法以及广义最小二乘法对系统进行辨识。
二、实验容设单输入-单输出系统的差分方程为y(k)=-取真实值=[ 1.642 0.715 0.39 0.35] ,输入数据如下表所列。
k u(k) k u(k) k u(k)1 1.147 11 -0.958 21 0.4852 0.201 12 0.810 22 1.6333 -0.787 13 -0.044 23 0.0434 -1.589 14 0.947 24 1.3265 -1.052 15 -1.474 25 1.7066 0.866 16 -0.719 26 -0.3407 1.152 17 -0.086 27 0.8908 1.157 18 -1.099 28 1.1449 0.626 19 1.450 29 1.177 10 0.43320 1.15130 -0.390用的真实值利用查分方程求出作为测量值,为均值为0,方差为0.1,0.5的不相关随机序列。
(1) 用最小二乘法估计参数(2) 用递推最小二乘法估计参数θ。
(3) 用辅助变量法估计参数θ。
(4) 设,用广义最小二乘法估计参数θ。
(5) 用增广矩阵法估计参数θ详细分析和比较所获得的参数辨识结果,并说明上述参数辨识方法的优点。
三、 实验设备Matlab 软件,PC 机一台。
四、实验原理4.1 最小二乘一次完成算法 4.1.1 公式 辨识参数L T LL TL LS y XX X 1)(-Λ=θ上式中4.1.2 程序流程图图 1最小二乘一次完成程序流程图4.2 递推最小二乘算法4.2.1 递推公式公式为其中,4.2.2 算法流程图图 2 递推最小二乘法实现程序框图4.3 增广最小二乘递推算法4.3.1 递推公式公式为:其中,4.3.2 算法流程图图 3 增广最小二乘法算法流程图五、实验结果5.1 最小二乘法一次完成实验结果XL =0 0 0 00 0 0 00 0 0.2010 1.1470-0.4798 0 -0.7870 0.20101.0245 -0.4798 -1.5890 -0.7870-0.4439 1.0245 -1.0520 -1.5890 0.9629 -0.4439 0.8660 -1.0520 -1.2332 0.9629 1.1520 0.8660 0.5840 -1.2332 1.5730 1.1520 -1.0939 0.5840 0.6260 1.5730 0.5840 -1.0939 0.4330 0.6260 -0.5647 0.5840 -0.9580 0.4330 0.7317 -0.5647 0.8100 -0.9580 -0.7784 0.7317 -0.0440 0.8100 0.4885 -0.7784 0.9470 -0.0440 -0.5996 0.4885 -1.4740 0.9470 0.8786 -0.5996 -0.7190 -1.4740 -0.2177 0.8786 -0.0860 -0.7190 0.0144 -0.2177 -1.0990 -0.0860 0.5907 0.0144 1.4500 -1.0990 -1.1611 0.5907 1.1510 1.4500 0.5277 -1.1611 0.4850 1.1510 -0.6284 0.5277 1.6330 0.4850 -0.1521 -0.6284 0.0430 1.6330 0.1108 -0.1521 1.3260 0.0430 -0.6053 0.1108 1.7060 1.3260 -0.2147 -0.6053 -0.3400 1.70600.3208 -0.2147 0.8900 -0.3400 -0.6014 0.3208 1.1440 0.8900 0.0005 -0.6014 1.1770 1.1440 yL =0.4798-1.02450.4439-0.96291.2332-0.58401.0939-0.58400.5647-0.73170.7784-0.48850.5996-0.87860.2177-0.0144-0.59071.1611-0.52770.62840.1521-0.11080.60530.2147-0.32080.6014-0.00050.4302辨识参数矩阵c =1.64200.71500.39000.3500a1 =1.6420;a2 =0.7150;b1 =0.3900;b2 =0.3500 下图为输入、输出矩阵的根径图图 4最小二乘法一次实现输入输出根径图5.2 递推最小二乘法算法辨识结果系统输出矩阵:y =Columns 1 through 130 0 0.4798 -1.0245 0.4439 -0.9629 1.2332 -0.5840 1.0939 -0.5840 0.5647 -0.7317 0.7784Columns 14 through 26-0.4885 0.5996 -0.8786 0.2177 -0.0144 -0.5907 1.1611 -0.5277 0.6284 0.1521 -0.1108 0.6053 0.2147Columns 27 through 30-0.3208 0.6014 -0.0005 0.4302辨识参数矩阵(辨识过程执行26次即满足了误差要求):c =Columns 1 through 130.0010 0 0.0010 0.5690 1.3863 1.64201.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.64200.0010 0 0.0010 0.0010 -0.2821 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.71500.0010 0 0.0719 1.0162 0.5392 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.39000.0010 0 0.4057 0.2403 0.3239 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500Columns 14 through 261.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.64200.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.71500.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.39000.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500辨识误差矩阵:e =Columns 1 through 130 0 0 567.9876 1.4365 0.1844 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.00000 0 0 0 -283.1457 -3.5341 -0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.00000 0 70.9263 13.1283 -0.4694 -0.2767 0.0000 0.0000 -0.0000 -0.0000 0.0000 -0.0000 -0.00000 0 404.7388 -0.4078 0.3479 0.0807 -0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000Columns 14 through 260.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000 -0.0000 0.0000 0.0000 0.00000.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.00000.0000 -0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 -0.00000.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000输入输出根径图图 5 递推最小二乘法输入输出根径图辨识参数过程图 6 递推最小二乘法辨识参数(辨识过程)辨识误差:图 7 递推最小二乘法辨识过程中的误差曲线5.3 增光最小二乘法实验结果随机噪声e0 =Columns 1 through 130.8017 0.3112 0.0400 1.5927 2.1796 -0.2063 0.4197 -0.4914 0.9967 -2.0484 1.3063 0.5351 0.5779Columns 14 through 261.5297 0.0416 0.1831 -0.9543 -1.3474 -0.3873 0.5971 -0.2250 -1.0173 1.3889 -0.3959 0.3049 0.3154Columns 27 through 300.0668 0.7128 0.0522 -1.3478考虑噪声的系统输出矩阵y =Columns 1 through 130 0 1.3292 -2.8976 3.0444 -3.4535 4.0637 -1.2169 1.8419 -1.5061 0.3942 -3.0734 2.3278Columns 14 through 26-0.7705 1.1973 -0.1962 0.3711 -0.4941 -1.4314 1.2987 -1.5689 0.0303 1.8310 0.3403 -0.3472 0.5176Columns 27 through 30-1.1419 -0.4368 0.0696 1.6791不考虑噪声的系统输出矩阵ys =Columns 1 through 130 0 0.4798 -2.4191 2.9124 -3.8936 3.4635 -3.4509 0.1092 -1.3596 1.5440 0.2076 4.7453Columns 14 through 26-1.3584 -0.0452 -1.6585 -1.3303 -0.7543 0.0873 2.8846 -0.1526 2.2396 1.8786 -2.4398 -1.3358 1.4562Columns 27 through 30-0.1371 1.7331 2.2914 1.0575不考虑噪声时的模型输出ym =Columns 1 through 130 0 0.8502 -2.7124 3.2115 -4.4770 4.5771 -3.4086 0.1092 -1.3596 1.5440 0.2076 4.7453Columns 14 through 26-1.3584 -0.0452 -1.6585 -1.3303 -0.7543 0.0873 2.8846 -0.1526 2.2396 1.8786 -2.4398 -1.3358 1.4562Columns 27 through 30-0.1371 1.7331 2.2914 1.0575考虑噪声时的模型输出ymd =Columns 1 through 130 0 1.3292 -2.8976 3.0444 -3.4535 4.0637 -1.2169 1.8419 -1.5061 0.3942 -3.0734 2.3278Columns 14 through 26-0.7705 1.1973 -0.1962 0.3711 -0.4941 -1.4314 1.2987 -1.5689 0.0303 1.8310 0.3403 -0.3472 0.5176Columns 27 through 30-1.1419 -0.4368 0.0696 1.6791辨识参数矩阵:c =Columns 1 through 130.0010 0 0.0010 1.5171 1.6829 1.84351.8250 1.6529 1.6420 1.6420 1.6420 1.6420 1.64200.0010 0 0.0010 0.0010 -0.1409 0.7419 0.6281 0.7388 0.7150 0.7150 0.7150 0.7150 0.71500.0010 0 0.1268 1.0576 0.8180 0.3002 0.4168 0.3921 0.3900 0.3900 0.3900 0.3900 0.39000.0010 0 0.7190 0.6789 0.7019 0.4396 0.1656 0.3522 0.3500 0.3500 0.3500 0.3500 0.35000.0010 0 -0.1988 0.0261 0.0572 -0.0988 -0.0852 1.0030 1.0000 1.0000 1.0000 1.0000 1.00000.0010 0 0.2540 0.6848 0.6545 1.34961.4284 1.6100 1.6420 1.6420 1.6420 1.6420 1.64200.0010 0 0.4430 0.0984 0.1605 0.2657 0.6386 0.7305 0.7150 0.7150 0.7150 0.7150 0.7150Columns 14 through 261.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.64200.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.71500.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.39000.3500 0.3500 0.3500 0.3500 0.3500 0.35000.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.35001.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.00001.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.64200.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150Columns 27 through 301.6420 1.6420 1.6420 1.64200.7150 0.7150 0.7150 0.71500.3900 0.3900 0.3900 0.39000.3500 0.3500 0.3500 0.35001.0000 1.0000 1.0000 1.00001.6420 1.6420 1.6420 1.64200.7150 0.7150 0.7150 0.7150辨识参数误差矩阵e =1.0e+003 *Columns 1 through 130 0 0 1.5161 0.0001 0.0001 -0.0000 -0.0001 -0.0000 -0.0000 -0.0000 -0.0000 -0.00000 0 0 0 -0.1419 -0.0063 -0.0002 0.0002 -0.0000 0.0000 0.0000 -0.0000 -0.00000 0 0.1258 0.0073 -0.0002 -0.0006 0.0004 -0.0001 -0.0000 -0.0000 -0.0000 -0.0000 -0.00000 0 0.7180 -0.0001 0.0000 -0.0004 -0.0006 0.0011 -0.0000 0.0000 -0.0000 -0.0000 0.00000 0 -0.1998 -0.0011 0.0012 -0.0027 -0.0001 -0.0128 -0.0000 0.0000 0.0000 0.0000 -0.00000 0 0.2530 0.0017 -0.0000 0.0011 0.0001 0.0001 0.0000 -0.0000 0.0000 0.0000 0.00000 0 0.4420 -0.0008 0.0006 0.0007 0.0014 0.0001 -0.0000 0.0000 0.0000 -0.0000 0.0000Columns 14 through 260.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 0.00000.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000-0.0000 -0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 -0.00000.0000 0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 0.0000 -0.0000 -0.0000 -0.0000-0.0000 -0.0000 -0.0000 0.0000 -0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 -0.0000 -0.0000 -0.00000.0000 0.0000 0.0000 0.0000 0.0000 0.00000.0000 0.0000 0.0000 -0.0000 -0.0000 0.0000 0.0000-0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 -0.0000Columns 27 through 300.0000 -0.0000 -0.0000 0.00000.0000 -0.0000 -0.0000 0.00000.0000 -0.0000 -0.0000 -0.0000-0.0000 0.0000 -0.0000 -0.00000.0000 0.0000 0.0000 -0.00000.0000 0.0000 0.0000 0.00000.0000 -0.0000 0.0000 0.0000输入输出根径图:图 8 增广最小二乘法输入输出根径图辨识过程的参数:图 9 增广最小二乘法辨识过程参数辨识过程中的误差图 10 增广最小二乘法辨识过程中的误差系统输出矩阵和模型输出矩阵的对比:图 11 系统输出矩阵和模型输出矩阵的对比图六、结果分析利用最小二乘法对系统进行辨识,能够在最小误差平方的意义上对实验数据实现最好的拟合。
系统辩识与自适应控制
最小二乘类辨识方法的比较摘要本文系统的探讨了三种最小二乘类辨识方法的原理和性能,结果证明:最小二乘法不适合实时处理,在同等情况下,递推最小二乘的辨识速度较快,但在有色噪声干扰下效果不理想,广义最小二乘法的辨识效果最好,且不受噪声是否有色的影响,但是费时最多。
关键词:辨识方法,辨识速度,辨识效果ABSTRACTThis article system discussed three kinds of least square identification method principle and performance, the results prove that: the least squares method is not suitable for real-time processing, in the same circumstances, recursive least squares identification rate is rapidder, but in colored noise the effect is not ideal, the generalized least squares identification effect is best, and is not affected by noise or colored effects, but the most time-consuming.Key words: identification method, identification speed, effect of identification1 引言系统辨识是一门介于现代控制理论和系统理论的边缘学科.它将现代控制论的平滑、滤波、预测和参数估计理论,以及系统论的系统分析方法和建模思想应用于自然科学、社会科学和工程实践中的各个领域,与各个领域的专业知识相给合,形成了一个个新的交叉学科分支。
自适应控制大作业剖析
步骤2:采样当前实际输出 和期望输出 ;
步骤3:构造观测数据向量 并利用递推增广最小二乘法在线实时估计被控对象参数 ,即 ;
步骤4:利用最小方差控制律计算并实施 ;
步骤5: ,返回步骤2,继续循环。
2.2
设系统模型如下:
其中, 为方差为0.1的白噪声,采用广义最小方差控制。取初值 、 ;设置加权多项式 、 、 2。期望输出采用幅值为10的方波型号,其控制结果如下:
关键之一。理论分析表明,白噪声作为被辨识系统的输入时,可以激发系统的所有模态,可对系统充分激励,可防止数据病态,保证辨识精度,可以保证获得较好的辨识效果。
图1-1白噪声序列
1.2.2
假设被辨识的系统为一单入单出的离散时间系统,且已知为CAR模型(带控制量的自回归模型),如图2所示组员:
2016年1月
目 录
1
1.1
最小二乘最早的想法是高斯在1795年预测行星和彗星运动轨道时提出来的,“未知量的最大可能的值是这样一个数值,它使各次实际观测和计算值之间的差值的平方乘以度量其精确度的数值以后的和为最小”。这一估计方法原理简单,不需要随机变量的任何统计特性,目前已经成为动态系统辨识的主要手段。最小二乘辨识方法使其能得到一个在最小方差意义上与实验数据最好拟合的数学模型。由最小二乘法获得的估计在一定条件下有最佳的统计特性,即统计结果是无偏的、一致的和有效的。
(哈工大)系统辨识与自适应控制——第一讲
2010-02-20
第5页
Harbin Institute of Technology– HIT
uFPM d2r d t2
F d r
dt
步骤二:对摆杆进行受力分析,摆杆的受力如图4所示。
θ
N
mg
P
图4 摆杆受力分析图
摆杆水平方向上的力平衡方程如下,
2010-02-20
第6页
Harbin Institute of Technology– HIT
x1 x2
x2
(Mm)mgl1x(Mm)fx2 mlx4
(Mm)(J ml2) m2l2
mlu
x3 x4
x4
m2l2gx1
mlfx2 (J ml2)x4 (J
(Mm)(J ml2) m2l2
ml2)u
(12)
2010-02-20
第10页
Harbin Institute of Technology– HIT
问题:
(1). 效率低:随着系统复杂程度的增加,建模过程愈加复 杂; (2). 不方便“计算机〞在线决策。
2010-02-20
第11页
Harbin Institute of Technology– HIT
2. 系统辨识法(黑箱法)
能否根据“输入、输出数据〞获取“对象〞的数学模型 呢?
例:原被控对象的差分形式为:
x2
m2l2x22c
ox1ss
ixn1mlcuox1sx4mclox1s(Mm)m
(Mm)(Jm2)lm2l2c o2xs1
g s ilxn1(Mm)fx2
x3x4
x4
m
l2fcxox1sm2l2gs
ixn1c ox1s(Jm2)lx4(Jm2)lm22lsxixn1(Jm2)lu
系统辨识及自适应控制实验报告
系统辨识及自适应控制实验报告实验报告:系统辨识及自适应控制1.引言系统辨识和自适应控制是现代自动控制领域中的重要研究内容。
系统辨识是通过采集系统输入输出数据,建立数学模型描述系统的动态行为。
自适应控制则是根据系统辨识得到的模型,调整控制器参数以适应系统的变化和外部干扰。
本实验旨在通过实际操作,掌握系统辨识和自适应控制的基本原理和方法。
2.实验目的1)了解系统辨识的基本原理和方法;2)掌握常见的系统辨识方法,包括参数辨识和频域辨识;3)理解自适应控制的基本原理和方法;4)熟悉自适应控制的实现过程;5)通过实验验证系统辨识和自适应控制的有效性。
3.实验原理3.1系统辨识原理系统辨识的目标是通过采集系统输入输出数据,建立数学模型来描述系统的动态特性。
常见的系统辨识方法包括参数辨识和频域辨识两种。
参数辨识是通过拟合实际测量数据,找到最佳的模型参数。
常用的参数辨识方法有最小二乘法、极大似然法和最小误差平方等。
频域辨识则是通过对输入输出信号的频谱分析,得到系统的频率响应特性。
常用的频域辨识方法有傅里叶变换法、相关分析法和谱估计法等。
3.2自适应控制原理自适应控制是根据系统辨识得到的模型,调整控制器参数以适应系统的变化和外部干扰。
自适应控制分为基于模型的自适应控制和模型无关的自适应控制。
基于模型的自适应控制利用系统辨识得到的模型参数,设计相应的控制器来实现自适应控制。
常见的基于模型的自适应控制方法有模型参考自适应控制和模型预测自适应控制等。
模型无关的自适应控制则不依赖于系统辨识的模型,而是根据实际测量数据直接调整控制器参数。
常见的模型无关的自适应控制方法有自适应滑模控制和神经网络控制等。
4.实验内容4.1系统辨识实验在实验中,我们通过采集系统输入输出数据,根据最小二乘法进行参数辨识。
首先设置系统的输入信号,如阶跃信号或正弦信号,并记录对应的输出数据。
然后根据采集到的数据,选取适当的模型结构,通过最小二乘法求解最佳的模型参数。
自适应控制作业
中国矿业大学科目:系统辨识与自适应控制姓名:学号:院系:教师:时间: 2015-12-09自适应控制技术一、引言自适应控制的发展已有40多年的历史,并且在近20年里得到了飞速的发展,已成为当代自动控制界的少数热门前沿研究领域之一。
自适应控制的研究对象是具有一定程度不确定性的系统。
这里所谓“不确定性”是指描述被控对象及其环境的数学模型不是完全确定的,其中包含一些未知因素和随机因素。
面对这些客观存在的各种不确定性,如何设计适当的控制作用,使得某一指定的性能指标达到并保持最优或近似最优,就是自适应控制所要解决的问题。
自适应控制是一种基于数学模型的控制方法,但是自适应控制所依据的关于模型和扰动的先验知识比较少,需要在系统的运行过程中去不断提取有关模型的信息,使模型逐渐完善。
可见,对于那些对象特性或扰动特性变化范围很大,同时又要求经常保持高性能指标的一类系统,采用自适应控制是合适的。
自适应控制系统的设计方法主要有两大类,一是基于自校正控制理论,另一是基于模型参考自适应控制理论。
模型参考自适应控制技术是美国麻省理工学院的Whitaker教授为解决飞行器自动驾驶仪的问题而提出来的。
自校正控制技术是由Kalman于1958年提出,由于当时的理论和技术发展都不充分,因此没有得到应有的重视和应用。
60年代现代控制理论蓬勃发展,取得了诸如状态空间法、稳定性理论、最优控制、随机控制、参数估计等一些成果,电子计算机迅速发展为在工业生产过程中实现自适应控制这种复杂的策略提供了必要的技术基础。
70年代以来,自适应控制理论有了显著的进展,一些学者分别在确定性的和随机的、连续的和离散的系统的自适应控制理论方面做出了杰出的贡献。
二、自适应控制概述2.1 自适应控制系统的功能及特点对于具有较强不确定性的被控系统,如何设计一个满意的控制器,就是自适应控制所要研究的问题。
参照在日常主活中生物能够通过自觉调整自身参数改变自己的习性,以适应新的环境特性,从而提出了自适应控制器的设想。
系统辨识与自适应控制
什么是数学模型
根据模型不同的基本特征,数学模型划分为: (1)静态模型与动态模型; (2)线性模型与非线性模型; (3)参数模型与非参数模型; (4)确定性模型与随机性模型; (5)连续时间模型与离散时间模型; (6)时不变模型与时变模型; (7)时间域模型与频域模型; (8)集中参数模型与分布参数模型;
关于系统辨识
在经典的控制理论中,为了确定闭环系统是否稳定,我们 就需要数学模型。可以①在已知系统微分方程的情况下,求取 闭环传递函数,求解闭环特征方程,判断根是否都具有负实部, 或利用劳斯判据(霍尔维茨判据),确定是否所有极点位于S平 面的左半平面;②获得开环系统传递函数,绘制根轨迹,确定 系统特征方程的根在S平面的分布情况;③在没有获得系统数学 模型的情况下,实验室的方法变得切实可行,利用开环系统的 对数幅频特性曲线(Bode图)或者奈奎斯特曲线(奈氏图), 判断闭环系统的稳定性。
自适应控制系统的应用与发展
飞行器控制是最早应用自适应控制的领域。 例如,在工业方面,加热反应炉的升温自适应控 制,可使升温图曲线尽量接近试验所确定的理想曲线。 现有的自适应控制系统主要遵循两个原则: 1、一般只假定系统是线性定常的; 2、设计从系统的稳定性出发;按照Lyapunov分析 稳定性的观点,稳定性是保证如果系统的初始偏差在一 定范围内,随着系统运行时间的加大,偏差逐渐趋于 零。
自适应控制系统的应用与发展
但是一个实际系统,只具备稳定性是不够的,还要 具备一定的稳定速度,太慢了是没有意义的。
自适应控制所着力追求的是具有真正适应能力的 系统,自适应是生命系统的一种基本能力,体现为系统 的学习能力和智能水平。因此,自适应控制的进一步发 展将借鉴人工智能(AI)的推动。
系统辨识与自适应控制
《系统辨识与自适应控制》课程论文基于Matlab的模糊自适应PID控制器仿真研究学院:电信学院 _____________专业:________________________________姓名:________________________________学号:________________________________基于Matlab 的模糊自适应PID 控制器仿真研究王晋(辽宁科技大学电信学院鞍山)摘要:传统PID 在对象变化时,控制器的参数难以自动调整。
将模糊控制与 理方法实现对PID 参数的在线自整定。
使控制器具有较好的自适应性。
表明系统的动态性能得到了提高。
矢键词:模糊PID 控制器;参数自整定;Matlab ;自适应0引言在工业控制中,PID 控制是工业控制中最常用的方法。
但是,它具有一定的局限性 :当控 制对象不同时,控制器的参数难以自动调整以适应外界环境的变化。
为了使控制器具有较好的自 适应性,实现控制器参数的自动调整,可以采用模糊控制理论的方法 (1)模糊控制已成为智能自动化控制研究中最为活跃而富有成果的领域。
其中,模糊 PID 控 制技术扮演了十分重要的角色,并目仍将成为未来研究与应用的重点技术之一。
到目前为止, 现代控制理论在许多控制应用中获得了大量成功的范例。
然而在工业过程控制中, PID 类型 的控制技术仍然占有主导地位。
虽然未来的控制技术应用领域会越来越宽广、被控对象可以是越 来越复杂,相应的控制技术也会变得越来越精巧,但是以PID 为原理的各种控制器将是过程控制 中不可或缺的基本控制单元。
本文将模糊控制和PID 控制结合起来,应用模糊推理的方法实现对PID 参数进行在线自整定,实现PID 参数的最佳调整,设计出参数模糊自整定PID 控制器,并进行了Matlab/Simulink 仿真②。
仿真结果表明,与常规PID 控制系统相比,该设计获得了更优的鲁棒性和动、静态性及具有良好 的自适应性 。
系统辨识与自适应控制论文
系统辨识与自适应控制20世纪60年代,自动控制理论发展到了很高的水平,经典控制论被更有前途的现代控制理论所超越,与此同时,工业大生产的发展,也要求将控制技术提到更高的水平。
现代控制理论的应用是建立在已知受控对象的数学模型这一前提下的,而在当时对受控对象数学模型的研究相对较为滞后。
现代控制理论的应用遇到了确定受控对象合适的数学模型的各种困难。
因此,建立系统数学模型的方法——系统辨识,就成为应用现代控制理论的重要前提。
在另一方面,随着计算机科学的飞速发展,计算机为辨识系统所需要进行的离线计算和在线计算提供了高效的工具。
在这样的背景下,系统辨识问题便愈来愈受到人们的重视,成为发展系统理论,开展实际应用工作中必不可少的组成部分。
什么是系统辨识?对于自动控制系统的分析和设计来说,建立受控对象的数学模型是必不可少的。
建立所研究的对象的数学模型,主要有两个途径:一个是借助于基本物理定律,即利用各个专门学科领域提出来的关于物质和能量的守恒性和连续性原理,以及系统结构数据,推导出系统的数学模型。
这种建立模型的方法称为数学建模法或称解析法。
但是,对很大一类工程系统,如化工过程,由于其复杂性,很难用解析法推导出数学模型。
有时只能知道系统数学模型的一般形式及其部分参数,有时甚至连数学模型的形式也不知道。
这时,只能通过系统的运行或试验,得到关于系统的有关数据,然后通过计算处理,建立起系统的数学模型(模型结构和参数)。
这种建立数学模型的方法即为系统辨识的方法。
系统辨识定义:辨识是在输入输出数据的基础上,从一组给定的模型类中,确定一个与所测系统等价的模型。
由定义我们可以知道系统辨识的三大要素:(1)数据:能观测到的系统的输入输出数据;(2)模型类:寻找的模型范围——模型结构;(3)等价准则:辨识的优化目标,衡量模型接近实际系统的标准。
输入输出数据:系统的输入输出数据是由对系统的观测而得,这些变化着的输入输出数据“必然”表现出系统的动态和静态特性和行为。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 辨识的对象模型假设有一理想数学模型,它的离散化方程如下式所示:() 1.8(1)0.3(2) 1.2(1)(2)()y k y k y k u k u k e k +-+-=-+-+式中,()e k 是服从正态分布的白噪声)1,0(N ,()k u 为系统输入,()k y 为系统输出。
现在输入信号采用4阶M 序列,其幅值为1。
假设系统的模型阶次是已知的,即1212()(1)(2)(1)(2)()y k a y k a y k bu k b u k e k +-+-=-+-+。
下面采用递推最小二乘参数辨识。
2 递推最小二乘参数辨识方法简单的最小二乘参数辨识一次性方法计算复杂,不能够进行在线辨识,而且所需要的计算存储空间很大,而很多计算都是重复的计算。
为了解决这个问题,并实现在线的实时辨识,引入递推的最小二乘参数辨识。
递推最小二乘参数辨识的整体思想是,最新辨识出来的参数是建立在上次辨识的参数基础上,根据最新得到的辨识数据,对辨识的参数添加了一个参数增量。
下面利用数学语言对递推最小二乘参数辨识方法进行描述。
根据最小二乘原理,用N 次观测数据,得出参数向量θ的最小二乘估计lθˆ1()()T T N N NH H H Y N θ-= (1) 其中,ˆNθ表示根据N 次观测数据所得到的最小二乘值计量,下表N 表示该符号代表N 次观测数据构成的矩阵。
()[(1),(2),...,()]T Y N y y y N = (2)N H =(0).....(1)(0).....(1)(1).....(2)(1).....(2)..(1).....()(1).....()y y n u u n y y n u u n y N y N n u N u N n ----⎡⎤⎢⎥----⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥------⎣⎦(3)然后令1()TN N N P H H -=,且N P 是一方阵,它的维数取决于未知数的个数,而与观测次数无关。
则11111TN N N N P P h h --+++⎡⎤=+⎣⎦ (4) 式中1N h +表示第1N +次观测数据。
利用矩阵反演公式计算(4)式1111111111T T TN N N N N N N N N N N N P P h h P P h I h P h h P ---+++++++⎡⎤⎡⎤=+=-+⎣⎦⎣⎦ (5) 式中11TN N N I h P h ++⎡⎤+⎣⎦是一个标量,其求逆只是一个简单的除法。
令1111TN N N N I h P h γ-+++⎡⎤=+⎣⎦,于是有1111T N N N N N N P I P h h P γ++++⎡⎤=-⎣⎦,则最小二乘估计量ˆN θ的表达式可改写为1ˆ()T N N N P h Y N θ+=,于是第1N +次观测数据所得到的最小二乘值计量为111111ˆˆ(1)(1)T T N N N N N N P h Y N P P h Y N θθ++++++⎡⎤=+=++⎣⎦由(4)式可知111T T TN N N N P P h h +++=- (6)于是111ˆˆˆ(1)T N N N N N K Y N h θθθ+++⎡⎤=++-⎣⎦ (7)111N N N K P h +++= (8)将上述的推导过程总结如下:1111111111ˆˆˆy(1)1T N N N N N N N N TN N N T N N N N K N h P h K h P h P I K h Pθθθ++++++++++⎧⎡⎤=++-⎣⎦⎪⎪=⎨+⎪⎪⎡⎤=-⎣⎦⎩ 3 辨识过程整体上的辨识过程流程图如下图所示:图-1 递推最小二乘参数辨识流程示意图详细步骤如下所示:1 在此选择4阶的M 序列。
这样,M 序列的最大循环周期长度为15(bit )。
首先利用MATLAB 程序生成4阶幅值为1的M 序列和服从正态分布的白噪声序列。
2 根据上述的输入序列,带入待辨识的系统模型中,得到一系列对应的输出信号序列。
然后根据输入和输出序列,组建辨识所需的观测矩阵。
本系统的观测矩阵形式如下:(2)(1)(2)(1)(3)(2)(3)(2)(14)(13)(14)(13)m y y u u y y u u H y y u u --⎡⎤⎢⎥--⎢⎥=⎢⎥⎢⎥--⎣⎦3选取待辨识的参数向量为模极小的数值,选取迭代矩阵P 的初值为极大的矩阵,如20,100.P I σσ==4 计算增益矩阵G(1)()()1()(1)()TP k k G k k P k k φφφ-=+- 其中T ()[(1) ... () (1) ... u() ]q b k y k y k n u k k n φ=------5 将上述的初值和增益矩阵G(k)代入上述的递推最小二乘参数辨识方程组中进行循环计算。
直到计算的结果精度符合要求或者迭代的次数达到最大为止。
4 辨识结果与分析利用matlab 对上述系统进行辨识方针,输入的M 序列如下图所示:图-2 M序列信号图辨识的结果如下图所示:图-3 递推最小二乘参数辨识结果图辨识结果与真实的系统参数对比:对结果的分析:1 利用递推最小二乘参数辨识方法,能够很好的辨识出系统的参数,并且最后收敛稳定。
其实,对于稳定的系统,递推最小二乘算法随着递推次数的增加,所得到的辨识结果将会越来越接近真实值。
但是对于其他系统,则会存在数据饱和的现象,随着递推次数的增加,辨识结果不但不接近真实数值,反而出现发散的情况。
对于这种情况,需要在递推最小二乘参数辨识法的基础上进一步进行修改,得到限定记忆法和加权最小二乘参数辨识法。
2 本次仿真所采用的M序列阶次很小,明显导致了参数仿真得到的递推估计曲线在开始的5秒钟内变化非常剧烈,而且非常不光滑。
5 仿真源程序%利用递推最小二乘法进行参数辨识%%%%%%%%%%产生M序列L=15; %M序列的周围位数y1=1;y2=1;y3=1;y4=0; %四个移位积存器的输出初始值for i=1:L; %开始循环,长度为Lx1=xor(y3,y4);%第一个移位积存器的输入是第3个与第4个移位积存器的输出的“或”x2=y1;%第二个移位积存器的输入是第3个移位积存器的输出x3=y2;%第三个移位积存器的输入是第2个移位积存器的输出x4=y3;%第四个移位积存器的输入是第3个移位积存器的输出y(i)=y4;%取出第四个移位积存器幅值为"0"和"1"的输出信号,if y(i)>0.5,u(i)=-1;%如果M序列的值为"1"时,辨识的输入信号取“-0.03”else u(i)=1;%当M序列的值为"0"时,辨识的输入信号取“0.03”end %小循环结束y1=x1;y2=x2;y3=x3;y4=x4; %为下一次的输入信号做准备end %大循环结束,产生输入信号ufigure(1); stem(u);grid on;title('输入信号')%%%%%%%%%%% 产生白噪声A=6;x0=1;M=255;for k=1:10000x2=A*x0;x1=mod (x2,M);v1=x1/256;v(:,k)=(v1-0.5)*2;x0=x1;v0=v1;endnum=v;k1=k;%%%%%%%%%% 递推最小二乘辨识程序lamt=1;z(2)=0;z(1)=0; %取z的前两个初始值为零for k=3:15; %循环变量从3到15z(k)=-1.5*z(k-1)-0.7*z(k-2)+u(k-1)+0.5*u(k-2)+0*num(1,k);%给出理想辨识输出采样信号endc0=[0.001 0.001 0.001 0.001]';%直接给出被辨识参数的初始值,即一个充分小的实向量p0=10^3*eye(4,4);%直接给出协方差阵初始状态P0,即一个充分大的实数单位矩阵E=0.000000005; %相对误差E=0.000000005c=[c0,zeros(4,14)]; %被辨识参数矩阵的初始值及大小e=zeros(4,15); %相对误差的初始值及大小for k=3:15;h1=[-z(k-1),-z(k-2),u(k-1),u(k-2)]';x=h1'*p0*h1+1*lamt;x1=inv(x); %开始求K(k)k1=p0*h1*x1; %求出K的值d1=z(k)-h1'*c0;c1=c0+k1*d1; %求被辨识参数cp1=1/lamt*(eye(4)-k1*h1')*p0;e1=c1-c0; %求参数当前值与上一次的值的差值e2=e1./c0; %求参数的相对变化e(:,k)=e2; %当前相对变化列向量加入误差矩阵的最后一列c(:,k)=c1; %把辨识参数c列向量加入辨识参数矩阵c0=c1; %新获得的参数作为下一次递推的旧参数p0=p1; %给下次用if e2<=Ebreak; %若参数收敛满足要求,终止计算endend%% %%%%%%%%%得到辨识结果,并作图a1=c(1,:); a2=c(2,:); b1=c(3,:); b2=c(4,:); %得到辨识结果ea1=e(1,:); ea2=e(2,:); eb1=e(3,:); eb2=e(4,:);figure(2);i=1:15;plot(i,a1,'r:',i,a2,'b-.',i,b1,'k--',i,b2,'g','LineWidth',2)legend('a1','a2','b1','b2');title('递推最小二乘参数辨识')(在得到辨识结果之后,对辨识结果图进行坐标注视和图形的修改。
记得到报告中的结果图。
)。