LMS算法实验报告_第1页
LMS算法实验报告_第2页
LMS算法实验报告_第3页
LMS算法实验报告_第4页
LMS算法实验报告_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于LMS算法的自适应均衡器设计及MATLAB实现一.实验目的1. 了解LMS算法的基本原理;2. 掌握MATLAB的使用方法;3. 初步体会分析问题、研究问题的基本步骤和方法,为以后科研积累经验。二.实验原理1. LMS算法简介在移动通信环境中,多径传播效应和频率选择性衰落会导致传输信号失真。失真主要表现为码间干扰,码间干扰是降低数字通信系统性能的一个主要因素。在这样的信道条件下设计实际的数字通信系统以高速传输数据时,往往不能获得足够准确的信道频率响应用于调制和解调器的最佳滤波器的设计。这是因为在每次通信时信道的路由不同,对于这样的信道,要设计最佳固定解调滤波器是不可能的。在这样的情况下,应

2、该采取信道均衡的方式以减小失真。信道均衡是通信技术和信号处理的基本问题之一,其目的在于克服传送的符号码和符号码之间的相互干扰,这种干扰是因为信道的非理想特性造成的。由于通信信道可能是未知和变化的,就需要自适应的调整均衡器,使得整个传输系统输出的符号码和符号码之间的干扰被消除。信道均衡可以利用发送的训练信号来开始,这称为自动均衡。在设计自适应均衡器的多种方法中,最小均方自适应算法(LMS)采用梯度搜索法,这使收敛到最优解远比其他算法快,而且该算法原理简单,实施容易,所以目前这一算法已广泛用于计算自适应滤波器的权系数。2. LMS算法的原理(1)自适应滤波原理   

3、自适应滤波器的特性变化是由自适应算法通过调整滤波器系数来实现的。一般而言,自适应滤波器由两部分组成,一是滤波器结构,二是调整滤波器系数的自适应算法。自适应滤波器的结构采用FIR或IIR结构均可,由于IIR滤波器存在稳定性问题,因此一般采用FIR滤波器作为自适应滤波器的结构。图1给出了自适应滤波器的一般结构。    图1为自适应滤波器结构的一般形式,图中x(n)为输入信号,通过参数可调的数字滤波器后产生输出信号y(n),将输出信号y(n)与标准信号(或者为期望信号)d(n)进行比较,得到误差信号e(n)。e(n)和x(n)通过自适应算法对滤波器的参数进行调整,调整的

4、目的使得误差信号e(n)最小。    自适应滤波器设计中最常用的是FIR横向型结构。图2是横向型滤波器的结构示意图。其中:x(n)为自适应滤波器的输入;w(n)为自适应滤波器的冲激响应:w(n)=w(O),w(1),w(N-1);y(n)为自适应    (2)自适应滤波算法    自适应滤波器除了包括一个按照某种结构设计的滤波器,还有一套自适应的算法。自适应算法是根据某种判断来设计的。自适应滤波器的算法主要是以各种判据条件作为推算基础的。通常有两种判据条件:最小均方误差判据和最小二乘法判据。LMS算法是以

5、最小均方误差为判据的最典型的算法,也是应用最广泛的一种算法。    最小均方误差(Least Mean Square,LMS)算法是一种易于实现、性能稳健、应用广泛的算法。所有的滤波器系数调整算法都是设法使y(n)接近d(n),所不同的只是对于这种接近的评价标准不同。LMS算法的目标是通过调整系数,使输出误差序列e(n)=d(n)-y(n)的均方值最小化,并且根据这个判据来修改权系数,该算法因此而得名。误差序列的均方值又叫“均方误差”(Mean Sqluare Error,MSE)。    理想信号d(n)与滤波器输出y(n)之差e(

6、n)的期望值最小,并且根据这个判据来修改权系数wi(n)。由此产生的算法称为LMS。均方误差表示为:    对于横向结构的滤波器,代入y(n)的表达式:    其中:R=EX(n)XT(n)为N×N的自相关矩阵,它是输入信号采样值间的相关性矩阵。P=Ed(n)X(n)为N×1互相关矢量,代表理想信号d(n)与输入矢量的相关性。在均方误差达到最小时,得到最佳权系数它应满足下式:        这是一个线形方程组,如果R矩阵为满秩的,R-1存在,可得到权系数的

7、最佳值满足:W*=R-1p。用完整的矩阵表示为:        显然x(m)=Ex(n)x(n-m)为x(n)的自相关值,xd(R)=Ex(n)d(n一k)为x(n)与d(n)互相关值。在有些应用中,把输入信号的采样值分成相同的一段(每段称为一帧),再求出R,P的估计值得到每帧的最佳权系数。这种方法称为块对块自适应算法。如语音信号的线性预测编码LPC就是把语音信号分成帧进行处理的。R,P的计算,要求出期望值E,在现实运算中不容易实现,为此可通过下式进行估计:    用以上方法获得最佳W*的运算量很大,对于

8、一些在线或实时应用的场合,无法满足其时间要求。大多数场合使用迭代算法,对每次采样值就求出较佳权系数,称为采样值对采样值迭代算法。迭代算法可以避免复杂的R-1和P的运算,又能实时求得近似解,因而切实可行。LMS算法是以最快下降法为原则的迭代算法,即W(n+1)矢量是W(n)矢量按均方误差性能平面的负斜率大小调节相应一个增量:W(n+1)=W(n)-(n),这个“是由系统稳定性和迭代运算收敛速度决定的自适应步长。(n)为n次迭代的梯度。对于LMS算法(n)为下式Ee2(n)的斜率:    由上式产生了求解最佳权系数W*的两种方法,一种是最陡梯度法。其思路为:设计初始权

9、系数W(0),用W(n+1)=W(n)一(n)迭代公式计算,到W(n+1)与W(n)误差小于规定范围。其中(n)计算可用估计值表达式:         上式K取值应足够大。如果用瞬时一2e(n)X(n)来代替上面对-2Ee(n)X(n)的估计运算,就产生了另一种算法随机梯度法,即Widrow-Hoft的LMS算法。此时迭代公式为:W(n+1)=W(n)+2ue(n)X(n)    以后讨论的LMS算法都是基于WidrOW-Hoff的LMS算法。上式的迭代公式假定滤波器结构为横向结构。对于对称横向型结构也可

10、推出类似的迭代公式:    W(n+1)=W(n)+2ue(n)X(n)+X(n一N+1)三.MATLAB仿真源程序1. LMS算法function yn,W,en=LMS(xn,dn,M,mu,itr)% LMS(Least Mean Squre)算法% 输入参数:% xn 输入的信号序列 (列向量)% dn 所期望的响应序列 (列向量)% M 滤波器的阶数 (标量)% mu 收敛因子(步长) (标量) 要求大于0,小于xn的相关矩阵最大特征值的倒数 % itr 迭代次数 (标量) 默认为xn的长度,M<itr<length(xn)% 输出参数:%

11、W 滤波器的权值矩阵 (矩阵)% 大小为M x itr,% en 误差序列(itr x 1) (列向量) % yn 实际输出序列 (列向量)% 参数个数必须为4个或5个if nargin = 4 % 4个时递归迭代的次数为xn的长度 itr = length(xn);elseif nargin = 5 % 5个时满足M<itr<length(xn) if itr>length(xn) | itr<M error('迭代次数过大或过小!'); endelse error('请检查输入参数的个数!');end% 初始化参数en = zeros

12、(itr,1); % 误差序列,en(k)表示第k次迭代时预期输出与实际输入的误差W = zeros(M,itr); % 每一行代表一个加权参量,每一列代表-次迭代,初始为0% 迭代计算for k = M:itr % 第k次迭代 x = xn(k:-1:k-M+1); % 滤波器M个抽头的输入 y = W(:,k-1).' * x; % 滤波器的输出 en(k) = dn(k) - y ; % 第k次迭代的误差 % 滤波器权值计算的迭代式 W(:,k) = W(:,k-1) + 2*mu*en(k)*x;end% 求最优时滤波器的输出序列yn = inf * ones(size(xn)

13、;for k = M:length(xn) x = xn(k:-1:k-M+1); yn(k) = W(:,end).'* x;end2. 调用LMS算法%function main()close all% 周期信号的产生 t=0:99;xs=10*sin(0.5*t);figure;subplot(2,1,1);plot(t,xs);grid;ylabel('幅值');title('输入周期性信号');% 噪声信号的产生randn('state',sum(100*clock);xn=randn(1,100);subplot(2,1,2)

14、;plot(t,xn);grid;ylabel('幅值');xlabel('时间');title('随机噪声信号');% 信号滤波xn = xs+xn;xn = xn.' ; % 输入信号序列dn = xs.' ; % 预期结果序列M = 20 ; % 滤波器的阶数rho_max = max(eig(xn*xn.'); % 输入信号相关矩阵的最大特征值mu = rand()*(1/rho_max) ; % 收敛因子 0 < mu < 1/rhoyn,W,en = LMS(xn,dn,M,mu);% 绘制滤波器输入信号figure;subplot(2,1,1);plot(t,xn);grid;ylabel('幅值');xlabel('时间');title('滤波器输入信号');% 绘制自适应滤波器输出信号subplot(2,1,2);plot(t,yn);grid;ylabel('幅值');xlabel('时间');title('自适应滤波器输出信号');% 绘制自适应

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论