系统辩识大作业
)(
ky
一. 设 SISO 系统差分方程为
)1
辨 识 参 数 向 量 为 = 1[a
data1.txt—data3.txt。 )(k 为噪声方差各异的白噪声或有色噪声。
试求解:
(
kya
2
1b
2a
)2
2b
(
kya
1
)2
)1
(
kub
1
] T , 输 入 输 出 数 据 详 见 数 据 文 件
(
kub
2
)(
k
1)用最小二乘及递推最小二乘法估计;
2)用遗忘因子递推最小二乘算法估计;
3)用递推增广最小二乘法估计;
4)用极大似然法估计;
5)分析噪声 )(k 特性;
二.以上题的结果为例,进行:
1.分析比较各种方法估计的精度;
2.分析其计算量;
3.分析噪声方差的影响;
4.比较白噪声和有色噪声对辨识的影响。
三.系统模型阶次的辨识:
1. 用二种方法确定系统的阶次并辨识;
2. 分析噪声对定阶的影响;
3. 比较所用二种方法的优劣及有效性;
注:第 16 周提交大作业报告。
1、最小二乘参数辨识
1.1 最小二乘法的概念与应用
对工程实践中测得的数据进行理论分析,用恰当的函数去模拟数据原型是
一类十分重要的问题,最常用的逼近原则是让实测数据和估计数据之间的距离
平方和最小,这即是最小二乘法。最小二乘法是一种经典的数据处理方法。在
系统辨识领域中 ,最小二乘法是一种得到广泛应用的估计方法 ,可用于动态系
统 ,静态系统 , 线性系统 ,非线性系统。可用于离线估计,也可用于在线估
计。这种辨识方法主要用于在线辨识。在随机的环境下,利用最小二乘法时,
并不要求观测数据提供其概率统计方面的信息,而其估计结果,却有相当好的
统计特性。
MATLAB 是一套高性能数字计算和可视化软件 ,它集成概念设计 ,算法开
发 ,建模仿真 ,实时实现于一体 ,构成了一个使用方便、界面友好的用户环
境 ,其强大的扩展功能为各领域的应用提供了基础。对于比较复杂的生产过
程 ,由于过程的输入输出信号一般总是可以测量的 ,而且过程的动态特性必然
表现在这些输入输出数据中 ,那么就可以利用输入输出数据所提供的信息来建
立过程的数学模型。这种建模方法就称为系统辨识。把辨识建模称作“黑箱建
模”。
1.2 最小二乘法系统辨识结构
本文把待辨识的过程看作“黑箱”。只考虑过程的输入输出特性,而不强调
过程的内部机理。
图中,输入 u(k)和输出 y(k)是可以观测的;G(z−1)是系统模型,用来描
述系统的输入输出特性; ( )k 是系统随机扰动。其中,
图 1-1 随机模型基本结构
1
1
(
A z
(
B z
) 1
a z
1
)
b
b z
0
1
1
a z
2
1
b z
2
2
a z
na
2
b z
nb
na
nb
(
b
0
0)
(1.1)
1
(
C z
) 1
1
c z
1
c z
2
2
n
a
c z
n
a
随机模型方程为:
) ( )
y k
(
A z
1
d
(
z B z
1
) ( )
(
u k C z
1
) ( )
k
(1.2)
根据式 2.2 中各元素取值情况的不同,可以分为好几类,
AR 模型、MA 模型、ARMA 模型、CAR 模型等。其中 CAR 模型比较常见,其
中
C z ,也称为扩展自回归模型。
) 1
(
1
1.3 系统辨识的基本原理
这里以 SISO 系统的 CAR 模型为例,阐述系统参数辨识的基本原理。
考虑如下系统模型:
) ( )
u k
将式(1.3)转化为如下最小二乘形式:
(
z B z
) ( )
y k
(
A z
d
1
1
( )
y k
式中
( )
k
( )
k
( )
k
(1.3)
(1.4)
( )
k
[
(
y k
1),
,
(
y k n
a
), (
u k d
),
, (
u k d n
b
]
(1.5)
a
1
[
,
,
a
na
,
b
0
,
,
b
nb
]
(1.6)
系统辨识的目的是根据系统提供的测量信息(输入输出数据),在某种准则意义
下,即残差均方和最小的情况下估计出模型的未知参数。
下面给出批处理最小二乘法的估计原理。
1,2,
,设估计参数向量为
,
,则对于
L
现有 L 组输入输出数据
第 k 次观测的估计输出为
( ), ( ),
y k u k k
( )
y k
k
( )
式中,
a
1
[
,
,
a b
0
n
,
,
,
b
n
]b
。
对象实际输出与估计输出之差,即残差 ( )k 为:
( )
k
( )
y k
( )
y k
( )
y k
对于第 L 次观测,取如下性能指标:
( )
k
J
L
k
1
2
( )
k
L
k
1
[ ( )
y k
2
]
( )
k
E E
(
Y
) (
Y
)
Y Y
Y
)
2(
T
(1.7)
(1.8)
(1.9)
式中, [ (1),
Y
y
y
(2),
( )]
y L
, [
(1),
(2),
,
( )]L
。
参数的最小二乘估计,就是使目标函数(1.9)取极小值的参数
。对 J 求
的一阶导,并令其为 0,即:
2
2
Y
J
0
(1.10)
如果满秩,求解方程(1.10)得
( )
e k
(
C z
1
) ( )
k
( )
k
(
c
1
k
1)
(
c
2
k
2)
(
c
cn
k n
c
)
(1.11)
1.4 系统辨识的方法
1、批处理最小二乘法
批处理最小二乘法是改进型最小二乘法的基础,,直接根据式(1.11)编程
即可。代码见附录。
2、递推最小二乘法
在具体应用批处理最小二乘法时,由于每次处理的数据量较大,不仅占用
内存大,还不能用于参数在线实时估计。递推最小二乘法可以满足对象 参数能
够在线实时估计。递推最小二乘法的基本思想可以概括为:
新的估计值 ( )k
=旧的估计值 (
k
+修正项
1)
代码见附录。
3、遗忘因子递推最小二乘法
递推最小二乘法比较实用于定常未知参数系统,但在一般自适应控制问题中,
有意义的是考虑参数时变系统。特别对英语慢时变参数问题,递推最小二乘法
有其局限性,它无法跟踪参数的变化,为了解决这种问题,可以运用带遗忘因
子的最小二乘法。其中性能指标变为:
1
1 ).
式中,为遗忘因子( 0
遗忘因子必须选择接近于 1 的正数,通常不小于 0.9;如果系统是线性的,应
选 0.95
1 ,当=1 时,遗忘因子算法就退化为普通的递推最小二乘法。代
码见附录。
4、递推增广最小二乘法
该系统采用如下 CARMA 模型
( )
e k
(
C z
1
) ( )
k
( )
k
(
c
1
k
1)
(
c
2
k
2)
(1.12)
与前面介绍的三种最小二乘法比较,此处
即
C z ,而噪声 ( )
) 1
e k 为有色噪声,
1
(
( )
e k
(
C z
1
) ( )
k
( )
k
(
c
1
k
1)
(
c
2
k
2)
(
c
cn
k n
c
)
(1.13)
代码见附录。
5、极大似然参数估计法
极大似然估计法是一种不同于最小二乘法的传统估计法,它与最小二乘法的基
本思想完全不同,它需要构造一个以观测数据和未知参数为自变量的似然函数,
使这个函数达到极大的参数值,就是模型的参数估计值。通常取噪声的概率密
度函数作为似然函数,所以极大似然法需要已知噪声的分布。在最简单的情况
下,可假定噪声具有正态分布。极大似然法具有许多优点,如参数估计具有良
好的渐进性质,但计算量比较大。
代码见附录。
这里我们用五种方法对 data1 中的数据进行辨识得到的参数分别为:
LS
1.4855
0.7869
0.4837
0.1982
_____
_____
a1
a2
b1
b2
c1
c2
RLS
1.4855
0.7869
0.4837
0.1982
_____
_____
FFRLS
1.4711
0.7863
0.4778
0.1989
0.0230
0.0993
表 1-1
RELS
1.5277
0.8341
0.4919
0.1890
_____
_____
RML
1.4463
0.7640
0.4688
0.1939
-0.0106
0.1076
注:”___”代表没有参数.
由表 1-1 可得,四种方法求得的参数基本相同。其中递推增广最小二乘法和极
大似然估计法中默认 ( )
e k 为:
( )
e k
(
C z
1
) ( )
k
( )
k
(
c
1
k
1)
(
c
2
k
2)
(1.14)
RLS、FFRLS、RELS、RML 的参数波形变化情况如下所示
图 1-2
RLS 算法
图 1-3
FFRLS 算法
图 1-4
RELS 算法
图 1-5
RML 算法