系统辨识与自适应控制实验报告

  • 格式:doc
  • 大小:768.00 KB
  • 文档页数:32

系统辨识与自适应控制实验报告

一、 实验目的

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.485

2 0.201 12 0.810 22 1.633

3 -0.787 13 -0.044 23 0.043

4 -1.589 14 0.947 24 1.326

5 -1.052 15 -1.474 25 1.706

6 0.866 16 -0.719 26 -0.340

7 1.152 17 -0.086 27 0.890

8 1.157 18 -1.099 28 1.144 9 0.626 19 1.450 29 1.177

10 0.433 20 1.151 30 -0.390

用的真实值利用查分方程求出作为测量值,为均值为0,方差为0.1,0.5的不相关随机序列。

(1) 用最小二乘法估计参数

(2) 用递推最小二乘法估计参数θ。

(3) 用辅助变量法估计参数θ。

(4) 设,用广义最小二乘法估计参数θ。

(5) 用增广矩阵法估计参数θ

详细分析和比较所获得的参数辨识结果,并说明上述参数辨识方法的优点。

三、 实验设备

Matlab软件,PC机一台。

四、实验原理

4.1 最小二乘一次完成算法

4.1.1 公式

辨识参数

LTLLTLLSyXXX1)(

上式中

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 0

0 0 0 0

0 0 0.2010 1.1470

-0.4798 0 -0.7870 0.2010

1.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.7060 0.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

0

0.4798

-1.0245

0.4439

-0.9629

1.2332

-0.5840

1.0939

-0.5840

0.5647

-0.7317

0.7784

-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.2147

-0.3208

0.6014

-0.0005

0.4302

辨识参数矩阵

c =

1.6420

0.7150

0.3900

0.3500

a1 =1.6420;a2 =0.7150;b1 =0.3900;b2 =0.3500

下图为输入、输出矩阵的根径图

图 4最小二乘法一次实现输入输出根径图

5.2 递推最小二乘法算法辨识结果

系统输出矩阵:

y =

Columns 1 through 13

0 0 0.4798 -1.0245 0.4439 -0.9629 1.2332

-0.5840 1.0939 -0.5840 0.5647 -0.7317 0.7784

Columns 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.2147

Columns 27 through 30

-0.3208 0.6014 -0.0005 0.4302

辨识参数矩阵(辨识过程执行26次即满足了误差要求):

c = Columns 1 through 13

0.0010 0 0.0010 0.5690 1.3863 1.6420

1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420

0.0010 0 0.0010 0.0010 -0.2821 0.7150

0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150

0.0010 0 0.0719 1.0162 0.5392 0.3900

0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900

0.0010 0 0.4057 0.2403 0.3239 0.3500

0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500

Columns 14 through 26

1.6420 1.6420 1.6420 1.6420 1.6420 1.6420

1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420

0.7150 0.7150 0.7150 0.7150 0.7150 0.7150

0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150

0.3900 0.3900 0.3900 0.3900 0.3900 0.3900

0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900

0.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 13

0 0 0 567.9876 1.4365 0.1844

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0 0 0 0 -283.1457 -3.5341

-0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0 0 70.9263 13.1283 -0.4694 -0.2767