支持D2D通信的蜂窝网自适应资源分配算法
2018-03-03刘占军陈前斌
沈 悦,刘占军,武 汉,胡 腾,陈前斌
(重庆邮电大学 通信与信息工程学院,重庆 400065)
0 概述
D2D(Device-to-Device)通信是在一定的距离范围内用户设备直接进行通信、不需要通过基站转发的通信模式[1]。D2D通信由于其不仅能够改善系统性能[2],还能进一步扩展终端通信模式的应用前景,受到的关注日益增多,但是在蜂窝通信模式与D2D通信模式共存的网络中,由于共享无线频谱而带来的同信道干扰成为需要解决的主要问题[3]。为了有效处理不同通信模式间的用户共享频谱资源所带来的干扰,现有的资源分配主要有以下几类:文献[4-5]提出了一个干扰限制区域的概念,为了避免D2D模式通信产生有害的干扰,只允许在干扰限制区域内蜂窝用户和D2D用户才能使用相同的频谱资源。文献[6]利用联合博弈算法来处理D2D用户的上行链路和下行链路的资源分配问题。文献[7]提出了根据干扰图来进行用户分簇,然后再利用匈牙利算法对不同用户簇进行资源块的分配,但是没有考虑蜂窝用户和D2D用户的服务质量。文献[8]利用Stackelberg博弈模型提出一个分布式的资源分配方案,并且设计了一个迭代算法来解决这个问题,虽然蜂窝用户的服务质量得到了保证,但是对D2D用户的服务质量仍未做考虑。文献[9]提出一种贪婪启发式算法,按照干扰度的大小,D2D用户选择复用相应的蜂窝用户资源,但是使用的是固定的功率值,没有进行功率分配。
上述的研究对资源的复用情况大都是固定的,比如文献[4-5]中一个蜂窝用户的资源只允许一对D2D用户复用,文献[6]中一对D2D用户只能复用一个蜂窝用户的资源。事实上,从D2D模式灵活使用资源的特性来讲,允许一个D2D用户复用多个蜂窝用户的资源对D2D用户的性能提升很大;从空间复用的角度来讲,允许多个D2D用户与一个蜂窝用户复用资源对提升系统整体的性能是有益的。现有技术使用的固定分配方法在用户通信模式发生变化的情况下,不能及时地调整资源分配的方案,造成资源的浪费。针对这个问题,本文提出一种对用户模式进行自适应资源分配的方案。
1 系统模型
(1)
(2)
在支持D2D通信的蜂窝网络中,怎样在保证蜂窝用户与D2D用户的服务质量前提下,将引入D2D通信所带来的性能提升最大化是蜂窝用户与D2D用户自适应资源分配算法的研究目标。因此,为了满足该目标,本文以蜂窝用户和D2D用户的最小速率需求以及各自发射功率的限制为约束条件,以小区中蜂窝用户与D2D用户总的吞吐量最大为目标,合理地给蜂窝用户和D2D用户分配资源块和发射功率。基于上述分析,将该自适应资源分配问题建模为一个带有约束条件的最优化问题,如下所示:
(3)
(4)
(5)
(6)
(7)
(8)
式(4)和式(5)保证了蜂窝用户和D2D用户的服务质量,ζC和ζD为各自的最小通信速率;式(6)和式(7)限制了蜂窝用户和D2D用户的最大发射功率;式(8)表示一个资源块最多只分配给一个蜂窝用户使用,而分配给D2D用户使用的情况则不做出任何限制。可以发现该约束优化问题是一个混合非线性整数规划问题,直接求解十分困难,因此本文将原优化问题分为2个子问题,提出一种包括资源块分配和功率分配的两阶段资源分配算法,降低了求解的复杂度。
2 资源块分配
在资源块分配阶段,D2D用户和蜂窝用户在每个资源块上的发射功率设定为平均功率。随着资源块个数和用户数的增加,通过穷举搜索法得到最优解的计算复杂度是呈指数倍增长,这使得其在实际的应用中实现起来非常困难。为了减小计算的复杂度,本文提出基于贪婪算法的资源块分配。
贪婪算法的主要思想是在对问题进行求解的过程中,每次做出的选择总是当前情况下最好的。基于该思想将其应用到上述需要求解的资源块分配问题中则是根据优化问题的目标函数最大化总吞吐量,在满足约束条件的情况下,每次做出使得吞吐量最大的选择。因此,首先在保证蜂窝用户达到最小速率的条件下,根据一个蜂窝用户和一对D2D用户复用同一资源块获得的吞吐量情况选择出使得吞吐量最大的资源块和用户组合,然后再通过每次加入一对D2D用户使用该资源块,使得吞吐量得到最大的提升,直到不管再加入哪对D2D用户都不能使吞吐量提升为止。当所有蜂窝用户的服务质量都得到保证后,则再根据一个蜂窝用户和一对D2D用户,以及两对D2D用户复用同一资源块获得的吞吐量情况选择出使得吞吐量最大的用户和相应的资源块,然后再根据相同的规则加入使用该资源块的D2D用户直到吞吐量不再提升为止。
(9)
(10)
首先根据蜂窝用户与D2D用户的吞吐量结合矩阵选择出需要分配的资源块n和使用该资源块的蜂窝用户mC(1)和D2D用户mD(1),即:
(11)
当mD=D+1的时候说明该资源块被蜂窝用户单独占用的时候吞吐量达到最大,因此该资源块单独分配给该蜂窝用户,不与其他D2D用户复用;否则,需要添加D2D用户使用该资源块使其吞吐量提升。当蜂窝用户的服务质量得到保证后, 则根据用户间吞吐量结合矩阵选择出此次需要分配的资源块n和使用该资源块的用户mU(1)和mD(1),即:
(12)
当mU(1)∈κ且mD(1)=D+1的时候说明蜂窝用户mU(1)单独使用资源块n时获得的吞吐量最大,则将该资源块n单独分配给蜂窝用户mU(1)使用;当mU(1)=mD(1)的时候说明D2D用户mD(1)单独使用该资源块n的时候吞吐量最大,则将该资源块n单独分配给该D2D用户;否则在其他情况的时候需要加入D2D用户使用该资源块使其吞吐量进一步提升。
ΔR(n)(d)=R(n)(X(n)(t-1)∪{d})-R(n)(X(n)(t-1))
(13)
D2D用户的加入规则为:
(14)
蜂窝用户都满足速率需求后,D2D用户的加入规则为:
(15)
需要注意的是,为了保证D2D用户的服务质量,在选择D2D用户加入使用资源块的时候将其分为2个不同的优先级:未达到D2D用户最小通信速率需求的D2D用户拥有更高的优先级。这是为了避免部分D2D用户占用过多的资源而另一部分D2D用户由于未达到最小通信速率而不能成功的接入网络的情况。
根据上述分析,本文提出的自适应资源块分配算法的具体步骤为:
步骤5在高优先级的D2D用户集中根据式(14)选择加入使用资源块n的D2D用户mD。
步骤7在低优先级的D2D用户集中根据式(14)选择加入使用资源块n的D2D用户mD。
步骤13在高优先级的D2D用户集中根据式(15)选择加入使用资源块n的D2D用户mD。
步骤15在低优先级的D2D用户集中根据式(15)选择加入使用资源块n的D2D用户mD。
3 功率分配
功率分配问题在资源块分配结束后仍是一个非线性优化问题,用传统方法求解计算复杂度大,因此采用一种改进的粒子群算法来求解功率分配的问题。
粒子群算法从随机解出发,通过追随当前搜索到的最优值来寻找全局最优,其进化公式为:
vi(t)=vi(t-1)+φ1·r1·(Pbesti-xi(t-1))+
φ2·r2·(Gbest-xi(t-1))
(16)
xi(t)=xi(t-1)+vi(t)
(17)
根据上述资源分配模型,对粒子xi的位置定义为:
xi= (xi1,xi2,…,xi|X(1)|,xi(|X(1)|+1),…,
(18)
(19)
粒子群算法通过向其他粒子的学习来逐渐靠近全局最优位置,因此在全局最优粒子附近的粒子对于群体向最优位置收敛有非常积极的作用,即使该粒子是不可行解。鉴于上述的分析,本文参考文献[12]采用直接比较粒子优劣的方法来处理约束条件,粒子间的比较准则为:
1)当粒子xi和xj都是可行解时,直接比较2个粒子的目标函数值的大小,函数值大的粒子占优。
2)当粒子xi和xj都是不可行解时,比较粒子各自违反约束的程度大小,即Vio(xi)和Vio(xj),违反程度值小的粒子占优。
3)当粒子xi是可行解但xj是不可行解时,先比较粒子xi和粒子xj到粒子群最优粒子的欧式距离dg(i)和dg(j)的大小。若dg(i)>dg(j),则比较2个粒子的目标函数值的大小,函数值大的粒子占优,否则可行解的粒子xi占优。
(20)
其中,S为服从标准正态分布的随机变量。
综合以上改进的粒子群算法,功率分配的具体步骤为:
步骤2将每个粒子的当前位置设置为各自的Pbest,种群的最优粒子Gbest根据粒子比较准则找到。
步骤3判断迭代次数是否达到最大值,若是则转至步骤7,否则继续步骤4。
步骤4根据进化方程更新种群中粒子的位置和速度。
步骤5根据粒子间的比较准则更新Pbest和Gbest。
步骤6判断种群多样性值是否小于门限值,若小于则对当前最优粒子进行随机扰动,否则执行步骤3。
步骤7算法停止,输出Gbest,将其转化为对应用户的发射功率。
4 仿真分析
仿真模型为单小区蜂窝系统,蜂窝用户和D2D用户的发送端在小区中随机分布,D2D用户的接收端在以相对应的D2D发送端为圆心、r为半径的圆内随机分布,对比算法1为参考文献[15]中的资源分配算法,对比算法2为参考文献[9]中的资源分配算法。具体仿真参数设置如表1所示。
表1 参数设置
图1为D2D用户对数在2~20间系统总吞吐量的图形。可以看到,随着D2D用户数的增大,4种算法的系统吞吐量均有所提高,本文算法是靠近穷举搜索最优算法的,在任何D2D用户对数情况下都比2个对比算法的吞吐量大。这是因为本文算法可以在满足蜂窝用户和D2D用户的服务质量的前提下根据不同的用户模式比例和干扰情况自适应地调整资源的使用情况,更合理、充分地利用资源。而对比算法1在任何情况下只允许D2D用户复用一个资源块并且蜂窝用户的资源只允许一个D2D用户复用,限制了D2D用户吞吐量的提升,所以系统总吞吐量较本文算法有明显的差距。对比算法2虽然允许多个D2D用户复用同一个蜂窝用户的资源,但是其使用的是固定的发射功率,其综合结果导致系统总吞吐量最低。随着D2D用户数的增大,本文算法获得的吞吐量增益逐渐增大。
图1 系统总吞吐量
图2为D2D用户对数在2~20间D2D用户的接入率图形。可以看到,本文算法的接入率一直保持在比较高的水平,靠近穷举搜索法的接入率,而对比算法1随着D2D用户数的增大,接入率越来越差,特别是在D2D用户数大于蜂窝用户数的情况下接入率明显下降。这是因为对比算法1限制了D2D用户资源块的使用,随着D2D用户比例的增大,能够复用蜂窝用户资源的D2D用户达到了饱和,因此接入率发生明显下降。对比算法2的接入率没有明显的下降,但是其与本文算法的接入率仍有一定差距,这是因为其对资源的使用仍有限制,并且未对功率进行最优分配,加大了用户间的干扰,损失了一部分的D2D用户接入。
图2 D2D用户接入率
5 结束语
针对随着用户模式的变化现有资源分配方案不能自适应调整的问题,本文提出一种自适应地调整使用每个资源块的用户个数以及D2D模式用户可使用资源块个数的资源分配方案,将其建模为最大化系统吞吐量的优化问题,针对该优化模型提出一种两阶段的资源分配算法。资源块分配阶段自适应地调整用户使用资源的情况,功率分配阶段根据资源块的分配结果利用改进的粒子群算法调整发射功率使系统吞吐量最大化。仿真结果表明,在保证蜂窝用户和D2D用户的服务质量的同时,本文算法能够获得更高的系统吞吐量和D2D用户接入率,更好地适应了用户模式变化引起的网络环境变化。
[1] LEI L,ZHONG Z D,LIN C,et al.Operator Controlled Device-to-device Communication in LTE-advanced Networks[J].IEEE Wireless Communications,2012,19(3):96-104.
[2] FODOR G.Design Aspects of Network Assisted Device-to-device Conmmunications[J].IEEE Communications Magazine,2012,50(3):170-177.
[3] CHEN X,HU R Q,QIAN Y.Distributed Resource and Power Allocation for Device-to-device Conmmunications Underlaying Cellular Netwoek[C]//Proceedings of IEEE Global Communications Conference.San Antonio,USA:[s.n.],2014:4947-4952.
[4] MIN H,LEE J,PARK S,et al.Capacity Enhancement Using an Interference Limited Area for Device-to-device Uplink Underlaying Cellular Networks[J].IEEE Transactions on Wireless Communications,2011,10(12):3995-4000.
[5] ALI S,RAJATHEVA N,LATVAAHO M.Full Duplex Device-to-device Conmmunication in Cellular Networks[C]//Proceedings of European Conference on Networks and Communications.Athens,Greece:IEEE Press,2014:1-5.
[6] LI Y,JIN D,YUAN J,et al.Coalitional Games for Resource Allocation in the Device-to-device Uplink Underlaying Cellular Networks[J].IEEE Transactions on Wireless Communications,2014,13(7):3965-3977.
[7] 杨 阳,廖学文,高贞贞,等.多小区终端直通异构网络中利用图论的资源分配方案[J].西安交通大学学报,2014,10(9):22-28.
[8] YIN R,ZHONG Caijun,YU Guanding.Joint Spectrum and Power Allocation for D2D Communications Underlaying Cellular Networks[J].IEEE Transactions on Vehicular Technology,2016,65(4):2182-2195.
[9] SUN H,SHENG M,WANG X.Resource Allocation for Maximizing the Device-to-device Conmmunications Underlaying LTE-advanced Networks[C]//Proceedings of IEEE/CIC International Conference on Communications in China Workshops.Xian,China:IEEE Press,2013:60-64.
[10] 程永生,朱 江,林孝康.引入D2D通信的蜂窝网上行资源分配算法[J].电子与信息学报,2014,36(12):2822-2827.
[11] 纪雪玲,李 明,李 玮.一种克服局部最优的收缩因子PSO算法[J].计算机工程,2011,37(20):213-215.
[12] 刘衍民,隋常玲,牛 奔.解决约束优化问题的改进粒子群算法[J].计算机工程与应用,2011,47(12):23-26.
[13] ANDREWS P S.An Investigation into Mutation Operators for Particle Swarm Optimization[C]//Proceedings of IEEE Congress on Evolutionary Computation.Vancouver,Canada:[s.n.],2006:3789-3796.
[14] 孙沛然,王可人,冯 辉.改进粒子群算法在频谱功率分配中的应用[J].电讯技术,2016,56(7):788-793.
[15] DAGUAN F,LU L,YI Y W.Device-to-device Conmmunications Underlaying Cellular Networks[J].IEEE Transactions on Communications,2013,61(8):3541-3551.