【解决大规模MIMO系统的数据检测问题】混合框架来改善VP中格降(LR)辅助预编码的性能(Matlab代码实现)

本文探讨了一种混合框架,通过结合LR辅助预编码和AMP算法改进VP预编码在MIMO系统中的性能。研究发现,即使在格基非高斯分布情况下,AMP对于格解码问题具有优势。实验结果表明,低复杂度的AMP显著提高了LR预编码的符号误差率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码、文章


💥1 概述

摘要:
向量扰动(VP)预编码是一种在下行多用户通信系统中应用的有前景的技术。在本文中,我们引入了一个混合框架来改善VP中格降(LR)辅助预编码的性能。首先,我们使用基于降低格基的零强制(ZF)或逐步干扰取消(SIC)进行简单的预编码。由于LR-ZF或LR-SIC预编码后的信号空间可以被证明被限制在一个小范围内,再加上LR所保证的格基的充分正交性,它们共同为随后应用近似消息传递(AMP)算法铺平了道路,进一步提升了任何次优预编码器的性能。我们的研究表明,AMP算法对于一个数据符号位于整数ℤ且格基的条目可能不是i.i.d.高斯分布的格解码问题是有益的。数值结果证实了低复杂度的AMP算法可以显著提高LR辅助预编码的符号误差率性能。最后,该混合方案在解决大规模MIMO系统的数据检测问题时,也被证明是有效的,而不使用LR。

下一代宽带移动互联网预计将同时向大量用户传送大量数据。为了满足多用户广播网络中的这一需求,希望根据信道状态信息(CSI)对传输符号进行预编码,以提高时间效率同时保持可靠性。已知,使用简单的信道反演进行预编码在所有信噪比(SNR)下表现不佳,进一步的正则化也不能显著提高性能。为了提高吞吐量,引入了一种称为向量扰动(VP)的预编码方案[1]和[2]。该方案基于汤姆林森-哈拉希马(Tomlinson-Harashima)预编码,通过模格操作对传输数据进行扰动,可以在不使用脏纸技术的情况下实现系统的接近总容量[1],[2]。VP的优化目标要求解格中的最近向量问题(CVP),通过从CVP的决策版本进行归约已经证明是NP-完全的[3]。由于问题的NP-完全性质,使用球解码[4](在[1]和[2]中称为球预编码)找到其精确解的计算复杂性随问题维数的指数增长,因此必须采用提供近似最优性能的降低复杂性替代方案。

文献中提出了几种降低复杂性的预编码算法[5]–​[11]。这些算法根据是否使用格降作为预处理分为两类。在第一类[5]–​[7],[9],[11]中,CVP的解码是在原始输入基础上解决的,低复杂度的优势是由于对信号空间(参见[6],[7])或格基(参见[5],[9])施加的约束。然而,这些简化方法没有理论性能保证,因此我们必须求助于第二类方法[8],[12],[13]。这些方法称为格降(LR)辅助预编码(解码),包括将格降作为预处理,并使用零强制(ZF)、逐步干扰取消(SIC)或其他变体进行近似解码。由于降低基础的良好属性,基于其的近似解码已被证明实现了完全的分集阶数[8],[13]。与第一类算法相比,降低格基的预处理复杂性从多项式到指数级不等(参见[14],[15])。然而,在慢衰落信道中这个成本不是一个问题[13],因为在大量时间槽中格基是固定的,只需降低一次格基以服务所有的CVP实例。

📚2 运行结果

部分代码:

clc;clear all;close all;
linestyles = cellstr(char('-','--','-.','--'));
SetColors=lines(10);  
Markers=['o','x','+','*'];
legendbox={'MMSE','MMSE-AMPT', 'MMSE-AMPG'};
   
n=32;% # of users
m=64;% # of received antennas; m is much larger than n in massive mimo
SNR_range=[0:4:16]; % the tested range of SNR
count=0;
algorithms=[1:1:3];
for SNR=SNR_range
for monte=1:4e3 % the number of MonteCarlo simulations

    H=randn(m,n); %channel matrix
    A=7;% size of constellations
    u=1*randi([-A,A],n,1);% symbols in users 
    
    sigmas2=A*(A+1)/3;              % theoretical signal power;  
    sigma2=sigmas2/((10^(SNR/10))); % noise power
    y=H*u+sqrt(sigma2)*randn(m,1);  %the received signal
 
     for j=algorithms
          switch j
             case 1 %  MMSE

🎉3 参考文献

文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。

🌈4 Matlab代码、文章

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值