自适应波束成形算法LMS、RLS、VSSLMS
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
传统的通信系统中,基站大线通常是全向天线,此时,基站在向某一个用户发射或接收
信号时,不仅会造成发射功率的浪费,还会对处于其他方位的用户产生干扰。
然而,虽然阵列天线的方向图是全向的,但是通过一定技术对阵列的输出进行适当的加
权后,可以使阵列天线对特定的一个或多个空间目标产生方向性波束,即"波束成形" ,且
波束的方向性可控。
波束成形技术可以使发射和接收信号的波束指向所需要用户,提高频谱
利用率,降低干扰。
传统的波束成形算法通常是根据用户信号波达方向(DOA)的估计值构造阵列天线的加权向量,且用户信号DOA在一定时间内不发生改变。
然而,在移动通信系统中,用户的空间位置是时变的,此时,波束成形权向量需要根据用户当前位置进行实时更新。
自适应波束成形算法可以满足上述要求。
本毕业设计将对阵列信号处理中的波束成形技术进行研究,重点研究自适应波束成形技
术。
要求理解掌握波束成形的基本原理,掌握几种典型的自适应波束成形算法,熟练使用MATLAB
仿真软件,并使用MA TLAB仿真软件对所研究的算法进行仿真和分析,评估算法性能。
(一)波束成形:
波束成形,源于自适应大线的一个概念。
接收端的信号处理,可以通过对多天线阵元接
收到的各路信号进行加权合成,形成所需的理想信号。
从天线方向图(pattern)视角来看,这样做相当于形成了规定指向上的波束。
例如,将原来全方位的接收方向图转换成了有零点、
有最大指向的波瓣方向图。
同样原理也适用用于发射端。
对天线阵元馈电进行幅度和相位调
整,可形成所需形状的方向图。
波束成形技术属于阵列信号处理的主要问题:使阵列方向图的主瓣指向所需的方向。
在阵列信号处理的范畴内,波束形成就是从传感器阵列重构源信号。
虽然阵列天线的方
向图是全方向的,但阵列的输出经过加权求和后,却可以被调整到阵列接收的方向增益聚集
在一个方向上,相当于形成了一个“波束”。
波束形成技术的基本思想是:通过将各阵元输出进行加权求和,在一时间内将大线阵列
波束“导向”到一个方向上,对期望信号得到最大输出功率的导向位置即给出波达方向估计。
“导向”作用是通过调整加权系数完成的。
对于不同的权向量,上式对来自不同方向的
电波便有不同的响应,从而形成不同方向的空间波束。
波束成形的工作过程是怎样的?以热点为例,基站给客户端周期性发送声信号,客户端
将信道信息反馈给基站,于是基站可根据信道状态发送导向数据包给客户端。
高速的数据计
算处理,给出了复形的指示,客户端方向上的增益得以加强,方向图随之整型,相应方向的传输距离也有所增加。
AP如果用4组发射大线4x4三组空间流,便能在多天线得到的增益基础上,获取较大的空间分集增益。
(资料搜集自:百度百科、通信信号处理第十一章)
(二)波束形成器:
1. Bartlett波束形成器
Bartlett波束形成器是经典Fourier分析,对传感器阵列数据的一种自然推广。
思想:使
波束形成的输出功率相对于某个输入信号为最大。
当存在多个信源时,波束形成的问题等价
于加性噪声中的谐波频率估计。
设我们希望来自方向。
的输出功率为最大,则该最大化的问题可表示为:
W H R xx W=argmaxE{W H X(n)X H(n)W}]
=arg max[W H E{X(n) X H (n)}W]
=argmax[Ed(t)|2|W H af )|2。
2||W『]
2
在白喋K万差性一定的情况下,权向量的范数||W||不影响输出信噪比。
故取||W||=1 , 用Lagrange乘子法容易求得上述最大化问题的解为:
a(” W BF—I /
,a ("a(u)
加权向量W BF可以解释为一空间滤波器,它与照射到阵列上的信号匹配。
直观上,阵
列加权使该信号在各阵元上产生的延退(还可能是衰减)均衡,以便使它们各自的贡献最大
限度的综合在一起。
空间波束:BF^) =WF a(”
特点:最优权和所需信号匹配,而无法抑制干扰。
分辨能力i取决于阵列的几何结构和信噪比。
2. Capon波束形成器
Bartlett波束形成器不是自适应的,不能适应不同的干扰环境。
为了针对不同的环境做自适应处
理,波束形成器必须自动对消干扰信号,具有自适应功能。
Capon波束形成器的数学描述为:
H
Min W H RW
st W H a"1
思想:使来自非。
方向的任何干扰所贡献的功率为最小,但又能保持在观测方向。
上的信号功率不变。
最优权矢量可以用Lagrange乘子法求解。
R」a(u) a H O)R-
W CAP =
1aO)
空间波束:
BF(" = w CAp a("
特点:自适应干扰对消。
对消干扰数受阵列几何结构的限制。
分辨能力取决于阵列几何结构和信噪比。
(三)自适应波束形成算法
自适应波束形成是智能大线的关键技术,其核心是通过一些自适应波束形成算法获得大
线阵列的最佳权重,并最终最后调整主瓣专注于所需信号的到达方向,以及抑制干扰信号,通过这些方式,天线可以有效接收所需信号。
在实际应用中,收敛性,复杂性和鲁棒性的速度是在选择自适应波束形成算法时要考虑的主要因素。
智能天线是一种基于自适应天线原理的移动通信新技术,它结合了自适应天线技术的优点,利用大线阵列对波束的汇成和指向的控制,产生多个独立的波束,可以自适应的调整其
波束图以跟踪信号的变化。
接受时,每个阵元的输入被自适应性的加权调整,并与其他的信号相加已达到从混合的
接收信号中解调出期望得到的信号并抑制干扰信号的目的,它对干扰信号调零,以减少或是
抵消干扰信号。
发射时,根据从接收信号获知的用户设备信号方位,通过自适应性的调整每
个辐射阵元输出的幅度和相位,使得他们的输出在空间叠加,产生指向目标用户设备的赋形
波束,智能大线的特点是能够以较低的代价换取大线的覆盖范围、系统容量、业务质量、抗阻塞和抗掉话等性能的提高。
常用的自适应波束成形算法有以下几种:取样协方差矩阵的直接求逆
LM 撮小均方算法、RL 瓣推最小二乘算法(基于参考信号的自适应波束形成的算法 )
SC 赫准CAPO 陂束形成算法(基于波达角估计的自适应波束形成的算法) Buss gang 自适应均衡算法
clear,clc
m=8; % sensors n=2; % sources theta=[0 20]; % in angle d=0.3; % 1/2 lambada N=500; % samples
L=100;
% resolution in [-90' 90']
Meann=0; % mean of noise
% variance of noise
DMI 算法
varn=1;
% signal-to-noise ratio
SNR=10;
INR=10; % interference-to-noise ratio
rvar1=sqrt(varn) * 10A(SNR/20); % variance of signal
rvar2=sqrt(varn) * 10A(INR/20); % variance of interference
% generate the source signals
s=[rvar1*exp(j*2*pi*50*0.001*[0:N-1])
rvar2*exp(j*2*pi*(100*0.001*[0:N-1]+rand))];
% generate the A matrix
A=exp(-j*2*pi*d*[0:m-1].'*sin(theta*pi/180));
% generate the noise component
e=sqrt(varn/2)*(randn(m,N)+j*randn(m,N));
% generate the ULA data
Y=A*s+e;
% initialize weight matrix and associated parameters for LMS predictor de =s(1,:);
mu=1e-3;
w = zeros(m, 1);
for k = 1:N
% predict next sample and error
y(k) = w'*Y(:, k);
e(k) = de(k) - y(k);
% adapt weight matrix and step size
w = w + mu * Y(:,k)*conj(e(k));
end
% beamforming using the LMS method
beam=zeros(1,L);
for i = 1 : L
a=exp(-j*2*pi*d*[0:m-1].'*sin(-pi/2 + pi*(i-1)/L));
beam(i)=20*log10(abs(w'*a));
end
% plotting command followed
figure
angle=-90:180/L:(90-180/L);
plot(angle,beam);
xlabel('方向角(度)');
ylabel('幅度响应/ (dB)');
figure
for k = 1:N
en(k)=(abs(e(k))).A2;
end
semilogy(en);
xlabel('迭代次数n');
ylabel('eA{2}(n)');
波束形成器的本质是一个乘加器。
波束形成器在时间“时的输出火M)是此时M个阵元输出数据的线性组合
川)="*(〃) (3-1)
式中,呼=[叫(。
),约(。
),・・比以。
)]'称为加权向量。
加权向量的每一个元素都是复数,其模表示对阵元输出信号的幅度加权,其相位角表示对阵元输出信号的相位延退。
波束形成器的输出功率为
P"* =划川)|2]="E[X(〃)X(3-2)式中,化=初*(")*'(〃)]为输入信号自相关矩阵。
如何寻找到合适的加权矢量,使输出信号贝幻尽可能的接近于有用信号s(幻,并尽可能的去除干扰信号,是波束形成算法要完成的主要任务。
估计误差
e(k)=d(k)-y(k)(2.14)心幻是参考信号,我们假设有用信号s(幻高度相关旦与干扰信号k(k),…,临侦)不相关。
MMSE准则就是要使估计误差的均方值MSE最小化,故代价函数为
</(w) = E [")「] = E [|川)- w 侦"'
=E加侬)门一2w. + "R、、w (2.15) 其中
r = E[d(k)x(k)]
(2.16)
R xx=E[x(k)x(k)H](2.17)由(2.15)式看出,代价函数J(H,)是权向量H,的二次函数。
令八物的最小值时所取的对应权向量就是最佳权向量。
为使代价函数最小,对其关于w求导,并令其为零,得
= 2R vx w-2r = 0(2.18)化解(2.18)得到MMSE准则下的最佳权向量为
5 = (219) 3. 3. 1最小均方(LMS)算法
这种方法不需要求相关矩阵,更不涉及矩阵求逆,其基本思路与梯度下降法是一致的,不同之处仅在于计算中用梯度向量的估计来代替了真实梯度V*传),这就是应用非常广泛的LMS算法。
LMS算法是由梯度下降法导出的,是对梯度下降法的近似简化,更符合实际应用。
因为吝"即)],所以有
V/(幻=(幻]=2E[e(幻(幻] (3. 1)
dw dw
其中
e(k)-d(k)-y(k) = d(k)-"x(k)(3. 2) 所以
—e(k) = -x(k)(3. 3)
dw
式3.3代入式3.1,可得到梯度向量的表达式为
V 承幻=-2E 杞(A)x(幻] (3.4) 如果用平方误差。
2(幻代替均方误差E[e2(k)],则可得到梯度向量的近似表达式为
^J(k)^-2e(k)x(k)(3.5) 式3.5中V w§(k)表示梯度向量的估计,实际上它是单个平方误差的序列的梯度,现
用它弋替多个平方误差序列统计平均的梯度V”.专0),这就是LMS算法最核心的思想。
可以看出,。
“专(幻是V*(幻的无偏估计,因为寸*化)的均值等于真值Vw研幻。
因为梯度的方向是专增K最快的方向,所以负梯度方向就是占减少最快的方向。
这样,自然应采用如下的递推公式来调整*以寻求其最优解:
w(k +1) . (3. 6) 将梯度向量的估计式3.5代入式3.6可得到
w(k +1)- w(k) + 2fie(k)x(k)(3. 7) 式3.7就是LMS算法的迭代公式。
也就是说,LMS算法实际上是在每次迭代中使用很粗略的估计值来代替精确梯度。
不难想象,权系数的调整路径不可能准确地沿着理想的最速下降的路径,因而权系数的调整过程是有噪声的,或者说权向最哧)不再是确定性函数而变成了随机变量,在迭代过程中存在随机波动。
所以,LMS算法也称为随机梯度法或者噪声梯度法。
LMS算法收敛的条件与最陡下降法相同,为Ov“v—L。
“max
避免更阵求逆的一种方法是最陡梯度法,最陡梯度法是一种递归的算法,权值的计算是一步一
步迭代进行的。
最陡下降法下的迭代公式可以写为
w(k + 1) = (3.5)
讨(左 + 1)=访(幻+ //(R vv w -r)=讨(幻+ 〃x(幻[d侬)双局]
=访(幻+"«幻、(幻(3.6)“为正常数的收敛因子,必须选择合适的"值算法的收敛性才能得到保证。
为满足LMS 算法的收敛性及稳定性,〃必须满足以下条件:
0 <//< 1/A max(3.7)
其中人g为x(k)的白相关矩阵的特征值最大值。
文献⑵)详细介绍了〃值更用阳㈤表示时刻〃的权向量,根据最陡梯度法,则时刻〃+ 1时的权向量可用下面简单的迭代关系式求得
W 伽 +1) = W(n) + (3-16)
其中,〃为控制收敛速度和稳定性的常数因子,通常称为收敛步长。
从式(3-4),有
V(g(〃)) =-2么+ 2R/(”)(3-17) 将式(3-17)代入式(3-16)可得
V(〃 + l) =阳(〃) + 〃[、-%*(〃)],以= 0,12……(3-18)
式(3-17)也可以用另一种表达形式
▽(沦=
=一2虹X(n)d.(町-呼(性)]
=-2£[%(«){rf(/i) - X«)r ] (3 -19)
=_2时小啊•
式(3-16)也就可以表示成
W(n + 1) = ff(rt) + 国*(町广(打)] (3-20)为了估计梯度矢量▽(#仞)),我们可以用瞬时的估计来替代计算式(3-19)中的期望值
V(^(n)) = -2Z(«X(«) (3-21)
将这个瞬时估计的梯度矢量代入式(3-16),可以得到
/(“ +1)=附S) + fiX(n)e 5) (3-22)
于是,就可以得到LMS算法的描述
川)*(小@)
£.) = d(n)-y(n)
*(〃 + 1) - F(n)+以(月)/ (n)
3. 3. 3递归最小二乘(RLS)算法
数据域方法主要利用最小二乘算法及其变形来实现,
RLS算法是基于使每一快拍的阵列输出误差平方和最小的准贝!I,即最小二乘〈LS)准则。
它的一个重要特点是利用了从算法初始化后得到的所有阵列数据信息’
RLS算法的原则就是使下式最小化
*)=支⑴ I』(3-26)
式中,4(0<文<1)为遗忘因子,其作用是消弱旧的快拍数据对当前估计的影响&
高斯牛顿算法(RLS):引入遗忘因子的作用是让离n时刻较近的误差有较大的权重,距离较远的
拥有降低的权重,确保以前观测到的数据被渐渐遗忘”,从而使滤波器工作在一个平■稳状态下。
n
J(n) = S 欢 I
I 2
代价公式:
W{n) = W{n -1) + g 伽)[d‘亿)-W H {n - 1)X(H )] (328) P(rt) = ;T“P (性—1) - q(n)X H (n)P(/i 一 1)}
(3-29)
PS)的初始值可以设为:
,
尸(0) = 4七
(3-30)
其中,/是MxM 的单位矩阵,3是一个很小的正常量,
RLS 算法在收敛速度和特征值散布度的关系上具有与DM1算 法一样的不敏感性*与DMI
算法的主要差别是矩阵求逆计算方法 的不同,与LMS 算法相比,RLS 算法能够实现更好的收敛速度和 计算复杂性之间的折中。
当信噪比较高时「RLS 算法收敛速度较 LMS 算法快一个数量级,文献[9]进一步研究了 RLS 算法在收敛性 能和数值稳定性之间的折中问题,
3.2 递归最小二乘算法(Recursive Least Square? RLS)
RLS 是通过最小二乘准则来更新权矢拈,目的是通过调整权向吊:使阵列输出 误差的平方
利最小化,这U LMS 算法不同,LMS 算法是使误差平方的统计平均最 小化口 RLS 算法的代价函数为
八部)二(3,8) i-]
dw
亳伏)*M) = F(k)
39)
.< ;:
其中瓦(Jt) = £ a"" x(i)x H ,汕)=髯如),a 是 0<cr<l 且接近 Mi 于l 的正常数,用以减小前一快拍数据对当前估计数据的影响, 七 土口口"我— Wg = R% 与成wiener 滤波器的形式: 叩
输入:u(i)
n 下面是算法推导:R(n 广匚n Tu(i)u H (i)
1=0
(泊=一 RPSMOO
机)一1+(用-1MOO
(3-27)
n-1
=* £
n l-1
u(i)u H (i) u H
(n)* u(n) i =0
=* R(n-1) u H
(n)* u(n)
A = R(n )
B —1 = R(n-1)
C = u(n)
D = 1 A 二 B 1 CD 1C H
A 」=
B - BC(D
C H
BC)-1
C H
B
R 』(n)= 土十顼-气物一加㈤心讷
一1"1)
P(n)=」[P(n -1)- k(n)u H (n)P(n-1)]
、 P(n-1)u(n)
k(n
广
一为增益向量,乂:
u (n)P(n-1)u(n)
(n)
R -1
(^1^ (n)
P(n)」(n) = ------------ --- ----- — = -------------
'〔 ' '
\— = k(n)
R(n-1) 」(n) "(n)
」(n) R —1(n-1)」H (n)
n
r(n 广了 u(i)d (i) = r(n -1) d (n)u(n) i =0 P(n 广 T[P(n T)- k(n)u H (n)P(nT)]
所以:
1,
w(n) = R (n)r(n 广 P(n)r(n)
_
-1 *
_
=P(n-1)r(n-1) 1d (n)[P(n - 1)u(n)
-k(n)u H (n)P(n - 1)u(n)] - k(n)u H
(n)P(n - 1)r(n - 1) * =w(n -1) d (n)k(n) - k(n)u (n)w(n -1) 化简得:w(n) = w(n-1) + k(n)e *(n) (*)
设: 则:
令:
则:
其中:
1
*u H
(n)R*(n - 1)u(n)
P(n) = R 」(n) R( n )
R (-n 1) x H
( n ) x
H ,
式中:e(n)=d(n)-w (nT)u(n)先验误差
总结RLS算法的步骤。
1、初始化:w(0)=0, R(0)= b I,
2、更新:对丁n=1、2 • •-计算:
滤波:y(n) =w H(n -1)u(n)
估计误差:e(n) =d(n) - y(n)
更新k(n)= H P(T U⑴
■ u (n)P(n - 1)u(n)
更新权向重:w(n) =w(n -1) k(n)e (n)
1
更新P(n) =—[P(n —1)—k(n)u H(n) P(n-1)]
希望相关矩阵初始值R(0)在R(n)中占很小的比重,因此设R(0)=b I。
b一般取
0.001。
1、RLS算法对非平■稳信号的适应性好。
2、RLS算法收敛速度快,估计精度高稳定性好。
3、遗忘因子越大,越不易遗忘,效果越好。
4、RLS算法计算复杂度高,不利丁实时性处理。
3.3 RLS算法问
前面讨论了基于MMSE (Minimum Mean Square Error,最小均方误差)准则的自适应算一LMS算法■此类算法都有收敛速度慢,对非平稳信号的话成性较差的缺点。
为克服上述缺点,可以采用LS(Least Square,最小二乘)准则,在每个时刻,对所有已输入信号重估计误差•并使各误差的平方和最小。
LS准则是现有约束条件下利用了最多可用信息的准则,是在一定意义上最有效,信号非平稳的适应性最好的推则口理论和实践表明,最小二乘估计的性能优于基于MMSE的准则.
最小二乘滤波的基本算法是递归最小一乘算法.它是严格以最小二乘准则为依据的算法,它的主要优点是收敛速度快,其主要缺点是每次迭代需要的运算量很大,对于N 阶横向滤波器,其计算量在N'数量级,
RLS算法的具体迭代步骤如下
初始化
此循环结束,将4加1进入下一•次循环。
将式3.19进行变换可以得到
w(k) = w(k ・ 1) + R \k)x(k)e(k)
(3.21)
将式3.21与LMS 算法的迭代公式式3.7相对照可以看出,RLS 算法与LMS 算法的 差异在于,前者权向量校正项中出现了因子R-\k) o 由于R(*)是自相关矩阵 E[x(k)x H (k)]的一种度钛,并且是随k 变化的方阵,这表明在不同的时刻,w(A)每元 素的调整量均随新进的数据以不同的补偿因子作调整,而不是像LMS 算法那样统一地 用因子“来调整,这体现了调整的精细性及新数据利用的充分性。
也就是说,因子R"(幻 的出现使得RLS 算法具有快速收敛的性质。
付出的代价是,算法的运算量在AT 数量级, 这是RLS 算法的主要负担,而
LMS 算法的运算量只在M 数量级,M 为天线阵元数目。
循环迭代
(1)取输入的d«), x(k)
(2) 由下式计算估计误差
e (中 _ 1) = d(k) _ x H (k)w(k -1)
(3. 17)
⑶ 计算增益向量
件-1)跻)
(3. 18)
' P + x 〃(A)R-|(k_l)jr(A)
(4) 计算权向最
w(k) = w(k -X)+G(k)e(k\k -1)
(3. 19)
(5)计算 T(n)
T(k) =
1) -G (幻泌(QTQ -1)]
p
(3.20)
r (o )■ i 一 0 w i )
(3. 16)
我们利用RLS 算法调整天线阵的加权向量#=[吗,,“,叫^](5/是天线阵的阵元), 使得天线阵列的输出接近参考信号.此处我们考虑实值调制系统,如BPSK 调制或ASK 调制「故参考信号和天线阵列的输出信号都是实数* RLS 算法具体的迭代式如下、
y(k) = Rc[x H (k)w(k-V)] £(k)~d(k)-x n (k)w(k-t)
T(S1)好)
1
r^,-[T(k-l)-G(k)x ff (k)T(k -1)]
p
其中,H (A )表示天线阵的输入信号向最,它是复值向量,火土)表示天线阵列的输出,/(幻 是参考信号,。
是遗忘因子,冲(幻是复值加权向量,它的初始值w (0)设为[10-0],矩 阵r (幻的初始值我0)设为单位阵,
从式3.23能看出,RLS 算法所要做的是把甲你)*伐-1)向雄)靠近,因为在实值调 制系统中,妣)是实数「所以RLS 算法最后收敛的结果必然是趋于 的),Im|V (幻趋于零。
但阵列天线的输出只是所以我们 只要保证Rep%)卬Q-1)]趋于d (*)即可,无需计算血1)卜 基于这神思 想,我们重新改写估计误差的计算公式和代价函数’经推导可得到改进的RLS 算法。
RLS 算法设计及流程 M =15; %均衡滤波器阶数为 2*M+1 Lb=10; %信道b 长度为L+1 %Lb=2;
%信道c 长度为L+1
%hb=[0.407 0.815 0.407];% 离散时间信道 c
hb=[0.04 -0.05 0.07 -0.21 0.50 0.72 0.36 0.00 0.21 0.03 0.07]; % 离散时间信道 b Hb=zeros(2*M+1,2*M+Lb+1); for k =1:2*M+1; % 信道b 的信道矩阵
Hb(k,k:1:k+Lb)=hb; end
%%%产生伯努利序列和加性白噪声,构建均衡滤波器的输入数据矩阵 sigma=1e-3; %加性白高斯噪声的方差 N=2000;
%迭代次数
s=randsrc(2*M+Lb+N,1); % 伯努利序列 vn=sqrt(sigma)*randsrc(2*M+Lb+N,1); S=zeros(2*M+Lb+1,N); % 发射信号矩阵 S V=zeros(2*M+1,N); %加性白高斯噪声矩阵
V
for k=1:N
S(:,k)=s(2*M+Lb+k:-1:k); V(:,k)=vn(2*M+k:-1:k);
(3.22) (3. 23) (3.24) (3. 25) (3* 26)
end
Ub=Hb*S+V; %均衡滤波器输入数据矩阵Ub
%%%RLS迭代算法
dn=S(M+Lb+1,:); % 期望信号
lambda = 0.990; %RLS 遗忘因子delta =0.004; %RLS 调整参数wb_RLS =zeros(2*M+1,N+1); wb_RLS(M+1,1)=1; % 权向量初始值
epsilon=zeros(N,1); % 先验估计误差
P1=eye(2*M+1)/delta; %相关矩阵逆的初始值
for k=1:N %RLS算法迭代过程
PIn=P1*Ub(:,k);
deno= lambda+Ub(:,k)'*PIn
kn=PIn/deno;
epsilon(k)=dn(k)-wb_RLS(:,k)'*Ub(:,k);
wb_RLS(:,k+1)=wb_RLS(:,k)+kn*conj(epsilon(k));
P1=P1/lambda-kn*Ub(:,k)'*P1/lambda; end
MSEB_RLS = abs(epsilon).A
2; % 单次实验均方误差MSEB_RLS n=1:2000;
plot(n,MSEB_RLS)
title('RLS算法学习曲线')
xlabel('迭代次数n')
ylabel('MSEB_RLS')
axis([0 2000 1e-3 1e+2]);
4.3 变步长LMS 算法(Variable Step Size LMS Algorithm, VSSLMS)
变步长LMS算法是近几年研究的热点与重点.步K"的取值会对LMS算法的收敛速度、稳态误差和对时变系统的跟踪速度产生直接的影响,如果使用较大
的孝长值,收敛速度加快,倡是稳态误差增大.最终收敛的权向量会远高最佳维纳解;相反,如果使用较小的步长值,虽然可以降低稳态误差,提高算法的精度,但是步长林的减小将会降低算法的收敛速度及对时变系统的跟踪速度,不能及时调整至最优权值口这一矛盾使得固定步长的LMS算法的收敛速度与稳态误差性能不能同时满足,必须在两个性能指标之间进行权衡,鉴于此,人们提出了变步长LMS算法。
变步长算法的基本思想:在初始收敛阶段或系统参数发生时变时,自适应系统的权值与最优权值相距较远,为保证有较快的收敛速度及对时变系统的跟踪速度,选取较大的步长A;在算法接近收敛时,滤波系统的权值接近最优权值,选取较小的步长",以减少算法的稳态误差。
就目前所发展形成的变步长算法大概分为三大类:第-•类是通过对前一时刻的步长来修改当前时刻的步长[25](26][31]-133];第二类是利用误差向量或者输入信号的平方归•化形式的某种函数关系来调整步长值的变化1341[351[36],第三类是通过非线性函数来调整步长(241[37K45]O
4.3.1第一类变步长LMS算法
这节主要分析第一类变步长LMS算法,分析其性能。
文献[25] Kwong R.H等人提出的变步长算法中的步长调整是由瞬时估计误差的平方所控制,目的是当估计误差较大时步长也较大可以提供较快的收敛速度,误差较小时步氐也较小从而产生的失调量也很小。
权向量迭代公式为
W(k + \)=W{k)+ ”k)e(k)X(k)(4.17) 步长的迭代公式为
"(k + 1) = + ^e(k)2(4.18) 并且取值为"叩和“max当"侬+ D的值低于或者高于—ax的界限值时,和ZAnu的值要选取适当,/>°。
然而该算法对于独立测粮噪声的存在比较檄感。
这个算法已经成为这类VSSLMS算法的经典算法。
文献[26] Aboiilnasr T等人针对文献[25]容易受测量噪声引起的稳态误差提出改进。
用eQ)和e侬-1)自相关时间均值来控制步长更新,相对于标准LMS算法引入了:
p(k) = Pp(k -1) + (1 —P)e(k)e{k -1) (4.19)
jLi(k + 1) = ajLi(k) + (4.20) pQ)的引入消除了权向最迭代时非相关噪声信号在的影响。
0, /因子的选取都要满足一定的条件。
文献[33]RaduC等人对文献[25]提出新的改进方法,利用输出误差累加,提供了更快的收敛速率及更小的失调柄,其步氏更新公式为:
雌 + 1)=明(局+子X</):(4.21)
由文献[25][26]引申出了这一大类的关于变步长的算法,如文献[31][32][33], 其中文献[32]详尽列举了这类各种变步长LMS 算法,同时,也衍生出很多变步长 的NLMS 算法,如文献[33][46][47]o
现在来仔细研究一卜.这类算法的性能。
文献[25]推导出的VSSLMS 算法在平 稳状态卜.的近似失调量为
14-
tr(R)'
]_*
是均方误差的最小值,从上式听以看出,a, /控制者VSSLMS 算法的 迭代步长和
失调量,所以对于参数的选取要严格控制。
值得一提的是,对于〃mm 和 “垣徐的取值。
的值一般取为能够保证算法收敛的最大步长值'如:
心n 是均方误差的最小值,从上式可以看出,/控制着VSSLMS 算法的 迭代步长和失调量,所以对于参数的选取要严格控制,值得一提的是,对于‘响和 以咛的取值。
"g 的值一般取为能够保证算法收敛的最大步长值⑵L
2
Amax
~ 3tr(R)
而“mm •般取为能够保证最低跟能力的值,大概接近于固定步K LMS 算法的 步长伍。
文献[26]推导出的RVSSLMS 算法在平稳状态卜的近似失调量为
Sg
"力割")心)+
严*
(1-/ )(1+0) 2^[^(oo)p min
其中,
rd -
P) ■
J nun (1)(1+/?)
”的取值一般接近于b 人越大,在门适应的初始阶段对应的步长值也会越大, 因而收敛速度也会变快。
口,0, /因子的引入增加了控制算法收敛速度及失调危 的自由度。
将以上两种算法与固定步长算法进行仿真对比。
为了简洁和与后而的章节形 成一致的对比性,且时域自适应滤波的理论-•般也适应于空域自适应滤波器,所 以我们采用时域的辨识系统模型来捡证各个算法的特点及有效性。
仿真模型是一个自适应辨识系统,阶数为4,即抽头系数是4;未知的辨识系 统的冲击响应为"=[0.1 0.3 0.4 0.5]:输入端的干扰信号〃(*)是与有用信号戒幻 不相关的高斯白噪声。
参数选取:系统的输入信号X (幻是均值为0,方差为1的高斯型信号。
人心最 小均方误
Syss
1- iq
f ”)
] CT
(4.22)
(4.23)
(4.24)
(4.25)
差等于干扰信号〃(上)的方差=0.7。
固定步长FSSLMS算法的步长值必= 0.01; VSSL MS 算法中/席=2 - 005, =0.97 : RVSSLMS 算法中的%ss = °・97 , /?=0.99 , /所ss = le—003。
VSSLMS 和RVSSLMS 算法中的^max = 0.4 , Z/min = 0.01 0在参数的选取能够保证近似相同的失调量的情况下,
RVSSLMS算法的收敛速度优于VSSLMS, VSSLMS的收敛速度优于FSSLMS, 如图4.4所示。