⑴ RLS算法在MATLAB上仿真实现的程序
% RLS 算法
<br>randn('seed', 0) ;
<br>rand('seed', 0) ;
<br>
<br>NoOfData = 8000 ; % Set no of data points used for training
<br>Order = 32 ; % Set the adaptive filter order
<br>
<br>Lambda = 0.98 ; % Set the forgetting factor
<br>Delta = 0.001 ; % R initialized to Delta*I
<br>
<br>x = randn(NoOfData, 1) ;% Input assumed to be white
<br>h = rand(Order, 1) ; % System picked randomly
<br>d = filter(h, 1, x) ; % Generate output (desired signal)
<br>
<br>% Initialize RLS
<br>
<br>P = Delta * eye ( Order, Order ) ;
<br>w = zeros ( Order, 1 ) ;
<br>
<br>% RLS Adaptation
<br>
<br>for n = Order : NoOfData ;
<br>
<br>u = x(n:-1:n-Order+1) ;
<br>pi_ = u' * P ;
<br>k = Lambda + pi_ * u ;
<br>K = pi_'/k;
<br>e(n) = d(n) - w' * u ;
<br>w = w + K * e(n) ;
<br>PPrime = K * pi_ ;
<br>P = ( P - PPrime ) / Lambda ;
<br>w_err(n) = norm(h - w) ;
<br>
<br>end ;
<br>
<br>% Plot results
<br>
<br>figure ;
<br>plot(20*log10(abs(e))) ;
<br>title('Learning Curve') ;
<br>xlabel('Iteration Number') ;
<br>ylabel('Output Estimation Error in dB') ;
<br>
<br>figure ;
<br>semilogy(w_err) ;
<br>title('Weight Estimation Error') ;
<br>xlabel('Iteration Number') ;
<br>ylabel('Weight Error in dB') ;
<br>
⑵ 什么是QR-RLS算法
基于QR 分解的最小二乘算法(QR-RLS)。
实数矩阵 A 的 QR 分解是把 A 分解为A=QR,这里的 Q 是正交矩阵(意味着 QTQ = I)而 R 是上三角矩阵。
⑶ 基于LMS和RLS算法的自适应滤波器的仿真,如何去分析仿真出来的图形求详细指导与分析
LMS算法和RLS算法都是自适应算法,LMS是根据统计的思想,在维纳滤波的意义下,基于均方误差最小的原则,一步步迭代,得到最优权向量的估计值。观察LMS的曲线图。可以看到随着迭代次数N的增加。算法逐渐收敛,趋于稳定。LMS算法比较简单,因此通常收敛速度比较慢。RLS是基于最小二乘的确定性思想得出最优权向量估计,算法一般比较复杂,但收敛速度明显快于LMS,仿真图形中可以看到一般RLS到N为几十左右就收敛了,而LMS一般都要到几百才能收敛。。
⑷ 8PSK的调制解调
对1800Hz单载波进行码元速率恒为2400Bd的8PSK调制,即对于每个码元调制所得的信号长度等于四分之三个载波信号周期。发送端完整的信号调制框图如下所示:
信息的发送是以数据帧的形式进行发送的,每次只发送一个数据帧,而不是连续发送的,这样信息在发送前发送端就不需要先跟接收端建立连接,但同时在对信号进行信源编码,信道编码和前导及探测报头序列的过程中则降低了信号传送的效率。数据帧主要包括两部分即前导及探测报头序列和所要传输的数据部分。
1、截尾卷积编码
一般情况下,卷积编码的时候在输入信息序列输入完毕后都还要再输入一串零比特的数据用于对移位寄存器进行复位,这样在一定程度上影响了信源的编码效率。而截尾卷积编码则是在每次编码完成后不对移位寄存器进行复位操作,而是将上次编码后编码寄存器的状态作为下次编码时移位寄存器的初始状态。这样一方面使得信源的编码的码率得到了提高,另一方面也增加了信息的安全性,因为接收端只有知道发送端编码器中的移位寄存器的初始状态或者付出比较大的解码代价的情况下才能对接收到的信号进行解调,否则解调出来的永远是乱码。
2、交织
码元的交织其实是属于信道编码,交织的目的是通过将信息在信道中受到的突发连续差错分散开来,使得接收到的信号中的差错趋向于随机差错,降低接收端信息解调出错的概率,从而提高通信中信息的可靠性。交织的方法一般是用两个适当大小的矩阵,同一时间一个用于数据的存储另外一个则用于数据的读取,而且两个矩阵的存取或者输出是交替的。输入序列按照逐行(列)的顺序存储到其中的一个矩阵中,而输出序列则是按照逐列(行)的顺序从另一个矩阵中读取。通常矩阵越大,则对于连续性的突发错误的分散效果越好,但是编码的时延也就越大。
3、Walsh码
Walsh码是一种同步正交码,在同步传输的情况下,具有良好的自相关特性和处处为零的互相关特性。其编码所得到的码元都是取自Hadamard矩阵的行或者列。理论上,信号如果在信道中是相互正交的,那么信号之间的相互干扰就可以达到零了。但是由于信号的多径效应和其他异步信号的干扰,使得信道中的信号并不是完全正交的,干扰也就不为零了。所以实际情况下,Walsh码一般都只是作为扩频码来使用。
扩频简单地说就是将传输信号的带宽扩展到更宽的频带上去。在信道的传输过程中,由于信号的频谱扩展了,其幅值也随之减小,使得信号很好地隐藏在噪声之中,即可以用比较低的发送功率来传输信号,同时提高信号的保密性。而在接收端对信号进行解调的时候,只是将扩展后的信号的功率谱缩回来使得其功率谱的幅值大大增加,而并没有改变接收信号中噪声功率谱的幅值,这样就能够大大提高接收端的信噪比,从而提高信号的抗干扰能力。
4、PN码
Walsh码的自相关特性和互相关特性在实际的应用中都不够理想,即信号经过多径信道时,不同径之间不同信号之间都会产生严重的干扰。为此,可以用相关性较好的伪随机序列与Walsh码模8相加,这时得到的码元序列既保持了Walsh码的正交性,同时又大大改善了其相关特性,使其相关功率谱的旁瓣大大减小。该调制中所用到的伪随机序列即PN序列(Pseudorandom Noise伪噪声序列)。通常所说的M序列和m序列即为短PN序列和长PN序列。将Walsh编码和PN码模8相加后,所得到的信息序列在传输中的抗多径引起的干扰性能就能够得到较大的提高了。
5、前导及探测报头序列
前导序列及探测报头就是在信息发送之间加在数据帧前相对于接收端已知的序列。前导及探测报头序列的作用是用于接收端对信号的捕获,信道的估计、均衡和对接收信号频偏的估计。若没有在发送信息前加上前导及探测报头,则接收端没法判断接收到的信号到底是噪声还是发送端发送的消息,信号也就无法解调。
6、8PSK调制
8PSK信号的调制主要包括对每输入的三个比特信号映射到同相支路和正交支路上的相应电平,并对两路的电平分别进行滤波,最后再将滤波所得的同相支路和正交支路的信号调制到频带上去。其调制框图如下所示:
对信号进行滤波的作用是一方面对信号所占的带宽进行压缩,另一方面是提高信号抗噪声干扰的能力。当发送端和接收端所用到的滤波器都为根号升余弦滤波器的时候,能够有效地滤除信号传输过程中所受到的噪声干扰,降低系统的误码率。
根号升余弦滤波器的冲激响应为:
其中为根号升余弦滤波器的滚降系数,滤波器的滚降系数越高则其滤波性能越好,同时减少抽样定时脉冲的误差,但是占用的带宽也就越宽,一般选择在0.2—0.6之间。 接收端在对信号进行解调的时候主要解决的问题包括:
·传输过程中多普勒效应产生的频移;
·时延产生的多径效应;
·对接收到的码元序列进行解码。
8PSK信号接收端的解调框图如下所示:
其中所包含的各个模块及其功能如下所示:
1、去载波低通滤波
该模块的是利用已知的发送端载波频率的正弦波信号和接收采样所得的信号进行相乘,所得的结果包括两部分,即载波的倍频部分和基带部分,其中不考虑接收信号在传输过程中由于干扰导致的频率变化。然后将所得的信号进行低通滤波,即可将前一步所得的信号中的载波倍频部分滤除而只保留信号的基带部分。该过程相当于将接收到信号的频谱从一定的频段上搬移到基带上,以便于后面模块对信号的解调。
2、信号的捕获
在对信号进行解调前应先解决的问题是从什么时候开始接收到的不是噪声而是发送端发送过来的信息,即寻找信号的起始时刻。这时候就可以利用已知的发送数据帧的前导及探测报头序列,在接收端用已知的前导及探测报头序列和接收信号进行相关,理想情况下当接收端正好接收到完整的前导及探测报头序列的时候相关值会达到最大,而在离最大相关值较远的地方则相关值都会相对小得多。实现时,落入滑动窗的序列和本地序列做相关,然后做FFT变换,对变换后的谱峰进行判断。之所以不直接用序列的相关值来进行判断是因为相关值会受频差的影响而使相关失效。当接收序列和本地序列同步的时候会,相关FFT会出现明显的谱峰,而当没有同步的时候,相关FFT不会出现明显的谱峰。如果谱峰没有达到门限,则采样序列向前移动,若达到门限则将其记录,并向前移动,将连续几个点的谱峰都达到门限值的点作为粗同步的位置(一般要求要有连续五个相关值达到门限)。比较其谱峰值,选取谱峰最大的点作为捕获点。谱峰的门限要根据实际经验而定,因为信号在传输过程中信道的参数是变化的。实现信号的捕获时即实现了信号的粗同步,粗同步可以用来实现粗频偏估计。
数据帧头位置的捕获只是实现了信号的码元级同步,之后还需进行位同步。捕获是否成功很大程度上决定了接收端是否能够接收到发送的信号,所以捕获时的相关序列应该足够长(探测报头384码元),从而确保系统有足够的抗干扰能力。但是当序列太长时,FFT变换的计算量就很大,所需的时间也会比较长,可以将本地序列进行分段,然后进行分段的相关和FFT变换,以减少计算量,但是这样带来的后果是信号的捕获率将会有所降低,所以要对运算量和捕获率进行权衡。
滑动步长的大小和每次作相关FFT运算所需要的指令数有关,每个步长内DSP所能执行的指令数应该不少于每次相关FFT运算所需的指令数,不然就会影响到信号解调的实时性。
3、第一次频偏估计
实际情况下,信号在传输的过程中由于受到各种各样的干扰和多普勒效应的影响,当信号达到接收端的时候其频率或多或少的都会发生一定的变化。所以接收机的目的不是在一个不变的频率上接收信号,而是在不同的频率上得到信号的不同部分,在对信号进行采样之前要么对接收信号的频率进行调整,要么对接收端的采样频率进行调整,事实上对接收到的信号频率进行调整要比对采样率进行调整简单,所以一般情况下都是对接收信号的频率进行调整,具体调整多少就要先对接收信号进行频偏估计才知道。
第一次频偏估计采用的方法是利用探测报头码元与本地序列进行相乘,若本地序列的频率为,接收到的信号频率为,那么理想情况下,两序列相乘则得到的结果中仅包含频率为和的分量,其中即为所想要求的频偏值。这时可以对相乘所得的结果进行FFT变换,将时域上的信号变换到频域上去,就可以很容易地根据频域中低频段上的频谱峰值的位置估计出频偏的大小,最后再利用估计出的频偏值对接收到的信号进行调整。由于前面的粗同步只是码元级别上的同步,所以第一次频偏估计所得到的频偏值不够精确,调整后的信号可能还存在一定的相位差。
4、位同步
信号的捕获位置并不一定是最佳的采样时刻,接收信号经过粗同步的调整后虽然频率已经基本正确,但是其中可能还存在一定的相位差,所以必须对信号再次进行同步,即精同步。由于信号经过粗同步以后就已经实现了码元级的同步,表明信号的精确采样位置肯定在粗同步位置及其前一码元和后一码元之间的某个位置上,要找出其确切的位置则可以利用本地已知的探测报头序列和从粗同步位置的前一码元到后一码元之间的序列进行滑动相关。相关值最大的位置即为所要寻找的精同步位置,即最佳采样时刻的位置。
5、第二次频偏估计
在对接收信号进行第一次频偏估计和位同步之后,就基本上能够使得探测报头的位置精确到采样点级别。但是由于第一次频偏估计具有估计范围大,估计精度差的特点,为了使得就收信号的频率更加准确有必要对位同步后的信号再进行一次频偏估计。第二次频偏估计利用前面已经得到的接收信号中主径和多径的精确位置,将本地序列分别和主径信号和多径信号进行相关FFT,再将得到的两个信号频谱进行线性叠加,并进行线性拟合,这样得到的频谱图包含主径和多径的信息,为频偏估计提供了更加可靠的信息。第二次频偏估计具有频偏估计范围小,估计精度高的特点,所以在高速移动的环境下,将两次频偏结合起来就能够大大地提高信号传输的可靠性。
对于双方都有信息收发的通信系统而言,可以将主要的频偏工作交给其中的一方,而另一方则只要对收到的信号频率进行稍微的调整就行了。如开始的时候发送端发送的信号频率为,传输过程中由于多普勒效应使得接收端接收到的信号频率为,若接收端能将其中的频偏准确地估计出来,则下次原来的接收端在将新的消息发送给原来的发送端的时候就可以调整其发送信号的频率为,而不是。理想情况下,如果信道的特性在两个信号传输的过程中都保持不变的情况下,那么原来发送端接收到的信号的频率就为,就不用再对接收的信号进行频偏估计了。
6、均衡
信道均衡的主要功能是用于消除由于信号在传输过程中经历频率选择性衰落所引起的码间干扰。一般情况下若要使用的不是自适应均衡,那么在对信号进行均衡的时候要用到信道的各种参数,那么就应先对信道进行估计。
信号在传输过程中会有多径效应,所以应该对接收信号进行信道估计,找出其中的主径和多径(一般情况下只要找出其中一条主要的多径即可)。信道估计即在粗同步位置周围将接收信号和本地序列进行相关,找出其中的峰值,其目的就是找出接收信号中主径信号和多径信号的精确起始位置。在好的信道中,若信道的信噪比比较低,则主径的第一个旁瓣和多径的主瓣有可能重叠在一起,导致多径判决出现偏差。这时可以采用主径重构的方法来解决该问题,即利用本地序列的相关图重构出理想情况下主径的相关图,然后再用总的相关图减去主径序列的相关图,即可得到多径序列的相关图根据所得的主径和多径的位置就可以进行均衡了。
自适应均衡器中的均衡系数可以实现自动调整,所以均衡前可以先不对信道进行估计,经常使用的线性横向均衡器(LTE)如下图所示:
图中抽头系数的调整算法包括最小均方误差法(LMS)和递归最小二乘法(RLS)。其中LMS采用的准则是使均衡器的期望输出值和实际输出值之间的均方误差(MSE)最小化。而RLS的准则是对初始时刻到当前时刻所有误差的平方进行平均并使其最小化。由此可以看出虽然RLS算法收敛性好,但是其运算量也大得多。
除了图中所示的线性横向均衡器外,还包括线性格型均衡器(LLE)、判决反馈均衡器(DFE)和分数间隔均衡器。其中线性格型均衡器最复杂,但收敛速度也快,系数也优良。判决反馈均衡器能够很好地解决后尾效应,适于有严重失真的无线信道,但同时也可能导致误码扩散。分数间隔的均衡器和其他的均衡器不一样,其他均衡器的采样周期都是码元周期,即都可以称得上是码率均衡器,但是分数间隔均衡器的采样周期小于码元周期的一半,故所得的信号不会出现频谱的混叠现象。
7、截尾卷积译码
由于截尾卷积码在进行编码前没有对编码器的移位寄存器进行复位操作,所以在接收端对其进行解码的情况下,如果不清楚其初始状态,那么就要付出额外的代价才能对其进行解码。目前主要的截尾卷积译码方法包括循环维特比译码算法(CAV)和BCJR译码算法。通常在进行截尾卷积编码时,会将一段数据序列的后m个码字初始化编码移位寄存器,从而使得其移位寄存器在编码前和编码后的状态保持一致。其中循环维特比译码算法就是利用这一性质在接收端将接收到码字序列的多个拷贝首尾相连,然后进行维特比译码,在经过一定长度的译码后最佳路径和幸存路径在很大程度上是一致的,这是就可以将找到的首尾状态相等的码块作为最终的译码结果。这样就可以在不知道编码移位寄存器初始状态的情况下进行截尾卷积译码,但其计算量要比一般情况下的卷积码译码计算量大得多。
⑸ RLS算法的原理
“递归最小二次方算法”——RLS算法,其又称最小二乘法。
在我们研究两个变量(x,
y)之间的相互关系时,通常可以得到一系列成对的数据
(x1,
y1、x2,
y2...
xm
,
ym);
将这些数据描绘在x
-y直角坐标系中
若发现这些点在一条直线附近,
可以令这条直线方程如(式1-1)。
Y计=
a0
+
a1
X
(式1-1)
其中:a0、a1
是任意实数
为建立这直线方程就要确定a0和a1,应用《最小二乘法原理》,
将实测值Yi与利用(式1-1)计算值(Y计=a0+a1X)的离差
(Yi-Y计)的平方和〔∑(Yi
-
Y计)2〕最小为“优化判据”。
令:
φ
=
∑(Yi
-
Y计)2
(式1-2)
把(式1-1)代入(式1-2)中得:
φ
=
∑(Yi
-
a0
-
a1
Xi)2
(式1-3)
当∑(Yi-Y计)平方最小时,可用函数
φ
对a0、a1求偏导数,令这两个偏导数等于零。
亦即:
m
a0
+
(∑Xi
)
a1
=
∑Yi
(∑Xi
)
a0
+
(∑Xi2
)
a1
=
∑(Xi,
Yi)
得到的两个关于a0、a1为未知数的两个方程组,解这两个方程组得出:
a0
=
(∑Yi)
/
m
-
a1(∑Xi)
/
m
a1
=
[∑Xi
Yi
-
(∑Xi
∑Yi)/
m]
/
[∑Xi2
-
(∑Xi)2
/
m)]
这时把a0、a1代入(式1-1)中,
此时的(式1-1)
就是我们回归的元线性方程即:数学模型。
⑹ 基于RLS算法和LMS的自适应滤波器的MATLAB程序
% RLS算法
randn('seed', 0) ;
rand('seed', 0) ;
NoOfData = 8000 ; % Set no of data points used for training
Order = 32 ; % 自适应滤波权数
Lambda = 0.98 ; % 遗忘因子
Delta = 0.001 ; % 相关矩阵R的初始化
x = randn(NoOfData, 1) ;%高斯随机系列
h = rand(Order, 1) ; % 系统随机抽样
d = filter(h, 1, x) ; % 期望输出
% RLS算法的初始化
P = Delta * eye ( Order, Order ) ;%相关矩阵
w = zeros ( Order, 1 ) ;%滤波系数矢量的初始化
% RLS Adaptation
for n = Order : NoOfData ;
u = x(n:-1:n-Order+1) ;%延时函数
pi_ = u' * P ;%互相关函数
k = Lambda + pi_ * u ;
K = pi_'/k;%增益矢量
e(n) = d(n) - w' * u ;%误差函数
w = w + K * e(n) ;%递归公式
PPrime = K * pi_ ;
P = ( P - PPrime ) / Lambda ;%误差相关矩阵
w_err(n) = norm(h - w) ;%真实估计误差
end ;
% 作图表示结果
figure ;
plot(20*log10(abs(e))) ;%| e |的误差曲线
title('学习曲线') ;
xlabel('迭代次数') ;
ylabel('输出误差估计') ;
figure ;
semilogy(w_err) ;%作实际估计误差图
title('矢量估计误差') ;
xlabel('迭代次数') ;
ylabel('误差权矢量') ;
%lms 算法
clear all
close all
hold off%系统信道权数
sysorder = 5 ;%抽头数
N=1000;%总采样次数
inp = randn(N,1);%产生高斯随机系列
n = randn(N,1);
[b,a] = butter(2,0.25);
Gz = tf(b,a,-1);%逆变换函数
h= [0.0976;0.2873;0.3360;0.2210;0.0964;];%信道特性向量
y = lsim(Gz,inp);%加入噪声
n = n * std(y)/(10*std(n));%噪声信号
d = y + n;%期望输出信号
totallength=size(d,1);%步长
N=60 ; %60节点作为训练序列
%算法的开始
w = zeros ( sysorder , 1 ) ;%初始化
for n = sysorder : N
u = inp(n:-1:n-sysorder+1) ;% u的矩阵
y(n)= w' * u;%系统输出
e(n) = d(n) - y(n) ;%误差
if n < 20
mu=0.32;
else
mu=0.15;
end
w = w + mu * u * e(n) ;%迭代方程
end
%检验结果
for n = N+1 : totallength
u = inp(n:-1:n-sysorder+1) ;
y(n) = w' * u ;
e(n) = d(n) - y(n) ;%误差
end
hold on
plot(d)
plot(y,'r');
title('系统输出') ;
xlabel('样本')
ylabel('实际输出')
figure
semilogy((abs(e))) ;% e的绝对值坐标
title('误差曲线') ;
xlabel('样本')
ylabel('误差矢量')
figure%作图
plot(h, 'k+')
hold on
plot(w, 'r*')
legend('实际权矢量','估计权矢量')
title('比较实际和估计权矢量') ;
axis([0 6 0.05 0.35])
⑺ RLS算法的原理
“递归最小二次方算法”——RLS算法,其又称最小二乘法。
在我们研究两个变量(x, y)之间的相互关系时,通常可以得到一系列成对的数据
(x1, y1、x2, y2... xm , ym);
将这些数据描绘在x -y直角坐标系中
若发现这些点在一条直线附近,
可以令这条直线方程如(式1-1)。
Y计= a0 + a1 X (式1-1)
其中:a0、a1 是任意实数
为建立这直线方程就要确定a0和a1,应用《最小二乘法原理》,
将实测值Yi与利用(式1-1)计算值(Y计=a0+a1X)的离差
(Yi-Y计)的平方和〔∑(Yi - Y计)2〕最小为“优化判据”。
令: φ = ∑(Yi - Y计)2 (式1-2)
把(式1-1)代入(式1-2)中得: φ = ∑(Yi - a0 - a1 Xi)2 (式1-3)
当∑(Yi-Y计)平方最小时,可用函数
φ 对a0、a1求偏导数,令这两个偏导数等于零。
亦即:
m a0 + (∑Xi ) a1 = ∑Yi
(∑Xi ) a0 + (∑Xi2 ) a1 = ∑(Xi, Yi)
得到的两个关于a0、a1为未知数的两个方程组,解这两个方程组得出:
a0 = (∑Yi) / m - a1(∑Xi) / m
a1 = [∑Xi Yi - (∑Xi ∑Yi)/ m] / [∑Xi2 - (∑Xi)2 / m)]
这时把a0、a1代入(式1-1)中, 此时的(式1-1)
就是我们回归的元线性方程即:数学模型。
⑻ 第一缓和曲线参数值和第二缓和曲线参数值,指的是什么
具体如下:
缓和曲线定义
在土木工程中使用多种缓和曲线,以在切线和圆形曲线之间以及两条具有不同曲率的圆形曲线之间逐渐引入曲率和超高。
在与其他切线和曲线的关系中,每条缓和曲线要么为 内曲 ,要么为 外曲 。
工程师在设计和布局缓和曲线时最常用的两个参数为 L(缓和曲线长度)和 R(圆形曲线的半径)。
在路基设计表中“曲线长度”中一共有3个曲线长度:LS1、LY、LS2。
LS1和LY都知道是什么意思了,现在来说说LS2。在部分线形复杂的地段(具体体现在低等级山路段),LS1--LY--LS1的线形无法满足平曲线的布线要求,就引入了LS2。LS2回旋曲线的回旋率不等于LS1的回旋率,目的是为了接顺下一段回旋曲线。
拓展资料:
缓和曲线指的是平面线形中,在直线与圆曲线、圆曲线与圆曲线之间设置的曲率连续变化的曲线。缓和曲线是道路平面线形要素之一,它是设置在直线与圆曲线之间或半径相差较大的两个转向相同的圆曲线之间的一种曲率连续变化的曲线。《公路工程技术标准》(JTG B01-2003)规定,除四级路可不设缓和曲线外,其余各级公路都应设置缓和曲线。
在现代高速公路上,有时缓和曲线所占的比例超过了直线和圆曲线,成为平面线形的主要组成部分。在城市道路上,缓和曲线也被广泛地使用。
⑼ 自适应滤波的几种典型的自适应滤波算法
对自适应滤波算法 的研究是当今自适应信号处理中最为活跃的研究课题之一。自适应滤波算法广泛应用于系统辨识、回波消除、自适应谱线增强、自适应信道均衡、语音线性预测、自适应天线阵等诸多领域中。总之,寻求收敛速度快,计算复杂性低,数值稳定性好的自适应滤波算法是研究人员不断努力追求的目标。虽然线性自适应滤波器和相应的算法具有结构简单、计算复杂性低的优点而广泛应用于实际,但由于对信号的处理能力有限而在应用中受到限制。由于非线性自适应滤波器,如Voletrra滤波器和基于神经网络的自适应滤波器,具有更强的信号处理能力,已成为自适应信号处理中的一个研究热点。其中较典型的几种算法包括: LMS自适应滤波算法 RLS自适应滤波算法 变换域自适应滤波算法 仿射投影算法 共扼梯度算法 基于子带分解的自适应滤波算法 基于QR分解的自适应滤波算法 算法性能评价
变步长的自适应滤波算法 虽然解决了收敛速度、时变系统跟踪速度与收敛精度方面对算法调整步长因子u的矛盾,但变步长中的其它参数的选取还需实验来确定,应用起来不太方便。对RLS算法的各种改进,其目的均是保留RLS算法收敛速度快的特点而降低其计算复杂性。变换域类算法亦是想通过作某些正交变换使输入信号自相关矩阵的特征值发散程度变小,提高收敛速度。而仿射投影算法的性能介于LMS算法和RLS算法之间。共扼梯度自适应滤波算法的提出是为了降低RLS类算法的复杂性和克服某些快速RLS算法存在的数值稳定性问题。信号的子带分解能降低输入信号的自相关矩阵的特征值发散程度,从而加快自适应滤波算法的收敛速度,同时便于并行处理,带来了一定的灵活性。矩阵的QR分解具有良好的数值稳定性。
⑽ RLS算法中的遗忘因子是什么
遗忘因子是误差测度函数中的加权因子,引入它的目的是为了赋予原来数据与新数据以不同的权值,以使该算法具有对输入过程特性变化的快速反应能力。
“递归最小二次方算法”——RLS算法,其又称最小二乘法。
在我们研究两个变量(x, y)之间的相互关系时,通常可以得到一系列成对的数据
(x1, y1、x2, y2... xm , ym);
将这些数据描绘在x -y直角坐标系中
若发现这些点在一条直线附近,
可以令这条直线方程如(式1-1)。
Y计= a0 + a1 X (式1-1)
其中:a0、a1 是任意实数
为建立这直线方程就要确定a0和a1,应用《最小二乘法原理》,
将实测值Yi与利用(式1-1)计算值(Y计=a0+a1X)的离差
(Yi-Y计)的平方和〔∑(Yi - Y计)2〕最小为“优化判据”。
令: φ = ∑(Yi - Y计)2 (式1-2)
把(式1-1)代入(式1-2)中得: φ = ∑(Yi - a0 - a1 Xi)2 (式1-3)
当∑(Yi-Y计)平方最小时,可用函数
φ 对a0、a1求偏导数,令这两个偏导数等于零。
亦即:
m a0 + (∑Xi ) a1 = ∑Yi
(∑Xi ) a0 + (∑Xi2 ) a1 = ∑(Xi, Yi)
得到的两个关于a0、a1为未知数的两个方程组,解这两个方程组得出:
a0 = (∑Yi) / m - a1(∑Xi) / m
a1 = [∑Xi Yi - (∑Xi ∑Yi)/ m] / [∑Xi2 - (∑Xi)2 / m)]
这时把a0、a1代入(式1-1)中, 此时的(式1-1)
就是我们回归的元线性方程即:数学模型。