APP下载

一种改进的动态自适应多用户检测算法

2020-12-10卢晓强雷震宇

光通信研究 2020年6期
关键词:时隙活跃步长

申 敏,卢晓强,雷震宇

(重庆邮电大学 a.通信与信息工程学院; b.新一代宽带移动通信重点实验室,重庆 400065)

0 引 言

大规模机器类通信(massive Machine-Type Communications,mMTC)是第五代移动通信系统的重要场景[1]。在非正交多址接入(Non-Orthogonal Multiple Access,NOMA)上行免调度模式中,基站端在对数据恢复之前必须进行活跃用户检测。利用mMTC网络中用户活动的稀疏特性,可采用压缩感知(Compressive Sensing,CS)技术实现多用户检测[2]。文献[3]根据被检测信号的稀疏程度,利用正交匹配追踪算法(Orthogonal Matching Pursuit,OMP)进行信号恢复;文献[4]利用接收数据符号的有用信息使用贪婪算法来增强检测性能,提出数据辅助的活跃用户检测(Data-Aided Active User Detection,DA-AUD)算法,然而上述算法仅在每个时隙独立地恢复稀疏信号,未充分利用相邻时隙传输信号的相关性。文献[5]假设活跃用户集在整帧中保持不变,提出结构化迭代支持检测(Structured Iterative Support Detection,SISD)算法;文献[6]考虑活跃用户集的动态变化,提出基于动态压缩感知(Dynamic Compressive Sensing,DCS)的多用户检测算法(简称DCS算法)。上述算法虽然利用了帧结构的稀疏性,但都需要已知信号稀疏度,这在实际mMTC场景中是很难获取的,因此缺乏普适性。

针对上述问题,本文提出了一种改进的动态自适应(Improved Dynamic Adaptation,IDA)多用户检测算法(简称IDA算法),该算法利用连续时隙活跃用户集的时间相关性来增强多用户检测性能,且不需要已知用户稀疏度。相较于其他检测算法,IDA算法更适用于实际的上行免调度NOMA系统。

1 系统模型

考虑由1个单天线基站和K个单天线用户组成的mMTC上行免调度NOMA系统。在同一时刻活跃用户数远小于系统潜在用户总数K,表现出稀疏性。将用户k的发送信号xk扩频到长度为N的扩频序列sk上,且N

式中:gk=[g1,k,g2,k,…,gN,k]T为用户k的信道增益,各元素服从CN(0,1)分布;sk=[s1,k,s2,k,…,sN,k]T为用户k的扩频序列;v为服从CN(0,σ2)分布的高斯白噪声;H为N×K维的等效信道矩阵,其第n行第k列元素为hn,k=gn,ksn,k;x=[x1,x2,…,xK]T为K个用户的发送信号。

实际通信中,虽然mMTC网络具有零星通信性,但一些用户通常以高概率在相邻时隙传输数据,表现出时间相关性。因此,可将上述模型扩展为连续时隙的动态模型,则第j个时隙接收信号y(j)可表示为

2 改进的多用户检测算法

DCS算法[6]假设用户稀疏度已知,利用活跃用户集的时间相关性,基于经典OMP算法[5]对连续时隙多用户进行检测,相较于单时隙传输模型的检测算法,DCS算法虽然能获得一些性能增益,但需要已知用户稀疏度,这在实际mMTC场景中是无法获取的。因此,考虑活跃用户支撑集在连续时隙可变且用户稀疏度未知的实际情况,本文提出了IDA算法。

2.1 算法设计

(1) 自适应阈值辅助策略

DCS算法在估计支撑集时每次迭代只选取与残差值相关性最大的一个原子,且原子选入后便始终存在,这不仅增加了算法的迭代时间,而且一旦选择了错误原子,将会影响后续重构过程的准确性。因此,IDA算法引入自适应阈值β来控制每次迭代选入支撑集中的候选原子,阈值β的选取满足:

式中,a为影响β大小的参数。在每次迭代中,阈值辅助策略为:首先计算观测矩阵与残差值之间的内积,得到观测矩阵中每个原子所对应的相关系数值,取相关系数值中的最大值与β相乘作为原子选入的阈值,选取符合条件的原子放入集合Γ(j)中:

由式(4)可知,β控制选入支撑集中原子的数量,原子的选取始终与算法迭代过程保持一致。通过设置合适的阈值β(本文阈值参数a通常取值范围为(0.3,0.6)),可保证预选原子都具有较大相关性,即选出的原子都是合适的,可提高信号重构的准确性。且当β取值较小时,每次选入的原子数较多,算法的迭代速度会更快。

(2) 幂函数变步长

为了能自适应地获取用户稀疏度,采用稀疏度自适应匹配追踪算法的自适应思想,估计的稀疏度随迭代过程逐步增加,然而该算法采用固定步长逼近用户稀疏度,步长设定过大或过小都会影响信号重构的精度和速度。因此,IDA算法借助文献[7]的变步长概念,引入幂函数变步长方法解决此问题。考虑如下幂函数:

(3) 迭代终止条件

自适应算法对稀疏度估计的准确性很大程度上取决于迭代终止条件的选择,迭代终止太早(欠估计)或太晚(过估计)都会对稀疏信号的重构质量造成很大影响。文献[8]指出信号完美重构情况下,噪声是失真的唯一来源。因此,可通过残差能量设计迭代终止条件。假设稀疏度为L的信号x(j)在第t次迭代时被完美恢复,Ω(j)为信号真实支撑集,则此时残差r(j)(t)的能量为

由于mMTC场景中L≪N,所以可忽略L对式(7)的影响,则迭代终止条件可设为

2.2 算法实现

IDA算法将上述重构思想结合时间相关性,充分利用前一时隙活跃用户支撑集来增强后一时隙的检测性能。IDA算法的具体实现如下:

输入:y,[H(1),H(2),…,H(J)],β,δ,s;

(1)初始化:j=1,Ω=Ø,stage=1;

(2)forj≤Jdo;

(4)若j=1则L=1;否则L=|Ω(j)(t-1)|/2;

迭代过程

(11)令t=t+1,转至步骤(5);

步骤(1)~(4)为初始化过程,Ω为当前时隙估计的支撑集,T(j)(t)为候选支撑集,当时隙j≠1时,利用活跃用户集的内在时间相关性,将支撑集初始化为前一时隙的支撑集,稀疏度为前一时隙用户稀疏度的1/2;步骤(5)为自适应阈值辅助策略,式中,Z(j)(t)为候选支撑集的中转变量;步骤(6)为在DCS算法基础上增加的回溯更新操作,目的是剔除候选支撑集中仍存在的不可靠原子;步骤(7)~(8)为重构信号和更新残差;步骤(9)~(11)为迭代终止条件判断和调整稀疏度;步骤(12)返回当前时隙的重构信号和支撑集,并转入下一时隙的检测过程。

2.3 复杂度分析

IDA算法在单时隙单次迭代的复杂度取决于迭代过程,主要集中在支撑集选择、回溯更新、信号估计和残差更新几个方面。假设真实用户稀疏度为S,IDA算法步骤(5)估计支撑集的计算复杂度为O(KN);步骤(6)回溯更新的计算复杂度为O(2NC2+C3+NC),式中,C为步骤(8)选取的最优索引数;步骤(7)估计信号的计算复杂度为O(2NL2+L3+NL);步骤(8)为更新残差,其计算复杂度为O(NL)。由于0

表1 单次重构计算复杂度对比

由表可知,IDA和DCS算法具有相同阶数的计算复杂度,然而DCS算法在每次迭代中只选取一个原子,IDA算法引入阈值策略每次选取多个原子,同时采用幂函数变步长加快信号重构的速度,因此IDA算法的迭代次数低于DCS算法,具有更低的计算复杂度。

3 仿真及分析

利用Matlab仿真软件对IDA算法的性能进行仿真分析。该仿真中,设置用户总数K=200,子载波数N=100,则系统过载率为200%。调制方式为64正交振幅调制(Quadrature Amplitude Modulation, QAM),连续时隙数J=7。扩频矩阵设计为基于伪随机噪声的Toeplitz矩阵,信道为平坦的瑞利衰落信道。

图1所示为阈值β对信号重构性能的影响。由式(3)可知,β的大小取决于参数a,分别取a={0.3,0.4,0.5,0.6},不考虑噪声的影响,比较IDA算法在不同活跃用户数下的重构成功率。由图可知,当参数a=0.5时,信号的重构成功率最高。因此,在后面的仿真中,IDA算法的参数a均设置为0.5。

图1 不同β下IDA算法重构性能比较

为了更好地体现IDA算法的检测性能,将所提算法与DCS、OMP、子空间追踪[9](Subspace Pursuit,SP)和先验最小二乘(Least Square,LS)算法(理想性能算法)作比较。图2所示为上述算法在不同信噪比(Signal-to-Noise Ratio,SNR)下的误码率(Bit Error Ratio,BER)性能。仿真中,设置步长调整门限δ=1.2,初始步长s=1,活跃用户数为25。由图可知,IDA算法的BER性能明显优于OMP和SP算法,原因是IDA算法充分利用了相邻时隙的时间相关性,同时结合自适应阈值辅助、迭代终止条件优化和幂函数变步长的思想,使检测性能大幅度提升。在BER=1×10-3时,IDA算法相较于DCS算法,其性能损失不到1 dB,这是因为IDA算法缺乏真实的用户稀疏度,然而在实际mMTC网络中基站端是无法得知用户稀疏度的,因此IDA算法更具有实用性。当SNR<12 dB时,IDA比DCS算法的BER性能更优,其原因是在低SNR时,阈值辅助策略和幂函数变步长方法使IDA算法更准确地估计活跃用户集。综上所述,IDA算法在保证信号重构性能的同时更适用于实际的mMTC场景。

图2 不同SNR下的BER性能对比

图3对比了IDA、OMP、SP、DCS和先验LS算法在不同活跃用户数下的BER性能。其中,设置步长调整门限δ=1.2,初始步长s=1,SNR=10 dB。由图可知,随着活跃用户数的增长,不同检测算法的BER都会逐渐上升,但IDA算法在整个活跃用户区间内均优于其他几种算法,其原因是阈值辅助策略提升了IDA算法选取用户支撑集的准确性,幂函数变步长方法和优化的迭代终止条件能避免活跃用户数的过估计与欠估计,确保算法及时终止迭代。

图3 不同活跃用户数下的BER性能对比

图4所示为IDA、OMP、SP和DCS算法在不同活跃用户数下的迭代次数。其中,设置步长调整门限δ=1.2,初始步长s=1,SNR=10 dB。由图可知,各检测算法的迭代次数都会随活跃用户数的增加而增加,但在活跃用户数相同的条件下,IDA算法完成重构所需的迭代次数更少,其原因是阈值辅助和幂函数变步长方法的共同作用加快了IDA算法的重构速度。而DCS算法是基于OMP算法实现的,同OMP算法一样,其迭代次数随稀疏度的增长线性增加且等于已知的稀疏度。此外,SP算法是基于OMP算法改进的,在每次迭代过程中选取多个原子,因此其迭代次数略有减少,但仍高于IDA算法。

图4 不同活跃用户数下的迭代次数对比

4 结束语

本文利用上行免调度NOMA系统中活跃用户在相邻时隙的时间相关性,提出了IDA多用户检测算法。该算法可在未知用户稀疏度情况下对连续时隙多用户进行检测,在迭代过程中,引入自适应阈值选取合适数量原子,并在回溯更新步骤中剔除不可靠原子,利用幂函数变步长方法逐步逼近真实稀疏度,直到满足迭代终止条件。仿真结果表明,所提IDA算法在保证低复杂度的同时具有良好的BER性能,实用性更强。

猜你喜欢

时隙活跃步长
基于Armijo搜索步长的BFGS与DFP拟牛顿法的比较研究
活跃在抗洪救灾一线的巾帼身影
复用段单节点失效造成业务时隙错连处理
这些活跃在INS的时髦萌娃,你Follow了吗?
一种高速通信系统动态时隙分配设计
时隙宽度约束下网络零售配送时隙定价研究
基于逐维改进的自适应步长布谷鸟搜索算法
基于TDMA的无冲突动态时隙分配算法
一种新型光伏系统MPPT变步长滞环比较P&O法
一种新颖的光伏自适应变步长最大功率点跟踪算法