(完整word版)2003版系统辨识最小二乘法大作业

(完整word版)2003版系统辨识最小二乘法大作业
(完整word版)2003版系统辨识最小二乘法大作业

西北工业大学系统辩识大作业

题目:最小二乘法系统辨识

一、 问题重述:

用递推最小二乘法、加权最小二乘法、遗忘因子法、增广最小二乘法、广义最小二乘法、辅助变量法辨识如下模型的参数

离散化有

z^4 - 3.935 z^3 + 5.806 z^2 - 3.807 z + 0.9362

---------------------------------------------- =

z^4 - 3.808 z^3 + 5.434 z^2 - 3.445 z + 0.8187

噪声的成形滤波器

离散化有

4.004e-010 z^3 + 4.232e-009 z^2 + 4.066e-009 z + 3.551e-010

-----------------------------------------------------------------------------

=

z^4 - 3.808 z^3 + 5.434 z^2 - 3.445 z + 0.8187

采样时间0.01s

要求:1.用Matlab 写出程序代码;

2.画出实际模型和辨识得到模型的误差曲线;

3.画出递推算法迭代时各辨识参数的变化曲线;

最小二乘法:

在系统辨识领域中 ,最小二乘法是一种得到广泛应用的估计方法 ,可用于动态 ,静态 , 线性 ,非线性系统。在使用最小二乘法进行参数估计时 ,为了实现实时控制 ,必须优化成参数递推算法 ,即最小二乘递推算法。这种辨识方法主要用于在线辨识。MATLAB 是一套高性能数字计算和可视化软件 ,它集成概念设计 ,算法开发 ,建模仿真 ,实时实现于一体 ,构成了一个使用方便、界面友好的用户环境 ,其强大的扩展功能为各领域的应用提供了基础。

于一个简单的系统 ,可以通过分析其过程的运动规律 ,应用一些已知的定理和原理,建立数学模型 ,即所谓的“白箱建模 ”。但对于比较复杂的生产过程 ,该建模方法有很大的局限性。由于过程的输入输出信号一般总是可以测量的 ,而且过程的动态特性必然表现在这些输入输出数据中 ,那么就可以利用输入输出数据所提供的信息来建立过程的数学模型。这种建模方法就称为系统辨识。把辨识建模称作“黑箱建模”。系统辨识又分为参数辨识和阶次辨识 ,在本文中只讨论参数辨识问题

最小二乘递推算法所用的模型:Z(k)=B(

)u(k)+v(k)

最小二乘递推算法为

:

)(k v 是服从N )1,0(分布的不相关随机噪声。

)(1-z G )()(11--=z A z B ,)(1-z N )

()(11

--=z C z D ,

考虑如图 1示仿真对象 ,系统的差分方程为

z(k)=3.808*z(k-1)-5.434*z(k-2)+3.445*z(k-3)-0.8187*z(k-4)+u(k)-3.935*u(k-1)+5.806*u(k-2)-3.807*u(k-3)+0.9362*u(k-4)+)(k v (3.69) 仿真对象选择如下的模型结构

)

()4(5)3()2(3)1()()4(4)3(3)2()1()(42121k v k u b k u b k u b k u b k u b k z a k z a k z a k z a k z +-+-+-+-+=-+-+-+-+

(3.68)

其中,)(k v 是服从正态分布的白噪声N )1,0(。输入信号采用4位移位寄存器产生的M 序列,

幅度为1。按式(3.69)构造h (k );加权阵取单位阵I Λ L ;利用式(3.61)计算K (k )、)(?k θ

和P (k ),计算各次参数辨识的相对误差,精度满足要求式(3.67)后停机。

最小二乘递推算法辨识的Malab6.0程序流程图:

最小二乘递推算法辨识程序

clear %清理工作间变量

L=35; % M序列的周期

y1=1;y2=1;y3=1;y4=0; %四个移位寄存器的输出初始值

for i=1:L;%开始循环,长度为L

x1=xor(y3,y4); %第一个移位寄存器的输入是第三个与第四个移位寄存器的输出的“或”

x2=y1; %第二个移位寄存器的输入是第一个移位寄存器的输出

x3=y2; %第三个移位寄存器的输入是第二个移位寄存器的输出

x4=y3; %第四个移位寄存器的输入是第三个移位寄存器的输出

y(i)=y4; %取出第四个移位寄存器的幅值为"0"和"1"的输出信号,即M序列

if y(i)>0.5,u(i)=-1; %如果M序列的值为"1", 辨识的输入信号取“-1”

else u(i)=1; %如果M序列的值为"0", 辨识的输入信号取“1”

end %小循环结束

y1=x1;y2=x2;y3=x3;y4=x4; %为下一次的输入信号做准备

end %大循环结束,产生输入信号u

figure(1); %第一个图形

stem(u),grid on %显示出输入信号径线图并给图形加上网格

z(2)=0;z(1)=0; z(3)=0;z(4)=0;%设z的前四个初始值为零

for k=5:25; %循环变量从5到25

z(k)=3.808*z(k-1)-5.434*z(k-2)+3.445*z(k-3)-0.8187*z(k-4)+u(k)-3.935*u(k-1)+5.8 06*u(k-2)-3.807*u(k-3)+0.9362*u(k-4); %输出采样信号

end

%RLS递推最小二乘辨识

c0=[0.001 0.001 0.001 0.001 0.001 0.001 0.001 0.001 0.001]'; %直接给出被辨识参数的初始值,即一个充分小的实向量

p0=10^6*eye(9,9); %直接给出初始状态P0,即一个充分大的实数单位矩阵

E=0.000000005; %取相对误差E=0.000000005

c=[c0,zeros(9,24)]; %被辨识参数矩阵的初始值及大小

e=zeros(9,25); %相对误差的初始值及大小

for k=5:25; %开始求K

h1=[-z(k-1),-z(k-2),-z(k-3),-z(k-4),u(k),u(k-1),u(k-2),u(k-3),u(k-4)]';

x=h1'*p0*h1+1; x1=inv(x); %开始求K(k)

k1=p0*h1*x1;%求出K的值

d1=z(k)-h1'*c0; c1=c0+k1*d1; %求被辨识参数c

e1=c1-c0; %求参数当前值与上一次的值的差值

e2=e1./c0; %求参数的相对变化

e(:,k)=e2; %把当前相对变化的列向量加入误差矩阵的最后一列

c0=c1; %新获得的参数作为下一次递推的旧参数

c(:,k)=c1; %把辨识参数c 列向量加入辨识参数矩阵的最后一列

p1=p0-k1*k1'*[h1'*p0*h1+1]; %求出 p(k)的值

p0=p1; %给下次用

if e2<=E break; %如果参数收敛情况满足要求,终止计算

end %小循环结束

end %大循环结束

c,e%显示被辨识参数及其误差(收敛)情况

%分离参数

a1=c(1,:); a2=c(2,:);a3=c(3,:); a4=c(4,:);b1=c(5,:); b2=c(6,:); b3=c(7,:); b4=c(8,:); b5=c(9,:);

ea1=e(1,:); ea2=e(2,:);ea3=e(3,:); ea4=e(4,:);eb1=e(5,:); eb2=e(6,:); eb3=e(7,:); eb4=e(8,:); eb5=e(9,:);

figure(2); %第二个图形

i=1:25; %横坐标从1到25

plot(i,a1,'r',i,a2,':',i,a3,'r',i,a4,'k',i,b1,'y',i,b2,':',i,b3,'m',i,b4,':',i, b5,'g') %画出a1,a2,a3,a4,b1,b2,b3,b4,b5的各次辨识结果

title('参数变化曲线') %图形标题

figure(3); %第三个图形

i=1:25; %横坐标从1到25

plot(i,ea1,'r',i,ea2,'k:',i,ea3,'y',i,ea4,'m',i,eb1,'g',i,eb2,'c:',i,eb3,'r',i, eb4,':',i,eb5,'g') %画出a1,a2,a3,a4,b1,b2,b3,b4,b5的各次辨识结果的收敛情况title('误差曲线') %图形标题

参数变化图

相对误差图

仿真结果表明,大约递推到第十五步时,参数辨识的结果基本达到稳定状态,即a1=-3.808, a2=5.434, a3=-3.445, a4= -0.8187, b1=1, b2=-3.935 b3=5.806 b4=-3.807 b5=0.9362。此时,参数的相对变化量E 0.000000005。从整个辨识过程来看,精度的要求直接影响辨识的速度。虽然最终的精度可以达到很小,但开始阶段的相对误差会很大,从相对误差图形中可看出,参数的最大相对误差会达到三位数

广

Z(k)=B()u(k)+D()e(k)

增广最小二乘法算法为:

模型结构选用如下形式:

)4)-v(k *4d 3)-v(k *3d 2)-v(k *2d 1)-v(k *1d )4(5)3()2(3)1()()4(4)3(3)2()1()(42121++++-+-+-+-+=-+-+-+-+k u b k u b k u b k u b k u b k z a k z a k z a k z a k z

增广最小二乘算法流程图如下页图所示

增广最小二乘辨识程序

clear

L=55; %4位移位寄存器产生的M序列的周期

y1=1;y2=1;y3=1;y4=0; %4个移位寄存器的输出初始值

for i=1:L;

x1=xor(y3,y4); %第一个移位寄存器的输入信号

x2=y1; %第二个移位寄存器的输入信号

x3=y2; %第三个移位寄存器的输入信号

x4=y3; %第四个移位寄存器的输入信号

y(i)=y4; %第四个移位寄存器的输出信号,M序列, 幅值"0"和"1",

if y(i)>0.5,u(i)=-1; %M序列的值为"1"时,辨识的输入信号取“-1”

else u(i)=1; %M序列的值为"0"时,辨识的输入信号取“1”

end

y1=x1;y2=x2;y3=x3;y4=x4; %为下一次的输入信号准备

end

figure(1); %画第一个图形

subplot(2,1,1); %画第一个图形的第一个子图

stem(u),grid on %画出M序列输入信号

v=randn(1,60); %产生一组60个正态分布的随机噪声

subplot(2,1,2); %画第一个图形的第二个子图

plot(v),grid on; %画出随机噪声信号

u ,v %显示输入信号和噪声信号

z=zeros(13,55); %输出采样矩阵

z(2)=0; z(1)=0;z(3)=0; z(4)=0;

%输出采样的初值

c0=[0.001 0.001 0.001 0.001 0.001 0.001 0.001 0.001 0.001 0.001 0.001 0.001 0.001]'; %直接给出被辨识参数的初始值,即一个充分小的实向量

p0=10^6*eye(13,13); %直接给出初始状态P0,即一个充分大的实数单位矩阵

E=0.00000000005; %相对误差E=0.000000005

c=[c0,zeros(13,54)]; %被辨识参数矩阵的初始值及大小

e=zeros(13,55); %相对误差的初始值及大小

for k=5:55; %开始求K

z(k)=3.808*z(k-1)-5.434*z(k-2)+3.445*z(k-3)-0.8187*z(k-4)+u(k)-3.935*u(k-1)+5.8 06*u(k-2)-3.807*u(k-3)+0.9362*u(k-4)+4.004e-010*v(k-1)+4.232e-009*v(k-2)+4.066e -009*v(k-3)+3.551e-010*v(k-4); %系统在M序列输入下的输出采样信号

h1=[-z(k-1),-z(k-2),-z(k-3),-z(k-4),u(k),u(k-1),u(k-2),u(k-3),u(k-4),v(k-1),v(k -2),v(k-3),v(k-4)]'; %为求K(k)作准备

x=h1'*p0*h1+1; x1=inv(x); k1=p0*h1*x1; %K

d1=z(k)-h1'*c0; c1=c0+k1*d1; %辨识参数c

e1=c1-c0; e2=e1./c0; %求参数误差的相对变化

e(:,k)=e2;

c0=c1; %给下一次用

c(:,k)=c1; %把递推出的辨识参数c 的列向量加入辨识参数矩阵

p1=p0-k1*k1'*[h1'*p0*h1+1]; %find p(k)

p0=p1; %给下次用

if e2<=E break; %若收敛情况满足要求,终止计算

end %判断结束

end %循环结束

c, e, %显示被辨识参数及参数收敛情况

%分离变量

a1=c(1,:); a2=c(2,:);a3=c(3,:); a4=c(4,:);b1=c(5,:); b2=c(6,:); b3=c(7,:); b4=c(8,:); b5=c(9,:); %分离出a1,a2,a3,a4,b1,b2,b3,b4,b5

d1=c(10,:); d2=c(11,:); d3=c(12,:); d4=c(13,:);%分离出d1、 d2、 d3 d4

ea1=e(1,:); ea2=e(2,:);ea3=e(3,:); ea4=e(4,:);eb1=e(5,:); eb2=e(6,:); eb3=e(7,:); eb4=e(8,:); eb5=e(9,:); %分离出a1,a2,a3,a4,b1,b2,b3,b4,b5的收敛情况

ed1=e(10,:); ed2=e(11,:); ed3=e(12,:);ed4=e(13,:); %分离出d1 、d2 、d3 d4的收敛情况

figure(2); %画第二个图形

i=1:55;plot(i,a1,'r',i,a2,':',i,a3,'r',i,a4,'k',i,b1,'y',i,b2,':',i,b3,'m',i,b4 ,':',i,b5,'g',i,d1,'k',i,d2,'g:',i,d3,'m',i,d4,'r') %画出各个被辨识参数

title('参数变化曲线') %标题

figure(3); i=1:55; %画出第三个图形

plot(i,ea1,'r',i,ea2,'k:',i,ea3,'y',i,ea4,'m',i,eb1,'g',i,eb2,'c:',i,eb3,'r',i, eb4,':',i,eb5,'g',i,ed1,'y',i,ed2,'g:',i,ed3,'k',i,ed4,'m') %画出各个参数收敛情况

title('误差曲线') %标题

参数变化曲线

相对误差曲线

仿真结果表明,递推到第十步时,参数辨识的结果基本达到稳定状态,即a 1=-3.808, a 2=5.434,

a 3=-3.445, a 4= -0.8187,

b 1=1, b 2=-3.935 b 3=5.806 b 4=-3.807 b 5=0.9362,d 1=0.0000, d 2=0.0000, d 3=0.0000,d4=0.0000。此时,辨识参数的相对变化量E ≤0.000000005。与最

小二乘递推算法相比,增广最小二乘递推算法虽然考虑了噪声模型,同样具有速度快、辨识结果精确的特点。

广义最小二乘法所用的模型是:

Z(k)=B(

)u(k)+e(k)

??

?=-+-++-+-=-+-+)

()2()1()()

()2()1()2()1()(2

1

2

1

2

1

k k e c k e c k e k e k u b k u b k z a k z a k z υ 其中我们选定模型参数:a1=1.5,a2=-0.7,b1=1,b2=0.5,c1=0,c2=0

广义最小二乘递推算法的计算步骤:

1.

给定初始条件 ???

??

??====I )0(P )0(?)

(I )0(P )()0(?e

e 2

f 0θθ为充分大的数充分小的实向量a a ε

2.

利用式)

()(z )()()(z )(1

1

k z C k u k z C k z f

f

--==,计算)(k z f 和)(k u f

3.

利用式??

?------==τ

τ

)]

(,),1(),(,),1([)(],,,,,[f

f

f

f

f

1

1

b

a

n n n k u k u n k z k z k b b a a b

a

h θ,构造)(f k h ;

4.

利用式[]

???

?

???--=+--=--+-=-)1()]()([)(1)()1()()()1()()]1(?)()()[()1(?)(?1

k k k k k k k k k k k k k z k k k f

f f f f

f f f f f f

f

f

P h K P h P h h P K h K τ

τ

τ

θθθI 递推计算)(?k θ

; 5. 利用)(?)()()(?k k k z k e

θ

τ

h -=和 τ

)](,),1(),(,),1([)(b

a

n k u k u n k z k z k ------= h 计算)(?k e

; 6. 根据τ

)](?,),1(?[)(c

e n k e

k e

k ----= h 来构造)(k e h ;

7.

利用[]??

?

??--=+--=--+-=-)1()]()([)(1)()1()()()1()()]1(?)()(?)[()1(?)(?1

k k k k k k k k k k k k k e k k k e

e e e e

e e e e e e

e

e

e

e

P h K P h P h h P K h K τ

τ

τ

θθθI

广义最小二乘法程序代码

clear %清理工作间变量

L=55; % M序列的周期

y1=1;y2=1;y3=1;y4=0; %四个移位寄存器的输出初始值

for i=1:L;%开始循环,长度为L

x1=xor(y3,y4); %第一个移位寄存器的输入是第三个与第四个移位寄存器的输出的“或”

x2=y1; %第二个移位寄存器的输入是第一个移位寄存器的输出

x3=y2; %第三个移位寄存器的输入是第二个移位寄存器的输出

x4=y3; %第四个移位寄存器的输入是第三个移位寄存器的输出

y(i)=y4; %取出第四个移位寄存器的幅值为"0"和"1"的输出信号,即M序列

if y(i)>0.5,u(i)=-1; %如果M序列的值为"1", 辨识的输入信号取“-1”

else u(i)=1; %如果M序列的值为"0", 辨识的输入信号取“1”

end %小循环结束

y1=x1;y2=x2;y3=x3;y4=x4; %为下一次的输入信号做准备

end %大循环结束,产生输入信号u

z(2)=0;z(1)=0; %设z的前四个初始值为零

for k=3:45; %循环变量从5到45

z(k)=1.5*z(k-1)-0.7*z(k-2)+1*u(k-1)+0.5*u(k-2); %输出采样信号

end

%RGLS广义最小二乘辨识

c0=[0.001 0.001 0.001 0.001]'; %直接给出被辨识参数的初始值,即一个充分小的实向量pf0=10^6*eye(4,4); %直接给出初始状态P0,即一个充分大的实数单位矩阵

ce0=[0.001 0.001]';

pe0=eye(2,2);

c=[c0,zeros(4,44)]; %被辨识参数矩阵的初始值及大小

ce=[ce0,zeros(2,44)];

e=zeros(4,45); %相对误差的初始值及大小

ee=zeros(2,45);

for k=3:45; %开始求K

zf(k)=z(k)+0*z(k-1)+0*z(k-2);

uf(k)=u(k)+0*u(k-1)+0*u(k-2);

hf1=[-zf(k-1),-zf(k-2),uf(k-1),uf(k-2)]';

x=hf1'*pf0*hf1+1; x1=inv(x); %开始求K(k)

k1=pf0*hf1*x1;%求出K的值

d1=zf(k)-hf1'*c0; c1=c0+k1*d1; %求被辨识参数c

e1=c1-c0; %求参数当前值与上一次的值的差值

e2=e1./c0; %求参数的相对变化

e(:,k)=e2; %把当前相对变化的列向量加入误差矩阵的最后一列

c0=c1; %新获得的参数作为下一次递推的旧参数

c(:,k)=c1; %把辨识参数c 列向量加入辨识参数矩阵的最后一列

pf1=pf0-k1*hf1'*pf0; %求出 p(k)的值

pf0=pf1; %给下次用

h1=[-z(k-1),-z(k-2),u(k-1),u(k-2)]';

ee(k)=z(k)-h1'*c1;

he1=[-ee(k-1),-ee(k-2)]';

x=he1'*pe0*he1+1; x1=inv(x);

k1=pe0*he1*x1;

d1=ee(k)-he1'*ce0;

ce1=ce0+k1*d1;

pe1=pe0-k1*he1'*pe0;

ce0=ce1;

ce(:,k)=ce1;

pe0=pe1;

end %大循环结束

%显示被辨识参数及其误差(收敛)情况

%分离参数

a1=c(1,:); a2=c(2,:);b1=c(3,:);b2=c(4,:); c1=ce(1,:);c2=ce(2,:);

ea1=e(1,:); ea2=e(2,:);eb1=e(3,:); eb2=e(4,:);

figure(2); %第二个图形

i=1:45; %横坐标从1到25

plot(i,a1,'r',i,a2,':',i,b1,'b',i,b2,':',i,c1,'b',i,c2,':') %画出a1,a2,b1,b2,c1,c2的各次辨识结果

title('参数变化曲线') %图形标题

figure(3); %第三个图形

i=1:45; %横坐标从1到25

plot(i,ea1,'r',i,ea2,'k:',i,eb1,'g',i,eb2,'c:') %画出a1,a2,b1,b2,的各次辨识结果的收敛情况

title('误差曲线') %图形标题

结果分析:广义最小二乘法的基本思想是基于对数据先进行一次滤波预处理,然后利用普通的最小二乘法对滤波后的数据进行辨识。辨识结果a1=1.5016,a2=-0.7010,b1=1.0120,b2=0.4986,c1=0.0040,c2=0.0027与最小二乘法递推算法相比较,可以发现它们的结果基本上是一致的。这是因为本例的仿真对象相当于

=1。这种对象利用最小二乘法已可获得无偏一致估计,但广义最小二乘法同时又能

给出噪声模型的参数估计。

系统辨识大作业1201张青

《系统辨识》大作业 学号:12051124 班级:自动化1班 姓名:张青 信息与控制工程学院自动化系 2015-07-11

第一题 模仿index2,搭建对象,由相关分析法,获得脉冲响应序列?()g k ,由? ()g k ,参照讲义, 获得系统的脉冲传递函数()G z 和传递函数()G s ;应用最小二乘辨识,获得脉冲响应序列? ()g k ;同图显示两种方法的辨识效果图;应用相关最小二乘法,拟合对象的差分方程模型;构建时变对象,用最小二乘法和带遗忘因子的最小二乘法,(可以用辨识工具箱) 辨识模型的参数,比较两种方法的辨识效果差异; 答:根据index2搭建结构框图: 相关分析法:利用结构框图得到UY 和tout 其中的U 就是题目中要求得出的M 序列,根据结构框图可知序列的周期是 1512124=-=-=n p N 。 在command window 中输入下列指令,既可以得到脉冲相应序列()g k :

aa=5;NNPP=15;ts=2; RR=ones(15)+eye(15); for i=15:-1:1 UU(16-i,:)=UY(16+i:30+i,1)'; end YY=[UY(31:45,2)]; GG=RR*UU*YY/[aa*aa*(NNPP+1)*ts]; plot(0:2:29,GG) hold on stem(0:2:29,GG,'filled') Grid;title('脉冲序列g(τ)') 最小二乘法建模的响应序列 由于是二阶水箱系统,可以假设系统的传递函数为2 21101)(s a s a s b b s G +++= ,已知)(τg ,求2110,,,a a b b

最小二乘法在系统辨识中的应用

最小二乘法在系统辨识中的应用 王文进 控制科学与控制工程学院 控制理论与控制工程专业 2009010211 摘要:在实际的工程中,经常要对一个系统建立数学模型。很多时候,要面对一个未知的系统,对于这些未知系统,我们所知道的仅仅是它们的一些输入输出数据,我们要根据这些测量的输入输出数据,建立系统的数学模型。由此诞生了系统辨识这门科学,系统辨识就是研究怎样利用对未知系统的输入输出数据建立描述系统的数学模型的科学。系统辨识在工程中的应用非常广泛,系统辨识的方法有很多种,最小二乘法是一种应用及其广泛的系统辨识方法。本文主要讲述了最小二乘估计在系统辨识中的应用。 首先,为了便于介绍,用一个最基本的单输入单输出模型来引入系统辨识中的最小二乘估计。 例如:y = ax + (1) 其中:y、x 可测,为不可测的干扰项,a未知参数。通过N 次实验,得到测量数据y k和x k ,其中k=1、2、3、…,我们所需要做的就是通过这N次实验得到的数据,来确定未知参数a 。在忽略不可测干扰项的前提下,基本的思想就是要使观测点y k和由式(1)确定的估计点y的差的平方和达到最小。用公式表达出来就是要使J最小: 确定未知参数a的具体方法就是令: J a = 0 , 导出 a 通过上面最基本的单输入单输出模型,我们对系统辨识中的最小二乘法有了初步的了解,但在实际的工程中,系统一般为多输入系统,下面就用一个实际的例子来分析。在接下来的表述中,为了便于区分,向量均用带下划线的字母表示。 水泥在凝固过程中,由于发生了一系列的化学反应,会释放出一定的热量。若水泥成分及其组成比例不同,释放的热量也会不同。 水泥凝固放热量与水泥成分的关系模型如下: y = a0+ a1x1+…+ a n x n + 其中,y为水泥凝固时的放热量(卡/克);x1~x2为水泥的几种成分。

系统辨识之经典辨识法

系统辨识作业一 学院信息科学与工程学院专业控制科学与工程 班级控制二班 姓名 学号

2018 年 11 月 系统辨识 所谓辨识就是通过测取研究对象在认为输入作用的输出响应,或正常运行时 的输入输出数据记录,加以必要的数据处理和数学计算,估计出对象的数学模型。 辨识的内容主要包括四个方面: ①实验设计; ②模型结构辨识; ③模型参数辨识; ④模型检验。 辨识的一般步骤:根据辨识目的,利用先验知识,初步确定模型结构;采集 数据;然后进行模型参数和结构辨识;最终验证获得的最终模型。 根据辨识方法所涉及的模型形式来说,辨识方法可以分为两类:一类是非参 数模型辨识方法,另一类是参数模型辨识方法。 其中,非参数模型辨识方法又称为经典的辨识方法,它主要获得的是模型是 非参数模型。在假定过程是线性的前提下,不必事先确定模型的具体结构,广泛 适用于一些复杂的过程。经典辨识方法有很多,其中包括阶跃响应法、脉冲响应法、相关分析法和普分析法等等,本次实验所采用的辨识方法为阶跃响应法和脉 冲响应法。 1.阶跃响应法 阶跃响应法是一种常用非参数模型辨识方法。常用的方法有近似法、半对数法、切线法、两点法和面积法等。本次作业采用面积法求传递函数。 1.1面积法 ① 当系统的传递函数无零点时,即系统传递函数如下: G(S) = + ?11?1+?+ 1+1 (1-1) 系统的传递函数与微分方程存在着一一对应的关系,因此,可以通过求取 微分方程的系数来辨识系统的传递函数。在求得系统的放大倍数K后,要得到无 因次阶跃响应y(t)(设τ=0),其中y(t)用下式描述: () ?1 () (1-2) 面积法原则上可以求出n为任意阶的个系数。以n为3为例。有: 3() 2() () {| →∞ =| →∞ =| →∞ = 0 (1-3) ()| →∞ = 1

最优估计大作业1.

最优估计大作业 姓名:李海宝 学号:S314040186 导师:刘胜 专业:控制科学与工程

模糊逻辑卡尔曼滤波器在智能AUV导航系统中的自适应调 整 摘要 本论文基于全球定位系统(GPS)和几个惯性导航系统(INS)传感器描述了对于自主水下航行器(AUV)应用的一种智能导航系统的执行过程。本论文建议将简单卡尔曼滤波器(SKF)和扩展卡尔曼滤波器(EKF)一前一后地用于融合INS 传感器的数据并将它们与GPS数据结合到一起。传感器噪声特性里潜在的变化会引起SKF和EKF的初始统计假定的调整,本论文针对这一问题着重突出了模糊逻辑方法的使用。当这种算法包含实际传感器噪特性的时候,SKF和EKF只能维持他们的稳定性和性能,因此我们认为这种自适应机制同SKF与EKF一样有必要。此外,在提高导航系统的可靠性融合过程期间,故障检测和信号恢复算法也需在此要讨论。本论文建议的这种算法用于使真实的实验数据生效,这些数据都是从Plymouth大学和Cranfield大学所做的一系列AUV实验(运行低成本的锤头式AUV)中获得的。 关键词:自主水下航行器;导航;传感器融合;卡尔曼滤波器;扩展卡尔曼滤波器;模糊逻辑 1.引言 对于以科学、军事、商业为目的应用,如海洋勘察、搜索未爆弹药和电缆跟踪检查,AUV的发展需要相应导航系统的发展。这样的系统提供航行器位置和姿态的数据是很有必要的。在这样的系统中对精度的要求是最重要的:错误的位置和姿态数据会导致收集数据的一个毫无意义的解释,或者甚至AUV的一个灾难性故障。 越来越多来自整个世界的研究团队正利用INS和GPS来研发组合导航系统。然而,他们的工作中几乎都没有明确几个INS传感器融合的本质要求,这些传感器用于确保用户保持精度或甚至用来防止在与GPS融合之前导航系统这部分的完全失败。例如,金赛和惠特科姆(2003)使用一个切换机制来防止INS的完全失败。虽然这个方法简单易行,但是可能不适合用于维持一个确定的精度等级。 出于多传感器数据融合和集成的目的,几种估计方法在过去就已经被使用过。为此,SKF/EKF和它们的变形在过去就已经是流行的方法,并且一直到现在都对开发算法感兴趣。然而,在设计SKF/EKF过程中,一个显著的困难经常会被

系统辨识-最小二乘法MATLAB仿真

《系统辨识》基于MATLAB的最小二乘法(一阶)的仿真 clc clear % ①白噪声的生成过程如下:e=randn(1,500); e=e/std(e); e=e-mean(e); A=0; %白噪声的均值为0 B=sqrt(0.1); %白噪声的方差为0.1 e=A+B*e; %绘制白噪声图 k=1:500; subplot(4,1,1) %画四行一列图形窗口中的第一个图形 plot(k,e,'r'); xlabel('k'), ylabel('e');title('(0,1)均匀分布的随机序列') % ②生成M序列的过程如下:X1=1;X2=0;X3=1;X4=0; %移位寄存器输入Xi初始状态(0101), Yi寄存器的各级输出 m=500; %M序列的总长度 for i=1:m Y4=X4; Y3=X3; Y2=X2; Y1=X1; X4=Y3; X3=Y2; X2=Y1; X1=xor(Y3,Y4); %异或运算 if Y4==0 U(i)=-1; else U(i)=Y4; end end M=U; u=U; %绘制M序列图? i1=i k=1:1:i1; subplot(4,1,2) %画四行一列图形窗口中的第二个图形 plot(k,U,k,U,'rx') stem(M) xlabel('k') ylabel('M序列') title('移位寄存器产生的M序列') % ③参数估计的过程如下: %绘制参数估计的相关图形 z=zeros(1,500); %定义输出观测值的长度 for k=2:500 z(k)=0.9*z(k-1)+u(k-1)+e(k);%用理想输出值作为观测值 end subplot(4,1,3) %画四行一列图形窗口中的第三个图形 i=1:1:500; %横坐标的范围从1到500,步长为1 plot(i,z) %图形的横坐标是采样时刻i,纵坐标是输出观测值Z, 图形格式为连续曲线

系统辨识作业2

系统辨识作业 学院: 专业: 姓名: 学号: 日期:

系统辨识作业: 以下图为仿真对象 图中,v(k)为服从N(0,1)正态分布的不相关随即噪声,输入信号采用循环周期Np>500的逆M 序列,幅值为1,选择辨识模型为: )()2()1()2()1()(2121k v k u b k u b k z a k z a k z +-+-=-+-+ 加权因子1)(=Λk ,数据长度L=500,初始条件取I P 610)0(= ,????????? ???=001.0001.0001.0)0(? θ 要求:(1)采用一次完成最小二乘法对系统进行辨识,给出数据u(k)和z(k), 及L H ,L Z 和θ 和)?(θ J 的值。 (2)采用递推最小二乘法进行辨识,要给出参数收敛曲线以及新息)(~k Z ,残差)(k ε,准则函数)(k J 随着递推次数K 的变化曲线。 (3)对仿真对象和辨识出的模型进行阶跃响应对比分析以检验辨识结果的实效。 1、一次完成法对系统进行辨识: 估计L T L L T L LS Z H H H 1)(?-=θ ,其中 []2121,,,b b a a LS =θ ????? ? ??????=L L Z Z Z Z 21 ????????????------------=????????? ???=)2()1()2()1()0()1()0()1()1()0()1() 0()()2()1(L u L u L z L z u u z z u u z z L h h h H L 一次完成算法对系统辨识的Matlab 程序见附录: 部分输入、输出数据如下,全部的输入输出数据用图1.1所示 输入数据u(k)=Columns 1 through 16 0 0 1 1 1 1 0 0 0 0 1 0 0 1 1 0

系统辨识大作业论文Use

中南大学 系统辨识大作业 学院:信息科学与工程学院 专业:控制科学与工程 学生姓名:龚晓辉 学号:134611066 指导老师:韩华教授 完成时间:2014年6月

基于随机逼近算法的系统辨识设计 龚晓辉1, 2 1. 中南大学信息科学与工程学院,长沙410083 2. 轨道交通安全运行控制与通信研究所, 长沙410083 E-mail: csugxh@https://www.360docs.net/doc/9b14467214.html, 摘要:本文对系统辨识的基本原理和要素进行了详细阐述,介绍和分析了系统辨识中常用的最小二乘算法,极大似然法,神经网络算法和随机逼近算法。随机逼近算法只需利用输入输出的观测来辨识系统参数,在实际中有重要运用。本文对随机逼近算法进行了详细说明。同时,针对一个三阶系统设计了KW随机逼近算法进行了参数辨识,并且和递推最小二乘法进行了对比。实验证明在实际辨识过程中两种算法各有优缺点。 关键词: 系统辨识, 随机逼近法, 递推最小二乘法 1.引言 在我们所学的线性系统理论中,都是在系统模型已知的情况来设计控制率,使系统达到稳定性,准确性和快速性的要求。然而,在实际系统中,对象的模型往往是未知的。而且,非线性是普遍存在的,线性系统只是对非线性系统的一种近似。因此,了解对象准确的模型,对设计控制器及其重要。在一些实际对象中,如导弹,化学过程,生物规律,药物反应,以及社会经济等,这些对象使用机理分析法比较困难,但是通过使用辨识技术可以建立系统精确的模型,确定最优控制率[1]。如今,系统辨识技术已经在航空航天,海洋工程,生物学等各个领域获得了广泛运用。 2.系统辨识的基本思想与常用方法 辨识的目的是为了获得对象模型。对象的模型有多种表现形式,它包括直觉模型,图表模型,数学模型,解析模型,程序模型和语言模型。这些模型之间可以相互转换。我们在建立系统模型时,需要遵循目的性,实在性,可辨识性,悭吝性的基本原则。目的性指的是建模的目的要明确,实在性指的是模型的物理概念要明确。可辨识性指的是模型结构合理,输入信号持续激励,数据量充足。悭吝性指的是被辨识参数的个数要尽量少。 辨识对象模型要遵循上面的基本原则。它是将对象看成一个黑箱。从含有噪声的输入输出数据中,按照一个准则,运用辨识理论,从一组给定的模型中,确定一个与所测系统等价的模型,是现代控制理论的一个分支。系统辨识由数据、模型类和准则三要素组成。数据是由观测实体而得,它不是唯一的,受观测时间、观测目的、观测手段等影响。模型类就是模型结构,它也不是唯一的,受辨识目的、辨识方法等影响。而准则是辨识的优化目标,用来衡量模型接近实际系统的标准。它也不是唯一的,受辨识目的、辨识方法的影响。由于存在多种数据拟合

系统辨识最小二乘参数估计matlab

最小二乘参数估计 摘要: 最小二乘的一次性完成辨识算法(也称批处理算法),他的特点是直接利用已经获得的所有(一批)观测数据进行运算处理。这种算法在使用时,占用内存大,离线辨识,观测被辨识对象获得的新数据往往是逐次补充到观测数据集合中去的。在应用一次完成算法时,如果要求在每次新增观测数据后,接着就估计出系统模型的参数,则需要每次新增数据后要重新求解矩阵方程()Z l T l l T l ΦΦΦ-∧=1θ。 最小二乘辩识方法在系统辩识领域中先应用上已相当普及,方法上相当完善,可以有效的用于系统的状态估计,参数估计以及自适应控制及其他方面。 关键词: 最小二乘(Least-squares ),系统辨识(System Identification ) 目录: 1.目的 (1) 2.设备 (1) 3引言 (1) 3.1 课题背景 (1) 4数学模型的结构辨识 (2) 5 程序 (3) 5.1 M 序列子函数 ................................................................................. 错误!未定义书签。 5.2主程序............................................................................................... 错误!未定义书签。 6实验结果: ................................................................................................................................... 3 7参考文献: ................................................................................................. 错误!未定义书签。 1.目的 1.1掌握系统辨识的理论、方法及应用 1.2熟练Matlab 下最小二乘法编程 1.3掌握M 序列产生方法 2.设备 PC 机1台(含Matlab 软件) 3引言 3.1 课题背景 最小二乘理论是有高斯(K.F.Gauss )在1795年提出:“未知量的最大可能值是这样一个数值,它使各次实际观测值和计算值之间的差值的平方乘以度量其精度的数值以后的和最小。”这就是最小二乘法的最早思想。 最小二乘辨识方法提供一个估算方法,使之能得到一个在最小方差意义上与实验数据最

系统辨识与自适应控制论文

XXXXXXXXXX 系统辨识与自适应控制课程论文 题目:自适应控制综述与应用 课程名称:系统辨识与自适应控制 院系:自动化学院 专业:自动化 班级:自动化102 姓名: XXXXXX 学号: XXXXXXXXX 课程论文成绩: 任课教师: XXXXX 2013年 11 月 15 日

自适应控制综述与应用 一.前言 对于系统辨识与自适应控制这门课,前部分主要讲了系统辨识的经典方法(阶跃响应法、频率响应法、相关分析法)与现代方法(最小二乘法、随机逼近法、极大似然法、预报误差法)。对于系统辨识,简单的说就是数学建模,建立黑箱系统的输入输出关系;而其主要分为结构辨识(n)与参数辨识(a、b)这两个任务。 由于在课上刘老师对系统辨识部分讲的比较详细,在此不再赘述,下面讨论自适应控制部分的相关内容。 对于自适应控制的概念,我觉得具备以下特点的控制系统,可以称为自适应控制系统: 1、在线进行系统结构和参数辨识或系统性能指标的度量,以便得到系统当前状态的改变情况。 2、按一定的规律确定当前的控制策略。 3、在线修改控制器的参数或可调系统的输入信号。 二.自适应控制综述 1.常规控制系统与自适应控制系统比较 (1)控制器结构不同 在传统的控制理论与控制工程中,常规控制系统的结构主要由控制器、控制对象以及反馈控制回路组成。 而自适应控制系统主要由控制器、控制对象、自适应器及反馈控制回路和自适应控制回路组成。 (2)适用的对象与条件不同 传统的控制理论与控制工程中,当对象是线性定常、并且完全已知的时候,才能进行分析和控制器设计。无论采用频域方法,还是状态空间方法,对象一定是已知的。这类方法称为基于完全模型的方法。在模型能够精确地描述实际对象时,基于完全模型的控制方法可以进行各种分析、综合,并得到可靠、精确和满意的控制效果。 然而,有一些实际被控系统的数学模型是很难事先通过机理建模或离线系统辨识来确知的,或者它们的数学模型的某些参数或结构是处于变化之中的.对于这类事先难以确定数学模型的系统,通过事先整定好控制器参数的常规控制往往难以对付。 面对上述系统特性未知或经常处于变化之中而无法完全事先确定的情况,如何设计一个满意的控制系统,使得能主动适应这些特性未知或变化的情况,这就 是自适应控制所要研究解决的问题.自适应控制的基本思想是:在控制系统的运行过程中,系统本身不断地测量被控系统的状态、性能和参数,从而“认识”或“掌握”系统当前的运行指标并与期望的指标相比较,进而作出决策,来改变控制器的结构、参数或根据自适应规律来改变控制作用,以保证系统运行在某种意义下的最优或次优状态。按这种思想建立起来的控制系统就称为自适应控制系统。

Word2003基本操作实验报告(全)

一、实验目的: 1.熟悉Word2003的工作窗口。 2.了解菜单项和各个按钮的功能。 3.掌握Word2003的启动和退出方法。 4.学会在Word2003环境下创建、编辑、存储、打开文档。 5.学会在Word2003环境下选取、复制和删除文本的方法;学会恢复和撤销命令的使用。 6.掌握Word2003的字符格式的设置。 7.掌握Word2003的段落格式的设置。 8.掌握项目符号和编号的使用。 二、实验步骤: 1.打开IE浏览器,右击复制任意网页的文字内容。 右击-新建Microusoft Word文档,输入专业班级学号 双击打开新建的文档,单击菜单栏编辑-选择性粘贴-无格式文本-确定 光标定位到正文开始,按Enter键使空出一行,在空出的一行中输入专业班级姓名作为标题。 菜单栏文件-另存为,在打开的对话框中选择D盘自己的文件夹,单击保存。 2.(1)选定标题。单击菜单栏格式-字体,打开字体对话框,在字体选项卡中设置字体为黑体,字号为小二;在文字效果选项卡中选择动态效果。单击工具栏居中按钮实现标题居中。 (2)选定第一段正文。打开字体对话框,在字体选项卡中设置中文字体为宋体字号三号字形加粗。 (3)选定第二段正文。打开字体对话框,在字体选项卡中设置字形倾斜字体颜色红色选择任意下划线类型下划线颜色蓝色。 (4)选定第三段正文。单击菜单栏格式-边框和底纹,打开边框和底纹对话框分别添加边框和底纹。打开字体对话框,在字符间距选项卡中间距选择加宽,磅值选择1.5磅。

(5)选定全部正文。单击菜单栏格式-段落,打开段落对话框。在缩进与间距选项卡中设置特殊格式为首行缩进,度量值为2个字符。 选定第一段正文。打开段落对话框,在缩进与间距选项卡中选择行距为单倍行距。 选定第二段正文。设置行距为1.5倍行距。 选定第三段正文。设置行距为多倍行距,设置值1.25 选定第四段正文。设置行距为固定值,设置值为22磅。 (6)选定第一段正文。单击工具栏格式刷图标,待光标成为刷子样式时选定第五段,完成格式刷操作。 选定第一段正文。单击菜单栏格式-首字下沉,打开首字下沉对话框,选择下沉。 (7)选定第三段正文。单击工具栏格式-分栏,打开分栏对话框,栏数填三,自行设置栏宽和间距,勾选分隔线选项。 (8)光标分别定位到第二段正文的开头和结尾处按Enter使第二段上下各空出一行。单击菜单栏格式-项目表号和符号,打开项目编号和符号对话框,在项目编号选项卡中选择菱形,单击自定义,打开项目符号列表对话框,设置符号文字位置缩进5厘米,单击字体设置字号五号字体颜色红色。 3.单击工具栏保存按钮。 4.单击编辑-查找或替换。 三,实验总结: 通过本次试验,我掌握了文字处理软件Word2003的基本操作,熟悉了Word2003的工作窗口,了解了菜单栏和各个按钮的功能以及字符段落格式的设置、项目符号和编号的使用等基本内容,试验途中因不熟悉菜单栏和各个按钮的功能而产生了一些问题,都通过网络搜索找到了答案。Word中条条大路通罗马,一个任务的完成都可以用多种方法来完成。

自适应控制大作业

自适应控制结课作业 班级: 组员: 2016年1月

目录 1 遗忘因子递推最小二乘法 (1) 1.1最小二乘理论 (1) 1.2带遗忘因子的递推最小二乘法 (1) 1.2.1白噪声与白噪声序列 (1) 1.2.2遗忘因子递推最小二乘法 (2) 2.2仿真实例 (3) 2 广义最小方差自校正控制 (5) 2.1广义最小方差自校正控制 (5) 2.2仿真实例 (6) 3 参考模型自适应控制 (9) 3.1参考模型自适应控制 (9) 3.2仿真实例 (12) 3.2.1数值积分 (12) 3.2.2仿真结果 (12) 参考文献 (16)

1 遗忘因子递推最小二乘法 1.1最小二乘理论 最小二乘最早的想法是高斯在1795年预测行星和彗星运动轨道时提出来的,“未知量的最大可能的值是这样一个数值,它使各次实际观测和计算值之间的差值的平方乘以度量其精确度的数值以后的和为最小”。这一估计方法原理简单,不需要随机变量的任何统计特性,目前已经成为动态系统辨识的主要手段。最小二乘辨识方法使其能得到一个在最小方差意义上与实验数据最好拟合的数学模型。由最小二乘法获得的估计在一定条件下有最佳的统计特性,即统计结果是无偏的、一致的和有效的。 1.2带遗忘因子的递推最小二乘法 1.2.1白噪声与白噪声序列 系统辨识中所用到的数据通常含有噪声。从工程实际出发,这种噪声往往可以视为具有理想谱密度的平稳随机过程。白噪声是一种最简单的随机过程,是由一系列不相关的随机变量组成的理想化随机过程。白噪声的数学描述如下:如果随机过程()t ξ均值为0,自相关函数为2()σδτ,即 2()()R ξτσδτ= 式中,()δτ为单位脉冲函数(亦称为Dirac 函数),即 ,0 ()0,0τδττ∞=?=? ≠?,且-()1d δττ∞ ∞ =? 则称该随机过程为白噪声,其离散形式是白噪声序列。 如果随机序列{}()V k 均值为零,且两两互不相关,即对应的相关函数为: 2,0 ()[()()]0,0v n R n E v k v k n n σ?==+=?=? 则这种随机序列称为白噪声序列。其谱密度函数为常数2(2)σπ。白噪声序列的功率在π-到π的全频段内均匀分布。 建立系统的数学模型时,如果模型结构正确,则模型参数辨识的精度将直接依赖于输入信号,因此合理选用辨识输入信号是保证能否获得理想的辨识结果的

系统辨识

作业1 如图1.1所示一阶系统,系统传递函数为G(s)=1/(0.1s+1),如果采用M序列作为输入信号进行系统辨识,采用5级移位寄存器产生M序列作为输入信号,取M序列的时钟脉冲△=15ms,a=2辨识该系统的脉冲响应。并说明取5级移位寄存器合理与否。 图1.1 一阶RC系统 答: 1.解题步骤 1.初始化参数,设置模型参数,设置产生M序列的各个关键参数; 2.利用产生伪随机二进制序列信号的函数getPRBS产生M序列,并作为 系统输入; 3.通过系统模型,产生系统输出,并将输入输出画在同一图中; 4.计算系统输入输出相关函数R xy; 5.计算系统脉冲估计值ghat和系统真实脉冲输出g 2.程序清单 主程序 clc; close all; clear all; %% Initialization R = 100e3; % system initialization resistance=100k ohm C = 1e-6; % capacitance=1uf tc = R*C; % Time Constant % generate M-sequence n=5; a=2; % Level of the PRBS

del = 15e-3; % clock pulse period N=2^n-1; % Period of M sequence total=2*N; % Generate m-sequence using the 'getPRBS' function Out = getPRBS(n,a,del,total); % Generate response y(t) of the system s = tf('s'); G = 1/(tc*s+1); tf = total*del; tim = 0:del:tf-del; y = lsim(G, Out, tim); %plot input and output of the system figure stairs(tim,Out); axis([0 1.0 -2.5 2.5]); hold on plot(tim,y,'r'); hold off % Compute Rxy(i*del) sum = 0.0; Rxy = []; iDel_vec=[]; for i=1:N tau=i-1; iDel_vec=[iDel_vec;tau*del]; for j=1:N sum=sum+sign(Out(j))*y(j+tau); end Rxy_i = (a/N)*sum; sum=0.0; Rxy = [Rxy; tau Rxy_i]; end % Compute ghat & g ind = length(Rxy); C = -Rxy(ind, 2); S = (N+1)*a^2*del/N; Rxy_iDel = Rxy(:,2); ghat=(Rxy_iDel+ C )/S; ghat(1)=2*ghat(1); g = 10*exp(-10.*iDel_vec);

Word2003操作练习题

W ord2003操作练习题 Word操作练习题 操作题例题与解析 1、将以下素材按要求排版。 (1)、将标题字体设置为“华文行楷”,字形设置为“常规”,字号设置为“小初”、选定“效果”为“空心字”且居中显示。 (2)、将“陶渊明”的字体设置为“隶书”、字号设置为“小三”,文字右对齐加双曲线边框,线型宽度应用系统默认值显示。 (3)将正文行距设置为25磅。 【素材】: 归去宋辞 ——陶渊明 归去来兮!田园将芜胡不归?既自以心为形役,奚惆怅而独悲?悟已往之不谏,知来者之可追;实迷途其未远,觉今是而昨非。舟摇摇以轻殇,风飘飘而吹衣。问征夫以前路,恨晨光之熹微。乃瞻衡宇,栽欣载奔。童仆欢迎,稚子候门。三径就荒,松菊犹存。携幼入室,有酒盈樽。引壶觞以自酌,眇庭柯以怡颜。倚南窗以寄傲,审容膝之易安。园日涉以成趣,门虽设而常关。策扶老以流憩,时翘首而遐观。云无心以出岫,鸟倦飞而知还。暑翳翳以将入,抚孤松而盘桓。 【答案与解析】具体操作步骤如下: (1)选定“归去来辞”,单击“格式”菜单中的“字体”命令,打开“字体”对话框。将“中文字体”下拉框设置为“华文行楷”,“字形”选择框设置为常规,“字号”选择框设置为“小初”,选定“效果”框中的“空心字”复选框。 (2)单击“确定”按钮,然后单击“格式”工具栏上的“居中”按钮,将文字居中显示。 (3)选定“陶渊明”,单击“格式”菜单中的“字体”命令,打开“字体”对话框,将“中文字体”设置为“隶书”,“字号”设置为“小三”。 (4)单击“确定”按钮,然后单击格式”工具栏上的“右对齐”按钮,将文字右对齐显示。 (5)再次选定“陶渊明”,单击“格式”菜单中的“边框和底纹”命令,打开“边框和底纹”对话框。在“设置”中选定“方框”;在“线型”下选择双曲线;在“应用范围”框中选择“文字”,单击“确定”按钮。 (6)选定正文,单击“格式”菜单中的“段落”命令,打开“段落”对话框。单击“行距”框右端的下拉按钮,打开下拉列表,选择“固定值”,然后将后面的“设置值”设置为25磅。 2、将以下素材按要求排版。 (1)设置第一段首字下沉。 (2)将第一段(除首字)字体设置为“宋体”,字号设置为“五号”。 (3)将第二段字体设置为“方正舒体”,字号设置为“四号”,加双横线下划线。 【素材】 归去来兮,请息交以绝游。世与我而相遗,复驾言兮焉求?悦亲戚之情话,乐琴书以消忧。农人告余以春兮,将有事乎西畴。或命巾车,或棹孤舟。既窈窕以寻壑,亦崎岖而经丘。木欣欣以向荣,泉涓涓而始流。羡万物之得时,感吾生之行休。

2003版系统辨识最小二乘法大作业

西北工业大学系统辩识大作业 题目:最小二乘法系统辨识

一、 问题重述: 用递推最小二乘法、加权最小二乘法、遗忘因子法、增广最小二乘法、广义最小二乘法、辅助变量法辨识如下模型的参数 离散化有 z^4 - 3.935 z^3 + 5.806 z^2 - 3.807 z + 0.9362 ---------------------------------------------- = z^4 - 3.808 z^3 + 5.434 z^2 - 3.445 z + 0.8187 噪声的成形滤波器 离散化有 4.004e-010 z^3 + 4.232e-009 z^2 + 4.066e-009 z + 3.551e-010 ----------------------------------------------------------------------------- = z^4 - 3.808 z^3 + 5.434 z^2 - 3.445 z + 0.8187 采样时间0.01s 要求:1.用Matlab 写出程序代码; 2.画出实际模型和辨识得到模型的误差曲线; 3.画出递推算法迭代时各辨识参数的变化曲线; 最小二乘法: 在系统辨识领域中 ,最小二乘法是一种得到广泛应用的估计方法 ,可用于动态 ,静态 , 线性 ,非线性系统。在使用最小二乘法进行参数估计时 ,为了实现实时控制 ,必须优化成参数递推算法 ,即最小二乘递推算法。这种辨识方法主要用于在线辨识。MATLAB 是一套高性能数字计算和可视化软件 ,它集成概念设计 ,算法开发 ,建模仿真 ,实时实现于一体 ,构成了一个使用方便、界面友好的用户环境 ,其强大的扩展功能为各领域的应用提供了基础。对 4324326.51411.5320120232320 Y s s s s G U s s s s ++++== ++++432 120120232320 E N W s s s s == ++++

系统辨识

系 统 辨 识 作 业 系统辨识作业: ?已知某系统为单输入/单输出系统,其测量噪声为有色噪声,分布未知。 现给出一个实验样本(如下表所示),求该系统模型。 说明: 可采用GLS ,ELS ,IV 等,要定阶,要比较仅用RLS 的计算结果 一、问题分析 在估计模型参数时需要已知模型的阶数,但是由于本系统模型阶数也是未知的,所以本系统需要先由输入/输出数据通过辩识得出系统的阶数。然后根据辨识的系统阶数再分析求解系统模型。 二、模型阶数的辨识 按照品质指标“残差平方总和”定阶,如高阶系统模型相应的系数为零,则可退化成相应的低阶系统即低阶模型可视为高阶模型的特例。理论上高阶模型的精度不低于低阶模型,但是考虑到计算机的舍入误差的影响,过高的阶数亦能引起模型精度的下降。一般说低阶模型描述粗糙,高阶模型精度高,但是代价亦大。根据逼近的观点,定阶往往是考虑多种因素的折衷。定阶一般是按照假设——检验的步骤进行的,检验过程中往往带有主观成分。 一般说来低阶模型描述粗糙,高阶模型精度高。残差平方总和J(n)是模型阶数的函数 在不同的模型阶数的假设下,参数估计得到的J(n)值亦不同。定阶的最简单办法是直接用J(n)。设模型阶数的“真值”为n 0 ,当n < n 0 时随着n 的增加,J(n)值将明显的下降;而当n ≥ n 0 时随着n 的增加,J(n)值变化将不显著。因此,由J(n)曲线随着n 的增加最后一次陡峭下降的n 值定做n 的估计值。用数理统计的检验方法,判断n 的增加使得J(n)值改善是否明显。 讨论如下 (1).当n=1时程序如下: clear u=zeros(100,1);%构造输入矩阵 z=zeros(100,1);%构造输出矩阵 u=[-0.93249 0.34935 0.76165 -0.9964 -0.38894 -0.12288 0.021565 -0.49555 -0.61624 -1.912 0.22207 -0.31231 -0.17866 -1.8356 -0.26472 1.7642 -1.0418 1.1146 -2.0856 0.8152 1.5094 -0.5822 0.61097 0.35521 2.5907 1.5843 -0.9603 -0.27341 0.39947 0.17493 -1.7451 0.8112 1.2645 1.5682 0.63959 -0.47757 0.99697 0.058774 -0.16174 -1.2928 -0.04722 0.73182 -0.19644 0.091783 -1.1908 -0.90716 0.85388 0.33836 0.74074 0.54181 0.15676 -0.50569 -0.17521 1.3255 -2.488 0.50261 -1.1533 0.36407 0.65283 -0.05983 ∑=-=N k T K k y n J 12 ) )(()(θ?

系统辨识大作业加学习心得

论文 系统辨识 姿态角控制 1.系统辨识概述 辨识、状态估计和控制理论是现代控制理论三个相互渗透的领域。辨识和状态估计离不开控制理论的支持,控制理论的应用又几乎不能没有辨识和状态估计技术。随着控制过程复杂性的提高,控制理论的应用日益广泛,但其实际应用不能脱离被控对象的数学模型。然而在大多数情况下,被控对象的数学模型是不知道的,或者在正常运行期间模型的参数可能发生变化,因此利用控制理论去解决实际问题时,首先需要建立被控对象的数学模型。系统辨识正是适应这一需要而形成的,他是现代控制理论中一个很活跃的分支。社会科学和自然科学领域已经投入相当多的人力去观察、研究有关的系统辨识问题。 系统辨识是建模的一种方法,不同的学科领域,对应着不同的数学模型。从某种意义上来说,不同学科的发展过程就是建立他的数学模型的过程。辨识问题可以归结为用一个模型来表示可观系统(或将要改造的系统)本质特征的一种演算,并用这个模型吧对客观系统的理解表示成有用的形式。当然可以刻有另外的描述,辨识有三个要素:

数据,模型类和准则。辨识就是按照一个准则在一组模型类中选择一个与数据拟合得最好的模型。总而言之,辨识的实质就是从一组模型类中选择一个模型,按照某种准则,使之能最好地拟合所关心的实际过程的静态或动态特性。 通过辨识建立数学模型的目的是估计表征系统行为的重要参数,建立一个能模仿真实系统行为的模型,用当前可测量的系统的输入和输出预测系统输出的未来演变,以及设计控制器。对系统进行分析的主要问题是根据输入时间函数和系统的特性来确定输出信号。对系统进行控制的主要问题是根据系统的特性设计控制输入,使输出满足预先规定的要求。而系统辨识所研究的问题恰好是这些问题的逆问题。通常,预先给定一个模型类{}M(即给定一类已知结构的模型),一类输入信号u和等价准则(,)JLyyM(一般情况下,J是误差函数,是过程输出y和模型输出yM的一个泛函);然后选择是误差函数J达到最小的模型,作为辨识所要求的结果。系统辨识包括两个方面:结构辨识和参数估计。在实际的辨识过程中,随着使用的方法不同,结构辨识和参数估计这两个方面并不是截然分开的,而是可以交织在一起进行的 一、控制对象 本文采用了控制不同电机转速组合的方法,对四轴旋翼蝶形飞行器进行姿态控制,使四旋翼蝶形飞行器在不同姿态下飞行时具有较好的性能。为了实现四轴旋翼蝶形飞行器的飞行控制,对飞行的控制系统进行了初步的设计,并给出了设计流程。同时利用matlab对四轴旋翼

系统辨识之最小二乘法

方法一、最小二乘一次性算法: 首先对最小二乘法的一次性辨识算法做简要介绍如下: 过程的黑箱模型如图所示: 其中u(k)和z(k)分别是过程的输入输出,)(1-z G 描述输入输出关系的模型,成为过程模型。 过程的输入输出关系可以描述成以下最小二乘格式: )()()(k n k h k z T +=θ (1) 其中z(k)为系统输出,θ是待辨识的参数,h(k)是观测数据向量,n(k) 是均值为0的随机噪声。 利用数据序列{z (k )}和{h (k )}极小化下列准则函数: ∑=-=L k T k h k z J 12])()([)(θθ (2) 使J 最小的θ的估计值^ θ,成为最小二乘估计值。 具体的对于时不变SISO 动态过程的数学模型为 )()()()()(11k n k u z B k z z A +=-- (3) 应该利用过程的输入、输出数据确定)(1-z A 和 )(1-Z B 的系数。 对于求解θ的估计值^θ,一般对模型的阶次 a n , b n 已定,且b a n n >;其次将(3)模 型写成最小二乘格式 )()()(k n k h k z T +=θ (4) 式中 ?????=------=T n n T b a b a b b b a a a n k u k u n k z k z k h ],,,,,,,[)](,),1(),(,),1([)(2121 θ (5)

L k ,,2,1 = 因此结合式(4)(5)可以得到一个线性方程组 L L L n H Z +=θ (6) 其中 ???==T L T L L n n n n L z z z z )](),2(),1([)](),2(),1([ (7) 对此可以分析得出,L H 矩阵的行数为),max(b a n n L -,列数b a n n +。 在过程的输入为2n 阶次,噪声为方差为1,均值为0的随机序列,数据长度)(b a n n L +>的情况下,取加权矩阵L Λ为正定的单位矩阵I ,可以得出: L T L L T L z H H H 1^ )(-=θ (8) 其次,利用在Matlab 中编写M 文件,实现上述算法。 此次算法的实现,采用6阶M 序作为过程黑箱的输入;噪声采用方差为1,均值为0的随机数序列;黑箱模型假设为:y(k)-1.5y(k-1)+0.7y(k-2)=2u(k-1)+0.5u(k-2),则系统输出为Z(k)-1.5Z(k-1)+0.7Z(k-2)=2U(k-1)+0.5U(k-2)+n (k );模型的阶次2,2==b a n n ;数据长度取L=200。 程序清单如下见附录:最小二乘一次性算法Matlab 程序 运行结果如下: 图1 最小二乘一次性算法参数真值与估计值 其中re 为真值,ans 为估计值^ θ 结果发现辨识出的参数与真值之间存在细微误差,这是由于系统噪声以及数据长度L 的限制引起的,最小二乘辨识法是一种无偏估计方法。 方法二、最小二乘递推算法: 最小二乘一次性算法计算量大,并且浪费存储空间,不利于在线应用,由此引出最小

系统辨识最小二乘法大作业 (2)

系统辨识大作业 最小二乘法及其相关估值方法应用 学院:自动化学院 学号: 姓名:日期:

基于最小二乘法的多种系统辨识方法研究 一、实验原理 1.最小二乘法 在系统辨识中用得最广泛的估计方法是最小二乘法(LS)。 设单输入-单输出线性定长系统的差分方程为 (5.1.1) 式中:为随机干扰;为理论上的输出值。只有通过观测才能得到,在观测过程中往往附加有随机干扰。的观测值可表示为 (5.1.2) 式中:为随机干扰。由式(5.1.2)得 (5.1.3) 将式(5.1.3)带入式(5.1.1)得 (5.1.4) 我们可能不知道的统计特性,在这种情况下,往往把看做均值为0的白噪声。 设 (5.1.5) 则式(5.1.4)可写成 (5.1.6) 在观测时也有测量误差,系统内部也可能有噪声,应当考虑它们的影响。因此假定不仅包含了的测量误差,而且包含了的测量误差和系统内部噪声。假定是不相关随机序列(实际上是相关随机序列)。 现分别测出个随机输入值,则可写成个方程,即 上述个方程可写成向量-矩阵形式 (5.1.7) 设 则式(5.1.7)可写为

(5.1.8) 式中:为维输出向量;为维噪声向量;为维参数向量;为测量矩阵。因此式(5.1.8)是一个含有个未知参数,由个方程组成的联立方程组。如果,方程数少于未知数数目,则方程组的解是不定的,不能唯一地确定参数向量。如果,方程组正好与未知数数目相等,当噪声时,就能准确地解出 (5.1.9) 如果噪声,则 (5.1.10) 从上式可以看出噪声对参数估计是有影响的,为了尽量较小噪声对估值的影响。在给定输出向量和测量矩阵的条件下求系统参数的估值,这就是系统辨识问题。可用最小二乘法来求的估值,以下讨论最小二乘法估计。 2.最小二乘法估计算法 设表示的最优估值,表示的最优估值,则有 (5.1.11) 写出式(5.1.11)的某一行,则有 (5.1.12) 设表示与之差,即 - (5.1.13)式中 成为残差。把分别代入式(5.1.13)可得残差。设 则有 (5.1.14) 最小二乘估计要求残差的平方和为最小,即按照指数函数 (5.1.15) 为最小来确定估值。求对的偏导数并令其等于0可得 (5.1.16) (5.1.17)

相关文档
最新文档