通信系统的最佳线性均衡器(2)---自适应滤波算法

       本篇文章是博主在通信等领域学习时,用于个人学习、研究或者欣赏使用,并基于博主对通信等领域的一些理解而记录的学习摘录和笔记,若有不当和侵权之处,指出后将会立即改正,还望谅解。文章分类在通信领域笔记:

          通信领域笔记(8)---《通信系统的最佳线性均衡器(2)---自适应滤波算法》

通信系统的最佳线性均衡器(2)---自适应滤波算法

目录

1 背景分析

2 理论分析推导

3 MATLAB 仿真

3.1 自适应干扰对消的应用

3.2 自适应波束形成算法

3.3 无期望响应的自适应滤波算法:盲均衡

4 总结分析


通信系统的最佳线性均衡器(1)---维纳滤波线性均衡

1 背景分析

        在实际系统中,信道性质可能是时变的,可以通过自适应滤波技术达到最优线性均衡和跟踪信道的时变性,即自适应均衡器。自适应均衡需要一个期望响应序列,在通信系统接通的时候,设置一段专门时间,用于训练均衡器,在这个时段,通信发送机和通信接收机都产生一段约定的训练序列。发送机发送约定的训练序列𝑠(𝑛),接收机收到的是已经畸变的信号𝑥(𝑛)𝑥(𝑛)作为均衡器的输入信号,接收机在本地产生相同的训练序列𝑠(𝑛)作为自适应均衡器的期望响应。

        (1)自适应干扰对消的应用;

        (2)自适应波束形成算法;

        (3)无期望响应的自适应滤波算法:盲均衡;


2 理论分析推导

        自适应滤波所采用的最佳准则有最小均方误差(LMS)准则、最小二乘(LS)准则、最大信噪比准则和统计检测准则等,其中最小均方误差(LMS)准则和最小二乘(LS)准则目前最为流行,即最小均方误差(LMS)自适应滤波器和递推最小二乘(RLS)自适应滤波器。由于准则的不同,两种自适应滤波器在原理、算法、性能等方面均有差别。以下以 LMS 自适应滤波器为例进行分析。

2.1 自适应滤波技术

        在实际系统中,信道性质可能是时变的,可以通过自适应滤波技术达到最优线性均衡和跟踪信道的时变性,即自适应均衡器。自适应均衡需要一个期望响应序列,在通信系统接通的时候,设置一段专门时间,用于训练均衡器,在这个时段,通信发送机和通信接收机都产生一段约定的训练序列。发送机发送约定的训练序列𝑠(𝑛),接收机收到的是已经畸变的信号𝑥(𝑛)𝑥(𝑛)作为均衡器的输入信号,接收机在本地产生相同的训练序列𝑠(𝑛)作为自适应均衡器的期望响应。

        自适应滤波所采用的最佳准则有最小均方误差(LMS)准则、最小二乘(LS)准则、最大信噪比准则和统计检测准则等,其中最小均方误差(LMS)准则和最小二乘(LS)准则目前最为流行,即最小均方误差(LMS)自适应滤波器和递推最小二乘(RLS)自适应滤波器。由于准则的不同,两种自适应滤波器在原理、算法、性能等方面均有差别。以下以 LMS 自适应滤波器为例进行分析。

2.2 恒模算法

        CMA 算法全称为恒模盲均衡算法(Constant Modulus Algorithm),是该领域较为经典的一个算法,即使在有相位误差的情况下也能收敛,因此它已得到了广泛的应用,但是算法收敛速度较慢,而且由于其代价函数不包含相位信息,相位误差得不到补偿,所以在均衡之后还需经过相位恢复来消除相位误差的影响。该算法于 1980 年由 Godard TComm 上提出,其特点是利用隐含的高阶统计特性构造代价函数,通过调节均衡器的权向量寻找代价函数的极值点,其思想与 LMS 算法类似。

        在通信系统中,角度调制是常用的调制形式,包括频率调制(FM)和相位调制(PM),这些调制信号都满足包络是常数的性质,利用这个性质,构造一类盲自适应均衡算法,即 CMA 算法。传输信号满足恒模性,即|𝑠(𝑛)| 2 = 𝑅2,因为接收到的信号由于信道造成的畸变和干扰噪声,已不满足恒模性,当接收到的信号通过均衡器后,如果性能得到改善,则误差函数:


3 MATLAB 仿真

        自适应算法的大致结构差异不大,但根据最佳准则的不同,自适应算法的核心算法也存在差异。此处以最小均方误差 LMS 自适应滤波器为例进行实验。

3.1 自适应干扰对消的应用

        噪声对消的原理框图如图所示。信号𝑠(𝑛)中混入了不相关的噪声𝑣0 (𝑛),将 𝑠(𝑛) + 𝑣0 (𝑛)称为原始输入,它的作用是用作期望响应,可以通过其他途径得到 与𝑣0 (𝑛)相关的另一个噪声信号𝑣1 (𝑛)(称为噪声副本),用作自适应滤波器的输入,它也称为参考输入,调整滤波器系数,使自适应滤波器输出𝑦(𝑛)𝑣0 (𝑛)非常精确的逼近,原始输入减去滤波器输出,得到基本上抵消了噪声干扰的信号𝑠(𝑛)。

        此处以工频干扰的噪声(50Hz)对消为例进行实验。假设干扰信号时频率为50Hz 的正弦信号,而原始信号为频率为 20Hz 的正弦信号,使用 LMS 自适应滤波器对受噪声干扰的信号进行处理。

clc
clear all
close all
%生成原始信号s(n)
fc = 20;%信号频率
fs = 1000;%采样频率
t = 0:1/fs:1;
s = sin(2*pi*fc*t);%信号表达式

%生成噪声v0(n)
fv = 50;%工频干扰频率 
v0 = sin(2*pi*fv*t);%噪声信号
v11 = sin(2*pi*fv*t+randi([-10,10])/10*pi)%噪声副本
v12 = sin(2*pi*fv*t+pi/2+randi([-10,10])/10*pi)%噪声副本

%加噪后的信号
d = s+v0;

%% LMS算法设计自适应均衡器
M = 2; % 权系数个数
mu = 0.04; % 步长
w1 = zeros(M, 1); % 初始化权系数
e1 = zeros(length(v11), 1); % 误差向量
for i = M:length(v11)
    xk = [v11(i) v12(i)]'; % 输入信号
    y = w1' * xk; % 输出信号
    e1(i) = d(i) - y; % 计算误差
    w1 = w1 + mu * xk * e1(i); % 更新权系数
end

% 绘制误差平方的收敛曲线
figure(1);
plot(1:length(v11), e1.^2);
xlabel('LMS迭代次数');
ylabel('LMS误差平方');
title('LMS算法收敛曲线');

% 输出最后设计的滤波器系数
disp('LMS滤波器系数:');
disp(w1');

figure(2)
subplot(211);
plot(d);
title('LMS期望信号');
subplot(212);
plot(e1); % 只绘制均衡后的部分
title('LMS均衡后的信号');

 

        由收敛曲线可知,算法迭代至结束,滤波器参数仍未收敛完成。增大步长值𝑚𝑢至 0.04,使得每次迭代后滤波器参数调整速度变快。

        由图可知,误差在迭代至 400 次左右已完全收敛,最后的均衡信号基本恢复出原信号𝑠(𝑛)的特征。

        继续增大步进值𝑚𝑢0.1,进行实验。

        由结果可知,在迭代初期,误差有下降的趋势,但很快就维持一个很高的值不再变化。由均衡后信号的曲线也可知滤波器并没有对噪声干扰进行滤除,输出信号仍是畸形的。

        这是因为增大步进值后,虽然滤波器参数变化更快,能以更少的迭代次数、更快地达到最优的滤波器参数。但是步长的增大也会使得微小的变化引来很大的滤波器参数改变,从而错过最优的参数。更加严重地,会导致滤波器参数在最优参数左右一直徘徊,故产生了第二次实验的误差无法收敛的情况。

        由上可知,进行自适应算法时,需要选取合适的步进值。

3.2 自适应波束形成算法

        自适应滤波算法在空间阵列信号处理中的应用,由于阵列信号处理应用很广泛,不同应用对应的问题很不同,讨论 LMS 自适应滤波算法在 MVDR 波束形成中的运用。一个线性阵列信号处理的示意图如图所示。(具体理论过程在“阵列波束形成与维纳滤波”部分)

   阵列波束形成与维纳滤波

3.3 无期望响应的自适应滤波算法:盲均衡

       设置数据量𝑇、信噪比等基本参数 dB,模拟接收噪声信号𝑠,本次实验主要 考虑 4-QPSK、16-QPSKCMA 算法主要针对于信道衰落、多径传播等的影响,在接收端会产生严重的码间干扰,增加了系统的误码率。为了克服码间干扰,提高系统的性能,采用 CMA 算法,因此设置多径信道的参数

        考虑 4-QPSK16-QPSKCMA 算法主要针对于信道衰落、多径传播等的影响,在接收端会产生严重的码间干扰,增加了系统的误码率。为了克服码间干扰,提高系统的性能,采用 CMA 算法,因此设置多径信道的参数

以下是 CMA 算法运行结果:

        (1)基带调制类型为 4-QAM,总数据量为 60000,信噪比为 15dB 的情况

下,CMA 算法运行结果如下:

        由左上图可知,4-QAM 传输信号的星座图集中在上图所示的四个点中。由右上图可知,在未均衡前,接收信号星座图分布结果集中在一起,基本无法区分4-QAM 信号。

        在使用 CMA 算法均衡后,接收信号星座图分布结果集中集中在四个中心点中,可区分 4-QAM 信号。均衡前后之间有明显的分别,由于 4-QAM 满足恒模性,CMA 算法的有效性是很明显的。

        由左上图可知,60000 点存在一定的误差,通过观察右上图可发现,CMA 算法的结果收敛。        

        (2)基带调制类型为 16-QAM,总数据量为 60000,信噪比 dB 15 情况下,CMA 算法运行结果如下:

        由上图可以观察得到,对于基带调制类型为 16-QAMCMA 算法的均衡前和均衡后的结果相差不大,接收信号星座图分布结果集中在一起,基本无法区分16-QAM 信号。

        (3)采用优化算法 MCMAMSEI 算法均衡,基带调制类型为 16-QAM,总数据量为 60000,信噪比 dB 15 情况下,为了得到不同算法的直观比较,更改多径信道参数,算法运行结果如下:

        上图为 MCMA 算法的运行结果图,由图可知,在相同信噪比下,对于基带调制类型为 16-QAMMCMA 算法能够有效区分 16-QAM 信号。因为 MCMA 算法全称修正恒模盲均衡算法,是在 CMA 算法的基础上,通过对接收信号的实部及虚部分开进行处理,一定程度上解决了 CMA 算法相位误差大的问题,但实际上该算法仍然具有较慢的收敛速度及较大的稳态误差。其代价函数为:

        MCMA 算法权向量迭代式同 CMA 算法。

        上图为 MSEI 算法的运行结果图,由图可知,在相同信噪比下,对于基带调制类型为 16-QAMMSEI 算法也能够有效区分 16-QAM 信号。对比 MCMA 算法的运行结果图,MSEI 算法运行效果相对于 MCMA 算法而言更优。

        因为 MSEI 是基于 MCMA SEI 而来,对接收信号的实部及虚部分开进行处理,最后通过 SEI 算法进行处理。

        而SEI算法全称超指数迭代算法,该算法于1993年由O. ShalviE. Weinstein在 TIT 上提出,该算法与 RLS 算法有一定的相似度,通过 Q 矩阵对接收信号进行预白化,从而使得该算法收敛速度与稳态误差较恒模类算法均有显著改善,其缺点便是计算量相较于 CMA 算法偏大。该算法误差函数与 CMA 算法相同,为:


4 总结分析

        自适应滤波器在动态信道和噪声环境下展现出更好的性能和适应能力,能够有效地跟踪信道变化并减小噪声影响。在参数选择的方面,迭代步长、滤波器参数数量,需要考虑其使用环境,针对不同的设计需求以及成本控制,使用常规滤波器、维纳滤波器或者是自适应滤波器。在实际应用中,可以结合两种滤波器的优势,设计更加健壮和高效的通信系统,以满足不同环境下的需求。


     文章若有不当和不正确之处,还望理解与指出。由于部分文字、图片等来源于互联网,无法核实真实出处,如涉及相关争议,请联系博主删除。如有错误、疑问和侵权,欢迎评论留言联系作者,或者私信联系作者。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/729347.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

干货 | 如何进行群体DNA甲基化分析

目前,针对群体的研究基本上还是以重测序为主,基于对遗传多样性丰富的自然群体中的个体进行全基因组重测序,研究物种遗传进化多样性,结合准确的目标性状的表型数据及统计方法进行全基因组关联分析,可对动植物复杂农艺性…

【数据分析】用Python做事件抽取任务-快速上手方案

目录 方法一:使用OmniEvent库安装OmniEvent使用OmniEvent进行事件抽取OmniEvent优点缺点 方法二:使用大模型使用GPT网页版进行事件抽取事件类型列表 大模型优点缺点 总结 在自然语言处理(NLP)领域,事件抽取是一项关键任…

迅狐短视频商城系统:打造直播带货、社区种草和商品分销一站式解决方案

迅狐短视频商城系统作为一体化电商解决方案,致力于为用户提供全方位、便捷的购物体验。从直播带货到社区种草、再到商品分销,系统提供了全面的功能模块,满足用户多元化的需求。 一、直播带货功能模块 迅狐短视频商城系统的直播带货功能模块&…

SAMBA(简单混合状态空间模型用于高效的无限上下文语言建模)及其对长文本模型的改进

论文地址: https://arxiv.org/pdf/2406.07522 SAMBA(Simple Hybrid State Space Models for Efficient Unlimited Context Language Modeling)是一种新型的基于Transformer的语言模型,旨在解决传统大语言模型在处理长文本时遇到的…

【初阶数据结构】二叉树(附题)

目录 1.树概念及结构 1.1树的概念 1.2 树的相关概念(树结构的相关概念命名参考自然树和人的血缘关系) 1.3 树的表示 1.4 树在实际中的运用(表示文件系统的目录树结构,初次之外网盘中使用到) 2.二叉树概念及结构 …

关于OS中逻辑地址与物理地址转换

首先将逻辑地址134D从十六进制转为2进制 0001 0011 0100 1101 1)1K的时候对应2的10次方 页面大小占10位 从后往前数 0001 00 || 11 0100 1101 前面的转为十进制为4 对应页号4内容1A转为2进制01 1010将这个替换原来的前六位数字 即0110 1011 0100 1101 再转换为…

『互联网三驾马车』

某天开会的时候,老板问了大家一个问题,对目前各个角色分工合作有哪些不满意的地方。有人回答到,能不能别让产品同学每次都在假期前几天发布需求,让开发同学周末或者假期加班搞需求,然后在还在假期看着产品同学到处去玩…

【React 】折叠面板,点击展开时再请求数据

需求背景:使用折叠面板的形式展示数据,面板内部数据需要在打开时请求接口获取。 遇到问题:最开始使用Antd 的折叠面板组件,它对于数据直接渲染是没问题的,但是不好满足打开面板时再动态加载数据的需求,于是…

Linux机器通过Docker-Compose安装Jenkins发送Allure报告

目录 一、安装Docker 二、安装Docker Compose 三、准备测试用例 四、配置docker-compose.yml 五、启动Jenkins 六、配置Jenkins和Allure插件 七、创建含pytest的Jenkins任务 八、项目结果通知 1.通过企业微信通知 2.通过邮件通知 九、配置域名DNS解析 最近小编接到一…

MyBatis 源码分析--SqlSessionFactory

前言: 前文我们简单的回顾了 MyBatis 的基本概念,有聊到核心组件,工作流程等,本篇我们开始深入剖析 MyBatis 的核心源码,欢迎大家持续关注。 Mybatis 知识传送门 初识 MyBatis 【MyBatis 核心概念】 MyBatis 源码解…

深度学习500问——Chapter12:网络搭建及训练(3)

文章目录 12.3.5 Caffe有哪些接口 12.4 网络搭建有什么原则 12.4.1 新手原则 12.4.2 深度优先原则 12.4.3 卷积核size一般为奇数 12.4.4 卷积核不是越大越好 12.5 有哪些经典的网络模型值得我们去学习的 12.6 网络训练有哪些技巧 12.6.1 合适的数据集 12.6.2 合适的预…

【数据库】数据库脚本编写规范(Word原件)

编写本文档的目的是保证在开发过程中产出高效、格式统一、易阅读、易维护的SQL代码。 1 编写目的 2 SQL书写规范 3 SQL编写原则 软件全套资料获取进主页或者本文末个人名片直接获取。

[图解]企业应用架构模式2024新译本讲解15-行数据入口

1 00:00:01,060 --> 00:00:02,770 数据算完了 2 00:00:03,070 --> 00:00:07,720 接下来就是我们这一节的主要内容了 3 00:00:08,500 --> 00:00:13,630 应用服务调用第三方的,Email 4 00:00:13,640 --> 00:00:18,280 包括集成应用的接口来发Email 5 …

Springboot获取resources中的文件

1.Springboot以文件的形式获取resources中的文件 import com.google.gson.JsonIOException; import com.google.gson.JsonObject; import com.google.gson.JsonParser; import com.google.gson.JsonSyntaxException; import org.springframework.util.ResourceUtils; import j…

【Linux】进程信号2——阻塞信号,捕捉信号

1.阻塞信号 1.1. 信号其他相关常见概念 在开始内容之前,先介绍一些信号的专业名词: 实际执行信号的处理动作称为信号递达(Delivery)信号从产生到递达之间的状态,称为信号未决(Pending)&#…

Swift Combine — zip和combineLatest的理解与使用

Publisher 上还有一些其他的操作,比如 zip 和 combineLatest,能让我们在时序上对控制多个 Publisher 的结果进行类似 and 和 or 的合并,它们在构建复杂 Publisher 逻辑时也十分有用。 zip Publisher 中的 zip 和 Sequence 的 zip 相类似&am…

【备考指南】CDA Level Ⅰ 最全备考攻略

很多考生朋友在报名前后,一直不知道需要怎么备考,这里给大家盘点一下最全的备考攻略,希望对你有用: 1、需要准备好之后再报名吗? 不需要,CDA认证考试是报名后自行预约考试的,您可以先报名同时…

qml:一个基础的界面设计

文章目录 文章说明效果图重要代码说明组件矩形卡片窗口最大化后组件全部居中菜单栏Repeater实现重复8行图片加载直接加载图片文本转图片FluentUI中可供选择的图标 文章说明 qt6.5.3 qml写的一个界面配置设计软件,目前不含任何c代码,纯qml。windoms风格的…

WebStorm 配置 PlantUML

1. 安装 PlantUML 插件 在 WebStorm 插件市场搜索 PlantUML Integration 并安装,重启 WebStorm 使插件生效。 2. 安装 Graphviz PlantUML 需要 Graphviz 来生成图形。使用 Homebrew 安装 Graphviz: 打开终端(Terminal)。确保你…

mac 常用工具命令集合

Iterm2 Command T:新建标签 Command W:关闭当前标签 Command ← →:在标签之间切换 Control U:清除当前行 Control A:跳转到行首 Control E:跳转到行尾 Command F:查找 Command …