第6章 脉冲响应函数的辨识
6.1辨识问题的提法
下图所示,、将作用在系统上的一切随机干扰和噪声,用一个作用于系统输出的等效随机干扰源)t (v 来代替。其中,输入信号)(u t 是过程的运行操作信号,
是可以直接观测的确定性变量;)(y u t 是过程的实际输出,是不能被观测到的;y(t)
是过程的观测输出,混有随机噪声)t (v 。
由此可以提出辨识问题:
在已知输入、输出的观测量)(u t 、y(t)以及f t (f t 可以根据脉冲响应过渡历程时间的先验知识作粗略估计)的情况下,要求估计出脉冲响应函数)(g t 。
下面介绍两种辨识脉冲响应函数的常用方法:相关分析法和最小二乘法。 6.2用相关分析法辨识脉冲响应函数
相关函数是基于一种统计的描述,是由输出信号)(y t 同其余变量之间的关系确定脉冲响应函数。假定噪声)t (v 是一个零均值平稳随机过程,并与)(u t 不相关,且过程是线性时不变的、因果性的系统,过程的未知脉冲响应函数为)(g t ,则过程的输入、输出和脉冲响应函数之间的基本关系如下:
?∞
-=0)()()(y λλλd u t g t u (6.1)
?+-=f
t t v d u t g t 0
)()()()(y λλλ (6.2)
把变量t 用τ+t 代换,得
?++-+=+f
t t v d t u g t 0)()()()(y τλλτλτ (6.3)
由于已经假设)t (v 与输入信号)(u t 不相关,因此对应的相关系数0)(uv =τR ,是可得维纳-霍夫方程。
λλλτd t R g R f
t uu )()()(0uy -=? (6.4)
若将(6.4)离散化,得到离散型Wiener-Holf 方程:
∑-=?-=1
)()()(N i uu uy t i k R i g k R (6.5)
式中t ?为)(g t 的采样周期,f t t N =?;
∑-+=-=
100
)()(1
)(M i i i uu i u k i u M
k R (6.6)
∑-+=-=
100
)()(1
)(M i i i uy i y k i u M
k R (6.7)
M 为足够大的整数,0i 为计算起点。 6.3 用最小二乘法辨识脉冲响应函数
假定对连续信号)(u t 和y(t)以t ?为周期进行采样,当t ?足够小时,)(u t 和
y(t)在采样期间可看成是常数。
在t k t ?=,并令)()(t k h t t k g ?=??时,有
)()()()(1
0t k v t i t k u t i h t k y N i ?+?-??=?∑-= (6.8)
将观测数据代入,可形成m+1线性方程组,写成矩阵方程形式:
v Uh y += (6.9)
定义误差矢量为:
Uh y v -= (6.10)
要求指标函数J 相对于h 达到最小:
)()(Uh y Uh y v v J T T --== (6.11)
其定义为一个矢量函数h ?,使得由于干扰噪声引起的误差的平方和最小。可直接得到最小二乘估计h
?: y U U U h T T 1-?)(= (6.12)
6.4 最小二乘辨识与相关分析法辨识的关系
已知脉冲响应的最小二乘估计为:
d F y U m U U m y U U U h T T T T 111-)1
1()11?--=++==()( (6.13)
假设输入输出序列{})(k u ,}{)(k y 是平稳的和遍历的随机序列,由m 个数据构成输入自相关函数)(k R uu ,输入输出的互相关函数关系为)(k R uy ,则
∑+=-+=m
i i j uu k j u j u m k R 00)()(11)( (6.14)
∑+=-+=m
i i j uy j y k j u m k R 00
)()(11)( (6.15) 其中0i 为任意正整数,表示在时间序列中相关函数计算的起点。相关分析法辨识具有最小二乘估计的性质,最小二乘的解也可以建议起离散型
Wiener-Holf 方程。
6.5激励信号的选择
选择激励信号是为了提高辨识精度和缩短辨识时间。
1 随机白噪声作激励信号 白噪声的相关函数为:
)()(2τδστ=uu R (6.16)
其中,)(τδ为Kronecke 函数,2σ为白噪声的方差。
采用白噪声作为激励信号的相关分析方法辨识过程的脉冲响应函数的结构图如下:
v(t)
?(0)g
?()g
T ?((1))g
N T -
图中t T ?=为采样周期,2σ=q 为方差。 2随机信号作为激励信号
用随机信号作为激励信号计算互相关函数)(k R uy ,理论上要用无限长时间的观测数据。为了减少时间,可用“周期性的随机信号”,即伪随机信号作为激励信号。
)(t u 在(0,T )时间内为白噪声,在此时间以外是周期函数,相关函数的计算如下:
??
+=+=∞→T
nT
n uu dt t u t u T dt t u t u nT
R 0
)()(1)()(1
lim
ττ (6.17)
伪随机信号)(t u 的自相关函数)(τuu R 不需要在无穷大时间内计算,只需在一个周期为T 内计算。类似可得:
?
?
?
+=
??
?
?
??-+=∞T
T
uy dt t y t u T d dt t u t u T
g R 0
)()(1)()(1)(τλλτλ (6.18)
用这样的信号作为激励信号,可得
+++=-=?∞
)()()()(2
20T h h d R g R u u uu uy τστσλλτλ (6.19)
若T ≥f t ,当T t ≥时,有0)(→t h ,则
)()(2
τστh R u uy = (6.20)
3随机二位式序列(PRBS )作激励信号
目前实际使用最多的是所谓伪随机二位式序列(PRBS)。其中,最大长度二位式序列,简称“M 序列”。由自相关函数定义,可以计算出“M ”序列的自相关函数:
???
?????-<≤?-<< ?
??-????
+??-=.)1(,,,112
2t N t N a
t t N N t a R M M M M uu τττ (6.21) 可以看出,如果0→?t ,且∞→M N 时,“M 序列”的自相关函数就接近于伪随机白噪声信号的自相关系数。
6.6 用伪随机二位式序列(PRBS )辨识脉冲响应函数
假设输入、输出信号的采样周期与“M 序列”的时钟脉冲同步,即t ?相同,且令1=?t 。取“M 序列”的长度M N 为
N N M = (6.22)
根据周期函数的相关函数计算公式和离散化相关函数计算公式,并取起点时刻为k i =0,即可得到
∑-+=-=
1)()(1
)(M N k k
i M
uu i u k i u N k R (6.23)
∑-+=-=
1)()(1
)(M N k k
i M
uy i y k i u N k R (6.24)
计算“序列”的自相关函数
??
?
??=≠-===,...,
1,0;,
,...,1,0;,)(2
2i iN k N a i iN k a k R M M M uu (6.25)
式中a 为“M 序列”的幅值。
由于??????
???
??????????
?
---
---=1...
111...111...112M
M
M M M M N N N N N N a φ, (6.26) 并由N N M =,可得到脉冲响应序列h
?的计算公式: ?????
?
?
??
?
????-????????????+==)1(...)1()0(2...111...211 (12)
)1(?2
1-N R R R N a N h uy uy
uy
γφ (6.27) 令[])()(i u sign a i u ?=,则可使互相关函数的计算更为简便,得到:
[])1,...,1,0()
()()(1
-=+=
∑-=N k k i y i u sign N
a
k R N i uy (6.28)
关于“M 序列”参数的确定可参考如下三个因素: 时钟脉冲周期;序列的长度;幅值。