MIMO(多天线)通信的四种译码算法

目录

一. 介绍

二. 极大似然译码

三. 破零译码算法

四. 最小均方误差算法

五. 球形译码


一. 介绍

发射天线数记为Mt,接收天线数记为Mr。由此发射信号x为向量:

接受信号y为向量:

信道H为矩阵:

利用n代表噪声向量,由此可得MIMO通信系统模型为:

y=Hx+n

噪声服从复高斯分布,通常假定均值为0,方差为1,如下:

发射信号的总功率限定为\rho,由此需要发射信号x的均值满足如下关系:

接收端在收到y后,就尝试译码出x,但译码不一定完全正确,所以记为(estimate):

接收端在译码之前通常已知:信号矩阵(channel matrix)H,集合X,y

二. 极大似然译码

Maximum likelihood:ML,极大似然译码

在接下来的讨论中,我们不妨假设发射信号x为均匀分布。

如果想要译码错误率最小,那么最优的则是极大似然译码。假定噪声在不同的维度上独立同分布(IID),那么接收端采用极大似然译码时,其本质就是解决如下目标函数(objective function):

理解:遍历所有可能得发射向量x,很明显需要尝试|\mathcal{X}|^{M_t}次。所以极大似然译码算法的复杂度与发射天线Mt成指数关系。

三. 破零译码算法

zero forcing:ZF,迫零算法

迫零算法属于线性译码。线性译码的复杂度与对矩阵进行求逆(inverting),分解(factorizing)是差不多的。简单来讲就是从空间的角度消除信道的影响,也就是所谓的MIMO均衡过程。来看下对应的英文表达:

Spatially decoupling the effects of the channel by a process known as MIMO equalization
也就是对接收向量y乘以MIMO均衡矩阵A,如下:

由此可得:

此步的结果不一定在原始的集合中,所以需要进一步运算得到\hat x(y)。通常就是利用逐维度进行译码,该步译码方程可记作:

理解:从不同的维度上,映射到离其最近的星座点(constellation point)上。

接下来,我们将详细讲解迫零算法。

需要注意的是,线性译码的精髓是如何已知y,求解\tilde x(y)

将迫零算法需要面临的方程问题如下:

与极大似然译码相比,看起来方程很类似。细心的话会发现去掉了对x范围的限制,由此便降低了算法的复杂度。

如何H为可逆的方阵(square invertible)。这个问题可直接求解为:

对于可逆的方阵,也就是:

H^\dagger=H^{-1}

在其他情况则可以考虑矩阵的伪逆。通常在通信系统中,要求接收天线要不少于发射天线,也就是:

这样就可以保证信道矩阵H中有Mt列线性独立的列,由此伪逆(Moore-Penrose pseudoinverse)可计算为:

对信道矩阵H求逆的算法复杂度为立方。当然从\tilde x(y)得到\hat x(y),根据前面的方程,很明显与天线之间呈现线性关系。

四. 最小均方误差算法

linear minimum mean squared error (L-MMSE):线性最小均方误差算法

如果信道矩阵H的奇异值(singular value)太大,迫零算法会导致噪声扩大(noise amplification)。根据线性代数的基础,此性质可用矩阵H的条件数(condition number)来衡量,定义为最大奇异值与最小奇异值的比值。

如果条件数趋近于1,那么迫零算法误差相对不大,矩阵well conditioned。

如果条件数过大,那么迫零算法误差将也会变大,矩阵ill conditioned。

对迫零算法的目标函数,添加一个调节项,也就是:

该目标函数的求解也不难,可得:

对于L-MMSE,上式子中的\lambda定义为天线数除以总功率,也就是:

该方程求解的本质为:

理解:上式子中s与y之间呈现线性关系,也就是所谓的仿射关系(affine)。

E代表与x和n相关的均值。需要注意的是,对于接收方来讲,信道矩阵H是固定且已知的。

实际上如果忽略x来自于离散的星座点,也将其看成连续的高斯分布的话,那么这就是MMSE译码器(MMSE detector)。

与极大似然译码(ML)相比,线性译码器的优点是操作简单,缺点是BER(比特误码率)较高。

五. 球形译码

sphere decoder:SD,球形译码

球形译码有一个很重要的半径参数r,由此来根据需要平衡性能与复杂度,很像格密码。

如果选择足够大的r,那么球形译码的性能会接近极大似然译码(ML)。

如果r较小,需要搜寻的空间会变小,由此复杂度降低(与ML相比),当然代价就是正确率会下降。

球形译码器需要首先对信道矩阵H进行分解,如下:

H=QR

其中Q为酉矩阵(unitary),R为上三角矩阵(upper triangular)。回忆起来,酉矩阵Q与其转置Q^H不会改变向量的l2范数(squared distance norm),由此可得:

以上式子的运算就利用到了:

最后一个等号:R为上三角矩阵。

当半径r取无穷大时,方程便会得到ML算法的解。

当半径r取值不大时,借助深度优先搜寻(depth first search)或者宽度优先搜寻(breadth first search),利用上三角矩阵R的性质,可以去掉很多离得远的x,由此便可以降低算法复杂度。

实践证明球形译码的输出结果一般与ML输出结果类似。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

揭秘:从低代码到APP工厂,从休闲T恤到蓝色工装

2024年3月29日,感恩伯乐,感恩同行——2024年得帆十周年庆典暨用户大会在上海佘山世茂洲际酒店圆满举办。作为业内规模最大的低代码主题峰会,本次峰会汇聚了来自全国62个城市,500参会嘉宾,59位业界专家带来了2场主题发布…

亿发:信息化管理软件是什么?企业智慧信息化解决方案的重要性

在当今数字化时代,企业信息化管理已成为提升运营效率和促进发展的关键。信息化管理软件是企业数字化转型的重要工具,但单一软件往往难以满足企业多方面的高质量发展需求。因此,企业整体信息化解决方案的重要性愈发凸显。 什么是信息化管理软件…

新质生产力应用场景深度分析,再塑行业格局

新质生产力应用场景深度分析 技术突破、要素创新配置和产业深度转型升级,催生“新质生产力”定义:新质生产力是由技术革命性突破、生产要素创新性配置、产业深度转型升级而催生的当代先进生产力,它以劳动者、劳动资料、劳动对象及 其优化组合…

【御控物联网平台】物联网平台常见通讯协议

随着物联网(InternetofThings,IoT)的快速发展,越来越多的设备和传感器连接到网络,使得数据的传递和交互变得更加智能化和高效化。在实现这种智能化和高效化的数据交互,过程中,各种不同的通信协议…

PROSAIL模型前向模拟与植被参数遥感提取代码实现

原文链接:PROSAIL模型前向模拟与植被参数遥感提取代码实现https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247602140&idx7&sn7c4ca9239865d536ba81ba4c26a34031&chksmfa820e3bcdf5872d540c0dfe8c533c8696c8b4658427aab254f246a739f96b36bc37…

使用代理绕过网站的反爬机制

最近在尝试收集一些网络指标的数据, 所以, 我又开始做爬虫了。 :) 我们在做爬虫的过程中经常会遇到这样的情况,最初爬虫正常运行,正常抓取数据,一切看起来都是那么的美好,然而一杯茶的功夫可能就会出现错误…

java 学习一

jdk下载地址 配置环境变量

【数学归纳法 组合数学】容斥原理

问题提出 有n个条件,要求不重复统计满足一到n个条件的所有可能数。 容斥原理 要计算几个集合并集的大小,我们要先将所有单个集合的大小计算出来,然后减去所有两个集合相交的部分,再加回所有三个集合相交的部分,再减…

电子签名在人力资源中的应用:让HR工作更高效

人力资源(HR)行业是电子签领域的重要应用之一,它可以在以下场景中使用电子签: 1. 在招聘流程中,HR部门可以利用电子签名工具来完成与招聘候选人之间的任何文件签署操作。例如,维护人才库数据库、简历、面试…

HTML不常用的文本标签

1.标签如下&#xff1a; 代码及相关内容 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>不常用的文…

中医药性笔记

目录 当归黄芪党参白术甘草茯苓半夏陈皮升麻柴胡 当归 补血。 当归&#xff0c;腾讯医典 黄芪 土金之药。 补中气的同时补肺气。益卫固表、利水消肿、 腾讯医典黄芪 党参 土金之药。健脾益肺&#xff0c;生津养血。 党参补气之力弱于人参、用于脾肺气虚的轻症。 党…

[2024更新]如何从Android恢复已删除的相机照片?

相信大家都经历过Android手机误删相机图片的经历。您是否正在寻找一种可行的方法来挽救这些丢失的照片&#xff1f;如果这是你迫切想解决的问题&#xff0c;那么这篇文章绝对可以帮助你。然而&#xff0c;与其考虑如何从Android恢复已删除的相机照片&#xff0c;我们更愿意建议…

ETL简介以及使用ETL(Kettle)进行数据接入的具体例子

目录 ETL介绍 ETL简介 ETL包含的三部分 ETL基本概念 ETL资源库 ETL变量 业务表梳理以及接入规划 数据接入流程 业务表梳理 ETL任务规范 接入规划 数据接入中的方便工具 具体例子 导出生产表信息 1、ORACLE 2、MYSQL ETL数据增量抽取任务开发 1、ORACLE通用流程…

Linux 网络编程

引入: 进程间的通信 - 特点: 依赖 Linux内核. --> 缺陷: 无法多机通信 多机通信 -- 比如 Android IOS Linux之间的通信组合 网络编程: 1.地址: a.IP地址 b.端口号 2.数据: 需要协议传输协议(数据格式)&#xff08;TCP UDP HTTP&#xff09; &#xff0c;其他协议&am…

2024最新Java面试宝典(史上最全,BAT大厂面试必备,用心看完这一篇就够了!)

&#x1f680; 作者 &#xff1a;“二当家-小D” &#x1f680; &#x1f680; 博主简介&#xff1a;⭐前荔枝FM架构师、阿里资深工程师||曾任职于阿里巴巴担任多个项目负责人&#xff0c;8年开发架构经验&#xff0c;精通java,擅长分布式高并发架构,自动化压力测试&#xff0c…

20240416,深拷贝浅拷贝,对象初始化和清理,对象模型和THIS指针

哈哈哈乌龟越狱了 目录 2.5 深拷贝&浅拷贝 2.6 初始化列表 2.7 类对象作为类成员 2.8 静态成员 2.9 成员变量和成员函数分开存储 2.10 THIS指针的用途 2.11 空指针访问成员函数 2.12 COSNT修饰成员函数 2.5 深拷贝&浅拷贝 浅拷贝&#xff1a;简单的赋值拷贝…

二次封装el-carousel

我们创建了一个名为MyCarousel的组件,它接受el-carousel的一些常用属性作为props,并默认提供了一些值。我们还通过setup函数返回了所有props,以便它们可以在模板中被使用。 1.MyCarousel.vue组件 <!-- 轮播图片 --> <template><div class="carousel&q…

Django中的定时任务与后台任务队列的实践

&#x1f47d;发现宝藏 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 在Web开发中&#xff0c;处理定时任务和后台任务队列是很常见的需求。Django作为一个功能强…

vscode中使用rust的跳转定义时,rust-analyzer报错“未找到定义”,如何解决?

本文是关于错误解决的一个记录&#xff0c;如果你在使用vscode编写rust程序的过程中也遇到同样的错误&#xff0c;不妨一试。 我遇到的错误是&#xff0c;在编写的rust程序中想要跳转到当前变量或者函数的定义处&#xff0c;但按下F12无法跳转&#xff0c;且提示“未找到xxx定…

LoggerFactory is not a Logback

错误信息 LoggerFactory is not a Logback LoggerContext but Logback is on the classpath. Either remove Logback or the competing implementation (class org.slf4j.impl.SimpleLoggerFactory loaded from file:/D:/maven/repository/org/slf4j/slf4j-simple/1.7.26/slf…